From 165cd52f1a4e166774ac0bed468134adf86894b3 Mon Sep 17 00:00:00 2001 From: akdeb Date: Fri, 19 Sep 2025 16:37:11 +0700 Subject: [PATCH 1/4] adding eleven labs --- server-deno/.env.example | 2 + server-deno/README-elevenlabs.md | 83 ++++++++ server-deno/deno.json | 1 + server-deno/deno.lock | 163 ++++++++++++++- server-deno/logs.log | 1 + server-deno/main.ts | 18 +- server-deno/models/elevenlabs.ts | 348 +++++++++++++++++++++++++++++++ server-deno/types.d.ts | 8 +- server-deno/utils.ts | 1 + 9 files changed, 613 insertions(+), 12 deletions(-) create mode 100644 server-deno/README-elevenlabs.md create mode 100644 server-deno/logs.log create mode 100644 server-deno/models/elevenlabs.ts diff --git a/server-deno/.env.example b/server-deno/.env.example index eae4406..2bf18b5 100644 --- a/server-deno/.env.example +++ b/server-deno/.env.example @@ -8,6 +8,8 @@ ENCRYPTION_KEY= # OpenAI API Key OPENAI_API_KEY= +GEMINI_API_KEY= +ELEVENLABS_API_KEY= # local development HOST=0.0.0.0 diff --git a/server-deno/README-elevenlabs.md b/server-deno/README-elevenlabs.md new file mode 100644 index 0000000..d5cd2d5 --- /dev/null +++ b/server-deno/README-elevenlabs.md @@ -0,0 +1,83 @@ +# ElevenLabs WebSocket Relay + +This implementation provides a WebSocket relay between your ESP32 device and ElevenLabs Conversational AI API, similar to the existing OpenAI and Gemini implementations. + +## Setup + +1. **Environment Variables** + Add your ElevenLabs API key to your `.env` file: + ``` + ELEVENLABS_API_KEY=your_elevenlabs_api_key_here + ``` + +2. **Agent Configuration** + - Create an agent in the ElevenLabs dashboard + - Copy the agent ID + - Store the agent ID in your personality configuration (the `key` field should contain the ElevenLabs agent ID) + +3. **Database Configuration** + Update your personality record to use ElevenLabs: + ```sql + UPDATE personalities + SET provider = 'elevenlabs', key = 'your_agent_id_here' + WHERE personality_id = 'your_personality_id'; + ``` + +## How it Works + +1. **Connection Flow**: + - ESP32 connects to your Deno server via WebSocket + - Server authenticates the user and gets their personality configuration + - If provider is "elevenlabs", server requests a signed URL from ElevenLabs API + - Server establishes WebSocket connection to ElevenLabs using the signed URL + - Server acts as a relay between ESP32 and ElevenLabs + +2. **Audio Processing**: + - ESP32 sends PCM16 audio data (binary) to server + - Server converts to base64 and forwards to ElevenLabs + - ElevenLabs sends back base64 audio data + - Server converts to PCM16, encodes with Opus, and sends to ESP32 + +3. **Message Types**: + - **From ElevenLabs**: `audio`, `user_transcript`, `agent_response`, `ping`, `conversation_end` + - **To ElevenLabs**: `audio`, `pong`, `interrupt` + - **To ESP32**: Various server messages like `CONVERSATION.INITIATED`, `RESPONSE.COMPLETE` + +## Features + +- ✅ Real-time audio streaming +- ✅ Automatic transcription (user and agent) +- ✅ Conversation history storage +- ✅ Error handling and reconnection +- ✅ Debug audio file logging (in dev mode) +- ✅ Volume control integration +- ✅ Ping/pong keepalive + +## Usage + +Once configured, the ElevenLabs provider works exactly like OpenAI and Gemini: + +```typescript +// In your personality configuration +{ + provider: "elevenlabs", + key: "your_elevenlabs_agent_id", + // other personality fields... +} +``` + +The server will automatically route to the ElevenLabs implementation when the provider is set to "elevenlabs". + +## Differences from OpenAI/Gemini + +- **No system prompts**: ElevenLabs agents are configured in their dashboard +- **No first message**: Agent behavior is defined in ElevenLabs configuration +- **Automatic VAD**: ElevenLabs handles voice activity detection +- **Agent-based**: Uses pre-configured agents rather than model + prompt + +## Troubleshooting + +1. **Connection Issues**: Ensure your ElevenLabs API key is valid and has access to Conversational AI +2. **Agent Not Found**: Verify the agent ID is correct and the agent exists in your ElevenLabs account +3. **Audio Issues**: Check that your ESP32 is sending PCM16 audio at 24kHz sample rate +4. **Transcription Missing**: Ensure your ElevenLabs agent has transcription enabled in the dashboard \ No newline at end of file diff --git a/server-deno/deno.json b/server-deno/deno.json index 13b4c3a..6301142 100644 --- a/server-deno/deno.json +++ b/server-deno/deno.json @@ -33,6 +33,7 @@ } }, "imports": { + "@elevenlabs/client": "npm:@elevenlabs/client@^0.6.2", "@evan/opus": "npm:@evan/opus@^1.0.3", "@std/assert": "jsr:@std/assert@1", "@supabase/supabase-js": "jsr:@supabase/supabase-js@^2.48.1" diff --git a/server-deno/deno.lock b/server-deno/deno.lock index 3a6b796..1f2f25b 100644 --- a/server-deno/deno.lock +++ b/server-deno/deno.lock @@ -1,15 +1,24 @@ { "version": "5", "specifiers": { + "jsr:@std/assert@1": "1.0.14", + "jsr:@std/internal@^1.0.10": "1.0.10", "jsr:@supabase/supabase-js@2": "2.48.1", - "jsr:@supabase/supabase-js@^2.48.1": "2.48.1", + "jsr:@supabase/supabase-js@^2.48.1": "2.57.4", + "npm:@elevenlabs/client@*": "0.6.2", + "npm:@elevenlabs/client@~0.6.2": "0.6.2", "npm:@evan/opus@^1.0.3": "1.0.3", "npm:@google/genai@*": "1.2.0_@modelcontextprotocol+sdk@1.12.1__express@5.1.0__zod@3.25.36_zod@3.25.36", "npm:@supabase/auth-js@2.67.3": "2.67.3", + "npm:@supabase/auth-js@2.71.1": "2.71.1", "npm:@supabase/functions-js@2.4.4": "2.4.4", + "npm:@supabase/functions-js@2.4.6": "2.4.6", "npm:@supabase/node-fetch@2.6.15": "2.6.15", "npm:@supabase/postgrest-js@1.18.1": "1.18.1", + "npm:@supabase/postgrest-js@1.21.4": "1.21.4", "npm:@supabase/realtime-js@2.11.2": "2.11.2", + "npm:@supabase/realtime-js@2.15.5": "2.15.5", + "npm:@supabase/storage-js@2.12.1": "2.12.1", "npm:@supabase/storage-js@2.7.1": "2.7.1", "npm:@types/node@*": "22.13.0", "npm:@types/ws@*": "8.5.14", @@ -17,19 +26,48 @@ "npm:ws@*": "8.18.0" }, "jsr": { + "@std/assert@1.0.14": { + "integrity": "68d0d4a43b365abc927f45a9b85c639ea18a9fab96ad92281e493e4ed84abaa4", + "dependencies": [ + "jsr:@std/internal" + ] + }, + "@std/internal@1.0.10": { + "integrity": "e3be62ce42cab0e177c27698e5d9800122f67b766a0bea6ca4867886cbde8cf7" + }, "@supabase/supabase-js@2.48.1": { "integrity": "747e85c2a546efcc9f84b343b08e10e3818d468ae214506b59dc65a36fd2d702", "dependencies": [ - "npm:@supabase/auth-js", - "npm:@supabase/functions-js", + "npm:@supabase/auth-js@2.67.3", + "npm:@supabase/functions-js@2.4.4", "npm:@supabase/node-fetch", - "npm:@supabase/postgrest-js", - "npm:@supabase/realtime-js", - "npm:@supabase/storage-js" + "npm:@supabase/postgrest-js@1.18.1", + "npm:@supabase/realtime-js@2.11.2", + "npm:@supabase/storage-js@2.7.1" + ] + }, + "@supabase/supabase-js@2.57.4": { + "integrity": "fc848eabd844e5ffe8f61468354ef5c305eb3cddf60ddd6cef2e20bb54352471", + "dependencies": [ + "npm:@supabase/auth-js@2.71.1", + "npm:@supabase/functions-js@2.4.6", + "npm:@supabase/node-fetch", + "npm:@supabase/postgrest-js@1.21.4", + "npm:@supabase/realtime-js@2.15.5", + "npm:@supabase/storage-js@2.12.1" ] } }, "npm": { + "@bufbuild/protobuf@1.10.1": { + "integrity": "sha512-wJ8ReQbHxsAfXhrf9ixl0aYbZorRuOWpBNzm8pL8ftmSxQx/wnJD5Eg861NwJU/czy2VXFIebCeZnZrI9rktIQ==" + }, + "@elevenlabs/client@0.6.2": { + "integrity": "sha512-4b3GCZLBINujAQ7PXMfLR4JrffiUc17plak4sXM0KMxxsDtFSrVAUCQHxFiEzDkSpTrMN+JtJbx7zhjIfkpWjA==", + "dependencies": [ + "livekit-client" + ] + }, "@evan/opus@1.0.3": { "integrity": "sha512-ADfwIad83W1LuiZDNMjDMDNQRsPz8rj5xnDLExhVWTnA5wGJCLntOn12Ir5rxGBqdfo10QhnNVdd2+gXiZ6xCg==" }, @@ -38,11 +76,20 @@ "dependencies": [ "@modelcontextprotocol/sdk", "google-auth-library", - "ws", + "ws@8.18.0", "zod", "zod-to-json-schema" ] }, + "@livekit/mutex@1.1.1": { + "integrity": "sha512-EsshAucklmpuUAfkABPxJNhzj9v2sG7JuzFDL4ML1oJQSV14sqrpTYnsaOudMAw9yOaW53NU3QQTlUQoRs4czw==" + }, + "@livekit/protocol@1.39.3": { + "integrity": "sha512-hfOnbwPCeZBEvMRdRhU2sr46mjGXavQcrb3BFRfG+Gm0Z7WUSeFdy5WLstXJzEepz17Iwp/lkGwJ4ZgOOYfPuA==", + "dependencies": [ + "@bufbuild/protobuf" + ] + }, "@modelcontextprotocol/sdk@1.12.1_express@5.1.0_zod@3.25.36": { "integrity": "sha512-KG1CZhZfWg+u8pxeM/mByJDScJSrjjxLc8fwQqbsS8xCjBmQfMNEBTotYdNanKekepnfRI85GtgQlctLFpcYPw==", "dependencies": [ @@ -65,12 +112,24 @@ "@supabase/node-fetch" ] }, + "@supabase/auth-js@2.71.1": { + "integrity": "sha512-mMIQHBRc+SKpZFRB2qtupuzulaUhFYupNyxqDj5Jp/LyPvcWvjaJzZzObv6URtL/O6lPxkanASnotGtNpS3H2Q==", + "dependencies": [ + "@supabase/node-fetch" + ] + }, "@supabase/functions-js@2.4.4": { "integrity": "sha512-WL2p6r4AXNGwop7iwvul2BvOtuJ1YQy8EbOd0dhG1oN1q8el/BIRSFCFnWAMM/vJJlHWLi4ad22sKbKr9mvjoA==", "dependencies": [ "@supabase/node-fetch" ] }, + "@supabase/functions-js@2.4.6": { + "integrity": "sha512-bhjZ7rmxAibjgmzTmQBxJU6ZIBCCJTc3Uwgvdi4FewueUTAGO5hxZT1Sj6tiD+0dSXf9XI87BDdJrg12z8Uaew==", + "dependencies": [ + "@supabase/node-fetch" + ] + }, "@supabase/node-fetch@2.6.15": { "integrity": "sha512-1ibVeYUacxWYi9i0cf5efil6adJ9WRyZBLivgjs+AUpewx1F3xPi7gLgaASI2SmIQxPoCEjAsLAzKPgMJVgOUQ==", "dependencies": [ @@ -83,13 +142,34 @@ "@supabase/node-fetch" ] }, + "@supabase/postgrest-js@1.21.4": { + "integrity": "sha512-TxZCIjxk6/dP9abAi89VQbWWMBbybpGWyvmIzTd79OeravM13OjR/YEYeyUOPcM1C3QyvXkvPZhUfItvmhY1IQ==", + "dependencies": [ + "@supabase/node-fetch" + ] + }, "@supabase/realtime-js@2.11.2": { "integrity": "sha512-u/XeuL2Y0QEhXSoIPZZwR6wMXgB+RQbJzG9VErA3VghVt7uRfSVsjeqd7m5GhX3JR6dM/WRmLbVR8URpDWG4+w==", "dependencies": [ "@supabase/node-fetch", "@types/phoenix", - "@types/ws", - "ws" + "@types/ws@8.5.14", + "ws@8.18.0" + ] + }, + "@supabase/realtime-js@2.15.5": { + "integrity": "sha512-/Rs5Vqu9jejRD8ZeuaWXebdkH+J7V6VySbCZ/zQM93Ta5y3mAmocjioa/nzlB6qvFmyylUgKVS1KpE212t30OA==", + "dependencies": [ + "@supabase/node-fetch", + "@types/phoenix", + "@types/ws@8.18.1", + "ws@8.18.3" + ] + }, + "@supabase/storage-js@2.12.1": { + "integrity": "sha512-QWg3HV6Db2J81VQx0PqLq0JDBn4Q8B1FYn1kYcbla8+d5WDmTdwwMr+EJAxNOSs9W4mhKMv+EYCpCrTFlTj4VQ==", + "dependencies": [ + "@supabase/node-fetch" ] }, "@supabase/storage-js@2.7.1": { @@ -98,6 +178,9 @@ "@supabase/node-fetch" ] }, + "@types/dom-mediacapture-record@1.0.22": { + "integrity": "sha512-mUMZLK3NvwRLcAAT9qmcK+9p7tpU2FHdDsntR3YI4+GY88XrgG4XiE7u1Q2LAN2/FZOz/tdMDC3GQCR4T8nFuw==" + }, "@types/node@22.13.0": { "integrity": "sha512-ClIbNe36lawluuvq3+YYhnIN2CELi+6q8NpnM7PYp4hBn/TatfboPgVSm2rwKRfnV2M+Ty9GWDFI64KEe+kysA==", "dependencies": [ @@ -107,6 +190,12 @@ "@types/phoenix@1.6.6": { "integrity": "sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==" }, + "@types/ws@8.18.1": { + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "dependencies": [ + "@types/node" + ] + }, "@types/ws@8.5.14": { "integrity": "sha512-bd/YFLW+URhBzMXurx7lWByOu+xzU9+kb3RboOteXYDfW+tr+JZa99OyNmPINEGB/ahzKrEuc8rcv4gnpJmxTw==", "dependencies": [ @@ -249,6 +338,9 @@ "etag@1.8.1": { "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" }, + "events@3.3.0": { + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, "eventsource-parser@3.0.2": { "integrity": "sha512-6RxOBZ/cYgd8usLwsEl+EC09Au/9BcmCKYF2/xbml6DNczf7nv0MQb+7BA2F+li6//I+28VNlQR37XfQtcAJuA==" }, @@ -460,6 +552,24 @@ "safe-buffer" ] }, + "livekit-client@2.15.7_@types+dom-mediacapture-record@1.0.22": { + "integrity": "sha512-19m8Q1cvRl5PslRawDUgWXeP8vL8584tX8kiZEJaPZo83U/L6VPS/O7pP06phfJaBWeeV8sAOVtEPlQiZEHtpg==", + "dependencies": [ + "@livekit/mutex", + "@livekit/protocol", + "@types/dom-mediacapture-record", + "events", + "loglevel", + "sdp-transform", + "ts-debounce", + "tslib", + "typed-emitter", + "webrtc-adapter" + ] + }, + "loglevel@1.9.2": { + "integrity": "sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==" + }, "math-intrinsics@1.1.0": { "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" }, @@ -558,12 +668,25 @@ "path-to-regexp" ] }, + "rxjs@7.8.2": { + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", + "dependencies": [ + "tslib" + ] + }, "safe-buffer@5.2.1": { "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safer-buffer@2.1.2": { "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "sdp-transform@2.15.0": { + "integrity": "sha512-KrOH82c/W+GYQ0LHqtr3caRpM3ITglq3ljGUIb8LTki7ByacJZ9z+piSGiwZDsRyhQbYBOBJgr2k6X4BZXi3Kw==", + "bin": true + }, + "sdp@3.2.1": { + "integrity": "sha512-lwsAIzOPlH8/7IIjjz3K0zYBk7aBVVcvjMwt3M4fLxpjMYyy7i3I97SLHebgn4YBjirkzfp3RvRDWSKsh/+WFw==" + }, "send@1.2.0": { "integrity": "sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==", "dependencies": [ @@ -646,6 +769,12 @@ "tr46@0.0.3": { "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" }, + "ts-debounce@4.0.0": { + "integrity": "sha512-+1iDGY6NmOGidq7i7xZGA4cm8DAa6fqdYcvO5Z6yBevH++Bdo9Qt/mN0TzHUgcCcKv1gmh9+W5dHqz8pMWbCbg==" + }, + "tslib@2.8.1": { + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, "type-is@2.0.1": { "integrity": "sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==", "dependencies": [ @@ -654,6 +783,12 @@ "mime-types" ] }, + "typed-emitter@2.1.0": { + "integrity": "sha512-g/KzbYKbH5C2vPkaXGu8DJlHrGKHLsM25Zg9WuC9pMGfuvT+X25tZQWo5fK1BjBm8+UrVE9LDCvaY0CQk+fXDA==", + "optionalDependencies": [ + "rxjs" + ] + }, "undici-types@6.20.0": { "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==" }, @@ -680,6 +815,12 @@ "webidl-conversions@3.0.1": { "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, + "webrtc-adapter@9.0.3": { + "integrity": "sha512-5fALBcroIl31OeXAdd1YUntxiZl1eHlZZWzNg3U4Fn+J9/cGL3eT80YlrsWGvj2ojuz1rZr2OXkgCzIxAZ7vRQ==", + "dependencies": [ + "sdp" + ] + }, "whatwg-url@5.0.0": { "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dependencies": [ @@ -700,6 +841,9 @@ "ws@8.18.0": { "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==" }, + "ws@8.18.3": { + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==" + }, "zod-to-json-schema@3.24.5_zod@3.25.36": { "integrity": "sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g==", "dependencies": [ @@ -796,6 +940,7 @@ "dependencies": [ "jsr:@std/assert@1", "jsr:@supabase/supabase-js@^2.48.1", + "npm:@elevenlabs/client@~0.6.2", "npm:@evan/opus@^1.0.3" ] } diff --git a/server-deno/logs.log b/server-deno/logs.log new file mode 100644 index 0000000..7399242 --- /dev/null +++ b/server-deno/logs.log @@ -0,0 +1 @@ +Audio capture server running on ws://0.0.0.0:8000 diff --git a/server-deno/main.ts b/server-deno/main.ts index dab0dc5..fb83aca 100644 --- a/server-deno/main.ts +++ b/server-deno/main.ts @@ -4,7 +4,7 @@ import type { WebSocket as WSWebSocket, WebSocketServer as _WebSocketServer, } from "npm:@types/ws"; -import { authenticateUser } from "./utils.ts"; +import { authenticateUser, elevenLabsApiKey } from "./utils.ts"; import { createFirstMessage, createSystemPrompt, @@ -15,6 +15,7 @@ import { SupabaseClient } from "@supabase/supabase-js"; import { isDev } from "./utils.ts"; import { connectToOpenAI } from "./models/openai.ts"; import { connectToGemini } from "./models/gemini.ts"; +import { connectToElevenLabs } from "./models/elevenlabs.ts"; const server = createServer(); @@ -75,6 +76,21 @@ wss.on("connection", async (ws: WSWebSocket, payload: IPayload) => { systemPrompt, ); break; + case "elevenlabs": + const agentId = user.personality?.oai_voice ?? ""; + + if (!elevenLabsApiKey) { + throw new Error("ELEVENLABS_API_KEY environment variable is required"); + } + + await connectToElevenLabs( + ws, + payload, + connectionPcmFile, + agentId, + elevenLabsApiKey, + ); + break; default: throw new Error(`Unknown provider: ${provider}`); } diff --git a/server-deno/models/elevenlabs.ts b/server-deno/models/elevenlabs.ts new file mode 100644 index 0000000..6d9af8c --- /dev/null +++ b/server-deno/models/elevenlabs.ts @@ -0,0 +1,348 @@ +import { Buffer } from "node:buffer"; +import type { RawData } from "npm:@types/ws"; +// @ts-ignore +import { + WebSocketConnection, + type SessionConfig, + type IncomingSocketEvent, + type DisconnectionDetails +} from "npm:@elevenlabs/client"; + +import { addConversation, getDeviceInfo } from "../supabase.ts"; +import { encoder, FRAME_SIZE, isDev } from "../utils.ts"; +import type { IPayload } from "../types.d.ts"; + +// Calculate audio level for debugging +function calculateAudioLevel(audioData: any): number { + if (!audioData || audioData.length === 0) return 0; + + // Convert to 16-bit samples + const samples = new Int16Array(audioData.buffer || audioData); + let sum = 0; + + for (let i = 0; i < samples.length; i++) { + sum += Math.abs(samples[i]); + } + + return Math.round(sum / samples.length); +} + +export const connectToElevenLabs = async ( + ws: WebSocket, + payload: IPayload, + connectionPcmFile: Deno.FsFile | null, + agentId: string, + apiKey: string, +) => { + console.log(apiKey, agentId); + const { user, supabase } = payload; + + // Queue messages until ElevenLabs connection is ready + const messageQueue: RawData[] = []; + let isElevenLabsConnected = false; + let elevenLabsConnection: WebSocketConnection | null = null; + let hasResponseStarted = false; + + // Handle messages from ESP32 client + const handleClientMessage = async (data: any, isBinary: boolean) => { + try { + if (isBinary) { + const base64Data = data.toString("base64"); + + if (isDev && connectionPcmFile) { + await connectionPcmFile.write(data); + } + + // Send audio to ElevenLabs using their client + if (isElevenLabsConnected && elevenLabsConnection) { + // Check if audio contains actual speech (simple volume check) + const audioLevel = calculateAudioLevel(data); + console.log(`Sending audio chunk to ElevenLabs: raw=${data.length} bytes, base64=${base64Data.length} chars, level=${audioLevel}`); + + try { + elevenLabsConnection.sendMessage({ + user_audio_chunk: base64Data, + }); + } catch (error) { + console.error("Error sending audio to ElevenLabs:", error); + } + } else { + console.log(`Cannot send audio - ElevenLabs connected: ${isElevenLabsConnected}, connection exists: ${!!elevenLabsConnection}`); + } + } else { + const message = JSON.parse(data.toString("utf-8")); + + if (message.type === "instruction") { + switch (message.msg) { + case "INTERRUPT": + console.log("Interrupt detected"); + if (elevenLabsConnection) { + elevenLabsConnection.sendMessage({ + type: "user_activity" + }); + } + break; + + case "END_SESSION": + console.log("End session requested"); + if (elevenLabsConnection) { + elevenLabsConnection.close(); + } + break; + } + } + } + } catch (error) { + console.error("Error handling client message:", error); + } + }; + + try { + // For server-side usage, we need to get a signed URL first + const signedUrlResponse = await fetch( + `https://api.elevenlabs.io/v1/convai/conversation/get-signed-url?agent_id=${agentId}`, + { + headers: { + 'xi-api-key': apiKey, + }, + } + ); + + if (!signedUrlResponse.ok) { + throw new Error(`Failed to get signed URL: ${signedUrlResponse.status} ${signedUrlResponse.statusText}`); + } + + const { signed_url } = await signedUrlResponse.json(); + + // Use default audio formats (let ElevenLabs auto-detect) + const modifiedSignedUrl = signed_url; + + // Create ElevenLabs connection using signed URL for server-side usage + const sessionConfig: SessionConfig = { + signedUrl: modifiedSignedUrl, + connectionType: "websocket", + }; + + elevenLabsConnection = await WebSocketConnection.create(sessionConfig); + + console.log("Connected to ElevenLabs successfully!"); + isElevenLabsConnected = true; + console.log(`ElevenLabs connection ready - conversation_initiation_metadata already processed by SDK`); + + // Send initial RESPONSE.CREATED for the first message + console.log("Sending initial RESPONSE.CREATED to ESP32"); + ws.send(JSON.stringify({ + type: "server", + msg: "RESPONSE.CREATED" + })); + + // Set up ElevenLabs event handlers + elevenLabsConnection.onMessage(async (event: IncomingSocketEvent) => { + console.log("ElevenLabs message type:", event.type); + + switch (event.type) { + case "conversation_initiation_metadata": + console.log("ElevenLabs conversation initiated (metadata received)"); + // RESPONSE.CREATED already sent when connection was established + break; + + case "ping": + // Handle ping messages - send pong response + console.log("Received ping from ElevenLabs, sending pong"); + if (event.ping_event?.event_id) { + elevenLabsConnection.sendMessage({ + type: "pong", + event_id: event.ping_event.event_id + }); + } + break; + + case "audio": + if (event.audio_event?.audio_base_64) { + // Send RESPONSE.CREATED only for the first audio chunk of each response + if (!hasResponseStarted) { + console.log("Sending RESPONSE.CREATED to ESP32 (agent audio starting)"); + ws.send(JSON.stringify({ + type: "server", + msg: "RESPONSE.CREATED" + })); + hasResponseStarted = true; + } + + const audioBuffer = Buffer.from(event.audio_event.audio_base_64, "base64"); + console.log(`Received audio from ElevenLabs: ${audioBuffer.length} bytes, processing into ${Math.ceil(audioBuffer.length / FRAME_SIZE)} frames`); + + let framesSent = 0; + // Process audio in frames for Opus encoding + for (let offset = 0; offset < audioBuffer.length; offset += FRAME_SIZE) { + const frame = audioBuffer.subarray(offset, offset + FRAME_SIZE); + + try { + const encodedPacket = encoder.encode(frame); + ws.send(encodedPacket); + framesSent++; + } catch (_e) { + // Skip this frame but continue with others + console.log(`Failed to encode frame at offset ${offset}`); + } + } + console.log(`Sent ${framesSent} audio frames to ESP32`); + } + break; + + case "user_transcript": + if (event.user_transcription_event?.user_transcript) { + console.log("User transcript:", event.user_transcription_event.user_transcript); + addConversation( + supabase, + "user", + event.user_transcription_event.user_transcript, + user, + ); + + // Send audio committed message like OpenAI does + console.log("Sending AUDIO.COMMITTED to ESP32"); + ws.send(JSON.stringify({ + type: "server", + msg: "AUDIO.COMMITTED" + })); + + + } + break; + + case "agent_response": + if (event.agent_response_event?.agent_response) { + console.log("Agent response:", event.agent_response_event.agent_response); + addConversation( + supabase, + "assistant", + event.agent_response_event.agent_response, + user, + ); + + // Send response complete with device info like OpenAI does + console.log("Sending RESPONSE.COMPLETE to ESP32"); + hasResponseStarted = false; // Reset for next response + try { + const device = await getDeviceInfo(supabase, user.user_id); + + if (device) { + ws.send(JSON.stringify({ + type: "server", + msg: "RESPONSE.COMPLETE", + volume_control: device.volume ?? 100, + })); + } else { + ws.send(JSON.stringify({ + type: "server", + msg: "RESPONSE.COMPLETE", + })); + } + } catch (error) { + console.error("Error fetching updated device info:", error); + ws.send(JSON.stringify({ + type: "server", + msg: "RESPONSE.COMPLETE", + })); + } + } + break; + + case "vad_score": + // Voice Activity Detection score - can be used for debugging + if (event.vad_score_event?.vad_score) { + console.log("VAD score:", event.vad_score_event.vad_score); + } + break; + + case "internal_tentative_agent_response": + // Tentative response while agent is thinking + if (event.tentative_agent_response_internal_event?.tentative_agent_response) { + console.log("Tentative response:", event.tentative_agent_response_internal_event.tentative_agent_response); + } + break; + + case "conversation_end": + console.log("ElevenLabs conversation ended"); + ws.send(JSON.stringify({ + type: "server", + msg: "SESSION.END" + })); + break; + + default: + console.log("Unknown ElevenLabs message:", event.type, event); + } + }); + + elevenLabsConnection.onDisconnect((details: DisconnectionDetails) => { + console.log("ElevenLabs connection closed:", details.reason); + ws.close(); + }); + + // Process queued messages + while (messageQueue.length > 0) { + const queuedMessage = messageQueue.shift(); + if (queuedMessage) { + handleClientMessage(queuedMessage, false); + } + } + + // Set up ESP32 WebSocket handlers + ws.on("message", (data: any, isBinary: boolean) => { + if (!isElevenLabsConnected) { + messageQueue.push(data); + } else { + handleClientMessage(data, isBinary); + } + }); + + ws.on("error", (error: any) => { + console.error("ESP32 WebSocket error:", error); + elevenLabsConnection?.close(); + }); + + ws.on("close", async (code: number, reason: string) => { + console.log(`ESP32 WebSocket closed with code ${code}, reason: ${reason}`); + elevenLabsConnection?.close(); + + if (isDev && connectionPcmFile) { + connectionPcmFile.close(); + console.log("Closed debug audio file."); + } + }); + + // Send initial device info to ESP32 + try { + const device = await getDeviceInfo(supabase, user.user_id); + + if (device) { + ws.send(JSON.stringify({ + type: "server", + msg: "DEVICE.INFO", + volume_control: device.volume ?? 100, + })); + } + } catch (error) { + console.error("Error fetching device info:", error); + } + + } catch (error) { + console.error("Failed to connect to ElevenLabs:", error); + + // Send more specific error information + let errorMessage = "RESPONSE.ERROR"; + if (error instanceof Error) { + console.error("Error details:", error.message); + if (error.message.includes("signed URL")) { + errorMessage = "AUTH.ERROR"; + } + } + + ws.send(JSON.stringify({ + type: "server", + msg: errorMessage + })); + } +}; \ No newline at end of file diff --git a/server-deno/types.d.ts b/server-deno/types.d.ts index d30c94d..874e2f8 100644 --- a/server-deno/types.d.ts +++ b/server-deno/types.d.ts @@ -26,7 +26,7 @@ declare global { user_code: string; } - type ModelProvider = "openai" | "gemini"; + type ModelProvider = "openai" | "gemini" | "elevenlabs"; type GeminiVoice = | "Zephyr" @@ -70,13 +70,17 @@ declare global { | "sage" | "verse"; + /** + * Note: oai_voice is essentially the name of the voice. + * the naming here sucks, please change it + */ interface IPersonality { personality_id: string; is_doctor: boolean; is_child_voice: boolean; is_story: boolean; key: string; - oai_voice: OaiVoice | GeminiVoice; + oai_voice: string; provider: ModelProvider; voice_description: string; title: string; diff --git a/server-deno/utils.ts b/server-deno/utils.ts index d8a0fa1..be46e07 100644 --- a/server-deno/utils.ts +++ b/server-deno/utils.ts @@ -26,6 +26,7 @@ encoder.bitrate = 12000; export const openaiApiKey = Deno.env.get("OPENAI_API_KEY"); export const geminiApiKey = Deno.env.get("GEMINI_API_KEY"); +export const elevenLabsApiKey = Deno.env.get("ELEVENLABS_API_KEY"); export { encoder, FRAME_SIZE }; From 7c1aeb5a904e34576585693e785271c4fe1f915b Mon Sep 17 00:00:00 2001 From: akdeb Date: Fri, 19 Sep 2025 16:40:15 +0700 Subject: [PATCH 2/4] adding full dir --- .DS_Store | Bin 10244 -> 10244 bytes assets/.DS_Store | Bin 6148 -> 6148 bytes .../index/A2NLSF.c.6A853A911FE36323.idx | Bin 0 -> 5340 bytes .../clangd/index/API.h.4A2CA4A646114943.idx | Bin 0 -> 216 bytes .../clangd/index/API.h.B65ECE3B73D0DBAA.idx | Bin 0 -> 1898 bytes .../AbstractMetaData.h.D224835530640FAF.idx | Bin 0 -> 2314 bytes .../AbstractURLStream.h.D8F1C3D7D311CDB6.idx | Bin 0 -> 1690 bytes .../index/Alignment.hpp.D66B264E9F3DD8E5.idx | Bin 0 -> 1112 bytes .../clangd/index/All.h.140CBC48D2517958.idx | Bin 0 -> 314 bytes .../index/Allocator.h.E9405746986DD265.idx | Bin 0 -> 2416 bytes .../index/Allocator.hpp.E66B288F35B5E9D6.idx | Bin 0 -> 1422 bytes .../AnalogAudioArduino.h.278801C049230E50.idx | Bin 0 -> 7160 bytes .../AnalogAudioStream.h.5C5161211CB94820.idx | Bin 0 -> 272 bytes .../AnalogConfigStd.h.BB8EF4DE961FA65C.idx | Bin 0 -> 1644 bytes .../AnalogDriverBase.h.F7F84EA916309524.idx | Bin 0 -> 232 bytes .../index/ArduinoJson.h.894E3BA526228C1A.idx | Bin 0 -> 206 bytes .../ArduinoJson.hpp.D5B75363574D6FA6.idx | Bin 0 -> 892 bytes ...duinoStreamReader.hpp.5379EADA34A46819.idx | Bin 0 -> 310 bytes ...duinoStringReader.hpp.86756463EF94C92F.idx | Bin 0 -> 310 bytes ...duinoStringWriter.hpp.88E14FBA6C664D56.idx | Bin 0 -> 1480 bytes .../index/ArrayData.hpp.52342A56987608B2.idx | Bin 0 -> 1668 bytes .../index/ArrayImpl.hpp.A61C5F86F89A2635.idx | Bin 0 -> 1530 bytes .../AsyncEventSource.cpp.4CD8E47060633C9D.idx | Bin 0 -> 11090 bytes .../AsyncEventSource.h.9E7E8450C0D5075E.idx | Bin 0 -> 7552 bytes .../index/AsyncJson.cpp.DCF6998AB1CC8C1A.idx | Bin 0 -> 5832 bytes .../index/AsyncJson.h.D7B32C0A03FF508A.idx | Bin 0 -> 3338 bytes .../AsyncMessagePack.cpp.B39D94573CDF77A4.idx | Bin 0 -> 5218 bytes .../AsyncMessagePack.h.E1F85AE9B163E423.idx | Bin 0 -> 2948 bytes .../index/AsyncTCP.cpp.6652DB83C72F5A7D.idx | Bin 0 -> 43334 bytes .../index/AsyncTCP.h.2F55788D6D32ACD1.idx | Bin 0 -> 11342 bytes .../AsyncTCPVersion.h.E4B765DF00A101E5.idx | Bin 0 -> 378 bytes .../AsyncWebHeader.cpp.28264E0F18C41A89.idx | Bin 0 -> 3596 bytes ...yncWebServerVersion.h.1B2A42E13A5F11E7.idx | Bin 0 -> 384 bytes .../AsyncWebSocket.cpp.DC4B1B9184BA7ACB.idx | Bin 0 -> 27896 bytes .../AsyncWebSocket.h.7D52C17B513A5AFF.idx | Bin 0 -> 17652 bytes .../index/Audio.cpp.0522B7FBDE82142C.idx | Bin 0 -> 17162 bytes .../clangd/index/Audio.h.2E59C21FC4F98A46.idx | Bin 0 -> 3168 bytes .../index/AudioActions.h.531F166B01C3F528.idx | Bin 0 -> 5448 bytes .../index/AudioCodecs.h.F4189669B85984DA.idx | Bin 0 -> 322 bytes .../AudioCodecsBase.h.DEE3DA20E5D433B5.idx | Bin 0 -> 8234 bytes .../index/AudioConfig.h.EA1DD6BEA4A8EC3A.idx | Bin 0 -> 3086 bytes .../index/AudioEffect.h.9687ED174C0A5C07.idx | Bin 0 -> 16476 bytes .../index/AudioEffects.h.DBEB28DFCD39F8AB.idx | Bin 0 -> 9354 bytes .../index/AudioEncoded.h.8BB15E0BC0D164B5.idx | Bin 0 -> 13710 bytes .../index/AudioFormat.h.71BF074496397C43.idx | Bin 0 -> 2354 bytes .../index/AudioHttp.h.838FC88C89E69BC9.idx | Bin 0 -> 304 bytes .../index/AudioIO.h.DC6F7A302587DE96.idx | Bin 0 -> 20550 bytes .../index/AudioLogger.h.90A6D546495C4FD3.idx | Bin 0 -> 4058 bytes .../index/AudioLogger.h.AF781AF14B31B95B.idx | Bin 0 -> 220 bytes .../index/AudioOutput.h.07A641708FC02E20.idx | Bin 0 -> 17186 bytes .../index/AudioPWM.h.F8E4A731B9A9F025.idx | Bin 0 -> 2820 bytes .../AudioParameters.h.A60CBAA7150456E5.idx | Bin 0 -> 4930 bytes .../index/AudioPlayer.h.07A4E1453E9D4417.idx | Bin 0 -> 13718 bytes .../AudioRuntime.cpp.9580600EFF443B4D.idx | Bin 0 -> 2786 bytes .../index/AudioRuntime.h.CE590E00BEC551E0.idx | Bin 0 -> 642 bytes .../index/AudioServer.h.3E9141C8DDC98D6C.idx | Bin 0 -> 11592 bytes .../index/AudioSource.h.9EFFB88C0BBA870F.idx | Bin 0 -> 9054 bytes .../index/AudioStreams.h.B5DC87C79EBB6986.idx | Bin 0 -> 54900 bytes ...dioStreamsConverter.h.777DCCEE6458D3E7.idx | Bin 0 -> 26364 bytes .../index/AudioTimer.h.EEFD388473A42CCE.idx | Bin 0 -> 2132 bytes .../AudioTimerAVR.h.F2696F6A8E1AF01E.idx | Bin 0 -> 204 bytes .../AudioTimerBase.h.99CEADA1E964B68B.idx | Bin 0 -> 1608 bytes .../AudioTimerESP32.h.216A1C562EC37EFD.idx | Bin 0 -> 9966 bytes .../AudioTimerESP8266.h.DC6DED86C2B2AB03.idx | Bin 0 -> 210 bytes .../AudioTimerMBED.h.F541C923872E75CB.idx | Bin 0 -> 206 bytes .../AudioTimerRP2040.h.87C632A42E686E5C.idx | Bin 0 -> 208 bytes .../AudioTimerRenesas.h.49DACD24089751F0.idx | Bin 0 -> 206 bytes .../AudioTimerSTM32.h.6D9151F3EAA88CD7.idx | Bin 0 -> 208 bytes .../index/AudioTools.h.D50B73232C8454BA.idx | Bin 0 -> 912 bytes .../index/AudioTypes.h.12C05B5A878D3BD1.idx | Bin 0 -> 12550 bytes ...kPort_SHA1Builder.cpp.0D94ECFBBC6E9013.idx | Bin 0 -> 4944 bytes ...ackPort_SHA1Builder.h.EF770EAA002E4548.idx | Bin 0 -> 1112 bytes .../BaseConverter.h.8EAC9AEA5BE41B09.idx | Bin 0 -> 37024 bytes .../index/BaseStream.h.611B2B757024056A.idx | Bin 0 -> 17336 bytes .../index/BitVector.h.AC5A73127F099D9D.idx | Bin 0 -> 212 bytes .../index/BufferRTOS.h.09C320CF58EE782B.idx | Bin 0 -> 5648 bytes .../index/Buffers.h.C145669565850788.idx | Bin 0 -> 19634 bytes .../index/Button.cpp.E2C2CD8FC2F7EE25.idx | Bin 0 -> 21158 bytes .../index/Button.h.419472D88B307C9D.idx | Bin 0 -> 3692 bytes .../clangd/index/CNG.c.9701B40A975C8160.idx | Bin 0 -> 7884 bytes .../index/ChunkPrint.cpp.FA9E9865590FFA17.idx | Bin 0 -> 3240 bytes .../index/ChunkPrint.h.27DC87F9C0487DE0.idx | Bin 0 -> 1058 bytes .../index/CodecBase64.h.3FE7E5F18F7FEE06.idx | Bin 0 -> 6936 bytes .../index/CodecCopy.h.F726B5D570D3FDB0.idx | Bin 0 -> 3550 bytes .../index/CodecFloat.h.D3A5E8C008B530FE.idx | Bin 0 -> 2900 bytes .../index/CodecL8.h.9006519BD372C597.idx | Bin 0 -> 5048 bytes .../index/CodecOpus.h.DBE0163B954DC0CC.idx | Bin 0 -> 15352 bytes .../index/CodecWAV.h.2CA9AFE346A930DB.idx | Bin 0 -> 17548 bytes .../CollectionData.hpp.ADEFCC9B006E7A4E.idx | Bin 0 -> 3480 bytes .../CollectionImpl.hpp.15DD1C0208AF276C.idx | Bin 0 -> 2116 bytes .../index/Collections.h.5AD16BFACA13166B.idx | Bin 0 -> 338 bytes .../index/Concurrency.h.912FC2E88C8E34F4.idx | Bin 0 -> 230 bytes .../index/Config.cpp.C8FDC20CD3643BFC.idx | Bin 0 -> 5222 bytes .../index/Config.h.10A105458D024C56.idx | Bin 0 -> 4030 bytes .../Configuration.hpp.2559A2BD5D09D5D9.idx | Bin 0 -> 1024 bytes .../index/Converter.hpp.D3073CB3B2B852D5.idx | Bin 0 -> 510 bytes .../ConverterImpl.hpp.954693C7BD44F452.idx | Bin 0 -> 3770 bytes ...CountingDecorator.hpp.D3CEB1CECCC70814.idx | Bin 0 -> 932 bytes .../index/Debouncer.h.851A3184B18C76C6.idx | Bin 0 -> 1214 bytes ...ecoderFromStreaming.h.E5853CB688A5C870.idx | Bin 0 -> 2696 bytes ...erializationError.hpp.07135FB0D6CFEB6E.idx | Bin 0 -> 2814 bytes ...ializationOptions.hpp.999A696CA850B5EA.idx | Bin 0 -> 964 bytes .../DummyWriter.hpp.65B8B7DC1AD51FB8.idx | Bin 0 -> 558 bytes .../ESPAsyncWebServer.h.E66DF72F446B8B67.idx | Bin 0 -> 51926 bytes .../ElementProxy.hpp.8BA84EE202BC6DA3.idx | Bin 0 -> 1732 bytes .../index/Equilizer.h.325B05F4281F9C2E.idx | Bin 0 -> 7096 bytes .../EscapeSequence.hpp.EB19812BF97F315E.idx | Bin 0 -> 552 bytes .../index/FactoryReset.h.F4D524EFAF2874AB.idx | Bin 0 -> 2588 bytes .../clangd/index/Fade.h.D18B1C57473A9B2B.idx | Bin 0 -> 9202 bytes .../index/Filter.h.47ECAD78C2BB92FE.idx | Bin 0 -> 12450 bytes .../index/Filter.hpp.2067804ABCCCC83C.idx | Bin 0 -> 1412 bytes .../FlashReader.hpp.82E91CAB58850C42.idx | Bin 0 -> 1496 bytes .../FlashString.hpp.EF1BFA92D7A4B104.idx | Bin 0 -> 2622 bytes .../index/FloatParts.hpp.DAFDEF6B0496615B.idx | Bin 0 -> 1418 bytes .../FloatTraits.hpp.CA7A66D11DB1FEB1.idx | Bin 0 -> 3280 bytes .../HP_variable_cutoff.c.AC167994AA2E550A.idx | Bin 0 -> 4338 bytes .../HttpChunkReader.h.2F93373B746436C8.idx | Bin 0 -> 3430 bytes .../index/HttpHeader.h.A788C3C1FA624112.idx | Bin 0 -> 13896 bytes .../HttpLineReader.h.16670FC86CCD1961.idx | Bin 0 -> 1190 bytes .../index/HttpRequest.h.C3D58DB2E2833111.idx | Bin 0 -> 9988 bytes .../index/HttpTypes.h.5AC40CD013B3C4F5.idx | Bin 0 -> 914 bytes .../index/I2SConfig.h.24C3C1ECE9B78EB9.idx | Bin 0 -> 316 bytes .../I2SConfigESP32.h.9CAA4A0A972DE3AD.idx | Bin 0 -> 5616 bytes .../index/I2SESP32.h.38133796FAEAB84E.idx | Bin 0 -> 12248 bytes .../index/I2SESP32V1.h.62A1B5ED79CC9693.idx | Bin 0 -> 302 bytes .../index/I2SESP8266.h.FD7F3E645ADB1E99.idx | Bin 0 -> 210 bytes .../I2SNanoSenseBLE.h.8BC3B23CAE5402C8.idx | Bin 0 -> 236 bytes .../I2SRP2040-MBED.h.2D3DD8308B9D7259.idx | Bin 0 -> 238 bytes .../index/I2SRP2040.h.B2F615345202C076.idx | Bin 0 -> 232 bytes .../index/I2SSAMD.h.49832D2A0AEFFD78.idx | Bin 0 -> 206 bytes .../index/I2SSTM32.h.6619DDD9FDC2C874.idx | Bin 0 -> 206 bytes .../index/I2SStream.h.87077323DF9837BC.idx | Bin 0 -> 5168 bytes .../index/ICYStream.h.3043F430B4F48149.idx | Bin 0 -> 4006 bytes .../ICYStreamBuffered.h.C36EED476ACF30BD.idx | Bin 0 -> 3380 bytes .../index/Inlines.h.633D664A31CCF571.idx | Bin 0 -> 2746 bytes .../Int24_3bytes_t.h.7FD191DCA4027854.idx | Bin 0 -> 2674 bytes .../Int24_4bytes_t.h.61036943D08C23BE.idx | Bin 0 -> 2814 bytes .../index/IsString.hpp.3DAF7B6BF24E641E.idx | Bin 0 -> 404 bytes .../IteratorReader.hpp.7DF2A29F5D5A7BBC.idx | Bin 0 -> 860 bytes .../index/JsonArray.hpp.AAE453FA34AB03DC.idx | Bin 0 -> 4624 bytes .../JsonArrayConst.hpp.3560815D916453DA.idx | Bin 0 -> 2828 bytes ...JsonArrayIterator.hpp.88014A048A69D8E9.idx | Bin 0 -> 2336 bytes .../JsonDeserializer.hpp.BB590C8A7249F191.idx | Bin 0 -> 9650 bytes .../JsonDocument.hpp.C3FF5BE3C491DD92.idx | Bin 0 -> 3204 bytes .../index/JsonFloat.hpp.D700E990D2CA8637.idx | Bin 0 -> 384 bytes .../JsonInteger.hpp.1E0FB308CE2813B6.idx | Bin 0 -> 594 bytes .../index/JsonObject.hpp.CFD235C56720FFFF.idx | Bin 0 -> 1974 bytes .../JsonObjectConst.hpp.179581C584885904.idx | Bin 0 -> 3238 bytes ...sonObjectIterator.hpp.E95FC59D323C6E05.idx | Bin 0 -> 1948 bytes .../index/JsonPair.hpp.5E54673DF0FF156D.idx | Bin 0 -> 1544 bytes .../JsonSerializer.hpp.6888255D01098BAE.idx | Bin 0 -> 3208 bytes .../index/JsonString.hpp.47BC9FCD0111BDFB.idx | Bin 0 -> 1982 bytes .../JsonVariant.hpp.5D20D03AE6311A2E.idx | Bin 0 -> 1178 bytes .../JsonVariantConst.hpp.99D62D06E44A2498.idx | Bin 0 -> 3382 bytes ...JsonVariantCopier.hpp.5A5B301F2099A8C2.idx | Bin 0 -> 838 bytes ...sonVariantVisitor.hpp.E15A1E6BD2A2A289.idx | Bin 0 -> 1604 bytes .../index/LEDHandler.cpp.9CC1DC14FBD4B3DF.idx | Bin 0 -> 9840 bytes .../index/LEDHandler.h.8E3FB47DA83DE614.idx | Bin 0 -> 770 bytes ...LPC_analysis_filter.c.6DB8680C349FC007.idx | Bin 0 -> 3994 bytes ...analysis_filter_FLP.c.1EB174340FD5A373.idx | Bin 0 -> 2752 bytes .../index/LPC_fit.c.D4BD759AB03E8FCB.idx | Bin 0 -> 3594 bytes .../LPC_inv_pred_gain.c.6B53CE316E130A9D.idx | Bin 0 -> 4914 bytes ...C_inv_pred_gain_FLP.c.D6FA389C9D7DB886.idx | Bin 0 -> 2750 bytes .../LP_variable_cutoff.c.35F9074E123D4DD5.idx | Bin 0 -> 4904 bytes ...analysis_filter_FIX.c.A778CBE12055E7B1.idx | Bin 0 -> 3872 bytes ...analysis_filter_FLP.c.20EA1EADE455451C.idx | Bin 0 -> 2750 bytes .../LTP_scale_ctrl_FIX.c.6CD365A8268835C1.idx | Bin 0 -> 3604 bytes .../LTP_scale_ctrl_FLP.c.6DE1810DF3E0EFBC.idx | Bin 0 -> 2746 bytes .../index/Latch.hpp.3A0458B5F62E1DB7.idx | Bin 0 -> 1088 bytes .../clangd/index/List.h.5AD347DCB33D45FD.idx | Bin 0 -> 7134 bytes .../index/LockGuard.h.01260B6EBB824B60.idx | Bin 0 -> 3176 bytes .../index/MacroCount.h.CDA8A2F2A134A053.idx | Bin 0 -> 344 bytes .../index/MacroDebug.h.0BAB4EAA8C57994D.idx | Bin 0 -> 224 bytes .../index/MedianFilter.h.8DD7DEA17F296D0B.idx | Bin 0 -> 2030 bytes .../MemberProxy.hpp.9EB009EA7EE36741.idx | Bin 0 -> 1688 bytes .../index/MemoryPool.hpp.7B1555123F4F2767.idx | Bin 0 -> 2204 bytes .../MemoryPoolList.hpp.5E27FBD1AE30C11B.idx | Bin 0 -> 3242 bytes .../index/MetaData.h.0C83960511FC3EB9.idx | Bin 0 -> 3560 bytes .../index/MetaDataICY.h.65CD1093EE34EFA4.idx | Bin 0 -> 8670 bytes .../index/MetaDataID3.h.69D33722B81F80A6.idx | Bin 0 -> 14844 bytes .../index/Middleware.cpp.4C728AAEF03255BF.idx | Bin 0 -> 8938 bytes .../MsgPackBinary.hpp.B466B52A3BCCA030.idx | Bin 0 -> 872 bytes ...gPackDeserializer.hpp.30BCB0E35957AC74.idx | Bin 0 -> 6520 bytes .../MsgPackExtension.hpp.2DA81622CA406AA7.idx | Bin 0 -> 1056 bytes ...MsgPackSerializer.hpp.6767D06A90F7BA59.idx | Bin 0 -> 5062 bytes .../index/MusicalNotes.h.9B822D02A635DDA0.idx | Bin 0 -> 6678 bytes .../index/NLSF2A.c.3FAAE2B4E46B1E49.idx | Bin 0 -> 4294 bytes .../index/NLSF_VQ.c.47D202AD19A90610.idx | Bin 0 -> 3628 bytes ...F_VQ_weights_laroia.c.7046C4797F96D681.idx | Bin 0 -> 3862 bytes .../index/NLSF_decode.c.F884C61078C02235.idx | Bin 0 -> 4254 bytes .../NLSF_del_dec_quant.c.CA945F45E8845254.idx | Bin 0 -> 6030 bytes .../index/NLSF_encode.c.040D330BE5B18D3E.idx | Bin 0 -> 4900 bytes .../NLSF_stabilize.c.E2E6E575DAFCDC19.idx | Bin 0 -> 3406 bytes .../index/NLSF_unpack.c.F468B4D811BF524B.idx | Bin 0 -> 3432 bytes .../clangd/index/NSQ.c.282A353DFF9E0737.idx | Bin 0 -> 11684 bytes .../clangd/index/NSQ.h.B8918C8585B4CDDB.idx | Bin 0 -> 2088 bytes .../index/NSQ_del_dec.c.FE54FB9F320FA6D2.idx | Bin 0 -> 18634 bytes .../index/Namespace.hpp.34957FF5B286EC5D.idx | Bin 0 -> 460 bytes .../NestingLimit.hpp.F81B9681691CB52A.idx | Bin 0 -> 894 bytes .../clangd/index/OTA.cpp.D8474BA9F9BD0422.idx | Bin 0 -> 6486 bytes .../clangd/index/OTA.h.4D38B2274C5B1C97.idx | Bin 0 -> 738 bytes .../index/ObjectData.hpp.90D4A22F17435B65.idx | Bin 0 -> 1672 bytes .../index/ObjectImpl.hpp.B450BF4DE291355D.idx | Bin 0 -> 1522 bytes .../clangd/index/PLC.c.DD7304F65A9C9C20.idx | Bin 0 -> 13326 bytes .../clangd/index/PLC.h.BBE587BDC39E8ED6.idx | Bin 0 -> 216 bytes .../clangd/index/PLC.h.F200120DD7452202.idx | Bin 0 -> 914 bytes .../index/PWMAudioAVR.h.9B9C56D1016FED47.idx | Bin 0 -> 258 bytes .../index/PWMAudioBase.h.BFDDABBE997109B9.idx | Bin 0 -> 10202 bytes .../PWMAudioESP32.h.AB16A3B39C4CD423.idx | Bin 0 -> 2760 bytes .../index/PWMAudioMBED.h.2ECE86BA5F5798C9.idx | Bin 0 -> 210 bytes .../PWMAudioRP2040.h.14A5149F7DE35E36.idx | Bin 0 -> 212 bytes .../PWMAudioRenesas.h.6BC4524054161F64.idx | Bin 0 -> 210 bytes .../PWMAudioSTM32.h.44368D8E69A2D2B0.idx | Bin 0 -> 210 bytes .../index/Pipeline.h.241862BD4A00AF4C.idx | Bin 0 -> 8528 bytes .../index/PitchShift.cpp.2D0C8BA64261998F.idx | Bin 0 -> 4328 bytes .../index/PitchShift.h.A45832E7949B3235.idx | Bin 0 -> 1446 bytes .../index/PitchShift.h.B94B5D31E0EB4A76.idx | Bin 0 -> 11540 bytes ...ttyJsonSerializer.hpp.8EB15571B71B29D7.idx | Bin 0 -> 2100 bytes .../PrintWriter.hpp.B5507998003C1C20.idx | Bin 0 -> 308 bytes .../clangd/index/Queue.h.340D64FDBFA97CA9.idx | Bin 0 -> 1326 bytes .../QueueFromVector.h.9DAAEF351F69A73E.idx | Bin 0 -> 2038 bytes .../index/QueueRTOS.h.5F3B49A8FA17DD1F.idx | Bin 0 -> 4150 bytes .../index/RamReader.hpp.E8213933D33610E8.idx | Bin 0 -> 624 bytes .../index/RamString.hpp.F45466CF716E7C85.idx | Bin 0 -> 1570 bytes .../index/Reader.hpp.BDAE6CDCFBB9B8A2.idx | Bin 0 -> 1394 bytes .../ResampleStream.h.45D50FA47917BB94.idx | Bin 0 -> 8554 bytes .../ResourceManager.hpp.469E3972D826EF99.idx | Bin 0 -> 3764 bytes ...sourceManagerImpl.hpp.49340CF06229917D.idx | Bin 0 -> 1084 bytes .../SerializedValue.hpp.63A8FE19E967F0BB.idx | Bin 0 -> 1780 bytes .../index/SigProc_FIX.h.A2DF67B46C943A2D.idx | Bin 0 -> 224 bytes .../index/SigProc_FIX.h.A5C507F22F35E27B.idx | Bin 0 -> 11334 bytes .../clangd/index/Slice.h.D69E6542AF848154.idx | Bin 0 -> 1384 bytes .../SocketIOclient.cpp.793DA6C0DFB4E7E7.idx | Bin 0 -> 9610 bytes .../SocketIOclient.h.E58C7CB720B38354.idx | Bin 0 -> 4708 bytes .../SoundGenerator.h.EF2CC48BD1D46442.idx | Bin 0 -> 18350 bytes .../clangd/index/Stack.h.B13C06A5A43C5AB8.idx | Bin 0 -> 1310 bytes ...taticStringWriter.hpp.A92C3E155565C53E.idx | Bin 0 -> 908 bytes .../StdStreamReader.hpp.7BCD5763D008298C.idx | Bin 0 -> 338 bytes .../StdStreamWriter.hpp.7FE75957CF5C9419.idx | Bin 0 -> 336 bytes .../StdStringWriter.hpp.03F69209AD96D00D.idx | Bin 0 -> 418 bytes .../clangd/index/Str.h.F42913555C927C7D.idx | Bin 0 -> 5358 bytes .../index/StrView.h.9FFB37F2836B9F87.idx | Bin 0 -> 11038 bytes .../index/StreamCopy.h.F4E6DE836CE98E6B.idx | Bin 0 -> 10684 bytes .../StringAdapter.hpp.AD48E1B418D15806.idx | Bin 0 -> 886 bytes .../StringAdapters.hpp.4C7F191831B3D5D9.idx | Bin 0 -> 924 bytes .../StringBuffer.hpp.2D84ED6AE4BB462C.idx | Bin 0 -> 2098 bytes .../StringBuilder.hpp.32362816BAE97F3F.idx | Bin 0 -> 2356 bytes .../index/StringNode.hpp.9C193BC98BC4AF4B.idx | Bin 0 -> 1734 bytes .../StringObject.hpp.E90A0F751240B6F0.idx | Bin 0 -> 314 bytes .../index/StringPool.hpp.10682948B001F1EE.idx | Bin 0 -> 2070 bytes .../StringTraits.hpp.CD51DBA8F663A671.idx | Bin 0 -> 1002 bytes ...SynchronizedBuffers.h.D5996086EDDACF8C.idx | Bin 0 -> 7598 bytes .../index/Synthesizer.h.8479D62F5E033C01.idx | Bin 0 -> 8824 bytes .../clangd/index/Task.h.6FC61B57B92A51E4.idx | Bin 0 -> 2332 bytes .../TextFormatter.hpp.9431D842837CDB6D.idx | Bin 0 -> 3862 bytes .../index/URLStream.h.58A07D706BADDAF9.idx | Bin 0 -> 12606 bytes .../URLStreamBuffered.h.6DDBDE90AA7817C3.idx | Bin 0 -> 6546 bytes .../clangd/index/Url.h.D9F0EACE981A9E1B.idx | Bin 0 -> 2844 bytes .../index/Utf16.hpp.F905E07DD2B4F99E.idx | Bin 0 -> 1170 bytes .../index/Utf8.hpp.70F35D05C2C6D994.idx | Bin 0 -> 528 bytes .../index/Utilities.hpp.5D7201226B0634BF.idx | Bin 0 -> 2706 bytes .../clangd/index/VAD.c.EDB98F32861B7F02.idx | Bin 0 -> 8128 bytes .../index/VQ_WMat_EC.c.E00DDE68681D6599.idx | Bin 0 -> 4756 bytes .../VariantAttorney.hpp.1725B654201A8017.idx | Bin 0 -> 674 bytes .../VariantCompare.hpp.5794A6FC6AEEA210.idx | Bin 0 -> 4198 bytes .../VariantContent.hpp.37DD811AC1B51484.idx | Bin 0 -> 3366 bytes .../VariantData.hpp.8BAE816B0D6811A1.idx | Bin 0 -> 11590 bytes ...ariantDataVisitor.hpp.D1E039C5ABF73867.idx | Bin 0 -> 570 bytes .../VariantImpl.hpp.ADE96C25890126C6.idx | Bin 0 -> 1962 bytes .../VariantOperators.hpp.FF8777BDA6ADFE9F.idx | Bin 0 -> 3560 bytes .../VariantReader.hpp.D7D78C491C65EA38.idx | Bin 0 -> 316 bytes .../VariantRefBase.hpp.4ECD346E87BB092E.idx | Bin 0 -> 5824 bytes ...ariantRefBaseImpl.hpp.9D29FFB8A4D7C27F.idx | Bin 0 -> 3736 bytes .../index/VariantTag.hpp.33BA025F84003D30.idx | Bin 0 -> 512 bytes .../index/VariantTo.hpp.310E4CAEF78457F4.idx | Bin 0 -> 1020 bytes .../index/Vector.h.A2F60F9E1E36C620.idx | Bin 0 -> 8524 bytes .../VolumeControl.h.A700424FBFB292B6.idx | Bin 0 -> 3692 bytes .../index/VolumeStream.h.E3E224FFDADCE816.idx | Bin 0 -> 9212 bytes ...WebAuthentication.cpp.C882C3EF5780B2A8.idx | Bin 0 -> 7548 bytes .../WebAuthentication.h.E60B3B5A2B4B6E42.idx | Bin 0 -> 890 bytes .../WebHandlerImpl.h.95D772EE73C18D2B.idx | Bin 0 -> 4164 bytes .../WebHandlers.cpp.B91CBB8B5C75D37A.idx | Bin 0 -> 9626 bytes .../index/WebRequest.cpp.8F2030BA7A72579E.idx | Bin 0 -> 31250 bytes .../WebResponseImpl.h.0F513D79B4B45248.idx | Bin 0 -> 7854 bytes .../WebResponses.cpp.D2474C56A43E0295.idx | Bin 0 -> 20842 bytes .../index/WebServer.cpp.17B46B3CF4CFD296.idx | Bin 0 -> 6672 bytes .../index/WebSockets.cpp.E90F623EEF7975EF.idx | Bin 0 -> 13718 bytes .../index/WebSockets.h.38EBE8BB86089044.idx | Bin 0 -> 8774 bytes .../WebSocketsClient.cpp.FE8EEE12A84428A9.idx | Bin 0 -> 24564 bytes .../WebSocketsClient.h.425E0C010A5B3993.idx | Bin 0 -> 5376 bytes .../WebSocketsServer.cpp.9AFCD44A71CB6EAC.idx | Bin 0 -> 22024 bytes .../WebSocketsServer.h.3AEE4669C2989231.idx | Bin 0 -> 7182 bytes .../WebSocketsVersion.h.10256D411AAC098F.idx | Bin 0 -> 330 bytes .../WifiManager.cpp.A27427F525A7B485.idx | Bin 0 -> 21446 bytes .../index/WifiManager.h.1E867C09A6ECE1B3.idx | Bin 0 -> 3844 bytes .../index/Writer.hpp.7537CE16A11B5496.idx | Bin 0 -> 1016 bytes .../_kiss_fft_guts.h.7E6D15F554997CC9.idx | Bin 0 -> 834 bytes .../index/alias_cast.hpp.70B9DB4DEA0D0927.idx | Bin 0 -> 728 bytes .../ana_filt_bank_1.c.7421EC7349E78D22.idx | Bin 0 -> 3864 bytes .../index/analysis.c.BCFB35330DF49760.idx | Bin 0 -> 3006 bytes .../index/analysis.h.B77803E3D35A99AB.idx | Bin 0 -> 3506 bytes ...ply_sine_window_FIX.c.A6E467A61031CB3D.idx | Bin 0 -> 4250 bytes ...ply_sine_window_FLP.c.26D1F5C1A8F831A4.idx | Bin 0 -> 2748 bytes .../clangd/index/arch.h.3CEEEA39DEAB0E70.idx | Bin 0 -> 1960 bytes .../clangd/index/arch.h.F39CCA31A8303E7B.idx | Bin 0 -> 214 bytes .../arduino_config.h.E0A55434C8F9821E.idx | Bin 0 -> 502 bytes ...arithmeticCompare.hpp.BAC4139809C59140.idx | Bin 0 -> 1692 bytes .../index/assert.hpp.61F79D18A27082EE.idx | Bin 0 -> 276 bytes .../index/attributes.hpp.761BA4F10D08DA54.idx | Bin 0 -> 274 bytes .../index/autocorr_FIX.c.B78F650F95304C28.idx | Bin 0 -> 3178 bytes ...autocorrelation_FLP.c.8F408E720132E411.idx | Bin 0 -> 2746 bytes .../clangd/index/bands.c.6EB29D34B15CEDE4.idx | Bin 0 -> 25740 bytes .../clangd/index/bands.h.2459DAF7D0E5784C.idx | Bin 0 -> 216 bytes .../clangd/index/bands.h.86490603CA5F41A3.idx | Bin 0 -> 3258 bytes .../index/biquad_alt.c.911A7317DC3BC161.idx | Bin 0 -> 5140 bytes .../index/bitwise.c.2E847370287A9D81.idx | Bin 0 -> 11256 bytes .../burg_modified_FIX.c.1F78F64E26DB46FA.idx | Bin 0 -> 7916 bytes .../burg_modified_FLP.c.D9F8AB4DD5431D21.idx | Bin 0 -> 2746 bytes .../index/button_adc.c.E4798A7D8F5B9201.idx | Bin 0 -> 10842 bytes .../index/button_adc.h.BFAC535016678FD3.idx | Bin 0 -> 1502 bytes .../index/button_gpio.c.31B9CD26C7E8374C.idx | Bin 0 -> 4296 bytes .../index/button_gpio.h.29783FA91F56BA58.idx | Bin 0 -> 1026 bytes .../button_matrix.c.191299C88EEEA98A.idx | Bin 0 -> 4942 bytes .../button_matrix.h.4DC6916EE75B71F3.idx | Bin 0 -> 1614 bytes .../index/bwexpander.c.5CF6BE7CC622612D.idx | Bin 0 -> 3158 bytes .../bwexpander_32.c.AB899D0E839C30B2.idx | Bin 0 -> 3168 bytes .../bwexpander_FLP.c.B1BB441B0DDD9909.idx | Bin 0 -> 2744 bytes .../index/cdecode.c.05562B896DBCC13D.idx | Bin 0 -> 2734 bytes .../clangd/index/celt.c.9E7E2B8EA3BF2D07.idx | Bin 0 -> 7084 bytes .../clangd/index/celt.h.CA58998BFAC6E270.idx | Bin 0 -> 4566 bytes .../clangd/index/celt.h.E4A2469344163B0B.idx | Bin 0 -> 214 bytes .../index/celt_decoder.c.3C428D99FDF25CC0.idx | Bin 0 -> 22682 bytes .../index/celt_encoder.c.945D372FB0AAF84E.idx | Bin 0 -> 39854 bytes .../index/celt_lpc.c.D6E9D12870997AE8.idx | Bin 0 -> 7270 bytes .../index/celt_lpc.h.01ED66AC6A5BB872.idx | Bin 0 -> 954 bytes .../index/celt_lpc.h.51B81CD20C794CB9.idx | Bin 0 -> 216 bytes .../index/cencode.c.881082EAE4A898E3.idx | Bin 0 -> 2734 bytes .../index/cencode_inc.h.4B42CAF0659D7148.idx | Bin 0 -> 1142 bytes ...check_control_input.c.FD3CB76594E5F048.idx | Bin 0 -> 4354 bytes .../index/code_signs.c.27E66D33827190AF.idx | Bin 0 -> 3996 bytes .../compatibility.hpp.832A6D8E66FCA26C.idx | Bin 0 -> 3038 bytes .../conditional.hpp.4966F359B23F765A.idx | Bin 0 -> 710 bytes .../index/control.h.B5BAF0E0888C4AFC.idx | Bin 0 -> 216 bytes .../index/control.h.DDF5B9FA844D1763.idx | Bin 0 -> 2912 bytes .../index/control_SNR.c.5699C987416CD2D3.idx | Bin 0 -> 3472 bytes ...rol_audio_bandwidth.c.48D1F0A55115678A.idx | Bin 0 -> 4444 bytes .../control_codec.c.7EF83A17B1300FEA.idx | Bin 0 -> 13732 bytes .../convertNumber.hpp.3683DB44FB581254.idx | Bin 0 -> 694 bytes .../corrMatrix_FIX.c.F102DAB71FBE809F.idx | Bin 0 -> 4394 bytes .../corrMatrix_FLP.c.A58530ECFBBAA3A0.idx | Bin 0 -> 2744 bytes .../index/cpu_support.h.31E386938D1FFCC1.idx | Bin 0 -> 386 bytes .../index/cpu_support.h.4EE5A31C9BA8E95D.idx | Bin 0 -> 220 bytes .../index/crctable.h.E344DF18F75D6581.idx | Bin 0 -> 342 bytes .../index/ctype.hpp.2D3630624A1B3F6C.idx | Bin 0 -> 428 bytes .../clangd/index/cwrs.c.917E5FFB6F91FFAC.idx | Bin 0 -> 4560 bytes .../clangd/index/cwrs.h.A65431F01BF9F75A.idx | Bin 0 -> 706 bytes .../clangd/index/debug.c.D9D45993594C7798.idx | Bin 0 -> 2804 bytes .../clangd/index/debug.h.77BE4AA0EC334F08.idx | Bin 0 -> 214 bytes .../clangd/index/debug.h.DEBC3B711A71F9FD.idx | Bin 0 -> 620 bytes .../index/dec_API.c.8E8C650AA441DA02.idx | Bin 0 -> 9290 bytes .../index/decay.hpp.2C542D11ABD4A06B.idx | Bin 0 -> 1014 bytes .../index/declval.hpp.D95162FC1B6534FB.idx | Bin 0 -> 382 bytes .../index/decode_core.c.D8D39B78E5BEFCAF.idx | Bin 0 -> 8446 bytes .../index/decode_frame.c.FEEA2D0F37888A57.idx | Bin 0 -> 4530 bytes .../decode_indices.c.3621EFA7DC922283.idx | Bin 0 -> 5836 bytes .../decode_parameters.c.DEC45658E9D65293.idx | Bin 0 -> 4796 bytes .../index/decode_pitch.c.CC9EF481F6DC652C.idx | Bin 0 -> 3632 bytes .../decode_pulses.c.3425247F64E75441.idx | Bin 0 -> 3938 bytes .../decoder_set_fs.c.EA87EF42A53AA7C6.idx | Bin 0 -> 4562 bytes .../index/define.h.B8AAEB17BF523002.idx | Bin 0 -> 216 bytes .../index/define.h.DD60D4C2A73CA772.idx | Bin 0 -> 2666 bytes .../deserialize.hpp.86A0DBE95ABEA85F.idx | Bin 0 -> 1676 bytes .../clangd/index/dirac.c.7D168F9163EF006B.idx | Bin 0 -> 5136 bytes .../clangd/index/dirac.h.D09C5B1D9EDF59AA.idx | Bin 0 -> 1410 bytes .../index/ecintrin.h.BEC50578FF995606.idx | Bin 0 -> 218 bytes .../index/ecintrin.h.D7A959EE092B5785.idx | Bin 0 -> 532 bytes .../index/enable_if.hpp.D326FBD6ACCB5715.idx | Bin 0 -> 642 bytes .../index/enc_API.c.F7E9AF060428292C.idx | Bin 0 -> 19442 bytes .../encode_frame_FIX.c.174D99320E62A9BC.idx | Bin 0 -> 12872 bytes .../encode_frame_FLP.c.D74EAE9CF9CB1E2D.idx | Bin 0 -> 2744 bytes .../encode_indices.c.2F0009608D56E125.idx | Bin 0 -> 6650 bytes .../encode_pulses.c.696E0FF761C86013.idx | Bin 0 -> 4988 bytes .../index/endianness.hpp.7EEB42BAB714B890.idx | Bin 0 -> 812 bytes .../index/energy_FLP.c.3F7110B4372D2FED.idx | Bin 0 -> 2742 bytes .../index/entcode.c.F3C515DAED111A76.idx | Bin 0 -> 3290 bytes .../index/entcode.h.A40EDE42A901A992.idx | Bin 0 -> 3066 bytes .../index/entdec.c.2720ACDCD59AC35C.idx | Bin 0 -> 7252 bytes .../index/entdec.h.3CB572F537F97350.idx | Bin 0 -> 216 bytes .../index/entdec.h.4480A4F01625B1E0.idx | Bin 0 -> 2136 bytes .../index/entenc.c.5215917B6E2B312C.idx | Bin 0 -> 9206 bytes .../index/entenc.h.4D46806BDFE0426A.idx | Bin 0 -> 216 bytes .../index/entenc.h.D723C88FD89E299E.idx | Bin 0 -> 2622 bytes .../index/errors.h.A89007E4E430EDA5.idx | Bin 0 -> 586 bytes .../index/find_LPC_FIX.c.95D36ABFFB5588F3.idx | Bin 0 -> 4708 bytes .../index/find_LPC_FLP.c.BE3770A91109777C.idx | Bin 0 -> 2744 bytes .../index/find_LTP_FIX.c.0FA9F510D837A6A0.idx | Bin 0 -> 3986 bytes .../index/find_LTP_FLP.c.74450DC518F70B11.idx | Bin 0 -> 2744 bytes ...find_pitch_lags_FIX.c.383C6F1F5AC689CF.idx | Bin 0 -> 6594 bytes ...find_pitch_lags_FLP.c.1905B523852DC0C0.idx | Bin 0 -> 2746 bytes ...find_pred_coefs_FIX.c.B6244D2883781948.idx | Bin 0 -> 6606 bytes ...find_pred_coefs_FLP.c.96B02E6861C104AF.idx | Bin 0 -> 2748 bytes .../fixed_generic.h.51D5A965062FCBFC.idx | Bin 0 -> 1788 bytes .../index/float_cast.h.028778263365E3ED.idx | Bin 0 -> 218 bytes .../index/float_cast.h.84529683D372D434.idx | Bin 0 -> 476 bytes .../index/framing.c.DED3A0F4B2E65C18.idx | Bin 0 -> 16628 bytes .../function_traits.hpp.C47F7E496D63EB1B.idx | Bin 0 -> 860 bytes .../index/gain_quant.c.AF00B061217B7D87.idx | Bin 0 -> 4390 bytes .../index/ieee754.hpp.1518FD065696EA9B.idx | Bin 0 -> 494 bytes .../index/init_decoder.c.6DF76AEDF94850D5.idx | Bin 0 -> 3104 bytes .../index/init_encoder.c.0EB3390919665282.idx | Bin 0 -> 3558 bytes .../inner_prod_aligned.c.567527B022159C0D.idx | Bin 0 -> 3122 bytes .../inner_product_FLP.c.D33C8F2AF29C3EFE.idx | Bin 0 -> 2746 bytes .../index/integer.hpp.8F61D3E32729DEE3.idx | Bin 0 -> 982 bytes ...integral_constant.hpp.67234F6A4164D111.idx | Bin 0 -> 458 bytes .../index/interpolate.c.A354C2DDDAEF98F8.idx | Bin 0 -> 3250 bytes .../index/iot_button.c.46A388AC0CD94B1D.idx | Bin 0 -> 28320 bytes .../index/iot_button.h.EBEF7424ABBF9496.idx | Bin 0 -> 6202 bytes .../index/is_array.hpp.BAC557D04C5F32C9.idx | Bin 0 -> 600 bytes .../index/is_base_of.hpp.7552CC7AF864ABAC.idx | Bin 0 -> 694 bytes .../index/is_class.hpp.1513FD81DA2483AF.idx | Bin 0 -> 572 bytes .../index/is_const.hpp.EB3C369216E26E0F.idx | Bin 0 -> 488 bytes .../is_convertible.hpp.767AFD1AA713D854.idx | Bin 0 -> 680 bytes .../index/is_enum.hpp.A9B38953ED6AE989.idx | Bin 0 -> 658 bytes ...is_floating_point.hpp.4972B85706CF1963.idx | Bin 0 -> 422 bytes .../is_integral.hpp.98A6496F67CFF3DD.idx | Bin 0 -> 454 bytes .../index/is_pointer.hpp.781BDE75E9D7AA2E.idx | Bin 0 -> 452 bytes .../index/is_same.hpp.B5A60BA71E4D53A8.idx | Bin 0 -> 504 bytes .../index/is_signed.hpp.A16B75AF354588BC.idx | Bin 0 -> 430 bytes .../is_unsigned.hpp.008661E9666C1EEC.idx | Bin 0 -> 432 bytes .../index/k2a_FIX.c.8412C03B97C55BD0.idx | Bin 0 -> 3350 bytes .../index/k2a_FLP.c.DAC9EC80E4CFBF51.idx | Bin 0 -> 2740 bytes .../index/k2a_Q16_FIX.c.A8E7782112B8B1DF.idx | Bin 0 -> 3204 bytes .../index/kiss_fft.c.AB8F465BFBB349A0.idx | Bin 0 -> 14552 bytes .../index/kiss_fft.h.68B84E701C590F98.idx | Bin 0 -> 3552 bytes .../index/kiss_fft.h.A061068BDD377AC6.idx | Bin 0 -> 218 bytes .../index/laplace.c.3F69A7405C09F3ED.idx | Bin 0 -> 3722 bytes .../index/laplace.h.C8327432B6CC6303.idx | Bin 0 -> 676 bytes .../index/libsha1.c.E564FBC1E474BAC6.idx | Bin 0 -> 2730 bytes .../index/limits.hpp.BD66E96B6A4C2D0F.idx | Bin 0 -> 428 bytes .../index/lin2log.c.DF8EEB2E12D04B47.idx | Bin 0 -> 3176 bytes .../index/literals.h.B7DA46A265F4E165.idx | Bin 0 -> 12544 bytes .../index/log2lin.c.CBCCD02BB1D40720.idx | Bin 0 -> 3420 bytes .../index/macros.h.B2814BE33F02B08E.idx | Bin 0 -> 1104 bytes .../index/main.cpp.34229C44B457104C.idx | Bin 0 -> 8966 bytes .../clangd/index/main.h.03191DD1F7A32922.idx | Bin 0 -> 214 bytes .../clangd/index/main.h.ED033293B0AE8AB2.idx | Bin 0 -> 10772 bytes .../index/main_FIX.h.2B0E954A32BB17F5.idx | Bin 0 -> 224 bytes .../index/main_FIX.h.D99DC42278F4B506.idx | Bin 0 -> 4632 bytes .../make_unsigned.hpp.03142F9A405260DF.idx | Bin 0 -> 1242 bytes .../mapping_matrix.c.612ED244CA05F1AB.idx | Bin 0 -> 5686 bytes .../mapping_matrix.h.7CF514F435F8E1E8.idx | Bin 0 -> 2338 bytes .../index/math.hpp.F0C3778F9FE147B3.idx | Bin 0 -> 426 bytes .../index/mathops.c.45027DE549B5ADDA.idx | Bin 0 -> 7290 bytes .../index/mathops.h.A1085551EFABD5F1.idx | Bin 0 -> 4936 bytes .../index/mathops.h.B5AA045FC1C2CB76.idx | Bin 0 -> 216 bytes .../clangd/index/mdct.c.30ABE5E173762052.idx | Bin 0 -> 8638 bytes .../clangd/index/mdct.h.150658577FA8D64D.idx | Bin 0 -> 1526 bytes .../clangd/index/mdct.h.E88D517B5E276629.idx | Bin 0 -> 214 bytes .../index/measure.hpp.44DD873994693FCF.idx | Bin 0 -> 660 bytes .../metric_internal.c.CD8455E1E1443174.idx | Bin 0 -> 5798 bytes .../index/mfrngcod.h.90BF46BBD2839EA9.idx | Bin 0 -> 404 bytes .../clangd/index/mlp.c.D2C7D25CADA25EC0.idx | Bin 0 -> 4158 bytes .../clangd/index/mlp.h.F927E96ACE19BCA3.idx | Bin 0 -> 1564 bytes .../index/mlp_data.c.67D2B19CF219EB46.idx | Bin 0 -> 3742 bytes .../clangd/index/modes.c.87FF00ED322164E7.idx | Bin 0 -> 3950 bytes .../clangd/index/modes.h.2F4CDC1DAC99575E.idx | Bin 0 -> 1794 bytes .../clangd/index/modes.h.38DC77F223804B36.idx | Bin 0 -> 216 bytes ..._shape_analysis_FIX.c.576FA60D32FD25EB.idx | Bin 0 -> 14880 bytes ..._shape_analysis_FLP.c.5175F515D2D1A8A5.idx | Bin 0 -> 2750 bytes .../clangd/index/ogg.h.80327659E64120A3.idx | Bin 0 -> 222 bytes .../clangd/index/ogg.h.CF060702CF6DB5EF.idx | Bin 0 -> 9576 bytes .../clangd/index/oggz.c.B0FAF68283515499.idx | Bin 0 -> 12898 bytes .../index/oggz_auto.c.CBB94B242FF7D7AC.idx | Bin 0 -> 15358 bytes .../oggz_byteorder.h.A86398CF64D73801.idx | Bin 0 -> 1090 bytes .../oggz_comments.c.96D8CF05D55C19CA.idx | Bin 0 -> 13490 bytes .../index/oggz_compat.h.5E698ED3F17F37B2.idx | Bin 0 -> 252 bytes .../oggz_constants.h.3EC1CC8A9255A22E.idx | Bin 0 -> 5010 bytes .../oggz_constants.h.511DD0400A1EB539.idx | Bin 0 -> 228 bytes .../index/oggz_dlist.c.14EC70282FAA8B30.idx | Bin 0 -> 6392 bytes .../index/oggz_dlist.h.355644B2D6EC5B56.idx | Bin 0 -> 1516 bytes .../index/oggz_io.c.1DF8164CE8F53DF7.idx | Bin 0 -> 8184 bytes .../index/oggz_macros.h.AB3BFAC330C037B6.idx | Bin 0 -> 480 bytes .../index/oggz_off_t.h.80C65181F686ED8E.idx | Bin 0 -> 260 bytes .../index/oggz_off_t.h.F4922E334C2EE5E7.idx | Bin 0 -> 226 bytes ...ggz_off_t_generated.h.10C01F7F0725A30E.idx | Bin 0 -> 234 bytes ...ggz_off_t_generated.h.8DA4D9F9C515CE4B.idx | Bin 0 -> 390 bytes .../index/oggz_packet.h.59B2D7C56F5B38E0.idx | Bin 0 -> 226 bytes .../index/oggz_packet.h.E4BCB1C375328B0B.idx | Bin 0 -> 932 bytes .../index/oggz_private.h.F6696A36BF684A12.idx | Bin 0 -> 12604 bytes .../index/oggz_read.c.8F6F666327BB06D9.idx | Bin 0 -> 13008 bytes .../index/oggz_seek.c.C71787ABB676DF01.idx | Bin 0 -> 9768 bytes .../index/oggz_stream.c.9500D4D3C63DDAEC.idx | Bin 0 -> 4044 bytes .../index/oggz_stream.h.498A6F0491FC2661.idx | Bin 0 -> 850 bytes .../index/oggz_stream.h.B9F613593B941C48.idx | Bin 0 -> 228 bytes ...oggz_stream_private.h.6242EF5AAD09EFB5.idx | Bin 0 -> 1878 bytes .../index/oggz_table.c.39D7D19E10D3276A.idx | Bin 0 -> 4750 bytes .../index/oggz_vector.c.482A3C3FAA5B88B2.idx | Bin 0 -> 8402 bytes .../index/oggz_vector.h.BCD56BA33EF7E474.idx | Bin 0 -> 2816 bytes .../index/oggz_write.c.35344158BFD1B420.idx | Bin 0 -> 11846 bytes .../clangd/index/opus.c.5A2A6C68A894E850.idx | Bin 0 -> 4490 bytes .../clangd/index/opus.h.DB33D128F48A4140.idx | Bin 0 -> 12442 bytes .../clangd/index/opus.h.E80FECB3705D365B.idx | Bin 0 -> 216 bytes .../index/opus_config.h.B50CFC7A16A972D0.idx | Bin 0 -> 520 bytes .../index/opus_custom.h.29E4793DABDC3E7F.idx | Bin 0 -> 222 bytes .../index/opus_custom.h.F8C7160DF3F6DF5D.idx | Bin 0 -> 4082 bytes .../index/opus_decoder.c.44ED2C54059191B3.idx | Bin 0 -> 18880 bytes .../index/opus_defines.h.3E448383EE1293BC.idx | Bin 0 -> 3724 bytes .../index/opus_defines.h.F32FC180FF71A345.idx | Bin 0 -> 222 bytes .../index/opus_encoder.c.6B4EC36D27703EDD.idx | Bin 0 -> 45874 bytes .../opus_multistream.c.9ED84168C73F02A9.idx | Bin 0 -> 3516 bytes .../opus_multistream.h.06BCE813C5D3FAB1.idx | Bin 0 -> 6172 bytes .../opus_multistream.h.59CAEE117F23E11C.idx | Bin 0 -> 224 bytes ...multistream_decoder.c.E3F9250F6B14031C.idx | Bin 0 -> 10328 bytes ...multistream_encoder.c.EE3809D1F1163EDB.idx | Bin 0 -> 21876 bytes .../index/opus_private.h.CF7475665D66F80D.idx | Bin 0 -> 5408 bytes .../opus_projection.h.88FD9EA03D783EB9.idx | Bin 0 -> 5848 bytes .../opus_projection.h.DAB5F8FA5FAB95C1.idx | Bin 0 -> 224 bytes ..._projection_decoder.c.DECBAB910E24631B.idx | Bin 0 -> 7406 bytes ..._projection_encoder.c.3182E90EA025396C.idx | Bin 0 -> 10228 bytes .../index/opus_types.h.00AC4A8C435825E9.idx | Bin 0 -> 220 bytes .../index/opus_types.h.A0A3A4BCB71E68E1.idx | Bin 0 -> 1192 bytes .../index/os_support.h.53483621DC06FFEA.idx | Bin 0 -> 820 bytes .../index/os_support.h.8C2BB10215A7F4A7.idx | Bin 0 -> 218 bytes .../index/os_types.h.B68A9FC9E2160B5E.idx | Bin 0 -> 226 bytes .../index/os_types.h.FAF9FE50D75739F6.idx | Bin 0 -> 888 bytes .../parseNumber.hpp.1D34E6D9019CC72C.idx | Bin 0 -> 4198 bytes .../index/pgmspace.hpp.2E9AC7DE6FF26133.idx | Bin 0 -> 1002 bytes .../pgmspace_generic.hpp.7FC0F17BD6D17B7B.idx | Bin 0 -> 1246 bytes .../clangd/index/pitch.c.A1AF03E973200C52.idx | Bin 0 -> 10308 bytes .../clangd/index/pitch.h.50FB611A7AA28265.idx | Bin 0 -> 3338 bytes .../clangd/index/pitch.h.A19945B37545E908.idx | Bin 0 -> 216 bytes ...h_analysis_core_FIX.c.3E7C770B688D46CF.idx | Bin 0 -> 13310 bytes ...h_analysis_core_FLP.c.E319847CF80A9199.idx | Bin 0 -> 2750 bytes .../pitch_est_defines.h.B5037C88A781A98D.idx | Bin 0 -> 222 bytes .../pitch_est_defines.h.E0761CE8034D456B.idx | Bin 0 -> 1650 bytes .../pitch_est_tables.c.5243CE40C0BA7466.idx | Bin 0 -> 3754 bytes .../preprocessor.hpp.DE95B6E1D87FA1E9.idx | Bin 0 -> 734 bytes .../process_NLSFs.c.B11DF8A808AC1C7D.idx | Bin 0 -> 4846 bytes .../process_gains_FIX.c.9F03976D0BE53819.idx | Bin 0 -> 6356 bytes .../process_gains_FLP.c.65C7A7BAB95FC3DD.idx | Bin 0 -> 2746 bytes .../quant_LTP_gains.c.1697886B56FAB10D.idx | Bin 0 -> 4408 bytes .../index/quant_bands.c.A5C22E6208F9FC39.idx | Bin 0 -> 11908 bytes .../index/quant_bands.h.1D4375E99FAD369A.idx | Bin 0 -> 1988 bytes .../index/quant_bands.h.32CB1F8C6EE2DF76.idx | Bin 0 -> 220 bytes .../clangd/index/rate.c.53BBFB7E001EE784.idx | Bin 0 -> 6300 bytes .../clangd/index/rate.h.6618773B0F70B7E9.idx | Bin 0 -> 1646 bytes ...ze_correlations_FIX.c.00C67EC944C42A77.idx | Bin 0 -> 2972 bytes ...ze_correlations_FLP.c.C56A38016A161627.idx | Bin 0 -> 2752 bytes .../remove_const.hpp.5973057D42CB4C55.idx | Bin 0 -> 714 bytes .../index/remove_cv.hpp.C120EBFC4E8D812F.idx | Bin 0 -> 936 bytes .../remove_reference.hpp.49BD8FF2B8092BA4.idx | Bin 0 -> 718 bytes .../index/repacketizer.c.93D2C8DC1A302F21.idx | Bin 0 -> 8626 bytes .../repacketizer_demo.c.8026297B96CFC08E.idx | Bin 0 -> 4828 bytes .../index/resampler.c.50478C110C6B1E1D.idx | Bin 0 -> 5908 bytes .../resampler_down2.c.F7D1C178850B6D17.idx | Bin 0 -> 3722 bytes .../resampler_down2_3.c.D9F0B48AC64B3EA1.idx | Bin 0 -> 4244 bytes .../resampler_private.h.4D226EF491E66716.idx | Bin 0 -> 1178 bytes ...sampler_private_AR2.c.74B10B3DF4065A6A.idx | Bin 0 -> 3354 bytes ...ler_private_IIR_FIR.c.D5630AA43836F62B.idx | Bin 0 -> 4658 bytes ...er_private_down_FIR.c.450FA9F32390A805.idx | Bin 0 -> 8134 bytes ...pler_private_up2_HQ.c.08B48A5E5A16D7D2.idx | Bin 0 -> 4556 bytes .../resampler_rom.c.0799FCCB66505B26.idx | Bin 0 -> 3816 bytes .../resampler_rom.h.067E2EB42812271F.idx | Bin 0 -> 1530 bytes .../resampler_structs.h.271257387B0AA49D.idx | Bin 0 -> 1512 bytes ...sidual_energy16_FIX.c.A3C8681E3A8724CD.idx | Bin 0 -> 4226 bytes ...residual_energy_FIX.c.624155C77AADE128.idx | Bin 0 -> 4006 bytes ...residual_energy_FLP.c.9A7345287E57C4C3.idx | Bin 0 -> 2748 bytes ...ale_copy_vector_FLP.c.4ED18274705E1A70.idx | Bin 0 -> 2748 bytes .../scale_vector_FLP.c.3DB2784678C49F2F.idx | Bin 0 -> 2744 bytes .../index/schur64_FIX.c.0EFFD3A88B25D18E.idx | Bin 0 -> 3664 bytes .../index/schur_FIX.c.F191AC72C24DCE75.idx | Bin 0 -> 3848 bytes .../index/schur_FLP.c.9CCEAAEDD2758222.idx | Bin 0 -> 2740 bytes .../index/serialize.hpp.0213CDDE24D47252.idx | Bin 0 -> 1146 bytes .../index/shell_coder.c.9CCACE43ADEBB44B.idx | Bin 0 -> 4882 bytes .../index/sigm_Q15.c.EB30D3F55E67DC32.idx | Bin 0 -> 3378 bytes .../clangd/index/sort.c.FEB3BE417F3CDFA8.idx | Bin 0 -> 3644 bytes .../index/sort_FLP.c.078F8832040FCE38.idx | Bin 0 -> 2740 bytes .../index/stack_alloc.h.876C385555B91F92.idx | Bin 0 -> 220 bytes .../index/stack_alloc.h.BA249997EABDA109.idx | Bin 0 -> 852 bytes .../static_modes_fixed.h.D040EA36199389CD.idx | Bin 0 -> 2568 bytes .../stereo_LR_to_MS.c.C8F8940794529F62.idx | Bin 0 -> 8276 bytes .../stereo_MS_to_LR.c.4D70E5AD64C16E46.idx | Bin 0 -> 4642 bytes .../stereo_decode_pred.c.D928F02E5441EC69.idx | Bin 0 -> 3578 bytes .../stereo_encode_pred.c.104698CCE247F2E0.idx | Bin 0 -> 3414 bytes ...ereo_find_predictor.c.DEE18FA50D316322.idx | Bin 0 -> 4110 bytes .../stereo_quant_pred.c.5D85BA6BC4B7A450.idx | Bin 0 -> 3368 bytes .../index/structs.h.21A11E33873E7833.idx | Bin 0 -> 17360 bytes .../index/structs.h.7658A4B4AA67E7F3.idx | Bin 0 -> 216 bytes .../index/structs_FIX.h.AC720C842BBF3507.idx | Bin 0 -> 226 bytes .../index/structs_FIX.h.B85CB1B20653950F.idx | Bin 0 -> 3794 bytes .../sum_sqr_shift.c.14C0FACF673380E2.idx | Bin 0 -> 3710 bytes .../table_LSF_cos.c.B5146B68684CA598.idx | Bin 0 -> 2892 bytes .../index/tables.h.8ADF3DF542560B84.idx | Bin 0 -> 4608 bytes .../index/tables_LTP.c.255EB2AB8BE35F9C.idx | Bin 0 -> 4630 bytes ...ables_NLSF_CB_NB_MB.c.35C06ACAD90A304B.idx | Bin 0 -> 3832 bytes .../tables_NLSF_CB_WB.c.068C0BB60BA894B6.idx | Bin 0 -> 3846 bytes .../index/tables_gain.c.E0D0FEA394978FFE.idx | Bin 0 -> 3030 bytes .../index/tables_other.c.1A2177EFCFE4A805.idx | Bin 0 -> 4992 bytes .../tables_pitch_lag.c.41551C0577557D18.idx | Bin 0 -> 3362 bytes ...es_pulses_per_block.c.1F593B9A0813133C.idx | Bin 0 -> 3820 bytes .../index/tansig_table.h.05245018975ABAA1.idx | Bin 0 -> 306 bytes .../tuning_parameters.h.3B9018C6E36D0D84.idx | Bin 0 -> 224 bytes .../tuning_parameters.h.D79E84135492C4D0.idx | Bin 0 -> 1100 bytes .../type_identity.hpp.0BFD1029984BFC63.idx | Bin 0 -> 440 bytes .../type_traits.hpp.3A0AF3C3BD28782A.idx | Bin 0 -> 606 bytes .../index/typedef.h.76D86D2514B936B8.idx | Bin 0 -> 912 bytes .../index/typedef.h.DABCD1FE92554443.idx | Bin 0 -> 218 bytes .../index/utility.hpp.E7C5063F026AD6BC.idx | Bin 0 -> 718 bytes .../vector_ops_FIX.c.CC7C1071B94E635A.idx | Bin 0 -> 4054 bytes .../index/version.hpp.A64224691B1AD202.idx | Bin 0 -> 312 bytes .../index/void_t.hpp.68600E32F769E439.idx | Bin 0 -> 532 bytes .../clangd/index/vq.c.885ABC183933D3CE.idx | Bin 0 -> 9622 bytes .../clangd/index/vq.h.3E6D0BCDE2B444F2.idx | Bin 0 -> 1476 bytes ...autocorrelation_FIX.c.8E5CED122DCBD9CE.idx | Bin 0 -> 4106 bytes ...autocorrelation_FLP.c.C5F333CCF17C95E9.idx | Bin 0 -> 2750 bytes .../index/wrappers_FLP.c.B7606DD26C91A3B3.idx | Bin 0 -> 2742 bytes firmware-arduino/compile_commands.json | 1682 +++++++++++++++++ firmware-arduino/src/Config.cpp | 4 +- firmware-arduino/src/Config.h | 1 + firmware-arduino/src/FactoryReset.h | 6 + firmware-arduino/src/main.cpp | 419 ++-- .../CreateCharacter/BuildDashboard.tsx | 847 +++++---- .../CreateCharacter/ElevenLabsModal.tsx | 153 ++ frontend-nextjs/hooks/use-media-query.ts | 17 + frontend-nextjs/hooks/useMediaQuery.ts | 7 +- frontend-nextjs/types/types.d.ts | 8 +- .../20250611011151_add_provider.sql | 2 +- 627 files changed, 2517 insertions(+), 629 deletions(-) create mode 100644 firmware-arduino/.cache/clangd/index/A2NLSF.c.6A853A911FE36323.idx create mode 100644 firmware-arduino/.cache/clangd/index/API.h.4A2CA4A646114943.idx create mode 100644 firmware-arduino/.cache/clangd/index/API.h.B65ECE3B73D0DBAA.idx create mode 100644 firmware-arduino/.cache/clangd/index/AbstractMetaData.h.D224835530640FAF.idx create mode 100644 firmware-arduino/.cache/clangd/index/AbstractURLStream.h.D8F1C3D7D311CDB6.idx create mode 100644 firmware-arduino/.cache/clangd/index/Alignment.hpp.D66B264E9F3DD8E5.idx create mode 100644 firmware-arduino/.cache/clangd/index/All.h.140CBC48D2517958.idx create mode 100644 firmware-arduino/.cache/clangd/index/Allocator.h.E9405746986DD265.idx create mode 100644 firmware-arduino/.cache/clangd/index/Allocator.hpp.E66B288F35B5E9D6.idx create mode 100644 firmware-arduino/.cache/clangd/index/AnalogAudioArduino.h.278801C049230E50.idx create mode 100644 firmware-arduino/.cache/clangd/index/AnalogAudioStream.h.5C5161211CB94820.idx create mode 100644 firmware-arduino/.cache/clangd/index/AnalogConfigStd.h.BB8EF4DE961FA65C.idx create mode 100644 firmware-arduino/.cache/clangd/index/AnalogDriverBase.h.F7F84EA916309524.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArduinoJson.h.894E3BA526228C1A.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArduinoJson.hpp.D5B75363574D6FA6.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArduinoStreamReader.hpp.5379EADA34A46819.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArduinoStringReader.hpp.86756463EF94C92F.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArduinoStringWriter.hpp.88E14FBA6C664D56.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArrayData.hpp.52342A56987608B2.idx create mode 100644 firmware-arduino/.cache/clangd/index/ArrayImpl.hpp.A61C5F86F89A2635.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncEventSource.cpp.4CD8E47060633C9D.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncEventSource.h.9E7E8450C0D5075E.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncJson.cpp.DCF6998AB1CC8C1A.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncJson.h.D7B32C0A03FF508A.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncMessagePack.cpp.B39D94573CDF77A4.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncMessagePack.h.E1F85AE9B163E423.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncTCP.cpp.6652DB83C72F5A7D.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncTCP.h.2F55788D6D32ACD1.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncTCPVersion.h.E4B765DF00A101E5.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncWebHeader.cpp.28264E0F18C41A89.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncWebServerVersion.h.1B2A42E13A5F11E7.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncWebSocket.cpp.DC4B1B9184BA7ACB.idx create mode 100644 firmware-arduino/.cache/clangd/index/AsyncWebSocket.h.7D52C17B513A5AFF.idx create mode 100644 firmware-arduino/.cache/clangd/index/Audio.cpp.0522B7FBDE82142C.idx create mode 100644 firmware-arduino/.cache/clangd/index/Audio.h.2E59C21FC4F98A46.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioActions.h.531F166B01C3F528.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioCodecs.h.F4189669B85984DA.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioCodecsBase.h.DEE3DA20E5D433B5.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioConfig.h.EA1DD6BEA4A8EC3A.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioEffect.h.9687ED174C0A5C07.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioEffects.h.DBEB28DFCD39F8AB.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioEncoded.h.8BB15E0BC0D164B5.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioFormat.h.71BF074496397C43.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioHttp.h.838FC88C89E69BC9.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioIO.h.DC6F7A302587DE96.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioLogger.h.90A6D546495C4FD3.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioLogger.h.AF781AF14B31B95B.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioOutput.h.07A641708FC02E20.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioPWM.h.F8E4A731B9A9F025.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioParameters.h.A60CBAA7150456E5.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioPlayer.h.07A4E1453E9D4417.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioRuntime.cpp.9580600EFF443B4D.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioRuntime.h.CE590E00BEC551E0.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioServer.h.3E9141C8DDC98D6C.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioSource.h.9EFFB88C0BBA870F.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioStreams.h.B5DC87C79EBB6986.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioStreamsConverter.h.777DCCEE6458D3E7.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimer.h.EEFD388473A42CCE.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerAVR.h.F2696F6A8E1AF01E.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerBase.h.99CEADA1E964B68B.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerESP32.h.216A1C562EC37EFD.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerESP8266.h.DC6DED86C2B2AB03.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerMBED.h.F541C923872E75CB.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerRP2040.h.87C632A42E686E5C.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerRenesas.h.49DACD24089751F0.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTimerSTM32.h.6D9151F3EAA88CD7.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTools.h.D50B73232C8454BA.idx create mode 100644 firmware-arduino/.cache/clangd/index/AudioTypes.h.12C05B5A878D3BD1.idx create mode 100644 firmware-arduino/.cache/clangd/index/BackPort_SHA1Builder.cpp.0D94ECFBBC6E9013.idx create mode 100644 firmware-arduino/.cache/clangd/index/BackPort_SHA1Builder.h.EF770EAA002E4548.idx create mode 100644 firmware-arduino/.cache/clangd/index/BaseConverter.h.8EAC9AEA5BE41B09.idx create mode 100644 firmware-arduino/.cache/clangd/index/BaseStream.h.611B2B757024056A.idx create mode 100644 firmware-arduino/.cache/clangd/index/BitVector.h.AC5A73127F099D9D.idx create mode 100644 firmware-arduino/.cache/clangd/index/BufferRTOS.h.09C320CF58EE782B.idx create mode 100644 firmware-arduino/.cache/clangd/index/Buffers.h.C145669565850788.idx create mode 100644 firmware-arduino/.cache/clangd/index/Button.cpp.E2C2CD8FC2F7EE25.idx create mode 100644 firmware-arduino/.cache/clangd/index/Button.h.419472D88B307C9D.idx create mode 100644 firmware-arduino/.cache/clangd/index/CNG.c.9701B40A975C8160.idx create mode 100644 firmware-arduino/.cache/clangd/index/ChunkPrint.cpp.FA9E9865590FFA17.idx create mode 100644 firmware-arduino/.cache/clangd/index/ChunkPrint.h.27DC87F9C0487DE0.idx create mode 100644 firmware-arduino/.cache/clangd/index/CodecBase64.h.3FE7E5F18F7FEE06.idx create mode 100644 firmware-arduino/.cache/clangd/index/CodecCopy.h.F726B5D570D3FDB0.idx create mode 100644 firmware-arduino/.cache/clangd/index/CodecFloat.h.D3A5E8C008B530FE.idx create mode 100644 firmware-arduino/.cache/clangd/index/CodecL8.h.9006519BD372C597.idx create mode 100644 firmware-arduino/.cache/clangd/index/CodecOpus.h.DBE0163B954DC0CC.idx create mode 100644 firmware-arduino/.cache/clangd/index/CodecWAV.h.2CA9AFE346A930DB.idx create mode 100644 firmware-arduino/.cache/clangd/index/CollectionData.hpp.ADEFCC9B006E7A4E.idx create mode 100644 firmware-arduino/.cache/clangd/index/CollectionImpl.hpp.15DD1C0208AF276C.idx create mode 100644 firmware-arduino/.cache/clangd/index/Collections.h.5AD16BFACA13166B.idx create mode 100644 firmware-arduino/.cache/clangd/index/Concurrency.h.912FC2E88C8E34F4.idx create mode 100644 firmware-arduino/.cache/clangd/index/Config.cpp.C8FDC20CD3643BFC.idx create mode 100644 firmware-arduino/.cache/clangd/index/Config.h.10A105458D024C56.idx create mode 100644 firmware-arduino/.cache/clangd/index/Configuration.hpp.2559A2BD5D09D5D9.idx create mode 100644 firmware-arduino/.cache/clangd/index/Converter.hpp.D3073CB3B2B852D5.idx create mode 100644 firmware-arduino/.cache/clangd/index/ConverterImpl.hpp.954693C7BD44F452.idx create mode 100644 firmware-arduino/.cache/clangd/index/CountingDecorator.hpp.D3CEB1CECCC70814.idx create mode 100644 firmware-arduino/.cache/clangd/index/Debouncer.h.851A3184B18C76C6.idx create mode 100644 firmware-arduino/.cache/clangd/index/DecoderFromStreaming.h.E5853CB688A5C870.idx create mode 100644 firmware-arduino/.cache/clangd/index/DeserializationError.hpp.07135FB0D6CFEB6E.idx create mode 100644 firmware-arduino/.cache/clangd/index/DeserializationOptions.hpp.999A696CA850B5EA.idx create mode 100644 firmware-arduino/.cache/clangd/index/DummyWriter.hpp.65B8B7DC1AD51FB8.idx create mode 100644 firmware-arduino/.cache/clangd/index/ESPAsyncWebServer.h.E66DF72F446B8B67.idx create mode 100644 firmware-arduino/.cache/clangd/index/ElementProxy.hpp.8BA84EE202BC6DA3.idx create mode 100644 firmware-arduino/.cache/clangd/index/Equilizer.h.325B05F4281F9C2E.idx create mode 100644 firmware-arduino/.cache/clangd/index/EscapeSequence.hpp.EB19812BF97F315E.idx create mode 100644 firmware-arduino/.cache/clangd/index/FactoryReset.h.F4D524EFAF2874AB.idx create mode 100644 firmware-arduino/.cache/clangd/index/Fade.h.D18B1C57473A9B2B.idx create mode 100644 firmware-arduino/.cache/clangd/index/Filter.h.47ECAD78C2BB92FE.idx create mode 100644 firmware-arduino/.cache/clangd/index/Filter.hpp.2067804ABCCCC83C.idx create mode 100644 firmware-arduino/.cache/clangd/index/FlashReader.hpp.82E91CAB58850C42.idx create mode 100644 firmware-arduino/.cache/clangd/index/FlashString.hpp.EF1BFA92D7A4B104.idx create mode 100644 firmware-arduino/.cache/clangd/index/FloatParts.hpp.DAFDEF6B0496615B.idx create mode 100644 firmware-arduino/.cache/clangd/index/FloatTraits.hpp.CA7A66D11DB1FEB1.idx create mode 100644 firmware-arduino/.cache/clangd/index/HP_variable_cutoff.c.AC167994AA2E550A.idx create mode 100644 firmware-arduino/.cache/clangd/index/HttpChunkReader.h.2F93373B746436C8.idx create mode 100644 firmware-arduino/.cache/clangd/index/HttpHeader.h.A788C3C1FA624112.idx create mode 100644 firmware-arduino/.cache/clangd/index/HttpLineReader.h.16670FC86CCD1961.idx create mode 100644 firmware-arduino/.cache/clangd/index/HttpRequest.h.C3D58DB2E2833111.idx create mode 100644 firmware-arduino/.cache/clangd/index/HttpTypes.h.5AC40CD013B3C4F5.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SConfig.h.24C3C1ECE9B78EB9.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SConfigESP32.h.9CAA4A0A972DE3AD.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SESP32.h.38133796FAEAB84E.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SESP32V1.h.62A1B5ED79CC9693.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SESP8266.h.FD7F3E645ADB1E99.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SNanoSenseBLE.h.8BC3B23CAE5402C8.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SRP2040-MBED.h.2D3DD8308B9D7259.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SRP2040.h.B2F615345202C076.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SSAMD.h.49832D2A0AEFFD78.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SSTM32.h.6619DDD9FDC2C874.idx create mode 100644 firmware-arduino/.cache/clangd/index/I2SStream.h.87077323DF9837BC.idx create mode 100644 firmware-arduino/.cache/clangd/index/ICYStream.h.3043F430B4F48149.idx create mode 100644 firmware-arduino/.cache/clangd/index/ICYStreamBuffered.h.C36EED476ACF30BD.idx create mode 100644 firmware-arduino/.cache/clangd/index/Inlines.h.633D664A31CCF571.idx create mode 100644 firmware-arduino/.cache/clangd/index/Int24_3bytes_t.h.7FD191DCA4027854.idx create mode 100644 firmware-arduino/.cache/clangd/index/Int24_4bytes_t.h.61036943D08C23BE.idx create mode 100644 firmware-arduino/.cache/clangd/index/IsString.hpp.3DAF7B6BF24E641E.idx create mode 100644 firmware-arduino/.cache/clangd/index/IteratorReader.hpp.7DF2A29F5D5A7BBC.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonArray.hpp.AAE453FA34AB03DC.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonArrayConst.hpp.3560815D916453DA.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonArrayIterator.hpp.88014A048A69D8E9.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonDeserializer.hpp.BB590C8A7249F191.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonDocument.hpp.C3FF5BE3C491DD92.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonFloat.hpp.D700E990D2CA8637.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonInteger.hpp.1E0FB308CE2813B6.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonObject.hpp.CFD235C56720FFFF.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonObjectConst.hpp.179581C584885904.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonObjectIterator.hpp.E95FC59D323C6E05.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonPair.hpp.5E54673DF0FF156D.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonSerializer.hpp.6888255D01098BAE.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonString.hpp.47BC9FCD0111BDFB.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonVariant.hpp.5D20D03AE6311A2E.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonVariantConst.hpp.99D62D06E44A2498.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonVariantCopier.hpp.5A5B301F2099A8C2.idx create mode 100644 firmware-arduino/.cache/clangd/index/JsonVariantVisitor.hpp.E15A1E6BD2A2A289.idx create mode 100644 firmware-arduino/.cache/clangd/index/LEDHandler.cpp.9CC1DC14FBD4B3DF.idx create mode 100644 firmware-arduino/.cache/clangd/index/LEDHandler.h.8E3FB47DA83DE614.idx create mode 100644 firmware-arduino/.cache/clangd/index/LPC_analysis_filter.c.6DB8680C349FC007.idx create mode 100644 firmware-arduino/.cache/clangd/index/LPC_analysis_filter_FLP.c.1EB174340FD5A373.idx create mode 100644 firmware-arduino/.cache/clangd/index/LPC_fit.c.D4BD759AB03E8FCB.idx create mode 100644 firmware-arduino/.cache/clangd/index/LPC_inv_pred_gain.c.6B53CE316E130A9D.idx create mode 100644 firmware-arduino/.cache/clangd/index/LPC_inv_pred_gain_FLP.c.D6FA389C9D7DB886.idx create mode 100644 firmware-arduino/.cache/clangd/index/LP_variable_cutoff.c.35F9074E123D4DD5.idx create mode 100644 firmware-arduino/.cache/clangd/index/LTP_analysis_filter_FIX.c.A778CBE12055E7B1.idx create mode 100644 firmware-arduino/.cache/clangd/index/LTP_analysis_filter_FLP.c.20EA1EADE455451C.idx create mode 100644 firmware-arduino/.cache/clangd/index/LTP_scale_ctrl_FIX.c.6CD365A8268835C1.idx create mode 100644 firmware-arduino/.cache/clangd/index/LTP_scale_ctrl_FLP.c.6DE1810DF3E0EFBC.idx create mode 100644 firmware-arduino/.cache/clangd/index/Latch.hpp.3A0458B5F62E1DB7.idx create mode 100644 firmware-arduino/.cache/clangd/index/List.h.5AD347DCB33D45FD.idx create mode 100644 firmware-arduino/.cache/clangd/index/LockGuard.h.01260B6EBB824B60.idx create mode 100644 firmware-arduino/.cache/clangd/index/MacroCount.h.CDA8A2F2A134A053.idx create mode 100644 firmware-arduino/.cache/clangd/index/MacroDebug.h.0BAB4EAA8C57994D.idx create mode 100644 firmware-arduino/.cache/clangd/index/MedianFilter.h.8DD7DEA17F296D0B.idx create mode 100644 firmware-arduino/.cache/clangd/index/MemberProxy.hpp.9EB009EA7EE36741.idx create mode 100644 firmware-arduino/.cache/clangd/index/MemoryPool.hpp.7B1555123F4F2767.idx create mode 100644 firmware-arduino/.cache/clangd/index/MemoryPoolList.hpp.5E27FBD1AE30C11B.idx create mode 100644 firmware-arduino/.cache/clangd/index/MetaData.h.0C83960511FC3EB9.idx create mode 100644 firmware-arduino/.cache/clangd/index/MetaDataICY.h.65CD1093EE34EFA4.idx create mode 100644 firmware-arduino/.cache/clangd/index/MetaDataID3.h.69D33722B81F80A6.idx create mode 100644 firmware-arduino/.cache/clangd/index/Middleware.cpp.4C728AAEF03255BF.idx create mode 100644 firmware-arduino/.cache/clangd/index/MsgPackBinary.hpp.B466B52A3BCCA030.idx create mode 100644 firmware-arduino/.cache/clangd/index/MsgPackDeserializer.hpp.30BCB0E35957AC74.idx create mode 100644 firmware-arduino/.cache/clangd/index/MsgPackExtension.hpp.2DA81622CA406AA7.idx create mode 100644 firmware-arduino/.cache/clangd/index/MsgPackSerializer.hpp.6767D06A90F7BA59.idx create mode 100644 firmware-arduino/.cache/clangd/index/MusicalNotes.h.9B822D02A635DDA0.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF2A.c.3FAAE2B4E46B1E49.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_VQ.c.47D202AD19A90610.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_VQ_weights_laroia.c.7046C4797F96D681.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_decode.c.F884C61078C02235.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_del_dec_quant.c.CA945F45E8845254.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_encode.c.040D330BE5B18D3E.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_stabilize.c.E2E6E575DAFCDC19.idx create mode 100644 firmware-arduino/.cache/clangd/index/NLSF_unpack.c.F468B4D811BF524B.idx create mode 100644 firmware-arduino/.cache/clangd/index/NSQ.c.282A353DFF9E0737.idx create mode 100644 firmware-arduino/.cache/clangd/index/NSQ.h.B8918C8585B4CDDB.idx create mode 100644 firmware-arduino/.cache/clangd/index/NSQ_del_dec.c.FE54FB9F320FA6D2.idx create mode 100644 firmware-arduino/.cache/clangd/index/Namespace.hpp.34957FF5B286EC5D.idx create mode 100644 firmware-arduino/.cache/clangd/index/NestingLimit.hpp.F81B9681691CB52A.idx create mode 100644 firmware-arduino/.cache/clangd/index/OTA.cpp.D8474BA9F9BD0422.idx create mode 100644 firmware-arduino/.cache/clangd/index/OTA.h.4D38B2274C5B1C97.idx create mode 100644 firmware-arduino/.cache/clangd/index/ObjectData.hpp.90D4A22F17435B65.idx create mode 100644 firmware-arduino/.cache/clangd/index/ObjectImpl.hpp.B450BF4DE291355D.idx create mode 100644 firmware-arduino/.cache/clangd/index/PLC.c.DD7304F65A9C9C20.idx create mode 100644 firmware-arduino/.cache/clangd/index/PLC.h.BBE587BDC39E8ED6.idx create mode 100644 firmware-arduino/.cache/clangd/index/PLC.h.F200120DD7452202.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioAVR.h.9B9C56D1016FED47.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioBase.h.BFDDABBE997109B9.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioESP32.h.AB16A3B39C4CD423.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioMBED.h.2ECE86BA5F5798C9.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioRP2040.h.14A5149F7DE35E36.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioRenesas.h.6BC4524054161F64.idx create mode 100644 firmware-arduino/.cache/clangd/index/PWMAudioSTM32.h.44368D8E69A2D2B0.idx create mode 100644 firmware-arduino/.cache/clangd/index/Pipeline.h.241862BD4A00AF4C.idx create mode 100644 firmware-arduino/.cache/clangd/index/PitchShift.cpp.2D0C8BA64261998F.idx create mode 100644 firmware-arduino/.cache/clangd/index/PitchShift.h.A45832E7949B3235.idx create mode 100644 firmware-arduino/.cache/clangd/index/PitchShift.h.B94B5D31E0EB4A76.idx create mode 100644 firmware-arduino/.cache/clangd/index/PrettyJsonSerializer.hpp.8EB15571B71B29D7.idx create mode 100644 firmware-arduino/.cache/clangd/index/PrintWriter.hpp.B5507998003C1C20.idx create mode 100644 firmware-arduino/.cache/clangd/index/Queue.h.340D64FDBFA97CA9.idx create mode 100644 firmware-arduino/.cache/clangd/index/QueueFromVector.h.9DAAEF351F69A73E.idx create mode 100644 firmware-arduino/.cache/clangd/index/QueueRTOS.h.5F3B49A8FA17DD1F.idx create mode 100644 firmware-arduino/.cache/clangd/index/RamReader.hpp.E8213933D33610E8.idx create mode 100644 firmware-arduino/.cache/clangd/index/RamString.hpp.F45466CF716E7C85.idx create mode 100644 firmware-arduino/.cache/clangd/index/Reader.hpp.BDAE6CDCFBB9B8A2.idx create mode 100644 firmware-arduino/.cache/clangd/index/ResampleStream.h.45D50FA47917BB94.idx create mode 100644 firmware-arduino/.cache/clangd/index/ResourceManager.hpp.469E3972D826EF99.idx create mode 100644 firmware-arduino/.cache/clangd/index/ResourceManagerImpl.hpp.49340CF06229917D.idx create mode 100644 firmware-arduino/.cache/clangd/index/SerializedValue.hpp.63A8FE19E967F0BB.idx create mode 100644 firmware-arduino/.cache/clangd/index/SigProc_FIX.h.A2DF67B46C943A2D.idx create mode 100644 firmware-arduino/.cache/clangd/index/SigProc_FIX.h.A5C507F22F35E27B.idx create mode 100644 firmware-arduino/.cache/clangd/index/Slice.h.D69E6542AF848154.idx create mode 100644 firmware-arduino/.cache/clangd/index/SocketIOclient.cpp.793DA6C0DFB4E7E7.idx create mode 100644 firmware-arduino/.cache/clangd/index/SocketIOclient.h.E58C7CB720B38354.idx create mode 100644 firmware-arduino/.cache/clangd/index/SoundGenerator.h.EF2CC48BD1D46442.idx create mode 100644 firmware-arduino/.cache/clangd/index/Stack.h.B13C06A5A43C5AB8.idx create mode 100644 firmware-arduino/.cache/clangd/index/StaticStringWriter.hpp.A92C3E155565C53E.idx create mode 100644 firmware-arduino/.cache/clangd/index/StdStreamReader.hpp.7BCD5763D008298C.idx create mode 100644 firmware-arduino/.cache/clangd/index/StdStreamWriter.hpp.7FE75957CF5C9419.idx create mode 100644 firmware-arduino/.cache/clangd/index/StdStringWriter.hpp.03F69209AD96D00D.idx create mode 100644 firmware-arduino/.cache/clangd/index/Str.h.F42913555C927C7D.idx create mode 100644 firmware-arduino/.cache/clangd/index/StrView.h.9FFB37F2836B9F87.idx create mode 100644 firmware-arduino/.cache/clangd/index/StreamCopy.h.F4E6DE836CE98E6B.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringAdapter.hpp.AD48E1B418D15806.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringAdapters.hpp.4C7F191831B3D5D9.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringBuffer.hpp.2D84ED6AE4BB462C.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringBuilder.hpp.32362816BAE97F3F.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringNode.hpp.9C193BC98BC4AF4B.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringObject.hpp.E90A0F751240B6F0.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringPool.hpp.10682948B001F1EE.idx create mode 100644 firmware-arduino/.cache/clangd/index/StringTraits.hpp.CD51DBA8F663A671.idx create mode 100644 firmware-arduino/.cache/clangd/index/SynchronizedBuffers.h.D5996086EDDACF8C.idx create mode 100644 firmware-arduino/.cache/clangd/index/Synthesizer.h.8479D62F5E033C01.idx create mode 100644 firmware-arduino/.cache/clangd/index/Task.h.6FC61B57B92A51E4.idx create mode 100644 firmware-arduino/.cache/clangd/index/TextFormatter.hpp.9431D842837CDB6D.idx create mode 100644 firmware-arduino/.cache/clangd/index/URLStream.h.58A07D706BADDAF9.idx create mode 100644 firmware-arduino/.cache/clangd/index/URLStreamBuffered.h.6DDBDE90AA7817C3.idx create mode 100644 firmware-arduino/.cache/clangd/index/Url.h.D9F0EACE981A9E1B.idx create mode 100644 firmware-arduino/.cache/clangd/index/Utf16.hpp.F905E07DD2B4F99E.idx create mode 100644 firmware-arduino/.cache/clangd/index/Utf8.hpp.70F35D05C2C6D994.idx create mode 100644 firmware-arduino/.cache/clangd/index/Utilities.hpp.5D7201226B0634BF.idx create mode 100644 firmware-arduino/.cache/clangd/index/VAD.c.EDB98F32861B7F02.idx create mode 100644 firmware-arduino/.cache/clangd/index/VQ_WMat_EC.c.E00DDE68681D6599.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantAttorney.hpp.1725B654201A8017.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantCompare.hpp.5794A6FC6AEEA210.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantContent.hpp.37DD811AC1B51484.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantData.hpp.8BAE816B0D6811A1.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantDataVisitor.hpp.D1E039C5ABF73867.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantImpl.hpp.ADE96C25890126C6.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantOperators.hpp.FF8777BDA6ADFE9F.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantReader.hpp.D7D78C491C65EA38.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantRefBase.hpp.4ECD346E87BB092E.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantRefBaseImpl.hpp.9D29FFB8A4D7C27F.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantTag.hpp.33BA025F84003D30.idx create mode 100644 firmware-arduino/.cache/clangd/index/VariantTo.hpp.310E4CAEF78457F4.idx create mode 100644 firmware-arduino/.cache/clangd/index/Vector.h.A2F60F9E1E36C620.idx create mode 100644 firmware-arduino/.cache/clangd/index/VolumeControl.h.A700424FBFB292B6.idx create mode 100644 firmware-arduino/.cache/clangd/index/VolumeStream.h.E3E224FFDADCE816.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebAuthentication.cpp.C882C3EF5780B2A8.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebAuthentication.h.E60B3B5A2B4B6E42.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebHandlerImpl.h.95D772EE73C18D2B.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebHandlers.cpp.B91CBB8B5C75D37A.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebRequest.cpp.8F2030BA7A72579E.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebResponseImpl.h.0F513D79B4B45248.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebResponses.cpp.D2474C56A43E0295.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebServer.cpp.17B46B3CF4CFD296.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSockets.cpp.E90F623EEF7975EF.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSockets.h.38EBE8BB86089044.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSocketsClient.cpp.FE8EEE12A84428A9.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSocketsClient.h.425E0C010A5B3993.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSocketsServer.cpp.9AFCD44A71CB6EAC.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSocketsServer.h.3AEE4669C2989231.idx create mode 100644 firmware-arduino/.cache/clangd/index/WebSocketsVersion.h.10256D411AAC098F.idx create mode 100644 firmware-arduino/.cache/clangd/index/WifiManager.cpp.A27427F525A7B485.idx create mode 100644 firmware-arduino/.cache/clangd/index/WifiManager.h.1E867C09A6ECE1B3.idx create mode 100644 firmware-arduino/.cache/clangd/index/Writer.hpp.7537CE16A11B5496.idx create mode 100644 firmware-arduino/.cache/clangd/index/_kiss_fft_guts.h.7E6D15F554997CC9.idx create mode 100644 firmware-arduino/.cache/clangd/index/alias_cast.hpp.70B9DB4DEA0D0927.idx create mode 100644 firmware-arduino/.cache/clangd/index/ana_filt_bank_1.c.7421EC7349E78D22.idx create mode 100644 firmware-arduino/.cache/clangd/index/analysis.c.BCFB35330DF49760.idx create mode 100644 firmware-arduino/.cache/clangd/index/analysis.h.B77803E3D35A99AB.idx create mode 100644 firmware-arduino/.cache/clangd/index/apply_sine_window_FIX.c.A6E467A61031CB3D.idx create mode 100644 firmware-arduino/.cache/clangd/index/apply_sine_window_FLP.c.26D1F5C1A8F831A4.idx create mode 100644 firmware-arduino/.cache/clangd/index/arch.h.3CEEEA39DEAB0E70.idx create mode 100644 firmware-arduino/.cache/clangd/index/arch.h.F39CCA31A8303E7B.idx create mode 100644 firmware-arduino/.cache/clangd/index/arduino_config.h.E0A55434C8F9821E.idx create mode 100644 firmware-arduino/.cache/clangd/index/arithmeticCompare.hpp.BAC4139809C59140.idx create mode 100644 firmware-arduino/.cache/clangd/index/assert.hpp.61F79D18A27082EE.idx create mode 100644 firmware-arduino/.cache/clangd/index/attributes.hpp.761BA4F10D08DA54.idx create mode 100644 firmware-arduino/.cache/clangd/index/autocorr_FIX.c.B78F650F95304C28.idx create mode 100644 firmware-arduino/.cache/clangd/index/autocorrelation_FLP.c.8F408E720132E411.idx create mode 100644 firmware-arduino/.cache/clangd/index/bands.c.6EB29D34B15CEDE4.idx create mode 100644 firmware-arduino/.cache/clangd/index/bands.h.2459DAF7D0E5784C.idx create mode 100644 firmware-arduino/.cache/clangd/index/bands.h.86490603CA5F41A3.idx create mode 100644 firmware-arduino/.cache/clangd/index/biquad_alt.c.911A7317DC3BC161.idx create mode 100644 firmware-arduino/.cache/clangd/index/bitwise.c.2E847370287A9D81.idx create mode 100644 firmware-arduino/.cache/clangd/index/burg_modified_FIX.c.1F78F64E26DB46FA.idx create mode 100644 firmware-arduino/.cache/clangd/index/burg_modified_FLP.c.D9F8AB4DD5431D21.idx create mode 100644 firmware-arduino/.cache/clangd/index/button_adc.c.E4798A7D8F5B9201.idx create mode 100644 firmware-arduino/.cache/clangd/index/button_adc.h.BFAC535016678FD3.idx create mode 100644 firmware-arduino/.cache/clangd/index/button_gpio.c.31B9CD26C7E8374C.idx create mode 100644 firmware-arduino/.cache/clangd/index/button_gpio.h.29783FA91F56BA58.idx create mode 100644 firmware-arduino/.cache/clangd/index/button_matrix.c.191299C88EEEA98A.idx create mode 100644 firmware-arduino/.cache/clangd/index/button_matrix.h.4DC6916EE75B71F3.idx create mode 100644 firmware-arduino/.cache/clangd/index/bwexpander.c.5CF6BE7CC622612D.idx create mode 100644 firmware-arduino/.cache/clangd/index/bwexpander_32.c.AB899D0E839C30B2.idx create mode 100644 firmware-arduino/.cache/clangd/index/bwexpander_FLP.c.B1BB441B0DDD9909.idx create mode 100644 firmware-arduino/.cache/clangd/index/cdecode.c.05562B896DBCC13D.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt.c.9E7E2B8EA3BF2D07.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt.h.CA58998BFAC6E270.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt.h.E4A2469344163B0B.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt_decoder.c.3C428D99FDF25CC0.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt_encoder.c.945D372FB0AAF84E.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt_lpc.c.D6E9D12870997AE8.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt_lpc.h.01ED66AC6A5BB872.idx create mode 100644 firmware-arduino/.cache/clangd/index/celt_lpc.h.51B81CD20C794CB9.idx create mode 100644 firmware-arduino/.cache/clangd/index/cencode.c.881082EAE4A898E3.idx create mode 100644 firmware-arduino/.cache/clangd/index/cencode_inc.h.4B42CAF0659D7148.idx create mode 100644 firmware-arduino/.cache/clangd/index/check_control_input.c.FD3CB76594E5F048.idx create mode 100644 firmware-arduino/.cache/clangd/index/code_signs.c.27E66D33827190AF.idx create mode 100644 firmware-arduino/.cache/clangd/index/compatibility.hpp.832A6D8E66FCA26C.idx create mode 100644 firmware-arduino/.cache/clangd/index/conditional.hpp.4966F359B23F765A.idx create mode 100644 firmware-arduino/.cache/clangd/index/control.h.B5BAF0E0888C4AFC.idx create mode 100644 firmware-arduino/.cache/clangd/index/control.h.DDF5B9FA844D1763.idx create mode 100644 firmware-arduino/.cache/clangd/index/control_SNR.c.5699C987416CD2D3.idx create mode 100644 firmware-arduino/.cache/clangd/index/control_audio_bandwidth.c.48D1F0A55115678A.idx create mode 100644 firmware-arduino/.cache/clangd/index/control_codec.c.7EF83A17B1300FEA.idx create mode 100644 firmware-arduino/.cache/clangd/index/convertNumber.hpp.3683DB44FB581254.idx create mode 100644 firmware-arduino/.cache/clangd/index/corrMatrix_FIX.c.F102DAB71FBE809F.idx create mode 100644 firmware-arduino/.cache/clangd/index/corrMatrix_FLP.c.A58530ECFBBAA3A0.idx create mode 100644 firmware-arduino/.cache/clangd/index/cpu_support.h.31E386938D1FFCC1.idx create mode 100644 firmware-arduino/.cache/clangd/index/cpu_support.h.4EE5A31C9BA8E95D.idx create mode 100644 firmware-arduino/.cache/clangd/index/crctable.h.E344DF18F75D6581.idx create mode 100644 firmware-arduino/.cache/clangd/index/ctype.hpp.2D3630624A1B3F6C.idx create mode 100644 firmware-arduino/.cache/clangd/index/cwrs.c.917E5FFB6F91FFAC.idx create mode 100644 firmware-arduino/.cache/clangd/index/cwrs.h.A65431F01BF9F75A.idx create mode 100644 firmware-arduino/.cache/clangd/index/debug.c.D9D45993594C7798.idx create mode 100644 firmware-arduino/.cache/clangd/index/debug.h.77BE4AA0EC334F08.idx create mode 100644 firmware-arduino/.cache/clangd/index/debug.h.DEBC3B711A71F9FD.idx create mode 100644 firmware-arduino/.cache/clangd/index/dec_API.c.8E8C650AA441DA02.idx create mode 100644 firmware-arduino/.cache/clangd/index/decay.hpp.2C542D11ABD4A06B.idx create mode 100644 firmware-arduino/.cache/clangd/index/declval.hpp.D95162FC1B6534FB.idx create mode 100644 firmware-arduino/.cache/clangd/index/decode_core.c.D8D39B78E5BEFCAF.idx create mode 100644 firmware-arduino/.cache/clangd/index/decode_frame.c.FEEA2D0F37888A57.idx create mode 100644 firmware-arduino/.cache/clangd/index/decode_indices.c.3621EFA7DC922283.idx create mode 100644 firmware-arduino/.cache/clangd/index/decode_parameters.c.DEC45658E9D65293.idx create mode 100644 firmware-arduino/.cache/clangd/index/decode_pitch.c.CC9EF481F6DC652C.idx create mode 100644 firmware-arduino/.cache/clangd/index/decode_pulses.c.3425247F64E75441.idx create mode 100644 firmware-arduino/.cache/clangd/index/decoder_set_fs.c.EA87EF42A53AA7C6.idx create mode 100644 firmware-arduino/.cache/clangd/index/define.h.B8AAEB17BF523002.idx create mode 100644 firmware-arduino/.cache/clangd/index/define.h.DD60D4C2A73CA772.idx create mode 100644 firmware-arduino/.cache/clangd/index/deserialize.hpp.86A0DBE95ABEA85F.idx create mode 100644 firmware-arduino/.cache/clangd/index/dirac.c.7D168F9163EF006B.idx create mode 100644 firmware-arduino/.cache/clangd/index/dirac.h.D09C5B1D9EDF59AA.idx create mode 100644 firmware-arduino/.cache/clangd/index/ecintrin.h.BEC50578FF995606.idx create mode 100644 firmware-arduino/.cache/clangd/index/ecintrin.h.D7A959EE092B5785.idx create mode 100644 firmware-arduino/.cache/clangd/index/enable_if.hpp.D326FBD6ACCB5715.idx create mode 100644 firmware-arduino/.cache/clangd/index/enc_API.c.F7E9AF060428292C.idx create mode 100644 firmware-arduino/.cache/clangd/index/encode_frame_FIX.c.174D99320E62A9BC.idx create mode 100644 firmware-arduino/.cache/clangd/index/encode_frame_FLP.c.D74EAE9CF9CB1E2D.idx create mode 100644 firmware-arduino/.cache/clangd/index/encode_indices.c.2F0009608D56E125.idx create mode 100644 firmware-arduino/.cache/clangd/index/encode_pulses.c.696E0FF761C86013.idx create mode 100644 firmware-arduino/.cache/clangd/index/endianness.hpp.7EEB42BAB714B890.idx create mode 100644 firmware-arduino/.cache/clangd/index/energy_FLP.c.3F7110B4372D2FED.idx create mode 100644 firmware-arduino/.cache/clangd/index/entcode.c.F3C515DAED111A76.idx create mode 100644 firmware-arduino/.cache/clangd/index/entcode.h.A40EDE42A901A992.idx create mode 100644 firmware-arduino/.cache/clangd/index/entdec.c.2720ACDCD59AC35C.idx create mode 100644 firmware-arduino/.cache/clangd/index/entdec.h.3CB572F537F97350.idx create mode 100644 firmware-arduino/.cache/clangd/index/entdec.h.4480A4F01625B1E0.idx create mode 100644 firmware-arduino/.cache/clangd/index/entenc.c.5215917B6E2B312C.idx create mode 100644 firmware-arduino/.cache/clangd/index/entenc.h.4D46806BDFE0426A.idx create mode 100644 firmware-arduino/.cache/clangd/index/entenc.h.D723C88FD89E299E.idx create mode 100644 firmware-arduino/.cache/clangd/index/errors.h.A89007E4E430EDA5.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_LPC_FIX.c.95D36ABFFB5588F3.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_LPC_FLP.c.BE3770A91109777C.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_LTP_FIX.c.0FA9F510D837A6A0.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_LTP_FLP.c.74450DC518F70B11.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_pitch_lags_FIX.c.383C6F1F5AC689CF.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_pitch_lags_FLP.c.1905B523852DC0C0.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_pred_coefs_FIX.c.B6244D2883781948.idx create mode 100644 firmware-arduino/.cache/clangd/index/find_pred_coefs_FLP.c.96B02E6861C104AF.idx create mode 100644 firmware-arduino/.cache/clangd/index/fixed_generic.h.51D5A965062FCBFC.idx create mode 100644 firmware-arduino/.cache/clangd/index/float_cast.h.028778263365E3ED.idx create mode 100644 firmware-arduino/.cache/clangd/index/float_cast.h.84529683D372D434.idx create mode 100644 firmware-arduino/.cache/clangd/index/framing.c.DED3A0F4B2E65C18.idx create mode 100644 firmware-arduino/.cache/clangd/index/function_traits.hpp.C47F7E496D63EB1B.idx create mode 100644 firmware-arduino/.cache/clangd/index/gain_quant.c.AF00B061217B7D87.idx create mode 100644 firmware-arduino/.cache/clangd/index/ieee754.hpp.1518FD065696EA9B.idx create mode 100644 firmware-arduino/.cache/clangd/index/init_decoder.c.6DF76AEDF94850D5.idx create mode 100644 firmware-arduino/.cache/clangd/index/init_encoder.c.0EB3390919665282.idx create mode 100644 firmware-arduino/.cache/clangd/index/inner_prod_aligned.c.567527B022159C0D.idx create mode 100644 firmware-arduino/.cache/clangd/index/inner_product_FLP.c.D33C8F2AF29C3EFE.idx create mode 100644 firmware-arduino/.cache/clangd/index/integer.hpp.8F61D3E32729DEE3.idx create mode 100644 firmware-arduino/.cache/clangd/index/integral_constant.hpp.67234F6A4164D111.idx create mode 100644 firmware-arduino/.cache/clangd/index/interpolate.c.A354C2DDDAEF98F8.idx create mode 100644 firmware-arduino/.cache/clangd/index/iot_button.c.46A388AC0CD94B1D.idx create mode 100644 firmware-arduino/.cache/clangd/index/iot_button.h.EBEF7424ABBF9496.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_array.hpp.BAC557D04C5F32C9.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_base_of.hpp.7552CC7AF864ABAC.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_class.hpp.1513FD81DA2483AF.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_const.hpp.EB3C369216E26E0F.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_convertible.hpp.767AFD1AA713D854.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_enum.hpp.A9B38953ED6AE989.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_floating_point.hpp.4972B85706CF1963.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_integral.hpp.98A6496F67CFF3DD.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_pointer.hpp.781BDE75E9D7AA2E.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_same.hpp.B5A60BA71E4D53A8.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_signed.hpp.A16B75AF354588BC.idx create mode 100644 firmware-arduino/.cache/clangd/index/is_unsigned.hpp.008661E9666C1EEC.idx create mode 100644 firmware-arduino/.cache/clangd/index/k2a_FIX.c.8412C03B97C55BD0.idx create mode 100644 firmware-arduino/.cache/clangd/index/k2a_FLP.c.DAC9EC80E4CFBF51.idx create mode 100644 firmware-arduino/.cache/clangd/index/k2a_Q16_FIX.c.A8E7782112B8B1DF.idx create mode 100644 firmware-arduino/.cache/clangd/index/kiss_fft.c.AB8F465BFBB349A0.idx create mode 100644 firmware-arduino/.cache/clangd/index/kiss_fft.h.68B84E701C590F98.idx create mode 100644 firmware-arduino/.cache/clangd/index/kiss_fft.h.A061068BDD377AC6.idx create mode 100644 firmware-arduino/.cache/clangd/index/laplace.c.3F69A7405C09F3ED.idx create mode 100644 firmware-arduino/.cache/clangd/index/laplace.h.C8327432B6CC6303.idx create mode 100644 firmware-arduino/.cache/clangd/index/libsha1.c.E564FBC1E474BAC6.idx create mode 100644 firmware-arduino/.cache/clangd/index/limits.hpp.BD66E96B6A4C2D0F.idx create mode 100644 firmware-arduino/.cache/clangd/index/lin2log.c.DF8EEB2E12D04B47.idx create mode 100644 firmware-arduino/.cache/clangd/index/literals.h.B7DA46A265F4E165.idx create mode 100644 firmware-arduino/.cache/clangd/index/log2lin.c.CBCCD02BB1D40720.idx create mode 100644 firmware-arduino/.cache/clangd/index/macros.h.B2814BE33F02B08E.idx create mode 100644 firmware-arduino/.cache/clangd/index/main.cpp.34229C44B457104C.idx create mode 100644 firmware-arduino/.cache/clangd/index/main.h.03191DD1F7A32922.idx create mode 100644 firmware-arduino/.cache/clangd/index/main.h.ED033293B0AE8AB2.idx create mode 100644 firmware-arduino/.cache/clangd/index/main_FIX.h.2B0E954A32BB17F5.idx create mode 100644 firmware-arduino/.cache/clangd/index/main_FIX.h.D99DC42278F4B506.idx create mode 100644 firmware-arduino/.cache/clangd/index/make_unsigned.hpp.03142F9A405260DF.idx create mode 100644 firmware-arduino/.cache/clangd/index/mapping_matrix.c.612ED244CA05F1AB.idx create mode 100644 firmware-arduino/.cache/clangd/index/mapping_matrix.h.7CF514F435F8E1E8.idx create mode 100644 firmware-arduino/.cache/clangd/index/math.hpp.F0C3778F9FE147B3.idx create mode 100644 firmware-arduino/.cache/clangd/index/mathops.c.45027DE549B5ADDA.idx create mode 100644 firmware-arduino/.cache/clangd/index/mathops.h.A1085551EFABD5F1.idx create mode 100644 firmware-arduino/.cache/clangd/index/mathops.h.B5AA045FC1C2CB76.idx create mode 100644 firmware-arduino/.cache/clangd/index/mdct.c.30ABE5E173762052.idx create mode 100644 firmware-arduino/.cache/clangd/index/mdct.h.150658577FA8D64D.idx create mode 100644 firmware-arduino/.cache/clangd/index/mdct.h.E88D517B5E276629.idx create mode 100644 firmware-arduino/.cache/clangd/index/measure.hpp.44DD873994693FCF.idx create mode 100644 firmware-arduino/.cache/clangd/index/metric_internal.c.CD8455E1E1443174.idx create mode 100644 firmware-arduino/.cache/clangd/index/mfrngcod.h.90BF46BBD2839EA9.idx create mode 100644 firmware-arduino/.cache/clangd/index/mlp.c.D2C7D25CADA25EC0.idx create mode 100644 firmware-arduino/.cache/clangd/index/mlp.h.F927E96ACE19BCA3.idx create mode 100644 firmware-arduino/.cache/clangd/index/mlp_data.c.67D2B19CF219EB46.idx create mode 100644 firmware-arduino/.cache/clangd/index/modes.c.87FF00ED322164E7.idx create mode 100644 firmware-arduino/.cache/clangd/index/modes.h.2F4CDC1DAC99575E.idx create mode 100644 firmware-arduino/.cache/clangd/index/modes.h.38DC77F223804B36.idx create mode 100644 firmware-arduino/.cache/clangd/index/noise_shape_analysis_FIX.c.576FA60D32FD25EB.idx create mode 100644 firmware-arduino/.cache/clangd/index/noise_shape_analysis_FLP.c.5175F515D2D1A8A5.idx create mode 100644 firmware-arduino/.cache/clangd/index/ogg.h.80327659E64120A3.idx create mode 100644 firmware-arduino/.cache/clangd/index/ogg.h.CF060702CF6DB5EF.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz.c.B0FAF68283515499.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_auto.c.CBB94B242FF7D7AC.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_byteorder.h.A86398CF64D73801.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_comments.c.96D8CF05D55C19CA.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_compat.h.5E698ED3F17F37B2.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_constants.h.3EC1CC8A9255A22E.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_constants.h.511DD0400A1EB539.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_dlist.c.14EC70282FAA8B30.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_dlist.h.355644B2D6EC5B56.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_io.c.1DF8164CE8F53DF7.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_macros.h.AB3BFAC330C037B6.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_off_t.h.80C65181F686ED8E.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_off_t.h.F4922E334C2EE5E7.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_off_t_generated.h.10C01F7F0725A30E.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_off_t_generated.h.8DA4D9F9C515CE4B.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_packet.h.59B2D7C56F5B38E0.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_packet.h.E4BCB1C375328B0B.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_private.h.F6696A36BF684A12.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_read.c.8F6F666327BB06D9.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_seek.c.C71787ABB676DF01.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_stream.c.9500D4D3C63DDAEC.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_stream.h.498A6F0491FC2661.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_stream.h.B9F613593B941C48.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_stream_private.h.6242EF5AAD09EFB5.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_table.c.39D7D19E10D3276A.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_vector.c.482A3C3FAA5B88B2.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_vector.h.BCD56BA33EF7E474.idx create mode 100644 firmware-arduino/.cache/clangd/index/oggz_write.c.35344158BFD1B420.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus.c.5A2A6C68A894E850.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus.h.DB33D128F48A4140.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus.h.E80FECB3705D365B.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_config.h.B50CFC7A16A972D0.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_custom.h.29E4793DABDC3E7F.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_custom.h.F8C7160DF3F6DF5D.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_decoder.c.44ED2C54059191B3.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_defines.h.3E448383EE1293BC.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_defines.h.F32FC180FF71A345.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_encoder.c.6B4EC36D27703EDD.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_multistream.c.9ED84168C73F02A9.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_multistream.h.06BCE813C5D3FAB1.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_multistream.h.59CAEE117F23E11C.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_multistream_decoder.c.E3F9250F6B14031C.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_multistream_encoder.c.EE3809D1F1163EDB.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_private.h.CF7475665D66F80D.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_projection.h.88FD9EA03D783EB9.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_projection.h.DAB5F8FA5FAB95C1.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_projection_decoder.c.DECBAB910E24631B.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_projection_encoder.c.3182E90EA025396C.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_types.h.00AC4A8C435825E9.idx create mode 100644 firmware-arduino/.cache/clangd/index/opus_types.h.A0A3A4BCB71E68E1.idx create mode 100644 firmware-arduino/.cache/clangd/index/os_support.h.53483621DC06FFEA.idx create mode 100644 firmware-arduino/.cache/clangd/index/os_support.h.8C2BB10215A7F4A7.idx create mode 100644 firmware-arduino/.cache/clangd/index/os_types.h.B68A9FC9E2160B5E.idx create mode 100644 firmware-arduino/.cache/clangd/index/os_types.h.FAF9FE50D75739F6.idx create mode 100644 firmware-arduino/.cache/clangd/index/parseNumber.hpp.1D34E6D9019CC72C.idx create mode 100644 firmware-arduino/.cache/clangd/index/pgmspace.hpp.2E9AC7DE6FF26133.idx create mode 100644 firmware-arduino/.cache/clangd/index/pgmspace_generic.hpp.7FC0F17BD6D17B7B.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch.c.A1AF03E973200C52.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch.h.50FB611A7AA28265.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch.h.A19945B37545E908.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch_analysis_core_FIX.c.3E7C770B688D46CF.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch_analysis_core_FLP.c.E319847CF80A9199.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch_est_defines.h.B5037C88A781A98D.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch_est_defines.h.E0761CE8034D456B.idx create mode 100644 firmware-arduino/.cache/clangd/index/pitch_est_tables.c.5243CE40C0BA7466.idx create mode 100644 firmware-arduino/.cache/clangd/index/preprocessor.hpp.DE95B6E1D87FA1E9.idx create mode 100644 firmware-arduino/.cache/clangd/index/process_NLSFs.c.B11DF8A808AC1C7D.idx create mode 100644 firmware-arduino/.cache/clangd/index/process_gains_FIX.c.9F03976D0BE53819.idx create mode 100644 firmware-arduino/.cache/clangd/index/process_gains_FLP.c.65C7A7BAB95FC3DD.idx create mode 100644 firmware-arduino/.cache/clangd/index/quant_LTP_gains.c.1697886B56FAB10D.idx create mode 100644 firmware-arduino/.cache/clangd/index/quant_bands.c.A5C22E6208F9FC39.idx create mode 100644 firmware-arduino/.cache/clangd/index/quant_bands.h.1D4375E99FAD369A.idx create mode 100644 firmware-arduino/.cache/clangd/index/quant_bands.h.32CB1F8C6EE2DF76.idx create mode 100644 firmware-arduino/.cache/clangd/index/rate.c.53BBFB7E001EE784.idx create mode 100644 firmware-arduino/.cache/clangd/index/rate.h.6618773B0F70B7E9.idx create mode 100644 firmware-arduino/.cache/clangd/index/regularize_correlations_FIX.c.00C67EC944C42A77.idx create mode 100644 firmware-arduino/.cache/clangd/index/regularize_correlations_FLP.c.C56A38016A161627.idx create mode 100644 firmware-arduino/.cache/clangd/index/remove_const.hpp.5973057D42CB4C55.idx create mode 100644 firmware-arduino/.cache/clangd/index/remove_cv.hpp.C120EBFC4E8D812F.idx create mode 100644 firmware-arduino/.cache/clangd/index/remove_reference.hpp.49BD8FF2B8092BA4.idx create mode 100644 firmware-arduino/.cache/clangd/index/repacketizer.c.93D2C8DC1A302F21.idx create mode 100644 firmware-arduino/.cache/clangd/index/repacketizer_demo.c.8026297B96CFC08E.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler.c.50478C110C6B1E1D.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_down2.c.F7D1C178850B6D17.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_down2_3.c.D9F0B48AC64B3EA1.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_private.h.4D226EF491E66716.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_private_AR2.c.74B10B3DF4065A6A.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_private_IIR_FIR.c.D5630AA43836F62B.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_private_down_FIR.c.450FA9F32390A805.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_private_up2_HQ.c.08B48A5E5A16D7D2.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_rom.c.0799FCCB66505B26.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_rom.h.067E2EB42812271F.idx create mode 100644 firmware-arduino/.cache/clangd/index/resampler_structs.h.271257387B0AA49D.idx create mode 100644 firmware-arduino/.cache/clangd/index/residual_energy16_FIX.c.A3C8681E3A8724CD.idx create mode 100644 firmware-arduino/.cache/clangd/index/residual_energy_FIX.c.624155C77AADE128.idx create mode 100644 firmware-arduino/.cache/clangd/index/residual_energy_FLP.c.9A7345287E57C4C3.idx create mode 100644 firmware-arduino/.cache/clangd/index/scale_copy_vector_FLP.c.4ED18274705E1A70.idx create mode 100644 firmware-arduino/.cache/clangd/index/scale_vector_FLP.c.3DB2784678C49F2F.idx create mode 100644 firmware-arduino/.cache/clangd/index/schur64_FIX.c.0EFFD3A88B25D18E.idx create mode 100644 firmware-arduino/.cache/clangd/index/schur_FIX.c.F191AC72C24DCE75.idx create mode 100644 firmware-arduino/.cache/clangd/index/schur_FLP.c.9CCEAAEDD2758222.idx create mode 100644 firmware-arduino/.cache/clangd/index/serialize.hpp.0213CDDE24D47252.idx create mode 100644 firmware-arduino/.cache/clangd/index/shell_coder.c.9CCACE43ADEBB44B.idx create mode 100644 firmware-arduino/.cache/clangd/index/sigm_Q15.c.EB30D3F55E67DC32.idx create mode 100644 firmware-arduino/.cache/clangd/index/sort.c.FEB3BE417F3CDFA8.idx create mode 100644 firmware-arduino/.cache/clangd/index/sort_FLP.c.078F8832040FCE38.idx create mode 100644 firmware-arduino/.cache/clangd/index/stack_alloc.h.876C385555B91F92.idx create mode 100644 firmware-arduino/.cache/clangd/index/stack_alloc.h.BA249997EABDA109.idx create mode 100644 firmware-arduino/.cache/clangd/index/static_modes_fixed.h.D040EA36199389CD.idx create mode 100644 firmware-arduino/.cache/clangd/index/stereo_LR_to_MS.c.C8F8940794529F62.idx create mode 100644 firmware-arduino/.cache/clangd/index/stereo_MS_to_LR.c.4D70E5AD64C16E46.idx create mode 100644 firmware-arduino/.cache/clangd/index/stereo_decode_pred.c.D928F02E5441EC69.idx create mode 100644 firmware-arduino/.cache/clangd/index/stereo_encode_pred.c.104698CCE247F2E0.idx create mode 100644 firmware-arduino/.cache/clangd/index/stereo_find_predictor.c.DEE18FA50D316322.idx create mode 100644 firmware-arduino/.cache/clangd/index/stereo_quant_pred.c.5D85BA6BC4B7A450.idx create mode 100644 firmware-arduino/.cache/clangd/index/structs.h.21A11E33873E7833.idx create mode 100644 firmware-arduino/.cache/clangd/index/structs.h.7658A4B4AA67E7F3.idx create mode 100644 firmware-arduino/.cache/clangd/index/structs_FIX.h.AC720C842BBF3507.idx create mode 100644 firmware-arduino/.cache/clangd/index/structs_FIX.h.B85CB1B20653950F.idx create mode 100644 firmware-arduino/.cache/clangd/index/sum_sqr_shift.c.14C0FACF673380E2.idx create mode 100644 firmware-arduino/.cache/clangd/index/table_LSF_cos.c.B5146B68684CA598.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables.h.8ADF3DF542560B84.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_LTP.c.255EB2AB8BE35F9C.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_NLSF_CB_NB_MB.c.35C06ACAD90A304B.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_NLSF_CB_WB.c.068C0BB60BA894B6.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_gain.c.E0D0FEA394978FFE.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_other.c.1A2177EFCFE4A805.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_pitch_lag.c.41551C0577557D18.idx create mode 100644 firmware-arduino/.cache/clangd/index/tables_pulses_per_block.c.1F593B9A0813133C.idx create mode 100644 firmware-arduino/.cache/clangd/index/tansig_table.h.05245018975ABAA1.idx create mode 100644 firmware-arduino/.cache/clangd/index/tuning_parameters.h.3B9018C6E36D0D84.idx create mode 100644 firmware-arduino/.cache/clangd/index/tuning_parameters.h.D79E84135492C4D0.idx create mode 100644 firmware-arduino/.cache/clangd/index/type_identity.hpp.0BFD1029984BFC63.idx create mode 100644 firmware-arduino/.cache/clangd/index/type_traits.hpp.3A0AF3C3BD28782A.idx create mode 100644 firmware-arduino/.cache/clangd/index/typedef.h.76D86D2514B936B8.idx create mode 100644 firmware-arduino/.cache/clangd/index/typedef.h.DABCD1FE92554443.idx create mode 100644 firmware-arduino/.cache/clangd/index/utility.hpp.E7C5063F026AD6BC.idx create mode 100644 firmware-arduino/.cache/clangd/index/vector_ops_FIX.c.CC7C1071B94E635A.idx create mode 100644 firmware-arduino/.cache/clangd/index/version.hpp.A64224691B1AD202.idx create mode 100644 firmware-arduino/.cache/clangd/index/void_t.hpp.68600E32F769E439.idx create mode 100644 firmware-arduino/.cache/clangd/index/vq.c.885ABC183933D3CE.idx create mode 100644 firmware-arduino/.cache/clangd/index/vq.h.3E6D0BCDE2B444F2.idx create mode 100644 firmware-arduino/.cache/clangd/index/warped_autocorrelation_FIX.c.8E5CED122DCBD9CE.idx create mode 100644 firmware-arduino/.cache/clangd/index/warped_autocorrelation_FLP.c.C5F333CCF17C95E9.idx create mode 100644 firmware-arduino/.cache/clangd/index/wrappers_FLP.c.B7606DD26C91A3B3.idx create mode 100644 firmware-arduino/compile_commands.json create mode 100644 frontend-nextjs/app/components/CreateCharacter/ElevenLabsModal.tsx create mode 100644 frontend-nextjs/hooks/use-media-query.ts diff --git a/.DS_Store b/.DS_Store index a4fcbb7881d24e69468bff1f54e2246d7d0fff41..89167d1c73123b15168c4918b93b1fdbf9cfe1c4 100644 GIT binary patch delta 41 xcmZn(XbIS$E--nQbQ!ymsg8oNiNRzU5$VZZLModd38?UIW>@&dvPqPg82}IY3@rcv delta 34 qcmZn(XbIS$E-*P$wsf+Xh}-7J0xJBQ*%W@WOiq<3-CQo(#{>Y`j0`3K diff --git a/assets/.DS_Store b/assets/.DS_Store index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..6b3ea2419057069aee1a2430f84b250f2904cc09 100644 GIT binary patch literal 6148 zcmeHK!Ab)$5PhjdDqiZ%W4@rvViCN^TDAv4MJRf9OBaQzE$#N;Z9m;N$xtlY1y7Z+!Oju8JtFJU8q!fsm*_%_0nTua0a6Sb)~5K449MM` zV2(9B@9fL{`2_d4rDlnDJTI&1&1PM#XnlzZK4@Q|#2XSkVu4p|I4-G8kfY#Q!O;Wf zC00ROaF2qc7tE+D8C7r^?8R?Rp9QrE#*8Kr7P!JS=i()CD)z~@PkX1QJq)>N77gzU z<~Ky@|36#b=#(*)fmjS-nBE92?)*A!HfHAOTK)w&2O)yieBZf~0yHElU zxf*TxadlZu1-q~7u~7%YL_Y25u-bt79UP`c3Pphush@XU=Ei> zwB8sn26h=Zh||8j|Ks-hf7i)o#(**KuNZLMe3FltlD@5tAjHu~2NHo+1YW5HK<@2yFhyEXJ~lWft>hb`E|Hpgd6EJM(0I5k*d* SG(!SN-DDFU<;^i7E0_Tq_YVO8 diff --git a/firmware-arduino/.cache/clangd/index/A2NLSF.c.6A853A911FE36323.idx b/firmware-arduino/.cache/clangd/index/A2NLSF.c.6A853A911FE36323.idx new file mode 100644 index 0000000000000000000000000000000000000000..ef495b085df947343788187e1ed4e2883287a4a5 GIT binary patch literal 5340 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 T@emT410x{t5mta|12F#sZ>vCa literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/API.h.4A2CA4A646114943.idx b/firmware-arduino/.cache/clangd/index/API.h.4A2CA4A646114943.idx new file mode 100644 index 0000000000000000000000000000000000000000..0e248a3369b8e7aadeadc8098ec46162169dd4de GIT binary patch literal 216 zcmWIYbaT7Fz`)>~;#rZKT9U{DWD5ataY<2TJ&=A2#1(V)o;BnoA?CFI ze;xG1?;9K>J(5fH$5#_@y2%Q`1hMkWRTRV7UO literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/API.h.B65ECE3B73D0DBAA.idx b/firmware-arduino/.cache/clangd/index/API.h.B65ECE3B73D0DBAA.idx new file mode 100644 index 0000000000000000000000000000000000000000..a0df1c9b760aadfac00213116140f5f02d6bc7be GIT binary patch literal 1898 zcmYjR3p7+|9RFsz%-nH}M;_yPtY^l?FtlRy7?Eg9F~lnGSC~9zMhGb-vDhBkYDTAr zC8w-e9A+t&ICZMiL#4;6P`3179b`66W$z5v&UeoJ&iDU+zyI_1zaP)f$0wEqfLFX< zPHIAC3CAiU5~by9B`Cnw?<8@y(PbQKXT5(Q2h(-SLS@h&=d8UbFxtP zfHBrtn`@qFBL?;hV9x#;l<8(KNVHaof_uL{FnDi>&v*Zn7u4PjvUnY4yFliv){#4&iB|R0C*7T{%{atmRJ5}&~4(rqoM0+1XY3?+W zOZwh>9I70*xsCWW6FLFi`HQ%!)wCS8d%_VX_ep26Xt|>vn^O#BsXE6Rq$fv7A&!U%Du{FU!WsJz&1s^jDo_lQl!FZJ)_`W9nwLFG4UM^8R;qAhpm%~fWw z-)`|A*M!V1o*B=lKZcg|RWgYO#j%{Cklvy2sNxE!PDgLed7ouXoa(IVd1k55FX@ie z@y`tx%2v)r30w{{1sU{;p*ai9;_jW#=>*$$tC*y>zWZy%g$X{#*LQL5JcDpYv6L8?_f8x?H&$mh~eaRYSMp>k_^PPXRgkzEqEEB03O^0b5he*AEQ za=wG_NZDj|i`Z*UE=UPxMQdCfWyYc-tJ*v}ot!m`VV9{Cy*q8&rKfusL4q5HkX*Y{ zo;`KUi!AeF2;)j_U&Z8}Yux_v9j9J)6@~<|*J|JCoXs<^W)C%;-}_FUcQA5&qitNq z?)9vg8TwGE?b!ZzXMaShD|heT>{q*$To_hI8!2ZE$KLkN_vpy-IQnN$$$KcAY znyQ^FI^~??nM+Ia+j?1p{1NZB2IPA43$|^K^?dK-HzK3t_@HP{YOFT_faU{?R?EC1 zD+E{pVB!oro1qbKgc*Rz1YL7O0;={X-KmPyTe2Pjme{YNSSSbP=mA($T}KI6cEaMH zaq{d&Dli}cl%dU_DK|h~Kz~n7s`>dzOE>~-umJ1ebw+4B9B%|*$}%mby=iUL^f_Bu zEERl***j`GnkqNkURrWJl*%7SK!EjvLx8%&?pT5_ak0R$}~oP~g`KYA+FBfu$G#2k4=En2(jH z0a2A6ZfrBCoPH?#LIwI*iVoTihRO|3QJ9b@YQo+Ryq5%cp@)m<&@_p0_OU5U0tGc8 znOSq@ttKL9AQVVl>N6^Ygj77Gn>;by1O!cmQjKsm4#pxW$yjuW zQ-MWN@UW-_I0YD5+4@C&N^b3H57(XuA_cW0+u`g21ZAL%Rk*FL&ZH?_%|9ATAOp&v z;0fTQVUZM!;b@#JERvF>MLkXtrdCq3sDAOvK-!rVJ!r8fE*AUja30LR3t~pQAKhG?u+9IuzFb#OXZFY*eZ7%z)_L5 zLR(dkJPL1#O$3bq5h}r9o*b$aE-uNebh;mW$K(O<)tUg|bBt z?+=0sAi>gvumn8unXCLs4CDoQ8R4x)P%gwZ!cFi2##*YFUc5;_n6N8GA&7)=qD_he mI+0Y|y|&h~Qq9=R)QASm6v~BVj2{44;v0aaAp^kZf53l1RYY_E literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AbstractMetaData.h.D224835530640FAF.idx b/firmware-arduino/.cache/clangd/index/AbstractMetaData.h.D224835530640FAF.idx new file mode 100644 index 0000000000000000000000000000000000000000..f3fdbb8852b121518875356a980ef8b8531eb761 GIT binary patch literal 2314 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Alignment.hpp.D66B264E9F3DD8E5.idx b/firmware-arduino/.cache/clangd/index/Alignment.hpp.D66B264E9F3DD8E5.idx new file mode 100644 index 0000000000000000000000000000000000000000..c985b7e6d9b54679d9cd1da3b76898cca5ec51fe GIT binary patch literal 1112 zcmWIYbaM+}VPJ4h@vO*AElC728H9kixTGl4o{@o}k%@t!V$RVZUvFkZfwTTE9S?Ht zKD@0W(raN9|JAV8un%fC=VnTq?dF{M#!K}7?w4V=e-(-g8RgIT{z-}--Lg?Lx;ImT^|V-0^SwGwGgwh>W2!rr-J z)l><~HKD0_H$pPIo-DnT`K$c<0WRT#-4obno{`Y~R3cQSHq9%Tiy?Tb6^dMu5*}jg$Rdc7n?(1T2+Xdtu zrr*wHD6Y&+dJGKD_2o=!|LOeW6=f3V1#*EvL|RN*ih%>d(TaQKvfS`50Q8s7AE@-XlN6_|0EiGT?P zPF5xcK9GXhc{ATJrf$6lQ6R!6A|V1I7&zIP86*UO3K)t~(~8dn(+te7%$#69!mQ>I zkx`e?hWQl8GmtTX@l0%waNVek65-(y;S=MNf%{j4pM#$d!4qH-;6U(1*hP5Zt`ZTE z6p=^pL^(wH5IjjPNdbg2r1_;qVQvIEgI`7z<_sPYBNZbpcwmZ{GnsS114hJL-`o_& zv&qj5mbgD%hLJ~vi-AiS5{nEBO*^Eelay`jfWp=c)`~D;nE8yHBA{r6IR)kwCN6Mv z>b-ri+uStI5$Fm|BO#b87WZ1bHfp$C0yL6`g+~EqButu-3mnrhy)dJJ!k|co3B#NX z6b3~tOc)kIKnH;05+=+eVlHeh3)2IP*PKL-0(0~B|?wDpt literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Allocator.h.E9405746986DD265.idx b/firmware-arduino/.cache/clangd/index/Allocator.h.E9405746986DD265.idx new file mode 100644 index 0000000000000000000000000000000000000000..18f832213e50f3e9d6de50d118704c6ab36c30d1 GIT binary patch literal 2416 zcmbVOdr%W+5WgIk5W@inUr6QM@(>0AaezUzh&+k}Mo~)xjo4)dRs>~WcKyI7Rl)8CSH<(};6 z)cNYfhsw;Qsp}70m#n?K?@Yz}{t@oCxi4zggf^VEt6&Pg){c5mx#;`P+X|OXf049# z<+aJdwsnPG@(1zX^!Z!wQQd8kIfag7T<|`)y(`h$TUi#xCY-Ug^&2(u z<<3-`zxhhi6RGUG)udyR*}~qzhu(cB-1{CIgNs@8o+@ zBPZL2I?qbS4|yl0tx@Hj-98vE3Ks=$7xncUR>-bq(yjSnWk{v#)_B6CgR>=Y<(-WE zuF1-bkLiWs%|2DqiqRM4iz8K?XippS?rnAx)CH&2ahqcG+V214lX2>JCZ$py zEB+xK{lWDXDULD&R)Ev7+S5ZBdD_>$|UVY@Cc&LjSyWBWDFzuEr4Hw=W zaN625`bko6)MWT8V!@uu>xsMKwwB>e#zq&!Pjrk@45=$1kR8{KVFkg*-Nx4r|BdI` zZ|fN`c3%w*% z|MYeFX>ouUn=ytUCdil-V1C!^X$BcRCBbHzKq>qb#0oH*?Q{?&kP`qq&ct zYLZ;+AmK^$S)q0yS%(jQ=yh%9_YW~7A0Obsc+6)796%&QMJI-F31U-!nPOzHo8Zt$ zW+k(Onv59FbS@b1qbLfk;H?lqGz$6feE#+n!HW>UD-_D$WeA`w(0`7A?K>n?_oV}O z=%7-6&T(BlZV2w~k_agpc^G<_127r|nFLut%V;DON{s**jZ%auMgR<$hk>bS2f%=F zSgocTsDWu%{TIzthFg@I)6*GX7dEJ=1?qtg_}rlBQ+u3JgEr*PaR9`cdv}Kisby0 zL!TC%;Y~O9mSDA`y`uxrX82K1F<-Hv^nde(Dqzg&0fP)J_m;k_HRvhFn1i)~^`I)w zruDy0>U&jVb%1HWJ1~K8$EjFT)_jObBX`Q350w?L(+LNRDmt^4WL;^QbCUyn^G-Q_ zmeM}w0P&BWJvr%H--UBg4JO^d*Pq$%TiE~r literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Allocator.hpp.E66B288F35B5E9D6.idx b/firmware-arduino/.cache/clangd/index/Allocator.hpp.E66B288F35B5E9D6.idx new file mode 100644 index 0000000000000000000000000000000000000000..58e1052a63e7b16aef00cb22c12ea99556c03889 GIT binary patch literal 1422 zcmY*Y3rt&87(P9H(4HRJ+jekid6v;S=-osGhI1QhL>iXhx`9y^V6w@gjyh;T$_!)* zcEH@`G(&8dEHuMq+QcmeAJpMOH7QG`*@H}yP24iFS7YMT%_zZhFZpY{N&mLr_rK2h zzPqKeq9UL~=;@a#{hp?_Mg>C1$UeR{?<`Nm(rw--!>Tpx~IjvqK~LE~fEv@^$!zb(8$T7J0L`|R!mq18JbpY0w| zzJ8+NLH140=9E#_kZo`4^!eb1t2G_57xSH?<719M`@)2q`_|C(V|hdM2diRfKTY*i z%>`Yzs)p7-=051^cKfH^oq72;oY!4_^K`6uWvIX4(O>TAbDZ_jr-G%YYQN%p9xSTn zl^++qIneD+d&F>bR2Z%)9WGz<&wKIoJGJNjM!rtZcE1dv=WEAP>54(j;bb|x7WNR1 z<19$M^k=YZ{$AVT4FZRgl!%zsW=;w~ug%E!g!dm=nTl16c3_853P2A=p4_i_$6S(x zWf&2vqIxMHjnrI5l$D(wXOlk(lqF%60uf%tr%K_!1Z#MEU7(@1#fT{zU|VL(kOB;F zM`n}h-LeiI>*R=-ut_cjpl5^$UKxC=pTlZaotczrkOI)h2GTb^mv=qH&dzA7+G>;n z(5JuO#L=%8B0SbJTEK!_3P7(3JiMQ>_t0&2HE?q}PL~FBYti9wyz}-SY&Ot(z1|G8 zw`r%ZfO)X)`pCXt=Pw``B^Is40QU{D$TX51aFIppqU1{F)@2GxbY@*PtUw88=LD#s z#B4D0(1{XjmNgHKntAKmk)hu84mK`Vn`;CZl4V4a7i0l>v4Yq$>^2aCNFqZL?4}@+ zxXoX-%0nY(?^0rtn<$W!@Hu=wlu%;R*o@E)P}V?nz^eG%#OmVLoRrwL_H;<1|C>pP zAQwzf2svzf(IEhXIb>Ke1*}qa`06*OVjKI|6%?YvoF$(l1YTiHM590xxFH6M1_Ahq z%ro~N8l9iBCRvIsH57wo*htYYkbQz{eJr4Vyy;gMQG{y7k5sqoB#j- literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AnalogAudioArduino.h.278801C049230E50.idx b/firmware-arduino/.cache/clangd/index/AnalogAudioArduino.h.278801C049230E50.idx new file mode 100644 index 0000000000000000000000000000000000000000..e1f290a846d552e165829d13b8b8e7152d906bff GIT binary patch literal 7160 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AnalogAudioStream.h.5C5161211CB94820.idx b/firmware-arduino/.cache/clangd/index/AnalogAudioStream.h.5C5161211CB94820.idx new file mode 100644 index 0000000000000000000000000000000000000000..f713070af5e30dda66ad6e64a83040b6de0e0060 GIT binary patch literal 272 zcmWIYbaUfiWMFVk@vO*AElFfyU|yddUpW&P(k(}E?!3^qMi7}B?B3M_SyopbV;4yT^r<{#QT zYff`dmC3qMA-Y1C+vOdTD)Xi*GILG!E)+kzvzz&WSVW9iC)+aHANt!j@!4Dp{#yLG z_ITKoGM(k|hNn1EPX)`=$5fp5+EK%F->q(8LUCno63}T3MX71U;y{|CEAQ~jt1cTD xd6)}%3PnLuU{I8rlL%rI7bO=f18F8^qn;++z*l!)FflSQFoD&837{Wg004iIR$~AF literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AnalogConfigStd.h.BB8EF4DE961FA65C.idx b/firmware-arduino/.cache/clangd/index/AnalogConfigStd.h.BB8EF4DE961FA65C.idx new file mode 100644 index 0000000000000000000000000000000000000000..ade25cbffe2a5653313ed9fa4fe3c8441631ff62 GIT binary patch literal 1644 zcmYjQZA?>V6u!MJrMJD5mX;5@vQpa8)(Alcb4%DLLf8-x3fY(uDIj%{6_l1CTlorK zf~XtfG8{ymFeQV@5U1Nnoy=v!E$)X@$iPk{Ok@nnTp)n%KlmMG_M#*XK}?YZQPFkd*vK~SW=WIdLDsC-_-WVj z?9FY`Sh?HLk+x?z;lMNbQGK`0ZSl;+t4vzS>R&aZk5j+x|E)^j;PUL=`eELbXMF3S z@`;k-Y4=!ZK*mgA_VVp({oK|U=;+D0$lB`d?`Fmrf*a>-e+VXrQeP2v#WftQpZxRg ze6j1o*|f-qrNgn0xF=&29h$-HdxN%T4*t^97Yu=PPN?&`pe%`ncHZ#={9eugv zx_i@!oVMvnktNGR*W6jNj)aRMD*Ok!?O%nh?3-~_7H*31@wa5RR9)>^Uf`*7FP6;i z|G01VPNVz=?{!Pw_nP%D8}>$hbRp-(y1KTZiJ?=^oiX+vY~3MGtP0<389d^h=yDH5U-onJ`=$^v=?!v-AVkIj$^%!zCv@(W zI5A0s97=^MSU{O~w^(Mmv{d3va(M)$(j3ZbqWW=I$`=)9G zNG`~Fo?gZR%JJ`HbTaxq)YpQ4FALx9)MQ!8^d|afIyDu-|=ip7wA4_6RsMm7qun#iJ}8YxX^P(-1@o zDKDXyf^8xIP3h!1Ev|6lkdhfUro>4D&5Rl8Rmtyp-_^fd0F|@~Z6qc^nI~iizOW(h z{w}9eLbL5hk!G*-WM%d@YjNUe3@FFA0yk;QZMF&3aXZ|A5>i1}j;2(BDjlvc2gEX# z!Q$u@pc$iJO7sZOj6sm@E<4P#9)GD0Xdj`E8gqLuUkz~S$6HB?lJR9hn46}8eS_5) zn|{XjgI~eh=b$NSg<6d^(_d`=K)>MbCuvHlQW|hKw83bI!hsj{wwrd=u6_cs|EKrP zr*jrF$3F);Bp}3q$8pB~s9EpjxFDsPr>3zI#L5jyOo=Qsjq&)Cx<~;#rZKT9U{DWD5ataY<3;1RyQV$iPrBXYV;jp(X+i+%YdwRx|X{`&nX zIbGe$x_^_eL~5II)zjWDU2ga5<-M1telD)eO#(WLp(r)27((YHg6QI+~;#rZKT9U{DWD5ataY<2T8Ib-C#1(Uno;Bn)jh# z2N|r{J+i~M3T2(wj!2yde|<%@HLP6 z%L~sPeW|%S$so{VW~c6f#K(rmXLQDg{+h%;W8XWmUCK2--zIw3ThCs~|JXj_a&cvD q63}9XqSUlv2%VD%qKk`?i^YL76XTk=n%-4kZyjc2VqgNvKmY*U{z?u2 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ArduinoJson.hpp.D5B75363574D6FA6.idx b/firmware-arduino/.cache/clangd/index/ArduinoJson.hpp.D5B75363574D6FA6.idx new file mode 100644 index 0000000000000000000000000000000000000000..99ea0160067808fa4581c0cd0313cf2bee5c1ed1 GIT binary patch literal 892 zcmWIYbaN|VW?*nm@vO*AElFfyU|&*z0~|v+{?1y&YNHQ1&D zwfsk&j9HGK+U5V$@a;Q>TI*kIw@=m2E3V8<0!9f#QEFOoF_2zlpx$@k#tU0U9wrf1 z5iyVy2)ru{{^opQeGgEWPm|9JBFMln`ONb#R#y`?fP`82RAIus>wlaK-^q6bC@jD# zAP*B}KK8u!>G{laKw*9seifK7(C(Z>5U02(x!4()E*LoBQVb#prYM5Rfnb6X6cq5n z7z_-22&OQC$%7dH%jm3 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ArduinoStreamReader.hpp.5379EADA34A46819.idx b/firmware-arduino/.cache/clangd/index/ArduinoStreamReader.hpp.5379EADA34A46819.idx new file mode 100644 index 0000000000000000000000000000000000000000..0ac23131d2a359b22b012fbf829b3f713c2f64dd GIT binary patch literal 310 zcmWIYbaT^VWMFVk@vO*AElFfyU|?~h!CxTV9+f%k1YgLb*PL0_8#dgXyS6&qQtl-KL%C|8L%&tTqLh`*R=qP~ryLLz z`X(p8kxWf^1@ kA%Y-XIf)>4aZz%yIEVrCJrpo8-B!%!+?Ac&#K_110P)Ua1poj5 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ArduinoStringReader.hpp.86756463EF94C92F.idx b/firmware-arduino/.cache/clangd/index/ArduinoStringReader.hpp.86756463EF94C92F.idx new file mode 100644 index 0000000000000000000000000000000000000000..c7a7885b9e44278eb6a8e9dab0d72cb524f07960 GIT binary patch literal 310 zcmWIYbaT^VWMFVk@vO*AElFfyU|alEG~ryi$@+^Z7%j-C2 zD=vM-T)HZ$rMNOT3FvHwqSUlvJs@q9pBpT3f4U4K4-*FihcZYC1e$h8OD8GY*a3wF n83Yv}f*@Tvi6C}yQF5_3hynCH6fiOAJaL~AZ>F5b$jATy!xn1j literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ArduinoStringWriter.hpp.88E14FBA6C664D56.idx b/firmware-arduino/.cache/clangd/index/ArduinoStringWriter.hpp.88E14FBA6C664D56.idx new file mode 100644 index 0000000000000000000000000000000000000000..600af2f464e78aa0def4e093e5511a3bace72245 GIT binary patch literal 1480 zcmYjReN0$u!2uvk0Oj&b9S8Geh0hVEyWcrVEgrEP1u4gq2(>2sHaAnVT_nCIZbK}fg z(w$K7oxJOsi_-7bht|HTpY9#sf5BXOYt=ebnIX4L?!7U%Ho6$NQQLTC?#1_>$e66t zf8njVw)@-jm!_L%Ux@p9nkr`}V~2-7=Bro#w8utzKN`97^~L@PS8w*)t|$A$%Qf1m zu?*q#mB-u7Bh!{Yu2+R$Ddz{Wbdi8&CKS!ORXv!Tl;wGI;OdS?Q)ArVa(7k3-T&(S zACTN#4~8xr>e7|_3y-d4zwd31>>Z!J%-2nf=Rc#X+}|laa*w%o^QXf*vzJ!x#cN$> zXIIai3_iO!GdeWnoj~ z>Ng>t!Y=GGDh6Of*ZS>GmM2D2k%7VzlC+8ec(}vr>}why+aQ;*Y{UrzFng@1vuA#G z-GW$pS`mY=kUzmPk~t8ho-F66-gdlQ zR6Q4RaZnh+UgYJVL9kLO(I@&LL4wn`G=nPTAP%$Y<&iwIN|&$87gVo6C@_J?D@})X zLDRKV$|)A9Qf|(jq8>?1103F{);``|p;F7&T6hSohN&oV`v-<*7#4xSWZF6DjNryb za89xr78F7@jFIRhMiMpZHpS_}%;KgSOy>tv%SLoW*Qp7a+cZ<}d+}JB^fbA@bI$L4 z{aROBQ?uQO(48ATX;=_58ln%%<}TZ-3b6X?$G~RII$U_T@ z$A&Y;-?dZsP4C>gKTN6SQNv*W*T&NMm*OM62i_VpOkAt$$WI+?I$L)6_mg{e7d_Zf zmyk}5?%Je(UIq+7I7C_^ZE;%UD9nNI75dBXXLD!L1wKo9Wi{lw)VS8gD8QOY(_il{^sN8{GKo)A!qkZP>!#GFMrEghs3IYbK}Y%qP@J|4+W`;k+}kpH@xV)WMi4U6mqn5Qi0_m0wbWS@&JL zYQvcf_KW^PB3ea1z)8~+mwr4RxM|a-9w8A6Q4PSTv#mYxaRx&F2q*d`9+^c3N+_ll zsEHEZ%-do3l!#cg03#(5mMkzDN@TNahe2De4wbL&n>J9EE}P~rNf+T)rPDcb97WI{ zB_5Y256*y56^KNrgxaGWq1%xS`aXG(m6FB?D@EsIq( z0!~nf&aBA-o}m-wt!e_E`;K_MEpkMQM3oLTIKyztAK zQl$n?aDpsWRTn%{k|kvMp!&yi*M8QsxPJmu!g;u0+9|4!3a~afSe8i@V%llxBE~;m zSe)yx_&I}}ARlo;EG0@%DT1ci3E~(B%YmC?OHvgKc_EbTT~#hTQ&M5C$c9Wz$B#B= iu}wh-2>ei@vo+yj2qt>V#pHKy`rCEp|Nhyu&Hf8zGT*iU literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ArrayImpl.hpp.A61C5F86F89A2635.idx b/firmware-arduino/.cache/clangd/index/ArrayImpl.hpp.A61C5F86F89A2635.idx new file mode 100644 index 0000000000000000000000000000000000000000..3a8260eaef900da50fdad58fee1cc58151ff84e5 GIT binary patch literal 1530 zcmYjQdr(wm6#w?_!Y=pwE_+$`0lRP)f@KAHEepHE0wJ$tm!Ss9CVB~m;1o8pJWEqI zA87Vqq!>$?A}0ocF{(c>1T`EjnWPbciY6RqO*3RBNYJK+zNI-{@66u4-#NeYJHK?ud|*p1Q&K z&aiJhd-9(4E{4`#x-nPR@T}(inQ@y_a^P6;8)IMeF3olw9DMgw`BL%8&XKC_g8}U) zE;roF+3pQK)E{;0v}I@GA4mTj$U8TF*7{w7eDX?bR^s?x{F+;Rz2xGCO+PesOv=s2 z0zb^))O)JfzUSZelBrvb$Dh19nR24OgP_w%mHxA>4p&=T&BnrCTt%PHukPRaaeZ^z z#?RQtKS^>Wcp43^1H04W=hnPX`oZGR;hNO_#(ldM7IkOtd3pw)X}=O*y=9+w`KeL; zmm}fpceLcD_YIp0ry7S^i@MX#bv?JUD{h=$O6j-UYgbK=9+}X|8U&BKxu#;8_Qq<@ z^S6xM*AS$VBJ2!uhOWF&03-1W3XovG?JZ^NqSm(9c}5{am_(D+Y!=Sqkb(x&XS}rV z&ReqA+ju6Bx-CXa3>%@02m$vlbJg6N8~FEmhNo_u&KAYS%45~wJ~aH%?8H@57ti=p zx7MhQVTqDFh+b74eL3q!&KS?gsoSA*7+H;6ql9St?b+5K*V0{{QBt>H6cSjY(kOr% z)mCnHchZ?Jt1ftYU;YWn2-eEADo9GOAQx0XLa>=JbK=P&x2T{v?rvLJk!Q?LPB0hD znV}_=E>`=fNM}qmW{CvJ!O3PIAlPQLVcTxa1ySET7jRA zgvbdmf{1}ci6^aE8zv4&Pzzx|K(Iw^2@{3ch)n~+=zxer1AX}C?`u7u2CdppWo9$k z9GDf#iTU`S3tFi;gUL{XdSIko^KAp@1ZrybZ2_47x-^(;sL*#(602Z+1cE^_!>%j^ zpb3r%j0uJcwwX#tcPt#~rG3&fdLCj3&S&y@P&raPJXF*(+($vW5S>W`Wrk#$0EDG= zaa^GHf{#h1H;ABoRlWg0@J}o7Z6avu`u66+OiTLjv;v|c52ghoDcZM~fc{lc|C@It y>R*bsGj;`ZrMB{wa$f`8wVT|Dz7N*-T6q{OH7<9gzW2^oQkHOtfE^)D{QM7#N9~9J literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncEventSource.cpp.4CD8E47060633C9D.idx b/firmware-arduino/.cache/clangd/index/AsyncEventSource.cpp.4CD8E47060633C9D.idx new file mode 100644 index 0000000000000000000000000000000000000000..67539b5fe772007bd189afc8635323c7df6674be GIT binary patch literal 11090 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncEventSource.h.9E7E8450C0D5075E.idx b/firmware-arduino/.cache/clangd/index/AsyncEventSource.h.9E7E8450C0D5075E.idx new file mode 100644 index 0000000000000000000000000000000000000000..d936f91afa8c9c91054a4ac5816d6235afff9e20 GIT binary patch literal 7552 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncJson.cpp.DCF6998AB1CC8C1A.idx b/firmware-arduino/.cache/clangd/index/AsyncJson.cpp.DCF6998AB1CC8C1A.idx new file mode 100644 index 0000000000000000000000000000000000000000..30d623dee6601645451d57a93789d406e2e75615 GIT binary patch literal 5832 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncJson.h.D7B32C0A03FF508A.idx b/firmware-arduino/.cache/clangd/index/AsyncJson.h.D7B32C0A03FF508A.idx new file mode 100644 index 0000000000000000000000000000000000000000..722fca5a22faae5e514460d13587c1ad6bf0d845 GIT binary patch literal 3338 zcmYjT4OCP26@U5jARoLWFN8lx0Qrz_WFoKzZ8?ZwQjw1U3rbT%gTW;Ygz{klySmvS zSP`6u+74;EDzwMeI{I}6TieY_1*Zqld8~G>)lET zyOgdq7>JT#a_wtdYO9-UEW<{FHU9Jl?O&o+-n+F>{(J(F7Y zp0nv!U;0jJ2h&gf`P9GulQTbf^6c@N2ctKy1zpx(?%DR>8=vcctGF}y_id#^zw2$S z9jTZqKHbtu+gjJZQE#1Te(KI2+fiLP<{WDB+flW@yYJqa*{-1W=l5le-ro0F zN`m3^knzc^`!&6)b%nPijpZG7rm?lQ>XZ+|82;N4IM6WXt0Mls42@Dp=|sZFpabv| z?Em%E4>a2qJPGw-0_&semrV+r+LbNzNh zA2X4_lL#=sLb^gD5`15NaOCRSrnW?$L`s>!+{oNSYLFWOQ2nN(`P{l#b*hS};dP8E zMk^9jZ%8{e?9BdAY7ik1+{W;Ynbblo;i&%f$uh<8rMDjCiQJb7OxLByQoUTi5PQXg z9j_<;J~mfHR6YzfMVJyrg0IgsM0U2+ZOP?H6sT=dn@%LCo;i46qMb`M@FW`4R;iU2 z396~nJ((8jEKv~+sEg!9N|B&Cx$@Xctn=3;JP8MNowRPTNKozH_|dk+g8Xux@Q`<^ zG*v4SRC9IvvJ>~j+ogm+)eHOzqD11U`g~T>_%Tb`Gd$5jVR|IdJ(8u=Ep={2@~5>!tn%n$hg^Tn+^2>|o9Xj?LM zNF6+?uR7!%6MyLWnLh*DOY@8KT_W*>_kBeP8*a<);Yk>ne_HyqRwVd-J8fKYXuj)! zl)&awou4jPB%b$wE&6u+sc-hb1&xKNDUK{orbfAOp|OQs*H+t3D92Pp3FeE#ikFB4 z&F_6q_gGxoYhUnW5#*ktP6-kTs?SCK^1~2E>F*KPZYf+tjrCP3k!+f77ArN_nJcAbrs+orB&5fVHBH~U< z6yh#pJ#m*Ma&d=oiZZf3S6pa)B2dNAbdoN^1UZ^PGGyqIqk5v3;YI-$qfhd124axm zDs$9Gj52Hya52Ut4_87;WLP7Pnu%G4CE=)Ry=xTzmEGyWoLT#_-cqtE|cs29~Q)=X4OH+Atr$*0g%unViAZ1AVTr?%J&T&KHuf~ zLA6*Hhem))asAkfD{_^4an-I`FYbBQ4%pI%KOC)LYZlBP!hur(-q0x`8;Av1Lop&6 zhy^%9F(Mg=1sKC(pc;xHz?UZg??RSYUFnmnuGl3U)kWzZ!MC9e&X_|vm#RUWugs^2 zHrRhCyMT1)A<)X64eQ!o4*{?;mZB#FKnOrUKeWx!<^IdH7&O8lycIAIO(Oh(Cjs_Q zjDfIR5gvfNULlfzNF#-4(1=3bNLJ#u|Zo1CLERu+z-ax{<)^y0$U zFfVSg-{J_*mkDfwmoAgd^x|^Z951evE%o9yup1V*j=P^<|4GSQ8w*=b^d-jiaAY~^ zq|PKf1OOCDS2Sh-pc>$g$0i~yLq5WpLN6SxVyh_P(U$28`nrQ_ZxW6clj2aU0Y|MG zYZ4}nM-9^OZW~?}NJF?}m|a74jqPLT^9w)U{PMv1P9F&Z%Y%t+M~1t~6C{`m4yFWK z{?jQ_KQmKrl3;$*kzbi>$0jyO@KZz-2EAoCcFz2}xvo}%D~}2Wn}CDEU0+Qo0DMan8t=pjmsbhLT>~d%~Q=^yXd104q~*pr|@sJ=g$S~XPEy1 DV_wDd literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncMessagePack.cpp.B39D94573CDF77A4.idx b/firmware-arduino/.cache/clangd/index/AsyncMessagePack.cpp.B39D94573CDF77A4.idx new file mode 100644 index 0000000000000000000000000000000000000000..a9fbd691fa9618963587c9fb30c7182bcc6ae968 GIT binary patch literal 5218 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncMessagePack.h.E1F85AE9B163E423.idx b/firmware-arduino/.cache/clangd/index/AsyncMessagePack.h.E1F85AE9B163E423.idx new file mode 100644 index 0000000000000000000000000000000000000000..7b1dcb8c39a33dc3134de00fb6f63430186f7e2f GIT binary patch literal 2948 zcmYjS3s6&M7QXqpyS8AQzL3g&ZYh5i)RkXJ5_^8zxYsES`YD=jst$Xh69+J#(l5@WQ zasG48_wif1&9+XrYFGVFYiwrcZ7w{yLFE5lz4yuYt&x1-qk zVXL_Ha^$(iUzW|;_2wUjZrAg2@Nqc3Rx{m=3Z zcOHLwLm81+*q6NMO`qc4x`FOz74FfVqrOh}^2#uVdE??K;aWwNN+3^#F?1ET$}Ag3 z1@(uIyKHb(^R7#3JyC@-w16ux$Ohq*s=N#L{uHGZNJ2PcihnvjjaH~DObAy!^VyW5 z!iRc+M8WQ2LvfUB5MI4=&!L0bZz2T}4{#+{X_O7ZN7LMu*690YfpBnm^3%!b)ULKi zAl!N@uq^(IFXIFvgfXVP)Vv((;XDGukEZ;5?f8sTi$G!kUXi-OO8uPQi16v2K%;i+ zXu6hx0i%w24zFw&wft-a4WAfki|KSnWb26+`8>5KeG;w$WvOZs!Q_j%F$|6J!%iuFvzpv2J$srYOQfV@zgK4lN=@X56pb z(>e3Q#?gK~;UT%&>9tw1L3m}ww!V4kVFLo00*$Fit;nZd&O6!GtMj+(pS!W)u%2jO z_Y(CIvutp;;r_>Z9G1P;$m%C^x4(vXDki|hTT zv>)ld&=W1}u8FHjlnuhoH9I_AQ}VtNNG!ksE|4G_gbQb1_+6Z#7vN~9n@w#KWP>o{ zZCvTQ93JG9LL+ktn~hu|8ks{_W}cR5%P6)C8KqFmOu|LTBsfx{5r%V%PG~N5z7V11 zX$7fJ;bxxNh)sp*^3+c3Dr6IQN%pj$w~#DU;V|=b30b1T4)9d06<@?j1g}RSzN!fN z{u2LhkYzme&-FV)yv6={^pNI|yTozK9aDgpO0>o>(i*}Now0a$7=$GnV;E`7YJQ=w z%wC4!X)UQu#zEw1Lt(>W91WhjjqY4z5YilylQ@o9U_~G-aT~AuL3h~J8+N};3Dsal z{{OeZbz+8?7vfckH6dQ3=nnDLiyJ|5e);gUgYB3+21Nrdl@tRn#c!A!NhyMRrO8GR z+X8zfwZJew6T*^8U>K(j!jd}Rt5FyrEU5y9opmkNbF*(YD0rG_$t=Qftk;!vpyYZZ zgdI9ZB(?%!NLSL1V7ih0hac6;JtUC-QKhhqDV+TEJ6+5tOFuyteU*V8VjNkanUL);=E%_v0 zhh^buF)7v|72(yh95#G4Y9h>M=sR%)p`wxyV*Ndvb5ah@J#qj_=ge`IU>Kzl4v{1g z!!G^Z!qK5MhhVjpSoJuv$Wth^B$K$Br!8ztB>rDVy@UiLvBX7B_538fcC-2jys(;7 zt8f)CWky4GkSXG?#ZoL0Mj^S-!9z)fEF?X}3wYYhHfwRBTa|USfA#FU1dHNT@gXyj z$R?Vx`KZ2-swBO563Q5aCCSAJQgs#-U9Yac8xDPlb!1^5ccL9547CmPr;UV+`3fI_OAUQ;b{%2iN#m(w8_|%hR*accH)#U zSPE`*d0*YN#JiIse7-k5r^j%6Oo7i}eBKqlXQYZ6v8)Ue8T=VB`IFFZK5I%{rx`2> JGe$-*{{zRfPO<<1 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncTCP.cpp.6652DB83C72F5A7D.idx b/firmware-arduino/.cache/clangd/index/AsyncTCP.cpp.6652DB83C72F5A7D.idx new file mode 100644 index 0000000000000000000000000000000000000000..bb2df2c5d432f3fa7f4a792baeb43893e2e24be8 GIT binary patch literal 43334 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncTCP.h.2F55788D6D32ACD1.idx b/firmware-arduino/.cache/clangd/index/AsyncTCP.h.2F55788D6D32ACD1.idx new file mode 100644 index 0000000000000000000000000000000000000000..6aa9dfd74198efca27eff19f19d3c0f23ba98e75 GIT binary patch literal 11342 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 Q#2B?^TB4S>=Qaig01(P;)c^nh literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncWebHeader.cpp.28264E0F18C41A89.idx b/firmware-arduino/.cache/clangd/index/AsyncWebHeader.cpp.28264E0F18C41A89.idx new file mode 100644 index 0000000000000000000000000000000000000000..d49ddca59715c81cfa24633ce821c907593b5e63 GIT binary patch literal 3596 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 Z2JYVRza0lb5DbrC3V5br7a$0U_z#kEO3?rS literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AsyncWebServerVersion.h.1B2A42E13A5F11E7.idx b/firmware-arduino/.cache/clangd/index/AsyncWebServerVersion.h.1B2A42E13A5F11E7.idx new file mode 100644 index 0000000000000000000000000000000000000000..d947336ad4f01713878d172b00cfec7d8a15891e GIT binary patch literal 384 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Audio.cpp.0522B7FBDE82142C.idx b/firmware-arduino/.cache/clangd/index/Audio.cpp.0522B7FBDE82142C.idx new file mode 100644 index 0000000000000000000000000000000000000000..c84985588ed029237af53f0e5c8f9384b8e6f31b GIT binary patch literal 17162 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Audio.h.2E59C21FC4F98A46.idx b/firmware-arduino/.cache/clangd/index/Audio.h.2E59C21FC4F98A46.idx new file mode 100644 index 0000000000000000000000000000000000000000..75c16ed72a7e8b6f4295224cace43a65ac66cb11 GIT binary patch literal 3168 zcmYk72~-o;8pm&dFc4-S%Rm+qHiHI8LPijmfC?&zD2OXhSp)^8G)0ZZ1w9B=+^gV% zR1w-D#R}F1QKY!l@+cKSjfx69E$$0XD_Rw)@8&Z1wK<2J;Xl8*%Xh!|WlCgtcpM49 zn0b-Q4XI0#Z2$m5_-9$i*Ca0iwDXL zSFc~T>J`$@VB)JN8p_Z~a%@l|*9vTf1Z-0W8`2yt6B=-`U&x*=^& zF^2Y)!A~CMW_+pXdbnfnu$}k65w6Yq_1fXIQL9&SSAEg+y)`}g=_a$P;nBN#+Y?qp z4x~g%GIa{c?yw@;2dOzqeZ{Uh<{u9>3Q3i_>8#jL^Xf0hJMYFB4?lNWed1O50jmA= z7x6DLx5`VqwiQbQ_QW;WjBs}<5JcxK>#95&(e?SWiT(|Rg|GSoC!P6aQd#y8x5S~G zZQEalm2Or>eZOqvtB-HH2ZoDlRHHlQf7fF?UK?OOJHp+uYcK6R=wODRQP{!Lw(9oZ z4O6L$evPV(njr}+m_hV#?&s!)C8^^o4w*Lis5h$D<@#Mne_%IeX?Rj2u~Sgr)^K)H zlXmaQz>WS_V?T|!+-j3{uu(i`$=Q^16mOro`KBr1_oI_L4R7-5`Nc9%-;Ss(z3toP z?zmxDh5v1Ci#?k8*4d%AU_bNvhOd6cv6E90`S(RvJN*{_(Vd)e{4U@%6eZ{OzHI9A z?%rG5aw~M*rI|K|T#g%+ud|L!7+$?HblMT#=~#Mearx4*E@KPn(Np$}vu<@5Fpr*j zal>n+@19wQH|9FVnj=S#jVRbykrKe05>fi#Nn}KcNmc0*9a-F^dVWM?lBDm7$Z5J% z7x5r_)~TT0Zk zM#(SDsuA<` zmjQctB~@}5?#-oT-v5c&rK3O)x(xweXJ0=AOz?q#zKj#q{KIsH0+TU7NC^)FxD15A zcIh;bbjvP?0%I}YTyb&N7 z1cBY^*}mqg(+L!C!~iXz(Jt)#EQ?e>G7IfYQ<5kUjsdmWI7UWQ16b49|{Kq2y9o?OO zZ>k;wff#TVxYB3@fd?Fc`ptXB&kgG#pv8dDK`24M2+J;>G<`T}uwIu-0S9=HVu9ET zeOZ7AwFP*+uWH=Tz;8EDU??8J+u2)vFCra&+T9B7CBI-s-QtT`QaWrxJ*}GpaA@R zU?c*GC;GCCFbvg!TUPTzS-0p431aXFTCP?E>}{?3Tkd?*r}CDm8*WixGzO#+=>W7y z+7njNcGdnE-F&*80+TRcC$a0_rmHsuYEw#*CgvtRpnx0$GFMrDM>)Ae;N6Oyo!0p! zk4X@X0S#9J*TCh-P$jwdr+t=EFYlp%1_N$FxBlZsXA%6dsDtbZ{gVQG42T3GR45_p z>M?toTlYv#e;`2s1_nD0hKsbZ;h}ePacY|J8uUa;;=b#lW5(KZNXCw^6XVSVhFs*e zt(ZkylZ==r=HvDv83|9q$3-R?jb0OqcY}??vF|qxJMSNFR^2&cdMtwzNC~MJm-kZq zg^%~HP4~7U8CSxUkKX{2Q4uOW?t|8>mIYJK$N9r&HMB;KXTs`&Ga+TMGht!D7>SCF zv8G^*^u)$kPB2DNV&kH1Q3H473P!*w34)N|F|ny2jSR)o*iSGw!n)qtW3biY=`R`OUB_4?f~XxCwAWlZ+SP zCBRi986Uz&fW?Ci1=obk#7>TH!x;I9jj@ejj4Z^)*g-Hx?qOq>j7g8u`yQ3RjdAQa zPHYOWkRXjj#O8ylcYHnQnYj}7fRa%1ai`#}gfy}eOSk?7HYep3R6|-u$OO1L?sR(mI92C>DUoBspYGKVh! literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioActions.h.531F166B01C3F528.idx b/firmware-arduino/.cache/clangd/index/AudioActions.h.531F166B01C3F528.idx new file mode 100644 index 0000000000000000000000000000000000000000..f4e2d8ee1e032d825cad2bf73a76334bf168a785 GIT binary patch literal 5448 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioCodecs.h.F4189669B85984DA.idx b/firmware-arduino/.cache/clangd/index/AudioCodecs.h.F4189669B85984DA.idx new file mode 100644 index 0000000000000000000000000000000000000000..77af259870fbda4935ccf52ca09e9be8ca29e6c4 GIT binary patch literal 322 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioEffect.h.9687ED174C0A5C07.idx b/firmware-arduino/.cache/clangd/index/AudioEffect.h.9687ED174C0A5C07.idx new file mode 100644 index 0000000000000000000000000000000000000000..3934ea8fadd92345f09069ca84530bc7aa2cce64 GIT binary patch literal 16476 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 M*-HJhh5G0J14K<)g#Z8m literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioEffects.h.DBEB28DFCD39F8AB.idx b/firmware-arduino/.cache/clangd/index/AudioEffects.h.DBEB28DFCD39F8AB.idx new file mode 100644 index 0000000000000000000000000000000000000000..b386c4f84bacd8837f5f57ea0958e3faed615552 GIT binary patch literal 9354 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioEncoded.h.8BB15E0BC0D164B5.idx b/firmware-arduino/.cache/clangd/index/AudioEncoded.h.8BB15E0BC0D164B5.idx new file mode 100644 index 0000000000000000000000000000000000000000..79889129dbe434818f82f01ab10ad4b27e43f2c3 GIT binary patch literal 13710 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioFormat.h.71BF074496397C43.idx b/firmware-arduino/.cache/clangd/index/AudioFormat.h.71BF074496397C43.idx new file mode 100644 index 0000000000000000000000000000000000000000..34e5760ead857cd7845df0e5ede54b7cf72794a9 GIT binary patch literal 2354 zcmYL~2~bl<9EUf{O&|}$jocv!1W*o%qJW^KaySa{LR$ocjHsX_c!pqcP^sXFlu@z8 z69g#@M@tc=l}bH8s4}z+QriLoYAvl&)QZ~wF77ZxesAV`-@M0={f5|x@Nf?Ugcc@8 z>`Y6^Ow>jQ3E`v6RHPG zF4@Als?^pk`ig5+D=!Y}W?htAJXutcIdrL{>}#9Bt`mzIqDG$NYdrNl3~#MC+1=L| zR${$oUa8Kt#AneH{=39>WwM|``@7<0MZXvycqOlIUe9(McJM?JqK7)9XFhrbg;U3pD=4$QE9jwH*UpYG{!*iY- z@zywubyOuqxkdDc)~3qsKaKY7i5zIzA6~7peOMqmmADJtJy7%lPJ;x3Wo$vc5Mt>F78q=t_{T3nKf_a_i%71-Tb2maWv|CoW zJY8O^$yD{c^J}mQejRXRSSom)kUhOOYr9|P^MLRT0~%Am8_{_lrm8JY?YAm!^A&P) z*9W1G`}0$M5(6t!E;pr$i;COSt{wvhvY_DT_5l~u;ljEs#c2JN!q2+>PN}>`8_m~_ zT>VaKG-FlASl(N7zBDOCxhpN{mKH)kR-Wz4@eSiRq%|8!t+BN(9R$bI&Od-B)oJW* zoRB=9X~`i|5DIv>fX9D-AreQWjggY_5`iyBZXk)UNI-`O9#n|?J5C*{sbmGzJ(nJm! zgW!lA`E-b2MTM5%JneYBK}j642EiFS3+WKSn+gXDZhn+LoDG5y1Q+aLM285Ie~01x zV{%!f;|2~{fUp^FwxUA>OZtS}b$o%=x$PMovIk*4o-d$71P3boxhA{i@U~JVho*rL zi(`%G5J86u^IpWXncXivz@Zr+SuYUIOGYEDK<5rLxjnb zl@RsL|8>jTD;zQdAqK}7(V2Qpm}7+Y7umUW91?+`#%dEfL=e+g_%21NTjvDz9O8oz zhy(d_h+ss8GYjXcdz9^s9C8661c#W=A%ZIvqR*(8EnD=onM3*@1mPfKIz%v_LiecJ zLGZ`rA2=idp_qq@dBXP>B6(3MSXns!?9S;sI!MnCNril&1sx*r;76+C9gklR?%mbT zAs={(5-W}A5W$x|p~K>~vO#|2FAiygAjMJv9U@GAt1oUmtd^_JzT}WI2xiz!hYk@C zeF9RX$dwK7--8v+Go&T6-;H$)crs#kgS87cNVp8MVgZv}8D^aVCXq56_Fq8OVB!5x zo{>~&Ep%d-MGH15mSL7EVA3hWEKtCtPKH^QfJu`Kvls!B5*cO*0w(=2%)$dqs$-bt z2AH(QFpCT@DU4y37GTm9!z?Jkq$Y-0Mu15}46}FuPnN@OuwdW@sfA&d31HF)!z>QK zqzr~x5`ak$46_gblL{DS#~&~``wX)~4|wv#vm5LRH^?b}Vx2JZu}WpajyGU(wwc8a pHDGe08D>WrFgeEzD^fNm!eK^A#d;+lu2_2Flk20+ex(Y8{s;bZD)RsU literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioHttp.h.838FC88C89E69BC9.idx b/firmware-arduino/.cache/clangd/index/AudioHttp.h.838FC88C89E69BC9.idx new file mode 100644 index 0000000000000000000000000000000000000000..9ba436847158a1e984b4423feeded193dec6381f GIT binary patch literal 304 zcmWIYbaT^SWMFVk@vO*AElFfyU|gILex*4 zlU>xQvd%?JkGqzaH(~b7rt9WOi{uvW{+a&uY3jA!8^VFg35vEEFL?!cqO6?SUNFyf zldTP$SZZTy>YQn|xw_&O%k#{VwT=Q!Ej7zk!r4wgNLs#aN&4eGUHAH(4#|qX-?uih z>e#IL&n=IA*lkujO=>lp{(~(Ep_S{Eo&7sE@onCkFk?%_*{_oxWyN2+pQW$T;dhjw zxH2~h=v;=P)U;vmD=0@5uMbr37|UWpoOY_WGi(5SIRAz~N7-Xcc8AV#ql zjEEw}h7A?038IJvjFnjU_Hgc=tNGS?)_R{m-nHJf;(8wTI_K;;bILxu{Pv#o=-94Z zvu+AS>){=zO&BqG2vsN)cJTkG$&q7xq2ZuaD5h<^(7SWEYXigGy|V@Ft2o7e$A#hT z41HG=UT-044-gMw?9|?!*LL1B^US10uMWN~Y^`q|->`$eQQxY%*t#dfe{-2wZ)i^E zfbGK)E@@^J1-+PCFFrJ9W^U7QhlU1CX=N-tKYe1;!qgG9w_HE1-FaxH&9VCD7td|? z^k?mWv!T_R*e?^>2fbW>=bMQUwNyj;w7Rp~DP+*n{QM_7++G%WjCYwC9MWp%w@nKA zKKa&l(cJ-c+V$73xt-oWKJt7m(@?+Cnxp3Z=F~Me(53UTm814PE?=&#FYLV|GMGn$*PbaQ(ow~sHe6E7c{Be(!ry~kwp{h1qyxl zoOC-}{J9WXt;V0e_TwPc60&tG{`S!>06>{TF%qx3ydFP18EfhPI9y zWD1HJ`eWg+?=I{lzqPNqe6?HV!-!|j;r)Ah-f)i#D8uqU8K{rTWXT05tMB}Cf z8~c|S8u(Nnw$0)2i?6;OyZCl9$2G%!x8{`i(z-_#ZIAf*AD-&+y18%q;+gKZ^sj$U zt7#Gjy-nurYA&*kJo@gN&Tj)_>jtcxvusC$;}tJUYFr)rsc6FM& z(xmC(&3BxgUH|UWlr~kLK7BB>XV<#>f9=p?=%~9*6DRI1{Hynih^pFN4>~Ur{%Ce_ zZhV2;&wK8i*$|&JcF@+^M%_%Oaj7jXj_rKOzk6wyDUCZXj=6OC^2fZX-O5*&+k4K+ z{$L)dxBaPA(e(O*+y4E>i>6CFCN`b_Au)T9P<2An?s22{K5P})W&5Vdsn4dktOn|E=)f%dUChfmlKyY9(P-Ox$cr;!jFfq(1mZ7@$aIYW2WYf+|p}l)j!V_ z8NMGfOnIq>)BNE}o_!m1`knXTH1*xGgZ+b)eWtX!(tY3!5BEV^*WZh{aj;Et(ui5D zo-4na^0DgW*ALR3$GA^4ztJ6<5Z&!aRoBFEHCG3@^hu~2yGwujkCvUExc;#ry3Z6+ z;>q<2y>)FN_j2FHp|w&*^xiyh$@{^+tIn?&Ty4|&#!fF+oOqqLXlB~8F%LDpH~h9B zvSeS4m1Dea`z}}h5q8O|nX$*Abq}UGZ(MacEn5ie?;ZJL?67pd)%}LAUfi(7`G+1| z%Et9D?LCtl9P=!+NB)TYAA5JObJorFR<25qacDg0#nde=R{1o~UsiKXc>Sfvy8Wuk zo19a2u1!So-5qakJ8%Q-lK#Aty`ykP-SFz^&Zah=!rr>NZpNi*SJ*`mODx(9UrcW5U29(Ct2cH@yjM%MkBt{Q~`3503h^<5vYS1b0 zZ_b-BT{pEUCkEo=t}yQrRC@%2M3BYP9QTamMW~!f6IX>fj*vK_kqEMk^F4MadDovd z2IA|bFt4G?HPlHW$TI#GwW)b;s>YGnx+%<$IP!>dl?bvl%xgQi-^Z^-9jWfEFi%lV zajN`-!!sgpIkosXMQ0%0;7gA1sw2FeM380DPW6Q*4KhqR(hFF!sWzKBN(5PkUVJpG z>-|v<2I5ymVNNBgR3b_QS-OO5nR|Q5Y)2ibR#jmx5vr63o)WRLd}FNe7(d$yW`Q$V zNK^}97DkYzYjK`x;=pnj1L+BCIZADgQd@~2OX2VtPjdb&bTyD3u;K4*zBg6=!Qq14 zNvFpydg7`gMi+(o7*QT0Mu{kF6bhw6!I=f;&DG1(m)`R*5NFuWHX?2#4idq6P7Yq& zcw~~`X&_-B2J3j$I^G}=Wcj;sFIU=M4=mkbvHPiNKQ%}MSw4wpqqRN!ybPo-NXl8k z=B%KT2(moMsQapAae}Xb)PPyGP~{eCk_fUyd^o*%K|&3GCX#0fISV4m2(p~&)O~I7 z`$&HsY2~RfpX4+rIXj6Ui)-+%K_ltxKm%zDENPrg8n7^eENk=bZN5=5v6g{+1#8LV zRhhg|BFN(Pb=o^q#n{>~3mkudO@LkH9~@phrG{f%f@2*=qJ@*)NXSOwB@tw4yRmQZ z@YoPD96pG_Tq4ee!)F9pP76LxExP{zEMc(JpE>={oU=rbB~{U;URZO-U|@lz?x3n2 zaQKWMOU9GaoflkqT31C3APOZ^SwgEw#3Bkpr6{}$YxZ*MkVgy+R@w-=iy~4d296xM(AJOk4P7*lOx53r^)Ir#i}MB!Vm^ z(xLc6o#`zNBoKCUma5KDdx;>+@@;uenXhwzr7sBf65eJBuagL}baFBU*mU-7t0Q$_ zmQz%FiW((?EYmu>)J+)rqAknU@T7#-NCa7i*f(4L*U{mf;AG*85{NzlPL>g5nWXYR5%~M=E;`}> z$2M6t*|zcz4mTVABq{OMysie)9){;}s(GAABFOS8I_HO<25bvc5iLl{dZJuU{3K$L z6ji09+?#Ee{Hpb_Fdb1|Gzv2 z&+B6#jbT5_h<+KVA`xV{@OS5|rojyd7>Fa>P!UlTf$d-fSya37wBtvI4m6OCu$E#@ zRm|B-1X&JnLs$FHG!ABhoz9bV5Nt+}#V&7xE~cZ;w{ZL*wdsVU!xu4vEGw1wa(z1< z{#Hk7!wsFL+S8z&7(tfxUdoQ^QjOA7{=wk}-Ti)ge0bC_9SMLL&QSFk z>LL+jNvczC$Lo#bfW;qd#}mQfiQp~~Wbs~eT{Sv+;TSNMAp83{<$lgdBFNGu;Z)AM zt^Fs!I$$?xM3n}+VFX#un+L6_@~nI!96qq@BKlo$_>3Tn&85umsvl5?v*%GkY$`yo z89^3W_0e|K*0B*f(i?Vkl4?)FBVzE6ew(BU+Am`JI6@gbk;1cBx?c89|nBe0q&}+aPHg2qdta;%rWV zKr(_X5jQpMJZg2C4jTqJdB*9VaaAOOEGMtpm0Yul1eOLc%XZGVopX^0vP|pLJ}RYF z?i>}-!SlGsDer+gX2kM5Nagdm@Tf%}ZMzq99Ek{m{hlN5IWLLeJiqTu@NE#b`v(;f zVV<{~@-62l5&4-F_0>H(u(WUpfu)8!hC5gO z!Qlb%5rzhzLRaWWbC@BEnzBGgGJ-7Q>l(%m|N7HPc{Z=Ji; zSjGI&WI>e-;=~BDEUB?ABLSfridDT@oI7V=u*{`Gg*FL|qPDM;GkE7DDO64Dgjm8E7dhp@;^)h?pPw27U zK>ER2$^@G-K`#-U!zCm-WbvYw8<>NZOjXHXxEVo~@xPxoU+=MElYx8<(tnLpT?40x z5oGZUFLQ73_9L)#1f{W+sJ0S&i6BdHBeNoG#qKRk_RBd^4zkY(vK*WKV0nv|TYlD& zAd9R}Z4Pyo2(tJa#y#u&bjWsat$?MJwm~FW<{VYPq0V4kE<} zvPAWJXf!U`wI5Cw)>2MX<#4);AWMf=v!@nyZk7RSfjdg)l}M6HUj^!v5oDQt>918~quQTU5nGV{B2HPvc}T?aiXaY!7jTPAxgXXsAs6NW&G3;^ zeFXi_2+lJxA}r-CLUe+7jIAeVBO)%oHr^Q6I81xh)$kOQGydMdvz-gTX@uowQcWhclL)d5%=)QipPQp^u|Q=rA)6skVFX!X^8Z$@_;lV|ABT-34RC2(oxA_dj0PTyc-Rf#ZVeIJ^NykY!Wu;*h>& zgMp|OYTQ(AV&xwk z{z;ec`a|&de}K0DUvh%loB(CW2(r{$+-TaA9_7H&4g@oc3&`Tk5@>pJV9WSP;-Qy-On@*&%Bw4jQH4Kso)H&>3i*fV^`WANtSmSc%B7MyxU zkfkic+;PY1`cL4NVY$)NCYnNkQAv=c=gb=y=gsW~EFIy|=L@QQ!CoTBa{JFiz2AR5 z<*APJ0qwGecV5F+l?bwQe2`&3Yw`K#AS-ZelQfg;D*xbc({}DF?GG<6GmtK@jtji% z0^AKF$kL(r*bN!|Z@gho)N zqmHzObwmkKhRQ!UtcV;jGAgXDj88%A$G|B>Jo;Uo{O0+U{v7D?Q`B^dR%QB0p%B4g zcREeIu#NB)%)qcK43tw>g!+a5+MnkrL;=3(#18|6QrC*yYK85n12wx-cMVD!HG3<) zKWkM}R{N|KNCVY~7Ep67Wi5@|3RVVx)(TaIe%5NGZ1q{|EAcCX{J9=tkIz~|=#bC8 zA&#SQoCY5XHLvFAYEFa7mYO$nbTg+x9YoFBIJ%9~Ak;w3J2|?OQzJ@3%^4ic;4~O? zQ}aWfKIGNto>KEwO0QBiM%>hVn<{Tp4Mx4xd|sgE1vMf-2nce-%+Nq|hIc%=lW?ly zjvB5lk@_Uk00e|Y^BbY|8=(O@I*1p-wK1>|T`fcjK~pk_5Uq!3E+sWfNh@^z5Gw>7 z)v`*<06bRFJlb zm)psNBoj4yRwB4lzRAR2ZdVXeLDU#hix5ZqRuF%=y@V%Acr_wYAg(+q<<;m1TiV{G zd=0r>&eL*UBe$a|iKc2a6|g?)8%_P?_EAcXQZ<6gA|S8ito$S`ZQrwkKR!_r!Us|& zsPVyB+SSX1AZ#O0t`W`Gc;{=p4~8+K`4->!7T*@_xCpwU=0iRNbp<%ry!s_?FE9KR zZ~uy~Dz`uJ0iXE#a(g~?o=<(`jbu=#4C;*=(Ma$-J|WSZPnG%9h`I;ide9UMt4Dkb zL3$Wq2t5XLubOrId+WN@jyyI0CuRJl3KR}r`sz^fD@RT=zoN!h)Da=hE)viWU&G*i z)OD^iM(pUnq{s=B#05dTAn4_zFAy{Zf-RbKi|z|}BhI#mo;6$|YqInHR*Kne2l~TFtsa)+~2|d$DIS`D4Q1!t#u*?SzVCDk`SlR6lj8^j)S-IliN z4dN-cpA+qKVnD}H1m$8}$2+375#cP1+o&TRjtGGyIYCtzV~T(q8aD`z2q}VRAQ+Pc zM+7QG0J~|iV1qcg2-vG#oYDzl*-oCfA1|Ej(8MSLJm9j4^F=RH1lZa89v6g&vAVX%w<5@&aR+rnffOMQH14Ku7$S-whQ1}VHj16aa?)2+ zkCqc$7{M4VxM2(}LWE}ABe-G6hWk)kHdS1PHAt^)Xm#5s+4ViE;5M*PxA5JrF+DVvFJ6c-H2zKm+ir~y-78Y!oV zJLDs0gf=?)usJ-FtAgWI!5!_-;+GHN2AlX6@H7F_^~K;6PDt=75kj$zIZ=3jmV_uO z4-Cton4_&wP+@t0i~`(SlF3 z5FlShjG&DX?B(`y!DqP;fG8(Ov7n6;?B(_b!F_|^C%=M?f_9@|FSnBg_hi9Oeig|= zV6qS*w^IadieN9d_Xs|Fga8x9@UrtVA$)*w1l#~iAfui~M?)o=GkBW8J7I7MdW@%8yc1e$(fm74f9IX# zh2`=zmv_R2iRK49eZV`(j`&JSS5hZ*I5bi|8W-N<;I}7T*LP?S!Wv8J$CCC4RAHhT zqIZ_1#!mRy9&C9>I_3nL`sU>~8Zl z+{|1OGM6;P14c~+V#iYRsH!kE4+AVOk4J{uA09$B@y;fGviUei=sBX2&Bb{_&&zF0 z+oNj1v^{(S%h}^%(SE=HOVOiz4d`;>+@Z|XgJBoBf@7|%K2b4)M6!%M9vEiqAxh2T z)p@*8j#BgZnt6P%+`h%T-QxW|k6K$inaru_* z)GDCOv5i_2w!k* zTs&y*m4x3Wfzc`ubOnMQv5CHe)1qqh35x`cmqkeywZkMn;AaATESNAyg5E7i@&ZA< zK(Lh^hn0eQrC=*N3R?vA7Qt3_4AKO3nqVs%{zHQLkYFnt_H03&E!d*r25nMVLV^;9 z(J#1GtYQT31ylm3&f|=j^~U%?DVpOs8qaCvxOy!|*K%4puKtOmKXF>w4^QG~5~uw< zK=Iqo1!8~#9zkU}3V!jPdw;wW1|>~{!(U2+m(oyFBD-gG`tf-oKOGM97-u}jnb5Jb zm^JUk#1G9HR&9-xKLby2sJFV-*PRj=0d83f#YXoFgO6dEfGsd z02ZiVzo3z-VB~LL#RJFyh)QKWjof}r=wsr86a8~yRN=7o`@Hr(Z@@gIMyjO2N7AZv zUgXQ01<@b?mc$M!MerdilPPkWB~#=!OQy(emQ0b`EO~Q23+a@`+zFw zBmjP78*W1UNHj<2A{@})7tN72kp_I57U@wY(J4$;I-cAAoj zLo#ub!<`D^P(j>K&4}Rh>zDA37z9|LX8TgU3I+=nDA^&Jy2-ZhJf-KU7NZLbbnI|e zaKm86615mh1ZM1JQh$(91-H*>}-=h0rT<8w;OMonnLy^RucatMen3JApsJ zYMt;C=v#vW_A5_+Yi{bs4XFcP2*`AuaW25 z%hSEQ2IsS&gX#pT!=tgZ4GGjyZttXYC)LQY_8v<2P>mdGAENXS)gTh8kqWDDeRu`1 zK2}bJuM5>K46q_9JR^idz;(_dZdt@b##3$*dXuPR{3M^ye7TLKR(PfsJjG)j?~Qm0 zDt`DzR&a&in0ZOl^y!)2fN(-`(2z)75u`;`52rX^pz{TH*|x+BG+uC*ZOdkXZWi3} zD?k|vG*xiNO^W6N0zDwO%eLjDKu-$pvTb2yUbrF=N_=dd3Eo)!gQrO~Qk9pi!&s>V zGKl{G)-2G8r6v`}(Jck7$tuBc0G8`gHj`IvRes36u?`ILTfyK;B=ZMt}iS2AdFN}S(4$d@&IK+@Ds5EdMcx1VPK38y%U-xA}fBEzFRY8AM zZbRr%S$>9R^z44vYISTMNSJ;R?_xQcMXoAq(Qt>gY8n>w-1GNF;EyA|5WZpThISf0 z!D`abwjs;|1FRqo{ixk9ZtU5#)$kK+?ig`BM*LCautW_$@uh9S!Zg6zuJP(?yaQf@ zC4O+pTd4`{2D<02!}Wd@Z^CfmeR` zJS+Bzcm4Evx-W*RW2l3ygMXy-M{1PY^Qn6N=i^JMb}4m6*TNE?XxCC_j88y6RaV{M zse`Jd^a?e~I{hkbaFw>fHm(y+j1}SG2M=;XJ4IFex&zMmvfy}Gj>)R;OITn1$+a{H zy^1+gG3So)o<-}MDmZskIhK%=%q3b3NkzCt(^le+*J=S1$Tp%yFhPWhI8!-s$6`54 zjgjqL-Vx0@q(!J{g=|GEMd!B9sUwEEkRTLH`GPyTuo&aO)>!c%Ztc199eJ?H(N3&QeX z3mjtn$hpaINCF`V#1`=qs52n7*OSI5&=!NI%ONhZ!Mj9smxzmO@GcRrOC(Tk7ZYtU zaYT!0Q9HU{co*5q#8Vni^|BS&PmTMj8(Ikw>JyF21vgoL9v6(q1vk`(SY8Q7$BHWP zfniZ446ss49Iy@Qwf6X|vAf|+OE^;r=OQ~TvD6exT~MG=aA5{kaEXVFx)uglnI$S3 zTqF#zs!AL{L4g5QONooYT1psTg_L-~Pv?Z5^XhcrHxTL)ftCmcbY-x#5jnRCU8OU_2Bw8RzP%voD; zZq7(BSMa*pRdAi~by0Xt?Y5Fm_?oEs9&fzIJK$@f;7Ir-(3&U$)Lcr9rPKjm3yK;n z<;!$0$~X+La!p*yi`d+lhB1fF{9D8FKd6Yp@CiHzR^Tcd?Ek-viIx&~bie*t*3_xZ z(k-=8re63rMf+c;X!l*asyfXA%I%9O1@gacg z#j1d)HPJrHlv=x_YaKsczW;iD4CTuqyBy9>PZ*%Y<}fm0sF5749zpB z&M!-3$}Y5OdACcmYhWxAsWy@7F~YI5t0q$K&)c;UX)v}Cih>zg2|3DO$?&5Ciw#lN z;aU@E-9*|7KVd04GF%Wm(5**k31(mw<|xf*pkaWOm!qn}x^hVBr1CVC7iF*F1+RX= z8_;L8l)&iU^Go}2Pr*BMf6I**{CdHM~Q?8 zg(`EY4t-S=aai$}=@YDBhk-A{F*JrS!0Od;>L0vo?LB>F?cINc{l6A=^cCT3S)o6= zWf&>}q{yoL@zBBP;$2I4AIviXq{!R6<&7vmh|9u^tmq$w9TRpiV5#`W5V+yvZVdz7 zCj9}>vzx1%7jlW_No0~5E8fA?%G)8b}>_-lGnuy#3z_Ug8H;z!kY)hQTfvdglTXd_(t|i2$Tp-TG@pr z>pwk&GdsfDAK_i)^hPFcm&sSb^ajL1yfKG&K{yVS8E?42JIkr=la!pK8qAkiegr^H zQ4J>XA$3VfHq~GetK~-lD)Ws+xmXoXe^#@)e#`9lbu$+{?XJ9c(#VdG2)YaobNI9D6wJ z9`3W>!W`g04_VuhBgPN83I8Ps>rY=0db1WcV^nxx^xLza-iEkxsD-Q@s6R0|!5zK6 ztKXEUMVz%`ZPAq)hb|X%w|01~ZQZ3yjxpZa@yg+{U*GFqsn(8;=T7+#U8Vnk88$9x zU(-3|&+Wsk9bE(8KKsV)>izXI&g>tzIISLsZwRaB6!-$H9hlOZxc2vIquv~7!Qo`q z4pg}a-*5%B3pVs@vOU9E8iPvO+JRZ%)}Aeg=wFZSz~L{at+g=-b6HC=5ZAKpGJgNK zw8G&Wf+yBgGx}yYIX8DNiEj~lPGjwue(n9hXpQGEYe$M9snexilSWxPM)Ymp&9k*G z-rA8<9>~8lj4H9Ff-xg#?Lh1@>d=Ga`wQnxvtFUK11&NpE;&3YYX>I3G5^S6qS@Mk z#dCNa3RHI14sNt`D{QTRW7+S0+7vK5&4wqf?ylTjHG3OlwE~bi2rX^$wo1cBDn+ z{}Nw#`nt8_?&+RQ6x;ppS+SzQ1HSpL(UGN7tsM__Vfl%_W*o+2P|OlP{%|N{??`J$ z{fReb-dLFUowXxB+fP@xFLZ^qqv^4!tscJ$TyO0dKXPT=!b$pMYe!=Dxe^YossgGcKS`?*SXmottOvc&R-y*ypd7 z`=hFjer%eN^nk;XDQgF&>8+*(A#iI4qIA{{#44>FXxXhc1p_u~2WD)n9hld(c3=n> j6*(-*$6^)Wmy^;zVqUe;Wx(laJtmRhx{6@zRw(`-44}&z literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioLogger.h.90A6D546495C4FD3.idx b/firmware-arduino/.cache/clangd/index/AudioLogger.h.90A6D546495C4FD3.idx new file mode 100644 index 0000000000000000000000000000000000000000..ca6e61426c0b745e34297ab2334ebe5108817d8b GIT binary patch literal 4058 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 D7IwgA literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioParameters.h.A60CBAA7150456E5.idx b/firmware-arduino/.cache/clangd/index/AudioParameters.h.A60CBAA7150456E5.idx new file mode 100644 index 0000000000000000000000000000000000000000..fd3e056b61c0922583fb312050f9517bf7a1acec GIT binary patch literal 4930 zcmaJ@c~q6v7XQvC!}WUZ#~rxyxtGDqD4~!z<&*{tDdfEp8lvC?sNs;J zQf8TyF9}hk6K|1bft$jt!d((5nX<9JGSgt z@y!osny&k8s+_#L{`{m7&gRN4QFod*W-c#w71~Z8e*EBnAK!C@ANX$g+AT3v(mR&^ zr@MYCr8Yk5x4LG_q_jQT!&9dIduP$ux&FfrsK+h$99X6DpS7;{(Q`NA#IE1C8zu)_ zbmgDCT{`V-mZ$TNCrd6rIh6f=V_4t_&z)CmU;nj&xo(e3&#g{An3&j-kerf#uKOv+ z0-vVbBlcn0kzX{wIdxq8ikxHmgtw2?Er?9KXmdQ+_F0|v?pv{rviqUqa_U|qWw#U3 zMjk!dJLaY+(Se?5uEA@+?bUQ{IDSYr}>Y>=UW46h)FUB^fU%2KM@bswVogu$Ze)8mQ;}h|N zZLc;7p2hQLe&#C(=4O58E&i7}X+?dYz=lXeEL;dGczyWWl~KLYkd)`673~0zl17=i zK)A|ze~mHP$4?Tq051$&=->k3CGVH3j~DF)*aooM>}FgboH?s*nC{6*fV;_XkUN|U zgf+YGMU20mP5niUL15LyubLR!K0;?ffRH52_g2#SDnq~X#sEPDdw8547ZHs>GxHFR*VFN37QFZE^z&4 zgZt@gRjTLw#V+8(2)~E`F68x)*5IDu<>!-HMsE3mc7!5n*>GRB7AZ)mAPrg6tRF%Kz3l_xt z#jClHE$GB8cXOzIQ-GoabIf1Ab>M9nFcNp ze(%lcFK8!S1-LuFi;auzTp+xx@efm6&)lyhF_gcd)IfCbhVlnhu9Y|Mypm`Bk4fxe z7Fd)jO2-AlbL*bl8g@15idKw;9MG9`HZBk@IzDFUrjpG7$H4h1Qi_cWgva=Y?Yl)eJ#l^N&wsZ1uD_~3WwOBa z%io)LYDe&q7I+xg-fT46xInl;s*07)oc;@(16PYN#V{@q-dB6~Y)s9cvve}cU+5w9j4`~j?-As{V40L?`_7g zqb!Lg>9815Hrg=Sf*Y%O$;S;SD#OhU<>HBSq5i4Ep%5!Ff1(;vCrrz{iPIP*FfH>XP9s&qbSqDyuaF=Ckl7JkeC@2g_PL{V zu^nC&*%PjsWzMo=%u|+Q%WvgDq>tkY&b@qhghy9QZ3OTt5a4_V(Up9KEJw+{qglt4{q5?{RklE!;W(-bAptc z$@H(7RY8mugrON2JpO9V|H?b5b?Q(ADT}a1MB}Sb7H^FAswdSXsG9UZE9ArutRZ1& zCWWp*b%t<=Q zjOYXKh<1+GD94avQG#7=P0$X?3XBEqk3?B9u@n;rdW*6(1b!jPcq3sOy~mZrQmN?U zu0E~3jpALoA3?B{T)jq`{yJn}ybgFvZh%k;dmr$Y-lBJ6x6qk)K+3Dt6Nsfy^j!9) z%BW?DxAqar>8`bB5(LaTIKta13>ZjYxjVv>Da%vk>CowgDKoE^ef4@HY$@|8Zi#M( zE#=k;*P_>8T5g$e8oMPQ%Jvay-#;@UqMk(K1?0?#uO|sOmNP@{sW24&Dmk~Z&&r0A z9Tvb*!`^r|_QU+94wZhh2m7oUKj_;Im9T|_>v$J6d<>YD`!;+Hoj8@ii9gt|5=V~j1ZMDFU)671?=T5jpk z671$+T5jdA2w-)FX}N{NO|W}2Ql>Fz7%~-vDb*X%Gn5$&28JUw@9*$9%A#qs5nW4J zOhil%G=Z|2`k8i238?*ng|9Z~gVevEEyM17RDy^|zA1tx6T3Y#Xs|^FDt&v26F=Zx=D_Qfe~xxZqp4 z!9~}&Gv{TLLW<#7z_@Rpz{hEyz-PgFK`?dNC-Bbg6X@*ra6o^zTZP%}alh;_%PH@` Tyca~aGcT|>@Z$XA#3B42RTWI# literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioPlayer.h.07A4E1453E9D4417.idx b/firmware-arduino/.cache/clangd/index/AudioPlayer.h.07A4E1453E9D4417.idx new file mode 100644 index 0000000000000000000000000000000000000000..71c6cfd014268a09410c3f7ef14aa3ca873245ee GIT binary patch literal 13718 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioRuntime.h.CE590E00BEC551E0.idx b/firmware-arduino/.cache/clangd/index/AudioRuntime.h.CE590E00BEC551E0.idx new file mode 100644 index 0000000000000000000000000000000000000000..7db1f5d5a2c7bf713b8fe78560d1ce26b9f2843c GIT binary patch literal 642 zcmWIYbaSg>VqkDi@vO*AElFfyU|w1yj;l4%-yupOZa=1Y42hS-7oJmPoFrK^z){F-TCt}TE!WzOg$!EaqDb%GR|AD z*>R=O_WYt?#nyQ_S#x}E?dZK&pi^=_X4AuGs z&vpD*IYsns!q)FDCxg57mpD&s*`ClH6SwiPP2EkOt!L{VX;k>=NbLAJMa1*+%Z=B9 z-)73~*zt?;?UTq?o9q^@xcM;kaCoQe{rz}(3)BH!@6dE(!+^i_Pey+xgI>m zx=VBVJfkH#eIeIH7REXVAK&p+CR{AwOJb~(fM@-pd98bYGTuF~_;PV&Zjuu)Jobsd zHLsQo?%-iyWnf@e6;_o46AYY8jLcjtjO?tL8jE|GUx@tSVc-BNkm8XN022(HjEtOM z1x2Z8#m|8z&6>C8H$(PrUPc~vb$)dnn8Eflw^#hHjtBt>bExwH6@tNT&7z#sCTw9q zVT~${TA1qZ^YRR9{T}6mgzGdq8DZjYT;DuUadNB&ip#UfbHf}3lV;?CxEgA>=$S<> zcb3^s1DWEhkpWXBTYIkH$*i+mK*E_CxlqLnFvEa`fV>A2wh}lrck9gZe<0P88uBnh k7>ZJJ5{o@nK7Bs4;55C;9}$hA0{vDi#nm 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioStreams.h.B5DC87C79EBB6986.idx b/firmware-arduino/.cache/clangd/index/AudioStreams.h.B5DC87C79EBB6986.idx new file mode 100644 index 0000000000000000000000000000000000000000..a33485062e1134f11a326681ad80801527239d6c GIT binary patch literal 54900 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioStreamsConverter.h.777DCCEE6458D3E7.idx b/firmware-arduino/.cache/clangd/index/AudioStreamsConverter.h.777DCCEE6458D3E7.idx new file mode 100644 index 0000000000000000000000000000000000000000..ccd7af23b709ddbfd3109149f2481d5188efcadc GIT binary patch literal 26364 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 Bqt5^U literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTimerAVR.h.F2696F6A8E1AF01E.idx b/firmware-arduino/.cache/clangd/index/AudioTimerAVR.h.F2696F6A8E1AF01E.idx new file mode 100644 index 0000000000000000000000000000000000000000..c40c6b0fad94611018a688ce9782c786ecec9f51 GIT binary patch literal 204 zcmWIYbaOkxz`)>~;#rZKT9U{DWD5ataY<2T1CX8z#1(UVPi*8nWWeKk@n66%mb*8U z5)xbw%)7QO%k=2Pxrg2>Yq4#s&NKFU#@w)bv*o2ZHA>H%?mRwX7p`mZJj684piB3C zip->oTK=xlE)$ok>+yZN^tQRY@rS9m>><8P)r$e4n-AwY{Q0%*_V@H> vTbs(qF1N@juFOpWI)R}mHLVyz=OlvY;-chYZXnIXXqqFQAKJ4)l7RsLE>}Oh`nGak{DeG4tp= z0|K#Vgd&K@>9~~Sgs!6y3B>TAA}Ucaf;z=fVMj;=Lhs)0Y2V%V+wS>2|DWG|X-SER zu`US3?@TH(=IqaMMhMBsYu<0l3l|`ybwa4<^l(~AYG0IexO(!=i4yx zSF}8F?v?fz3|{dUX8&&e)TepCXMj!j%k?gF53ad46PNO=b!1az<6mFw>}j6gJ-1r( zkyCj3-llhV^qhNoY~=a1+O8Rs^1e{U-q(YKbhE+3ePh_055WmO-W zXt*{gFXxlGYHdqhJx9>;o1vx1Tx`rhoiO6QjGj7>9 z)$&@tgu|YM*0Ne33P5}2iqoES{q4_T8KG6KDqjjf2N-)k>9&pPI4mc$hSjJk09|G5 zN?uBp8dxN7K@5jEIR)fK3X8-7M)!#aJC$h+yICx+Wo`S<+VAN`xxq95fW1bY? z#k_<96xgRtSqX?8uy9yPXkXS>Mgi#h?S~s0y>_2xFh}T6Q7A(J=tA$>Y5lg9D?%hB z)mb4cqd==8MA{4aZqNM^)A9`tySdVBAx6O}ydXZOqigZ*FXFE`>`l_^7@ao-ptr_M z6>6)#yvtz;q17U_f&$Q0Z{^nqFN{5qAP-XAopskya8#eTIo}^~`*WKsb|MaP7kLl` zhr_q)Qyy*cFMP}*OdMobCZpiko+)RSc{6rsKp>{Khs1DuVzwV1%y4sJwjUhK79X4W z);qQ}Sjs5nN)_xz%IJ8V8dd>Ux$@lr-(&}@X5nGmn6=+4#{ft1lp z^xlvXG(u9^1p=|43<0K!fJ&eU(j_0xM}e1^>H?fV7fw<}rBg-1z*0sXtPX>-iK$i~ zL{w4G_wa{=%cME%in;&PfDm*;2D9sDMzLc$^UxuV3>KgXhrxcnw)x_pmof)PtTI>` z3Y&vpfg4p7RD!w5ymm=}8QLOdyOh8zzW8W(?WvXfB)4L%A^~!OxJX}iWjXp%$Q6;` z1UZP4U0n_*Uc#>d5=2Jo+7$)^BU4U()-JLJ_`V1_`>wy7e&YDp|Ej7@Jh?@7wc7*M zAQ&&rtBrZ@;Z3-aptUl0_@(I7XlO{F`D%5wCC+ml6h~QgugCwiefEag^oBWzRKv_a WwC-+uud^f96U literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTimerESP32.h.216A1C562EC37EFD.idx b/firmware-arduino/.cache/clangd/index/AudioTimerESP32.h.216A1C562EC37EFD.idx new file mode 100644 index 0000000000000000000000000000000000000000..18f6e7931b5967aebb3f9ac20e984bc84920673a GIT binary patch literal 9966 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 Cuv9bv literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTimerMBED.h.F541C923872E75CB.idx b/firmware-arduino/.cache/clangd/index/AudioTimerMBED.h.F541C923872E75CB.idx new file mode 100644 index 0000000000000000000000000000000000000000..994889c35dce7b0ce2d7cee7678cb4fddad05233 GIT binary patch literal 206 zcmWIYbaOk#z`)>~;#rZKT9U{DWD5ataY<2T6Of(<#1(UVPZ;twIS9BV>TUTGXk{(J z#cgeS;1EyZp+`AsVte;ZjJUD)eduHrJH`r&*~)qs)055}VYd3VG{bFv(#3CGo;kJd zj|FpB=|a{JKGk`lF3uPwf?=ee%7AP=BcT_Pv748 x{?*Q34AV3$W*1lHCIKD6P?VZh454!pL3D9ZaxpiMW@0Rw)Df*Zy)ur00RXKHO-ld( literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTimerRP2040.h.87C632A42E686E5C.idx b/firmware-arduino/.cache/clangd/index/AudioTimerRP2040.h.87C632A42E686E5C.idx new file mode 100644 index 0000000000000000000000000000000000000000..9c2f44d0e8dbd46eec0fd71b07f50676bdddfb22 GIT binary patch literal 208 zcmWIYbaOkwz`)>~;#rZKT9U{DWD5ataY<2T3y@v_#1(UVPdM^583?!~>V?#?gum<9 zRgm5zx8Q=JPt=^WWiP(=9%P#y1+vib#@W`$` zdnbLC3ajIKb*AZv^MV|O)3LAD6gS3AJpH2VLv});tBRzL`~;#rZKT9U{DWD5ataY<2T6OdjA#1(UVPZ;tYGT?E07^ksyfpj!0 z&l(QC2WIu5+L^L9HDlxh4L9t4Z#p?;PREOv2I_uqidnplIEYuQih40?XIA}U&z#E5 ziW`plhArLJ5j0J4k;Ospa-Msw9pRI#+L%9zxjKiQ^~+QK8gE}V@9Kun=BbT;pUP^_ x**kYOzlW<;NO5Iu63`J0MX71U5IQFjL>Ct&7jpw?CPt5sFH;W{-IQlw008$KOR@j} literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTimerSTM32.h.6D9151F3EAA88CD7.idx b/firmware-arduino/.cache/clangd/index/AudioTimerSTM32.h.6D9151F3EAA88CD7.idx new file mode 100644 index 0000000000000000000000000000000000000000..a74799a11b7be8b0f7835c59585710d98b32b82d GIT binary patch literal 208 zcmWIYbaOkwz`)>~;#rZKT9U{DWD5ataY<2TGmxGS#1(UVPZ;tYGT?E07^m^qb@Rs1 z0|yScSUTL=v1+P_dl}bt_Yj_(_tj_5%lbomi>zY|w z%dRSJlJ`esODpTl;~qyH!fKwM+3m6ZNNEv!i|(c!T9bH}3IAH(K36^P*3a2{CjEO_ zyW{7&*jfDN>n!dt6j$aZ0iD56l$uryp>q;Jba7E~F*lHAVstuV`s4l1S=SgC0HhgG ATmS$7 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTools.h.D50B73232C8454BA.idx b/firmware-arduino/.cache/clangd/index/AudioTools.h.D50B73232C8454BA.idx new file mode 100644 index 0000000000000000000000000000000000000000..2e008e3ff84803eb40121da0776e7f00f01dbcf0 GIT binary patch literal 912 zcmWIYbaU%qW?*nm@vO*AElFfyU|@^kfLHNW*KzWodz#7?juU~cmg zv~;ze5oF==I$@dNt&2=v-@b}how~64$T6q;8(Gg&K$@3$EKkbYE`p@>$x0Lr{KR$i!>XO#w$VltDw$fTyw^Dq;+DS^4{>w7n zwHt4ocW&Ek8ObYU{C5lHom{NG<|xCtQ&32;V{kAWk zK1c~`bN%rxy76p{a^;L#wQE8LcR5O3?Gjlmch}RnRkBb z>M6|EEQB`JCG)6c-95JQ?dv@qcg_S(Wa$g#idj&%G0^R7&W(v_%1Y+zMK+YpdSc=v zd-8~tVEC8v)xouA&+#j4z5KGcGB*hr84N|KX~nKU`as+NFIju$N-^>{~H zd7;3_Dj_K?#ly`j%P+zvC?+nfC?K!E!pzCeA;c#mC(6YD@)HzD!Waw;(g>y?g2{_u qaw3@W2&M#rDTQFNBbW*ZCJ%xshhT#86civLfq@?;#=yXVU;+RjSKhM# literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/AudioTypes.h.12C05B5A878D3BD1.idx b/firmware-arduino/.cache/clangd/index/AudioTypes.h.12C05B5A878D3BD1.idx new file mode 100644 index 0000000000000000000000000000000000000000..751d298a2e9e670b593016582e4829090644810b GIT binary patch literal 12550 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/BackPort_SHA1Builder.h.EF770EAA002E4548.idx b/firmware-arduino/.cache/clangd/index/BackPort_SHA1Builder.h.EF770EAA002E4548.idx new file mode 100644 index 0000000000000000000000000000000000000000..3aebce3e13daca0df277642d966d407555b22738 GIT binary patch literal 1112 zcmYk52}l%S6vw~$+??I{#@%sry>?wzT$f17%7_jVLNhZelPFA4Jj;t>w?j*z%eLsU zwacX7@hpdGcy!+@D zkz#WauLTcHm0Hj4Z@Z+G?a2wpkJ=M{sUpWLYi^}lJF3R~+}BRFKDCz&I~Uv1?*;0o zGC~{Q-Ni)(irr1l3Juo5$&Y*S$q?}3D zUbjYytwRB7tf6T=(F?8s>CtWFUpJI=ZWXW^BQ9JF_a{cysD||2yhk1*Fb@TV$@4#++TAv- z#&c+cKq1h_6(DWN%CeLiNX68NMxpVawT)~)rO_>$Cypt2 zV!#F!d;~l(YK?mEL(O}d{GcCC%!1h$Og+m88W@SVb%C}Mm7*5*g?UhO@)W=YOo7TW zdyu)>v5ttVe?~A*bXdp1EAT{*^&G(Jz4$rg&XwW`%n@IuuMc#h#x;gOxPvKDJMsvj pfh8+HO)jxoGOS^A#pDf&UlI0!Z+ByrD#XI$2*xc7vp`4{ziQ)d7G literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/BaseConverter.h.8EAC9AEA5BE41B09.idx b/firmware-arduino/.cache/clangd/index/BaseConverter.h.8EAC9AEA5BE41B09.idx new file mode 100644 index 0000000000000000000000000000000000000000..2376db1eb1a7e290b53b8494408c3c016c503643 GIT binary patch literal 37024 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 Dxo%Jx literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/BufferRTOS.h.09C320CF58EE782B.idx b/firmware-arduino/.cache/clangd/index/BufferRTOS.h.09C320CF58EE782B.idx new file mode 100644 index 0000000000000000000000000000000000000000..6b31f6a54159c47e6f4b36e467f84159e8ace7d9 GIT binary patch literal 5648 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 JutZ28_y?e5R`CD; literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Buffers.h.C145669565850788.idx b/firmware-arduino/.cache/clangd/index/Buffers.h.C145669565850788.idx new file mode 100644 index 0000000000000000000000000000000000000000..0ca2ac1948effc2cea70c687e5cb38dd97f601c1 GIT binary patch literal 19634 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 Lq7A7N>+nASSv&yR literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Button.cpp.E2C2CD8FC2F7EE25.idx b/firmware-arduino/.cache/clangd/index/Button.cpp.E2C2CD8FC2F7EE25.idx new file mode 100644 index 0000000000000000000000000000000000000000..9ed1712f2045ad1d1de6dbd372d551533f1c49e2 GIT binary patch literal 21158 zcmeHPd00)``#?SXPcD)4_moIh@4MzU%jeOl4)=blsXQFJ$HQ~6Z=a}J zTP;ktpE+LnYWInsbXbXD+9(7=O-tsM;yDL`4G+CN82Bl~slDXu21z^e1DR?jRG+TZg_(~Vxe@^W}R_ob`}}ly(bvIiBHQi6L%w(< zmbl;AV3?Mdo9!F7@0?oaN$(-MttaUEZt^?-p;O)Nzh8RZidFPng35nA%~@BJJiWN; zvm~PXs79}cXE%IH{@&T~=An}3Ju;)$>ufNHFI&rOchFk=WZI*X_g7?WQk=4_F02^x zSgUPt&7Usc=G%7rZEjLnS+8R~-W!ZtbZoX;#)hYzd~DzTsIRK3nkJh$E@Hy`kLB(T zv0>#0eTVe=_~*Wmj*a?>qc{E8rHl1fo0;pkcwQUX=&$(Tb==_NOYeK#>r?e3uWmb= zztTDHsw4{1ESS*vxmVeO+_0Te`}q^?Djj@X7VYn=`HMVa zs!r$I%Isym{HydeGJYNImNrh~r#pL=zZmnt%FedKz(sb@cThxB`|N{Ho@^VJzhrye zow%2Kwmi*Vubz50k30^r=AGV8u@Vh;vmp8?+7|%56?V#v!<}=4Swb?aawtcL}(X@|U zbIP1YmxSm}jPE${O}k@~=?67)@-MqyvYX$S-}v-F#kh%Y|K58^Wu4fqUGB;$9#gjX zO|D<(vbAP&jl^l+tXo5!$Ic!xC>6)qw$bq}XME~T*<7;LaG9sBH_&wO9P{K1OfJ0` zK4kBO!0R^a$HiyDU1Q5rL1CNS7S!x|wQxd6@~(p~s_o{j%-EkdE5PCJF)!S_YAfQ< z#*=M520RO~+VR-9OsjmbNyMtX`SXU_RGJxGIC@NV@>I_Wzn^{@_UoF-fA>hV3%|d@ z#r+R`zx4TaJ7TV7``ny&wk)@KgU$7E^Q+6!;0_2 z_NRwByx8AnlK+5VE0czKOijPnF4y;uP9OJf8#zuVN58i!*2;R(&ylxJkNE3Bag<5s zV!2P7M=96*!>w(S=M3pve)7n!Fx4dYp^l6GxUF34>*=1e!`pMBjhR#RhC%upyZv5J z^7EQ(Ps`PDdh6Dm?Qc4)^FRK-NKGm|w}v*l$DU7rrg6e{*$0!bs{^~(I(-<_y}TkS z%O&|m^ipH}%Vo}|Jlbp@xP5>^k=|f|;|@jk*1eJN$AN&C>r5u8^#2_4&(e2q+b+6y z{>>Kc)9#Ocvntm-Z8+QDz&<;THJM)9$8|Y*aPorfX~w-(Vat0Q-#>ax)&$R8q1U^A z>|t|lMRi)Di=LK2Z?BIT(;TnNx}CDr?sBgX?UyG4M@RP@2pj)O9$)N!Zo#*8bCb6= zw0|zObKbaYiaMk2#K^US_S<*I#bPy2Y!sO~a;=7EDtf3r?d9oltPcgTY5raSUq;L ziPYS(!}cqdgO1>Cbb~7%=^%Zjwy;a2EWTcSk-gKT{eTI|LQMQpQ|EH z27PU~m>jA6q@}3e+_1qRR?jbN?`8k}E>TwZ@97SkWZ^zunP967o_=~>=&VbN;=1kg zb6T^qn9ge3Ca*XL8DxLj(_2J>YDjS%WRbh@xbqYG& zNE}?5(7|az znl#S5y{}g}bn@<|x^-g2yZe$p&Te) z=9|3cfe4y%27y(BO9wDfR=Y+muBf!}v_d7E86?eOJkshfTbNVn|U{;!MG%hLk`hZ#p+ z7*#$t8O;x|aqCsq#yPeOv@P~;oBHm^m(d?APO@E}^~$^;y|l3BIjG1o@QOS3;Zge= z2X?+Y?!8xfY4?ap0h0^$B;J+Z)4k^YW|h+3@7Ilet=KK;`c-!)>gAj5JXTlWpWb`v zr;E({${`;nx4ph_8Wi-O5!b(`WS()?S#7^HWawR&Ejnd2Y>!D!&B+;Uox0VPYY&W!bAv%t1yUC?0{N$~;ii~fy2JK1+Bx;)_{ z*Y3|(Q>|8NeY1L+pxeD@oP~yN;Zf6leI}SDxHT*`ORIP?<&Se4H+-CRsBYJYJw^Tz z#p}N7%1`|iR9CmG{j>7uB^!X3e5yW?2cI>@drmu&Wm;5{4Rhm7NRrt}e&( z?Kd8H!dgvUQ5m6^G%%%M=E}xHF&7#?`*dm>aMSds)QjJ~#5%oO7&sv1dF{|=dX^h* zrpN3rbw1L4ifUoXt&yd94u}2c21O5C`Z(ZJlEco`m(|9#Gg9;$hQ2-CC%?~r>92V2 z_TaF^`Y!p;Z>G595l&o;#<*#IC*C*A1CwH|71u-Tgx!L=-I<=ai=5aJ_DR z+31}3k%JWu8$T@BHtF<0gAA?@}c^@fA}Zv6GG_P)dM2?^RO zqQe4digJo^6ta?A^`w-7ch*xw%SLOmC{>`ufHDS5qmYf<#*mUC=Ny^&{dg52?G{M$ zl=FH-Aw#)gS4t^<=U6dK|2?5>5h$@p8H>oxy2-mW-E8QPtAoFP+24*uTLscLP<{iG zDAZNn)quA2ew{9JSnqrX799~tg-BV5ETfRU+}@Ouc4<}pzO2oaE-X4AkUn7L2izeF zjgXH}QPPQ!(4y#W$E;a&R3PPnGLIiyA9Z#-J@MS%k8JW`%VbSDwDuyD1cCAxYd*%>QE0eqxSIB8>Vj)CriAR+$D&|?l!-Mn zv2GM{kU4aqq@u)K^*QrY2`t(pkWxUI!gt$PZrpUcg_Sx96MP>WV9_ptv4Bpx3Kd96Seb;`C^T3;Sd+Ho z`>223r#8w=7KI3;T&$UkJ4T@)vLWp$sX9^H_3BUY$5@mokhU_)t&A!PIm?}ul=RMh z@PHaL`xHwQ;@@s>!OAU|OcOo1Ueh$0Q!1TPR)6(0i~I!A15iHTr*0Q{mnM?IV4v{K z>8@v+9)N|+f;@l@Ooyfipa+HX_mpT;xkZx-Y~8#{x3*K-6&CFk zNdBPohwf3xNN&`bb~~f}gdrDRx?N*Yia@GC${IwZVt{-=lT>_X?@wGX``uj@#R;V6 zSo1k1%H$|>Y*Hrc&rVsFZf4$R(RP94sq`ciUAb-(rD}5bwUaK4e8{3Sf#R$5C4;w? zTQ?2f>~rzbhG)M#RZ2D^36Wb(wPr`*Z$WA$k`Y(C_B}mt^m7&k2#r)AWd%QWeYt+q z*kjyh_t0~GN=UH+sQ_yhU@i&`l?`R-*kd>Mn6gj3`ZbH<1=207d5agfVX|RO;wJH4 zD@}y|r#lERX zw={lm!fr-~NB1$lhTp;{PP@S4!oEdo&ixbQ5t%hx$={OfWJ)Rmq)0YeC0!D9P<#Wz zo<z2py4ZK0dZ;&OOCj_WR#`VaOPIbER@r?+39&Mz4^@8z@;~cdWxQI}3%Qak|60nnvSfB=_(xdgg&CnUfNU|xVO-Sr3%jF@1gOYI2)97W7g zq)T@W0^CH*O{7b^M}Sv|d4+UE1F1ty9nz%(A&lLa*^PCnuF~C_ADOUG(~-^f)LS_> zDL@aCYkX{d97Qv16St|SXk@`)7Yt5RJ1q8kkJ<22+Jm3k)rhM`R(f8j12l0c@9jfapns(Mh ztz9W?c)i{F%J4_Sc$&pDi@6l%i;FCl(;~Gw`1=dy2EBj3{e2GqJ-h1|{{D@aYs7|> z`z>yIdZ&t_e`|8Fb}lxgTasC{VXjSS@%T|pBr;)4G-=;R(TQ==q&Fo+7nuu76@(OB z8CSKaI9)cKr4yOdx-o8QQE{PcAxoDlsr6ty)S}`F*$S3U6;kWN_^3t2wX(G=ojIh| z4;VjCi-16o1p-T_5@7@b6AWq*um@y&fTiz^Fd~781hoi=16drfbfFPO5->@i76GXs zO9hr1DTI*$Oa`b$z$uWO0+!Aj!pH?C7t|skA7uH!(%DEDmw~wqY7uZ9WY>YE793&R z2Ie-XMZhDFJpz{MFkzGcQvzxcPzkb1VCl>zjMu=t2DJ#N0a*>O)Vv{#T3~8HEdqXk z><6$^2MNOuF@8ub0s@gN5V2He2qP3Rp-3$P!jUW-vD9KCj0nU;AhifcK(YkHQn@CK zM8qT_wFo$jWQP$;#fva95tE73A|MCJau7?cXTmsxm@`N%0xlxiMa0r=h%gEeQ-IVW z;3|?`MJ!cB!nlK&J4h`89wOO8#8P{RFrFah2~vxIDkQ5yEEOlhs76dRQj363NcIV_ zRILc(J7T^gwFn5nvH;A|{gE(&FcXB;B48($?Zhk6RFj6s-iq#?@3(K-FORaXo$iuQc%u>l9Kp~bDVwRde1h|W3cQH#% z9RieMSt(|zdq99!SoR9DRFVl$i)FQ#rJD%>>aeU1Ym0zJ%rs&()iA;cV3+_#P0b!U zCSC{ymx>CZjzNbR7xl)w@cU3C*ha!gy4DGh2wWl<)1^&-46w_9(R3w`3LHCo@QchT z!j7Z)26d$GkWlN9WiZ3ZzXj$k|@r}1xZ?P!&;xtEs8!<)-5zUctR8ShJbv1Xjp`uKR)8x~d zM41%btlaFWD3js>`GO`0Bm20WvQ@HdG%8P=w?~&H6}yJILw|vZwk;fCotapjjUY@B~>tLAF#M2~dr! zt5HAEQu>JGADiWnFuo(J@5r96Edm5#^B`z$wv5NNR4E8>2+I#Os~-VUu~90vr0Pe2G|Z%7g$Ou~<;R=lkT7y^&m3$<^^pK) zvHWbaJ`x}w8|7n5DwqVgjOCY`1(N_*vB6brP8E~@cd-0Uvw{-fJ~q6MEvTdtpajcH znkAJ0PqFD!Y(+Je057rpWwXW-;4QX!i~Cd2CBP>v|I{qH1gOK7b=a1QZj^Bv7z9eD z^TJsIwk0r9vuW+jWrl+EAqsrm`v#>a=ktEJ;lzouaU2v$d?WSqcE@& zdCDQ#swsFgt&709Hbh2K|$Olweo zk(;*#8*RaMA~!D>n+4+m)T^ULJ?}gSU$Uw5KyS;}2%oQM4gJ@gbbym^ZA3d5|CyIo zlUfUjMH{*!@kR0tR8%`wI#wZmiP9+w(My~sou?2Tn0QJ(6`}(ZU#YJ`^iKUj>JJLh zaYz_Q!$8sEB}-#KA$rLvAWZ><=&&Ojq}iZo@z$kzpb)+FB9In=f<7`bpa&p*0E!mV zKw1t8(KM(AX*DRQ6Gtxj2GVb!XfZFO{zxI37rT&j7gC6hA!3m<7Aaax6lpS2h$c!F zl4c===#b$&lAcEj`U=Ty3z4)CDMT~p9+KWe3egcl1(H@Eh3E*O21#p>qQz8_Zo!Hc zQ%M?(6?7_*yF_AXBvy#d1Cp>bsfD+niJ45SK{be6l8c#KtReE{3ouiFHAJraEzI1) z8X`~qF=ifP4eI`qHlAbVIo1&Q;UBQ{16ELHmoOTzv;iyVStkLuGSaP#f}V92UEFi# zWN?;0Z^@BQ{o<2C5=hf@QW#kG*UQNhzx+$Hu(0SOp4!7KM$zJN)%dvy4H*HvfOTWL z>CyE;=Q_Wl_*f6R6zE8JTnO->HOs%|XT4v)Vpppb*J{PJT5)`!8?jniKOg-sd_L;` z%cNpv1Gk$$VN67}iD-;y14~C-Ix-V&U}uos88nV=U}GLm-8~8q4sVscR@rNny;j*f zN>u-U2L*a?9u^`GCK$M2un_qu8Ng+Lg~$WB4cu+85cwCiz}13< z$a{!DTm-TZ`37eYcLrHd;UqVGg19HhLS)y+V=f+BP@8}f1iy#?A^3#?)IsHEqY$i4XCw8@_!{xi1zmAGE`+7iE9i%7zD9^er!~}tpg3ZeTt4uy3b++bgmFSRTljbIs=oljrG!sE3I;1E7%>qz~jv!uw=1WkC4j4j^ zW(ZP=jt|n2W;#-dY^z&H^A=KxT>sZd^EFb5JpHdo^D9z`JpFL28ID!-xdm;_cQ{#y zj`8b%fO0^SJ50T2e#AmFJsq)szzt{3F$r0`@#lwZ{m@v^fkz19LXf$r#}UXb0*$Ad z;dm{sEZAY~3I1+9PK%9S&mPBxs*( z0sI5n|Fi%aK)ay@5RbIuk+_WuNc%zy;2F|>)&lUy+WuI4Ng8gKhWTvre}B9)+)5jiq0L3>T zBqPuU=#d0pBR+kj`vZ>)X$SO*wQ%C$aKG?Nt+sco?cHj7x7yzSL$-JJy~1`iiGN+< zcbymUkL}{|7-|=5%=p;TrQZ*--|{hQTq-uCJ3Tend8rhV zuc%bg4U?}CGOlRN``CTUj=xX5&iAAM*%qL2qNDg*h`WU>MEmg*WcLKQP)UBfbZL5U ze49J`wXU|VPW0566lZg@4MoO-hn>er>R-^qZ@w==Vi)a8u~&?j>5ERq{K#^!Ru0yu zmi|M-UQ1tlJT7jP`c|oLmHJkx{~wZi`X!i`J3d8~iXHW(c%08mrMQ<)>N>5{Hy-jL z*i+fF=>y*vgQtwUDEFPHM$zT%>k|Y6VA!O=`tyT%>lbYAr_x zPikAHagq8!Pz3@<_cFq0nZ`vJdqA}ZIQqq$Fj}T@5k?%S;z(%le|`x9VYCc+C5%*1 zr2QeR8DX?c z<06blpn3!xb&Ck2Wf~V@RD!A!IO<0eM$0rV!l(gN4N22&7RHuoT!irhR6l^Do-Jvk zWf~V@1R_-+;;5@j7%kJd2qPS+!VyP(U&3ga#zhzjNR@y%`tgJ?TBdOk#$lv7j5zA? z6GqE4F2cw`svN}8Q$oUMnZ`vJ7m?~B;;5BE7%kJd2;(YJT}2!| zN9`EGXqm=E7*$ABg*bZhKo~94xCrADQhh=kwX6uEWf~V@1YlJF=BQ;y7%kJd2xBK! z?Zg~4^$4S78W&;2U{ws}sO?7>Ez`INBL%BcFh^}b!f2VsMHpFFm4!KKOA#OstMV{M zkAVnKh*gD{6GbxI#j3lQqi#Q8lwwsW=IHl-0=&YiSD2&5906*vsupwfjF$A{|C`1| zA2zRuLXthzMA|XFM#!wEHMEC(jgU@HYo;!9>Rj6J?TrTMnj7cVn~E7J`T^$$y{QHf zAPKl6=uPE<0GENg487^fCctapUPEuX2ni61xKPxat``DiA}$m4rc;{$cMx|6^`^6s z0N)Y!9rdOYh5&mpw-@)OZ@=BUYp&PFHoWHrzAxLiDJb`JaEIv{R}wz)IQhjDo#;V{ z=HqFn9<>|ug~#);R(^9T?}^t_E&DGH{QmD*Oy}+cMO%VhXS=52@eX|pr)8Qp@U*T> zSG8!Xuw`u3^gew$`MFLyc<^7^Ys9@qru0RT>%JoHD>9{HQkjl13_beh2j8WuSnDe8 zN#C6JBG37JH+;Mo`jB5@D3L^vU$^j|A0R?8McdGSe%lOb1d2h?Xdj9~l6}n#2`M)H zM2r3()BOL1%iTRUfJE{gzQZ>_U!Wdd!&i6<@1X)dLp8jCDtHc+@Dg4?Eqs7i@DV=2 zGk6Cz@D#W<8uGT9$_^@ZM{S+2I!xM zzhR>5gjK&jg2(U=9D)9NJ&bI78W{F5x3KKh+sxX^#>CXP?_DScyMFfPAP+{48awG0 zOrA1z+T3{;;V-xZ1&|91ieR~S1Vq9Eh=Lf1hFC~}!;lJTkO{}&PsoQ0a1-vq9e4r4IueH$;dFF literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Button.h.419472D88B307C9D.idx b/firmware-arduino/.cache/clangd/index/Button.h.419472D88B307C9D.idx new file mode 100644 index 0000000000000000000000000000000000000000..20b4ef83aa0d2d67c3861a5b6491e81f67f9b71a GIT binary patch literal 3692 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/CNG.c.9701B40A975C8160.idx b/firmware-arduino/.cache/clangd/index/CNG.c.9701B40A975C8160.idx new file mode 100644 index 0000000000000000000000000000000000000000..be594613044a5639d87a9554f6e421074ac91c7d GIT binary patch literal 7884 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ChunkPrint.cpp.FA9E9865590FFA17.idx b/firmware-arduino/.cache/clangd/index/ChunkPrint.cpp.FA9E9865590FFA17.idx new file mode 100644 index 0000000000000000000000000000000000000000..9be6c4d11bba293a6f6490ef49440622d8229b73 GIT binary patch literal 3240 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 y6}SwMZ~XOG?Uo5Q6yH4YXEqS7bFd(^}UE zMGVPY3#uOqO8LhuH2q_SA|^_(VuD2k3zCGP5s2L#J=MURnRCAL`p$PHJ1fhiL+G?6 z+iA1bm9bx>ve!{(uYAwGM>vF>eXh>L8k|Von;!k3bxazetDToW{`h(!YJRpjYPs34 z`=qVK=gWBe+4Z5mWGS`(j{U`Vw`-#{voN*7I#V56UOkX>^^4t8@TTj2T3#rc%&NN0 z+k`Vm7l=2hqWzgD8h`SaEOJ;x(b+tYX}-@r6#J<5)2)_=tqWb#+hJb+<27%5LELan z^zu%orMNJ^v2ZjfCw((=Ag#*0Qs10#Z*U`{v?*}<3{oJA$*VE`sf9l_TInI5H zuG~b923z@W#^-@Kc{;weme*q)MnvKzNi&Erj6LoJ=R|bWNQ{hmycZz~ujm2JO|ZC1 zbd|{(OjKUgYX)Fl&6Ga4yt7=Q-JFl@@Gw^j*EI6%w|)bs+s}V>z(VnK2&;B zj}I_d5QPZM0Gv?m?C3t!I~RhPB!mPLSu=>&_T)&=+?sF8-~D_?kAqmf$cu_*px$o1 z=2&8-Z~;!xm_yqpH7|EN$3t0IM|8$L@(7(upAvixMMgr2h(!W3D501VAVi6TB?65p zkq^spa0}+0kW>D73RVbQnGzMN1dhtQV`@Bjki+qs0GfdV5IrbfXy>3BiUq^oL}V_QTT4ni3EV_{F$eF0eC|MJsa+%%j3 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/CodecBase64.h.3FE7E5F18F7FEE06.idx b/firmware-arduino/.cache/clangd/index/CodecBase64.h.3FE7E5F18F7FEE06.idx new file mode 100644 index 0000000000000000000000000000000000000000..4d82024954f383d12de3a242cef7d8555b222447 GIT binary patch literal 6936 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 MnY1NE{)fij|0^!)2LJ#7 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/CodecL8.h.9006519BD372C597.idx b/firmware-arduino/.cache/clangd/index/CodecL8.h.9006519BD372C597.idx new file mode 100644 index 0000000000000000000000000000000000000000..b4fc96492c76bfe5f58ddb78b3f08f43fdc7d65c GIT binary patch literal 5048 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/CodecOpus.h.DBE0163B954DC0CC.idx b/firmware-arduino/.cache/clangd/index/CodecOpus.h.DBE0163B954DC0CC.idx new file mode 100644 index 0000000000000000000000000000000000000000..e4e1c442d792595bae78d04a6984b4e2625087ac GIT binary patch literal 15352 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 Tl-S!jNF4qmNdC%ANhJRR+jfFN literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/CodecWAV.h.2CA9AFE346A930DB.idx b/firmware-arduino/.cache/clangd/index/CodecWAV.h.2CA9AFE346A930DB.idx new file mode 100644 index 0000000000000000000000000000000000000000..3a2ddb9f7f280f835de52948bf14a88f15326c4d GIT binary patch literal 17548 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 SoKl5(N(Fl;ikDxN^6S614we`I literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Collections.h.5AD16BFACA13166B.idx b/firmware-arduino/.cache/clangd/index/Collections.h.5AD16BFACA13166B.idx new file mode 100644 index 0000000000000000000000000000000000000000..7c1898d43f598e2d66c10f800f1f998188c4d0b7 GIT binary patch literal 338 zcmWIYbaV4!WMFVk@vO*AElFfyU|Cbk!+MbFcg4j`Wqsd>5u&2&&SXnS8J>d{W4Ud%DTTF8w_>arvYEcQ!L8O@A}V zY+b_s{|Dt2eqPBeuFOpWI-H>>HLVyz=OlvY;-ci@cp%Nh80i?-EaqtEz|O(U&ce#X h#=r!UhX7_6gMonq!2|{Z46wr(3=C`tCMejT005OhW#0e* literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Concurrency.h.912FC2E88C8E34F4.idx b/firmware-arduino/.cache/clangd/index/Concurrency.h.912FC2E88C8E34F4.idx new file mode 100644 index 0000000000000000000000000000000000000000..bd8d1b9305dc0c317975f66155891c7ee3418c67 GIT binary patch literal 230 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ConverterImpl.hpp.954693C7BD44F452.idx b/firmware-arduino/.cache/clangd/index/ConverterImpl.hpp.954693C7BD44F452.idx new file mode 100644 index 0000000000000000000000000000000000000000..cd54c8aca30a9d0e27fec430b1a879b58d747c3e GIT binary patch literal 3770 zcmb7Gc~Dbn5`SM40!bbrBtYbl>jm)OaPS&Y@W7Q(ad*8P5xj3^JdgnuSVj>QP*eo* z0JlUGWds+wEbsut1wkw=ym6rrTtR`6%TZDH3!(F{_K&Tlir49MzdnE6ojKE|P0N-t zjMu8^AwR9&wp_q4jGX=lZri%PfiO&&kYPej-JMsr@%aeZqtgw0GXoAa{&2_NXK2@B z8{bOtyW9VY4)9AX%~q+(Y=?iSb9}x(zQCZlvizo-dtLDRu;2&B!zS!ByS+4d!NjZf znZ1`5RC`yi$?)IS;}-ogq`~<@-TkYZ!@KtnE?t{@?ZA#;{h?o7wjFqWKif7`9GY@o zp4#ag;`o=YVGiSVh0dJn`fOwQ;W0ka53U)Wf22(= zlf)i*Xi`|a_*(jlx{Tf?%8Zy{9+hj7n(k)4S^suwmb2Ho(@&48ZZp46y3q8C zD0tDC8liJ-%bEHa6AqQAWaE=+!vcRVztSGRwDjKY`#1MnzN&@`KGnKYdX{ffSPj`* zzv122Q6B=Q7pyZ2|2{_=QvJfm#{AdyHi1_k3)}49f84>&%`V&J`?mAdsAbE3*nM{1 z-?v0mFNyuwcErNQ5k>n$2iZNm!n-`dtHr#zJ?q~zgx9nZr1LG3pEnss(13^n}h{5swX8! zynB?cEi2aqZvSb;Tws_+(>WVrwk4SeL1D;nrh2Bbz6T?c8c;kCPFL@q!fx4wjlOzd zY{YO4MA$$E^%F)!Rr-|XIKAOQyQ-GRV7Q#&T8XHYNc#z+->1a9oHe!N@w=UVreI7} z8VNKK<9>oFGg{K`XIV!2v5XmwB^lUcu<9p_NFNvzC5`KB2mh}SP^KdWdBlgVjnF(8Zq1H{iLk6Yp=+ZP)PSUP&pO7w9m zSqeDlAo_?!HSf?toOr&Ih&qWO^0*U-xNjE(6l~E+Jze}J|77PAuLmhA>bQllEkuUx zOP0DUZQoGhMr-OJ@ED<)cZOj(Z-KX#OF8w-V(uiXQB+AHkl6A{sUS!NEx$`Q_>1$6 znlb+ch5Wqh&&&1|ji-VJV%I<%aWOgA=7smXD4#|Rw-L6D$oaIph_s6sV_Jtt9^ZJm zdi$(C(~hOY4NEK$85D=uwbwe!dtRFDti3wgA1wQ5~3<0V^E*v_JGqK@WjHq zzxrAcp53{SqEu<7w88SRoSlW89WD`;bGC4{!!e$kvC30Ee%2!TN)kwuK*6Ia9Te#> zh(}KWSQqeUz^rw|{Y%)TwZ3rd=$|L6fv(=EsK9d3AdUu03=*qCo2uE*sECt61>agg zKvRKc7b6hL_f&cAONd)Z3sX$2i-`kYm?&_J0vGgofn8G8>SncyDxLtr2{7Wbya;IN zFN|pu)}81)a43vopoy?eM2TfVkb}7Y%3$4C?jYzN1QuQI{o_{iyxH&R;-&>QY$c{x zarL;FbP!9#VeiNKj8r4VUK*nXXW@cyW4Rkdeq&(jk>C~y9%z5o;TPBbQ88m5jW9un zNzk#u5o+5qx5ukIE0zlCh@g(xqo8-;-zx9uWgVh|NU)29;b=XAI9-Sc`nBftqM^U8HW;zvXNRo+ z3A*^Ie|Nb*Ty~jOAsz(rpsgD=ikjA3YD~^L>a*5O;UN|zC zJ++`YzKNYBNI40v|-8sLzO}COJp9K0zAVR~-^|uQ|L(1;a7$X28z!1+fDo{h3 zYmXlGUk}+-pVRw*#%L%ow8PG_+!YX90WFV>rG3%-0>JmhwDW8(SRkL9@LeW4RRWStt}{eW!tC8aQDVECrYKC2-|q$py>Yf$~DIF68A{ zMS9%71)F;M1x-YP;8UMEK?{-K7Es?9K^u|qv)xW4?cd%UVHYt#2(er@k#rL|&-W6x zmnd+4#Qi_55Mi|@hu3+PereJXaK}J+j0b{%I}gJ1Ai|6VTs{c%c|P=rzwQ*zAKPi0 z+KHl_nDY^K6Gb;M9~gmgFR{P~aQ#pqsej2KBDby%SU!@12hT2p5$?NX)N{TWAh}g&!D3d+Qm-O8YHvK^g9PF?T+92yJZbR94oE M7BLKCtyN?G0~BR65dZ)H literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/CountingDecorator.hpp.D3CEB1CECCC70814.idx b/firmware-arduino/.cache/clangd/index/CountingDecorator.hpp.D3CEB1CECCC70814.idx new file mode 100644 index 0000000000000000000000000000000000000000..582a562063be9dda76f192e1d4a5fa23207ad9cf GIT binary patch literal 932 zcmWIYbaR`-%)sEB;#rZKT9U}Zz`!5`#Kk2=nb(2zRYnGeiaAFoIC?WX^0Yo*Uh!cU z@7C>!nj)_q`S*r=jJP!OO55CXEh$-nANTJrb-eQR-P42Bo+qa7`1UFH)$8tnW6ZI4 z?6tx#eczc~pI*HELdBDqcWYAKD~CRL^7sDBQp;zjer9?u)VQ{&_OXVv`rGU43iNn) z64N;oS#(Up*J!z9HFmPQc28jNEF6ScUSHI~ix5Stm8y zbmBbgbqi-6GOsbD9YZX4B7eg1S!tv3I4Q~mbKKieEjAKNjANUoM< zD6Y&+x()Q7Ak&BNvJ_oDF(x(^1}#d?2J z!TZca&LROOcA)X%oZ@_70;d0~?lV!ZQ`;x=G4TMUWw>Mn!30eDx?Ks!yp~t1_?S3= z(z2Yg{9pnm%}|t@Ry-YO6U>i{OklskTxDW=gzH9Sln67>(elEoFu(9{i8G0Fz+A?| zCCens0kg>_KQ~z7{&X2e9xe_B4rOo<0g0v^($Y!FHg-T^1qKC0m@q8x7`ecK2D2At z5l|QuSTJE2&BO%`B)zu}cAJ~#Ir5;m8RjgYUQlSk^tAst@-igwdkYgVdU*LoU={;C zCM+xkvkw-UEI=a-c+FvS0Tl$pu|E7vh znsk@nXjS>2;>z5l+dzL_`x$oqtX`xP9}_1F1G_q(x-ghv-~h@2fka2f)1P|;o!Oa~ zm>JkPxHyEt1Oq1n12BLX*;%7C>@~ghYh3u4IDq=q1l5GW1Wf<7zyHg062JQhFtGxq zMR`R*MKA%A_7Qn8@7d;;s|1+1fYJiI0`g!2CjBt& zPt8^dp`Bt(Oh9RF4sJm(0h4AZN=+-?#>BwzUi$xewa0EOOf2jY0umxHH?gqG3&_KH zd)Mo-KJR=XgjdlQJI`N>W=<2ss|XgP%slM8JiLN1SMsn+s!3|YEaw6TGc0%?pOfBT zePFX5UUOp?^f@wEeYR)fVHXz=7lWC^!!9i+tpejY{W7b0GWoV6&~k1eZYhN20tx~e zu<+zzSL090>?Q_7#8P1lfVn$W*gAwJUl#dFi&xTQv*y9OcZDx zvcqeGlAd-Rt~v93ab5<<_0{{_ArU(E4 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/DecoderFromStreaming.h.E5853CB688A5C870.idx b/firmware-arduino/.cache/clangd/index/DecoderFromStreaming.h.E5853CB688A5C870.idx new file mode 100644 index 0000000000000000000000000000000000000000..b33438c3de36207ffc6f4cc0d8166bb41b601b71 GIT binary patch literal 2696 zcmbVNYfuwc6y97GVs{515rnr1L1Z3k{Ys}d@nQ06o~jI6?YBL>P)>nRnU?hh|WvojOERQWU>{QS8p>V(Brd+leVOD@~irBVI;CPU@N;^!_E z4_44f|?#zt83i~Wu@nb?DGbD(wn;Hc>6bacCfb> zlqF=Zu?zKaOWpi)OI>PR_u{jy<;Q319{M!i>&y!NFz(^Wy+f6kc~|JS%95PIm%rz? zqNMK!j=m|D9Z(-FuB>=}$u^bN!ohGQ;kSdY+)v*u>`b}-#qPQO@A=%ba~phSKaeil z_wIMmd+EUX<8wZk|6FwTqDuggmbLC*oew*tBmlP`zBJukR`3r>{!2A2yk-HU_0+cM0 zVOqggh&cdykE3c_kr^2*LJ~|zSVh=!0CaZw@i@~X<%?J(#I#1HapeGLQV~{l%RVWK zMOK(r3)CVGfKHxWnf+tf)gvM#!t^5kA~6R*ci--_o?VuBhDGL>_Tqa9IRLsOGe^?< zD8F_(5@TA6v=j$G52q)H){bSgh!BfuolIxV0nqceuQ=TsP2UnBDW>(7dOHq)=9Aj5 z8@t+nWswD@ZTL1U2SC@keO7VPCb3t9reQkVEL_3?(0A(Zh}Iq&>*FJYMG>2cWgHkq z!6S)9F(j`_^D-ldVfov3mj|IFNz&$|IR#piv?J+AfiXzhoph(bMI`M{`cu$ZupVOQ z05U)bVTv;#lmV~u{xcqgAwLcqT?b((0*8%mgYc!QcT6AcdMurCseW^ssQX#5G82YY zBlR>W6`!2c?vtlLGH~MSz}&bLqqB#s6CN+$w21{vlML-dI!*M6p*={Ci9Rv3)=BFQ zCZRaf!?%oiezJ7t&hqIzhIY1awt+^#Ea2;mg8)w-4QTpkL%6{eKdnc42AuPtO`B-G15B!-Ry-1J>+IlP z3@vNJt%*PpLJ(*`K7-sHJ@@XE^FsS@y~d>t^}@c!DteRNVi1+$wl+Mp#lf@YddoMx zQ@%WKaB<*F+tfb%Q3_UJ3F1M1>^kF50c|A1>j4X|AanW~tN!)>;7oE_ zE`zTk49RN~SK$G02*JmLB literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/DeserializationError.hpp.07135FB0D6CFEB6E.idx b/firmware-arduino/.cache/clangd/index/DeserializationError.hpp.07135FB0D6CFEB6E.idx new file mode 100644 index 0000000000000000000000000000000000000000..16ce6207dde9e0541b09134d69f8f7eac641e103 GIT binary patch literal 2814 zcmZ8i3sjS3829x%s>e{9xT)2 zEiDN&FQlb;p{v?4@lxK7plKzM8l<2gl7UoKYSgLk|99T~tDUpw?ESv?d#}&?Zfb_z z{)Zf)iKQ7e6;CfHp%Fqs4~k?Ot$~L zjf-0^?OI;$?pkUo99iNDs;jHp@b^7)PUCxx8T+03D^I?7^vJzCXA>TL^HOHp*LLId zs(;>hJmoxAuN(B&Z%==CQ{C&9$vakjrA>Dhq&3zx%{2@-4>a8yH&bt(aC^M-_U5Ps zhp*pS8!$Y1e&Lkiwq4TS(gt2>?)dca8=(Uwhc6fh?b)fnvE@U1cK5ceTHfBbCNbGj zWWPYS6kiH&y*o9(?~Spo@w=BiyZKy(yK+{?CnL*_1eWexH1JM*vECXnt9k%wKhG)&kYDahtfyQ{C_(izBYYv@urtoeYn1%^G?@}vC0pMYe(P6rS4AdT~lmfG>X1T+Vu|t(yqHUZrjY?-Nv7WY`-Sw7p_Zw>2lXR>*#}> zwcGxZSZW`gj;a<_%(+D&)V}i6gHcV*Y9$I`5Duk76#^g`VZ%dOKOC?{j<4)(?g>#M zHBsPbP9=b-aHYB+wzFZcmZL@xg)l0N695Gg3*=*+FI)C=tSOQ~4=WH(U=uh2kWAu- zLUqK!n?o**qarSrL1v<0VJ(~hq5>V$_t>5Ku5l_#PaLF3QxpP#gTD3+vYhMJ>`D|& zt~InKSO77=tK%1Dloz~_!BV4$f=lXR1c3L~d!pm(KiV_R6QGr~a+n7slTw}ldjk#^ zJ5EK`fV<08690&Ib~A;I%Q15v`f zkYj#WASdsXFgOf{ML~)T#!9UA@(YtoEJ~5eNVS)}I5I2}i&Bg-M(v#p9LL4!Aaw@E zE92GPxx+Tjrh{rRI7yMDf`MUhsv=bdi7?o%wrhcDq=BY9Gt@vX%rxW(wn>rsS%xCR zB$K}JV+^SipXwwIe7^mtdiGbfT zP!MPfIp$Xj1O`;0C}E+%F^x;#rW$cQ$h+sZ$v$GeT0(5JE40 z%|HNw%I|)S>#(mU+G%te2io9+*ya}w*oJjOjPSb#8U?NQmkY}UY%{n>R>VRsWC{(X zCNK<7WpZKRh)=>o!gM0Z&B^Am&^!iPv=+TcR%^0#ED(yp3EBj`NY)f8MIzGEMY$v} zM+|nSyR#sSwIAO}iyX6v4Tob`ha`P|7eWpYJS!KL z9~6rbHXU4&@g;x3qGT`_Y|udl8x2MuDZ&t817LWKM;kZ)BZf5U##Cthew!<=wEH4Tj&4) literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/DeserializationOptions.hpp.999A696CA850B5EA.idx b/firmware-arduino/.cache/clangd/index/DeserializationOptions.hpp.999A696CA850B5EA.idx new file mode 100644 index 0000000000000000000000000000000000000000..486861f0d78dde13c8c82ee15a44ccadb97d8a55 GIT binary patch literal 964 zcmWIYbaUIo%)sEB;#rZKT9U}Zz`!5`#Kk2=nYN4!3|T;diaBQ|2YMei5NZ7!%=FGN zG4_R-z#*NrD;As(S++0z^xWMhxz56}QNQl{nrpv(h&=JKs95{_iDPfJzgqWS?E-hy z6!tZ*FPH7voWWgNrEqG=tFv_(9bP^q|2=+M@j`BU$wQqt-#GpLZQJGRdWVf6 zy~ozt|FDbB884;`&f;f9NwYJ{*0!8o6us?;O=P!>%|_lt=3dEQi|Gq^nHRe|pYO5Z zd~bNG_4#Ht9^;>jLf@NgjIK8~jmWGu>A0<57UFUCb6|7m?pYlY-~OyQ8|<==A>+}U zGYrL*xk-nBq1k8P5*AYDt<1w9%*ntnp)TPFCKxzb85wvP82MRqBpAQ6%U1NTF>wPG z@UZj9f(Zsr4tAh+pn}yuZ@dch6`jY&B*MkO&!@&`1SS|bfYLx9VIB0M^x}_|d`v<> zX^T5&uuJ=o;u220$ZF2l&f&&j~446z;IK}IgH$MoJl*lli_=h(DES~^MD z#tx`ji9tybrW)p37A~+aVXArfh1i8;;cn%ZV3&}EhaA5wyR0nCnOiwbRpuUh-U~EW zR!&w2COl)dnTK48*fb^3Z#)^g|-@4Dgn9iNE@r8%$}aj#?1yK8ZZYiXT|I>hhxHg%n2jroG^f(Ac|Scidg|cMG;ZK z1d8Yp6*ET62{H1jr+2Z3zrO4Jes|q>?^@5*hdNZ(RQL3BsIKn%(6w!=R#z`uS+yA2 zcKX<1lLtvwR#x`#-=xVCeSYYztfm)-|28G{emy?xxLwAJ-=1F{2flMUHeuSa-}YP2 z_>6rvc+9Uo2ge-RV$*y3*gE!mOYg0BqQ$rI@5kq^7*>8GNzw`S6NcxmD>p-2(e@zaN`3v~EhBCtqo|0D5FmL#31;B~j`3hN;c)^t5G z{kLgjv7ogb?pOc%u4B>orRB4(zx0T2>s0aJ>46Ec9X75rRO)vmxy{!hn?|P|^ILts z#=KKe-KTbW>-4+&gZI-TgM#{O14+d)#+N@YudS% z{gb>BN@Y|(Iilt0GoLDZWo}MN3LbP}Mo{G052fn%vku7nSgA_y#K>E7FQi2TwB0c@ zv6{nRz0Z?Ib-k{%I5Nwj*X{7C>GS$WTv-+y{(Qx{pys#wjma96l(^*l?fs{GjyO4Q zIR5nh_cXi1WqTaTEf!niSnwRft9{3x#;s_6h(as?(*Fcy&LBq{IX}qyYsW%M>_N;cV7hRRy8TrX{~t8UGLeFi-(d!_xRIPY7pmPP#RG~6Tkbj|mB%BRGw z%&a`_%d4=~Ppkcz{Ag0?B_}rpm0ucip?KzPL#*jy=oz5j><<2*LK*hCiJ>e}+$ox!f(f@hD6uQ9H}^--l?|4CXoU1vbq8}sT9 z4C}wEclM(#H&TSPJ~bw$joG~1u20b#e@8vuMMt!6GIefv%OURW+q?N6xmtVhgvGhz zL{pu#%u%&A9$NYR^04BIDn*wW7&J(}US;L${V8W(WlYX4F?iI1wx5E=MnsR9693nk z5>JP_E*^Q@?dtCJ;f~6y$&;H_S^3fX?m3@pueR5nvwnESXL07LWzpU>e%W8|*sOc9 z_p8x2GfkfURZ^NZx^<&(>DYf9{_^eJxRlMX`)xY58b51O<;sQD{pD%h_RFAWjt+gJ z#jb0b)Esg+IQDkKx?Vx##)f}i2ZsJxaOXquDpj@x9uEDOR%?1@(59Xa@lyhvQxp9g z9sG2<@6?y$uaBzSx6AYF$5yF6;#6gDyU6zY_GR^b(?|F&+}=bh-zjnWV%{Qs=BGW4 zA|1P~S^1<}|7JbPO&p{Dd}mIJ3m&oc2G*)9k2^xMC-(M;@p~P zeV1cKPM@xx-W}gc-`3Qf>T~FYgb zy|V2W+-gx~&iGg_U%%7O9gF#dKP=xjW2Wcgw3xcK8TQ+v?V7ilyl&u#m`+72+DG-T z*y_Zkv6)_98n=pDS<2gbuKk&QJse|P53e8NbKpt9u9145Q_t$2e;;Ugp7`$9%iEjW zD#v@ZJKyn{&+T<5OU+rfxPOA)Fzv_avz4O{?0p*0!}qaw$JE0|?S}lF9#OB%$#Toa zO>(swOK;D2deZHTkFRIHGv!~_()aRd^*U|Z^x2b+#&`b_Fu3&7c6|@N?)%{Qp4zWG zJ6>`6*E#H}Pwyz}=T>*UQnpPPFruTBdMht>Lrt&XSFPp_T9({qR>H_-r+TFI9o@u~ z=$aTF?ctkotI?Yi6`pN=Gr@0UThHq`k?vJzpI&pE_>L}Itwk@sVd1U2bj*c&y{0b}Aq}W=U&AIXQvQD}$ z-q<+ay>H;>DT}P{78^4;J2pN#_Vkb2-rpKc5ymDQ&aHfQ+m&fUPSh`a!XwwVLG$Ay zr#5!6Ih5O{Zm2Z|pX@HsUiWMOksbUvv!;r@t|P1dv=X1id>?WBoYy%#)x*6ZE}!?^XP z53QrC_ZYIXWop}D8Ee*;35#2ln{s4f zg{3#>O}|5P<+NR+4(;0!G1PX+qWA&Ue;!fP~yUf7ZWl&^a=AE zV~hxLtvR##ohgG`Z5ws8W$BE)RTm3)`mD20?O$VLw;BU_PaM0YZRd7zgLU)!p1am& zHo0eaDsp(>!)D{s)?Nua9j2Rj|NhI@!}piyHo5(sc^%shc^cFrW2pU%%7vZ({ijji zA^um&2bubo+UilyqtLFcg>uC;gFRApjcQnZS=nb-=cz&q@4SH7&D!YPUY&Is5xV`8 zvCpHxHQi(XiVXQX??(FIsed(nBNnhG*xOYTrE!i`>V9L z<}LqO2Hz*eJ&WFK)YFvh?qPNH-fN-RL7zS?(i&#C_5S;g|H02`PsyHr^uy8A?O6@F zADcfuZf2dRXE`_ijrH8WcVh7Rk)vn2{d?-U_qchTzAPPiZ^qRouXFc&iB8a6{n{cj zD`{8tjzj&%{d4`k^}Nmpk9gPr_ff8U^}eT1*f;F{=&IA{@IOuy+W8(fKJ2t5FCqN& zjd@-(*5u`UsrjpP)U@b4UEY9S+b7K!J9t-PE2}=c509!jrh=8NRZlA`Kk|-3vPWtK zCZg4#Y(elNy3q?l%U&p~2qyAKs0VEL=SSiQjUx_L3je**#XhgS!-^0Sc}wy|cIxyy zb@nLowcpj(JLWGGO=O=%%Xfi(7u-<9Z{F}VJ9`F!$Zk>v%6LL;pU`qhQOeDJd`86W zyP}ay@B*Qql>Vf)NKt5Mt8u=gyA;ux$W^G2A6cWLYjh4sQL5IeOhY z{v-y_rBaj{-NC!zDA`+QBV%_*cCvML_By zDDorQCH;1(5K@$?(xdXc;h&=^B~95E+pL#2>p>N#>Ib&6V&AuKJ>Lp7ZE7mERyIs- zzW@mufm0@TS8#fv_Jkw1<=|CTxr!61S`A+@L?9u83CnEzy~Fzroqy>mab~(+=;Rl= z(ny&u7hY!SuNL!XxK^ok8p}o zy(dk%m)oi>NL?gFLDyE9Zk4T(qExvy{#(1ck7K$B`-mY54N;&(PEpF{`qWkHk1YVH zY*GTG5@ebnL+9cYrJkj}?GiYuj=@A85Lax6Y#q(E^!6u>hd!GY`2s{vLviXqKN7Cc za3z1txWDS+bmPSUn*t)66}s6XvZG6xrdy(>*f^1<&7d|>dPwm8oMLSpmcJYrGOBDL z6PZ^BOIoj|>-8=uv2oAoWvNQ@LPoM%C%^)2KOi0rV8hqnTKD;QCP#@=g|+I^78L=LDUG?Ww#C8hibrzo|#oBnNbHJzP_ zB&br~CHh^0uFfe+_1gJ+=-%C(?2Kd#8#L*HK3#A|ib5IX$9w+0#v6n#39JVs%Wlas zyd0+}l~?ab@2$sN>QrCoXjgXP6ykY$X?6){SfF6p*V^R_Har6 zvizLAkpu|r6K~bqY-NL#QqE5%XLA2 zU4Q|>DGC`wU$trC^9S@KTBiL-#WqqYf+9md&MEh;&~axIS#22!$0T}8Dug1|>$;k{ zEZ4c1$OpB~;Y1%!oM6UKDN0o=@~L)E;k_>E^y^2K36Nkq;1q>U&;E5Qs%Nq*Oiq>; ziN=$WO<+Lj+A|p zQ-pt$qnZ2mH-2~D&5?W{fxu(`{75&)ZutxQ=FjOtR%3NVOk}yG1+pcVY^fxccD!56 zHgRfq5V=KIAKytGcG99qQR;5;r!7Anmx0t-OKTreY!6u$*{E(yeu}k2KqN$+=(j4R zw3D%vK5M>Dgi-c2@TDY@( z(bxlJ-A!af{$##EPdDiEhg9Q14cz-ItL<*?1i=CcW}SdjRFlfHK^qFt{ z^gf8}g5jk8gU?Fo5}Ge!mD{#zd~)rwCUU~k(td>ck^C|8czHXUe|=|{HIjJM*!fNM zznSI7DOP9b(NWIp$`37Puqw<3S)9@^PU()64N4s!laZ!nU0fD4DsO^b$lCibp@)eL zQq;EK`jcj1_1A#ZF|~h3Qd1;_Zo(-_%|>vdxyF}e^V(clDb~0bKkb1hl$(}@_Y9py~84XF%%ixF6{Gl-Fy(qvXpgQ zbh|E=M-hioEr0G(0zf2GeYJs_($Jk^poTc5%Y#dP4MDAM}?671yEae-T!HZgTKjn)secv?R?^dCEH3RJEps@WqdA|-OLrz&?0x#@EmFo{nt;(!!Yt@#?wIOZ5=3zgX zjMacw>Ly|2nOgQKxn4C*hKf_vwND%~tNiGxwG70_s=Z#8*URut zI9038o9Waf|LE-1`$3z=^xdkXTXp&0q-KMJD#wEU)UvVa%x4VHcTlH02os&2%2v;X z*J@jiI{xIV{z%i>VE$UZ?l*yc6P&P8UtAwG{JAo!wvnW$^KXc(50RmxbBa<8_l->% z6F#zziTtZ}&NM>PND)86DKJ5HAY8DMrJJe?QCem*r%$uB|F2_692h)z>bz$CQ zwqXKwOJMURrzljex%b3l%WKs)l3if!`jM}){wtfOIYlYAu4#>T%s*1!1iQ_Azd?>b zb1YWa{F3kH)-Lm^fr+e8>$E~DvO)rboKsZP%Cq{Dp4TsU@p%K51JNyAERPhWYU&#l zn_N-f2z(Hv6jbVfOb^J=^*BYTb=PAWmHm1Sq!MAco9A;sJ@wP)n}%OD9Qs+K%-F{E zWTU0y`6)&}r7UVmzjl0N)o0flQ&N_7mXkX9qz-H>PFZK^#5;@EztbFT2F+~Bb^xsF zWePd<@O=TSF-}qHWA}-nk4JWD!RGV)=KL+`e@pp8 zCSi_W|7Ht1{AD6XRGWQ*X#y-V>?bO@XCK|K*5KhFp)uB;NG?w-#@g2LJ%_AlycR@G zTgv$+(QlSX=g%dd@d8AQf-eeEDnW;8sSmQf=#Jg8ms>Iyl9$mR)Oa*GD=GQs-5vOM?Cq z+X8ZmQlI}kJkow}6XcnaH|Rf?%7#EI&?B(SgY`OD)=B-_Asm zEDg0*PuJ@6Jy8ui-^y%1uquc|S-x=$p)nS(-=>l$1MBom2a)a21m=PAUZC%V{O)#j z__|Z?Ykq8Juxi9=d{n4%RA`P=Q|qZUr;Qq4qHcR5NmH$#JgU#5@N%4DwL@y%9(erC z;f~DJ;{obYbu?86t{zTNYRb#~16sWlI~j?;s_Pfk|Dw?7oT8L_z`#Qrs_XwYkqwsj zOOi}UQvTFhVo6--9~C-*$iJ$sc}=F*WLWn(MMV$(Ea}zM-}i4Lna%2yu5(V;LI33x zg-kZ}tCF{qKjYQrAk&Ev1dz{R$Wab-7=8{ zDl|~ZcfnK|?|ydf?ztfHMpYC>Okr%}!YL|BO%$`L#5U?~BrDY6@LbS8XZ?;-lxj7) zdE@*4tOBWHU;+A(vr3h-N?oKVWk1d8_lb_3yp3Qxv8pd7bTNUogHx0WaJTu>Y|Tq= zTdVG@YwZ>w>5-~ktN%-N5xu*ALkH*cZF_@bL~YeH>X1e&z}lx$RQDmM@0E=UE`StU zXUv^BSSk`Ml}3?z);5v716uUKLHdEv4{VTfic;A<`a0OYYSqUGqnvGsLS-5%gB{2z zN_FTsY-Cc+_kEm5WwwZ(r;wm)af(8(OVoQeF7(DfCRnGLs$V+#O9wL%rzo|w%=3!( z{}}ok$wr|9NM-5Vvvi(FQEKFYM-OIf9N6EP9H(AkA4Ph!d1J0meF~sHdObg1pknxKPCX!;A?LzdfA^I|?r%K#)hjuX?hj266kL;C9 zdnM@PoT8L2&!&6CdBFf0d!q9_(F4Y(N>OS}9c9k5mrlb?BtyvGGTzhCdlt{< z{>~5H9xl@hM9!*X>J*`;2n=*iQPJn3vFVqZYy~N{83Mnr=oZC{8ctE_*-p1PQ=6<9 zVQbZmHNg%660{Si+Hp{0>&g1*3r>u1B5ur29xg*Fjuf?Ri!VPj^K;e+BS}?1osZrJ z3_$i1B_6uh>`WqO!-lQ~7Hwt>NG@09K~630rINW(-JE1aTK(x_kk zitii-Qis%b*h=VDHqtposQ{p>J|^-?-KHL*rb85LDNa#p+ZVg%cb5B&GLhSs z-DRfYkg4SFE^|}c99o^}JlaUYg=)|Q0fIh&t=XKSqOIG09XeO)Hb`9-m}6iq)vskI zOq`}j_TJ@Xa!DDRgITYQtQ2^$2gI?`SVi%ApvmGVm^gS@3Q}EtCH=< zn#eZQwwpuez;|IkQDR!#om&K_wPRTWuz@*JKN4P_{X~gd#rwZ=uNpbl*2=&td{BS{ zN;p+3Z9WUyTJFho?`K=aIg^j197x9NtmAd?fjLEW3s*X|3+Q`voPpReb;ot`ake;e zs;c8w@IQTQt51rH8gC-+)ipavk%JWI#hjwHPgiO`+`M6uuL-mYak-ci? zJV59H0{cBqQL69Mq(iOCES<;?mdrERN`8u`DFW=z7f z&*eJ0oSl7gic%Xd4DVevs_tYH`D__3R}^|h$yao$Pooa5V@H9=P4#dhLQf;u`4gw8 z$TxL%^8NS|Aa!50l2T-v!ghL`qEyYPruwPvbyG~>ied}i4N7m&5=c=hp~n!%og>ap zF_J6ljCWPgUuE5oQ{Cy{~)d z5?4?FsqMCsSKdlbb z(LnaaI7O+;!sjN7X0D$B{hF-?X@WkDoojH4LdmrQ`;}gCc$O{O)BC~k6eM^pPFY9F z#KYVMzDwf2w!03Jt(jzV(j3Mc`>A#}^U|3zChFPGA#Z2lH2#**x6I_>6bo&TanCt3 zwD)WyS+0JzTLQf$K>ayIsUimg^L8ga2dS}a{n;%$?Pgm-PElyj2KV)?dJmstuySOz zI;B8@F~_N9!Z^CmY01oS6XzJoc-9zC1nVaP_%k>~Wz#E023XynJjX;Hs~vd1-n3s2 zO~xroomkcJ{nBLXd6c-bBI9H^j!op8vLgM>2OZh;(flYBe!+=M%x0{A8%9X=lQl){aB^mQ%KPCoT`;FU*p(4rbnZC@AV68tvWEl zmZT+oZ}w9aGJkK=kv6HCBumvVc}>t?WADf*wphFFpBH$v@8`$O7wpo6Ccpu_ zc`fSRE^)p6$0dG7GLn6thr*zT!Wg6|6wz_|*LT*=i%sOCTG|F;+Q7V0oT5|<-$(A3 zyL4M(BE$2W>3~8HSnSPVmCjQ4wRb@x$Z~G5P^Jsze1}`3ia&?kEBpmS9;@@u73y$> zdioJgv8WY)CDeDDJutvT)~Qo|rbII(n9Ddtsh+dWr_C5zZYlV&Et{rbg$7$rp+dKA zj=i=tWU1NK+ANdJ%+}%*^~m7|@9t`|eW|TgU-m`bP)JZ1r`k{V^ohIo-IYg{8cC44 zY>%d+;hV6ZsOrP}J)dmG`2`xuDzzn_3i_waXTd2-UD#H!&%qLfgP5<0Esfu3(Qg!d zO`M|Cmeih4yowGBf(c8=w_hLW=p$WzznnYf!mNeGwtxt~II~2gOPF=XDJp6mdt+<$ z27$|*NQ3+j7od;;%i&ST1eYGB$HV$xh?2#vm<#iN0D2kxgf2}TS4h-5m#EO<^)s#cFJzHO@{fUZfb0dlCE!w&Q~MWMpi z93PiF)MJH-EPw*d-8)a9c|yLawW6rg_ICk&Kt$u>-K;Zh*5!|Y(dD;&`r!KrMEC|g zOLEC#8*omsto{3UosW8xwUW1_xvU3-J|G4Z2^%`ENXuYxm5HPh=1P4f(^oPWQJkVw zothu#IJ*x4sSLI2o+tD?VLM8dqEuyLk!|S?Tf&^lSIfG1Q6U$V{0U`POT&uf`iZNJ z#FuT+&nrdFD=<(vMLiq;>E6!M>i6mb#`ZJC;hDwQ76XPk+}Y{2h8b%mK+!3go?`n1 zPEpbHC+}^yHW|6rNJcZW;0!H!hE_w0Ldp6a?k8q7UsvFeBSJDoSp1FU+9wu%kiHZ| z_+IIvC|wlc^*KdFV>UltI4CoI9rQQ$`M*>Bcjjf{6ouCIdGNbIqxYbSuf{8MbOl?D zIYp^fQf`CNtJ|(OkQS`#o)DB1?6ikd6k2UNAiYcAyY+COY3WI~M7LXF6%=_kw$Ev6 z-~JoG1+Ln(N2%>m=B?rsr9w8nsP3OLe1j2I8&=#o!Red;hhChbl=H7Ud+TLeZ#0ro z%v}&Bo5Ez6PB}#(_xq<4eq3F!(L~m(9VJhqc@k`II7O)jA3NIi7Yv)6NbP(d_yvVr zu&hn{h6T$#PnFrkO&@4!>Tr=wCY++4-d)7)YdX7x8_7v^%K1U*4+;x9rzm9|zHR^L z*(E?~k?I#Zr&Kw|{6d_f)Y`4jYmF29!_}=Q*x>>sXmU=~`O>^Mxe!wB=+ONUn~h*N zverrwtW(%*$SJB5=2qJ?F-F`1mliD+@M^uoYJDjbX`H+8@R5z}w;Bk<&iIjII{BCm zoLZc+63v!@?Lx^tuj0zBwpLx3+;#yHbahVEnwc$wh0Q+RIOO+q8%~^ggyu1Oic>7s zY48WDUk@8>H<5elh<_y0N6e(=6s6X$dtLw0zqdi^mc{l=rVhz8e-8RvH*Jb*)~Fpu zxTD7!B3saBvtvX~QBhn#P>))Hi*`^rp#z~?I{6mcq;aa&o^R4VW`?XAVR#POQq}GA zQbE5|fS$uCYO_6h`>5B=(48g{OW2jBXuW;39@KG)QrRaK6cZ0!-o>qA81PcnGg2L- zDD~5GN9gsG$-BYfqT1-w^wXeO*-w=4TfBYmh_7FE!-UR^%3ZR&i=F6jib5UV>T(=P zFN|QDrhISHCz*b-Y?=m@Fu26F{|+K+Rae^*nJ!^>VmL)bA;S)hPF&q%4<4gkA@m9} zSU5$)ZbDFv@&`H|+e1lZ)}HZHj%OQCPBra$A>^G8is`ogE>Vud@PO)+aJGJ-tQt8@$Cw^OSho0PcU0=M?q@5zUR0 zWKl}CID-DXdh$^JaRG<~s7v&IYTD11Xil+C`YzS{9D<&nGLnVr`y~nviEK;CDN1>L zPHo=d>8yA#oYblPxlEt4GbK(@s?q6pPp#UnIE`KXnq<1hx;m#Qb^NJY$;12Kf)uxT z5=AMI**u)0)Z;fTJ1#3cIstA>SqA7Qfqt^wvK`$h-RWh&BOsz_g9K4Zu(ZMJva6@Y zh#4TlE&f1}2C|;ODVDV?bXL`bGCpV627{TZ-(>wa_I8}2l+W{Hzb`#;OEg$DWM3~@ zs2?q~L#pY?9tokN=fzY2ITMo`SZZKx{!=4!%arJyof@AASK%#Nzt=kYT9zFQzJ1n2uBj8y2Oa&OgTciqN>%uh6+Nkb<8#cS zWyb0)N^dduBc~`;JIQXrgXq2>^^Pzn^BTdlhWTkYMJe0b%cq>}_u`xZ;x9lbUYQiH z1VEQH|BvPkKP~XO@}}vZb4IdW?N_Nn(Nwnm;S}`^e75OynIrGdv&kyoSG7#0%Pf;s z=J_g0{ry#wjASlzp01(#HEinV6!k9ItTE+Z4nws$7 z_BA8fppKjzS)ap34yRaVvr~6p?7e76E3oa{rc<_A=Cj#xtK5yxJ=1Kh3bAS(79fF< z%&E3oqcUbSe!IIf=nA)doeW8zVfi}$UOh4M*Ao48c9)hl#Cxgqd#N%~tW?!PvG+TT zZ30q!8cG%2QdyVb6s6A2Z!+cV_Gq(|xig#)-A-6;_C5GsBz#EePU%LnR&9gtvf(?s z%ET!u+W)Xr)iqIf)8W>ETB#^PqX;xSrzllC=gWb?x(YWPn)~gk77i(7}k$CMMX{T z&|M=pUNuXZ6{U!7DVBcZe{n;6y9%%GQc{r(fy+AiGP};mDH{S!%%&YxQ=2o@?^}A`UEHb|0baDw^48`oTx&Sgc{o2S&13y*jW)rfb-~k5iOt)VFn3 z*?LY74OUL<^&$mGU@UXWUhjo@SGsoWj`vfy1wSkhxObA!la?zyE8AY^qF;CcL^4%# zBul1QY}(-zOYAVhSgUJ^BahhP!n*Eho$YCM4}nvZnt59A?^~ncGb7ogc7(@*^AO05*RuLtnEj+|tr5}hZLI$0tpxfG>vV^8b_MRW zo}8RC;oGGvplP|qgT6&^*`nkJggm`<$+Ps=3=rX7xK%p3iY@w_V%4WSyIptu_O>4l zRs&hp2bcyx#1s3esdldp6;Ia~-t(i83}N%-AFBVuUXN2$RA-ZZ$c&_yA5G*XbUO7P z-0T(f>n#)AcdO&$Ctm3O$w2C}vSI}}R)8Hbr<(HGj_y6B%^~44n##*Xx}2HHoMM4H z6FbE9Yg6j85kfcE{QF8UykZxoI7O-5vvX@TUK0qq*d=I)U?B7^fx*sczSO!>wf0p> z1gVRb2!sGi18DwP?#I|3bvOTf4mgndZvyRX9bV!*?>=$9Q%4#@(KnOS z>Oss>M8=X^>dR=C$ zclp)}LF%!^b$D5!mz8{{#}l7Et|ezjf(Wnr7ec?Vs&k5phOU~k(7nCu4>)30=ifIn zeZyvaPEjgj^(ULGdF~*^qLs{@Gf-b7&=NRNrDpT0yI(o{f=Sa-qm6pHQJ=ry?>+F@ zBXxWji0px8GHb~dXs)G;dpVE(l<+X@ml1X=th>Dw^e>s^%PCeTuxGzEKDM5J*d1av zL9Y@_tJtkpPEqRKX@7eqe%T*K@F`g4!|smV^8@1~+g68K^jn!{A~BZNTBWC}EZ23d zCJq}u$$yR|TAf{O;-TvN4Xms%Je^(s<5B52J7QEi%i+Q3n1jLSEQiOSV-CikvvQuO z@#pBx!?<&n!-LMzBZI-_EQbf0qc#jMw+9RSDUqHM1uyyn;{}mk5Cyw9FtUl1O%(Ki z0OK8z-Vp`Q;DPaxNFRxU_Yi@RL*yJ{jeU*PObuPf@cD*}uKqP#$~Mn^O- z{6)!MRPaa-7(t>GBr3S$2S%_c1&a#KYrt43N-ISLy+goQElR6F!hGoq80$r8y{O>& z1B^|gv`JLZIR%UzqO?O)Fg^nqdqioEsNmT-M%}YUXE{8s z9vcGV>X|k_HKrc@n;1*aa(Em)K7;Y|>>iRiXx`lCSnXBsDvAJu2W1yv*hT5xF@zf= zqVAES3hgA*iT^@dozD>5)pUxW&oqw_5lx+zq?Dbzuu9-a-8 zD~HK-@JI+l_gT~MkbS(Gjv@O5wDNd;99f{`429&5hjbXV&mze_>ZFf46FN@dSsufW z+AwyXH7k$T$B%^Z`YeaX>SIh4#^|#g9+!{LU|c@S;j#F5X#->N*?aL2e5?V6;IkYa zd5_vK@}A}JfP2iruf@tK_(3tso;|~(>oH^*qw7UzlvG(tl@+`Z1&kZA^9{KO1}%bC z9&?Y;5g2pN$}cnhlkMPhrei z*m!|pJUq_*7!S`z9*>2`9H?vxl~Sl1UN8a1O=`GFOX7{UVO{pQ?C!V3K?k+3FV_c$ zHU9^Krv%$mLOCoR80Qs8u6P0u41YZ&SBzE$MxY*&D;fkb&(>6WvOn2@^}PfEQXvfg z07d}u2q3lb+9)uB2&6)|ajMnmy!GuFeG2~tIituZ1vh5!>-Zt#eelo*ew{|9DR>eG zzeWpA(Lzyl;;M`a(L$91jB3$B9S!5Q0CzeRyzK#x+z}ut7^V!2ECG^&z64-A6(A{i zuLT&{0we`bG=cF>FuoHC=a{2Yf$>Rj`y`Y=e>X6~2_yxB>w)o>w0=uEY8KQFr0oat zw`M^N6l({HUYfOUxmb6(*hsVXg^FcEMNiGz7bcbu6Dw=hzU^ZB?P3?r%638=azgY$ z4;a)VP8=2|jz(WAFjB-WDPm9bZ2%)x?3OC_M%NlJu8YmCi>)y}78vPbi*&Iq2EG9! zQ~WDaY=_=%VB8a1-4i?DrFCFri6gSau{Z#L5iXSpmpsrA2gVku;ufhY`m=zsU4o?G zA_s)ixpz(|nlCP@ka7^BUQsl8DM;tASrlW2aMkmBn9K@fRQIV<;g`6K>-*+6q14` zw7_^kdp@B5;67euED;{iWrBwFm=1kRN8yeHWFFHQkLkPuj1|ITx<=5jzEilUqTm%4 zc<2{}q+qxcFn&`=3PzFx;}3=_O& zf;k8-!k*!nB50@}rU-!?4kd!mKxI!zh7*z<#x&#f$JBE?5fnu{5thS2M9?P0!OPTh z>=1kg)W=9AW26c=oN*{HB^*Emtq%kcVLAI$^bq_?h#11&i{XUe2?-8ORxF1H(G>ee za(^RLz`=@mAxt^P3c>XqF+!Mf4h@2hhR`7F84d@6Ik>vhr@N?d*LL@%Ha?l*lY;V zAwdqu=fG|cwfEOo_1Cw?z66XQecd4a-)PSPBUEo6s`tQ<5ybIe#c&J{tiS>@b_dJh zcpdnnXc4hWbC?c%24OnbGaQ-&%~*uyV9#(w4(x4caTJESJtg|5#HoM_L;r#}6>wqb zvx!py7l!^Fane{^ABp}Wane{^ImD1dTyQf3r7RE)3q%)G^n=Dw=2a8S` zn{1`1Unx3iY_ip&elWCAd0}V{6af25VS;wXU#|@mS=AW5J>8ZF{bcr1cBs=b0aYJk<$A}13V{F z8O`^R-US%G`yi?tIcSBl^@3xbXkIH)Dj6x2LAw;~7uLZ!_zAXJO}j!r#k3~X*o6L- z{PmTz#lDEJC^~o@GZu>Fb=FguUtDpzfoFHpVmoOqT$g~6Kq0vzS_UwZX|ZHl3$JY= zmdPZLyU|7#%>vs zBZdVbY6`0w2TQ?X5G;k|m_bs^#UMTk%i*vn_zc3Luu5|%6kK-@3Weox_!E5Qc+n3- zW*nYahxLS11(E?r6nY}qGaL*BpTW<|aySACPN^Q517{rXn_5qhSih?ImDI(4h1e); zVSOx1k7Wa1_yr{#AO$bDAwUXyL5_=p1tTsBE0|-UV9v4F)0s&Dr@WZ@6xl9CcG5Vc z?#SSRqUf{2iRu5J-2c<$4z0{FWw4c@asR{Qj%YLN3ms6AX3!!=gcHmg}N@h2S@=i8$~LHgEGEb!Ih_qLFDI*Ye@t6Erf}CG|B=VE?_)Zo0K@k&onC<953Yug z{BjT?h&3<+2EyGq0t2yS=81|2gslnh`&2SKl?r3b69NRO^RkKygre9tnDWaiC=k{J zJvS_ega6<&2>!!zIN%TFAm9%xhvWRz&mh4#jdfC=@C|P$-tev7j&qv7kyr!5jz*Um7Z%MMh?k z+1TZP@tpK}PR3}qmaj;gSEQe2Yx$ORdrL-Www51=_Xpym*;;-fqrQ;2Xm)|ppQO)E zGEQ?Co=1H1Am&W7*<2zHTp~`^oQ4OA%>qSl&F*u#*kZZZQ?vUF6+4ECgEYI(F!Ap& zafoL3xlU}ePVA>S4c{oX+bH(eoQ7`~du|s;qY(~OjS!nhh&}K$92k+}xJc1YK;R1C zM2VB5!~j9Fsf`hb#)#83o7xlN_!Htnp}^6@gg9}rpxNgph`tHpA_0Q{KyjitE)j~- zY<-i(smWrXkYEm$0GW&8B7;#$oFS&{X72%*?n&SS$ z-5jXUe_p))XI{lYL^Ia@9K{TG35a6GayWDuewhi84=OcEZr7LPlvYZY!*7X@W{l5a z%upA?n6VrVVTS%$gf3%fZcA0fGHiDACb7=SQOYm}ntKm1>>m_80%hPxaDE@N&Zj#j3r)E8p&g%}Gg zNj5);QL`i^i1rC$;R3U*203H(;n-&Qe#1I8i(e4AdobHd zy%$XH1t(mi5%rAe;z(y$Q#>?gIUL;#bBav#DYK{9!(rB-ZD65+ju@l`zeWp%q6J6I zvHww_&{4q=*L{%KuPeJ>R~h|kz&NHWeoR*m!>oaETvzJ2&I4hifU#aKxgPeNX6RjD z#3_a16i4*31LLGp=%nIU;P|mnyyA$5iwMWY8iu2=VZTBYHujPnc@19@m(>5wei3*n z4itwk1x@we;01?L{)1lx0qfYHHKWvFABGx|TG6B-#`vK3kbR+ozGuX#V}q8V(`g5- zgRiS*&`vQ-vBLvq#I9rdI9?rkGtgN3FIgU-4gN>02Jn^~Z%@+&{_AgQB8VSrR1VyS z#UXGX%i&;sct(X_eQZ#2j6R&L5TlRzlsPV+W}^)7Qp<%#7`X+_94s^p7MkISC@{hV zLzrN~8_EdfM?o2f@52g!=qB1?6K#v9x4;Oerf}+{VQitMEd>}`sl1iiXe72$+pW}5 z!#GS0hp8RDID!PS2H?Pe*xwKskmaa&faW29Sb(fwbNoL|jki#F3oWE6Es7eVs68G9 z;*AE@r~w3$GkyqMv{-2j4-iKS;sLVK7z!Zrp)q`AUxQ{8O*Bk2p<@U!0@)`r0|QzH za6G9MPnzJ=3W_e!Sr_OM0g=*xbCJ%wNCO1~5J4nCcA&-41JRL*%K$6L3>j!CC`IR% zqN{@8{-8Ep2gwPIZD8EhIo{P(#Hba77-Vh0VFl6TMOZ;LA#o@{O`FHi@-ehBn!JcD z$dqtEK~#eKvj5FX2J{;afr$ME8u5R`l7Uc+tl2sIBGwS$7ugPKg(9s`?C};cybOn7 z#4m(r>TGy$^hKO=5Pgw#05jyGrJo%kjgOGlco2{Hi%bcJUBq1;!Y;BpE>|HJv5p9} z$e!T{i&!usEV5@fsv_QB#UmS*lcFLjVmWxPl;v;~MYOpQJ(0ZzM@+;TK;x_?hSkIt zcXxPij%}Pca-v4`rd0B#X{915gR~c=Cg}-s8M`%V?G)H8_Z3NCU?9Dh3 zBQ_7z{}MG^qD67y!3&5?lmjwq8X-|CnJ87jD~X8E$Xh%ZyY?hu=iDKP^wn!6cdF|v7BgUqBQkJ9!oH~)zS8nlgYF|Yg(QHifNY^~lQ{x$p z6q`nhEpeTLQX<6>k>VH)BT5__B~HZ66G$Y8T@%Efn!RkY*ehB52i=Hxa>!oB47X`+ zB81vxjc3N!v^3s6GI$>uhnGO0n0){`zYn60kyYNS(T<>2Y4g~WwUs(;g$Ne&U(iE; zDl3trabm+F8Yi0!I0z@M8=z#hVpy#dMw}Z&dgq8=4vDQCd*Ml zH_dzm++@=S2ie35L9y$IVI48y@fV_QvZXGbNb$rKtt>Wwspy;dETV6+(m3=c=J@BH zf7QLqw?)pNWPmcj76WME*JzfTYL3Z(uwT zAnCFD0^^kcNsqy120H+YulohA0u_>~{f zaS!N}0=Kq1Jf__=H?kuX=Ln@Z;xRz62b8i0lu8I#3XGG=pp(i-oC<&uuXx2P&Cxf3 zD+BvZ9P|{w(~Z-2GEytMEn!{wgy3*Oa7MsE)XuuWUPaog*kJ{r8*p4y?74`G%2r7Z zhl;BtMys%H$01NPtK@ZRxK2x>*Y#Dab~~?M8{yB&ixceP1P63*0V71;AVl8~0rqBVsITRE`vj&5f}`tiy76Sk239CWg(#6)(Dv zHoP!Z^G{w@99}b%xMY%Ic>4_)FG$4~q>5(U%O(}GNfphpVm4`zO`2#Jzli%UQbyyU z^%u+dixu%RgVJcxGg_>sS@&W^&sedV<{U0oY#1vx(=bkoo+rg>n(61PSoN$}3%$Ic z^paTXl2~7JzIIitd{wNWIZnGFmc1c*Xim>=ig`=rAABvnak+eXD5BTo@FnDrPA6|CtokBH$BDU8=|@scPT?0iw|s~L%rl0&3a z9D5Bs5+gapNX0PglpJnK#c`7j5}S1$HtTv~UqPT| zW@B=EX53q2bg23gDmXLdASg5IXB>+ea}bM}J;U*r(e%d9ZkEHrm(dVF&}C*2bF5`- zEU4^0$*@l{;w*tp^S{~m1uyk~?dpOyLNL&={ zFN#k1-47O7-TzYN)b-3*T_qP?C6~w8A-u^ULC$(nzg{e+xdgLG)Nc}t;UyU8W*iw? zQ`Os|;kM|G3tGwSMMo|?Y_Wlvmod~nh89M*EK=4I95@?2xCorhayVEvsz+o5X4n4K zNxyZrcs32995NfNWn8$J5)PA%O7K!D8*&AM25~84&u~a=99Rg6&2l&lHhxfRGYqy` zSrq~s2QWfkvvtUfcWv1Z$CEDcq%Up;;~ksz`PcJ)I5UC&QT{1ymSfjeGsRw+;v@~@ zp4jJ}I0YHFv15gBsBC;qcs7I>LWl!y!Vo)~y*G!<#+v4z<$@A3PPV0{$90{L>jt7* zAGDs@kzBg{iWO&9)_JTjR%>Tj1P14yW=}O}%6Fg~#I=4u`A6U7qb4C^LNIZ3qr!}!u zU?eET6Ok%5Aom6o+^a7`rEtd=J3!GYNec7OFtzcLy*dcN(BEql(F^-y!K0Y)k z*xPc%bbMRHXJ9!DA00Qoh>y-f3ot-!wSgUii zbo?HOmd;A!2U|gV(?C`(<7#ArdJDjD%c zZhL@zu_{UxfXw9o5GkJV&G7K%94v(8nDOAvIS2;NdJM;a$FGl`7xs+yMl*&KGyYo@ z_8of?ZZKI6hj>R_c;?G;IIcV1r$k(Lmczl^@flnVSj{+wJD$WBn{(Co>4wy!%tSd! zdY&Zk$9VWZVCOc1sEZE-w^#|d;|gESp_%yFg zF|jcsfURm{Vo!+Vgy>ShYYNyU+927}A~`L(XgvI9L~^D;)NGPSl0+Ac?RY^X7Yc;Y zrig%l;!@z^FyNo$$JIjBuZxge3S1n9yTjVJ+FK%6k1l9#!Xp_XBo{OtfsrLb%8$GS zMz#pa1@8?5Nz61^y_G^{#wKTs@P$n4h8V2M}Rwf(qZWH_( zAV5;^1`RNl3Xl|BoPZH5I0p;G@Dx>Lcm@mAHH;9!IYcOiaA6>^N>Ek_M!Zo2j5UI? zMlj-H1&s9qBn1&PfpJuDIw};^-1|E!ls+m{)G#gy5MiTWzzsZdRe+@62{tgU36K;# z9sx$007=2)R$yEgASsBR0gQA3l7e7Vz<4G=QZV2L7|#Vr3f@}=#tQ+Gf&h}hcqu?q z5C;($KZPPcg^~yw4va9Ogb^biqyu9uQPvV8p3(qg15q{*Bl`A%kw!ezNOcT61;$xFw&HqR&Ywja%{+Df)_((s&_Xk-D!)BMsvNDf)qw(wupGA#Ptt3C#)KPvZ8I zl+ZXXf08OcNi7W{kCezG<iY*aKED_6Tc7995T1&(R8pd+5)N-+cCi)>vv=0+q z@cta=*eJSg6y0$w0AssYe7jgia~KmL7LO3i;8`3G&OidTXau>x) zxUGeXT@)K!6q{-osbb?)@h^=NHeIZeF4odGVKc+KB)yzaIB##wRHH}v`LQ*0mBf4auVtXZJuf+kQGTin`CD0=SjKh+0STbUW zJTQ(($`Q$^@mfVoO0;A|tQU|tDk(=LqsEPOTq=BAa?|*J6C@=;GUCMvc;t+voRN%Z zmjWY6Qj#Pi#!UbtSyGZEBd+Euqgb+3TEn<1DOV+<2JGpYq+FAX8fRI$q@)AG{C7V= z#|=rjAsIE^vrNf3Q!1wML1#%7vZN~LV1-BWB&R&7C~oC}v00~V))~>^rZQ@8)_G|d zJ9U5?svwLgNbJ z>d3%9n8Vg~{zr0fZO6c`|F3rZP}TqI4L-aS|C>JeQlRv|0pt}wGTWx`zZQh16qLVC zF|1Px<7Y?wF4q41PX=LCkN+MpuGPoPIBVG26ucm;GPHYdV62kuSIKTT9)a;ycK9kg z;qU`Sj$AlLcE;fcjBj$`Z?ZEEKVWR4bv98iyi=kwv{#9Nu}*PZr?_I>|DW>CKd7qX zisRgS-~I8tpzxF^qWFS8uqXt@CQ5^8t#%w6tF5tx}eu##m*>`-(C26(dvG*(@|t3ysH=DeyWVGCH34j4aCrj7N+_2K7pkqzc<);q4l^tuP4tdy z*Lq{udXoW`06LF%WoiT1Jmm!obhkkF!QDBRZnfR5b~JiTEMVN*jVCEa00b5N-?qO+(&Y{MEMN+`SP3*C zHqwA5KA(D_ z&HT`$i9nm_wwaOG_8`GoGv=)6Lj@y2qZQd`MPW0P1Wi^{lhqZdE)uj@Q7u+iv}OPw zat4F6!%!Bp9HM9V0Mo!SCYNEsJVX}3Jmf?K=MW*J=1sc0N$-hso+Cbfw%_Ly`|L9) zkqj#%NSh3JpE_(%LlTR2g<>`s^ovC+0%T&~djxoiXvW|Hm_wM1=+CXsKmN?YotTAj z>(XR-nyg5ufo>FRM6}^xBl5cmBqH7bNJLIN$UzJ~7tX;sjzAwG4$y}jM_>;Tg0;VU zyT+2fZ?%GwrUdd4nxZtqJ*1N01~nF2P4~8Psk905rJ|`@)%O3OT<|ryGM%Zc?zz$SW8DXcO-@aqH4z6C9!^d0H1V8ACs&>uy?o6<{se|& zNEis+=y5#qUtl*mX+hgW0w82?(t@yw5NscC90Aru2zE{GsY*rfFTkL9OVa3__vuWD z-k`<8w)H)w+&iI5Dux2fs(heZ?G9kq!K0EOzBM$o2{-+~S}Wfw0IsNw^fHBxTj=z_ zh5;;JxDE-7D~5$Qf5~-7&|6`?fun^U3K7s&<+V!m#1cI-Z03+ys%K*6Kp800-71LLXD1Pf`R`dfzHN8D|UWj%#N3Yo;Hzuq0S#(XSiKWdnkQb=D9? zP;LLP+Mcc$QdQe?tL@(?f*N~jjXhJ@IjXVe*Vs!T0I8PsE&#RAE{1!7_AUUYMHdC5 zQ4SFxS~T+`Kbt&qXrBd*Y|)crMCKSitfG)$wGp}6@G1M(dyT<+jZ{=)x}(+@Tx+Ca zn3w-x)ab?+JjZ#aFwz>SdVyWzrSoq+arh0VAUQt*d5d=dS&2J22HnCokDfI@aek6w z-m%185)Df}`1WKgK!Lu+oVd%@GqsOy=sdxP7234kZCWB+{*&O0<~yVHMh8NIQ&!9= zD-Jz939eZ5>w>`m30@)`s@)f!=SZ;9?zPhP1B*a{Jez)9;H{1XWzLu~X9Aq6!(Sx7 zy5R5P)xqE8kN|c!Sa^ZlWvvR*E@DvPS*Dw1cE?Wb?!2h)+kL-tk}Jz*BYm?GWLE|z z9IeKrR^tf_5@6xW#Yn(;am)d5UJhX-FXkIS@^bzHB;H_B1K&9Gjf7uaZ)H>Sw;cDa z(AEt$J2{4c@?sGKZ!nOaG29ximXsaZLp!vw@S8v}gQVV2Rj$^2)mjn;O7yDPy6V7% z1gmsomEH>vAwjX3UTlt6oN1Mq-Al~D@Rm+@Y%_h^%p}R=WhW|We=)~}*4%o zQIuNKtu_5&_SZ3=nu8Sk>l~|Fjx_)d7${1f<>py_ERT?2z4g#~Ypmk3>ov=L&GLs? zXuD;WA2xXuWtZjdvi$gdB&fICddnYXq3xct{4hzSJF;yz+xEjkn*>|zu3PN>aOOgS zx9!-s?PP2|aH4kCdb>ZCp-6DZjyq(h0*gU{276G0{Vn)fB*9TT>ZqNFk4}O{yMLoS zQaJ>?-RZU6Ndc6S?kIB}D07COZjj&|C;lBLEzDzC{JTz?viDr!#8)_JSnHxF>%DR7 zy{Ui>l3;`PfeqdvfWnZV(A%@nI~3SgtUYq66mVx06f8x#R4N~~9+qaebYl?k94dt2 zpgelW>$dy4-5W`e;0>F8F$(11utWZvV&Kk+?l|lu9ClI^L9;{4fH7DDq&u3O)Mh7B z5wtnvJ|qU-MCgvoPV8l806g}=fe+VRL7T?D9!fTc1S!+Omw^vs4iQ{wj0V7!W=#o} zG&J>Oqn_L4)#$SvGR>JLtv+!?o>vhAXz7r`YBgF{jK?w~Tp7pQFv{ear$j<417v|7xF=^&*wPS$IDSvkXDu<@fw{VDnlVgM-PhU}p z0FomPfaF{h1&16H7ubV-`4f@yZu^T+Mg-6t8KFeOnbddjC&HMSKZF3XqrRa%=c*Zw zha>$9Fgx_Wr(o2P%o#-;yngh)L%%4T5kTL~-%OC&5eKAp4iSKMs27IGoFxHeM+gkG zIYfZi(SZQO&Z#ke9b;eYlCfM+*YW(~UoE=Mc@8(eBOd$Q8H`qPQZr?aJ? z@k(Lt_`U6$Fx=BVNO}5q$NoIwaVaQknst6u z5Uz&yC6f-Gd*U>Pd)khSr9G<}e6&PrTUA_dovMHg&ba-mWRhR++eyY<7$ z1DL-?pa+lwoK=wm9MO`3&ONh};t$LjCk2@KNCEmLDL`SC0<5-R_^Z_~D9_$o_-T?9 znBKVUKPWw!CI$c4S+jOv+M-M;7*V|}W#-CDZ(@iRfifipXw2|80)S*G7&ERY_f&Dp z_oU!&X$vxDZH;?Q3NR_h=qcjrl-cEl&7($1!IbH9(*ODGVTfEf(t7+U*h9jn?WmVGSy zftmZ)866wmbQb>dxrH4(_PZikEfEoylU*VmN$FDTcY%5|1< z|7At~g>v1YTwhhLmnm^ChUB!MvHZnjRrB}!`(jLoc2)aAJFi{PE^3#w%i0yKQ@f_E S(6h*g#xi}mPFX)6iuqrt`xu4* literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ElementProxy.hpp.8BA84EE202BC6DA3.idx b/firmware-arduino/.cache/clangd/index/ElementProxy.hpp.8BA84EE202BC6DA3.idx new file mode 100644 index 0000000000000000000000000000000000000000..eec468c110818e3c6a9328757241d70a5a8b69b4 GIT binary patch literal 1732 zcmZ8h3rtgI6u$kj{V(n9?JYwneE_90DIzPQ9evpjn^9qc(`7tlW|4=&l(A4856N80 zhB(K=jOpA4Q8HuP$ROx86jMNwho>#43PpCi9_1Qb>K(O7Htvm;M)O%E>BUeDQ6 zc~Vp~-RMma4j(Q5Cwp+s)Q(+g*J2lIisRe8HCz6+k2Kg{-gp1}La*I1Z z-MD#o=Ye--N{^=(O_xmFxL(m1kv!b&d@wQ*-s`K{fsg)??!9%sYxa|V>63BwE$y3L z^w^_f73#9a{IxM<)345tg}jh^O%_qM`1y%~zAoi{1AT-Wna{m+>Z#h^io^x)<6nfI z8v1kNoBKbweI-Zx=)><-hf9x*|9e!X4$K$)f^rmf2XEQ*bEBs$FH8ZJ^=mg!7p$A+tby)OzSwE0{a8d-52Y9ZKt*U z%e0=;E3iKRz17!!cT#e1A_9p>aRV~2d;t1>Vf*aduc|2yNeFFx%oxuHp!0W^e51J; z^N2+Zq1~Zw86SW?)AgDqwbHP-TwIBiEcOSWsjAXlo~00qS_&KY_UxIWLKtk8nU&BF z23sVSh(P8*4k=h6UFa}x_D%`~3^pR89CR8tjEaA&+a8V>tkfy>Ab`PcFf@oJd4WGg7PKq z+}W+}Et?2zMrIb^J6}2Lh4D?<1a@kj2Iz*QyyT8<$%Z2}P2&kl50PR~SmK~S%0AJR+l;XKfABN!KlHVH-BUwgR?Q}X z6c_*j;#V7Bm;?g*R~ld#2?G098DMBQf&F_7@axJo+cRfOSIJ69)zYA;l*{BAcnG>c zI_F<fW!NuESF@vp&m-F=Qi0ohfUY>N61t#n7o literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Equilizer.h.325B05F4281F9C2E.idx b/firmware-arduino/.cache/clangd/index/Equilizer.h.325B05F4281F9C2E.idx new file mode 100644 index 0000000000000000000000000000000000000000..d5ce3565769e8d4bcb05025b6ba9b8cbc84ff8e9 GIT binary patch literal 7096 zcmZWu30PD|5`Ogq^@6^U;OIX&}Un7PX|UFSp30?=JhXztXSRq#b0gS|2ckl z)1@9K7Ovd;B(k8SNI!4H@#nM0cX`S_4Db|+2Svo4Nn8_f;06~w@Ep_atm*+%8k>4D z;K9z}-#c_U?T%y9h0GRz=dA~-FU~AzS{LkGmk~9mMHRZheRqg$Q_0zb`#Wd4e9LF6 z9w-0e-|BE9W=z+SYfcwtwSBas{%$Pj|#+MvP>qm@4NZ@LH(aWZdMhJ-(-(zpD{LkO$Im5Ie)W% z<-*RU!(*o;Pfk93;>R%?Dtk^!tsgPySi&t~T+pj^M~kAex4qtSv}#h$relMw)LY6g zk6+~RWaRAU+YX(po}9Y&>armdcXZB5@i-RVI(gpNh5m8QMTUNEuebc3yFPMgA^RzJ zb$#*d)BP(GN4HJ#w{gZ@mBbd1t`GOheYErGsYvx9(8U<Y{=68}=N&D7(9LfZxHHZhouxEa>H&|8jk| zb&Y4v4q0_>+CQh|#A$rzRqv_3vZZ$8=&;Q9e$AM__EB)-oz=;mFKlW*w^K2Bb8|nk zlQWFh!arnFEG7{gi_#2i3D?pER`!u)YE(iX*I0Bk`eQ5 z^6gCxl0)K;jMKMtUVq&X7s0S0%K1mSp(b}GKslE7DJTntBEm>2#Ysi*#O)I z;4K}p{2JybtU0m5Tf?e}9*NG0zNQAro=ur!yLX)l6j&cZUJml*;9%*HWj?z>JQdT` zN5cjZmMQ8fE~W;_3z}x{`qL9)1lEs`i@>G`G?oro^!tZhien9f99e6^(x2^bXKIk# zHmC1h-*a1IH7rNS3*`&drUuEEtiIOd@2(ha9v#Mp*@?ym$=~k!xytMM=VJxdmyBKl z&P%|}(jm*1fU*T1KVF(BFujPGz5?zmVo7s{EGtT1jbL@xb2MyEBBcS84TQzqAxp>; zFGwl~oGvg9M9L=MHW3zchb-U!%ge?8Rs9SNYfGdU55d$RIc5A89jd1* z_6v-TsJ8{UEkr$Yhb%w6ihuCK_GgC#Hk3^81qfe&ouxw-zaIW!KOR&a5g11zWixP_ zi4=2(EWWN?wG(`QIwLRvgk?K$+X;)gLzV&G`MHX&SL*~egiN#ptakus>5ygN@)>)q zk_I;jj2)5kC2(I7DdrAYp7-4r_S^AangrH^EZA4+YiDYZEDujkzjHOZS0_rY#*XUG#hPYYH++dbnx9TEB0Lw*dByj3|ukTTRLPZ zPrIUj_*KMJ4a*aj5sDGKsX_8K_rs$+P7Lf2SQQ}`f>R;5SUO~BSz49VkbbknyydQ} zt4=gFNbbCLvt^jwfZG~2j7Z3}$rVfulD~a?q3*&~?_V`+5Fy7a;x(oQ$=kZ0%DcHh zcqFi1#6UhuAFZiD@~mDbBUaTv`b}WE6BCyJS3;tLxkHwM#mlwr(J#9+tUxA6a87VH zHAq%jm!4kabn_4M(d*0hwG)jEl9N9v{cT*9+cP;MBcoS>%}R3g%^k8>mrR7_lUO;~B%`DR~|w6?yFPrrGy)oD5{* zX;7X99s?|188XgtQJ_}5*bIthu*IWo#J!@uw)&J=Kq*Y};%thD%<|cFFdps0<>?-~-f}7x#kSUI?PN0wOA; z^h)rnl+tS;qDD$T27bpV9dAWq1@m1oYS#ja7CJjGwt!EI)E2Fv zZ>6^A6LprmJU6Wy@rYbDSBZy}pzgUnDavQ_m8c3Y=6mJ$plG&iHb>D;=(!Vu>7MTa zHMC%s{Kd=E^sdJLhIjda;b$7R0lK?FOGE@`!@V=mb?w8#Lz=DF(z&JxwOzPeSpW^aH5H! zuOSXomg;X#T>Eb6@krtHA;bp8v=cvL#z{UK(@p#w+sbBt|9Fg11J#gVd+HgwyPlu0UzQp6N@ic+0YT`5ZUN`Je-yqF%D z{x$}a^AeoVmvUwXXG&0(EXxKRfZRl~Yzdkwn<_y$wmBN)6EE=2@Ii!jB2l9pBFZ6JI&DOi6xTvT zEybLr*1?U(T8D&pbA>}K)(VPNY9V7B_HC7h_cqYC(eRE3lbj4=IfU}7ZrprfJ#lvd zS>~dEMSbu*7QZ;#nKJVE5@NPohg>~949^@$QI>6%BYHhAX1QhgBf{}SV`GJe7a+zWqFR_om_MF)UW}AQ zsxZuOrh*L@i3J(cP#`YRXF<^7?XSidKliuq?}~Q7LX#XgbCrqwym%f0&qD~#ZOp&| zTPRlbPThR+vz!VdZ$`Hn&gcMGm6ElZYf-w^Hc+%l*V+cYZPK;2gT9@*Bi61&F>}RA z1>FX_+tNsI2NZXxV613KDj1`TQDJFGkatWEijuixHSR1gCi^7!q$ow6VoOn)kfx<* zf_#F6mLbo0i?D8{7A%LDau|%>Z@ijfs-(CUVrnT4e7byH!gg6b$uO$m<0|+B2VwzE zY-%pMsVN#k(MXqWtPp$~r8aE>eG|3mlj7zj{g%`;ypzMk$FABDST?8e9Re2iuuCl?{R1ax?V;|>FBdP2a>z$XNfRmREUc#ILeI7c~0L*rF} zxWRS%SQ#hETK%w7Y23G~O?vr)fcnmLPj#eCI$Fcrizo^EO*R^N?Vb5RedvmgOvu z9(2$W@LB>sXg%By5>kziAGleIy#f!{H*CKC&hq+oj_B7*Kl7$B*4l?T(O4U67ptR2 zE(W$3l(+{NE660qcNEkGvqmB-#3RI?=C$w1-cw=1%9);3aEL7A;nSC{kMF&s7rwU; z8yO#4a2>pO9W>X$1%n#CyAZFKpq?NpY0Pgg^qids?Rja)X#{Pf6gPpkNs606+e|T9 zpJ-!zxIyiSn};U$LpLAJzCVXMtH)&<$3&2>CXPA^1Y0TW5FnwbfJ^hpXHx7TC@ehU-6EzuccD*b(C3A9i(KG)8 D2wk$T literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/EscapeSequence.hpp.EB19812BF97F315E.idx b/firmware-arduino/.cache/clangd/index/EscapeSequence.hpp.EB19812BF97F315E.idx new file mode 100644 index 0000000000000000000000000000000000000000..a1ceeb6b4753fdaaf3283595fce698d416189480 GIT binary patch literal 552 zcmWIYbaPW+VqkDi@vO*AElFfyU|D#0vo_uC=ij?oU@>_t;Z?^Ndf~CjHf)Qrxe%cemV==x&^A?)KM*d!@yr zw&xxD4sF@WE0R{7W1;)$+|u?{bK4acwJUHIp1u^J5H+QwX^V45NQInJ-LhLt-<{>0 zwg0PZ5bsc|3 zMXw@5ab<2&9nj5YLf_eXIp!t|6AH%$Iise$iT+M z#w7wK7&yVQjBKp>9DmPi&i&;m#Ka2JuOzCZ048Ai?=sH16Mx0EONfaDD9y{qD*+~8 z(nYCh#mj(3+2rR2OWdC>!^p$N!N8#mHXKO69LLB7b`;DpO*^Eelay`jfU4CQ)D>Z> zVbVa=AcyL`eX!fyG|v&{LS`N|J`p~7n2UJW#6`sAVK#7qT@5n;M1& literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/FactoryReset.h.F4D524EFAF2874AB.idx b/firmware-arduino/.cache/clangd/index/FactoryReset.h.F4D524EFAF2874AB.idx new file mode 100644 index 0000000000000000000000000000000000000000..079a8aeaf0cbe04483821d7028087de49868c7da GIT binary patch literal 2588 zcmaJ?X;4#F6n-HukazPS50VElKv=>OWf2tugMcg=0|JpHz<>*@f{IKDvMCj(SPLSe z6&<#&qH7j+$8F?uP>Gf!?fEI(hguG=U* zEA0NMH1V>ggoK~VBJ|fPcGcG#SZ>8uqayi+yf*=EbB0};B&iCUG-=pyMP=`+ z{Ik~gcgj+{+~5A@V!EfRkJ?@Jrff^|cE^5I(26?q)?MM|%p1Wni%5lBaKJ}U9&Wjl zh5f~5Zp*}Pfga}t;pge7bJv7MtGZ=Y)qzGmk9xK{@q*NiDtUnIo}LLZwZg&nR$%=^ zWv<8JQ?0>I4U2C`FXdeN=3lqe@|%l?Q)&|Xw=nz4#w7+HH!Esp|9&W}uBrL-tf7M! z>*htRiAkv0t@7P8Mt^VCUdoVkC%x;cIH?-&%{G~`OE6HsSU7`eVs+&b1^)b#0)VE1haxI zh*Vap1x6ScU|bf1V8tYCJv`E)&Lc5n=-|upwV6IJg2~W00G7~g+kB_dzCsc+feuD2 zBYOHk834;Q(Sh0!du0oWaiGHj)&jffL*sx?XNW8h&&z7^DfSKO^7sBnhDB4 zu&~^WHL5E{7@vA!r!n8f@f#@vq{|rB(w&&_q@naI} zO3SVmOTA95D-`W1d46IB4hWjCLgGZjcJrA{-JH}0+Tn;-7S zMZ#ejxWA4SfCuPUN?gfBm6IS2kJGW@@p!Fu;8m|swB(H#HqwjoqGyQxC_j3JN=Yec zlur3=OKzI`Rae-tI4VvHkN7lh{iGw>6V}P*vU#Y^5u1h_*FE)Kn*I{B34(i%s^{%e z)&{`VNpY!QhIbLZNPu{6l)W%{tKP8)#zue$0lNH4H$4sBFCJKI2q%OTo1v5>a3mdd zED2kpr6WNI9s*DT63E$dlNn3FR%oqtp3YStWuI88_fB8;P7E6gt)ieXKm##S@a%HY zGmlA1sW*1ks-X*GoMrl*Y@hqaZ#$H$aazh4a&REB7C9pe{e=XY6@*IJ zTsnKaG5ctdUIH{=FjljjP%N5h2y1qd7M?F04BSyr4%=Wauy;Vj>p8=e$BxcQ2uqer zlnDOgEVCq^Rk2U60C`25xZmp7ei#clKzmsa*1l%e7iZK$Sn4cwM>3DL42?MK8_~c* zLZ}_;o!dH>__8y<)ClmAEI|Se9^vP=4Pp&?1&ACShE{%^*{Ij)hyHxqyPN8oAORgj zM<4>ZGnu`RUw2Gz?BC}9@Q0$3kK^z~|dZ$9-|TWy=(_LSJXl=RD6 z?m)e4oUPqVlV#~4?j3XP!nLV8`8kzU<1yAvy>KuYY=$`+%*P1|yK1G`AWXvN@OcPM zknQVBnFt-yD_|nCyXJ^Z^(c&$;WA@%2hFkF(JwbXc?DsSKxBn#;$3*y_2SWSHPmHn zYOI~tCq79|B{rSonk0Og7$x~?Fh9k@EAt(MT?iKvCCSa$kfPD3%1u+v)qEi|$A<_0 ZtN;Ho08=-ULrYu)1k;F3U~GhA*ng8~9wYz& literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Fade.h.D18B1C57473A9B2B.idx b/firmware-arduino/.cache/clangd/index/Fade.h.D18B1C57473A9B2B.idx new file mode 100644 index 0000000000000000000000000000000000000000..23b590b77b99c42dc625f375533eedad3b1e225f GIT binary patch literal 9202 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 QbJK0`^H=%(^Y^O%1q_f>ivR!s literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Filter.h.47ECAD78C2BB92FE.idx b/firmware-arduino/.cache/clangd/index/Filter.h.47ECAD78C2BB92FE.idx new file mode 100644 index 0000000000000000000000000000000000000000..8a001d06ec580be994b27185fa41f8b524f58a4b GIT binary patch literal 12450 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/FlashReader.hpp.82E91CAB58850C42.idx b/firmware-arduino/.cache/clangd/index/FlashReader.hpp.82E91CAB58850C42.idx new file mode 100644 index 0000000000000000000000000000000000000000..d870b19fda40a865c813212a7337f67222957757 GIT binary patch literal 1496 zcmY*Ye{2&~9DluD+t<6-UcGj`u7hq%o3@19jTN@W3^2nmx3ECmTntEt3BLzI*1on@#$?eBS51 z@AvclRaaA0HEKcV$;~x86V2@#d4!Nm|Ec!mi&ONQ$04+{=TcYYDsv_2oa+01?XY9; z^Ob_yFqV#fbm(q4@%8GhD`F?dHryMSzOe6|c!|B_{>03k?ZY1R*~D(;tL%o;$y-0v zyT1MHrMe^XPZ!m^u6f@bJ3hXo`ey2d5AL1nZ{J`2ur^TBakcT$!Ta&)m0dIIJ)iA( z&N+t8_aE>-JU4!z`rYz@@N`NZaxCwgG`FmkS{qON5yZ8fZhoTZZPVdvThESc`?&tb z7yYMhi;KEnQHI}0pOzlw7AwnQ`9#{^G_3p;KiB8Ee!RkWCHMTD3jfQYZPRBmj!iqR zZ_b&uzt1ZuwJXuoU_$8Rr$<1o zK4yU4@_mOj{lHg8U-JkPCy|)}`k&se&by1&B(0opV7sy_^?AMido$BL)gS9()2SO|Z(T7?Pu? zSdAD+<27Lp3Tg`gEp1KI`+ht$&qOe$o%*kR2zdrRENjekFW?APc!j_*!KHlZEP^4x z0&70Bjo=Ut5kpug9;z@<1V;$ef#7ICw9r6WOe+UrG*n(`zJX$VY&N~O2MPk3!37J0F_5uusGy)JxO6$qI*#JSaOvn-OL6Y$2h|+UvW80Y zENhSgK1>3eX~-I8+9I%7hB+eGgmZfIjAN$B1PPDO1@Alfy_V&%}ie#NC9Yitgj3B z1)3_<*Thh$BSWFSBXG6*=Z@Xw*;PYys@$U6XIzRpqJBV7D;jR@TPPYm*7pirLMHTB j-zN~4Y;M`8J4_`vr4;(*a5`2ux~A23(PT$<2!+tUAoabh literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/FlashString.hpp.EF1BFA92D7A4B104.idx b/firmware-arduino/.cache/clangd/index/FlashString.hpp.EF1BFA92D7A4B104.idx new file mode 100644 index 0000000000000000000000000000000000000000..60448f70a6be60a22b516b7f688648be9bf71d2e GIT binary patch literal 2622 zcmY*a3rv$&6u$lW>ErL;2c@^Pv}j8av93VTwu%Kb+du_*C}$}-RV%3>BFq$2+nm0owH0HJ3=2rX;Au=T4<#-?2RN6uSa#s#f{vW+Iw z`r7DkC%be}#tx4%WNpeDilr(4w=J&bS@h+8Y|$vnEEw zdJD7XxMyzpeNVZzT2eUk;K@rfE(hm6OTV|g<5Kk(BMQZ>@smAk9w!$Tf6!3ZwzZ)% zu6vdDYEsP;S!=`E?x#z&=ldj09YU|IZuEvy$yA|ao+o?h#TIc=`S=Y5)%Vm3o~zuN z1KmO9_xfZ{3Z6aLHE@0Nif5fY$L^*sG-PtSKq9!44HUk@NDCFDV(V7-5x2C8Gk&T*cx@&tk`9 z9t{^E93_tmrvgcW1V|Agz`;LeRb9IE{qPLTnEv;OWg3|Y?w3{%9J^N1lA&ZmiF96paRV2YInY7&z?}KWc1{=QDT%)0cK&FU{tXuYo&;h zlH{a9X$TcaLMtQ5{b`=QH)3}7CJiGc_Z5snMg`o@W6jMUZYygc&`1!@6X#(n!2D0y z&f_=nlU9-(G3STn8>j$t{3r2kwv?VW9t|VWtukvk6%?8qKK?Rum4C|u$5AVOp zBO{6KlDiC4APLK$NEM0RY8qBu>QMow+Dm_FAB!FqFfyn zU_Num>8Lo|_(;geh&f%9uBHOa$UA>Qg;I!+aPZdY`>P%(f_WUHi3uMX7i^2PMGql_ zZR2b%zh=jFonLce=a4ow>1*!#@|kKek7cA;FkC!V#45%@H+ig4X|#Y3kBy8`43olR z8*AhI&RurbgdwPK8j~glTzH&6A%7C|*tNtnLwjq7LBL}Pl9=fL5dq5+#L=YzRCt^z z$<)B`@;FPHr3FphzROhL~=4`Iv@)k=Nfaz_-*;-dc4UAS%f<$1aco?G7SF~9 zXi03+kOmcy%zXq4v_rN}lCObW`4=*WucVhg(uFI~1oGKOwg5MQhtCrVktjB zazJS;sWn0A^w(;Vnv}2tWP2=@IB>wx#{hx@#0*Ct0SHb=guDw-59|~<! zXU&?mH^tVy+9y<=IP1*YYYCO1N~}yF+a>@1&Un2ncF%Qfi~MtzHi`}FtZ#ShiBgSk zS)>;c9C&D*c*!=yhnMd9#~x64&MG={f#r=@@vEJl$@{bZ{9ee<@?qsvmY1t;?!OgR zu8Mp<*d_BA_LzFhM7i^ij?$L}hfl4IL= z-|XWT-CS3%*rPHFbeXD!XL zI8>b1#cL{XiH-BSX?Vm3N#!oc&J>G<9qK?zt_2+i%hN*s{Zy~ zd*01RuRF5z(L*VH_Vgr;{Q~p$=NE>}^6AvC-?m}Lg1pGZKkCKr`o(TNbm&LB{?w1} z=hZV`$`Zb-AYbPBM%Lb4vEfZ|Wo{A!FjW1s{SJ64RPgXHNU$>q8VegsfC&apHf9D% zZbm`Yb|cSS|68Z2@G$TJ6_^W|D}V_GP8LQ6PA;H=nLBUZ;l0eB%ErJ6RKUy5D+neS zIDv7;zyMTmMb23BpK<(lJ_a!k20=bV;y~j?`9&qb1Oq246N4zoflpR_VDWyKdYO-b7pPy5Q&0>{!1OnX z1zy{t@A!m|fgdO>z$G9ACScM%mwzp-rEPe%}w(hc?3;VOf=zvBxoUH zp$H2RoBZ5hiTl%K7>L7BDTa#KFV`P86`f0D6|)To9%RmOy|Z21*?;J+OoU6b7XVm@v#D zppl@|fH2ZZ)JhI!WM5cdRB=GySzu_Z$*6h4LL25}ppl@20y7d8Oh92!0)Yv0t@&`) zX4b!FTs(q&Onh80XYvU0Gx2l5T*o75%w;TultP#+xL~f}5wu~lLFS3sz+K2AXvc2H zk5K8xmA?MBOEehlHHLsYfeC@+$pwDFZWo%$RD@x5t1hI>Yl8dcD3{cSt g1p+Vz1A{PvDFSCQ30C#A%P`xW*v}#$BrL)J0QIrW!2kdN literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/FloatTraits.hpp.CA7A66D11DB1FEB1.idx b/firmware-arduino/.cache/clangd/index/FloatTraits.hpp.CA7A66D11DB1FEB1.idx new file mode 100644 index 0000000000000000000000000000000000000000..4a2a3a97d49b1a23c2ce32c3918a412bf5cd809c GIT binary patch literal 3280 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 JzGCGZ^AGGEV%Y!y literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/HttpHeader.h.A788C3C1FA624112.idx b/firmware-arduino/.cache/clangd/index/HttpHeader.h.A788C3C1FA624112.idx new file mode 100644 index 0000000000000000000000000000000000000000..38c41e58e865b87a5987a2ec5ca892c83f33a05d GIT binary patch literal 13896 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/HttpLineReader.h.16670FC86CCD1961.idx b/firmware-arduino/.cache/clangd/index/HttpLineReader.h.16670FC86CCD1961.idx new file mode 100644 index 0000000000000000000000000000000000000000..13b09c30d50611be7a841d20465f47c70fd912f8 GIT binary patch literal 1190 zcmWIYbaR`>!oc91;#rZKT9OE4G6(^2aY<381S10jGZO zh5O4iVNrz@SDcUbTP(`m(-~fvbNZgh!OM?X3SV#+{3#2Ybj1yW6_<)ywI}eT@JL@^$dcT&%vHnW;t6SiRz07KoRzJ1Dlh)U{kmDM zb@2JJic4#@b+~Ku#aVg(vYq(d^@Y0;00D;M4L_;EoX zChxZQu0J|i`hC$ZHK*qoUGlgo^(^B@%lA3%yn^yFnK#~UoNiJZ^k~+knMc`k7O|8R z8OazI_1&Irm7jh1dEl1S>kCWQg{PlcdHC+3b_1R{QosM7Td#eu^@#RAx#>V;ZB2jsO!o3j>=FpO6fgVBi3127*_v(;fRahFlk8VggF@Gw}<6379lPQEFQ8 zVPG7*m;QfV?XepRGYgw2izo-oR2DWFHW@Ai&x_3q&VxCPi3{wc*OCb@VymkKc)%9G zB=@e@WqscHLWl%&VYV@Hfqeoq>G3(~4b}%X>ycoR$D92JK72JuX5?W5IUEuq3=HS2 zbn4u*RZ z{^Q8YkihRPKw%+WArqJ|E06QKr7|*YK%0=m@ld+{=B;;(<^xr$imFP&RDWzg-(u0S z^8^V#^m6H4ptrpIED2g>xmfb2=u}()S`Km(EKu?vym>O$WgkcwlmKAD&!iPtxt;V>H+^17849FR*9VJI$2E*1xQi52EA1|~KZr`MA0w>J7SvN8YwpR#=1 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/HttpRequest.h.C3D58DB2E2833111.idx b/firmware-arduino/.cache/clangd/index/HttpRequest.h.C3D58DB2E2833111.idx new file mode 100644 index 0000000000000000000000000000000000000000..5f12ea50164178851610508395a2adc31eb19e7d GIT binary patch literal 9988 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/HttpTypes.h.5AC40CD013B3C4F5.idx b/firmware-arduino/.cache/clangd/index/HttpTypes.h.5AC40CD013B3C4F5.idx new file mode 100644 index 0000000000000000000000000000000000000000..75394710272b3c0ce23ff21f6a7e3dbf3d27944e GIT binary patch literal 914 zcmYL{Z%9*77>AE%ySw{)uc?D5O8jC?bA8a5qDzOdnhYZ&AMB+Ni5LdtYV#`+L0Xb}cYvcd*dVqi&8q`l|B;a=G9!ozb9oQGA}tky0WLgn=~ zcayW#Ax8+M!Ozv&(y#z;Aq64#klFXF@@iS?fxkx!-Ol3aNwa03`cTI8V(;v1fdhZD z-{o(%Kj^-3tKwvGemK1K&QejIS)Q4`&}cK%n<~2}{g(MhdB?V8%=ok2S-O4w>P2Dr zNPK^DAeuyqyoc!KGZz@qFa+G}WDl`{A}7FH3wrgNWevf*i{^I!FcgSLjj% zE*Mv>^p`hSM5F~lhGiN$l2G+q+w*GY$7T*GK)@W<(IEny4<}?@ew++WeeDzx20?>0 zDmu~$rf7C)W@2}bh?F2`v6iPJ34Oh_snLqwpon-7)L5;eBMDtIfvMYDCnY{EVl+M!5&UBWB~~iw zNW%LK?aJV%+zAnBKu}>7Pe&3^i}Q@@A9Q8SQ`EFI3&=_XCYc##Z@?rjd`}-%6);K4 zEY=b*3CS=k2$B0Vb&!W{m)oKn$}ofJqjHSr5P@2E$OH(LrwDYB}wK QQV0t_5}l)Zzh@nx|FYl$kpKVy literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SConfig.h.24C3C1ECE9B78EB9.idx b/firmware-arduino/.cache/clangd/index/I2SConfig.h.24C3C1ECE9B78EB9.idx new file mode 100644 index 0000000000000000000000000000000000000000..980514fdcb2813f89ad0a924096e6d3a136f5200 GIT binary patch literal 316 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SESP32.h.38133796FAEAB84E.idx b/firmware-arduino/.cache/clangd/index/I2SESP32.h.38133796FAEAB84E.idx new file mode 100644 index 0000000000000000000000000000000000000000..5693d1c1569c23448369f0407fc0d5f672ed4d7a GIT binary patch literal 12248 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

N`=1QGO549eT(6KYZ2yMe zPL1~0zx0F~V1EN#@C&?-MAHfVT_kjoSZSv}8}1+>A=$Of{*$Fy*Z)<+4_FNo6I-M@ zF9^G%6zJ;OW`Y|oH)lMMLM+fqzujtRft!5JctC|%pJ0(}5E@T$j0qQFeZoa@K)@OT zXH38lmk&JSIA*r_UAnEiL0aA*?J;KS?-RJyl6Dx9>A{ZNAzki`*zKDm?QPtr-=h_{ zGD6CT78P9(&l1g9;=*tR(NswBC8D_`#aD>tiWFB7O%=lt&o6jAC_F+JnPcrD z0oV3XZJpzjdzybK$keYRd^?ia)Q`X?CHu-q(fw5rSU?s$*;}ieapXP(P@@K#7wYR;GCCqr3EkHhc_BkFnj;y~$%+*~X?krL(e4f*8tHGg~o$1ID z;^If>xh5riF)3L8KW6%e;ji)jn~aFBPi^ax_2|bOPOULBmo=Wc$z*EemdXAH?c+eg literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SESP32V1.h.62A1B5ED79CC9693.idx b/firmware-arduino/.cache/clangd/index/I2SESP32V1.h.62A1B5ED79CC9693.idx new file mode 100644 index 0000000000000000000000000000000000000000..a46435b1699e4e38d6b698eac1649d551b6a7fa1 GIT binary patch literal 302 zcmWIYbaPWiAu zh24F#NgFTb?&11$fa!em;spx4p_yBZ`r^2kUliFeJK50lh_*@Jiv4*hbAL=cfAjwI z_3YA}B_G1eQu}Rl>sOwt-gy5P!+O(%8^x8mNkC^Y6s4vWy8`KwLw|nOv_48@iu2@>XD5r+u_P0L9Haf*wQi$S7H VOwFIKS^r8YHDY9B0EPez005u9W$pj~ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SESP8266.h.FD7F3E645ADB1E99.idx b/firmware-arduino/.cache/clangd/index/I2SESP8266.h.FD7F3E645ADB1E99.idx new file mode 100644 index 0000000000000000000000000000000000000000..25baeca02cd1853bb6613b53508487c02231d09a GIT binary patch literal 210 zcmWIYbaOk!z`)>~;#rZKT9U{DWD5ataY<2T8<3s>#1(T?PdM^583?!~>V^D^5K6iu zn0oLWi><>#=NVh9e3!rY8XB|b==W8v%5xd+Ox<*db@^&_uX$=Q9?lb6>~<;LZD{@c z_^pxT^uNda9p^>}RDPNwvSj5(H|fVOMR%Ne#<0CoEZAj{)90Rd&u^dGoO0{u{ASsY zYvtFw-`@5$s+Pf6-{fU+Wo{DCAq+*SX~hsaClN#!7bO>S18F8k6W_XGFZO(81_l5C C#8P(v literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SNanoSenseBLE.h.8BC3B23CAE5402C8.idx b/firmware-arduino/.cache/clangd/index/I2SNanoSenseBLE.h.8BC3B23CAE5402C8.idx new file mode 100644 index 0000000000000000000000000000000000000000..a7b251a9ee2e33ce5c0e8ee76f9b4ba1f18aa863 GIT binary patch literal 236 zcmWIYbaQ*cz`)>~;#rZKT9U{DWD5ataY<3;6d*0m$iPrBXYV;fp(XQCT)}Bdi_VTI&~lGKG#3IaaoYzotG!0_?4SNuHMRXJg4gjTJ=ZH zl9O5fTv}Mtr|hXhfScF{o2V|XB^%fETsw9t`=QND<_B4kK4KraW~pWD%Tu+en^OGo z`_tR!!i3)bnObXlV460Yq=v>^y}RGuGB3HEoLF3$n*?+kLs4p4F@(-Z1kuGs$;IM8 Wnu+Q8$~iHIjGlNfGBN<&4+8+mU{ntP literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SRP2040-MBED.h.2D3DD8308B9D7259.idx b/firmware-arduino/.cache/clangd/index/I2SRP2040-MBED.h.2D3DD8308B9D7259.idx new file mode 100644 index 0000000000000000000000000000000000000000..d29001408388dc5ccbed75dcd2816ba6f419a620 GIT binary patch literal 238 zcmWIYbaQ*gz`)>~;#rZKT9U{DWD5ataY<3;G$3un$iPrB=j=IKp(X=?wnRM2Gx+Ile{ErEWH-rYK-IA=yfK};StBz>)U&I-S7Oc z{{4yTwbVRa+fSOmSFbv~Q|DW&mF(^^-`@;H%GnXcmAOek$1xP8rWHfzoJ0^^T$Efa Y4y2iwF0ZI({buKz%E-t7^Z^V20Hz~Qp#T5? literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SRP2040.h.B2F615345202C076.idx b/firmware-arduino/.cache/clangd/index/I2SRP2040.h.B2F615345202C076.idx new file mode 100644 index 0000000000000000000000000000000000000000..bdf425cb3510d62ea064af6f9dc17ed958a6b682 GIT binary patch literal 232 zcmWIYbaQ*az`)>~;#rZKT9U{DWD5ataY<3;1R$-;$iPrB=j=IKp(X=?qlJ1Ra!pfZ zo5f1{k=Cdw+!KFPLsU&r(f6-VEP{?AG9XJ;s1x?;oRs}}`X-DUfh1W#(1yxsGa z81wPxx801)cD1HE%0)cbSu7&5WT94X*s+V*kFLy?ee)>7N9ZG0ukEY#`O?yzTRxU= zdn)=`Y9@Q#ljLvVq0@^a-*j(%#T+e@C0tyYn*?+gLs4p4F@(-Z1kuGs$;IM8nu)19 S;WL-W=KjTuj0`}x!vFwg>r;sU literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SSAMD.h.49832D2A0AEFFD78.idx b/firmware-arduino/.cache/clangd/index/I2SSAMD.h.49832D2A0AEFFD78.idx new file mode 100644 index 0000000000000000000000000000000000000000..b67a7d37c0d34384a153e1c9b93531f3ae120c66 GIT binary patch literal 206 zcmWIYbaOk#z`)>~;#rZKT9U{DWD5ataY<2TBaog7#1(T?PZ$a{83?!~>WTalwA$Sh z5fIVH9&y6xjlf+Wvlm}Ob>cqm&6;>3ouT}3&Vt??-ZPpXTKaOeXBG5@T=^cMVt;SS z%|O20Hln3Mu2VD%j5aLYR(NgKf%U$p-uNxB?bx+Qig#N2kNL-&#n0A!u>YNQVEe)Q xyQ~;#rZKT9U{DWD5ataY<2T6Of(;#1(T?PZ$a{83?!~>WTa_eECLV z>w*nTd;%wo-l*)FnRDUw>WDp$s?VP4JjbB6bkT>4uf;lw7D$F)icoz#t!C=FH5(*556BrTICUx5qaUSjocoOh0XtO-e$bt z_VHcLZd3V_J4{-ND|3^8j$kNCO)G}bIf)>;xG1@p8%Q%Ty6u?3<7k}uih%(DPG41I literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/I2SStream.h.87077323DF9837BC.idx b/firmware-arduino/.cache/clangd/index/I2SStream.h.87077323DF9837BC.idx new file mode 100644 index 0000000000000000000000000000000000000000..7e677092227cb448cc0ef32f9b52683da075126f GIT binary patch literal 5168 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 HB`o$U?^jm$ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Inlines.h.633D664A31CCF571.idx b/firmware-arduino/.cache/clangd/index/Inlines.h.633D664A31CCF571.idx new file mode 100644 index 0000000000000000000000000000000000000000..2a540ad609e3ab2843a8801e1ff227837b613e79 GIT binary patch literal 2746 zcmaKt2~-nT6o%))U=|(;&!8*;j1?pTvMC~9sC_`dVPGD?YgOlO=sC5^U8%qodl)fiN&SM`8 z-DJe6ZK_S{9qL}cucDx-)-mM%iI1vTLAlu}qU||V9WRT&v9|Hv_ShgXl&FmI~vwJ{VR2{KzuIR|YBO5a24R<}8{<<}8{PkAVXtTxU z{D$dK>-Ucw_wcn&ZL@!)>%&XVU!+V8&xxNLYo|N&{JP?wW%WWMCqB1Q&J%53HfM)J z-TI&>Sr^V_Jh^p768tOIA@_BP-}1@bzfJI|w=0_CH#uf*!Ex7yLpsMCoc4~p9WyFM zxzKr3DQ9eDQ*)K8-ppaS`o49pc_&&!HdO3C&^eL2(%h)=aAp0*8-+=>Kh6s{XPDNO zXdZa&kn61J7xiBJzQz7#N_ip7DLb=d$(O({5 zeK-~<%Iwg$`dqGj_fO~3KOCKtPvtM_J`s{&>>Yjnc2cR$h?hr=Pu-Jrt*-9P4v1SZ zd_+yAv?sNX2z@2@CKPL9mmH*~KlA&r46^6$d`K7(1QJ_{#p(;e;p!O*cmV0$s`am^ zUb;C962qwgnWb#3`a*Dq0H_Y=&=G|^?<)El62?@33RtRu^QRwz!_qNO2km_1dUaz` z?OsR>qk`N_+^p3Xg2UDwYRab`^K6rZeVt|f1QI4xfYegzpuP|s4ymusKqN#&D(lpQL-wUKDG!Dp}wFbVgDM5Vx>6qsNRHaHP9 zmmOn8twGEZ)2C4Vfyj;JrbSYgREuORnHH%4O9lFwZEaHeHZ0K1no1}TTj2U3vL$VK z4A~pnn=#}#($S8giR46H|Co?F>8?c{q=yzsNQo9n1yT##A&8_-QV)iFNFN@ifxQeh z3$?~Rh-3np1@0w8a<1Hnp(WfUS`b7PQ-+HHuNVj!-VF?P zGy8-@C4g7L#6yZLN`MU$KlnZ)(P6+p3`97-Q8mmW#w^L5GkD{agEZ&A4fy|p24BFy zf}}oI(od^;Jawq!YoV}X4ni@oCoFPqf8P?Rou%?-q z&&bwT?P*W-0}#=B5u2Ztd+xBA?Gi+lq**I=z)#J@jE@fBY9#ZM9q$dwOsgf1o_Z;) zYE9kiNa|_yZo}s1eQBP(c23Kvr_mb}o9RK*0)iP2kV>jiSnO!2**eKHwIz{qh}a@C zY%U8pTG+jup*lAOvGNj2(sl3sIafPKyeFumJS)<0P-G ziGeR#sJg?s;r;pwQ6w1&nG~6To5`pzL|K5$0{#A{W31?8%%%)zS;(RnI-ze{PH0-@9CXPDJ6dVw{^|WJMvV0w3*TmY`)*Sbhgjf oKmMjqIHkwf43S3pFegNOC8zHd3E>KT`Ua7G>xE%vHHaYo1#f6xP5=M^ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Int24_3bytes_t.h.7FD191DCA4027854.idx b/firmware-arduino/.cache/clangd/index/Int24_3bytes_t.h.7FD191DCA4027854.idx new file mode 100644 index 0000000000000000000000000000000000000000..39bf4e4c6d5e974ea3a54261ad12ee4793066fd1 GIT binary patch literal 2674 zcmY*a3s6%>6n!i&o8QyCghV1>G?bu$TD5|J&=REblPZC#q{^s35|zM20!}C>w)Iy! z7L^K2{a~$~GK1}?Shb_2`2W_nPAQ6?@k6x&T3f|0LifGQ?F*U7&73`(-Mx3uJ)4=D zl(bkzQHlAf?m}zH0-B;I75TbKiWe37P}DbwqTE}4%sf(bWjxaxGw;Y&d2(Y;54*i} zZ_!xvIAhecnDvH^;2mpMr;I+`vb<_y$MtTSPu|^m;r1A8b!>jWqvQ6H8C_lF6T{n^_ipGp z|Kg*D=-!Cej}6RT-f+{;zU5}`qnFlpo2$7tx5$(;`lr%Kw_de(EiKSg*MGXF;)i;L z^XanB|!J+wdaXE7Imu5rku<}XjidT1juvX~1%x5Srxz0%k?g+)rTxJ&F( z^8sk1D=hJN3zaeysR>;vt5om-=&0P}Rq1R6ZwvG3Zb+H6ltnC|BgK(2J^)>HwM$aCp~bC5 zQbJEfQ)PSr`tnO<&D^^0Dm-}yqCggN0chu?yQ0&HZOd3Rl>ECuR-ohq(EXpeU)eq! zSivF%p`8+^iVr}WCj{mW{dd?}&*Dm?WHA?jUd*)R2J8u_5hIB&g%wz#<^y-%qz8Sl zNYnbP>52J74U1G{`8-LUf)DV2P5$*W(|^Cei$y~SZIjuQd;mIgn!Hc_i}71e-ApP| z0OkVF)zb{Y8S3Igp2O*pp2b`My8q1Grd`{Uudzr@7SB*+1n>dqVyn$HAfhN;tF!@d$m&e8&yA#haSnsdbLBN9(-MBzlrms74eW<%Oc@XfI?5 zu^5FsEUA|1UdUltBA^nwL<+evxO8M`h=9sQmW6;p$avd;v>Uz`=^vOMr}!{fi?s|S z1CvRSI4gnKbJLHUJJ?z~Pr~3p|3ICPtPRQ?uFE4fq)EeFO)oFZ1c%64gLllC>OHF3{H|KvEV~QM1E;nK}2Rhvle6{<9!bj zB0VIxv%<+8at8}S`8c8?dfNvt>|{^7#;${A0;?p=#Q7ww1lLJQ6HEt-g+2(SL&b1j z(iL==7`nn^qObsi?VW%n1sP9WNjg zGI@ItN@a!mW}plf>I)A9lJO6Nu(31584e`@1(9UAHv%TX{SmEj&jJjCILK`8Twq5s nn|ljjHdSnOEa0xyRh;MYC%*`f2(PV*dVXT5kBB1g1AP7i$b&p+ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Int24_4bytes_t.h.61036943D08C23BE.idx b/firmware-arduino/.cache/clangd/index/Int24_4bytes_t.h.61036943D08C23BE.idx new file mode 100644 index 0000000000000000000000000000000000000000..4719dd788e55d0f98a9ecc5190ec0c790cf834eb GIT binary patch literal 2814 zcmY*b3rtg27`{E+)5q-*PD`Z}p$J-{IFCye#Btt@$Jd=Iz8OcBFKWqs{!`+Jr;ZgI z-f-YHb*w;-Tb9hb5~7=6_&j0RKQC+7?{eB5s>yFM-n>tyyKK*QuBr?eR9~ZClWm<| znU{GS>+AR~Bz)T4@D%S~$`SX?X-%u=dJn2+J&iG3)Qy(E%$|7b#)G=z&Gq^{ zo`FAJzWCVb-D}_NNIrQX*K7>yNZz0MZovAwEe$V}>&_hcqI6``{p_gyv#OeM7iVc- zO>FJ`J9#_v=Tln_C3g6(+PVUUBsc$SD zb7bh6(>rsX9C8@G&z`g+l_-b4TI?Df{%gb4YERkVaSMGHHy)@djJ{M9QMJCI#X*

w)u6*sf3BZgpI6=#=N))Lxho*|<0IeCzR-f3|l_s+jUD)|c6P*3Bs`k!L3D z8MbMherjU%K=*|5ZBP1}=PAGC+&<^@c6J-do5yy$IyhViL8<@_cST*P1e}`P8vCg4 z9`AKv)>>UB9f2Y!76Ir-bK6E#lm zFSdV2X7!^;$LRRLc%1}5-+$K9KhBVp)OolCStu3(=!^-wo_(^lHj^SH+g&b{8zlgG z&ynbb753nQ&fO+tqF4l=-|cPwtz^;al29bD-8tHvU z_UI)5y4l|R-`VDfT8a#eE>IR|B>?)d*V=!r@8m{`w2ZdtZDA4sP5(%0Dv3G0vom)c z(ork|(7ozk#Qa?|XCFmf*zOd4N|*#d_vqtF+UoTjRUsAPaF8;{AOWZ0IM%`njQhP> zSvzJUe>N0p*#6OIv>*ZO-;rlJ&#kR)qe#zapUP*D0O+x3xJPKTyy$#-nm#QIivV<+ zrJ>~VkctJ?D_i;Id<(=wu${MS zWy^(J8n`}!-A1=rwkj2wP8oCR{Na-u zrYZ?G8BJ!n;7;V!KpPTVY%Dg*manTX9E3`6IV#t{=>%68E6iY7hR;?%Cxs3~aFj91 zEY~Z?kkbu@2t1MnCe9cL3}_}0aln8ZvJ4_v&+9eNtSna&qJvxsj^Sf8aHY%&iZRHR zRcY1A*ORDB^s|O3hxu8le5wZeo#0e`s!_HIwS^Q04Z)>+sYb3y8DHjakusgkRdlbg zKz)P{QxTGbsmO8`MBYvt=}wSGV~ikl@Oc|E?bE-(Ii`*I8OptaLufM;yVQ*2i>u9i|-O}L%3|U`1$}h zj4-y^KYh4T<`&->uo_f=1nD&aZh}2MJ$*o&oU35oG%-lGYld6Q3*n`4OB;?xHYO{0 KPW+4e;qyNswn?u5 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/IsString.hpp.3DAF7B6BF24E641E.idx b/firmware-arduino/.cache/clangd/index/IsString.hpp.3DAF7B6BF24E641E.idx new file mode 100644 index 0000000000000000000000000000000000000000..791e9f3bfbf81e84b05fb7903bf9aaefee3cef7b GIT binary patch literal 404 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 GhyDjOSGq?4 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonArrayIterator.hpp.88014A048A69D8E9.idx b/firmware-arduino/.cache/clangd/index/JsonArrayIterator.hpp.88014A048A69D8E9.idx new file mode 100644 index 0000000000000000000000000000000000000000..8f9bbd4366f78a361bf7529725b12382beeded6c GIT binary patch literal 2336 zcmY*Z4NOy46n?$^gWlKn!2^7w{ImsAq~pg`h;#u*k-9QFgRW*;42YmH5#0(znQm<2 z7)o3+kY!{;qby7@7+sh{!Kmn*j){^j$YDe7ezUH1CXQk}oiWT<0bJLUmluwl|uf8|^Y1`C4f(JyX9apZ$3K{#Q?*`|GCIIw$UA{j$Sx(Y=`wsu%mm3kO`LA4W2l zzG0}1$n9|s)CooVFCMl0`0b?f`+bdd!`rp-o15${#s$YOxwlAbow0=z39DO6!^Z;o zi#xM3Q(C69<+lb%Wlcq?UdeHT<%bTm4JRlB60YK?SL-!0;6k7u@OSmh)S_QElmTr7 z+AX?G43IuEdhGtHx2shUt>&m*Yd11L`qA{C%X<=QLIq*~I!&8qWPtRk!O`f6*$LD@ zM4+7}=S&7j&n~^UWQ}PgPat7%wny@q86e%&vG2sK%|{n#NvM*eR6|1!rHw_iyk^wIl>SFlkIP7;rEFPd+$)`5}Ki;dTX-2L}{t3ylo$0B=kEXjNNWjh1L3 zK3kI=!yp*{Fy)2DGgo{yQADTVsGjK63^2a`otVWJ50=(I?|>H7qMiZLBfqRTKV@~j z3pA)tG$ckbK>E$<@s#9*$Mv8dXq#v=F+h6#j*i-l>^8%odME;1H4;^3w5qdm z$TFTj8AY@Z?V>IV1EdEnITd%W&IMZ59Z%v#21utZ+nX9ck$dM!bS}x2s0>JFH8dC| z7n%MBVUXM(=eIFHnhTV#t{engz^zaawhcH5xDAA`Ex^|*T0jd#99P^4h?N%tr%-=y z*W86$FR4{Lwam24!TaN>Q|EjJH-V>l>3Q?81w1VhisG@IxJ-~&-XzS6p@gT_SgQ^5 z>ewpbM_3!g%6o)`;|i&CY<1T4ysm8DbNY9ljWLouwGo>d$C0NV;!$Hh%&*b0)e0t% zF9u1TO=j?yU9!)@Ch;^)N}Gk!cR-$phnX+qOr_nIrwd@x78jS*`PId|GgNi26BoXfg zpAaj11%CAC!L@_!Vd8tx!$gv($5e2q8e15~ct7~*#E}aH4GNwXbH!$6j{w+9h3O=kwQfUD)49qs0|8`?FO5IP6PL&57W;;eHo zDr6%$p(a9`LXkDc;!0gKv)wF7{toSI3|YAzX+R+t7Qx zsdZlS!fTMyP2Az=0k8-fPZTZ!9t2fBJrd|v@cQYE`0V_|-LVGeq&&3g=DFBt7~06J zSQHGymEp?9#60y!`eSiu(dHoU)ANWlyq3M~KfUGaR?2EB1FI@$z?0C;-Q6+68S};! KJjbI>j{6tGD&D#P literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonDeserializer.hpp.BB590C8A7249F191.idx b/firmware-arduino/.cache/clangd/index/JsonDeserializer.hpp.BB590C8A7249F191.idx new file mode 100644 index 0000000000000000000000000000000000000000..13a400a19f083788c94feaade5973657e4595ad0 GIT binary patch literal 9650 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%0A~4mumAu6 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonInteger.hpp.1E0FB308CE2813B6.idx b/firmware-arduino/.cache/clangd/index/JsonInteger.hpp.1E0FB308CE2813B6.idx new file mode 100644 index 0000000000000000000000000000000000000000..58b7d7fc2e0425bbe8772168b35b5781118a9c90 GIT binary patch literal 594 zcmWIYbaV4!VqkDi@vO*AElFfyU|rlRVG^l%?~W$ zw1}{`WcnRoughA@I!m@a=hyzv>Pwe2FlW8*ShTpT@RFi;OL~9gHR~4^z40?v9Er~| zn8<3gy>AgyX3W*4>%81QAGkS9^v)7y-*5BpdA#^xqk2Z?;1|Pty-#?Lr!wo_ot`9h zyZiB3{+P--2LDfoKQI(m<|a7-{kz0}>bB7CbY*TPW<~~fel~tSFu}kHlw)9EWM>sJ zJ6Umhp`Zpg6BAGY9~++_m_R5fN=+-?fn*XR7ubZH9fiz`=O26x(+?B|X@&{U<k literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonObject.hpp.CFD235C56720FFFF.idx b/firmware-arduino/.cache/clangd/index/JsonObject.hpp.CFD235C56720FFFF.idx new file mode 100644 index 0000000000000000000000000000000000000000..24da25ceea6ba275c28c31111f6013559e5e8039 GIT binary patch literal 1974 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 N$tZw4!zhJ+{}27h{7nD= literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonObjectIterator.hpp.E95FC59D323C6E05.idx b/firmware-arduino/.cache/clangd/index/JsonObjectIterator.hpp.E95FC59D323C6E05.idx new file mode 100644 index 0000000000000000000000000000000000000000..c7e11217000f101f571303749572cc7bcfdd569b GIT binary patch literal 1948 zcmY*ae@t6d6n?#wTX=oY2Nc?-mQFf;_^KcsbcMpYrAmi!WmHYfHvX6cB7_EL+1Nrb z+lb0S94^6NCQh9W2y>|uB#XdsbHO1Dr$ijVt=Se`oVbw?+z(^$yt^ERBz!Nq=bm%E zbME(nuehkFL&b6K^5VVziiVv^j^pCtH`oxU8iDVEg5&mfT{^r;eQ={#bT8DfW#*IN zXzDY~`#Pt-{MzC_IyCwD(mktCdZDTFdh-H3wz;^m`>XUp{}XNF53dF5zx(N~e`3Sp z=I^&}n<*MQA9{b{xGiRktE*T`U$LI8damd6{)oU|r&@L`W={)}yS+1|qffK{vO)dM zQ#tvxT<1^q_-^*w&vqE~Z<3etW}E3`+xZWI%UgGscGqT)ezD`#U#2BPUEx+y$Y_j6 zJG7>JuJlk>+xoYs25xY{eg4<#2*)*#yG9FtzZ5N!Xu?sq%B^9*MZtvdmH~!~@4VHXFxwcXB9RJ?@|4#z;G$Wwf<}&AFkgJ{dbT7I0m?fQohAmD z|MP>`PQ@O;VE(jsbl|~UVXH`Z=NXg))z~nAS{`s3|cjM@Lo{7 zo~apC zj9*#9Amy4f^%0+bbnZ{#f0qQN5xgo;quwZ?j0I}enxeEAUkHXK&J_z{4VX>#!sF>yHxQUe z@v1;wdRG<-U7&8gI}7(NP!I7KP{#Ovz*n{q5}QpuAr1VvsRf9sHEIJM3p7iUwK5dG z5h2W9*jz~q)CDU~w&lpxk<;TZv?>JZ<9ut_-xmPn1`ClLh`A^kpd*_OkC83hmK}%3 zXf_}qI}KSXsa~y5z-6N4prq_Kyo7Ru3GF6(IyUB+;jqD2=gD>DjYESVb}>zS7MCSZ ziI=ok7*=o1$;AQ!_3~aVIu*arT(&FLMQy=6vQ3c_QifyMo_LI|0;=(*_;h5!Gk@Zx zUUB#H!?&-5Vb4)qR0{67=i;r!aBKb_@&q<9A9G=XBq@2-1nYBLt0qYDCL{ByzPPIX yhXuExxt3^oTsa7q>SB>F7pSP&DYpy;b_I3tC3NxD+%wAI{?aqzzwfBpk8sy$W! literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonPair.hpp.5E54673DF0FF156D.idx b/firmware-arduino/.cache/clangd/index/JsonPair.hpp.5E54673DF0FF156D.idx new file mode 100644 index 0000000000000000000000000000000000000000..026acff487d8b0b8547c66725b8b88f089ac9610 GIT binary patch literal 1544 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 BdyxPD literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonVariant.hpp.5D20D03AE6311A2E.idx b/firmware-arduino/.cache/clangd/index/JsonVariant.hpp.5D20D03AE6311A2E.idx new file mode 100644 index 0000000000000000000000000000000000000000..7ebc92c34237564e35c53f1fc1ebd45c40094813 GIT binary patch literal 1178 zcmYjPSxggA6n!($Qszxd88a;fiWY3GRZtNW#i$juCPouMF(`|HLZ}84F)Fec zu|mYK7?ux|RlyaBR_lTZE)Y~c)EYG^ibg~!V1ln>Zg7%0GxN^8^Ugi@CPYO>T3iu| z*cD~YNXbbeuZSbJDJOf+1bKGQ2$`${n9e*Zr&se^^;ORCS{%w(rMO^48dEp(lPOqT5v# z{f?3wSJyvF5T*4m%Q~|0WYL!Rr(qM0b#=beiaQHeioY9THWh>fDX#~aV$QY3+>9Je1@F%AhbrQ(Fp)_e%hOm+i{kCGMXW@R;l$B0O&uH z_T~o9S%q%2*acx$%z6rd+y!lNy7qJO7zG$+MQfc@w1zo^c9>s2AAWkg=B zRQm}4bjqWNsesJIH8R?h&^jNTRsf&_+|<_>7kqHYX*r=)KB_94i;+}Ef3X0$dtPfZqSImdwFQ4QTnSqEcWmd zkqgmX!mpjtRWT|Rm}9Yy(W#&k_=jSIEb=JKTxdRschVwqB=gJp0-{&sc-mcf>Y z#T>^eA!8ORBnl~DG`2@SxbS@NaTp~eo=gz1P0icBbgTzD4IIjsIHv@BOOFw;ukvJ2^e;pG#8iZGGD76_mPfGI8Clv1hR% zdxjRD%9VM1YrC`LLZV)$z3mYHD?$m(m!jcnQVPKBWK$3hk(wbK~HWBgn#omGfK`K^e^dO zBsLy?`)JqLE5D1s{c3v1W4nz0@H|j$8IuYh?E?k4$yfy?^8T6 zVY4~U^R~~|2e(P{Z)W(ftt!d4whWq{dGG0L7Ddbm~?XGtH(o)5QfT36J~GK}1OXHEZwdX{J1DQEv9*)iF%jMog)T_*`^ zTfWGhXZ=`)^nth!e4Ps;nNi8AuXNRf`?(AbHQ8kKMFOt_1#^_vofkO z0HFgA>s(Mpzr7)A#|y1X1K0qnQpgrc90bK1Ccgas%eMBVJR3;GM!8YxASj*+UHHNH zU%N7A#1--iC9x9}hyD1jXGG|gJU`Zrp4PA$nS-F1yKWo*Lh*17&-zgD2?#y`;m!qB z2_xxDo z@YWfSTB%k^>;%PsSG70jJ^Z%MxX3EEDv6z-cyJZ7?bw~svoipjLDWnE&MXMVy-Ax>>zkUSYO`M-l0fUfQ6yEWXCGzEm77iY5+% z;(?oc_9iuCUK6oyz>q-CKtBgz#Ev8b;=x!--ms?9w0tHzTis*2%1Ak))oJ4pHb?Yw zy$Y>xBtf2_!jNzzS)Q!I2Xe&3o0OPQ94QMg)1!AdQVHRepvQ#bNDIhYK!xt%hz;a6 zP+>lBG*9>wpu`m7Xy)_7pv0oU@?yn~vO<&`DUucu%y}#_kT^>V)yVzE7c#5A_Hg4! zq%JaEfI0yD0EA#!aWql*(-49=q&8pN5wzwxZ{Wyo(C&uChz?&xU8nKa1YuclMCYX= z!tMI``UQd`4V=LTlb5q(HF1RmWc zaW)JDZb%%FT-lWG>&cOLHr`7xn8YS|xfs-&;sk>`Az&w{1e0~3t%GQR?*q0EywKU` zJnHnBhJ?0zS9bqkHN_>n)69q|OAyXiLQEwj2oPF8-2#!WnW45pBxVK%7g$Fl!`tz> zZmgq$;kG-e1Nu>*HFp|0`kCd?Dm`XzZ2#-A`q;guPcCfAqFBoHV)|i^0}YXUOL(F?f~6RRwsvJ>@hZO66cUa zSQ63$q8<=xiEy&l2Q`mv91JbQ>Q|MlRl zD-%@Phw+(*55`ke+dj=v8&|2sF~BhkXpy;gj$dR~c2M>LM8FXvYji0j*UaOHm9@$+ zqiBPcmMI0Uf~}AVMN|pWN>B=XEwHsPd)887F7%;LFqav8H)FM|wQisimRL07cjuXY v>=28*#1bjzJ%?v_M9<(47yE{{uqze5&ir(7@SLzaNBAldzB+$P+c*9Ljw(?Q literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonVariantCopier.hpp.5A5B301F2099A8C2.idx b/firmware-arduino/.cache/clangd/index/JsonVariantCopier.hpp.5A5B301F2099A8C2.idx new file mode 100644 index 0000000000000000000000000000000000000000..9dedc574e7ada8172b9d95b3eebc8792e852c713 GIT binary patch literal 838 zcmWIYbaS&~W?*nm@vO*AElFfyU|eot0$I!dRhNHFHAaY+m-CpOUYZ-#z5leL#N}MPE|sKIOwCz{JPGz%9fs!~-T6IDm3Mps_?+-+8eZD-Qz) zGXu92kCZr<7OR#311A$B0~_Q;Xv_o1tN!i8@D6Gh!s0b5=c^qgq$k#9{|NMHeda!Jn}LA~!2|#>=>0GN literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/JsonVariantVisitor.hpp.E15A1E6BD2A2A289.idx b/firmware-arduino/.cache/clangd/index/JsonVariantVisitor.hpp.E15A1E6BD2A2A289.idx new file mode 100644 index 0000000000000000000000000000000000000000..13c4ecfbea372fe4eb229bf0d0aeb7cbdac544e8 GIT binary patch literal 1604 zcmZ8h4NMbf82);cQrdFu^@;**Epi>rF$+6IJDl;l|0Dg|r8=(+PJjqzCt{#FB31$&&ia0=F~c+xVr$ zu>ogg8xxyzVByBdtzyl@K*+@l+aIS+{YZCIG$dpXR-|2BZ**imo;nHu4lKR)UGF8CuR%G5=_ z(768Qd{MUL;P8MYYU;K#@lRt}=sU=^vp>gPU7BBmXBV+zSbmgIE|wr4FGLwMhUYjy z-UJW%A|B;=y5&&oV93OFFG7q1`~-dq4v@EiT>}ot+&!8#l}#m+#Aa_qMMxqP93UZf z@~fAfclOALO+rM;MRF+z;I`F=-=kkUl}8dZ&er?u84kdGu0@kVT3z`#8@n~6 zhUNg=B~{Jxxyer}1cV5aBfUs}4v@E}2X2kYwf{OZY97yNdYaFW3{9~B`RcoawMQ=< z`9Mr4FgdAEN^=122WqAKy=(lzO@st@R}m^12jCtnb0U3n+ZxWs?f_u`%>lTVyN3>+ z^j=zf+FM8JXo>}J+luzt129dWhn+F$4YQtvgi?j6Vxgym(hK#QVLY%Vo`_qIe)Xm+ z`o*%H9!_hmE~}p8NhqyS8wRH}mzTcc_fwY&o5e`XaC^Y;b^3LW>)rQ*o{5GHdx*Hr zLTyY39~hhxDu#%W0gZ+cr81u}$Ky(7WZnu5Knk7`N-b2&{yj>dIFN=_Vya>-4OAsm zs5q2{QHeO|K+lSxx4n|~UbWyZfy%&8C?GCwYB5c=Wnpu)HaZG8fza@XSe1b^V1j(i zNu>_{4<|#Q8A@VKk=i)mB;q6pEFcEgW%UQ7I%29o<7osmhp2`gT*ku<6y8lQlU4uXF`8Fyl(42zhFdoA7Dt2W#4Sd`eBJiA{Fj{Eky4C)1LPz>d zY&HZNHYN}60bj)FADG|?5E>tt0IozZK2S+Q=?I+0b7wZkCm3)R$w== i59~+(pNoVCgrpmf1SR$Db10Jh>-eNpCP%Uj5BeL|O82G! literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LEDHandler.cpp.9CC1DC14FBD4B3DF.idx b/firmware-arduino/.cache/clangd/index/LEDHandler.cpp.9CC1DC14FBD4B3DF.idx new file mode 100644 index 0000000000000000000000000000000000000000..ae1bfa8d1824b5cd55858b3115f4a5220e231d72 GIT binary patch literal 9840 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LEDHandler.h.8E3FB47DA83DE614.idx b/firmware-arduino/.cache/clangd/index/LEDHandler.h.8E3FB47DA83DE614.idx new file mode 100644 index 0000000000000000000000000000000000000000..04437ea124c08ff7257f82520aca2ed24729007c GIT binary patch literal 770 zcmWIYbaVT~#K7R3;#rZKT9U}Zz`!5`#Kk2=nOA{y2_pkT#hj)6w%Lab1lqm^+oY`U zzNP#!XpiarR)+&B#g^{NT_Pr)@hoef@L%p`GfynH`JVHq?>4K%seO;Um?dpj?{us` z(`@H?;dr)x9x=8>hB767r{8RKJSNThXkXuClgm1i$0CmQ+L!ON5T6@xD}a$f-Tw_^ z_Lp$aD;}#7T=(&bo6D;p1W8g2*#)u(GlW zFmSRkLKMWde<@SCC91*0zz0*n&dSb*FyUSC@+k>_EPQwv_+bjTSh>Uy3YZk0B%N*R z3*}+pgel-==-;9%td zIuhm!hN9H8;@3bqn12~LA^wCahxrmH4E7yV80I&iFxXE}VVIAA!eF03g<<{x3WMDb z6>k4=K5~55|Le7-$mMqfnDz-UJGRy$2PxHr~2V xv*6J$MlKFU4n`5EC<8-LYEB}EQ(Tl>EDmC@g9tES;t<*L^6t`uVIhp{3;-!$${7Fv literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LPC_analysis_filter.c.6DB8680C349FC007.idx b/firmware-arduino/.cache/clangd/index/LPC_analysis_filter.c.6DB8680C349FC007.idx new file mode 100644 index 0000000000000000000000000000000000000000..ed06cf619ca883df53e980f13df2beb3da14deff GIT binary patch literal 3994 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LPC_analysis_filter_FLP.c.1EB174340FD5A373.idx b/firmware-arduino/.cache/clangd/index/LPC_analysis_filter_FLP.c.1EB174340FD5A373.idx new file mode 100644 index 0000000000000000000000000000000000000000..354983535a8466cc35d1934c0211f6a5809736ec GIT binary patch literal 2752 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 yL`ZxLD0Pnm;&^7_yceNi2ngA1lo!K literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LPC_fit.c.D4BD759AB03E8FCB.idx b/firmware-arduino/.cache/clangd/index/LPC_fit.c.D4BD759AB03E8FCB.idx new file mode 100644 index 0000000000000000000000000000000000000000..c7a2cd22880095c3f46f0d47057db4fe37c96d1f GIT binary patch literal 3594 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LPC_inv_pred_gain.c.6B53CE316E130A9D.idx b/firmware-arduino/.cache/clangd/index/LPC_inv_pred_gain.c.6B53CE316E130A9D.idx new file mode 100644 index 0000000000000000000000000000000000000000..727e7585ce22aea39638555b3c7a5876ab68e57e GIT binary patch literal 4914 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 JY*+=T{{XkMt}Xxo literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LTP_analysis_filter_FIX.c.A778CBE12055E7B1.idx b/firmware-arduino/.cache/clangd/index/LTP_analysis_filter_FIX.c.A778CBE12055E7B1.idx new file mode 100644 index 0000000000000000000000000000000000000000..76c811344d1f1322c483915ce0baac3754ce2358 GIT binary patch literal 3872 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/LTP_analysis_filter_FLP.c.20EA1EADE455451C.idx b/firmware-arduino/.cache/clangd/index/LTP_analysis_filter_FLP.c.20EA1EADE455451C.idx new file mode 100644 index 0000000000000000000000000000000000000000..2d59f81f61e3adadf3c842efd135861fb6e97a01 GIT binary patch literal 2750 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Latch.hpp.3A0458B5F62E1DB7.idx b/firmware-arduino/.cache/clangd/index/Latch.hpp.3A0458B5F62E1DB7.idx new file mode 100644 index 0000000000000000000000000000000000000000..df0d2845a679e153857cc99db74ebdee3452a8d8 GIT binary patch literal 1088 zcmWIYbaS&{VPJ4h@vO*AElC728H9kixTGla8j#+}$iPrB=ja4SZ)QiH*5}JBKJ4P% zx;;@-qgF_t&=%=zrCDmt)j-y zV67T>fN^WTi|QpgIZyV}tn(yv*Ux)6;mMCaC*FGx474?wm)9;?WyvBj0(` zg){^VQA#edb;WJ8iJa@|?u#fH!llsF%HCo;!7JXmMq3 zk|fY)+&>RK{&wA$M~sP$g@KEgiI*KrFmM2U4g@MM6SPlrpGxOr;si?Tv+MJN37E8i zs8>GM);;~~OsvcdT-sF@p1&c1TMnDcjfqO)_UNSA=Q#FR*2Epu4{ZP*|Etnhz!nixCzcE(vZ4VOS9H zaLIGa3&Z@x!==Td#RCgnE^wT|91f$IxWI9x_x8bVbJILW9u(hk@L&C;d&_Mi&~g

K(j#r9T5tev(xKw#mg%Q?);u&TQOq7X-OO{QR3+6&Da74ot!F<68iC~y8 zEP`2q)@kz^A*>T&5#feKFAtXtr;Gs1TpliM7Hw{rrCi_y0W%J!1855nT7kl# mQ~(n$O3g_G`MbC%xmX;;;06(3z{K?@V6&CK@z>pq+zbG_g(t@V literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/List.h.5AD347DCB33D45FD.idx b/firmware-arduino/.cache/clangd/index/List.h.5AD347DCB33D45FD.idx new file mode 100644 index 0000000000000000000000000000000000000000..59e973b70f957cd19bfaceda86d55f011f0f97c9 GIT binary patch literal 7134 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 P{>0h(F<(5)$jATyut9sZ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MacroDebug.h.0BAB4EAA8C57994D.idx b/firmware-arduino/.cache/clangd/index/MacroDebug.h.0BAB4EAA8C57994D.idx new file mode 100644 index 0000000000000000000000000000000000000000..901e149227eded928046aefd69451ed65737cfcb GIT binary patch literal 224 zcmWIYbaT7Gz`)>~;#rZKT9U{DWD5ataY<2THIQxt;)*$=meSw6dPO zb;E`)41dn-5)M$~*>T83So`;8=-V;H#@WjSO;K~i8)l$w(WViXr87juIcjC(h0 MKUjZxfjR>N093_Ip#T5? literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MedianFilter.h.8DD7DEA17F296D0B.idx b/firmware-arduino/.cache/clangd/index/MedianFilter.h.8DD7DEA17F296D0B.idx new file mode 100644 index 0000000000000000000000000000000000000000..23e44631906ab6835824720ae90d88387fa2ed16 GIT binary patch literal 2030 zcmaJ>Yfuwc6y98x5H_33W@9$QBw~08F)A2=`ar1~6hW-e5vQ~Y*f=A;lVGV@puVt{ zk!mZ7Z|hXC;=2e^E6UKKf+*voIHL%bs#F;tRcswCy}2`Iq<@;3d^>l)d(J)Qp6}a~ zg!uS-J`6MNRP9s4XbNjs(5fd-v5HGG2=~L>BZ63u;60Lz>{S{Sgm}X`{=2v zf+H(_dz9J1Z+uV?C6uz}S#5huOg5kI4&9$)9@hD8-0vTDFKy`Bd^sXF^PTZ|Ycsq{ zvOepqNZJ(eEA}JkgANKV!i1;u|?jmejpmeX}9^g>lFJp4jf!-{v<*>%PAh zz1UIITz@(1(YcGQ=Fq})*O$()?TzURm3{$@6Nis#Df;Qsf_>-j4OJVaq!%XeldAKs zH{?8ilDqr(!y`#K&1t&$XHEQo%RKvU0Hubet{&F0M7>iiRVH?A6!y}lak7!_@CwC1tm4p)bpC;+Y9A}pJiI>PFMSYHOKV5H+2Y|@(oDM0-C)$H{lJ?o}Q$eX11Lw=Y7&@!v5!x~wWkC8-b4^#*0 zDFAKEmQtqgxU&``ElF-#~5iyX`y1Mkpj@28)npO-8uHTfc!|bRc_@d0IiZ1KCkRJ z{Su?TBsxS4F;D<{`qNb%wXW;HBK-XMi}i~(&FkNZXa zb@$l|qz#o(6$tkTb#olG2)yR8L21x|QFv@r8gGSjj341qE=_w-D=e%*#}h4?4_<0fKQkXSsBqZ@tO`^oMZ4!|JhI(1~i9iuo5| CR*bg* literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MemberProxy.hpp.9EB009EA7EE36741.idx b/firmware-arduino/.cache/clangd/index/MemberProxy.hpp.9EB009EA7EE36741.idx new file mode 100644 index 0000000000000000000000000000000000000000..413d892634a85838ae3da8625d5b28ac9ca96147 GIT binary patch literal 1688 zcmZ8geNa?Y6u*06xeNQ=zGX$ec6qS46mEem%9cm%~SCGiqZNUnRoE$TGvn zNCqSlj$%Zk4T3S*hG|%8#!MtxLa3QiCQ-wO)0j*pSqnDuM|Afw$E9{=&zp08@1Ec9 z{q8v%vNJLc1|VcF&aQEmR2BFmgcS7es;Vp%i4Y3G2-O@JI&ih@3tPy=zw`f`9-V)% zQ)+m=j7w-q-+t<^_MEEDwr3~%oK17PE8c%K&M~U?x(h^cJ$p#i)8Z8 zSd}Nz-^*;u8``mYeDucs@t;hs$^M3tkcqspUd711A5OVHnA`f?(af_&rGuoUd*)Kf zthRGlYmAGHt(%wUZ~f3({K}Ps*MrVWZjKgRx{!D@-ngOuw9O;lH~h_JZEpL8+Qw?n zTlZaEx86xof4}k9TW=hiyIj#;eXOBwWVzXzsuwOPY5j*%|Tgtb5!BE5QKQefK z)%6Dn18M79^nz+vok-akzqnGH<}brC ze?+pFtd&AQ66zNHWz1ZDw|hmsT80@4XUnrggaGi_^wSFq?%D)7W+|-Yv|&O3`02*J z$b??clX4tHVJm0lg#d81sW)j$X8pEM96(_m*0DkWc-x-Wt`!7)^7>M9p5w!aHvnub z@A>S+KS$2Vv6P#K89H~Zx{kiw~4YN!wZZl4{S+I1y;oM5pZB5VK~ zECdvYsVPWA#O~s^2jqLzcb3E{v63a;0OxyV!gtM%*32%6({P$F;tc?!%90mcU-}`m zs2FZMSvHRR7?O%pSy06glhhRI%dFVSf?IGU5{9TGs$dYpkYq`6FnGog!y3a{@PHv^ zwOQ+HXL;PB_hmMn%>>OE;&3=}Aqx^N8@yoWJJ#kjUK5KLqR0ARXl|)+ZVaC~q@raB zlB^QuV%cbjsmv&qdYR1FEHAk3Z;Ow!QjudL=Z&Ny{A<{=@mYBof2ql+TmSr}%EgHzFlo-bv$kGolOz;2vWHsgFSS|{hcXT=2 zeV+CE|K|)W6BX`VB6u4_P-naw1Z7Y|%ihg_^2?E$XR;^tH!wqFtV{`IhA242Ljh2g z1_>LLcz60!qyD8Q=n<9dQ2?oCo?Gq96ue?t=3O)&#$%oZ`3&Ksd95$gU=0ha$Pg{o zvM@)?e=dk-A-ZU|J(yK$#&RlXM9bb?1_gAN%L`)Z7YY@?ufuTj{Ulp=h`Tzg` literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MemoryPool.hpp.7B1555123F4F2767.idx b/firmware-arduino/.cache/clangd/index/MemoryPool.hpp.7B1555123F4F2767.idx new file mode 100644 index 0000000000000000000000000000000000000000..a169772edcc756d2b01e29c52a9eccd74d6e0069 GIT binary patch literal 2204 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 Q9Oonb`?CT$&R6>Se;!!^0ssI2 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MetaData.h.0C83960511FC3EB9.idx b/firmware-arduino/.cache/clangd/index/MetaData.h.0C83960511FC3EB9.idx new file mode 100644 index 0000000000000000000000000000000000000000..bdcb90d4d27bd56cb47fcb5731ffd1580785a1cf GIT binary patch literal 3560 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 bYPYLvX_Z2w)4B+{W{J=o6bgci{Oi8}Loyco literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MetaDataID3.h.69D33722B81F80A6.idx b/firmware-arduino/.cache/clangd/index/MetaDataID3.h.69D33722B81F80A6.idx new file mode 100644 index 0000000000000000000000000000000000000000..597a9395ba544b88a3c8e9f73a5b55580a10d423 GIT binary patch literal 14844 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Middleware.cpp.4C728AAEF03255BF.idx b/firmware-arduino/.cache/clangd/index/Middleware.cpp.4C728AAEF03255BF.idx new file mode 100644 index 0000000000000000000000000000000000000000..8a7418193a8424806cc5559e6299eb166b0f5753 GIT binary patch literal 8938 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MsgPackBinary.hpp.B466B52A3BCCA030.idx b/firmware-arduino/.cache/clangd/index/MsgPackBinary.hpp.B466B52A3BCCA030.idx new file mode 100644 index 0000000000000000000000000000000000000000..bb9c1e605f0ef5520660af0a05cdea149f8b914f GIT binary patch literal 872 zcmWIYbaP8!W?*nm@vO*AElFfyU|yl14)REz3nOR5 zTf~%kW_noh>x?&+re%!wN&%T^e_0RmOe;0~=Ud{I_=WS@!G4v_luH`+nX^vqVc5B> zCBC>aH|aLe#bw9y8Zx;y3JEZ=Ffp)k^KlD-2?h?J91u*7(s0^&#aNt=i4!O-$|=eR zCScO#Oa4~18;RPpGchwVumOQEm|)-pYi49)oztftXe#|^D<2apP`?PDh%lId>DT=G zxLSShuN?wR96)J)PJUi60h6}NO0zoKBYj?si5V!(!NkE2CScM&?OCE69c%wVq&c}c zCD=d&Oq!u6HLbW47$Y!0GID|a26MED?GdgUl~E$hJZzjAoO&?Rc-Z)v_&H!M<6#qJ z66Jse1B_xDNPq literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MsgPackDeserializer.hpp.30BCB0E35957AC74.idx b/firmware-arduino/.cache/clangd/index/MsgPackDeserializer.hpp.30BCB0E35957AC74.idx new file mode 100644 index 0000000000000000000000000000000000000000..4d790369b33628104321162c5d23c5ccbca754e5 GIT binary patch literal 6520 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MsgPackExtension.hpp.2DA81622CA406AA7.idx b/firmware-arduino/.cache/clangd/index/MsgPackExtension.hpp.2DA81622CA406AA7.idx new file mode 100644 index 0000000000000000000000000000000000000000..17eb8e0e50cc0efba9b2f4e8d5854f6c6eaf6581 GIT binary patch literal 1056 zcmWIYbaRtnVPJ4h@vO*AElC728H9kixTGj^1CVZEWMHV6bF}X)Uz34A%WtRD#dmfH zK3&k+DZY17tKKHY+smRqK7Z-Eiv1z$o|=VpCSTvg+|fE(QxuRz{hCD(5G>rW;fx7kv)sm5ANh+;{kEU!zIgKZVb45}q8J zAg=K7XO#CkUSHB4@@v{0R036JNLa}S(2@&D!{}7 zlosF<5CRi0>D-&wB5xnGw_|5wW@KOk0x>YbzzNpO$i^Df>hbwt?@nkE#YHg1xicuNeY7rn6%QoJQWEU zukCzH+(2n*PH8?c0h4}l_+*D$bnGdJ-5g9DLTn%cCcVgWTh@tmxu*h5TtMACoIJc> z0w&E+l$uuj7Z^e&wnw;bR7Qy~^RRJRb2`F&#KR`SB*Fpn01ulKlN1LmFkv(c4;zO% zhYrjkJZxN|Tv7-FM7c!;U$taZUu8IzV48W@c$j!NU;)O%Ce0+x z0SkQJiFfyIJn7ZJ$ir67P_6)ucpw3bI#3XZbI2eC0S6Z^!dyXaK>?U&xxkSNa|+CS zkO77qW=IAoaj7E=;N|8OfH{l{9Q`l@U^;+aL=K)60;R5dUfsA4bT117ixSMeFf)Lv oK}i8-2rw1oB!biw7bO>qgBa`}0t}egHdU3^*X+}8U}R?i01z!gzyJUM literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/MsgPackSerializer.hpp.6767D06A90F7BA59.idx b/firmware-arduino/.cache/clangd/index/MsgPackSerializer.hpp.6767D06A90F7BA59.idx new file mode 100644 index 0000000000000000000000000000000000000000..fbd6251fcab629a728b4ea24b38857ab487b49e8 GIT binary patch literal 5062 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 Wo-Q-b9eb(r?JfPqq+r>4iR6DjP7CJ% literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NLSF2A.c.3FAAE2B4E46B1E49.idx b/firmware-arduino/.cache/clangd/index/NLSF2A.c.3FAAE2B4E46B1E49.idx new file mode 100644 index 0000000000000000000000000000000000000000..f9b1b50393d24602da6d538d0e79c058fee2e059 GIT binary patch literal 4294 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NLSF_VQ.c.47D202AD19A90610.idx b/firmware-arduino/.cache/clangd/index/NLSF_VQ.c.47D202AD19A90610.idx new file mode 100644 index 0000000000000000000000000000000000000000..8d7fbd810f722ac3ea6a75d8a1cb1f7912a37d29 GIT binary patch literal 3628 zcmZ9Oby!s07RG0fbc2)(B`Mtu0s@1yG}0k4lu9E54oXV52t$4#0-_E`m!cpkiYTd+ zbbZvIh)CSQ`@rS7`#I-4=l8C6uf5h;{~Tj&4GkVD2;?eKJJ7?~-+=%EfzaV^KYw5M zFj5F))(rv)%>8IPfPuc<*4T+*>n{C$?umPjG@LnBbYz^( zji~jb7UCYATxo3-N?sEeAq-~zgq~aU<}qBI=Lo4)ekKf8E2$gXvLna#I4>SddA(9T zTnR=B$_ziB8QXY0BFUS%hEn(cB`zPmdw%0iK!A>@LEO@;=6YWXb~wZ4{w2CsWBj3V z8@Fh2hn&b@AC2?{)uV%FKXJ5CUav~KC*m8sRx8nhI;J+Q3!5_;-On>N>h}>LvKC2v z19pGbw441Md{QllY1{H>e<(h}CN5{eR+8C{Ey|9PpIp*fpRcIL)mJu;61^6&6n}VI!YZNU ze43F*@gu=2G52tF^ZV(!2E@P4RqRz8g;XuQrr}!+&>czjLqUrM=3OO;1ZO7|NQ5iG z#2PVujISH}(>iJFhOW^{t&1t?xh{JDj?J|dM(54e&wEiIZtR&~wU_xVy{Fsq_9qFQ zEv4&grm@+g*`knLo15s_%})l=5gmbc#Rt+X)M&9ZLvL6PB#_RnO{+Xy{%XHrZnQk3}5_Sy5WsbGRQzG z+4l8Ctv@5-t9A$x&rS8J{tP|r9H_3?&QO+r|Afr(f^RBAd%=O;$f9F&YQ}F5rg;KM z@odD3y?dlAm@uqfP(|8Awi+>-zy$JCG%h&9n&|jqr1jeMmlF+Sh$YM)(^Yx$+mq>E zdpVU+YD#u@WCAtyN8Z8=(An> zDUrS?72&#w-t@W{Orf!?8NEiZBaQ+#t~#Yh_b5EH_nbrK)6qg_M2RVn)3h<6L#}33 zhE-tq6Dq3roS75u72=FMv@VGwJJd$xyvAOw5o$i5XO(+;u0qKl#fcWUO+;Rb!nE|H zbhUTwE?HIP7#_a0D89JZB=;|xKfYM&7E?@|F8AHudkP}Mw~RR zm#WjRa+yKMA9czyTRtA;lT$!xvZ8YZvKxb(wvsIjiKA^B1!V*~Rc5T3`t~@PshOz_ z)f#DK=xf^5+oiHT&3=QN6MbRN$YIVWr_p+D6f;SZNS$NYTn>iZ197FsyZ!EQ$;))Z zp?4pWigNMT!(fU}R;I*UOtg##*LEq^hX%_``!8#R2XwG;Y+U;O{EGO1fNP`?GA~s5 z0jj{}iz(Sd(36sbA!+W^7@z4=VOxlc?p$zSh)%FFune(CWr-tbidq)(lo%OSb?pdn z9p@@)CKp6rO)swfK5Q~)OKA|mPE3{1=FO}~nWPxZmU4+IQH5GkT>U8nfjJBE=G;w> z%G&A=;vDXB?HC8@Io`(%@{cJfO{`$?B+Zwd2zP`X%$#7gWiKUFJ3kD=@9biCy1QdY zB@0R<^_GZi*=}W(x3OBM*XX3wCSPqAn|<8~x3Z+PCeQEcp0sn-*I}mA)2)XR&G|

p6eL&3$;zK{(4#4oTm$9Zb#fDYsS#JZ+6Jbdcq&{~V`4P7K% zxZ0^{cdEux(>!xpBc*;W)HmCd6LbG zNLciJ>eWl^v;`ep;6iI|hYMK7arNV7? z5iNDU0l$_#lGnJf%v8Qx%Bi-1l+jm1reKgVezd_p z5!T_H&zc*i9^`FG%mi2CYUyEl&fp?}!mZarvYnZUIt?&k+8$AaHmteVFPh^f$iMvL zCcZ9}Ad~;AE;+)EenCLG?%+T9p}e)AGg#=ml~jksPps&$!uN_#!x^;oK};@|lm>LV zLUbsfX~5!pf%daxZ21U8O4WA2#j-NX`|^kB8J)!|rCI8><|$nm_D)5@p$AFk>^|&u z)9byj)Yo7N2$|Rpv-V0|i3w59c~anq6q?A8=pMZwV&>76_PJ*K_SW|*S@v4MogA+) zaM>NDvLXi^JzQpM;nGCk4isT%l>NGKqpP;qDm)OQkh8iU+>a|2H`&b)yy1rRPbO~& zGZJd}L>OOI^2c=urHzw@)37ZJ!`t@M>k7w0w@P`8@~d#wbjs=zZ?1KW!*}=?qYIqV zQ=botnF+1jo4H3t19?#Ed9~3?0pms5-6}#)R9>LYr7uEw|F(hhvj)~Egv-=6&oL9JKh`!Vv5i@F$duc67k^AzKoSbH3MZtIJPl3-zz%1d)R z@Fwqm6}DEA)fQt1;SKDU{ddu3TMV({nG#~K-BK^DO%#WxGVe6i{Xb99gH#C#@K&Va zky^QE@@VSKgOM)_$V_aR?m?B`?jw?DNy>HN-&{%i3{J@|N;EFBc1%E6|y%PVe(^T?&~Yf?IFuGb3I&HC5_$wc7?jZ0 z*~Kp%?^$0XiZdstf9%>a=O2H6rlW#;VA7*2b!OiX^H2oSH|I7}##H1Yd^!-w}8`o21De#q)R}T<5r*AJU-V_|N_C!s8{fOJ`AtK#1ZbdgDGH7Gd;h;W#-j887`wk$4m(6Fo)CTe1mR zULhNVc%6rg=Tyfd9~s|S6d@BiMSSD`H{!EH^mV@Na9oC;uan>L#{{9!gXVUhpIBy1 zXgD+s3c+8eEBt@&P9DhHXaIrigFWyE{K7xiz;Cb&=D-fv0PA28EP;8j3Rb{RfCK-6 zZSVsufK9LkW&r~+IT;Bh6(b!z6Z3`hG%SSFv;-7Hq_7t74=4mhpa57}S=-n?1=XMi z)Pg!t4;sKH@DcQZVo(A~!L8dj^}Kw%zk?~DsNm|ZbY&Fy8zKz`fQ$1DHs5B@1R4Q* zKj3Z!-N4wy=uW^mm;htoIgr1|#V^Cd%O@=?A}S^>Bq<>!Ab3f32n+-GWx2QD4balo zz5WH5nweYJJG6ri&Hj zgWwx@5A=J1-Ahmb%7I5FaC-uJz$ADKI5`}ZH8c@d)m2s0uIb!O0?FVJNCzn(6{LX- x@DSV!4hNwi3PgY~5D6ZDI1mkDKmtevu>c(uh>8dIL-N2hV4VTG;M@U#{0B^K3UB}b literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NLSF_VQ_weights_laroia.c.7046C4797F96D681.idx b/firmware-arduino/.cache/clangd/index/NLSF_VQ_weights_laroia.c.7046C4797F96D681.idx new file mode 100644 index 0000000000000000000000000000000000000000..3870ebf8f20335a9e42ab14391cf7e9229dd3ec7 GIT binary patch literal 3862 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 Bu)hER literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NLSF_del_dec_quant.c.CA945F45E8845254.idx b/firmware-arduino/.cache/clangd/index/NLSF_del_dec_quant.c.CA945F45E8845254.idx new file mode 100644 index 0000000000000000000000000000000000000000..f242cfd34c9b3f18f08b70ff55af8934d3837715 GIT binary patch literal 6030 zcmchbc{tSH+sEgg#x{hIL4+}u?E5Z6V+$#j>}21wD}}L3q@pZS6j`EDk)={eSrVZV z--?n-MM*`QXQrOFaU-e)7O^u%xCe&YBQSUUn5VdL{z))4`(*5kQ6#rF6 z`lL6Wddw2eo!vRJ@qO`%okq1~HpBSITo<8?V7FKHI-b{QSk@l#nXxJfyo&Cejg;egU;uKidUt6NOWEiU`fvL9JOdXX<( zy|+Ec9U4pu;@a`xSBh3cgjo71SJ%sw($yR`zR5igyhdh(Pe!&}c{~vr{X382^~pUy zl6<#nzcXCpDAU}a8bV;B#3>16^qw4`vQXW_2lnqDxULKUOaJC z?6Cg4R*<9ZefoYu8-A~7ox*G>(awcP&G#{1PZ?70^PleU(-jxgu+go4==%Qj6_@*c zogI;3S|5Af21V-boIA-@{H3Mwb=QJk(t{_jSX7y1U;Ykcl|P@Pw4hE^_#WXwvKG5q zbByQ{-x6y`b-D3sZ}{)G7oYEoa{hgXd+yU*54VH$v)uKEa>EQLrfzAMeqZW6dwPdi z0?t_|=EEnY`)SD?v91;S428IU^bMGY9UJD3rIb`VDCTZozdKc@=<9Rg7~N1YKb31K z%*9;NpWkM4NLTv4ym;@}kq0jfz0`F?-8iR}7jzxtQ#^ak7Sq^gJ;E&}2Ya3@^t-LT z>7}VJ!r?pdF6eS%+o!poeQ|OEBHmllGqamI@t*y^8wp|cJFV_ga&l)+@jJGQMaBB3 z){DDrZGEx9%h`0?u3$4E@W=+Tpm$&kpJw(->yGWkQAR7%Lr!g!^tu+(sa{gx-X?Eb zsWDXh>Rp&LQ<=SdS2L@B!75)F-fgTrJ|}hy@F^Sj+`erQMIEgoPfRWD!1waL;a6=o z5aSLlCseg4#x#WdQ9i-J&sP)*H-XP zt5qi_H+Fh|8|iI>7(*PXQSEg=CKQBxt@x4+Te?C-g+nEb53nS zgOum}vq^eH!Q&--1VrIz#&Z=_3)E&c=H41SCKBiHQ zruAz*nJ$>G2};hZD5`7!%${(&{%+x!!joG3iy2H`!iMwD=09X(=Fu96d9?Rt?2Xt& z;{Cd+vQkM!;)!1Di6Lfz@Nrzke3NR23V!;g)SRP0{P5A1Z7Zu>+mDDkzBG|b&3()J zC~*&!P0^F&e#}9?e9BP9XRG;^p?Az2(;7o(xAp66r$l#%h=#5kJ8PgkxXw4l&WoC8 znEI{Md7y&QmFU%Jy(z`XLn0*1w{&epm&Ci-sw@+7U1jZa>gEDs(mD6sN zKNZyKd^1hKKjHb{r_l6;FV3m`2(|r2*+T)&iMk%1-TlfH5t$kF#cB`S`*2*y9@=0+ zCU44vmHDz2fss)`<&I>XMj1gWF;Fx&!|je~BT5{+I(X^6QnWv_)?%zi`Biahjc4-vTd{|2 zB952qT;v_|4JsPi^c6q){D->8`*dyF3o5gFPq)nH*hZA!c>uN$ZYPht+jczomoN>YdlHo#VW&J`wbj2uJI(S z5ZW#Dr1+ECcDWiMDbIt%tyf5^z6Xg-ubeu9;No^c5GAkq z8C9?0uit%B=t@zK{!_gb2f}A+I2HG2n8qK`cwlwUGvw8WKv3^d=E!C_UbaoK9jnOc zT60Kl;VaYI?|CKx0(XS^^hWO*D`kau*gf|+%WA(k-`UB$z1xl;c4o&p?z&R#o9){? z*;mZf2_DF}I>#Oyo#1j_szxTeEFwKe-acTLMTya5#&O-`xXO+ag7>Z4P3sHp`Bk3Q z=Nx{vj{n>@nWrg7rz;#w*<&t5K5j_VGs*vQjqUVjpAaTyjY%iik>;OM9co?w3=;M= z?#`a?ZB_0Gh%54R%xgNp{;mH|Pew+8MdUT+<0?}{ns>8$Q+hl&2|M=8==2ItwNUhL z&M8mg?FqWBakt}!(^{22GdF|=F=>!it;r*8@n~`R+0Bcc>?D6z*mbC0&9QdGhIG2- zpP=0{7d6*5fJE*Ar%{8qk;YTn*x~87BG-v#dxK&nHJUFzIq!D2p^Qw49d;^y_rkLu ze@1!hd`+ZS_JcEhO#j@d;?*CcNDlQsy)-pSYVKArHEU+C4KvOQp3riSKSa8}TFy}J zli1X>i|%+*)Z@%y7KPKb&NZbDb$-#AF*-&VzDElyUtJIJxGpKi(zaQkiNc?$6U8@Q zFY>GD#YIu(!hJo1@?j^s6mJNEPH@Gpvt!X*@)>HU<~z-}C5!6zdA=(hSz*YOEZnee zL$=pu385nL1`py}&viVU)yJ&XHc-?b1a$em__k`W4pT&aoyNA z;maU#7G#Uuix+!8(w3lwXJS>3G%y?_s6`7 z@tNTA7}=~AoM5{~Xvb`cRO3_68L~o~@vm0pAm+uE&T=tvGdcVD;`3K8hqS#Mob~E# zFY^CIs3%0d$3(;hd&<&oakmIJR1S8i4s&2quoz4tmdH*dCSfPB?2}j`h7Ak9AsM>} zkc4Fl_x6dn#g4%g%$Z(lUesk}=19a^8(5pug8X@CXk%c5q9ehPh*+Ho&M3BlcpJzg z_5t7<08xez&_NVY-aUW#v|2qz)`i9Z@7at^;akL^(FwtYwF%3->Oi?5&kWn;OFh|i+ z!4gF)1*;`wl@zF)bK0UMKwBFkhKOf$K|?vb93O(JI8{yrHF26KYT>j{)W&HqA#Joq zyhdvoZU1v~p+&Z~wBCkvWMgTAq9e&s39&kpoKXxF4V6W#F`_XjCITrDQ1?VION1>* z0}7BR%RDGxMp@>O1^ihc&S=t2c&fcg$UqxQ%XK2CBrdBi3aC*26^3(Giv$YA>tO$H zE|pv5eQwdKpso)%DS0ez&}?f~Z<5M~JbemrEJ=`Jy&kB7cs44sC5 zJ7EYd?lGiOlN8H8ha)ZF44vjkPdI|~gd<2#ID&sOhzNfZ#t?)<-}cvVZgBW>1k$RX zq0_pdS3iRE>PL`X{Rq;lA3=KcGq3}@q10^ToEv@0>Za;TMtjg1I@V>5)p z_Un|XPvlh12M$kss21OSI7YoGdV&&qCpofYF8p>0}6U9D| z>Vpl4dp}6^FB1kqd=Ly69*hzO{NIZfLm!VfJ`lTQYK*>}*WuUE|6Tj@&`=4d#DSnP zP8mftoEnOHI6V~gar#Th^+rnU!&vJC{W|4Ba9LUrxBXIe#&&&^^ixp^FNMCfm*jaA%-qc42733=gdp2~S$mX()-8L{SZs31H?8e|_kGsT&-yCP)hKa#NY?>`SD zVuQu3m82{xs8|Y?W}y6Q+ZF5;v==a#pYR=iz&G0W2Uvi&Facj-2BzUPyn$En4yND> z%))#440A9EAK??cgw-tUc-EDi{5*UF0YP4FAttU>I1XmEHP_)Jl)-5zg`JL0&MsAO z2`)neG{O~Vf?V_Upfu}GEXF*q-D6K(~lv0;hP*hTuQ&mx0Co7}*5FUY+j`j^`19OW_ z_5-kO`wj;Wd0?hvao<0L; literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NLSF_encode.c.040D330BE5B18D3E.idx b/firmware-arduino/.cache/clangd/index/NLSF_encode.c.040D330BE5B18D3E.idx new file mode 100644 index 0000000000000000000000000000000000000000..5c4bc14209e7228bf86eb214b6f190e6214f1435 GIT binary patch literal 4900 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

Z0hfSjAT6l9Zr@-~5-(VG9; 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NLSF_unpack.c.F468B4D811BF524B.idx b/firmware-arduino/.cache/clangd/index/NLSF_unpack.c.F468B4D811BF524B.idx new file mode 100644 index 0000000000000000000000000000000000000000..a69765b6b7be6563646f8bec2f18ec766be08c27 GIT binary patch literal 3432 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NSQ_del_dec.c.FE54FB9F320FA6D2.idx b/firmware-arduino/.cache/clangd/index/NSQ_del_dec.c.FE54FB9F320FA6D2.idx new file mode 100644 index 0000000000000000000000000000000000000000..31700271734a5a146752b6fac552448b892b8ede GIT binary patch literal 18634 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Namespace.hpp.34957FF5B286EC5D.idx b/firmware-arduino/.cache/clangd/index/Namespace.hpp.34957FF5B286EC5D.idx new file mode 100644 index 0000000000000000000000000000000000000000..d0f4cc7080707a262f56cabac4f7b064d736db4a GIT binary patch literal 460 zcmWIYbaOkx$iU#7;#rZKT9U}Zz`!5`#Kk2=nJa;`Cldoh#hjxP9r>CZcwBc1n7rzf z4HVyHkZ0qN*k!`AC6m2p`}89-9&q0Hs{gNEKQkXR8;Wmd8@ zv`@B7=)cFR#2a$BbC3U`g1#9`b~&6j+jBwV_cAJ~#IWjRZ1HA?UtSUSz zLNMu~)U@JaprB2DZm`7t=`xI5tco0p+F*r1qG^Y;bds`-9Z*<}LroJV>^t%9-i;@{ zI)K8m9I_fPVIBz~4b=xCYkY2{RO><|KkR#YM@* j`XB~7h=2e#7=wWU6h#og#QJSvNDgP8lnpZr8#@C4F}Qwp literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/NestingLimit.hpp.F81B9681691CB52A.idx b/firmware-arduino/.cache/clangd/index/NestingLimit.hpp.F81B9681691CB52A.idx new file mode 100644 index 0000000000000000000000000000000000000000..9bd6a3d32b1bdcc7e6e6cf396e85c8b7a2871122 GIT binary patch literal 894 zcmWIYbaN|XW?*nm@vO*AElFfyU|Ic`Ig>1B+=$SzJy~~OeRk?c_0G)Ino+x(7ICoeESM^? z|5I*Mc3k8w$JIw3FYgJuebPjVKiohmtat*0w~PH+=T7!(_n2=c`>!oup?TS=!1pw- z?2?}Pm_AG3|J{coFO z?`3_Qd#FCS{n(YZefyU*#Pa8#lkxju8h%>tbTmV8Wp2_Qpl@6QQj@3ZI5P1uaWXNm zN^?mIfC&Z;pd1h=jENa2&Cks*4klpIhAcLF1gb8S3ox+&r3Lu~CBOts zdd6%s54jYvX%O9fOniK-AOa>WcxvfYVXb#(*qN9a8CZGPc!aC| zU_N$BfQbWWycoL}ADDpYFG@`-p3aEy11k?JpD>>!%vK&&epP;Lm=AbZg>{9EVGibD z73UTggqhC;_A|^mFda->V86nIfd+63i^B|n(TrSRAHx*2|2Xn8B=CC+GthDgetDQt zK)ou$+AuvltkO)tX%}Fq2jYl)CPDb>luzH75h75==EiQEE;ih*MmYT&xVFnOK=Z WOFl?1og&1<#?HVFSI5AHU;+RWd;FXL literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/OTA.cpp.D8474BA9F9BD0422.idx b/firmware-arduino/.cache/clangd/index/OTA.cpp.D8474BA9F9BD0422.idx new file mode 100644 index 0000000000000000000000000000000000000000..7d91bb55b828d8aa6e2e634924d9688cd974c3ee GIT binary patch literal 6486 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/OTA.h.4D38B2274C5B1C97.idx b/firmware-arduino/.cache/clangd/index/OTA.h.4D38B2274C5B1C97.idx new file mode 100644 index 0000000000000000000000000000000000000000..21003b9d651e251c6c9833fcf69434c5a8eb1da8 GIT binary patch literal 738 zcmWIYbaT7K#K7R3;#rZKT9U}Zz`!5`#Kk2=nU{ccFe3v)#hj&mhW^ZkJgt9&^Aa+& z9j|=d_G&?pxYd+R^L!qCS>%0g;$v&JBlYS5j6&Lzo~GAsx>vnnSLN+(?nfstI=56a z{?op;(7F37c(>in*}Y4AgN8a|8h=sGBP`a#F0#p1>OsUhc{DK7f- zE}>?^moBI68hL!evz4xu*!(QmDg7_Eq~=!WbnZ;sbyvS1din7u%S6j?4$jmyRp+oT)KW+d=1a6#l5I5=53fy!YD zruXSc)xJNS#>>D1Q@|$7rVKWZjRj~z<^Lszn2ikUcp3O$3Rs0%RS^o>6)(AoMpsSX zVc>=-;9%vDLRfK-H;pZ8%a)xy4E!(!T&!GT44ll25JzTfIem{cne>&1ffuHLot0e_ zVFE)@YFhDmpd8G?7TI0#c#lgtI2s4D?;8)#s)1C+gG4gP5iE}By z+yM&{pdsL}fEoe|37{}I1faq&{{w}={)P&}d<_%^`xYt;vjZp$_9Ijn=0l(`*k@2- ipuchwLG0q9_x{qm zONxsh*CJF@UDDD}(^wIW5R%z9+!(5xV7~#3P|K?mFO2LO-AFgxJk%Z>T*%5SnBqsC z6!*-X8n{$_-_J3h?{7PB_~f0#{TY+bxc;oWKJU6Cd9LS!k$r^~!Z$ z>%d-LNASyQ=I@`re73g#D^$8^U6FULW5Kdf_MAJ|WKVyT+fg}udid(UpO_5gr8BO& zGbf+5m_}yiUOyYOuWj0X`Qfb_rp80JuAHdSrFE_!kNxiY^D`&z+Szk@U)9o~+Aq3u zrs<8RN^f@L{u3%Ywqy2zW78MnyH?k9mG7CIY@TXB;ns%AP7OlOwUly4HLaUv9ETC{ zOMbm-kd9T%KBMN*cbeKJw#b+=*d6EAs|Mg(-S2JtWh-uwa4bf;1XDr=kwrNf;BPBl z?7H`{3mp>X87x?YRm30~5&=%Ldv)9T=HHO8z~Jn}Y#Xr>YdpZOoXYzs{B?b=ggFLV z92PeT#0F%5&mZZ@t8O0ZBREQf2(RTO)gVqyTti}t27jPhE@@0sOY?GGfhY#v^9Prj z&%A%_Qwhf~_r;dt3?ho65#Wpaum0gI^UOGMZ9U z1MqauLvJ7NT5&^GN+Y&7Tas!3PTe_XTr7F(ZwW`U*dB{#6%jOwyD1?^e z^XV&Y7CNL~2-<+YpJCu1mc zo+acjbM6w?EpwME7e?F}Q;gXWcS-3mQ!JjvhPa8Kgwk(C-s zbV!$`E(0@-8+N}r(0|U$u3dW9ZIDX)fZ1G`mcO1|2T{-pY;dOGRW-n>LCWk}kpf&> z=;{Zfk9XEECqA<;1@eNXX*g9Bz=rN&P89=OQ<5B?yb_uTZDb@x5)qPva~Pnj&=(d! z5eAU<+RHv}TRhquMG2q8JK&lX9_^B$aF%MU&jhIgN6V`k%3ioKO}5Crq8{vZ}51yX??NU(3L7Da_X>K^}barUtP zCsvCy&S{Kf@6L7mBjEx#z(Y5H!@?uMeKhEKK}u7%N@o5 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ObjectImpl.hpp.B450BF4DE291355D.idx b/firmware-arduino/.cache/clangd/index/ObjectImpl.hpp.B450BF4DE291355D.idx new file mode 100644 index 0000000000000000000000000000000000000000..3e4bbd54397733b9def3602ee5844b19f10e0d5d GIT binary patch literal 1522 zcmZ8geM}Q)7=L>O+IxG)U9Xgu(RNqbLaC!|((*9}W`H?GEd~&ZIJW^pvemjkSr9XH z;LM0_m^qb^_z@Bih78ng;FK8$x<)=|qa6!#~vU_l(@dp0jNAZq5aNX(Zg6r>;NT`g$I@^JKy+OrQ3~xU9o9)2B8M zWf{NkuXxa$`|0UdAKJRVygBOh77gVmeW-A-nf~_6se?UV?|r&b))9YX`eOcsEbRFC z)BX|v(ZbrSGugUwf7<+T^rHSXanXt8I8WV?zLrc!+p(9rFEu9I5mndlPT;HYmQ0}z z`G@m8u4cQ10-P8?x7@8=djOIUh03KO82YTezhEJo@UjFG0-!2N6-ROmrv*|JjILjc z&s@nrcCV2o!VygKbUdkKlxhqcOi9v$-nmYeU=eIpTaBb%qE}$}e2e2d-;}3|C1?cm zX5L0-$TBz#!w*)gTZd-uvxEe}0x!go48ufXIA;HFLMcc~Xbz`LK^0KRaD5bXN}L>~q@W-XIINE>v*5rM?LV8ctNw>j z2?fJ-;R!)HwOO4Uq|@v43AjEA+DtYlZUzMtEr~A&rM8*3C1Y|57Rn2GJe8jEd;eNn z|D;989aCt*ZfDvsoUAE|ASmdDZWgK1f*AK0hIr$2Etd#>HDaUplCA=ZlPxf^}=`n$Cg0k@s7OL1Yh z=C(@*m?uTZZIYW_#HVpjkYr$gMw+fV4piUn#f>B2+TLI{1*5{FR5%7xqu9Xq;6s>N zOhJZX6qpLG?GQeMk|XUbW~eaj8LwSx?m|sVC(_wq`*VmK7PlXVqS?|Bv<~y4RiRbu zIZ=?8@N%32vNU{b(6Un2NUVvLD#ED?N(m8y4ol%Tsw}YCSUEzgeE$*C`!tXym#zuM z=5RS09MeAf$I^7e=2=ueui&GD;s%*P5wt9%Wj)Qwqrd;NX^(U6e&fUW{o=E_Yb!_~RvxRx$yJse nEDkK0ud>u<3w)4)$MZ{uKL7!3CA;(A?(WGJlQIfW>j3x<+#L`= literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PLC.c.DD7304F65A9C9C20.idx b/firmware-arduino/.cache/clangd/index/PLC.c.DD7304F65A9C9C20.idx new file mode 100644 index 0000000000000000000000000000000000000000..5818e1fd56a1ceba6922ab47a57ac4cf1ac46fc8 GIT binary patch literal 13326 zcmdU#c{r8b*Z8e{p9~>|oMXz6StOZBl$4=Ko{9z~X_C_HQDi7Ggvyi*MMRG%rGW;T zL<2=C4a$^4sr01r-FN4AJNy3jyMFI={r-8c_gsbb*=w&ouf6x$$IZ#nQP@OCXtIyf zwzbPQE#(La2}$Gs8#irO^^cg4(5clzLfa1A$yl)eiG|$F0Uh_%qqOD(SerPRIgOMu zNr;eF`1{r(<1OkND@Tl(-eBV)f4tO#@Ri+LNmr&OA2_iIJS{@bdXj(HYY< z?;l<8<5{Zz!1xTSoJL!Rd-7-E|6Te#eP4c&{;(Hvkqss2r_LAM%k%C8<<7e^`ADX1 ze_F21D07YMryrkqnT2JK_*DMjr?*AsCePv*XYWeg%(d>>p%(u5uWyg~yirgFmr9pk zS`?c;W#^KI!@hcdjNEiFdt~ej^N<}cDk@g~d>qoK^tPkX@5#mO1Fv+FU*&qFe-dfB zd7>%2?~p6EwQv3Rv`<8Qd!0o{i0)Uwu!@e(l|t7Hd~??4z7g?Xo(T6Iu@fS7^oN4t;w3t=pH_3m<3h z@6uEXR=;?BO6T`GZ$Fr${ISp8!ZC#qg+XbiBDCu#sCSz}09k^V*{;8tD*Ruz|4T>Z)INg6x&{Sk#KQj=I)_h?~F=o6KbzTeoFOx zoS*Qs&T6e{#|4w_joNeEa?dC_Xm)69s9h|PU|!V{?O~taIPX!IqCwzCWR%cB*k_7)9Po5}T3JGHh;rhS8Tt5f}cFboaWtKV(f@{ERu<^Q7ie zn^VLLy){ba$i=(=5Sg-W=&k4{oe;iJvcFNU!E)}Tp6CU(qcmFP1=YFc9~$A9_?GkC zup)AUQ;O~;VU5X`t~;C?X%-OPO!eQ^jQ^)Lr$#ExbEapAMWSakXOaECBhAzFJ5@`) zrB*ymsE-uaJEi%g-t%0)M&N?0`!gad4>$5C;rOeGF~y@tT<_3$y;OMmh&PfLc?mQcTHXDeM?R6?&boM(<{U_3YX7LAF92~$G7ZB<2e5_ z+M{J;e6kN4Pk*g&(aOwtk)vgqu6%}SlWk^H){O-_)}21>Ste~WuR7=AB}?7ICa0tQ zIkMGV3h9?iXDoTqKH;?A!?whIx1}t6WLLEf$f*=tzV!)P?6!6aM{J?^yqVeo`mzd;}5jUosQ1gzuwR_={GuO5$p1StZwMoY#o!8ob-$K2XS9(%GQBC!pN-k z`?Z?*zTC|9h^?P|_UQaIRQuwIx-B=#hiPsuiO-Z)^{h1Bf6!r;)4=05?JA?TPib6a zuAygG6unn_N}S2=eN|pbVzU#xzAGYbS ziA#KR-IgAEpmlrv+t_R|Im;Yjoz2TetTQ})qo~7p=HAcQQvx@+N6L9Qs9(BO_(^(v z+JeAs20MM_9jVq)<4+gVmRz}hW5LJ|Q*0|#7frPM^!A-v%Q^!Uk@Gq=bM}56wm>uc z>rL&^<|Wd5tzg_h@6ZQBqm^y^^~z@1sT@2R)pj&%W$7>Le;Xazcg^0^+g0tDfRNy_fY>kB%Z(na4&1k-Og%uGJE}h6LDaNbjlVAn z-{x(ek-qG@ch&N7k+n&|pAPvB+q~HRgwa&qN7+KdO^eT84}7${-0-8Y={mn5rVe}J zW;y4jUNsEv5DV?7cKoWjEa9=df$v)VTPr;c%eHNrpT76WmFo6a4>K>X%Ls1_;5_=- zr5rqE@8?JF%NyFt?*#v}IU#8(ef#RDCksz)1i&XK}S}nXH7Hd^W8KxfD z-JA87N?6+}|4QqcMN4*xN3R@xS*Z1*YCz_x52e!oR`_Qf9Vzusvu=Qd!Nq?T=Gl*1 zP~T0xTP7qj?Vpe0H9MY73URTM2tH!8a+jw@N5ky8o1Z_lI@g|5bogvA^VF3<%^;B# zoNK3(_7;U*RhZwhBEoE8s;b+;q8&@#www~VBrZH|^_+9OTP@Km&zVX~%Q$ge4qHSl zHVkYKl|K4FGpD9_beUiy?t_aS{d@iF?z=&c!WWB7ADEWsz4(!n z|MYQoRFkOl{9j2!-)>ux)}dl+5?wsa;ka+&w*RnV9eu&aQn$9&KZqIpy4;&cP-J17u-l<=_-KIy&XM8O*`y1_! zjlDeZRYKv6PO+%0?Lj#6rESE*{&Z#Ik+Tk|4Ewh%Wc~a2xRmm%ebT2ybq#*C%nuGY zda{0>`A_li6FFlx2CnsX1|gx*-=aE)6!lONLWxL7C=xB9a!ZdAr${xtpIohfKBm# zGsd0`a~hw2F3nR?XxDEoO`fJvB%*&Z8aiI0Bh2LEy(NSaerrThLn0~pC}cLoOkPNA z2ns_?i7|D<0}^*ktdkT9|E;OP)6j@S^iRgtuA!v?K}r#=5<+`_Yg7WS5_BSw0nb2( z(Ya9{Zjsr}YnKp;`>kU-#8f5<=?&475fbCTVDlnRjL+S1erCU96TOI7_hj71X}M7^ZO;#30QWG^mmM$)WW8 zFDp@LoDv6mabQZQCWBrw3zUI*8B8KHT0yQA)CkZ9a&0Wo4Wiv3Luhn^Za3iT5&wgW zO+dN{hy*D}F9nhHNJV<7ERc?r($V13!!|0BbR|+Ij8-H0YBV^*vBqtrd>ai;XAE8< z?n|UjWXYs7GpWIj!5Z0=d^SbeI8MnQ7XWMRoHWm=P>n z?s4Br(nm}Zt8P}>tVxu*Wx*C7LJXP{w2%JOOYJ`ZX(`IG&t<*U+25TT(yy)XWsy*4}c-l zZVbM`_-`-4*_^S=2hkB_OB9vRSS?z0a9d&S$$od_e@1tRv4%JJ^b%Mj>RnC zWPuc;h(Qi;a#$b&aUu|@(Tq6FEHHpL0|Ia(a%=IgyZv$;Y;3*CdVOLo9tE|dU_gL3 z;PnR95G^{5R8Av(2522iQ@a$~$`j#4qGI3_!!X9@V^9K|5)dQ6CE#3w5d?S)oX0SX zF^01=1E(3p2+#tY78VGnIN{U?Mx*2>iY$E6r$F~;DB^@787AfNi?T^idp%U?af$)m z7#MWQ7#slI11wNPSr<{0nNA*i@=WuWS3RQ@aE+`qtc)42h(&7+Yf?N5!_R^u(V|df z9g3WoO5hCXNH-ms5a2lC9Y>=Ha1JS+Ls|qlj}*_dzy+jufd$HuVmS*`AjJw6s6u8{ z$eu7-hZO5r8m|!d6;dZOS`oLE1=d_z_ z4ax+F0bUHK6Ce)E<6sg4u#H5JNMzaA57PTtHVy#q0Lw-)m?sNt;9?Jg;z7`2jQ$2X z2Vpz|a49*kBnMU#pa66Vz?kt1Sfc=D7Jvr<3PGX}4w< zB=#dYCJP2B$RY(zB0ws#NEHBVGz}@I31%7w|3iNA3gTTsYD`UWJ@^xy1^&a6RwJ!y zG>*`?jr49KQv&?qYwM9!J(@yj)T62O$c+KG$C{CAGn&f)T#x_7?zs<*=|fgTTRxyM zAJ7B>upKyV{s8hBK>myd274*aUTPTO8;?@Mk5UQ*$fJhm2>|Y~LQ1ocGGa6^D54aL zC`|$sQ;Nlu76D2qr4mY)0l3%_%CLm8U;wspic&g7X%m3G)!-~=DUGv~A*0bUHz;{q zd9*q0cza=aFKl4^ECzkBs1NXi2>&CwM)dWF;B6MPd*yc-lk#ZqNaZyO+bxIT3jBwA zC0!&={lg>v;okmmUVp5-|9%PlF@6905&mN^{^)yl&pJ-4-F0s72Wz@B3XpyQvSd2r z!@Kw9y7m`sMQ}?BtO=1n)&$^>H39fzO#uE_ z6M#RG1mKSo0r=xY0RA{JU?lg6{uhm|sdR7fHz+0r1OBpRz=b7SHI8(IIn&1_dZTAJ z7WvyW0r-0^0S*Ga#S(zO=@5YLh6%uT!vx?vSq6Nt`|`ePi?l0U^Ax0gU z#GE@Ob>i0-QPXKvCru}PB6i^->!QGjvfXZF)8_ML(U-O?;AO#RW>7Kc1jSC)%I_ov{)MooIEpw&krZPKgJ+2IOaPSDb=4IPn>3%kF40Fg#sn7WD-R*^j{^)~ z&MOEP%?|6~oNs{h1_p0rOq`EaC8K*-@f+~Ife}-=uR#$e@187JOfQKnaL$4`M8Ae2 zqflhYsA7!>G(G~^5FiQ7PC}jp$VFpwkp%(rkbfT9N`OM7P$;;QVWZCw@0s9OfWb?o z|59*`!=M|fcB8?l)pax}d+L)DUUX!s4&>@!G}A#CJVIuV(BS0~gJxvXjO+=GSIF)a znofXLWY@|9ZOE>T1=^8aI}3CmyABrUM0TAl@EX~@W`Qnb*Tn*Fklh;=c#G`bvOo`V z=s~lIn)V^NK18;*4>|Xtd4xtkTG5X-5nuqh4j>N(FgqtbdHI1|CMDs_>1YeT_~rDR z^c(G`N6Z3$DgVKX0Zy$!vNcGN8PKlp5!PSyjaJh6_{U1dA_n~HHv#w?Is=xS2z}FL ztLaBCvK%nZ0c)nzPNeG5)qN;{PC15TjtSgF(tZ~YUeo)Hbb0)k2V)Hbenf)+{D=kv zERH#?XjhioLi-S_;Z{n_O$v+F!>vg%2Y5N4!PEw)w}M_Pm@$pUpbhleSl}2Mdkk4K z8jm989??rbzJ;#l8?b)^gPsM0UQq0X!Ds*meW2JU0L3#-q_+-5f%N?5$19iyV8D-8 z5P%=AAOJsJK>&Wdf&lz@1p)YHXaevL#022SD+s`kR}g?7uOI+FUO@nUyn+Dycm)CY z@d^U);}rzp$14cHk5@3@%Iwg;T_#3`(3?pXQpjTYnV(4fCz54GXxaTSWlrhCchZ5m z3BxDwh{=!#;&~uLjD9cJ_JSjm6KCiHn?7)0!26CnD9NIKCp}wtQnEWKRi-{(V4G9- zPBe^8sY9-H$csstI$1o>BaR50ioc|KP)b4Hu+d-1l!TrHjc%GTE$m zl>2DdeWb#u{w~I{A2~B%PwD8>cZa8(r>8+4;^ZMErg__=S2WxW+I*3=x`MNUT)0iZ zX%ZZYaC$t&iKk?karuxH=d$F(m`ildBH$E(I8z!14Zvw&frr3(C;)*ww+q`wVEiCI4FgO2>6tH6GOC!G=k}U_YqrhrtV? z^_m^yij(J7)1%M%nLJpiY4EbvEl&84uC3SQ>4OE>Dme12D$~kpwTNh-(t`Q8hrww zx7t}PSn}>e{yZ|t69i9QZnuxw=JuwAJ_jQvegvon4(>$)+yc%m7Ko-e(fE4-|L22i5l3<21fX44)4gXx$xFH+$EcCV zC>3T}GrdATPm@pWSkXySWM{@3xYF@YoP~%exPS^ zU`1z9=RxNwU#h2`_ARuNUK8u5t)E5AfdHid@;tT0amx%MHOM~5i4cRGgWU)*2OM(1 zl>m95oClf&cmtc>z;>qHxb%}q@uXn$f9-v4M7u9Oh~bnIDBhpzuSSS9NU26}V)a;K7Mr#%u4YD#KynVT9GwIsE;%=a9yXv8rZe6GXdWX|Ma%+`Rflw>#`r*7BTZcJ1m z4D7;4-pcaTcs(jABp(l10E}uB8~90L}@)vm^#3 zpiu&bghm;tmVq7va6S0j4FhnNYrwh23X*D`cOq>jX7jd|^{<<|_0djXi_w^;qz zRE{*x>7!3^2Pn$}lr!USG032_GAMHbWKs(=skH>iq71SqTLNTLrrDGu11!$0arl*= z+(-MU8l+c)>=++azd!dx(<0vw^f}K-%4sCy1hD9$;i5-~2f^l`;57}W*Q2%dXd}}T zjBla6IQh*ftoQ?XKVa~kWqj?XJw1-!KGSunNAC4#@QWlOT=_|1tCYUbPLTf~$kY-8 z{_7qA_>Te%a5PT8QFXd}0Pq0tUr?EfJy-k`8@4$5D;;*$<>->p21AY^`PgN~F_U99 zBdl!Cu^-%gu(*`7l+0TNoGKu5M^T(8!Kpm;{ie``E%$%?js_36lqc*4bAwe0KX(wM z4gz@)&qfB>hztkRA*njSw{mb*>d@FaRvfGj+1DZRR#A_n>RDOp(b#%cmitKOzTole z@fV+&(+mcF(1XH%OJO?pb@)UnNj>;Ur(}a(HkdPY->}?oDXq0}!?KOPzjw0-F`0xQ z63v=2e`7#QvKJ>B?ZJn#C?tgc4Sr&XzoP|zFI(&57Xm^;JMlNbe!(|fY#;o99(WC3 z;Uj#2x6ln;@D6%m06xQe_!qvw8~6nM&SGF2O}mZvgGM=Y4>j^g3;3~LIpEds>cz7;Y=(D^UZb1#y!WCFi2OG8?f(&>DnUD=xa0H6r z1eCx@I0I!+2{+&-G(s~xg6D7--0p$*X()wL5ReXj$KVdUf;=2Z@}2DLGG(fhqrkI3~;#rZKT9U{DWD5ataY<2T1CV|T#1(V)o;Bn8NImeCQ*d9RI4r<~l(?I1)_q+GZ?X+ZieBzhlGGIMM4u)wXvx zcvROVC3orOep*$aCF;8DNLIq-0tN0VKjtny|KxjUsd2>Yk2~hywff_IyLk`yxx-7I z%>TzKJ|pOJab<22&2#WMk&%f307HgQ AtpET3 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PLC.h.F200120DD7452202.idx b/firmware-arduino/.cache/clangd/index/PLC.h.F200120DD7452202.idx new file mode 100644 index 0000000000000000000000000000000000000000..cca4b90f5ebc975bcfeccb0d5f172510576466dd GIT binary patch literal 914 zcmWIYbaU%sW?*nm@vO*AElFfyU|9;ZPB`dy*np?)vxeoH z1IxCCg+I6;eak|j(7|KQYMsLCD>8+TW?K5}vCcI!RJ?JlclO)+-@e~|leXnOc!x+*jKQ{@uy*WxYV?oZSkVlzJ|QgOZi?CSa~sN&GVxXkJxs{uK2&}%_Cp*mK{3HVb8s9iSAGSOOxjJ?XszQI_2~3)pVXd9 zG2GxKt;6u3_kwVTTfka@xrcOfCd^8ZwUH8hb67a!*7o;@l9l$nDos}`z14Ivy0wqt z85l|iDGqm+irajQ~$;QmU%g)Hb zsu9m2XeQa8#KXV?k!RpAV>Odx;ACZjC^&Yp*<#*PiKjda+%N@NtXjehoGgqG1q?;0 zX~p}2G4UX*dRoQqE^|gM4iyd+QK)K$;HyRPdp4>&0)^E%)RkevFqbiMLR#S#|5#T50_*ps*T; znhH!<;;LtN;gi#ofx-$L3IZ@;!#4_DAyPR@75|U3Zoj_)^(u2H zOTb)tPx?zwQ(V_CW*!c07Hu(@dw4kXS@gvaCYiICi@{6+#$!$*NPlrra~;#rZKT9U{DWD5ataY<3;L?A89$iPrBXK&wGz9s{Kmdb@jfqD0& zzC1X1M56v&tKO!C8+^CFc-{SjPfl&-``u?mWZ7>q?$A_im7eo$o<>#H26fp@E;3E0 zllos+^yW`LvExblJeJfH#|OuPLna){%HCo$FOK>7wVVfO=aV*h1Y~3-?vFWr<>Tfz z-TU?9!`G-@?6R+{o3kP1?YFwfx>^RQb4l6^#g(~9K!-6DrKS~&18FVeicRK=SLrkI pFfsEm3xlMw15P%gWGECTKd3W_l%YQzm=G-@Km<++8$h!G=+qM|?) z0xB3F3NpqOQ6Kmu#NB-E#wFy5D~K4EM552vcV@~v`SYEZ^PTTICmiVJcdKsQ?yBnU zs_K#PadBsTWwL=&<5Ol%n?IS6$z+}A-@N&AXRISKS%pF-ODQ@v`o!F;o$aPQFuZpq zIB{J~S3}|Dc;E2&miTMaw?_YS=#=awzwEdf*zw@dl7IGix#Xhj-`WOVJ7TSw8dGYwf!M9haZdZvr#otU{J!Yf^#0WkKX6>!~5P^ZNlM! zh5Fr{x4#qeLH5h`u|WpYGba>1n6uPAK0Wbn?LRY1^j3rjCqBsl_K>C2R=F&iu&1*Ij>Q z^Qf)6d&h0k?CO1PLDTT%!+Y-a9jGw4r5{>&uVWMUtyk7_-Z{&jiGA?)!EbhNa%+f) zk6^2W?KiD9UyRkq6;1OSSQk^woR1FuG5^i5(S6Q#8=P8ua_7?3d)(Ty>L)I-GbBwb zTy=ipo)d*x8*{<}`j`8iTh%MF{Z8zfHNwW$n^ILG^o%w>BpH{mS5=-aXd1xCWh7d^A3%-_ge0?T7CTJ+ini_ z7uSF1FfVoHl$q2kYc5=$wApqk;YplUCRBi~0vybpOi4YM{ya(AZuewt9%XT&EZ-5$ zcf`ruA@-A8KhO+ZGdP+%WH}w;y3ergm=jNQlw}iWHi3t^LzWCdzkA5Y9c~K3YD@zcoa9b+ zGL;d4VBK%Uq{4d|d%cFlP#JeXeTT|0btq$CgvYD(L)LloWDsRJ3Yw$fZtjp}>h50E z-Ag@uHN=s!w1K(}Y|S0AWb|9P{EdeOf1U)>>5f*6=8X-K9ez=a%X-FzYe)}D4rYVx zj17|g+|JaDI^sgfKJ){3L4B86#MB{6kC#Jc{akuGf+qthO9QAI=rBzkvaDUW@nZ19 zqyaqfqb!Y}ZUh%|hb;0*BQ~sUI2fZL_H-QntiR6KAlX`0le%j7;h{VU(VF#n1vFQ{ z4H^6sQa2U2y*ENZl&Ek=xudP5aG!+cr&Yh68N(A-I)-*ov{O}?I+Wqr?bY*-J8d7U zA<>lOHmGmYVVXK*nV;J&x!CKcL=Ew$EcZZt58TWhvMm3|J~p+r;9W;Dn6f0Z$!cSR z1-iMBULdj8-9HI`f#Ez2v)P4@e2Fd$=o;*O^{in4&ai-&+Z8y7%u|aZ7 zYj&{u=}&n);V5~g%}fVlgXB&bSM@W?7Zqzre@bovbqk%nsY4c3^xCfNWAiDCEoHd{ zj<-N>?vQ2KmeUXNc*ADX45AcK8bNH3y!CWT{s8&XZ9LIa2|t4NN9bhkkR{^#iixVn zD=14(%F+aiCg9B-vMkam*(tM5)@eu(WoZRPE8T5O9kM*1emj4b^S)y|i9}Uj1MM|Q z)e~MUyZh#>jmI@)0M%s(8`8X9B|ogbSCfVWQt|^(JOC$ihb$WI+o46lVa+`0L|GOn7I4M}$qA!Q z9h;L-)2tyjlzbDon^c0SLzbRFlc&AY>C;<038gIih-M#gHFwA|Xt_IgJYdx=1+k{{ z_)z|#t+5g30mgYOTz2FBy<6k~Px_#;FM{@>v^ocrcKzCW<=-Chq#H6^2F+!OVQ*R7 z4gK?V&v@cSM^R5S^~BfQ;V6XTKa-m0+kVrKe$-&$>To+_gXE#b-)&i-jensaDm0jb z+`(Sj%7m$(-q>DT@7=m<%=z7 znIO*u3tRw90a$Ps0#j&-zXIkfOI!s^6)17ijIaabJAjq&ZjkS`#0Nos&=ThmHiu|% zuV;ip!WLTMEri`-iK_@(C1DJ42x|;&aCtJq9L*dZZk`zEP`ipz4l-5Vxt`nb>bjCz zRbT`TMRCF~mtmgx4kwIp9@7Pl#R)0;l-CwNWC*gp^Tpjx_W!pm`v1#<-TOAMms7{v zS#xyJu@%6h>xek80>UKx4KUwGuEPoYpwm8ZlIXR-)Jk-WU#&PH8~n4OJFWmu$N_l{ z=n%8!s1_IMlYa3Xr3GI)aQ_=-{o~U7?-nD5<8(2YVsV_2s4C}u5P+(}pd3`jV7$fo zy}J|B(|Nb7M}a}L=iGo30$l@xP2r_Xh7melC;7nSgA*!_qtR_Z1N6hdmlIBb{1mug zyv~~AcpOGa{<7&=wP_wyzQ3Kn7s}tCJjiczf4QfU6LN_@mjvQwzzKQ8K96`wxQOVB zEa}C>zSxppMtsUhgv4J??8`0b)kI%y`M!bJ8zef8o9fS$WZ=L#;WHxtj5y$7g4qW3 z*%T&)lk}0wq*|afCd~pFz{UXfXad%po!}>MhoO6vn3~`ob@R0Aj^6dVg8w=+{=`Eg zAUtJf)Rt}Cs2^G>tjwW>OokaCHNTktp$Rx4(KXQsd7c?L!(T5BTwByHOsORDkNtU;)3efw zD7q?hi7uDeNnT$>bVZi9jOfZNaW&CZOW0~|dheb`ZucjgP(~ceh+Y!3jVQMfE#irr zS4YcwJr)^{gYr0Na4MW|0&Gu!Gh)ng>6lF^E{-{-BXUu5?$u~2!H@W{nETKflW-P; zK}>+D8N}>YGQ)WNcrP>qroq-K!Ib{uC&WD?GLHC)HA5SaHehkBV_r@7OfjFvJ@ZBO&6Tq@k4m8Ye$IY=xTj%~O;un@t#N$k zzy00+?cY4cQZe>&dpi_^88>ySJYe#`R&uLTpg#qHs9R1r4f4}qkC-**cVtAF(K!K)kL{k@*PgtK$IIK{2Tx1z3(%JOrdH!NPG{HzNk2?3Q!lR1J^q6#tl;? zn5qN#;UTSc_3ckX-lrN916q8a9`43~Qo^QyQo^QyQo^Qy67lI?fr|$xdrf5+;g2!& ze-`JWyHWd_3KuwRR1hVI$pasA z!UVqw5x59r9xk2x`0|gLRH&#cRAJU{4foy|@#``*b&1Y8Uz{;L^ohR;S2rgFlVBBY zxttI}LR6T)i;Wr&Fz8W;BZk1pv@}Ro0$V0U#R(Mcd#r=v7 z*F}!`f-1-W4hGQU3~=Y8>J>{q$j=Gm+{XE$dNF;WLdC)lehX_p^s!j*!N>JKuzg#P zCakAp^<+G?QZ|#|nGl2`u^>cO>v6C<4(_Nz64&vtBKQU;x7400pSWrCkdAluGA7& z60TChSRA9)5Q}1H$pIT@eA6TT>#fxCDK;suBWA3XQ6nYmlRM*{%9`tCI7ys56>2J$ zAz>d(89MJ(btM&BLX;)ae(JkBx6rrcd=(Y!;o>3SFgTjpkY-S0F2pzWJ-Wc>$ad=K zC4?^__BhS(-m{9gulKAo#^AxZBoYbYdFqo#f+bu;f{QHa#l)xBl3qrl%1D2Sznu7# zThgmZaJA+82I6Co=vW7&9$E*gI&hX8;~aE32cftnvgYa_s^*iCQ*M26B<(QA8OtlU z8PWWmmRBSsmRBSsmRBSsmRBSsmRBSsmRBSsW^EEOWo;5RCEyY^l~5#XDxn|_e!3!e zSP|1mZBj6_msRoU1h-VmGx?%wu7vhqJ&tF8GIedaH+*F%XJKPkef2DVSVtQ9NsHb*nV9F0v*QVnfSIX?B*5=|tfB%8*Ev9G=37olVDPdF9 z67h^R{#hii&;L+~+2ENCerUhjuAP|`@ANTA>E%2u$(8z3Ad_lG((C(I->)flmH!fbZ7ErxZRFo&6ABcTO0 z3tq?l9KF#YH$jb;J$S1`cNOtU31=F&H)oh(`t_?+B~74f0#^(i#E6*O0uIBrC7!{% z8jo(c@t2?eiGGTAc~twmK)Fi_Rao0O z-ikHe)=55R=@c}yR3|$jD_hlms!!p+ZmVcbmjtqy*NLTD(f}-$mpEFfA&tOF)qvYT zZUc*T367R>$sJ&^7R=G=6}by6mcuxD_fPHti{%E6Uc-_5bOPoZI*#TOqy<<^K$y^$ zr_c2d?^rX&>>V}4n6q~bf&SC$AiTAtCRqdWHNc}_m0-HPM77}UC1qS3wz#jvX1c>f zHoU{66ER(2A_0q4lptPP;%0z1mUQb9Zz|D1s0F&cRDx}#ln08qOC@y0AeS}YUgBpk zOQD}JU0ou9-dTP$xqzNeSO|j@|2GVmD<2KU0t%G8ySP3%tMno!vGDGU)7_$;`IcZ3 z0*{ko6Hd*~Ou*zphSPW*-8?wdI^@>X!=qk*7Ry(tXgFO|#?E%&E}=qU_@b2=MY(lW zvUzjgpEpW8K|70$@rMXERgL{CzW2Eyckk@c#nVgH1xYg5>yoET<{>@xl>T*>{{1)5 Ci@o{) literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PWMAudioESP32.h.AB16A3B39C4CD423.idx b/firmware-arduino/.cache/clangd/index/PWMAudioESP32.h.AB16A3B39C4CD423.idx new file mode 100644 index 0000000000000000000000000000000000000000..37ae35edbdc81dca1befe1f9db07539a3cdfa36e GIT binary patch literal 2760 zcmb7GeK1vN7(eGY_qdLGuH)k9x(!N^kJ3(M%STiwskX(?Xi4dk&wO1UOY9OQX)4v0 z(Qag=trlzAK6V;Zs}IFSK9bDF63NO|D@wcXIrYfwA3MX0=gj;3-uHQa@AE#tXRe2v zt7|olVJo(}B}ORYHj@~J$*2oc+I;p^zUNW3VlJ*#Ph{bh z{aNwP<<3os?Hg3#-4z>e_aD37pE{N*uLOmg{JeW^y5WuPdq3x+_b0tVrolSn)Zya?oD|kM@;iP<9*-V7;nyW zi1Q8K`)jsGsLM3B8fj_s?q%J+k7f=Y)CvunG1~t{#F}SPwj#Z>GTJ{kefW0%`C2F1 ze6O{ofset6U0(jv<;;WT{paS`gtouvaoV18{cG;P4eu1Hqioy#ch_pN&cDiYNvZ40 zKiL+uuROIbdG@`UH*4$4M1x;_7eg;`$hh0qbl9X)Rhq+&rAPJo7rC`%v{GmNR#aLR zztrAouD;JYAjCG+_>gf4(e!+rY|we)n<1oG%-qyF>*cmbirU60*W)DFt6-#+fn0L93evI%?LAAFmQfXbn0%q z7r!l&5gdX~;?k42!G{lQ`6cv0IWe@Ime547g_ea(FaY1Lcw@f)wb2H3LWH=RP$s&9;kl~` z-0Q9-o;u_v^P@0zv_V&0S4S}X2Gr*0atV)WVjc7^Cb0yI68Nk8O9cZ7q@t?pfk!(I zvxF4E8MrtD*Z%N`%cgf6IxfYu&;>b)qXh%7e@MOcr+=FjvcxnL!CA{$UoZeK zX}Rp!+-P4dC3F$2lBqbs09@#wS{=5lsD&jA5NxYuD;EsF^#$M4+c`-qOUMzd)Kba? z1Ms-?$E}xVuI*$A9Rw#)Nt|E+j!_21($vQu#A%`Tpr}KNe;Q1?T}d^PG1D_sK&O$6 zC22{+!;p+UWiJ7mSIXv!o@DpQrf}rtQn#_9V@EjrKaoB(K0yl&KOhh2^Gi-94SW*`WMuPLh|zpLhkU`(vyAd%Nlgnhw_;qEMWqufQi-c zu7;h9cV4y$X$YS zCAbNwFh&`^c{i$x2)me+yRK$64ijj=b9QEwQa=!fdzZATb-dNNnuSAyovt4^>_nyi zfJ4)a2K63}lwY`o!(0OD7?6(N+4;1;hZw|xms62t@$8)FVH|!H#l{52>hrHO(V-Z@ Q%+Y?nBm0}u&v6O%FN-mifdBvi literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PWMAudioMBED.h.2ECE86BA5F5798C9.idx b/firmware-arduino/.cache/clangd/index/PWMAudioMBED.h.2ECE86BA5F5798C9.idx new file mode 100644 index 0000000000000000000000000000000000000000..509fa4f04911a8d4cbc603cd95e3c9be7a9788c3 GIT binary patch literal 210 zcmWIYbaOk!z`)>~;#rZKT9U{DWD5ataY<2TE0CTA#1(T?Pi*9Cau8@qjC(OdW3DV$ zD{E)#v0o3SZPTlfCsAFE8-pl=^D@JX5b3Ajmw$jN2tA&4m?)s?WCH?>TQ@aPd z*S06$zv}&!apeZHMuy_b+$5kw7>ZKUiXn7PB8V<7N-pLG(oBqcA2OwNn7XesFaQ9P C=~Fxa literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PWMAudioRP2040.h.14A5149F7DE35E36.idx b/firmware-arduino/.cache/clangd/index/PWMAudioRP2040.h.14A5149F7DE35E36.idx new file mode 100644 index 0000000000000000000000000000000000000000..4fa4258115ee18e7b6fffefb4f7fed83f75b1115 GIT binary patch literal 212 zcmWIYbaOkyz`)>~;#rZKT9U{DWD5ataY<2TJCL3O#1(T?PaNcHG7xAsiYs%IfKFj3N=++<&^d`9y0|F0m>WnlG0wN1Y@Qg~Cd$A7 E0Pay!B>(^b literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PWMAudioRenesas.h.6BC4524054161F64.idx b/firmware-arduino/.cache/clangd/index/PWMAudioRenesas.h.6BC4524054161F64.idx new file mode 100644 index 0000000000000000000000000000000000000000..1b9ad20f3f3604acce3df8c8e229eb87fdeb6a42 GIT binary patch literal 210 zcmWIYbaOk!z`)>~;#rZKT9U{DWD5ataY<2T8<3t0#1(T?PaNbrWFXM;a9@B`M*h97 zst*bs8uPZFou=1$cY^QNuU9K1e(cXw>)gX!V1AB`D`j)K-#m7i8%`Hnl9w#{%Q^YU z^Vvq$r|PDXU85jT} CxK%v> literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PWMAudioSTM32.h.44368D8E69A2D2B0.idx b/firmware-arduino/.cache/clangd/index/PWMAudioSTM32.h.44368D8E69A2D2B0.idx new file mode 100644 index 0000000000000000000000000000000000000000..84d0cd2a7271e209e6e460b43580a3fc1fb9fa5b GIT binary patch literal 210 zcmWIYbaOk!z`)>~;#rZKT9U{DWD5ataY<2T8<3t2#1(T?PaNbrWFXM;a9@DcjXQfp zzdl%~5b<%2S@bTIU5c|`yRH6v27WSm=pogmGG~$YrTH5R z>h{E{J>GQxhh~N_x03(7Nlhj<&#f?>7uR??r>tOhx}mFzmdW`S^>W($lU9DJk9)_w zZ*{FK`|YjSpBW##F*{UTnVST32t!e7S}}yqNd(cwMajk7K$?kBzQ`zdwym=a0|Nk& Crcqk} literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Pipeline.h.241862BD4A00AF4C.idx b/firmware-arduino/.cache/clangd/index/Pipeline.h.241862BD4A00AF4C.idx new file mode 100644 index 0000000000000000000000000000000000000000..5e514e85615954dac81690cb145aac13abdf9b80 GIT binary patch literal 8528 zcmd5>d016d*S~9VxWl>U-h1w05V!~;DuD`WR*G{G<@}aISUDu9uZBZlilRw@Q$hX$ zPL3J&=li3AZAWa~r1X$CruK_*dcHCs>tX%Tq!ptpr`1+`le)(BpWS$llZ z8kcM8*>%%TO^~)6UiO)9W_{PJ^(B7U>FtcxpI1yg@YTSjWjSN_FAtfP{8w!0rEV+t zUaS9VQ}T1AbCw*lc~Vna&h$fg$=FskD4)Vg2COwX|&A2y=L`P?EgYbXRjv)lu zgpN%Zpb3U#B`rGIF(B1T#t4f+DMd>uDw<%3U&WP2-pyAvk+C&FwxMMkK~%vI+tpTE zu7202sf-T#&>=7#0#OqTNyvMn;ENNvO^t{IDMm{%25W*Lz0-paY(H2VWXE8FY(%e( z7^De?EQ}008U1rDypou0Ja(mgnf;1oKV#gqY6r!UL{WZamSZCsmq`K%> z86`SVIaRi**qb+Bzi~-?%Y+^#gW@nc?2ms87K4GJ2PmFZeVccw{V6nF#xPpr5|}Q5 zmnL|PypQUqPg#{2Z^z~Y`5GNxqe~MEx&1aI4QW?Bfs{s&0x%VTqzQ)nedhizdjf+e z%h-}2tH81f6iqP1KP=;`Q#tpNWE4sDJJGxootj|Ck=S7;4~h{p$(RUIftCuCG{KOs zhxv^vOa6GK9Ruh?>(R8HAgW+UhxIT17#m$P%Z_$}%R-y z6?O_;N47$cO0-m>k0u!6@j~9+mx|lu%h;4Yl!jhuWGkv*$jiq!t&7{SB;SrL2(kgi z4P>>dV93^Mr@}tS+qzyxKY}bn(=xPbf+5wdJ->Gzn!QOzfgnC6AMx=IPtP>9&wKH5 zry?1>X}S(fb>OWDhIpqGzVi3DS4-3tI-5F+iu;GB`GQpAwc1`|-KpI*86gD)bftOSJ;G5}RDWLLNUN$6nu>$op^ z&?;W&B|iS)>70{w`Db&3PpdaO$TUb++&?_s_OolXBR)HOM#iV;?POE3j(l_7yxn)mE@*{xG^Nvx zs)8YLDK|^Hw-JAr(MXV6Al(8#O)w-S|Mbzz1wY)gqYpvy(Ued7Pz6Jhg`t5xe(&`_ zjUh!~Dxw&o3Wg+&8JoPt*I=l1Jv!X#Vys{hlqSX|BHMzXG&MJs^idaM7m;sSPp~P3 zqBp1BpgYlL0|S%nMoDSm(;}RAB`NJ4?L+lZe_Q_$c3w#tY8x8D7cMCo=*qw-z5q$7 zMq4$8u%j{!pm3pb0FL#%0}n~r2EsP*V$ISDAXMvPQKJO>B2xlSN$D%}b?DpL1CBiq zpf6Jn&THaz~Ld+++(oNQnC zzlP*ldSu{^^?&%1A(dl9IYu!NVTwh2R*4nwdHcWX4m_;u=%P2mE#V5=)TyHU>Iom- za6gtUvNzuX-wrLKaxk9Y<;YxOf?_(d!-yIIW0<6cErv58BaMZMp+5X|vUYO|FMZV7 z*xIR&CJGZB9B(A$EC^>Cn~loq_=9N+7Nkb3D-EM_ykjUGLz(&3#s9d9y6i29 zd;$!5ReIRSuFbAIM@pIxk@KMkGfQT=CP|qjOtR}r{|3z8fTH_uB{(a=rH{{na1QKj zEs}Bte6Bz+(?m(B0b>owJQg+f%&IHhzUOq+f?ZuGgbef@=+bW^&Nt4b-^QEHH+?z! zO2nCPGn$xAN#vSdrRc}L+Nar>YYV6PbR`zo$Jr-PUvd-TCbV(TnzZ!0R^$HM-jiVM z9PRvct4OdVG<=JFikv`Y_H4~e=>at&&j;dNl6MTW4)oT)9%qg7<^ze3$vwZ4K5O*i zLq#!z=uT?Erxt?P&iHQV>nhjhH<;_wgi7>zf-R1|o&(Mt@Mp>)DQm#F2K?D4M2+|J zi!7-yag+WV{-drAPfeAj$JBx+`4UNG8$s9zGAA`rs{k1I^3C$Sx9_!!Cu4HwTeZeC z7^KJfRv)?Ztv+(+TYcotxBAGPZ}pKo-|~oy4Kkp?!eE&-EGfIdybHW_JKYV=-OyAY zp90|&$ZWTwR-o_+{uABiy_eo@kw9VhpZPqy?YA9H*32GDmsNow71)9+4AuqRiCWL_ zQmk^CP^%c87&~zCz>-sIr;s{#L-1~Bp>M7dnpQ${9+!SJ;{9Wb_q;=!xeSiWx;Mp* z{3`jW*9Iif3h5Y_j&1Y^RE0rR7|FSxD<#^4S|+g_7oY#-zUPSi6gtjwa4ZKuHW)q@ zy`ff3{05gxlBD<<{j9p*1et?u`lze1tCdrOr1UcOYBU;Y9BE}gk(6o1X;$V^l9Fmn zZ8X{s!hW!@9wg;F2vEKt{!8SGuGQF#om14xI9B+6`+%)C(?+I}y2>G_ z976Sl|CvI$-lM~-#U8J~Rh~sse9gWMDO6IT&C!Z}+~MZoihjUx!Z^D=nrfb^=*Qgx z!WOXW`}i4zpBqQhtKhf_{_J?7R#EbH=HLJJ+Td5}GRWOC!6y>}8?z3tRS>|o=Vld6 z$}osoMUT?L*Ps3C-MMt_H9-Fb@fUs_wJE-+E`KhmXdAZQhSAI>+)=iDDMoXY<>*T; zK3W*v=sM?vI3JuGy4-1|<$P$PkF!9`qExC?OOlcWEwiAFK0Xb?X|VDYi&}xqC*}f~ zE}#UTF2PP*FuC^|u??dd?>C|pqj{Y1bX0pSho;XMrK+A(9@W;?41rZW;5yJP#yY zQ;Wd72qaxIx2cMtu~s}uRGv1ggBD!5aua|xrUJwhVZJdj*tp)eZqK#T^2&#XvEzkynO$hX?965n+sIbT4Tjq=BS+;u#Rm zfTY`<+F{^NNXij(9zlQBUh&nAdA9HF=92?$MBIo@rnel6X!mL#f>#LJx_DXGjUT_F zL{$K`0`TR8AyM-5z64F#1tltl@fKM1i>?Ks7Hs;s5`8N%nDtci)7J5S+;eTB)B9L` z0`&972r*vz?L7c|08Zw@5~&c=(8)R_&Wx5^^yA1UQH^L>hkjf%O2qENi?I{mMax-H zX)7MYZKBgS{2ZZtNJ$yw92BS(y3%2VjNYt|A1YD--X`0 z(4Pat>{mx$URXJ^f+p0;otegoeM=u5oHMr4Lm>9!+z38=fdU24;2H?!3lx;QV7&_t zzA)Yi?Lch{@gDBXKb+AiW9R-Spf2bWles3cVEUmaU@Oc(NL^}+jMX*y!p%!7WA+@O zn^8F#-^>+PGvUL*J&rvAo9F0A`SYK}vD(99_ql!O`CjMxb^noImqEM?cD5aNK5lGF z-0UM|xI2BU3idF1>~8My;}bV-ULU%w*J;ww9q_&b&DaDv%+dEITPJ(5ONx(sfBg2x z(|lh0{NdoU^mZY56+!?Tcv|zwlIs0S&piS9?R4#5o!SJx^9$ATlYJ&PiY>`)hcm;$bv%uy+T4;RuR67TVvq_rFbR zYfS(D?L_X!ijp!HEOSB8>A@#p`2-XWE|RhoEK5Pr&%7Eet3lDvybpwZVAHAQ1rRQP zjT4@ve2T)S^iQo?=U-B?(VC6kTxz=%`QV(+vC#MHVnPHyc)GcU^Fvq5kPJnQtv97Lw`3gAMX+^Cw%^z%@ z^UTVpqVE4iXZdGtVdc}7H-LQuc(I3xTH~5mFeHshd}}cMiyL=^f$37i1J+AJSC6fi z8ympX_tnx-m9AwkzXWVMTzCSL--ZXg!Q>s6)?ZjSCk5Diie~qjd+Vad3}Aa{c)*0Y zp`>7~G(6y&TpMfaa%e(L4sfb%c)&&+87?mvTwK2b*vdW`@@Zo4Kf?-u3)qGSZ0F2= t3>;dSnHX4?4MC9&COIiSIh1k-D$9Sgt~_|X`XS0rgOjs~!657Z`(KGNZ0G<0 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PitchShift.cpp.2D0C8BA64261998F.idx b/firmware-arduino/.cache/clangd/index/PitchShift.cpp.2D0C8BA64261998F.idx new file mode 100644 index 0000000000000000000000000000000000000000..b6c78c1e70fef127075671aa74b390115845bb56 GIT binary patch literal 4328 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 Kn%_+s*%$y*cEAMy literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/PitchShift.h.B94B5D31E0EB4A76.idx b/firmware-arduino/.cache/clangd/index/PitchShift.h.B94B5D31E0EB4A76.idx new file mode 100644 index 0000000000000000000000000000000000000000..68d3bf5a7a9a939a2c592e7d983411d3c5fe575b GIT binary patch literal 11540 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 n*_H@;a_p&(R$9qVy*Cjr4GJp8z%UrFvuuE j1VOrT5<%?ZqU2(65CiCUC}3jxc-m_D<^7It85tP>OB`nf literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Queue.h.340D64FDBFA97CA9.idx b/firmware-arduino/.cache/clangd/index/Queue.h.340D64FDBFA97CA9.idx new file mode 100644 index 0000000000000000000000000000000000000000..d8a0a52cc309cb3f2c73a12597b1315e59e0ac81 GIT binary patch literal 1326 zcmWIYbaPW1{)>@hKf07C-`PF849!&e+xge z@VaS4ez(Wlc2|L{mA2D!jAkWno^3KYbjz3h=DkZV)L%F~;rUq}n>|S^=DsR-4i;^# zX?o7c-m+LVw^2gsXvTr>3leG;`S24_9Fv{vzLGhi~@{cFaRTbgM%>dqZ~^W0M0^|4X9zdFI0r>{%O@R#knls#BWVJ9Od=%ltkpJu#Ki22NRUvPrUu4xu!tt=TWbB z8fEUH8-p(LT&cF?d$M%#v4n(9nPt~S{k5Chr%hU?w&_HOt6R~PqK{{9HvX0Ohaq%CpzkmdT#o+3W!BJpN_PMl#VuFOrc0ESxfr;Qh! zy4$$~nE2Tlctv?d1;GRZ2QXxTz~Qx|30LeDWdSBmptLlvv*QL2v@GVqs(8*eYYpi4AFHKbr>!dwJY4T=Yt>c3~z z7a7l%PY0?N5*3n%IqcNAkM$G1TMB`~DxxY#05@7uO$;+#8y`e z@Ss?5PPJC!5bfuUl+VZZ|mjWnhm$-n2bJOm1BOKB^^+zj(2FvLM=4`u^HQEE;i fC}S2EB^Qf>7(5^X448Ot)yb|4xqs^fBM$=rpeD8y literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/QueueFromVector.h.9DAAEF351F69A73E.idx b/firmware-arduino/.cache/clangd/index/QueueFromVector.h.9DAAEF351F69A73E.idx new file mode 100644 index 0000000000000000000000000000000000000000..f163d3416f781f2de4e361b509e6cacf5be0920a GIT binary patch literal 2038 zcmYjS3rv$&6#jduQh)E?Ui!DRSU@_ZAlAQADpe|vVML)=L8R727MOyvm8pd}9Xghc z>Eh-lqE)BjV^cRZ_$08gWfF8GGGcV`F(lO;#O`@D9+tkcjx}yzKumQZjP=x>)z{HH??zg%j#BHWd7PeerVOd*^=>Y z+rR~F-`kZ9yIix?#a)Gh`10Q)E6**GcE=q~k=h3ytSI>@s?9vub0atDh|jloNzK>I z%_mMy8-367IDhB-L#1nnMQpMCjtUcMpM{&(Je~8ayVW)(vfmffez<;C=Dcy;+4fnR zrj&LGopm#gH^@FQyOy_oTX`l+C{9_bsqncyH`gEd%4eNv8L=~=_OV^6o7}MALUGm` z6YWit?)?*cB>I=w&mYCaHSzz=ymtMV??m^H>))C117nLOL?ARO}iiRjSqEe`I3^)bt0sY*V z_4EEQb>YbbDJiWHG#Um#_g@;=_m=#%OoA|_(}i?31E3$D%|G0@Oywacl+y94c##3n zpXIFT-=e&c${~6k(1Wr%eg1hFQa=C7=LRU^klrB_8l7AEnEcqKFx z6Pw010y=<+Q{hyCBBy+^apzBYB4n84h&dyn)M=;t@82nJoI;l+EQwGe7)-`9W5Fwe zycPDzEq7CBwoBnsLB-%Vn(a3mWW%%QvfpH|4E{oxXo*$_SMkhckn~qW+T!ws+uo-) zIpdrYpb9V_J<{(y$cB>Xks&xl4eIdBdXQA$HSVwfvS2Hc6G6~pgKt_8D5BtQcNJSV2e5sO$wQ$gT~NW3@JuX zg=$1nLj#dxq$3(Cqx~M`90M<=X2m&bsDo$I3eSgCT9toPVHqAkm;ECO%U5b0OZ)ab zc}S(nQ{*Y3cCfHt15sxPXb?`q^#KhcN#qNWiJ0_o4JNT9_Jv3qCru1+7Of>B5Lrd5 z0fqt-tH~+_qBNYQ2`DmMoNj=rqMa8V2GECRUn)=)?4V|`i*`N8&9ko-NaDOjo cjWX|oGM)bql^@s#5!)G$TO%qXB1dh9oCoX`| z88ylfmxy{09V9SgG#HhbaR~_`YDPtqOdMRmA&i5l=!iP?p6BM7`~WzId${%Ss&3u; zefQQZgI*s%7$zpyu(ZHjmW>&Pv8TVKWhME)STM|Sy0CQj`H!a;X|!a+p# zi>e&1P4E3~R(*42y-P!y)2Vqk*Yihi7_Ys0`nPBG@6~3lit1XGcllHxr}^)omGeJV zwp35;FY-U$dU96Pk2otT>U`!|Q{_ryMMr&|<14T3i&Y<8S<^TxYTt(Idj5Kt%@w_Fs=yYv5JIjw#3{U$5ZzNYGk>b#iGp3Dhbkfgt}vp7z3(>~j4urgZH zmTXQ_x4oZh)8DY+puyt7(5DvU$3c~I*FU!J&_v_XEe;C<<$H#5x(}(*;p@TtT3_z#p8nIVPvU0oNGMzBe&O%I zSC6ybkB{9LFr+Z9((L$RaNFLyuk}-M4(%W4diT+tJjFicHCOVfZdBd3`$N`8yYsc> z*%8Uj4T;;&hHniIiTKiMOy23$Wt%7N%1F*KKVSO%OxMtg!u;~UHp?OA>sH)xz&Ech z&FJ>>e-StH8$HlKg+p8W9LI+13GsFpH4~y|_No{6@`;IlXV>&k?r&^b(U-riG1v1| zZAM2)-i?8_=b5Vmp1znr@ijB4@UK0k%L;NfBZeusdh5aHWpPM`ur))RtetE{!`N6N z$_NW$l@wcmzSvnljvyNuL-aB|FB(Qpi9>&GHKP2J`zk3cr?63G1R>+D5;1kOi{6WzlS4xnY!aA8wB^rS9@2zb}n!K%yAPt4*%I0#S0r+Tt zLRZbH&LsqK6b_Sx@uC5ES99ynBc2RY5adGPM4LpVXaHVB{uEl3xpFH(P81#|8>bWv zzy*=3lH|(SpAa;X!cnp)g=hdiev5xJRB@?>NA?uXP-ZxZ2H1uLB?iBV$ z-j<>Pcx>xWTLUWmPVvZr!dWECMKl24ZoFcQZCQSwM=A=>v7SRj1MtG+*NFj(LjKJo zR|=;o(=?(1*i_frqId4>CCHh=elkA?(ExnGtsVdO`TsyITk85zv zGlEzOr^r$`(E!YpnDa`b6b$q7WKZ3qO=XM)M{;nE*Bh!yWVK{PlJ+{!?a5rRf^Z@$ zfXN*3w)Ez}d#HKc;d4iiWtg~PR~8tBi4XQ+A(5Dj$KzS387AR4oQ3*hG7V2-pIkT45YY#vY?$Q)f3ItMI6)3D-*J9f8& zYjDKR&uF7{P`nKJ=^uO#R~FC+1o}V(&|Ycr zgx(7ALel6JJ+Y?^>D+>Jq04hnP80_L3*aUh)LlOP(Nm$rEHRd4lZ0 zD}Q$GL2}aII(p$ulxYKOqx2#sN5}>iiw7R)6|v&bfSb`~=#=6DT$!Ofqn-J~ku5YU zsVLPJIxD1*WXzO0OEbtJn0;39Z#0|UILb+LSV8NC&7tW?p@Cg-=rq~Ch z&{jBb?dtuOT6#@`!r%nKfi$SDgaHRT0XJyoguw>OR2$J|BOH)YyQ8Z4)?Zramc^rs zb#T({6_*!y@Jm{0sOms18gI=6$xCxf8!LI~uIYZ@^_O?73te}jbr>}FPVDBI zfVw5^!*G=GXP3}>W82$lVc%BJeT@g+m^}6BFhsD%GvMfj*6M!_!%=yt+4N#B{uiPX zl5=qYx^g4~Whj8l^QT5V{^0x{yC{Ezj6nIz%0{j8sF-$7N%^Bvd%(9?WD|IlO`Jvr z9u~O;9vxsRKM!eu=^S-h=%Tc@`bSOz+0x zNk{1%%uh@N_JRlRJ~>CUSj$U6O&}B0&{a4RY#mG_FVQ*C3%V66z7r+MWy`beL2^{# zfu=CYGkcnK;1zy%Bcxs4)lJiB@-YR#GQ>>f=z%@#rFe8>b(7ypOK7AX(!z>QQHTH% zN&A=Z4u$2ky@8Z@oH-$QPDjSkN2@uW2}?#Jn(DplxZ1sWe>p!%i@7ew6SBgUCZu@)G05 Ur(a?_TVBcVzaq@9q-U7_1F|YKe*gdg literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/RamReader.hpp.E8213933D33610E8.idx b/firmware-arduino/.cache/clangd/index/RamReader.hpp.E8213933D33610E8.idx new file mode 100644 index 0000000000000000000000000000000000000000..f07ce1e813aec8feae429af89260917f8cc61599 GIT binary patch literal 624 zcmWIYbaTsKVqkDi@vO*AElFfyU|vL${?=Q<%ez%*T=>A@QId^Slz_d>jEvC$leqAPWlKH^yNg4^= zw^$a*WN@!vvUVxY=Zk^Q90(_a@? z<|f4heK$eV_0YAbXj3*OHWmhUZgy^AFu}md4D>bwBRgw1*Vn7h&hJVDDPUq3Viyty z6AT?Z3 zr3mYpxxm)yy?wCT+%(UT2Vw_Q6_6({qz!XO(++9rBxM^rph*S{28u9~te*WpS-0tP zI13LuFB>l}%w0g9BCiI5$H&HpB*&-4X9$ynna{`twjAaZm^33N*kiEpDoV{s6a?B0 i<1@gtGZYsk7mI^j1q~q}i;3OOYpZB%MC6)&a=`B zsY4DdkP?p^3Z)bJ(tSFWKRe%bv!gL|O!ewH z<9Fxl2A=;qL2kPeoY+u4zN0wflbPEa$G_P-btqjv5NrNx;cEZR>0fG7W*ZK0?u>!k z#`@_uoZ2;uD+}5ZmliZXGuK_+d~09e^rJWO3Q|5UIkVf`KGwD4=|+#=X-7x%E9;KD z<*3SycB|tLCLL>57JMIgP{W5eBsvTSwjmRqr3OS2bcet zSWyzXzNmP4=gq-j#-5A*m2KsVoT$HR-Kk$21}p1}t1mqJ`pQd1ecI6Ia}D#p^&^Xa zsCoG$@@=W|w9=lYnGashKGGyoW4#!WbalFx0g}_c(-y= zGAyOZ>7+Uh1EgRN(d1T?>@u`%s$Iup8I4a-r)U{K{PxbghZp|b-_K*7(hiwJ!vN^q zh6CN>>t`ofK^N|o@ky{A#lMoxR@z5Val9Wjr$d`~*WvT{>n-as8*Xh%@e4AUB%5ptU8TsiDUo+qevppl(57 zP!v=lQZP}08=6K>3yK2w+x^kep18~>XC7Byt6(R3YWvBlJrZ-roHy5*+^lvLw8z literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Reader.hpp.BDAE6CDCFBB9B8A2.idx b/firmware-arduino/.cache/clangd/index/Reader.hpp.BDAE6CDCFBB9B8A2.idx new file mode 100644 index 0000000000000000000000000000000000000000..9b90193c46fdba33f2b760cbfe8290b775de7287 GIT binary patch literal 1394 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 UK_w^%d!wi#tL$&vxUh=<1pSR~_5c6? literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ResourceManager.hpp.469E3972D826EF99.idx b/firmware-arduino/.cache/clangd/index/ResourceManager.hpp.469E3972D826EF99.idx new file mode 100644 index 0000000000000000000000000000000000000000..c5754ee55eb5c03c097b9bc2867afcab9d2f6506 GIT binary patch literal 3764 zcmYjT2~Fhc83t!q6c8$dA`us`5KvGV@i-$YL@+Q!WN&Fi z#ijAIL63@6YokW21Y=|3LW5|kMnmh8Dr$_eZq-(g4QdUw_dU<=W6t5{-T%A)egFNJ z?|=DIv$DDvippFtb$LZ;&3rLMQA+aXtEn#ABciBDQi@u>_1w%aD+lB0OS^C9(awPx ziyOvtXa3?(6WVZe$FgyfwI?Gcste4ai)R0|>E-P!>yIp0d1LFZGV&Yy8hTdQe9c4k zolTiLUW3geb+V}o4e_$_xV3=hSbf^dYF8Cd)&lH9jP-OTh9Kk zx4wJ$ME6wlF~1d`e!qRu)s7d;!yN;rl8xR)X7QPSx5Q{}?cH-$^0sz+|J>xHy28zA z=I+y>8C5$Uu31s_mz3Oj8)`@G%sKK=pX=l`>DOI{;#wV=LUZ=Ykg)R)!_G{zUw!$( z;VkdCXGd?KAJ_*M2KU`NEgA0%Ik~fcaLbNsOjyUL11}z5J^nJgFy+NoR@GH5y`@FBN!sAbp_w6SQx;xt+iC7dRrf{vaR>=!0faH|?uKsPn+RU(G7Rkhv z#vEsM;f&A>8^Db}Y0n+~S%SX?Nr-h6ic;_bVEK=~P04Bf#$SpgeiT+oRG1f(j6Yk1 z{SPes>P76Xf5|b5CiVuM!O9D;@0wTj-Jt!jnnhvc?V2!6G`GoxG9;p$a&r8^Y1z7u0}NwX#FFDHq!l5&0DIqtFNXH?gu5APls|NRjd#84S!5;EIxiLXW#MtED9ut z%VXrpI8B{q23Rp9Yl_&p?-K@v6YC~vladzz53gDJU^sjEXDl)hYkQbI22YeuR0I5e zLihch^F}yxlPN>(J+K4YSBZtc#c;Eib^DsxDpV zDzyl^Ul^Ha~VjK+ZLgO@Pni3L0V^@eP96FW8=_p+e z6#(QS3gk%z=m1DXB;&~h)IcU=H^(HPhX1lao;(Dfxaa{$V~d|fDXc~wK;x*8C>xwk zV;iz5poGaP+%{TR*;RJy8(P73n>`s;Kvl#$j;G*NiLU;@zt_!Ci)n078A4$fjT2E~ z0CXXZi}l48Xn7iYoSrd|P>37}2FGo1Zraj{f{^bv8bmZ^C?@3pof8A$w?f$g7demRl|9Gcg7+bYs4BOI8WmV;t6k7 zt%vn`Pk357ajsQFwTdjTZE9WZm-2mW;|XB28&km#YQJOCot%aoqMoIlrGt`&sw6IO z3=XUeqIi#E|*8&fMm0uvw;jo+J)L}>za@wM32?Y`WekU*B z$Q?`|$wbYOI;erqNtQVthmc$Ld)#d$v)|>eI?k90R|RqxA)eIX5GW^dHpl3ohD#7N z$K;@fY!fv{-k^?JW|}o%2yF|b@nkfahFvtySLPewQZz0?MKpw%lrJi#;bt^;vu>TR z@*ocl1xHF-?}-#v-XJd)R%N)%1kRH9i^~~UK?9NtbK?Yj1s)+$<0c5G@6R5}Gv*)K zP6{;*rAbCGk;9HU*fJ5NH}(HC8i(o5l{>p@HroE1e@kSS17{ zV4(}LBeUa#*tti!lZ1$P9o}T&*5$_XXt*bhD@~Pl=o%W=Xll$bHUjxE2zP|emJt`l z)?mTKn4p*uF2?9$A_W(-*=)VwRDrl4SV-uspjjFrp_Ssw;1OI{vy{eAObKk45V)WU)>lQ`N{v~|WwQlMI~Rt=+_l%zC63nfY8Oq8jF!L6E* zTAQbKenp(KvQ{kQyN0d7@OFqZ@nYogtE-NS+qLz=0P&)dt<*za;k9Hp_c;L^2Z1GO z?lS_e0*;Vaa$gRh-tr`H8~dp8Kg6$*BZS5UY=H`@3+jp-$$eXZ?SjMcO~0<{dqwy{J8yR$lywJ4RcdWWs7_CXz5ywn@Td|V K^}?f8c>F&`P-e^k literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ResourceManagerImpl.hpp.49340CF06229917D.idx b/firmware-arduino/.cache/clangd/index/ResourceManagerImpl.hpp.49340CF06229917D.idx new file mode 100644 index 0000000000000000000000000000000000000000..e425024eb966df90c8faa6a6fcdb291c3ad76daa GIT binary patch literal 1084 zcmWIYbaOLdVPJ4h@vO*AElC728H9kixTGlaK9CM)W?-n8b9T}}zrzMRZNHu7vhIFr zwo$gtgj4aLXl3X2$kN9r&Nb|{bzQ9WnDx}jf0GaYKly9c)TPGhwIyd2RaTu4I%K?a zp6(?+W4V(~838VjpKT5*yH?Y?KBH%+8M_!4!-q#Hd^Z-(7Yg*;(r#KAzV(3HhF4kK z?A!h^_eSlxc4*OtrVn<3g$nwoe_xxPyXbpgcFy|;;&MBV&i=DNNksepn(Q?@ET$Ss zU+t^f%KgXkp}otkZ?0)atAcj&+%+oUTD;%&ia1CMHG(HU)hJTUJL&M|B1cpd1jai7&i=TXTnq z023EbT1-|U4V%bD6J{0sm1EV?j!<}77SCj&6U>uD8R%Gl-ASI zGh=lYafa(IN=++PV`5`Q!IR%&a=X3HlVqZyc$R*@rX$ynIs~u3^R#`O+ijU7iJz0n^aJe#1uD!goBZ5hiTl%K7D_>tYkWK;jw&S)g&es zHer5Y0hl*g*wnbxxM5y-8TlE$yqvJIaTauldnfk#0G zrWzQs?0Vv`kcH7ey`Urm(_569lL!i+;-chYYY+pJ;h}&P#$bRYJ&*u9T$G9J*@8cx PHF_p(VPRoq=U@N;@Qzn> literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/SerializedValue.hpp.63A8FE19E967F0BB.idx b/firmware-arduino/.cache/clangd/index/SerializedValue.hpp.63A8FE19E967F0BB.idx new file mode 100644 index 0000000000000000000000000000000000000000..43c9df4f85ec862365417bbdfb18a49b9e8f363d GIT binary patch literal 1780 zcmYLI4Nz276u$d_W#8`O?PKBY4~YcJ0y``i8~?OKy9$!YpG{byhJi(~%)n9s2`Y?* zS_&EoAtIZjGNXhh#tb+~;Yg0rh!UofU@{VrHiAu)*mU2eBh2vayz`xN?)mvnR%&wc zj1(bTUTT>=zckksA*3Szj?$8X90@|*s#{=B3NF(RE|e z9DBTRT6vLaG_QNuP_?0CuJBx2XHdmN%=l=1pP{ephURSLtD7q?Jlcq6LPpjm>D&_B zwoCjkMI`N(2Dyd?x%E{?zm&LjHd1d}YU7kC>3hbGE3f+$?cA0fYM-e)k$PoKWPsn% z<<(Po7k<3ABQ}VyJggfCK5-bgUpVqs&YtR#O+kb4gT>3jKk$rS`RCCB=gUrWQ{z;1 zmT_X$XIl;7b$53T7{3^J{q~B^v|q7yW^8?0*M^SEYpQ!5=UpiXRai3btX1_C1&dSbU3s8F#K?EL0Hd6B~#{K&-0-3E~3>V%mcTKhH>4Gb#^+^$NWY1$f|( zcFjA6xbk9w@!=5Guo@2vK*tY9qbS5*@)t@DzY{zCY0SQSa$pB%07B*5p9} z=(gsfzfBdg7A>PCbRZKbrvP-_NW<@a&-~RPFkXZXVM9D90Db>l&|I13P?wq!NNK!+ z_n`o^j^Dq2IOpOS5>03?-b+OR=*gtXwCJI*UY=P(XkS-f83myCHCSsLU!NM~nWxCx zX4cG809yE^AuT5R_ML^XTKp_VECOQPn1#i@y?u#)+wuAPT1G?CD;cGn0>q<|{7nu6 zxj;~eL{61a*j?=MWozFw=t3^1dH^#=I|PzjkOEybLL81#MfrmuI2`L9tA4V59LL6K z7r!j-7WI=Ba3Y(iUHr1TTh&k%hi$A)3ty3ze)+ZX*Sy_0tYI`VkOqhK27M^#h{Gnv zB!k6s*vyz^FiZ|xBdzg}4y4V+1T^vnPLev6duBM#)eAKVAe?7@Epv9JSScPm?4xDCtd)UAqVjml@DeRJ@FP54>g0>iMOb9FoVd+ z#`r)!1cEs%Cr#pDyd3 Llc~;#rZKT9U{DWD5ataY<2TJCObh#1(V)_8sIpWFWx$+xevOw`aZq z3(Xz5?y2~0EAuRIHoJO%dfZ=zeCFaAFVoI#VK>kUZS{|v?h&HoYcXk=8td{mvt`)M z#LSnEKlwu{ypA&`(easPP~e1Vb?IBoC*JFfHpmMO3TwUAplz=gdg!msoi~^MuHMyH zxNSS%Da*exHH@3wBlQ`ID|3^8PGKlYO)G}bIf)>;xG1?;9K>J(5fH%mO>BLA;Fb3| Hj7$swx)V@C literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/SigProc_FIX.h.A5C507F22F35E27B.idx b/firmware-arduino/.cache/clangd/index/SigProc_FIX.h.A5C507F22F35E27B.idx new file mode 100644 index 0000000000000000000000000000000000000000..3215fc3c2caabdfd082193b10fe8b13ab5a452d1 GIT binary patch literal 11334 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 NcW|#R-0Lpx^?y(;UF!e< literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Slice.h.D69E6542AF848154.idx b/firmware-arduino/.cache/clangd/index/Slice.h.D69E6542AF848154.idx new file mode 100644 index 0000000000000000000000000000000000000000..f5c19e6ba713f06d67437e75807795e69506364f GIT binary patch literal 1384 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/SocketIOclient.h.E58C7CB720B38354.idx b/firmware-arduino/.cache/clangd/index/SocketIOclient.h.E58C7CB720B38354.idx new file mode 100644 index 0000000000000000000000000000000000000000..0f4e073d08e17c02d010e77627a8c746b7c1ebd6 GIT binary patch literal 4708 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%0DeVx1!D9Ze2a}cf!7JH`OI-^5}`)`W3ya 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

Ejt$6~il0 znj}oJQMG)|GoP!9)`D>e%#_TaC8O180r_ zmmQKIgd)wIzGSWN{^%tL=cH%E_Zg{yOc0YYsBZ?XfnUj_a=v9b-wIRZ$m)aX$y`2u zCB_2K@a6p+8GNwGQs!RDs-mwoUzF@0G7mi8^$M+zI}xoNGD0<2aDqhr=(P_lxJ7Vv2OtP9J^quWxUU`7%-Jz&hBdTDU&k9@9;t z)Z3$XHI=3qN{3ow*2-K9YO{hksaCp{*sLW^I2aK&sYf=chPxKxP@>Nz_Lzi%d>nI( zWnLKAh~T0fOPCk>Y%}9(vypc~uQXy~QuDsE%D2I(-oenp76*)l5MYsCW{@xlffbgE z9?&z7NL=AJv(4iSFjbi-Lk9^*w}og@bvcELI#x@-yqD9eUvgeRWIV4ck_Ymtn#8oweJmQ>3s-aPf(pAE)5<5&mi@-KIUnkX6y^sbM(lDH3 z5j=Z?8?+V9J#1U9UOd+V4-IpgI5>?9!~G3r#x*G6TA?+FQXI36W3H+hCNY*&F^PMV z1>a<0=&#IX8dSnUR5QKL*nMV){!IigUpt0xrn-r>JX>4wuubC~(|8~C@ZH3-O%)H{ z&Aj7g-UrQIlz!vcZ@eAe9Kj9pY)3^si?_|FSSna22(IV}!N>*c zM5v)w3T5DM5v22-_%~^G@e#U<72&zT+UA)#YLtRhNrpR9#Lysk)qaLj5myZ?>Sv zS7-lS*ZU|2e zrMk{_Ju$);rC^_6KTP6_QZuV&M)gi$F4M$4jgbOGlX6`q9;E+FDr1fjHosh*i7^fq zOTagzFy|EJgPA|5Rb%W3GhwU@yqKkQ6aNtJ0pO*Y+c&R3otVovaeT289luHb*y9G= zeEqEaOh^~ZsuGlStZ>=Qe=YOBWSR5B-Y<@h-1P^{`%aGS+o7ze}S4kMVzk!R+9ic5oipH58a}wtF~dECm%IprGeD9Y!En ze+z$DLRks5R`Y0&so^noRIf~OaW01Kc-;UamuqqH;QA*6i*Ydk<%-<@v>UKO7e4kF zu{&0gAC${=@eQob!0`v}7^#jYt@-?Bg+x^KBBCoICRIO9 zgyY13I&3jZB{07IilJR$YWb=Mu!^yySuAOb3<=f-!)}%q6UTuqGTgWu+)S89mWi|v=Bj|k-^_3x3^_=k`zBD#mf6)hMlHi_;Tam6>8 zb-!n%iK>?oV;S*Q_2+~=CyuKAg6LjU{QDOq-~|a)+g}ph%ZlxWX9Ri@1VLJ75{z*4cI|L z)%Gl^%c|I(O@(agjP1A$!N#*WmaVz~y;7Hrfj-t{gG>0bd;qJlVZ*-XbniJ^mFqdo z*kNX)9u0DhHXaRl_kevU7ig<%{AIQpuM_~3i?mhXmv;^{J1{4?P#f(GDzrxrdJGW{ z)_!U5v(RodNW literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Stack.h.B13C06A5A43C5AB8.idx b/firmware-arduino/.cache/clangd/index/Stack.h.B13C06A5A43C5AB8.idx new file mode 100644 index 0000000000000000000000000000000000000000..b48a4574c93f7d26cb29fd018289bb88c57ab7d4 GIT binary patch literal 1310 zcmWIYbaNA9Wngel@vO*AElFfyU|oA~rqSbo#BGr}#lnjweRmtB)p4->VW)$+w|Q?(@@z+-Nqx zN0uM&rB_7i_CHQ4I?}>^;{d~%FVB)q3K>HaKU*4Kp8x*L7sGw`GacV#P5Z7RRAThg z`>)?bJpnc6_8I5XjyI}ZyJfy~iI{XqyztRk+rCZQa#HAR@By9At#=Ep<`@LFu6(yc z)VfEDH)(&`u3o*i z;Kl#kJ^M~g(x2gRWroJZBYt}WPkk0RGS%axM*N8yMyrye8yJc!bCWE9VbiO9? z6<&5G7B&WMUN&BCFu}md%mkEWH+w5@6y4N~`m#3xNrk^t_kRd(D0c%ZV|u0;Tym_<6wuOgj7dTB(HwHjx5MfuGoiU1QIP+F8%Q~*rCq*ETB2=kvJwM~GDA1E!z zD<}viVA4gYX~l`a^acw*CN6Ney_QUP5nEj?zytOsO!AuyOZ0kAML|X$ZUs>VNtmx; zLCe9zEhH=?0<)2aTTEC?1m-**ZfS9830Oz~4G>lkff>NVts<-<0`n&iw}!BW2rNQ) zxOI4Rcws@r1&%bBdrWMPaNVek5&^nLollmQdg(J&2OaBcrIpdr$d(lRg?ynWy|jiWt$7MkZ^ zeg_%?NTnR_#j#1=GJxITEjbYSF>FANPJ)8gCcewfmz)pOjm+tZGXB+MhSWIEBqa zh2++YKXfsQU+3+-*jTrE6GK6m5bK*jYj+XZs~eQx26t@uKEtW9VOr{p0FA>>HJ?mm zu2?7Q%6cgx$5_|M{rkM&$+-`h`9fx`uQ`+$m*89}{`kIzmXO=|{>Za)#B{l`L-S8$ zEDJaA|NUcv5kqlhZqgp0%Xe7iYg@kVP!eF`U}9hs3gao@jO^W<~}!E;cR+Fu}kH zHk*-+HCkszn%!@$Qa&aYpniD{d2TQP(;sz9?oiym+Aiih+uStI5$GQzMX=yZ%ja|(HRqtJ zk6~-uv$_*R_UwDJ?~=RO?$gz?JN{KIKH6+BJzpYinU(j0Xa;x5DPM%E<1Ch(>H2Nr zEAlr`Y5y`2p1=Q27ASqcvw!>TW!Y!?XZR{!Y`tlG$G3btmpAvuMLxk_um4M1!zOi7 zZ=Pkf+%-jM?^6{VA(!4YY<}^@@s#Px`KoFrkwQ&8^ENl?=I^>?w)J`Hlt-_`c4xo4 z7}T=z_wj7Y)d3UqwKjd?p8UV^g82RacDtp{sy=@ueePt83PW*aZW7Q-3`MDF#d<*6 zCO(1`cJA6bLl!kd{tTwy^^W%P`0&LIgp&auPx8;-chYaUjjav{B-3 Qa?DPhTt-F)U?{-=0D(;bK-c6r=zS~l5*0lb(K%j!}XSc;OSDq94A$B0JO7-uNdE$JUn;+Tv z3cJ=%Iiat~+I-ty($Br&TEi+qB=UjLW1hE3|E z-aO0dch?oAy-!tegj{;pu=&Lo$5W;&=c}rjL<%*1nYX!7H-FbHv#rllrx;z)ExUea z@luY<59O`H7AnMtq%1X``f2m~uJZl+*SQs+-1&=5en<4y;>z44pobWWQqzj{fV541 zZm`7t=`xHwOdJdx${;BaXxbqyouq7I2NafPkXM8Vf^_91g4o4H$;ILz1~6QpfQe~i OD^uEEDWN1_U;zNx?|aDr literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StdStringWriter.hpp.03F69209AD96D00D.idx b/firmware-arduino/.cache/clangd/index/StdStringWriter.hpp.03F69209AD96D00D.idx new file mode 100644 index 0000000000000000000000000000000000000000..997aeb15578aef5cb6c24e9d95ca6a2dfeef1ed9 GIT binary patch literal 418 zcmWIYbaR`<$iU#7;#rZKT9U}Zz`!5`#Kk2=nb&|c6B7eN#hjxP4rVbq^0YkmW8%k+Ldy=`-RGrc&*>Hs6^#_ynA=8?H2zBiWC0ZKl$x3<9@Aw^5ly-U#j9- ze!jPo`{}vju&wT)pv#TBKjkd#Hk_#ZT;lLFV^@X>;~?goi)Ec2Lb(qb*L+p_FyrFs zPn_G<{Pqu7^`VMW?GUR`zECIQ%roz_XNPw7=~f5(KI9klnO*;LX}QtCHZ|*svm@7d z*?oPJWAG>QZP%N!;Kj417=9MF`u;NZCVSo6m1R%gJ&yV#v1#quV0&kIz4)MA(~B!} zlN5ozD|-F$%U}*Wz%nWQi>^vf1f`O9>7$gjgY^)4LscFToNGch*z$*0KKG7&PsWmQGT(u>%TgGH8Nqf`FpboJ0_-xG1?8te6!l Z0SsuiJI?aY+m>9M$;86S0Ez}E005yRlRp3e literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Str.h.F42913555C927C7D.idx b/firmware-arduino/.cache/clangd/index/Str.h.F42913555C927C7D.idx new file mode 100644 index 0000000000000000000000000000000000000000..7092d93233e78b13d3910a0b04002698c27d1758 GIT binary patch literal 5358 zcmcgvdstM}7C-B7X3or>4QGZKkf$LG_=tcswFHf;fC>sk_y7|@(8LEKpkN~=N*A?E ze4rrtx~5nnSZ1K2`7Et`U_L1GRViG>%q+_?z5C3}@=Vw7e)m85hPA)7*V<>Vy&k{4 zcGBROm}@4E8;~`)Xv(;P41wb~SN5M@ke4m;9Cyx%U;N{6RW;iUGmM<`qnG-K;~VI zxx6tlZewDfx@vWr|8%cVza^iA?EA;npiOgt9PDzve@#N;XfkG!;bqr#r@6Z#?b-Ko zRL6}IvpuhL)ctz>>BKh%83TuGd_QgGu+-S$oU7IUX z*VkkQe<7^;ruD7zpXNqn4JR*whw(wjlQ+^M+uT;pxbacxr4J{~3+#3)I%`IU0~Z4e zYiAi>JHF$dZgZ{o$>{egX8K%gE6fRg>CT#h%AeXRZVz)Scz$=E`%T+s&-|m;6tA#d zY5Bf$re*p)7*-knb)UEHmvuNS9zAtVXJF6_Dy4(F1@~5U=xO6u4&jDd? zPVe0L*|rNpM2ltl%UAaIE2#VF*oG-xf7|{=W8MpIEpMq4$DVKQ)V4ZhdB&Y-fz=fu zKSv#|@7JQ5u!BoEdhufN>z_0h?mBaLk1%z0dBf*TZ$I>IPB@VA-u0~>OT*)ne)+R+ z@tGby`X)>$+E*KKZ3PajJ^}F)(Afu6`Pbd)2lJlW(?`!6nMxao zZ6MhPR0(UN+iq9KCFyyIsq6%CC;N(RKowK1>$0Cc)FW)CNfZ+$A`=w*Yikbw(&bEw zO*}*#A`zLOxHPTx&AKB4v)p-}Z4kpQh(Ku+_~VHiOANpvspc6LNAgqh{-Q4O4j+#CL(( z2UH2{vC+k^V)E;H-kqrwiiLVBL9wCBd~QL)?s|J zzPpOZ1jYF)wv4LZy>^XF?8p15h)hsi{O#8L!#|^&Y+?_V5kw{^_Gk;<_MKE;YjbX- z7%35%pm_boxZ~FfElqmfm6A zt0;+mCN>N~hLRzjhjha#q$EBdJ_rL(Nn%i9S1e#eEoQU~S!gtV2zV<>;dD()c1YX3 z75XP&*q-`lRILlzT!sI3GbLYv`YUk3I;Z3esLwd^=Rkc<;h*b!h_uX1HK{2{;*&H8 zE|er2lRfeHlvuPD35%YRxuBg34*X&e76ZZJprjmxa)n3mW=^yrH~I@9+lknL8U>Wx z0M{Gfjc80sJGizh{Gg`pg*%>F?ePR0{a}7z?pSBR=Lu}}s8T5L6?`>HDVWt}f}qF( zV@~d(1SUmD(O}6^k}jlcl%km=OwwS{P*Mg$8E7zw#D4Li%fCPFy)As-_K?Tw7GuCu zQUN{{V8$>L`@M)?h(2`h`VR$-5eyKr)LG7G#=~vpVN$;-gPwo`H^lF~cQty$V3y17 zMt3hXj1n)i*VBqS{XG5r6n6%zgPj!!3HA*3Q@BvKP#**oy!IJTbvJhJfOi-r5xNKo z5uMl@0o?knI1fzJoPw?!4lgwFpV335?lFdu~Z%ArC! zub8qg_OBTplmwDMNl^=uf=mk6Tj;IDtB#TkmkcAO97{k`mZ!pvqvH$;H`!&fQK^a? zmmCK!kLDQ^*(}p6PqbY=v}qnV@bf`8AM}cRDUhWgVRcZl3{15%@XWdpzcU-20A^!1&n%F;c(ec;HwJ`q_m0yTD5fp9 z?l|2X+kRtllq2S@ zk3A;99+4R(KMHX7sh8V-SRJ+ZBy+m0>z4?t#Xh6DZt@ay@Xz(lKH75)mh2)v2?7YWOpvjmC$Ldi}SX0#N*3docCOC z;1>Y%kh3CR0@4!JcG;gil&lB#a{#Q3AZ!Ftsg+uAtpzuw7V1E#1JRM!*MSlFIsPHr zKRr@;@i8Bu0z)F(vkARM$u1Cffd-KXFI^T6`T2xuEoG@O%p&GP`Jss0BLFj3Ii4G{j7`fAL)2z(!pRv`EbBWbn**}EObTmu(h&vjC&BHSwvsq@qK!0b8VQrO8o4FIpA=qGV{G&w+vF zeMDEc)fgLfy8+*2Z^dmt7o16N0rpc|eqLsN2e~eFGO_;gr2c5{vhTm`#DR|c E4|OI?y8r+H literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StrView.h.9FFB37F2836B9F87.idx b/firmware-arduino/.cache/clangd/index/StrView.h.9FFB37F2836B9F87.idx new file mode 100644 index 0000000000000000000000000000000000000000..c5c5ca23dfdbbbdddbd11581a693213c2c1efea0 GIT binary patch literal 11038 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 YT<>{}86L0AfS;^CUi^p6=8^yWe;{vjKL7v# literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StreamCopy.h.F4E6DE836CE98E6B.idx b/firmware-arduino/.cache/clangd/index/StreamCopy.h.F4E6DE836CE98E6B.idx new file mode 100644 index 0000000000000000000000000000000000000000..8545ef084f3d05f7a66554e2e9b5d5d0037c0383 GIT binary patch literal 10684 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StringAdapter.hpp.AD48E1B418D15806.idx b/firmware-arduino/.cache/clangd/index/StringAdapter.hpp.AD48E1B418D15806.idx new file mode 100644 index 0000000000000000000000000000000000000000..bc0ce92077cbe7f3e651ab74dc3b7f56320d7125 GIT binary patch literal 886 zcmWIYbaTsNW?*nm@vO*AElFfyU|9;ZPPpsGWGK-3TcbFU zLt+}+j%*&zKs|$FGZus&o3UwbskGPak}fvR_j%J#o&Uvj?`w^5ahhM`_bhXf^V_%b z6ukXzd+l27j$6GfFY{~q6a1gL^4zL(SnkYgRTgjayI@Y{gPnVi=Sem1_?q!l>f!b+ z^Zz{M)ttMOBlYo(w_oDq?+aO%Z*kf7@^I&wH8E0iHe?1!=iaro)NVPXu~o3?tR}zB ziw;MrZ63#0^(^!H#S$6q8L>Qah1s^ATag`Gdju{@FvY62wx3C3|)$ipC_DyFIkCKxzb7#T!`7)4m)H7qWl zNt+tL#>C6RDZYZ$ez4Ag-V!0wNeV*_a_Nh>L$6wm_@q z9Ylean3kdlh+yDkWr8S(y_qwekMr|;HYR?U8-&<}L=bLZC`wH${sMH5iR}@t8IgC*`ymjMcMFmNbC{K3G`v_o1tN!i8@D6Gezrw9{<1sNk3IH>gA zKG2MkOY7A#C$;NXA>^FRU@Y85PKfJTCX1f~e)Y@jeG uAYj6;B9P~%cT%TVFm!VR2N79 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StringAdapters.hpp.4C7F191831B3D5D9.idx b/firmware-arduino/.cache/clangd/index/StringAdapters.hpp.4C7F191831B3D5D9.idx new file mode 100644 index 0000000000000000000000000000000000000000..45d8c0f4877a64fd72edf6d80d391f8335d611a3 GIT binary patch literal 924 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StringNode.hpp.9C193BC98BC4AF4B.idx b/firmware-arduino/.cache/clangd/index/StringNode.hpp.9C193BC98BC4AF4B.idx new file mode 100644 index 0000000000000000000000000000000000000000..f5347a6059d5c51fe8e1f2f6e1d432bdb5302eca GIT binary patch literal 1734 zcmYjQ3s4hR6kV2Y!tUnB5|V5Zk_g7~X#yck3L*g;J`NzL1+>gm3Ra-Okzfr~P+LVP zv<^_ijGv+{>R86w76-7@+VMk+NXwK`0h!{obSzX*aU88w?aOv9+sx$byZ5~J?zwx< z=A_wd-}qoya#5PoUR=4+3&Sum`a3EsN_Kf**a?(y9vS@5TDHMReD^ea=V-8Hs=ocs ze0ly&YxlXZ0e&xe^_PL@`<*IRvsw9cZd-GC{_#fvjS-6Jvu$=w^y7PPyt>NSK3O_E zJVZPjPmUg}QHpobncHU5j90#@S*ZNX(*6gz;|0}<)Ek!i5!ao}K`QCXhBM7XL~LNo z!3(_?1mojH1r4&JIj(EWzQ&HTjRSkr`#$;j{@P2C$18q>S0QBJpW6to+A4F1k0HUR|RK^0(ovz@|Gaq&r zig7-o6RAX+1)$e9?p0#u%AFK0MzoBQ1+V~g=v(T%Ax2i~gZm)uLSLbX1&qfkL)!ap zG`}KfSobr9^U!&@uiT#nIR8DJ;CRp5G9kvLh*rr}OIZMVbgEP{w*HGJG%i6jBWH9h z0A18$s6Mdu(sMEHhiEOWRj>dwR#Cjkk>`otP<~e+p?BdP1Zk$tYItGZ>EG5ZJ95$! zrD-J{$4W*3^YGxabBLV1)f*dAZZ$2x!XK?#AK*)njD(SaG=fw~R5IuTMS4{v7ik%- z7E}_XA<|%i;sj~q+k{XHMJn48h~l@{*91+rGDsMOQ92M-Etn7L?g&?*v_vDZKpO0U z^t!zPBY{FF?e+wu!44?x_5!3`Ut1b@jWV+*L2ARaCQh@FF^0fZ1evH$G=gK^=}{;O zb@2&EPCAyZ0XaaU0&X`!fzmk9j&t3$C1|%=qE^6e@E6+cHW%!Mr$3+d6U=}hr97zw zT0l23>d^naY@Sxa3D;}%VO(V386;dA2F4J|MbTc-6c@#4V#2s6F)%S0IwHsvUWx>U zX(ITl7{qvenddX0~ejAx@C-qId;&)+(^dpbc=YC!hV8xZ*mIP7XH_ zq)BXAya2LjO75==j#L!CxzXLXqvCbP8uvovhW~y7SYViNafy>Qdu6@-#7d_RK?#H+ Pe~eh0s!S9-)+Wf6K%-7vFnA}mgn&CF>PgkG&ErtVEJ$MToUMo*@$x84xs}Q=; z`(oui=i^p;12h*LV?WR7^^ir`eBzM?pH-zBv|OtA-sDC&&VA1}EzKbJ|F4@z44pc5I2Qqzj{ zfV541Zm`7t=`xHwOk50H${;BaXxbqyouq7I2Nc$4&{u>Af^_91g4o4H$;J9Wnu%#{ dPiq^;9K{}HMrIZUP(VNdFnC~q8OC5>001j%Ve0?@ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/StringPool.hpp.10682948B001F1EE.idx b/firmware-arduino/.cache/clangd/index/StringPool.hpp.10682948B001F1EE.idx new file mode 100644 index 0000000000000000000000000000000000000000..d873bc714b9e9fe90b2f5c6495cd26df48365c1b GIT binary patch literal 2070 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 Nzzy>V0|O6&2>`~4F=+q* literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/SynchronizedBuffers.h.D5996086EDDACF8C.idx b/firmware-arduino/.cache/clangd/index/SynchronizedBuffers.h.D5996086EDDACF8C.idx new file mode 100644 index 0000000000000000000000000000000000000000..6f5c1ad01198100753a8b49a0d4d663d4a163f97 GIT binary patch literal 7598 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/URLStream.h.58A07D706BADDAF9.idx b/firmware-arduino/.cache/clangd/index/URLStream.h.58A07D706BADDAF9.idx new file mode 100644 index 0000000000000000000000000000000000000000..260efaa2d7af7730056ecdca189b6dafacc70309 GIT binary patch literal 12606 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/URLStreamBuffered.h.6DDBDE90AA7817C3.idx b/firmware-arduino/.cache/clangd/index/URLStreamBuffered.h.6DDBDE90AA7817C3.idx new file mode 100644 index 0000000000000000000000000000000000000000..031586e5acdab677b7432ebfaa37f1a061431bc1 GIT binary patch literal 6546 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Url.h.D9F0EACE981A9E1B.idx b/firmware-arduino/.cache/clangd/index/Url.h.D9F0EACE981A9E1B.idx new file mode 100644 index 0000000000000000000000000000000000000000..fc8d8301dc31c2430a7f4c6c8789fae8c1ebded9 GIT binary patch literal 2844 zcmcgteNa?Y6n|XayDZDw$Fi_11Oy8!;4Y|qy5JHPMDF^Hv?`8P_~!jK?|2~Hv-HW>+m>nAc}eq@OV-S_kWfAwFynf=Y4^SkHW`_4VT zbJFywsa|drmApc~J~wNvg{CMmNOQ!z89 ztmHJ8%hzo$nDJT7qC2xY7fT#1>o)cL=Gb39)6du$Tz+|I@RNXnixEB9XT2XEEnb}b zIJ~Sk{+hStY*PTE>z`$quPqC66qQyvy)|)$JUT?zn_hJAjCwPZ@~ck!dDfQYragnY zDQC4yO||{8%j5EomkznD2>E9F#dgC^P1S8GVAh4YW<_no%2U}sLyZ#8JB=N=C4W@3 zRwv9`Pt=+c6{IDjsZ2JQ@hf+QGqiK)vhqq7Mxb!4S`OLUab^1?_C6|{L&Th)6 zKip;9om5bE;rE_i< zha`lK#E}vKfG+LT8-6(_?|GgUZ{*Ej9)K?FEAcYC7Ia;Tq$E0+3swjKboeD*Q^=8z zZ*oXM=vW-f3NS*yd(vJMFlRuDya=u0RB{1;&dbWS$y_Mvp6~F55JxI4qOl+CCxV-z zv4+-&Aa^v5r{hJCDjJ(;(-_N4o5xrd+A_wn($+CnCY?EAojel3+^V=O8~2SLy`mr3 z_eHe={~uokGISCP@&n<3{E%3X9k^L+mYaPbuOLFQh*#j~qD*<_$RhAMivZrvF6|DQ^7dB`&)U}Lz z`500v_f9_W{`qm=cy&+z^)FKz+R4T6JrNSY3Oy05o4$ecru3wX<9<4rIixQ6fddr* zvxd0&K?Cm6pvm^1TXuAh`!Qj-k@N6F4bB5Yjnp$g(ZJ1Oi;qPK^$eqp#PV|u7CkGv zdZumOfrku>BT*y+U(Dht6vaSVSR9R_84x~;V^9nOU71Ws6wAQd!(U8DvI{>RVVAtD kRTln|ZF!ltVEzxo!}Es>%oh*BTM}~0I&Y~<5#vJr3xVZl_y7O^ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Utf16.hpp.F905E07DD2B4F99E.idx b/firmware-arduino/.cache/clangd/index/Utf16.hpp.F905E07DD2B4F99E.idx new file mode 100644 index 0000000000000000000000000000000000000000..b4c3d8ca25dfce9937936c5640b3b5dcedcf5cde GIT binary patch literal 1170 zcmWIYbaU%sVPJ4h@vO*AElC728H9kixTGjki;;mLgo%NnV$RV3UvFkZfwTS}7hI4l zYtP--ekV)&N8r~0?t7E$s&{%p012wY3}R%n!f!Kf0$nCx~53 zDkvl^e(i37J95gotq)fxD?OZQU2{+_*ZmQ1=+29;iz{=JWPu^3&=m1hXG%7+7!w;S z1Fs^JA~%>|-~fgy5Qy)Xy(l>2aR46^H&EJ=+fo!vz@#s8+j=fw^^N6W5MW{873UF` z1``aNOpFYiT#US|lNO~We#qFIAi%@{)UV90%nK%9`sJsswOJK?x|ffMA1H0XZ6OIJ zVA7Mn8a4eB_CC(TAP6*Gnnzj+OdyPx+$q_6IH%&G0Fw|tjUr6g>6cl}lgYOoS$KHG zWyDqBVaF>iEv*dqDz7r1vKTDbcz7+CEVy8y1d9w-9$rOdMO|3b@$hP~X$c^-=(Fha zA$TU-CZe!l;sQq=%=It_FmZt+4HgzWyeb?j;xGeXG|=au*n{bXISJ?&MFB-Qgi}=6 zR7GHVczCttwRK@UE^ySs41oC;XgMfe5teImXu`b@b2rd(P~5`w!f2pgP@E$4f|4&x zl55R}vo^E-J!1yCf=gQn<_aEOV%6oIzHE5ZMq2Uw6|0?nvUZjxQPv{Paj!qV_FEPD z{q^)syFzb#`L_PQ;3}nlDTcD1&VyIl`uPm4?i`jb(p5aP+g#|Hd_bVp-&rj?e{wgu zE@7DWZLTyEN^X?TzlZ~i)h_GL%X#{r(2eCB^PE~WGi~b_Qq)L z(&Eb8BnO}mx6ce-u&w)*FcT9iGmr}e99&#nd<>irj*!@?Wy#;Y=kPGFvoLV*@bE~3 z2?kCkMg}f6Mh@1Z)U@KcK(#jcxxo_mr^_(%aBwhiC_{8JFf{FumQGT(u>%V0GUzJ8 zgq?nw)jXMe+mVHbLxM$u2W|_8gtUY*f+s5?D}&%Ei7Cm!crcog3+x`4FSyoxIBPTO t-!q_fJTg2gFjWjisX2)tyNipGi^YL76UTvj+u{UTE(tMm!n_KS2LSnVvZ??8 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Utilities.hpp.5D7201226B0634BF.idx b/firmware-arduino/.cache/clangd/index/Utilities.hpp.5D7201226B0634BF.idx new file mode 100644 index 0000000000000000000000000000000000000000..f58c8df7b252dd776f6ed3b552ee69d2089eade6 GIT binary patch literal 2706 zcmcgtX;4#F7`+K#c;V#{10eyUEP)FIK}g&Zq#!6J0)_wz1~&w)3}KO|fPx#M7K=7m zp;{bV>RuO6P;gfiD2fgWVy#Qn>Zld#0@j7G?2 z6&_y91|Td&m76|mUXmpMfJc7y^RiQ&nE(vH0LZPl5LcCP%b(j`aqyU{weGxwA=him zWu@Y$uyV!J;%!@Y9KN81*r4ZboL4VAQg7}Y+&FxbrQ^`(w}0O`zR1&KbIY!0f7*D< zr7MH)NK_6@53dv)%dc;~c(qQ_v|veo@4MfkCL}E)oQU(^HcbCGYip?E-4CrL_u6VR z7aC+s^O~b>8Ad$u|9xVK&D)DP%1O$MqEb##Jsux8d&t6Ful``}2x27;SYgq0hj5Ha z3MyMKZSs&i02!38(+OqB3rnPNl zOAAlf^cKfQTvIhy(Q%;tvKOWM}7X`>vI^9SC|jE~%~ zv8vtkV$BSj(el^hmn}^f7A6-r@+y`}OD6U#tm(Psou2b)|INhMUwe*}w=9~|o8xA; zW3T&_uG=zIZJ;4?Y|+{kL0qSq`K@~fbLTI!dvxk{U7|xz-Tg@=T{q)?xZs?T741_U zXLCUk;2muj)^`3!28U&J;L*89g=r22PcQX~oE~p!t-Tfzu|K%8rI5ejkl!-f?&{|9 zVdr|*b}Z?5=&W*w#Xz5zJ~NF0!0<8Mj03hGJ#pYJ05FY66Bq-)`0PPmZVYJEnsD}A zKdIi^1R!vN52*k!9&3QBm;?xtn_|D4WAHZt1h{|?sQ@spm9r5rc=@i*4XF_-6F^I7 z1&|5=v$Yf&Q%s#3!3ntceU=H}gZuCy6#(X7<7nJL7B0>9`^7QG1W*!60i*)JaK=F6 z4p}0%OCt-c_n81{LM?z)02qg90_5gts>*Fo95Mkyh!6p!0>B6hC*uxE9~B(FY2tko zK#t4#kO}~^vlbaS9Je)Ogul#tX#z-bDIZb+VEy~K7y-R|mwlQc`R0=e;DWpGAr$~- zkC}7;*|TQrxAp^|^ZZlwgUl2L!xF|4v9^f3ovth4NUMR#z~N|oG=V5T>5#}vMl8md zIGjpM<(bul)9`6rG;`6luNEZ?C&;yl%tRbL9valZ?#$EL+v3pP!Cqu;6?AcTk(dcX zHPXTw`_?jMU&>d!z^DXjEq6K} zt#SK$;$r^JvMHo5WzI6MK8m?3e34@HS3ltO;=j^Kt80d7Mj$%KUj5j{lTPRT653x5 z>bbl;G+1wmL#0p&>2|4wYKRz+@~|{~dZrWW0+4Ia3QM-}nxWZ!ZuhzN>zZ!pZ{?7R z^*zZS-{0G}y}#WmQZd4v7=p}+L$R-TB=TRB;r7X@=JBh^wV5E(g?yzOKfKKLBU_y% zm86g{tQZUtN23MXc;V4h|J|CY#IupzjSCNwETryIf4XmSfB7iXH+05H38;IL-uH7Q zIDBpWfrN_FN69iY-Wor|b2oSX*b`4X?~;!(fVrXSjz28j7`#669?2<07~+Mpled9T z>xB%5xLL7{S2NA&za3G}hRxO0D#-)NzarTnS_g%zLX2{ur=(G-+n&z(C5#%77+HGI zW5{btBZ0;lY4ic^X;?C);XT=EF-wdgW1x}6HojMADqsHgBHvWHB&s+1>}0)|9GNiX VdRrJko6eUrVlsTCb8H)-{l<61E$Xp>& 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VQ_WMat_EC.c.E00DDE68681D6599.idx b/firmware-arduino/.cache/clangd/index/VQ_WMat_EC.c.E00DDE68681D6599.idx new file mode 100644 index 0000000000000000000000000000000000000000..39cc7792b7ea3a638df96735fb875e340a6c01a8 GIT binary patch literal 4756 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 f3wPhHXJuvM30d literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VariantCompare.hpp.5794A6FC6AEEA210.idx b/firmware-arduino/.cache/clangd/index/VariantCompare.hpp.5794A6FC6AEEA210.idx new file mode 100644 index 0000000000000000000000000000000000000000..37d9c2b2933153aee443ed2917cec151aaba51fb GIT binary patch literal 4198 zcmY*b2~-qk67Fio0cLvW241wLR>&0 zE(k~j3_?)W3ylg08rL<7F)RV)J&!dWA#puOqEYkoY1o=+igtOA|DXP={yM%o{t8=Q zGDQmv^T)UaS;_IMV^j>oIN*QA>hzWSfnf&J43kyeRo`{ompxB%YbV=^|NPy; zB4Jaq+cUeQYy3gqomP0F3n8|UmtA80xF!nL|4 zabEKCYgbPfM&Q)W$kBHu`d=rnR=72 z_B-~G^UKCv^S?Yb^QYbo+aAs8%lq)g=&KcEo~K%hZ?L)@>7BW*>6=_w=dzD>|e0__+p8Ty*@q z^RrV*#*JEOTHY;w>#;R1OuQFpnis7-PP%4Am6hu=V5P>%Rz@;5mJoX8(;-X~A!Q;2!Id`t+{P;($-OXBkrJ z?^hK@Ls3@$?(v79muWX<;8 zhwzq#$Tm9I~JUa zmstuxC_ol@BbNT1O>cbDFqo!h^=d}S1M55xhc?F6f+$EMUbgLNQ(HBymgO{q(2R2A zjpXqC|M6DOS)L=a6oXKVEb>Myb)l`}8y%ml!@z0fSV_4c=E893E+iSb8$Gu+q6`fq zB?t)y%R={`k9f7t@s%O`G zcIOI_jPXe0(ge#w|Qkp)##qQ5zC!B zV~YOK@^YJ+5fDkA;3X1j~2U;doJl>A>%g8cPkQg*<|Lovn>uQ>>R*S3ydLO5a zbG9rbe$}j!G2cDd(I~RK4I_nWLme#(k(=smle$Y1_o`V()Shac>R?$E?ddyz@UQx; z?V#+zJ`nby2l7TTcKatqeI9u95V9bGkwT=wvJiRv<-^{Kj$Sw-OQ-{(4kgGNu?&8- zr9HFti?7wJ16mPd9b>R8iWRYm^MB-Lbar7B(8*YbSkbc3{nO>Q$5$`;w9i}>Lm_ss zcHkM?5mxw#nV1w*oM@N+^r0Q=iFJ_=j`^6b@3;AmMCFVb@k zg(WQfc~H&jkRi-EOmA6UV~9`4aKj*vy*}~UvxO;I;G}M_?FOE-dnWZ2xGkP+hlENH zE5VbhnYtU;TDlr(dUNJk&6Vsw>ydwrYK?}nm6{!BEKQCKrzVHTa)+ZTpOKOrZoFCP zhGKM#&PRrrVW{IFzuf1Dzb&}Ws&B_5ZxtuSva$9QJx+>qiTgbzEGH$138ScZIjnlI z7)DV;Xb3Go9vM$!y`y!zZ#5(Yz{EF&|Mtj~;DsI(WDUhpCaNG{$m z_i8F9YSUI4OM8A};8y!vlir`p$<2D`GH0noVx`ut;iMwa7J-qvFeiNs+K<6V$Z*nj z&~67Kq0dQGpsfNUr2;3_g0>cngSH-wgcB$21?^ri5}=%P0JI12d#KVm=?G|# zfRVblX6OMSEJ}pus-MoRTZ&kef>;V3WJuWu%h$g%dG}weI4N6~?Wus=4tzU!lY^Yp z0oo35r|*nD9q-ps8zXR%i8b+*o17HMM)K5KFj?3HUP+crHj`Hr6aZTQyaHG;u*JYD zfRzGU3Ow0qt{t`#cm=R(V5@;w0ILJG4tNEyMqnF(R{+}w>^}S+2CNy_X5a}h4gq6Z zfF}nzsTEYMV6S|40n-IKDr&L=b4Y%N32AZ&3G(Yp1n;)qx@$W3vo1KB0!r5?v-dj$JaE=&FT^FM*MvheU7Jyg)BMAU98iA0< z2U1QUMuI#v5P^mU?1%EOK$S_(;0^PnKrass3CM3A4(OPSMQ-zCKy8(J3m%&%0+LP8 z;IVlUpkvA_JeHq+GLoKtjmGliD*y(F0p8S(h}VgZzZUSx%1Je#s!otO>3_`#H+NJcwN-|dA})ODIp*v>o!ZIh Z?BeRiI1SSn7v-m`^3zTEIozHZ=6^kch-3f& literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VariantContent.hpp.37DD811AC1B51484.idx b/firmware-arduino/.cache/clangd/index/VariantContent.hpp.37DD811AC1B51484.idx new file mode 100644 index 0000000000000000000000000000000000000000..8efc614322167c76a1692cbe08b86cd9fbf6f946 GIT binary patch literal 3366 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 B-(3Iz literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VariantDataVisitor.hpp.D1E039C5ABF73867.idx b/firmware-arduino/.cache/clangd/index/VariantDataVisitor.hpp.D1E039C5ABF73867.idx new file mode 100644 index 0000000000000000000000000000000000000000..6665a66d60b3cedd65be83bb90a17cccb067d3c8 GIT binary patch literal 570 zcmWIYbaOLeVqkDi@vO*AElFfyU|EgU5>hxA}<5F(*!{ZF(T>9@(IBex26L(7v*{*SF0& zWNsjkSN~#`?i7_DTBD|3_Lfj-{-Ui9I^p4prNOgtYz?HDxP(`yOxF7{2%R916`TEo!-3KFZnxf&n`zpHig^#S|5xvQc%>pnR-#NGNQINT5t7 zjf;YFevM71&X0-FjAcQ=>6jR|>2yJc=oYtO*b-$bqRWQXooe3p#vi*$(>%}nobx{C z>3dHt=A4{;QijPcF|Vm8ttmzf!%U!`>Kcdb9Q`I7!>nn$)G}>Vk4ZVZUSp8e+|Xnd zM}_V?5ZN7R7+t$M*?>A{wB)x;jQXYF(m>zJ?V$^{et$kUP}8%>;=iZ8XRzo__$z&r zPozlA{K1>UqyOM1*Xj6->CJiNuYK{jI@Scje7LXE)6oU)J4QIF_4XO}A}HC|B?8SaGc3;Mm1%{VwXMhs^M_&F(Y zC#S915%KriTTTu==sJ4qH}>*dl2yCDx?WvdvHVkdmigLM-GissN|c;G%U~jqXf!I3 zj!Gsn{v1o z)i*H1Je_d9seR=jBPEy+!h?B&RYb*uQ-bwG&x0+3O_8Q4;DKPX)|}9>ls(&jZ?#?+=f zMxG2b!NI!VM3K!%{ZyaLELoP|vzaT;4fokBm6wKt1A^Dd*Ll&-eO2fdiVC1Mt%5ZY zmL!w$!fismjM5rE%>?LqVc^J>*kG%Y(oR-zvXQW9O>LZ(AL{iKNDT2h-q=FA6GyLw zQhK^_x(du1D=QX;+}sgP=>R4`_k2(o=EUU<3scduXiAIIFm6{(>5Kj={skI5v9f1V z1xfy{t$LE*Gn~p1Y(NGz>`ibc%Jd>ILf3i*4%Y52+S%h*u_29iN}H7S5~!Lw!@`#9 zj58_S$}+921~!#A>N3*58P22y8*lUe#tD1RJo&Km@N5?00#XnNnar`J|_w#-({0nyT9i)Z!Nt~UJdT9_@GndcpZ z%={JoqY2k@S~02o^O=#3u*c#`%joex^PvP(_3hITf7A+V5R5 z?sgB;O&eLh(Kk=3qt1rd+m*LzAp%8A1QWgP2X`y0LPqGVVw4%ZFC(=?EIjm}*8s7K zke%3h$cf%$#34dXmN;1vcCp0e!!z>DeDTLi?t9vCMk!1+ZHFuYqISqCLUv>i5Vb=N z5puG~$%?RxMJ^wvcl?{ho&>8ME2^JeDH6z&VLbo9&mRu&e{8M!(V4S|lOX0ljrD}M literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VariantOperators.hpp.FF8777BDA6ADFE9F.idx b/firmware-arduino/.cache/clangd/index/VariantOperators.hpp.FF8777BDA6ADFE9F.idx new file mode 100644 index 0000000000000000000000000000000000000000..0d1340a28d1d52a4f03ab0e39d5170bf84d35f4d GIT binary patch literal 3560 zcmYjS2~<;88ooEgNPLeMNkUk}!_@cT)JbFFK zmH)w_x*y(H6MuNvV9#Kk-)2j0+|BNjZ9en-HY|HHNj0e`ByDj*`Ac5)G1_|FpxEv$aq(J1*_-k|t>0SyywDW$t<$|#C)lW0vbEnR zYC4&F8O{wC#wWO(Xg_>9?8cGOB^x)@s$Twlt>wGMq?SW@3nHwCONt-AFjwW=KGuFH zY|*MUrYcjo|K(-#?-u$lo&BHUJ7@Jv|8i;{4k$Bi8*i$5`(AhT!?U&S#}a-^p5t+- zB5=wR#m?((L%l+6+WXC8zBn-Co=dieG0EiIGRG3=-{D%EvQa-kIZV+S32z4!?)1h6QxSoDF!gYIomv9#zf1C9n5t zy5d*WqVo)07rtXm^9{Tts@J>P|B}v%fW6VX`$SAg`^xf-=zKmSdg<`M^os?5D-Eqr zO#ijb=y839;&}6Repk+@MfvM491h6sTH^7KuP(1Jdb>^yhzY#2>g3gsj%AgL#@$}G zIA+j$-}CiF2UhldcmC3&#rytQm~&k5I#TXd^1N|d@sn2nnhzCwXYbo@ZrHr{QP*m} zm`6*VKiD3T)AiaKoN{J)zXsc0m;I?XvPV?U*|T`s&4X1F&vLeCKQ8b~wDFZ9=JUW2 z*1x7EvJ_CKo{sZPZY)MD3Uotc8aGWR8l>#&jC=-R(rfmd8y&N6ZN>^@paJf^-91Hv zDE8m%n#JGEzrSdZQr$;3cmVBX za>Us?Kbg0TV$ld1kjN$KM1zzry`(-qR=)8l{-NuSfSKG(9TAMsL$FxFz*N@^aYI2; z317xnLj;4Au1a?gVchPg3r|O@9@2o3w1kDT=tN^5wRQM}xYhWzQR-nXH&;glBTV5b zmiV9TsOPCZ9pj{cS==lg5sW=U_@QT}_^qMirDfG&u8uBCI)p5GG0W1{rj)^!%@NYt zcVlih4U!J~xMOF1Kh!0?a<b^ z+KO`xQ?D*!(I`6ZCd_T3Wu(JiCbzeS&x$&mB9%$!(se{ILbG0Cma1cO+e1Dit&o~6 z#9SfGA{|1habi%!_TOyh0w&8l==}B&78>g=LQF@3}$R%R$T?q*6EzE6?sy_xtPnPLDC`g(@!kLJP4kA>+y(uDQFG1Mn?oA^fE>a==PP_nl9jK zX`&1+Lq`N-AK6eIHBzhDTO&=h3v;_@8R-zp^cS<#7!r0QDe~*2hL2+IC=HShJHc){ z)mJ8{j5g^BCUO&XL@@S=+WneBmJS@+DM8X`GEO3b5g>^J22w~aPc1%&-g`cgrdf}< z^|Xw1*t5)Y58N>GxPt!6Vmz8Jn2b`tuGXIO~5iy3j%(z zHHC~`HUX4C)<;wTaI?hA%ZtF{ff~?nB`JU~Pyl)%@g6QrX{j?k+Dp7KOI(rb08v(` z0WqNQf(Sq~NC0&U{0BD>pSlIsgB$2h-2%orc6W(0OU%642pzK|oDVnl0G>qhkw$oDmQ3fT8+-m8 zkyt*~2+zlocs||;3uj3JpJ0SnVaY;%p%LC6=A!*b@&X+JK5-vWRKN|ALgOVNfs1M1 z-2Z#s`KUa)2o+NC@K&HMG+xpahzCWX7lM+2TXw1C--hKY3!UX8OP^(cC^^Z-`fO|f z=E_MP*5_dZq?eNdtS`U@*t?umV|_I?0Ey(J7VB%V0os?7daSR<1^}O&G-7=tHh=)Z z^V9AG8H4UX#Hd@6F1Ud2=!GO#aPh?RnXK1J_iGend6>_`Cg_-@9rFd)1Rb-qW4;=j zpktPH%-3QQbX?u{%ZMMlZne|>GKleo{Q@>Z89ZsQMl+V$Cf+o zsW|fvV1CWAF(r*QQgl}QT)GcWuT)b-j^+?1g&0Tbs6h0*w*v67nJ~bG$fF)&^ zFT=sGDwb4Yz7humX`#5MQWR6jO>xhd)eg94!qqSvOCp&_wFB;%>1qeuGqGw1+%xfN z2i!9WY6sji3)O&oIs%iTb{K(4Roh3fGFCM(l_i->rWydjk}Nh$1F&Q%EZJLSYvWOJf;k*9hb*cVl^yJ00~=-HI5)*Yq17E z!cthX^;iS2W+|-MMyvsN*0s9j9O>wIOJ6XH&oVoX!DnN$eT;g{*JHC|8om*mAx(Oc zWkC={ApC7<^5@T_bf(l`r#DQ=qSbmt{Pkk-IpX5C3qZeTjFbX z;9AnBr+is`cZHQTd!C&;=PY-lIW<>BrOgUy|pYOMD_W`RGA}0S5$zLqGvh5ji~YKt)Yf6Er@F2qs1_QFNn-zKAOV zQ3NkAAtE9HZxLA$lNe2m@p;9IC{M*FuD7zr#e-4(e)$NJvQ~DkFU{L56{q)c8wp5#LYG`)TCzhL{KCL5wc0y-Tktz^XH)m~icf9r6u$GT;TbC?_K4TCCGB?^ z;S$t)`J*|bZ#8EYo_DYN`?=WKO*guJn7MIs#I>EltMwl?J|BN~Xj*N{fh*&6nfv-z zo-4aq=h`&uyy}ClKfLH$^{J1W<9`3pac5sSi4s!MOZHBd9Vc-*6qf-L0y;_jr`CI_=85YbATc z?U(FEg)|2&uUbFF;pocAm&SQ)JUg*%{e+aj+=<^M_t_fz$M!|92faP%nODg4s`sA8 z#-2)vDr!vL6xgaCuIrn{g?wSF02dhy+y+U9m7*c}KmPzQ$a*)jJ=RHR&qdM| z=}PlJ>`{tyqGzx3J~Dd=D3^c(lP3~c8S#Dj@RKb;W)YnxL=(!Iz_AIO$cm~R@sGX_ zzt>Yj4d0>$l{F|@Cercj+?Ah=k=y%A=)*;llt~Wef!Lpf4D@o}6&53*3uhOjwipeT ziA2_KXbUjjYZ)Y=Hy0@ZWeI336Nzkk-8SsZ%$P(8J-JA#DpfKM#Gd*2v8LU>?i?dw zcZHx^3i_qs%??4#As9*`3Gifi$$|CbBy`{+UO`^btOdjt=tf5!J^0f-d#Xc|B=q20 z_$qxh=7H8n?OxTR`-;O8Wg}OCauqjHo=D`Oa?7h`ua755=+3uD_e&383C;;F#4g$W zJS)HN&kH5&%GuLHrpK{*bg#z{5?Hq3YrR|5kwp@!xj_Hm{;}*g(EJ9TWMa&)SO4~Q zmi{53iVIBen-IqKfpQ-(5=hvV(XZgaXI#LK3si$&H3YDD$9RdhIFg&Q(08j-t}A-+ zL-xkr4(5T_FQjGl7dj5Fke%cg% z-_K_w8vqQodi z5(qn9pP8M1lna;~9UL4S%kF^Yj@8kVr{7p7)Ec%(XyistQBBd92U_3wWv_R#XRN4} zup4IwDg!0+Kx~&2uis9&>{BBjaT&5@=*Is|6Nv;w-f&j+FWV~L%>~K@4$L$V`_khJ z3nCqd>@Z(`-PDk&{n$DTScl;xASK=(+xLZTw}igjf|sCt3CuE4E|fV%W#lb)+H1bL zx_t1t zZfud??`b(FB<#%XFenY8c_6lXa;*R1XZ63x>5{F__GZT*`WVEMz+%1cq=ajIE-2Bi zlfYc@)C;}}ND3O(dq7<}LRYmSD zT!|X;q{yo;7Ndp=Gqo#purw)(iO4phdL!zo6H(LRT}19!B&ca$8#y}Xj2&>(5cAQA zBI1>PG0!8ZuOnxig@CgVPHrZZd{4Qvktzqa8Dlr&2%@RQb#gGbHu@~G40VPhF;#4? zVy=>S5ivhHTv{;6StYV5IHj}I#i^Lu+3MmvaLfZ|s}nbY>n1Q*omK(eD!|7|*MM&g z^q~4DveV#t8VqzGk)45nGtkpYKLvaWoylj>A7}i{wWY*^dqNTzX!Roeqm zo2DZ*6jx=G?N0IIVnyIo1l??7?Nkcg$jt0(`#i>NUF(l3#_SpE`SAL|etl*Q;w>An z1{}$HYWtwFw0qi!+C7hp-0O)UvaP7ziV_LzY`u4C$LY*pf>^Z7`-2IKyL`QVGS8qWj8YR25IF|HW>6D25&3zr1=Msvk)s^E32K5r z50m-_}j*W*}=!-cc8z zp1fmPrY=N1Ei(l|y&Clth}1T1NO`ws^SJ(eaLNY*RVPA@{IoJ+q#Xz`a)yi)iJ@SB zWM+hWFXma1<&_m+dwINaAb>8<@KLkcvKM^&8Q;;>;2J=yFB_|R>^nPXDL+pf#);JV zM2?d14u}MwMBYU4A&AsnMQ#NC1|nHSaFtsp!&K5wFqJb*;FLZSI0ZC=Qu_R|Mp+Dg&k^50w zk9u-!V)4~)Ymbl2<9=`y9KGmDQ$BDzWf)8*UGe#KcwuJf$~U-|>TM^mpk!LF;O#`l3bCx2=6 zoSn5A6l^>CZbu{CR07|;g~*_rc2KcKP&NW1y4I^C?|#nnFW%UccD#7^qtEVymUHKB zL$7Vvi?$*d&$lwccTy~}2z7*pl7a3pcZCVUlMv+~|13jyVo<;5mBxhI>GO=bg5Ytv zyQ;VmX|8FWR7?rUb7>QdCuu_P+|4p>C&vHlX1aLXNq=qdCbUmVDJ!`jWRy<~k!?Zs z7VJWBi5exhR)+i}xOS5C@^qhX_wdvGwQ|rSfUB0FKdn%)I#kx7NVI-WK~uw)tb<%b zvTL#jd66m*FVOP4faKp)py}PfTfXVNU|sgtmhTubvg5w0#|cqnI{|lsD_uR2)dAMo z(gy$!*wPmPFWS4fhJJJJ5(g1X6hv=|@xhy`H^i+O zeVw#X!1)~J`Az?r5Fsw5Nh?y1~6=ZP^(|$XQ!=SB1&-> z8Au(H$4`EDk|3S96Ix!I#CTJOpq|V%n%^Epx)0wDhUHx!(4*2t$^%sYjaHYHC?KmqgHZq7PMBW F{{n}&?&JUf literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VariantRefBaseImpl.hpp.9D29FFB8A4D7C27F.idx b/firmware-arduino/.cache/clangd/index/VariantRefBaseImpl.hpp.9D29FFB8A4D7C27F.idx new file mode 100644 index 0000000000000000000000000000000000000000..f8c50dc6f0ce40066a31b6c332427d452f3ef4f7 GIT binary patch literal 3736 zcmbVP4Ny~87Jlaui7(#d-Td&Epad`hO#+f4h$0YCe*7VnU9ferHnCuL0CkOS)rC&$ zPc5LWSS?bu2r39D!WOnaI9A(Qb!+Xet5&gFY)4ybWp>rItjt>X#`N&$c4lY0Z-yl2 z-t*2m_dDl&=aQG5k+E6Dap_NGuPiHC?vimFr(u7d<;#9;1&*umJebUhubgSc3&duKVp3@s^@&^0noK<8buWWns&6g8<`c5CX zG4R`kyY6iXd;x8YF$KSu6 z`PVelQ+@NlF)S#lb{96>{oCS!8^!n};WfX!O*1};oq4$R@EbR@uRP~C=2=zd?&dje zQ~c5T%+q}q%8!t7RB2OA5HEo00;o9!LzX=y)h8|-`t)E9<#kM9E$G)mg!nE@eHUhM zBYi5_a3{0&?N@UtuV5-hi!oX31JVbh(MG>~@BLoml6jQZGKEreX|$NF%MQf%YY+W% zb!EcI-%(!8wu^1WsbV*8=;m#xu)eNIAF}Vg3d)aS3Q5+a6!A7FZ$lV5n3{3_?-4q> zj`Aa!LcTdaPV54C7idr+yR|H_>gIDyA%H0~gSi=^#p$Z)6kXh->$}el9^2?UgV|zE z7Ow)iDxD$S#0`$SqkqYVgJ+T_P23M5`ym`HjQDEbxW_tgG6gRRdW$|;>;=**Svcz! zDt0Y-vDO!4jyWezYzKL}6y%D6)MD?>h_dZ9%l+(n56Pl&U3Yk%LJf&H4OG~IzaOx0m zLJNcf9hL~8b>LqIYDAOJ2JmkHH994<6%?%yfE6=#^VZGtJJfO zs0cO^p$5S~uowun2{wX>QP7OY4D+-4vGcM&pLi~Q>IaI8tLEvL<>j*F3M{bXC1t+| z?yC)D%L+~r>1#2LnG!|8EC0MJG`D4I6tm=!d$i~PBL&67e#daWNjNdM z!LJi_L+9@+pFv`*-LQ0<4&Xmrh627@~?IfZ#^2dE{xQU0?5O|KS?BvdcgQ>h>fN<*L|8RbTbh6xQfg~v#eS#GAt zON2(7qGKef7UZ=+B~Z76upKlg_dk|oPi$^?{Ul|#@87J^jrnBhPm-L_8!$I^$LVL- zMwTJVgt^2l`Y9grG9Hf5DhRED7~~5=w?O0;n20hGHp9fr*7({b)4uUte|D^8m{{dj zHMRw75~VFjlI(K38cBlCcvF0=Bqhm{)M%a1DW)m0l2i{|Jt(BY+6}^P(4vgl=M@hJ z1ja<@d}00&S6~&gzPgIKfv5fZ7$KwKLbw_$Pe!AKXf+y^(Rd+#C?7I9MVK;_0iJpXA^OCsW}$e;A1=3; zOW(P6_|#^`Tq_hS)aaCTp`t=PybBfUK#kppoy!W(J1NnYf)<(!hom3p4#y`;uy=Oi zD}*|N93hw#><|{CZ-Sy4mLJ>jPEK47{OCcR`%>iopA~%cq%UR5$RRm;%rK$(Bwvr+ zNoXM{9Jc4uy223~LW{M<;ZkFil2SdgFB@@VJXWc;%DHkCVnP^^b8A6`wM7_~q!RQ9 zE@4=bn&EOSsB0k%YlYBy7*!7;$Rvbu18D|5wjiF8<<5KEiRr)6lQ?m)WA4(f@)=*3 z^s*{&8l6$nc?*mMQPO$c0q#&dVb9eqb*Zn+zQS18p?8c&!vzr+&L;(q{gNPL4VAy?}~_)zkR!} zZJOrPz<-Rgo=s<_9<5n$pDq9RBFAo%r7rI!!?SFmC)WEz>HY9M?B7j%MEt?=bn~{Z O!n@z)IrMZ;HWMppm@7 zys|J=3`MCqiN-(+V18n#lTwNDyk~j^F0lK_q?z`UeICF}V1Vl_E=n#I2kK>FSBhKl R(&TpKRz@}kHkfM}7yxDTsa^m8 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VariantTo.hpp.310E4CAEF78457F4.idx b/firmware-arduino/.cache/clangd/index/VariantTo.hpp.310E4CAEF78457F4.idx new file mode 100644 index 0000000000000000000000000000000000000000..57aca9242e63f404fc0c4d4e8304749db8796446 GIT binary patch literal 1020 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VolumeControl.h.A700424FBFB292B6.idx b/firmware-arduino/.cache/clangd/index/VolumeControl.h.A700424FBFB292B6.idx new file mode 100644 index 0000000000000000000000000000000000000000..f7d4ccc1a871254818ba7d5040acc48cf079aaf7 GIT binary patch literal 3692 zcmY*a3pkb88vfU>_TIMNZf9rjf4gmBhZ@=LyD;;hoWztkQq<&{`zVq^C6|<`)SwaR zDoJ4|6{b>7BwoE>5SA_|IbI`d3@_x>-+w--tY3h+sn<>HAFxVE+KB~ zVnWvhP9O+E1OLabiHo?TLJ;n%1hH;k#p0*24{e1V@t?D`In;jxww>{&3bIJ`)*nrF zaaAJh`%Dj(otm35b=J={M?McadU@&0dgDz_sQ%Z`rT&JYfA{r~-{viNA*h@$(~+Qz z7f+gQD$D9B^V*UX_B(q7ET@P!~ja4X3pIz;%%RTgC z&-(BT#cbsf{>KL*!*AMLdO6&vou}e<@B00D;18A?@IXZMA()i}D+$)$a_VEk34(+xQgquKJ0W!0U*m zT{6?&N1CQQSCRbr@wViour%mB{!e*HQZ zjz(1u?T_{fxY+Wf$+LE2mTymHuKa3+B5!7XuKt%WKV_-9Y*5zf;SqaS-nl!s!ruI) zFk#VzLR-}Sm(i|!H?Jft>u%2w77rTQI}TefpnScXz7JZvcI^Xu@1}QU11FjTqMU7O zje`;|(Oq^$Zyu_79%%S2_0yv_VRLQ{|L|<^MwhYmt>OLE-zF+^^vFH0e?h}RD`X1<9P~Y9G+x^I=qHT-jVy)7UrH2No^XHen{%l$G zewBH8vv2fA=dHYg#5DP;6|HY;R~P)yIbrFdu+t?&M=su#Buz`0He7so1vSUq{eV>6 zX=T4)>W3pA?mx*o*-}4k2pL7ruO{Nx#{@mXOm2Q!zTh=+3kk@nQwVy6V1SB_@ZZDpfK5M`&Qrt0GDo&PhN%cttoy19!u!g|$z##}kPmJ0Y@N>4w zCVeich6C~tCl5(S7bb|y2K{6deOl=jW+*0kLV`BqnQ5~I9^prXJB9Ad{YF3;QBBALQ;w|Nk!sRBp+QMWN6A+pGJGPook*E5_GuE!dtmJ``pp8Md-kJUnlxugIG2suI#YnTAU24vdS4cmPeUoRwO zI13AP3tiU00|#ZuyR+?NgMid$XF`yTCgGW276_R;IeGPiocR|qOgy^2VqZCHz};>5 zpI7Y{+iq}49!6lyF_yB1K|rzy1}u%}?de1t{$7Kiqr_2i*1-2xJ@NYIlqUDETRh4Y zkys=L_p8)^t=4x-?~6%QT;_7bD@VGc3xp)}chqv53%cf@AO zUyrcDlxM0d!MAMKX?2kASL*L8YHYi^ymU1aiJ^YYjM4S<0=&Gt>HZdI8D(@ z^p@yDnfNU4fhiD!_$=Sy82C=|S)RX@2J|dXP8L$^e1H=;kAp@CKOQzh2M7S(<3||M zLq~w`6DWG4#zqlLBSohpn{;FgB%K+lI}X5JXs-b~3;@dt z002e7_4#|@AZ6?r5fRAQt!g;fU}1bH!jA}*V_AZz;J1H4)GtU3H&b*G5)~m`pfrC} zYM?_B{ffp?``JmSG1YWYAwoT8+;t7aUWxv7xa7Kv1-)j;SdynWD{f%uHeGDcVBM zV#au4&OB#L$eN-(O+0O2#wa@6B-{pYP;`<((oBF&VU8K*AqAkN@EFR=kR@ab_v6-2 zr>5(SLz$^N(+r^SS#1T-psf=rdV|J>ulSdS=rkl9?_fGIPe+RJeI}ZoiDtl_;UlBR zfE4Be*O3upNG^O*#87XpS0l;rTbhmx;CqJO(#-Kaz*FI~LOot^Mis${OZ=6R!0_QG z8U2O|f^?IrG$Yy2NjyzD4l`i3K)~_0en%95f>UAcmw~k06YQ;Id%X&A3K1Wjvc^dV+T-zu>*h)H9=7Ru>$}& mb^uHnJAlrP9YEd34xnc7al!FwI46=m=F{DJ<*82xLHr-{)hBcS literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/VolumeStream.h.E3E224FFDADCE816.idx b/firmware-arduino/.cache/clangd/index/VolumeStream.h.E3E224FFDADCE816.idx new file mode 100644 index 0000000000000000000000000000000000000000..7e34062d47fabf91b54a93d80695932e12da7633 GIT binary patch literal 9212 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 A-~a#s literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebAuthentication.h.E60B3B5A2B4B6E42.idx b/firmware-arduino/.cache/clangd/index/WebAuthentication.h.E60B3B5A2B4B6E42.idx new file mode 100644 index 0000000000000000000000000000000000000000..85f407dbeb7298bc70884753717aef8b5ad1741f GIT binary patch literal 890 zcmWIYbaN|WW?*nm@vO*AElFfyU|dJ;I*SQWV?e)9*Bz2yE?lG+!jS(tGrcJcjViEA1^D5)#-~}6BDJ|q!n92Sp zI%w-@YZ&v&lgzUzg&hZBGG`}(8xCw6>b{Kc(se6t@zab<4OQebS(4ZC!;=>9!V z9tKe$4+I1S*aajRI5}B_xOf-^S#2NR*wdDk(8j~S2a#tGo{=&l`3{xP&E+Wjp$;!$Aw&Ib5)t1ie zAAflmL|_Vp*o7n*I60Uh3K)t~(~9>3?vQSY5 znA3r(!A^#X%eVa%=zAQxotZ~afI)x_W+soI5Q7jK+%1A43?ghWr^EaRGzsiCs7Wws xpfK1+P+^!EKw+>yVD2eO%}E5Yi;I$r#X$@K5CH~Eg4cetRL$Sk#KI`R000c}Kl=ax literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebHandlerImpl.h.95D772EE73C18D2B.idx b/firmware-arduino/.cache/clangd/index/WebHandlerImpl.h.95D772EE73C18D2B.idx new file mode 100644 index 0000000000000000000000000000000000000000..be0f4ce5e10148811344fa1fddf2e5befc016854 GIT binary patch literal 4164 zcmY*b2Ut{B7JhR9XBZwc4`yT-E(1y#imL*$7z|AvU{Ndx0~T}x0@fGj*`ttO*r%N&pT_~@)F~^$rXr1@a${V?#4cqW|W7kfD zZzrc7vz+LgT;DW1`F}eKcSYYW-o10;X#0qfp&zgPtVDc%ab4G6D--(bMbkFPDN86TKuUA_;B=;)Fsx4nK%}_t^R9$(@ zVf}&*xl~q=Y0E%YsQ7^D*OD&gQrv;8>LNJX=#33 zKP(`z(dqQR`S#RDLQ%=Pxr3bqA@}@phvqfq8i{!`x_J7-Gu4@Hg68#y_E_HMrvoga z#H{jc&>tRV4hsgHpSI1jJiFAOW;853x?QwIF@m$QRK=Z!m#)8DV0814SP0?+&4I1) zFJqb>r)JOgl~_k6@Dz25q!^@sRl3Aob>R1oI%aSbxY^mPQw-o)!ioBC9&Yj1F?WiN z_loyd4B-6fHBXCU4t0^33-&gs4SK*%&gL)r@4g!*F$>@Tb$}6Y(X`s)=J93SB<4%W zv(#BWiUEA#6$4=#=1N%!X7;uz1sx#od4f#(?8*b-N zG?J&Q(_5n-|N8JSFN+_eV;X9z#boKA7(_1|a(i`lrzPWDm=nR0M$#$<@T-+i{6Eb3 zp-^HS=-dO;16&mYIRE6umL9K77ib1qFb;xXwA6HjMEC2@!G6w|#zO!d= zB2PM6;lUgL`!PQg;LUM0?BwB}x9XTgr6qVK_$mhQ!&_-(4bKN2&@oqnd#Zct6$3cE z{N??Ot_P}JSUW0BuhEN&0la@p!4%)`Of@>@Ot6=;mxp2iM}9x_x0WmGj_a6?U~gw{ zlVSiH*WTH%SX+Na$J7LKXKqpq;P--!i7WD}&PvQ52Maa_w|4EF;0YgmSHUN{=JTAX>XI0NuwCROFO#8-5TxqlbVqX zaa}tdSIirB$?dRZ<-0wX{i0)f>RYULtiNIqpIg3f(ZGaig53y?<8gtC0UTAl;EYjq zxzU5E2(~esSuucpI-Hx(cYL46Iwn$aK58FV#Q+{yYkgZ~$bBX;KZ;IOr|K00xG=w< zNJAtFepNXuyb8huuaaBlQ=Akq)4t|Wg+>KIR0;za8C#>hQZm%&ByxMIeGqy~Ut{d= zz4^-QnVF2;MV{F&Gri5%u*@8M9n8qP{7qVpQ6=*5uXQe&0uhfm6;n=0w%Z2*l>ff$t^QAc0y`8lT6cC4Tg4j&CGC%+(dGLCna*f5Wh~K zC9pPSk|`S-RIKq`oiwCiCLJZ7#hYgwgQoxMtFw)6(Q2}E`;sn6yM=SIyXx8x=naG=WL zY|T3}+sz|)L`Xzehy^r-x+7}|&I_2_vWCD74I#Iz9dJWC=oGSWzzxkHw=5WF3?2a` zku?IVp%JuN76`bZ4YXR;1i0T{5D~P!-@yv%kSEA2nOvW zs|8kDX4Xw?SaWut0}Zgv_BY%Gec5e8+I;2NM&k?GLN7oT7G$E3ake770N>IUY0*#i zgU%v1MjPYNaglp6PYqfpax*h)@X|%@#k@4o9+7j#HP8}~doynhgh%8tEJlNuDDp&O zq8FYV4Nnhy0)_|kL8q2g4$Y`)`TK;Vrt8%z$3Hz={a+Urf1Q2j81*-SC794Mkq^)f z@W;fXKuReqBT}L^a?6Sc_wMJ-!BYlJJxLR2>tc&SdvGpVEej-8LmTPtWKDz{nn-S0 z3*p8g$t`OjE&>mha?1jU)%e#%`&#qFScD0WOXQI((u6lf9LJ(eATdoz_t=~EockJ)8ze&@ z_?kw@U<`gULjG?4R?wly1KJ0Kg2F|f?v`!^`H4KEeMTrqmj=UV4?)jJzuYr}z$%b^ zB0yR5(Mh^9tF1HcOytRq$u4-`kQnN+{5t?4SWIqN|KTpaeWm+*8&jHSvSL{*$9^JD za!U$DO8h>cSoy~RE)29uZuv(6QWoZq&sj~EID1yX%FS5|98?gjS9Krks9KmAtU`}k z9cav`hJl-eyYCNFp>M4YGz&~4V7FEWs!~78oj0Q1|Go+xJwNv^5vBS&FH~r%P*gaw jsH;3?=09dl5E!p@so#~C(&Xe|_Vg0GS^>fH&42$7JDv#M literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebHandlers.cpp.B91CBB8B5C75D37A.idx b/firmware-arduino/.cache/clangd/index/WebHandlers.cpp.B91CBB8B5C75D37A.idx new file mode 100644 index 0000000000000000000000000000000000000000..6732852c0aeec298ec8215d28145dba15c932ba6 GIT binary patch literal 9626 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebRequest.cpp.8F2030BA7A72579E.idx b/firmware-arduino/.cache/clangd/index/WebRequest.cpp.8F2030BA7A72579E.idx new file mode 100644 index 0000000000000000000000000000000000000000..6627cca88f6ce806020720c8b4618ece2d7af8d8 GIT binary patch literal 31250 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebResponseImpl.h.0F513D79B4B45248.idx b/firmware-arduino/.cache/clangd/index/WebResponseImpl.h.0F513D79B4B45248.idx new file mode 100644 index 0000000000000000000000000000000000000000..7a07e7f8a2ca5ea4ee42ebf6075f63d5a4bf53c3 GIT binary patch literal 7854 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebResponses.cpp.D2474C56A43E0295.idx b/firmware-arduino/.cache/clangd/index/WebResponses.cpp.D2474C56A43E0295.idx new file mode 100644 index 0000000000000000000000000000000000000000..e552a548f2920e068538a907dbb3e86c8a01de69 GIT binary patch literal 20842 zcmchfcT^Nf)aa?|s%DThgh6D;f+RBrFh|53QCv|muQ{$^)fGVnLBIemh=72AfoxoJ zKvWb1iXw^%f&o;L2#DgVW?s!y|Mkv$=bg{fp56KNt?H^r)W!=`2TZRuWbn#Ei zczbx%>?v&?|LkXS?fv-j=EsYBY-%XAsG8+9^HO8O+u2<@yuVey<=Mp_AMRcDJTa(l zZ7<{3Uq`R>KY*i($8<=ztNtwZ!LH&bmtQ`={9^8D9b%mj6s5at&y<|vHxoQ(x1YVfe{`n{Ycm2D*{`fk zyx{z`Q|IJUPM0pt|5X|F^+nY4`jva)LodIy$~xo~G9V*#WB(zEFH2II*VMf)%e(v1 z-LbL?wiMi2m0|o)UVQKI#=@&V-Hsh@XhsW%&Hvcq@2DpN~2qsHt##NedHd{_1=&*I*;#+19B&Av2Yb55Fjra_m|8;7PWke)8JahhB( zs&l{j`MmnOfG6gM{cX5|els42{~G%A#JuIbOIEMiJn?dW{p&47Lv_{9p1SeQTknV2 zoT@gZy=oi=ob~uT&wbnHOPR)NXPB-(GkJcSb(Q?%y{>^pS?%8~QI8F~pX*}LXW8Co z_Af%@j}K2hm+d--56Jdh;yE#+N{hf99ryBpQkTJcAQ@KXvmPIUPJm#8`gcPcGrV%2XFk_EBuKI*7bJ&NBy9AuMhtez$G6`Ud+yU zG<50M&~}D123>X^#E%>CX`be+J$OeDKhE`V=L$w#Wb zKN|aCQrGLdo6!%eEo$L`U3%*9VV0fe^8XAEJ|Abcoxh(r=5Ut-@6Ed{>AUz>#o)f< z(1jZ%PRqMbdp&PKV$6faU1J8!d}P^oVZW95T(r%~85^_edaU}ab!*4AgvFMD_Et(`mQUigEiLznuV9o6N){-UsyySq2X`nbpD_+|E< z{ztUu_Kwb_FJ8YL=eSIJW=?M(?W|do-@S3weVTZQOD#Us{cf1VKnL3$+BD!=^4dk0 zbMMYL(a9#_TF=Jy{O%dUe;66f@;|3FKXUSb`CH(bUY&CP^Zz5Lo22e>n&i~4!iY1~ z>#uM4?_=KTuKRq?cjz}dyYYre>Ghno^Yg#Cud(&W{!+Gf*waku^tz58`t0hN`J`#y zfHCFepZ=?R#nlX|bzMbDf_*N#L+^ab-yCB$vVB3uXuaS~L;FS5w4dsf7J5HB zByh~jgW0A5`Ov_-|Gj^Ywl7S_4eGbY*v>zn-G5kMxBomH&rLO4IrQ189`|}KNf|q; z=I_OaG8T;bl#*nmR=I4_gdRzoc0ckNEID z8`2+++qQXV#OsHhlT(hw-b@-*8rrmO2+BEl0h~fDAIO8_j463XVhjH8tUY8ky79>D#j%V9THV%PKk4x@ zQs3)&RHv^q&*mib^e$b$y7Iy6=$N>Ikuan9N#7qKhd*bQv|UixcG}M$e|gDQ$PW2m zZ1^uNjgS5_u>H>QMZ>&PGiPcT4_c+$eZOV*6-{5K*IyoWe6;_$1NkF#woDlwwL{z3 z;`q@-qxxz6&5QeJl|P*{qG129iw8bGo#5k8JLmcN@iR=P3@+Q^sl8`M#z}YE2GfxN zX15Kmw6Q-F#BZGq=CydeA6~|NALo5}T7Bd>AGI0fw;V6L`Q4^!de^DG!TawA{3Utc zZ{a4xU9*kPWrk-vZvSsihUXN1V*Hj9mIsbq_R2kKP#*bs^z~C2{t=&sd3H=X4R3rH za-rt@567D``$@*0yS{z%tJ`|&&)1~%=;$bSh)(UWC}Tp#U)mOu)w9uGe@ z-pnG<`cA(6mc#Fl-%)@2tR(uP)!c~J_9`~G4j(V>D4Yvk;?dl1uXXpPp zbH=IrRs*MOv0Sz;s&dn>w_i1;CrqDh=JvP!(jHgKf5z3e?^fY_U)s+_-Syea&}$3) z6TNnJ_D^)Y*EzSxtzL7hE+yM`81DV@oKHW`F3;9qN)4Z}bI_ckxjw9ef*BkNNXV z=ux|qMxLJwqV*PTdTCnm<0881bkL)IgGZlj;JIgxXUgPGN9I}emKQp_nECd~zQWHB zPF_ix`~s}cZus7nzdUTTOOL(d3I_kxqVE4tw`%RC<#V-pHMLI9{GJ$ny$+->0`7%s z3Gga!dX=|}hsi)A85pWbNTf*q?AOmde0+&7l)`AZM-VGO#s#QLJRGM!&YTLx7M z4BHyP-7rvSmoIPR%R9!yoq$|MRIDhcHnv%|M=pi2irSt6v!_Dy(A{+$oXmlsHhK z$72Q$y*s(Gk1&$0y$t5ff_eLR7z8weR3ka2_-t6+;Y)puV31-Y1F%5=wuy%m;Y6kO zza2_z?ryVufIduAJaC)YwjOcNSEA!9v84~Zv?W)Xd4BGADU4L~u!=LU;`+tIt{PqK zsL+W1_P<9g=rd7hRfwR5c-|~tXw@O0aY)rFt1gR<#ZGjaB!$Nm4;*hc-X;zPO4I`- zI<&4kT4CclZ3Lc1&>sc}byeWD6}TgbFyVTobxoRicU}Z|>}>=?6$YKf%d&(A#shLG zRr)-r)5UWGpRN#Wb(c_AGicWgtm2`Gx`{4*;EeUR(ni?qUL%Dk6s?+JHp3|n?w6?V zR}D_%h=n6v&O5IcdbnSx=@mA8g~<$BuCZJ>f4&bNkQ_L?Vw)5mQPdOw%mM_XIUrF# zAd%7s4qf%uB6s5CT~c^ZAr=kHqJd)^Op&OkNR+ir+noJq)BFy*rSP~y%)`v1QydJD zsE4TRbi~;wN4oV1++zd}D1=5BkLVl+10>{9TIs;_jK8FBEDs2cZ&m4cZ2lcP#KSEb zTa=G8yzTqfm@~oQg05OkIR~2NKw>g3>MlxMz5Ld8gly=p9 zQ;~VQ9$QaH;Yr2d6!NBpJkk1bpm7{12f8fB885I7O%jU$kc^R8=?Sc{9rx=_9EGxjo8WzDtN?Z72 zk5Tu`n+IK@m6vwGW9v9F)dEOR5S|x0TC}UA9lLpQwV{ikjkVYJNB;&Oq3>}(8VB0bPAwhd(QgUwflbJrk!WNaruP&0 z30l-ele<&-san(rk)K|?mlk!EX$)(9?Arzxftj(C^ zaSV@RO$KCPl!dh!JI%!~7i&`Rpk$44#Es}SLPI_vgAd4wHl%9(!cSv8;x&ak?~uVe zWJd2CZ2Y~cw%tojgc9Iuh+abts&xXQI6jKgWWWU;UEnonyg(!#^87)=o(EJJHOyBN8&AU*}*kC1;R;m`6w8b?>cORY9 zhNNsTZX1lv7-I~^PQkbv1?AP#5;$*9sbFETz#KVMj4Kigjoi z0+KOG7J(d$a46-9n}boS`Mc-S-m(}09F zg4{0yYGr_@+lN*#tPG4|z;6J5i#(_ggg%gUse2*XD{_Z1P%Q@Xbl6CxF>p`}bYnm~ zMDef<0}>$V6$|p9S{~%-EF*Q~!J&C@Bm+J|_z_ANPyu0u2n2B`h+{oyB8L)1pp;W9 z<#@WqB2Ovh#+Py)3@GCyWt!rLkk&p?kxZnODFU~U&Mjof6v;t4IU;Zu>D(28Jgk<7 zc^VN5TE{)}a9;)#;7JA8lZL}Y;uThVg?YMpX$8Gs;r;T;llw3`pQ%0xw}e7C$75cc-fXDRPxpyUO!40Br@m zuJZjDaFbWN$@6r*AQCtE-Z%OF47kIiJA4}kJmKLJUc!JvUagSl>At8ar`jW9SBjzF zqh11om%y3{k{&_rN6?f`9Gd$OmLWyjgDylg(i83|G9Bs@+9d}5)3nd%{J|aQ%~=z{ zuLWS+0BlFS7md~+DWgbx(AtP-HqU4CI<(RE&#nHkvgM*&sAPa_fHHEB9XvXB{Gg7e z0`DQ~q2x5~6Plw)mC&jmd;Q~f{mZ`gLJ2#Wow7tp@F=ZM~A09+J(RGvkrcAWDO}3<&3}!?{jWZKTR@Zb~>en*sMY{+=l6&g1wz5yRRgx}s5MhKV8-$)w4%mO4Ki^lm;WThB@Ax%Q0H z2tv9+$dLj2kz_w&C2k|#+bW6j@PaVcBM@jHj7??4j z7Uf}wjb9LInP*semf1+9fcYN5Mwgc9I4 zX#5SDGoS(LHNdtEi0AC$MW%EN=^sPJjFK}@#|+e+0kK#XE82 zyEq97`-KdCAsedoywYj>lL?WX1g*zlc?|AA=PCi$vHUvjKm&`w=J&|6_XM^Snh+B_DDc5?h}j$GEWP^h9S5e12VC5CU&8Z zCq**xm`ps8g6;mxwqEHyrJK;6Ol+O0YU$ujzRzpZhIW^bJ9nV;4wO;jCZGZuR6t`! z-PO>bS_En!UjvmPJSkEGb!s5H8;c<=8sD^xkxSMxKihhz3F3AgE7m zoq!0a8zBP0xO*_}O-GPOgkY@@tVhA6nG0ks**E(L54j99E(2ZKZMw(`CZxzG)3xM% zJTja(5A_v7@xwg1+A!;HB5#n$%bC^nIInk{Z%4tYJ;wJZ*W2_Jp7#^Uf2z8B_F$#o zpkIeu?<4`sB+!Ajgtk>^i6Ui9^F70}n<~oIo$n{KBoIjgkuEd;&LPP;5x9gTmsFrr z=A&*!b!++yv+N4cxT5Mg0oQ=WH5H&aaiIZ1I-HtH=cZlHAC3Dl0Fe@kEdlk01Sqxy z3{Y$d7@*h^Q1C~`RYxZ3bRHyV<{OfKQ*FP!9rpSe`wwWnV=J>&8iIC3aadW^$X0GC zvsChfmsb9Dvhm|!K`YNOx!N$nUon;yV>2eSE5SM?*ocC zN_8!7GDiP>tM$%Cexo7HJ$Al1?3#Lb*a)G-CuHymnbQ)nXRy`RiQn9Xv_U+_$E%VS z1nfkTorn#n_ac5T(qhK%D&nuI0I^)f3Pdf50L2PK!NhyPR}NmEJF2zmKzlndqvO_h zZsJnoVO695zhqx-JMLKDl-p;FFpkwoUafKw>2>4!IylT2 zBkVkPLdj0m7M6emP;x*84h-tvd$w!tSfP^6vd+r6@z=+bv)w*&75(qfUNzbYP@fM2rVl-I$xp{15 z_K$57ggTp%L9;4-MQvE{FpAe?o7KwCBCaRMz20`s0s3Y?B+7Tj< z40V&Cl#V1Ra+TA%%4yRk3Uy#f5Z0hZO+W~46Qat_5s;20=~#mrInDhFEfe0%QQv3( zYED4xjGW2B)QJue0h!1l6Ln-jE;7hPMikI# zDs)cqMsakHBY#z=&90O}uQSt|Ogx3>b&+*Z4!`7EzO8x4uvT7%Ar%18cwr@Q!3{Dn1rT&eJbV&O|y_$ zD4V=W>i%z3zSVqzzeV!5s$pm!QD@kB#oX3At}<6;36JfIXTJS6V7~Cs<5=rBwxYI2 zKrYtG#a7hR=rqwHcP>M<%TUHRW5tU(rAPwIfj9@6FhOJEIKI-5Bi_g}12~rQ&w9K}4beZ!5rIfbsB^7**nS)N+W3ACLU_c8r5R#G^xe zJ31YtV-}iR{3marpt3q-P^TK@DbMUnLc5kN6jU>{`e46DJ*89Awn6 zM5y&D(739KcY6F8@UeEo%H_hHhfw{YD$b_9M=(sqYx6n#A1wBI@F80>q0fwej&E6I zMasDAxSKGJbtalAWnK~;2mEoMPy0s1PXO~1z>xtp0M-CDW&RCld=qU8>j7U6^qF1Y z8-(599-ibgtLggax0ih2f@Cl($B2bA?r3idM=!*zcAyg#-H3-#+ zKpjGLB2bS|y$CcQ)F1*)2sMd7GeXTG@C%_|BJdlb-y*ObqwSbgkRL{VA`pd96qYix z^9n{+u#}k$FED(8b(pzOi(xI+VdjEA5B+%^W-dhYFq+q)bAgP@8J=7^)WK1+5bQ}f zVL?}yJxdy{C$BuYRfZ>!Me!Lq^1UfT8TpAh8sXq&JX354wep*7Ru1JLk* z=v7Y&G)aN&nJ!ercGb|Dc7dK*5n@s=YcD4{Oho63(<^kG$o*J=Vu3PjA|MX%aVlRz zzzKj(h$Q|8-XU&p_v1^RdYz9D*cSr*LeQQjBMI<>+J4ZS(N6%>4iJH3Q1_VV7(*s( zn+fe1g+1YPpQwB(sq{J5_Bm%yHR$MbKKW?Q)E&YwnaE6(!{pzX{b|a?h8;4(eSo?T z(4m_Y0-{0RXfT9vgb^HyP-QHLL)C$dOBf0Zm;0 zCXqxlhnhJ}M&c*u^pj&#SuGrD5lMt0<1l2w6v@LK@^B~St-~v9{|a}ZGmW(4J9hkz zyNR;>4#9j^nr0vpk^GcMeg@+!;(3R7zAFs@iNsaj{wm)^l!v#!$#Mk|z82o(i=Y^+_HmgdU;TIuzS8em@IaXJLEV z^fWKc=O;#OXcZ0QVIZ%|xc9w0+RN+FF{Eu1`XC%RqkUMa`9a#%KWC2+*qs1QCqP#^ zFa-EQXJ6>TOh$j`>@Nbruy-)*$4G=j=Wvlk66})%2QsrW9Xh8&7Y5YAp0%(Kot@;d z@tkoyXU2eZWSg$ai4%z<*zyRrW%P0rTi(RBR4+ZI#;zLK`D%#JDR<GE}8dtDUpQ~_88)R}N55W_&M&OAE}!!)c;pG}_e43kTpS&Kho_!+A+ zYw->q?%>s#!HVKx6tB+AuTwlc#jDe`_|NdjU0F>|q5oet@k@;2W_=hT*(>-zGntvv z|5^3QZ9ip6aVxJv234wson{w>CD)f%^W_bhri))@5s6@4J(!nM!=qkBFg(REM!Jua zY}xIUYWnJc&<+QggR&i-yRX&h)hYN_B>$>v#~N?9RT&Gv9uTHRGSo|kri>X~<#ev9 za<@a?4-0bZHYZG|yqm0>vU2J|gytv?OwxVJQS+na_stH63zatltwvzX4Ek-TbsHMf z!uf|6k2_m-DMG0HH8OmSJvSK64GrfeG7~nRTbj>pVn88=g;>f=iLV%b#ZqQU z?Bd}rUdq^23=d;?DKjM!cxeJ}&MY~nd3c(a(m6sj{*)(|lrA|drw@Iw@UiTW5O!Sz z8W%-@&vl@2T?B3bjT<8H2xvS~0Sn2%3nK@QI3x^tCs`+@Jymb}^w7L*N|eB3fljRI zmD%)(T>QZa#?h_G!*1?F8B<6Ed?GMr#{N1)*P#)k;{BX-Kc|fONZt9IeLlxJ$wE$} zP!w(yamGcQBct2mw3{P)+XnUa!8{?;0H=EVDtF zT&&j%#^%AeJyW~*Z3Zb4f>DSnoz)81*Bb<+V{$1yCvBK8HN`9PjYVBfoq5$gR#0*Y zHZH-YGUU>gWmT+e~Fy9Wk(fIvXSs6Y6$U=JyrgxCcgO#;qylJg?)h(nLaA+Z1bDZ$MFuxW7ChciOiCT>;} zw}vsypWK9>+(i(O=EoLMKH0{j%n=}v)2JO}tWkTd(| zB7lp4oH?IV3~(`!({o9r$XkHl0y#5h%Yb?rFr&v3EOz~phP?AQr%Ob)_1!j@XT_l2Fn#hl3ds#&K0@?4$VJRwRDBL|U+2~Fd7naV2;G&-IIJ>C@pMMM{ufi3q$y zdhbM_9O;#dzz3xFK?FV_y-y-giS#N(;0x0GA_7%NuSx`JkY0@l)FHh(5vWIc^&-%K z^cqB<3F$S7Kr_;77J*+#@0SStMtZ+RU^~{^j#&lyVLd+)h{AeNSfAQ4QQ;M=cLnQH zJ0{=-)_tMcXAw|~b!%1oECT#_U4PX+i-2feH(IsNBH#?Kdq%aba*dL!kKFR{o^UwK z7drTgzIE`24*nt#3>|_+ARIb`i$D@|N`hUP2r(Txq{Ge(sD)0ouqzD_$YXDEPB%Fv zpl{y=2OP<(Me>Hs9#Qcv9u*-H@w|Gx>de!SsczTm#~;lTEd4h!_^mqFM?+;HmzTw> zW$^~gzEb?2mq=XY)vxjofUzI5cT`>`Z$B9-)#^-?N=Mofb0 z6yJT)c(JGNf99KqxxN&3!S5is*!cDx)O!cn6NK-e(>vIcG2U;G{|4Fb4YzZW?VLU% zaf{<`slGR~xbmf_ICsTMAx4;LJ=KW`HU9@91Ui)jHHhbu%clu09Zgr42#PDf4h6Ui zUA|wx^ITQ8V#qt;jO;+}z#0FXUQ*e5rvk|FnOBxuKgbZC(-N~S%A z+K*N5>`6;MLX(fG&!GsYg;urDj&_QGo1E26js-6{y_c%vwDVSIj2v9q{ez%pE18v2 z{m(ufIByx*Tp>)xI!rEICRAy{s0r)Q+$_z=3R8#25Q* z_kZItr&5?6Z$XE*pf98KGGJ2%T$v$k2G-4>H>33!Xc+^0G8)T)wmGm5-TsqG^I-ct z=tA{jy>Y?#&C3$L2)#9xnJRlrcU6Mn3SU~&*<1f?qx$ckuv+Mv;#))N#t2Y+Ysdh_ zw}upWoS&L9yVqM1=p?`fWYC~;be<(Js7k3jNI6R@B8WkE@n=)~X$2tSBEa4zI53OOgL zufa>*q~3W~YJ@)c023coQba?)?f&ymuha>5T9CX&H3@0ZCg@TeWyZa~{9tfO`+A{F zS6Nr3_BBuFx_!LzxIy5xNM5U|>yP3he%V_ul2A{817!o1CE{|szA1k^uSu~~n706S zD&B#Xcc2}$fx(u2{xJPHuSF2`>gd&nhN0x=37~TVm{Mo|tlgPsTOOsf2%~ZoTOGy9 zoD~7d*eY2BazadcuGrUyYG`a!Z;WY)ySp% z6Q}zBdCTW7^9O2b+u?R{K7o7?`5RP&7ElZ7!AH;x>Oc*s1fRht@D+RkKR^Sh0*#;v zRDf^bJNN($`8FErTG}!_1EaRa`nv6qj+E2H5>pFHbGgY4kN^@vGB^rm&YJB#Ck31X z=fQvA0=Nh+fhXWG$Op&432+juT(x52+P~J7fp=igz@^KF41NVRPWf~4bFgIbJgfCr z!4+^BSU&}Jx4?Zcb(+Vfzu$rq@CKxV0k$2ST(6Fi@R>3_`dn!n%=?)cr67rXOR{k2sL{hmjC333K7QOk z`@sPa2_irk2nPqjA@DEQ4t&5aumc1Ff3On-fZZSj1c5zZFW3iy!M3eiHirUV;0NMB OIWT( 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 Z4g2;+rNaS;gJKv4);stEJO?n+{{RR5;k^I= literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebSockets.cpp.E90F623EEF7975EF.idx b/firmware-arduino/.cache/clangd/index/WebSockets.cpp.E90F623EEF7975EF.idx new file mode 100644 index 0000000000000000000000000000000000000000..acb019c9b00ee7e7704e490dc8c203d303113b0c GIT binary patch literal 13718 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebSockets.h.38EBE8BB86089044.idx b/firmware-arduino/.cache/clangd/index/WebSockets.h.38EBE8BB86089044.idx new file mode 100644 index 0000000000000000000000000000000000000000..f614c4298885ef7cd45a46e8be0dbe9072cefdd1 GIT binary patch literal 8774 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebSocketsClient.h.425E0C010A5B3993.idx b/firmware-arduino/.cache/clangd/index/WebSocketsClient.h.425E0C010A5B3993.idx new file mode 100644 index 0000000000000000000000000000000000000000..ad5a0e960d7795bf69a5bf2b6e8d016fdbacddbe GIT binary patch literal 5376 zcmY*c3s_Xu7M^_=fioP2Gf2FK1Il|wU{sVwWK26tMXeew7Fdx@#CL)4Ru4EON<{@y?r!AouJ;dN}u-0 z+UNtaFXw%A?){8g9WnX_MQwX_NJU-7)%{h*s#livZnzvQmhD|Z zi#{0@bAqghODqXj^&5fp4GoQ&A+rPbm`~AA%8+i;C77k{W%^&jg;TbP1*hSb~#2X8yZVckO z56z|vG+2o(Z7`bP`o3Q9t@%$&!O*(Tq#;B)bT**eof6^aQtG?)s?Xc*YF}=vbW!ySF-? zZ+DknG4PBE>O?lt2kP)`vl2@jx~KAt7V5d|TuI%qEwePOE@v9gxI>-9CIw)(Z*j`WG=l`C?@HKOkjGWr2@u=}1 z{=xng_i78P_Q#gkCC9{?BoBTY+c&S?cMnyE!h9Z^CuM%z(N``nUp}RbXFQ?aM%Zn{ z7v>-O`WD4R7nk!)I2IJJ1=7_t+?@O6ma8p`dBz{=?S$P`=YUGh?v7h%J(O#(U-OZ_T;z?0cRJ19gZzL<()RfAlZ6FK^t( zGu}|Q6Skd53zj9vIi2v>`w`ECVL>ZlTggZyXQgjhckdm3zmjpGSJOn?o5<)#A1sMq zB%A%7;=&Onqo7OPB<^pLkVhXZ`858>;17zHuayi-msGk`^20w+Z*-i!@zq1hF&GZ(E}E`E_5IM!EWO|M%y@M z=TCOKv)OEE_t4HIovFole&(4#oSnj^NQ1@WM%R_Wmn-^t#uw^BwouCdk4iNYoFG0iC^;e2HB^AqcijK3!QrrqaDs(IS%@CRiSbBS!8#VP zV}jv`;(T?shk_FV;{#3bm=iLCGqo6roRFo>8jJbC3E88w!;p4Pm=!iF5@o~*xxu+w z6eTC*Y4gUS`*DIf!aN=s6+KL|kZgF!(P=fMlT61T!@Q;*Tjw-9hEr4_&S$`w&lDEt zGGNSQ3XAg?uu^xgD)HJ1fhMYvq&5=sqvXmksEOjyc*YKlXKF|s%YZSKDJ+g-z~yy5 z?Wf)j31>JV(kYUMbxv69v{;hH?tN`?y|Gp^>_k8#8H;84Z+&*)OkYog11BU0Bu@a$ z2`wa`h1kg*B%s44BX!hwD*=Evr)$2LJF`1eN4*IQ2n@4bawqZYB*EB+3#PG%!~nZN z3@9uT0>B^y6c&j9;OxP=5tA-fPNBX>a1kSIzCXb|VJ9u(7D*Dg1GOY_23P`Tps>gl z04Mwrv$S{p#dudv2oDU`f*Wvx#!nNBTjB(5fHn+`jT53mq9QTJI6)Vn3qw?#pdX`; z#x-(+L1%az{fZM3vQ6UTpi_``%s11chN&^^_hTgQ5&p-hpL)Tjg3>50}dBN@R-xt!i7N`pJ z!4m+lp@u|KgVhLxnh|*nU{o@NMg9U9{Ds0+-U0=93ss1G1u*yug{?dV3h)%_jYv`e zgP%}XBqxAzpVW-VM*y!HIC3K`^?tnzjWjB7A|j{KM z!&JH6c0J51&mWP~9_DWLvGuUh#L{OlA332$QKLde#r_s=A%C;)Z(};icoZ9O>b;dN z!GF*tst{=sV9+EAi}VOE=n;iQS_By0Q&^-!fI){SY^6a^pnp?^NPhr>{!mz?J%Fo< z1NWRrnzWntlURAIm#xNY<+YLoZbbLm4=kbf)PmlolY2+d!kecrvF$aK8>(zlQXNTJ zN&io7{iA6QHEV5B(Zr%jkU+BNIaYE7F9RBe_{J;go$jnHNk%WDU~3J=XyYV1Dcv~BCYgLqqflS8ZN!-3?4(T7 zY@3v$%JITj1d(q8xnzDpHWvJ1tN7Ki)0w(UJi1J$}| zz0v&F9S$n|%x}**`rwk~$!a_saq!C<$^XeQjpP}dzJTaGmdQ5|C5D^WL47PF2%VCnJX^vh;n+?Gzxw9Y1p{<_ z9dWKB{#cKZLW#M^>9L*@GE^BM=+hj%QTZm~jVtaAj(nXr8XrLTtZ`(0VNHrIEY8 MaHTOyQOab00ezGD#{d8T literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebSocketsServer.cpp.9AFCD44A71CB6EAC.idx b/firmware-arduino/.cache/clangd/index/WebSocketsServer.cpp.9AFCD44A71CB6EAC.idx new file mode 100644 index 0000000000000000000000000000000000000000..bad37b82dc930eaf54f1d17374f21dcc3bbbbe12 GIT binary patch literal 22024 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WebSocketsVersion.h.10256D411AAC098F.idx b/firmware-arduino/.cache/clangd/index/WebSocketsVersion.h.10256D411AAC098F.idx new file mode 100644 index 0000000000000000000000000000000000000000..1ff83c227ebcffa78d1a4d17e14cd3821f572e11 GIT binary patch literal 330 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/WifiManager.h.1E867C09A6ECE1B3.idx b/firmware-arduino/.cache/clangd/index/WifiManager.h.1E867C09A6ECE1B3.idx new file mode 100644 index 0000000000000000000000000000000000000000..f19462e4f42870aea5c3eaa0ab91d97003eb229d GIT binary patch literal 3844 zcmY+F2~ZPR8pk`2=IEr;G=wVzXk!9|I|k$opa`M^f->mFG6Nz};QgLp`Phs}r(YlHc@jPO;K|5qC)W2|xY~Cs^Sd2Uxn-Tzsj*czYU*A; zK5)3B^Q1XMr`=3kQEz&6ws~~pDNot*>Z~6$1tHr#8Xh(H2aYXC_`Rd>fU%`*+`GIN zvzBzeS{L$2SMOP>*4~R@cCS(Hm@qufVL8!~dM@{P{(IHJd)G#MH>X5NCd_=icjHAg zjhvXc%kTMuloj9B=WKnOqp7{yrV_R0WUYEuL%Z1dA8oz4YS_~ZzqHP`-3f~WuIyyb zsgjKuv&SAv+8|ej__tpe=jAJJN(-1_O<`}zrV zQ{nC|N8b-YYn%Iu_ZV+0w~LRwk|_Gm6PaH&r25E5MwUOHdZG5XU%tk{MtS^Y%%!xR z>v@C;CQr*KS!H z7iH>w`ZD!}cX(s-40BcKw0X7!k#t|bGSWPoU{R<&zC8Gcn?uc!5e@^5&_gLjo;#y$ zSfm7dA~jJCc3Dy{HP^Y!oC(&jY{k zWCsRG9SAN=8YUA0*e{L_>0R{gLoJI~m^+Wka{@cPsy4b@(jUQ~Kszmg}406ME1RbFe0@&5|J=@mrj{ky1A+R(9W$*%< zkSXr0sZYycP!P_Jq$1sf0QUYB2elzrkL9pP4A~~i#Dbmqikkf4+2&jZIpS=MMB^d^ zu>I8IuivRim}ZA0*bbG1dI|w-;@~Ca`1_Y;GKj{u&PC@b1h6|!{bgS=;akiiEzCWS znrA(dhPU)!=M11oghhY6#``MZV5iJ)FiU7NDkQrRDpHnf4V(wcGJ`w*w%qv zN|jo#;)p$EQ&WC#UG#_SBC5!mo#fV8phP|* zkws2m8!4j)*u4imw->CBZ(@-r*jZGT^%<@1W^ZjP4_wb66`ngr8Z$%)kS!j!WPZ;! zrkO=ykX=PpSy%3-OWn7Zy}64;E@021W?ARHmF)3AzluFzkL>W{R@y0@gg{Wj3m0*= zs+DO=w^sQcV9-!Jd#p58Ed-eTuj9m*yY5Pkut)~OCs9c*U`IO@nqrz}o@S5-&W@s@ zEtD{CoJ-X4r83gC?LP1>&&RmmM6U|8Ul6- zo#FAO~^!)0xI4 zwxpPI6g$d4e>j5XTu2w$U`s`+{?M92PO-KC+#<06Y#0}Sjb)zJAOone%u^Z|^7Vfk z=6e6??22ekO{$#%iZo}G8~x!$0LAeRczVN-KyN%Gk8Y5G+PF7QYmkA~xHpe#kb%-z z<`E4tECkCunn4CCW0^-X$UtK}B~M|Hfx@^qk6@62zPL9}U66sgxHpenkl{-qu|Qdn zX--G#WWZYZi*tG4LMLD?o{48H$iP_Kn+Gh&Pu;TQOTYTwjAxQKNECy2K&Q}!LJI(l zhvdNvxd2`)^S}kU?#-#L>TmTs$hNnz( zVRm6OykMHs+G%Mx51LCL6U1<%XfBaV6vM-$xiMa2h64O(&fslO!BfGlVTP!|mdVNF z4iAIoOhZh5gRLT`B6qkJG-viO`vA~!E7+_XY*}O$Il!9cEdG`dXh8|WUy?69u>ZsT zxn-kY-1wIR$!Xj*Lt+0U7vL7)4f`iKLx>>^){0vr4WkBIW{o)zRzPxQy*Xj9Wl>pt zVFe^-iL%5%3u+!d55C~RdZ5KFfy{!Bgut#9zd>CY?-Y;X2>S zDpq#cYuoYI4h{~k@N{8Wco4q&!IV(_usl%pz<{Mw*eb`2?QBffMve)feh~e?}V>=AeT=s$>VorF3&f|@&EYn hVc^HgErRd@jX>Or;@xe_4GpfO!pqx-@U}X{{{SWydno__ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/Writer.hpp.7537CE16A11B5496.idx b/firmware-arduino/.cache/clangd/index/Writer.hpp.7537CE16A11B5496.idx new file mode 100644 index 0000000000000000000000000000000000000000..0b73619648fd04441f759b2923b08d6894ec18f5 GIT binary patch literal 1016 zcmWIYbaVT_%)sEB;#rZKT9U}Zz`!5`#Kk2=nM#Zd3>K^m3>9)J&=ukO!W%C6XN zJM*iqYHI(fgY|k{KV2W+`g2OVU)sGpN%C!9?GFEg;Zs#z%R);dYx~xSY~KCuL_}8M z^DA%q7d=e5pz`i$;Isgh?A(sD7oKj`Au6&Wis!~UhSChG~nvh@_!E0H@ii!3`hd%T4$A^AoO}BeFuedTdX)Z9trfS-Re%vUiEWjkd!oVfMDZ&RP z7&w4(Kro^4#Ofa7qzodYq zD42ljpT72MytvR^F(!7PG#@vgAeewjvqeTISsk@|1+iU#Q-F^PM8KpOic-^xmjL6_ z#P$f+jmjtyW*#n}QVy6l9xf3k5e}FafILMJbr{bkKQ~z7{&X2e9xe_B4rPdU5dLN4 z0{au@zj%UrFv!4#lO4}2$$sh;2^7{~(SQrL z|2Xn8B=CC+6VR3X0%Az66cv$yxr^z{g~#%RRg)N5xcKz=^d~?A2<8wbE^q+ry?wCT z+%(UT2OL~5NmyXB0EIR9bYXgVxCFTc1rXMWa*GPUtm6Vl2h4!UXP$qtx|*;7=x`Ml z6;+rwnU6iMeR@9g98g$?MMniD3^SjR3B?sKi-180iY%DfMX5Q7Af3fU$;H7S1}}(! o0B#tAfr;x4cmDqquNFzNaq{wW^YJk7!{r!w5KKMZbkI$fs; z{Q4vlTQaAQYvb9Y%wPXY*Kx)R8g_qRD6Y&+0y>JJC^fA(fQf;Dch{b8N99(CF>*0l zb6X35q(I>ErI#IN9!XZT3(ou_v~-TF4DYG4%92fAteqIo+ZaC?5H!jlZl5>k6jOx zNWg%HaV8`COh!1L_f8_e?8@W)K;6b1#&8EUCwM(#d3$3OP`HY#N*bm+tB-H8wrKob zpl}371U&G6a)e*}_UzFqpzu6Ku6c}biBi=^{9h?2o<}pyhgu?_L=aT;`zn<71_!cPa#qA{wb4^idP9lh1T$Eg_3}P_8 YS?Z>^zTc9CiJ6H3nBZUlm}6i70J>wv(*OVf literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/alias_cast.hpp.70B9DB4DEA0D0927.idx b/firmware-arduino/.cache/clangd/index/alias_cast.hpp.70B9DB4DEA0D0927.idx new file mode 100644 index 0000000000000000000000000000000000000000..fd3fea0e59eb911f43b838bfa3deabc31f51dbcc GIT binary patch literal 728 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/analysis.c.BCFB35330DF49760.idx b/firmware-arduino/.cache/clangd/index/analysis.c.BCFB35330DF49760.idx new file mode 100644 index 0000000000000000000000000000000000000000..5d27a68373a6478d1110ed3fb5e8504157e19b92 GIT binary patch literal 3006 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 C`3;l+ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/analysis.h.B77803E3D35A99AB.idx b/firmware-arduino/.cache/clangd/index/analysis.h.B77803E3D35A99AB.idx new file mode 100644 index 0000000000000000000000000000000000000000..d1b91ae2e6cc6bb43eb2c49243b991af77235343 GIT binary patch literal 3506 zcmYM02~-qE9*1ifCNn)W&CGDg(JdThl_~2IR1rcF{FAjVbEP2{p&S81>kqUp3)#_SuQl1&a#=Fp_8ZLywF5G1-m*N7 z`jz{c!+VOHw<}kjI4=F@(HZ_AdRA(`%9get|2NkBtZd8M7RBkM=?#%l=)nnAz1;cT15A)B_JX-)6hrx9at`e`9|AYgy1 z!Y0MUt0uiOHeQ}PR8o=h+<9R9rdC&I(_m4wMOwU&cEO{zAvP&=mujRiGiBt;zTERWke;Fqs%Qnq*Uv^FY1mNNxSo1F+tv5AJJ3!WrOdpB@%V@lHoc- zJ%i`^)qMV7%#z+see|8{Iy|rX@^ocjPuk&g)p>pzJ8ig`b&v1%9&4IgYmnsL9cAsb zrpwLxjyz-h_)?=}dAQWK>3G}4tAVw}CvPjc7KN`zrImXlIF@s*yAIFM+2>g5IhOZu zaA%I}a{U~s+5HuD-5YjWRgU!K9&?sej*HS(mj@s<_w$yA+a$YGJiOdu=(F4V%C0!w zKi{Tb>fPnrkQGz(Fzs@4+SY1WKwXsg^Tq#g>`A}=ms{xSR|Y3{|8&asMkgm{_B%I? z64f=5o!@bT?)6NT^M$(~a79{K4BX7ovNi|% zem&hI=^;OOw#x#9UeB@Bbia@k4;Y+fC@YZ3Dp;zd@^|qgR6q=2( z58*?x0r;7!h0bm51d2kM7&{V<6dQnJu8FKC2eUAqg>eu+h-3pW>AE~8yF5-zArp)h zB83(kfGzfJ{zkj7Opihq7<&<3>TCeccg%irqbk~fLbe#Y^WC-C0323Y@Jn{2ffa@H zFm@)K#cTlfdQvRr*N!+*NEc%{A*a{?yr|+0F)3LjCz0dSgFti?FUkNBd@d!^;m|zc z@a|M+s}4U3S>yRGgo~IBm|q}X{Dv!24X4mtj6?V#8f*Z*TKl+1x9Y`G3XvH56aHd0 z0F&t-WU0=6i4^)0T3O8T_u+gsf!IkT( zDoErEtH<-=br2y?MeORk)a|yesL4M{A$2_8fpQSB0rLZ+b^C)_v#Thijj)ApwdVoH9S9%A4stQ^E;o|i{9}9FHpz^ zV^_k}fDOQnFUL0OOCK~-$Q0vHeyD^Ez!9lovxW73S1BaL*qiXC*Z^Eu7SgIbCg`A$ zKE_UjlZXw#hFvLl^G#iEQOE`3`TY4JHULk)-cse_clb7i%rW*PJk{9%Tz#)c1- zWufUe04#)SMnTgp0{h^aQ4iE$9b7ZYff{UsYeqFtgJp2dCTsKKRpN!Fp$J$#RNG^0-#4d%o(qfMxj-CYZAo28t=wWYvP zA8NQ;d~H^s)BVPLSMep)9lzqy^91u|z8gBbeSqf&>33T%sF1Xb zD^mw^k#smWTpjKeREy^_o`t!fSX?uHg&Nd~YsRZkgHmzL_!MeTDXtlhLY*ADxzjz~!-i1~un|c*j*goLZz#SW-FVy2 z_me0|w1oQsQR7t@OT#K4Xk0UPh8o0-YsSh@o1~l>A5u;JgyqC+9H_CUS0ykfS(!;$ icFZp`Izz~iIiEUawmJS=QYzUnxpdqOaSe@)(EkCyG@C#G literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/apply_sine_window_FIX.c.A6E467A61031CB3D.idx b/firmware-arduino/.cache/clangd/index/apply_sine_window_FIX.c.A6E467A61031CB3D.idx new file mode 100644 index 0000000000000000000000000000000000000000..4e0ab3418748abe15675ee30424639ac19b7bdaa GIT binary patch literal 4250 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 YZU*@K#e$H~OfUoZzJMJ-@f$$?2Qq@`B>(^b literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/apply_sine_window_FLP.c.26D1F5C1A8F831A4.idx b/firmware-arduino/.cache/clangd/index/apply_sine_window_FLP.c.26D1F5C1A8F831A4.idx new file mode 100644 index 0000000000000000000000000000000000000000..b11003c0b238e7647b188b352640a9f7d8b09476 GIT binary patch literal 2748 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/arch.h.3CEEEA39DEAB0E70.idx b/firmware-arduino/.cache/clangd/index/arch.h.3CEEEA39DEAB0E70.idx new file mode 100644 index 0000000000000000000000000000000000000000..9f36215d82861a1092bff2234bef26332231ca74 GIT binary patch literal 1960 zcmYLJ4K$Ql7`}IA6kNuBI&>#sINe>h5VNLxq|Mz$YvX6y_@5+Oo~M(t1b zM5fKQ<)_rD{Rw-vR%k7!IBj&at+3j1ilg239o%p3Idi}Hp6B`A@4oN*ykDS?xA#}Z z2zknV5@VwiA_NE_G5nMXiall+p?)4hiC;9Gtcq)}vB*l2W>LQx7+pF%OM`c5=ub|m0V12Bt zFU-wRqid7cj9qNLa93(}tHAmFK>K_mwX^#r_vT&UhKDxkgD?Mn{3P_CN5^10f6rLY zirJY%qlZWSdN4YqYa8gw>vrz7X%=mJ>hNv&gPz*RH7{!U|0$DVBPmoRTb16nVm>NYJiyAX;_Xi2lbl_AHm26_0l7qmF6bGvgFA5bRAqX@Q z&76tNAg~t%Jj^yLj}jtN5F|^I=T2+}LCc0u5{BL54hsN`%=618k%GYI}&F+S+&GUp9NMj+5)Yb{q{ey@w{2?%K@f=jBQvz_!HJjKPwP4edq0mstXw zjY&3^GQy$iYWL`qp#_-IM3N|GNo*6QK}|tF-ukdw4D}z$TEAoxO3_&)NmEUQVV2^VPFiUSrZkx(i}-dH4YzS$0>G}sbtY4L7B+f}=H1Z%>_nWvv6IUw zB56x-Uqu?gF(ify!psk_-uX=ZT2sHY(LtIHa0m(E($_e3y-n(tWCAQFa>~?CD|51z z7cV#p9&xAcG6qu`OoO?*&#Xm~bsrSvK#dZN6FA$2KF*#0c>HoMgp49lT<`pQiBG)k zic}<<(Mmy6R~Oz{fB-W~k_n@8mBpC3TzzA_tQkgUw9KzHEs1TYnaaJWTQo ze)lYv&a>0jl>*^RoM*5@Z|oOoGt!670~|)exH_#`ZLX}FGkzIPU&13LJS(PWa|L?+ zmw~}Tv9>14>`pbnyT~pstq2FLPgd)?8i4(YKi3>KReaOQ564s#N;O0yW}c%og`|jC z!&3J}os7)j--bv5B!IJAsnyaStZu1W0WQX**f3Qi)jNIb!+1SF6kt+ds9eatkMhnO zI5fZl+r=} dhvpm^2v4|qsgZAPCPG}p5aOl{A+G)i{SRvI@~;#rZKT9U{DWD5ataY<2T9guzx#1(V)o;BoSQWS7|xL4qhqm{L= zu1y2`jMke5jH!n74c}0GQhQ(OM}Mgo>*R4S~0axEj!J0L#B;ox8CR7r+oBeR=>{MFwsF-G=5rrq5F;pi}^k7JnR3@ x^mSKAT5)A=63_t*MX71U5IQFjL>Ct&7mI@!jM|=A$FlS-jTxC3m_Py$003sCOCtaP literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/arduino_config.h.E0A55434C8F9821E.idx b/firmware-arduino/.cache/clangd/index/arduino_config.h.E0A55434C8F9821E.idx new file mode 100644 index 0000000000000000000000000000000000000000..f0282edea29e1cf8ba8e6fa3349adc2c13c6f9fe GIT binary patch literal 502 zcmWIYbaQ*h$iU#7;#rZKT9U}Zz`!5`#Kk2=nRP(A1Bff;=$>)pJES1MdLgdkUqsnE zld^~Bj_krOxIJMs2! zX>U*V!v{(d+T2F#8&@@Lxpi`dX`@}|ZgcfB=iBE_dwp@YNXF+0$E3xlf0P%~SN&x6 z?lAwGMuVxvmAOek2QU<+rWI=gUHLmO(l&m_8D>T}4CEumFbu zTv%YkDyf3<^T9x2Q4UeKA*KKSZ{#y7TL=^uSgBXmpr2@Zlbuu?GFaQ8E C;fl8a literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/arithmeticCompare.hpp.BAC4139809C59140.idx b/firmware-arduino/.cache/clangd/index/arithmeticCompare.hpp.BAC4139809C59140.idx new file mode 100644 index 0000000000000000000000000000000000000000..545edfb8ca451575df70a0003e02fb4e691db31c GIT binary patch literal 1692 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/bands.c.6EB29D34B15CEDE4.idx b/firmware-arduino/.cache/clangd/index/bands.c.6EB29D34B15CEDE4.idx new file mode 100644 index 0000000000000000000000000000000000000000..d40695ed62a68ca30bd495f0013e42b8faa7633f GIT binary patch literal 25740 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/bands.h.2459DAF7D0E5784C.idx b/firmware-arduino/.cache/clangd/index/bands.h.2459DAF7D0E5784C.idx new file mode 100644 index 0000000000000000000000000000000000000000..d1a64d3b74e9eba8cede2c52de600abc5a2fa90f GIT binary patch literal 216 zcmWIYbaT7Fz`)>~;#rZKT9U{DWD5ataY<2TJ&^tg#1(V)o;BnI0)@tHT6P7Vbr?*T?H)L)b~D|Ew-|T^@Gv7wunV*kE}VuS-#C^)}z438Qayx zUcUE#^CoF|>^8RbmjYA;S2y}T@7{b|u;=dGpsE5p$#ce*Zt6D>!)GPN7)V z{y+DM>!DT*#g(~9KqoL1rKS}_=$u3lU0jr0EDmBYhPF+u_^|ESX+|anCXfIG002~Y BQJDY$ literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/bands.h.86490603CA5F41A3.idx b/firmware-arduino/.cache/clangd/index/bands.h.86490603CA5F41A3.idx new file mode 100644 index 0000000000000000000000000000000000000000..40913b1e40b047b4aa638f4970f6bcb90afae336 GIT binary patch literal 3258 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 MkTx#=JrV%^4}#LKj{pDw literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/biquad_alt.c.911A7317DC3BC161.idx b/firmware-arduino/.cache/clangd/index/biquad_alt.c.911A7317DC3BC161.idx new file mode 100644 index 0000000000000000000000000000000000000000..09268b6355da97f9035622ff9ce1794da58492ff GIT binary patch literal 5140 zcmdUxc{r49`^V=RGh$3UV+&2TBpO?G5+>OtMvuL0W8V!Eq8b!3gtBF6K|+X-t;Lot zTX{l6mShPjWl8nUJip)cyWi*c|9c$oeH?Qf^SQp~b=}u}p4a!hZ-Swo9-12l(;*s$ z`nm=?Az&~VC+$ZH4)VOg3WLde!eF5}y{9Lyy;0?y3;Tt#@)Ald3&jd|nFh5pDI~|d z<W5`*Pvg>X+1of=G7XVc)(`zU~!>ejdcB*#VkVMhW_&) zr~H-8roFC&FsENg^X~h?1O3HGgs?veKX-Jmr)wU{4KVk+ABVza28%lD5wnN{kJa;6 z_{L!>fd}q<5aFshkC84uZG5!xTGiUlho?7IDU>fMl1BOk-+CVn$`XG4kl)^_c%6HX zjN5)6vook(?mWiPMy_yicsj{(^OTeS#A+YnoN5d&cJ6C<#gV_JW`AC| zXirA&>m{q~Nq$7+;`tS((y7>H{m-oByOQTg7skVCBO=$g=Z7@u6x*_Ix88Fhj=4*?O}eHK~pQ1s_yTglcDIqY#^IH}%RrocT=;W!d+oa36TULV}j5F>Lhnoj zT(UWSG^#JgSl*aaDNn{&^cWW>j=! zuE(Ed;dHYJSTx70#K&iZpKhqun|-^bkLu-`XP2*66XregjOTgy@fSmU6=>vFV|yFN z=yUUpVSb7%b>m#*_$#^L>D;d`PKg{V5&P3s+`ITvqsihsM{Lk&^f#k4;raklQ|;3P zTgjAgw!GQPYzAk9;)O4Ky&cOmYBc5afF(S3G=!oduG!Y{`bs3r`;$2;yg}s&t+i+6 zdBm@VSal}7z^|uE^J||$B^bN;<#3?v0=&g4I;bN*%I;Y2t%O^9N!2!Y2DS2bErh8~ zkIcLn5Ph+?RKXd~geAWhSf;jUPg`E@3qQ!m!N*}nEaXz+4vtQU`*0<*^bL$lrpZxI z$ZAeiuX&%f?r_U=>)cSkxAtyP0!#XVjX2X}>iR!?=bx(;b_XR3tA4|PM z#<>Ml6ynRG`T{wtaVwjlI>2F>l4Yv4pDMb9*pZBYy-)2^G+`Fg@pBg4!R`%=Kf<&- zQz1{?;clZUaVWfdyO(WQf^!~wx1z2+=Nv~a&sc6?B6US(MC6FGMj7%^o@j+vXw?_F zfNAvQ)^~vcvs2zzkB6wTtQWv6V#4tOg?O)n?xd?_xvrEggZ;vXE+0+y|Ksrkepipo zm*)=1f1EqT{L!YRsa@Ht=99e6bE&x{^&Lw)BC!q2KR_rZHE3IPST5SwIwzzmsa1Vr zjoWl>QrghNmAa6cjW2y%-aS_kGdLjGz%3`dgjD|dCXDj7+ioDy#^SC~)w=)*iPR5U zyqbAxORhW)%5lr@INPg@2Zp+FEI&Q05dKIZ2pTzb&)QDP) zJDYrJbBoRhpA-|C;T5b9zb<4@^rjL|cG58X5Rf^0po;6=IUn}otZ|;&ryHK?BOHNw zjxO&XMK4aXyFn|D6)s!7taY8Z9E$ji@C z#*oJm(fCo=CPl5rQZOzh^lFaGS}NcW z>!a1d-!BaAD+FWV(Q2V@FWrw=m-8+D_D0)t=^(4U{%~^v`^U#ch&X~Au0TXmqWFPr zB&mhzrbUPfnw4jdZ^k~nr4fnJ@XYixRrqB7>ai70M{PEdB!`+C{%7{5ZyGY)*NzSJB7=O|G7ZF-B<@+)~M%!yQuTl zSp?ZVf=Fb-eYnT=#}}MKyrun*=GMQQkxc7}{0VUyY;3-@MV4kjYHKshPc3mH2ls(5C#`>e|H`hAi(9qTi0T%&EZ;f<-zW=4s!>*Caqb$;yI0PUmwc! z%XsiP=Av5Fb*COa;>Re<(%LlQDSu_V@y7d!`o7OPXQsPrlCq_f)stYgk>Rlwor8jV z&lu{I+po8Z-AE-Cx@GqpjVCljW|(V`&zH4n&Wm?Z>_=)D_qaCY08Zs%1(A$!SI){wJpm*IlX`&$(CD2#GMVN2LV*23qv zje1{s;;XM;@fX;fP!ZeAK0ACfl_j<=Y)I2f+_XfuYRejZyIZJo|EtXo_@1_m-r}LP zyBFGyNSYR!`t52z=DJ3$+@-L}`iN!q?N`tmyvs?K@Fa?NvTN;Eh{b2E2tRwTBUEj|+q{E?Qf_YUtDnmjO8=b_0tA$q@3F;(R! z+r_E-=A2nt+FL`#bCTr|Yv z@X8Q8hB=0Xpbka{in?ODvJh1dqX$*>G5Sz+5qCMv$PDd9L~$Y%-K5=AA*#EyI}|-I z9$1L#iSdM@7sd;U-WYEv`il9=LgxC3`9aYi;|~oEzyv@s5EBT+AWYD2WI4cBv~EXG z5v7$0hr)3)@<2l=loS-D5z_1sRTd=+RTUA6zg2oUxV3~B!T+)9(DrPGGUH}siH7DV zb0`uJ1a^pe3Uvyq+8}IxtF%44@VkgHg6a5=y7LpE>VNw&7)j#U=PeMS#`OPd_m4af zArBt;{V(R#?i_t4TB_+4hxn8}3xf1n3|!cWIkJh9^I)dUqWhFFPD8pAAxL)<1nF*q zAl(rVq&tFv6{h9cGbnf%2Yq9-&cGO_A-xqqklqR)NcTPj>E4GR{R}{mUUUf3-3>vy zyCFz-Hw5YKh9KR)5TyGTf^`2vknUdwGE4?g|I^1A;{x{^(sPV-No>86O_Hnl46Hlo3W-+)cm@2SIlMcPRQ| ze4)X97{A{*6@gC(B`m&!(-u)cD4-#WSR<@|qm8#RHOv3Pst_&g5b6-L1<4>}{;dW5 zN8SjuZ5VMI2{Ot+vkyJn45Xq8LHCH9zzXs^>LyXofPCklA!;&Nc-ye-wROSS)|Kv8{8ug!=vCdA?p7$7hj@J z1c1SQfNih?Hob;o}$J#_VPOgA=)X7Yh3n+yZw%0k{op?d(sVDF)S`2GoK_pbpf70ni8f!Cg=U z?g1ZPZ_|LFz$x$!9M$mf($X9SA?B`TL%`k5QIOOG8bJdP8U$i3pbJ=>B9PC%1ruN# z+y_TQ_e&@r5I?9SEh8&;SV}=&@eoc@1((fgW)31#qYY4?qR* z%LJZ|t1qOEUm?6{r|Uf0C<+*Oba(m@(X0jb~`$N<;D`N(KM0kI$kM1f1- jGDrY%ARZ)wBya^pgolMv!G((;4@`r7GhhoKeu94io7@NE literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/bitwise.c.2E847370287A9D81.idx b/firmware-arduino/.cache/clangd/index/bitwise.c.2E847370287A9D81.idx new file mode 100644 index 0000000000000000000000000000000000000000..45d1274f7e6cc389262c70c3c207bb7f689461d5 GIT binary patch literal 11256 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 T*bSkO0Ucoe5(1Dg1abZc>MS5h literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/burg_modified_FIX.c.1F78F64E26DB46FA.idx b/firmware-arduino/.cache/clangd/index/burg_modified_FIX.c.1F78F64E26DB46FA.idx new file mode 100644 index 0000000000000000000000000000000000000000..3305c5937d70b65a12fe0c7128401176eaf83697 GIT binary patch literal 7916 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/burg_modified_FLP.c.D9F8AB4DD5431D21.idx b/firmware-arduino/.cache/clangd/index/burg_modified_FLP.c.D9F8AB4DD5431D21.idx new file mode 100644 index 0000000000000000000000000000000000000000..53f6f9684a04c7e240888bb5f5d3592a50acfa3c GIT binary patch literal 2746 zcmXw*`8yN}AI0a3$i6Sx4Uy82JfgZKn&6J#N^MOIKjd*1eIeucw+$w!GH+-MOf`pb;G1;K~*7>*tI@ z=F$tVC*%$p8{<=yE5|CFdc4y|qDY39$ZSpNi=)#XTDY_G8XiTQ>K6Gn9#0zmn;MZi zU;EmqciP(Vx-Q&q2Ltvpn`Id7`mucjyM~XL?th-rVi_EwW{$lV{fCCtwG>X!=_yEg z#N)U&e_NvNx_N29P<)r8>hh#e9GdGCC3awC{FC7i#E_uHR#2l@<8VuTc<9DZ!Wq#o z$Y1XU!mA#mvZ~e;`!}Xc)7YgmY+{w%%@#<(<*CUM-Hhw&qg`%mItQKK4cWSPZTOwM zba%rqT&tw3G54&)Z)Ez&c8Fml^;1878&ayXe+r`Ldn1ok7M9z$b=@w|@F%1x9h{ql z6FAyrNc8^RrphB%Cj$1c2FlNrYiaVEAZkbdkkg0Tb{!AU+Z4=F$ZFzO<#D@~xzkRl zimle8;-py)Ivrb+FEQOe)^}QxJbL)!29_u_)zMd&vAbbCD z(Y@Ol&S&ECtu^H=9u~}L=EV&rTi)F*-NN0bzx!P#^!Q4zA)a)@Nab2WWyb-N?(T4gIR(^J*7e<3< ze*P9RZ^wj>*S6oW@S?j-O?}xJy%Le8-G@5Uon@5HuTmrlT+s9SvC;^AoE2!D{pFlkB{IL0!p0FHpH@_)$B6_jg zIlN&Chl-r!R?L>GO;AdHcsU0n?Pp-B*rUH`Pf8xML7SRfOQchZQJE6-a z4KLGQ(jVw4>3b+do1e>+vmHn~SL~k2EY8k4lC`1X;8Luw=#hi$uTkJvb^6TW-g*G* zXKViI(s6EHij}ud9bFuGEBpG}f=Nqqt(>oJ_MEuZAi6WWNwbHp*s19dti)0^@^Y)N zaFOyMX*G_v(kN~0fQ}Tav5)f4`?y`n(rj8wd(OR*j$<-W9(E#Fuv#50btwD2POY^! z`jb<0ZW3dYL#!uxv;C+mH?@r`d@>oQTqu%XYc0)wILc(vkuyj#koC<}nj3 zB1R?cYHH1G)=fMjoOOC8MW>_b-&8GX?_^^;)ds`S!)P97I|m|Vm&e68??*7_vJQ_3Kwc{V=)^I z3K2!PeO&U|GwBI0A)D)U=VyefD4V4GbYk^0eMR&<0&Iu*bTalrVm2PcNY0#gpW<*< zSkSbc>ZELaz1c+&!|%LS@e@F%dm05Yk@V=)8pgh~6W>BYkZYa7`J1aA9x_wqNN2L1#r_s&Ph{Zf1-6pd0Br;PGaO!9H|>PK@oQXRw@+1;65PlVjt@DiVLpCQ zFJ-(omKGJsozGMJ!=6}P{OS2tDXEvL5htx3UC_#g9$wsB9j#nCCV*2GE<5(UA;4mN zD4^vpE2Q+j3De)tG9!zw5lXqZ18Ya$t0BYQa$9ve723Fzf+Da%F-rjnyEp2U_f?xKHacZ`aARS=0tmY| z-Y$+R*}wnA+!N*eEjYs8+KZKt^Ig;eqw9je=`+)f4|I5=K?-%i>?!qqofNl5=%kT{rUQaI1ldpse?u|+17+|E8h{Ek=z#(F z0K-5BYX-QMLJ7PC-}~VG3_4*9@<3YZvZ0CTDU7iZ`n07*I2lqQ9qs`I?!aBhfHa7T qjDhF`h=m(*5D!U^2sa@GZo@5z2)h=V4A=k4f=Ljcf*pW8K>QD!Pw!s< literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/button_adc.c.E4798A7D8F5B9201.idx b/firmware-arduino/.cache/clangd/index/button_adc.c.E4798A7D8F5B9201.idx new file mode 100644 index 0000000000000000000000000000000000000000..7b38d8b7fed5842daf3443e02cf312b003b183e1 GIT binary patch literal 10842 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/button_adc.h.BFAC535016678FD3.idx b/firmware-arduino/.cache/clangd/index/button_adc.h.BFAC535016678FD3.idx new file mode 100644 index 0000000000000000000000000000000000000000..84fc9f009cffaf09c15fb3950bebc48397cdcb27 GIT binary patch literal 1502 zcmWIYbaT7L%D~{9;#rZKT9U}Zz`!5`#Kk2=nY~O5425hA3>9;ZhWO?`G7vaBGv2UW z?iSYvF+FWRZ|+qW${0Uxyndon{h(Kp`!?s>Yk%D@pCllav32j7vc)oQp3khzx64`2 ze4k0#u!+-4b?%due_92e2RR2=EDvqhDaxy0d)TMls@bDne)d;I*zI3IoHb3ivzWiO ziRHDsvwt#p!L`^bpw@QAy6OKORcEGm8@Ocq`z>2N)qeJW8T&J8|0+uTf803Y+IA{( z!k5*ynqq(XDvtZSyBInpriDFr!lQl9{yDroGqura?$fptfes(;_zCV1@||&NA$RN1 zE``SnFD_kMzx!^ESn>b7kB`gD<~LmySnPCI_S@+n{YJiu3hK=)oDak-M1pocJW#&j zx!Wg&qyN~C{$whC`(VMFj(Z0-Io`W8ulAbVS|v&6b)Dk8FJ3f=s02^DTE2|q?)|(A zHNQVxsDEw{pY!Ky+0K|XW|uurJBqIpN!!u&ac{Wu=6gNn!4cN0Qau}wWfU7Ru01#Z ziO0#x>Ein4%1&#uk2S3Md#h(wVeI<2^;w5EdB$_v@f^+;*NbCQX7W#4vGHEE=7V2< zTC~^BGmgFC+_~OO`TeJ0)+ZHi_gahNHdXppJ`H`CCI6ne%}i}o^nJIalDekzb)~7d z*mDneo#1vi=Ffc>%&d{65-ekQY@1kbs?EbPb%EkW#@Ej^%O{%6yrT0w@lf&>oka_e zxaUriGj9sIDza)$mLxCxnasISX|9JjWcl7q@DyFv>Y&zhXR+n|NeBMD`|qWpe|P`o zfNOK_t?^kc?9p{X-Edml-}6yw8N$np%~U!1U)% zi@ot)qiP->gCtN|j#o|qOu(c&nh)A-KgqO_k3kS9Ez2V-0VZJ5>!)qp)KDw-mWP2K zX1hCwy8;6zH#?IQ$n~aj|4W{TEc(dJzzg)5GLy0>m|);!U;yS%pn{^*wBiRy;lRiV z@jui!nC}_6AijnQJN+`Nc{2I7BNLCf9E%(e%o9A~@+|T^Fg=>uiB;^Yo!o(Xg*k+! zpjsJVAqKPw98yqm?X|7k_Z+U30*&Mp=hT9!<`GvASAg?ifeADc6p}DSHIHr`I^*-R z5~P=fQy3-;)XSm(=e7Sh@-igwdkYJXxD1O7H_Rv=aak5wZdf?;h}+26D8mzlxI2S8 zJ1mf4z64qhiYJ&Y|M%^0a%HSq2^1FL5Rrok!%PGUgQ5*493Jtj|Im-Z!$4tC4p9Y| zFw72MpnxL~D*iL$#MA}y6W#+oX24*;2@5))D;aD!VXlP5F%uUgZlQXCS`-Y7VOok( pa}q%k#YM@*`XGh~h=2f57=wX948as%dT+}2`h9oXn8idz7y!y<^XmWr literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/button_gpio.c.31B9CD26C7E8374C.idx b/firmware-arduino/.cache/clangd/index/button_gpio.c.31B9CD26C7E8374C.idx new file mode 100644 index 0000000000000000000000000000000000000000..f7d63260e860c2f3cd91794f3f89d41689737b30 GIT binary patch literal 4296 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/button_matrix.c.191299C88EEEA98A.idx b/firmware-arduino/.cache/clangd/index/button_matrix.c.191299C88EEEA98A.idx new file mode 100644 index 0000000000000000000000000000000000000000..6a0688f7b2600a01fa67009e53d26d36c099f829 GIT binary patch literal 4942 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 sq=Rc98KiX-%Z!~D%9UK zDQjwadTHtj*{bnOc492`-VO8ax%Yp*`@8?||6A@k_c~ZnsZ<6f?i#Epw>|Qpd(x5z5nE zdU{6%xZBJR8#TxKYp`o@i+082q8AAZe8xwk3sKj`^4r#Wr8N}&sB@x?omw3ZW$~VS z8I4e>^1a)`)**)#)lT~crJOcEkDpkeopxjAlgv@egTY5y&z6t2xlUzfs2s;whWaE{ zIVuE6YW6wjqB1Lp?|wdL*wr!{AlG7^J=7d%K@NlClS?~2bNoL*0;GRi%zpIaa&kIjG4I8hbQ zHWTfjONl$&jA^`s3`;K8(0_%{%F$F`cm&mo1%9f;UU#etSxIOvucC1Rz8N};Ph~Np znLEp@xe5Bbq0oD*<)e3o2e|I}+U+CO;a+Gk)koFgh;$i$)gj{wHQO6g*p_>pdaABl zoSW3_3Y0mX#$&j}{H?D(k@V!wO3LehQ=LQ`%yK77qFS3mt0#|zVX534$dH$KEBL zarhL=IZtYI{C;P=WJ06IU?W+yfz4(e$nkpMo5x!avPeuHeV@jA^6wc0(X+?)_iIIg zOK0``*mUwUet2E}?esnDh4i|k)oj_c+OnsOCpD>Y>yvhqiu>~3l!RCfi1ssG8B%3x zm$u<5!z=@urskG-_KZ@y3_N!=oe=7OHszACyHW>Z!X894{|IstnK+Zeq`K* z5x3G_L^C}$TX6@5+N!~GSH3)==|e4kosx5Zuv)jxX6-kWGFHmh*!tmLh_s?(>9Lff zv(vdZqsat+mx}C%P2ED(V~6*)a4*nJML(5T%=@H6Cj%MSv(-X1UhIPWr&8RDFX~nRA|R91>tl? z#38s>-~@r)bg*dvTzEUyGp}>tAPnQsIJqqp2!+QP8Mbpxka$Q%SOq6giHB5$RdIq* z0`~~art7WEOn%3Nqy2I!0uRvuO;n(;hIsLI0JAp@X2PTK3IZlULhz7{WVZ15_+2QTkx-iakxmBSKg(`*jt$;Epnr}Ca__KA_ETZi04vNu3H8&;~ zQTj=otTU!!%B_DPBvHETFCO|ShwS=?U_6*6hSxYlP zWb*3zl1)Ix#m?TDCt_k%X|iS1Sk-OcxgA$|yVMzHwTE5m$?>f?`GuT7yTtVQ+2A@t zYBrBpPTyP$x#_cFsSmD}d(3Z7!OBQ?eRCzQay!?H=0SECJ9mzkTJjO&OeQcRjhS3+Q^}I8_913I;@44*R&33e=En6nK z!fqqDqRI8;z*&5m=z70{zUX@I_T%&G&T3bF#v6R)dh&jYIko%armo&6w;dYQWR`U% zOKHW<__#31oVPf6o(t*I>$tk;#=*(S7ZzfK2Q#KI#R)YX7zg8h|3ltYWBTn856Eki zoK|lHd~2$j2a=bH3~LT4ahU|B7xuM&!5%U(8cgzxVsg|valOZx%lHjL@zbIxj~;JxllxbwA(}~u4C_gCK;Xb{56`7!PV)ty~MIl48xRx-2Ive0V3jeMZqhile=!?{TvUttb<# zmg*Fnn(hKR<}ZSUBV=0>Nj*`Ih)dteCY?qFgOM?rBxJ-X-R4d^pKtq`Nu~qLoUg|0 zNy@sO?2Ya13b#k1H)1}yQlL+@PFz;8l#Ft-5pa_)E0Wfg4{zY2&M?R;Tjzg1u7ep( z;4v9XxAh1o!0`{%*7n#;=lYe&4|dl#uK($})Sft_?x1;w&!6PxUwx#B1GGqZsJob|I0fqBBWB{B`5V!#e5l8L_c|DddzA{ODgKl zEQMlta1MivgYX|2R;mR%>f*X)dZr5BXc$LN_63yoe7#KfQp$5T5Ce@v6en|VI^5@$ z*jHj!P-&Pt3pws&#@g68Z#u21`h{wBd90f{w$J&)PCuQK1e*);&81a-Tc36(J#=CU?9ZdJyl;n199aoMu7EI!8Pir6VH@f1|! zvQ96IT9OE6JSeo&08>!Zx5zjNtv6|1M8P(hF7sPz7{ZBx^JQ#CZ5@Ol+(_ieTx>!D z;TQ#vq=invw~?w8H(ri`Jgjf@@NS^?p2FynkbGi)wf2hOx#!=5{Y*98UCipZdIU=O z75AU{A?wrb^V2itk7!v(QP+ID7Gv5TxW&Yo7%LnlQkl> zY?x{PwPS+S(%SwC?~CYLnJs7c&_@NIO}Ot{sCI>Qh(qSrbL}zl#VltR7$67FEAev^O6e7RfbsET`XcAdm<@$|T4t|tQ3O-1JZ zmbDfdwbs3S6h|EqG5IOrk>n!ILl+lU5Kq)o ziX8O}>Z7YRFO|+OR@XHMK#KER;TGLHB^5nkpc8$6-g_a-i|H151*yYtzM5(7aOIu8 zy`gI^UNwUAQy8&XS#7vva&gFLnb^)h=@yz`le*Hl> z-;h4_bDp>owpH1duk@jI3-q@3+g%TAjf5*%SK7W;kkyleJd0|}9 z-$F0pLYx$YmJ7qOMG~uOQr!u{o@%5ItEwH+ce-pbquVUgh?;(%plc422YXcIJ~F1{ z%PJ2e;uaEtz#|2z1P_NJBY`Rs4kPH0un&>Qp8(-VDx8zE4=w!P0rdaPJ}B}xXhpaS zH>^!hAsO*V5lRu}e=6gV5|k4EP+T3$*ay#{Clm*1GRI`(f7=hJ>@nGYQ#1-K`&-@3 zja$vVVm|b@OF>5U_xmrGg6zL38jV)^txkk$#0Q$rjsI#%m|pnT-uO2Ts5qtg!B+WS zSh_1FWO{`y|0*s-DfCaP2ULbrM&Mr`L9?Uze^Z>3hy5?V56;m?{8tcuFu?x-@W_pk z9r1bfJOVNTc_2jmUvs>M^$0nb;~wn5E|3rIMc9T}n1=7L3`_78zQGL4!yIhF8Z5v% zYyb&XU=^l-gNA{gmWi2@?JyVj5%xnoR4lBNjMQ|zuizm(f_%sYODk)eD@E`Gp29PD z4lkevy5T)^0TKR$LU8wRGxWOdJq}}_s&ds;?aTo98e=bf1ZO8Zeq24&K`o$qK&S~i zz|_pd&wm(3U;)?z72~H`UehrPFr*B~X0W2s1jvLzxDVNo1rMMYO5ib+K^0WPOK65S&JLAq2zBqfx*poEkINFyLA zdI1SRWJndH9^Q9-@BMn~`_B3HTKjx^owNU(t#eI9#gGz#P{LjFbFuZZLLm?cy5r^P z<>4rO5`o}wKp^}c^_!Wbyp=vZaQ)hiErdy(7M*42Q*6N{5KGYx@Ccjazc18X73Iuw zO?xRTf16*)+0eX39>Epnh#o_0sA%ClTeeZLo511rE(i zZyr&-P4_l)TiqPCbz_a?9iE?0_^Y=i+w08q?E}Z}^Zi91)|$2p=uuggSmSu9x4YI8 zf#05vxA^nrFLVTo8JSUObG%`4lM1?6RZlzCQ)fa-ZV+K9^sPn1mv%dR_Ze~S=7-)b zBIjJuhkBxU*@OIE{se7nK?`H5F2Bv$k*{sIX1?D3petD|Xr`D2+{C4gW>(?xw_m+3 z@XJVO%a&BrPX}5|l@4?-SO-mQv^mId^pCfx5*8zxIs7~hwJg1w{Z;McZ6$*sepGy& z_h!sOKpmZm4hhk_IrU2Q(2rGX|C0%~x;sYgCPEHNfAqI5A1t+@4Ev|Gr<1;~Vu$oZnp=@GIrb!jgHWygJsMLRZKk$| zZvvVg&eWJY=d>E6>^fCpQg)Yu44(LlXO|yo6>h~$+6BdQcP{_9jQK<2fc{L^%iX)B zr!yBi+U4#K;AB|h_%$}&Wz5>9o!vL~p3-Z+@hDN^MT=}EGpDw2piIB`4p-%TYHF;D z91|tya4i*;EV$%EFLHH2nc?w5bc10g15c0O)KFQam9xWH>UUp|PJZ0t!cN?5+e(GA zFOYkV?y_av_QKPVs)FRUuk~Ijt8G1!R!T26OB9WHq>DdgOv0yaHy#dKv*Nn!oxWz+IFrS{kwA9Y<3$|~h}Dq;??uw+2Kb>Uv6hTfO1Dp4uf2kJY&TNOkb zN+whIreA!eU@~8`_t!a{@B#v#pKS=!^DkF3wEWVXM7aDsF^&5Yc;fkafyh5<+RUOy#3zr5Y0EzW@TSKP-?)e_Fm1xXia(! z<{-MRGB50oL0y!eBu$+YrRY52lV==a>$=kVZgvVoVzOLrXN#T{Y*7XD@msy7-%tiVI(v#iK4EWu%tnPIP8pyG(KE z#A0kk*V1A*>m=Q(1G=ssvpd+@H}E}7>DdKJ((e&yDGPo~kH)#dHg-MQ&!|`TNz;w$ zwb*^uggpBMsS=8reU!|(Wv#4x21TEEs<%&clw4e@z9SP+HeyHUW@Zt;UY=QL!jY6j ztBaFYvVAbj5#Z~Ldl7fa`G%ORGBFs-bDQ;6T+`67lM#!|!Myr7IB}j;?VbwCTxh?Ru@e zovuEsF(JyCB8fv^uwSuC$v`%w58qX@L{*xv%|(M*n_DcpsnlblQ{p7q#TQGqT!X)6 z%*6(`+Y7ZiaB?IP% z@(J%cnR_+nqMU6sZ6zcX<+I{W1qQ^p3VfY-?b!EvMFi)VkGInBA0t&al2e;`=1Z@c z(RwAFS3Wh|MMUCWPRi!X(Pwhl^*c{rx~dh|Ie2@a>UGsopGhxu+k|6dn<7O zHU^BXHTlJ-{dHZkqckU5sD|uI?WlD;O63I){aslX0#EG#d4@IjrxAqu+sdd&ig$IR zrl*&?IUG{?uWPw&Xkk988$78^>&A9v+QP**7Z_r1i7I8*vs2VH`jsdS%x97e_oMM6 zqOq4B*TyGA7&9=ksG7AI&=((VBqcGHrsliKYs$UUsR`dCrIDg1bI7?hVt94FY}&zd ze`U`#?;F8EHesnt@&2mtJ;tl?Q6-+tzQ%p-H$*gJ|FG$f^N~IKF*NJF^=v@Q@Xd!k zjU(hHcceSF zU4H1FU@S!)&YIV5F2F0USsgR&uPDzksS$#s6!X#UHJefw%h1OQKgLSF&c9$e@3UdK zR}m1LC>xLPdDPUl)-_Z}C8wcvWorM^+T1%`v;y`^+<>>g3=u`aEEv@1#T7eb*G1CU zT1=0f2^Vx)axeeErXu{2iIwvE(j;Y# zrSI(&>P?2&PjK2G$ka-=$a;dYt$rHvl(+Lm-6G8~iz7E?I^(zJGI~qcu6`>~+iLaa zQzf%UwR7 zANO%O$}MGAiGSGb6#K-R#;a$ipsyTmoQO`3tj$8^ezfeJ@I`Y{yxh`Q;|tAI)ol?J zyeywPp0^*;#BfM6J+^bB&`V?=Z{CoAc9T^jCc7>i6kK}wIsU;1!?TI6UGYtmzWeUm zw+O#wZK}Ig#M;fTZojE6xNzE6oI0g*yrRJi%jglKZePK>w$J31{c_gR-^Kdu@f`JR zXI&wE>F6dUA_9p(gdurIc$h+wF+dUnOo)?6ID|XMBY;pOiHEJ7CoLcl=c}Gi?R;EC zBT->UAx0stUloq&dAjo)zbH8`bJ4bmjuZ)H7!r*_Q~%PBDKComf2kl!@IUnb*JNaR zcWwu>tcpA?^3(eG{(s|`{3cc%Hge4L zrvBCighhYpvq1_memb9Le%fJ9VSbLCf8&@6pahPG(tqG#>umKi^z^Xt6!;m09=Gxz zKp1je;`!s~XVD(WaO80!{J%LH7o2n8aYy&z2kgQ3<9!u&VHxJ(8>|5lKEVwOau0kz2lY36X5kb?)qD>v$f#xcnJ+q z4`&7e{R+B3NB4%e&wKa)Q}7IAxq0{{FuZ&hg@i@Ui=Gp^ATD@TKynnuKuSis6; znx@_`=o{QLw6to64tNcn&9unX_q(UMjK{7mm6bKFq qhfuf+5fBDcac~a;{r!An;C4tB%mVvI*ntxVfcO`?GKzfw literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/bwexpander_FLP.c.B1BB441B0DDD9909.idx b/firmware-arduino/.cache/clangd/index/bwexpander_FLP.c.B1BB441B0DDD9909.idx new file mode 100644 index 0000000000000000000000000000000000000000..48111b49e15b6255a7c8a71c0ba1d1cd3e70dbc8 GIT binary patch literal 2744 zcmXw*XE+s%8^+ILk0V*x^T@F}P9!U`S0X3HF|$WUIOhoQ%B*ZcQWS|^70E7pACc@` zc3EYQlKOi;{O{|zuiy1t&$s)_bK{Kk^-Gu#2pt!rKyO#FBMkz9U_Ua6O!RDJKp-~V z5QxC61v@*^gzSkPv(9a=05`57zk?e!3iZBDRXg>G**gX`!EGX%XBDZKC^vRT*0f6b z(BAz40jdU%@D3Dqktg(i(*lWz?30~%c|MH(N+&^Mu`XnwrnW(%rEP~^-u}z38TFg5 zzGnkZ?+!DrxrW-GG<0eEp;rIsO}I?UzfT#G2^6&zxY+bsgPOTFwe~CX{~o%t(ekQ zUrS?BOPh5L6tJ zHwb}>MP0Q|E?)gBmO8dWR=?FaKj5+hu@zarIWUxiu}8AsR@!!y?XNVsoEA!KXWsNY zjc=MFhaMhm%4XVHdE!ngUihe(FiqEkeZt=$y)EN#w_)6MRQmM?8Eu>DUA0&kh?j1vUnTiOJP@=(wntTw$R-k|6exas4(o?Fr05zlC&SyvVjC%~vInRIvXH+sl}$td<$ z24iHfV1gGHIWZ&0&hMZjm}%dOwVV8b*O3#Co@SjvNoJ7q9I+z2L@o}t%F%nllWZQX zlk44g<*&~sn@>osjEI!KFwC*xsh>ST;-@-ul@QRbChEa#fM85`m;^RXu> z{IU;LfX*xu72tptf2o7+z06#|z!EWS964xzqY`Y?F2wybMu|z^`J6IxPpdjh{)`E4 z1iQ*je`)GnS;rUCyP;SY3m zf6Hs|1m~p>l@(3rYwzyrlW^KTi(H?X7n666@&E0i54YU~r)WWdSh<4XIm1D`m9L;X?|NxtNasHFpmjO+A69>9ZQX5yVE($p-pmSY z%`_f!Yl=l8OSCEq9rN&7ww4g#oSwudwM`3R%%quyp6<vX~Dwp!rfj*e&6z3G9?>v-gzM3Yty0RuCfwKdgP(^g#9g@&g+Gg3hYV-4%BiCPGK&<)~vg5^3GD0D&5J z&34hN98?)&Lv5%L-y_3cCX#V1H3GecSjw09r*Fq`pHH)`aAsDXj0tQqMl*0=lAR(| zBM!Yh1AQ&zbz1a>kE_hjU&b7oI(6T9J>&b}`k>W;fb%WSCn*;bJzsw{W$-A&FPWM3 z3Ffm+&_<30so!}WvW+Da?v85~uDCOX#NCKA;vYr(Fdomp=A19eD_K}=UH7MjdJ4Cr zjAZ2EF6vAak;yO8w7Z55GEKhQmn8a_hNoBio|2qg@EZrw2YY35SpG$K)m}Olq23S*(J9>*o;VE%u2V?>Z1pL`FNK-+k6YT( z`+`lqHSH`fNt>`b7i#(E&J7u4Wq4N~$gi1Cv};{5NE>C&f8I{6X-!Adbf?tC+q8=~ z+gKNkU%hW`=TjL-9OFwG4of*`i)=XhYcz#(4A(lU0`_ACzE{j}ds4W4ZXc=^tNXLJ zwoFafDk2iGki%XtA@D% zqfK1duQK*2J@wiy$tU~1FIuHM1Q!dP8z=2{CsHR9d5(8@b92 zdpvU*lLVK(v1ANjDXS#>sJN~~N7yvYJUKbsJM}=lM5KptuG-hA06Edts?q3dHhUaN zJX6f%cfX0_^d&`hrqs^l3%SbAzYqd%KH&VY$dV`h1LfAk{x9EURf$<88M-BlqXcWn zoHahwk$c;G`hpf)g@aC4I*pd>7IMPfY19e7jiXsZO8OQis@#Vx#Y=J0_Ll1bQ_0hB zra}+WbkB*`#r@Hf+rfSBx8>#QUp?Lr7TT7SVW_z63(4=b<--(VKD;XACt0(^xzSb{~^ zf^}Gi4cLTv_yKD$101xB40Oy$&g1M{C%D;;@ldm{QZdoc^VUK(JcV3%0+v>IYnuXi z3#Cv758)AHLKeJ$f8iy(f;UhCHP8r6@Ck;XA4Y)! zCY@kg3`Ou7uBU_BGw6Ux$N?e2YwEgs=e2Y+HMETk1LGk9QsF)%LJ}lH8l*t*tuP3U nf^fJU0g-SIqTvq2LLA(Mpn#kHF%a_4W0(TIY1jog0L1?QVS4BD literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/cdecode.c.05562B896DBCC13D.idx b/firmware-arduino/.cache/clangd/index/cdecode.c.05562B896DBCC13D.idx new file mode 100644 index 0000000000000000000000000000000000000000..37667d31e7e9da2d5e1595ea04794692419fd197 GIT binary patch literal 2734 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/celt.c.9E7E2B8EA3BF2D07.idx b/firmware-arduino/.cache/clangd/index/celt.c.9E7E2B8EA3BF2D07.idx new file mode 100644 index 0000000000000000000000000000000000000000..2561a12c7c2fb65398ea844b0a01bd31e2de398e GIT binary patch literal 7084 zcmd^?c{tVIx5v-=aOfQKlrb}rLdGP?ERjMQ3}q-ONhpbArZQ%pr%>i8mCSR>RG}ng zNamEvl)C3Q_k5l6eE;}8&wcLw>wcaG%WJK@KYOpW_j~V;(LrtP``jp$hV8-Ym(IFc zQKC>NX55d9tFwJC4UW5_P}h??EiSpdS77e9`-=_B_0KUpX8OM5Rntat@}FFZQoK@M%}F|ab-(_@y8y(~nHny2nX0Mxa>vV;zd)sC;9-=~t~wCg<8AA_3Zi2TK=q~2w&*h}%E*3QyQuNFJ z^UjNRvH6@Rl1iDV$W}f-q~$10omI{rR5MJokQnBe-XOX@Vk?LHwK9{R_foN`;fJcN zboG;}r$g4?uSnmdZb_u|qM~+Jt`>;u?Oe|MYCfD4vi2ozefP>9Ui}eg`Ko36R~YIK z>JP+Nt~AmZ(hh#)3BsI~^gnCWjaK3e2|358T(#RgDOmDB!uDi#On8=KzvO-@JN=wNS?~q%V1L__2@Ann(WQwp z!^`|uv0BIl3YLmH`UMd)ubOuWDh|{cpRe_G8JY)9queGCUC<;IQjRZpm{IdT>;M;8bg)!i)n0AmPPhg9hT_p%G3H60oZ=@f$!0VuY#vHu^qe=JrmHDvo*cwFDr;Fj zTCn}{qCWB{2MtxYpHO}=9rGW%?LAqDKGOxIh8QY=(D=?>zb1ELU+Qqt@3wh+r&_(j zJU2SS3VTsD)mqUmr#@BWOfJojkrOmZcMmxn zeYHb}_a={^7w6-N;qzzZ9lD}qG%V+?PTWUbIxkZ-o*wZT;l6cgXPe_^t_qop9eY?_ z?%Ko3YX8}thOayMk)Y0ii3G0(un$$r9yG_id0bLIH!P#u!LukZ#(qSix6$0=fi+X( zhZ_~*Ll;!V%C`^;^*<&GK4cfA&L&{9we@x0q9DIfK; z#q#U=-fgo%drn(rwdAHukIJWgh~(8dANOR|Nayl$eefgY^?cDsX3Q0`7PT?Cr#}it z*+?bt(|$0BcF5dAL2DN`CoCb8d+P4C-OQ>&+Yeo|uN2bDvx-BwO0n+pV`c>tCiC&Z zbF2xKBDXoZ^g1zPgZDfG_xi1y9C`LL={5%)ySu-xz;+gq#+{U{?<3fFx~_#{FD6)5 zTPC*J##(dbKb+uMbudrtH2V=?6jWH)Xky7Au+F8TZ}$7K!jZw%e9C#>_h(*F{c1Hv zG{xiD)FU~l#2=g0RDJU4w*S?`fMH`Vd>+Qnpyv`+)o@r?TrE{w)!#wz%mJ4!Lx%7h z-G+=W){>s@R-U{}^#j%hY~?f&Az8_%Ii^z&c82sNPn>8+_j$ik*l9iHEAMC`*x@-w zzq5nxIJbH79ZkGG>$hDi^<)={v*f7Mk7Dk@rMjqw>n#fEm;1dC$Dh*{131 z&Lt%?ruBt6ubvG1_qx+4Q~Pl(7J8d?n)oUWU#R;Cw{BHdhCB&(vx@B#b`P`H8g-N$ zI-nsbBzQ`or%k?I|L9W1$q7|a^M^|2<|C%v_Etxi*rGWnur}gWlj?2xURQW4N4(

#nW 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 OVG@L<;4fhPk^cgL3Ngn3 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/celt.h.CA58998BFAC6E270.idx b/firmware-arduino/.cache/clangd/index/celt.h.CA58998BFAC6E270.idx new file mode 100644 index 0000000000000000000000000000000000000000..ee9a2789608549c7e27089b6837b96a072ed9c51 GIT binary patch literal 4566 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/celt.h.E4A2469344163B0B.idx b/firmware-arduino/.cache/clangd/index/celt.h.E4A2469344163B0B.idx new file mode 100644 index 0000000000000000000000000000000000000000..3cb7ea813b1c02e2f618eba50f8acbf4ed128577 GIT binary patch literal 214 zcmWIYbaOk$z`)>~;#rZKT9U{DWD5ataY<2TEs%Z>#1(V)o^|9pWFX-7FizuV=gpnM zB@Y>G9A^2vobZBY=9aj4tqRt1{(FyRi{+KDeK2^{7BYEls|WYl9h0sqc13$T>y_)= zng9OE$)#~-b)0)PE%+GY!J8uGe{PZXmTi(0gRms6HZ6`@%zKb!~g*3T2NpB literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/celt_decoder.c.3C428D99FDF25CC0.idx b/firmware-arduino/.cache/clangd/index/celt_decoder.c.3C428D99FDF25CC0.idx new file mode 100644 index 0000000000000000000000000000000000000000..ae3526c3f9b7a22cc2ba120588e0925747bd202d GIT binary patch literal 22682 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 BnehMs literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/celt_lpc.c.D6E9D12870997AE8.idx b/firmware-arduino/.cache/clangd/index/celt_lpc.c.D6E9D12870997AE8.idx new file mode 100644 index 0000000000000000000000000000000000000000..705d362c48655fb667648931739735e58f0e91f5 GIT binary patch literal 7270 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/celt_lpc.h.51B81CD20C794CB9.idx b/firmware-arduino/.cache/clangd/index/celt_lpc.h.51B81CD20C794CB9.idx new file mode 100644 index 0000000000000000000000000000000000000000..707f1ea98a76ff64384cf67a6fbbcf943066c6c7 GIT binary patch literal 216 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 XxG1?8lxCSkl3iD>KJ}}_kAVRIsarA? literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/check_control_input.c.FD3CB76594E5F048.idx b/firmware-arduino/.cache/clangd/index/check_control_input.c.FD3CB76594E5F048.idx new file mode 100644 index 0000000000000000000000000000000000000000..a41a6bd675b6b6522fcc6653335b603b387e9c94 GIT binary patch literal 4354 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 Iz#f487wtujy8r+H literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/code_signs.c.27E66D33827190AF.idx b/firmware-arduino/.cache/clangd/index/code_signs.c.27E66D33827190AF.idx new file mode 100644 index 0000000000000000000000000000000000000000..f11315c0091489ff42b8f7db282f77b1d8e7803e GIT binary patch literal 3996 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 J`jPaQ{{!@N(Qp6& literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/conditional.hpp.4966F359B23F765A.idx b/firmware-arduino/.cache/clangd/index/conditional.hpp.4966F359B23F765A.idx new file mode 100644 index 0000000000000000000000000000000000000000..3b95f620ca9a0fc71b06ada5eb49f91cdd4b479d GIT binary patch literal 710 zcmWIYbaUIs#K7R3;#rZKT9U}Zz`!5`#Kk2=nM{lf4Dmp@iaAFo7-kD%)|0gN=y{{Lk)LY*=>fiDXCZR*@J^U-`A2UQ;Ig zVYXP|`TrJsN`Kcg_V@pFkIvrw{N8ONp7Ptr8`O+c#CI)|PP=J7apNty;>z5l`M?nI z%C~Uev#v>ijftIwfs31+TL?@raDsw~fsu<kVB9MOu(cWic-^xPXmpCxs#a->^{A>4|bcI<~i~}3%1|{7O*^Eelay`jfWi_C5{fWkm@Y;xu>W8dztV15MZ1$hvr7v?vhFvw#tRX{)GB!a9hE=n#I2hvPjoTr_0cTKwWgpreh6XqZW F1^|g;+|>X8 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/control.h.B5BAF0E0888C4AFC.idx b/firmware-arduino/.cache/clangd/index/control.h.B5BAF0E0888C4AFC.idx new file mode 100644 index 0000000000000000000000000000000000000000..58b3f9c9b7324a99fdf30b8489e7937a18c0f47f GIT binary patch literal 216 zcmWIYbaT7Fz`)>~;#rZKT9U{DWD5ataY<2T1Cag-#1(V)_8IaWG7w<-tXQ3T=c1zH zLFS5vVv$3=%Tv)gCX4^oy?jwbH*~ylB zS}(o(*Si)ho2IRg(sXXqa{La_@Q&we|DyxQjVH^FlAxSZ=dV`COi6? zC%r6e*}reqyKAB}0 zF?g>fAR%7)!JO3IUlB8JvjAYN@@4(3%&0LAKTa!6z5)i=A%2wS9L4W z{Vy*$@?F8|J0W$ue=^-&`hv+u5+;}qT2~b3>fi}hhj#{8qLz$e#G500H78bcI_H5X z;Az9>HAAu8T$ky^h!+frQN>J<3*wWLt~C%k#pO~X`BZ#nhmLpSW`ND2d8}Lz&vSq9iPy9SBO?M} zi)aay3*wc5tai#^{cJm<{BYMCl(WI6O;?e^@m|BxozR$=rfNd(9PA-U}BOh7jbTn>t z;4oE~j+YAJ+qQKj8LbVqj%8WPsn&A-yyJjF?xyLF%rQ3aVnl=q)^n=$T!8a{Lo)s6 z2hKQkWiKP1Fr-i{43G=r+)MA2^=|*Pjghf{bHp59xggH?bKwu(TMhso2RKno43G=r zugd1>J7)VHWMn+xY%yCc7sMs|lXnm7eXo-dHQ?pqatR54W} z7sT%OtD=&W%Hxa#05*z7AGsjbs{@0>Z+L&th!$|Jm^)rBh_`nKo%e|C?sF_nzA8U} zmkQz;<>|Hc-&h8fLWM5lj5!g1-;23?{8H zKe)q)25=20)^I+~0}jc)er)s3X?gb<@rNPhV!2i>h)G3$fi=|QsUtWZ&EOEj6Egsi zwBSq$8UbQS2Nyfsdxq4Cfd47#hP+b^;$q;~3tFz{k^ghL#Zce45Yj`3by@ z+8FL60j`$XIfj=nz=oh}Ifi>hfVZEn=NN7b)Dzr|!%cWUI2i!RM;PO^Lo9g+V^k2t zl7BEp^*}6n2V-0gh-K9{^STpnCrr(XDS$Xo5eT|;e9%A;OZveW%>%Kd9gNX95KFqj z7}p14Ni!IKc`?h_(BHWUVn2o7le@&H2eB+1=Wtv^h@F~of{^Z!D@&D&>i`5Pg0y&c zTx5tH>Op|c0U!wnV{{F~l4vkS$3QFz24i#!#FAJrMyEh52?b+x3B-~}Fh++!EC~c- zbO*$eI558SmZ7>Tz5g$@z#FJRz*yiDX`)M)Op{$YBQ?5osWjE4Gf|UEmq9aJIx{u9 zblEi9rOTl?E?q9ob?FLep-X3>7MHFB{%t+I>T+7{(pAz*mu@*-?$T9rw3>72YdBi- zw8yOot0gPcIRh#bV#%L4ZzT1(b+eZZLp(__>B-B2K80A4DUL>uLhO(z0<Oww literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/control_SNR.c.5699C987416CD2D3.idx b/firmware-arduino/.cache/clangd/index/control_SNR.c.5699C987416CD2D3.idx new file mode 100644 index 0000000000000000000000000000000000000000..3bae090291bd597da27d51acd9fbba459c86c321 GIT binary patch literal 3472 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ǮPbh3Cjxz3dxB}NJ>eI$;zA&JuRXz z2tIJO;xc1*CygkO2z7Gw=cw zf)Y>)>cJb(4En(k7yu)n3!u7zMKO2@ihxTpaLfUnU<^C~Jlxh7w6xVVG%u=Mx_ZSg z4%`C|!2=Kv62N_s1QNlW03rwm5g-(VfG`ja?t(}V1xO$kL<4_cf=>(x3`z%+;N%qe J2`KgeJv~bp1ft_^7((y}aG{4l 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/control_codec.c.7EF83A17B1300FEA.idx b/firmware-arduino/.cache/clangd/index/control_codec.c.7EF83A17B1300FEA.idx new file mode 100644 index 0000000000000000000000000000000000000000..88955685673b05ddc0e2f45fab2fc714fad1b93b GIT binary patch literal 13732 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 LhCUz$LFB&xYl`nD literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/convertNumber.hpp.3683DB44FB581254.idx b/firmware-arduino/.cache/clangd/index/convertNumber.hpp.3683DB44FB581254.idx new file mode 100644 index 0000000000000000000000000000000000000000..ce696654225f790b9aa11e501a800e81a16b5ba2 GIT binary patch literal 694 zcmWIYbaPwB#K7R3;#rZKT9U}Zz`!5`#Kk2=nJkP93`NWg3>9FR+#^+G5uW#| zx2!t4;>VjGGtQ>ByNK=VtxC1B(K}KlbmH0c-K{rTc3r-Izw3@i*lMMbG;#UFsC+2rR2OWdC>!^p!W%pj}`6aj;#9n#WC$~JaD;VwpoE=EO| z1k84BF0ie7Zy)S7H_db8;!;x#fdG%~{ZJY4OJob8N~Fu%iSMlPt&VNNSb%}E6LrMM`$*c!y(1`%Mu#N{Ex a_0_v^X&eg&CpQlR2TX#2ffK>xK`;R(i02^y literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/corrMatrix_FIX.c.F102DAB71FBE809F.idx b/firmware-arduino/.cache/clangd/index/corrMatrix_FIX.c.F102DAB71FBE809F.idx new file mode 100644 index 0000000000000000000000000000000000000000..1796b09ada0932dd36534f8750a6a30bc21060e7 GIT binary patch literal 4394 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/cpu_support.h.31E386938D1FFCC1.idx b/firmware-arduino/.cache/clangd/index/cpu_support.h.31E386938D1FFCC1.idx new file mode 100644 index 0000000000000000000000000000000000000000..3a7ac0af51cfd5c0d08595e8776d4efcd2cebca8 GIT binary patch literal 386 zcmWIYbaSg>WMFVk@vO*AElFfyU|FdYJ7`lYCdLQ&_Adpa81G6=}C*QO+c6~ z&v}_Gcid;J+_!(>B3@I|TU-{)m}V|((P=pJ_pDdGa9!A?jNP%Kc}zjdZw{BOE0=XS z!!>dC^kXrrc0Ii!Zuihf`qa(HzaIsc`krNEF?Rd9@YvBmjPtDfCNdOP<|Ziu-T657 z=&5N<7R@{i>`Dy$P%xw*mV_z9q}42O&;RFt9V;o2~c5LmFXwCd!NkhK018_uV1+Rl7yx#~a(Vy& literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/cpu_support.h.4EE5A31C9BA8E95D.idx b/firmware-arduino/.cache/clangd/index/cpu_support.h.4EE5A31C9BA8E95D.idx new file mode 100644 index 0000000000000000000000000000000000000000..44c87c1ea66a5475a87860a39046c568977552ca GIT binary patch literal 220 zcmWIYbaT7Hz`)>~;#rZKT9U{DWD5ataY<2TGm!oZ#1(V)_8IaWG7w<-tXQ3T>7t_J zLFN?`ljEmM<}Lqp^Wkp|UH%2qnO!q8pL(S;@Gnm5P`x#+)8ulKcI3-NJFeb%T6Fx> z+pnFyF*%hVq906UojTnoOX2d*Cpl#^za6sOS)g$-al^C;B{sP$yk6JM{ugR{fYttY zgUilt>vV|LkjaDkf-Mitu zE?;+cg?7o6z3Q{B2lSjvW@acqc49%=(aDZHZ0tJ}&UZ4!?DZKM5o z@<1UFxc&aMuiE9l`HVa)e7t;;Fw=@sa}q()#YM@*;vfdg85_2`#s%v#7+D!uK>`o} E0IcM600000 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/ctype.hpp.2D3630624A1B3F6C.idx b/firmware-arduino/.cache/clangd/index/ctype.hpp.2D3630624A1B3F6C.idx new file mode 100644 index 0000000000000000000000000000000000000000..d1bad4b44af67c3ec59cd5674e4fe26673db2181 GIT binary patch literal 428 zcmWIYbaPw6$iU#7;#rZKT9U}Zz`!5`#Kk2=ncIML1W>MG&e6V&d`%7lF7JbNbQT=o zy%g)ds8#IPG5&~mVmAs3rr!>B?)k6B*<06m^^Ayde#o}kskgpJm_M7lI;V8!s>ORh zKRN$MeXXu)%JQvQd&*C}aNGLEgZY532G@gzOVNuGRyH!9oKVxS`0$h0!dqmHtGj6x z%x#HH;O~?6c5F}y`R%mo(52)DDP2PQE+}05^Mt$4o0<3RFM)sG9=*D|XT#hE&*F&v z8zSCW=xW{ZeZ}m^P{m$cnVaMUbiGCA`5U<>@?3ZrIGGvP1$YF6zyt#)6C(o)D#%#3xf%Sf}+&4;uxSwHu<^168EReF!Hc-FmNaXMZlnGhqQE( zvW*>3ScE}D5he_?myru>pWfRCyUk7W9AUNrg+W%qgo{#h5!FL{pCKKNqr8r*QdfnCa0Mch*6yh`wj1v zeC6oy9#(9%ODa>dVQnHpCC0*GmHE4Ja*UI`h0lNYdo+Z(J`;N4xURhDEpNX*Ke3$n zF(In^!~C-1^6!ywbEQkYYc#^%@($6h>#iq-x%LrG)*p@QZVObq{%bb>CI+p?8FAWX zsf_tl!KI!DG%@L|W$!%J9=Y85%DdYC>4sR6nOmg1NY*UrhS;?#=C0PVbIL*EA1-l~ zb7njblYKR2`0JhVx4h6rPCuJ(!M0}IHmiBrIuXwNOr1}yMQdahYuU6}tjm)$mG8Ta zIm_-|lvSyFx7u%6hS%cb$?nw<2|q@CQ?%dtmcrvKzo#ijR{L{~pIJ!R5$o1{?#SJp z{I_2<&2zB9Xs4M2?nYNWYCO&^J>@8zpF#cmt0%u=^J>%J

$1W9z3MC2ngY9zTvy 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/cwrs.h.A65431F01BF9F75A.idx b/firmware-arduino/.cache/clangd/index/cwrs.h.A65431F01BF9F75A.idx new file mode 100644 index 0000000000000000000000000000000000000000..0f344fa0dff015063e84a7dc549f8d27c444ed60 GIT binary patch literal 706 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/debug.h.77BE4AA0EC334F08.idx b/firmware-arduino/.cache/clangd/index/debug.h.77BE4AA0EC334F08.idx new file mode 100644 index 0000000000000000000000000000000000000000..cab82bd51ed9c16666bfeb0b007f93d6120f2b2c GIT binary patch literal 214 zcmWIYbaOk$z`)>~;#rZKT9U{DWD5ataY<2T9gzMA#1(V)_B!$%QV?*hR{Y^u_Rgo| zA)^h0Zm>1uTu$by+PBA)cT}JBzBfB;T?tEpaaLQ%q}-Vv#%C=iPu1)4_Ko!mUvo$9 z{go3-r?K0!#zh8Ho?F6Z)XScJF||tcT{rh`Az8L;?tKRfzu*3{{yv}Hj~C26*+2i< xujCJPF0RZ?0y==9C^fAZLgyrc=;ET}VsQ|Ikz33w?B8##|BOrwOdtUW0022VNn!v1 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/debug.h.DEBC3B711A71F9FD.idx b/firmware-arduino/.cache/clangd/index/debug.h.DEBC3B711A71F9FD.idx new file mode 100644 index 0000000000000000000000000000000000000000..9b9d3c97ed4b22adfe768050355759fc4abde8aa GIT binary patch literal 620 zcmWIYbaP8#VqkDi@vO*AElFfyU|p0$V#a%wPMRrn}lUn4>?c1wAGqU8{*LUVpDzyzE4cTv$Axoc{MT3ADivJoP8^nVJ9m2f>6DmbrveYC ziE-RfR%N|(CAX)H?d6-DJj?bfd4@WEX1Jahb^E5+l;(ERfd8B0^*SdU`|8+xDp+L? zr_l0e>@Lff)D>6eCMg1as$kD^;ua&vEk-ez1k5LloDd&C#U~0@$Z{QF{|Z#!$i&geqykf){3G*dcc9~cp!;+< zbU?8W20U!{8CmW#^1=8(|K}uvIK@TD#rhxyD6v2RJB-1=z;?UQuES;S2`OfF7FGsU GgaiQeTeQ~z literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/dec_API.c.8E8C650AA441DA02.idx b/firmware-arduino/.cache/clangd/index/dec_API.c.8E8C650AA441DA02.idx new file mode 100644 index 0000000000000000000000000000000000000000..968f599b96b88385078387d8e252288278d77758 GIT binary patch literal 9290 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�i4G~bJK?$vQ+1<5MOuz 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 literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/decay.hpp.2C542D11ABD4A06B.idx b/firmware-arduino/.cache/clangd/index/decay.hpp.2C542D11ABD4A06B.idx new file mode 100644 index 0000000000000000000000000000000000000000..bc7d030956c8572c228203789b6ca3e4b9837ba6 GIT binary patch literal 1014 zcmWIYbaQ*h%)sEB;#rZKT9U}Zz`!5`#Kk2=nZk?=41a;RV$RV(U+*IZ0&o3qHosdd zd+Vroq*&PX=3VO!g$cM!%QRZLFjLqlb7{x_yLAon4`L z%Ur*0Y3H2GBhwGRc2Ta|f14#*J^Jd5XfxkgUY}N!%=&kCs>%j=J@t7XpENsV zdNC%fFKS=cE?c^!SCu_{*}9DrtFH#6^`u$6dnfTO&_-td<8F=4h_DNrn6Gl&^No3rCK`mlTy#amTnVWPM7)EXr<{sbY^jeskiHn_qSB_1N7fdj4vH=5)fsvQ>`xKTX zuBNpTY)qW&EWFa}(mY^-fdeQF1fdU@YBF`xQ$W(pyh7|kJYWJQUEbi?b-X>f1|-eE z%gfHo111p07nd$gaZQ_12U5VqE6Og)114blV`nZ{x!&Z~5s)-1uLQdU514>S@0+jY z7@}kUjGKv%gMpWigO3MHz@!<9Qqzi~fgXYRl93DSJH59LcAJ~#Il}w~6b5+=CTx?R z8!T~ux(p)^FBb!sGQ^_{3{5+vrIVCx?0~`w3<`=cVOR(N4FP!{W(dsZTwGuu!-S#1 z1Jw-V2@6TUOn`bFE+;A?DhUf8sK4QI5+V|ku)u-F2wYBDR9Xt=H6C6$NjW)~|6!&9 z-3kh7n4@3@0fj+93=@WhE)y3xRAD{>8mTO&4l@!M#yN>DK)Yem3^1$V0x3H>^sGZ`YMLv%G@MHpfA2Y`LD(?{rw&u23BSu7YNw7S-80w zIGGq3SQr@DSs98_(~4bz;x_rY!4mhU%P{h=b1-lygVh3wrXAAKNy;{MKw(}6UXYPs y05g}76KtN|+XuVNP4gUqrsX7p6ciUF7mEXFCU(2RyVWici-Z{27}&sC!2|$X1B4X- literal 0 HcmV?d00001 diff --git a/firmware-arduino/.cache/clangd/index/decode_core.c.D8D39B78E5BEFCAF.idx b/firmware-arduino/.cache/clangd/index/decode_core.c.D8D39B78E5BEFCAF.idx new file mode 100644 index 0000000000000000000000000000000000000000..c3b9b58e34005ec2c48cc8128e45b0657dc818d0 GIT binary patch literal 8446 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