From e65fac6ae3af3082b6741a4d6d7e598bd31f534f Mon Sep 17 00:00:00 2001 From: massmarketconsumer-arch Date: Sat, 12 Sep 2026 17:04:30 -0400 Subject: [PATCH 001/217] fix(recorder-core): slice streamed chunks into uniform parts for Cloudflare R2 compatibility (#2275) --- .../instant-recording-uploader.test.ts | 62 ++++++++++++++++++- .../recorder-core/src/instant-mp4-uploader.ts | 31 ++++++++-- 2 files changed, 86 insertions(+), 7 deletions(-) diff --git a/packages/recorder-core/__tests__/instant-recording-uploader.test.ts b/packages/recorder-core/__tests__/instant-recording-uploader.test.ts index da293fa127e..bf7b55acc35 100644 --- a/packages/recorder-core/__tests__/instant-recording-uploader.test.ts +++ b/packages/recorder-core/__tests__/instant-recording-uploader.test.ts @@ -5,7 +5,7 @@ import { import type { VideoId } from "@cap/recorder-core/recorder-types"; import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; -const STREAMED_PART_BYTES = 5 * 1024 * 1024 + 128; +const STREAMED_PART_BYTES = 5 * 1024 * 1024; const DRIVE_PART_BYTES = 16 * 1024 * 1024; const OVERFLOW_PART_BYTES = 129 * 1024 * 1024; const FINALIZED_BLOB_BYTES = 129 * 1024 * 1024; @@ -19,6 +19,7 @@ class MockXMLHttpRequest { static outcomes: UploadOutcome[] = []; static abortedCount = 0; static recordedHeaders: Array> = []; + static uploadedBlobs: Blob[] = []; upload = { onprogress: null as ((event: ProgressEvent) => void) | null, @@ -37,6 +38,7 @@ class MockXMLHttpRequest { MockXMLHttpRequest.outcomes = [...outcomes]; MockXMLHttpRequest.abortedCount = 0; MockXMLHttpRequest.recordedHeaders = []; + MockXMLHttpRequest.uploadedBlobs = []; } open() {} @@ -51,6 +53,7 @@ class MockXMLHttpRequest { send(part: Blob) { MockXMLHttpRequest.recordedHeaders.push(new Map(this.headers)); + MockXMLHttpRequest.uploadedBlobs.push(part); const outcome = MockXMLHttpRequest.outcomes.shift(); if (!outcome) { @@ -977,4 +980,61 @@ describe("InstantRecordingUploader", () => { expect(fetchMock.mock.calls.length).toBeGreaterThan(1); await uploader.cancel(); }); + + it("slices streamed buffer into uniform non-trailing parts matching MIN_PART_SIZE_BYTES for Cloudflare R2 compatibility", async () => { + const MIN_PART_SIZE = 5 * 1024 * 1024; + const TRAILING_SIZE = 2 * 1024 * 1024; + const TOTAL_SIZE = MIN_PART_SIZE + TRAILING_SIZE; + + const fetchMock = vi.fn( + async (input: RequestInfo | URL, init?: RequestInit) => { + const url = input.toString(); + const body = init?.body ? JSON.parse(init.body as string) : null; + + if (url === "/api/upload/multipart/presign-part") { + return makeJsonResponse({ + presignedUrl: `https://uploads.example/part-${body.partNumber}`, + }); + } + + if (url === "/api/upload/multipart/complete") { + expect(body.parts).toHaveLength(2); + expect(body.parts[0]).toMatchObject({ partNumber: 1 }); + expect(body.parts[1]).toMatchObject({ partNumber: 2 }); + return makeJsonResponse({ success: true }); + } + + throw new Error(`Unexpected fetch call: ${url}`); + }, + ); + + vi.stubGlobal("fetch", fetchMock); + MockXMLHttpRequest.setOutcomes([ + { type: "success", etag: "part-1" }, + { type: "success", etag: "part-2" }, + ]); + + const uploader = new InstantRecordingUploader({ + videoId, + uploadId: "upload-r2", + mimeType: "video/webm;codecs=vp9,opus", + subpath: "raw-upload.webm", + setUploadStatus: vi.fn(), + sendProgressUpdate: vi.fn().mockResolvedValue(undefined), + }); + + // Push a chunk larger than MIN_PART_SIZE_BYTES + const chunk = makeBlob(TOTAL_SIZE, "video/webm;codecs=vp9,opus"); + uploader.handleChunk(chunk, chunk.size); + + await uploader.finalize({ + durationSeconds: 10, + subpath: "raw-upload.webm", + }); + + // Non-trailing part must have exact MIN_PART_SIZE_BYTES; trailing part has remainder + expect(MockXMLHttpRequest.uploadedBlobs).toHaveLength(2); + expect(MockXMLHttpRequest.uploadedBlobs[0].size).toBe(MIN_PART_SIZE); + expect(MockXMLHttpRequest.uploadedBlobs[1].size).toBe(TRAILING_SIZE); + }); }); diff --git a/packages/recorder-core/src/instant-mp4-uploader.ts b/packages/recorder-core/src/instant-mp4-uploader.ts index e440568dc3a..4515ce75908 100644 --- a/packages/recorder-core/src/instant-mp4-uploader.ts +++ b/packages/recorder-core/src/instant-mp4-uploader.ts @@ -478,6 +478,17 @@ export class InstantRecordingUploader { this.bufferedChunks.push(blob); this.bufferedBytes += blob.size; + if ( + this.pendingUploadBytes + this.bufferedBytes > + MAX_PENDING_UPLOAD_BYTES + ) { + const error = this.markFatalError( + new Error("Upload could not keep up with recording"), + ); + this.onOverflow?.(error); + throw error; + } + if (this.bufferedBytes >= MIN_PART_SIZE_BYTES) { this.flushBuffer(); } @@ -489,14 +500,22 @@ export class InstantRecordingUploader { return; } - if (this.bufferedBytes === 0) return; - if (!force && this.bufferedBytes < MIN_PART_SIZE_BYTES) return; + while (this.bufferedBytes > 0) { + if (!force && this.bufferedBytes < MIN_PART_SIZE_BYTES) return; - const chunk = new Blob(this.bufferedChunks, { type: this.mimeType }); - this.bufferedChunks = []; - this.bufferedBytes = 0; + const partSize = + force && this.bufferedBytes <= MIN_PART_SIZE_BYTES + ? this.bufferedBytes + : MIN_PART_SIZE_BYTES; + const { part, remainingChunks, remainingBytes } = + this.takeBufferedPart(partSize); - this.enqueueUpload(chunk); + this.bufferedChunks = remainingChunks; + this.bufferedBytes = remainingBytes; + this.enqueueUpload(part); + + if (partSize < MIN_PART_SIZE_BYTES) return; + } } private flushDriveBuffer(force = false) { From 17e17902691ca499de9e44b0dd7a19d8c4b630a8 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sat, 12 Sep 2026 23:11:51 +0100 Subject: [PATCH 002/217] Adjust desktop dev run and Bun output --- bunfig.toml | 1 + package.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/bunfig.toml b/bunfig.toml index 573829e214c..8afefabfa0b 100644 --- a/bunfig.toml +++ b/bunfig.toml @@ -3,3 +3,4 @@ linker = "hoisted" [run] bun = false +elide-lines = 0 diff --git a/package.json b/package.json index dfdcd079f8f..579fd6379fd 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "db:push": "dotenv -e .env -- bun run --filter @cap/database db:push", "db:studio": "dotenv -e .env -- bun run --filter @cap/database db:studio", "dev": "bun run docker:up && trap 'bun run docker:stop' EXIT && dotenv -e .env -- turbo run dev --filter=!@cap/chrome-extension --env-mode=loose --ui tui", - "dev:desktop": "bun run --filter=@cap/desktop dev", + "dev:desktop": "bun run --cwd apps/desktop dev", "dev:extension": "bun run docker:up && trap 'bun run docker:stop' EXIT && dotenv -e .env -- turbo run dev --filter=@cap/web --filter=@cap/chrome-extension --env-mode=loose --ui tui", "dev:manual": "bun run docker:up && trap 'bun run docker:stop' EXIT && dotenv -e .env -- turbo run dev --filter=!@cap/chrome-extension --no-cache --concurrency 1", "dev:mobile": "bun run docker:up && trap 'bun run docker:stop' EXIT && CAP_MOBILE_DISABLE_ASSOCIATED_DOMAINS=1 EXPO_PUBLIC_CAP_WEB_URL=${EXPO_PUBLIC_CAP_WEB_URL:-http://localhost:3000} dotenv -e .env -- turbo run dev --filter=@cap/web --filter=@cap/mobile --env-mode=loose --ui tui", From 09adf1f3f8509c658430038a66e1306d95705397 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:40 +0100 Subject: [PATCH 003/217] feat(audio): add the bundled RNNoise inference crate --- crates/rnnoise/Cargo.toml | 11 + crates/rnnoise/README.md | 11 + crates/rnnoise/build.rs | 63 ++ crates/rnnoise/src/lib.rs | 82 ++ crates/rnnoise/vendor/COPYING | 32 + crates/rnnoise/vendor/include/rnnoise.h | 131 +++ crates/rnnoise/vendor/src/_kiss_fft_guts.h | 182 ++++ crates/rnnoise/vendor/src/arch.h | 261 ++++++ crates/rnnoise/vendor/src/celt_lpc.c | 174 ++++ crates/rnnoise/vendor/src/celt_lpc.h | 45 + crates/rnnoise/vendor/src/common.h | 56 ++ crates/rnnoise/vendor/src/cpu_support.h | 53 ++ crates/rnnoise/vendor/src/denoise.c | 505 ++++++++++ crates/rnnoise/vendor/src/denoise.h | 56 ++ crates/rnnoise/vendor/src/kiss_fft.c | 601 ++++++++++++ crates/rnnoise/vendor/src/kiss_fft.h | 203 ++++ crates/rnnoise/vendor/src/nnet.c | 123 +++ crates/rnnoise/vendor/src/nnet.h | 169 ++++ crates/rnnoise/vendor/src/nnet_arch.h | 257 +++++ crates/rnnoise/vendor/src/nnet_default.c | 35 + crates/rnnoise/vendor/src/opus_types.h | 159 ++++ .../rnnoise/vendor/src/parse_lpcnet_weights.c | 237 +++++ crates/rnnoise/vendor/src/pitch.c | 528 +++++++++++ crates/rnnoise/vendor/src/pitch.h | 147 +++ crates/rnnoise/vendor/src/rnn.c | 60 ++ crates/rnnoise/vendor/src/rnn.h | 49 + crates/rnnoise/vendor/src/rnnoise_data.c | 74 ++ crates/rnnoise/vendor/src/rnnoise_data.h | 55 ++ .../rnnoise/vendor/src/rnnoise_data_little.h | 55 ++ crates/rnnoise/vendor/src/rnnoise_tables.c | 874 +++++++++++++++++ crates/rnnoise/vendor/src/vec.h | 388 ++++++++ crates/rnnoise/vendor/src/vec_avx.h | 884 ++++++++++++++++++ crates/rnnoise/vendor/src/vec_neon.h | 474 ++++++++++ crates/rnnoise/vendor/src/x86/dnn_x86.h | 85 ++ crates/rnnoise/vendor/src/x86/nnet_avx2.c | 40 + crates/rnnoise/vendor/src/x86/nnet_sse4_1.c | 40 + .../rnnoise/vendor/src/x86/x86_arch_macros.h | 47 + crates/rnnoise/vendor/src/x86/x86_dnn_map.c | 74 ++ crates/rnnoise/vendor/src/x86/x86cpu.c | 166 ++++ crates/rnnoise/vendor/src/x86/x86cpu.h | 88 ++ crates/rnnoise/vendor/weights.bin | Bin 0 -> 3544320 bytes 41 files changed, 7574 insertions(+) create mode 100644 crates/rnnoise/Cargo.toml create mode 100644 crates/rnnoise/README.md create mode 100644 crates/rnnoise/build.rs create mode 100644 crates/rnnoise/src/lib.rs create mode 100644 crates/rnnoise/vendor/COPYING create mode 100644 crates/rnnoise/vendor/include/rnnoise.h create mode 100644 crates/rnnoise/vendor/src/_kiss_fft_guts.h create mode 100644 crates/rnnoise/vendor/src/arch.h create mode 100644 crates/rnnoise/vendor/src/celt_lpc.c create mode 100644 crates/rnnoise/vendor/src/celt_lpc.h create mode 100644 crates/rnnoise/vendor/src/common.h create mode 100644 crates/rnnoise/vendor/src/cpu_support.h create mode 100644 crates/rnnoise/vendor/src/denoise.c create mode 100644 crates/rnnoise/vendor/src/denoise.h create mode 100644 crates/rnnoise/vendor/src/kiss_fft.c create mode 100644 crates/rnnoise/vendor/src/kiss_fft.h create mode 100644 crates/rnnoise/vendor/src/nnet.c create mode 100644 crates/rnnoise/vendor/src/nnet.h create mode 100644 crates/rnnoise/vendor/src/nnet_arch.h create mode 100644 crates/rnnoise/vendor/src/nnet_default.c create mode 100644 crates/rnnoise/vendor/src/opus_types.h create mode 100644 crates/rnnoise/vendor/src/parse_lpcnet_weights.c create mode 100644 crates/rnnoise/vendor/src/pitch.c create mode 100644 crates/rnnoise/vendor/src/pitch.h create mode 100644 crates/rnnoise/vendor/src/rnn.c create mode 100644 crates/rnnoise/vendor/src/rnn.h create mode 100644 crates/rnnoise/vendor/src/rnnoise_data.c create mode 100644 crates/rnnoise/vendor/src/rnnoise_data.h create mode 100644 crates/rnnoise/vendor/src/rnnoise_data_little.h create mode 100644 crates/rnnoise/vendor/src/rnnoise_tables.c create mode 100644 crates/rnnoise/vendor/src/vec.h create mode 100644 crates/rnnoise/vendor/src/vec_avx.h create mode 100644 crates/rnnoise/vendor/src/vec_neon.h create mode 100644 crates/rnnoise/vendor/src/x86/dnn_x86.h create mode 100644 crates/rnnoise/vendor/src/x86/nnet_avx2.c create mode 100644 crates/rnnoise/vendor/src/x86/nnet_sse4_1.c create mode 100644 crates/rnnoise/vendor/src/x86/x86_arch_macros.h create mode 100644 crates/rnnoise/vendor/src/x86/x86_dnn_map.c create mode 100644 crates/rnnoise/vendor/src/x86/x86cpu.c create mode 100644 crates/rnnoise/vendor/src/x86/x86cpu.h create mode 100644 crates/rnnoise/vendor/weights.bin diff --git a/crates/rnnoise/Cargo.toml b/crates/rnnoise/Cargo.toml new file mode 100644 index 00000000000..ff205279703 --- /dev/null +++ b/crates/rnnoise/Cargo.toml @@ -0,0 +1,11 @@ +[package] +name = "cap-rnnoise" +version = "0.1.0" +edition = "2024" +license = "BSD-3-Clause" + +[build-dependencies] +cc = "1" + +[lints] +workspace = true diff --git a/crates/rnnoise/README.md b/crates/rnnoise/README.md new file mode 100644 index 00000000000..63439e7de27 --- /dev/null +++ b/crates/rnnoise/README.md @@ -0,0 +1,11 @@ +# Cap RNNoise + +This crate embeds the RNNoise model and inference code used by Studio Sound. The C inference code is optimized in development and release builds. Model weights are immutable shared storage; each microphone channel owns its processing state. + +Upstream: , revision `70f1d256acd4b34a572f999a05c87bf00b67730d`. + +The upstream model archive is identified by SHA-256 `0a8755f8e2d834eff6a54714ecc7d75f9932e845df35f8b59bc52a7cfe6e8b37`. `vendor/weights.bin` is generated by upstream's `dump_weights_blob` executable and has SHA-256 `1ad07b428be34c74d9678d05b3c387b73ccf0e6203a1a5f9ce58689b30b303c8`. The blob uses upstream's little-endian format, matching the supported desktop targets. + +The headers and inference sources in `vendor` are copied from that revision. `vendor/src/rnnoise_data.c` is generated with `unifdef -DUSE_WEIGHTS_FILE src/rnnoise_data.c`, retaining the model initializer without committing the 78 MB text representation of the weights. Do not edit the generated initializer or model blob by hand. Refresh them together from the same upstream model. + +The upstream BSD license and copyright notices are retained in `vendor/COPYING` and the source files. diff --git a/crates/rnnoise/build.rs b/crates/rnnoise/build.rs new file mode 100644 index 00000000000..f504806556c --- /dev/null +++ b/crates/rnnoise/build.rs @@ -0,0 +1,63 @@ +use std::env; + +fn build() -> cc::Build { + let mut build = cc::Build::new(); + build + .include("vendor/include") + .include("vendor/src") + .define("RNNOISE_BUILD", None) + .define("USE_WEIGHTS_FILE", None) + .define("_USE_MATH_DEFINES", None) + .opt_level(3) + .warnings(false); + build +} + +fn main() { + println!("cargo:rerun-if-changed=vendor"); + let arch = env::var("CARGO_CFG_TARGET_ARCH").unwrap(); + let target = env::var("CARGO_CFG_TARGET_ENV").unwrap(); + let mut core = build(); + for source in [ + "denoise", + "rnn", + "pitch", + "kiss_fft", + "celt_lpc", + "nnet", + "nnet_default", + "parse_lpcnet_weights", + "rnnoise_data", + "rnnoise_tables", + ] { + core.file(format!("vendor/src/{source}.c")); + } + if arch == "x86_64" || arch == "x86" { + core.define("RNN_ENABLE_X86_RTCD", None) + .file("vendor/src/x86/x86cpu.c") + .file("vendor/src/x86/x86_dnn_map.c"); + if target != "msvc" { + core.define("CPU_INFO_BY_C", None); + } + for (name, flag) in [("sse4_1", "-msse4.1"), ("avx2", "-mavx2")] { + let mut vector = build(); + vector.file(format!("vendor/src/x86/nnet_{name}.c")); + if target == "msvc" { + vector + .define("OPUS_X86_MAY_HAVE_SSE", None) + .define("OPUS_X86_MAY_HAVE_SSE2", None) + .define("OPUS_X86_MAY_HAVE_SSE4_1", None); + if name == "avx2" { + vector.flag("/arch:AVX2"); + } + } else { + vector.flag(flag); + if name == "avx2" { + vector.flag("-mfma"); + } + } + vector.compile(&format!("cap_rnnoise_{name}")); + } + } + core.compile("cap_rnnoise"); +} diff --git a/crates/rnnoise/src/lib.rs b/crates/rnnoise/src/lib.rs new file mode 100644 index 00000000000..e3314905d79 --- /dev/null +++ b/crates/rnnoise/src/lib.rs @@ -0,0 +1,82 @@ +use std::{ffi::c_void, ptr::NonNull}; + +pub const FRAME_SIZE: usize = 480; +pub const DELAY_SAMPLES: usize = FRAME_SIZE * 2; + +#[repr(align(64))] +struct AlignedModel([u8; include_bytes!("../vendor/weights.bin").len()]); + +static MODEL: AlignedModel = AlignedModel(*include_bytes!("../vendor/weights.bin")); + +unsafe extern "C" { + fn rnnoise_model_from_buffer(data: *const c_void, length: i32) -> *mut c_void; + fn rnnoise_model_free(model: *mut c_void); + fn rnnoise_create(model: *mut c_void) -> *mut c_void; + fn rnnoise_destroy(state: *mut c_void); + fn rnnoise_process_frame(state: *mut c_void, output: *mut f32, input: *const f32) -> f32; +} + +pub struct DenoiseState { + state: NonNull, + model: NonNull, +} + +// Each state owns its C allocations; the only shared storage is the immutable, aligned model. +unsafe impl Send for DenoiseState {} + +impl Default for DenoiseState { + fn default() -> Self { + Self::new() + } +} + +impl DenoiseState { + pub fn new() -> Self { + let model = NonNull::new(unsafe { + rnnoise_model_from_buffer(MODEL.0.as_ptr().cast(), MODEL.0.len() as i32) + }) + .expect("the bundled RNNoise model must load"); + let state = NonNull::new(unsafe { rnnoise_create(model.as_ptr()) }); + match state { + Some(state) => Self { state, model }, + None => { + unsafe { rnnoise_model_free(model.as_ptr()) }; + panic!("the bundled RNNoise model must initialize"); + } + } + } + + pub fn process_frame( + &mut self, + output: &mut [f32; FRAME_SIZE], + input: &[f32; FRAME_SIZE], + ) -> f32 { + unsafe { rnnoise_process_frame(self.state.as_ptr(), output.as_mut_ptr(), input.as_ptr()) } + } +} + +impl Drop for DenoiseState { + fn drop(&mut self) { + unsafe { + rnnoise_destroy(self.state.as_ptr()); + rnnoise_model_free(self.model.as_ptr()); + } + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn bundled_model_is_aligned_and_handles_silence() { + assert_eq!(MODEL.0.as_ptr() as usize % 64, 0); + let mut state = DenoiseState::new(); + let mut output = [0.0; FRAME_SIZE]; + for _ in 0..30 { + let probability = state.process_frame(&mut output, &[0.0; FRAME_SIZE]); + assert!(probability.is_finite()); + assert!(output.iter().all(|sample| *sample == 0.0)); + } + } +} diff --git a/crates/rnnoise/vendor/COPYING b/crates/rnnoise/vendor/COPYING new file mode 100644 index 00000000000..59d7d09c80c --- /dev/null +++ b/crates/rnnoise/vendor/COPYING @@ -0,0 +1,32 @@ +Copyright (c) 2007-2017, 2024 Jean-Marc Valin +Copyright (c) 2023 Amazon +Copyright (c) 2017, Mozilla +Copyright (c) 2005-2017, Xiph.Org Foundation +Copyright (c) 2003-2004, Mark Borgerding + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.Org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/crates/rnnoise/vendor/include/rnnoise.h b/crates/rnnoise/vendor/include/rnnoise.h new file mode 100644 index 00000000000..81d8f62341a --- /dev/null +++ b/crates/rnnoise/vendor/include/rnnoise.h @@ -0,0 +1,131 @@ +/* Copyright (c) 2018 Gregor Richards + * Copyright (c) 2017 Mozilla */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef RNNOISE_H +#define RNNOISE_H 1 + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef RNNOISE_EXPORT +# if defined(WIN32) +# if defined(RNNOISE_BUILD) && defined(DLL_EXPORT) +# define RNNOISE_EXPORT __declspec(dllexport) +# else +# define RNNOISE_EXPORT +# endif +# elif defined(__GNUC__) && defined(RNNOISE_BUILD) +# define RNNOISE_EXPORT __attribute__ ((visibility ("default"))) +# else +# define RNNOISE_EXPORT +# endif +#endif + +typedef struct DenoiseState DenoiseState; +typedef struct RNNModel RNNModel; + +/** + * Return the size of DenoiseState + */ +RNNOISE_EXPORT int rnnoise_get_size(void); + +/** + * Return the number of samples processed by rnnoise_process_frame at a time + */ +RNNOISE_EXPORT int rnnoise_get_frame_size(void); + +/** + * Initializes a pre-allocated DenoiseState + * + * If model is NULL the default model is used. + * + * See: rnnoise_create() and rnnoise_model_from_file() + */ +RNNOISE_EXPORT int rnnoise_init(DenoiseState *st, RNNModel *model); + +/** + * Allocate and initialize a DenoiseState + * + * If model is NULL the default model is used. + * + * The returned pointer MUST be freed with rnnoise_destroy(). + */ +RNNOISE_EXPORT DenoiseState *rnnoise_create(RNNModel *model); + +/** + * Free a DenoiseState produced by rnnoise_create. + * + * The optional custom model must be freed by rnnoise_model_free() after. + */ +RNNOISE_EXPORT void rnnoise_destroy(DenoiseState *st); + +/** + * Denoise a frame of samples + * + * in and out must be at least rnnoise_get_frame_size() large. + */ +RNNOISE_EXPORT float rnnoise_process_frame(DenoiseState *st, float *out, const float *in); + +/** + * Load a model from a memory buffer + * + * It must be deallocated with rnnoise_model_free() and the buffer must remain + * valid until after the returned object is destroyed. + */ +RNNOISE_EXPORT RNNModel *rnnoise_model_from_buffer(const void *ptr, int len); + + +/** + * Load a model from a file + * + * It must be deallocated with rnnoise_model_free() and the file must not be + * closed until the returned object is destroyed. + */ +RNNOISE_EXPORT RNNModel *rnnoise_model_from_file(FILE *f); + +/** + * Load a model from a file name + * + * It must be deallocated with rnnoise_model_free() + */ +RNNOISE_EXPORT RNNModel *rnnoise_model_from_filename(const char *filename); + +/** + * Free a custom model + * + * It must be called after all the DenoiseStates referring to it are freed. + */ +RNNOISE_EXPORT void rnnoise_model_free(RNNModel *model); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/rnnoise/vendor/src/_kiss_fft_guts.h b/crates/rnnoise/vendor/src/_kiss_fft_guts.h new file mode 100644 index 00000000000..17392b3e909 --- /dev/null +++ b/crates/rnnoise/vendor/src/_kiss_fft_guts.h @@ -0,0 +1,182 @@ +/*Copyright (c) 2003-2004, Mark Borgerding + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.*/ + +#ifndef KISS_FFT_GUTS_H +#define KISS_FFT_GUTS_H + +#define MIN(a,b) ((a)<(b) ? (a):(b)) +#define MAX(a,b) ((a)>(b) ? (a):(b)) + +/* kiss_fft.h + defines kiss_fft_scalar as either short or a float type + and defines + typedef struct { kiss_fft_scalar r; kiss_fft_scalar i; }kiss_fft_cpx; */ +#include "kiss_fft.h" + +/* + Explanation of macros dealing with complex math: + + C_MUL(m,a,b) : m = a*b + C_FIXDIV( c , div ) : if a fixed point impl., c /= div. noop otherwise + C_SUB( res, a,b) : res = a - b + C_SUBFROM( res , a) : res -= a + C_ADDTO( res , a) : res += a + * */ +#ifdef FIXED_POINT +#include "arch.h" + + +#define SAMP_MAX 2147483647 +#define TWID_MAX 32767 +#define TRIG_UPSCALE 1 + +#define SAMP_MIN -SAMP_MAX + + +# define S_MUL(a,b) MULT16_32_Q15(b, a) + +# define C_MUL(m,a,b) \ + do{ (m).r = SUB32_ovflw(S_MUL((a).r,(b).r) , S_MUL((a).i,(b).i)); \ + (m).i = ADD32_ovflw(S_MUL((a).r,(b).i) , S_MUL((a).i,(b).r)); }while(0) + +# define C_MULC(m,a,b) \ + do{ (m).r = ADD32_ovflw(S_MUL((a).r,(b).r) , S_MUL((a).i,(b).i)); \ + (m).i = SUB32_ovflw(S_MUL((a).i,(b).r) , S_MUL((a).r,(b).i)); }while(0) + +# define C_MULBYSCALAR( c, s ) \ + do{ (c).r = S_MUL( (c).r , s ) ;\ + (c).i = S_MUL( (c).i , s ) ; }while(0) + +# define DIVSCALAR(x,k) \ + (x) = S_MUL( x, (TWID_MAX-((k)>>1))/(k)+1 ) + +# define C_FIXDIV(c,div) \ + do { DIVSCALAR( (c).r , div); \ + DIVSCALAR( (c).i , div); }while (0) + +#define C_ADD( res, a,b)\ + do {(res).r=ADD32_ovflw((a).r,(b).r); (res).i=ADD32_ovflw((a).i,(b).i); \ + }while(0) +#define C_SUB( res, a,b)\ + do {(res).r=SUB32_ovflw((a).r,(b).r); (res).i=SUB32_ovflw((a).i,(b).i); \ + }while(0) +#define C_ADDTO( res , a)\ + do {(res).r = ADD32_ovflw((res).r, (a).r); (res).i = ADD32_ovflw((res).i,(a).i);\ + }while(0) + +#define C_SUBFROM( res , a)\ + do {(res).r = ADD32_ovflw((res).r,(a).r); (res).i = SUB32_ovflw((res).i,(a).i); \ + }while(0) + +#if defined(OPUS_ARM_INLINE_ASM) +#include "arm/kiss_fft_armv4.h" +#endif + +#if defined(OPUS_ARM_INLINE_EDSP) +#include "arm/kiss_fft_armv5e.h" +#endif +#if defined(MIPSr1_ASM) +#include "mips/kiss_fft_mipsr1.h" +#endif + +#else /* not FIXED_POINT*/ + +# define S_MUL(a,b) ( (a)*(b) ) +#define C_MUL(m,a,b) \ + do{ (m).r = (a).r*(b).r - (a).i*(b).i;\ + (m).i = (a).r*(b).i + (a).i*(b).r; }while(0) +#define C_MULC(m,a,b) \ + do{ (m).r = (a).r*(b).r + (a).i*(b).i;\ + (m).i = (a).i*(b).r - (a).r*(b).i; }while(0) + +#define C_MUL4(m,a,b) C_MUL(m,a,b) + +# define C_FIXDIV(c,div) /* NOOP */ +# define C_MULBYSCALAR( c, s ) \ + do{ (c).r *= (s);\ + (c).i *= (s); }while(0) +#endif + +#ifndef CHECK_OVERFLOW_OP +# define CHECK_OVERFLOW_OP(a,op,b) /* noop */ +#endif + +#ifndef C_ADD +#define C_ADD( res, a,b)\ + do { \ + CHECK_OVERFLOW_OP((a).r,+,(b).r)\ + CHECK_OVERFLOW_OP((a).i,+,(b).i)\ + (res).r=(a).r+(b).r; (res).i=(a).i+(b).i; \ + }while(0) +#define C_SUB( res, a,b)\ + do { \ + CHECK_OVERFLOW_OP((a).r,-,(b).r)\ + CHECK_OVERFLOW_OP((a).i,-,(b).i)\ + (res).r=(a).r-(b).r; (res).i=(a).i-(b).i; \ + }while(0) +#define C_ADDTO( res , a)\ + do { \ + CHECK_OVERFLOW_OP((res).r,+,(a).r)\ + CHECK_OVERFLOW_OP((res).i,+,(a).i)\ + (res).r += (a).r; (res).i += (a).i;\ + }while(0) + +#define C_SUBFROM( res , a)\ + do {\ + CHECK_OVERFLOW_OP((res).r,-,(a).r)\ + CHECK_OVERFLOW_OP((res).i,-,(a).i)\ + (res).r -= (a).r; (res).i -= (a).i; \ + }while(0) +#endif /* C_ADD defined */ + +#ifdef FIXED_POINT +/*# define KISS_FFT_COS(phase) TRIG_UPSCALE*floor(MIN(32767,MAX(-32767,.5+32768 * cos (phase)))) +# define KISS_FFT_SIN(phase) TRIG_UPSCALE*floor(MIN(32767,MAX(-32767,.5+32768 * sin (phase))))*/ +# define KISS_FFT_COS(phase) floor(.5+TWID_MAX*cos (phase)) +# define KISS_FFT_SIN(phase) floor(.5+TWID_MAX*sin (phase)) +# define HALF_OF(x) ((x)>>1) +#elif defined(USE_SIMD) +# define KISS_FFT_COS(phase) _mm_set1_ps( cos(phase) ) +# define KISS_FFT_SIN(phase) _mm_set1_ps( sin(phase) ) +# define HALF_OF(x) ((x)*_mm_set1_ps(.5f)) +#else +# define KISS_FFT_COS(phase) (kiss_fft_scalar) cos(phase) +# define KISS_FFT_SIN(phase) (kiss_fft_scalar) sin(phase) +# define HALF_OF(x) ((x)*.5f) +#endif + +#define kf_cexp(x,phase) \ + do{ \ + (x)->r = KISS_FFT_COS(phase);\ + (x)->i = KISS_FFT_SIN(phase);\ + }while(0) + +#define kf_cexp2(x,phase) \ + do{ \ + (x)->r = TRIG_UPSCALE*celt_cos_norm((phase));\ + (x)->i = TRIG_UPSCALE*celt_cos_norm((phase)-32768);\ +}while(0) + +#endif /* KISS_FFT_GUTS_H */ diff --git a/crates/rnnoise/vendor/src/arch.h b/crates/rnnoise/vendor/src/arch.h new file mode 100644 index 00000000000..52de62334b7 --- /dev/null +++ b/crates/rnnoise/vendor/src/arch.h @@ -0,0 +1,261 @@ +/* Copyright (c) 2003-2008 Jean-Marc Valin + Copyright (c) 2007-2008 CSIRO + Copyright (c) 2007-2009 Xiph.Org Foundation + Written by Jean-Marc Valin */ +/** + @file arch.h + @brief Various architecture definitions for CELT +*/ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef ARCH_H +#define ARCH_H + +#include "opus_types.h" +#include "common.h" + +# if !defined(__GNUC_PREREQ) +# if defined(__GNUC__)&&defined(__GNUC_MINOR__) +# define __GNUC_PREREQ(_maj,_min) \ + ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min)) +# else +# define __GNUC_PREREQ(_maj,_min) 0 +# endif +# endif + +#define CELT_SIG_SCALE 32768.f + +#define celt_fatal(str) _celt_fatal(str, __FILE__, __LINE__); +#ifdef ENABLE_ASSERTIONS +#include +#include +#ifdef __GNUC__ +__attribute__((noreturn)) +#endif +static OPUS_INLINE void _celt_fatal(const char *str, const char *file, int line) +{ + fprintf (stderr, "Fatal (internal) error in %s, line %d: %s\n", file, line, str); + abort(); +} +#define celt_assert(cond) {if (!(cond)) {celt_fatal("assertion failed: " #cond);}} +#define celt_assert2(cond, message) {if (!(cond)) {celt_fatal("assertion failed: " #cond "\n" message);}} +#else +#define celt_assert(cond) +#define celt_assert2(cond, message) +#endif + +#define IMUL32(a,b) ((a)*(b)) + +#define MIN16(a,b) ((a) < (b) ? (a) : (b)) /**< Minimum 16-bit value. */ +#define MAX16(a,b) ((a) > (b) ? (a) : (b)) /**< Maximum 16-bit value. */ +#define MIN32(a,b) ((a) < (b) ? (a) : (b)) /**< Minimum 32-bit value. */ +#define MAX32(a,b) ((a) > (b) ? (a) : (b)) /**< Maximum 32-bit value. */ +#define IMIN(a,b) ((a) < (b) ? (a) : (b)) /**< Minimum int value. */ +#define IMAX(a,b) ((a) > (b) ? (a) : (b)) /**< Maximum int value. */ +#define UADD32(a,b) ((a)+(b)) +#define USUB32(a,b) ((a)-(b)) + +/* Set this if opus_int64 is a native type of the CPU. */ +/* Assume that all LP64 architectures have fast 64-bit types; also x86_64 + (which can be ILP32 for x32) and Win64 (which is LLP64). */ +#if defined(__x86_64__) || defined(__LP64__) || defined(_WIN64) +#define OPUS_FAST_INT64 1 +#else +#define OPUS_FAST_INT64 0 +#endif + +#define PRINT_MIPS(file) + +#ifdef FIXED_POINT + +typedef opus_int16 opus_val16; +typedef opus_int32 opus_val32; +typedef opus_int64 opus_val64; + +typedef opus_val32 celt_sig; +typedef opus_val16 celt_norm; +typedef opus_val32 celt_ener; + +#define Q15ONE 32767 + +#define SIG_SHIFT 12 +/* Safe saturation value for 32-bit signals. Should be less than + 2^31*(1-0.85) to avoid blowing up on DC at deemphasis.*/ +#define SIG_SAT (300000000) + +#define NORM_SCALING 16384 + +#define DB_SHIFT 10 + +#define EPSILON 1 +#define VERY_SMALL 0 +#define VERY_LARGE16 ((opus_val16)32767) +#define Q15_ONE ((opus_val16)32767) + +#define SCALEIN(a) (a) +#define SCALEOUT(a) (a) + +#define ABS16(x) ((x) < 0 ? (-(x)) : (x)) +#define ABS32(x) ((x) < 0 ? (-(x)) : (x)) + +static OPUS_INLINE opus_int16 SAT16(opus_int32 x) { + return x > 32767 ? 32767 : x < -32768 ? -32768 : (opus_int16)x; +} + +#ifdef FIXED_DEBUG +#include "fixed_debug.h" +#else + +#include "fixed_generic.h" + +#ifdef OPUS_ARM_PRESUME_AARCH64_NEON_INTR +#include "arm/fixed_arm64.h" +#elif OPUS_ARM_INLINE_EDSP +#include "arm/fixed_armv5e.h" +#elif defined (OPUS_ARM_INLINE_ASM) +#include "arm/fixed_armv4.h" +#elif defined (BFIN_ASM) +#include "fixed_bfin.h" +#elif defined (TI_C5X_ASM) +#include "fixed_c5x.h" +#elif defined (TI_C6X_ASM) +#include "fixed_c6x.h" +#endif + +#endif + +#else /* FIXED_POINT */ + +typedef float opus_val16; +typedef float opus_val32; +typedef float opus_val64; + +typedef float celt_sig; +typedef float celt_norm; +typedef float celt_ener; + +#ifdef FLOAT_APPROX +/* This code should reliably detect NaN/inf even when -ffast-math is used. + Assumes IEEE 754 format. */ +static OPUS_INLINE int celt_isnan(float x) +{ + union {float f; opus_uint32 i;} in; + in.f = x; + return ((in.i>>23)&0xFF)==0xFF && (in.i&0x007FFFFF)!=0; +} +#else +#ifdef __FAST_MATH__ +#error Cannot build libopus with -ffast-math unless FLOAT_APPROX is defined. This could result in crashes on extreme (e.g. NaN) input +#endif +#define celt_isnan(x) ((x)!=(x)) +#endif + +#define Q15ONE 1.0f + +#define NORM_SCALING 1.f + +#define EPSILON 1e-15f +#define VERY_SMALL 1e-30f +#define VERY_LARGE16 1e15f +#define Q15_ONE ((opus_val16)1.f) + +/* This appears to be the same speed as C99's fabsf() but it's more portable. */ +#define ABS16(x) ((float)fabs(x)) +#define ABS32(x) ((float)fabs(x)) + +#define QCONST16(x,bits) (x) +#define QCONST32(x,bits) (x) + +#define NEG16(x) (-(x)) +#define NEG32(x) (-(x)) +#define NEG32_ovflw(x) (-(x)) +#define EXTRACT16(x) (x) +#define EXTEND32(x) (x) +#define SHR16(a,shift) (a) +#define SHL16(a,shift) (a) +#define SHR32(a,shift) (a) +#define SHL32(a,shift) (a) +#define PSHR32(a,shift) (a) +#define VSHR32(a,shift) (a) + +#define PSHR(a,shift) (a) +#define SHR(a,shift) (a) +#define SHL(a,shift) (a) +#define SATURATE(x,a) (x) +#define SATURATE16(x) (x) + +#define ROUND16(a,shift) (a) +#define SROUND16(a,shift) (a) +#define HALF16(x) (.5f*(x)) +#define HALF32(x) (.5f*(x)) + +#define ADD16(a,b) ((a)+(b)) +#define SUB16(a,b) ((a)-(b)) +#define ADD32(a,b) ((a)+(b)) +#define SUB32(a,b) ((a)-(b)) +#define ADD32_ovflw(a,b) ((a)+(b)) +#define SUB32_ovflw(a,b) ((a)-(b)) +#define MULT16_16_16(a,b) ((a)*(b)) +#define MULT16_16(a,b) ((opus_val32)(a)*(opus_val32)(b)) +#define MAC16_16(c,a,b) ((c)+(opus_val32)(a)*(opus_val32)(b)) + +#define MULT16_32_Q15(a,b) ((a)*(b)) +#define MULT16_32_Q16(a,b) ((a)*(b)) + +#define MULT32_32_Q31(a,b) ((a)*(b)) + +#define MAC16_32_Q15(c,a,b) ((c)+(a)*(b)) +#define MAC16_32_Q16(c,a,b) ((c)+(a)*(b)) + +#define MULT16_16_Q11_32(a,b) ((a)*(b)) +#define MULT16_16_Q11(a,b) ((a)*(b)) +#define MULT16_16_Q13(a,b) ((a)*(b)) +#define MULT16_16_Q14(a,b) ((a)*(b)) +#define MULT16_16_Q15(a,b) ((a)*(b)) +#define MULT16_16_P15(a,b) ((a)*(b)) +#define MULT16_16_P13(a,b) ((a)*(b)) +#define MULT16_16_P14(a,b) ((a)*(b)) +#define MULT16_32_P16(a,b) ((a)*(b)) + +#define DIV32_16(a,b) (((opus_val32)(a))/(opus_val16)(b)) +#define DIV32(a,b) (((opus_val32)(a))/(opus_val32)(b)) + +#define SCALEIN(a) ((a)*CELT_SIG_SCALE) +#define SCALEOUT(a) ((a)*(1/CELT_SIG_SCALE)) + +#define SIG2WORD16(x) (x) + +#endif /* !FIXED_POINT */ + +#ifndef GLOBAL_STACK_SIZE +#ifdef FIXED_POINT +#define GLOBAL_STACK_SIZE 120000 +#else +#define GLOBAL_STACK_SIZE 120000 +#endif +#endif + +#endif /* ARCH_H */ diff --git a/crates/rnnoise/vendor/src/celt_lpc.c b/crates/rnnoise/vendor/src/celt_lpc.c new file mode 100644 index 00000000000..750f9a8ae1a --- /dev/null +++ b/crates/rnnoise/vendor/src/celt_lpc.c @@ -0,0 +1,174 @@ +/* Copyright (c) 2009-2010 Xiph.Org Foundation + Written by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "celt_lpc.h" +#include "arch.h" +#include "common.h" +#include "pitch.h" +#include "denoise.h" + +void rnn_lpc( + opus_val16 *_lpc, /* out: [0...p-1] LPC coefficients */ +const opus_val32 *ac, /* in: [0...p] autocorrelation values */ +int p +) +{ + int i, j; + opus_val32 r; + opus_val32 error = ac[0]; +#ifdef FIXED_POINT + opus_val32 lpc[LPC_ORDER]; +#else + float *lpc = _lpc; +#endif + + RNN_CLEAR(lpc, p); + if (ac[0] != 0) + { + for (i = 0; i < p; i++) { + /* Sum up this iteration's reflection coefficient */ + opus_val32 rr = 0; + for (j = 0; j < i; j++) + rr += MULT32_32_Q31(lpc[j],ac[i - j]); + rr += SHR32(ac[i + 1],3); + r = -SHL32(rr,3)/error; + /* Update LPC coefficients and total error */ + lpc[i] = SHR32(r,3); + for (j = 0; j < (i+1)>>1; j++) + { + opus_val32 tmp1, tmp2; + tmp1 = lpc[j]; + tmp2 = lpc[i-1-j]; + lpc[j] = tmp1 + MULT32_32_Q31(r,tmp2); + lpc[i-1-j] = tmp2 + MULT32_32_Q31(r,tmp1); + } + + error = error - MULT32_32_Q31(MULT32_32_Q31(r,r),error); + /* Bail out once we get 30 dB gain */ +#ifdef FIXED_POINT + if (error0); + celt_assert(n<=PITCH_BUF_SIZE/2) + celt_assert(overlap>=0); + if (overlap == 0) + { + xptr = x; + } else { + for (i=0;i0) + { + for(i=0;i= 536870912) + { + int shift2=1; + if (ac[0] >= 1073741824) + shift2++; + for (i=0;i<=lag;i++) + ac[i] = SHR32(ac[i], shift2); + shift += shift2; + } +#endif + + return shift; +} diff --git a/crates/rnnoise/vendor/src/celt_lpc.h b/crates/rnnoise/vendor/src/celt_lpc.h new file mode 100644 index 00000000000..5abd61a0f84 --- /dev/null +++ b/crates/rnnoise/vendor/src/celt_lpc.h @@ -0,0 +1,45 @@ +/* Copyright (c) 2009-2010 Xiph.Org Foundation + Written by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef PLC_H +#define PLC_H + +#include "arch.h" +#include "common.h" + +#if defined(OPUS_X86_MAY_HAVE_SSE4_1) +#include "x86/celt_lpc_sse.h" +#endif + +#define LPC_ORDER 24 + +void rnn_lpc(opus_val16 *_lpc, const opus_val32 *ac, int p); + +int rnn_autocorr(const opus_val16 *x, opus_val32 *ac, + const opus_val16 *window, int overlap, int lag, int n); + +#endif /* PLC_H */ diff --git a/crates/rnnoise/vendor/src/common.h b/crates/rnnoise/vendor/src/common.h new file mode 100644 index 00000000000..f9095ca5e85 --- /dev/null +++ b/crates/rnnoise/vendor/src/common.h @@ -0,0 +1,56 @@ + + +#ifndef COMMON_H +#define COMMON_H + +#include "stdlib.h" +#include "string.h" + +#define RNN_INLINE inline +#define OPUS_INLINE inline + + +/** RNNoise wrapper for malloc(). To do your own dynamic allocation, all you need t +o do is replace this function and rnnoise_free */ +#ifndef OVERRIDE_RNNOISE_ALLOC +static RNN_INLINE void *rnnoise_alloc (size_t size) +{ + return malloc(size); +} +#endif + +/** RNNoise wrapper for free(). To do your own dynamic allocation, all you need to do is replace this function and rnnoise_alloc */ +#ifndef OVERRIDE_RNNOISE_FREE +static RNN_INLINE void rnnoise_free (void *ptr) +{ + free(ptr); +} +#endif + +/** Copy n elements from src to dst. The 0* term provides compile-time type checking */ +#ifndef OVERRIDE_RNN_COPY +#define RNN_COPY(dst, src, n) (memcpy((dst), (src), (n)*sizeof(*(dst)) + 0*((dst)-(src)) )) +#endif + +/** Copy n elements from src to dst, allowing overlapping regions. The 0* term + provides compile-time type checking */ +#ifndef OVERRIDE_RNN_MOVE +#define RNN_MOVE(dst, src, n) (memmove((dst), (src), (n)*sizeof(*(dst)) + 0*((dst)-(src)) )) +#endif + +/** Set n elements of dst to zero */ +#ifndef OVERRIDE_RNN_CLEAR +#define RNN_CLEAR(dst, n) (memset((dst), 0, (n)*sizeof(*(dst)))) +#endif + +# if !defined(OPUS_GNUC_PREREQ) +# if defined(__GNUC__)&&defined(__GNUC_MINOR__) +# define OPUS_GNUC_PREREQ(_maj,_min) \ + ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min)) +# else +# define OPUS_GNUC_PREREQ(_maj,_min) 0 +# endif +# endif + + +#endif diff --git a/crates/rnnoise/vendor/src/cpu_support.h b/crates/rnnoise/vendor/src/cpu_support.h new file mode 100644 index 00000000000..9de21f3a4b9 --- /dev/null +++ b/crates/rnnoise/vendor/src/cpu_support.h @@ -0,0 +1,53 @@ +/* Copyright (c) 2010 Xiph.Org Foundation + * Copyright (c) 2013 Parrot */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef CPU_SUPPORT_H +#define CPU_SUPPORT_H + +#include "opus_types.h" +#include "common.h" + +#ifdef RNN_ENABLE_X86_RTCD + +#include "x86/x86cpu.h" +/* We currently support 5 x86 variants: + * arch[0] -> sse2 + * arch[1] -> sse4.1 + * arch[2] -> avx2 + */ +#define OPUS_ARCHMASK 3 +int rnn_select_arch(void); + +#else +#define OPUS_ARCHMASK 0 + +static OPUS_INLINE int rnn_select_arch(void) +{ + return 0; +} +#endif +#endif diff --git a/crates/rnnoise/vendor/src/denoise.c b/crates/rnnoise/vendor/src/denoise.c new file mode 100644 index 00000000000..b6fc3d4a90e --- /dev/null +++ b/crates/rnnoise/vendor/src/denoise.c @@ -0,0 +1,505 @@ +/* Copyright (c) 2024 Jean-Marc Valin + * Copyright (c) 2018 Gregor Richards + * Copyright (c) 2017 Mozilla */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include "kiss_fft.h" +#include "common.h" +#include "denoise.h" +#include +#include "rnnoise.h" +#include "pitch.h" +#include "arch.h" +#include "rnn.h" +#include "cpu_support.h" + +#define SQUARE(x) ((x)*(x)) + + +#ifndef TRAINING +#define TRAINING 0 +#endif + + +/* ERB bandwidths going in reverse from 20 kHz and then replacing the 700 and 800 + with just 750 because having 32 bands is convenient for the DNN. + B(1)=400; + for k=2:35 + B(k) = B(k-1) - max(2, round(24.7*(4.37*B(k-1)/20+1)/50)); + end + printf("%d, ", B(end:-1:1)); + printf("\n") +*/ +const int eband20ms[NB_BANDS+2] = { +/*0 100 200 300 400 500 600 750 900 1.1 1.2 1.4 1.6 1.8 2.1 2.4 2.7 3.0 3.4 3.9 4.4 4.9 5.5 6.2 7.0 7.9 8.8 9.9 11.2 12.6 14.1 15.9 17.8 20.0*/ + 0, 2, 4, 6, 8, 10, 12, 15, 18, 21, 24, 28, 32, 36, 41, 47, 53, 60, 68, 77, 87, 98, 110, 124, 140, 157, 176, 198, 223, 251, 282, 317, 356, 400}; + + +struct DenoiseState { + RNNoise model; +#if !TRAINING + int arch; +#endif + float analysis_mem[FRAME_SIZE]; + int memid; + float synthesis_mem[FRAME_SIZE]; + float pitch_buf[PITCH_BUF_SIZE]; + float pitch_enh_buf[PITCH_BUF_SIZE]; + float last_gain; + int last_period; + float mem_hp_x[2]; + float lastg[NB_BANDS]; + RNNState rnn; + kiss_fft_cpx delayed_X[FREQ_SIZE]; + kiss_fft_cpx delayed_P[FREQ_SIZE]; + float delayed_Ex[NB_BANDS], delayed_Ep[NB_BANDS]; + float delayed_Exp[NB_BANDS]; + +}; + +static void compute_band_energy(float *bandE, const kiss_fft_cpx *X) { + int i; + float sum[NB_BANDS+2] = {0}; + for (i=0;iblob = NULL; + model->const_blob = ptr; + model->blob_len = len; + return model; +} + +RNNModel *rnnoise_model_from_filename(const char *filename) { + RNNModel *model; + FILE *f = fopen(filename, "rb"); + model = rnnoise_model_from_file(f); + model->file = f; + return model; +} + +RNNModel *rnnoise_model_from_file(FILE *f) { + RNNModel *model; + model = malloc(sizeof(*model)); + model->file = NULL; + + fseek(f, 0, SEEK_END); + model->blob_len = ftell(f); + fseek(f, 0, SEEK_SET); + + model->const_blob = NULL; + model->blob = malloc(model->blob_len); + if (fread(model->blob, model->blob_len, 1, f) != 1) + { + rnnoise_model_free(model); + return NULL; + } + return model; +} + +void rnnoise_model_free(RNNModel *model) { + if (model->file != NULL) fclose(model->file); + if (model->blob != NULL) free(model->blob); + free(model); +} + +int rnnoise_get_size(void) { + return sizeof(DenoiseState); +} + +int rnnoise_get_frame_size(void) { + return FRAME_SIZE; +} + +int rnnoise_init(DenoiseState *st, RNNModel *model) { + memset(st, 0, sizeof(*st)); +#if !TRAINING + if (model != NULL) { + WeightArray *list; + int ret = 1; + parse_weights(&list, model->blob ? model->blob : model->const_blob, model->blob_len); + if (list != NULL) { + ret = init_rnnoise(&st->model, list); + opus_free(list); + } + if (ret != 0) return -1; + } +#ifndef USE_WEIGHTS_FILE + else { + int ret = init_rnnoise(&st->model, rnnoise_arrays); + if (ret != 0) return -1; + } +#endif + st->arch = rnn_select_arch(); +#else + (void)model; +#endif + return 0; +} + +DenoiseState *rnnoise_create(RNNModel *model) { + int ret; + DenoiseState *st; + st = malloc(rnnoise_get_size()); + ret = rnnoise_init(st, model); + if (ret != 0) { + free(st); + return NULL; + } + return st; +} + +void rnnoise_destroy(DenoiseState *st) { + free(st); +} + +#if TRAINING +extern int lowpass; +extern int band_lp; +#endif + +void rnn_frame_analysis(DenoiseState *st, kiss_fft_cpx *X, float *Ex, const float *in) { + int i; + float x[WINDOW_SIZE]; + RNN_COPY(x, st->analysis_mem, FRAME_SIZE); + for (i=0;ianalysis_mem, in, FRAME_SIZE); + apply_window(x); + forward_transform(X, x); +#if TRAINING + for (i=lowpass;i>1]; + int pitch_index; + float gain; + float *(pre[1]); + float follow, logMax; + rnn_frame_analysis(st, X, Ex, in); + RNN_MOVE(st->pitch_buf, &st->pitch_buf[FRAME_SIZE], PITCH_BUF_SIZE-FRAME_SIZE); + RNN_COPY(&st->pitch_buf[PITCH_BUF_SIZE-FRAME_SIZE], in, FRAME_SIZE); + pre[0] = &st->pitch_buf[0]; + rnn_pitch_downsample(pre, pitch_buf, PITCH_BUF_SIZE, 1); + rnn_pitch_search(pitch_buf+(PITCH_MAX_PERIOD>>1), pitch_buf, PITCH_FRAME_SIZE, + PITCH_MAX_PERIOD-3*PITCH_MIN_PERIOD, &pitch_index); + pitch_index = PITCH_MAX_PERIOD-pitch_index; + + gain = rnn_remove_doubling(pitch_buf, PITCH_MAX_PERIOD, PITCH_MIN_PERIOD, + PITCH_FRAME_SIZE, &pitch_index, st->last_period, st->last_gain); + st->last_period = pitch_index; + st->last_gain = gain; + for (i=0;ipitch_buf[PITCH_BUF_SIZE-WINDOW_SIZE-pitch_index+i]; + apply_window(p); + forward_transform(P, p); + compute_band_energy(Ep, P); + compute_band_corr(Exp, X, P); + for (i=0;isynthesis_mem[i]; + RNN_COPY(st->synthesis_mem, &x[FRAME_SIZE], FRAME_SIZE); +} + +void rnn_biquad(float *y, float mem[2], const float *x, const float *b, const float *a, int N) { + int i; + for (i=0;ig[i]) r[i] = 1; + else r[i] = Exp[i]*(1-g[i])/(.001 + g[i]*(1-Exp[i])); + r[i] = MIN16(1, MAX16(0, r[i])); +#else + if (Exp[i]>g[i]) r[i] = 1; + else r[i] = SQUARE(Exp[i])*(1-SQUARE(g[i]))/(.001 + SQUARE(g[i])*(1-SQUARE(Exp[i]))); + r[i] = sqrt(MIN16(1, MAX16(0, r[i]))); +#endif + r[i] *= sqrt(Ex[i]/(1e-8+Ep[i])); + } + interp_band_gain(rf, r); + for (i=0;imem_hp_x, in, b_hp, a_hp, FRAME_SIZE); + silence = rnn_compute_frame_features(st, X, P, Ex, Ep, Exp, features, x); + + if (!silence) { +#if !TRAINING + compute_rnn(&st->model, &st->rnn, g, &vad_prob, features, st->arch); +#endif + rnn_pitch_filter(st->delayed_X, st->delayed_P, st->delayed_Ex, st->delayed_Ep, st->delayed_Exp, g); + for (i=0;ilastg[i]); + /* Compensate for energy change across frame when computing the threshold gain. + Avoids leaking noise when energy increases (e.g. transient noise). */ + st->lastg[i] = MIN16(1.f, g[i]*(st->delayed_Ex[i]+1e-3)/(Ex[i]+1e-3)); + } + interp_band_gain(gf, g); +#if 1 + for (i=0;idelayed_X[i].r *= gf[i]; + st->delayed_X[i].i *= gf[i]; + } +#endif + } + frame_synthesis(st, out, st->delayed_X); + + RNN_COPY(st->delayed_X, X, FREQ_SIZE); + RNN_COPY(st->delayed_P, P, FREQ_SIZE); + RNN_COPY(st->delayed_Ex, Ex, NB_BANDS); + RNN_COPY(st->delayed_Ep, Ep, NB_BANDS); + RNN_COPY(st->delayed_Exp, Exp, NB_BANDS); + return vad_prob; +} + diff --git a/crates/rnnoise/vendor/src/denoise.h b/crates/rnnoise/vendor/src/denoise.h new file mode 100644 index 00000000000..ccfecd9a7e2 --- /dev/null +++ b/crates/rnnoise/vendor/src/denoise.h @@ -0,0 +1,56 @@ +/* Copyright (c) 2017 Mozilla */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "rnnoise.h" +#include "kiss_fft.h" +#include "nnet.h" + +#define FRAME_SIZE 480 +#define WINDOW_SIZE (2*FRAME_SIZE) +#define FREQ_SIZE (FRAME_SIZE + 1) +#define NB_BANDS 32 +#define NB_FEATURES (2*NB_BANDS+1) + + +#define PITCH_MIN_PERIOD 60 +#define PITCH_MAX_PERIOD 768 +#define PITCH_FRAME_SIZE 960 +#define PITCH_BUF_SIZE (PITCH_MAX_PERIOD+PITCH_FRAME_SIZE) + +extern const WeightArray rnnoise_arrays[]; + +extern const int eband20ms[]; + + +void rnn_biquad(float *y, float mem[2], const float *x, const float *b, const float *a, int N); + +void rnn_pitch_filter(kiss_fft_cpx *X, const kiss_fft_cpx *P, const float *Ex, const float *Ep, + const float *Exp, const float *g); + +void rnn_frame_analysis(DenoiseState *st, kiss_fft_cpx *X, float *Ex, const float *in); + +int rnn_compute_frame_features(DenoiseState *st, kiss_fft_cpx *X, kiss_fft_cpx *P, + float *Ex, float *Ep, float *Exp, float *features, const float *in); diff --git a/crates/rnnoise/vendor/src/kiss_fft.c b/crates/rnnoise/vendor/src/kiss_fft.c new file mode 100644 index 00000000000..97c4291756f --- /dev/null +++ b/crates/rnnoise/vendor/src/kiss_fft.c @@ -0,0 +1,601 @@ +/*Copyright (c) 2003-2004, Mark Borgerding + Lots of modifications by Jean-Marc Valin + Copyright (c) 2005-2007, Xiph.Org Foundation + Copyright (c) 2008, Xiph.Org Foundation, CSIRO + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.*/ + +/* This code is originally from Mark Borgerding's KISS-FFT but has been + heavily modified to better suit Opus */ + +#ifndef SKIP_CONFIG_H +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif +#endif + +#include "_kiss_fft_guts.h" +#define CUSTOM_MODES + +/* The guts header contains all the multiplication and addition macros that are defined for + complex numbers. It also declares the kf_ internal functions. +*/ + +static void kf_bfly2( + kiss_fft_cpx * Fout, + int m, + int N + ) +{ + kiss_fft_cpx * Fout2; + int i; + (void)m; +#ifdef CUSTOM_MODES + if (m==1) + { + celt_assert(m==1); + for (i=0;itwiddles; + /* m is guaranteed to be a multiple of 4. */ + for (j=0;jtwiddles[fstride*m]; +#endif + for (i=0;itwiddles; + /* For non-custom modes, m is guaranteed to be a multiple of 4. */ + k=m; + do { + + C_MUL(scratch[1],Fout[m] , *tw1); + C_MUL(scratch[2],Fout[m2] , *tw2); + + C_ADD(scratch[3],scratch[1],scratch[2]); + C_SUB(scratch[0],scratch[1],scratch[2]); + tw1 += fstride; + tw2 += fstride*2; + + Fout[m].r = SUB32_ovflw(Fout->r, HALF_OF(scratch[3].r)); + Fout[m].i = SUB32_ovflw(Fout->i, HALF_OF(scratch[3].i)); + + C_MULBYSCALAR( scratch[0] , epi3.i ); + + C_ADDTO(*Fout,scratch[3]); + + Fout[m2].r = ADD32_ovflw(Fout[m].r, scratch[0].i); + Fout[m2].i = SUB32_ovflw(Fout[m].i, scratch[0].r); + + Fout[m].r = SUB32_ovflw(Fout[m].r, scratch[0].i); + Fout[m].i = ADD32_ovflw(Fout[m].i, scratch[0].r); + + ++Fout; + } while(--k); + } +} + + +#ifndef OVERRIDE_kf_bfly5 +static void kf_bfly5( + kiss_fft_cpx * Fout, + const size_t fstride, + const kiss_fft_state *st, + int m, + int N, + int mm + ) +{ + kiss_fft_cpx *Fout0,*Fout1,*Fout2,*Fout3,*Fout4; + int i, u; + kiss_fft_cpx scratch[13]; + const kiss_twiddle_cpx *tw; + kiss_twiddle_cpx ya,yb; + kiss_fft_cpx * Fout_beg = Fout; + +#ifdef FIXED_POINT + ya.r = 10126; + ya.i = -31164; + yb.r = -26510; + yb.i = -19261; +#else + ya = st->twiddles[fstride*m]; + yb = st->twiddles[fstride*2*m]; +#endif + tw=st->twiddles; + + for (i=0;ir = ADD32_ovflw(Fout0->r, ADD32_ovflw(scratch[7].r, scratch[8].r)); + Fout0->i = ADD32_ovflw(Fout0->i, ADD32_ovflw(scratch[7].i, scratch[8].i)); + + scratch[5].r = ADD32_ovflw(scratch[0].r, ADD32_ovflw(S_MUL(scratch[7].r,ya.r), S_MUL(scratch[8].r,yb.r))); + scratch[5].i = ADD32_ovflw(scratch[0].i, ADD32_ovflw(S_MUL(scratch[7].i,ya.r), S_MUL(scratch[8].i,yb.r))); + + scratch[6].r = ADD32_ovflw(S_MUL(scratch[10].i,ya.i), S_MUL(scratch[9].i,yb.i)); + scratch[6].i = NEG32_ovflw(ADD32_ovflw(S_MUL(scratch[10].r,ya.i), S_MUL(scratch[9].r,yb.i))); + + C_SUB(*Fout1,scratch[5],scratch[6]); + C_ADD(*Fout4,scratch[5],scratch[6]); + + scratch[11].r = ADD32_ovflw(scratch[0].r, ADD32_ovflw(S_MUL(scratch[7].r,yb.r), S_MUL(scratch[8].r,ya.r))); + scratch[11].i = ADD32_ovflw(scratch[0].i, ADD32_ovflw(S_MUL(scratch[7].i,yb.r), S_MUL(scratch[8].i,ya.r))); + scratch[12].r = SUB32_ovflw(S_MUL(scratch[9].i,ya.i), S_MUL(scratch[10].i,yb.i)); + scratch[12].i = SUB32_ovflw(S_MUL(scratch[10].r,yb.i), S_MUL(scratch[9].r,ya.i)); + + C_ADD(*Fout2,scratch[11],scratch[12]); + C_SUB(*Fout3,scratch[11],scratch[12]); + + ++Fout0;++Fout1;++Fout2;++Fout3;++Fout4; + } + } +} +#endif /* OVERRIDE_kf_bfly5 */ + + +#endif + + +#ifdef CUSTOM_MODES + +static +void compute_bitrev_table( + int Fout, + opus_int32 *f, + const size_t fstride, + int in_stride, + opus_int16 * factors, + const kiss_fft_state *st + ) +{ + const int p=*factors++; /* the radix */ + const int m=*factors++; /* stage's fft length/p */ + + /*printf ("fft %d %d %d %d %d %d\n", p*m, m, p, s2, fstride*in_stride, N);*/ + if (m==1) + { + int j; + for (j=0;j32000 || (opus_int32)p*(opus_int32)p > n) + p = n; /* no more factors, skip to end */ + } + n /= p; +#ifdef RADIX_TWO_ONLY + if (p!=2 && p != 4) +#else + if (p>5) +#endif + { + return 0; + } + facbuf[2*stages] = p; + if (p==2 && stages > 1) + { + facbuf[2*stages] = 4; + facbuf[2] = 2; + } + stages++; + } while (n > 1); + n = nbak; + /* Reverse the order to get the radix 4 at the end, so we can use the + fast degenerate case. It turns out that reversing the order also + improves the noise behaviour. */ + for (i=0;i= memneeded) + st = (kiss_fft_state*)mem; + *lenmem = memneeded; + } + if (st) { + opus_int32 *bitrev; + kiss_twiddle_cpx *twiddles; + + st->nfft=nfft; +#ifdef FIXED_POINT + st->scale_shift = celt_ilog2(st->nfft); + if (st->nfft == 1<scale_shift) + st->scale = Q15ONE; + else + st->scale = (1073741824+st->nfft/2)/st->nfft>>(15-st->scale_shift); +#else + st->scale = 1.f/nfft; +#endif + if (base != NULL) + { + st->twiddles = base->twiddles; + st->shift = 0; + while (st->shift < 32 && nfft<shift != base->nfft) + st->shift++; + if (st->shift>=32) + goto fail; + } else { + st->twiddles = twiddles = (kiss_twiddle_cpx*)KISS_FFT_MALLOC(sizeof(kiss_twiddle_cpx)*nfft); + compute_twiddles(twiddles, nfft); + st->shift = -1; + } + if (!kf_factor(nfft,st->factors)) + { + goto fail; + } + + /* bitrev */ + st->bitrev = bitrev = (opus_int32*)KISS_FFT_MALLOC(sizeof(opus_int32)*nfft); + if (st->bitrev==NULL) + goto fail; + compute_bitrev_table(0, bitrev, 1,1, st->factors,st); + + /* Initialize architecture specific fft parameters */ + if (rnn_fft_alloc_arch(st, arch)) + goto fail; + } + return st; +fail: + rnn_fft_free(st, arch); + return NULL; +} + +kiss_fft_state *rnn_fft_alloc(int nfft,void * mem,size_t * lenmem, int arch) +{ + return rnn_fft_alloc_twiddles(nfft, mem, lenmem, NULL, arch); +} + +void rnn_fft_free_arch_c(kiss_fft_state *st) { + (void)st; +} + +void rnn_fft_free(const kiss_fft_state *cfg, int arch) +{ + if (cfg) + { + rnn_fft_free_arch((kiss_fft_state *)cfg, arch); + opus_free((opus_int32*)cfg->bitrev); + if (cfg->shift < 0) + opus_free((kiss_twiddle_cpx*)cfg->twiddles); + opus_free((kiss_fft_state*)cfg); + } +} + +#endif /* CUSTOM_MODES */ + +void rnn_fft_impl(const kiss_fft_state *st,kiss_fft_cpx *fout) +{ + int m2, m; + int p; + int L; + int fstride[MAXFACTORS]; + int i; + int shift; + + /* st->shift can be -1 */ + shift = st->shift>0 ? st->shift : 0; + + fstride[0] = 1; + L=0; + do { + p = st->factors[2*L]; + m = st->factors[2*L+1]; + fstride[L+1] = fstride[L]*p; + L++; + } while(m!=1); + m = st->factors[2*L-1]; + for (i=L-1;i>=0;i--) + { + if (i!=0) + m2 = st->factors[2*i-1]; + else + m2 = 1; + switch (st->factors[2*i]) + { + case 2: + kf_bfly2(fout, m, fstride[i]); + break; + case 4: + kf_bfly4(fout,fstride[i]<scale_shift-1; +#endif + scale = st->scale; + + celt_assert2 (fin != fout, "In-place FFT not supported"); + /* Bit-reverse the input */ + for (i=0;infft;i++) + { + kiss_fft_cpx x = fin[i]; + fout[st->bitrev[i]].r = SHR32(MULT16_32_Q16(scale, x.r), scale_shift); + fout[st->bitrev[i]].i = SHR32(MULT16_32_Q16(scale, x.i), scale_shift); + } + rnn_fft_impl(st, fout); +} + + +void rnn_ifft_c(const kiss_fft_state *st,const kiss_fft_cpx *fin,kiss_fft_cpx *fout) +{ + int i; + celt_assert2 (fin != fout, "In-place FFT not supported"); + /* Bit-reverse the input */ + for (i=0;infft;i++) + fout[st->bitrev[i]] = fin[i]; + for (i=0;infft;i++) + fout[i].i = -fout[i].i; + rnn_fft_impl(st, fout); + for (i=0;infft;i++) + fout[i].i = -fout[i].i; +} diff --git a/crates/rnnoise/vendor/src/kiss_fft.h b/crates/rnnoise/vendor/src/kiss_fft.h new file mode 100644 index 00000000000..52387f21f9c --- /dev/null +++ b/crates/rnnoise/vendor/src/kiss_fft.h @@ -0,0 +1,203 @@ +/*Copyright (c) 2003-2004, Mark Borgerding + Lots of modifications by Jean-Marc Valin + Copyright (c) 2005-2007, Xiph.Org Foundation + Copyright (c) 2008, Xiph.Org Foundation, CSIRO + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.*/ + +#ifndef KISS_FFT_H +#define KISS_FFT_H + +#include +#include +#include "arch.h" + +#include +#define opus_alloc(x) malloc(x) +#define opus_free(x) free(x) + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef USE_SIMD +# include +# define kiss_fft_scalar __m128 +#define KISS_FFT_MALLOC(nbytes) memalign(16,nbytes) +#else +#define KISS_FFT_MALLOC opus_alloc +#endif + +#ifdef FIXED_POINT +#include "arch.h" + +# define kiss_fft_scalar opus_int32 +# define kiss_twiddle_scalar opus_int16 + + +#else +# ifndef kiss_fft_scalar +/* default is float */ +# define kiss_fft_scalar float +# define kiss_twiddle_scalar float +# define KF_SUFFIX _celt_single +# endif +#endif + +typedef struct { + kiss_fft_scalar r; + kiss_fft_scalar i; +}kiss_fft_cpx; + +typedef struct { + kiss_twiddle_scalar r; + kiss_twiddle_scalar i; +}kiss_twiddle_cpx; + +#define MAXFACTORS 8 +/* e.g. an fft of length 128 has 4 factors + as far as kissfft is concerned + 4*4*4*2 + */ + +typedef struct arch_fft_state{ + int is_supported; + void *priv; +} arch_fft_state; + +typedef struct kiss_fft_state{ + int nfft; + opus_val16 scale; +#ifdef FIXED_POINT + int scale_shift; +#endif + int shift; + opus_int16 factors[2*MAXFACTORS]; + const opus_int32 *bitrev; + const kiss_twiddle_cpx *twiddles; + arch_fft_state *arch_fft; +} kiss_fft_state; + +#if defined(HAVE_ARM_NE10) +#include "arm/fft_arm.h" +#endif + +/*typedef struct kiss_fft_state* kiss_fft_cfg;*/ + +/** + * opus_fft_alloc + * + * Initialize a FFT (or IFFT) algorithm's cfg/state buffer. + * + * typical usage: kiss_fft_cfg mycfg=opus_fft_alloc(1024,0,NULL,NULL); + * + * The return value from fft_alloc is a cfg buffer used internally + * by the fft routine or NULL. + * + * If lenmem is NULL, then opus_fft_alloc will allocate a cfg buffer using malloc. + * The returned value should be free()d when done to avoid memory leaks. + * + * The state can be placed in a user supplied buffer 'mem': + * If lenmem is not NULL and mem is not NULL and *lenmem is large enough, + * then the function places the cfg in mem and the size used in *lenmem + * and returns mem. + * + * If lenmem is not NULL and ( mem is NULL or *lenmem is not large enough), + * then the function returns NULL and places the minimum cfg + * buffer size in *lenmem. + * */ + +kiss_fft_state *rnn_fft_alloc_twiddles(int nfft,void * mem,size_t * lenmem, const kiss_fft_state *base, int arch); + +kiss_fft_state *rnn_fft_alloc(int nfft,void * mem,size_t * lenmem, int arch); + +/** + * opus_fft(cfg,in_out_buf) + * + * Perform an FFT on a complex input buffer. + * for a forward FFT, + * fin should be f[0] , f[1] , ... ,f[nfft-1] + * fout will be F[0] , F[1] , ... ,F[nfft-1] + * Note that each element is complex and can be accessed like + f[k].r and f[k].i + * */ +void rnn_fft_c(const kiss_fft_state *cfg,const kiss_fft_cpx *fin,kiss_fft_cpx *fout); +void rnn_ifft_c(const kiss_fft_state *cfg,const kiss_fft_cpx *fin,kiss_fft_cpx *fout); + +void rnn_fft_impl(const kiss_fft_state *st,kiss_fft_cpx *fout); +void rnn_ifft_impl(const kiss_fft_state *st,kiss_fft_cpx *fout); + +void rnn_fft_free(const kiss_fft_state *cfg, int arch); + + +void rnn_fft_free_arch_c(kiss_fft_state *st); +int rnn_fft_alloc_arch_c(kiss_fft_state *st); + +#if !defined(OVERRIDE_OPUS_FFT) +/* Is run-time CPU detection enabled on this platform? */ +#if defined(OPUS_HAVE_RTCD) && (defined(HAVE_ARM_NE10)) + +extern int (*const OPUS_FFT_ALLOC_ARCH_IMPL[OPUS_ARCHMASK+1])( + kiss_fft_state *st); + +#define opus_fft_alloc_arch(_st, arch) \ + ((*OPUS_FFT_ALLOC_ARCH_IMPL[(arch)&OPUS_ARCHMASK])(_st)) + +extern void (*const OPUS_FFT_FREE_ARCH_IMPL[OPUS_ARCHMASK+1])( + kiss_fft_state *st); +#define opus_fft_free_arch(_st, arch) \ + ((*OPUS_FFT_FREE_ARCH_IMPL[(arch)&OPUS_ARCHMASK])(_st)) + +extern void (*const OPUS_FFT[OPUS_ARCHMASK+1])(const kiss_fft_state *cfg, + const kiss_fft_cpx *fin, kiss_fft_cpx *fout); +#define opus_fft(_cfg, _fin, _fout, arch) \ + ((*OPUS_FFT[(arch)&OPUS_ARCHMASK])(_cfg, _fin, _fout)) + +extern void (*const OPUS_IFFT[OPUS_ARCHMASK+1])(const kiss_fft_state *cfg, + const kiss_fft_cpx *fin, kiss_fft_cpx *fout); +#define opus_ifft(_cfg, _fin, _fout, arch) \ + ((*OPUS_IFFT[(arch)&OPUS_ARCHMASK])(_cfg, _fin, _fout)) + +#else /* else for if defined(OPUS_HAVE_RTCD) && (defined(HAVE_ARM_NE10)) */ + +#define rnn_fft_alloc_arch(_st, arch) \ + ((void)(arch), rnn_fft_alloc_arch_c(_st)) + +#define rnn_fft_free_arch(_st, arch) \ + ((void)(arch), rnn_fft_free_arch_c(_st)) + +#define rnn_fft(_cfg, _fin, _fout, arch) \ + ((void)(arch), rnn_fft_c(_cfg, _fin, _fout)) + +#define rnn_ifft(_cfg, _fin, _fout, arch) \ + ((void)(arch), rnn_ifft_c(_cfg, _fin, _fout)) + +#endif /* end if defined(OPUS_HAVE_RTCD) && (defined(HAVE_ARM_NE10)) */ +#endif /* end if !defined(OVERRIDE_OPUS_FFT) */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/rnnoise/vendor/src/nnet.c b/crates/rnnoise/vendor/src/nnet.c new file mode 100644 index 00000000000..3cafea6051a --- /dev/null +++ b/crates/rnnoise/vendor/src/nnet.c @@ -0,0 +1,123 @@ +/* Copyright (c) 2018 Mozilla + 2008-2011 Octasic Inc. + 2012-2017 Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include "opus_types.h" +#include "arch.h" +#include "nnet.h" +#include "common.h" +#include "vec.h" + +#ifdef ENABLE_OSCE +#include "osce.h" +#endif + +#ifdef NO_OPTIMIZATIONS +#if defined(_MSC_VER) +#pragma message ("Compiling without any vectorization. This code will be very slow") +#else +#warning Compiling without any vectorization. This code will be very slow +#endif +#endif + + +#define SOFTMAX_HACK + + +void compute_generic_dense(const LinearLayer *layer, float *output, const float *input, int activation, int arch) +{ + compute_linear(layer, output, input, arch); + compute_activation(output, output, layer->nb_outputs, activation, arch); +} + +#define MAX_RNN_NEURONS_ALL 1024 + +void compute_generic_gru(const LinearLayer *input_weights, const LinearLayer *recurrent_weights, float *state, const float *in, int arch) +{ + int i; + int N; + float zrh[3*MAX_RNN_NEURONS_ALL]; + float recur[3*MAX_RNN_NEURONS_ALL]; + float *z; + float *r; + float *h; + celt_assert(3*recurrent_weights->nb_inputs == recurrent_weights->nb_outputs); + celt_assert(input_weights->nb_outputs == recurrent_weights->nb_outputs); + N = recurrent_weights->nb_inputs; + z = zrh; + r = &zrh[N]; + h = &zrh[2*N]; + celt_assert(recurrent_weights->nb_outputs <= 3*MAX_RNN_NEURONS_ALL); + celt_assert(in != state); + compute_linear(input_weights, zrh, in, arch); + compute_linear(recurrent_weights, recur, state, arch); + for (i=0;i<2*N;i++) + zrh[i] += recur[i]; + compute_activation(zrh, zrh, 2*N, ACTIVATION_SIGMOID, arch); + for (i=0;inb_inputs == layer->nb_outputs); + compute_linear(layer, act2, input, arch); + compute_activation(act2, act2, layer->nb_outputs, ACTIVATION_SIGMOID, arch); + if (input == output) { + /* Give a vectorization hint to the compiler for the in-place case. */ + for (i=0;inb_outputs;i++) output[i] = output[i]*act2[i]; + } else { + for (i=0;inb_outputs;i++) output[i] = input[i]*act2[i]; + } +} + +#define MAX_CONV_INPUTS_ALL 1024 + +void compute_generic_conv1d(const LinearLayer *layer, float *output, float *mem, const float *input, int input_size, int activation, int arch) +{ + float tmp[MAX_CONV_INPUTS_ALL]; + celt_assert(input != output); + celt_assert(layer->nb_inputs <= MAX_CONV_INPUTS_ALL); + if (layer->nb_inputs!=input_size) RNN_COPY(tmp, mem, layer->nb_inputs-input_size); + RNN_COPY(&tmp[layer->nb_inputs-input_size], input, input_size); + compute_linear(layer, output, tmp, arch); + compute_activation(output, output, layer->nb_outputs, activation, arch); + if (layer->nb_inputs!=input_size) RNN_COPY(mem, &tmp[input_size], layer->nb_inputs-input_size); +} diff --git a/crates/rnnoise/vendor/src/nnet.h b/crates/rnnoise/vendor/src/nnet.h new file mode 100644 index 00000000000..6b8023bdb03 --- /dev/null +++ b/crates/rnnoise/vendor/src/nnet.h @@ -0,0 +1,169 @@ +/* Copyright (c) 2018 Mozilla + Copyright (c) 2017 Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef NNET_H_ +#define NNET_H_ + +#include +#include "opus_types.h" + +#define ACTIVATION_LINEAR 0 +#define ACTIVATION_SIGMOID 1 +#define ACTIVATION_TANH 2 +#define ACTIVATION_RELU 3 +#define ACTIVATION_SOFTMAX 4 +#define ACTIVATION_SWISH 5 + +#define WEIGHT_BLOB_VERSION 0 +#define WEIGHT_BLOCK_SIZE 64 +typedef struct { + const char *name; + int type; + int size; + const void *data; +} WeightArray; + +#define WEIGHT_TYPE_float 0 +#define WEIGHT_TYPE_int 1 +#define WEIGHT_TYPE_qweight 2 +#define WEIGHT_TYPE_int8 3 + +typedef struct { + char head[4]; + int version; + int type; + int size; + int block_size; + char name[44]; +} WeightHead; + +/* Generic sparse affine transformation. */ +typedef struct { + const float *bias; + const float *subias; + const opus_int8 *weights; + const float *float_weights; + const int *weights_idx; + const float *diag; + const float *scale; + int nb_inputs; + int nb_outputs; +} LinearLayer; + +/* Generic sparse affine transformation. */ +typedef struct { + const float *bias; + const float *float_weights; + int in_channels; + int out_channels; + int ktime; + int kheight; +} Conv2dLayer; + + +/* Changes some symbol names to add the rnn_ prefix so we don't get conflicts with Opus. */ +#define linear_init rnn_linear_init +#define conv2d_init rnn_conv2d_init +#define compute_generic_dense rnn_compute_generic_dense +#define compute_generic_gru rnn_compute_generic_gru +#define compute_generic_conv1d rnn_compute_generic_conv1d +#define compute_glu rnn_compute_glu + +#define parse_weights rnn_parse_weights + +#define compute_linear_c rnn_compute_linear_c +#define compute_activation_c rnn_compute_activation_c +#define compute_conv2d_c rnn_compute_conv2d_c +#define compute_linear_sse4_1 rnn_compute_linear_sse4_1 +#define compute_activation_sse4_1 rnn_compute_activation_sse4_1 +#define compute_conv2d_sse4_1 rnn_compute_conv2d_sse4_1 +#define compute_linear_avx2 rnn_compute_linear_avx2 +#define compute_activation_avx2 rnn_compute_activation_avx2 +#define compute_conv2d_avx2 rnn_compute_conv2d_avx2 + + +void compute_generic_dense(const LinearLayer *layer, float *output, const float *input, int activation, int arch); +void compute_generic_gru(const LinearLayer *input_weights, const LinearLayer *recurrent_weights, float *state, const float *in, int arch); +void compute_generic_conv1d(const LinearLayer *layer, float *output, float *mem, const float *input, int input_size, int activation, int arch); +void compute_glu(const LinearLayer *layer, float *output, const float *input, int arch); + + +int parse_weights(WeightArray **list, const void *data, int len); + + + +int linear_init(LinearLayer *layer, const WeightArray *arrays, + const char *bias, + const char *subias, + const char *weights, + const char *float_weights, + const char *weights_idx, + const char *diag, + const char *scale, + int nb_inputs, + int nb_outputs); + +int conv2d_init(Conv2dLayer *layer, const WeightArray *arrays, + const char *bias, + const char *float_weights, + int in_channels, + int out_channels, + int ktime, + int kheight); + + +void compute_linear_c(const LinearLayer *linear, float *out, const float *in); +void compute_activation_c(float *output, const float *input, int N, int activation); +void compute_conv2d_c(const Conv2dLayer *conv, float *out, float *mem, const float *in, int height, int hstride, int activation); + +#ifdef RNN_ENABLE_X86_RTCD +#include "x86/dnn_x86.h" +#endif + +#ifndef OVERRIDE_COMPUTE_LINEAR +#define compute_linear(linear, out, in, arch) ((void)(arch),compute_linear_c(linear, out, in)) +#endif + +#ifndef OVERRIDE_COMPUTE_ACTIVATION +#define compute_activation(output, input, N, activation, arch) ((void)(arch),compute_activation_c(output, input, N, activation)) +#endif + +#ifndef OVERRIDE_COMPUTE_CONV2D +#define compute_conv2d(conv, out, mem, in, height, hstride, activation, arch) ((void)(arch),compute_conv2d_c(conv, out, mem, in, height, hstride, activation)) +#endif + +#if defined(__x86_64__) && !defined(RNN_ENABLE_X86_RTCD) && !defined(__AVX2__) +#if defined(_MSC_VER) +#pragma message ("Only SSE and SSE2 are available. On newer machines, enable SSSE3/AVX/AVX2 to get better performance") +#else +#warning "Only SSE and SSE2 are available. On newer machines, enable SSSE3/AVX/AVX2 using -march= to get better performance" +#endif +#endif + + + +#endif /* NNET_H_ */ diff --git a/crates/rnnoise/vendor/src/nnet_arch.h b/crates/rnnoise/vendor/src/nnet_arch.h new file mode 100644 index 00000000000..dfd5eaadeaf --- /dev/null +++ b/crates/rnnoise/vendor/src/nnet_arch.h @@ -0,0 +1,257 @@ +/* Copyright (c) 2018-2019 Mozilla + 2023 Amazon */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef NNET_ARCH_H +#define NNET_ARCH_H + +#include "nnet.h" +#include "arch.h" +#include "common.h" +#include "vec.h" + +#define CAT_SUFFIX2(a,b) a ## b +#define CAT_SUFFIX(a,b) CAT_SUFFIX2(a, b) + +#define RTCD_SUF(name) CAT_SUFFIX(name, RTCD_ARCH) + +# if !defined(OPUS_GNUC_PREREQ) +# if defined(__GNUC__)&&defined(__GNUC_MINOR__) +# define OPUS_GNUC_PREREQ(_maj,_min) \ + ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min)) +# else +# define OPUS_GNUC_PREREQ(_maj,_min) 0 +# endif +# endif + + +/* Force vectorization on for DNN code because some of the loops rely on + compiler vectorization rather than explicitly using intrinsics. */ +#if OPUS_GNUC_PREREQ(5,1) +#define GCC_POP_OPTIONS +#pragma GCC push_options +#pragma GCC optimize("tree-vectorize") +#endif + + +#define MAX_ACTIVATIONS (4096) + +static OPUS_INLINE void vec_swish(float *y, const float *x, int N) +{ + int i; + float tmp[MAX_ACTIVATIONS]; + celt_assert(N <= MAX_ACTIVATIONS); + vec_sigmoid(tmp, x, N); + for (i=0;ibias; + M = linear->nb_inputs; + N = linear->nb_outputs; + if (linear->float_weights != NULL) { + if (linear->weights_idx != NULL) sparse_sgemv8x4(out, linear->float_weights, linear->weights_idx, N, in); + else sgemv(out, linear->float_weights, N, M, N, in); + } else if (linear->weights != NULL) { + if (linear->weights_idx != NULL) sparse_cgemv8x4(out, linear->weights, linear->weights_idx, linear->scale, N, M, in); + else cgemv8x4(out, linear->weights, linear->scale, N, M, in); + /* Only use SU biases on for integer matrices on SU archs. */ +#ifdef USE_SU_BIAS + bias = linear->subias; +#endif + } + else RNN_CLEAR(out, N); + if (bias != NULL) { + for (i=0;idiag) { + /* Diag is only used for GRU recurrent weights. */ + celt_assert(3*M == N); + for (i=0;idiag[i]*in[i]; + out[i+M] += linear->diag[i+M]*in[i]; + out[i+2*M] += linear->diag[i+2*M]*in[i]; + } + } +} + +/* Computes non-padded convolution for input [ ksize1 x in_channels x (len2+ksize2) ], + kernel [ out_channels x in_channels x ksize1 x ksize2 ], + storing the output as [ out_channels x len2 ]. + We assume that the output dimension along the ksize1 axis is 1, + i.e. processing one frame at a time. */ +static void conv2d_float(float *out, const float *weights, int in_channels, int out_channels, int ktime, int kheight, const float *in, int height, int hstride) +{ + int i; + int in_stride; + in_stride = height+kheight-1; + for (i=0;iin_channels*(height+conv->kheight-1); + celt_assert(conv->ktime*time_stride <= MAX_CONV2D_INPUTS); + RNN_COPY(in_buf, mem, (conv->ktime-1)*time_stride); + RNN_COPY(&in_buf[(conv->ktime-1)*time_stride], in, time_stride); + RNN_COPY(mem, &in_buf[time_stride], (conv->ktime-1)*time_stride); + bias = conv->bias; + if (conv->kheight == 3 && conv->ktime == 3) + conv2d_3x3_float(out, conv->float_weights, conv->in_channels, conv->out_channels, in_buf, height, hstride); + else + conv2d_float(out, conv->float_weights, conv->in_channels, conv->out_channels, conv->ktime, conv->kheight, in_buf, height, hstride); + if (bias != NULL) { + for (i=0;iout_channels;i++) { + int j; + for (j=0;jout_channels;i++) { + RTCD_SUF(compute_activation_)(&out[i*hstride], &out[i*hstride], height, activation); + } +} + +#ifdef GCC_POP_OPTIONS +#pragma GCC pop_options +#endif + +#endif diff --git a/crates/rnnoise/vendor/src/nnet_default.c b/crates/rnnoise/vendor/src/nnet_default.c new file mode 100644 index 00000000000..4316f0fba3c --- /dev/null +++ b/crates/rnnoise/vendor/src/nnet_default.c @@ -0,0 +1,35 @@ +/* Copyright (c) 2018-2019 Mozilla + 2023 Amazon */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + + +#define RTCD_ARCH c + +#include "nnet_arch.h" diff --git a/crates/rnnoise/vendor/src/opus_types.h b/crates/rnnoise/vendor/src/opus_types.h new file mode 100644 index 00000000000..71808266655 --- /dev/null +++ b/crates/rnnoise/vendor/src/opus_types.h @@ -0,0 +1,159 @@ +/* (C) COPYRIGHT 1994-2002 Xiph.Org Foundation */ +/* Modified by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +/* opus_types.h based on ogg_types.h from libogg */ + +/** + @file opus_types.h + @brief Opus reference implementation types +*/ +#ifndef OPUS_TYPES_H +#define OPUS_TYPES_H + +/* Use the real stdint.h if it's there (taken from Paul Hsieh's pstdint.h) */ +#if (defined(__STDC__) && __STDC__ && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || (defined(__GNUC__) && (defined(_STDINT_H) || defined(_STDINT_H_)) || defined (HAVE_STDINT_H)) +#include + + typedef int16_t opus_int16; + typedef uint16_t opus_uint16; + typedef int32_t opus_int32; + typedef uint32_t opus_uint32; +#elif defined(_WIN32) + +# if defined(__CYGWIN__) +# include <_G_config.h> + typedef _G_int32_t opus_int32; + typedef _G_uint32_t opus_uint32; + typedef _G_int16 opus_int16; + typedef _G_uint16 opus_uint16; +# elif defined(__MINGW32__) + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; +# elif defined(__MWERKS__) + typedef int opus_int32; + typedef unsigned int opus_uint32; + typedef short opus_int16; + typedef unsigned short opus_uint16; +# else + /* MSVC/Borland */ + typedef __int32 opus_int32; + typedef unsigned __int32 opus_uint32; + typedef __int16 opus_int16; + typedef unsigned __int16 opus_uint16; +# endif + +#elif defined(__MACOS__) + +# include + typedef SInt16 opus_int16; + typedef UInt16 opus_uint16; + typedef SInt32 opus_int32; + typedef UInt32 opus_uint32; + +#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */ + +# include + typedef int16_t opus_int16; + typedef u_int16_t opus_uint16; + typedef int32_t opus_int32; + typedef u_int32_t opus_uint32; + +#elif defined(__BEOS__) + + /* Be */ +# include + typedef int16 opus_int16; + typedef u_int16 opus_uint16; + typedef int32_t opus_int32; + typedef u_int32_t opus_uint32; + +#elif defined (__EMX__) + + /* OS/2 GCC */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined (DJGPP) + + /* DJGPP */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined(R5900) + + /* PS2 EE */ + typedef int opus_int32; + typedef unsigned opus_uint32; + typedef short opus_int16; + typedef unsigned short opus_uint16; + +#elif defined(__SYMBIAN32__) + + /* Symbian GCC */ + typedef signed short opus_int16; + typedef unsigned short opus_uint16; + typedef signed int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined(CONFIG_TI_C54X) || defined (CONFIG_TI_C55X) + + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef long opus_int32; + typedef unsigned long opus_uint32; + +#elif defined(CONFIG_TI_C6X) + + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#else + + /* Give up, take a reasonable guess */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#endif + +#define opus_int int /* used for counters etc; at least 16 bits */ +#define opus_int64 long long +#define opus_int8 signed char + +#define opus_uint unsigned int /* used for counters etc; at least 16 bits */ +#define opus_uint64 unsigned long long +#define opus_uint8 unsigned char + +#endif /* OPUS_TYPES_H */ diff --git a/crates/rnnoise/vendor/src/parse_lpcnet_weights.c b/crates/rnnoise/vendor/src/parse_lpcnet_weights.c new file mode 100644 index 00000000000..bdd50d7ea16 --- /dev/null +++ b/crates/rnnoise/vendor/src/parse_lpcnet_weights.c @@ -0,0 +1,237 @@ +/* Copyright (c) 2023 Amazon */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include "nnet.h" + +#define SPARSE_BLOCK_SIZE 32 + +static int parse_record(const void **data, int *len, WeightArray *array) { + WeightHead *h = (WeightHead *)*data; + if (*len < WEIGHT_BLOCK_SIZE) return -1; + if (h->block_size < h->size) return -1; + if (h->block_size > *len-WEIGHT_BLOCK_SIZE) return -1; + if (h->name[sizeof(h->name)-1] != 0) return -1; + if (h->size < 0) return -1; + array->name = h->name; + array->type = h->type; + array->size = h->size; + array->data = (void*)((unsigned char*)(*data)+WEIGHT_BLOCK_SIZE); + + *data = (void*)((unsigned char*)*data + h->block_size+WEIGHT_BLOCK_SIZE); + *len -= h->block_size+WEIGHT_BLOCK_SIZE; + return array->size; +} + +int parse_weights(WeightArray **list, const void *data, int len) +{ + int nb_arrays=0; + int capacity=20; + *list = calloc(capacity*sizeof(WeightArray), 1); + while (len > 0) { + int ret; + WeightArray array = {NULL, 0, 0, 0}; + ret = parse_record(&data, &len, &array); + if (ret > 0) { + if (nb_arrays+1 >= capacity) { + /* Make sure there's room for the ending NULL element too. */ + capacity = capacity*3/2; + *list = realloc(*list, capacity*sizeof(WeightArray)); + } + (*list)[nb_arrays++] = array; + } else { + free(*list); + *list = NULL; + return -1; + } + } + (*list)[nb_arrays].name=NULL; + return nb_arrays; +} + +static const void *find_array_entry(const WeightArray *arrays, const char *name) { + while (arrays->name && strcmp(arrays->name, name) != 0) arrays++; + return arrays; +} + +static const void *find_array_check(const WeightArray *arrays, const char *name, int size) { + const WeightArray *a = find_array_entry(arrays, name); + if (a->name && a->size == size) return a->data; + else return NULL; +} + +static const void *opt_array_check(const WeightArray *arrays, const char *name, int size, int *error) { + const WeightArray *a = find_array_entry(arrays, name); + *error = (a->name != NULL && a->size != size); + if (a->name && a->size == size) return a->data; + else return NULL; +} + +static const void *find_idx_check(const WeightArray *arrays, const char *name, int nb_in, int nb_out, int *total_blocks) { + int remain; + const int *idx; + const WeightArray *a = find_array_entry(arrays, name); + *total_blocks = 0; + if (a == NULL) return NULL; + idx = a->data; + remain = a->size/sizeof(int); + while (remain > 0) { + int nb_blocks; + int i; + nb_blocks = *idx++; + if (remain < nb_blocks+1) return NULL; + for (i=0;i= nb_in || (pos&0x3)) return NULL; + } + nb_out -= 8; + remain -= nb_blocks+1; + *total_blocks += nb_blocks; + } + if (nb_out != 0) return NULL; + return a->data; +} + +int linear_init(LinearLayer *layer, const WeightArray *arrays, + const char *bias, + const char *subias, + const char *weights, + const char *float_weights, + const char *weights_idx, + const char *diag, + const char *scale, + int nb_inputs, + int nb_outputs) +{ + int err; + layer->bias = NULL; + layer->subias = NULL; + layer->weights = NULL; + layer->float_weights = NULL; + layer->weights_idx = NULL; + layer->diag = NULL; + layer->scale = NULL; + if (bias != NULL) { + if ((layer->bias = find_array_check(arrays, bias, nb_outputs*sizeof(layer->bias[0]))) == NULL) return 1; + } + if (subias != NULL) { + if ((layer->subias = find_array_check(arrays, subias, nb_outputs*sizeof(layer->subias[0]))) == NULL) return 1; + } + if (weights_idx != NULL) { + int total_blocks; + if ((layer->weights_idx = find_idx_check(arrays, weights_idx, nb_inputs, nb_outputs, &total_blocks)) == NULL) return 1; + if (weights != NULL) { + if ((layer->weights = find_array_check(arrays, weights, SPARSE_BLOCK_SIZE*total_blocks*sizeof(layer->weights[0]))) == NULL) return 1; + } + if (float_weights != NULL) { + layer->float_weights = opt_array_check(arrays, float_weights, SPARSE_BLOCK_SIZE*total_blocks*sizeof(layer->float_weights[0]), &err); + if (err) return 1; + } + } else { + if (weights != NULL) { + if ((layer->weights = find_array_check(arrays, weights, nb_inputs*nb_outputs*sizeof(layer->weights[0]))) == NULL) return 1; + } + if (float_weights != NULL) { + layer->float_weights = opt_array_check(arrays, float_weights, nb_inputs*nb_outputs*sizeof(layer->float_weights[0]), &err); + if (err) return 1; + } + } + if (diag != NULL) { + if ((layer->diag = find_array_check(arrays, diag, nb_outputs*sizeof(layer->diag[0]))) == NULL) return 1; + } + if (weights != NULL) { + if ((layer->scale = find_array_check(arrays, scale, nb_outputs*sizeof(layer->scale[0]))) == NULL) return 1; + } + layer->nb_inputs = nb_inputs; + layer->nb_outputs = nb_outputs; + return 0; +} + +int conv2d_init(Conv2dLayer *layer, const WeightArray *arrays, + const char *bias, + const char *float_weights, + int in_channels, + int out_channels, + int ktime, + int kheight) +{ + int err; + layer->bias = NULL; + layer->float_weights = NULL; + if (bias != NULL) { + if ((layer->bias = find_array_check(arrays, bias, out_channels*sizeof(layer->bias[0]))) == NULL) return 1; + } + if (float_weights != NULL) { + layer->float_weights = opt_array_check(arrays, float_weights, in_channels*out_channels*ktime*kheight*sizeof(layer->float_weights[0]), &err); + if (err) return 1; + } + layer->in_channels = in_channels; + layer->out_channels = out_channels; + layer->ktime = ktime; + layer->kheight = kheight; + return 0; +} + + + +#if 0 +#include +#include +#include +#include +#include + +int main() +{ + int fd; + void *data; + int len; + int nb_arrays; + int i; + WeightArray *list; + struct stat st; + const char *filename = "weights_blob.bin"; + stat(filename, &st); + len = st.st_size; + fd = open(filename, O_RDONLY); + data = mmap(NULL, len, PROT_READ, MAP_SHARED, fd, 0); + printf("size is %d\n", len); + nb_arrays = parse_weights(&list, data, len); + for (i=0;i0) + { + opus_val16 num; + opus_val32 xcorr16; + xcorr16 = EXTRACT16(VSHR32(xcorr[i], xshift)); +#ifndef FIXED_POINT + /* Considering the range of xcorr16, this should avoid both underflows + and overflows (inf) when squaring xcorr16 */ + xcorr16 *= 1e-12f; +#endif + num = MULT16_16_Q15(xcorr16,xcorr16); + if (MULT16_32_Q15(num,best_den[1]) > MULT16_32_Q15(best_num[1],Syy)) + { + if (MULT16_32_Q15(num,best_den[0]) > MULT16_32_Q15(best_num[0],Syy)) + { + best_num[1] = best_num[0]; + best_den[1] = best_den[0]; + best_pitch[1] = best_pitch[0]; + best_num[0] = num; + best_den[0] = Syy; + best_pitch[0] = i; + } else { + best_num[1] = num; + best_den[1] = Syy; + best_pitch[1] = i; + } + } + } + Syy += SHR32(MULT16_16(y[i+len],y[i+len]),yshift) - SHR32(MULT16_16(y[i],y[i]),yshift); + Syy = MAX32(1, Syy); + } +} + +static void celt_fir5(const opus_val16 *x, + const opus_val16 *num, + opus_val16 *y, + int N, + opus_val16 *mem) +{ + int i; + opus_val16 num0, num1, num2, num3, num4; + opus_val32 mem0, mem1, mem2, mem3, mem4; + num0=num[0]; + num1=num[1]; + num2=num[2]; + num3=num[3]; + num4=num[4]; + mem0=mem[0]; + mem1=mem[1]; + mem2=mem[2]; + mem3=mem[3]; + mem4=mem[4]; + for (i=0;i>1;i++) + x_lp[i] = SHR32(HALF32(HALF32(x[0][(2*i-1)]+x[0][(2*i+1)])+x[0][2*i]), shift); + x_lp[0] = SHR32(HALF32(HALF32(x[0][1])+x[0][0]), shift); + if (C==2) + { + for (i=1;i>1;i++) + x_lp[i] += SHR32(HALF32(HALF32(x[1][(2*i-1)]+x[1][(2*i+1)])+x[1][2*i]), shift); + x_lp[0] += SHR32(HALF32(HALF32(x[1][1])+x[1][0]), shift); + } + + rnn_autocorr(x_lp, ac, NULL, 0, + 4, len>>1); + + /* Noise floor -40 dB */ +#ifdef FIXED_POINT + ac[0] += SHR32(ac[0],13); +#else + ac[0] *= 1.0001f; +#endif + /* Lag windowing */ + for (i=1;i<=4;i++) + { + /*ac[i] *= exp(-.5*(2*M_PI*.002*i)*(2*M_PI*.002*i));*/ +#ifdef FIXED_POINT + ac[i] -= MULT16_32_Q15(2*i*i, ac[i]); +#else + ac[i] -= ac[i]*(.008f*i)*(.008f*i); +#endif + } + + rnn_lpc(lpc, ac, 4); + for (i=0;i<4;i++) + { + tmp = MULT16_16_Q15(QCONST16(.9f,15), tmp); + lpc[i] = MULT16_16_Q15(lpc[i], tmp); + } + /* Add a zero */ + lpc2[0] = lpc[0] + QCONST16(.8f,SIG_SHIFT); + lpc2[1] = lpc[1] + MULT16_16_Q15(c1,lpc[0]); + lpc2[2] = lpc[2] + MULT16_16_Q15(c1,lpc[1]); + lpc2[3] = lpc[3] + MULT16_16_Q15(c1,lpc[2]); + lpc2[4] = MULT16_16_Q15(c1,lpc[3]); + celt_fir5(x_lp, lpc2, x_lp, len>>1, mem); +} + +void rnn_pitch_xcorr(const opus_val16 *_x, const opus_val16 *_y, + opus_val32 *xcorr, int len, int max_pitch) +{ + +#if 0 /* This is a simple version of the pitch correlation that should work + well on DSPs like Blackfin and TI C5x/C6x */ + int i, j; +#ifdef FIXED_POINT + opus_val32 maxcorr=1; +#endif + for (i=0;i0); + celt_assert((((unsigned char *)_x-(unsigned char *)NULL)&3)==0); + for (i=0;i>2]; + opus_val16 y_lp4[(PITCH_FRAME_SIZE+PITCH_MAX_PERIOD)>>2]; + opus_val32 xcorr[PITCH_MAX_PERIOD>>1]; + + celt_assert(len <= PITCH_FRAME_SIZE); + celt_assert(max_pitch <= PITCH_MAX_PERIOD); + celt_assert(len>0); + celt_assert(max_pitch>0); + lag = len+max_pitch; + + + /* Downsample by 2 again */ + for (j=0;j>2;j++) + x_lp4[j] = x_lp[2*j]; + for (j=0;j>2;j++) + y_lp4[j] = y[2*j]; + +#ifdef FIXED_POINT + xmax = celt_maxabs16(x_lp4, len>>2); + ymax = celt_maxabs16(y_lp4, lag>>2); + shift = celt_ilog2(MAX32(1, MAX32(xmax, ymax)))-11; + if (shift>0) + { + for (j=0;j>2;j++) + x_lp4[j] = SHR16(x_lp4[j], shift); + for (j=0;j>2;j++) + y_lp4[j] = SHR16(y_lp4[j], shift); + /* Use double the shift for a MAC */ + shift *= 2; + } else { + shift = 0; + } +#endif + + /* Coarse search with 4x decimation */ + +#ifdef FIXED_POINT + maxcorr = +#endif + rnn_pitch_xcorr(x_lp4, y_lp4, xcorr, len>>2, max_pitch>>2); + + find_best_pitch(xcorr, y_lp4, len>>2, max_pitch>>2, best_pitch +#ifdef FIXED_POINT + , 0, maxcorr +#endif + ); + + /* Finer search with 2x decimation */ +#ifdef FIXED_POINT + maxcorr=1; +#endif + for (i=0;i>1;i++) + { + opus_val32 sum; + xcorr[i] = 0; + if (abs(i-2*best_pitch[0])>2 && abs(i-2*best_pitch[1])>2) + continue; +#ifdef FIXED_POINT + sum = 0; + for (j=0;j>1;j++) + sum += SHR32(MULT16_16(x_lp[j],y[i+j]), shift); +#else + sum = celt_inner_prod(x_lp, y+i, len>>1); +#endif + xcorr[i] = MAX32(-1, sum); +#ifdef FIXED_POINT + maxcorr = MAX32(maxcorr, sum); +#endif + } + find_best_pitch(xcorr, y, len>>1, max_pitch>>1, best_pitch +#ifdef FIXED_POINT + , shift+1, maxcorr +#endif + ); + + /* Refine by pseudo-interpolation */ + if (best_pitch[0]>0 && best_pitch[0]<(max_pitch>>1)-1) + { + opus_val32 a, b, c; + a = xcorr[best_pitch[0]-1]; + b = xcorr[best_pitch[0]]; + c = xcorr[best_pitch[0]+1]; + if ((c-a) > MULT16_32_Q15(QCONST16(.7f,15),b-a)) + offset = 1; + else if ((a-c) > MULT16_32_Q15(QCONST16(.7f,15),b-c)) + offset = -1; + else + offset = 0; + } else { + offset = 0; + } + *pitch = 2*best_pitch[0]-offset; +} + +#ifdef FIXED_POINT +static opus_val16 compute_pitch_gain(opus_val32 xy, opus_val32 xx, opus_val32 yy) +{ + opus_val32 x2y2; + int sx, sy, shift; + opus_val32 g; + opus_val16 den; + if (xy == 0 || xx == 0 || yy == 0) + return 0; + sx = celt_ilog2(xx)-14; + sy = celt_ilog2(yy)-14; + shift = sx + sy; + x2y2 = SHR32(MULT16_16(VSHR32(xx, sx), VSHR32(yy, sy)), 14); + if (shift & 1) { + if (x2y2 < 32768) + { + x2y2 <<= 1; + shift--; + } else { + x2y2 >>= 1; + shift++; + } + } + den = celt_rsqrt_norm(x2y2); + g = MULT16_32_Q15(den, xy); + g = VSHR32(g, (shift>>1)-1); + return EXTRACT16(MIN32(g, Q15ONE)); +} +#else +static opus_val16 compute_pitch_gain(opus_val32 xy, opus_val32 xx, opus_val32 yy) +{ + return xy/sqrt(1+xx*yy); +} +#endif + +static const int second_check[16] = {0, 0, 3, 2, 3, 2, 5, 2, 3, 2, 3, 2, 5, 2, 3, 2}; +opus_val16 rnn_remove_doubling(opus_val16 *x, int maxperiod, int minperiod, + int N, int *T0_, int prev_period, opus_val16 prev_gain) +{ + int k, i, T, T0; + opus_val16 g, g0; + opus_val16 pg; + opus_val32 xy,xx,yy,xy2; + opus_val32 xcorr[3]; + opus_val32 best_xy, best_yy; + int offset; + int minperiod0; + opus_val32 yy_lookup[PITCH_MAX_PERIOD+1]; + + celt_assert(maxperiod <= PITCH_MAX_PERIOD); + + minperiod0 = minperiod; + maxperiod /= 2; + minperiod /= 2; + *T0_ /= 2; + prev_period /= 2; + N /= 2; + x += maxperiod; + if (*T0_>=maxperiod) + *T0_=maxperiod-1; + + T = T0 = *T0_; + dual_inner_prod(x, x, x-T0, N, &xx, &xy); + yy_lookup[0] = xx; + yy=xx; + for (i=1;i<=maxperiod;i++) + { + yy = yy+MULT16_16(x[-i],x[-i])-MULT16_16(x[N-i],x[N-i]); + yy_lookup[i] = MAX32(0, yy); + } + yy = yy_lookup[T0]; + best_xy = xy; + best_yy = yy; + g = g0 = compute_pitch_gain(xy, xx, yy); + /* Look for any pitch at T/k */ + for (k=2;k<=15;k++) + { + int T1, T1b; + opus_val16 g1; + opus_val16 cont=0; + opus_val16 thresh; + T1 = (2*T0+k)/(2*k); + if (T1 < minperiod) + break; + /* Look for another strong correlation at T1b */ + if (k==2) + { + if (T1+T0>maxperiod) + T1b = T0; + else + T1b = T0+T1; + } else + { + T1b = (2*second_check[k]*T0+k)/(2*k); + } + dual_inner_prod(x, &x[-T1], &x[-T1b], N, &xy, &xy2); + xy = HALF32(xy + xy2); + yy = HALF32(yy_lookup[T1] + yy_lookup[T1b]); + g1 = compute_pitch_gain(xy, xx, yy); + if (abs(T1-prev_period)<=1) + cont = prev_gain; + else if (abs(T1-prev_period)<=2 && 5*k*k < T0) + cont = HALF16(prev_gain); + else + cont = 0; + thresh = MAX16(QCONST16(.3f,15), MULT16_16_Q15(QCONST16(.7f,15),g0)-cont); + /* Bias against very high pitch (very short period) to avoid false-positives + due to short-term correlation */ + if (T1<3*minperiod) + thresh = MAX16(QCONST16(.4f,15), MULT16_16_Q15(QCONST16(.85f,15),g0)-cont); + else if (T1<2*minperiod) + thresh = MAX16(QCONST16(.5f,15), MULT16_16_Q15(QCONST16(.9f,15),g0)-cont); + if (g1 > thresh) + { + best_xy = xy; + best_yy = yy; + T = T1; + g = g1; + } + } + best_xy = MAX32(0, best_xy); + if (best_yy <= best_xy) + pg = Q15ONE; + else + pg = best_xy/(best_yy+1); + + for (k=0;k<3;k++) + xcorr[k] = celt_inner_prod(x, x-(T+k-1), N); + if ((xcorr[2]-xcorr[0]) > MULT16_32_Q15(QCONST16(.7f,15),xcorr[1]-xcorr[0])) + offset = 1; + else if ((xcorr[0]-xcorr[2]) > MULT16_32_Q15(QCONST16(.7f,15),xcorr[1]-xcorr[2])) + offset = -1; + else + offset = 0; + if (pg > g) + pg = g; + *T0_ = 2*T+offset; + + if (*T0_=3); + y_3=0; /* gcc doesn't realize that y_3 can't be used uninitialized */ + y_0=*y++; + y_1=*y++; + y_2=*y++; + for (j=0;j +#include "opus_types.h" +#include "common.h" +#include "arch.h" +#include "rnn.h" +#include "rnnoise_data.h" +#include + + +#define INPUT_SIZE 42 + + +void compute_rnn(const RNNoise *model, RNNState *rnn, float *gains, float *vad, const float *input, int arch) { + float tmp[MAX_NEURONS]; + float cat[CONV2_OUT_SIZE + GRU1_OUT_SIZE + GRU2_OUT_SIZE + GRU3_OUT_SIZE]; + /*for (int i=0;iconv1, tmp, rnn->conv1_state, input, CONV1_IN_SIZE, ACTIVATION_TANH, arch); + compute_generic_conv1d(&model->conv2, cat, rnn->conv2_state, tmp, CONV2_IN_SIZE, ACTIVATION_TANH, arch); + compute_generic_gru(&model->gru1_input, &model->gru1_recurrent, rnn->gru1_state, cat, arch); + compute_generic_gru(&model->gru2_input, &model->gru2_recurrent, rnn->gru2_state, rnn->gru1_state, arch); + compute_generic_gru(&model->gru3_input, &model->gru3_recurrent, rnn->gru3_state, rnn->gru2_state, arch); + RNN_COPY(&cat[CONV2_OUT_SIZE], rnn->gru1_state, GRU1_OUT_SIZE); + RNN_COPY(&cat[CONV2_OUT_SIZE+GRU1_OUT_SIZE], rnn->gru2_state, GRU2_OUT_SIZE); + RNN_COPY(&cat[CONV2_OUT_SIZE+GRU1_OUT_SIZE+GRU2_OUT_SIZE], rnn->gru3_state, GRU3_OUT_SIZE); + compute_generic_dense(&model->dense_out, gains, cat, ACTIVATION_SIGMOID, arch); + compute_generic_dense(&model->vad_dense, vad, cat, ACTIVATION_SIGMOID, arch); + /*for (int i=0;i<22;i++) printf("%f ", gains[i]);printf("\n");*/ + /*printf("%f\n", *vad);*/ +} diff --git a/crates/rnnoise/vendor/src/rnn.h b/crates/rnnoise/vendor/src/rnn.h new file mode 100644 index 00000000000..60a8871e7a8 --- /dev/null +++ b/crates/rnnoise/vendor/src/rnn.h @@ -0,0 +1,49 @@ +/* Copyright (c) 2017 Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef RNN_H_ +#define RNN_H_ + +#include "rnnoise.h" +#include "rnnoise_data.h" + +#include "opus_types.h" + +#define WEIGHTS_SCALE (1.f/256) + +#define MAX_NEURONS 1024 + + +typedef struct { + float conv1_state[CONV1_STATE_SIZE]; + float conv2_state[CONV2_STATE_SIZE]; + float gru1_state[GRU1_STATE_SIZE]; + float gru2_state[GRU2_STATE_SIZE]; + float gru3_state[GRU3_STATE_SIZE]; +} RNNState; +void compute_rnn(const RNNoise *model, RNNState *rnn, float *gains, float *vad, const float *input, int arch); + +#endif /* RNN_H_ */ diff --git a/crates/rnnoise/vendor/src/rnnoise_data.c b/crates/rnnoise/vendor/src/rnnoise_data.c new file mode 100644 index 00000000000..9c76125a099 --- /dev/null +++ b/crates/rnnoise/vendor/src/rnnoise_data.c @@ -0,0 +1,74 @@ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "rnnoise_data.h" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +#ifndef DUMP_BINARY_WEIGHTS +int init_rnnoise(RNNoise *model, const WeightArray *arrays) { + if (linear_init(&model->conv1, arrays, "conv1_bias", NULL, NULL,"conv1_weights_float", NULL, NULL, NULL, 195, 128)) return 1; + if (linear_init(&model->conv2, arrays, "conv2_bias", "conv2_subias", "conv2_weights_int8","conv2_weights_float", NULL, NULL, "conv2_scale", 384, 384)) return 1; + if (linear_init(&model->gru1_input, arrays, "gru1_input_bias", "gru1_input_subias", "gru1_input_weights_int8","gru1_input_weights_float", "gru1_input_weights_idx", NULL, "gru1_input_scale", 384, 1152)) return 1; + if (linear_init(&model->gru1_recurrent, arrays, "gru1_recurrent_bias", "gru1_recurrent_subias", "gru1_recurrent_weights_int8","gru1_recurrent_weights_float", "gru1_recurrent_weights_idx", "gru1_recurrent_weights_diag", "gru1_recurrent_scale", 384, 1152)) return 1; + if (linear_init(&model->gru2_input, arrays, "gru2_input_bias", "gru2_input_subias", "gru2_input_weights_int8","gru2_input_weights_float", "gru2_input_weights_idx", NULL, "gru2_input_scale", 384, 1152)) return 1; + if (linear_init(&model->gru2_recurrent, arrays, "gru2_recurrent_bias", "gru2_recurrent_subias", "gru2_recurrent_weights_int8","gru2_recurrent_weights_float", "gru2_recurrent_weights_idx", "gru2_recurrent_weights_diag", "gru2_recurrent_scale", 384, 1152)) return 1; + if (linear_init(&model->gru3_input, arrays, "gru3_input_bias", "gru3_input_subias", "gru3_input_weights_int8","gru3_input_weights_float", "gru3_input_weights_idx", NULL, "gru3_input_scale", 384, 1152)) return 1; + if (linear_init(&model->gru3_recurrent, arrays, "gru3_recurrent_bias", "gru3_recurrent_subias", "gru3_recurrent_weights_int8","gru3_recurrent_weights_float", "gru3_recurrent_weights_idx", "gru3_recurrent_weights_diag", "gru3_recurrent_scale", 384, 1152)) return 1; + if (linear_init(&model->dense_out, arrays, "dense_out_bias", NULL, NULL,"dense_out_weights_float", NULL, NULL, NULL, 1536, 32)) return 1; + if (linear_init(&model->vad_dense, arrays, "vad_dense_bias", NULL, NULL,"vad_dense_weights_float", NULL, NULL, NULL, 1536, 1)) return 1; + return 0; +} +#endif /* DUMP_BINARY_WEIGHTS */ diff --git a/crates/rnnoise/vendor/src/rnnoise_data.h b/crates/rnnoise/vendor/src/rnnoise_data.h new file mode 100644 index 00000000000..7955a7c95b1 --- /dev/null +++ b/crates/rnnoise/vendor/src/rnnoise_data.h @@ -0,0 +1,55 @@ + +#ifndef RNNOISE_DATA_H +#define RNNOISE_DATA_H + +#include "nnet.h" + + +#define CONV1_OUT_SIZE 128 + +#define CONV1_IN_SIZE 65 + +#define CONV1_STATE_SIZE (65 * (2)) + +#define CONV1_DELAY 1 + +#define CONV2_OUT_SIZE 384 + +#define CONV2_IN_SIZE 128 + +#define CONV2_STATE_SIZE (128 * (2)) + +#define CONV2_DELAY 1 + +#define GRU1_OUT_SIZE 384 + +#define GRU1_STATE_SIZE 384 + +#define GRU2_OUT_SIZE 384 + +#define GRU2_STATE_SIZE 384 + +#define GRU3_OUT_SIZE 384 + +#define GRU3_STATE_SIZE 384 + +#define DENSE_OUT_OUT_SIZE 32 + +#define VAD_DENSE_OUT_SIZE 1 + +typedef struct { + LinearLayer conv1; + LinearLayer conv2; + LinearLayer gru1_input; + LinearLayer gru1_recurrent; + LinearLayer gru2_input; + LinearLayer gru2_recurrent; + LinearLayer gru3_input; + LinearLayer gru3_recurrent; + LinearLayer dense_out; + LinearLayer vad_dense; +} RNNoise; + +int init_rnnoise(RNNoise *model, const WeightArray *arrays); + +#endif /* RNNOISE_DATA_H */ diff --git a/crates/rnnoise/vendor/src/rnnoise_data_little.h b/crates/rnnoise/vendor/src/rnnoise_data_little.h new file mode 100644 index 00000000000..7955a7c95b1 --- /dev/null +++ b/crates/rnnoise/vendor/src/rnnoise_data_little.h @@ -0,0 +1,55 @@ + +#ifndef RNNOISE_DATA_H +#define RNNOISE_DATA_H + +#include "nnet.h" + + +#define CONV1_OUT_SIZE 128 + +#define CONV1_IN_SIZE 65 + +#define CONV1_STATE_SIZE (65 * (2)) + +#define CONV1_DELAY 1 + +#define CONV2_OUT_SIZE 384 + +#define CONV2_IN_SIZE 128 + +#define CONV2_STATE_SIZE (128 * (2)) + +#define CONV2_DELAY 1 + +#define GRU1_OUT_SIZE 384 + +#define GRU1_STATE_SIZE 384 + +#define GRU2_OUT_SIZE 384 + +#define GRU2_STATE_SIZE 384 + +#define GRU3_OUT_SIZE 384 + +#define GRU3_STATE_SIZE 384 + +#define DENSE_OUT_OUT_SIZE 32 + +#define VAD_DENSE_OUT_SIZE 1 + +typedef struct { + LinearLayer conv1; + LinearLayer conv2; + LinearLayer gru1_input; + LinearLayer gru1_recurrent; + LinearLayer gru2_input; + LinearLayer gru2_recurrent; + LinearLayer gru3_input; + LinearLayer gru3_recurrent; + LinearLayer dense_out; + LinearLayer vad_dense; +} RNNoise; + +int init_rnnoise(RNNoise *model, const WeightArray *arrays); + +#endif /* RNNOISE_DATA_H */ diff --git a/crates/rnnoise/vendor/src/rnnoise_tables.c b/crates/rnnoise/vendor/src/rnnoise_tables.c new file mode 100644 index 00000000000..adc8a28f451 --- /dev/null +++ b/crates/rnnoise/vendor/src/rnnoise_tables.c @@ -0,0 +1,874 @@ +/* The contents of this file was automatically generated by dump_rnnoise_tables.c*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include "kiss_fft.h" + +static const arch_fft_state arch_fft = {0, NULL}; + +static const opus_int32 fft_bitrev[960] = { +0, 192, 384, 576, 768, 64, 256, 448, 640, 832, 128, 320, 512, 704, 896, +16, 208, 400, 592, 784, 80, 272, 464, 656, 848, 144, 336, 528, 720, 912, +32, 224, 416, 608, 800, 96, 288, 480, 672, 864, 160, 352, 544, 736, 928, +48, 240, 432, 624, 816, 112, 304, 496, 688, 880, 176, 368, 560, 752, 944, +4, 196, 388, 580, 772, 68, 260, 452, 644, 836, 132, 324, 516, 708, 900, +20, 212, 404, 596, 788, 84, 276, 468, 660, 852, 148, 340, 532, 724, 916, +36, 228, 420, 612, 804, 100, 292, 484, 676, 868, 164, 356, 548, 740, 932, +52, 244, 436, 628, 820, 116, 308, 500, 692, 884, 180, 372, 564, 756, 948, +8, 200, 392, 584, 776, 72, 264, 456, 648, 840, 136, 328, 520, 712, 904, +24, 216, 408, 600, 792, 88, 280, 472, 664, 856, 152, 344, 536, 728, 920, +40, 232, 424, 616, 808, 104, 296, 488, 680, 872, 168, 360, 552, 744, 936, +56, 248, 440, 632, 824, 120, 312, 504, 696, 888, 184, 376, 568, 760, 952, +12, 204, 396, 588, 780, 76, 268, 460, 652, 844, 140, 332, 524, 716, 908, +28, 220, 412, 604, 796, 92, 284, 476, 668, 860, 156, 348, 540, 732, 924, +44, 236, 428, 620, 812, 108, 300, 492, 684, 876, 172, 364, 556, 748, 940, +60, 252, 444, 636, 828, 124, 316, 508, 700, 892, 188, 380, 572, 764, 956, +1, 193, 385, 577, 769, 65, 257, 449, 641, 833, 129, 321, 513, 705, 897, +17, 209, 401, 593, 785, 81, 273, 465, 657, 849, 145, 337, 529, 721, 913, +33, 225, 417, 609, 801, 97, 289, 481, 673, 865, 161, 353, 545, 737, 929, +49, 241, 433, 625, 817, 113, 305, 497, 689, 881, 177, 369, 561, 753, 945, +5, 197, 389, 581, 773, 69, 261, 453, 645, 837, 133, 325, 517, 709, 901, +21, 213, 405, 597, 789, 85, 277, 469, 661, 853, 149, 341, 533, 725, 917, +37, 229, 421, 613, 805, 101, 293, 485, 677, 869, 165, 357, 549, 741, 933, +53, 245, 437, 629, 821, 117, 309, 501, 693, 885, 181, 373, 565, 757, 949, +9, 201, 393, 585, 777, 73, 265, 457, 649, 841, 137, 329, 521, 713, 905, +25, 217, 409, 601, 793, 89, 281, 473, 665, 857, 153, 345, 537, 729, 921, +41, 233, 425, 617, 809, 105, 297, 489, 681, 873, 169, 361, 553, 745, 937, +57, 249, 441, 633, 825, 121, 313, 505, 697, 889, 185, 377, 569, 761, 953, +13, 205, 397, 589, 781, 77, 269, 461, 653, 845, 141, 333, 525, 717, 909, +29, 221, 413, 605, 797, 93, 285, 477, 669, 861, 157, 349, 541, 733, 925, +45, 237, 429, 621, 813, 109, 301, 493, 685, 877, 173, 365, 557, 749, 941, +61, 253, 445, 637, 829, 125, 317, 509, 701, 893, 189, 381, 573, 765, 957, +2, 194, 386, 578, 770, 66, 258, 450, 642, 834, 130, 322, 514, 706, 898, +18, 210, 402, 594, 786, 82, 274, 466, 658, 850, 146, 338, 530, 722, 914, +34, 226, 418, 610, 802, 98, 290, 482, 674, 866, 162, 354, 546, 738, 930, +50, 242, 434, 626, 818, 114, 306, 498, 690, 882, 178, 370, 562, 754, 946, +6, 198, 390, 582, 774, 70, 262, 454, 646, 838, 134, 326, 518, 710, 902, +22, 214, 406, 598, 790, 86, 278, 470, 662, 854, 150, 342, 534, 726, 918, +38, 230, 422, 614, 806, 102, 294, 486, 678, 870, 166, 358, 550, 742, 934, +54, 246, 438, 630, 822, 118, 310, 502, 694, 886, 182, 374, 566, 758, 950, +10, 202, 394, 586, 778, 74, 266, 458, 650, 842, 138, 330, 522, 714, 906, +26, 218, 410, 602, 794, 90, 282, 474, 666, 858, 154, 346, 538, 730, 922, +42, 234, 426, 618, 810, 106, 298, 490, 682, 874, 170, 362, 554, 746, 938, +58, 250, 442, 634, 826, 122, 314, 506, 698, 890, 186, 378, 570, 762, 954, +14, 206, 398, 590, 782, 78, 270, 462, 654, 846, 142, 334, 526, 718, 910, +30, 222, 414, 606, 798, 94, 286, 478, 670, 862, 158, 350, 542, 734, 926, +46, 238, 430, 622, 814, 110, 302, 494, 686, 878, 174, 366, 558, 750, 942, +62, 254, 446, 638, 830, 126, 318, 510, 702, 894, 190, 382, 574, 766, 958, +3, 195, 387, 579, 771, 67, 259, 451, 643, 835, 131, 323, 515, 707, 899, +19, 211, 403, 595, 787, 83, 275, 467, 659, 851, 147, 339, 531, 723, 915, +35, 227, 419, 611, 803, 99, 291, 483, 675, 867, 163, 355, 547, 739, 931, +51, 243, 435, 627, 819, 115, 307, 499, 691, 883, 179, 371, 563, 755, 947, +7, 199, 391, 583, 775, 71, 263, 455, 647, 839, 135, 327, 519, 711, 903, +23, 215, 407, 599, 791, 87, 279, 471, 663, 855, 151, 343, 535, 727, 919, +39, 231, 423, 615, 807, 103, 295, 487, 679, 871, 167, 359, 551, 743, 935, +55, 247, 439, 631, 823, 119, 311, 503, 695, 887, 183, 375, 567, 759, 951, +11, 203, 395, 587, 779, 75, 267, 459, 651, 843, 139, 331, 523, 715, 907, +27, 219, 411, 603, 795, 91, 283, 475, 667, 859, 155, 347, 539, 731, 923, +43, 235, 427, 619, 811, 107, 299, 491, 683, 875, 171, 363, 555, 747, 939, +59, 251, 443, 635, 827, 123, 315, 507, 699, 891, 187, 379, 571, 763, 955, +15, 207, 399, 591, 783, 79, 271, 463, 655, 847, 143, 335, 527, 719, 911, +31, 223, 415, 607, 799, 95, 287, 479, 671, 863, 159, 351, 543, 735, 927, +47, 239, 431, 623, 815, 111, 303, 495, 687, 879, 175, 367, 559, 751, 943, +63, 255, 447, 639, 831, 127, 319, 511, 703, 895, 191, 383, 575, 767, 959, +}; + +static const kiss_twiddle_cpx fft_twiddles[960] = { +{1.00000000f, -0.00000000f}, {0.999978602f, -0.00654493785f}, +{0.999914348f, -0.0130895954f}, {0.999807239f, -0.0196336918f}, +{0.999657333f, -0.0261769481f}, {0.999464571f, -0.0327190831f}, +{0.999229014f, -0.0392598175f}, {0.998950660f, -0.0457988679f}, +{0.998629510f, -0.0523359552f}, {0.998265624f, -0.0588708036f}, +{0.997858942f, -0.0654031262f}, {0.997409463f, -0.0719326511f}, +{0.996917307f, -0.0784590989f}, {0.996382475f, -0.0849821791f}, +{0.995804906f, -0.0915016159f}, {0.995184720f, -0.0980171412f}, +{0.994521916f, -0.104528464f}, {0.993816435f, -0.111035310f}, +{0.993068457f, -0.117537394f}, {0.992277920f, -0.124034449f}, +{0.991444886f, -0.130526185f}, {0.990569353f, -0.137012348f}, +{0.989651382f, -0.143492624f}, {0.988691032f, -0.149966761f}, +{0.987688363f, -0.156434461f}, {0.986643314f, -0.162895471f}, +{0.985556066f, -0.169349506f}, {0.984426558f, -0.175796285f}, +{0.983254910f, -0.182235524f}, {0.982041121f, -0.188666970f}, +{0.980785251f, -0.195090324f}, {0.979487419f, -0.201505318f}, +{0.978147626f, -0.207911685f}, {0.976765871f, -0.214309156f}, +{0.975342333f, -0.220697433f}, {0.973876953f, -0.227076262f}, +{0.972369909f, -0.233445361f}, {0.970821202f, -0.239804462f}, +{0.969230890f, -0.246153295f}, {0.967599094f, -0.252491564f}, +{0.965925813f, -0.258819044f}, {0.964211166f, -0.265135437f}, +{0.962455213f, -0.271440446f}, {0.960658073f, -0.277733833f}, +{0.958819747f, -0.284015357f}, {0.956940353f, -0.290284663f}, +{0.955019951f, -0.296541572f}, {0.953058660f, -0.302785784f}, +{0.951056540f, -0.309017003f}, {0.949013650f, -0.315234989f}, +{0.946930110f, -0.321439475f}, {0.944806039f, -0.327630192f}, +{0.942641497f, -0.333806872f}, {0.940436542f, -0.339969248f}, +{0.938191354f, -0.346117049f}, {0.935905933f, -0.352250040f}, +{0.933580399f, -0.358367950f}, {0.931214929f, -0.364470512f}, +{0.928809524f, -0.370557427f}, {0.926364362f, -0.376628488f}, +{0.923879504f, -0.382683426f}, {0.921355128f, -0.388721973f}, +{0.918791234f, -0.394743860f}, {0.916187942f, -0.400748819f}, +{0.913545430f, -0.406736642f}, {0.910863817f, -0.412707031f}, +{0.908143163f, -0.418659747f}, {0.905383646f, -0.424594522f}, +{0.902585268f, -0.430511087f}, {0.899748266f, -0.436409235f}, +{0.896872759f, -0.442288697f}, {0.893958807f, -0.448149204f}, +{0.891006529f, -0.453990489f}, {0.888016105f, -0.459812373f}, +{0.884987652f, -0.465614527f}, {0.881921291f, -0.471396744f}, +{0.878817141f, -0.477158755f}, {0.875675321f, -0.482900351f}, +{0.872496009f, -0.488621235f}, {0.869279325f, -0.494321197f}, +{0.866025388f, -0.500000000f}, {0.862734377f, -0.505657375f}, +{0.859406412f, -0.511293113f}, {0.856041610f, -0.516906917f}, +{0.852640152f, -0.522498548f}, {0.849202156f, -0.528067827f}, +{0.845727801f, -0.533614516f}, {0.842217207f, -0.539138317f}, +{0.838670552f, -0.544639051f}, {0.835087955f, -0.550116420f}, +{0.831469595f, -0.555570245f}, {0.827815652f, -0.561000228f}, +{0.824126184f, -0.566406250f}, {0.820401430f, -0.571787953f}, +{0.816641569f, -0.577145219f}, {0.812846661f, -0.582477689f}, +{0.809017003f, -0.587785244f}, {0.805152655f, -0.593067646f}, +{0.801253796f, -0.598324597f}, {0.797320664f, -0.603555918f}, +{0.793353319f, -0.608761430f}, {0.789352059f, -0.613940835f}, +{0.785316944f, -0.619093955f}, {0.781248152f, -0.624220550f}, +{0.777145982f, -0.629320383f}, {0.773010433f, -0.634393275f}, +{0.768841803f, -0.639438987f}, {0.764640272f, -0.644457340f}, +{0.760405958f, -0.649448037f}, {0.756139100f, -0.654410958f}, +{0.751839817f, -0.659345806f}, {0.747508347f, -0.664252460f}, +{0.743144810f, -0.669130623f}, {0.738749504f, -0.673980117f}, +{0.734322488f, -0.678800762f}, {0.729864061f, -0.683592319f}, +{0.725374401f, -0.688354552f}, {0.720853567f, -0.693087339f}, +{0.716301918f, -0.697790444f}, {0.711719632f, -0.702463686f}, +{0.707106769f, -0.707106769f}, {0.702463686f, -0.711719632f}, +{0.697790444f, -0.716301918f}, {0.693087339f, -0.720853567f}, +{0.688354552f, -0.725374401f}, {0.683592319f, -0.729864061f}, +{0.678800762f, -0.734322488f}, {0.673980117f, -0.738749504f}, +{0.669130623f, -0.743144810f}, {0.664252460f, -0.747508347f}, +{0.659345806f, -0.751839817f}, {0.654410958f, -0.756139100f}, +{0.649448037f, -0.760405958f}, {0.644457340f, -0.764640272f}, +{0.639438987f, -0.768841803f}, {0.634393275f, -0.773010433f}, +{0.629320383f, -0.777145982f}, {0.624220550f, -0.781248152f}, +{0.619093955f, -0.785316944f}, {0.613940835f, -0.789352059f}, +{0.608761430f, -0.793353319f}, {0.603555918f, -0.797320664f}, +{0.598324597f, -0.801253796f}, {0.593067646f, -0.805152655f}, +{0.587785244f, -0.809017003f}, {0.582477689f, -0.812846661f}, +{0.577145219f, -0.816641569f}, {0.571787953f, -0.820401430f}, +{0.566406250f, -0.824126184f}, {0.561000228f, -0.827815652f}, +{0.555570245f, -0.831469595f}, {0.550116420f, -0.835087955f}, +{0.544639051f, -0.838670552f}, {0.539138317f, -0.842217207f}, +{0.533614516f, -0.845727801f}, {0.528067827f, -0.849202156f}, +{0.522498548f, -0.852640152f}, {0.516906917f, -0.856041610f}, +{0.511293113f, -0.859406412f}, {0.505657375f, -0.862734377f}, +{0.500000000f, -0.866025388f}, {0.494321197f, -0.869279325f}, +{0.488621235f, -0.872496009f}, {0.482900351f, -0.875675321f}, +{0.477158755f, -0.878817141f}, {0.471396744f, -0.881921291f}, +{0.465614527f, -0.884987652f}, {0.459812373f, -0.888016105f}, +{0.453990489f, -0.891006529f}, {0.448149204f, -0.893958807f}, +{0.442288697f, -0.896872759f}, {0.436409235f, -0.899748266f}, +{0.430511087f, -0.902585268f}, {0.424594522f, -0.905383646f}, +{0.418659747f, -0.908143163f}, {0.412707031f, -0.910863817f}, +{0.406736642f, -0.913545430f}, {0.400748819f, -0.916187942f}, +{0.394743860f, -0.918791234f}, {0.388721973f, -0.921355128f}, +{0.382683426f, -0.923879504f}, {0.376628488f, -0.926364362f}, +{0.370557427f, -0.928809524f}, {0.364470512f, -0.931214929f}, +{0.358367950f, -0.933580399f}, {0.352250040f, -0.935905933f}, +{0.346117049f, -0.938191354f}, {0.339969248f, -0.940436542f}, +{0.333806872f, -0.942641497f}, {0.327630192f, -0.944806039f}, +{0.321439475f, -0.946930110f}, {0.315234989f, -0.949013650f}, +{0.309017003f, -0.951056540f}, {0.302785784f, -0.953058660f}, +{0.296541572f, -0.955019951f}, {0.290284663f, -0.956940353f}, +{0.284015357f, -0.958819747f}, {0.277733833f, -0.960658073f}, +{0.271440446f, -0.962455213f}, {0.265135437f, -0.964211166f}, +{0.258819044f, -0.965925813f}, {0.252491564f, -0.967599094f}, +{0.246153295f, -0.969230890f}, {0.239804462f, -0.970821202f}, +{0.233445361f, -0.972369909f}, {0.227076262f, -0.973876953f}, +{0.220697433f, -0.975342333f}, {0.214309156f, -0.976765871f}, +{0.207911685f, -0.978147626f}, {0.201505318f, -0.979487419f}, +{0.195090324f, -0.980785251f}, {0.188666970f, -0.982041121f}, +{0.182235524f, -0.983254910f}, {0.175796285f, -0.984426558f}, +{0.169349506f, -0.985556066f}, {0.162895471f, -0.986643314f}, +{0.156434461f, -0.987688363f}, {0.149966761f, -0.988691032f}, +{0.143492624f, -0.989651382f}, {0.137012348f, -0.990569353f}, +{0.130526185f, -0.991444886f}, {0.124034449f, -0.992277920f}, +{0.117537394f, -0.993068457f}, {0.111035310f, -0.993816435f}, +{0.104528464f, -0.994521916f}, {0.0980171412f, -0.995184720f}, +{0.0915016159f, -0.995804906f}, {0.0849821791f, -0.996382475f}, +{0.0784590989f, -0.996917307f}, {0.0719326511f, -0.997409463f}, +{0.0654031262f, -0.997858942f}, {0.0588708036f, -0.998265624f}, +{0.0523359552f, -0.998629510f}, {0.0457988679f, -0.998950660f}, +{0.0392598175f, -0.999229014f}, {0.0327190831f, -0.999464571f}, +{0.0261769481f, -0.999657333f}, {0.0196336918f, -0.999807239f}, +{0.0130895954f, -0.999914348f}, {0.00654493785f, -0.999978602f}, +{6.12323426e-17f, -1.00000000f}, {-0.00654493785f, -0.999978602f}, +{-0.0130895954f, -0.999914348f}, {-0.0196336918f, -0.999807239f}, +{-0.0261769481f, -0.999657333f}, {-0.0327190831f, -0.999464571f}, +{-0.0392598175f, -0.999229014f}, {-0.0457988679f, -0.998950660f}, +{-0.0523359552f, -0.998629510f}, {-0.0588708036f, -0.998265624f}, +{-0.0654031262f, -0.997858942f}, {-0.0719326511f, -0.997409463f}, +{-0.0784590989f, -0.996917307f}, {-0.0849821791f, -0.996382475f}, +{-0.0915016159f, -0.995804906f}, {-0.0980171412f, -0.995184720f}, +{-0.104528464f, -0.994521916f}, {-0.111035310f, -0.993816435f}, +{-0.117537394f, -0.993068457f}, {-0.124034449f, -0.992277920f}, +{-0.130526185f, -0.991444886f}, {-0.137012348f, -0.990569353f}, +{-0.143492624f, -0.989651382f}, {-0.149966761f, -0.988691032f}, +{-0.156434461f, -0.987688363f}, {-0.162895471f, -0.986643314f}, +{-0.169349506f, -0.985556066f}, {-0.175796285f, -0.984426558f}, +{-0.182235524f, -0.983254910f}, {-0.188666970f, -0.982041121f}, +{-0.195090324f, -0.980785251f}, {-0.201505318f, -0.979487419f}, +{-0.207911685f, -0.978147626f}, {-0.214309156f, -0.976765871f}, +{-0.220697433f, -0.975342333f}, {-0.227076262f, -0.973876953f}, +{-0.233445361f, -0.972369909f}, {-0.239804462f, -0.970821202f}, +{-0.246153295f, -0.969230890f}, {-0.252491564f, -0.967599094f}, +{-0.258819044f, -0.965925813f}, {-0.265135437f, -0.964211166f}, +{-0.271440446f, -0.962455213f}, {-0.277733833f, -0.960658073f}, +{-0.284015357f, -0.958819747f}, {-0.290284663f, -0.956940353f}, +{-0.296541572f, -0.955019951f}, {-0.302785784f, -0.953058660f}, +{-0.309017003f, -0.951056540f}, {-0.315234989f, -0.949013650f}, +{-0.321439475f, -0.946930110f}, {-0.327630192f, -0.944806039f}, +{-0.333806872f, -0.942641497f}, {-0.339969248f, -0.940436542f}, +{-0.346117049f, -0.938191354f}, {-0.352250040f, -0.935905933f}, +{-0.358367950f, -0.933580399f}, {-0.364470512f, -0.931214929f}, +{-0.370557427f, -0.928809524f}, {-0.376628488f, -0.926364362f}, +{-0.382683426f, -0.923879504f}, {-0.388721973f, -0.921355128f}, +{-0.394743860f, -0.918791234f}, {-0.400748819f, -0.916187942f}, +{-0.406736642f, -0.913545430f}, {-0.412707031f, -0.910863817f}, +{-0.418659747f, -0.908143163f}, {-0.424594522f, -0.905383646f}, +{-0.430511087f, -0.902585268f}, {-0.436409235f, -0.899748266f}, +{-0.442288697f, -0.896872759f}, {-0.448149204f, -0.893958807f}, +{-0.453990489f, -0.891006529f}, {-0.459812373f, -0.888016105f}, +{-0.465614527f, -0.884987652f}, {-0.471396744f, -0.881921291f}, +{-0.477158755f, -0.878817141f}, {-0.482900351f, -0.875675321f}, +{-0.488621235f, -0.872496009f}, {-0.494321197f, -0.869279325f}, +{-0.500000000f, -0.866025388f}, {-0.505657375f, -0.862734377f}, +{-0.511293113f, -0.859406412f}, {-0.516906917f, -0.856041610f}, +{-0.522498548f, -0.852640152f}, {-0.528067827f, -0.849202156f}, +{-0.533614516f, -0.845727801f}, {-0.539138317f, -0.842217207f}, +{-0.544639051f, -0.838670552f}, {-0.550116420f, -0.835087955f}, +{-0.555570245f, -0.831469595f}, {-0.561000228f, -0.827815652f}, +{-0.566406250f, -0.824126184f}, {-0.571787953f, -0.820401430f}, +{-0.577145219f, -0.816641569f}, {-0.582477689f, -0.812846661f}, +{-0.587785244f, -0.809017003f}, {-0.593067646f, -0.805152655f}, +{-0.598324597f, -0.801253796f}, {-0.603555918f, -0.797320664f}, +{-0.608761430f, -0.793353319f}, {-0.613940835f, -0.789352059f}, +{-0.619093955f, -0.785316944f}, {-0.624220550f, -0.781248152f}, +{-0.629320383f, -0.777145982f}, {-0.634393275f, -0.773010433f}, +{-0.639438987f, -0.768841803f}, {-0.644457340f, -0.764640272f}, +{-0.649448037f, -0.760405958f}, {-0.654410958f, -0.756139100f}, +{-0.659345806f, -0.751839817f}, {-0.664252460f, -0.747508347f}, +{-0.669130623f, -0.743144810f}, {-0.673980117f, -0.738749504f}, +{-0.678800762f, -0.734322488f}, {-0.683592319f, -0.729864061f}, +{-0.688354552f, -0.725374401f}, {-0.693087339f, -0.720853567f}, +{-0.697790444f, -0.716301918f}, {-0.702463686f, -0.711719632f}, +{-0.707106769f, -0.707106769f}, {-0.711719632f, -0.702463686f}, +{-0.716301918f, -0.697790444f}, {-0.720853567f, -0.693087339f}, +{-0.725374401f, -0.688354552f}, {-0.729864061f, -0.683592319f}, +{-0.734322488f, -0.678800762f}, {-0.738749504f, -0.673980117f}, +{-0.743144810f, -0.669130623f}, {-0.747508347f, -0.664252460f}, +{-0.751839817f, -0.659345806f}, {-0.756139100f, -0.654410958f}, +{-0.760405958f, -0.649448037f}, {-0.764640272f, -0.644457340f}, +{-0.768841803f, -0.639438987f}, {-0.773010433f, -0.634393275f}, +{-0.777145982f, -0.629320383f}, {-0.781248152f, -0.624220550f}, +{-0.785316944f, -0.619093955f}, {-0.789352059f, -0.613940835f}, +{-0.793353319f, -0.608761430f}, {-0.797320664f, -0.603555918f}, +{-0.801253796f, -0.598324597f}, {-0.805152655f, -0.593067646f}, +{-0.809017003f, -0.587785244f}, {-0.812846661f, -0.582477689f}, +{-0.816641569f, -0.577145219f}, {-0.820401430f, -0.571787953f}, +{-0.824126184f, -0.566406250f}, {-0.827815652f, -0.561000228f}, +{-0.831469595f, -0.555570245f}, {-0.835087955f, -0.550116420f}, +{-0.838670552f, -0.544639051f}, {-0.842217207f, -0.539138317f}, +{-0.845727801f, -0.533614516f}, {-0.849202156f, -0.528067827f}, +{-0.852640152f, -0.522498548f}, {-0.856041610f, -0.516906917f}, +{-0.859406412f, -0.511293113f}, {-0.862734377f, -0.505657375f}, +{-0.866025388f, -0.500000000f}, {-0.869279325f, -0.494321197f}, +{-0.872496009f, -0.488621235f}, {-0.875675321f, -0.482900351f}, +{-0.878817141f, -0.477158755f}, {-0.881921291f, -0.471396744f}, +{-0.884987652f, -0.465614527f}, {-0.888016105f, -0.459812373f}, +{-0.891006529f, -0.453990489f}, {-0.893958807f, -0.448149204f}, +{-0.896872759f, -0.442288697f}, {-0.899748266f, -0.436409235f}, +{-0.902585268f, -0.430511087f}, {-0.905383646f, -0.424594522f}, +{-0.908143163f, -0.418659747f}, {-0.910863817f, -0.412707031f}, +{-0.913545430f, -0.406736642f}, {-0.916187942f, -0.400748819f}, +{-0.918791234f, -0.394743860f}, {-0.921355128f, -0.388721973f}, +{-0.923879504f, -0.382683426f}, {-0.926364362f, -0.376628488f}, +{-0.928809524f, -0.370557427f}, {-0.931214929f, -0.364470512f}, +{-0.933580399f, -0.358367950f}, {-0.935905933f, -0.352250040f}, +{-0.938191354f, -0.346117049f}, {-0.940436542f, -0.339969248f}, +{-0.942641497f, -0.333806872f}, {-0.944806039f, -0.327630192f}, +{-0.946930110f, -0.321439475f}, {-0.949013650f, -0.315234989f}, +{-0.951056540f, -0.309017003f}, {-0.953058660f, -0.302785784f}, +{-0.955019951f, -0.296541572f}, {-0.956940353f, -0.290284663f}, +{-0.958819747f, -0.284015357f}, {-0.960658073f, -0.277733833f}, +{-0.962455213f, -0.271440446f}, {-0.964211166f, -0.265135437f}, +{-0.965925813f, -0.258819044f}, {-0.967599094f, -0.252491564f}, +{-0.969230890f, -0.246153295f}, {-0.970821202f, -0.239804462f}, +{-0.972369909f, -0.233445361f}, {-0.973876953f, -0.227076262f}, +{-0.975342333f, -0.220697433f}, {-0.976765871f, -0.214309156f}, +{-0.978147626f, -0.207911685f}, {-0.979487419f, -0.201505318f}, +{-0.980785251f, -0.195090324f}, {-0.982041121f, -0.188666970f}, +{-0.983254910f, -0.182235524f}, {-0.984426558f, -0.175796285f}, +{-0.985556066f, -0.169349506f}, {-0.986643314f, -0.162895471f}, +{-0.987688363f, -0.156434461f}, {-0.988691032f, -0.149966761f}, +{-0.989651382f, -0.143492624f}, {-0.990569353f, -0.137012348f}, +{-0.991444886f, -0.130526185f}, {-0.992277920f, -0.124034449f}, +{-0.993068457f, -0.117537394f}, {-0.993816435f, -0.111035310f}, +{-0.994521916f, -0.104528464f}, {-0.995184720f, -0.0980171412f}, +{-0.995804906f, -0.0915016159f}, {-0.996382475f, -0.0849821791f}, +{-0.996917307f, -0.0784590989f}, {-0.997409463f, -0.0719326511f}, +{-0.997858942f, -0.0654031262f}, {-0.998265624f, -0.0588708036f}, +{-0.998629510f, -0.0523359552f}, {-0.998950660f, -0.0457988679f}, +{-0.999229014f, -0.0392598175f}, {-0.999464571f, -0.0327190831f}, +{-0.999657333f, -0.0261769481f}, {-0.999807239f, -0.0196336918f}, +{-0.999914348f, -0.0130895954f}, {-0.999978602f, -0.00654493785f}, +{-1.00000000f, -1.22464685e-16f}, {-0.999978602f, 0.00654493785f}, +{-0.999914348f, 0.0130895954f}, {-0.999807239f, 0.0196336918f}, +{-0.999657333f, 0.0261769481f}, {-0.999464571f, 0.0327190831f}, +{-0.999229014f, 0.0392598175f}, {-0.998950660f, 0.0457988679f}, +{-0.998629510f, 0.0523359552f}, {-0.998265624f, 0.0588708036f}, +{-0.997858942f, 0.0654031262f}, {-0.997409463f, 0.0719326511f}, +{-0.996917307f, 0.0784590989f}, {-0.996382475f, 0.0849821791f}, +{-0.995804906f, 0.0915016159f}, {-0.995184720f, 0.0980171412f}, +{-0.994521916f, 0.104528464f}, {-0.993816435f, 0.111035310f}, +{-0.993068457f, 0.117537394f}, {-0.992277920f, 0.124034449f}, +{-0.991444886f, 0.130526185f}, {-0.990569353f, 0.137012348f}, +{-0.989651382f, 0.143492624f}, {-0.988691032f, 0.149966761f}, +{-0.987688363f, 0.156434461f}, {-0.986643314f, 0.162895471f}, +{-0.985556066f, 0.169349506f}, {-0.984426558f, 0.175796285f}, +{-0.983254910f, 0.182235524f}, {-0.982041121f, 0.188666970f}, +{-0.980785251f, 0.195090324f}, {-0.979487419f, 0.201505318f}, +{-0.978147626f, 0.207911685f}, {-0.976765871f, 0.214309156f}, +{-0.975342333f, 0.220697433f}, {-0.973876953f, 0.227076262f}, +{-0.972369909f, 0.233445361f}, {-0.970821202f, 0.239804462f}, +{-0.969230890f, 0.246153295f}, {-0.967599094f, 0.252491564f}, +{-0.965925813f, 0.258819044f}, {-0.964211166f, 0.265135437f}, +{-0.962455213f, 0.271440446f}, {-0.960658073f, 0.277733833f}, +{-0.958819747f, 0.284015357f}, {-0.956940353f, 0.290284663f}, +{-0.955019951f, 0.296541572f}, {-0.953058660f, 0.302785784f}, +{-0.951056540f, 0.309017003f}, {-0.949013650f, 0.315234989f}, +{-0.946930110f, 0.321439475f}, {-0.944806039f, 0.327630192f}, +{-0.942641497f, 0.333806872f}, {-0.940436542f, 0.339969248f}, +{-0.938191354f, 0.346117049f}, {-0.935905933f, 0.352250040f}, +{-0.933580399f, 0.358367950f}, {-0.931214929f, 0.364470512f}, +{-0.928809524f, 0.370557427f}, {-0.926364362f, 0.376628488f}, +{-0.923879504f, 0.382683426f}, {-0.921355128f, 0.388721973f}, +{-0.918791234f, 0.394743860f}, {-0.916187942f, 0.400748819f}, +{-0.913545430f, 0.406736642f}, {-0.910863817f, 0.412707031f}, +{-0.908143163f, 0.418659747f}, {-0.905383646f, 0.424594522f}, +{-0.902585268f, 0.430511087f}, {-0.899748266f, 0.436409235f}, +{-0.896872759f, 0.442288697f}, {-0.893958807f, 0.448149204f}, +{-0.891006529f, 0.453990489f}, {-0.888016105f, 0.459812373f}, +{-0.884987652f, 0.465614527f}, {-0.881921291f, 0.471396744f}, +{-0.878817141f, 0.477158755f}, {-0.875675321f, 0.482900351f}, +{-0.872496009f, 0.488621235f}, {-0.869279325f, 0.494321197f}, +{-0.866025388f, 0.500000000f}, {-0.862734377f, 0.505657375f}, +{-0.859406412f, 0.511293113f}, {-0.856041610f, 0.516906917f}, +{-0.852640152f, 0.522498548f}, {-0.849202156f, 0.528067827f}, +{-0.845727801f, 0.533614516f}, {-0.842217207f, 0.539138317f}, +{-0.838670552f, 0.544639051f}, {-0.835087955f, 0.550116420f}, +{-0.831469595f, 0.555570245f}, {-0.827815652f, 0.561000228f}, +{-0.824126184f, 0.566406250f}, {-0.820401430f, 0.571787953f}, +{-0.816641569f, 0.577145219f}, {-0.812846661f, 0.582477689f}, +{-0.809017003f, 0.587785244f}, {-0.805152655f, 0.593067646f}, +{-0.801253796f, 0.598324597f}, {-0.797320664f, 0.603555918f}, +{-0.793353319f, 0.608761430f}, {-0.789352059f, 0.613940835f}, +{-0.785316944f, 0.619093955f}, {-0.781248152f, 0.624220550f}, +{-0.777145982f, 0.629320383f}, {-0.773010433f, 0.634393275f}, +{-0.768841803f, 0.639438987f}, {-0.764640272f, 0.644457340f}, +{-0.760405958f, 0.649448037f}, {-0.756139100f, 0.654410958f}, +{-0.751839817f, 0.659345806f}, {-0.747508347f, 0.664252460f}, +{-0.743144810f, 0.669130623f}, {-0.738749504f, 0.673980117f}, +{-0.734322488f, 0.678800762f}, {-0.729864061f, 0.683592319f}, +{-0.725374401f, 0.688354552f}, {-0.720853567f, 0.693087339f}, +{-0.716301918f, 0.697790444f}, {-0.711719632f, 0.702463686f}, +{-0.707106769f, 0.707106769f}, {-0.702463686f, 0.711719632f}, +{-0.697790444f, 0.716301918f}, {-0.693087339f, 0.720853567f}, +{-0.688354552f, 0.725374401f}, {-0.683592319f, 0.729864061f}, +{-0.678800762f, 0.734322488f}, {-0.673980117f, 0.738749504f}, +{-0.669130623f, 0.743144810f}, {-0.664252460f, 0.747508347f}, +{-0.659345806f, 0.751839817f}, {-0.654410958f, 0.756139100f}, +{-0.649448037f, 0.760405958f}, {-0.644457340f, 0.764640272f}, +{-0.639438987f, 0.768841803f}, {-0.634393275f, 0.773010433f}, +{-0.629320383f, 0.777145982f}, {-0.624220550f, 0.781248152f}, +{-0.619093955f, 0.785316944f}, {-0.613940835f, 0.789352059f}, +{-0.608761430f, 0.793353319f}, {-0.603555918f, 0.797320664f}, +{-0.598324597f, 0.801253796f}, {-0.593067646f, 0.805152655f}, +{-0.587785244f, 0.809017003f}, {-0.582477689f, 0.812846661f}, +{-0.577145219f, 0.816641569f}, {-0.571787953f, 0.820401430f}, +{-0.566406250f, 0.824126184f}, {-0.561000228f, 0.827815652f}, +{-0.555570245f, 0.831469595f}, {-0.550116420f, 0.835087955f}, +{-0.544639051f, 0.838670552f}, {-0.539138317f, 0.842217207f}, +{-0.533614516f, 0.845727801f}, {-0.528067827f, 0.849202156f}, +{-0.522498548f, 0.852640152f}, {-0.516906917f, 0.856041610f}, +{-0.511293113f, 0.859406412f}, {-0.505657375f, 0.862734377f}, +{-0.500000000f, 0.866025388f}, {-0.494321197f, 0.869279325f}, +{-0.488621235f, 0.872496009f}, {-0.482900351f, 0.875675321f}, +{-0.477158755f, 0.878817141f}, {-0.471396744f, 0.881921291f}, +{-0.465614527f, 0.884987652f}, {-0.459812373f, 0.888016105f}, +{-0.453990489f, 0.891006529f}, {-0.448149204f, 0.893958807f}, +{-0.442288697f, 0.896872759f}, {-0.436409235f, 0.899748266f}, +{-0.430511087f, 0.902585268f}, {-0.424594522f, 0.905383646f}, +{-0.418659747f, 0.908143163f}, {-0.412707031f, 0.910863817f}, +{-0.406736642f, 0.913545430f}, {-0.400748819f, 0.916187942f}, +{-0.394743860f, 0.918791234f}, {-0.388721973f, 0.921355128f}, +{-0.382683426f, 0.923879504f}, {-0.376628488f, 0.926364362f}, +{-0.370557427f, 0.928809524f}, {-0.364470512f, 0.931214929f}, +{-0.358367950f, 0.933580399f}, {-0.352250040f, 0.935905933f}, +{-0.346117049f, 0.938191354f}, {-0.339969248f, 0.940436542f}, +{-0.333806872f, 0.942641497f}, {-0.327630192f, 0.944806039f}, +{-0.321439475f, 0.946930110f}, {-0.315234989f, 0.949013650f}, +{-0.309017003f, 0.951056540f}, {-0.302785784f, 0.953058660f}, +{-0.296541572f, 0.955019951f}, {-0.290284663f, 0.956940353f}, +{-0.284015357f, 0.958819747f}, {-0.277733833f, 0.960658073f}, +{-0.271440446f, 0.962455213f}, {-0.265135437f, 0.964211166f}, +{-0.258819044f, 0.965925813f}, {-0.252491564f, 0.967599094f}, +{-0.246153295f, 0.969230890f}, {-0.239804462f, 0.970821202f}, +{-0.233445361f, 0.972369909f}, {-0.227076262f, 0.973876953f}, +{-0.220697433f, 0.975342333f}, {-0.214309156f, 0.976765871f}, +{-0.207911685f, 0.978147626f}, {-0.201505318f, 0.979487419f}, +{-0.195090324f, 0.980785251f}, {-0.188666970f, 0.982041121f}, +{-0.182235524f, 0.983254910f}, {-0.175796285f, 0.984426558f}, +{-0.169349506f, 0.985556066f}, {-0.162895471f, 0.986643314f}, +{-0.156434461f, 0.987688363f}, {-0.149966761f, 0.988691032f}, +{-0.143492624f, 0.989651382f}, {-0.137012348f, 0.990569353f}, +{-0.130526185f, 0.991444886f}, {-0.124034449f, 0.992277920f}, +{-0.117537394f, 0.993068457f}, {-0.111035310f, 0.993816435f}, +{-0.104528464f, 0.994521916f}, {-0.0980171412f, 0.995184720f}, +{-0.0915016159f, 0.995804906f}, {-0.0849821791f, 0.996382475f}, +{-0.0784590989f, 0.996917307f}, {-0.0719326511f, 0.997409463f}, +{-0.0654031262f, 0.997858942f}, {-0.0588708036f, 0.998265624f}, +{-0.0523359552f, 0.998629510f}, {-0.0457988679f, 0.998950660f}, +{-0.0392598175f, 0.999229014f}, {-0.0327190831f, 0.999464571f}, +{-0.0261769481f, 0.999657333f}, {-0.0196336918f, 0.999807239f}, +{-0.0130895954f, 0.999914348f}, {-0.00654493785f, 0.999978602f}, +{-1.83697015e-16f, 1.00000000f}, {0.00654493785f, 0.999978602f}, +{0.0130895954f, 0.999914348f}, {0.0196336918f, 0.999807239f}, +{0.0261769481f, 0.999657333f}, {0.0327190831f, 0.999464571f}, +{0.0392598175f, 0.999229014f}, {0.0457988679f, 0.998950660f}, +{0.0523359552f, 0.998629510f}, {0.0588708036f, 0.998265624f}, +{0.0654031262f, 0.997858942f}, {0.0719326511f, 0.997409463f}, +{0.0784590989f, 0.996917307f}, {0.0849821791f, 0.996382475f}, +{0.0915016159f, 0.995804906f}, {0.0980171412f, 0.995184720f}, +{0.104528464f, 0.994521916f}, {0.111035310f, 0.993816435f}, +{0.117537394f, 0.993068457f}, {0.124034449f, 0.992277920f}, +{0.130526185f, 0.991444886f}, {0.137012348f, 0.990569353f}, +{0.143492624f, 0.989651382f}, {0.149966761f, 0.988691032f}, +{0.156434461f, 0.987688363f}, {0.162895471f, 0.986643314f}, +{0.169349506f, 0.985556066f}, {0.175796285f, 0.984426558f}, +{0.182235524f, 0.983254910f}, {0.188666970f, 0.982041121f}, +{0.195090324f, 0.980785251f}, {0.201505318f, 0.979487419f}, +{0.207911685f, 0.978147626f}, {0.214309156f, 0.976765871f}, +{0.220697433f, 0.975342333f}, {0.227076262f, 0.973876953f}, +{0.233445361f, 0.972369909f}, {0.239804462f, 0.970821202f}, +{0.246153295f, 0.969230890f}, {0.252491564f, 0.967599094f}, +{0.258819044f, 0.965925813f}, {0.265135437f, 0.964211166f}, +{0.271440446f, 0.962455213f}, {0.277733833f, 0.960658073f}, +{0.284015357f, 0.958819747f}, {0.290284663f, 0.956940353f}, +{0.296541572f, 0.955019951f}, {0.302785784f, 0.953058660f}, +{0.309017003f, 0.951056540f}, {0.315234989f, 0.949013650f}, +{0.321439475f, 0.946930110f}, {0.327630192f, 0.944806039f}, +{0.333806872f, 0.942641497f}, {0.339969248f, 0.940436542f}, +{0.346117049f, 0.938191354f}, {0.352250040f, 0.935905933f}, +{0.358367950f, 0.933580399f}, {0.364470512f, 0.931214929f}, +{0.370557427f, 0.928809524f}, {0.376628488f, 0.926364362f}, +{0.382683426f, 0.923879504f}, {0.388721973f, 0.921355128f}, +{0.394743860f, 0.918791234f}, {0.400748819f, 0.916187942f}, +{0.406736642f, 0.913545430f}, {0.412707031f, 0.910863817f}, +{0.418659747f, 0.908143163f}, {0.424594522f, 0.905383646f}, +{0.430511087f, 0.902585268f}, {0.436409235f, 0.899748266f}, +{0.442288697f, 0.896872759f}, {0.448149204f, 0.893958807f}, +{0.453990489f, 0.891006529f}, {0.459812373f, 0.888016105f}, +{0.465614527f, 0.884987652f}, {0.471396744f, 0.881921291f}, +{0.477158755f, 0.878817141f}, {0.482900351f, 0.875675321f}, +{0.488621235f, 0.872496009f}, {0.494321197f, 0.869279325f}, +{0.500000000f, 0.866025388f}, {0.505657375f, 0.862734377f}, +{0.511293113f, 0.859406412f}, {0.516906917f, 0.856041610f}, +{0.522498548f, 0.852640152f}, {0.528067827f, 0.849202156f}, +{0.533614516f, 0.845727801f}, {0.539138317f, 0.842217207f}, +{0.544639051f, 0.838670552f}, {0.550116420f, 0.835087955f}, +{0.555570245f, 0.831469595f}, {0.561000228f, 0.827815652f}, +{0.566406250f, 0.824126184f}, {0.571787953f, 0.820401430f}, +{0.577145219f, 0.816641569f}, {0.582477689f, 0.812846661f}, +{0.587785244f, 0.809017003f}, {0.593067646f, 0.805152655f}, +{0.598324597f, 0.801253796f}, {0.603555918f, 0.797320664f}, +{0.608761430f, 0.793353319f}, {0.613940835f, 0.789352059f}, +{0.619093955f, 0.785316944f}, {0.624220550f, 0.781248152f}, +{0.629320383f, 0.777145982f}, {0.634393275f, 0.773010433f}, +{0.639438987f, 0.768841803f}, {0.644457340f, 0.764640272f}, +{0.649448037f, 0.760405958f}, {0.654410958f, 0.756139100f}, +{0.659345806f, 0.751839817f}, {0.664252460f, 0.747508347f}, +{0.669130623f, 0.743144810f}, {0.673980117f, 0.738749504f}, +{0.678800762f, 0.734322488f}, {0.683592319f, 0.729864061f}, +{0.688354552f, 0.725374401f}, {0.693087339f, 0.720853567f}, +{0.697790444f, 0.716301918f}, {0.702463686f, 0.711719632f}, +{0.707106769f, 0.707106769f}, {0.711719632f, 0.702463686f}, +{0.716301918f, 0.697790444f}, {0.720853567f, 0.693087339f}, +{0.725374401f, 0.688354552f}, {0.729864061f, 0.683592319f}, +{0.734322488f, 0.678800762f}, {0.738749504f, 0.673980117f}, +{0.743144810f, 0.669130623f}, {0.747508347f, 0.664252460f}, +{0.751839817f, 0.659345806f}, {0.756139100f, 0.654410958f}, +{0.760405958f, 0.649448037f}, {0.764640272f, 0.644457340f}, +{0.768841803f, 0.639438987f}, {0.773010433f, 0.634393275f}, +{0.777145982f, 0.629320383f}, {0.781248152f, 0.624220550f}, +{0.785316944f, 0.619093955f}, {0.789352059f, 0.613940835f}, +{0.793353319f, 0.608761430f}, {0.797320664f, 0.603555918f}, +{0.801253796f, 0.598324597f}, {0.805152655f, 0.593067646f}, +{0.809017003f, 0.587785244f}, {0.812846661f, 0.582477689f}, +{0.816641569f, 0.577145219f}, {0.820401430f, 0.571787953f}, +{0.824126184f, 0.566406250f}, {0.827815652f, 0.561000228f}, +{0.831469595f, 0.555570245f}, {0.835087955f, 0.550116420f}, +{0.838670552f, 0.544639051f}, {0.842217207f, 0.539138317f}, +{0.845727801f, 0.533614516f}, {0.849202156f, 0.528067827f}, +{0.852640152f, 0.522498548f}, {0.856041610f, 0.516906917f}, +{0.859406412f, 0.511293113f}, {0.862734377f, 0.505657375f}, +{0.866025388f, 0.500000000f}, {0.869279325f, 0.494321197f}, +{0.872496009f, 0.488621235f}, {0.875675321f, 0.482900351f}, +{0.878817141f, 0.477158755f}, {0.881921291f, 0.471396744f}, +{0.884987652f, 0.465614527f}, {0.888016105f, 0.459812373f}, +{0.891006529f, 0.453990489f}, {0.893958807f, 0.448149204f}, +{0.896872759f, 0.442288697f}, {0.899748266f, 0.436409235f}, +{0.902585268f, 0.430511087f}, {0.905383646f, 0.424594522f}, +{0.908143163f, 0.418659747f}, {0.910863817f, 0.412707031f}, +{0.913545430f, 0.406736642f}, {0.916187942f, 0.400748819f}, +{0.918791234f, 0.394743860f}, {0.921355128f, 0.388721973f}, +{0.923879504f, 0.382683426f}, {0.926364362f, 0.376628488f}, +{0.928809524f, 0.370557427f}, {0.931214929f, 0.364470512f}, +{0.933580399f, 0.358367950f}, {0.935905933f, 0.352250040f}, +{0.938191354f, 0.346117049f}, {0.940436542f, 0.339969248f}, +{0.942641497f, 0.333806872f}, {0.944806039f, 0.327630192f}, +{0.946930110f, 0.321439475f}, {0.949013650f, 0.315234989f}, +{0.951056540f, 0.309017003f}, {0.953058660f, 0.302785784f}, +{0.955019951f, 0.296541572f}, {0.956940353f, 0.290284663f}, +{0.958819747f, 0.284015357f}, {0.960658073f, 0.277733833f}, +{0.962455213f, 0.271440446f}, {0.964211166f, 0.265135437f}, +{0.965925813f, 0.258819044f}, {0.967599094f, 0.252491564f}, +{0.969230890f, 0.246153295f}, {0.970821202f, 0.239804462f}, +{0.972369909f, 0.233445361f}, {0.973876953f, 0.227076262f}, +{0.975342333f, 0.220697433f}, {0.976765871f, 0.214309156f}, +{0.978147626f, 0.207911685f}, {0.979487419f, 0.201505318f}, +{0.980785251f, 0.195090324f}, {0.982041121f, 0.188666970f}, +{0.983254910f, 0.182235524f}, {0.984426558f, 0.175796285f}, +{0.985556066f, 0.169349506f}, {0.986643314f, 0.162895471f}, +{0.987688363f, 0.156434461f}, {0.988691032f, 0.149966761f}, +{0.989651382f, 0.143492624f}, {0.990569353f, 0.137012348f}, +{0.991444886f, 0.130526185f}, {0.992277920f, 0.124034449f}, +{0.993068457f, 0.117537394f}, {0.993816435f, 0.111035310f}, +{0.994521916f, 0.104528464f}, {0.995184720f, 0.0980171412f}, +{0.995804906f, 0.0915016159f}, {0.996382475f, 0.0849821791f}, +{0.996917307f, 0.0784590989f}, {0.997409463f, 0.0719326511f}, +{0.997858942f, 0.0654031262f}, {0.998265624f, 0.0588708036f}, +{0.998629510f, 0.0523359552f}, {0.998950660f, 0.0457988679f}, +{0.999229014f, 0.0392598175f}, {0.999464571f, 0.0327190831f}, +{0.999657333f, 0.0261769481f}, {0.999807239f, 0.0196336918f}, +{0.999914348f, 0.0130895954f}, {0.999978602f, 0.00654493785f}, +}; + +const kiss_fft_state rnn_kfft = { +960, /* nfft */ +0.0010416667f, /* scale */ +-1, /* shift */ +{5, 192, 3, 64, 4, 16, 4, 4, 4, 1, 0, 0, 0, 0, 0, 0, }, /* factors */ +fft_bitrev, /* bitrev*/ +fft_twiddles, /* twiddles*/ +(arch_fft_state *)&arch_fft, /* arch_fft*/ +}; + +const float rnn_half_window[] = { +4.20549168e-06f, 3.78491532e-05f, 0.000105135041f, 0.000206060256f, 0.000340620492f, +0.000508809986f, 0.000710621476f, 0.000946046319f, 0.00121507444f, 0.00151769421f, +0.00185389258f, 0.00222365512f, 0.00262696599f, 0.00306380726f, 0.00353416055f, +0.00403800514f, 0.00457531959f, 0.00514607970f, 0.00575026125f, 0.00638783723f, +0.00705878017f, 0.00776306028f, 0.00850064680f, 0.00927150715f, 0.0100756064f, +0.0109129101f, 0.0117833801f, 0.0126869772f, 0.0136236614f, 0.0145933898f, +0.0155961197f, 0.0166318044f, 0.0177003983f, 0.0188018531f, 0.0199361145f, +0.0211031344f, 0.0223028567f, 0.0235352255f, 0.0248001851f, 0.0260976739f, +0.0274276342f, 0.0287899990f, 0.0301847085f, 0.0316116922f, 0.0330708846f, +0.0345622115f, 0.0360856056f, 0.0376409888f, 0.0392282903f, 0.0408474281f, +0.0424983241f, 0.0441808924f, 0.0458950549f, 0.0476407260f, 0.0494178124f, +0.0512262285f, 0.0530658774f, 0.0549366735f, 0.0568385124f, 0.0587713011f, +0.0607349351f, 0.0627293140f, 0.0647543296f, 0.0668098852f, 0.0688958541f, +0.0710121393f, 0.0731586292f, 0.0753351897f, 0.0775417164f, 0.0797780901f, +0.0820441842f, 0.0843398646f, 0.0866650119f, 0.0890194997f, 0.0914031938f, +0.0938159525f, 0.0962576419f, 0.0987281203f, 0.101227246f, 0.103754878f, +0.106310867f, 0.108895063f, 0.111507311f, 0.114147455f, 0.116815343f, +0.119510807f, 0.122233689f, 0.124983832f, 0.127761051f, 0.130565181f, +0.133396059f, 0.136253506f, 0.139137328f, 0.142047361f, 0.144983411f, +0.147945285f, 0.150932819f, 0.153945804f, 0.156984031f, 0.160047337f, +0.163135484f, 0.166248307f, 0.169385567f, 0.172547072f, 0.175732598f, +0.178941950f, 0.182174906f, 0.185431242f, 0.188710734f, 0.192013159f, +0.195338294f, 0.198685899f, 0.202055752f, 0.205447599f, 0.208861232f, +0.212296382f, 0.215752810f, 0.219230279f, 0.222728521f, 0.226247311f, +0.229786381f, 0.233345464f, 0.236924306f, 0.240522653f, 0.244140238f, +0.247776777f, 0.251432031f, 0.255105674f, 0.258797467f, 0.262507141f, +0.266234398f, 0.269978970f, 0.273740560f, 0.277518868f, 0.281313598f, +0.285124481f, 0.288951218f, 0.292793512f, 0.296651065f, 0.300523549f, +0.304410696f, 0.308312178f, 0.312227666f, 0.316156894f, 0.320099503f, +0.324055225f, 0.328023702f, 0.332004637f, 0.335997701f, 0.340002567f, +0.344018906f, 0.348046392f, 0.352084726f, 0.356133521f, 0.360192508f, +0.364261299f, 0.368339598f, 0.372427016f, 0.376523286f, 0.380627990f, +0.384740859f, 0.388861477f, 0.392989576f, 0.397124738f, 0.401266664f, +0.405414969f, 0.409569323f, 0.413729399f, 0.417894781f, 0.422065198f, +0.426240236f, 0.430419534f, 0.434602767f, 0.438789606f, 0.442979604f, +0.447172493f, 0.451367885f, 0.455565393f, 0.459764689f, 0.463965416f, +0.468167186f, 0.472369671f, 0.476572484f, 0.480775267f, 0.484977663f, +0.489179343f, 0.493379891f, 0.497579008f, 0.501776278f, 0.505971372f, +0.510163903f, 0.514353573f, 0.518539906f, 0.522722721f, 0.526901484f, +0.531075954f, 0.535245717f, 0.539410412f, 0.543569744f, 0.547723293f, +0.551870763f, 0.556011736f, 0.560145974f, 0.564273000f, 0.568392515f, +0.572504222f, 0.576607704f, 0.580702662f, 0.584788740f, 0.588865638f, +0.592932940f, 0.596990347f, 0.601037502f, 0.605074167f, 0.609099925f, +0.613114417f, 0.617117405f, 0.621108532f, 0.625087440f, 0.629053831f, +0.633007407f, 0.636947870f, 0.640874863f, 0.644788086f, 0.648687243f, +0.652572036f, 0.656442165f, 0.660297334f, 0.664137185f, 0.667961538f, +0.671769977f, 0.675562322f, 0.679338276f, 0.683097482f, 0.686839759f, +0.690564752f, 0.694272280f, 0.697961986f, 0.701633692f, 0.705287039f, +0.708921850f, 0.712537885f, 0.716134787f, 0.719712436f, 0.723270535f, +0.726808906f, 0.730327189f, 0.733825266f, 0.737302899f, 0.740759790f, +0.744195819f, 0.747610688f, 0.751004279f, 0.754376352f, 0.757726669f, +0.761055112f, 0.764361382f, 0.767645359f, 0.770906866f, 0.774145722f, +0.777361751f, 0.780554771f, 0.783724606f, 0.786871076f, 0.789994121f, +0.793093503f, 0.796169102f, 0.799220800f, 0.802248418f, 0.805251837f, +0.808230937f, 0.811185598f, 0.814115703f, 0.817021132f, 0.819901764f, +0.822757542f, 0.825588286f, 0.828393936f, 0.831174433f, 0.833929658f, +0.836659551f, 0.839363992f, 0.842042983f, 0.844696403f, 0.847324252f, +0.849926353f, 0.852502763f, 0.855053425f, 0.857578218f, 0.860077202f, +0.862550259f, 0.864997447f, 0.867418647f, 0.869813919f, 0.872183204f, +0.874526560f, 0.876843870f, 0.879135191f, 0.881400526f, 0.883639932f, +0.885853291f, 0.888040781f, 0.890202343f, 0.892337978f, 0.894447744f, +0.896531701f, 0.898589849f, 0.900622249f, 0.902628958f, 0.904610038f, +0.906565487f, 0.908495426f, 0.910399914f, 0.912279010f, 0.914132774f, +0.915961266f, 0.917764664f, 0.919542909f, 0.921296239f, 0.923024654f, +0.924728215f, 0.926407158f, 0.928061485f, 0.929691315f, 0.931296766f, +0.932878017f, 0.934435070f, 0.935968161f, 0.937477291f, 0.938962698f, +0.940424502f, 0.941862822f, 0.943277776f, 0.944669485f, 0.946038187f, +0.947383940f, 0.948706925f, 0.950007319f, 0.951285243f, 0.952540874f, +0.953774393f, 0.954985917f, 0.956175685f, 0.957343817f, 0.958490491f, +0.959615886f, 0.960720181f, 0.961803555f, 0.962866247f, 0.963908315f, +0.964930058f, 0.965931594f, 0.966913164f, 0.967874944f, 0.968817174f, +0.969739914f, 0.970643520f, 0.971528113f, 0.972393870f, 0.973241091f, +0.974069893f, 0.974880517f, 0.975673139f, 0.976447999f, 0.977205336f, +0.977945268f, 0.978668094f, 0.979374051f, 0.980063200f, 0.980735898f, +0.981392324f, 0.982032716f, 0.982657254f, 0.983266115f, 0.983859658f, +0.984437943f, 0.985001266f, 0.985549867f, 0.986083925f, 0.986603677f, +0.987109363f, 0.987601161f, 0.988079309f, 0.988544047f, 0.988995552f, +0.989434063f, 0.989859879f, 0.990273118f, 0.990674019f, 0.991062820f, +0.991439700f, 0.991804957f, 0.992158771f, 0.992501318f, 0.992832899f, +0.993153632f, 0.993463814f, 0.993763626f, 0.994053245f, 0.994332969f, +0.994602919f, 0.994863331f, 0.995114446f, 0.995356441f, 0.995589554f, +0.995813966f, 0.996029854f, 0.996237516f, 0.996437073f, 0.996628702f, +0.996812642f, 0.996989131f, 0.997158289f, 0.997320294f, 0.997475445f, +0.997623861f, 0.997765720f, 0.997901261f, 0.998030603f, 0.998153925f, +0.998271465f, 0.998383403f, 0.998489857f, 0.998591006f, 0.998687088f, +0.998778164f, 0.998864532f, 0.998946249f, 0.999023557f, 0.999096513f, +0.999165416f, 0.999230266f, 0.999291301f, 0.999348700f, 0.999402523f, +0.999453008f, 0.999500215f, 0.999544322f, 0.999585509f, 0.999623775f, +0.999659419f, 0.999692440f, 0.999723017f, 0.999751270f, 0.999777317f, +0.999801278f, 0.999823213f, 0.999843359f, 0.999861658f, 0.999878347f, +0.999893486f, 0.999907196f, 0.999919534f, 0.999930561f, 0.999940455f, +0.999949217f, 0.999957025f, 0.999963880f, 0.999969840f, 0.999975085f, +0.999979615f, 0.999983490f, 0.999986768f, 0.999989510f, 0.999991834f, +0.999993742f, 0.999995291f, 0.999996543f, 0.999997556f, 0.999998271f, +0.999998868f, 0.999999285f, 0.999999523f, 0.999999762f, 0.999999881f, +0.999999940f, 1.00000000f, 1.00000000f, 1.00000000f, 1.00000000f, +}; + +const float rnn_dct_table[] = { +0.707106769f, 0.998795450f, 0.995184720f, 0.989176512f, 0.980785251f, +0.970031261f, 0.956940353f, 0.941544056f, 0.923879504f, 0.903989315f, +0.881921291f, 0.857728601f, 0.831469595f, 0.803207517f, 0.773010433f, +0.740951121f, 0.707106769f, 0.671558976f, 0.634393275f, 0.595699310f, +0.555570245f, 0.514102757f, 0.471396744f, 0.427555084f, 0.382683426f, +0.336889863f, 0.290284663f, 0.242980182f, 0.195090324f, 0.146730468f, +0.0980171412f, 0.0490676761f, 0.707106769f, 0.989176512f, 0.956940353f, +0.903989315f, 0.831469595f, 0.740951121f, 0.634393275f, 0.514102757f, +0.382683426f, 0.242980182f, 0.0980171412f, -0.0490676761f, -0.195090324f, +-0.336889863f, -0.471396744f, -0.595699310f, -0.707106769f, -0.803207517f, +-0.881921291f, -0.941544056f, -0.980785251f, -0.998795450f, -0.995184720f, +-0.970031261f, -0.923879504f, -0.857728601f, -0.773010433f, -0.671558976f, +-0.555570245f, -0.427555084f, -0.290284663f, -0.146730468f, 0.707106769f, +0.970031261f, 0.881921291f, 0.740951121f, 0.555570245f, 0.336889863f, +0.0980171412f, -0.146730468f, -0.382683426f, -0.595699310f, -0.773010433f, +-0.903989315f, -0.980785251f, -0.998795450f, -0.956940353f, -0.857728601f, +-0.707106769f, -0.514102757f, -0.290284663f, -0.0490676761f, 0.195090324f, +0.427555084f, 0.634393275f, 0.803207517f, 0.923879504f, 0.989176512f, +0.995184720f, 0.941544056f, 0.831469595f, 0.671558976f, 0.471396744f, +0.242980182f, 0.707106769f, 0.941544056f, 0.773010433f, 0.514102757f, +0.195090324f, -0.146730468f, -0.471396744f, -0.740951121f, -0.923879504f, +-0.998795450f, -0.956940353f, -0.803207517f, -0.555570245f, -0.242980182f, +0.0980171412f, 0.427555084f, 0.707106769f, 0.903989315f, 0.995184720f, +0.970031261f, 0.831469595f, 0.595699310f, 0.290284663f, -0.0490676761f, +-0.382683426f, -0.671558976f, -0.881921291f, -0.989176512f, -0.980785251f, +-0.857728601f, -0.634393275f, -0.336889863f, 0.707106769f, 0.903989315f, +0.634393275f, 0.242980182f, -0.195090324f, -0.595699310f, -0.881921291f, +-0.998795450f, -0.923879504f, -0.671558976f, -0.290284663f, 0.146730468f, +0.555570245f, 0.857728601f, 0.995184720f, 0.941544056f, 0.707106769f, +0.336889863f, -0.0980171412f, -0.514102757f, -0.831469595f, -0.989176512f, +-0.956940353f, -0.740951121f, -0.382683426f, 0.0490676761f, 0.471396744f, +0.803207517f, 0.980785251f, 0.970031261f, 0.773010433f, 0.427555084f, +0.707106769f, 0.857728601f, 0.471396744f, -0.0490676761f, -0.555570245f, +-0.903989315f, -0.995184720f, -0.803207517f, -0.382683426f, 0.146730468f, +0.634393275f, 0.941544056f, 0.980785251f, 0.740951121f, 0.290284663f, +-0.242980182f, -0.707106769f, -0.970031261f, -0.956940353f, -0.671558976f, +-0.195090324f, 0.336889863f, 0.773010433f, 0.989176512f, 0.923879504f, +0.595699310f, 0.0980171412f, -0.427555084f, -0.831469595f, -0.998795450f, +-0.881921291f, -0.514102757f, 0.707106769f, 0.803207517f, 0.290284663f, +-0.336889863f, -0.831469595f, -0.998795450f, -0.773010433f, -0.242980182f, +0.382683426f, 0.857728601f, 0.995184720f, 0.740951121f, 0.195090324f, +-0.427555084f, -0.881921291f, -0.989176512f, -0.707106769f, -0.146730468f, +0.471396744f, 0.903989315f, 0.980785251f, 0.671558976f, 0.0980171412f, +-0.514102757f, -0.923879504f, -0.970031261f, -0.634393275f, -0.0490676761f, +0.555570245f, 0.941544056f, 0.956940353f, 0.595699310f, 0.707106769f, +0.740951121f, 0.0980171412f, -0.595699310f, -0.980785251f, -0.857728601f, +-0.290284663f, 0.427555084f, 0.923879504f, 0.941544056f, 0.471396744f, +-0.242980182f, -0.831469595f, -0.989176512f, -0.634393275f, 0.0490676761f, +0.707106769f, 0.998795450f, 0.773010433f, 0.146730468f, -0.555570245f, +-0.970031261f, -0.881921291f, -0.336889863f, 0.382683426f, 0.903989315f, +0.956940353f, 0.514102757f, -0.195090324f, -0.803207517f, -0.995184720f, +-0.671558976f, 0.707106769f, 0.671558976f, -0.0980171412f, -0.803207517f, +-0.980785251f, -0.514102757f, 0.290284663f, 0.903989315f, 0.923879504f, +0.336889863f, -0.471396744f, -0.970031261f, -0.831469595f, -0.146730468f, +0.634393275f, 0.998795450f, 0.707106769f, -0.0490676761f, -0.773010433f, +-0.989176512f, -0.555570245f, 0.242980182f, 0.881921291f, 0.941544056f, +0.382683426f, -0.427555084f, -0.956940353f, -0.857728601f, -0.195090324f, +0.595699310f, 0.995184720f, 0.740951121f, 0.707106769f, 0.595699310f, +-0.290284663f, -0.941544056f, -0.831469595f, -0.0490676761f, 0.773010433f, +0.970031261f, 0.382683426f, -0.514102757f, -0.995184720f, -0.671558976f, +0.195090324f, 0.903989315f, 0.881921291f, 0.146730468f, -0.707106769f, +-0.989176512f, -0.471396744f, 0.427555084f, 0.980785251f, 0.740951121f, +-0.0980171412f, -0.857728601f, -0.923879504f, -0.242980182f, 0.634393275f, +0.998795450f, 0.555570245f, -0.336889863f, -0.956940353f, -0.803207517f, +0.707106769f, 0.514102757f, -0.471396744f, -0.998795450f, -0.555570245f, +0.427555084f, 0.995184720f, 0.595699310f, -0.382683426f, -0.989176512f, +-0.634393275f, 0.336889863f, 0.980785251f, 0.671558976f, -0.290284663f, +-0.970031261f, -0.707106769f, 0.242980182f, 0.956940353f, 0.740951121f, +-0.195090324f, -0.941544056f, -0.773010433f, 0.146730468f, 0.923879504f, +0.803207517f, -0.0980171412f, -0.903989315f, -0.831469595f, 0.0490676761f, +0.881921291f, 0.857728601f, 0.707106769f, 0.427555084f, -0.634393275f, +-0.970031261f, -0.195090324f, 0.803207517f, 0.881921291f, -0.0490676761f, +-0.923879504f, -0.740951121f, 0.290284663f, 0.989176512f, 0.555570245f, +-0.514102757f, -0.995184720f, -0.336889863f, 0.707106769f, 0.941544056f, +0.0980171412f, -0.857728601f, -0.831469595f, 0.146730468f, 0.956940353f, +0.671558976f, -0.382683426f, -0.998795450f, -0.471396744f, 0.595699310f, +0.980785251f, 0.242980182f, -0.773010433f, -0.903989315f, 0.707106769f, +0.336889863f, -0.773010433f, -0.857728601f, 0.195090324f, 0.989176512f, +0.471396744f, -0.671558976f, -0.923879504f, 0.0490676761f, 0.956940353f, +0.595699310f, -0.555570245f, -0.970031261f, -0.0980171412f, 0.903989315f, +0.707106769f, -0.427555084f, -0.995184720f, -0.242980182f, 0.831469595f, +0.803207517f, -0.290284663f, -0.998795450f, -0.382683426f, 0.740951121f, +0.881921291f, -0.146730468f, -0.980785251f, -0.514102757f, 0.634393275f, +0.941544056f, 0.707106769f, 0.242980182f, -0.881921291f, -0.671558976f, +0.555570245f, 0.941544056f, -0.0980171412f, -0.989176512f, -0.382683426f, +0.803207517f, 0.773010433f, -0.427555084f, -0.980785251f, -0.0490676761f, +0.956940353f, 0.514102757f, -0.707106769f, -0.857728601f, 0.290284663f, +0.998795450f, 0.195090324f, -0.903989315f, -0.634393275f, 0.595699310f, +0.923879504f, -0.146730468f, -0.995184720f, -0.336889863f, 0.831469595f, +0.740951121f, -0.471396744f, -0.970031261f, 0.707106769f, 0.146730468f, +-0.956940353f, -0.427555084f, 0.831469595f, 0.671558976f, -0.634393275f, +-0.857728601f, 0.382683426f, 0.970031261f, -0.0980171412f, -0.998795450f, +-0.195090324f, 0.941544056f, 0.471396744f, -0.803207517f, -0.707106769f, +0.595699310f, 0.881921291f, -0.336889863f, -0.980785251f, 0.0490676761f, +0.995184720f, 0.242980182f, -0.923879504f, -0.514102757f, 0.773010433f, +0.740951121f, -0.555570245f, -0.903989315f, 0.290284663f, 0.989176512f, +0.707106769f, 0.0490676761f, -0.995184720f, -0.146730468f, 0.980785251f, +0.242980182f, -0.956940353f, -0.336889863f, 0.923879504f, 0.427555084f, +-0.881921291f, -0.514102757f, 0.831469595f, 0.595699310f, -0.773010433f, +-0.671558976f, 0.707106769f, 0.740951121f, -0.634393275f, -0.803207517f, +0.555570245f, 0.857728601f, -0.471396744f, -0.903989315f, 0.382683426f, +0.941544056f, -0.290284663f, -0.970031261f, 0.195090324f, 0.989176512f, +-0.0980171412f, -0.998795450f, 0.707106769f, -0.0490676761f, -0.995184720f, +0.146730468f, 0.980785251f, -0.242980182f, -0.956940353f, 0.336889863f, +0.923879504f, -0.427555084f, -0.881921291f, 0.514102757f, 0.831469595f, +-0.595699310f, -0.773010433f, 0.671558976f, 0.707106769f, -0.740951121f, +-0.634393275f, 0.803207517f, 0.555570245f, -0.857728601f, -0.471396744f, +0.903989315f, 0.382683426f, -0.941544056f, -0.290284663f, 0.970031261f, +0.195090324f, -0.989176512f, -0.0980171412f, 0.998795450f, 0.707106769f, +-0.146730468f, -0.956940353f, 0.427555084f, 0.831469595f, -0.671558976f, +-0.634393275f, 0.857728601f, 0.382683426f, -0.970031261f, -0.0980171412f, +0.998795450f, -0.195090324f, -0.941544056f, 0.471396744f, 0.803207517f, +-0.707106769f, -0.595699310f, 0.881921291f, 0.336889863f, -0.980785251f, +-0.0490676761f, 0.995184720f, -0.242980182f, -0.923879504f, 0.514102757f, +0.773010433f, -0.740951121f, -0.555570245f, 0.903989315f, 0.290284663f, +-0.989176512f, 0.707106769f, -0.242980182f, -0.881921291f, 0.671558976f, +0.555570245f, -0.941544056f, -0.0980171412f, 0.989176512f, -0.382683426f, +-0.803207517f, 0.773010433f, 0.427555084f, -0.980785251f, 0.0490676761f, +0.956940353f, -0.514102757f, -0.707106769f, 0.857728601f, 0.290284663f, +-0.998795450f, 0.195090324f, 0.903989315f, -0.634393275f, -0.595699310f, +0.923879504f, 0.146730468f, -0.995184720f, 0.336889863f, 0.831469595f, +-0.740951121f, -0.471396744f, 0.970031261f, 0.707106769f, -0.336889863f, +-0.773010433f, 0.857728601f, 0.195090324f, -0.989176512f, 0.471396744f, +0.671558976f, -0.923879504f, -0.0490676761f, 0.956940353f, -0.595699310f, +-0.555570245f, 0.970031261f, -0.0980171412f, -0.903989315f, 0.707106769f, +0.427555084f, -0.995184720f, 0.242980182f, 0.831469595f, -0.803207517f, +-0.290284663f, 0.998795450f, -0.382683426f, -0.740951121f, 0.881921291f, +0.146730468f, -0.980785251f, 0.514102757f, 0.634393275f, -0.941544056f, +0.707106769f, -0.427555084f, -0.634393275f, 0.970031261f, -0.195090324f, +-0.803207517f, 0.881921291f, 0.0490676761f, -0.923879504f, 0.740951121f, +0.290284663f, -0.989176512f, 0.555570245f, 0.514102757f, -0.995184720f, +0.336889863f, 0.707106769f, -0.941544056f, 0.0980171412f, 0.857728601f, +-0.831469595f, -0.146730468f, 0.956940353f, -0.671558976f, -0.382683426f, +0.998795450f, -0.471396744f, -0.595699310f, 0.980785251f, -0.242980182f, +-0.773010433f, 0.903989315f, 0.707106769f, -0.514102757f, -0.471396744f, +0.998795450f, -0.555570245f, -0.427555084f, 0.995184720f, -0.595699310f, +-0.382683426f, 0.989176512f, -0.634393275f, -0.336889863f, 0.980785251f, +-0.671558976f, -0.290284663f, 0.970031261f, -0.707106769f, -0.242980182f, +0.956940353f, -0.740951121f, -0.195090324f, 0.941544056f, -0.773010433f, +-0.146730468f, 0.923879504f, -0.803207517f, -0.0980171412f, 0.903989315f, +-0.831469595f, -0.0490676761f, 0.881921291f, -0.857728601f, 0.707106769f, +-0.595699310f, -0.290284663f, 0.941544056f, -0.831469595f, 0.0490676761f, +0.773010433f, -0.970031261f, 0.382683426f, 0.514102757f, -0.995184720f, +0.671558976f, 0.195090324f, -0.903989315f, 0.881921291f, -0.146730468f, +-0.707106769f, 0.989176512f, -0.471396744f, -0.427555084f, 0.980785251f, +-0.740951121f, -0.0980171412f, 0.857728601f, -0.923879504f, 0.242980182f, +0.634393275f, -0.998795450f, 0.555570245f, 0.336889863f, -0.956940353f, +0.803207517f, 0.707106769f, -0.671558976f, -0.0980171412f, 0.803207517f, +-0.980785251f, 0.514102757f, 0.290284663f, -0.903989315f, 0.923879504f, +-0.336889863f, -0.471396744f, 0.970031261f, -0.831469595f, 0.146730468f, +0.634393275f, -0.998795450f, 0.707106769f, 0.0490676761f, -0.773010433f, +0.989176512f, -0.555570245f, -0.242980182f, 0.881921291f, -0.941544056f, +0.382683426f, 0.427555084f, -0.956940353f, 0.857728601f, -0.195090324f, +-0.595699310f, 0.995184720f, -0.740951121f, 0.707106769f, -0.740951121f, +0.0980171412f, 0.595699310f, -0.980785251f, 0.857728601f, -0.290284663f, +-0.427555084f, 0.923879504f, -0.941544056f, 0.471396744f, 0.242980182f, +-0.831469595f, 0.989176512f, -0.634393275f, -0.0490676761f, 0.707106769f, +-0.998795450f, 0.773010433f, -0.146730468f, -0.555570245f, 0.970031261f, +-0.881921291f, 0.336889863f, 0.382683426f, -0.903989315f, 0.956940353f, +-0.514102757f, -0.195090324f, 0.803207517f, -0.995184720f, 0.671558976f, +0.707106769f, -0.803207517f, 0.290284663f, 0.336889863f, -0.831469595f, +0.998795450f, -0.773010433f, 0.242980182f, 0.382683426f, -0.857728601f, +0.995184720f, -0.740951121f, 0.195090324f, 0.427555084f, -0.881921291f, +0.989176512f, -0.707106769f, 0.146730468f, 0.471396744f, -0.903989315f, +0.980785251f, -0.671558976f, 0.0980171412f, 0.514102757f, -0.923879504f, +0.970031261f, -0.634393275f, 0.0490676761f, 0.555570245f, -0.941544056f, +0.956940353f, -0.595699310f, 0.707106769f, -0.857728601f, 0.471396744f, +0.0490676761f, -0.555570245f, 0.903989315f, -0.995184720f, 0.803207517f, +-0.382683426f, -0.146730468f, 0.634393275f, -0.941544056f, 0.980785251f, +-0.740951121f, 0.290284663f, 0.242980182f, -0.707106769f, 0.970031261f, +-0.956940353f, 0.671558976f, -0.195090324f, -0.336889863f, 0.773010433f, +-0.989176512f, 0.923879504f, -0.595699310f, 0.0980171412f, 0.427555084f, +-0.831469595f, 0.998795450f, -0.881921291f, 0.514102757f, 0.707106769f, +-0.903989315f, 0.634393275f, -0.242980182f, -0.195090324f, 0.595699310f, +-0.881921291f, 0.998795450f, -0.923879504f, 0.671558976f, -0.290284663f, +-0.146730468f, 0.555570245f, -0.857728601f, 0.995184720f, -0.941544056f, +0.707106769f, -0.336889863f, -0.0980171412f, 0.514102757f, -0.831469595f, +0.989176512f, -0.956940353f, 0.740951121f, -0.382683426f, -0.0490676761f, +0.471396744f, -0.803207517f, 0.980785251f, -0.970031261f, 0.773010433f, +-0.427555084f, 0.707106769f, -0.941544056f, 0.773010433f, -0.514102757f, +0.195090324f, 0.146730468f, -0.471396744f, 0.740951121f, -0.923879504f, +0.998795450f, -0.956940353f, 0.803207517f, -0.555570245f, 0.242980182f, +0.0980171412f, -0.427555084f, 0.707106769f, -0.903989315f, 0.995184720f, +-0.970031261f, 0.831469595f, -0.595699310f, 0.290284663f, 0.0490676761f, +-0.382683426f, 0.671558976f, -0.881921291f, 0.989176512f, -0.980785251f, +0.857728601f, -0.634393275f, 0.336889863f, 0.707106769f, -0.970031261f, +0.881921291f, -0.740951121f, 0.555570245f, -0.336889863f, 0.0980171412f, +0.146730468f, -0.382683426f, 0.595699310f, -0.773010433f, 0.903989315f, +-0.980785251f, 0.998795450f, -0.956940353f, 0.857728601f, -0.707106769f, +0.514102757f, -0.290284663f, 0.0490676761f, 0.195090324f, -0.427555084f, +0.634393275f, -0.803207517f, 0.923879504f, -0.989176512f, 0.995184720f, +-0.941544056f, 0.831469595f, -0.671558976f, 0.471396744f, -0.242980182f, +0.707106769f, -0.989176512f, 0.956940353f, -0.903989315f, 0.831469595f, +-0.740951121f, 0.634393275f, -0.514102757f, 0.382683426f, -0.242980182f, +0.0980171412f, 0.0490676761f, -0.195090324f, 0.336889863f, -0.471396744f, +0.595699310f, -0.707106769f, 0.803207517f, -0.881921291f, 0.941544056f, +-0.980785251f, 0.998795450f, -0.995184720f, 0.970031261f, -0.923879504f, +0.857728601f, -0.773010433f, 0.671558976f, -0.555570245f, 0.427555084f, +-0.290284663f, 0.146730468f, 0.707106769f, -0.998795450f, 0.995184720f, +-0.989176512f, 0.980785251f, -0.970031261f, 0.956940353f, -0.941544056f, +0.923879504f, -0.903989315f, 0.881921291f, -0.857728601f, 0.831469595f, +-0.803207517f, 0.773010433f, -0.740951121f, 0.707106769f, -0.671558976f, +0.634393275f, -0.595699310f, 0.555570245f, -0.514102757f, 0.471396744f, +-0.427555084f, 0.382683426f, -0.336889863f, 0.290284663f, -0.242980182f, +0.195090324f, -0.146730468f, 0.0980171412f, -0.0490676761f, }; diff --git a/crates/rnnoise/vendor/src/vec.h b/crates/rnnoise/vendor/src/vec.h new file mode 100644 index 00000000000..71b7afbb8b0 --- /dev/null +++ b/crates/rnnoise/vendor/src/vec.h @@ -0,0 +1,388 @@ +/* Copyright (c) 2018 Mozilla + 2008-2011 Octasic Inc. + 2012-2017 Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef VEC_H +#define VEC_H + +#include "opus_types.h" +#include "common.h" +#include +#include "arch.h" +#include "x86/x86_arch_macros.h" + + +#if defined(__AVX__) || defined(__SSE2__) +#include "vec_avx.h" +#elif (defined(__ARM_NEON__) || defined(__ARM_NEON)) && !defined(DISABLE_NEON) +#include "vec_neon.h" +#else + +#define MAX_INPUTS (2048) + +#define NO_OPTIMIZATIONS + +static inline void sgemv16x1(float *out, const float *weights, int rows, int cols, int col_stride, const float *x) +{ + int i, j; + RNN_CLEAR(out, rows); + for (i=0;i +#include +#include "x86/x86cpu.h" + +#define MAX_INPUTS (2048) + +#define USE_SU_BIAS + +#ifndef __SSE_4_1__ +static inline __m128 mm_floor_ps(__m128 x) { + __m128 half = _mm_set1_ps(0.5); + return _mm_cvtepi32_ps(_mm_cvtps_epi32(_mm_sub_ps(x, half))); +} +#undef _mm_floor_ps +#define _mm_floor_ps(x) mm_floor_ps(x) +#endif + + +/* If we don't have AVX available, emulate what we need with SSE up to 4.1. */ +#ifndef __AVX__ + +typedef struct { + __m128 lo; + __m128 hi; +} mm256_emu; +#define __m256 mm256_emu + +static inline mm256_emu mm256_loadu_ps(const float *src) { + mm256_emu ret; + ret.lo = _mm_loadu_ps(&src[0]); + ret.hi = _mm_loadu_ps(&src[4]); + return ret; +} +#define _mm256_loadu_ps(src) mm256_loadu_ps(src) + + +static inline void mm256_storeu_ps(float *dst, mm256_emu src) { + _mm_storeu_ps(dst, src.lo); + _mm_storeu_ps(&dst[4], src.hi); +} +#define _mm256_storeu_ps(dst, src) mm256_storeu_ps(dst, src) + + +static inline mm256_emu mm256_setzero_ps(void) { + mm256_emu ret; + ret.lo = _mm_setzero_ps(); + ret.hi = ret.lo; + return ret; +} +#define _mm256_setzero_ps mm256_setzero_ps + +static inline mm256_emu mm256_broadcast_ss(const float *x) { + mm256_emu ret; + ret.lo = _mm_set1_ps(*x); + ret.hi = ret.lo; + return ret; +} +#define _mm256_broadcast_ss(x) mm256_broadcast_ss(x) + +static inline mm256_emu mm256_set1_ps(float x) { + mm256_emu ret; + ret.lo = _mm_set1_ps(x); + ret.hi = ret.lo; + return ret; +} +#define _mm256_set1_ps(x) mm256_set1_ps(x) + + + +static inline mm256_emu mm256_mul_ps(mm256_emu a, mm256_emu b) { + mm256_emu ret; + ret.lo = _mm_mul_ps(a.lo, b.lo); + ret.hi = _mm_mul_ps(a.hi, b.hi); + return ret; +} +#define _mm256_mul_ps(a,b) mm256_mul_ps(a,b) + +static inline mm256_emu mm256_add_ps(mm256_emu a, mm256_emu b) { + mm256_emu ret; + ret.lo = _mm_add_ps(a.lo, b.lo); + ret.hi = _mm_add_ps(a.hi, b.hi); + return ret; +} +#define _mm256_add_ps(a,b) mm256_add_ps(a,b) + + +static inline mm256_emu mm256_max_ps(mm256_emu a, mm256_emu b) { + mm256_emu ret; + ret.lo = _mm_max_ps(a.lo, b.lo); + ret.hi = _mm_max_ps(a.hi, b.hi); + return ret; +} +#define _mm256_max_ps(a,b) mm256_max_ps(a,b) + +static inline mm256_emu mm256_min_ps(mm256_emu a, mm256_emu b) { + mm256_emu ret; + ret.lo = _mm_min_ps(a.lo, b.lo); + ret.hi = _mm_min_ps(a.hi, b.hi); + return ret; +} +#define _mm256_min_ps(a,b) mm256_min_ps(a,b) + +static inline mm256_emu mm256_rcp_ps(mm256_emu a) { + mm256_emu ret; + ret.lo = _mm_rcp_ps(a.lo); + ret.hi = _mm_rcp_ps(a.hi); + return ret; +} +#define _mm256_rcp_ps(a) mm256_rcp_ps(a) + + +static inline __m128 mm256_extractf128_ps(mm256_emu x, int i) { + return (i==0) ? x.lo : x.hi; +} +#undef _mm256_extractf128_ps +#define _mm256_extractf128_ps(x,i) mm256_extractf128_ps(x,i) + +static inline mm256_emu mm256_insertf128_ps(mm256_emu dst, __m128 src, int i) { + if (i==0) dst.lo = src; + else dst.hi = src; + return dst; +} +#undef _mm256_insertf128_ps +#define _mm256_insertf128_ps(dst,src,i) mm256_insertf128_ps(dst,src,i) + +#endif /* __AVX__ */ + + + +/* If we don't have AVX2 available, emulate what we need with SSE up to 4.1. */ +#ifndef __AVX2__ + +typedef struct { + __m128i lo; + __m128i hi; +} mm256i_emu; +typedef __m256i real_m256i; +#define __m256i mm256i_emu + +static inline mm256i_emu mm256_setzero_si256(void) { + mm256i_emu ret; + ret.lo = _mm_setzero_si128(); + ret.hi = ret.lo; + return ret; +} +#define _mm256_setzero_si256 mm256_setzero_si256 + + +static inline mm256i_emu mm256_loadu_si256(const mm256i_emu *src) { + mm256i_emu ret; + ret.lo = _mm_loadu_si128((const __m128i*)src); + ret.hi = _mm_loadu_si128(&((const __m128i*)src)[1]); + return ret; +} +#define _mm256_loadu_si256(src) mm256_loadu_si256(src) + + +static inline void mm256_storeu_si256(mm256i_emu *dst, mm256i_emu src) { + _mm_storeu_si128((__m128i*)dst, src.lo); + _mm_storeu_si128(&((__m128i*)dst)[1], src.hi); +} +#define _mm256_storeu_si256(dst, src) mm256_storeu_si256(dst, src) + + +static inline mm256i_emu mm256_broadcastd_epi32(__m128i x) { + mm256i_emu ret; + ret.hi = ret.lo = _mm_shuffle_epi32(x, 0); + return ret; +} +#define _mm256_broadcastd_epi32(x) mm256_broadcastd_epi32(x) + + +static inline mm256i_emu mm256_set1_epi32(int x) { + mm256i_emu ret; + ret.lo = _mm_set1_epi32(x); + ret.hi = ret.lo; + return ret; +} +#define _mm256_set1_epi32(x) mm256_set1_epi32(x) + +static inline mm256i_emu mm256_set1_epi16(int x) { + mm256i_emu ret; + ret.lo = _mm_set1_epi16(x); + ret.hi = ret.lo; + return ret; +} +#define _mm256_set1_epi16(x) mm256_set1_epi16(x) + + +static inline mm256i_emu mm256_add_epi32(mm256i_emu a, mm256i_emu b) { + mm256i_emu ret; + ret.lo = _mm_add_epi32(a.lo, b.lo); + ret.hi = _mm_add_epi32(a.hi, b.hi); + return ret; +} +#define _mm256_add_epi32(a,b) mm256_add_epi32(a,b) + +static inline mm256i_emu mm256_madd_epi16(mm256i_emu a, mm256i_emu b) { + mm256i_emu ret; + ret.lo = _mm_madd_epi16(a.lo, b.lo); + ret.hi = _mm_madd_epi16(a.hi, b.hi); + return ret; +} +#define _mm256_madd_epi16(a,b) mm256_madd_epi16(a,b) + +static inline mm256i_emu mm256_maddubs_epi16(mm256i_emu a, mm256i_emu b) { + mm256i_emu ret; + ret.lo = _mm_maddubs_epi16(a.lo, b.lo); + ret.hi = _mm_maddubs_epi16(a.hi, b.hi); + return ret; +} +#define _mm256_maddubs_epi16(a,b) mm256_maddubs_epi16(a,b) + + + +/* Emulating the conversion functions is tricky because they use __m256i but are defined in AVX. + So we need to make a special when only AVX is available. */ +#ifdef __AVX__ + +typedef union { + mm256i_emu fake; + real_m256i real; +} mm256_union; + +static inline __m256 mm256_cvtepi32_ps(mm256i_emu a) { + mm256_union src; + src.fake = a; + return _mm256_cvtepi32_ps(src.real); +} +#define _mm256_cvtepi32_ps(a) mm256_cvtepi32_ps(a) + +static inline mm256i_emu mm256_cvtps_epi32(__m256 a) { + mm256_union ret; + ret.real = _mm256_cvtps_epi32(a); + return ret.fake; +} +#define _mm256_cvtps_epi32(a) mm256_cvtps_epi32(a) + + +#else + +static inline mm256_emu mm256_cvtepi32_ps(mm256i_emu a) { + mm256_emu ret; + ret.lo = _mm_cvtepi32_ps(a.lo); + ret.hi = _mm_cvtepi32_ps(a.hi); + return ret; +} +#define _mm256_cvtepi32_ps(a) mm256_cvtepi32_ps(a) + +static inline mm256i_emu mm256_cvtps_epi32(mm256_emu a) { + mm256i_emu ret; + ret.lo = _mm_cvtps_epi32(a.lo); + ret.hi = _mm_cvtps_epi32(a.hi); + return ret; +} +#define _mm256_cvtps_epi32(a) mm256_cvtps_epi32(a) + +#endif /* __AVX__ */ + + +#endif /* __AVX2__ */ + +/* In case we don't have FMA, make it a mul and an add. */ +#if !(defined(__FMA__) && defined(__AVX__)) +#define _mm256_fmadd_ps(a,b,c) _mm256_add_ps(_mm256_mul_ps(a, b), c) +#define _mm_fmadd_ps(a,b,c) _mm_add_ps(_mm_mul_ps(a, b), c) +#endif + +#ifdef __AVX2__ +static inline __m256 exp8_approx(__m256 X) +{ + const __m256 K0 = _mm256_set1_ps(0.99992522f); + const __m256 K1 = _mm256_set1_ps(0.69583354f); + const __m256 K2 = _mm256_set1_ps(0.22606716f); + const __m256 K3 = _mm256_set1_ps(0.078024523f); + const __m256 log2_E = _mm256_set1_ps(1.44269504f); + const __m256 max_in = _mm256_set1_ps(50.f); + const __m256 min_in = _mm256_set1_ps(-50.f); + __m256 XF, Y; + __m256i I; + X = _mm256_mul_ps(X, log2_E); + X = _mm256_max_ps(min_in, _mm256_min_ps(max_in, X)); + XF = _mm256_floor_ps(X); + I = _mm256_cvtps_epi32(XF); + X = _mm256_sub_ps(X, XF); + Y = _mm256_fmadd_ps(_mm256_fmadd_ps(_mm256_fmadd_ps(K3, X, K2), X, K1), X, K0); + I = _mm256_slli_epi32(I, 23); + Y = _mm256_castsi256_ps(_mm256_add_epi32(I, _mm256_castps_si256(Y))); + return Y; +} + +static inline void vector_ps_to_epi8(unsigned char *x, const float *_x, int len) { + int i; + __m256 const127 = _mm256_set1_ps(127.f); + for (i=0;i +#include "opus_types.h" +#include "common.h" + +#if defined(__arm__) && !defined(__aarch64__) && (__ARM_ARCH < 8 || !defined(__clang__)) +/* Emulate vcvtnq_s32_f32() for ARMv7 Neon. */ +static OPUS_INLINE int32x4_t vcvtnq_s32_f32(float32x4_t x) { + return vrshrq_n_s32(vcvtq_n_s32_f32(x, 8), 8); +} + +static OPUS_INLINE int16x8_t vpaddq_s16(int16x8_t a, int16x8_t b) { + return vcombine_s16(vpadd_s16(vget_low_s16(a), vget_high_s16(a)), vpadd_s16(vget_low_s16(b), vget_high_s16(b))); +} + +static OPUS_INLINE int16x8_t vmull_high_s8(int8x16_t a, int8x16_t b) { + return vmull_s8(vget_high_s8(a), vget_high_s8(b)); +} +#endif + +#ifdef __ARM_FEATURE_FMA +/* If we can, force the compiler to use an FMA instruction rather than break + vmlaq_f32() into fmul/fadd. */ +#define vmlaq_f32(a,b,c) vfmaq_f32(a,b,c) +#endif + +#ifndef LPCNET_TEST +static inline float32x4_t exp4_approx(float32x4_t x) { + int32x4_t i; + float32x4_t xf; + + x = vmaxq_f32(vminq_f32(x, vdupq_n_f32(88.f)), vdupq_n_f32(-88.f)); + + /* express exp(x) as exp2(x/log(2)), add 127 for the exponent later */ + x = vmlaq_f32(vdupq_n_f32(127.f), x, vdupq_n_f32(1.44269504f)); + + /* split into integer and fractional parts */ + i = vcvtq_s32_f32(x); + xf = vcvtq_f32_s32(i); + x = vsubq_f32(x, xf); + + float32x4_t K0 = vdupq_n_f32(0.99992522f); + float32x4_t K1 = vdupq_n_f32(0.69583354f); + float32x4_t K2 = vdupq_n_f32(0.22606716f); + float32x4_t K3 = vdupq_n_f32(0.078024523f); + float32x4_t Y = vmlaq_f32(K0, x, vmlaq_f32(K1, x, vmlaq_f32(K2, K3, x))); + + /* compute 2^i */ + float32x4_t exponent = vreinterpretq_f32_s32(vshlq_n_s32(i, 23)); + + Y = vmulq_f32(Y, exponent); + return Y; +} + +static inline float32x4_t tanh4_approx(float32x4_t X) +{ + const float32x4_t N0 = vdupq_n_f32(952.52801514f); + const float32x4_t N1 = vdupq_n_f32(96.39235687f); + const float32x4_t N2 = vdupq_n_f32(0.60863042f); + const float32x4_t D0 = vdupq_n_f32(952.72399902f); + const float32x4_t D1 = vdupq_n_f32(413.36801147f); + const float32x4_t D2 = vdupq_n_f32(11.88600922f); + const float32x4_t max_out = vdupq_n_f32(1.f); + const float32x4_t min_out = vdupq_n_f32(-1.f); + float32x4_t X2, num, den; + X2 = vmulq_f32(X, X); + num = vmlaq_f32(N0, X2, vmlaq_f32(N1, N2, X2)); + den = vmlaq_f32(D0, X2, vmlaq_f32(D1, D2, X2)); + num = vmulq_f32(num, X); + den = vrecpeq_f32(den); + num = vmulq_f32(num, den); + return vmaxq_f32(min_out, vminq_f32(max_out, num)); +} + +static inline float32x4_t sigmoid4_approx(float32x4_t X) +{ + const float32x4_t N0 = vdupq_n_f32(238.13200378f); + const float32x4_t N1 = vdupq_n_f32(6.02452230f); + const float32x4_t N2 = vdupq_n_f32(0.00950985f); + const float32x4_t D0 = vdupq_n_f32(952.72399902f); + const float32x4_t D1 = vdupq_n_f32(103.34200287f); + const float32x4_t D2 = vdupq_n_f32(0.74287558f); + const float32x4_t half = vdupq_n_f32(0.5f); + const float32x4_t max_out = vdupq_n_f32(1.f); + const float32x4_t min_out = vdupq_n_f32(0.f); + float32x4_t X2, num, den; + X2 = vmulq_f32(X, X); + num = vmlaq_f32(N0, X2, vmlaq_f32(N1, N2, X2)); + den = vmlaq_f32(D0, X2, vmlaq_f32(D1, D2, X2)); + num = vmulq_f32(num, X); + den = vrecpeq_f32(den); + num = vmlaq_f32(half, num, den); + return vmaxq_f32(min_out, vminq_f32(max_out, num)); +} + +static inline float lpcnet_exp(float x) +{ + float out[4]; + float32x4_t X, Y; + X = vdupq_n_f32(x); + Y = exp4_approx(X); + vst1q_f32(out, Y); + return out[0]; +} + +static inline float tanh_approx(float x) +{ + float out[4]; + float32x4_t X, Y; + X = vdupq_n_f32(x); + Y = tanh4_approx(X); + vst1q_f32(out, Y); + return out[0]; +} + +static inline float sigmoid_approx(float x) +{ + float out[4]; + float32x4_t X, Y; + X = vdupq_n_f32(x); + Y = sigmoid4_approx(X); + vst1q_f32(out, Y); + return out[0]; +} + +static inline void softmax(float *y, const float *x, int N) +{ + int i; + for (i=0;i +static _inline void cpuid(unsigned int CPUInfo[4], unsigned int InfoType) +{ + __cpuid((int*)CPUInfo, InfoType); +} + +#else + +#if defined(CPU_INFO_BY_C) +#include +#endif + +static void cpuid(unsigned int CPUInfo[4], unsigned int InfoType) +{ +#if defined(CPU_INFO_BY_ASM) +#if defined(__i386__) && defined(__PIC__) +/* %ebx is PIC register in 32-bit, so mustn't clobber it. */ + __asm__ __volatile__ ( + "xchg %%ebx, %1\n" + "cpuid\n" + "xchg %%ebx, %1\n": + "=a" (CPUInfo[0]), + "=r" (CPUInfo[1]), + "=c" (CPUInfo[2]), + "=d" (CPUInfo[3]) : + /* We clear ECX to avoid a valgrind false-positive prior to v3.17.0. */ + "0" (InfoType), "2" (0) + ); +#else + __asm__ __volatile__ ( + "cpuid": + "=a" (CPUInfo[0]), + "=b" (CPUInfo[1]), + "=c" (CPUInfo[2]), + "=d" (CPUInfo[3]) : + /* We clear ECX to avoid a valgrind false-positive prior to v3.17.0. */ + "0" (InfoType), "2" (0) + ); +#endif +#elif defined(CPU_INFO_BY_C) + /* We use __get_cpuid_count to clear ECX to avoid a valgrind false-positive + prior to v3.17.0.*/ + if (!__get_cpuid_count(InfoType, 0, &(CPUInfo[0]), &(CPUInfo[1]), &(CPUInfo[2]), &(CPUInfo[3]))) { + /* Our function cannot fail, but __get_cpuid{_count} can. + Returning all zeroes will effectively disable all SIMD, which is + what we want on CPUs that don't support CPUID. */ + CPUInfo[3] = CPUInfo[2] = CPUInfo[1] = CPUInfo[0] = 0; + } +#else +# error "Configured to use x86 RTCD, but no CPU detection method available. " \ + "Reconfigure with --disable-rtcd (or send patches)." +#endif +} + +#endif + +typedef struct CPU_Feature{ + /* SIMD: 128-bit */ + int HW_SSE; + int HW_SSE2; + int HW_SSE41; + /* SIMD: 256-bit */ + int HW_AVX2; +} CPU_Feature; + +static void rnn_cpu_feature_check(CPU_Feature *cpu_feature) +{ + unsigned int info[4]; + unsigned int nIds = 0; + + cpuid(info, 0); + nIds = info[0]; + + if (nIds >= 1){ + cpuid(info, 1); + cpu_feature->HW_SSE = (info[3] & (1 << 25)) != 0; + cpu_feature->HW_SSE2 = (info[3] & (1 << 26)) != 0; + cpu_feature->HW_SSE41 = (info[2] & (1 << 19)) != 0; + cpu_feature->HW_AVX2 = (info[2] & (1 << 28)) != 0 && (info[2] & (1 << 12)) != 0; + if (cpu_feature->HW_AVX2 && nIds >= 7) { + cpuid(info, 7); + cpu_feature->HW_AVX2 = cpu_feature->HW_AVX2 && (info[1] & (1 << 5)) != 0; + } else { + cpu_feature->HW_AVX2 = 0; + } + } + else { + cpu_feature->HW_SSE = 0; + cpu_feature->HW_SSE2 = 0; + cpu_feature->HW_SSE41 = 0; + cpu_feature->HW_AVX2 = 0; + } +} + +static int rnn_select_arch_impl(void) +{ + CPU_Feature cpu_feature; + int arch; + + rnn_cpu_feature_check(&cpu_feature); + + arch = 0; + if (!cpu_feature.HW_SSE41) + { + return arch; + } + arch++; + + if (!cpu_feature.HW_AVX2) + { + return arch; + } + arch++; + + return arch; +} + +int rnn_select_arch(void) { + int arch = rnn_select_arch_impl(); +#ifdef FUZZING + /* Randomly downgrade the architecture. */ + arch = rand()%(arch+1); +#endif + return arch; +} + +#endif diff --git a/crates/rnnoise/vendor/src/x86/x86cpu.h b/crates/rnnoise/vendor/src/x86/x86cpu.h new file mode 100644 index 00000000000..e214abab547 --- /dev/null +++ b/crates/rnnoise/vendor/src/x86/x86cpu.h @@ -0,0 +1,88 @@ +/* Copyright (c) 2014, Cisco Systems, INC + Written by XiangMingZhu WeiZhou MinPeng YanWang + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#if !defined(X86CPU_H) +# define X86CPU_H + +# define MAY_HAVE_SSE4_1(name) name ## _sse4_1 + +# define MAY_HAVE_AVX2(name) name ## _avx2 + +# ifdef RNN_ENABLE_X86_RTCD +int opus_select_arch(void); +# endif + +# if defined(__SSE2__) +# include "common.h" + +/*MOVD should not impose any alignment restrictions, but the C standard does, + and UBSan will report errors if we actually make unaligned accesses. + Use this to work around those restrictions (which should hopefully all get + optimized to a single MOVD instruction). + GCC implemented _mm_loadu_si32() since GCC 11; HOWEVER, there is a bug! + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99754 + LLVM implemented _mm_loadu_si32() since Clang 8.0, however the + __clang_major__ version number macro is unreliable, as vendors + (specifically, Apple) will use different numbering schemes than upstream. + Clang's advice is "use feature detection", but they do not provide feature + detection support for specific SIMD functions. + We follow the approach from the SIMDe project and instead detect unrelated + features that should be available in the version we want (see + ).*/ +# if defined(__clang__) +# if __has_warning("-Wextra-semi-stmt") || \ + __has_builtin(__builtin_rotateleft32) +# define OPUS_CLANG_8 (1) +# endif +# endif +# if !defined(_MSC_VER) && !OPUS_GNUC_PREREQ(11,3) && !defined(OPUS_CLANG_8) +# include +# include + +# ifdef _mm_loadu_si32 +# undef _mm_loadu_si32 +# endif +# define _mm_loadu_si32 WORKAROUND_mm_loadu_si32 +static inline __m128i WORKAROUND_mm_loadu_si32(void const* mem_addr) { + int val; + memcpy(&val, mem_addr, sizeof(val)); + return _mm_cvtsi32_si128(val); +} +# elif defined(_MSC_VER) + /* MSVC needs this for _mm_loadu_si32 */ +# include +# endif + +# define OP_CVTEPI8_EPI32_M32(x) \ + (_mm_cvtepi8_epi32(_mm_loadu_si32(x))) + +# define OP_CVTEPI16_EPI32_M64(x) \ + (_mm_cvtepi16_epi32(_mm_loadl_epi64((__m128i *)(void*)(x)))) + +# endif + +#endif diff --git a/crates/rnnoise/vendor/weights.bin b/crates/rnnoise/vendor/weights.bin new file mode 100644 index 0000000000000000000000000000000000000000..1d9979d41f753aab2801c20781d3e6368b888c57 GIT binary patch literal 3544320 zcmZUacU;bI)W=H$?X>q&X-iSv-*X{F!$?x3qKqOdGP2uysc09aG$f;;`+KgG1|j{3 zj8cRmL?k=U{rvI#_1v%5{ks3S_qnd`xz6Wv-p78$ii3RrcZ=rd*z;Q+H+*C0H}5={nP^HL z`EOxEk7hz}0pOBQccMnVqxm}qJargMvkW03TG#Q=#51_F$)ChG&u8wJ{{s2GJnsDq zxk|#5^RE>D=f=MVrDf^=A-klk$)0{+tC_O1seSzu9b{I$}0Ii#p=A zcz$m;j*so77av@}4F}5c!L%^yGu;-p1{>1(cdg*Q@F=FI2@sC zw_5wVJ%)ANO^o@QGWz+dDbwaQf}`b`w40S9)2rR-4hLnrJ|3=T?>9c9)~b84G(m{^^ed2QcUHoIS^?(sOEEfm zN|6X$VDP|d1KNKzg0$3}A`buJY1jGZtf8C;V_=YoA5IC-sA7Jw`u7{=qzRK#s_n4o z8AE1$R6z0Gei#r|MybAy?3F|3=!I__dMB)o?P6Mxo(m*vJWPmnpE_A1u18ZFcf$DK zZS*sK2qkT=VZ~$x_h5Dg-tNDEH9j1wDilXB<`UqWZmbZOq9?j0QN;TU#?7~*s;+0~ zjs@rF{Kc72EqaV@%$ZHA{nALojN>Suc7n7&(W1Zlt-(p}J{f8$AmewXNDHINERWg1 z=0s#*3P+FX#-8O)rtiadJ;6*wf-t4Asg$p6CLGiH0SoqD#BI)#Y*Eh)bPHp^@}wB3 z7Vv>hgFhp0G=n~}IEKr^Y;gF#EZDH~$^Fx^Waf8yRPlNR4Zo#HjrMCa@@j@#N!5(f zCSRH!nGB0Hl9^?1HJN~=$s~g>6h3QKA^goDGtGPO*l--NUXVnCPwrwLNlwG+$KkkR ziZr)wR3h+5RO^#;dU zSDFNU-$VuH3DZJ_7UUM2W4qjMOv|-|o^2*1PB#qp&z(Z;cg~};MWxyAj-J$F`akB@ z(<16S%1@GAX3{Ck>fwg06j=@?be2^IiRz01qh3?G&RK}aj%tBz`hHZ`y#gL$!gzG@ z7gIL)0}}0wnUWJ>@YBZ{O_sJn^Fu}YYwA7NG_jc4{Z7QD>*4TU_-UKsR$DA|GJ%d7 z8_3U+L1!5)2yZ>f+8Z2z+q*1D)!=M$=SUgG3ndYs@`dQG=7`U9rZXS=-@v0&@9@xa zZ^|-y_|{SdrmWA$&e_HEhw4g*NdJQp0u9`KVw0n%&bI z!HAR$W2{sdcR~FiDyn6Ye3K<0|DP?rpdkr|l5MF=QxAJ)^CJ4-RVUoc{mGHT1@0?RdBl+VEw8_=ekX

{**NCAb4(7ObQ6c%^9L$wy-iwXD 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 ^^c;# z5mlNk@sMk7J%QP;HNn8)9!D&L_gm6Ls7A#+3@jJ`SFIWNVfz!@sjET-l;w$V<{3uw zzyR*6R|jFf1GI4MBe+x4!aQ~?!P53B=)Gk^)aP*E;O|U$p|}TUr1Js4C(!9BO86$& zo3!U!;1*l_?!2fT_zoVY~fj zCVZp`zFr?{DCG=lKy}_bHvF8JX%uiv@h$}I^21)R4|4vq=j_0Mn%tY_a zO>ojX1f811>AB`?FgIl(VX8SP9f-m7>65JGpd(pY;YmwNYq5BT3>g2gC6=GZ(M_ZY zlfRxuk2^hRGg*iVPC}5IEQOvQSr9v_1*cpLxt9cG=&R1lHkty#AgJL;0>Bx>QJfj- zI1BGOLz&BJ@nlp!h6V@7(JhN48HufrKqFlh1D9Eld!4CRCOwseGUd0_GKKfDtmxwd!iL-nA8# zo=&m?X=m}X&L8MqE{(Z|E`h`9>GU_R-{O5#m->hLQIijbRFBNUPmUF=l!PQ{pPGn4 z@AYWNcNd!7&LPq7RA|eZX8hP@OiI2_q1V!dz+P@DC@D5l>kXk8Eba&!v~I(>KY~Qs zV(u&D5<*!gI<;ur|1ht;<)X2JRM=+Qs2Mr)gx< z%?2nN=Hln%L*Q<8jCAblhORZ|aSE+x94@A_YnVAyZbF&F2d9DQgJAZ>=`E<#5=d(= z6@sS6c~(|GjD0PtNEa^t0rN}VgT*fy?tIs+Xm_*`udkW_BXd4dbHkbL85Bmxk30@0 zUl8UPl)%YYANZ+r94f|UlY4n(D0|)qPS@Xngs&^frOJ;Wy6Gz{_Xx#~A6J-Qfow3* zn@j8$1meK5e3;H%MqRG2rW-2e(u$9Nab)5R1blhOw3wE|cu)#Pi0#0!8J=CiYdTIjTnz4Sy?sZFK2FgePbw+dNqK%cGc0kQP8#M9e`M(mnNx=tHnr^!Jq z{G9}Rceun(`7+9=q@%*!HMHv&FW1CA#gSz^Hfh5g$lNrBF8@rS;aMC#kTR2GT|E!y z*#s6EBZ&a@Bbp1hh(^cW66|w>07Gt$OtO@(7G- znt@tggD5XCW0ZT1=O%A0=em z2ZS%bL0fwfY*{gZ*70+&syPNueQo9ly?TS%;sx+8{sq_+*^-nG!Q|1QJ><$N8Dcr} zK4u;a!y)B;L^1Ox$h6Ax)@L_1xp|@MnJXkI{x;0DeT;e4%jn}6A)>e5o$7ch(Hhmm zWbM~-7#abnbxh=r+*wYX?Oe#{V`H}BFYx9FT9{YU9$IG`iBOTl@^nk-1U~8c&0bw5 zLIPLYq7{!1*S^bz;*dwUvM3sK?BlSp^)&b<$A zkCQQU+a1QyHIA%V)Ep}I-$%&zw!)RS>zUi_nM6~tp1Y1a1g0M502UVXaEJ*#yulVS zD|?_?mY)>nWI@P)1;||45A#$-iJg-?eKID*OgJf0!=GaGw}2G&I-A6fMF`Q`Hy+p= zTrP+a_EBuVtqgs8;TB^e91Eu-^GUsQEm3~h$y%CP!t6{{qUsh&Z9kaOH${>-ZN?&! zzwSTw<${A`O!p1*_(=(v{ksV%I*(Yp9feRXbQ*QV#nFDvB`mp>2qt-n#ORkKt+k3n zt4nrlM3g3u&BP(X%`Y6uhN5Vv4NS7Mr76CV>7eq|wQnhz$>BoV;aJ=*zz7IM< z7Dm0o>`hzoUcW54=vE6loJjm`E~LrqERxCA3%UJvg5lME=`ZJg)09cJakf zH~SpeXml5>=ZnKj?nj)|tRUwS^D*I90-Y!vWEI9vpuvd-=r2}=Hx~2grpG4q#n@7! ztkl4sUlk5J7V4mLwFA6fs{<;2T-fid1&=eMAk!*}TzV0OM|l66+~D=xgjC5+?MjBb zK%JiZsK%~Oe8KKoaT|~B%7Cq!8aO<3(Z=uiZH$oohk}U@@!y$G;2WO++xAN{oxUX) zRJev|X-fl*xc~6)5lvK!(n9l$FpPW;j4p4c)p^!3(znK#M(eT6g?nP)Ef5EV|9s%# zh#(1Z&qSYZ3LxYnMa=VKU@-RrS2D1J8|jjZbIr4;e!^D_cU_92Z-&`+D^s#yp)L9} z?!R_NLLCYc9;2v44IWGl(!;6}-9h}hnO`(?l2QAj0ve*4&_ zXhoR4@+qVKzJ$cLR&(Nu4zMj+>eRb(Iji?%4Gleanj>pb1rvLMu(C~!oa`4NdJ($x z^wk4!q&#(~P58tIoY>^W zrWGeMZNi0wkLT@44Ts_P?R6}1?t|N7i8QtD2vEKjrec}{$j51*y`UTv`Nd(3uRl!R zzZ0GW-$JD{ZB!qO<#A5ynUU-h?74p3NahGR9(r%r6kAk%bL@7FfD^ z4)HyrNpt^2!hz$$?8p0Jyzlj-ClZX=b(8}G-NL+Fs|CWXY(+P;HI91tK$vQBueR++w>GR&1$PGxikkHNOJ$=I-H4Nk4g zL5aL!=%_Dl5Vlt%FKaKO{0)9a^Lz|za7lvu-6Dt`EKGvi$HPfL*Z(kd-T^heVH~fd zO+(S5l*(v{Qulo>C5eibkWnEbvLeZ9529U4qP?`Fb>8PtDMdtOgi48wB(gGo{LY{E z{&~(l_dM_Oe7>LO8QttvPEJ?L@{jl5Cc|S_QLL*OhE`d#zkl2Wtb+MhUzQJ@pq>k@0;io=EW*w zBz~s&^87S(o8}B7<~#X~Pr~8d_eg&IQ6W~r-x<_|SMWs~zk__(X7)*EK3H=M*6@92 za%<*MLdpi=O5Qxy=a~pAE&7T-1)X7R2KQf_e-AI6jA5+;N^swncry5pYr?yh;tKb( zaMy=|W&Td;Wob^G+~0#{Rwz61Vi)L!b>h-auGWchmN z5i?QXuh@}?FApSvN$pftwn76%2gTvNX9SFEPhijIH=)jgWHRu50A+HGvBz*PJM;cs zxMt^!5B-9m%hQLIw;M%!6;JxrZza#X{Au0Lkq97HvT5<^h1lz)#eSWdMlKi}MtNpG zp>LLx9;J&oHYp#Jjm2@yT%6s~EzWna9HlCarnvKHHO#)fi+#k)pwDI-Fx8v5zJ+5B z@-53~hD0)EMTnz5%JCLxhEN;BP&PJG6P24k6VV%jd~GftcF08y{JPh{SAzz~JawK| ze_4ue)Zl`OG2+brnaPMgtfc>}e1{)zYK@JnK#Z3l+dc6{-qr8Nq!zC^xPn0>gv2tT)-VRbWm@k_TB z8#Ff)&i&cUpQq`@^V@5{u@S~_IN=nkz2)ZU5gG8!P@UuJ3$WgCAzn7EfTX7uaE&j= z&dv_Ta+`%{ey#=_)_Tx4Im4u=A(tK>UIiAPf7L~&zJVu4V)4p^arBlGV%ZI4$V(`r zPr2*i_4z$~&Yljp@0z3a;3MY0pXEIJ>UdZx6h@y~XVaP~|LDHAA&g$Q6zo`-1BWaQ zkySfHklDV8@n)`p&utMl+GmKq5s?DL&3drpwh@R8S3xebkgW8VC#xR+p$nD=L7sjR zF<@@slebb(vRH`}rDnn@!ClbnZVKo6-XhEqW~&-=Q7Kai4MJzZp+~ncxIvY=Z#xSY zF0I7f=^`}8vIX+jC6ExgAtwB{J^q>>ha>$Q2b9+aONs)qYz;#}T#SEd%OsHD_*Y9W zA+$RgfivoF}wp`GzT|zx7__V^+ z3Q|16aaF`bSbgFptu<7J2f7R3!>frnRX&2gkrd}8W~t)cmq?f0kwk%@44f8v1&%yP zL}dXhoWWm&!EXzR`Q`JpdUhbK*`NlDRXVhcB(Mb^ZRvxL#pJ&pA85_Zq1vC$p|fc| z3@m$vM{CE;+_Gnpfc?f`7u7=>ijy#@qn7T=|3Pfr1xSZ`GI(h$1D9`k*l^}133Zwb zm){LgZD}r}rYHx^wqHQ`_X+gT{X(~1$fNp)bl3&b3Xox2z?`_EkLlIge2v8Y=#{91 zRp(f8kd|<6Y8piX!;&9s3oxx7`NG zHG=qN#wMKq>^uF?W{W$gG{MZ1DX`i+6NcB7VBN0uz}EGn_U@BlYLabM?;s7@d=#p2r1THM#a+0$x0WWXl;W3bN--S+ zYG(Tf3Ta?nA^2oakdB@Ok6nDpHKla4REr>5eM*?qFoUOaM;1)Z$3X0tCcNk+0@XKv zLALE5I(J_pP6;{)E~~FXZm1Z4{Mvu;z(fTl0xd~VM>aP1E5YoUk#Jm8fPFSz&D$3e zPS=@Uz&UoE#O9(OEuK0ND%L%s?fwy1qE`kNzJG?ftE%8It|B=$uZfY#7?InOOBzR| zNWiHH>@k~Q@b_1T3!xdLNZ>1p3NRu%+wHjX=td&(CyKA1Wl5zX`)Fq$i#anJ$x+Qd z_#GBVFTg|Uy1Iwj8(+kNpOmRP(2m_ti-?H%6y6MT1@>Bf9(`T87zCY%>LxE*#TV&` z!I%C^aq^@D2uWe!_?j#zY$}J-LELP~PYljDJVgslBhootl+2yxg+W^?@oMEQ40E~( zev@rsv~M;!_kIEH3iTy}RwGcm$&k)?{F`wpkU&czFLeFVN+#*uLyOtYblYAN@?Psa zdR;ccbqf{n)%6Z6(5b;AmR;bz>O9WTJ4I%XFQpwl58=cq3ly?kWa_$A7M)Ccuvtuu z^|;uHjgFJpb6qRhe~;gx+lU>cjC;|l!>#1`KQU-|s(`=tOy-L`S_rSa5pN45|{FCzwMjH@iF-GD^qz6NsRdEKF2;%Q!FkPP*cPVd&3k_@_68 zT#r0JQ-AKIxog&8&wMd(_gRE5$|~^pf-K+*N1%7_FIZG=KzAQ0$9)BgbZz}2)5~I# z#BY2rGdax~?-jYBQ-2IBYw`!(#tGU2fDhYS|xT_B~E==biUE~IT^{nwhe+FI? zKZIo-Wq8y_nCL9kBZaq$>Atqva6dK(r_DPALZ%te{iBG?y;4QizMln-hmp+rc#cjF z-^gDdnFx15<~A`0ogqj&w*qU`e|W}UV+4Gf8-+s^e<_uclmK5Y}&9x}(+ z<5$oxP?C+b_=NW2XVGid5nO36O=;jmw4Cll4jfWvMLza1f7dbe_Z05?Rib3~zX2$5 z;aKOy(_~TDS-Q#T2U**t#%HbjVf)1GsJ(9!k&fCzN0ao?@6KYFC7=ibmc8&=(i4hr z4uNFsCYWXW1?LOAr_BR>bwOPp@>5`oSxQMmrVhzfGKq&?>+;oRZ_FmO2$;?C$n z=N&R}<`xmZ8O;?ZM7@fO=R?M*E3B$-(g`rY36!|AxUo{2ZQ&QwoMi{mkna za=MS6JKYVdk4=D*!D1{tQ-!1N9pLS!pG@Ab3Y@h=iAL94BStp_;IEbrWYr~*UiZ0J zeNz#~HikA+~2 z?qyt_&`ZRlgJ8SxLFRavC0;!hOTEcuXn)6LxxQ^g-*@?NST~01CK*ztN?V%u*N(ot zbshq4PoZzO#?f?{6U>UrN?7wD0yjU+!O+S-|x3KrHGgiRM_B=`Et@ZWMtlKDm(>soyE1ISt-g%_6I3 zw;)+Kl~^@h!nR6n#&@`uNY}K%V|D=^9ytcu`7w;}=RC4GvJfxb*~YB?Dv!QjLa4#wn$Uv!l8qpzbb@0bZgWrzi8A1ue&ld5>@+D94JlD)K^ zF^3b5KY5X3&U9J~=jCd#L5c1{rsrb|)UUONsSD;~y1yFQ{oVohIxQhBJq^})H87?Y zrI3{v9-%aM&orM1V3Dpf42LX+9RZyn7%vao zvWh^W=m^#xR{_^rj)~3|WQ9e1Ay-0{ouFlpgR>Xl@{vyJWJ_q#3nic?@4&LF1P1;s z!KKYcxy0)w?|5xeUj2b1;V3IH>rW_-5!e>#-)m=7<*&Ntt)1_ zdeSf^BZ)=l7U9V?KQY(50{ zCt{HBMSQa{3BJa0zxCVG;L|<@+A*yLyPyB0QGp`#M1?KL+d*`gAX(yh8Sj;ohzS0mIBg{eJLK3bMRD^4@nynl;1V2(9(!6i;d9%vS!p4$&aQW?LkO**QTwDcE=)4u|Nxh8XM&j_Gd5j9I zPNXr`wKPM|g0OG8@Ef}uO#B|;U72vk^e8|#_ssHU*3+{Ye5TqWkNkQ1j5qt_97vbR z#RJ1eyqD^~IKvzqe2@39uvn?G98JAG zKuMYpGyT9udgT_MrK{H9Y{LRnzfz4a4SYE-Q6t9fmcc^@OL=-CsU+r06zQz$B>Fc$ zLz%;TEZoB}aNFka!@qtdi}bs}`C>nf&0?{%*aSSk#{k=;h=&}DaCFwkn(V9qcy?8v z7qLAaraTgZb~9=0&3sC3JP^l?PUEyq{tI=ynnZq>SHY=fJ}ntBgzc{vg7OwgIOrh3 z8d)!aPcPD`Z`yfmQx+oc1OC!QP1kVE=ontw*+)byhUj@8Uo8K(51RcH=!(ArkRkbp z%UFoAll7%wJS>K6{?S6jWFEkP^mg2rt&FMdudrg;2c~J(95Aw8&xrSl@MDQLNvJxB zi4U46BVWgRps*cmez>4ksy^eiz>O%>y+jqs)i{67b$FI6!0zmg1hp^cacjg|*eNkY zuZzAwIoX-mu>2Vw-)V%ytNvl)Pr*9BavP-nRm=p{XiQk@0BzrYkSx9->}|<~u;Hn= zDvpwHp-vc%w1mpnoV)F^FJ3mgK=zs}g&dzy@}SqD?!nYTIDX{<`E=8h@y@&r7b73R z^kO5tb|;%$o1R6oaz)v!(xa?X&ktfaPoBRtybMAO;?OZ76m}0jA@S~eU`OOam~u1` zPfYhRTi-5;zE+vgr9vr|Iei~W^v~Tb@hzLFRD6d zE4&4r9WUTdqmwv%JrGteQOBM7=ZQ_VJi0vAh3X6qXju2ibipne(k>$pk5iPeevuB? zszs4=XUB=S_7NheE5OeX*MY+DqxeyK0cM_=2j-r~;a}DQVlizLzh+GUDb8sje}h_#=kru87|`5h38w>|(3cChzyZ;1;3#m5)IAA=*qQ*G-nWNt8OtM; zZzrMTg&IsMuZ94_G<>x27Rl}oG&^)rh0Qc-MBM!u_T&e_=&BJjukEfh?`9Ibw^m_4 zUN*z5X@azLV+dWgR~Roj=MwL*Sfc#yCwW?XkLXoyg2ZF-WK(rN9sSJlK=CJNYTJ5V z=Dtw8+SJcGQ`*Zo3QHqz)+D?brwyXK$$XQ#Smq~bHj{<*yA0U-@1FBwyeH9(m4z^`@1NQ6DXr*1U*h~~Pb>_a$=-e`jhnU= z(Up>O@!bQm8C9UCa^vC)}z$QAzJpW7`<(ZsFKfI zyqO0~%?W}57vIu6-z&W1zirXy@J~z`+XiP(e_*Eh>avS7_rTSt&#-)c70=;>71w)6 z#}C=sAS@`w-y8T2iev8auKXCF?p8BUY?>_gnXqKwjy{-d6~oU4+4SLvB6d7KfgAYB z)WCvsjs`{XHa=12yp^|Tg6cs!yz({r9&*7GU8^B@{$tuNQH*cC3jja$E_Pp4BWJ7@ z5yuaqkUDW9>*??U64bZSO|SJ}-mwKxxx5M&-cF}tRvS5<|hPl?8y-I4q41g?c4`)>%^#Grxx3> z#(*Btm;|vWx50BA9XR}-2)GL;IGv;bi3=!IDg^1YC@jGNLYt0m|H_N zmu8^rWNmVK+CuP4%17Dz+mPx?;^Y3)j7_^CT)rAZzZmNgug)cOyXgy<8P3A>ThHL2 zW)}(FafjGc#^G%~LzXP7f_Hi1{2dXwq_$Ly9nR9_&n}!z>c8s4WvvmSy8m|FeKAoY z7^uk{R7ivl(GA!iq{ODZ-vJ5fVa%uYC^*^m8=4aj(1I8HDQzwQP~C$zPj_;js5~A{ zmKV*9cyn_R))#K=1pZ!8ujPb`hl^7bKI^P!bg+sN{J3%Ijg`b*jx z^%RGVWC?rsI>Qs1fw>FU!17RTRwMEd9iNNiRv9xmaB`GBUtbDaTJ^x@$TYt0-WPB; z{}vbv3__P=9r56Y(!@8xq~CoDCa;mf3Cpgd{Hr*6Vs9PYHg7H!30wh(Cl|oAS@+;$ zoFpt4y^gsTpQGv`XZb_m#ktNJc#RvGPV;v+L6#+ilfU@ISj7b~Al)EoSJ4aQ#v0etJ))dkm zE6zgx=?-cj*vqppwuE`fQh0FcF%aSRqj%e`X`Z)+WH@Q>WqV-8W>KMl8k^ zB+65Xu z#4fB5MKxpT2F+k{v)>y`2X6C(h40amT86Zsb}q;qm#6Usw|K8RvfxIjI9UJ9#kMvp zST(G}x2+iDY9|Z&wH#posk_ks_!rY`>p`Lyj1%7J0< z3C`gQuKY}Y?9gOOTMeOmN)&vIv4+=6C%`@Nop@8_3-8FbIOfdp+1QaNhzEm8Fs$<& z)l#`bn`K$7b6Z7HH5^Es_8_r0i^8c|p5(#A<)m|$CblP9A={qH(|rE~<~;aEnW}YU zoj=0s*m2mGYC|`wn4-q08Ppi@(5YxLYZ!HtY1@92cmH`aUbVXk-r<~I&&-ig7F~g` zsS3pROoP12ScourK&3|2;A!JLSdkrxOICzXE1`YN!Ac!^eDPi?Q)7m{mDTtwNCXlm ztOgzF0J2~I;K{%M9sAu*94it@srGYBeRzYgy*+3aXGIQY$KZ912Uu0R9`9Hulk1mK z;MDL>yc2sA1$;!YYrZXP*cXATWn6H~!+@&&RKZ8P8?iS~1?s~k=}3hHeEO+dx1ppI zmhZnvcgBYk>uk=$W3n0B=cqwKjw@zP-2ge+-DXC6HDJiGiUik|5NYB2c-ng*UYb@+ z{Wl(hY)wTpYN{Z?`|C*aD@}acAdL#!f*@`4J;rj#4PCs?(w24|Jd+qrKlcy_+Or#1 z9DN8YH3UE+aSb|evj;cD>C|fCA!wZAO)KjM=@o7!p(=g^zbJ>J?A|{#H?)%3sA>Vb zFPD)W3GH;Ya~PQ?XbMR$jo^on1^v*#@unN2;LP(RdMCq$$hGlk1x2c>B+Xqq);wvc5?MTU@KiQy+q-J!W9)ni!NHoj^Rc zTR>Z07iw_zo^`D(-Y5tsHb;eNOO_D+KI91wwSHI@U5m?{Q*m~I8QvSsAmi1`AtKd; z3M^?M4xBekro*Z(8e&vTCCb`$E$SfJ-O4^ZU4p#G2N(1#|Mz@l~%zch6tmNw52Bv21kVi`!XUoguGr%;8b%du;VJa5z43g8_Mf=dlLu$A`l4tuF#+@3n#Xjv(h z6WK`4-|D4a`kP70^NHk^PZAi+nGDOmuR@7a$#7!VBKpIu2sLy==(*1#V4=k$cC9(o z*gzQ?NHUenqIEa+>*5o!W|C>3h`U>+5_ph+q2b2(MBEUMG;{8|v;i70bdSUaoTew* z!WcL<4c8PlP>H}Bcp~=>e&l9OSyR{Hvl*_WyeW%}ZrzIV7DeP`OB?z9WDNQ96=CO> z6dEn}2<=KkXuq`#`$4&h2KY|m3om_1{CB9phP(niBYK_e+0ON2a|dCD%Ly0|ieeho zW0CB*2C{ws=oOTt{Ek>7ENd>(S;38cqhkIg3Hp;pe5>C&U6JBx6;;u-23KtNbxgXwsP zDXfzSC3|-#lZMb#@Dx@u+i~6u!>hu{=}1A z+{A=+Ohu2iounqh41;W@Var+%*!0o^`u_Amo$GW|5>uwuGx_B1@E9<)r^(;?Qb>IN zjrvrI(kp#m$#|eQni>D$GEbsx%K{!Wj*Sr~u|cw+`xPB~p@(B)dGvg=DDynSnq)1pGiJQGcfpTseTxwCO@z%WxYxq|L-4Z#Q7eq-A0 zXYkBc&-AWfF0^gxrje_y(Q4{V`cu;qYcewEje*NJ?orEm{4{{HRD+MaGOl0!%d|A) z5gaa)%OgH?shKG6{ zwkV`mZnpl%L%ev~mBzX&V#fRuj1YfHysj3LAmJ#Ke=5OB2IznW#`Bb>E~8uIbwJ;2 z8+{f0j)rjz`=?1VaQSEn+4Zu5X*Ab>H6~*GyD1~|qx2T=T)!2SwU0r*ejHq${g_sc zZKiq(9=P7XjxB4uOCGHe<+}%;!epB!>R)@8%%33y?c2=wckFneA^imJru;WZS+-L~EE~z^Sf{fDa?Oc{f8(WV@f~tiuyl}lq)+ANpc#kMEwD~BW zOgKw2&dEd4pXr#dB*1tu6F}?CBjPdjFwFZk3r?L+$9;uKbuag+L$=L299fW$r!Swy zCm$XIPq&U1^NnFbi3NminoL&vPDBIF)9zrTKy18|7G0iO1$K3F;6IBQ&>8$0zX?PV z0k7G0xeKP_ta)cp?%YPa#vBJ1wPk?kZx9-?mJV%6#=qA}VQzv7<~W8xw2>Tc%!$H1 zulGUTx8+n;ZzasCNDJFnh@Bo3pXyN;-Xi{}>_nIA@Gt4y;qg zMe`^Bq<4Iy;3zDE67y1Osl=nRU&!;svPUuCLI=8hUdG(N`JMduc#kxfBMY45Lc z@~LwdWPam3HYN+Hp>aK3nKVM?mjbZA-;s+Ko2Z6;wplc@5I#maz!UC%r^*%4eaTKl z)6kmhVas7}Mj#HG9;RRUaj`3jQuVf(O+?$v*)F{sYT%cy{3ccD)ls`!*R| zHER=9UKW7OzVTE?E}tYssZ$Xt0shx4N>Y*xA?WRLh&P`KsjEE5g!8`O>wTV9URi*1 z#gfVEqMfAR-D(nGa+xS=fZ3661a28Bg1^K?>@f~SNiVlg;g5J81J z&zuHm?RW<*Tir_F;%t0bp$Kbt#^Qk^S5f`E5?2;;==-93wT28Tw%L+ zK)s?pZq`siZ{K9Y`4PE*ZDSLQ6F*vpZC1)qmcl)ODzv$Ny70zSm;CY(n^@U>O$sVXv z)gUi6xwFwrCD{X$p22$wAsQx^4X&$RGX)_9(4@-ei@r<4CQ*Noy(@&lg8?*Cr2=g6 zFf~5b%<}^+`i67pA4_>iwEV7+sUt(ktP96u=4$Nn71!{5S`%JVTno2;O3*_x^T~tP zR!Z{0qp;|052lYkr*8|(@M%yCcC`bP*S^K9V}s<^)I5qJ(@~~r z0{hWx2LI{gi{QLH1ApNJ@-j6FxA4nIgN9O_p3r*|cQ*-Fi%vkh0DZD~R}|Jj zGG38)0qLhlsV@7Mihow41z8hOz|{jadZj@?Xd=I9A0OyiH5fP7tP_9H42t$bcsHaI zTlXD>OB*HF-{F$@GkG$*zB3)xmj>f%jdQ@?A3{tUy2%&$B&u~g3l2YS#2XG?Fz&w| zYn%??W)m~?`7|GbkM}?;#}bBK%p^fhziEmj3oaok;GJin5rw@3;hMcC`TNio-ZbvOA)Xj};=MAo&WXa-gj|pg8=+Co z^7wa|Db=4`fO!)Kv3;^I$=sNV8O$(VsF?tX*9XCUs}sl+rGc2<9oo8Fne4Tg3r+sf zSanI8Rp}68ZyOrn2Cj#?$Y?es&xk_zWszWW{WKmw?1mmubHJg92QywBC#zqJuoqDn z-tTF^Z}%gZ`yTaF)Bgq3mSo`f{H+jE)C5iJRkIwAG8j@bL*ajCsOp$D3Y=wW!bb<{ z$@PV!njg~pKNe%9u{D+ZQi9F;FUaJ5fgBT=O?KR90}(FUAoo|C|I;ghc&VL1i3B@v zi5H@E9HXFCJxY>M9I6Z^(chi+WJ#YF?{3f^(3%{G1s2KpXtg7{pAV&f4oxJZK4v60 zC#|k{lN2UL_j8`e9$cpRfhX{L4{ozfLhZMi)K;(sIu@9c)0qNLy7x4;)tm*Vg56eC@amQg-w4=ou3{^QsuLD<`mp`t$I}qzNRg z|0(_GHcUTVwIv~^_o2cGe;m_|;4KOM#Hc@bOa%TbR9I{TuJ2hrt=^IA{cbvfm z>@i;c<6I;SVyK|95a+9Mc?9c4C>eAeJ)69l67RWuwTNdlsX>-#2@w1?`z(symth}N zt${Dg6zGekhp4hsB_@h5CyN~t=!ywjsm;SA`utW748$dn>DdLqcHP5|9K&Il6T+MM zh})r4&Ek1C?Ygp^y_1L*l+QeC&CZI!!w^2+B5zcF0sNR0hz{OssE@7@22?tLgxDnhho!4Y*J3rc!z74^xK%Ra{z0_s z?+9KBF$d4%Pf1;01?E4FAWx6Cl1}SHvxRGI;p#&%7`=CqH`%xytmV4lnMn+0`Rl=_ z-hL|WSx6qLb3PfI!}Y9tseb4+qS>(nw)ice?}U}{PvBXyJb4csJ2ww(7rVisw^GPU z4y80=672Y5%W<^_!0LMzKC-=zf}b3S;MA8y=hbpJ&WW}pR*111hBD}2zXs>ve@&Ho z)?!=iYufrehepmxh2d~nu$iNY$9+DL`WzeHqd;rwlNE=m63TEd^c1u>TjHUPWH^`q zmBf8njC#Q<$j_E9SZJS3D$;p=OIbBR~3n{V%g}^n#-Xn;|mY1AV7U zlhtz-S=|63er&ZrOi&#p?8k00YkE1pzUs*&?cW09sUa|7PB63J{S4d_@R2s0k;E+9 zS^V#|bKyw30}9F(;GwN{@Vj;rTQL3%zRzhQc^3uf+7Lb1e@hf(XPhHe0Ri~)YA_Zj zRKc|yF&KWT122_~La_57?i`4NxEr5{!qUySUdjOCZ?B}?zsBgx@U*(dI1xzU*8B|V zcA80Y6vmkf9T*f@NJrkxMH`%+GQW`*wI#r?4^qG|c*@1Sw7N zI8FL5&9%BtpRZ0q>m?GHe=?lL%nYWOB~NU>RiePSC5-%;OII7qV$YIv++q3@o{Kbs zUx^@@z?q9wxa{S6{d07SjzrC=^=TMuyc4~(m2mQ@Y}|HzGK4<=4PA-~)coBNB5KaZ z#JK&iLVgc+D~nUn1@&~d2_FMpGO@PVGs96)?%0)Oer2*%0Qh_9ew1|MwC!tnN4z~0LR&FDl3skOtFJEf3* z{vR=QnTxvejkqV!o?lmAOz%8e28K=Vsbu1L8gs3MC}rDWl0X<{`+X$)B#Uv;L{E@5 zI)N236H%&!a|2{f;?5Bh*>!h9$&ur8L0K#cp6<8Cg`)3i$LY7ct^4@6(IyA_di1bc zPLH4ODh~I3zGLyZI53MDBwEs5xTC)SRCMmrqRqdkl>cMvki z3b9Z`)AE-pm0r((%6#cpDv}b<-~uLGan{wzY3?8b&=XDLZr|<5K@QisK=x&bpM4fWYG^DydN=% zADvtUZ#lmF_Ztstdt^EaxoGpl2ZibC0ggQ=>?h$GgdKjLZdRx|j?d#n`5lcq811dX zHmT^5{<`bb%RLE((yBrA3iotP{EiWo!Mw+J_-x-KLDu<8Bso5iOC2Wo&{ZmHXqrnf z?*6%f8hKoY2sRP-4_>7E_l>}JQv-gtN;R0-sBp~xDJ+VJWv_jg=T9EscKn5L4EXm4 z_;2Ay@?C2Ze??OteJ;5e?_X7AHI6Fal$taud9(~>1sPFat;twhTZT>}m+|i6BVf;S z#%tXF%1#ege0??xhF9B>z~7nV$4Xtk>d7WZ@aNHq8$Q!d=ep~v`GK_Q+(%fty#k!- zdBiBq1jdrBP%ug}QGr{O)Ni2`GU!p-`eEO$dc_Jnm?Y{k@M#m|;1X zZEi-JZ3}oKD=X;WGFQmnpH7B4KB4-uBhaho3Bdss*b*_FhS$!;jmlZjLAQeVe{mon zp~~pT8RHeB)%-&H3$(2N0NtcrP0y^afxU<4vAH|VL0bDR6e(Y$k2{yZ+`Fn+KCp_p z(jdpS`DS2MLOnfKy8{Y8AvvAfk8&1uD79G{9mm#z<~WaMWHSJvM+<8{sCe+!PI&`i zgPt6lJC%RXVuXAcwt~04&zQjSb>z8;C5WfgGS#>5*SN*GLeB{Tw;e7sgZzBrs?$!F zJ(pnnn%p6Ca~$kU@@I73WrB4Gu$BL6(Rr&1Tk&0hz4NI9)`>lVf+AD?^HC>wYv)1a z?*yQk?mH%FaSz;ob_nlEq|u;^W^&)>2OgZK3T5f#zSmo;VeAOS%sA^IOwEQOo zdkYfrpyejgXmOeTtWCvrecT0gZ6bXJN5EpR0q7FWnbk4_*LF@tsRjxB;>h{=K#8Sl zi6}Th1Wm32%$?#1CqM$WKRHZShUVf2r)Aid8b*Jzj%=@hFNh|{^R1SBpl<9k_K=|} zsQk=AS>04*b)rFDO@cjqt%O=W7eoIknRL&=Rn)Y5E}Ue}5dDBL+*z;@nq6z)XI}+V zlJTAxtlNUtrY+Fgp~HlwE@n@8+tKWM%`jL zSY_aC_5s?vx8PusFyI>u94AQy+fdM)AJ!Z0%QaRIK+SW9=wFK5JF z$&!V0Lcw~L4Q4G`!+SgV5lQ{P@la=`@F&EFK;1?OJUFTj#^fU|sHx+L3v-!g{x$Oa zb_BH)Gk>+DIFwIB?{YFi2k&7UIFD4TCc2U+)$`In; ztziPEexL>sIdD3fh1$zE(W5aPeSRpx=i1|tIhWgYgwxsnQ&&OHu!b0gL_yIh&Z}G1 zirZ2+pTmTuywt*_uwPsj-JBTmpP34O$-xx7ubGX(qBeZyycSU{%z;H3vEcnohx{5) zp@yqdft-qhNk>aT$Gw0!`xVk3CsWC}7ZWl6>nN}(Pv{P%M{vPi5KGg9phKSuw|I53Y|Su3;j3woVUhA<)zFMph*|M^Ps8>Nom#qodGR@;ns zI`Wv3(g55maTSHP?uDpu9}rWoq|EP+bjgn_>RerfjT;V77`n8R9*c|qaQK=LNh5Z)yufyIS%8oVI{`v%@}dxe$Q)`KaG z?z#i;V4fN1|604~o4po(FL$F-cK;X)6LnA*kVDr|V>r$(f@zn(6J2jvzIK2eneUZ` zT1~I$XWL8?H+%|K9QlR@<$S#Ty%$egox#K6<7Bpd8+t$aN%!2Gfx^9?sEzn;Ja2!W zOm*16{5*LLZspoj?Hm!T*f~VExGjcu9Xm`}`-bK#X2Z07?_k|D&X;VF42}`GjK!M{ zs8Q#m%r6Bz=^#v{avHHe<_7c_P2{^R(_q(4e@5hfgpr36?dV(H2Wb4Z8V3JUV#7Rc zleHVvn0k{=_z_e@%%X(J?#w(`BDsxf&jh?`s)PiraT<+(aSuo+;0(tcmW(KaWR$A4g@MG5k5M1k1R&(K+W) z992$)1huoc@S-p#TF%BgM>%4rV$6m|lmgrS84pLCBv<(&Am_vNTvw&hmloXqwQrHw z*msoFzx&2aDY2w`c9+oQW`cM+$QP2I+@R&f>AatJ-+>>;fw#rnq^WZ2FyefBjmaz# zJnuXg6g{L-VnGf_ZVCccO%PmnmNNcazo@Ot8#dgTjk&WF*(n;|=;Om$m^$wZlkOeB zTUa+A&)e-_ep<~VyH+g4;4*FoQ}KZQ7img=NAF~=ZhJycpPW_Keo+Wlu3kfh-9OQV z(KkU=rGX}z50N=7r%gwNh@C6{R}%2dP0jaD=o!N+kF84DvRM8}UXzFXmn6@(V&G zE6G`FL5QiThgH`1cx(IR$ohN{>YS9%ll#|BsuT?wFL5=VrN&vD- zFN=7BCWOY0KOz-@m+7_}87PiNX?Fi+W@)_}s`Oo@4-GGnxi4ZE&!22Cq%)_RPIa2a z<&0UPRw+u3^Ouo$Uonu%+Dmsg#xtbGlf=sZrcv`I6RmC!X7=GID*t>ju~fUqyX9fP zNC{l#-QWF%7e8FZ%!$6i>n|Q)ET)dpU9Z59U%jq z0?_JR1mmu2`G=zgNz5;E_Q$^|)O>n1?pwrpiyk!4*=03YCrhccr2r}0z+hBKD}+*8 zb_SQpDO9w;UnvLi%zt|SQ*_<|HUD227cHe-qG_fnWmNZb&Q)ZSWRI4Lua#&JA?>0) zRa8P~7}5H?PbDi6MfOezkr9#9@ALbwf4lc{?>*-^&-1)+o$?R%XSotqv=^XV(|$Ja z^b^+6p+bvA3N)>-1HQ$~=8Eo;J zkYgv8Petxm7>%ijzy-6%z!U8T_(#@|^2~?NldfR*V_fj9Z~zoE-uw1+3h!(QgtmzJ|0PF zKEK(8fu^{wEEx95`oS8*e)w?CkX~C%;GlD%(mBAlF>}j;C0lwSgStXlt3K~9`q0`c6-gB}7g{z*cVz80sx=iAZ zELUWEHg9LouSGB?wb|@h&2xddF^U_p{UJYdK`pOooXZpiuhFJVL|3y3c)hEVDR16D z-#)JA6-G6%IZNBwBIRuOwD=dhZAnn&)y_583clq!;fBPUQ}EY*oDU|dn>@7h*d`r!IM+(>K zyc{z|CozeOuAuPQ0c^rga7%ZE(}u1|)V*RUeZRSu78b4muO?6Qoob6UA4Dm@C*X^=6}>3TVy!dPVEC*>pekPn9qX*vg-9J7v->m@O01&W&ys0r@h!IOeFnF_ z;TKp6{ZG~n3$R654@cDH^SgG-k>{OleAK>v81-N+w!b$8IsGK~V^>zyUXsq{^cnLb zPVHq^`VN8PE+ep8;0v=FDmde?YKYZeg^Pzypo31$oN3l%j8JN^IaIe7m(OhBkNvwX z#91|Pu1o>!9s7h8HAzy9$sHCy99@#zIz*f0$M0M*}_If_!JhUvx?g>M&x*uBl z9Ai~WE{ptLS<|nXr{U4)LMR>A#u|6t;LZoflW6R5I#Zm_4ipKzngt!Oa^!PRIeHs{ zwy)*9R|{94NtxKQEs^!R)$@bW9ihRej!hh{C$NG?kixE;;NfVF|NX6Iuef2i6MD?VrvlPTy!fWsTLr&6=*{*PFv1R?Y>v z55K9md^LF2x3i&pck>q&JJ^4&d7Q+0d-6Ug{4H}5hxSHteLaiVuiqPSl$A9%(0v01 zKI~!p=k20?-#W+%oz3nJ_>Y&h_knlK_o3&?PC-jeVI-vm7fj+g_b-ObZNUr9XUa9& zJgkV{-B7}^+^*7z@IP$uwB2~!_8-6TS2@huZw9x0JYnisV=~OpW}iJh_~i%knV4M3 zW8P9ca4wx26Fd|R-R)UI-9xTt=X-c^SsmK`eC6$p;#t9U1#CAv4~h3nxj(lyqW1dD z?418GUURe--dvr-E^Z5hzh^#k*Jv$Q;u^uVcpYMKU&hi9MRkZCc@s58%wq@A>qNur z-f*(DarpC{F>KqlMer;;SN_;}mN|Fbhk^?$;mk9^1K#3FqwcoC;^Pezr}=_`k`7JP zUW1-LKY&|h4ro6zLAULaOzXeztm@N4wjrwv9)$(aqF;BJ^0o*H+E7Ew_LMW-MLYPr zLjSa(auV%}KgNaym4f%U6kxJ)eDjnBcx3pLNwrCX#jOeCcj6;sp+aUW+85Qv8{ncl zQh02MD^|zUp;BNyn`_orwNGD)zK*nGv3MM!O~!zMo+QPEb2KeN0p{5RVwTZlTDw0N z2djL8kQR3c9(RboUTc6LFF(8$9n5wIE__DtstG~Kj;=j;Ky z=R2BhW8QEJ&x69V67nvsuDseKORW;OS=3MkT6Cb4We+!_t1lZlHG`jgfk81_q%8@P zJ{)0}KPr+!_;h}!bOmp((#|eV(L`4ZXUre7f}EsE_;+?k*=b)x)|I$~ygjz?&)eTZ z!Shz;pRJ3da_ZRAOTpN?BAOlh6-Tmp96bKI9P@guFx^`ZJK8o-ioO-ayEm}%J)yYn zOa?Wsw`ZSRWs%)G4kw1nW2{Rw%@3-AnIX>jF7|_{n|lvGCjl1U9>AylF-QNjWvpB^ z8;8B0fa%+xfzHC+_(>&a`ln;OkcNjlA3bp6PqEsKd49Ob9%u|&B~`TXW? z;U+!EnTkVX(NoF^#v~u3sRyT_rLh$=n_LQd$-~&cxNMM_wSYe6eTR+z)acUtGh||R z3qC(7Aa~~j4AyQ#!?0<1kaNVT4PRMTZZMrUGlFHajqtVU|PHRFSL8~4V%Y0C8;Yjei zaf_w=n@F;A%~|&c2a-G4#&M5ViSE=@gWickh|X>1cc3}%e$;_9MKbtER*E9RHc{7r zZW#G^312?6jO9zpQ_}Vz7SMl3RB$o_q>g9V#0sAyorh`s72hw+KTe16OCCdk6+nUh zP*moEy}w4nq)=KU2Ib6;BUuU-Po z`HvtnI*3mXJIg+Q9DtWprr}kC<7|lj9BS(Jf}*gMux7&qI_D*i8p3-cD}Kn#_H3<+ z`W;D=kLX~*+;lX#V1SaD_aH#yFXOBZ(lp^ar~G6RE~>MF82&?keLT9t-1`8H zPwj}l);Ohsd#giBKxw*hU%;%Y5q$Q7AqISqh59ToEJos#<-BVvo@3VBhG&4 zEr6C3T)KBTh*Jwm,otk%JRzqX)tz=~Rrr?KEsNpQ!*70%Xke5urYkhr>?G;>pg zE}yG-bEq!c@U0upzRH63yUi>*=mk{8<+Dipi|l-CJl@sK!)52kU~j1!-i@yj@w^*8 zjGjfg;vaBw{6d<=YtiPpBQSXXY`Civ4!163GmQalY^`Vz6$#JGFx4zRRNyiU#slbM z_K?ZE595yHc#>~@2DN>vVEZ-JV(vpZ98~?B=?fRd@$aQ<{?)|8l+F^?SYM30Ob6jJ zp|7y+;18~+#fbD;<;mt=29!m;hy8P->0a{}%}aeOzd z%yGOVR?4A@00(%ExXIPY;Gq*x@w!JGP31H;DB z_IG2bbn7OP(yruMTPDNPWWl3xrH2)qPQ-88_S}~%L*TMxFO-?9;@VylzIAjoXjr6z zj4Y4s+pkm3_fGaoJ{vL~d$UgK0^z?>#d`TOEU0QM$z42*jVJs``+OSIjDH0qRS(d| zQzI!UpaNRDC$QL#v!EyvJi5v|`G1K*cW$5_WoGY1Gl7kp+jRqCvgAdm^99!Zw;h}- zBA{cnJ;@or<6hjn1|nuf&pTvLyiEZDhrGn=|ExuY%CVSyN|$Ex=2($G9+JwhpLGb%&plOTl%ai^iUP`+5-W-Mh*b>1W|0zm-s@Fo{g#H$&mIJDfy*8pwRs zp(^!qc4>b%hRt~lrgw_aX~}CiW%7|#*7{TPj(T<}IRpc8M^f^u6HqoR9dd6ca@!T8 zSoi4)wsvh1$nfAwmPasmW+Z!*wupAe`+`QkBK#3p<4XjO^Mq#$(D9Ka9-ElU z!VQdR^1>V7tlCEGWC&>7HDwLz7tvoejM0dEygPOTXLjX|z{XV|rSoZQ zO0NUUI8n9of$5Xa8;!`~;aQPlS+Tz}{)3+t|83xsUhN3}vsedUVFR(tX{^fSVvSj@1?fm!*lK+bFh3!ARV?Ol6{?W~ZZM>Bt8 z(DVp)$;q5r#$5%Yg)`ZBrR8M%RM_#CD`4asC2VjJdej@&vUKOAG{q&A#|5`Rv@IBh zCksrh#-*Z=qS0*S_iPBvu@c=2>xNE`gA{*y3Y?hT3ZKrzvJL0X!{sA-VDxkgI272R zdz>w;mp2E$j5quTD8t(U3-RC6>0n;*4~SWyb6h8=a`TvbZ8|q;ha)?#E^tpzYvQn{ z@<`1K;pmQWRWrYhWxKN$g46n^*i=0N^0IZXZgDkfC61yOS3B9nvooR5g~P}^N8bKN z3U1Gq#?DB2vd|00--#FSM9U!-@l={J-4(DYOaaFg5x7f7@iy8FZuI3ayYL5`SMCpR zKkLJ)25$qOOnI6j>qAFnCGpI=g|tI%4y&jfM12Fhs!}a9s{1O7@ypUJG{4gmKi&Am zx`b}@`*YW^;5i#%VNE>Bdr!xf|H>%;@%1)INRFnu#U&(uYQ zWVO4KIdJdz@lAs;(j=1ay(N$JlY#kjLciOBNHmk=!D(wE^jgg4`qkEB)Wg}#Iw%_> zUz+lJOT5wa+gDbs@4-AauEP@NJJ@t96`!A;%Mxb~LfzXcG^-{VPmNHdd8+`pcd<^RYT0}_~41BScBGSh_j=ry|$||>O+#qN zxHdR?P@e|;*F}0|S7C8N7tDTj5X&8e>}qm1tBMY%?_yJI>@Q{gR=4rkp5GAl`!|!5 zZRRcZFRTiwx5LK8&$t&oa|KrCWA>;%2d4Td;Ol#8AZKWa#jA8#=!8_Z*y;hWZQ& zQVL?v-DBy6_8WfdV|z@w6AtgYqDgh4Jl%Wx8YAseM0KBK@kL%7)BpN_8Ty6cN<{{p%`}Fht@(KA&u^A$dzbD+K88(-eX#HGDU5LSN2BJ8 z!skO7Q#JcJJBb?Bu6_dL?YL?Ztk3vp}@0nfSBndUBDB z)66k)(*wG8F#_KI+6Ku>?D^IkjiTy=g+i}(6OR8+3a_oKVb%sKSftP`YuHr-7QO4( z%fh=1n^v;YKO68v@B})Ql*G@U?g58AF7SS$Sa6nepmPx?S?t||a4>EtUTDi@2Ml{z zeb`ytdVUI6`%B^HgD+u*)?vVX^?dA-G1S`@1sfkI)47&FRBKE@t>ve1X?YGBZJSKn z1`MqJdQ%lYXIy0QBY;*e8;4)U?T6=57uomPar8&+3IF-PWKo^_G}zrQOWOJZGjPZaMK;}jEv_GSgmQdx zh1=B!-YZlJ&k5bf9aHnTZwteqY-l>$YZSybB1bWnMc}5fA1`=C@w016`TRRSxD6w; zX~42#8q=@Cdo0|B&+8RMNp|&Y{3M}gNqI2J%+rIdM+3-G#tci}h2T-$3cB-drjSE@ z$99jAqTsE;^rzH_vmPGFHcwNgwL&z~9bjO+TNL`#qHP~)|bR;WB@#n=Cz1AGQbKK9(!YH8}6Di34Mm@v15L=4_* z#wtFhKz_6v)E1V(_wygCR!NtzQkPk@{&y)!G!En!HtNFZQ7>45XgSIry#Q~b!YQga z4ue+(u^WzqmwO3So}1TUR|G!o^C&FBt3?p`vXQx zR_KxUI#a$m--Oi31lPU(0-aI=uz%SWEa#rty2FxWT*b`@+SyHz2uRPY(tRH{*e=~z{3O@f*(dsYd{4Rx+SnC{vH>I}{FK}n8JQm{igI?5g z_XwW2s9c@#Ll1MxmSdvfJH8`w7zO%G=ae5E<9#p5qtA^2Oy_STW=^(Y|A~KcuA3Xs z#j}ik(iAkLhBpxN`Y@kys1+53Y;REL3HGuj6e9xdD5lj)v@@U-p8Q)0i6Q4vB;3=E z?VCq?j``s9Qv=Wy>Z;g;3VM_3BHTKX@ZJ_X?qzQ^EIcpG=Dd0YU-tP@&(ZyGMcbL# z?Aa{rG2TpdJBLH9pH!`!zY;Yv9a%?V3f}3NhsBmBpyRh9ivN>@D1I6$$PZxO;*Y_p zJQ+0mtVlXd#q9PWX*3AF#4?-4V1b4fi#BM444+l3d}$D9H5jw^o9{3MtHn6OU4>m+ z+s&OmT7u@1;drZlBJ>^$MmOJ;=(sJAcg-7y-Ogp?CLxXMLPA*b9>&(WxN(N1rD(3~ zLHh%At3F?R#cy^q!O-*eq*dZWTh299?amOi5o7bkh4@Hi!eyRantJ9av$NlS4Io#uFrsh#|2MtVk<^P?x*J35uh-7 zA9W=~VaE=2_PTE$elN1dz{&4HJ#q(px}y!-iZsdiVhYtgiK8W5Doi*=kfd5VWXHLo ztEDA1C&vmsHzxSnX%m|sGXo7CAVzMNLkWdO{B~_P%jXSo!2LQHkZO%>ja{M&pYdpM zHGo!7Jyiw1X358QQF3%0tj}MC%O4)5SFQ)~q}5qIJ;n+B>vDuV<0aO0@DOT*B73vk zpOhP(GMoQO`8&86{>)0J5?V{5=N{PZdml5-M#1Um0rb;i2PP%mswyp?0;`5afbI$@ zUM^=A8mxT?KUpzspY)bbSw9`%k`;a1HpqsLaEC_%7e{4}4rv=^3fhtx?aj!g!rayL zAm|gsFES7`RgtiR9%Wihf4S>VjVNh+IsFRTi^E=q(cR9CF!tmHkj{E53*&j6Wv%1C;G8!BfHj+-qNPzYm>8yUh_y zfA(B7DiWTt$B$sm-kPYogI)+j6)EX>0ajsimwFnrZFkXmv;G^kn^))yUsDPlV&w>up+ z4jsq24fmmckH2$0sfO&sw`@+718i7r5A0c%!^e(V2&esj;>w^XZlQ0P&@VoOt@XHw ziwxdk&AT+FeM5@$mMn+oE41iU89|@_HVP3q6_O5DaM`y^I%eC<24=gUvR@3!;V?Ak z)?(C-L86#0JxZ)yM)Hv#@YK6|s2KE%dp&M&)oZ4rch?@tPw}~`+bG?!i zS?EyXlL4e7lK}&L29d&#Y&5X?42yeqP@lM;JyGkBiI!t!=f*zh8}xN93L4tow`?r_vzl|jZ{hp|S; z&GZf!i@FthIC#iUNKgu6|E#3g-nR2xPG$|BGCnK%sp^Waek~=7T^`_nU?o~_IK%Wi zVn|=oT<|3RU)yO$c~@5i)!`U+ypnM}V+EeOCfpgRfrUphNKw(B?%Q4C7F_j5Ga*;J z>h2IyEH8zuk^Z!4@FV6qGM4?0zb|S$J%xYq!X9;X&f{0(#qed1z{XuL%~R2+(9f1MJLOEIHi zLKn1Az)6zp{l_dX2f>~_Mi}s|ggi2{(RlP6@{$#L7*^K`JfC}PgK7i-}n z!4kg)N8{WpS5eDFo1SV9NB6XGxM=Wz>i&T_bgi=uw(i)0k>l;@WZ*e=gBS9*YYu?6 zrwV-bf5oQQS&+R=2Sr+a6mtD>+#iLDoPmy}xb2E9zDSzSCMI0vAFLHJc-nU$YUf1^ zy&i%2rwaw;t`e1=mo#NP? z=UN!?OqMph>qhx&%OLOib9Oq=3SFk#;1k`kOr^jAj|WEJ_}PBkCJ3V-7azQpF^(?U zTm-Grb3{LdimN9$9B;*$Rd3i@3e$yq>El^BEIZu+AIa(B_5Y%1y}uk{Z7!PMvZGrs z128-x0dCG3jH3jZuF24!om%*Xy>?0_ua_6$iF^*cpShVz%w*X7#cSxMu0C8StAw); zin-$54`HF>4N>a6Mkr6^$-_!YyuQl<{T5!L==(b8y!19YHebdcS<6so`hHqd@e&5S z(Bhosjxq1`>TJ+T7tXKE5dO}bjQ-Ia?nqL@riFj1l2!?K+g*m_x8E8wxm(Qj9#5`0 zMI@Ry5Zm&NY5(wc%Gn)-v8fMndEh5LZ{Q@{nf91^u3CYX)NYEq^_qRlY2veD6ws$K zkQNS|fj@1kz-!7GJgQaAMz#nY2#KSs)9O3G?b~4S6}B5@taZYYtu~P2J(RU-jRCjD zlejN*GW@)4OdII}7n&0sC*dChuo1^h6kA*&~g#dbyU_5(1PKv2uO1Cdk>xWcIjsL)P2XnMt zFADV+ZlDoX8~CA8hj=!mmHzoSL*w)F>{!@I-dk%DdU;2qRh1l`OIN_!3K=rnxry}z zY^Q9^Ul7_po{bZB4e=4-wF?ux-0P$%MAZpR%KNws{uWyyXod=EgOCQEVX1u{EVVua zk5uc4pQLQUfax1(Q7ngr1sOEvxsYwDa-iCVGuWT1h(Q;uP`xn(cSJ?w&Ix%~RX+~R zKlJm@z6Q|H!}IxQVHZj?-A-cdVWgP<5yTz)Nh9z9#_#9Azu_SJ<#QJT&-TG%tHo38? z%hj+`Z90CK@*Ki^XOO|I6f$4A3Z)HC&>z7gQMFT}`mv%fTdC;-ufP6e=?>O(=wAy| zJ4_Tw{&ZvNZ)4HCH3IwAi821>0&*zSgtw8Ac*^?<-hO?GYK0q?ipNZ{R6EE|2}Igv z*Ui;MmEc@a1V)CB!Z};B$!Jg+WlYk8Md3gA-({@oWQ#qO`rn5Xr%rsPD9u0II1t^G z7LdP?FWd+mw%-V0CY9RN=LhD&jOnWckLfh7fH8dB@R2F$4xu5}t>JH?Dh?dI7408g zW_}N*iab^(@H%<=+-tQk7$TlcKUSEC7mpZ98z$R=^Xsodznu|pJhhcn>zeqhi(R-^ zi=(R^F?Aew`7SCvo`H!D5il?55c-{PMgPEfntj6*Z6rUj3W>$^JfTzA=^6Gv7>(&h z4s5jJAI=VA1jELOgR8sPYYZ?{Z1D2XFegbVC^mOcx!+fW<0M%Lzg4`%s+>q zZ0#I!v`Iy^=l`RJQ%WBUoykDCB-Gu=k;U_~NNO4Ho8-QjH71-Y>(3 z|AMK&-V=ZPz7Cf8gXs_*qo7OCRaf8DLrz2r>_`hm6KhvmeES1E4)9?*$Hw5w8^T>_ zwma^G9B7?=3lDoN#rf?{ZkYx>WVu6*U5+>4aStw|mhp>AHlhTWO_Gz9(Hs{ zQgq#WQpn6=eoXTIhiEXmQ~gg=&ApHcVEG!PJBz z!r6H^G-3%Ujd8(2r)J>CU|ZU}F%&ItzJbg`$8pJVbDFn)9=V@rqNVRyqP}uhK&$rAhQ- zNd^UNRKxgA3D{E*gQ};5U0}X0oLrzR&J;QpPWn{9qUKDJ$>&99v)Zv+wv)AfoQZFy zB(w1J+2H-l5tA+yvikFKlqO+`nGgIi{>lyv_guuC4`IIAdcY411goYb+L%ZpCaYX;y*2 z`L386t3vDRO`ve`Xxe;Hc<(IN&~$-+x~}OseR>^3CiSLxLhdS!QdJ{|yODVFbPF5Y z`;{52YlkbENBJ2^iv*uoD@zO#=7fM9Z0Ws+)MjTyyvtP5DL%}+EZ1Ohe=@a9Z)Bg3 z%ZW#qG|}(Hz+UJLqoh}HDAy>9vT+GG^?fTF?Y#^~2T9<7p=)W$vzahwlZtpV-^VAc z%B1BBPC=uy1n(WUg$5_B!>or^RQchLz)El;N6Qf0Y_JH<=Dn|i!%AZP;f+vyuMQfW z2lC4j30zDWOP50u&Uj+<;>$XBkK2C`b4 z(Ppfppedhc$JhB_<0TN6ZO@@qb1U%2EjwWs3Wk&Bi?D1%8XmoPhih{TWs`JAk(u}m z{F`x;O`4Iw!biry8=ML+CGOJ0kgc%%>vg&ttBK`HZ_o^*ow(}EIyy7D2un8)p|Uy8 zQA^#9+FM4Fgvg1MW}IQ!?g9^eQ6u+!VION!FGAm4L&T3Kq{G(g2fVeiJnWk`2XTC>l({CH(m!dTW6LS17CmD%tqEXx`6Ykf zVAICDXBDmyOnJ*T@Gh9cRO?@}J@;Qj?f0{k+1o{~+mg6v(W%su5l#GKVRn!6!9N}y zyi@aGj3_+I-*iqOskWySVHAz&^Iwu$+7Qxyw1`3ac8FM(Pma@ea&cwb@T~M>2%MRZ z3R1PA^+#rsQL_WdOnuEF)MnZU*8&`ItA}4VN$5hJ`jh3ax_}@0WvbiP2-@hQaonsM zjx@&nB+GwN3;s57v}VF37X4`qAGR}!wipO}q^tnWxMw3Sw)DpEm?V0)IUH^-nn-F_ zvd|<}15J&eqPEO23{-1JM`t56FX@3d<6`Kl^H3b#BZ*InIGQ7{ey^n~GmDimG%6{U zQs&CAI}__Ty~pdAil~UxXO5w#wF5~0S~@p4;f&y&@kF#u0+$KV6!Gdei@SM(4IaA) zbt6qlNg|u415Z(FcAFgrh3|f2U4?LZ-j*cxa z1!dO_kmckh=$JQ{+4=2I{@)l}Vy}jC6V}s^_8qjl{|t?}vx8+XJ%RpOz(&lFsdoMH z1zNoo#eKC`VNu@+w$oX%`u09IJYF}1&E7l&6pi(1orfEwCJezz`Y~jY=}WaYG{`M} zJm;}k;P#F`$MmetnTe_b?#pXqyJkG0qZaq8)UxHFtb{1^iKoy_q$<`KJdI6IJBUAj zbW!R0{cKa;N^Iy^NG55c#pZ3ds9Wt3v)dJk*49Fow^As!TdN3OfgNyt^L)1V-wEa= z%*(5?9)hfI`}W$8Ki}qkN;(_9qMuM zi6}bq^tZs455&E9OYu;{Mfy)Z1iE8}lZlopU9t0H%}Oe4(Agw*^usGw^Y<`$PLjlN z6E(ySoCd)8D?>pcEf~jr9VFg(av9n_vZ^v0szy5&bn>xj?O0;93x8}*0q@NkShX|+ z9Y#x35Bh!zdrxQMw3J0y^6os@4qpR91fJ7K{XLv=S12j39!M-Oj@7GqVerjvGJbP} zW}I#&1EV%J*ytQiec1qg>it~7@H3?QYa)Id;LR?2eInPLEAYeN$qXFA@aFajm~vSO zCk#4A<>L-xk*bQg*Yg0}@pETaTng~1hN*xQb_k;AV4fI&}{h#nswQ9}7{j}?_3ccI2 z6E_$&fbQzCc)e&7MJzc$C%T4KCvf}FmMCSOKtba{z0Qdhvq zHN#-{-5EHzx{^&dn8tJswopLgKIprc2@{siK);?3^eXH#JE|;V%~$ThRQ(u~E|+1E zn?`}(*sDysTY@g)d^)!M4di_rDL%7d9cOiN6)bSeh4!0qI3iaab=UABs|tM#=&xjN zbP8$a(r}1K;L!Yf6OM?DCNycI_o54^@E{oyTNSagUIiqa(?q9?9`eC+VrZH7UOLz0 zi_&r$TyvNzRgFB)qQv@Q>D4*pFxd+u?XS@v;Wq$o#?ZCZSIEI=7B0K0PrJ&;P|KO` zLO4ceb+`$~IkNl2~W|gd@sGfCKO{m-wZ$K;746I(^l*QyT^ilJk zIxMTY0;NNTlb6XduE|;OCl4%vsMoDj-xve(ueR{9f|tDK#!v8&I*!@d$7ztwb9xYY zj6B}&$Ne6?RR+BoTv+o52v$6ZnP;c7CQUs&VXKU)HJgO{$xv}x`d>Qu(iL@zSKzDR z0>{1KFiSuE1R6UG*yX#wU|i5OTApB7eQLNmI!*e{*UX(rIz2Hg+R&GtH4I~`m&miY zu%{H5WdKTYPx&Evg1_&EE_rr{G0kBOzo&ICDV$Bj?+T7!+*-|>o*u&d7EgxYd)@HO zP)5AYsGK?3zGOSxS7J}BJDra_K=S#Oq$sr+pWN$V!}m@mznm(pIW-u|&wJt3y^HCd zTPh9EP!=b>P2lU*GTHn99jtxQk2RIb)mbJj@Z)tfq?-)I{c0UFuxD)b?{oQ7xU7{Q z7cmc)8-&8XLvOH2$r{)H$|T1H<3-ZJb8(K9DhCb@lMq60~&i40P^qLEBxw=#z~eOXlUzTn3kkf8(D)(5(h&DyS#7^r@J+c_z|-J?v|4Ev`pR)Yut?QfHU5 z*755wyRncB5W8YXArA!>`ysDgir3NJixcKJQrq5b^xbQgxH$hmG{2B0jBHb=ULhXp z6Gl798FIno^bN5eN`>)WZ-wLALox?MDr=ybu^ zOPfiNw$p>TlfX*2J$lATqEpT)n&|Np7u2Wo3nV=8H&@PF9+m?W?&y}!`(R~34Zes< zr+F^#AocWByt3^hJ_?M(PSH62)1pG&%2b(JHy&W_!kj#Jr!yrchSS~!DwtNV9#i(@ zP~%Kj+Nrq<^LC^&S|o?H9uK&jJJ!^#c)Dtr$8kKrMYg)mLrE+CC^d6rQas zrk^iF7->9}qIWK+++!s}nMRA4OvpQ%(IruIXzM;ad?F8xguCgZtKnGkzMKvw#;}yS z451@3nQ3h-_$3wdI9 z965Cf9nDR^;QlGx+wEJ$;|0&ENM{Vba=k(OWF+X<#^Gpvbq70ibSsJq?x9zwDhv_& zaPLp?AZLfQsF!yU7e;<#a`#KwjIxvD@nI>9|MLyZ4~18se3FcF-EUJG7su3U%2|q} zVRd@U7yjewMdIA2GS$9MCD;w=^=Mb1Qr!e%?6~#=YW)Nc3sZon-zCXdG67#ctbl_W zb-3eA5jb8KZU=F-ceAA3gR5zfZ2UWM>avjG=uT28^62e4UtL!f=8 zgt(zJ9Gs?#QB%W)raHuv$*(`ni)aUXfOA3W2W&+UcvcG5yJL;;w(oBEM;x zG~HB!WgPa^RN~RstfQ(%?+MvGzscH->}f~#;OdkkKiLj1S8`opRZ$ma2lZ|9MMmn-)`eiOZQos4^T zlBf;8OUy@zCeqAtGJh6_qBuJL!QS5-bZ~s8=H3{+i_Nic0B~x9CC;3^ePoN_u5_h_Guz#~G zu;KeO93=P_&}$j=tG$Ep`>A-yZcVk@kw(!Iw@Om~MtI#R1rN^s%)M;hfQu!PVBB&w z3@zwjn`7S4ySHTNCk3lqcR?Xk2YDtq4OvghK|r zCWq?f+WkZtpEl7N6N+n5|a6s4#LX%}_%Z@az)>9UT?Ub`}nOP3qX$ElL{W}yc zeaIdMXmO=2ZT9{ME%!e;hb(N6CW_Zw%v~4zjp}wKi`JaSGe)kpM%-bKnLtP zHJ47?jc4H*txQ>*&dOBQ@m7UN+_*^*aO2D|xUtN*YUlE;?3YmnXSnJwelT8sh1w~!u=dH z8re&(JlIcV&g9YM&7oMe+K7Eqlg3Y8QQ+2*OU%4QS>~d3xTu!zU=*wHN4hYQ6>ylGNyI96PPi(u$?;rERvHfB!32)>38I8txb;4a*;4qUL&WIFF>6C#J z-p|NFe?RmUWMKW7+vxgq2a0d5fq5;9xl3RAc+Z^zC;FiuO7?5e1KE-IzE~19r$muE zX;K*cd_O2WSLQ4)U4YHOA7Ib2-Ta+`D)-I*EUEmyl-BJrBNMel@Jn3`K5cl6R{j(^ z&+;DDiG}2#ktth$MVmR8c)|<)L7|53Z8BnOE(!Z~3m4_C6)2wbfOyj{f?9|ZX8t#V z8Xxqb8*cbRy1F~)-uzC+e5fRJU* z7-KO4L{Dl_-PB&Xp>ZKjIe8J3Z}elpj0`@17YWH!kNdphDCQgugAna*Y8w9xe>Quv zxTJh+sxuel+@6Md#ttx1ZLsp+zzOQ20Z&mwIhfWksI%=poLE_1`~U`9}G)utUrZpA0Vo z@rg#bb}$xg^UhN9xfihg*H=2<_J?p&uq)NMJs&KLztFpdZjj_?3zsMP!+ccI72Zt^p$VZPWY>Fru0XU9V&^oo zfW=z4Os|EUTTy^-L`rDofev9!VHCW5`T>QOd#G+gItrSM*<8OUFu50l&7b114o2b9 zlxgs{ObuepjPdSLMcOef7Iq9Cpr>AG;p<8U7EyiJct!@KXDo*61FP^8pAkK*c?_e+ z-^KrYJwa{CMO?7x42)K;rb@FIc{DLl5a~Mw6e6C1{CokG<9>tH?YPRp|DKSOmbd9q z#~5(2Sw=I0449)IpXHa7#1bQY`0_iQc8@)S`!qJgGwDzqt?>n(W#odqNdjnXJ%Zbk z#n|Zs>15Qyg?J(&2lP~3u-JPOtTIEABW{3( z^ZHS|ARbQqdjOhW2QcXB8N0cyry;92hpf&kp*O9bgZ3H`L9anM_-aq!{Q+Khx;w$fxim#ZZV>P+edOO zBg462zUPo?_MN`1siALXWUII+G^%1PhVAncGR{oX4-GlXZ$?VA`YTA?jk9J;~}Hlggcok#rmc%hE?e! z&}ixrn(@37&$T&{ebKgfwWo#ldEUd;lmg+*hKa1lJOjVSJi|q!fzv)0g)YuDaO+DR zyx$ZKqg{re!!VWrUKQx(?!^ro)$n4k3McYU3=R|}^UQu{u(_kdt@E|v9ej;6wV?=R zU3-R}j%SIn^-P%fRgC-Nl#X-8UBHoA#?TOYv2t~_2+Kb8ne>K>K!NuoVfQ|DuH^G8 z9R8`njXs-6O{yod?QwmEGQc!KeB-k2$1YGh}aIw;I6i>0mg=tUt z?=1}zmz7arK`7+QzoM?DPvJ#UHoV+W2d8}qm6~=2cg}r=^?8%wN97psUp5hKcz4h8 zzY_TDO*aujKlf5+BV3v6f-PxT*deD60}FIv@~}BMwpg5t6%QmIN63P;XCm(H=C9t$ z7ULLi}WJ;m28nI706}xyk!$?rXN;^Ld;SkK`L0U% z9wpdR7X*b?yhHx*0~V1h@FtdaOII1P>N%ha>5-EX%}`KKIH+1xHWJePPapkC@HHZZgG=hcVD_ zDW8ufV>Z zh@p}CCJ+!FA-H+)BprLe8EYC2;krF{D>G*A1vxia)Nvo6{Yr0XT5A;)X3XMNc|XQ+ z18&4+e-cRBoFd|@Ia@Kolz@u6Rd+QV_o;SqmF zId&xX&sVI%zgvk7Rg8rF&4F}J_6B&R>x(n54&u4rr{Qs3w&42+Wt@!d_NjhF!Z~4= zut>w1sh_Nd*pfaHY4MvDc$X51=8F|3LAhu)=^d^(dI5GDl@QtANl+WP09J(ygsI_s z?5{1_i$!5=_%6qb$PYh<8M_$>Bhu0RSS>1;Hq)oOl$q;mcedo@QMzgRUUWMaK?e_Y z2 zzddNCRl@omqu4peb;LhWl!|uAagz7VAbheMtMN19a%wL_-abhfEm9_swz!DR``rmN zB%_7hZ{cmVI0yso!darlt*n>kUdqiSm%AR}xz7$XYNi8I8c@UjoI%>zDa53+ zS%EFHpNVyry5%?u*?5Pw--mE>KZYSE&hw1GNowo<~&UAvViS#La=Lf2R<6A zfr`3~teNlYulYGu_@~MiyYmXEcSIsqy-k1)i~ZcE&)dLv@mKgP;)aKZec^%Be%N_2 znVhISjr|XQ^Uhf_)bKbfd~m1^CeKQ&OfVZF`%4=z&2JRmOp78%v=gAc|1nz5Al&)j zK01Y;Q;KbV2%n#8FfD`oki1pd{@U3|aKxq>9Tywm>zaPJcX%=mWRGHFx74EENmm+i zLmda;J4lv)gbsbaA8Dx0_DhPeI$cYuau12d$`!c!PCP8z;0Yra|0S-M%Ir-xq=U-F zwcwywhZ^V0NY*oPu5E)7Dy*81mATgBj=u>mo8SuDKHY$5g)8vX*#|b&zJqV7Yu14~1rA_C6{B9u)cdF z^;Ih(O(zr>|5T#3xjMAZB}~jig*{0YhdIk4=^s2Mu=NW;q5Ub?f9DOnKXDR=%KK1e zmKWM2U4eZyXED3&B3adc8dK%e>HLqD$PE_?vgGcA$n0!7_irp7{Zt5`dP^85^c9^r-Bls-UksMgb_taut{$SDb zD-g^rKw}YU2rH;U=gtJ$!FxkX<$3PyOWsjFw3_7}E2oaGzsLl?3hWqn1AT9;$H#h^ zg38Oz&~eHPSC=_rZR9vG-%yMJH8%vEU5YGt_aS=9X90Ni+CknEO{mHgk~u#ep-a|_ z)wfQ8;qql5?LD9Q_HM=E&rUEgy&c2G9f!sXXK>{idFs`>5BxRNxC|+I)IU}W=?+aa zR`mhQ*Lx@E`y|C4Wi5hd4tx20a2~zb7eo)eUQIG@caY!a;rx1+42#O+V28B|tQb+XKa+$E=GtcqnrpgtAt+9ARkx z_op^IYu3V-H9G8}dffHiiVb;yAEZ1+UEL>9Fgs>@%TCHJw(*5hC^wQxNOFL@IU-S*#1|74((Fp#_HtJjOsf) zhcXTeO;u40t*DafJo^QI3Q=E@cZhv;AT@i`xHiMxWV%@xF_Wj_-Z)|vIEp+l7u~)5Gpz}$eXK^?R9d~s@t)vC3^!h}iZXcxyxBk)HO10?nV;+t= zd;xEHxbVG%eK>pDBjJPAaDj5zHJ(o;&i!KFpP+lwvc2ln~ffoGa2Ol5lB54&5F~n!D>ql^7Lacw}Yn3dn!%vuy-01Nqi&@d^UOZsXN&7 z_b7g94+FDb73fy~jZ9Zlh32c-cysA*fs;gru8 z&nr@EB+hll#E|k8F(h!!bm)Hjh|k&f3x6edz?+e?kgug+P=^I7nN-s;nqxRM$$T6h z_<&#A6giEB7MTAa1mXl8csVNrjJ~xC{`<#sEq>YJ@1QlPd?6X4=6%K0X9sxK!!r~d z&V`$Q;-T9n2Vzr1QLkT&$`{SHOPW{$?H#x2&+$Q!^!Xr~p^(luO-3sVHIOME!xaWg z!RB!tP}XV-wAum{PQMT)?rbI7RKqY*W)c0N{)n_&Kf);r*U=_*6$%y^!@|P`=y~Tl zG>G!9-O6T&)!0WgsJOB{ z`>rdb-}57Qi^QT?bTp`L48?#C(bUaFi1T#R$n20tQo?6?AKeSXGp1@#ckC}3Jq@CE za0!T&4ODnba-HIg`20$M{IVr56yip$L>EBg4tsV*^gJ#yd`xWfROyVaHX8Oto7-3N zjF#xGs5Ig4-kD`G-EihT4(#m4U*GlM?!(u@D;cqny-ticd6+_$+i89w4Jv|D$_uwPM63OY$G@wBIAPh$a53ve$iX&wIrG+NXp+wf{C=ioX32 z4^}+G?p07J6!M*?b1RTME4@kS5D`YU$Kn1J`d~fw8;-HLCGh{yB1nI+0+Qu>NPAxr zbPk<^_a7JF;(k@mn4fVMDQh#6vyWjzp%GNv;h^iyFpi6ErN@MC$P)f+V?63TtTtZ{ z?z`5bdcg&H;94cdZ#RSWO?L#6Dx$31=@g|4cAyk2fl=J_S7=wt&Zkf8_PJNw7fuJUA-Kz_V|ML9v4GvzhC& zS}hYeFlQ?MnSTyP`HHe@<)5JZ>?ks4^j55V{ z$6^a=8NH+j?gxWI=}vp{@-XH$kD*(Nj8Qv%7WYV_j~)}e*2g@j{HO}@3@QIoGO?bX5x&4 zajjn&N9fJo%I0N%^OzslL<2<`v-260AD?Cl^HP+y>2NAea z=MWLO!NB*_b789mCx+_g&*b_|hy|e^TR;x^w7mZ&P^3pOw>Tt569W zB^+3F>u4Id-VYN08NlUzO)!16I2!NSf?;Q7aSu+Elf>YUuu=Xxl#cx(T=FLw)H@G= z=F8nEELw<12QzStQ#bGfH}n}Xfu1-unlm&s#gi{@QJK)Y&^I~?e{VxjtoekC6IP&} z-*th(SUFJK_Kw7FPk}|(^6;C*ZaOUPPU4r#vK-f3IHxWl=s%#(J@*^I?K*OacsGdR z>zk{gf5r*ecvKFyIQ$~c-%5xz&(MtBCe3y*UDkNn48)US=(efXsdZT#){N&}TY2tK zv9d%UWiSZiA4tt*YC)_D@%rhhFi;kbTkjNugt7^@ zv+)LuYCA%YhwSH6;?B{*)>B}Z_JIyv6+!PWfqegc1wN?xe7&Z?0rdDY$9PH$P|B0BA@}Rox6oZ+Y==opQkr{l_>0rgO8h{vG8#-yqtfUelwG# zsl$;FPL#R&g-7vw+fuBXHiF(%oWpJuthGNeRTIZ98Y6hA@Q{{GQ6POUT_I>_4Sm&q zk$!)sfX7c{!M21;5OmZUiymc@-b^*9coB>3z8(k#Lg& z{%=!HQq8P+mgjgPul=mwPGZ2a>c))ROT{>g3Gt?9}!oVMCR{z`!W^}(xGpXF+glvsBT*!#U4LY;gO^F2PKXm50<%$g9p_4LfLx?E6 zPn*cSZqFj~#z$c2w8uoT?>oIP^jb*u257uPKeSJt4En2{3N^+Tk+A#)gw44Lu5pvN z>^o*y)yDVg<=?`0OII|Ij6jo5{2iooJ$!*XG;D-2l#AXX>N6csTqhEypEJNiydNZF zT{3Rf%!S8_KgqPCAbe)^gszzuL_^m9wly<%g+#++%;NY%dg^639NYE@vi4iUpDBlM zL*N`38`}+amB-2Spb;?OYQaL5E)@ReGuCF#3rM8$X&Aq9A|$k12%hk~`p)hX;PCr7 z1VvxQZ%WM=IKG|Cm~Y8WS}x$WS}(%+GxeEEwOGXt^E$K@*?~8wD?|IhWio%sS!|oF zjN4RQR9o*Xqt8meodIl{k?Sv8cz0Ok*_p2VwpKtHeH!bH`Jyr^E+YV z{xVonr_Nfv-+|7}Kq9Wbgcz%7akWV$f~$$VKeX@ywa)j!ITcQv&)tXU+jt5&+hRB> zSO6TEK(4L74wD{P;h)>$Ii0Gp|eG*kS%bm-~pH2kJ=BzYDNr zSY8m(umEe~&rqdr*+RFdFjSawSm3I0Ul3FH80MDsk(Yh%pt8?~v)FY4PhMXE=HDAJ zY57uEV6hL*7pbtjSADsD3!aVsVm7R5rQn@67T(uiqT7tVqF;{&etv%m(p8Vsb2~g( z@22O(G1v+>re@LaRhcB|=@PnfXB1GMWB5A$Jsr_&Nq*Td;xteQv(H~8!V%X{jL*)C zoc=1nr?M=d7a@A49#z!wWG&-{@Otlvl#3u z)Zxw;cRc7AfkO}8l2c~m$)7QAF?FFB3@h02dC|YL*5Lw?3E<$zLjFE^b2c>0ZaIZDv&9=;HG=Nt*roQQT8(m|x90vc1A1aCTS;KzLzurXMJ zGnhOA#D7Uc_i8ofW|ai$j$5(OavVKMzeA>q0ct&*ggd8-V?wh$*QHbsBCi=yIq-@2 zmZl2i+Ref8v=dfn*5cz~d8WEf53nsvDAp2z;@PIy?B6b!{InQ;EuF(;r04T%<9c#v z@)1bcn}lm757A#Cw*}|!jD`u6&)l9I!_vLx;(G%rcFZG+xK0fM4WAp(vLOwfn~%XH z+ZoXLavBCZ?!~@06mZ)v7)-f>*^+K>YS|1p*l`Wcn9ZXPwZ_1*3A@o*X$had+yGIR zTgk%}PXLl`qG$JajGB}Jof*a8ay}48n?3>`6GiUFGE45o?zwn&$7P&1V+gkMeKO0( z{)jFG!WxOQJOf|`?5od4y+5K5RA9#fNi{@&u0p53-|W4DC>$G;i#KX-fwN^A1T0@k z-fb$Sa($m6d*K*n^ST8exVa1G9`+SBZO9-O6m*!$Y~H~(z-PuC_Jeg|q@9+b5)E@) zi@jbJsQf1jd*Y4I^U>GJse&0$dPN*1&ii7QuK|Si^+OY=(S5Buh_p)vSeu4{#KZTn z^ieQuaVo+3(QWju(3#xXsw_CGH<>Pe5>5t=W|ApGDm0wu-}Y=iVXwO6D-jEH!dXWo zv257^RBSpyyTv8R+5Q^-5r&kzzD0v*8*(ENBR$=Wmkjsg5dy-OLL z*Jg(4l-UfC=7I&vpz{$mT%`)1(CrK2#PA%T|VXsI#`WryuhCn=aTzCMBNLpN~V zk5GE}fd(sm_k~WicmuPXB2e2?l;&^BMO&kzC>Q08nOX^`A94+@wRliXxj1+d{|o!i ze#V0S3Y3sjW`)uvxYK1hO6p#O_5W?a+s}@2K9AaIZrNEFe&#_UZ_VI+T@&f>++_N_ z%LaZ~sdMWZM`BTHC93qiD)jacXLZcB?%$bh$cFwqD$6gYkc>%sC zm+>>y7SvNd46VYw`1eG=@U&qdK7H9kmYE$vtvp!>w;GH8O*sZS%|Y;$S<_o{j98QS z2+oHah6hP^NZgb+xL|BJdHA#j6GdFnu|Ac`oM8BF+hV+axRM%6T!MOjZMFVHCABsG>z3Kk)GeId*gNANw~G3UEq@ zH5~jZg^i!eDnn04(=9EED1NscVwI)2w3W~3F4{E0 zyIt<|t>RWRyX^x*4T;cIkJfqilVR2o`kfY#n4~1|FqRV_PE#nfaFr zn!LbtoGP|=o(J1bFC5=028zZ{s8ir0)YIhW9MgwE)+#Hro%`jWM%@!0`=16Og<&#yt4_*j(lvc-;bCuqP9 zIZh;d1uojFMXNW*3S=M03O`>n!0eIY?DwlA`rzsjymgz>hh5TeeC>bGqisSpYhLl* z!*k?PVj>=V{|##wD#D-RszSA&OUOdLRj#L@!6|(Z5H!#ySw9=l&wUm&Nu8o2R~cf% zoda~pxEoc3;jC0P5u8QcS-zhPrtSTW5BI$$g(?NOWq%i4{5kX2XVGVjSG@$h57~&&eLd!>1 z!Ww>d=Q>7>$xO>bryb(V?S>ji$OMsrxdwQ|3i$P=np#v@vxBq75qF*WpiPFU&mV?W zgYqy+ax4TpU8U)nN6{(DnA`i<9kY1{i~LDX_^P1E4&QTNF`=TIhJrF0+%e#k{^r3| z$%Uk|HjwksFv2w}>jVa;v*2QmE|;UL1%8u?$=9!%tZ&y9(ii<4XR?Q86}& zxLvfyk(Jxgq;)PV(%FdfN;)v@)>LGlZ$Q@Jw`9Q3g-8_GaYdG4?8XLZJTk79C=4gU z+L#mgVAmG5_tttM9-N6gzqXSm^CI%$o*3$#8-TE40XV2MLY<5bc0A&F>^|4ATk`@A zEj%t9nKme7XSZ|pSMOtJa0iTBa0q`Idyvmsf8c1JBUYE6#3tyZ@#EAu|5fFXyzD-_ zFV;U{i1hv+rX+Psw|BH*P`7EttS$Mqib)Xc<(|?UKWFQoy;qD z>dSE57mP5tp%?A@u7O|kNjz22YJZ}mnu`5NpJF#%3oPtm6h`0sB*+Z=>5e6 z`rBo>;LmVuL&IK!t61sha5tiqb35)usvcV${P-`RNs{gj3 z{se@Q=WQ^luZ5&1$+IVuRE1sjsrbu4f;}zJWrI>SAi~erEdMQps8>}WpQw*c-UYa( zISmZ|8~$mv$PDB1zv$#r8_8f zMw}~LcnobjO(0fb3aog41f?Hu=ej=S(Wb2;%ys5sfyCHPg66%`Se^3%tnZE>xr9SnfO2&(+qCQ+it%TJ*_HK_d`?kb@{2VosJz9MnM?QK3;zwfek5HTYJv&CABesVAckLJK zo;Hmg)zO7Hp83$Qd@EQi&#cV+qD-n!3=!P^Q;?E2fw6hoTwDGY`m#s|Hx|mUc!TqB zFC|839k!J1dnF0Y4=+IFn(MrqeGE$fTEoqKaR46vHy+NcU&e)wc}@=GpM>Vk!C3eD zIp!I~5~tN^-0SB)IGm7+5AVE&Pu-f_@veJtIX8}XE2fZFPxQFXRux*a{t*6_dPL5? znS=7b%HjCT2^g*%0162&skX^M?pk^{c?p~Gn76 zJAm%@3SjKmIap+|6pi}pAv`hxUyPOECI|VDBd+4?| z#@TDFEJI=S21+mi6HWO0*JX>jC##pzYXvvp6IKdA!aGw(={D=Aqe!K5P;;APizmQZa6a&~J_X2}|uB-~2; zTRd^f)j)x*&1{tQv*IRnq_QI;2cUDL1x&FPVQVfautfDN+=mr#;7JNAe>jKY$8j`c z$8QXa3Lz6WJjY*O`{=*^av)K|G-cmF-YvpgxIS$;M?gNbiHv1lT4k5=3bZK#I9brb?ywP7PZpu zo%>18&TY`S@-ojT{{x%(*?%kVw7EFdgeWx~1N(iA^yh&rDp~d&Fd>E=td$jdeY{KG zTuP)9AG+JmaGQj|hZ1q~<`v{_R|n7D6z6VKrlQyzKb-qv5wwpyjc#ANq21vYY1`X? zJHKp)MV;$~FQ4mBHJ+cf>q@V1hIT3SFl!{$jL+dN6G9`XvK98rap&Hx%-rQO4EyxL zP-+J8>|DybyO+@}=L}47%EtlA3wT0ahZ*_L7x*Xd!Sqk{_|_tqI7Cgr(E+dUshc(K zxmbu!38#s9Y(BM*pN0FKZeoAJd8pY^jPe#saCgul!EV)uwC3j^(tc6acG}8T^COg5&S1pMIww&l6#-VQLEjL>|U3SVxyw-1kZk4#SYzU@}L~p_$}7h@2Z6p zb{Mb^tM*~@L^qbm@Atv$l~@nwM!sq^q2cr)dMGX&d=D=L>)ruc=C%%$e~zQ^dqkNy zzh(&h`@!shB=`HqE=+m+hq&)l1d*-<@O^PC9y3WpuZ<@3&7dvz_7G5xUX5BIJv7Bs z2WK5n0wdm)K4WJX4NiH3Wf6_I-aP={OucF^A++Znf4K)OJ(ajaFHEqrhd&pErwQ#g z7vSy5YX!d2mALFB&(cm2=fdZz@T`YWxUo!zuFDc1^REiiq!Y3I=5*-4GXb~EDn;P_!eIp~ znCIz^VSTnl*QAWUPjZ9zBj&)aHB;$lQ!Am^(;)l6?RuygO>trBK?r>QK^VQ)0iHF@ z;UfM%$N4ta;AyY|xFe=0m#__GHJ0I(d-dqFP=UQU*8r<3_v3*!bG&^vjAqt6!0}g< zLHgZON~asb#`~e5U|>QjHr#}9W6L0<6yTt@E$z(EBisD8!SwJ?SY8u}TDq$2ub3_@ z*ilCN$MT#X?FLAx?G!8>WzWQu`7_#oQ^4_VC?4q1hC{)diL_rBXEx6Rg{HTlLVgEn zn>0*cm72k<1MkUd?^i^-Fc+y=JFIr`16|80+yN#2-e~3wVwZXw^}DCz>rn|Xz0w6| z``?Bi-7j(Q#CxKDYfw0M*aK(E$HTlQOQ1^OKhpa>fYv*ivx9vJ+)JWvFXuOm&abPe zN=*dMF;~Ev;5Z1LT0msaHp0w~S5zV{7>6`7=$|8X+!b1ZCNSA;{7&Uwf8PH z{2_*R8#*x}ssb}dYC+L_2^Kf93(zkVbc1*(lQdjY;z)dFMq=##D8ap5uCTOzCT{q>fJ6un z3QFc)2FvLg#B!=QoBC?K;K`9~90`>U*bHIEh zQfo5_WhbhD<}?|if3T3MP8tD5i)Q2PL_bdTo+=zAt7!DgL@*Z>W891${IFjeOskjT z8uulTdFm_~yY(-O_@j;A9X#w*9!ulD?*kZ@VT;G7{f0L|5-gzN1JPR91*#TBWci^# zBM1;n-a zH2tsnJ(a!AAi(+$6dkxpF4{E;maXWbsCfzKrl&;9N)lAqd-xP@gTwRw;M#&e;CkdH z9t*05HxBYRtuva~Pm<^Nmu}qIlaG&9o<$Vgp%0{I3ML;fM@3m#Haa*9t~9#g^pMqH zlem{0*gX+nKI{U=pbxNn_E&0p@;@*y6v87rEnvCYu;(bx8Ozk+l-G8lqRDA4X4N;U zA5f0hPPCH)nmakZ2#BUNSAkn{94xx72`4C7;bxg5aFeRz+A)SO_n;Ez^hTYIIAs72 z+Rx(Na|TRl-6nR_{ulbKk|d)hYVaLLo&^_q30H`^!$pX2wKF2hvZH+NhFy*fKuIMVtt z->=aFF^h8eHVyEjfjTGm(U{t8I0)WvTi}J;W8Qh^PkM$_(P+mR{#g}aaX}-Y>BC-j z=XMt9d|it7iUvS>(|i~nlR#XZep3BUIkumtK|Sr&#cJZF;B3uFBwEv6~ZQ%iVp6}NETJ4BE@{aE$waPzWdkEC}jn_9jC*M z|0T)<6Rb&#-z(6N`Yikqb{}G9&L=`md2Y16CKomK4!Y@%!?^ZlzP~d8m!xEa&jfzG zO{*r->!hjm6F-(uXF}vBPc|4E1LvenQ2J6gK6fqy^?V`jU6Tz?jj=@h&1qab^b*b( zyCZ1z5zBOEE>Lkh&eFbt4$fyF*-?pUKHQ8Gnuh6D#S235ECo;y&V^sE#h5^52^4%FhAV{2kCT%u8qz#ZG? z!bEn9;GtwQlG5>lrr3NZj`>w(BYU4+e^Ab?l6O>=k})H)VcYIEG%M~c z+||B-Z40jnZ5~%c!Bc7M=XrG5#ycU*FczyXirJqjwPU4o9%A| zM1ZrK7HwU=4xZ00LoY!ek=XSPCfaGx*DtR?PpUo^KVMJYPg#J83myqei+sq!8HZU* zqAJT*_(0|+u7%5sK9YJMy@}D&JGsA)QnO$qZb!ieAc~q8#%=c!IEoIm` zs|RAIY@pRuW68_M9>h;m4(PPRVTi8rtR#S8I|pl~Q2vqnpEtrO*mj$#yudM+i$ zKdIpAD~9x^of9+0uSC1uh#2v*xjAjoP$n+NjQN=4Zv7cJps^8yx3DpHbk0}>{)-IKj5`EhnDy6% ztVv!7w|eg5z$Q_kE8|J=geUeZ7Vf8a487q-`F*^srNIqotK*GN&rsss5g0tKfYI|7 z2sU*l)B0~(V4XJ!{`33`x0KhgID2#4^E?5Uc}-;3q~y747gj@t=Y4weYBLH}E70{- zErI~v$FTXua{6N5XtvP#1|Do%jc@nJf>Li079Z&0GscVX!|@m@r6JFzd#q*FqD92w z{9>rSatXwTc(yGL;gtST-ivjF(tIFvMD$z`M9cR(V9cqbSUfoc*5A>fJ1maUIk_!3TWLOeT^WL}jt-UXx_qv|V;`Pc z?u#*7?!l#^@t~r%3RcNv;Az)0m6vB+#-`QA!Y^0C$m(b*el`#cPcQhv>C1!kee@L6 ze({xPOa*+Q1hRd^LV6B=gw@GFO)jT1DE%N^O(y^I$CAe{K98ch_iV z(^24?X#$11-*KbXWt=oL0CJKhto3vuc*W1B8}3!pv;S^T;k|?WZ}}d#ywriJ#z@X! z$3u*+DMFcTN8sG7=Va@Ht7yGV8nJr@%q-F77M>F!=PFgW_{%&i;=y6?=Q}n#HKxP7 zm8I}BJssEOTq1KfU39nK$nL!@@~cn!wy!hqaZ0S zAQ^e#)F&=dD3`$KyMLlw#3m`Wj3mLB3!-pr@j|F;@)d0SWY4`v-sK~|gY%P|%QM(! z(b=Avs1>;f|9hlEMgCmD_2uWOb8a~uT^I*01N~%2`Vo@ap9VVSnHa9GLm&Jd&vmc( zg%vS@_)+8<49{&|lgwa30_FKXcZQdc~@9^g=aB zI{99ZXJg7j>1DcZSutKdE=Ejl&13qbAA;|XB6>Dkl9TkdfE98xSzu`dQAj-rpL|`I zQ;;|g-H_-0T~CHkZB4f=u;FHrU+VCe07N^R>bpE|$!jBg8 zn154{IUvQPrzq06L`PJA=*^ZSZsJ;=|A3ccdwGZ14sNHK1lMffMUC|?a?;1`xCW;Z zvi=|?)8^FD8LMA|`&|=g`}CgvT^a+?Q@gP8z!_o|q%S;|?n-K`g%~ExrMcESaa^J< zdneP5InAqu=_dz;@{bree9gt?-`#jtgZD~J(q?K$bRc()D3kSxgXv@LGQSC?-1T%% zw$(0*<1IR7|2^EwpQ&N5-1Eob=d*eKou8Vu84?56?okFj2G5Yt+!AX+krE)ZMA zgpy;}(kH5%)*%b{HcyPL*vId6cKkcxaeo@m|G#VTe5p8xVT?cel1LUeK~IVc@tF$X z);f!}1ju2Y(|h{ftPh5kJ{9aL)F{S*Cj5*R z=De~cS--bXU4vm^L}oY9m^B91$6XXo*~!SfgQ2ulT8-4Yp0qdfy-wRFs|J{cuw9R|o55D6yW(yBTzEk_`)H zQUCMLh|;~6l|_QFSmU%-ICcGEn77-IY6Uk^{PWYk>9tVs_-})KABiJwTW^!$+_Tg^ zEMIVVp`N{BOD4Bq+nr@W8>JzCUmH2l_MFCV*QPIf3ZX4kM(9`+BK+QjL5B1r za%J^C+#+r4@Og?3b8243^`aK%K0<|i;Tz8>?pns(DPM;hB}XxTPkpMVZOZQNGvqEA zoMN@Hd7K!OK<}>0pi}G2^wPr6&?%m@THj_5{VuUnSt*!Z_Zig7AJW1QGj8h!H`Wt+ zlV=G(BI9xobJy=?P*@emt$MVcc^&2X9Wj-(U~>cR9u>t^`94R#N?jN7JNeF4WA6>4sFWbc2apVPq{=;$p`Rj40ruH+Qj> z&6&b2(q^o7-XylLY!{x2*WsMKKeK}!FJRDOK5Lrd$W1Fp{P{qf^M3i5?%dadZXbT2 zbw(Au^Xmlvo;03O{t&-NeSyE{jk(mbG->A+?Od;>_FaH z{FGb?xcoD7c-PJ*yfES}HA}-{e)Ie~wh1!x4s+p$hN)SLJDIfqC7v0V$@F?;m|=Z9 z-C(j65AEuM*~L#di?ScQW2m0{u(65@-w+OGh6b7I+_L{EIuA#xzc-F6Qiz6;6`7Tp z6midU(ol(rlu9X0l?d&UogHO_s3;VbXyKmcG-=Q#m5M|qRH(1E-{UaMj;NBxkH`K}a|C2b+wwylPajSq2w(oJ#8rB(26 z^HVs}y;N|1RFgm14@twjTkuo1!*S?B=Q)WY$Jx8bG09&fHxAr&qKBFW%zyy)2kRhtE#y_Xq|)=LVQdILAvE-14m+46<*5(yuXK>3&Q{G*>#sJdMUic(fstV5=?z`Gt8jYH5I*tr4mL;drtRDH3kPh_5bNKngg)tX$Uk}y!}{Yv z-*GKS{K!Mk>{l>Uxe5FQ-^1iRlXVXBkh{WIcvkrEUV70E60 ziO}lb4;#u$Sc{N(a+q`hZ_GBO?47&q+#``tI7A1}`HUy-S(fBsMI75~5CRUnyGX@E zB{CsLo6oFs$KTq=1Wwf{be;PF9IhpzsrEx+|L-wM&R3^_4!20ifpO^iVhrv-7!5bp zxq+v*9_`W-SmtLv$fDx$xHt7Aw(*T{?0_6^83M39SCM}vA942|BaE({0fEEr!@M2w zq(?Iam#@1noQwL9J!UXYd8<$QrkAkbB6*ssc#OopZO8E!;&IQp4x}|Nv4I^DvN;)S zj@L2Nnl_ccJusNZr3iPkfK%ko0$uLtr%K0_UnKWmy2FCtQfyr63=vAnaK|SZ;ulWF zegz3CV?7@B|9XI4mt~RdjmGKk`cPrVA~bF-#_tX4=yUkD`24(7k!xyPhB!%`vEL8dr7`$E3?gg?Kt;N8mz6jkMF7n z+GZ_}!npB`Bw3_IeWzIC(Vl3uw_62cpQ+>Y6P@CEjpL~CM-6W{7-G<}GUz+rTWKoF zM{{3oYEq!eK6Y_|k?{;CS0-W7=OpNOyali3r^1(~SMYc6Uh$3)UB09@4n7qmfkl%@ zynMtbaLg9L`R$+KLi}yGQ6qdNRepFxyODWLI|N21r@<&N1BT6B`C&&<NyKUgs|0onFYT=9B1J*#jD)=R7hnT8kSRc9YL+di0fPZoC3*`b)e z-3dk&&!$}l2l3Pb;d@hloLJT8v+~pBWVTTms@OP^VAoDCS)_@^U#>Ha?O`zR!w~dT z9Z0j4_v5MHRPn$tH)8wlv)D&v1Yf!4F`gLU0=sWKt1RjYfSix(U}Jwhj-B!umgmUg zrl-O^Z_a#v@_q^~jvtRJ`YCrlIsuVDc(KJcVif>}_~ z@CB9^WP?rkPQb-~;BquD*^}x#cKafz@z9_PSOfVN+D($vpONifA|N2>4JOK-Lq6*y z7T@0s*9-dz8mO=l7oOmSw$Xg`{d};RzYza@-3&gZ?&!IvgfuynPjBJMEgCYQjLUGr&wtQ)xc=8&W9*_c36VDoknZSCzL50;+6ZK;{C^XhK#{@)Ft z*j$Fj{3{FHr~*%OmZL$2CIrMU5xu#2mdw9=NBr{UZOl@dDSBaP!atAL2C0(gNaCwM zcs{xYr)hMvFJ2BbQ8%n|=$wzBSKo}PSA^eBe+g=}rv*ZtILR6?fxPm!gT1ct_+aUE z8fNwNMpp2gFNZA)*07G^MAmb9J<%$UgXMQe z(-5yxxM0}HCN~mpB6xi~L;kU|POU_*P6PoP*Ky0;0uQ=lGLFpArGG4jV6R;z&NfIv ziwFarm*oqpg+XxTmM)*uJ(Pa09t(25vh+u^4(yGOU?+`IQA>Loytg?I&$svBknHQ? z#r+v5dYFMUWF$|G$U*--%9IA#lFo^jIaqkZEPXNlynY8tyU&x>7end#XG8gm6(gbX z=3(-&`WKYSNYEu&&Un+*9Uj+h#lJZ(AZ*$|n#IE5L&Fmsuw^aSuSf%&9}S1SMq|wL zpZHc=gL`VX;N8df$n4@3q^-;lX5??CI+0ee!Po#vdMu6+6_SnuC0>&*IAz@v+0@!; zL|&XCu%in|%|8heR8)+tRTd+4-mphMpAoj^58E|$G5NdWhN#;n6f#3)D9w!`ocTufk6e+nKEp{qb1&MVU4B`lm z^(g}9BM0$*=QwoVR|o;*6n;8>mu)+q2Sv8=7?MzjyWS1sLLii9to0BXX}!UYlM4Kb zPpc?AG#YRF=x~LWJ|Q2t1Kaodz^A_glgTI+5~Or=Gu+d>8GiOX!tBe#Ftu?$jvLt{Zknt}vw9~%iG(9B4p~W-8cITvkZ z1^oxRA>T(CMjY|Q?qfwTW^W`8*lNntf?vY&HN#+gV<I2=vpRnrg5pd0n#^+~caGvH3 zXz{OQ_Z6cA&g*x4G+G*O-5p0Scl-y+_=Jt?8-{%{`!TaC3bySZ%6Ck70s6ydvGHch znepss_GfGv>(5A}c6YYIt;9Om+nS3{Pin!!wH7$(Q!W+;nPT7Ld<;yfg`G_uAlfww zT6{{tbXPCR22SN$ooWQW@l$rkK>gbAuwY@(&C`IB|GiENZ` zud%9!X3KaybKICrUED_64=uz!e&rZ+R~DXJ%pfpv1ihy<9x}s5(~-@qp{c4EQ(l*f zzTK|?%f`*vktWG^z7J*B*8C!;3M0j-{X-#kEiJKyQOJTyLlqZ#uhIG+$bV zc73(RjGKSiribIvk)9Sw--+ZqcU{1CpMjXK^aIllDD%FtPsl&L3hdkA2`9Ft!^VuU zU~IS_OAhP6JSInjZSvWg(WdnAy!}ih>~A9v|05y4c90c=$K&<%Bx-&%NqosM0%x3- z<4tM%#cIKeq5OS1;@r{rXGSU06z(6Z-?5>T5%I)P$-E$qof_fHBCbN1!J4~q#A(GY5wmL(Xv_3;Y`VP^9$glhTqgT>rmf(DuRFnwr&(20R6*md_ z>0@~P?>GE4Sj2yw)Fa6y5zO$gaQ~A^gXjl#VDaofv9rrqW>oWm!66QvdAC`T-hb?A zLMi!r?0ltTxNr+@Z(t{Yg_LJEua6wOyRAuS9&M8d}lb$cxsAb`-$-AsUiKCauY4m_rgV;b_@`O zL2Ps%JB)uYqFC5ZPAaPcCR9;YuBJu=t9sqmWO`rg4e7ik0`i?p;oyW*w0kN zcMFW*`PNK!J40}gsOF-otpUg<*I|j=2?C*q$hEjr7%*=g=CwtTtLmNb%<4Djk%6Qr zYy;E_O!`BUZTK^d_e^)*5Ns&3!lHn|e9Eu2sF3{^&z$_jf}2+G?>VWcU~?OCQw>>h zbQvr=GnwXpTu$an4Mdx*Q}EB$GMw+}N=`p4hq)#faqCqbQr44B!&e*9;vP$WFxdps zO5AagY&`BQF`#ZkC-Pc zj-&w_L_FuOA!vu*B2s&-*uU4mVZP`WwCVbjZIRvZF?S%T4e7=DD{~;#NQOJB+{TX~ zBT=)v6TM>k!9v!KybenxRrZMKC1EshJmS*e7N|XHgXbI_c}Yz=N}s+>X6@#pH(Bv~ zK;={0sj>%PMCuu4cmIVLmb$|cfpNb;L6Vx>?;Z9O>?X8|FV7hp7+!%aCkHtkC)+!won+2WgUy>uQ~x3rPn z(oDbs#ZMsFAq_7++y_C0cDT=@TJTryg1GOeVBXi;By;CQ*f>ZPF8$SK3w!$5G{e!n z`NUtM{rWcQ8~U+#ZKfDHIuo@^&Z5MRQY>kygD699wkRMU-#4B>i!t+1{={gEj~T_| zlQ}H68x0G---6T-N#0r64f7Ni6VdM(aAN--f-kGU&LthH%YVUF`Gb7d&P)`WD)Ek8 z1~A)kCuWu(CLR|j)5H55aOlNYl(3Hhi#;!)UE>iOR_D#Hb`GQV_a5QpQWbozD$JD6 z8llOum(Z5!NEFrD;7i*PxV&s3ZoHC>mEUWi`PhFVIXN?|IIqJ-u@>=H-<#yWQAhB5 z$uM!7>rtHlbtoNUF^=?vR*LP!a>{nwxx=Q%1 zR((?W-0vN}>XL!ofoZsyDT|V4xiX8;2jZ9Of0F03O`xILpHxjT#CK8)SbV|`9#qyu zOcLuvLwklvvk-A0m(%b{>y z28i$1fJ3>mZF|2V-Q|%8Gh*iQ&c1ihn=%R6ftB=3YBLbUGU%%L4=)`5jY&Hsc$$G0 zO2+JjN4;aA*W(2EuJML9&kw`;EAzl7^P{LxMQ|~B9>zB|XW(;ID_h$A*|xIdkXX-9 z2m2hh;&<~jOzDlpFXKOAzup2?KHrQlzFvS@BV18>ygbxCIZRqYE131%8c0(aMqf;d z#OKluaP3S1^S6tJ_eQh1Q2D`G(IL41)O^syQ{W^KNRn;zsYq%9dI?^;o*ReI|LZ93 zbSuqvv0WXkI^qDfB{%RX6rzr~FC4sZ5Wl{Shmos2;A2iRJ3llBU+0)rh=ab}ca$isK98~M8`!)18z7)G7O$f>D!fa94C5_gNl_L2 zAkjSinGXLry#hujT|w{Vv$$D2QsS>~ZweNUc#mmH6g z(+AU=m6N$KSb=f*f23u58g>^2RlGfqgUw5LL?_;=GGXXC+ZAI4b6v7@>v&i8^cz&p`3z2f+Ssw_! zbk!mQ9$s9GQ5O%fJDpcq?cPJSPWvLrG91Qomi!if4!MCY zE7wBJy>upLd_5#v+);=MA8nL`C>i+Z>Iu`bCGUtnh};8B{cFW<|SeZ6EY(g0*42!Z~OS zgFZfigQ0SKh$o;}+A%pnq!lU@0SnnA(`R%tmEh;2ZAo`QI*W4> z!`X`u$Tf#CL^M1G9aI9@PS=H)(KQjoUBmgjQ*yjv@mH9$Qijf!9YE(Ed&-)`R@_hD zAN0>AVUq&@|0%rlALzp7753n)dkLQ$)S-pn&Y*&;Fq?FHfN~cK@yH!{$QV+FD^(Kl z?7uTu;yDkK4@mH)(lRz{N*YAIo(vtswxGoyC$7G}0tZ^D@Zr-0-u%~x;5|}?$B(E+ zle$_Y-4kg^upKU&zMg|Z9;s7s5H-%&jsY7cQx$V*W_v3Ha9J0Qx*W!W?Vqr@Kc~P6 z@A0-1R$K+^%c1P|#44OJdj{wxso`08}1_@_EXw-0S_-+Z|U2S%-RgNYRi(P7ta2i3H@tq585Ryt#E38QVP+X9QNk-ye-QWP2J}M6)63 zVJ(?fu1~EBobZK`6W6?N$-a+Jr4keS*`T~QmN*o+#g1|u6`LU1b20*oM7N3IJX5+v zc?5qac|ly9BJ}AO8iMO|4j+y@!XuW|SmzRtU!4_T^*=@2@+mRO<4j*d$o&Bs{-b!)#x^m2`{J6@XWzr4>BOa`%hpArlVZeV4*J_uQP zY4H91g*+LZimfZ6_?p-R_V-vev@M^;JwA-0F~WS@@Sccn-XI4fn_^%pJppf=dc{UF z^Wci739hKO!pB9*G)ef(%1{UL&xgR45qDQlx|b ze#GsUN8s?hJJ{P1C>qTv#cst#AVIG>l@{et1MBzefV7Usi_f%7U8>ilUk zkMP(4t!qtfd#xXU1XH9N4oSjQ1tU(>Kd~nYvtWg`G*ve|SzfH52MG%__~5`Fm^5Q4 zb#-fo^$)7Rwc``9o}!2kb#2)1cVnpYizPTJCy`c$7NW9Ai@@+(&vf=~$LJXvLjG?X zXl${As9Q(DLDdx0UlpLM)KD0>{SLN^sPd0a8?Mr`qV3Om$ka-&N~1gOLc{=?IbJOTl1kJFQ*DaG-^>IBoj@vCFlzyq5rvSG$~l}NOXIU6px>C8a{uo7ntsW z;NB;}UwIsd(ugbIypO`x=uD74w;UT5MAK76E;PaJ9^8DX%r|||p*<4bASoJ(_ginF z+x=nG>0u*YRZYQi@&{kOFU5y3QLuM>D44}JqwgVaNEJMFa>+|^(T`EU*)&?46$b+! zS%^CKKc4PP zv7rAZu0%7_o0W0)Q6OzJo~}r$g%_vBiXN58@}?4b`tspAp5Zluzge##WbCA2|JSi- z+nmlt!pub4d<1);n}mTinV7QVCO`8=g${C(;=B8-xaZU37@nF9)L)Z%)S5ESQ*{vI zDa9AhyMjAqJIL@cCopk(GWNQKQ%O-_cdi8^d` z%6C?m`4jK_mY_#0y;=R6h4}b=Km6KZLXWhZWkGl9VM|Cc*ltrJFCu-Y;`LkLY#^|N zHon4@m50#Y>ku}b(4o0*LJ!VyARik03p;*X#;AKUsCM9I_G*`txMivqho&kMXP`s2=-3K%)p~~C~OdYP*F$r?ux-5_u{c(Pz@yS6!yUW?eJRmCDhKF z%^z7R@P#&qdCuJ>7^>0=4S&*6`RW^DqoF_-&QZb(sYYNv{U#~7BF(dRxWflYjxM_0 zQ2+Lu=w7uf-H7$5uTVq|eyW03k4{5shcX5#OQQQqG0bxw#k~%s!9@Qd^#05$DEARu zqYwXME{y~Ek6rU%`w(gBbF3Fn+9}#v>V1HsD{>I_gaZg&^UKS3b3=O}vlO7m)mDXq z>~pQkU$ysPsn%iE^1+PX7_5TJ?$4rFE=%Y4d}I0VCHPybP9nNs3X_)(rp8WNsqK`B zXmQgJj`pr$Zx_^vyMo8F+}&2Vusj2vBxT|A)nl+V>HzB9UdD8*K7(nQJaroIiG1qU z2X@__=avm6!H;^#rNK(@<7y1HcckOOCcr&E1n+wA6)@@hhm*^5S;rPdo_p6DHkt^$ zg-J2&X<#fY2uR_RR|at1Y5$?}IVn2RG?MDdo`eS{Ix%D~f$GW$)Z(B$|9I7dzd8C1 zvQNk}@10MWvyUA5p8ElcIb+Gd=h8HNg*SboIgI)QsnVkUS{U=~C=^~C#%+I_;mpi0 zxOto^H6C3K#Z&IXTEA>Iy-=AdOP8@FS7o?-vLua+cmQ<^M`8Sw{SYDSU~WGf!1t!S z!JSv)$o(`+9xXkM9y$_B!$xX@MBQs>YpsJiXKivo@r>XNnub+}mf-dR2bw<9m9Mke zEbP&SaiX@8q$bRuQ(Pp(TGKkPE5v|qTj@d9l_^PJ|Jtdk=6{%M4zKmmeGgTljKyc9~K7&09(Qx!;z`>lB} z55JHGBRblJG1D0+3n?eR-@8F%mnt9j%?&M|8lv)iv1p~p4jmU%v6{JmAzJn<-1{TO znu|}t%JePV{2Ps~4F-V6uV9>u2P~Iq$LfE#ATTr?{gj?D%h9uF@7p+NA2f{GBt3-4 z!)0Jw(-;lb}Y(s-62?jTRkeSW`?kIZ@aEb0%DbJ;iNeF#W@@XccSU z(*t`>eixnb9)-u6ZjdOs0(RZ{E%9`e#;!ay(0*PcUO##hd@uCk-N}!jpZ#FcK7Hh# zfh3jxq|L9EFNM|C{#5hXN?4c_$!m}A673J)kK;}criR28%?=tczMTn7L=BwmJd-!5 z3G?b^MSke;ON^ygL330%4Y<{c3&Iz2(M9+= zXKUKwnuP(K+uh96aw53@gPkIec>`fZR~GY0Yh|z94$)gf>sbI?gM()Jv_V~ke$oFS z9xzdopEs+9-PbHZ&M*=tKl)#LvEqs5`W>%9g2fxEz!1ap? zpTB4nonM{^FI!3hcTeDF9v-3#h5Yl(9KyBT((%*RI>>w9&SDo0;swd4ME**bV6k%% znJ6`o>$<-M4YvbO`%9Y*T_)^yi@WiV@*7O`I?jLi_|RLQ$I^y5IbbB?KvSpIFem3) z^2tDidq$|!*{bunMzAJq7e(@@UUfd_-Bvi(b5`(~{==PS`8dOHJBW5(!lM@R`FXDz zyxi>y`SX5&&G>$>o?(JAZ$t3cv!f84*MJ#O{ORDX4}R=~o*77Y ztRhhZd{zYJA zD@(JEIOEi9Q6ewF`}}&mH5V5&K+IWX+ksV*H2LcmxIeE8w-g%iVQm9xZ!4nov|{E{ z=3aRv^gPIoI0+5MEs1$g3EtHTfTuHLdE)F*nDZtUx>jcLFWcr(54Azuw0s@@>&zt^ zj*OvY>OrVtd>Ru^3`d>n-5Ay#3g$LyV1L_`yq%-N&&Dpn?)O<(9#95et3HeU=LJE# z-ac0KSA(l2l!I%~L_Trb1B{&e85H_uaZNxp7#2>Vu4gE+F;dL?d^3hkx`wuUH}h{& z&X7{L1odtX0Fo+4l`jnE1?}1_-YWt_JT~x)ukP?_o0a^4R5(78*#^VfZ=CE$KfZ!k+L;H8X!^io;d==BE z|L2d8CvQbxj))N$upKaUs}v6p685|=dW7%$By5~9jPF>xos&}s;PH$Il$Rbs=loR! zsR4ob;#&$^;y02H91#nmKEm9qm1+OWZ;)zzg!v7#!*8FX@XzlC+$(h*KK^l_9?QSr z)hZcKi%-FfI}tE7Egydlk>~f~5@^YB8c^m!nLG2D2mgA-i=ad>>5d%9SwMvj3yoMwHXV3&8AOR zKZJ;HTcB3LlGFq&rY7f)iWXf>0L%IF;ox(7T)j`121%Ddde;q@-f70KJRMG5cYjA6 zaW5A7U4wStWE_9gmn~Hi)@H-1@bSN~eBIPIn6O3}b{1P>Ow$ScwC@dTUO5(*G&Sq%^K5Y!Lc2%;N#`1Gd*4_#D;gLL+Y1}Xj~hxj~m|zIivo?z}kNMyyt@g^r zm($3HNOig~;sN(sd57KFV9i@5E#s{%4zNTvhCUk^1)KjZLH!wn=m~=$u5nijYSsF{ z>En2uqGkj(i_dWb2MUk-J$UZ0K=!QBm)f`1!;c$bNb9A949;yxD}RLFidTtGSY?P- znS*$n-3=UhRFAYpDZvy=2~^fv3M!wM&?ji0$xO^9I%j1lrm!itE>=}hHDB~j$$-zA`cD_DBqKEfvWP*bG_ z?8p*0kTzZH%+y-==N^M~9g#3}{Y18c7r`cjKbWeqkS;2D&nhKjL42TykNYD9k7avN zbG{DUXnB{c4Z8v_tbd8bbx!oa*)jNLRf^c8*&TeR?q?xI`(V@gcxe029E!a3`Au&L z+LaZ_+tzY8XYn2*Yjx>~WiqtA$pzk&6_;2(O z{xe`I6m8Ie+^dUm&{wxacR zSt#A|5)S`$S z;ID9ei3at4w+WxWGsKF@EmY>`IUF-<6e=u=gy;<&U|%#FB9|)AvG&=}dTcF3oDjT( z(u3%S&ry zw{EP%_B#bwn|&CUm00kXU(1NrG9!9_>Rn-8{Srg(on#(1cfen9AGEy=g_&>j@NIDo zE4{jk*4f%~#}OY{(u=21Tpt5J4@cvmG(F;Yc{=%SodL-|{=ofh!X4?^8g%N2#O?q+ z=2_VSTIXi)AHOp|Dt5H^`Ku88J2#4&`xkKiw7a-?cRFlZEP}5KRcP_G6gCfM2-!b( zHmlJA)~vdRs`EAZ@SJyW+Ejs#$xDJu&9BJY#sIc3_#9SVQ{zvD?%@w>-%SZG6}Xtw zl3=>R7Mkv>2-)vjNJU#IJlNBWeSL{E!FieOe^XUC+qed!H2vZJPHS4d{UZbi{RF2& zhrmJT?|iCX24<@r$roEkT=Sw6Qd{Ckc$++}EtvpwZ04|rJ(s~)$RNZ_+{E`C?1Vo` ztss(H2!_grm3qrop@;P`lnhqnkFE_94@fouS#dci557Sbcp}c~jD&Lndutt3fYV+- z`bx)y-aK!_?T0-UX)87dC!Su09Ey#OD?$D-a}F_-gg7N1`1 zLfs?h(#~Ub>~-i!`d2oY=T3G(o-h%oUb<-$ZW2cA6muZt!dNc9wG(^v4q@3KgiZOf zT)F8b>{BQt3twDf7iT>N=kyYMcs2{XqyCVq6CzM=_GRo3{SUXqTEgP>llb<-wzT?< zo2c%Z4UeA@$)+dXhqOUAAqP&Aw|p(OA8%oY-N(>%d=_?WItCZ7OG8db8$KJ;hR+`r zz{CD2`1yo2kJ)8}3lI3ir9a2Ss&Cs-E_1%<(=T5Pf4C1@UHl>Imn2&-QIE&cBQQTW z95w{35j=DgQ7U8wJ#pdyq>J?UoI8p5b$Bc24_YOjBluQ-wT$D>G$--hfBr&jUI1!b zr`Y9B(CgS6G#+|Y+%VQdOt*~X4>NzUD@Fs*G@}nq$G?Vs`MRKTC6#4n29l*$x{$xM zp|eKjp+QFoN?8o1Ez548t>X#WI4zf?#Sfuzg;m5Tem__X-MuMxvN*Tn4h-}=ii`!q z)yW$$_x=y@SoLvy*3u_ru)GIEL=5KNEWP=?oKDdFIEWk=v|Z@LXhV*A3JWf)!Bxip zaG=RCkbjq*-iz}`KCz^d%LnHGI3}*_poTcLoXyh7>{#H%*EL+li1a@3e+u67J1t} zbl7qOo7fY&p)46ytlzUO8(+Y*4N|avvf9v% zo*w2$n>V77OeqbL%c6sWE}`}}frjQqXqJH--KD3_b`P2W*8?}=o*-?iGPsKPR*Tt_ zwJLni>j?JkOBRTf%Q18B1(=~)+rxosEC z(0Ybj^eaRIcRXP)JEQ4&yLvJI7fT#x=}ZKWawg3fy@=sINXi8ox)N!^t=3^yCoG_KEmb?HG3NQzB2l zoQI{NYb?B6jqbmG7m^2=VTW@%j=U>H+}DKD$#3^Va8W3vl#j+SWy;)T;ZHKg)E3{& z(V~u*_7|`cNyDeL=F!ej=OAVucR}VsUt$N(E>pNWY7z29Z>u~Td@JOE%^-OEV0Xrxo!ai6naG$Pu{cpuuZx0FJF(3<;?b)HF;i+?5x>pYO^% z<+LoT(fy1c+#2AsMFKoj$-@6udUMxpDZ;x%$Qxz~{nAT==-LTV;@^f_vBG^OhMKLW zt+5-)u;W+QXHOT-PnN;G$s_Q2cPh&Yk)gMm$MJuzsr2{4PXdEq1;1aj=LhGdvOOx4 zYFf)sUfPC}Dr7kAo`SWup+nu6f_5@X)Sm+`JNLsmFFPK3Tak|z zoV?R}F2UMq-$;R!AKs9yg0+{6nEezXkL4%F&##K7_w+4k$=FTY@KQR8&uj7Yae}LE zh0xWiXv0#KLM%Vsj+;lVMynf(&}1cjJgyLq`Y)7G zWAim`l`{mw*XLoMlq?UHynUpMp20=2ZXFV7j%=4P}%RxyOo2c#A6Y@ACCR z4|+Il&}BA*10TX0-?!+IcbeyjbIGc%W88Mma<2BXp1s@LT`5;N28L$ug}y*DUTY#j zb}mnWOY7F)+kl;zv1KatpCd5sXIg;o${6Zt7z2t*HpJ0g9^5yrqsJ1~LW#Qu8}fNE zpKc#Uyyqst9jiq4;En^#PnyiDPqmTU&myMPi2^S7sBojXAaND77*mKvFi~gO%5%OmEdB$rNrM>|s2u{CZ zVGoeJd#zeNBPEI)x&1!aub zML==obN1P#3Dl*Bpmfb=(HXnhpdT}oE~@Z`sVfU$t=o1e`1l+(CnXXe*HPfGYzchz zD~2<5^5|9;317()uwHPTdCc!5WZge@O*)wksC9)c=N7;kI~~~CZvg}J4e27qMy5Ia zA#BnbBJom1049C)|Yt-fti{@lLtI6L0hkzb0O@ z@Dn`n+ziLM%f+2f&S7I&JG>vGPrJPI!0bZ=oPOOS@J`Iwj**$@G3hdv-U1kz`xqEcR^NA57o*R9q2179LEV%O+_3LVUD{Bu~+RFS7*oFh(psW#2n>PUBSC57(Yn+LF{xS?b zTLIGf!&zh4NcNYGV=4v_tatxIvASI>NM+7JV_PfeyVAf8_{gBr7Ae5J$51E07go$0 zLQ`^HV5G4nC{;L;?PH}dSI(6N2dOYO$!OtzZ-uGPIN;_C_0F*OKtW7e~#Z+ocZ;t-Z6e7BDd{11PwD?^%om8wdX(C)cP;Xe6|f5lsXYBe@oo+E>v8( zIuL8m2sz0Awt(kAVcsn<8AKzyMHhd1LPyvOcFax!9}7&L#-#_u!RM9uit|q(*f0;w zCz?UmJ}=1dNr%*1jrjGCka-O96!=}Y;OD?5l(~MIm|f~%wV~^YSA{(Nxa|ZS-Y||V zYq?EA%_Ko-=~s5xHVohX8GwnWzQfO`Q*5uG`q*hxAokKwgP+nqY__5YIlu4^!nR6q zsuy;OzT4Ry&0MCHB+P|RErJ*CQ&DknJf`X7vd0p`p=V`^NP5&0mTq!I{NB!%8#p4_ zIXeb+&bG%nLY6FBAqBf;i%7B8Xy||cj;)($!{3XF@wIIq+fkKgnl%Y_BN@ySv4V-7+#~6}Er4%Ja<|q{rzvuJE_s^fT&SEWp9roG# z+1GX5uPaAFI782hOwIWW3bxHmm3|tr>NFyU?5^OmN00Di{Xsfj^CA89OOK>g>5|%7 zNt!gYfUU~^3^5DN@oyQ$u}jzbgMqah&fYUm_=%efKP}S&y=SlD;<1PDOXf|O?;wW` zT>^BNn?gLV3*i0XM5fnA3MPHLkHIDSpgZ42C?U~HG}gJ0#BwY8SN967p7n*4?An1j zeomy?LYzdtUe4~^DG7%w-csZ8Ot`YW3l^uw;@h)DICbJJSaZNz;4S}_S{Z2331Ek# zckdDP{36_YUj=I>Jfzm5p-kA!Zni23a7kJ?$&y_Ihrb`efODzDt+E9~GeXgHa0@fM zppLp{aD8j9rlHTY2pBQdf^)4C5a$+9n+K+tGdTmd-?Bor`Y2f6VI#1ZB};szo9Vw< z>Acr)4r@;uv2w4~;f)HVgS-JKD&^Q?hb3@Y`x5%LDFsV~-Q+D!g*D}8=#^6;;HrFhw$UxTd z5FT;!fkp1aJVMG*H`k8n3lg}_){Ag2fs1duhk{-GRQR*G9%d+Ty8NQIbeio}vg4u( z&O22KJ8dsvq1IWp@lK4;|M*PswFo2Qj&e-L%hl8__cm$W83_~S?!=SxcHqN<7fDB) zADA;ar0ecl>NS5l^hNKc$-s^m3_T$wsoHww{KZ`bBnJGXe9oC`{g7PJL#G@Sm*7hGSn1iQ~2oIR5N6 z9nKwt)ssHbQ>Wt_OH;V&`;J*HxJM_}g;4!R z6fe(_kc--BaNF2}0K!Ddcc&d7VJkFd5-5pQp#efmKD4Wj}e#Kg(CD@Xy z!lQV!@h*DlmB1lB$0`nBaJ1nFN@i!_4Yvh+W&$B<;-$d;=Z%9L12Z6HHJx_c6!)Fg zA+M4m;JwUKT*y>{)D$K1zH7Z;XZaQQ`GCUj-ZZp4dx_pzFh*!9tOAQx9~7Cgn!ebP zNH1FKX3DS4M6a9{)KKPT^<+G-Fg{lJ&SMl5?zYko5`s*6x(pH#0Gld2uEFp2fKC*{u%c#1E0H-|tM&@ZZ zll-?!@oafE?(d1fZ!!(U-z1VY?+O6HIEp{|#D)7yhsfz3ADmk%&i^}FKwWHBp!DB- z*4*M4&a}{nSC&gaqt~5mXnI8Rk3V3CIdA%g)J*1BO+WfHJE1@45mua(K+ToOaKQ2c z(K%8M4{FuH-!YoxW>b19E(JSpokhG4!Y(c(ryj z=gjBg4o_1&KD>#ycF$sqjf0+c)*;ARXD zf&YP4;x#Xi>u|q?4=%;v^Dmja&1)m5oZcb6lC?5lJuC)2n;YnCb{3(_b@0r$Bbb>t z89a^0@cZwt1WCCd_%QO29deip#+X?K|Xy zUkIu74#8u!Dx}+shhlQMpdev|S1q-0YltC^Tvvf#zi)!-`bu7++ElcB(L%(zzpqNu z5%39hhE)D;DrGnh4=1V}}mbQ8ce+D%_5F3vFt%@L$UY z(j0T2l$a_q=Ebt~*xU@(xs}UN)fbS|v^}hrNH4q1JcFEEl7`}Ce7taA9&`kMq_bOP zg&R5TXje`sZ8`rRY8fBEGLB`KmpBQlxU^P-+c7)Ur)}RK7;R?#Xw_tHQFzY z#K1O15@GEECyHf-=cQJGp@cZNNAAW!H93-Yn~+fF^B^41A}5c!;)5A+^vG2g+}|Ze z*u+d?rrkha%>BWXDWzD*28+QypJcj2Es<8V=U|LOAiQV|r0>crd8U$ntc=4C;-Zv9 z3P(9FPIwMV)n5}^)5Ww|R)ds@%@xXoHbVQJDWnetkh(qrkA3zh_5b}O>NeI;e{C%{ z$9^6|OI^wFgwt?NZU>#XSPF}*Uo(OwLMD@Ih4bb*o%b|O2CJw7T)L?W^jEAyE?>{; z&M>2>v=_(hDx=5wzhJ?z5cDVez^@aN$bN0 zpYz6sQ+({QnuF_ol+eXwBeT785|<^uL#n4;rzzTtA@qhg>*icUf{z4{r+S(2J3&Aa zAIFi>;PZ6y>TcYrRYO@#4XBk*AdM^Iz{R`=vcjgLP;WPe7$#HS*!!?}yd0`TE07*B zKGcrY7W(<@!MUykQfs2gi2W4IPdrPMEaITkbq9Y*xQD<%CLJ145ARrq()R&h$dZV&~-DmbShx}ZxdnHH94X^C7Su{Ujn-h&k(Lp+YiGru}I~TXl8Kl|2k)o zJj)~I63FcC^d)~Y#|kA5{s-MV8cEx&P<(Q|46nHD!eI{!Cae4soO1R`(iq+Jma55#L%t+83ckz;r+l77mbK*3@Ar4&QN=@oFF*bRKG&V< z%$>Kxwfpd6StUMy_Xf+4x6#@iEQybe0PEB#=sPeAm#5@W{fJ|5_M#ceubfDe|G9%n zE63B_l1#!BJ($2vbK%pB^Qg)_Xr0(Dz_qJ_aA;&Rv8#wD%kFwm(ZC*bX#7CDo}Y&) z-An2HHhnVXxDH+Rcq;jm=0y7D>!8A*Htd=7kX)Cu#5iMZ{LkVP)j4WKVbNl-qr5|6I=06PCNai4Mko5-pQ^@#=^ zogay`zzGyTpJzA!N`))S15h+k<-YBKJiK+aid{ATFszI@gO2&*5cA0oGBilipNvnrFRDHkyRt<0cS}@y%4Jw zz9&~-7jpSj4bl@<3A*-==#`Q|`jeNyI})CQuS&O~WBmz?IdYsn{4UR(m$I};vzeMD zx)bH-hq&#SD*rKa3QW)5!k2l8U?qgYYe7ahe*Y^p|FMkIa(6NNe@4(JqFmpM!92Rf z|0n7wY14Dd0OD@lVEf*1-Inv_@}oVgm{buT5csb~k0?F*WPvKC_%{);9rkFOlu0+3 zC4oczGvcFbj2#g@?8g!wtG%d@-4=K(LKLD#cR;`T zMS)XD9=@`kOMlUi*eJc4C~nDu&D!N`Sn5*7&bx^ncJzfOA2eWa>LxP(@HpIep3B95 z8qa^CCdC)o@>&p<;SBa6p{VNm3;s5}1s9_*y8X~nG>H(B1-l;Nf5#`1fb2WOF`j`_ zn-qBSKkkF4T~lzy$+h&d`9^e$x`{yti=ZRU3T!tif@!)lT$<04?JEz_AG^xfoxc}B z;xaQ_l@^aD53q|0?d~nY>r!AG+H`_pF!+ z=6M&0*J@zHXfOTvW|018t-;@+vL5titfi*KW$ZRCtDqJ90>9^EL63hOo%%5ymwu_E z;d={6v#Sa-2d6`$-%)Uvx=R$>9@2@gJW%%eA8_3}A{bmCWVeVQbUlej(??ezR`xqJ zNIpzX*Dk{TlNF$Fo`*-i1;U~W*&K7X9`LL>b$A`jXjb2%@l&R-d%i`3%b&x7dmm?! zcZ)-btVTQ`+NMCxFT?k8GB7Ywi@Anlg*_z#+*l)la(e^e6ucpW|K@;cgfTrFewB!K z`Z4;pcer^rEB>|fX%M?)DYNa;ByeDB$zLN`NHQuTJGLYhdOdl`{Cw&L9yV)P{Y5un zQ@A3u8yTaz;d0ozaV^BpzJ)H?HuOi{KC0Z2M8A#f#9jB+lNY|m@V4dwReqoZiz;Q& zL0(c2;5-u?&baf3rYC`)yf}Z^zIbGMdWl@o3UZn6hyhJwcvJU&p{}>WAgWOZy*A#2 zwa<${*2V#2o%sAUnZ|gg*N;7yyMa2FoWv;g1@PLMk2@k4(0`$S(fa)ajNclE9AJVf zaN5Zvi>(}&@hp3Ayf+zdo=L;6&O{3rJC1vjh^t=M;@+kE@Mh~o-sUD*qU5!Wtk9`s zW?Wo|@^b>|62Un5cg`O3c73$izc?Sv;yNK)?LB-|;ATCQ)A7x97qTNi9IB73CSB%S zuIr*Rwe8n|<;+^_UPtg@(`!(vAA>=*W57{kAz8FE5T{l?!CPx2=)7bz#(E(I0}(@N zZ~)1q@jm3CT^|WzU&7dpVxSv5%3dox0v9~*@Z{44bU-tV6q^uyrlo=WeKGWnYY5zR z^kBVS7?QSWEaT@Xip^2^RQ!n{d=i(&*N0W{$f_P<`bR-HcJ>LncH}H+Js=8gbu++h zhb|i43L&LG3Ws;<6?e2Le*) z^g$!8<6cb|IAF<)`aXllAKc+UeIPn{ej{Tdi>Zt-2lBlGa4@16hobVar96c9ZA~jL zZekoddZ~hnI1k(p9YTj-W#RMg3hJj?$jm#fM-rR?ra9CzZ@zSbXYMArdsq_IJU;*x z`WCRe#D)%@GKYpAW5GS)BU!WcA#VO!YccVx6jnA(7LNOD28|At(0J}2({*-`JE!IdxRcqR<^+`#AYTkz0cC6b;m0iQk&(Oof5ad9>u z^W+NzPseA#qf-U!&*y8P(_9OF>L=1ZRb}#i`74;`dox=6L5^PG>J)G3y zP9p{_G3v7;vKOy1mRGLf2B$c3P(2Q0A|A0H67S)S1B1-0p(}Xl^&d9d{4D*U8ifAS z+)3~?QBd_V!@;;@l=dh1+xj}W)^vj8*n~pW_xrTme4_CD;gckLixFS^vH@6WuE0AQ zv-nwxPib}jTwEtDq@N=C*wW2XWcs~y{^Ep*5R|xtO*{F3K5I{)4%fpl{#gtR40F@h zr%U0X+C0+nY!$jz`eS%|Hyfkkflg9#!aqOWk@IdzB>5^s_xw=C0-b7nZo3J0Wu}0x z{6VshFB&l#@cwQ1bNHDUMl@#1t<2$}9eT49|br1+xsMkTUssxbS2(PTMSn zqWQL9^Dmz$_1~h5O**H$jl)Ivc2nWN9LS=&lLT!d=4cqJhOW(3(9*q{q3sXgYik8unwY}&i7MmXNv+J5xC98%<)Ql2 zBEiRi5$4U&9{LMg=pSnfdh_%OXx>{%#-1yqnpdo#KVul#(!XS2fU{!EWx(UxGg1(A z1tdN$pn?z`nB&q)qjPqngYhhQcz7)xr}&R3mK)>gRfou(+e6Tse3qQm*+td*r}L+X zB76A8OR)GD3sPsfSv_v{W{u@|Hb^Ce@$={IwKK27^cHTOK{k$%#vkOf31e3rRsP+HI=;U zDuM~O^?+@VfXb)b%rJdNB&$3)FTx617E5DVQ8~L|z(GETu*b zUxgJh6<{T5!c6R30%f7wut?Q{dGuyKv`>*?LY@A?wNL+GL~9yf^|J;3EfV2+nF7&d znmDfFT_e?>I3CjNF+}s+TB>Ck3Nfob3#K`i(sSP3(42J&Rqo%WQWJ~F!SD;9QZyHh zk1qhd+eKKEbOB9|k43S!=Gbd|n|lszCL4>kWAD^ndZ0J~XaA6gAf7(ILPMNt=#AufnLcAc$zLDkPic zRa24T`CzkcC#zR`iwTKX0-*_&m>c_v-m%XlQ63^ns})IqMkG;KYXHk@GtuFW1Pc7~iF>Cg)C?!$v>&&@x+}jR zf7cDr)JY;C64tmQ;~)EYXdc~^k%+x3H&e9;OWa~HQJAJ~24k!vKsA{UzgS)V`XEb^ zS9PD3<@`tb7Plg)sHkX^P)T%k=+OF%d2tAD_2PNaDr9Y*|hwiEL5M2#y^iAK=tx})K~Hv_WTy- zpHvA&J^nrXI{qXK*X$#Cl7y{GilUW@F2u+ngjUzsak=PUxN5kNChH%D^cg0Qon;G3 zYG<&0ngn!y9gB{_O2+fV6y*CF*M(L}0)3Fmt_vJ*KiN(EN`UWiSOkE!Iv0_w=SNer%@rH9AAVE2>+qUOuVcv;sDZO!uWTca+0 z_PdD|YQ@6g{b{tMZ4oc(Q7>9#?WgIwXQ1`^59TtvjTPvu5S+UtAgURn^e3|n-?%y8 z>`6)>(Xa+5zv0f!xB#X;_zW7|o=n#ten+N0t)~<0{Gp;I2K$sZ(`DI5!1eJ6`RaX? z3@2Wtw?0*2=FQ`HQ)Lo8H1-=S<;gN1&&9HB79O+;Lov=iho<(eCF2x!vpa*$s0!D~ z>hf?BKJ@#;7--DL`O@hmzp$Ng>pEr+_^FxtrtOYB~Fef?34y~+{nSDAAvy%m-rYCB}!|?6Vqc= zsG6bxy440SFLvMR*v??ZL^!_Hnw?)c7JI%uVCvolQ}drg z#9D3~WW~wiR%v9fIZuF9=at~*{vvvmz7(vuw2fBI7$gTS-2$_{?S$F+1J5MfB&t?3 z@VjO(Z7OX^_$T$M)c$2w4_^;Gmz;(b>s?l+lTdD3caqMt=0Ot?cz)7vR!Z&gE=usv{vus0%=;8YkR0 zelmP)(S&%DvAAaAODqXFiI?}DX7>1p!$l6)^tw+4*ACXHuWKf_U#`tTVKs zTD#7}jdkCN{rpqdW}g8|#;4LFrcc?Ztv~4P&@k++_odZ^&iHGd1pHpX2h}g8<-qgOW^fN(Eyyco)Wk~_sRWhYw1_rf=! z(RgCRLz;H*29~rL3LWYnv0aj>pfYDYz6sfeo-6F2X;chW8;>$`(}J+DI~LL-wPAW< z15LFtpk6xTT)ee@`IWv1r$I!-)GH7^EN%+X? z3vE4@Mb3;h#GPvC*!gx3XneZP8<=4UixVzU*~vb*;gmSIM2S+3-JFK7Hjk)oeafU3 zRuM(#NQC|4Ft@aTw!iLR7VOYO2h$Kzu>BhD_;3ovT{eKTR1?=1eHnSlHz4bK4i)^8 zB;AGPST25m&1n#)#=UZ2YkL6}Y|P=Qhj-J%9G8Diur&3US}L_W0nYu@!_Bb6@Fcexz4%7iF3L49p8*LkVsR% z(saq{|j`bdo8gzK^UY-~>8(^T z{_mD&uzrg^VS~AR_pK^;W%GdK2(;0F>xj$%5lp9G>gXK{wlNix1(51v{)CObEKQnA~zq*Fbc`LM46SFLTJ zf4O*+_my-qr+x~fGp>dVT>lN?YyDaAV_iIZ<4jsD5zX!umqhsuifGx~N-XvtK+{`a z=*?d-u-8mk=y3fc!+O4>%8e>u)OMM?%{3H$Q=O-hSLVPhE&)cp=IGcWk#^_UOn|Gt+!q3VOW zH@-5t8CiJK&H&BVy{7r@N6GU+Nf^I598bl&vo>0jgqr2Qd1bqmV0Z5zF_~D0owO89 z-yVSNE8R)HZV+9hrU!H3FYk%I2IR1%_~Oz>-q*qe>h16f&y9aTBVVniZ~25A%iDmH zqw?XM@SoEQ z#K|~tJPbEqRH3f|bcG(mCY|rIP`~pkKA7?z{{C5r&YmGO zAVh}b4^O~kpLp04VgUnJTd7XW9O87UjP6YG#>W|7aF0`pAhN51_VuKZq|NTcNh_Ns zSYDya4eqjCIy&&D-~{SkIg9P@gHU!(HdTqpr-BoUX*~Z29hAGwzKGt3AGDpp`BV=Z zD07L?_s(NVxX;s0`}4fFDFt+=p(AzNoyAr?m_xf5L-L>Za^aq-WjMRr0lcXal-N&$ z>9>s-C;f-G-SZ>+`uHvyCGJD4t_CqWrKQw#>J73jKME6+xh@CU4H)9G5*Adl@YviI zjO;z&{AGLWOfrDUp963Se>?8)+khgC=^U?Dg8xl^GD>)9g2iorcs$RIo?gEk-aL5+ z=ByQoTx-X=ubP9}k6bbMb0w~O%yGh=t;Lwcc& zm)ko0u$RkveOyI+8ZVNG+1_ZH5(ejFUc#H2541jUHn?<&^QY1)WUW{{cCQ+T_YNt* z$*D3V=f-n-Ml*y&c1OVFwnqBj^TqTXeMIklp9uFI6Uq9Q;~?Fkgs~rg5o%wVb9{mY z*pXO6e)XFp4b$UC-MI}NA6#H@l`B2*dOl?KWm5AW!MONpI?)}hrgh%EH0kyjx?{19 z@Y60){3T<+dX9vW9okv&jrCw}b>AaeV@3D|PbY!uLCQ&;`GneEWmtVu;tzVhT8e0i@whmT= zs?c2?4^Yru$eh)*qDmZt`cA|Mao3N-(vO{FtkhiS>v6{Ab}a2WEyaIrtxOT2PJ=XjHt5&PQnflM8YsLz#3Q|aHfHP}d)Pt9w zYD2hZ3sbb^E*x~e#9lBG=Z7Z-uo5$Gfz^sW>xVZo zqbd5^SdJMFCOT_iP-#6>hvwrkTX)NiZ<`bJJ0Pw+g&d2-kKb z6PJ_{w77&Tq7WB+|-Rfh{`UbshMd%a9GS>sMMGD*kmF`Ys$MYy+{jZ_^rk#8y*oC(n&sd%^{WKO19S7Y zv~d2qLu6Iw1>$Tpg`D;6v7v&C?er+fWN0`@^6=ar|##aps}Qcyqfup?pybYyyQIp_MRY` zXOv7{e9mC(R*3Td<9x9Z?v87q{fZd;%_hp@TS?veJhCIH4STzfF=5s-+2E*7BGKqX z<+c-O*me@bbzaeP>)(^P`roJ~FPb=E z+2oqP^qqABjR_1Sp+!qDBmN1E=X%ELLdq--_sxfmDp%!wHz{#H_Aua1Kz2e=#EVMF2|GCe}MTK0D(aR=tJeI+U`YiJE zOdeAfl!Kagbl}XkJ5=MY9PFCB4^Eu@$gX0_$Y!$-)YDHHE?iiTw@!6aB{m;qwtG`C z9RvO&S1U4|hLh5Zk+6H}b-{K!2|DM?3HF(ZJM%avmkyt|go6$RM1kvx{QA|Ds>3Sw z=gOZ<;jpeS!N>-FWQO51K_mGQT77!( zZT?T%7hs8!#@b|QybG~;>BM>NmdN*8gi3z zxW-C6atDK7>oJe>uM)VuH++H{jI+0ZtX5ro_2nFUHSrK=YE^>RDg$`HJ-;l=(SqVR zy5w<8Dv9Qv6F0RP!oj1lB$M&SlxAr(@ASo(J_ovf>tliDyL-&h!CZ{2*9N8gF<^C5 z3ayq&P~Y+gwC_*mPBK3E|5bR`X<%XDGK{hLJLLjcJ$ zTSztXUXr;@X6(0DGf8)80*Onnrau?XqCYtQ{J~Wv=J+6B?TZ7rc3B7*KbnB~`$G_~ z-z3*kjM1ZPCm!=%1`i*#(D!RrV6o;KsCQAr?Ncve+pkfk^U`G|wY8fD=Wiwh0zV9R zY0XZ5pi5lOIb!#?bl7fUgks}YV@O67Y!)dY3H4)OoQySNc*X>m>W-n`@{+MTpnICvkhw}(bd~2QU3~C4QCO~xDK54!b7wN@ zr^Mm3L4PQCTu&mW1A0BY06YBO6VKI~$v+H6@$o@aW5Z>dAR55vin)Tw;d&DNAenAF z^o_lj?M|U`FKael5^`rwBX=t@1x~NRm?)V%+;hL5r2E{Ub=eI}aFQ+ROdOAYm+T^A zzS`r49bwF3@hbxD>N9Y7>?z#jbcj4Hn1|6}u^fw{npl-Bh7JB)B@B0NZ6A|L1lJVN zt#BrMcJ+s1+a)ypN-Mdy_#WNHTMGH*4J5~bQZxMmvSCavyic2e3cHkHf$~K1@3b+i zVH|_SGj;HOb~e=IYG9rQWlPMxY2JT#hy>>g&hWoX6Tj>hJWz~*=(aUvJ*}WJPo6=J zO(%(TUk?2`M{ul&J6XNgj>?@niql0*q35fdXrhxZjyVKreI^6H+&pUgncGAQP)wK zDgI9eIxC`?bBW>bXYU!Fd$=6_yHrg!tL~&h(qn*~VT?UbYG_2d139d;Ei8NAM)lmT&=>u0*cTEk$-X?9Ot3t|WLD*nKhc(0sWn7aC3MmiCfD(| zk{I7;!)(E;ECE?*bc~E&aex}BPr&Xk@7Qy91?*S5R;GO1Wh`E;Pt@i~!GW46G=F)E zN=2E1?_VwpX7`vZd_ECREpTVonADP{!X%<_*ov7W*Fy~VGN`*&4mMmU!s)Xf!FQoE z&D(Vy->GC%{h~YIa;$_FR~W-s(LaLy)1)!Ra~tjL@c|1bA$#?eJe@FVNY<~9XS_oT zD2J&em-AnfjbnFVdr&lf(>uxZ`Zh2%?7m4wI6IQV?H0LZZqq zv#TXGA#>^;bLZ_Y7`Ji~8ejWIH!G!+qzm7P>jrZ;Yn4H^S}^pV#1_F#2X(x^&k?%k zXya$a3Z6d4W0=^P!srY)5xW#ol67<@anUZK^GqpOnfMvUO83K8(UWl4S{n2ha7hX& z0i7f9oLsOauqQ8snpxig-oJ57Pz&&#KMPs$D0@0)IGJc%9ZScTJs_tR|D|pw8hFq0 zH)d?sAjK*wOuM-mB;*Ez&eSi^e5Qel@%rdxv$MoS718$f5t4AI4&%C0iE`CZYH|Mw zsV|G8U)8K&Q$`G}c5BCNUOtey{sc5lw!@@rfr4XEpXj679yBvvfRTqQh~m0~P&4B@ z{WOE~Qfn{bYX@HlJ-mcbvTGno?)AjA!{f3WhZK=Q=3&OW-|W8LTXMMIHMj;hgGo=4Of!U9VhBy#3ti{4KNK?72+V&)ON6 zP(^y=R1Ea_s-x|DU(ii;CbcH>Aht-4^bDKQx51M^QCA7gY`H%0aa?z(`C^{?mx=hy zL=Mkbmczz-01HJ<;?A8?`&XriAcMh#uAAn*0X+%wc zNkJ<(pZ6No$XH4?E5D=%^jl~^-Zr@08^^}KVaSY=Q=!>tkS?Ad54WwZ04HZ8 zQlG%XoHsv~Y?Qf0PRDt{cQb9!JW@bs8+FqbpLYV`Os+3|`9fAPL?5Pcc|=V|hP<4v zOkaDY)8AI5OjlMXThwqK%Qde8LoZRWl`~;?T2|nGoN@^Wg0=l2a0J~moD=oHHJzA9)wr6L&Tuy8rk;22wp0l#ML$}^skGo(DMFW z`ueH{_?1Y**_$%tEqjnyJw1(5+}+~sO$8F_HiKT@AIUyi6+=fKg+pUjCDAz;$F^>t ziw}K@Xy)yeP%()`@e{iQu;w-6HouUVI?KcU@xC~`KLbDgcu!LPrIEhStL%V5DoHJT zgwx*Z(=)HR8Jp!hIPW%$akbT|s zJ~*9;E!Z(91MWziVJ^K*q@^RfbP_ zoJj2AT}QG8d~oQ)JXGq~g$WG{iOSY1Ovioh9-VMNa5Z@sS}y9PinDj2MWq?oKD9(` z1Ap4`hf`?>)aa+KHT2MgGMe!97^*$ySUvNK=#PDi1)c-$_})>-)HHg7?ARQ(VCGUz zKaBualLf5VB~cuIv7d>b?|?dwxP~ZU4E4;r2Of&cQK3E%;ugh{g6Tils=&xf}EMHEt zJrZfVdMw_J|3Gc7#nxjg8 zmQ>Nfo#k-zrzBCST~D=Bjfh0*8&ID#4V$0sC1*0S=uVXoR8<;-Z)>Hf8V^D2%T!Xm z@d=yp^%xa>UB{?|ZX?l7NxbnowM+z;BVE*@06i1F(hW~I-DpK77+voays0l{`e)6- zDZwx4qPu?Nhk&J~>Rdj*AcuG`0vaAkdHK_;3(GFgB%?1x;rHW<@XmD!Yhgb~7{j{) zgU^xF(ZCkF7BtfBi++;WJCXEn^)uRijslX9utp2;x# z{W=&Zx1&ZqoWHrnv9RVl%eqP2MG2>6@O=Gw5_ejk>`WctB{ffmk&A{fyP$$8w2vp6 z!8T0Rem!j86NDDRvE-j*AnEyeoEULg_qDEdST=MK-|4ua>)WkxZN(_n>CXU%WAg;& zxhbUmO$ZLhUq^$j*|^(Gl1z&)Asa-3sOP68L}~H~y0v8{$mJfzRoED#t$5rk2U^Mvr-m*JSc`6 zt!kMPZ8Q2VKA-lx+0bBKG_(HGirEsXU2A+I1hUoAZm|XY@L(Q|; zwF}=7&&8bocF7qWRTseK0v;|8XBqE%{yg;&E%Ho~k~7aNVcp_9lK)(ZN}73*-CGp# z$d)feY{fhJY|>iVBQ8t#%ywq#M#b>n(@e%|Y$Wqx;}F}_7|PlNodcOsdlJWG)SIfr z+4V<#psCv&*+bLW`*tmm>F5P*(LiL^M6pp%RWQKq58;Sk&{@On)2Hnrv+jwx*n(IR z?)-!PJDtXungpPU)C7oq@QNgpGa&yv5|7v1!l%zWh-yg(o3&hn@UOVw#4%^-mUCTn z!=W5{t38oTqcd1{?Njt9rzJLxsi3g}Ayw>iWBs=aiEsV{vN$uCo?p{PWISh+0XKBr*ckXSI^WT;KBJ=RoIqUBoH32fpe(t25mfAqYcdC7>q9CdTEany1joJ zEN=_)-%@)SR`0+%GVSXI z(A~5VgGwhu!m=C8gwkpn8&yY~n__@%J4@PBV%gOgMk>qag0D~$r8O^M%;-VE!>!ku z?BKg}Vb3<6UtblyVwTIS%Dcf+j-JWoE#fTZKs*Wi^p@H1iEw^P4$U1=pf2adph5f; zQ8<5&J<#@(*vb^MRqbb~Id`6Ht1H2efzwH(l``EhhReulEFzh!1x)khcyz3sDfn{r zp+GV&n^k!~ozwb%aOZhCaaT4WGjf)b;guOUIU>YjR{9#|(5(?csZsFf~^M|PrAAQ^XHE*;~wm^^U~Alv^+ zlE_b|cyi)1nZ9w8$gz$n_F3{Ontm*e{W?3JdDgX!eKe(y8FMp+{9DZNWzXLwA0C|{ z9{S=KzucNe`=u6^<`uHXtnJ7vt8lVu;YN_R^kWYNay`#;g9*v-U>kbJ0MA57zfK4# zl52RuIzlrO-2Q<+{9DaFT<*^vP|2V*N#ocZZMsC;&w%^?-KVRAc+|=BAQ{JK(u=3F z2)tXz>)+jK@$KiV!rS|IuutD!rRD$9+4`d_lhw7H=2S#5lGzdL$t8Cf=ei1Z;qUo$ z1Mwi^OZTy6r({|E%2>8*ScSH`&mlTS8l0z+Cg}JQLD(5VWT)>>;q|_&WQo~y#@6mW z{Z=K9FRh~JaOF5yvU>Fqk^lP=<9^^?+xB}NHgR#^<#zD@e)0eR-tJfiQ$*sq9;)BC znpwhkbgPCs`_)D2Pu76;vS7Zoj1m9l;-~z_KjVavIwE|l5F>uTlrzFY&8Lw5Nk{nT z#Xn5@)dSZ&en5)-9{zz+u3y7KuITYxY0TKWiC;bP0L)Ggkqz%X@JnP4=I<*8cP0!M zI`M?j*CHt!7z>*+t%S`7E%;-V=kdcQ-V%DQIYrHv2H?@_p8TE;j+c?7%x@7P{P2xW zkR6eyo+2K2$M2@l&2E*@^2h|*&~^X|lY`*GTzg^g!sWujgvtCky{A}UnTC7DpXA>T z>mcIG9QdnEw((T=oyU_Ip~A2VH3;+S<6n3+qiATWJr>EI;P3a><=c)F#yny!=AXqtG6{YJJpre z6zLL)>C=n;C9Jh9G07Cp^|}YLKNj$FT_*^&ZhaBDpFRaoubJ}ouJ-U>PhdHY%M{C5 zE5DK_J4@l0R3F#JTY&$!e#HN`M69^Q!@d5ue&)Iy*|FFN6^|t-_(=Ps7vHNH5x9Qqrl{Hi(J3D1Y|NRgj{VOIu^iy7GT0_lb83oaH z(V@Dwj)_u#TBQCqiyEqoNQ;R}_DjhQOAL-G%+i*aI#qZ2gpvM{=24BGLt64Z!xAE5 z!}=mUB63d^6n-j*>!?VL9o10zDf&ljR9|-RqnPNxz@VtMgrf5FKJmhiAMMQ(r2G3P zG*6L~Y#WvsZu&Q(Fwi~RFY~ukf5O1%pHDr#BIBAy{|*d~Rc@6Q{j4PMZ%9m2`Ry-p zc@1r?E`9ZpFPhbVRfY$}S|#PbHtC8F8HwVwCC z`i4Zs)mw*uw~uL?uKxM=o8j>)dJ=yIB*oM_W#oSA%ZiGQQSNOR*RP~7q%+#AJg`(z zU1dmSV4T*_KglmvJ^zM9rA4|&HU6on$@CA4%y0fI`hJe=FSQ>X%4!DRb?5i|lo=lV zJ?2mUk9or%KmYqJJ7H>T&7XeJ|3}e#23eM$=Y1#VcyqqDZ|9lmo}6|zU>CF4#Uh&l zG(|93rYx0QvR&mbDpj%Y#V(ghRko{KvSh-vNI{|q5+DK>AQqco^$jxHVt7j3q@WS#D||DdQnT119)E=B1MA&#a+TqQ{?3cGR$2$ z0GwBCz3-{>0BM-nN(wq@dAcvnBOJAS#!-k>d(;Qc$ z_aL(y{X$9wL$Kt5L7lJ7001Fu(gu*IX|e+@@Y#BxJ+m4|BsMOkMxf}-H1EU&VZscP z8~~?;LNsPz=3URo_^#;FS%V0MK81O=rapxSss%1>ER9?+s}&$Bl0m401S!C`0P+1i z0}yy|<-y8%L#zYT@p4`pM{pHl>H&j+(+iS*G7&?+#Mn8_Oe#@R4uc?k9Er6cK6TVz zcE(=(bg)3Wf3Q!aiYSaoVJGW*lplFfsFU7_QnFd~g)}Wacr~ymBRkSnPZCp@%Rqo3 z6jLL{4fuUKb4rP?--~=gcV#GP1EB7ph^!Wb6DG7-NV~SS>OS*xzA?aPE8U*KE@I_p zTn8a;9ecK)c0iq!3?N7mCbl)2!GZ7k1eS6Nxx?!!cewDVrY!nTs@JU^Ydg1ME6nC@)R!`CjbxtlL$)D zf}n>UY=E!s^mywEpb2LRV=WvnouWa2z?;1sQeI5oN*5n}vi*nnV&7njZN{_O!#@*GPZ ztU1=y22tFh+U(rrDqFV*b5&I$#HG0Wq;j%ye17g>zLfx#laHFJR2bDaRP4u8WiE^b zbBB{`WFzasU`vtDqE2Hvf>oJy&@KOH_7DFE*vMG>iBMUy>jpvhg>xw_*RS?`3}x zKkH-4sVF2nL478`c8!aW?dw|^Yiy2O=!5AL&GeP5yg~1@F#?JN>YQ*>AUDRNyKWgg zd%{_$!X`5KoS5`IMDv6?wMzgz2;3Z?rLi4>lsI#^_{st2Pz7Jl^)bjZILv&R0 zduI$^(R%js#Q3VxT=#=0?Bi@X1)AZW(TvWID1u$Az$hck3uGT;MA&Cz^V>bdmz58D zUnjo?K7#`;E0i7mfb>2EjlhzE<Ow;Ol5e29PymMrq2u zlbRlAOUQItO9FJ?%MqD>pc|frKw~gnn}_*HbuvSfbbtnWQb!DM8_29zkdVStMxeib zTwyG5J-L1do#DLVcySeO2GcYF_%Qd8msKv~+^$%kuiVKd!;|avsN+IisrePm_FavK zKoF4a8p*Ya0E3*-YjCV6A2qu8d;oyU$*gI}Oqg3c!U=WYfn?`|nfi8zp z+cT4yzCL>~pB9+WoqhU?XJBKL#d`L;J4pAF!OyUMJIx9TnaO%rJGsPPIEl2rgZ*%+ zfxiAMdA1HV(JVYH`d9ALiG_cdD93+)^RoFs(i9mA`~-hPJ>9YW%t>LeqOg<9dv)xu zZVSEM-pbcqp7t%}($%O9ZD=*H`KLVa&E)RGA7`?uKN25mFEWb#N3|Zkyjh&JZAD%2 z7Of}w|8TlwFYX7w=RQUh)Y=L5E`6=ozpY^Il_s}NHWIJes`#gFcm4U9JL%;e+BZFF zJ>GuxIJ{y zQHgGZ_*_`CuYV{2h|$!}uCz{Cualm_%<6Yn&9#6V-9E@+XD&Z{)LMzgWjeR^a^5vB z6@$ssMwne+ch0Wb&}&NVCY9|?-Hr^ zk5^$g@xgy=U1f(SRQA@wvvbTMdO=r22N)z>L=UeDyG$ggh7~{JaNMHL-_cf;9d9nHD&Sfqyr}sc8P@+Zi(Q+qb{V7B@=nL>G?DxU%7N?wuf=iM~%#!Cx9wb-S^DyI7iRhpE>_Tj$=;vM|M;X?*JIP(k$#J9oY$BBR;DG<=st z3Y7FM*>NxB&5Vpj_Isym?lt^bKTT;8}0F7?07 zTTl9CPEFZ|moEyX?AXWf5=7|i3vK0?S$KZY-fcOj@0`Ah8UD0?7jVuq!BXq`_SE{i z52NF0SnU))|JVZ;fB)km!Tc>QZ(b;^5SAd6>~s z96~9?`^(Q@*FgYqt~}BigJlWsc6 zv%+2ipAIxI=}5<&Y$^(fz*kiL@E2p&K>Yl)(R0MqeZY?BD0@19lM?TC(i6s0n-fVh zR5%F~h?2%7e8`F`yKMBlS!htrL}qHuvhKO04rPGpIEha&nV^JqLk(mVf}>8pHxmFN zKcsOiKvl->3WF(r2*Oax-pQ(dATA>Ot|B=Es6kP{LfF2S!TZ(d$gMyyUL_JVP-IQt zLy!rT*iIa9BuO$P}G4!q{r$^ksU01b&M;k3d+PpP4iI|I~#9*DPvu(`C@=k+L< zFC2|2#hDUeOXjkrIeuVDw6~LoS#g^>)1~vv8g6rNV?=ld6m_qz9UBixHD|a+OowVlQa8#Z-J>0jZOxk1t>l zl65C++AsqMNrOJEPl<;HxJ8Wn3okh3&somM;8PC;7It9L2>_@ILa>Z?Edq8P5O_3? z8@z3o8?8@RSn~^rT0uowmKZp)Xy)a*3EOFD<^xIMjvLjc5=QECh|+uBK`|mSe%{wYPcS-;neK{MyvX81NZ|ks zz%=RFfsajW%2n&niYc2S3$W8`Q_m@^42Tm4aZ`DA&ozX88Q-!HA_4asqi&nq@FzO# z&8(EMk+nvVs0=~JIH9!RY~Hhu)7GK``4rc&?37C^rFxS9dT5ZddWjHo7Okt9S5$_F zY`b*^Xre? zkeC7^Q9Q|j1|XCBE-VHlVt5ps&V#wna3JUjZ~{-d^qF+hjW@68lu8>%)-4r7hhp#~ zle9{91;{scU4BQD(g=6Ddox6rk!S_Z98EA?rUs4BS6;wgBy~fl=sR5`SXxk{!RKn# zt>vvMXqz4d;(;)Wsxk|oDL3hsv%d;MC73Zg3Xm zdbXj5_Cyx(9S5N7fNmxT5MF(rISEh5y=&U&@hQp@^1ND49QqyEgbJqSfcDXOPpayi zotGtJN{Wq9;D%sT zwDnh($0wXhVc8?HMFZo^ptoaxXoFRjvIse~6RB5_{(U*D55bqWIF<0V{IGwn6Y;%2 zs54hr`NLJ?GwL1)c#aHbdZ;DPx}x*eWW`G3MgAFtuWoT!M$8V6Jf98vjM_=0 za~f1KDwNkh0_SgzjJ?|&GwRK2DJof5K2Dg#ZMRwYFb5k0>J0`X2y+9E|G-qfAAl4> zg?kdB>xfyh?R>v~leN|I=1B(r zlA*g;e~x%?-938na9o-tCsDi4ZIfJ-_M;4GOgNW{q%$swLcWVXM{Ll*S{Sf}u(Pmf zUJXEzN(iOEZVGuHHGUORLocZa!HG%FU?W0|zWNe1$j(DPR}6a9bz+*KpawWAs+lF5 zl>0_?fR2SVEE7mw>@`w_&A}4mwNIz@V@CaKbt9hR*cBQgiDqs*&T-Z~;|k z;fd*2=UCbRp7o~;;J2`^T(q93#}I7Qv+vv~zhsn)zH+Of-s@vl%_) zy36Veo_Wb&B4O6Syzjq^PE$~6R@v>wbD`=P;1eE^an!|>i%7Bh3KnLQ`jQF>`>HI` z3`;(l7esg&n&wV=QJbWm8!t3EXs&ecZnD{~wY>OV`n$;fc$I#ws)4t&Eik&7J+E?y z9xo8}l`gtH_#Sy0-I}4)l?AKUKD_@$E-ikZ`)3~o^A3LYx5e4gN#*@BBJ+D&C^>HY zR}1>3tsnqDfBMfWKY1xX1Mv(P4?a>qxHE5h=p{%HQmaGoE2-Xw&f{F;G>8-_sNV}CINZ-8+Q);7=ifkWvli~F)Fj*;Pmv>2^G!Lk~6mAF9-kX zVwWZR3%_E?=fPpVr#Gk!?3gPhc`|;x<0D-+WIc85hRj< zN`bLPJU0K0x1JcMCEduKoasvwj2i)Bze-4_ZT{qqoy;vW0WP$1DfKY>^BHsR^S4f; z7Hyr1cz-RKF6cRC^CT+tx3;YPGwOTd>bE0AI@8dWjOa31f5vYA4+Oj%oYJ*!Ds7_w z7;d=8g|)3|Y3GQ=&%g4i+*Wt4&4cLE;^Wde1oz&sFmm^;;PUu%sVk(%+tAr6|G(F> zW^eYK_^H5Lw9Of?vWy>Jx&O*Hkn>8{8hvsEsQd!ZI3X45@y2@Oxkk7|RZp(!(`nD* zdOyJX=Womy=tpAP`s4$S*q^L5HUu=R%}e*f5w*Ljd;(j6NK0=h{(7YDdU;Ur^52!s zqOhh`!*c&Z@c`72k{e0o$Dq0!Ko9u(fm(5Y^DbpoKnu2QEq7s!L zH7;VQK{&{Rp2q<;>+kTJi0LAK5OHFxOlpe=8fCa+&CMrq%$7j0jcIo21{yXB5#@6P z09RCpNiapk;`*ht&2IbHs4Nr+&I>aN!52=FPD()x+U3luO`P?e-w+sF?&Lfw@MVSy zL9*qJE^nOK5q!B@cA+<33cDY5ow_9SDMEJnUFP8D}z&UOcsZ`tZdkNmvE} zH=WO>CD#}=kYowTGKKy9ql){K`z4#!+ytcEWS6BOv5a+4oRG?;J_)YT{ITYo5L?*70_|CNF7T#MhK~Z86lB904$Sdl-oARdp<<>$3MrmIvu3V|Stw!UZugfke;&C3BFzWZVV5tMvmkgQ zgMUH5usjuDz+mc3R!n)bZ!!AzoBlvt6VD;mTaIcgCs69?1YmG0%#XeSrAb(l1dq1;hX`q>0TgD9U2X-gy}0`&!^`}1x)m0#c&q_ zHajQ4c}9Stpsa^}WSr&_0UkGfbdBYjBsb=B%X2*_QmYdH4h&U$gr@|HdRHBmO$2c19%O^(Uj03Lx;j zoEW*~&)TT@JZBPZ+GwA6>6Dg-cXC%VAqQ+YSI=r<38V5CMb_2wf`d*EnUJ*Ue=aY+<3Z+4?HAYT3>&7 zxqyiBNIsq7)T_x(M?ZfdxhnDB##g6h?3|~Gup_H}Eg7*Dl{Y3;AvJ0q;gIzuknz$0 zmkR{O;NmC6-M-xTnw(g=T0`=P`w299A=-Yq*p?DMbN|0- zhNGieXwXg&YdJCy_{Gvm1+tORD;P35kpRb(Z%pM<6lBoi%xWf`c+}4KD%@-uVmH@k zPYNf~wgWhmA-cy@xbhI2^_enMa{ zfCBEYlAQKC^%MEri=n8GvXL-3cLO-H^(vA6UMK=T`eO%IcpRB?w^J zqBg0)BvT_zZS~GRRhG3?ZLxAI%Dd?h9B50xgc#>M{mP;NWDHWTYSiGSN-SmxzpUW# zwlrW*HH#$DEB0vyS?Kx^kd~7cjudrl>qU#jnIx0uLOKLZL&Gb|v#aE}1@hSmk-*TE zDU?ogCsiFsx!62NAMIDXXTu*pS4`IBep)Z%;WTq4cdFK(R7{=m&74Tt>-0MNnwzR|7x6IM2 zX*TNtE1zK$uUZPzuYpu@*7=vOUP+|(zOs*XPRUm@Rac%K?fvz7iTm9%|LG!xJljK! z_Tt}NNIq9yoGg4zKkXhpTb@_uJ0afpQ-e#YH+Mma*tj-A3jv(TpMsdmF!@4N?6|+m z99~`jV&+eRFD_-2Og22s{=1(FJZUyIyZZaDxMUl>ln?55by?-*igWjkKpMU&c53<@HW7J9dlTXKoLgnS~w(#2@zcjxcAhoa3 z#y|6m;F}J7AIpJE`=(xmvR(UR@1Uui{cWJ$?YCdjQs(U^MOv{S5BQSrerj<8>3w%( zh`*K)tD?w%{n0<+%b4&WJb89gonAp^APAl(qMlQ$>_B~W@-X_>-(0gZOJ;QS`PG*0 z(z~xQW{=w3?O>~a*ZBC`61M)+WX6Q>WoPAv`xbLcx_TH+5v!^n7JmuKe$q~qUOK7E#Cf%8UwO&SJcr-w z-EE5zvgi_L^L%OY%>eYzpS+6a-}*t5WDg?bCkaDdV&Q?({rH<{@bGE=!I{^G|30%dT06XDz^8k)d&oVWxdcM=pyAB+J~;cY z^-^|o1YPYLRK3QWTmFhi{=pwU@!<-w^d+^hxqpPEem2T-eU-ca9cT}PFCD7`=YN5Z z9%Pn(4}LUxRGYcaAO3xB*N&bhez8OfCv@kpBp}0w5PI@9Q{!&_1+nnQ$m~6+lX?5; z&RGAaxd8yfAFgwib?NEoO{06gHTW9+QvdCX=%(iW84+RIK>w4iK#QntEmrQKYi#=o zH(}e77I-}}`M{p!y=$&_a{q~PDRWh-2$Sze^2!pnb#5-X^*R3Bs$6^0J*&^&x;I`= z^i$WS=(R+@$&uoh4p{wUXo9892Y-zjtC;_EG?SRge`mzIqw}BlS1w&Gy_H`fSRvU$ zh^<%hL|kvh*CXTdf7w-0dcNU456&4We{Bta!L@1d$mzUxuQf4dcW2uA4;MCjt3?#3 zq>(Ru6fW&y&yB+$C)Zy3`A6>TonKNGZXv=rartkHdvoyT_&Ytta(SfrncF|g`<1iq zqOX)DWSZILdZ-qbhyQV>(({Y z0)PA@DeFU+@iZt$$AFJEtZAZ@>q7JXlB%mn2Ue844J|OFYmM3%LWENQ6iE>^ank|W zX-G`tJ;cg82!S$LfScz8u9zIlWL;Qbc}|$lX>eu-K|+g#6a;eG7WeDb?rO$5;dr$o z3uXsP6^4d1FN#<^8ffxm9eAd@if)QIExYOiuCCpUEpeHIG#qj?#*GjdPX{bP$~+x_ z5@&mW1TcsZE1eEKUZ)x$j%(m_KZ5y`6vhhvf}G)!$uJ6I(ezVZ>=QPu>7y4>K!vbH zX4(o>3k8nSNg9pS+zh-|t2tr=BsglQI>v8Qd;&zxoTQL+ zk7;O;piw@6&0i{3V5nKPk@$r^W+J{C4*NWcGBB^1EHg*la~Xc5@x$tr7&5vkWm9cE zu!6b)DN!tZqai;%zV2y#I~M9XW92y>)ibKq6d=4Z%&D3O7@pMLHfF*0W7KCk56lzX zTEZ~T%0Yp2&EBGAHdTd$s=jGKRj{)94*J9Egp~- z7*?kU=0>bRnD%H9Lc2IRGoDz}OfT|7us>KtixL9&nIN`w$Rdr7^~mOpESpYuljsqz zC|XWsa2K%c2z#!QW^`hsY|=|xwu=F}pQ3;2L=2AFH=>U`JP(U$*+DSwj=>24d6DjOP zERb5H2kTbol(P7VnOcwm*PbQ`sNv5D)Q*Q6%i~;zri2O7rF1MAsa%Mn0B&*9R6-x6 zkU6b-X=If`y4Eql4sj|S2>>~b_5;Y+$#rntgxGl)JRa?yb`glK@JVTt35UaIqAP)dgG zp9Ur%5b0;W= zXIz}?xjL*WW-cC6;!kD589--z)spJoTojiw_RyA98X>#)e;+DlHxm~UGb{yz88lEc zPZw+)qqt<^M7WGMiaz&oQO|#Xc{u~4;Yie~v=dnnj?8P*_WTQ#B{_8oAXpd+Y%9RQ zuZgS{6DGtyNWdS;tJKLTS1xQ&=b?U#N#UCJqS(=uz*x$rkNO9l8yVEX2F8n3b%H{q z81yNQN_-oWW0KHE73YoA9c_{YWwXG9fEns_yF{eyC4< zG=)11d(O#&BT;qfOws5EC{(ML&gqy@f?>`K6?ZsNBQBacgwN0js){24jTakm4a$3P^_WVi1p_F8FgQaWqOMRO16x2_Z?-GDe*<0{@3r34 z?O6yrHmdvf2>?f=!bDK;R>k!BhkKA7Y2Pt$F9(^<7=^83QZ%?D`nuj*tehayL!qHs zjzMJIKndL%kjKpIh`{D0{}I;WMr(W#lO+)+twQ8t6GGe@f;9Od6<1>7TlS=YdSt>w zBF4%~K8DN>Q0n5?Lx6>Z4iN zJ&qk~AL0Daw4!+~h>q+OaU)(Y@uVsHm0D>DVF?F{l%SeSbWylIDRMeVHH%`(l>E^e z;~5C$DXwD;prnHPUCM%3!N@upHcaW27AgW!Bp?xOI>Itqv+em9rRIOCpQkVER9E`n zUwZtn&{g>7346^xE4F?~jA0oqA{_YKV?Wv$%?`KKww;cN2r9Pnnah=xvPm9=*~6vU zg{5KssmKl=vxzN1Qjvw+SGj}9<1mY7z621Tw4N6pT$wFa(DwWF_zw2kVBRm)P@V4v zB+a7HZw}gb!SL?UT(k=W(vrL5dI=5nlvkG?CYBpVel@@P5847i^i*`8emi>N zeNeojfBi9=`acc&A-5|`PTKV$(4#vbQ2`QHi=>~5T+ zpAe7BlevA{iVm8qH=nos*?e9?+wXwhadW)+*kL{{zV6srpaR>FAFL)2ug%^?E2Q6O zsbTByHu(0ur`XaF0wu`@9nn_h@ z?4Ei@ojI1gvHIn+vp+B~QF1nTvSQ^j5TK6{KYZ{7pl<;Ee?X4qpB41Cznp1_HX|Z+`qb0xLRCEQo!2i3!A;&YZsTN z`o#nxjakzv0KrS~z??AXSwS;s-&xQ%bII-Wr0`2*B?1$Wj}!*UAQ2;;@8W-SfAtB* z{pIlnthV(LjFq*+_Aa=-JV)^xjrjHY{|LBNWz!RILlnMK(23;t%3Lx2Nd z={rcnDSlLV^oxr3Oe;#8&X1z}DHCw;ig09Uej@2ue*;!&>%t8czMfSrg=c zaj)Hdu)lJ?h*^@1J4FpG{N&|oxBS|HSAx*Nr>oh~QHR8#ijF`Z)!SvdJ0DY}98*fV z6|=*CwSA5OWB1q{X*y)WRd@{$h=xEFJ+lDgfC1+9&43<4#lHkM?n z<|OI)v5-@WTVrWN`}qorh%*c#MibN?m<(@@!59yZw!9vLs280#Gnk%PjC=Enqhp&X z-J*He4Kfp(oL({Gh9Lnifv^FY?=i@X6)NLd*wf%Wn;Iv)X_jAD7^53Ag`(kptZ$iP zk0D4fuS^YH%M7?-?A8LWqv-@Ij4cAUH0>g!^#v~ll*!%HT&X_R@=I!M;EQnPnn@d^ zsDO0}Km~9t7wN&snb1`C;o%(YYF4sWpgrMC){-F*o|X}zTPLyo3e8vU4iN};5IIIZ z9M=r^Tw{#au_y^%Q@|I0FV1`K+YM?O7vjJFJQXp~v=v zBQg?P9aY0IEQAhq%YyBp!S-=?S)9j!d2FS0T-1vZtE9;gDT`vrX*X2_Dk2?PoSDd- z=U4rCD0L{NSGQC3dAe&A*^+=&T_cD2g*oH(nR0rpEX`NtU+QLRgQL+s^(fL}H+plb zj@bZJwT7WTr+6>YhcbCK_00u_OF&W_+bSgz#8t9L&G^AKt346Spsl}Q* zgpGqD)_3OyizkR<;VAJiXl}v=9{QLWFkb9F3p`{k-NQae_dtvFWxzK&~6uW5yZc^E`q0lAc-bMz6=e>j|M6{(5Lm zgYuLP-9ytCySP|z&)>gFl%@>P;o)qE#}~=gvIsZ@O=gu0COk>ldIZhh>kfLZANmfP zgjHV>6x1LZz$BoNX{WBa^Z*Q1k(GOjoM#=B1Ry(u#4z2}^KqcZFKD`9JL7=&O+#g# zlVA`aVUfihrC&%Z9=205v=S)ms`A{q_ zCfkE4bxqfo$lYG|@VLoLN(##z&(^KoA5mhk$l7}Yyqk2gfh9kLE+k5Ax0y)dgZ0Ww z02COI48@GAYDy*0qUHl5j+^)aHp-{gBUAG74~U%`RDUj?MnHw@Cp#v`w~?EI44z|5 z;r9>o0mn~{*1SmT^Q`__{a5%Xu8oUske)_X_F`ZMNah+be&!?sez97!4&YiXyEkHy zR{ybI#vot7CdJ0FW+51oQTIEC|HblB+2-}ABfZV-^^63Z-&nZoz+7C=9eh5gOY8wf z$3=7Ir;RYy$9)_+dQPy22HRj$+xMsL07$SIVN>s|-9oG^ZB8$s8IaY-Lwr(@26SAY zdi@VG1(&p7)QC7ZTtXfLR%~8*Q7Pt1wlO3)%_|Och63k)tgq&-hK`mk~5(J)fQxj^3v5nELbKO`loUupus1r{q== zoZyvaU++B)NUmb}T{5#;^I$9n2r_$F%eCR*VQ8@qH&?JJQ<#rhqt!h4 zj9wsOZ!V#7va%bl7-v+F1*1QVvri2mSC}mhJ2HJ#CdXquoPRaJTeBfdW7n$}=CoFX z*FNTI@aGDl17Rhxo3%c9Y0M)kUu`b7nFZ3$fe9)a;~>#6IJnNGlaO+N@4<+b+fC!v z1*w8?O-dL(vi(5v=5yfUdCF%nSDa6&G)(ij4CJ$pD{3pKK2dU9U3{-HrU1tj{h^b73t+6BEK(qbXgbQUT-2#W4dZsX_A7*j|6hFewyD zcv3OBdnr=OpbjZ4oSn73!4c#bG3_QLlXKOM zty2q4zeK$@U7uXaEq|u&4ZR(AzBBL6g%SFo4nx@Tr;Yx}UdmZ(1C_$x4DSHHvRx+Z z%@KP(1QP8gs1jxNLh=>GAgIK5dwjZi_D8sdX)cMaVBh85k&l0VAFq}>1oN}W|JcJ1 z?rtc;-UkYjq%U39g3Kcdns{kw{VbpR`N`~7W66G)DZe^s4%982DsE18*}dU1Q#lPE z%~t68^~9@_>t}nTQ8C#rySw^&(3^Uv+vxStpXD= z?&4mYYc=}w3*p1J3s-MrnZtM6EcoZH@y)OmzqmJR1~Sr$a0PzU9tbV(k$iP9rc*1; z%G*5zHcDv}J-Bo0nL5SJaSieZs+Eld{hRvF#AWP3kfL5H zd^EoOvaWx5sRhBA<)L=!Kp&EPV;@J>l*T(rAk2!5qo3=^bF1a4Mf;|xWz#g;%{=_f zKP7+L74CkpAf*5Kmft7T4~_35Mj=~3dtz@4W5s!(4 zZ&6ss05=Jmq$lHaWqH9`T6l;tn|4f2h$VNgd~`pRpbMiN#XbyNc6V7xZ({T6JF7u_ zejBWps2RQO`THO68^4K(aGwzVih8c>XkQL`DI}ZQTUTjtXa&{q^B8}=Oi|)bdQ_qD zN6`(yTp8JCzHZB7Wbqc(V`{(H{mtl7up5kW^bEZ(Hph-1?;9@;m9MkE=APpsyU2_9 z4K`hxXW~=;p>PM#k|PY;#J+HEt-BeQ|DP@YZTAx)(QTD4eS>zv!6m1MI$SR6=^P#` zUtVg^PsMWX(So>JelLI2H1@)0rZ)x({KSJS(f%0Ls}PXi#F zw7IEx+?g2*5K;PficrI+t#kgBzb87YjIu&yPSANnUmfSP7oQ`|;_CCu;^H(!jX1M4 zP1P)6R$Vn5D^)m#-@W4nv+|j)oLO8I3@Mw3jYRX}MSkh~hZy(x@HBA5YH&Djx(AiD zf*A!193=Ba5IUFa+Pz#yDWrf(34Xpp41ZRR(?K|gLH7=gy@YEHtADc~oBXyghCa^{ zP3!l>0~(P~@VjW@|Blo$7{K?geL(dpe_ebp@p5LRTO(iG!UF?46O_Th%MbEPQ=YW@ zI~h z9O(!+4^R6~;fX;aj2|@Ae2s=s5^S&-Ta%8lIGoC*jnUo`)}nM2x2stdfUGDBdfArK z1!2pK;$C?o@mV>B8hbCuoiK|Au^8*j9JmD2zm5*+rlPNb$&h8KUaoW+0Eiilj(Jgs zoH)=a2`c8gbCTjXai|DbMeg zMu>+&KqemXoYqq)>>;4jJ$+%3r*3q~ofb}qh!f~>--J7&I$4eK0_TtPt_`KguHAR8 z=Up1`LRCuUWx!GKh6yTS;D`A{e!15rd+$ zr-bVR{Gsc$eVp;!CYqqHAu38loFe38C@x6^5+M3^`e|#Sgo;_zccNSwWmtzstTE{e z@eF|Y^Ni`QU>M_PY>$R3=?D|_ZdJ%C09N(7o)1hq$}=Dv_mymepPdMZ7n2%Y6fBM& z&oaIZ{~fPl$(p9+LI^pUdk~zAfZ4A)5gLa%VtL#fPCX%Yx=@G#a*RDo6eASZtR=z@ zhLdJ0PC{Ys3pwT~yBJk~K_2K4DackSlCA-Ug^(C6X<}DkY~OGiuII)0Za_2A0M}DO z95;_qQ<|CNhcCxjW7^ZC2Gn#y8((O5WN5TuTk$A|2G-7QRMG()yw1!v$o zaZJ{Wa5@pC`9`8A2A*s4a&!uqK75u)HsND#5s5r+(3!vl0%T)>Hi!cIn$J5*=!ubO zoZ11Qk-;l!SPf^oqX-VeVpf|EIzy8C|gB*ByNLG<0+bueBKGITMYy@p%m1;cW8}iA!|2uYKsn z1PDD;5@s`2RWJqgSTmFmIvUPK)$H>GY?_b+4lHw!U=>w}_0|OplDsV-A0%>Q=}bJ8 zYDwZT)OmIcgk6FJ`d*bq*1NlUn}{v21wl65l!_gG_K>jqswq3!&O|+(BNIGOASf3( zq5!cu3Q!QUFIIP@B`TyEgZnAWD_Vr2OwN9bc3}#xP2x5+;s{@62^ID?W0R7FdEKNx z3>+#tA)8|uj{Oq%h$N1hU>6+3<7Jr0Hy4tlz>2eZ{g~dvm`NP^R~BX}v>G~JqA1An zdFW0opG=s<-RSgCqxG%0sV=;57D1Se9Ukb7|AZ$Zya0q`GFfOkhVnc>`KNR?M-3lh zGCdm}FT`ab1o!4kR%HgEXvBn14R4N8?ko%2VN~#=3M-Y!shyxOH3-0Wvuea|lTe#dM zmt1lwN~UBLQ<5bob{qpy5WoQvAP8dUzW^};1V|9Wu!SJ7q$HGVN+QK2cbDWYx87dg zUS{6u<;OP>U>L(oiae`!m-g}ca72%{Pk+nV#CyCWWzr#UT%g}sp|7|IeA0Co_~-o1jm+Tc1t0u2Q$QBu zh4Y)g*enKMZr$;Fd{^l74P$3*OL=K^lX$L`rj~Vod=WGQ3BfXFBOKIvr22#CVCgq6 zSr7ZWxN+1w`JGw)Wcy>Ka|d#Em)b_1Z`{G8mMvuY7b;Tx=NBFdWom3(ERphoa7PgxnCu*FPOMYUwBFlhKUeB={5Rf^ z*dpLPo*sYr%R8aLsNEY6UVM;SHxK6l**0Vd?Of#EnY-A(v%a{4J=i1lkM`-a&%f@Y zK_-YlB`AJNt@zhLUuu5kG>Dgz(en2$P5T61$YuQw@>H}iqN!t-!CdoSVe=B^*23qk zk%^=NSIx|u-p|rLIvj%o$nA0;Q}ZF#eq-;E<}T$U&-rdP`UK*W7WV0Y(VTIgDKmGO znY_~2P0nzFn;fHP@O+PnMl4+rU;S1$z250eqC=eA=1(k<4PvE9lL{#II=arhksi9o za3~OS7rA9AJ46!hr`6j0^+N6asrqNqQiEO$>1=JV&pqdcy)z9$R=?8reChV(S(7VMsIb8C7IvqYV-BJ9d0V*$a1>gH>^Q-1cXm)}{a-s8O=_?85I)x;g1pA45X zY|9Ot>Q5i7=bLdsXV|JKhVw<0<*g0ZUOqf@9y`55t9S%Hi>Qn`lO080~7&&%2*WfuZ zv4P8gaaQ@*gOe%ddu(#*fPD#bzeb5p83# zV5;58WYMHWpPh9b1;>vA`h>=8vM4XW3VtIe*8vAZ>@)?ja4Il$$~E2DJZT8|fVv5; z=A_61-6-ObSy%usEgKpL98zUx;guJfu)t<`!KKL;zVcE;@+yv^QbWZ-0O1UqJzOoj za?H)x^Te8ZU}MTn6d7yAPA*CrwOOnbphflnx#PqLn;Gt6G^1zzUp5ZkZVdEY7Usa4MM8ttD1 zU6Dj!@74dYIcZ4q1@1+LKT&De=OlSPTlJf_h8_`_{$+8#LKPo^MN1x!At;Omd~a&V zm#ww4Hq8M34>LT>r1*M-E#{DSW5!vpnQjrAHO8klj;fNBp7a99Z0i9cXXFq?9Sr@9 z^vQ9Ws?w*Pu)NYta{(4l!DU5ID4QT(9hJqxrsLtG1=g6(pn}Z{lqTQ^8QsXgfo&V*F|K_!ME8h1I9Pb)pw&j-6$l zZ6v`@!+Ef=QA%wdYY;dWqf0RXAd>~FI}+P5hMC-?+-+MT!ig5A`$)xVs}iP?h&;^J z!|?%&2u-pkD~owxyc1$`R`x`eAhkoJl&*%y6^1uC_ipHg#!1i;*%~i&c@ne)gjGm? z-Yk>SrMWDuq!CC0M3kih(o01&y8;JJBrXrD#hp>BrNV+6;fIbn#d4;ngo`I*eD3hj@~2vgzUsXJ6{0qV{<2Vp*RJAoDKv(*0Z!22A%N$0n%Y z$K@{H_xD)_Ffhg6m>1G;M8Pj512YLR^D4L*AY^R?VLun0Zu6t(No_J58*IZcB~(fC zIyu1cN{?tiKx%WfRN0FId`<%vDI1>Rou7QZCAtgNr*NMy%hb}P4-kC7W0vdDNoQQ} zX|%pHaP+4e4zBm!;OHOrlz^;m(4ry;23{E%mI*-;Z|rLE)U1x(z4tSXd0xZ9T_2zK z(~{}CRGbrQ+zCwz>yB}*ChF-PY>+*tn9JGGK(d%N?qolZ=W{(vW>iI7XVqHdda)b0 z0)F&fb`J%qWWF(y_FF73+Oxs)i3^(ULK(+~c`lbM5r`sgux*1A3g^G6q}6?^OrN1d zCPP2&;v-(xdVMBKBBqC$+t}9ruj+kKIy=QCqfG-GYNK?vpL+?rJ*mWApVG2wapGQZ zGQ|DKAW~`t^*l>e@ayDa+TZQQNw4g-J;G+Mb4KF&YyPllUw_()GK3xcNE|-O30BHxnxnR&x%1UEcFsV zM4@(}CpR9m38bktr*@T~$V|awl**Oo2V8!}#v{IcL1d2H6dubcJyZ_zahxs180OCx z6n{AhBrx7adgvxNf0`uBhyK}tdIbTUAP?6HqSb}S@QzzUu;n{bx6_rKo-c8uN)Fpv{eIzg=LNG_ z&h?}TPjuCckqY4jTcFVB%PzAE)#ul#*W3J{S0MqbfU(igTy$cQdghQqi! z^XkeB&K_)f#N?w4dWQ4KW2u%^-NUb}euGaANyPB+HDa(tpOXs-sj-FV)#6!iY3uN- z90ZJhq+~*HhL7}FCUZKj_cB+WBkk4~tB?GzPOqS&o0BJIF=Ld+``$R72MYuOVbew) z0#p3prO(759W?h#Yl{j1Fgm#nYWNQuME;;aeeDwYq4mGO>cAdf{_H8b`sYW^X*kZU z$s45?^Y}Y@Blf}qvDEtB!-GMxl_M85qNT`Wvv5sjy5CvVUb>s(3wvCBdET$*Gl;u_ zbl2HNIv3cJQnZAJH;7pK>T)J~=gLbMSvcEwb2a-f4l|2^bF%qlju&nQi+6h2vrmZ- z$=ovq>LT~6&;0mRC*A1A;_0lfg--(OzvG%(R=80smMPe&4bx|Vsgl`9iL2{4@_%CQ zG>a|fw;y501rf=LSG#TgT5;)GwqMZgI$c&FLkQe zB-p-kNN!{5;4OVJV#!y(m4D~S=E~QW%ei)PXesPB7YqJ?>i7KD|8yg~al!u@x+wV^ zbs^ea@2iga;GIjbEXttPyZ7q9zxKS?zLJ%_55CHRbo*f><(+b{G;s#jbn;4TgJIUT zF1dmplTLhmcCZZ)3_^m(h!JCoSOYxW$FmdWx3_N*4ercM3fM4PU9uW`LB;iZg~rmn zJU#sG{hL)}<#3=OYs(a<9!7!tiph`YV7tDTOdj5*2d!`;Id?~=zV_M_M}IF|C)zK@ z!!GyBw3Yj@`YA5_e5}1Dd_S8?aFyoUzuYcZ8~*rch*@ot;=>|>@#-)xSLs#GZ0c=eP`B`eM2ex<&_EStb^*e~Iw>y4j% zf}XsPjJYSVk~FjrBe>7o-suFzYS|GlY}8kCYIT*hBYGM8gfo0H7g%DVZrnP@pXrjt z9nRCvrn<6n6_WZ*H3gY>>=?%=Hyfa71;MKGuc>i+jFsrZVTfcFBt-_1%lVeefdm z$AcF28}Buc)7{+tCrjv6K^^zvQfKM$6YXc*#iD-ch`X7nZ=7ZRN!~x*O0q7vJ2*xI zY>g7BLpiYnvNg-q`_2->P{mYUkY$^+cGF}Oi`N*$aTBoF(jmS{y7@7a8W&lvAkI^K z4r}h2g;bi(n3ZvI!YZR#Ogl@7lrz-SjIlX&uJwi%%Mx))J3~icXAwM9wjzJ-v91$~ zeD=a_!I?oz;b+RkN)G3>!%2}4E!NJ8k^<;D)Xe)Ve`EpdX9LdN+4VfYBu#+Upcm$d zOfLAU@0!Enc|RfhPL9@&u*p1)u!scH24D}yohrOMBnTkbhD(A^1lTo~r+AAV5|k2m zPGi^S_}DMWQFKfNu=JcWu41+nu4rWeY5MtEA1UXEMG9# z)EiDRgzlL2fSfl(BEiHA5Li_P^#A}3wZ zL(aibmG;oBDG?OR&4uF0XhdK@QWY0OQW!pGX?KokLs;y~AvL}-wrq>FV4)GRaf?tm z1YZPA(b_o>1dxOsGJ^l!$79r%l8~kgNQ#ynO5vJu{SpAQdZYd;JqB!jTQ(;kip{#P zEmG=X9b*cs@M0ZNwBw{nCY&KO%^PtvT#l+7nQQAqJ?6%7M6l{*v{~kDd&MzJ*-U$uc(DK24?D%9=nvnLlS#j zfjw3_krt-ZOcZ1$8yfs>WaOrzfHnY9ge`m2nARM}6>NRMk*FJS8iM6vKgf?f!dx@t zp(vOoHdH6HJ$9XloA5SO&XP`soL4VkJj!$Olz}J*c#+W&PNKlMawia0G~f(NEGWjo zUK}SWVF+Du!w(^h5~Xs%Wj!MGcak)1P)lJaKS(0fv#ZWbjG`32_B1rT9J!lvtr&67 zHNZfD(dt53h+M`SS{{EI_;e(OiE7M5CW^DJLz{H5n3XRSVwEEkQqv4-0s4VvDUR)zcgod6uP2GUrci)WSJ4Z{v(@dL=xg?KI~xrK1NE zpFE+~a8MNVDMTgeh;WQF2=5-9xmXK+UVhk*n@h&kowqU=iU<(~fenJP7Bky1a4R0k zTQyhrZRe~NNhA|O%o`%vJjz#9AbQ$a{T`DIx%@J2Bf-y@5K;kwiw+4e;A1#Wq#iHj zc@&IL0ZcK>01tB6yP+tgJN^C`*=A(S-ga^y?lB}M1(~Q2w_2A=oF0sv#UKN$$2>dY6ACb zo(+MdSv+(5MKT{XY^Nwe; zd|PY)s+I6oE-aPy$$N#~^c*pDan<(L zeTd2=_FZBK<3Cx*g<>R5M;vE1oZyAUo$TRta(CD9*82fn`tyV;C}EH$x&JT-czBm> zVVc;-pG_j9IOEc*=I5ec!jJRv7;@=O)aKb2q?}xv&AK@J5d>mWkqu#B!_06>6ORPcZcA7@HS3anLX|;On)T@OD1yr zaI=;nhUYlb(pnkh*$?)vm`BlUJG>%(C!Ta&{7o#c(d}rtK1NV~3`xZJ28=0=G@M=v z`8Ie0VtCmgiOLSU*o`-Ly_)=Qw6&Y2KE|}j%V`E+Bo{^e?pGfdzhk{qQLHoNyB_aGL>RV2(qE7hFD7cY-J~e&+m5bXWS}GSYv^+Bh=$OlY?!p>S;O(lE&gk_? zhbv6}cVN0%CHKPLJkv3SzSS-|nf<@41&dXD^@TGhs*^@9{t{7+|G(RU|6bRE5LWFT z^T9{guVTu{#HdncIL{;g2lxN3ysUx2^eM5#_gnRwFEH+xO*I^-^Zh&lOv1(6u{=3n zEa~?Bhxfkws^OVKbLP|7UNb`!n2#TRMveE!=?+p%{#39q%=|i{Vh3KVAcYKQYWsix zHeXaT4B?d;=j33x=(1tvF_Mc)xs`yb`PJpq)-@^}93P?e)sO$~k0%4}6NbzdGgT z+`k*|4vx zAw7Pa<89!)yGMB8@H?wdr7vnq)SuF=Jy$QDPz8F4a ziE<+UUGR-?w7rObgq#hkBpbuYrZ-(R60u`}im)%|JFEC*aYmieQ9B7)I>2MKo9WL6 z=1T<~kP#o-ymFsU2F^6x5mo(6iN*frM(KXsI~Qh@GYECm85l#}QlG4P!FzFdy>tEr zSGNDsRzqD{fYP94GfqR4&}M4Uj>Q|ZqMZA=J&j*`J8m6xGOsM@$h+1P0)4M3e38+& zmjfB8MAC)iQ9=x!$tgfxGOEcaS;ENhHpIoe@3)cy6|7U$IRkU|M8pv4m%K`ryHPGF zIF^2~&QztR7*UyI*8up2jasM$yT5{?t#S@~#D5en{%`Bq$jwx>=RePEG-%=dwB)64 zh>^C5f{L)Zp8kuJ-b{n$ekT5qBN_1W-hVov8mx|8q6;gU4I z?8X}2unQw(hQm|3&1Fzqm+dwyf!r)o4V)d45gXuFI+Nqg@)~w@-^HYECvRYR3*u*o{GLRo4%rR#;t_Yj zXozdk`WV(~Q+MUOM-)1XAuhHcJY@e2XHG`5tI6?3CK@lZ(od|S9?UCOT#R#DsV%fX ziUjWo?d2n_Na@-3d6%q3^rpL!XG8jaHhg;70T`cG=$TP0o3-*H0iwmJ#pis0d(59% z>a?~{z{qzvS0;MZ&E?r>cABx4%T{KH+8D$FR-mBOV8uL^31d;S#xhW>`pm89A3_&?#1zd%4sYmn`vrv zmwhQpU=NFuyz0!S*?gFm@>;=DJCd5!3W>khy)%(_OXmnWCaFx0hHNBdVHdQT z&q)3!JdCS_hkW;}j-L&!&=@|A7CLPm04r3juaGzWaR24)Dzr6bg?dqkIqd#?_62MQ7A zafnisDOVsJv!L&!D$hKx>N-`D=L8TJrI~81M3>FpiEW>pCdyOqGvs!puPE8()krr` zcb2xv8U&Y9QS};dMnS-)j~bc%j_#|6#V~K&sCa7@Uc#_`WYF}eZZ!SphGbimPY~ye zej{**zlk+Ok1p};b9b1LimxjnQuXuCnMurzMumH4)ohU+fs4$_v+i0Cp})xK&q_S{+=$2sVV(oFw9y3F;l`xQOG-RY5s608eCzYm;ViMX z!YVw%=hLXtUhc+6ju$T%Q!NX~=;y8@H$zX%SFMdG}`KlSH8Zie_geZ^Mk@L790pH-)eI2DviWMtRpw@+Wf%;M+` zf`*lYT@lu%lT*%zW8-E7LLJ$C%e|}{jJ5#brqfdm~fVGm0J3PGaO~q zQ|w}mt+;28GxJ>}!kpu0?J!65vU4U07>i&T@)DMM){JBeWr*quKz5v<$@q9p8(L0j zP7>c@$S}zd&g*svTs7uryA4LLPFzI zZ5k#I*=b~nxz&UU=hEWB-WydIQvq{hcDovv&T_6MDT^cgabb8{2MvnIdpbYmPL}nE zIug4CwNBz^*@z*DQoBxq@o|N)$DxEf*w-Ik(AYM`^ZB|^4Tfxmj*;vkvsKw&Gg5wVq%b5()DawjA0+ptpbIQ{o zq#W!nKa10|8z=0Iksp>m3hqRje3}77tAokK!HD|gjdyaN9Bn;%%H@;kN~YcW<@hJ! z>tDHkb6mWk*^nFqWUi{HbGOLODAu>vie6&WvLa%BeZE}=O2x+>qCD2)0zkP zk-i&d*>E*EEr5seg`ahY%8%HW-@RLedwhe!$|^KHtbg`yF?aeK!y2&q0#x~!!)Cwq zbZBXKx4Wi^8-F-zuN?dj59m)c_kw0C37;8FK>Gf?CU(Uo5`WElDH>k;&L{5a+P_E~ z;_Sw{zw_Q-ZKdf?wtBMo8PXi&9?zR4=1J~241+C${zASwYp(w2E$)ebv<)!W%~;Pp zS^ubI{LR`zT*?#n%7fohUkbe+J_=^~_kN5ezhDLR4|g0)eX7U$m`i3?!g9WM{;biq z_tXCpIhGzNvtEn1#|0(C`1yx3I-aEdBe3VO<=2A{JQn4DjrMwHl?(5T+Q+S(AFUHD zNjt~h{f|@8`s~8HuHSmf{QSdZfNt{N5Xf))+}|R%AEJmF6+fdNuV2?ie!YEaL)FjN z@uQdP+V%fyPF(q!jLGU+Oas^Ci#z{~=_T(Ue|H2ExA)5W$8%g#?%aG^>kO2r^)>6S z|BKx>_-o=9>*HCxymx8C8l9go(xz}ZRwo)&cs(;&HoB+PTCDu~V7Gkl`kg+>%GH-|U)=`4;QZNSbhPv`-LcbW( zh4puTP=C z)4LUEPn^GIh{V7C|B`P|_V`5yy-EcHn8=!Cp$yd!9IGEFLO|-ISEgshma#la(G&#> z2Z-jdtP1DYSZssCRz!ozI3{dSN+9-_;^;Xw=|l6AFG2+gAL6M8!cl!*H$)Ok(s_cR zI*!do1y-_#O3A>0g3h^K%Uu*;X@H+R4dawGVfH}0JSnGHFeKF0=E<_=m*8=mHj6kN zTnlA_P2nh64`NZ_imUGePGEF?b)!hv1tm(k2Y%4xvTV| z2*EDoHVsjNF@?pvuMDHyA&j9R9^yk^g~1JFc!MT!^DHeQU)C!X+(OVP0tyHB!+bXF z_F0dGPNR6OFohi!lIhW@0Xu4jO~})Zp=!%G6_Wh!8!q4n=PPkkJkhZRz&%NKQSrQa zE?B@?E6Puq$0-$&FKn}e(N39wj}C+M>(*Sa`G8hEMu!EI^s!f7*Oqd;b_1;1{<2z4 zX^dDEOqWFZ6b|Wzuor`uCBani@}XNTuP3TM0P*J+1eEfJc^41+dk=e zF1kd+i*J^y9V%d^4=k#-^emf$^&Z%Pfyn{ie2XOrl5MI{*a+xDp3B4bfe&H3S}w`n zRz;39kMR>8Qpud`*J`TT!91QILSn2>N~1EQU7AESAbOaE0-}MC)8?dv7X8IwvbKyb zJB~w-O$zn{Y)E>`Rb#2*ISFQA$Q9lqF3woi6(Ul@R;3&SVEQL7Z=R>5gQa*#wU#&; z^*A4$A$gZB_CgL@xr<|qd>{7jDdj&ul7)#)8{!#yqQIe*#Z#*;sV1M{LKgM4l2R?q zkkjZqB3jS0Fgiw2q?OA2Nrg&MgWTuc(=aPnBAmh0waBBq5WkbF2m;vKVuQqD4eg6W z%}FTC&FEKP{g07*&XmpzjsW^cV9qk894XM~6Xx8r#s-gyL1fWuYR0r7%!MfAAjqgMDwJsH1dbuoFqp;DN7qgZ>m1oBxiVr()30J!)_P*U!+T?VGVUPf zbh*kvT!6&*BcxOSqSg^I*YIqYu*R&qbwn0|&j>7`O=$@;J=X!8YD|ZdiV+kx(D)?k zpVA1BC-XBLu>yyi-OHS>xPwFBV2&2raFXR-yarOn+;pa8tB(4^5^+wE?C;V*TZx#J z`j}H42Tc>i%Zi4Bk?PG$_D{uOg?6H}pA;T(OQ#Y1JS##!1y&L6W%1L?lm6dA^Q&VR zC+vf_UOutUXe6+S5~5EJZSqPfK8;>`PWm9BPFDYEC)0oKBo&x&8C|hJ+)7bUABdBFbP|;J2|U8)kYA$J;1ffU_nU%_VF`raZD z6%7`ZFmmr7c1V@aMtMTW&-I42l+B3C&Sy=n&9VTDep_4NGcOI`L5w*@GOD#4>v}Ge z;othJGKE8r91?xRsvUr7a~Q)-Am$X$5(HSn=v2}3eheNXmi~dcYC)lv?PQ@CD?)HG z@9ucDBpISos^Bc%!Kj6ldMtiYPKel`dm5exHPIr1IP=yLP-`%E85y~R)e%-{A0gFe zr)rv6mjVOsSXZ?F>?$8RsERzm+@ufo!iSamLduRS<-|$;E*y~iXPD+yuw+w~sJAd^ z6qKNg>(&uF=LhA8>iK$ExgXbKT9P&nX&iMPg0XSUpLR+09>E7a@i4nO*Yef0pM#rc z@HM26j50HYGRTmjw6hta)h#ci5LBcspH31LpG0NYj(r{>h~2UVnWcDO1Z-nr`3Fs6 zj$Kp;9~P9PJGdG~A%7hqfnMgghI48jMx@?wc~aftAPdRqq%j2+oa&dfeXtuQ)ug$E zh4Z+TBU|_CR2AY}gQy&{N*Fn28lClX<+%}ZLQr4hCgnvOQpsT27jWZ*Cb(l@(CMYU z4C%dWW@oI{i9#lljL-YKARLczM@7wc-PQq^x!zl!#>TB&O!#PeP69Ou-flcx;UHOg z2ElEtu4u#TGBdDniY?7w{IqS{?s5tntBvsl2xTiGeT{m$7zQ*j!Jzh{68jY6` zzJ@I4MLj#%GAmWJRP}4|IEb$S;wU%~`B3ko->kJ{zD_@W90kf~-+4d;T?rR932ywG zE9l8ysthh!l7o_8yD!sk zww;*!{0?qYdw|T+uKr6I5;~a>?a9A{PLgIXy;(Xn_K6(;{ylg;)wX_U7x#a<_vn`o z^!YbF)b}=T74QpoeM$JSf2|JweBfLlpv~_*oI`;B^L_h>)=YZKdIal5xs(>89}=gq zuRPG)Li6|CGa85GE`pucS(LLXTWg>7`KL4K&EjjnrjMxYi?hmIa^8vXtj*l|a5Eck zUrUvQ-zNQ1e@hh?R3o)=uVgaYlSPBMfgGQ%YI%DSSVQqApW35ee>*#U_R$64MtGZs zP6*3-etF;DjPl8w-IYY2O?jwLyVAV*u@XAo_2cQg|FjxT{b?Lj4p0S~@!`e4AD2f; zXWMWJ$f10CyO!&i^Sqr!Rf7?E-*bCp`l)pN3FG5e-;5K#7k&K;xGK7bygPySUS+`Fl@w^4Zl4 z{}1u|e(hGBh>sU>D?M3#@2jd?Xul*89}+1yAb+pG$Y&jF>(f1A85f#=A6EbQy+xt* zmlxk=H{CFqkiq`H^1>hT`teP1NsZR1^OajO>d#kBND`ZsM=xiQi6;mTw`<00XF)Fr zM#<7g>)nm^JAm<-w#L8e&0PNR-33)W`9i(<;CpbwJGSQ=9?xb1g{EhV7nc3XY%PEL zE5LCxla$l~0EX^L>Dm9xIzP(^xgUN-A_oa__}V~i?%&=rf-{3c%QR$Fp9m%K*i-eX z6Pw3bZ`{qbz+OmA)Aihk5du8v7hv{|Hhz##kl&m?_Yw5T)I#OkUwglQ@pwNl?n`{{ z&>cKTB5z3Ve+9pOY5%dolOyEbDDTl!0X!OZZ~4P1 zz9n^wp_AYd8YbmYj8CC;vWv=tWyoY(ezR%sM6eo&+34T@>BfLYp zS)Gm$H3W}$uv80*?ls#p)G;bXI;pa>AczRedh8MkJm#sNQ1Q^0YLmfq85`#9 z24pudIKQG#lw>Qd)({pl+_t?OYGGJwk|HRa5zJ;dvLDjvgZ#pY^7}6QgmP7w7ed1J z7DS4GNiTxC1%CTa7lcgGUxx;YVuEEsa>8i>T5$0YlYA2aGGAD&j-5lGb*~t28a&1H zA~EG)m`bCr(@95A{)>^tkhjOUL=E~gS#h9mGzHN1JZYt6gyETNVdk)(N(qsR%n7X^ zc)%o(noSuSb?;{|NnQ-6D!6&d>e7rxaxf-)ae||+5Sz9=6$l4j_$3k=6%QtH{t)1* zB^)l#7&VWH57&w-kuGsyNoIw5Jx%ZOq+5q#1DH0FLA(jE-r_euqxAgD9odz++)p7K z?W7Cfyn{K82`G&tC6qCv#f+5>{Q_%NR3{}v0zRo!NGvs;XXfB*^&-^Nz?Oq#>nROp7 z=ui>`SKvhz3b#6<+P(;NsO*z?{A1Y|GBwZoGAPML?%rZ6EX?aB4f}+7w8!f|pX?fT zpC@L}WDsFl*eUx^t>}|?TI0Z5zWIcR_jJzVLn!lx3nVVmB^S~5ypATU&K3|yei57= zM9(ptfTJFUYL8<5;=-nSE&1JyPMQ;4kPc~>DH0Jw;}DPhqYKoMXI`-KY&rF~?3E9$ znEhg0GGoe*!Db$l-@;I5K6?cc*$%S zA@7ydvn2FWcs|5PYbm-Bm9%w8s?tqfRlbpJFHINqC`u$0hh<6YPViJz*YxcnqyU)y zQht-3=ee0l^jVnNQiLe#;7LXF!jo*jGh5x_wve-`uoOT}$H#Cqkxnr60*4O2Y4>?9 zH>Bk2zj#)Vmkw!KfW}?;+E(vBo9a}rqa#N*D!-dtQNwkf5aj?D!CR0bua2MWmg5{A zMb1|YuP20=`||`j*Ep!Hf&n9aF6hHd+3BI~B*7K8DY5O`nzvRm5+{t{{L0;`6zLqeN~zP7;(%l9&(oLkMDsXd55>0ZDdjyv$rdWcGZV3$6 zDBGCQN@Du<$c~8LGLPbOn+_o2o#MUBWI^UVjmgPnO~_8`n6>)tbp(8`B$^~R@({pP zt(B1yHxee!&^5Yk)7IVE*@BEvY#T>0c7lshWv-KM=8rK5Go@~LK_{{##(tVQUtZv# zde*bd%Yoe;i?cZxFt%yv%mbuh1jDWYiv|w_M;v>gPz+(+e;)|~`AdkEK_%esW8f&h z%_Ggse%+_3yXoaSu&uxdnd4m+i{muBniigI_`{6T)+i?S3xcx5iwl)7V95nwfc=y+ z2{pylrTP7uaGp*FX}Pa#G*kZBM&2wjEM>76 ztWitp>`L+v?vjOSpKU)2nY>Ll=S~2ILllkHE0gV$r|U4I+x~*J)AI3KkL|cok1j$g zP2;}kI@X6dYyvz88=I`OQ6-;2BVisy1P6_f~v)X;{tB%0+eSqQ~8J zOal_{EMk%~q6Eczj{7^YU1B0%9vrOf5h&bZ>9iqN0XbQeh{mHLlEth+gIYSkSf0F;nLB&K!+Ne7R=BlLK0HLlBH3mffUue84VBj%_2*(iQ69>{7F%O6I=Q+ zQ3+q|HJeU|G}RuqhF!k&F_b}1UVs4}|DRH{IT}lgw161P#?3$S12_z%$v0NwvxE!2 z+!c`@-d_5}B6m&be}mJ11cKxj#XLKaL!KC(2@|-#UB-zsiLs_ zTeEdDHYmigr<(oa%HpHK2Q^2oK2_fRY_M5sRtB|~CQZ{Ok{|tN=-JC>i>26xzNvEA zjnTnQZI;Q)Pb84ufQao~VQOqw!5Jw})cEBh_s@>=gI`aP;14!@Xaow&&-l4F)6k&= zDR#BTt@u-7f9>l?eum*QnTAwWaRIJ}Kl-%MSR037QF!sUUl}4-=78iuGVuNfrB#qW zVw2FU#ZH8A`TwUuwVw9R+rNTc75&M|;`R8OkwmbyEim)*^FOxF28dgWAG7UqEnw*e z+1T-#%t17`d(uaXw{*>PGLY-@<0wtRs3wx(VFE{)o!mx}$%o$ETq?s}f$c$gGYfc2 zwr`A0gve5n>US90!0baUGghG{n2P;co;80t0|)q(*eX~!3# zH(WR~uZ`n|EEoLwMNVF%ZZM@JGt?2YW^sFSo}C6IksA$BA$OWvNkk!X+_4cZbQ0=2 z{BS(cZA)0mEXkY3#-pqA8cx|W(u5k~7?R^Yoy&$~v(nF34hkz6qnspcVa{uTXCr8F zYTYZq^z2pRlV|SueCo%XS_8?O&$@2DRmnUD;OVY6I**x!p>M-_b9@Jo%r4{? zOS+0==AC0S>y^_g;t`tP&4j(lKCGN6u%Z*{n6`Z*>Rnz~57okhqTxN74DvLEV5JCh z0KsV4d6pYcm>M-3`8+|ctpOpWKWcB9j-vJ85JRAmH*jNQMTm<5*G6b79fm(yp8lheO7VC|Ff~3+u^h(>hDJ?do*czg z-VafAX(jJlxFF9vNd*O}H#JieEl^mFfa}I_WH*GQDyz0-X!113=>=8lPw7k@0)zB< zD#mh{z;)Q|_VsfS%VXvy3sB6?`+mu7$@ai45l6OZM031$hx~ zJm*RQ6vcJ$eVXPdCzn=|an$XV;K6HFiSQ7rr0KYmLQ28Qvv(TZvCx6V|E)AS9W9{l zIaFdFz+@{26$Y#c1my{cTFR2u`sx@w>wRR`JwJ(P0I~>R(#}z+lZ@(TX}K9dq$sh8 zIHsUsgitPpy={3|C&H*QmNw=ZD_-Ps3^XOM(t}($r84I)p=9`C3RocDMJm)a?621h zg&#X^_Y`N&&EGr)IfJ-%wYzk6IfqQu>xF5oi(zAID(o`|ynMI%v-H&=JF9e;)1!LG zG5+U$zl#gD?F+*wT*Y*9Et|^hP;RFb*)V>rr}X6X!Dnu6q6$nC0B151jyb5$pj%r5 z19R3n!ltZD_5f0`hE7HsK8K~XWIhYKsI=6-Q*--n#p7Ix7qi_7UY{a5 zx1mZpKA2~aTZZam=>JdAd&XFno_BsH=WugQl~Y%Db?(W-8O{uc6fKGr#g%qf+Qn*j zZ5RvKU+j;9J{d3!@7jQcg=8&t>@IE#99~z9`1EHqvo62c0u*P= zm@hJ2eftMTwGr@e#|4ya)}|a&u(c)`nQ9506EFArQo-8IF%5+iR)rjSt~=*!ou%NO z87@)FL!KfQ$OD&`-7I0}jXG7y@JeuMw7)ug4pi)fmy1!hLzk+CyZU*ld{V`M)O^ZP zRODWcl>nZdguTaYsi{vqHyGuLQZRoPK8Fw_?gfFXamBlc6uaffgkwxN$cAI_bbzgA zhpc7AW~0+>*AQ<{-&k)<_mqyh2r#HJ_&ct7M<*HA;&HDTlw-x8+{P%68NY30KI5}Y zI$oD<#+FR)x0itUSTGd3+}q6~6o?>-*MBXpY@*-$v3-`GOdGiezsBh4;xgX2_Y6!xAwyDVTdEd! zdjTWQ2jk=Pjg~j-K$O_7Le8fW84H*Db2^cgKI1!ZdmfdX)r4pjS0EZGzz-1O(4Fa+ z{&eFX|EFE*mK}60?48eJgW*;2rHM9yH>H#qlRvre%ct`zUSkfY8TaJXwXgXDqLY7h zJLG?UclRY>+*!Eg?e&S$cnl!Izy0N_HM_pg?hJoHuxdA^5MH7d42dob4|3!1}Qt~-h=nmzr%i7 zd{e~`Y>q)#Fjfp=isT^c^|-yb?>$I=BPT#lwF!fP;vIMSIIVhIU? zf7R<}&pGx?b}s)gUYlpUuP*RaS=*p%9HQb;r*mnx9%1;E&PV634Cq8hdf}@wedg(6 z#i8$2BlIr)kj*Bc^5~_m_giK*F0R&XD>M7mS^Rj9NHHfc4uNrYbK#QStj&X3wfuQn z&rH=US%$cigPy*B6l6Q8&G?zMYjP$04r0diU!?uxlkDC<;o zm`eQobfXEI=BR2>ZRKA#eY1K#)Oi!_D>!so(E+u5VlWa zbuZ|nvn;Xs=soJFD*5s4m#}}avOs^iv3N(0pMo5(`iHM2#;7}d*Q3xP2JP@5ZXG1B zB}l|$x#ER=;yFF_*4q1-_G9Ov6{zbA=U9jrq({}pm=l`&V*HvQTpwqGSql#kqlFDV z_QP)d)8gc$5PL2SHC;uE*k8zvGC;s zsxYapATZ0>1otzePj0p!=@w3p z{EqwVe-U4%&OesK(30H=^dU=j7!jIq95b8UkYNZ1utk0 z0n{5}SG1PVN0KAyW`2xg*`YYV7DYI=j|smFy)vwABF_Xj%a6?g-5E2$uqK)5sEUAs z7vNeJ89-8lBIeV1DNqxJSeJ7P>%-JAPAO6oj%|Su#b*snV;Ll%a3-gt{q3AzznsK^ zRhr`>YA9|6$<|VfPa2ZMIIafjCn7P1i3pt{xd4Jexzs^wnqV1BWdpa|%BT5|7WXh| zH3s+!Dmk#&jvrN-6cq9i;>Ipx>1D z>#?|nsRU=t*0Gt-(m_yKUg;b}WGllry3+?%n}qz$$oG&my`xarERI6S4naU3;}of3 zKNHM-FvBdv72WrHPC$n-GnS0H?Wz@*=}|ZjEI_GSYSbbOvnmB0I^K6b#?HShwKfLkh-yEY6TZxuq!6e?ogVDqTvEZuUILn zPR*S$o^os*jHZbpF?2@AfC?@OxCYTQWSSPYT~I-ZfHrX#E5aKD=tpp0j}zC$T626N zp1~Qk#9_%NC50&LuOu;1R#!3$rkIVBdg7`)(j0_GkZ?p0jrGu>3PK~fB|7@hcRj%} z=dH&iPstcIZR?UJYCi8I3(+iA2J4Y5BE+dHJX0CXiIPR(dK{0toI<$bi1GdAhBr|H zu*3ueEd6G(O1j7OrYG9CZA0*kjXGQzp|wgDAV?w3L{sv;_?VC#&(R2N7^8+WMd(s% z2{2F)2@(xx7L_Lo?Qtef;GtfC;{{_zXA?VS&N#q*F1Z&Vh8?A-7|H^bz=LrZe7+q9 zohG4%7eJcoHlh~9U(c!HWoNU4(>D2)XcvCHsMHh>Tma)LKoH8l^i zM5wrvA5Z4s@e<<`3p?bYZ4skr*mRkd_DZN}XT`uS(ogiexT#`{Y4#bg6~CH@-zbV{ zIcuA3d1Q|~wbpVN4=N-`~?VNv9Q!$X1*dY+EEYqs9xMRJ5^ z)fp%Wz_3kKVcWGS(y(FCYM7H6VFHrDl_pVwy+%OIk9t{MMo?)$+s$k)P`@%uO)G9& z@gw;76qNAdn36!QK?{XKXYUGC8|YkFjUE=dbS&+$^}#OvY*Yj*nGwavv&2MiR@yXF zd2?-xb>+~^zY!x1e{Cxz^M!alqZ z_>N+%31{%DILJ1#C}$2=Cw00sSfrcGYdbfQwGdgFP!UcO7W?I;%6BT&!#1KY4AJw=G zM;R(paCj&$XpmzL-~m-|6KcbPCK>9=2`M)!a~%V~m7qJ^G$mLX@+NRnk{ORiX+tIS zWZzzc5*_+hGK6>yV~!>RkXnS4$rHGvv{LM%*7xlAQ1br;j}d~ir`+6lO%V>(F2eckD znrzr~BGWvN{6(TmsC@4NbIqfR{QJT{cQMZ=yu`|ySwf>k$t%Sf0~jZOFmFgV)T=z> zl(_%^$Tgy=#(<*_MxO+?^X5iR=DBToo}V6qu|?IVE}b_{j#o+MqNM^HxzQ!g27nFF zClrqo%QgjO7Idx}%S$o~(a>;vCh^$n zF|0tE(~I3e?Ccz4o1K;7KKhz73hVdqf{;)k9WE!``9@D0K|Xw)-NOCXH7^FYfinJ87JqLFTa{xo!|if z7{GsXz;Nld%NX$#V3J;fHv@l{&&d^E?-YF+PyS+Yx<*veiS$VLQG9@g^uVA- z!_plUy9VHwxc$NcQ9GI^k6235<0A+E(R}=s+)emODvD5TTdpCWFMM`qvFwgnYQ9GW z^EFOA`ZclMzx-Hr`jlWA53F$Y7_Jt^k^YoCci>)(_s=(1`2%xOlqO=X+AUMZR?P@l=UrtAEw_r=v=# zSDAGG=Hi+AC!~t0(Wi^m@U2HF>MQQHtZhwboSFC!dtSW=@V247=%d5i=L?;d*ijC_Hzg)^4y<9->hfR z?R>ES0;S`xSOnS5PcJb_}6^y=hQX>)TONFW|fj}wCEvMsL4jwD$u!1bu#j`6! zfkD8s^XfraKBX7bDT(d2j(I{mIJa*QFs1fSo0VSFc1qlRC-q0LrSK;`-6>vl7aprC z``yw@V(RkzENxvhJ|Iq_`0!s{$B`?s?DL@ay_oUI@YTjVDxT^=rsn)>d0%R>Cx7T5 z+miNCgjOzW~-OI7O{Z96yasBW@ zfeFaG)5uR)Zqjbf<0V!S8Xp?o2C)5AfU=&4KF}U|vWe$JtvPTRFuA2TZUdunF(jFL zjk3a#Fq^=bBRAXu?W<7kaawG4kp@XSEcc;or|{f)GHh=={ldkB090j0_Soe|F#IM7 z09P;a?c&tVOq1sWFQ9<=2%EzAQRJJnk*rc?zvajX5F3+zCVSwyb5m@3u_T3-ykY1x zK*`L|nE;F}4u>yQ;gICwa9}^B+Os(Ao6NXq)srT`3%%8w)oT`j9BsgH^4}w;csvRO zrJZw(x-me6q`hVXxyLXtukVaYfd?jGmp@8{%`1U(F~-KN!Ix5vn!#gwEo%vr2&m_% zGaK|(0x_a^^+3A6cX~jWbl91a!X~PN?+=^@To5G>=bV0> z$j_v4f6hpd;{`0{k}NCbbs_G5h^8o}I->3*eJ(**l{f3JS3`6DiJI;=+UvJ=GB^cY>9yR@0xqJm+_;=V#9fSi&k z(;?wI{^QY*N|`K;7K89P6fmNBFM(k_l{3KR0}b4G22Ye%VaCa{?WSSDK1Ysgp-ut2 z1eIb;%*@R@`FWSbGU>@K3VL7H&F?MZkR6E6e83+$%8)SlRcxvqYMTCU( zEr27Y_F$C2&Tc)O`2!BZZQBCvgAEP*3f?4^A*h6ZGKm)^QCPlLA&3j!AdH|_lTwr* z`qDbV!zoh|aSWCMPJ$az_~%zH7$^(EIJ-RN5yykh*U(OFCzpp~&B!f~%KA~7L?Q26 zz$+=R&aSUO%=K&>RvN!=V@F7WkI*S}%wtECt|YRHOk6?F_jc@_a_K6*-VC}pRi^{9 zj7BQN&X~8|U)Nd;0^To<38uo<>%)&pMv^%lXZJ-|S zp2@^8KtBV0RC5zTDGoaE@k=^0bWv-n*JNcH^#Hm7Se{T&V%Y0*;QC_q1aPHc)Q9AZhG8GFd?)AK7w7v_dD zWe&n2RY*^oBX zg;3!1_4?I@^RL}p5dt_v>ngt;ObMn8Hl?N2Lx z&tte5h$BAd@#4Sp2yoBbncUtlt#8@0h^lCFZ$L0}t8}U*nDPkZEYdpK-{@jRtkE8; z!&qk=QXzG6p*BC+1gRSxVv4f;TsS1NCnHU-0vCN2u}f>o2nyq8CxR276bEkFnv34_ z-#EmQWW%T9O#8uc3CFfs9=u}^Zo#td`<((cN}kipwKhs&3_vzw!0Kf3az|J~){$uf_Ao3Tm@ zV&_tDdFOPL&3=!+a>mZ*S4z*0ddLle+82;5S^70y%lF=1Or^%}4JGDTA~pMyjRO4J zR>!TJk=RWLiZUT4f4DOL?+^ar*(lSiP=By;<0Noi;0Vg`$% zi~lS40!&2njP~v5f7{q`|AMpguj(aK+4{ZZ(b1^uo(+Ol=b+JQB!ca~(6hI*x*@|4 zOySXu@%ajyzptLW-?@jRv*eGn$!FV_c7FM4vGk-n3*u=o&+Y8pxrAzRZ<(0<;xhS{ zKfilO`n_CgXr3$*FMRLf=6i>)HCA4VpJ33lyAZy6aWqCg2s5nzbbY08lKsNGlb#{Y zm7#h;qEot`u=qdD-}c0(`cR@2=&mm69mAxO2cbVK4CkFYi4?YK%<&7(M3*L%0!@3nQ zRNCal?bj|ZM!8}T-)b~d&-MIXY`SQjj1e$&EC_Guzbqa%sb=d;Nt5KV*a&T?FZH%q5qZ4<@*q9Z3WXTIwLB} zpG;#SXR9xPq?O($e#|_h{#oDk;tACRmIs|nJd?x=(3DMIU>6o%bD0Uh4p7 z@BjWMZ2Mp`j-`tKxtL*al`?KGC z0xRg@uaTK5~NXz^km{F^k23*#Hz>3{N0__g^nra3?3s!6^Bncx$jCC=V#Y4I;f zf_{04e6@7pk-G7m%Srz>_Dumx-kt4Edp7N*f$KOcXx_J_%%m?2|$I1WXiO(vcvQdH8> z+KE6Kj@d2mm6-5DAN0YI8C`(V8ulP6JQuM*W?slX8lp15h}}jC3|D%}j>RX|vp3DImXE;6*40v`Aw>LAaC-vJ)kr z3G+OsvaWEViP3W4!U7lgny@rXiid`0KTUb@fO8f$HI@q8d4D_#@;+b){S~AU zs1!3|%iLsjPF5Z~{ST@SkTs+&fmhK?V&^ZKgr)jex7$RbD)KG7#wbqMx?R*+ibbKi zH&r<5K?tB79vx?Vq8RZ(8puFA!a#s^R9spoTaU{w&!6+F{)PB9TuJ)gSt@#Bixg$L z`?Lj&8Mnbqy|J-DWM2M?g5yghDytFZvDAPf2f}=Kn40PN9$0r#=jwSMb+AzkJ;Sv) zP|0;;O0NT#b~;T>CYr((>t&c5@OX;=7~ZHX2;KA}$AfP+Qy^2u%=oS_^^CcU_z3M& zNPW2@rJqArsc4vsmxduGvd|WWRMV^@%z?;$#C}CB*JM6GY!6HX&R+M(p^q)38&jWi zbe@ok&_S1E6N?d0D}%707u~JwkxnI_xisSxr2XnbtfY(k?ODd?m6YN;!jZ*uxaefu z0i^aJNtPKddqc^~T8K-Mv>$uWwJ#QMn)e}|Pb-hGVa%OyC#eMDowdGK#(P#*KJ4yp0f!5%MR`^T6?P7Cl@!wgT4gv5;;|!TjGxRy zS_;&05E`P-ZC9V>+xo5f&>NYOozDgTjaNisqQgy;fLWy}<@g05K93a3Mx2~_ElN<4 z*W$ZV0lH}nU3b8&TZxI-@YHc*MTkoHz32!#@oc;-3zQk>Hb4OFty6r;6_N%4LF+vD zyo~CM&`=L?clz3(w=#~iw#nl`BG&4-&jAV%b>Pfx19&&w)V)-nIR>h+8K5@47L1SP z#y&phrhPf`t)ZJky$OGp1j#@k%tfgEz%h%zksa8uw_qy ziD_e&hOX?n%~Mvy3EAi_Jw$ znYrmWyj*x=P)}Uof6rM`@`>o7l`90-Jh*E@SogS#JH6CGDVIzrXEQb_$P-8HPrYIO z48V_-z`;*zl{VMn3fL45+-xpLSSLL8xTHjeWLUVi7`w@Tgm_2V&}RE9>3Awf>xpf$ zHy6Z!aoWQqr*JMG_VEski9? zIXsq=(6C()<>`_zO7lv{(FpXG2zaKI(+ijOlLgfDQ^R8f<_*yQL#(73!N{gHA4zA{%iL0%?Qac_ zvsY%gB)OAUUf^b>T30Gk&YKhXxbnz~J+dcGEl! z2H#?#1sic0cKl_DTKW7|zaA2-UDm!oVp?Z@hZ7eHk3uF}7JkgH>c9BuBlG%r#7N|{ zoL`8t>yY0%&G|Y@&lf{MNfonZX8h~rkl`+T&i@ipN9@nB;o=`nME-QIIxPWR2byV` zDu<7J_8;CkNCpgc{NKH_?d@HPR%P6wmoG61{5ZH7+wRj9Y@d=cYuLMoZ_nmePRV|@ z+MT?}sPIg-laY784OT7}PKs*g)f8rI`K610118W9YulLI3865LtUfF~+_AT-e8+@e zUB^D#50ZEPzrk2~=f$@JPNUhE@d7>QBT?eyY;0}3e256wj@Ms_4CGk^>Yhsvuk^H+ zgT{6yG5wNB&90;BLFIo3Jx-;oYF~Q=3}ByM>f^QR>w$QCqbB?YfxSB3Y%GNTnF9pH zscL1N%BXm|@Zf84I0!S>PL7E9x9h2QqF~oM77mN~Td8F}X>P?m1drv*7pJ3ZpQ^KT zBNefh+UbV&c{Xk~VI|hMmWG@>*${{Z)dp$r16|bN9u< z1+bfrv`uZX{hmfGyz`!%yYiLy6kpMg9_JX{U{|b6;F_NVTTN#!x1VTu*!?4KLdTemMdy{HiQFHm2??2U8DvWC`T6 zp)s+>Vct@fGT_lVH>bK7=Y7akX0m81`flOZaIMcLKe(GKcqd^R&`!#e{BS*qkM8&W z?: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%0A`A_|evi-+8(WdIm487Nvn64y$<(kNTzb>*g83 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 z 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≧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�J0^9?d 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

Kd$W0zXI0M z9m278YSKI)ti|j#fm#x0q)9aFjv14v0|cG`L_{bdzGE%+N9b@7<10KuM>UWi{1Lw; zu&mnK*@ykuYCmcP93s#jd!P$ND~#fWQ-t;si|dRQYb^dg+{kJ5Y8*|r;6=Omn-<$1 zg{gs*>YA54D^M5S8iRg|Jto0K;dWavNg}Mo!SKA!WQ3!oAooMJw{WWgE3dEK7Nv!H zq`e!x(eimV>b#RvrRvBJG*@C@M30i-aJ%-kjQL@D43|j`erp#JqEh)2)mnw zGDWV?l4hkD?-~}R%|Phq^4`#DrI7@6c7!k1eZD--FHf6X^z5;dH@VnFpy5hjK={K& z%_@+z$&)c9gOkTOCojcI!jNBaKVmfJ-8p4H_)Sa zgZn=4Ks{{dz%Gc9rXYI+xQkd7(xwEp=+?(b*#M>)cR8!QL$FSKcx|XPWa^eVfQo-U98ieA>}bP6W3x! zTMhTR!|rCpfxsi6-hf^vNJ}k(UB~2Xs?cK8>5eZov7$*w$HQ>n$i8iD_Zd?Xv0S9v zxeT1*QZC~~TMT(i%}I)|jPr&uNFDvMOHgS!G+7}-gROl*;{ggHyrAKcGQz-OxWTOA zL62_;0RMP63TGW@;$Vj}ueQiccZD#mV%Ok67%6aw5kw7|mrry*FxA*0fbt4tlA+3Z zIrozsE|dqR#7Dd0%b3p+*M|MBsRAz1_~Oz0#o#3*AdMwumJVY5Kx%n-T07cbaJINo za0TuR=v+U|2M+7EgJU)Bq_JbGj`za=|07%c>572%i|t4N@RXwLo{ZotXX^L`vJUFg z>3Mq_(awkXGdDH{Bkz#wB$S}5D-J~9iX=3KtJhY{_-=K#KBGHA)(S@jHg&!MJxR5y zC$GdN@Ojq_DdDjNNAj^hgh}}(ol-Hq!DL2eAE+_dgU?5SRgm9>25eyX@czh8HWpcx zGsCYyQtLWjz9@WEmkz6uNYvW+yjluKX;1_WNF=@#-t}mf`mLza#!`AH5r&O(-jV@kB zd)$bh`ngnq3QJwLFdawgwZv*dAlcUVg;XiT!mcp(hOf?tPoop9+xwhi=C>DxNHie4 z-!qyvg{Q&H=_VI8IRaq{Gq$jgiqD(YH4?~!&`VLKN<<#YFU4r-MN9)lSQD6HI@_v& z`?u-jiBO8kGui~F<${xr8^0NkY=-`V-rWYrWJM<5134kJD<#w1g4qAysCzv(brL5j zYo-#Zho=Fy__bZc610;{8JI*xSKZn6xcy!wWpwZn@iV+@#WAJN{~IhJ2z2r{L0 z#eM=jh39fq!9&X-7S#QA-n`*NeDrQDicA{K5*Hex=X#}P+_(s%vt&Kco^8=1QQw@2 zsP1+Hz^ek5UkY+HV+Zl##AEr_+^IsF7ZMQ=KHI1cNzlA&_>@3?yCtgF(zu0?t`y2_9+NEv~}W5F?&gm-e{b-^4%SldN(bnufG&zkRxyqz0eUF=r@QkOSz#KG^2!iAni zd6R^~$;so;h01_B=Z#-?>^OuVv2AuK!fD?$8_HJ(K{%2%o!MMEoO%Y5akd5c!o$q`~s1U_T%v6xt> zyg*sJ<_#ecI)xgWW4PHK0L9zX^{?T8)8u8XBIS4r3)eA#ekEMT2Mfa={5{L{`=d!&@XME;kdX`rmioR=w;p49mkFj5=8B z7o*a0*6(FNwzi3u4hF--Tm(_?=p7S9T@Snh&NlH>pPDWKNJMv)Uxdz?Xu9RnFswsB zZ9HGK0akcwknptAU~{Rbb>cemNmdgKMV`7k^i}9WAE$xy3JQSe^fR&1tHexvY=+b@ zi~`Fky-`TMz`zgfwp`?Z63T10{x-hKI3fG6j0?c;I+&k=YVrn1$mAtw`4na0CtK0ya@o-4F<;6C0Cp zT#A!U(N?0JKAh5^yRyg6Ozu%B=i;PYN~b%MUvIg6#03J30tJwF>h?0)4nJBSCX8op zg%-gSz{gz}bGDGD#b4U$bc<+({NI%SRWJ89CxD~ecFTbA3-?Gg4Eq5729GVM6#;Xc zh`HXHQ`W$i0wKqk@4HtorsPaa)g^A(l`>vHBxNs_7?M749fLG$^1JL;@Eo8T>Mx+- z|3%Jg;oMP|{@%nO2;3t?;?w-4nP~}r3x?1mva|R)88pBxxN|jw@}hVaQkSqdf07QosP7Yg|~WnW9=j8WK3txpqa*a#Br0+ z#`$@_oN)B0pmNm{@|NBL5cDZvSD<#>9x&m_FoK_hMl7O0aKZk?mUnj?lsM;AkYNN+ z({p+iGyP^O0O2Q8avEY?(@^fs!b}^sD9x9je(fUQ?8q2Yh646AFCo~!qHQATn_&(& zLA+ovJ&&b7LPIN{FfV$|`Id?o?A7wqFUf+-+DRiiJgsr==y?;EsZYE1UqSd%7( z{S;2n`gy`~pqh`NT@nhv88Z`zGL#XP577BE3^8!L@*H$&Cjdt`WkTas7=ZZtyZLls zG;%T6VZDD69B=C}xQCEaG{uIR)G^O8Gie|}#|~i12hHd^ZuNi|`h-3?$$31-&Z$w4 zf_oCpx-x+r1T=N*PEj=`u}ujo3_CB2U(n%MSZ8o>{qcV52?KzCayXTSdvh~7<(0ln z?()vaoSGitS}aiav3LR|*%&xGaikEqDkaI{5|o~`f3LbV3ONGAk`ZU7y$Py8L96eK*Nz*88pVW2g<8U#go4E)V4x&e$) z?~{X!sGl;9huNlUZHCaWhEw`ECHS{>s$5mw<|OXIHtV^-lK!uNPx-C>_-X*E1<@WT z%S0y6-uyQ`F6{Y`1Gz>BDfb-x#yg7$`Rd`oqv*wV$!L@a5+Wd02@LwPonCw37zs!y z%I_G=s&Hf{=SIUL3h2HM6|f~imB#)EU^EtovAZ|0UE+5cW-+M zn81Kybj7KLZVrS9dg;&E%S9#O0)Oo)C_|KC6Up(ss5Q%uRcLOz(Mvs%qbTD zQTg-SEV}=tYbvDsaK1(7!kiDN??3VIv0VO;!n}o*h=iDk8GNOA4o&(Ne3p_yG z{L>c}uY-M?%Zah_4E}6NnRAY0M|?f)dXRtPou1)9$N(1#fvLkk4}PePOV@}78+3vm z;v4w>Y^c@kI?8?|ax}{+jUUfkY5uslfTFa4I-Uoxy=TLa_LQF!CsBG*&Ek|W**f&Y zLyfUP^axX*oIO4jxVCPkkw^4-@I(CzKl54M)rJxQBaq3SRh$l8zs@1!^blS@cAG0# zTY(ZZHA5IcBmdp$)(IaN0iyLxI1y>BjrPcPkf$#}vtE=!{{;O%sSGe%DK3lH<7RLf z+0 z^`&#x*n3H4aiV+D17mU2c7|*=G3m8YrBy+XNhJ{D_gcgXyGP@cN`lO2b>{79V%x0y zT8@fL&g|Hc=a)c<6GmtuE zEHn(6RVwgba%e;wS!k;YFjr)Pdsbtrc)+Q00LlbI-*`=%VFxpLEd?R@)^sK-3!r(C z(ndgs;eiG1KFIED8uQ(!Nd@3g1u#`VeGtpBULY|Hc$U9DD(w5S^V$@sbr$S6yw-aM z^dJ5AG1W^$nB{5KOvc;;FtQeCI>7zHlZ7Jhq$6@;oaSI(b^Iii&Fg&lVs&*a4b%~0 z-tfWw8Is|aj}r)aL$)%RYwB@2=If8Ct;(r(Myw5QX+sP!`#jRx zT`C`raRqsM7(9I?!uErhzVIk)?#;19yO4k%&HAsOQyB@nnGCI_PlYMve@6PvxU*<) zD5sg8{7rapX+xS#1n3lWTnygFU9!2K8R<5eu@CX%1;L1r{S^3F>hVse`3qOUfGPD7 zIBN@+BkbtM;q~QG0lAQB5;6+&O~qK&Db3=87a z3SU^hQ+^beb*l}#jm{B3lC2(70D~lS%eT96DvSV=ZB5vZS+fjfjt7B z;Dy;uSd(+mL&A*LZW^QLN(RT4UuetsL$s;G0CpGUfq5(WwMD`G#EU6WXxG})5dK2m>PPc4M2NNvr|013(kX^kNv8>w zyH`O4*{*k@`ol;nh8&_>>D5YiK%d@^ykh8)z<-$jEZm)3&<*n;us|kn=AQHp`?3W+ z+J&@p3PC*O?uE~KUg#L1lkEd6o(o1!o8oZ#VNTF574S^)+d)%=#G9e?_?6fwmlGOf zlRgIjpimti)y99oZ$sTFx%Z{cxH+Gcd^`#4ygW1H=tdMkdc z65pbtn%`7HIr9GxwDUI$b$v+|gE0F9InUb;Gwd22ckFlpJipd6)9J zYSMp&<2ML3z@!+@t#>*y3knFvOJet}v9$0LQ!RByvg01{RNj7%YVHRN`zGG|OeVrH z2tmTrqU&F@R9pm)r-{P7HjdKtj0Tt>!$VTi{&B}0OcBT`$&aS4fz(4&JycUhmvSt^ zXGlO}?R$zFs-9SjnElGo>v)^<$ir2%z=6ckqNZ|d13M%8%FD%jw)8q-s{}i#CC~au zkvKStf$?8*qR`{+azbvB@LYFRj|`bhXYqJ>{TM8#pkNP25@3tFPc_BqylJOH1)}@j zYV5A4W&qfKkj*ck3FvHe;;)~mDipl{m8tk=AXPgg_8&~A=y1Ah>_prv!|Fg{qt-GD zlp77CJE%5O7tu@0EwcP1}FM%#Mc z8@|8~*b5~&d=ONK{m{T0&3@VV>VyFwp&PpOq6~kb$MF^1D74S@Z zDOZg|y4jrvIBc=Ay)myr=Ac!r zCiCfR@WL>57L}u>f0YVz_q|6}CWvSf;nZBrnzfVjoY+VNqm~%8FW?PfUPsmmY*gv3 zTj5JNEqrhjk({Q5Oq;(Qc(4J!Aj9WYAypb(5am0Jt5--wK6KmZ%zDtx?`=o!&Xq)F zpDHPni!Trwon|=CKAeu#*RE!-8;+-iKb~|NJElww= z;MJ{u%crYtz+_}@+kT>tVj_4;OxfWK&~DuazgEUJT6_x&q}?A6<;fgb&_T8t%L>TAw>|n| zJQRt7H|+|!zL16jlN~+#s>M_zL&$)a11$r|)P0YB7*fejN=y2Ct>{>2-wl(;igS7% z8&T2S1p7XD+LA&UT0aPVF zQ!-O_fL{gmCMyI)@cEtFxd0Pnd*cW*7oP;C#uzPV?BwuqFYwsgf_IyO6G#nY|RNyzn&xvbABrL9>RPXpp99x-5IZ)UIr zV)*dWzQ4hy^~6%n0gW}UI!sCFPfsTtRD;NJVN0-=vgbgNm#z%Ya$FcNGt+qs3=)g( z>pzG}Qd}T9xWr{*BAMz~QhJ>S=_Y-%Ff^fYt+^3;tFV?1&+hGX{~%l;hVWDR9Oter zS#zsR@MrZ3X9*0wWw7Tqul3G8_R-RrA#ubGYh2j#;iTH`w%3oXpSM6CZWJ`A)rmspwbbakiV4d{7$4ttMwk>!A91wusC@$BL7G5{gtevaP+?e)g%ovH)7o*jUl*d zLrw2Ke}bUR_m7_{j2ybQFz|fiITY?mprq_sW?Ll~JY_Qw66H$&bh}+9) zwJG&x1vtDf6HnKSF7g`c-J!0+^k^W;i$@cRc7ReraTT6g^uW3CGemWF3~ZAY1MLur)vNeCyc_YxfS4Sdy4>2QFHIg8E2H|x!E#gXuEc}oqoYnW9$CoW0%kM2a0{e_BKr!5B9|H!r*j+=zxl>tp<0NKg)RhcFr#?A4h0o2|uz}}LEi3Rn9l%dXiuo=E zDw@Mf+sdy#?k+tD@JI2*@Yyh)YTTYnN!ep9bJZ(J@F(^}#6iTFqNv zD*v3?+4v-_dRxXKJV4X$8Hx27GzpIG3{f#ImYk@Bk-v(t7x#QoM90qX3!?zM8o4=% zs!90f>+VeN<R+AHrRY;Zm}5rD3{G5e)6bq2}8KZuia>U2!V+52*jDo?@NJ)L1^ z`JUwlxc*iLW4{22ipzod`sS6;_lDaVpZTl~9X|R2`EiUXhdQKm2|I(*<1+^{&9i}-VUn91zn<@oub1c4(;>s9g3mAR z$I2axI?f4J__tcQZX4+g^pDT*^+c0|CX@}Nu>)4QiK~!UU>B^xCpZS=TlzO7E+x6;SGC- zulJCHb{wh3wZ&_`UFRa7QW-u>Tvu9dw9-0#3!*x^y{*Sd;38GCy%ZmBrJz-il-=6C z+@|`sEaR`QON7{#Or3Cyfq0Afn7p@5!inKayEOh%eX>UVg(RCI%}>bd96JKNI6<}PwhhW zR>R7xS~e#g$yZi8NUW%bdy{&S2{`}=laThA57sKZ?Wq_37?muam$ZA^HK9lBgV#w5 zd6em*r@>ujpLVqQX*(|og`i^GjM|9U0N}?s`>RyxacTNjRbw=y^U&yEF!1zp;Zqar zF_0Dj4!0*YfBI(+GAh55!<3f{m`VySsmjIm>eoL?76$E8k6C|6+FCz0L@uC9%p3~k z>2CFAG7@&?g6+oe6=EW=m)*@~S9ts4Oy=>%6|Wp2+*Wb6(XIW_n%^r?va zn<7K|4J02*n#(eG$Ti5XuPEm_XGPz@|M3ubJsi!gRqykoX`DSu3P2k=>zwX>0H5IV zUdaE6hV^Rgqd^z@$h5gL-skhmtx{QD=8By zMmQXVJLdzN?^fos(Gm2cQ+If~k^PGIqpIfhlKlI642^xQds(*CsCp99vcz_Am# zTkcQSKxMU{%7c}5%x_!TUqkwIS5!h=_c|O3xWxSERqi6_Bit0n_6UD)az&R&j?mQr z9Cjk|Ru|cB)zaBZWJ$jKxq&X#571QjTs7yN+XU)y|)j?7O`I zYLQoh@%VWR`Q;qie_??AamkqVD!23}%@rY}kf#S=qQ6oWr%_R@k$4nQ=P1eE-rD32)`O(CG zFlzk28yHUCaPXO>Ebua}5v;zMlJ!2l9s#sY*=`LNnO!{S-$0~z?R2OVHd{0Pz#m{K zV=J)`yP2b`2Rh8po{s2y&~$o(`FLe8;a(bNQM3%m9&;qc(qu=7wQEW06{dDG75DI# zMwgD3-a{kNOtZ8+=;&-}%0*oHhjPEqjeaaHzF9b(^+!WT0C^J?-6rx}>6VlQqvq}x zGa!t4{RWg{nIA?p&M{~sK$?!;?-KRy zqg&rPuFK7obLxs~6kyyWAqKnT;xQDs<9}W~Z51+R-z@D9;mhyB+gYTV+sThDEReFk z#DM>bm)P2@BktVjlQ!+o@lvyK^)x{q*T~5vDPPLRXCmLeQ;lBH!X%L>#g3pWdtx*Y z3UHCPZ@q+)U~2#UZ>zA_`oWyUTU7ZsPA5sbDzkj2spP<<3b)%0KQl+?wGZk!-aIg$ ziRND8daY#u`25$r*z$$RkqM#_V*JX2P!x*VPoV-a*w?`$P*?WK?{|?07R4gO74P`hZU?KjQ_$SYv;d(N%y6>fv964e-I(ac=_KfQXVNUnSyrMzRNl2zbwygF=J1w+M< z7ASWpk(A^iFiV_5bTfF6(eHm#soYm5X$$jP#IQVG_G~L0h&R2mI0 zKDBwt5eMY@SK|RONh-y^Y=AXRdwD9MH7ppXqcf8Lvf2uz2JN3_i^w#q-ARrU9FLcl zLNA8FPC6Mt=tkhPNqcK&2Qp`N7Xt{9L+jT|9*++6X#exk(K=3_{WFOjlb>~6I?@S- zjq_9=znxwn)4;l1lAe*B|CEQ(%z^FsJ1WvzRulV4!s5;NihN0y#1%kMHK zus~_i4z^2%DZV_9jR*e59rIX?mTK8Ib03&9_?1Cs<>` zBqMFUG{SR~a8q_;A7tu96H=_S2tBwXCh8=&nmp>$r1Mg3Oq8$ZFjN#l1-1Koi zg|j`?FwMX=$T!df>tfqq;!9siU+mGd34XfMJxTxaQFFZ3|MJ)PSW>a5-Y^*G`iTLo%BPhf zw+rX|XT8eW3Dkq@qDw@T=HhF&=nX)4rk%kxck`AKh};M)3_dYW=K0Tt{ho>H&4LUe9kLfP(yU+ z;V2MKeWxvLua6QT*0RV^sx+_jXm}3WyAN74q4S5QnLzRdI1+do%v40?H0e?dDk!(J z7w3un6*nEWe~3O$1~;qG+r)bx%R0u1TZLR`WY#c>@ygL(9@0)c|0@1#miwIA?evHptP z7YbZ7aJ1DmVr&A&Dr`mRBrq`lf#K|YOY)ab%y@IiouAb^CYLyIb#vj2&5gVvF1hyz%nE8dw;sPvbe8Ck-695X;6vZLE`;s_+h&3al0vl z;Y!aYD^cbw5F7*MUjGUjgND4sdWAnKorMf1G!yZp$@v_-*PI}@Pi8LJ;ju#t5&;DF zFIPYHgI~kzK&dQ0(&~cefXNyh`1$j9WA>gD2v(BOD6%*hUE7(W=tZE$%@90eD+|Ga zgC4Nx1|FYMb~fd;0LsGF%Z9;e@l} zgo!W0d0y8?@Tc!F#d;6a5wj8wip3s-h#L9Wl(HlGGF-Yyk>f{^I(dPgkHuu1a}8e$ z26Kj#vLMD`J97irJ)C=YD^xN%k6vr@p7>fPC8kON$75^z&%`h1SD#%za@1)ogpQR8 z)DO^T$J6moF|{?lFsIsEkvT(LvZ6O^LgmE}gN)-K%%i1Fn7V5|1R}-bnX(ncX)HS- zuRlvb^B}7gxRV3L(GQ}ttL-(KjAj<3I6!wSe0e;z-6no|Jhl58Ev@vA<6VaHGJJNk9d(*_lNlX&Fa4 z8*0(s&|N%w*tS2PoV%iEj9@nL<(rlo;t>WRf_mWCbv}8{CkHVdkEy3@XbeIH!(keU zLS5y6ng++sZ}O!* zVm^{IuFzO|Ix}~^^U2)BYz2-gS@C>{EW{AAi(SyjN&q`6NR6d~=YEAxRQ}zFlHT-2 z&UV@X|A*ZsNhoO}V^;^)_5-GL;!Q?{+1V9)&eP1mHDDU%7}@vgRq+Euxj6<8Sm1M= zp}J!gaDL(u1eG~+Nef^o8|?if<7NjB1`Z7v;p1Uei}pcp6RJ_C664Yb3;hdCB3s>m z;v+C%;JpgB8JNXL<@`hn*$x-##m`Va}47nbs;$w{Fzj=XhT#zIqLU)c7#zJrwomI=M(JAF#p zkjfeeLYD10ZEDwq|0;@7k@Tj*jWEl?tdAI=S_fFB&tmEG*RM+ITVWLUwHK{^T4YQN zwgm8PJaha9@SXpkqW6lCEIrfoj`t@{cps4&>3vpKmhY-!J2snSlLI=9AvH6YT|p2e zNLK=MHyGVWfB->PTI|d&u-e%j!`Y>6ve|5Js;a9h%cQrF;k`TF8~wbln+jyaIsgBC z@B2K*m4lgSl=mIni0Fg4r*rj?O*i)|#q%7Gr4HT%b83#>B}0$GSmAN_2>fF#t0#Yc zQTT`2V&ka1H5vo)XA|JYB|IX05k6CupH_nyC||x^P=~*Gw9Me4wgTANacl{)9PFCR z5W|xGOc<{JN%A=mGH6|A-zLX-XNX$&eoKUab(gv%&vX4xbHT@yP(Bdi)~SADG@#?& z)o7pyx!$){c5A${c`i?#Q`6Lq3q)$%-~qM!VDLK81|EaYqO)UY$j+qsG;5hBwkgEhfl0^9P=)Sdp9;u-8!n{sL-wY2&uNvJTqdJ;3I&8Djzp?Z8kWhtL;GmFLAcWOPjsoO63G7ERE*UyelL z<%q|CYNds@fQ!o=OUreh0)dpFDW_e}0mcewVn_R%0z?I;Cwcb}x*2YjlD1Ns;i zc>8fq=Gn}2;L-i%OOFrj5#6gDm<&MAy1!;uM%r)3+2x(5$sgG_1L!>IPh zE54q%IHv}`Ya=ugD7$v@AXPnO?_shr(MDAm4u@mi<`mgQvGm$wYi)2HKKSv)Fh~eh z(VeoxHYr%Q1K>^))B{YP|1$s8;ivS@vEr4MF9P;#XuvVEU8B=FJ9cISB%G8};oc`K z6Pq??Vwc85caqg{qO)%8M8>D`i+RAH)@=!&lESlekfLSc3>9%oq}d3J@U05VJFj2ZGlN+-HRVmuZHk?H|EzS;trzK-hd5|EfOk-x4+;*;bg5*q+C ziT6F>qX56J#Zrm(=Ez)em$NL$rGmXr5+yyP6v>zAQ*guo+Hi6&DD0igd;QG1#hHnS zeNp;*CwX&N=t9UZPAAQE=Lh-darPw9;A4RqCPUyB;xXf}O;3Nb-!HbO^;{o(>)0EI zRy4*a?S>(%xomKTGbe+f)Gg$=z=_Kt1pWy22RSnax8;GI7~cl7!|ZeQoU-KYb3Kv#}iu>>Taqm;KB0u3zG+X4bb%D(Z%-R{G_K@gd%FHK^GnXAT{ zA*#{T>*qbF;R1 z%K6b-l@r|fb7UmNg2?n-di)I_s7!=Tv6HJIzx6Ci`aJPRFLLbaJ_BPx zib4#B+Xi&7=|Z$AHw`jeZ%L!<)#Ts@8ysNqBlCu@)@=F;P2xvis-AYCsKwND`L<6X z-ng0FRPBCF?&c;b88H+S4dV-@9zX})?@k*WuoGCmHSpf(A;kDtel`{FPK%@na^gLSR`hb+1Bk; zDr)TS#SkN=V!5e_TOGHT9P0jfnh5s!@sN#04jUolbOtq;V|pub5Nm>*=QlnKZE$By zNt(Gcy*&s|V=vVTH&!enof>yacRN=z-cOaUU9Ii|3>FRq40hE0J16>nZ(_`rg7k z78?lhw*2!~ygS79cuq)}52!^e<+X_n(G)owhx1lK|Yiz2M-(#=z)? zxP<{>Y4axK;hA}O00Uz6l(fPcJ_JJ23qpvb<7??XH@W%jePhs8&?W=8Wzex@A&tgs;~_Mp=Ca6s6O0$8dh*M>o6 z|7GuX1*8QaE8-1F4vyN}UZsA}z2?~jA=CSx3G8_i#)Hm&ty#O*GKg+7DG{wrf(7;9 zo%zt!Sl;}19y^_+6BG`RNd3a-{>J6bD%unxTnxrNMEe0yR$zSI@EDGvuarq~=>od5 zFs}9)qdA$X#PnNXe;_9tCwdH*e27Sy6!m9`sVmIfM11X4{Q;DO+nzE8u#PlZlZgHR zC5iWKKb#S=WZjLn&Qg-TFGtIqEWgAUI!s(z+QH3gM)bTfr_GGABK+lXQlR zUYXg8#?iL?hKxTq;$+ujrMBQVzlO9VG9GO{q_&z15yW^IxxUso8tlu-@!5V3?PWJmMD{fqq(&U8Yfr9O~ zRD=T(6MkG8mN*wio3m$>J_$^+D$;sFtU*p-oa?3X3 z^gIzZwIKpd9BBNR8UyB&=p}2tn~rtl^Xg0K5#&ds71*}psFnfA?a6P8YM8}-E=IxO zl6;s~qmlH#>Ed2I!*%dPLE#>*=Kame08%YXIeYI4TXki|Vxw}gYm8G1i&aUr7w){K zEsRMM91E)&kq*-s?SQ=VsMVv*DA@a97I61v=e|pFK8hF`{h=?KAU&LRBB@8xE8=wY zH=n;$ibIeLpXAcw?6TPyO}PKHznF*|Ej5w4b^V>EJV;I&y^LGsLYjAdA~{{`KN~g9 zxMA!*p_pDOfo$1C8qU7iIm~7VR3iP*aP(?qXosFj8N~d0aPyM>6tdFn!s)XuU}eoi z`^+p4g>#4RcMPN z$He`VQ)BR=Mq*Lt_Z>(^0pu>H3^sU4eVFDcKL|rU71jLKVFuTj$qqv>(Fk6yTV%Nx zkj>sgjEGsGQ7dUC0cCgYso6)6Pnsxs0TOl1-jdVV0)XU8pN zHXHUS6?X7}=#q*$;)lO(Vm)OCzPfaT1`CU&#-9kIal-~G(Ui0NISTi?e|_vsB(VBN z=1{m^i^W|kJ-WkummiKKBL;q6ea{ucgLq)jSQKED6NmExA~RSriedclp$t5}rsH4J z$wr-x!XSH%FRyw_h-5`506ez4;qblHCPyoIbSjd|usf$Ic3MrAX2W4)KtOE}P#?v@ zJD=D%jgE5}A)~eZ6uQJ4P@SA6b8vYD!VH3~r1ZyTma^ETNZ_rG#|tom-Q_ z`z@`#(ulaokv;SZGj^yO8+yOzJ1hwHk*5a0qLtuRFIYI~_muG9$weS1Obq;&@Qzs; zwk)Zu4uI8KlqH|37+G@c9K<0Pw)(Mak%}K0SxovOI)hMfa=J&E#UPpd(!~(tcy}iX zb>s_V?8o}{`}&WbxKOfi3=zwB+zVLi5_%4x!;t$$npfN2xRt&NCaegxEx^ET{IScJ z^7R})>`en3W}Rs7&pm_kOuS(!U*W?baFCy&4=yTLTz6y8Icl*1;D%(K>Ruzq*U!Pz z(+6pK?cD6K>2SnZt&)j3K!y*1g(RuSM|h&6b^bv76~JhFb|&cQPAa?@xG_9ptlrMj z?u#%r;NubGjk$Si?nN59B*7Y?Bk3${=t`G+Si}aD4vZ>X`G`&!m2VsAIXK6Cn4Cz4 zO=N4M97wG&@)?Vy^^R=Jr>W2zmr2~bP)A%Oql3FkJM`xhwg7Qti~X-a!!huesabh! zE+y0=i0z**0JRi+Qq^Id-3G0<$WlLhx#eDreS(aTMNk9EC@R?Qc!(Rh0K<`$GM-_7 zNF%%KS3)m89Rh|>nCBx@2J0fO-x(K%GpA4-k5hf+<>l`COQE?i7Q$QdgYrzZ_w92K4L%@tH7rxeJ!-kIe_fL z1nAfrP*lBRYt(pgEM_MmxK9ENfpg6R-4xGwkru@M=vfqc%mVtpzXI|iIeWbw9TVye zqEF$?F7L>ZHqg1IraC8GunizrK>q z^QrzJC2zs$4CuLNx{`b@w!|EKh|&SI%biudExg>DJHLR}*g=>K{^<&PLuWlP9R;~c zq?~)3J_v`hU(HWpy$c(*b<0iCshy-2IDEY6Ua;9ne`9Q=;%X!1J=0nXr|n;#B5sMerc)Lcs`@QFFUCwGxb4(<^)oJv5QC}*L8#ecgs+WG$Za_0<g}+V zh}*^}d9N)vP^ZtZ#DSjOP3?&B^fzg=o-#K-x(6Lku7ek9oUe|;_p^~gH=Iq@lgJ!& zm`VH|yhP$-7pElc$}U2lm&2{?CdPd-Sb5C&L8JSvVX!D8CWA@icVXjEq)e2FWR?7^ zPp43xJt^yp*V3Ey=pq{|(VedS-tgy((iOPOOUBY~7(|E*G@`dL_E^ADR=0gG31C2` zdWl3IZEXhXm`)SCt_g$fwf9EOh|rg{+Cbv-qj7n#QH|qN>Bl@vCveyA zB|U&xBq4GCxP5I|*#%6j*rPlLKPL&NK;s3lEuw)3JT9~t%5;7^TIyXO@<-A1U=JxT z5KnvjrywFdq13u&XtMSUH@oShgE{H5C&cSWv~c+?;zT_kcT=;~)owD;)PA)*Q^fWi z0mjP_BrXr@8C5ZI8xy=XLo4ayVI+NO^sw+CfQ%`pCk>s+kFy0n^fG^P$aQ=vD0~%i z6Wm#pVJPkEFf!Hs@2`B1xD|Y3wsbx<{IW-*0zOQ#zWLpJavQvl+}8@@H|`aWj!$Eg zcpa49bVeR?LqsAHAmcdQ{5!lJPD`EGiw{BdOB~G*h)6Qp4I8?&{b{{`5Lm zUQB0~@5}T2MjGkKQLi;4jW}}vcNk3QC*#L_iDi$S(AH{8*Fjm&a)bgRFVs^vn5Y=n z28^AQ{{(*#zVr8LV$~U58*aft>AX;UmapJ&=vSr#v`G)950|cA4$g;6T~ud&Td93n zFNYK?rqj6>_f8J9pe9}aLvZ~v+bfH2ugnkL90IpjZ%ub!Ff{@HIG|v*n7`URkAYP| z>4b1tPdLG@MF$ygG$l*1|9PfCQ=j7(cP;riEO#z>>9Qz5CvJtgm8&bQ2# z5lR`~@`eYW;Hw>`i1&NH&rjJdPr^@82RnZwgilSA9$&=Wb+r%U!G$F zxQ-jSCTxSHwX>6s1K3-nl3P8CO%uj=;*2Cj+uOnMj2A-g>3QiWTP>39N}s zmTCCiq?0)7&y<@8fFLyM5(`Q$6|-0Wox_s{QdOZ=Gcm`sx-Pu6gTUo!YEBDJ8ausyZ>=Xj!6U*Jpd&l&} zBym!*H_W%2@!=~>OsU6#q*4Rhrh~sM<$!yBXPg{~(qp?SesCxDK{Zpt0P3;Z>7K8r zpoE{j>#=_U)2>$Ry(^{TkZ8A!wQ=H=Wi`8ZtQCHZPs`h#$Vq$S97PrS<2)4@&Mz@@ z>Nu97+>?;#%h~C&j+d7DkqeRqQ2CV2VN?9GQEqeCF* z0=T-Z!)9A%J!+bi*;%8AzO$Wt?HvCPvcbW(szpLknFRgP$*&BdQDfQy5 z=a;ue^Stz~v-O={2L}rJqwztwKAB@7TN_^@o5f=9{u_(qT*4Z)!G2k~Oq9<$e()Rp z_?_Y3lLvy}ay@58Y&MV2l93X$KT9B!?n}UiK>!J=r6qM!%VL%Od5|G&;gWP_k6TM2 z)2q#<4S!B}kw5;AZxq%L5P|?5p@TN47G^mim_&SIvhgsf)Zb~_>_YY)K{s98+zzt;P_tl)^WluBRV+n|7M+9iz!3S*`5Fg`AO!O$Z8$oY7!M zsvdS^RJxPi(`vcP)$~*j4&K>Q_;F8QJ@RMt&|*<=1PqjIjKDx1Ba0{K-t_5CK}0OK z3mV@N+#Cc;vrjE#YatUDGHIk+rD*VIa8OMA>jE>!HkTZ*p94L4{s$&GgL;`?x{y95 zEvB;e;0-&zcubmRXd#m5XX7UHc^-RKwtLpOw>}geY$=IHxH|^G~)j=eW&3}YuMedFQxl%w#SJ77Ji=09Hf3##Xwp?Wrf|y((`7@N6!f4%ht&I~ zAGOyz$y7KWL{%%dEskPHKGv|;@|o&AkSQGiE%_rVtPlOgiBE>E9@Z3tIjo0rV-`_Q zHR-gpw87i^l!H*C1(CacanxFTINyLj1Famk6dGOh`89H#o5MbV()M)jz20*!2M}q( zOW+8fkuqP7=oWTv!?4z-9T0N^eBX>*03CNSeXZOTNGF5=vc$+VnQ0rSoH`<%9&!Wl z@rSXEA3O}#_dO?mE=GAdv_cV)P@kQ7dNwuhN{C1zKaoI-U1 zgSZRJ>JxO>ULR7UEbAS!Q>FMf%N7YkG>t!0m{W^HX|OQJF791&jzqgtuVjS>IR++A z-$BnNIQ|h(Qpn@siaZyA&y>r5|JU4BFw{%1{vaiw9I5vw5)>-oqMp74y&niQgjTPo za!_<0p(=|pack0WT}J%z(zmR6Qm@y+U}U%T3PlZx06i=XZPt8JCqhFQQsCWgxv6U z{xHwi^N2Y?)5I(6#vD+;4uSB}hStNOA?$7Y@zvmei7IVUwcI7RYf}R?Wib|BqYdXg zcH9}Rj-B%9h!f`UqrlGy5UNzrKy=jtAh!+1YcJPA1Gg}$d2}+Zif0N1AJW$PgiEvr z;z%HR`@un~5-PQsZrd@rAB_f?1rr_{P`0ZC(;0v0F2H3``=J7jz{nbyvCtumZ#I!O zjasd0PKJtj$l}hkS<46GuEuUnI;%!N$SaT|m4b9Qe%+EIajtRs6ikbLaZDFJpu6B7Af&4w~X> zlLnM0z_p5(N6#pooG?jv0NsYHi=^bajI#_=m&?^DU+#ptv$0R_3+4#^w4J)Iv)}#V2kO&Nw6-I z^~)?p(!hd>GvN2vQuwF;|!93~SigFcPJM5^tHA!(+qK!x6ymZUzAD(VUz> zdFVtic9c=+CS)?5i{2 zJ|_g|d(fqsTi&Ikd_Ft4-3axP`(=U7Gp{}@MdA_K?CadSnfFsUwL3$vXWp%MkHEsh zhcdT(rWbe)oU4SrnJ@G%fS04;n>Y8#oRYGT;m!K`+%#*o8Dy6n#GPU{K$)a>*c8-3D_|1@A zN^}>tX_e{;og7^~jlK8N#L6dAtN2<7@KolpQ1Uwr3GhmN%@(E6_5HCA**~&V=n59} z!OwWYz-KJ4A~>~V|Jt)%Br}(a(0fl0LW4vIH-EPKBVm&H-W51NP`zdQ6e*!LE zh6Q)PfChnLj-^dh;$VSHgIvf8fydW1y%2xmm_g{c%hqWi&;__7oj*d6zk!Mt(OfD1 zC{dYj)tyMGpgYoR9T$TV5HPDy=h<*u4VEY8yBx zljgc4Yr-*D0J@!p-?-nF|AzRhN#ql66a!8;4a=+4K1N2rg|0?J#zUE>7Qpm#&Po(^ zPDk%EUcWCbwg%4h0G#K(E5?ZHX|Nv&u3-ZtntEXjNav(Ed#J1|RGL{tnV{Yj>A)jC z8vI%E!o2O8d%y^tku%VBO-nr2*} zB%Ab`Mz$VURtx<7k~lUxgmv@KhPwvDNysD=DIO>tTF%pip!{ZDnKsd4s9I=y9*?Y7 z{NzCU3MkRu<(_=q^5nNXLjYQONl z2G)MUCN}9#&6m+M2@_;#(3Q#fr~$PN4v0|zIBqvh9Gk;H{T7LMEfQ-Fr<1w6AQi!j zTTpX4(nj2wr{FBuI%J4wOtor*+DLok_dRd8iHRLJB^!FcHWSMZz+3uo#{3kLO~Yg? zgzKMow4?Ga3MEt>hXBzaoxQkRnD>j2(snAQD#Y%vmyH?<0vi;JpVHtka3JcwV0yAO z%zzl9ehvk6EwVnc=ALA*zL-cp9Yd>t-%hBpUH!|+!)fFDhtc8yIBEKNp{s&#Onv^G z<_%j@Fr#JB!p%7=6(e6~#E?pzk|cCfbIagBp> zFA-OnX8#XBBKV_hYz4Qn7SB4bYSX9Q8uq&wmd0QrBMvmHHJXkQwfNnT(K8d2p%a68 zjC%kHR8MKCOhUVcI|~QM7;KL{JY_~?>JpoS+qi_ph)w`2K+KUy@?YJ+$%PAhXvXuR zb9Ev*qAsBT~aZaOs2UA zel#LrH2tThriF*3j!+`m13$G>376DBsx#g+b{@2{W4Q_uv*A*&xjV*|m^7mdFjNg4 zCk5L9TQFfx=8f|!iJPSiXxR8hULgElFIoM)_2x+e2+WbLMmC(6zYaH_FORK!HBy=Y z999g&nz^_1%p~QV%F$JJe5e16>Xz)V`~UWFDNR@CX>!WKat{%o_(D|~5CUUdh7!os&Zb6Hepn)eA#WSiaCQ{v{7(#Q%};kmOc%w9}eMt8ka zu^|ai;jJ-r(*lb|eClG&&uYn@XkdF9icGI9842PH!;?W`sHkYP=06Yj7EXJ5%*3ga z81wSyb@BrsJX8ta^he;ZKWejIXp(2nV0qwfI2d1@EhX|J(ciVl4i;zeLCWbPW?E7E z$8s&bJOOF&ZZrt!H>(^8?8rio)R&2)c`0$h61fmPKgUo|G$wTmEga*(6su5mgf@C; znAaI}q_$-}Et9>~E)WL@Jwh$e3Z*v^2AdxS%GhbykB=`}_y*Pqt34crDFUr`l*er3 z0J?_6u(y;sUm1#rv$>hB&I-OY=``&GfNn%mW=_Z1bIyyb)O@1vWk?f@3!GQ~;ir3leRVCPUXb?|dj*y^J(dl2sB&pFl|_;dIZMT=aXHLicO0AL5G5 z@}xzwR=QhA77cWLn$OK2?CCOdCu?MFCQf^VXJFR|FowRFsenj^$<9QshEwLui@<;=jsOu!z@KN$9E_EARz7z$B!k(Hi$6F%H2si9kMK}&BJVGzo;_4Ypcm8PG+{-1(;~PpojZ=J7;=j z&#l0r@Tp*E9M&{TjnIQB2cA3bw!MQ8-$&)Rk%?nIn6J}4_AGh!idM^C(jeb6KQ+z# z>~5LK1S?Tc!)1_ysv{i3=}&c!qZT8G>LcvZvm!iBN8UFSic-C?xm&PWb#~YlnxY=k zQxDJzg86Mce35W9zsnj*DF1@teJjrPw>xV^B>W3Fy2c3;h9Qq!wV3ohOzLoe)EOj~ zV^@dNL?oKvheZAmx5+#S!L?&#%1NUH2SiA*X)#K`&zEh<3CfH!p^b#rvcmbte{2O_ zRt!m_r`&{!A;9}ddOf2t2r&0W`|J942pyG^H!tT>L<1a6VTmJoyDtJ>g<74eFa0T} z3O%=+9MN;as1?r~;%R~+yI6Px_D*`Odh<~Sf)i-6YaR9VSV@%!V=W3QH9F&R;*j6C zJ(m$;gFo%sqWopd0&(9=vdiOW1U30?Yb)|y`+nP-(%kec1Omp>))MmE`onS0>?-!U zy2@T*ZP5A57&uJB-OY4Joi;UqgnteEf??e=fwJhMIAH7k)sqU&pu3b={cz6Wbe``Q z&0cx--W4XUN7fz1b->ibjKH%<%esP_E`bpyxkav6?T_y4N;AVJqs*w0pY%#i>CKM; zD?AHeoY`~Cdw=)sS(V6gejddYof5Hu6K`2GEJ#Qe1fezePAWnusuknwYm3; zP&k3Y!+MM}ztIcI3c27-$`8wx=pra3oNpvekL&&O*garQa(Sy>p^ z+=RgfWNlEF2ow}x2&}3NSO##2(v88aJHw&1!{9r!O!bQkkInQAI*>@kVymM!JX~NT zk>$W!^ZxibgikpQ><^*wcc0qAn^$K;`qxbxq@GmwG}kJSoq*AO*y4DAk4etH*NI)?x6f?Vt2U$tI95pk}O(;DdvpZU}lLh@j*Djs7S18!6RnqZE62 z;#|%yeAV`2`-ndAwdX2WS4N}LL4*|g&hWKY^9rHd3RP!m&tVn)gQe%Al?me|0 zs6%2FJBnS*{*g?(BT+59J+3FK_rHC4vs!tomDl8`W}CTv_0A{S=3-PNpTwa$5mAmw3^W|r89TVX1U7P-YW5_Ix=AeyO78o*EPWE1^eXcIC(l;!3;1l z({mW*V&CyeJq#XtuHlHtB#0u!c3=WAOizR+pBKxuo&=U;J}uAog8j#E~Stw4l3@%qrlD;=cg> zb?C)(X6}6DF%_ykM{r_hAxiZ_Q_Erkc4`5lzLZ$Oc%Ir{N+t)>$ftmsjBdm`Vsg@D zn%l>J{Sp$wrRiEhjpeiK?468D#2Um#Vp@DlLSan)M!{uQu2~W1@ntuA25uGn@iQx? zG2^OI>s~D$rM9=%>MNpy4*70c&KK3mw2o(((`7bPXn?CE{Z$8PC_2YvwF5T!HaW}b zL(PDRf0AB?+>+Fm|H}q)gNhCkveygu&W!}FaYM$z>{hKL2u6^9*-%wYrbaNamwN8H zFMyF9|4r%ANg)j+)oV*fhd9DWXldYRQ|iHs&2}w8Pjfr`AZ{EOZw$UNtCZP*7cB=Z z7Imb(K!oDY#xVT3mCf-XKC}A5Jo|D{g#t}lSuD~r`c3NByj&>^ito(obA_*#Yb-m9 zDSz#Vhdo}eLNji6g60o5XZ%e4Z8AB8gk>x=i-3yQPG*HmK<91^y|&#@hD5F7m{;J> z2h1SN@41OK-)_0T{L|Az#a!)q7=E)>`>Z>^x^Pu!bvI_)=fM8nM-(9pKkXGoVj&{YE zisYXopG+EOiCE~PU$n4z*lu?6o2iF{&-gqGwttvazfwHIk33LnT0h?rLlZ?p7E$}< zs>*B7D;~mAr+Ld})+=;+rqIfC;TU03ZY&fE$&GM;M1EthZq=)m913a(jYPUoJX8ob zPKSi4MVh*hzw+FO&m&$o9qjk_r;5*gD)A^Im`9hf z9bFG1ZYUhZXZu7hg7RBOxa{pE1jU#Go;bZ z_!fIl8RU~C7z_Wt@HS|NL?MO#`fI0t<%9M`yl3(z=$m}ujL6)k6UT{-!h1huS8^HH z?=j>K8VTv9oVY}P02_7?x5*@%wYtcBTAJ~)V?29T(Vi#MCY2nEx}JD31k33$ptV1C zuH2_8&gLck0SJWelS#ZGy*pKZEk5ooFS(*4>?fJm%0c#G;ooj65 z&762&p-g*eNQ`e6Q^Ps%*%q(l?LT&_yl2nrl>?6GPCgHR9$+`zEO-{o2YX~28|5}N~ z>h9Gao7g+x??+!hLbSfV%+0}id}iYU@P^E22;9e?2g!+ThN?kMaB1qCB4*Iavx@PJ zVTTX)XXocR>fT92nj>FADD}q7EhhIxI`m2$7&Z(mIh_|lh-W3pMF`KKwcU4PHE5xf z4xeoccqb)-?7%LaK)-sCgDyUJ9G@S-&fcQ`@wC5-fEQUlpP}AbpU&5ZQNAQMTuc4B zAICQ(6Mv$vznu(Xo$0!7d_L!7ls;{UUt2u>U6&Kb0}XWKC;eY>XOeCVvi#Apcj|OR zcrKs7o50=P%=|WPs-=+k%3x&?i;h~YeT9(Uv5-mZ#tXOwBJ!IaiO(DZPOw5I?A*ka zk%8z3$gNi-ZJ~d5a?%szcKKHP)8vsP8?Ga_!gmS=0FnQdrPP4oXSm^gBb5y(;fCqR zd*mqy^HR6AG3e~$_4Th%(75>J;>xGrxa#`rmcYtHLpt2r0D8FsIX6DzWzlBc=o)+L zI^g6VC^q58W=JE14$f=;o%5Gzg``fKjqI-lw9^^rZ(gjG6Pb3NsV6bUKyLth@wD>d z>(M$egi2ns(Z%amwc|CJXMS3-=T9|zvsW0etW>WS@f04VB54W?FK51P=FAq^$6kI+ zxrJ`#Sk;x)ljNJ(uAsE(NkkE}+*bPn7f;+FS>S+*W|};oj$^|mqLNF%5HiGpj#1;F z)K)PX9wlnVbrF;r?r>1c4y3{OIZNZUyv6h;@Kk0$ayk3hs6B@Y(D=8|6xwrXfXWUh zYfd8x6R8h}FLD=YU==X_5!c2}Cz)TKg2U`sW9iNBTobiPG*;#gM(B-i0oISHFbRlvH5Jw%LMS>Fn%3cooICl1i%vlASN5B&oRM+Z>(n|Ze2 zyEooQ%FsH|xz3nNRQ2v0QrJDGbh?lY+>ems%}d;gr)0aFZm2sa4MrG+;p;&!4 zv!LovV@hu&7j&Kn^G5&~w>9+<|5Xg#)}OqVxWtcM_9U}4SiA}Z)@#c&^lyxdlfUtS z?NmoLzC(VUf;Qi)j}Mmzi}&Zk`M4*36(SyrsRkz~RC<*nQ{zbgy_vy7O;9S$#jfm) zM*XeVdHn{8odSGOB*!I~=FP5TzQML_@#fLXDC=#-VclWn5zy{kiizTTtJz4bMc*)5 zu-%frwwUtybEe5`e6JE0$QiE^xoD&>4EdXjJG*R9GcU46ciUM(l-F>kwSdOanFw$` zo*@#8UYZHm=c|#rW%sj*e~1Al@*q?Jqho74**FP@{kK@`Y?ZhMHo3-UcO-xkgJakw!U3~(pF$S&w>{YoF2 zRR?N~Z?HXg;guQ+2+ga`sWSjM;d`lNV*(j};IrBg_RSlc))Vi8H!(O8T8k#W4@2!S zBTWK(Fjza%%I6`Hm;}4Slgt#%Bd0dqL&Yfr z2oa}1Pl;JrFm1@h(S^kVxV@nFp^0O+{n-{CUbuBZkNyNiSx?(OS&xFU2T2%B4TnD| zI%({k|HHJp3rMMSu$;l6aUgCSRW$9sSX!;6@1PK#vhedPJKWX0&=_;&On{e0Y!r`V zg+ZaV#Y|}a>ZhfO+5v)NHaarrT;y?b7m8t@PNO$?fTvEfaaF0N25}Ke;xNGp&=Q(B zE`+Q~mbW+AFsU!(D7_Z45aq51P`xQs5ShUMXl@<5i|W8URephtIoX)9=n$MVue!Fg zyqXE|&o+opLg?}kq4l#d`uWqd0tz)?Q>aYwqtyScd1)O4US7B13>0-+6rP5FE2*Mo zcow{QquuwoP)jOa2I+}Zs>P~nHiOyj+!Vq8N3WP_)X@?=N$zKXEt2))3(}UH0tV^MF0+pjqGy7K)b2^)_+mly(=!i*0#;4|BscRi}cO@ zWD>zYyLvGxzJ^V=Z|@M3%9b&Ce0{ArS>%{cbe@h7sW;4#13ksKbZ zPl<@%m;%OC8bY?f?^5;6x4^S72vFtJ!!qnQRiSB$YZQLK-|Thk#Hof~*kAmjXUeSRq% z(40cNpy?;-RiNug^)LOI(>oXk;E6Rhg_Ttmi+{x^E7!)P;t;vR>hPzlEeComJ~NWC z%&GoVa^ceqM>#`en>+lCf)TG6eJb8wF2b<6Z!a>S7EMhG=MGa;2ls#wF{wM_)3_{6 zE>6rs#`Cbu{w)2I&~%Uh5ZtfB-39m?UOcG)cz_gd16YLDSAt8Os*TKSBW2@1>VUyQ zJlTbIX0s0@B_epy0A#+u6rqa0pklPDh?C}(+5};?Vzv#B+zPtdwQyB#3VD0 zPU^#c^hcKkN$hoS=rUZBfrT*4h545uDTJhn&Ct`=zbwieRdb#Npc5c6`EHvG66=S8 zxp>{Rd;iDXFURPS(|4pXdvkCziMCIqKFa1vFvfZ79l`0r!7@G`w z(P8_46qCAex{>GB_nE_#Fo-pWZ4@dxE|`NLtBTR+#rao(~3qw z=go-0I|5Ps%xZywU?6V4G2gu0Zc%j*tjy@lsY4BY#8lf}2Rl6uF{Qe#U%Vqy~Y;JB} z^niDzGvwJZaIGZ+*`Y}luYW8Gf|;`T3u)B(l`)(;dKugXUy-N2O7)z=tCB906F zE|wZp!L!EjR=No}c5vU%td$1*wduiVZb@t7hzr8U3P^>y5x;SEJ@5(S~O8>DssYzfKp!`E2y&X?kXxRRiT!FP@ z`^uP{J2y8q4F%=((Yq@qQtua1gx%7^+BPzM;f@=#wy1DT3LcTBt|<9ypc~e!nEVxP zY@E(S$!iBUV?`<+NFue@nMQsH)P{{wDAv*M)$dElSyj#S$GqdUn9H1eY2HW>nzyNP zqhjIag#iQY?t}C|qPJXonp0rU`}J~U-L9I3LGz z#95rM=@m2sK4M8b`es6!@aG8y$SNB5YLgW$4Gy-ad@NOB6i0ixPks~|quXik6Mu4~ zK90;?oFOSFo4lNA@ePOL$!U!ZU`uWqPJeQ*GLTScGlYjLk`zwc4jiDvb1dkHUXaRl z9hrR52dW3Uv>%@=Uk!ljvl@Ji@VSa`cJ}@&KDLtV20YmDm$V&!10mU~Rl#TO5d3YV z;NGHJ!|Q{!1XCM8!-Bu+?Kf$51Q9nBU7*E{5Tw_p-|c{!dVHzD3P4gVcL0cfH15X+da$x!yi1pHRg z0h|MaP{rS4zlTZ?f9#F?Z%4UF$5j0CIGT-N}9N`v8U-*|ZF#cQqtefVw701Vx~cEIN83OQr8OPr8q5$L)#J-m8j ze^wSEXMJ-wHUXn8twsRJT1L&#fh^ia&nBys1U9McYeZcE>ol=Yti+ZuFa0!e!VDG9 z2i$>a#uJ|p6OpCZ;Of)1C2;?Drxf%N(u%8>=bd)+34xZqEJ@Aik}szm@{J+<=3km` zJbGIC0Xm>YebksML0}K>7m;!$c0^)JiXCo0n&?595 zHy>ss;IhF9e{VdlU;N#7o2#Wi@k?Ly9wtZ4QK0J-vVAUZ1>4=x!*S<81ZD<*?`pH0 zVX6muAM_+0;k2nHv7J7Rs+3IvRkxp@bG(CBS!13~JAYRAyJf0`O)_P=H7A3d606Om zvSC#&w%cH{XJvkP4M*U$UR3>~Q0e^NC6xpiXCH!fe#l+g!kb!*Ck(`h&p{Sa<)Wjj z4@EduJ+#hmnwqS*SiM@xU1v!`yINPaXUCqMU2@mZ)z6rD`$-XWmr7(g^aYZa=vIn=8%`^!INyw*uY&@dVClJlP(PB7XkbYt(e2kAlpjP=z_G z&{fWSb|L^RL8sN|IOoX-YbxHnQ;TjdOcoY{ePf`Oi`JnMkay4Y)4L42k)x*u%Q68m;;$$}OP0biq@8(y_$-g>G zfpA$nu)*Ebad)MDx`c5$+>P3uNv9P%s9G+{9lUHgTAlmA10Fv1<6%q_T}hfxg9p1Y z4I2CTcrU6?)9m=kYZtgg;6`U~HW5?z2f+`>8S?m+XuJ}BQ+VS~cG1kWL1N@xM34hu z3G~g;q7Kx5rN&4@yt8Uy`Wx?X(o77!nmA0h4{yv#)f{Wz78dm(GY@I=^vWQ^6W_}iC_$eb@f&~elksfXQE81(E@iSzuK^4wo+W zGXKF{2D0fS1C=p#oFdGr9yKbBi8R)phhnGdL8v|$tvtjJ5N8&dbY#1c8+N>w{m=S= zDpowotc;#~B)#riHUD+)YK!!yR>TWD1~XY43l}e`>i!3|(C|i&pp|(k=%&ziYpV zznpCCshyMf8(8E(*xTOl4*<8WXuU$viJ3AktQud)`SRwvKl%A9yzf-DhzKR^prxKs z&0W#%J|ZfJfMs@AH?N;!a=rL>gYMzO9tJ;4e?{KtP6Ln-4|{x+Kdb+_w3&N^e3Y={ z>wxXS%4*>JBB=j`hij7@Xd%aE<3pYD-EjLUz!4Pgr);_1L4sG=TC4&bZH1=#Q?!sx z1wgV!BU2;g;`ygv*qXfxCmN3eAXyd{$2TX7%2%nx6huWjX?2}(j<;UKo@3Z0~`t#roL|id) zL?o>GaHt1f4Ilx$D@G(1Z%^KCl^bZm={%vAQP~AvNjXn>LB&vFpwyv792{DC|dvD`#xr3#4`p2QllC`$Kgxg(&sONpyJdP2 z9~1w%@@a?{{fZ@CcQ0!0_zO3cO7EwEK@{fpd)x%wa6akS_B6jSuRVAe;O`FMl`|Px zGM7|iCpf)j{8JJxq-dgdvwLF)5PwTHX*a*f`PazNqZ1^2E?DDBwVQ*7=V<EGaL(>1)}=B&q!ustFHwmW<_NFtguGT2CiiHqRWdYP)tfA8bGg&k7lYTW zgBkosoZST~rI5FtgcL?rz(PC_RvtPHXG1_^6LoXGTsMbPWGNs;hwm$Mx~OjNn33|? zk=#{HGS$`B>0l77@b)`fIK!KP{qx__HeKEz*vj<*`irGVRI@p=#s>1{Gy z5Q1U5Fnze%@TV&+%?i&+FMYdY_YjJcYpwf8y$%Iqhv@^m{nAzUYNrN3s{VbIg(jb(L9;1J^ON;%S!CoD0TblgG?5UudlG$_!8nqDJN_=Ys5EqSIe_Ij=E6KScvJkadpJu&KG(#6C_F{b zJs4i`ysGk`A73na02GQ?FE3yzH+3c`U{EPDKVX}|`L$fXjQ%qtJ6#ha3k$;evpMZC z$XAaGsP!ve04mwPYbW2X_nq9VdS58$PXMw4z}2=V{ma(!7Sj?j^WBZ@eui`SWv7mu zhOm+s$t*tk=t}j;aug5qtE-N&-^DxDFuDtma{W-I5Z+hk^vhGA7G7?Nx1ZPS2Z^_q zqf%d!gn10y8BRYGE|tlp9JJpY{-1oRIMFZkWy?0$fAIoPZK)B>CYTuvxZjrxv$s@o zSeJ4g?VIR!B{_GgX8x125C;%1jt=06#Vg?n#Q+e@P!Qp`kY2aC#$0(|+KIsy{Ig}H z;9g!A_{(chPnY^S%3hmf)qCC>JDy)7baW0(BTOBU-0TU3Ea&DjB=$U2^JF%95#!yl zG&2_KA^u&-EgVKW-Z|2@j5(n>bSI~iVC}xZXyKStVKOL%jZo754830-=Xx&=!K8cna%`$!w@$1C=pd~fG{o$MiaK?OXxu@;WR8~L2qkAs zSVwDRPYc);lAg~!4lHOkB~S4n&yQN?L6rSknlt9#6{>rUL@#{fh(NiOG3@(`<`wWX zRMdcY9^G%1TgA-b!zuBTu6oq}Enl87{N^GCVC)-L)WAI`bd!utG>(X8%A=6jUeHI= zE<+YRtJE)A-VFyEXf<8$7SU_+FwRKxEB6A0wyH$=pK0R<>^>5Lvn;7EXnsBf`51$D zAd%CWtyyOJ=;m9ae>JcaAXW`eC{yn6h{Y@n`N4uXj!lt2JAd_V zbnfxH0|a=B(46h^2@MQ0(il57gP$!ULtTa!sY)Z)#$hJ-ZO6B1OrgGtjOm+$$!q4h z+AM-<3^J7?DA;*98$ObwY(8Ma6J5!)EaQ zI8KP0c;%XPO#xSaWEW>P01Y`|K1DY0E+?T?O~$_cTuOT|5LVz9)j3v;VWIhB^s#Id zX~;mdV}ZX0P$c_-FgG{re47Th$bcQ5qM#KQ@^iL=T?SaBcRg+6`4ItnNs~y@^7|`| zp%;K>a{8~+?Waw09pb;FZX;Ji=>P+$y`Jlt zoG_S?aEE~StoTe%kFKYjt>4`4$~9$5d2GIp3@9YD>$x3gkm>vr)Rh9;$t2SQ!dSo@ zm}vkEzT+MR+Fo&HlhqIJ^kTn&yCg?h$WM*z9+R#XN653OZQ#m$n`~dTmCbVF|AEKE zY!Jm5PY);=CV-F94yMddW)=`M$*atKg&rVsZ5i;NigrY75P0ISD{TPnCw39MN!rAz zQAlBI6m!=7em~9QKyg1?P)EVTWZWi}cX+21C5>@+H4PsXhFA&6Jo>|J9w#4}@FoYG z;IEcYxi`~k5X8S80Red-Vt`HjmL&*#LK<$|(LF-T0w7i?E{uk-%>>#9rfU1PzPDD> z=+;LDDCMR`4u;P~;`hVaBcMX*<x>Gli?o^g zU|Ne^>HdP8L82c1vh~i$-X1YQ`)O{PjbLsl1m$i26j`<@wF|{qpQDiCIEqMxsg?Gg z`PGh6OGo<|0j<6=;4Xyc_ut>mzKpL@9H?VJ&Xsvzg2m^Ipi_^!;FG2tw_~ z1t&{BJ=JnMJP{a4b7N&G@(KCDgDR!{Eq>T&{|Ahv&>-O)#mtF?jsxF8A@$cb1Cj6X z&Ujc!mpw)U#GE=N7`}fOm1v|*4R_kf??#pZHK~Qf$cP!_1J~inw?^nO;6P9hz}mP^ z_}=EIMyg}(&&dQT!fN`SP3m2x8~fGxgru#)xqpqe(yXg^^K#%b<=HIk)8=QSXMJ6CIN5?*T;Sq)MIY`qo#J{-a@ONd*Vc!X_p-k z|H5!4_&z)PH%sBbaT4a<-rh`CvvN1Bax;QZ{bdL!TIn4637!n@VXyBP?aN-Nz7f{w)9CO}Ah8?sn~@P)k4ua56qNQYJb)f~+;PKCsD1$A|}%{OTO>=`6Qg7KKaXEIuFx zBPA$`7#7$1Spvpzo{tFBPx-%7O&YXVd)*ex=wYT-`G=H4mSPmY8U^lDCm zEdH?U2U}WA9of7PQG0r&*Bdr@+b zrpjCX>(8B2c3vtWSalR@U-D+B=B-&gZs>Yl{vq^1J`cYtVh5nS7yjkOoYUR-09sNo zoMAMpu|D0B3buasp?HG1e~17-TnM2boA(~Jqe=kWE1q`;t1WeX4T0Q%*fB5EOJK9) z1eTE(PZ4HfDtdn*Hpt~k;@}3P27vljXa(EPj0hq3Uap2OVaeoQ2V2JAG#Y%3v7+GE zLV=U%X^zIobix*UkG`-wIPlwejH&j#4h>)p;42kG->m_GJ+Sgf8Z89Zsxk%UEq?%X z8lW{LBu#^#OG9MM*Qp)rc;ab92)OggR}8H%Bv|-RyiuT%z`1@2<&v9-2~dCTH4~f3 z6Bb26`pR#>i!WkCZXz<6gYbQpcrYG4L#j^=qru@b!3}ikhr?-2n)ZN&)d{@P{NPWr z3A0DVNfZV6$N>gEKd^WOyzj{hMfLYpDa-X%y#Zb#tg$){`G(g0K6=!?;NoCe{l10k zOkxPUpQJ}=L}ZrBns_p4I29woC)hc83Q{p)tcG6hRCA5-IBA8+DAZK1QF><=#D9M5 zv4Of&dxfUStwaW7e%noJZdva8pYsj zQaF1QI^)n^FmSZ1k~P#?gh#8@SqxHpI014*HcglhzCT-{Aa%2~qs(L>}*P=KCVBdi@{ z{nwD`a6SIdTUih!8~>sae1#vqrBlQ5)%2(TV8qm=ipPIv5&h1tmBI{wiLbdNFmd|9 z@x`m;>H732)lG#q+{cYiw1_RF48(JqW@Cc;au9J=sJ!bgEN-a z?YUqfLdlu>hT{HB_}aQ0?zuy_y#j1;JNppw<5RGgNM+plOK$2}@b&w5<@+f)2T)V~ zW+YRa3)hPmkIls*HO;9F1O{P5^2 z`u>ix+jWW$pM@Lf?;IM6R^X@zc4_yZFzmhM!ZGyui1_DPZQta*=kUR;Uvbr7>9wZ- z8J9p3VEQzP->`L%ff?4Xl#kBuPzXqTD)DK4Y6?%Uga&^C=$>U2vC6?p z(}I!|X!c1=ehyoI|I1OP9P#>0n15&mx+!o7uS&NH3x{#4#sGgtbqU!HnO1K%U_ZC_ zDL@QF%Vc%uy4|Yyzn0DXNS9V}8!wnkKpyP***HyeWzRawj@8u{OdZT4zQ)2zz_;i# zvpUTe!x3U(#f8SquFpMV4%4}2^1n_5rI@;VR$8Ynp;L7ZrKXz^nSGPQ@%}1va`pD& z=Qrk>H>Jek+yCFf7=ik5Ao$en?bNR^{J<#P&`~vlS3zAc!q(w-FjpHwow40}+Er_F4V?sF1(Z= zc|V_>n;dr{3k|+7SG$)68nU&d@1;}2E6OiNgfo!u?;aH_%z2cXV#N_IOl)E7aA$mC z7A^B;riIsyOlx}OlVPu3t3s$gLo*b~legivy z$qz9D?=Ro&geHt~Hpygi>GZw(-~La<-#CI|Pm(MUz9s!Hvctmi@x9?*zT2rf9EsLqB-&SRW#T8+dKUF zQPQ_ekb9$24fpKfZZr2!xU2A(t2c6Qp2TuKZYyi4qFxMz&&G}L!>yTDTlUeR3O8jc z!uXhO>>cga7A|IMGrR@NEBajlpHks6of<5-%FibdBIY{Qn{;{Fm{K&E8SKvR`k-BJ zzq}JmtFF61dT`(zIT^~N8y#ss`9}L}R?k#p<${NRT%)Sb#qC=3Pz2qMdW4qX|2Rp+nVlwqHn5~QBa52XEF z&J2Hk;%8YSkFLzBH=qXAqp{VlH$RCAk$mvi$~&X)mMP9BW;otH1JwP|$1Z*aKE*Bw z8HnA+POvMtgGXLKDEu;#_{98G-mVOb-AOx~dFd`_wbAU5a!5E+eLhgr{6{0983k5Z zER$QCGZiGNc_l2(tw13c66h<;t1BOOvPRakhID43vgilRan=t}NBRfz*O90qzp+Hh z<3WI!{zPVy-HOJ3c$i}A#Ji8Vltljv2;}E}owDlV*dWA!9 zEC=#aYp)f7+Y*k~;{9f1-%6(w=(m6?6(MjQia(UjCoDK7J>_DJ}mTn;Ty*8*X@kl zA^NPpH_fJ4Rh!&jR-S2gWGfI@CN_rW5$D87_d&!z4Mfj7x7h!|t45*^ANC#RycD=O&bn2- zl?oCT=Pfg#Ld0Me*q?xHAQhaIw;o59>vQmZ>bPCwB=co$HKykROLtW8)^JJ0$XEFC zXm)-TE+C@>{=^xap-(ydScN8@d^$K`R+N}Q?~p5nY{#P;CSQE$H{5?Z+}h0 zGt`?+2U1>SSZ5N%e!vvLwQGy}#{-CJ&LsTqz~tQ+Fk%UNNL`q<@08t|($kNB5tN(@WH0Tg(7YV1ao^yS5@E3>1TYl*6 zFI{5YsmpIJJr2_E9(z~Fckd(9WH4`mn6dILU^1;tbJkSzt^b|}C*48OW-{^$Dqsaa zs_Y#O?@h^16H@EdkBLtiq@{BQ>3)8sjnl4h&<@ zw})*YFASlG#gBzAQU}8U*A(BDDixL=xPoX;tn8oTNz+(x;Mik{@uwr2aX3mOl^;nmi+9g#>_V;Q|6)iz&}% z?8xuUS(&oc^8j^pEX1Tav4h$Z*fBgD&kOawu8p6R_?kvso1DXC(PJ=N>P=#M4hj)H zRbs@%k6om<&gYUg3%=pGpzA8+&UBE{n~=!v=VGloB%v~D4HH8U*{^otUojm?hY*Yt zS-S-I3NICL(3MSz=~$GQAbMIH;YV(VW9m%mFu7OFazqVoKsHVV*gVk5CXoSR*)qYC zz&C64_sAeRX#-jrP;f8qVdzGy4r za31a%*7#Z}G9;zZVU0AnnSShG52FA9!26`xvhvZ~0Fp4-A5S_w2ySG)(bKv}aMg*& zESpq^{=G^2h;6~{RH^6`{98;ICA&&%&1ym;-vF&q#bz3foZNDoBkNT27JA*Z30R3R zVPZUHjtO=~SQj!eXN(UBmsvpLyaYof zlx+y2@^LZky&^rA(16Kk-6P>eZt5kTx|R;w_p*vbIip5`as`2ts-JhNgGTuC!}*rP z#o&x(C|;JKYlvOJ6m%$tFdy)KfEX#Nz0(WJ4*cUNI(6BP1oTo7X z5&=RKH6qqn*yv4a3`&`^k!eAxJ;2309}x*~Xah{R#aqY{>xt-%t8o2yOfPDQe{W2o z<`8Dt0r(s7uFB-wzdF*Zj8lPuQ(zVt|0A|18Ei;f#MHdsgnNhJC;)aibuejlD4LbH z9lP(uVt@{3vTDm4M@ZSHUB(TfaUF4fP#6#P$e4`EOE66!5x+M-X2}-aFEACB-r*%@ z0XS$pkuQ;yX}B*G)>gJQRG(yv^)rMDde!llQ~R+``wlw*AMiyMhJ8v3_`nep)MPOx zLpa#1rGbo@FyjH(RMHx8(3HScUro+NE?MY#f5oU8GjTQCb8A*xm~)=0Gnyja0>80u z4%=gJQF>B%-g3t%W3Lc;Jn$depO3q=vd z07ObQoM>Xd_kaoDgZI|_G$4wQ?^@L=*g zW5tzY41rAzOGZHRo;|0g-C&}wJ`;HjI#Rb*Z4=a3u`7QC+VL8O}jqDmyBg2iD8 zRYrys3kCeZI9(L-_bt*!jBXe_m&$DakFRzL?&_9cZf0Hk5|LgV;!?+6oiq0+*Jna8r>Q=qd5D&dsjCKf+ikJ!ZBO` zpcU_a*o+^J;2Betrt?_!#PpqfhQw6?c2OM8ngV%RGJM2CryAen;Cn3kmRN8%@gf(M|YD+(p&3`Yat(2uCFTnq} ziHT^@#Xc1KP(5w;M%j2Ayc#b6@lCl+1>PMj|M|=8v}2;&Zm6zTOLA+cX6wIh@Cm9ZoJd2x+8n$L){4Fl>8ehRp|tqYhm5k zH)0;Pm@~;iUV*@BN}WX1aYCa-CHSEi<#13{M#+2zW%e}`v&}ir1k04P5TxGXbd7)D zS;A;AdsSg^gah10Y_MV>3vv={!Qb%pFd^&{1WPbjeq^~8q_c0grpnConY&Z z&@Ze-+d(d4dJzNwA+feh5cr3CKVjDKv@xA6MIX{*pWRN zBqF{!3zIwVt!WIF3hKby>`W1=?<|_bi{!vM0ZGI)}-KIFP$B#6Pfyk0UtrqH^d7V zaMj3J`h(MskaF5*ZkUIUg=+?+=#p)iJf6*9ePU>yaAH4g~dx~ z=#rF-45nbWKqSxBF9}tPasCaJX5&ECm~~Zr9Q3GeYXCT)#Sx8xY6QAFF?4fELX z)Qj@)BpOPE^XUJ~b|E|lmLl1+*9tT1khF@4QP`CIybP zHtN9D=|U?e&K(2(2C&D=MEGmP9G?g}eKEu!FT&n(Ss=YR4~438NUnIsyD0=!-8&`= z$W`Demc0Dy)XRL7Hqp47%EftuvVn01licux!v_Z9$80iIn219w*otH@K5143ij6#` z)dq^1s(-8ipPk**L7=AZ)yMk%dH0)~-VOABA73y*JZAbufd{ia0C$QCCiFlLoAdme zysptsO4KMK8VcFTCT}D81R(M{T&?C=J~-|vV`?HBFe@U-#;si_+cM?e5d+QN^nc-k z*A_#F5(ct1fgNIP}WiE95>zF(%wDaPC52~RE1L=d&T>55uyKAaV zJI&1A(>}N1IFIu&5@%%3jxxyUg-Fg1;>e^Ql$tQ;+kW<<6H0*RqC92*O&j?B0!(dU z>!3{t19^95#7ws^{9JY0GSuQ?2*C8xPBk9&7eUyiIsud%I4#8q*K?yTJyT#96i)wP zZzMLaK4o$Axft#WVr#dB7j2MAGGpM2lufCip-Xoi3BSnP)^h_P(vEt7zxRJ!Nu`-U z#w@hI3(>ZB_?G|E%Lm`LYmaS8Q`A!vJTqZn(LEFUZIw_k~vt6M`M^V;ZhS?70=- zK9DeTB@|Ua@Q{p=G48$Fi|9=nt`tvl4N-@dqht*uCUHdy?adAd?>TVI-J5=vSv`aM z0sdV=b3(vxL&;-3frot_SO|P*#$oMu`N{G3b=SYg)l86=k(EaDN29EAn*>`}Le(Aj`Bzw>&$1{33`Tcsphy8qr9)gCieK`)!t|&&u|@o z4{4!ZUHk|LD@0sOE@F*4b^X6-w4J0fZ?y&^TLnYnwx?OSa7*Gl`Z}vKLt$0|wfWEa z*n$Pv((Uk4;W2HR@Mvj2vXgzS-ioC0XerbJ7l{RN$$!PIOK>s-T?VMlL_=Ex=MSWA z$HAX5RzgI!<*CE#er7SKNP;{c`64+f87p7=>S=QYTs5)$U|5@=FG^1{7nM2OyfxNu zc6H}Z$8(bsuo(#6Oo9?KU0!yE*~~YeO-^%H;|Pj}7AD7ZDy95^H!F-WhxUt3gp!|-p?L*^J);^ZKPv{Am zBe8YPz`M+FKPVm6Gfa!)Y@;-+rPu2F7e+hjv_rsCW;;K!sr7qSgtJ%#c7h=OF1U5- z%Ao*UiPFmV`w#l+pDxYrH4h_}Xc??~yl&u&E5pW9rS?Rh9U$5DK;!c~Xa|uV5ucSP zwCU{rR+CaB#P*7~B5P%K+?b+LhxXe$hGAq(& znr#?Uk6P1dXBg=$l%X2=Z$>tYPnM1mf%h&Y-E0$-i(+V@@yLh^LzExTN0Hb#wK)@7 z&D{{EU9R|x@rnMRl+-*ySBbJsNFy73r~#Xj{x4W195vi|9AuqIPfJ6i$prkhtLROkDfD@SR!MVyosi-Ezv93@hjMQ;ME%O*HEOpybJ3C$)C zg576qOA3saHT5&&&_#}CyYUpD)(!IKL|O@x1d?~tTMZ^~un)}uP{@xU{}bsN6~pH~ zBE{efl%4N4a5gz3rRd3VJAdgT9kz5v(kSV@b1=um$Etd{?KuBA|DC6yXZ?&S(?FsO zb;B~kb^&M^w5+GMmhf*#6{^IjbgcLB==Ts7)x(1|^p=qn`&08_cm+%3gVs3r;CPgs zTp22P-&u@Be?1~}fpU1@2f|PoZAc0oxTH^UW^XWH!p0|QArn7AG1q*T8xQwncCzBT ztO^kptr*gPZ3`_{*Cw5S1f|JR^P9}m&2=&H54cYFs!$tQuwZ<4lTb(3AH%pw1kGDpRlAYKrRElF^Jj(?JH!rnbbJbRX>Z5*}>L)Zq$Y-6$r)} zCudecOBK%QN)noUF{m>y-tC33C>deMuCHnbS}LheRa=GcHi);%D?g{J;}&xos37a%*^9=AC_v8eau>t?FM_+C}E62e? zEaB>9D!4kr-E+__U#pr;32a%kXsZTdeF09&pl+WSBJ-DWV0&Arbdjq*(>vwm`f65s z^(MCyQC>|1q3YPFjj7u&8%W6|a9j+@zji+9E+0)mhWQjc`}*7hkO=}w2l%N`?GT!J z?Ck_6{@$9oxcd;X)3#ypHcKIXRhQt6+r?3jgyurvZ3Cjwc$+{RVTbo$>3NXyP&&0L zi`qH&D3OAL=p{t3V^n@onkG<3`$RaCH6?Dx#^DzVC_RLhyabL?AOZ6;>Ix1Ukq4vR z1+n#{GJ~({VVl{$qj|pb(~2_qoO)kra=dn;2=?rHZ6ED(S?WPWi1vboVU6WyY8(8! z7(bA2fZ6f~-4U{|;6i<2>MJ+P9nG~#be?W8@d3~+XPjqSKh*c%xv%*86yqm=u{26K zuuz_pFmi`>$Yy;%+#^TE`5A>=m(XzCWp|6 z6aB>it$?CoBcZu0PLD%apcu52PNvXse^ffcpJGlQJ^Xo_CfzDS%VZBw`K$>>1`^g5 zi?11I#e^c(IcranKMcpB)vim_CNP8jZd#9r?Ln;my>qc-Uj_pkM`#zeAwle zegOyK8b<=+F`NRBD6A}YumV{DWLa&q{bdO7PC~i)X0CmP$*i-PpM-;4h=3{=-oAY6 z;tpq?*&QRmHIk#T&%AemH;8|02Y*YzqSlpCItYH=)$_U0PxSSHBi7oxjaWCe(zpai z#@MVZ{-&(KI^1{=pCIZx{Z?&KY5ZUv2+(v03r;73kO5# z>YtTQ!rn-Gz94;fmmL$2Z0zttAbY(ype081!%#(;P0unUn0T%sr?XLE|p;0CF4HNo1GH=;!BG5@~vh zTGpU{<|HMYBn|MiwTEG&&6bYVzJG9U;KVrJ=f)Q#Nm5F&cJGA5<->4oZxT%Gz$ez1 za0+!B)dDx?gl~Ewq{iH*CS~a&`0-?Dgn(`bWc}P*vlr3&=`>Cz%o!{F{}jFFvm{x1 zpO@ZeR%Ll_Zq@a!eNVeF+cUGfvj&TW5wrv(K$IeABFLa9Dng$S8~VZsg%}bjQG~z{ z0sx6!62RJ7H*UvI`@Vg>t*U#=+pNq=Z*}k&bazD8$#dTK_j{grNIYVYEBAS*8FE}c z-s9HuFSWW0JAb%cM3RDzjBk5degn+C^ME@F8TIVZ`I9c+`*&F{GZ?VLb~dGoQ*sur z##wuYF6&MW%zvQ#*pmx6`7IU)LH~nSe-fKI0&TQE@apT zX0?c5@3Xn-znF)aE<2(;d=;L=8=;>p8Bh*KRXxf}7e)koem>6*nKLj@!7hY+e36?` zZI|MPU+31cFhJT5X7PUP1VNGK+x-`ZvrRrhCmd$#XXTI$;M-t!qSr_(8!&i?5 zw*<*-9?hJ7&{O$RyOr7F+EbWS9MZfuwt+UIqoezO7apXz^r+8#r|8y?`v2o#avu>z z*2;nG>1YbnDAQK9m!GspbGM#lCae2*#Y=3sFM|wbHL5R74G=EVhti(veDdM#O{EZp{&*s&i+2uk}+;Uo$G739C+ zE?kASMz?f)cJ|4~uY8i4%{M{~n6Gd1;wWqbGxy|(a$GFR;4d2Chd<}v0ywL7WBW*n zt`ygbF}{ikdA z<}=SrN8X+iKPd)_?u|MTL;z-wo50vYg%H%HF_u?i4>JjJ6IET5uE+6S7$ z9Ey?q4+IleuptB%O_2x;YI^9Z0n%71VKsh?^$&pR*^%6w{gI59<=K>P>bz_H$#^5;)7Ee9-sR&;YSF=EcmVY@Mn zz@hk=YkzaX)CZsx(rZ!SubC^HgZ>yF`^F;quoSGvyS++uTLd5>ybt9Dw#}WWF$E4; zY?rR#i(ehb!dNn%P36z6p^AD>rxn-D7%zo~V+aHI@c8Y?EFSI8!0IrcCvQcbCtu38 zgx_2(m!c*qryKiqY)f3L;PERXq1Y3MlPB->gwvdzSHLPDw&^DR)-gXLH9oA~RG8$^ zE#>@*Bm|8chv#OAbw|(dZKLadBXeVV(XUJJc;Ss2f54_pc$D7y_WJS9-%>2&*NekR%`tD7Gywi5(yd`PVoeI4Fx8MWb=IZnAdB~e-as+Awld*! zR&lT|GwFAZu4dAmNG@O?}hjQiA)s~jNV3_rOtNp3FJ&ugorPVeDU-K05ouHAvg&?7^X{is`Q|7 zMr~K-xfFgvtK+-WHSTYs{hN~|@B4&O9uMve|A2pK(!SUiWsdEV7ef?+{!ZH%I0hlX z(RlX%qa#F8#gw1=;ODmHMEB3wfB6Goq>p4L{lUlf;G_lUk>T=T8SbVXZnhWq#Cdlm zffNKqidyFH5?DO+Pj2aDv4O4C@mNie@z;X9WV%xZ$svRLncUwlTE*7|&P{mI_|9a> zPk_MkKl3!SoJO1o{j~F24QEh;{kL%qem}-1Rp!F}zmqn4qM?b@5xq6e;t%rY!#SW- zlZd=t$TrsR9enes4UcCuR7fKU8NU?VIsbLO8;dqg0Sq+P7U^e0{>5Pu5kb{SUhoo2 zwmxw3yJHl$J>^X?qC`oE_Nbqj*!t^h81$^#n#~DXvhNd8uiuKhASwes(C1lX-qPo^&eDuU`BkrfFkTP{QIgRdfpp;}vj! z92%~6ks+P*-PBinL1*hr7&#G2>U$qT)G#cCLK&60o;v&4urB56o1M9K3WuaabQo)v zBJu!!FI5q-SZvxf{Q){SpZ}d0|Dr50K9-*Tc@kug;88ZG58&_0DF6z89{&)yeK6yf zzq$nUs6BrR&^}DwuL$Q&Q-!khr>$_gUIjj;sFMNl4emg!se^L}APzDr`rliVX-nv` z0j8*u`d}2q*;g)Vg-Am&>x3SPGT&cXr#vVeg}tCas>&R&^Xh#b;|k5k<_Di3KZT$E zjCr9%&6YC+Q|3m_B{tD=6F!wR;B#N(K~5W4Am2fRIHEtM6lyV(-8iiB5gU}M!u#Kp zLPwF##eP<>>@iUp8{BOAK|Ul#yCG__7}-wGXqQTL-dtQvzK&(ybT+px{iZ-kM)g8d z)+}#%XK@d<8BmSDc^k@<@8i+>W7e;pZA~6Ull$GJv4wMRn{)qr`|;exJ>@ZmRqPtz->&ve3Di< zx$7=vW5&N$yR-9guDBN*W1H^_c{zltorWS>^F`w6M~fC;jo3;42;b8P5eV65QfSiG zp$kPHN7^Y(+egG;5BWfU8@Mj5@%Lm11#Q)ru++Xs$D=YIwTGzx)3nV3`$NS@4sO)j zi8!t9iINmv7%zWu&d|D(X-h@(hyQ_!AA~qrIk&v~_Qq%Hi^6*83rwIUN_=${EM#U| z`-3Fx5Chys@t>2i*(f?O2{M^1;6Sz-@Way}2^&+FniWf4XiWE>N=}3@webvFKw4jJ z{ll}dgJJ`V#r(q?>1f}CTPFMB?-5q|)$oVkX&z0S7~T80q2I37qSyqfFsh`JP3N$g!SL^t0fdWVtniTHM#rDtTS&M?7>iC6Xr|ZwS~SB=B~s~DHNJ~N$P;6+bCr+-4IPfAfbT02CMD4(ie{% z2iQoG_QZ5e;7XP(xufI#$sQt?qBv02mL^?1O~sR=J+ci;o#c$B^GIE#{oa!qA~mK! zIyC{(gey>kY$Cf}+p|X9S9oX=-GMN}?pzeRh=Jgm?~tF)!pEb4H){Ntzhv&#d*Dq{ zyi5@W@WQ1SfD^pX^F)o-Xf~tAL`RgpwUGeLF0Np4c3HVkeZ2{_X^3xPRwNF*Ac<7! zNn`TTn+_+)ExgAPF|yr$Xh&GPYB}X`+)sZ!LbLNVM7>{Hn)8s&&q^1 z6KbT=PK)XZX!uHT*b3j$6Sz;hQ=JZXNQj9gTJxu&+ueQ?5OjMB=E&Ev4pfLJ!r||RGrNOWlJ!IT_)K{8-61D zssPJc)_BtP@mfzq$%GR|i%;(@H62?v{jfV%1oOOW zsKdOjGa!#fwy7ub%^}`);5^oi!)Z4~vtYvjmV(atBA|)wRl?lmUq||>C2z~4M+Be? zMG7aEn}RW)h|dyy3CPQ2GzNifR>H50w4-G-9&dA#KLnbbFxrQen=m6Mwh3-6z~qm z&q`i4WZ5%TW`CtcoP9TXtmZ8kPiqWo3R5LPdQq;G}Qmom}XYR`6 zJaBMTG_agbv;^$gZT_dkgGrh?Vxf}-iDCPfM|`e9b0=<&uf!-l#`adP7v{6N4akgv zZ>f=j*gbwO9Pg)#GR2#LzW$2RFAtmfHH|ViQocD#U|>hr$YX8M)B~#dWdx@cxD_^% zK#61R&pRmCDx0}?mTxLekTP>0^73>*ErFTb2 zOxmzQC#K_tk+7*vu9ex^97sg#>HYFF&Ji|P))YE6?wDvQ=4qNz((uA5*PdObZUgxw z=T35sYLqG`o!+!+=)^{+Vb>zPpTWYYMjr(x{CW*7s6hjnrnHpb)>APg46cx8E-q;MRsOr{Dx zwwrY~YojxJPOnmCQB6(tgZqlX%zKN2t{)|gxrrO|HKLsPt;)yALPQnYiFT7gdwMT) zBu=YgAdO+b+@!K6$XPQEmX`frEu=GXr?%eP2xCM0Zg4XH`+gW-lR5}GOG7I~u{(=qJ@OwH&OA29e#x~7k9wR4l)>o!HBak7;1Ko=0O9Ll-5jn>KJs^FM?3*>Tfy8=+WGA+e56Gikz`OhIAqP8l$$-x_U)fzGe$?sv2pW7ssGlo`xv9pUNM83vM zsSrvw6Qt#c@dL}P2 zu|bZ2`r3@GSJal`1LJZ)e;pWNCg)%zP1Q5*fVhg!EAOqn$aPK1Rb=BLWL2L-EmyLyy zHacB-3b~$A@;SE5NPFLcmmXXNK!0K%Xp2ZKV`2G_JHq;GjB0*~?`Ob09I~T$cbrTI zvaBY0`z36AKbGl+^@(xXgMK5J4_#;a8^G8bkhshMWx8^~>{Be9@An;tD z6$l_LTS>dF28T_O)_1SvA%9TBWM(jn5>j_`NTEzD6|BfZAbL&sCuUC}5UPY&5Kbwl zEobmf$6#8|@jLWF)_WQFyKZ+>2iVC+^WucP#Q0BYX47u8Q8eDgT~ybE7Vm;+>>x>; zyYI$*ek$IMd*H~7#z>B&jvrTMjTc-uCFlfjexBX`bl5D1@{bHZ)}`6doD0TZH&yIR zSBP8}EOpQSDGTnduTjgXR8I*;=>#1;b3tdipD-$#pS-pq(KtHiW1&MXb18RC32K?m zs8_ESZ_d#r89n6GUl`Dj2CN6#IZ0;h)BYY3!jV(**fJ3W z+a~bAoC8$7rw>fVKX+g#L-t=pVn*-;Tw%Aj>7edS)OEc(by#jw4uun6Gl3P;0@^=?YIayWv^$@#)F)29=H)b*P{= z$xG}To;#_`chNd<$lIx?m<35rmH-#dAp+hdj2thuWL*z0PO&P4l%p=vr~xve7+@&!)DcUT?{x^ zYN*s_lt80CW`hY+Jfl2VJHnf)0xSPX&V%X=5cQa|$(n1xNv4*J4~>#(Z`hG8DP&b_ zUR4^h+pv$-Inu>d=)1Yw{>{<(Zm>Lj<3(RD=$fPh1cx_m1Mn-^=MA;!NoEHb?-?1k)@@cMBd*| zjQ~l&Jy=xtCvaU$DLehXJ9RBfzJ_5~%1f-eP=i^T7@a+i$vDBM)o~FZs z+dIG9N+WO6Q1yPO|5y{T&IMSZRqDqQmKcKqEVbip27auGPP>`K0^dDc%<$3a3w-N* z4x~gT-(+`{&C=z99!>t;KM1s)+e8Mg44&!cFoxOQlq`G_ZC2Oq>%rwyH@>i(jfUHt zoi@9aB`8ryFVLg2c{U`@$Yj47Eqro~9|av)X0xJ{_h4_{qGYE%kFp7^Wj(~5L6MpZ zk^K|1xP1=1k#Zp}M^7%;#;?jaWI6z*Z4PzC1|k&?{BSKClg$ja&$XOKUn|4HWM-mS zBtH5!`?-K353I25Pk4`Tg6lIST8yC9bS@kv!Vb()mUaqdg)&ig8ibvRgjP4eu7Vk} z#Wiwi%!IJC1Bn1zm3GP=8=dv;fw#M!u=ATvdGkxrSYZ}se27O1oKPR{jAMCnx*EZ= zWe+6lcM_$!ZS>;NydOHm>To?LI!i)%?+n&+G&|@D7Yl(O4cE@nj=j^X1t38&;OiKg zc!1{=_o24^dHU(NzT8000{F}T6NT9Ta(}|<^P`{p>4Sj~OewUzIz^tgWq##m0YaaFoYN%kA_ZtX#j@Yj+Mlx?z6|6I%-a_3%WNvIEgbS+PoAc z&{C(rD~AVRk2Kly!%!U18{RxEwWrE*)gnq`sJ<{}p}$DW2ij4>>aTut#6`!0NM0S@ zFxNzQf_1jB`h>@4?VZT=1O=~wtEk$K)8nM9z*dT3B70hiA}|`Qkw7e3^d^iD!d)+? zafprF6VvK*q2eRx8T{W!@y@b#KJ36H8#pOG6I=gbpIDetC zHM$4c=h_+A=R<1<&&oPTc{L8kHnR!=%2H|}3_*p1sDM0|_81R+n4NUp!c^!KjohRS z%_#Zl!}Hm7r#i_B>i0g&UrOE4YHO`(F?(@pqW^Yu4knIHO$d%>5lV_U*TUyER?1zQ zdaJP`?)-5Sk)P!sjokNea(JeV59-*7>v_A6#^ zau0774B|(b7;sl7n1PDj=RO_0anMYeiyw9KFGkgHO_!E6tAWxyGlEI`^PSA%(b6gp z!9`s2TouUhM2PP8Aj;MofuDm5%%SW)1J9Ui;8{&f&gM&VHX#8I7)M%+n6dBFqRRu? zDZ#zBn_wLEsI-BGLTd6UAl?=BQj-b$)TN8nd`(^4t_#rB<*Sn%*`e9VxEMCov)yk{ z7-Vxo?l3>dt?BW}vPp%ch3?(st!PIBiZs> zizJxC8^eK+h}Ut?RGK&!svU=bg6>l*Zkwe4slN#C=uY?udrYw>7Jnxl?g7$uE~&rB z@y1kMV?K_5qhFjl8Cm9iPi+Gmv2&>~j@jpAx^rTp)5fxfgF|y<4B9 zYefkUnmbH~ld57sxL zMKa>fmRuAMI#p$|?UbPpiB#g4%9a@m|LpEbJ3F#(z8^T^N}qVhP4@frLEn{NP(LAp z06Zg32eC#7lkI$ez4hMZ85@i?n@s<+{@x)Zld6OB5{|}<8R|R@IsZz|eY!lJ2~JXr zulndX)ec6MIPQa8P+m1JyLi-4=))*IUGQ9ypPKDKBAeuze6#<=rZSKo+XIQhc#{)e z)z(I2JfB556pejCLeUg!L6_)Y&6_+D>G49`YKenI?nUG$b_8UE$tjB2CVo91x+G1K z=F;_qPA_1|KN)*7{yiWrW@U&($k^a^?7vV`ak(nQpWXNzhqDKp-<~rGQS!&VV0zzF zman<_Pqcj^<8X)YKR$8;%&BG0cQG6MGq(}p`-VmznK zCn1KE8AIDCeMZ3?=2r|MP85b zO0V5V1iK05Nz>AG?B!0=qf&ODUH5z3<0(0MMG7uiwMht}g?YO$B%?{b=&&VJ8d*R#oaA8a&Ee3b$9+9K^QJOed$i+SA(R)D z87Bx~PUI%mX)KM6ThWkw(){X4irzTtQw-Q(L;@>KPENwu@d&&nU|gHy*@sr1lHLoH zm|B>0?d*{n*|fp`mPGjso<~#2hAMNT(&l7}>!rc%{7vH(khyO^u4Up>i5lYlUJfIw z77E~A_piOg4@@X_GnYSN_v?^t#U8}s6o3SYAy=4D=lRBpzrY$GxmJC&A20uU5<4~+ zGkRl^AnowS1E2~V{qxiAZ?e>fHXodjSvM~Ck^}R0qHK|#>@!!M#7EHsxSH{>`g14| zl0M^t4DpNo5==mY2aYDHelxgXkn(umz3U3A<>%nmRQ);6~hR2sT~na%#FnUp=VA49s9 zQ#X0>g~di3$6W(E!;#DD#G=ftyla+**R~Ax+3A`zqWPHe>S-eDumiP5ctJ1Q+@q65 z{xXOuq#aR7dbRtr_@Zy4|xRXDKBQ# zE^c1<@C|x^5Z&ys+}W|xYwGyW7tW9^e0%+19_g{z(&$jhMt^$NM($KxsSh+TP&!Gx z?1iA&RrV~jq1Aig3YDvclz86UEJjx(GM7-35V52@IVJ3>{2!-Zf=bs3Hs|j3uRKHZ zAntB>U&}xYWs4(1;_kHC=Px`Z!PZHt<i zPIQ;xQ*bCTJfG_FuD5Y>BoXEBzFJ0S|#^*X7+=ymX``A%&9%?=wuyUg0^fhE?uN2(Ea zZuz-o8lEJNk{$YsRPQSBo{`LBJz0WPNAaA=;Escyvpve!rexq)# zB2TGn--!I+(&lP*R#KW1@EFQnMQZ{&W#z+h2OR7*qqM)kr`&xiw`4`SsnV2ne2>CL zp{zU8lqnQCc+HqAe!P~6qa)5b`iGH!K5I8DOhUiiR&(TV+kNi_GVolsr+>gh^ACvg zhaQK+9QTB7Y{o7h8wAB=&CzZRAdq>N`Jvd>5FoZU>6!@Vb{{&JPR(D35`V<9 zo{{3KSh@!qn@whBSbEL|I|=8G56htA@b=-{F)Pd4P6r9XX2@k2N+yaljt!Rq z;Cn4&ldp9hdZvA~KbPP->KC*;CNJru(TC=*tkK3nxK0r%1J`4yykLJkMLC8tQGoiS z!!+;vkM{N=pUPCZy&wo;l0M|`P4JXNM*jCi(ez>d4dr?E=N>)VJMQ<(-fHuCH(0j+ zewK!g3gO5e%YJcDHjQs_9+RjiE&+q!Fg8=LiPjs(NqJbY`j-TtisR*AU37j$catoc z8=>~pUAWHy_(V86VlBV#>Cfc^+B(M~wVIq8W5tWgd)7rKlA$l{%lPIbtYxP8?h-c} zVbzWm@iPM4wAgV<-eoo1vHF$h^^L7o@qxJSiT^o&@*9}?V}vQ;lWBW)30zP-Il3OZ zfRbYzF8bfhzGMIm11OGT=r-BlclM;&ifF|otSPfA-Z9!&u1&)!h>8%U$+f2n!AQfQAXar@2bLW<1EA4Y>xeeyn!DhkQ?t4mem^Cg4KW zmaph>IDR=ZID+oBqAO?!zz5rMJIJ!=hpgW`D{pnqqWDAO&ihN~X~QW0gB27*U=o!7 za^tgw)ug`H(>G)4@*L>L#mZKfK*6FFoStp&xYmXBd3*od4T{%@<6xajj(rog`O90sVm7q4BH0@FV8|GEnxW^tC+|`!HenM68L+N zm3uc6ndoypm4RL-kh(Wg@i8)JI%=k`)Q4a>m4I47ob)Zg0vRlEQSz+>a;XU!e`9wy z1J4LYFL!&TSjoe?Db>1OF9I}c$xTrGqxuX0ae>0nfZ0gO0y?b;rmc$+aLow=+KwSL zvFM4Nh*bUmSuUzb7-0ZLkxgdNFiuM24CK? zuMXD6YlDy;N@G{?iuef|@=of?o-MaDzg6x=zL-MJzU0q`Rxsq=X%^_@Jq`w<9G5k1 zW1&xbs-1K6hFbe{E}#>4=`edyxJ^K*=@iWvggWG{X2jDgU=^Jj@` z?3tAmFz%f5I&$K%t+l7dZ2~zdON2^+s;m|Qr{*DrWh75p-`eO$e?Zuu2dSfM6Co{5 z>JKI=(-G*#rzrMH=)%DmS;=4gcGi9!@yWnRSFzGbhkiml0~+dX=hxZO-dwHC{_x^M zvJdezti9;a6pytXV~u6==F)J$F9OZskYv+YAV;bHm$Y|eut{Xkd9@kqj<&3+V3gw0 zuYyZQoeZGMb_TU)q3zT{1Dv94XZ}S)E%#^7Lavl}pj)KNbgulPb2UBY!cc~$`3ZkC z2Mc)N*xsEA^I3=Eh(#aVKB&vdNoq0~T>Wqo>GFk7c4nafTz&vpN=q<&>;niM z?1vJSqo=bu0|w4J8)ry2o}ykr8t%XUM^8hVt3SG3voEfHc~CS&5~GZG=o=BBhbEy_ zwVq;Pco!}$P5Y6bQa;|!Q3y$=Bf0MHN%@#r&3@KI0iFfc6U;-l&_yHFqSR_k3!|gp z)&PT^r1xDcm}ry^c=XIs@O3!GaiUto0Occ*V!}@@*Go8{Du#{6NvS}z#sg$Q_5ZNB zjQU|?|B>D?FF))dQ6gqFLJ9;so0r4yJ0E|J<}_+Icl8APJ|0*aAGNLn#|PV!8l(Jo z^0i%PN~O;9EWsrQc1^+n31pt);mDFLPDX>0%Zfi_W&p7d^;hnOYWKkSo1{1d!#SM! zKb6jffZd9+G>SAjehIl!8#vzoq~T~tja%275;_$&F8y1Ur%Zb7nHQQot=cq8QJ|bn zl5jTureG&#Z-$Os7qmGX{kWCTho2*@0a8zA4XFU=G`MW^f44yfI4rK&In8lL#LM<6-?t&e7QdGO&;$pfbDx=VZ-6T4wr zKmd?>+#H4mz0l}5oV&?>DGSVDfR&UwEe&|o#^ES4l%U@C^LmEbwUFI~vseqeZWJ4I zU!?>)9F2Ht!*$v+DSeiEpL`BqdrmRVc@*j{IoVgEI>QIhDgu_;FA4lP9%f>vA<#1% z&uqwLs<~#9fXE&OyvVpRz@s;Y)@wSki>R1Xsid^?z*K+PXQi@@9CXyNQduhG~Oe zGurJ2xKuC-G&da?(bwI8(k!7EPR|`}`us}m^#>16fHwS{N88!F)xQVO=Q3}JK)hBV zCrS-HD7=68N{m!dhFSbxV&`3gLaHJgmO785)P7`yzo?`(zYR8$y{Fdv|GK^vT%y_? z9|nHZnL4RPLXk=Y`~nb`UDz@+J&L`SF~MgVvo7rfputtH^{RidvY!QzHjs&bV;JuF zU#Jid!;Hk|RS}5d-upJ+kk!DYuRh*(Pltv6yLg+haLDAOCo^lYmEd~~setn;UT*syqqU|X@!@R-0GKLw&t{u( zB_7}rJ8!3;GGIOVI{23^9JeC5ehQxsI6H<1^YHM&M)OI@J|$!N0ZJg}DRu&2o2h$A z!%;~!Q)xowz5GaWo3lkX?UDR2{1_cCtR4Y8=lMvh!v0rK1j5PGQ&Z?K0 zy*V>d8m!wVtMi%UV`|v9&9U_Grf!T5Ctbzrpz>KvCyNGdCoZSeU?K6238_=3q%mb< zu(QFs9w$7;yNqZq*{fd-x0B-;;@M)=OO*`)P#6Mco(M(?>LOGH=yb?QI_BAxgo zz$Af^Omj5lT4ToUvmH?v(7BHI|Ztw74jX__X2-ROi`pqZ$K#?GK zaZ*93uU@@?MQwoVAx`jh8#jEI=mlysjhPQVot`mgHIWnhYPx6PrtMGDTA;%}mUA!zV zSzBnFQAeP*op)kjG9~Dz3{07O;ifwP3#3W^@9(LAbNQZe5f|lYeC^7(ep4G&EP=AZ z&)@2eo(*H8ITJLj2O7rK5dK3f%ji-VDAUkgQH1qPBN|Aw>ZcW<*Bh2nGu>ID+;qa* zh&(nf4p64{0`uYKV=*BeeYrKC|5@Fd4#ii16+O%@Cy?0O!wYok`4nMt!j~4US~D4g zItjTkhy}-KGqi9*Z2{j$r_wK6P%BGWW%I(oe~IP+#$7$U&D*X0nlwWwc&fO85s~wu zN~Mi`Ix<~yZ0AbhrPE|13*aB0hx*fyBHWyO9WnVsW&V9!W#Q=bap49u9Ykk5F%~)I z`5$u|i>~mvrXS-8i2ZbZT17MQ=2bRg^b_o*c@~}^* zXjE*RJ4IRt0tIUEU+>O!91?s&41O)55-zuh?n_DJ98hWR&U@kXzw7L?9l~gs;|iWs zx7`vmZ~$eKQ(P=U??G86{wr8DLbJ%xOD>yavA%?4y?9C88d7?~=-m7@&Oym^?ctJ` zUPIUQz8XRoA|T7lCZv4&SSh73H6DN$$S0j~`IT*Xs=ta{LUTmiizn>`jU=}}eCpa9 z{RgqI6WI<8G;r@v9%j0$d*vO(ps;nHzqf$*W;zQ5t?cW&kP}W=OY?}Quyv(6XIhAyw7zp^Ugs)&Cfib z0WF+Qnnggd=_?+mm~au6yV{OdmPoJ2Mt4|wGyd3o$a4P+r3yD9EV=G{w1~MeMH3j1 zNpm+iBos={YXs#QW2p-%=L+4&z)bGSkyZ?&xP*UW+Vy$}>V#P_x`s#h#2%4ks#yxu#_#w&3kojY0qL@$X^AcAp<^ zIYD3qWDpU$zxm#ue| zK0P5Vd!4}ZjSkF{FgF-CxRV5tpxcOrtirIlK!loqjfOG~40#d-{qOtBXQB z`+Hcm%TcQ%^{wl#JqD8=tqduZkd@iciCI%TFMywbKi-765DG8>QcpX`-XG>EuIHUj zde2v&(%p3R6ZLd)>;)rK4K5~RIWe<_@%9j~+s1L_^Jc4?_xVjl4s$W=iqa^9@XLVb zCe!lGOal<`W4%w+&g-UkDRziNd()*B6du@qM=dQ{2UUnXrmxxGh+S-MvZt6RTp@nJ zQ0)ps0$5dM*hK7AsDZq>MVuqczXmFi@m#RVpu_xTo>(8E^^)X<%3rpI z0Omx%RTyM}ap_vBc!T&;Dkt_^LXr9WlahfiP6delA6KC2*`_Nxd+g{ezlj)O@U6sHtu zrsJ7UjJOWKRh?S8!I9tOdZ1N!E1Z$6wFAdll|~ z?3W1)PIN-yG;@gE`igJudcsFtPlVJ3tp5%DI@y;Zmi~!-uX2(wv*h>ZrO8@Cm;)hy zQ~m79d_-G{#BsED{h0<_O|2lxD;EcZRkzA@>{t>l9#0YB)t(pk@oK6QWJT+#H=fQQ1@W?krLF6ilb68-+Y zeU+AXHa{Gdx?!+@@qA_MhOPro)o2+xr$yn~Rj#b8T@k8j&u#q!vM# zUW`*YaiJ8?q%ME;m-UZk%3L`XJ=gb%Ixky5zIdDp4^CWDo4rKMi*A1}g8`9NDc8f~prlX6+-2PLotaD{DBCRYG;#qIhm4M;hgH3y3E_2BBmOvn`H5ueb zvG7Md{P}z**FV}EJRXS@fC)j$?yh0Y#(%qNE(nA;YV~R$jS%{F{-!YT~szLK*9-D{ft*Rfp!h5Nd`ZtvRE)^ zH5Zuoy;SZ$G&8wJt-dS5&Dl<^2^( zD*69@Z4sGEkBhm$Q|f9Z@)C#oeOR1*5%S>X8QYb-5Vq8{3MfcLU02!EqPQ}O>TI`% zPJd*3VO-szR@MlwLoq)0Ei~Cpmy^*1OKknnO+?%|VS2EGMc)YZC|EKA4ZW`yp%H#8voq94 z{{Y)@5Jv8Y!Un?Wqu9mB1CF@17^g{&j}_lMe&Hk{8k*zxlwK}{>St5~-y=){ zL?Z~=$D+PiXH$Uj*L)cO&3hbvHj}bK4B{=_Rht54 zVF#-rTiVts#Y@i;bf`P)$OovKYM&xcpv!wd5SrB0egdF8!r|Q*3nh$@6{f_*g{`H) z|5JfcfVgX>I*~rxYNWgaT(+HjJEijhKb)5WHM;O_BSAOBejP>;0>rzB?NX zQKlb<4rj-;de#j+&Z@)eU9aDp?_ zbUHI#)l3!DO-(c1Oc&ARh-ISbX<~xtWn$O}HkKD`1TWYfc9!iWV%c4$gYKqh=xVBp zs-`N*EN5a!XJWvBG4fru?)Rh1k&dKuboNW^zT1DnPsAsP$jBfFKhGl{o#**|e^r}% zoYng_dQCFV1Sy-hc%Wv=5&O0S9QrhJ&Pw%=jF6xMylma%Du+CM9HUw4{PN8+`uFOR zL02gBfBtlhap*VsuHiDbNaouX?yc=Bt2oDT@Y|QPaCM^*TtlzD@cXgvC zQb$%Bb5ndbP0@{yj|$aNZ1)n6$#r>VuatyFHvY8>zz z-shaf_E@)^vE*x}o-x&#a>PuLT>BMz0)3W47uJUf?MFo!MO8@R@*uzR?O7%`hmuSo%$Tg&nFLc)X%D7%iO4u z#_y8t_m|{iksYZ&DG02yYkTWk-_NYyY?l~gt8DRPt-7aTR%iaaJW|;t1yLtQqCs?* z8G5>1-YTUXrMEiGR_|t^@n(e9)SY6vV63hDqpibL+JP=5rL)G0W|>1%*QW>Q+#5~W zB1*qI(I8Zz_R3oB7lK1l-IZgh;A(Cpv18~pNTffnsU~BL_4WET>0f$YPj{A!4Sn1G zq`Q$s&%7Fn@PeFis6DOIMOAXWg^y@`A=)x=C;D1=ID2h-j9ZR;xFxz z`R^$AP@m_afqd>9TD`k%?`33~&;NJhdp9Mw#iH)rmy0#N8a#lg|H!%yjSqQR)Ra5~ z9uTG0f}>qt^0GF~!CLp0x%Y?0&6kZlA$8L`j5vc3Dr5>w6r9pYUOL9p0s z?@${|Q!NpStxeAD2yal>F(Gk?{$qulu^`I9!f)_mG3#@7I_%PePP3B6*Tr6!vDSTj ze|ltxO`#Yo5`W8Sbd0P2CAxWO%teJ-rqfv@`?uD#%UNB+TOwK}#n4e~FZ{@PnGjo+ z<~sY)hN&a(9VpciNJboPHuAXiVgFWN%#>A9eldU(Tu14f^1=6u8rGeWw0|#C-AN^8 zul}=W!33pk$l>M>=S_0#^Gqkr7^xPuAr$B)5taB2!EKJ_Tdk%)eE652y>C#NFfNsu zZK%$*4vIA0-%xVN@3vHz)mq;fSjR=SZiK^|)E{*d=FNJc4v>RAcBu&N^IvV}YYYTRBXFy)HJxHji(Qj8(-9Ug9TaDO0K3U5Ie8nRfvNy@K z;{E8WTOliI;c*x_3Pspg}Ol=|N8z}93XW470>68+wDtd3e zl4c*=La^MZ|I%)?Carip zRZYW>Jbm_#vFJr_UoxShVCK2g^_WP=~miJWbRpc#4l)<2Yrxq7ovOYpIb zmXY1}D$l(eZMqNPT?CN0HJN^kM{WFo66Y788uXoeR?nGwnvHafg61OVzhk|n|BP*9O$ zvzm@YgRFo9v{ow&(yT?3dg>rhx?QhmU(c_YowA(KE*189?XPo{K)_Mpt72@wePArg zi^((!F31`otb0bgLy0}^roPoqgxMqCv=iwSyy~e?zTp2<(HrL+twIQK4~)6_9-1I# zM}p4-o%FMP**8q1+0cqMCu=e#v#L;Db?bY)GV*H6LtEc$*ez>$t(!zNbiT4|)rGXp zps;B_Apc=S=YHk%i9>poy~(v1M`ceZqt{mKS_Cq*`VT9XN9C#*@>|OIHL9%=e5PlS zWx4}~TBl8RuUFRA-lIQFm$*WJ8b69Bb!XtGI8x`Th)WL+S{}DiUQM?dekWc4nB~qDfp^Ckw^*B+JeU&Eu|`)${Yt2kpY-_Z*aO7+*+mEJ!Pz zHO%Sozwx(8rtR;`TXCXnS|4UZNKipEBE7>+R~p`naR9~>rfFr(?<(Tir+u1%j+z z*;CZXx?C}@G$b_r%63cxm8$%GF+;c{Lm3w)m1eSI`o%M86m6e=<`a{vwM|VeFzzNT zn!K;7X&afUwmd==R70s<zpT1~?af-V z^tkbpT64fa>a}P|6Fxj2pFS ztT+Sv0tN#eJ%+cQ1flD+LMzP=S)*NB2Op!CbQkU z+)|C2ag`S8W64#w{Ie0&TtPyn@*n9vT|16Kv+lGZ>{PG);mH2g(D#;7xwm;rBdDRU z>M4_J&)le~{#uVu18*z5RykB>lZv%$)>5UIE#Fonh=ZIK?Z1ixvNs$C_GUw9ovWJ#PaX)8%f40S?!Wy~02`gM7I zn%0%lKUaN!%9LAKWk+>AYuF-WSW~6V!_lPC{ibatZSLn?RM$5fsbzhALzgdY2y(|% zmkJNfrNSn=R8nK;BQ#ntZO2F-<1~|7^7QyD&OU;9}Jajc*E+hrx=aOc{eQOclFgJM?;?^n1)W+ zDhDhE_qwmbs&yjHrELe?eO)!`;7XDHUF`lkF(7!ws@XtocL+4W_!Y6t7~;sRb0D6i zR{lKG(G%PE&Esm;I5{f)!n{p}I;_oG(WwOPSbU&F@|7MX zY8IO(s_a+z1T#6rs~l;nn4$t%8C#T6NrJ2=oPi?3AT~A! zMv?aOFrJSUHsz;#9gGo2eP&kw1T9TEq=9&^{s$XQDQvaJ+); zL@Dlu!~DyRV;`IBCY5&cmv5K%J`?DTXmccBdpV@9cS?N!j_C)B(s0@A?iACxXgpZ3 z{C@XB-N7Xre21(L;6qYeTwRodi=}F`s2ii zp@Tz{?pnEO*%RsHsEkI**XeT7ptk%qa*I(Dw9>Y}bl?(9n)QcD@*u&vc{kHWOfw!* zjaz;nUHWRL?3SjxCue(&Sz%kly=)TIc1;r3_Ktef)eh-1phh$x;x?+MoKnQ05UvwY z-)OXXm&@?xZMmS;>+6PoTaEa_TwA2s0@-O<%#IMR+7rvBWqNV!NeA@Bj zVv!O)iQ3KCVvel+eMTF2clpJjXsatLU79~qc%hly`MQv=%4Dv$#B`d4TB_InXLU{B z!+jmyi%L9ad`#gOq03>ZpktWHq^Q}N{usibOTJi6-SD)WtwoQa^+Q6Rb_7ISvnu52 zYQLcQ-nx=ssp=T2JCHW!J_%<;7n&Y5Mca3?RZFLbXAIV-`DB4&`vk&mMYW}d5^0Yf znPE|}M`tPuUG_fGLzG7up11j}Yf=l9=4hS}T~GhY`#$%pfQX|?(biXNM~ent`=7UY zsaca{t^T>F)=gV-p0m2h_PWI7$Y4KMv07A8G;j_3GM_uiHdh+ss*;1ynrNG^wf!g+Zby>ix#Q z!=2rx#o2BIc2to!O57gS*ywJw)sB8N_#%bx`Q^Tiu%Y504TDK@#HK47tWlkoMjuCS zkH%g6)jzWV6&24>QSa1GPb*lU0*$s7P*z7;}RkN|9 zC97&xu4M>AKh-0sds98FOoRO=M=MEHbiZ;qmKCP1a&q_gSKHsdj$37erVDRDM8(B4 z^GYc}Zr3?Ip*52Ew`|}s8k5sH*6q@K6SVK4s2Y#vdn$n@ygWL>#&d>PO`l7-%ymEO z@8J5TqoGslzu=K?EhO6mq$~L^wXOYV=xvKTnW|{&%^Wi-hD@bSZ&I2#3MTg!yucIb<;OAQZh>YNeYs zZ}&d6DG53QUQx#+T}nseT~SU<%jgHu+x5ykZ~pC`@Y9ypHA3jx;`TOUJ6J&{x0b%g zfUYdm%BZ>74yX-N!)7l&Kz*#EG2O_aWRH*xcq!W|kzdy~IDc`_nqb5~NLED0=fT3k zWNYkyY&oc^-uEUb3D%AJ&d5&$i?;e^7}r&{oQm9v98I-s zwz7CXgQFUM_6=K&hdX9usx>-ljx%j$ZGJAM>)#xp@*(Yb<@fYVXumh!ZE2xV_xjRn zrQhaE?;J_+loX8j4R;xy8az8>1jX>kZoivbfAWPj=N~{I`!h7t>7X*@Ti5BlY@t=mQY2OnHe#h% z$0-y9{bp-9Ep_y9#VMKF4Qjcqvm|>YMW3Y1xzOwQs$(gBG)w zs&#a4snvyF9(g;~>CN zO1~Mexr-g3f`cUDN%fjmI8nAcq|Bj~6j=N~Aq~97RHC(ITOZX=Of84Ho57w;+iK8g z(*eQY&9`f4gDhntO7jS*=vKLe)UD zG`F_0SNjP;%ZXa06y6r|l`cu!X=#&0`)Pr|%V`F|7TTGfz@Vxt z5yHW`wzr+D`CriLAGw232JaTp#J60tEwkg#+>XX;H2WfrS|-!9_eGX+Y=>ydCS2PS z8$zEF*q>R^IE@yemn^$pgk^OpuNEqdR#qi_y;2{xh}2`l)2=#8joT!J;p~#J^Da@W zoePec8kR$}!?x8Os1BJ#Jvx1VH@Qxl9UX+fH(5oeO3KFjctGAT8Hz<+gRNHf{3f&d z(y(n1TAx^zu|X8G>~nGei3tQ?Rhb7Wu%it(-)gp;7EotfjnsW<#yTGBn=tE)6Pw$j<&F$J7=Q4F(e-e&ksug%av^2gFk zn^m`y4ZfmMwJwEtEBZGhni_fr_U+XlbG*!VA5j#)q7tbJncK5fIbuZlvX?gYTekek z#Z;f6OTUrN>iUFq%b#+-)R+VPg^S0S)uk1RxQ$i<2qI8U94O=>Cyx#lSdj6Tx z-#DOVtQDJR&4->Da%5`bCk$Ecqk1ZR)r56d0g3B%PoHTajCt+(3*LHY8*(! zUsYc=yLTFrZ->z2v@pq}XSX|i$D zfaxip@1vbXqR%Lo7aY_P)pjsNr#xgA+q>e+jvwmNJYANz1R-9pP%)G8o1OWtVm-5D z%&CWd^F%Bkan~)+6Cd}Im4;bNWDIx==v`6uewrIs`Ir^4Q_rfc1Vu~MSH_HPYiU#d zG^d)hmCh|+eaGmL8-Zl~=c6O@GP2K2n1L*6k=Gz1jwaI16e-)dbtVWhMIKWVWAt>CLbCzBr>X z7E*1QX;jF>{+N$R(|8p{S>EGtcE@n8Zlr#hHpE{x9#s^|+3<8%v!+qgd)>V>R%g+cb61FL-9ziT%k|YQ zqK@V~MysRRv)*Nn>X>@tUntvI?SAmv88QVjJLl?0O?L zSWQ<)P@nJ(uZz$T=gz_Wl!MrI_dmmR8TpOujkWpb7PUW5#M4pY86)pW$)g3DoTv)^ z+TLY{W@9JQ4#+o;q72;wdD)BdeqmS&uy8F zJp|!8fRv|*XTg%=^kO|=B1$!rl$geGs#B^qkh<*9liU6N5?ZWw8CZ>RU}B5VtSi}S zue8>b813J%2bIH0ReYPNmymD6SDCycMm9tLr>jwrZ2DZOyf(J4>E9u1cy!a~C31gN zb#1GSWxibqRRV*1bhX%*uLncKSJiZnwq3MVdnXKByKnkcZGQc}m?w=XX|UWsWQgpY zZ?l`4r=5b&NVVxZ8xm8RZ$1uZ+0H*_zGma4Rn_Qa&^0Udrn0j~ihP&r*M6(iJ|r_c zj;&(5RBe6I47oh@6B?~gXYt@K)Ht@Y#y#|2cl!r_?KBtPur_DHMmcDI$rz*#wtxM> z2UR}vxYSnbAJ`H8qiNtr_|il?TIg8HK7oF~RKl=wI_shO%mU$Q&sq zYOEUelpob``8a9)_`g>l;6>k;VaEH|@Fes^d_uP4gYBkb?$I^)VMCG_~*Y2RI+PB~Mp*Km#+IfwIj}*%C;cU16iSZ3(lG4(= zG?qy|Z}|iM?rnW?xiwmirq@4-h4x#h*0R>{d9$C}mh%TUIwNIdCe{YaVMRAS&+X~- zZlzXN{V!XTzL;2Xm+MqziwdIR4H2AmL1`#k+COd&@B>xHn|-GDVs**f^`&a+u|>kY zG{M*!UdHIDufO_0+e{V=q_nBu?n}1S0~t$>=&38(*4!a`;6>Zn%B4GQXW6Qi{CADd z-Oe|-;?*o#S6juEFJGg1d)h+eE2V!*tha4D-G6KS<{O8(7_w`M2M9tdc>*O=({{bJ z6D=;^_t_>rHp;!%C$;KbVudwiXs>^;w@}%z3tw$eKEq}{b&y_Tvu%M$aOe%I=vMIkw7WgP8vSbV ze=+H@qg!VE-i$j-?z~d9U+&XtMbYP8&bIyU8^h)fD)ZFxQl-Zw8d)!TtnajwS}j%Y zC_Rg=oZ;Jm&>iA5+A@+}WS?xe)&p(PY8(50xe^oFXyRT<*G2kvuhvIpHO<}?2R_R= zM=toN^`)r1>@uR&tv*|G9c%P4A{CXHMemZ_#f=MWB-O`k9_XcLBFU=m^e;;0cBl8r zD?433#HIe_>PA<|`UOA0jkH#t{3hiVNMkwMLwd9;LwTg8T6Z2=M_uh)#G%)YQh(~| zGb1!OU{-RT;BQRYh5TNB5uve)HqOu=dE2^?zSkB6pLV*WHJ6$g^@Iusjx+>wD@dEW zbV9G&v2RtCdtII=y5eyO%aK**nzfD2YU_=>vony*Yk$90>v|OBEH-=HME6zLSW4&7 zt1o-!w*5nB%vC(#OY+@ToW0l!mDP|zvnFq-d)YR_8Z8FT8avTftZ6DO`|x)yIxuF6 z^*jv@^=e}xYwnmo$^X8A)irdTn!D1}RVpj(ZDYVm85D2AyAW#VT8l2Z=2#p_QO|ee zZ9Uc7HV&In2B6!~3~IRAub*&x90l$4ArZHk&53S$Qj;SDt;yt%sD(+-q2$0cV~*@p zxa{xxI-eH#@GHvA$~fn>e@FMZdTYI}>nl#1mrU91p{@5f(kr;!^@2>+I|ts1Y^K}3 zvzPpQRHHM|U;N3|{-#l<`Dkv<9V?lsu5#Jil18FWj49%arnT7mq%0Oj|0HYfGWD`M zG+7|l%bQVV7Jm|AKy3jhK&BzV{k#MwIryp^;N4Gs+ z{$5Z|Y8rZyu)F{8z)C_hru681-9nOY70kU!p^IHWFM1niY2jTFC;qrgv{2s~R`g=L zl%*Ua-q8fJ&0AJg5rJ5b9G`ll&-fbCu6ycTy0}U5z4S{NE@+WB&*2PFDF)l-G2WvA3d27{_ z>x*SMFFrgroTi}~GWRyiRQ7xIujTJd`fb#)4OhCJnYG1iPr-qE9*&ABn=tpt<8iv_ z94u4}mP0myKu?!y&6+L-Q^og;4|kRZ$tQxR{$D~eikzmt+1YmCo;N~*0zRir_avwp z9xO!%Tka8`oJSBazTqq4k>P>PSI({%>Gc=EwK4C~cv$~us{N3&M0DSyT2M4()^lDx800E&F$gK9!?wY?@^j=%6xF(i;>Dw)9-xouQx zX4|DJ_9=UZ(%;oeNVT?n)tyI-TRY#~)cvnqSm+`6*>;;hsIML_Qk&NN66&aynT!Ty z0i4Qz9?JgE=~mtwx9H;@&(?RJz9oH>Ub|wBTkUDWoeUYDl;XMG^oCG<5#b^m!cLyg zePr7-5r13OFSn%Ob~D``5m2)(vR}zP$yZPv98yajZbSH!V~MV zP40U-;3$`MoPWCeh|O(IjSbXVt(ug2kTHBLiNy0pL1S3s{4cZ#KE}`;;p+60m8LekV|t-+ZUk@Re!i;h$>E}@DRrbgSTpyS0(suVee(-Eo_e{O z;3%W9*lUZqNaZ9Azj07%wQJN>(?PgZmhK8-3WJjidTjKO;9uH z6-QEtdEV*%UdNs7X&}zJn0;z^qR0C-!+^Hb+GgsK>(dQBX=5`rPf?l+7$0}-*Y}3e z&{#_}su zcC|}aAM>v_G~bSBg-$npupD?N}y3GgkB@L*+!C43CO3M}KM;d1YrgjXJzmTiLPkVup?Sh{H!*rodoBD&iZXL-zyA z;Rd2|2u+uEjLhpD<26&wFUd8FX)yqh8uKM>t8R!KP!3skg84#4uR3__(g#_4ol=i@R0|4njT{;f$7{#5HwU%u9_Z7eUlpG-Q>W5AC?^)Z{(>89RS@MJ1Bda88xPs=0 zGOB6^d)gmW9$WeXQlsGRQSHu})%ZN3HvPktE29e5q=R#R`)@mITC%L|kjCa{#klRX zJk{{eOz5@x^~7AuuYr579bP1{GL zeoa@o!OM2S5?brj*UJ_)?@*b6r)aW%V9)Chp9OpkP7PJRpMSZptC22Bv`(x3!OmVw zV$=F+JV6KDa*iYt!=Accd^NviDa>wskhhlkWs}jl6qRWHJu=g>kd@l(?<)RdB^!=? zcJyLHX>7lBzvpg{;wyc>Vy$$MoY?7p+*@e9@KqYoCYv{f8i7Qj(|R#nK<*C1MEu5Y zQt7v?zv+(upl#VS3H3h;wp~*1t4?0I(x5-s*30`HwY+6$I?Ek=m=3vUK8zhLmoBr#XZ(q+2yV1Nw1&r8M&U~Usr2?GhLMHnA^Wb6iQ*OL=kW6MC~`G zy(RREd9eLt=@8k~Zs6smvCdVq9lrL$kLC2ayn*gSt>psO(Gn}gV56Q#E3r9ikKR!F z*KNyo!}cSmcA=Cl6ZiTCQy+n2=B2X>^{qq*jwCAKEbY6XyQrhQ(U+XME;V?}Xs23&jmB z#hFZnqKh7Ed{?zOCtFDA9l!Bd#X!J zeC46sUFuP^`JKu<6I~$tJBI(zWwB_oiPfNeipYGk;QMIFu|#=7x*rOI%8Rs)tT%E- zO0W4#mtMAsWP$6^WI4M?IFot_366aZ=MT74qnn)SDUCkb^nWb$JxNJkSzNaNSKe&Q zCQ&y#Qa5y8VLFV+Gjn!TX@9T61RKt6OhGdYS2v>GP*f}BUK4Jn z(B?n=LAS+XD(>qV?VA3BKll$C3<9QB|6hOpSO0$hPygcIo%{FafBGN(&0qZane+ec zPygcdg?Ing|9{N;+ zGjJBp!Fjj<7h&ezzX5{=7C7L+0Uq!}2*NM~qc8^JFaeV=1=Da8j=^y_0Vm-U%)n_l z183nJoQDf=5iY@HxB^$<8eE4Pa1(C9ZMXw>;U3(F2k;PPVGibD0Ty8iBCrloh(j9k zAV3WykU@i=!|ojH&cVB-Km!XL@ZbOs_#p&g7=lq4gK?OENtl9ZI10z$IGli!a0+JN zG@OC6a1PGH1-J;8;4)l+t8fjj!wt9zx8OG1fxB=I?!yCk2(vH;^RNJmumllUhbY7$ z4S5it1`^1yyAO8fVCLOAz@UKz4tQ{Y2mBC%Fbu&cjKMfez$8q;G#rIva2!s+NjL>F za2n3QSvUvh;R0NQOK=&kz*V>g*Wm`-gj;YM?!aBR2lwFtJcL=8gLznhMOcCetV0yy zkcK=6Py-2M*xd)ab1?I69bnMF0tY-ezyp2=K^TT$6vkj2CSVe#U>c6XF*pt<;3S-a z88{7R;4GYj^Kbz!!X>y2SKumKgX?euZo)0N4R_!!+=Kh@03O0D%)vY?z#=R`1lA!6 zaY#cR1gL=oGVJby-8q;+GjJBp!Fjj<7vU0IhAVItuEBM<0XN|m+=e@F7w*A*cmNM!7Up0c7GM#UAOh5a%gejPYqi_t4!wEPE zr(gz7!x=aW=ioeCfQxVmF2fbL3fJH|+<=>K3vR<5xC{5-K0JVjFbi`q4-2peOAvu| zh(a9FkOu*3Ab||K`(SqtX5Os>3>sMAfCmS7zz-n^!w`(Z7>vUNOu`gQ!%;W}$KeE= zgi|mBr{N5og>!HoF2F^&1ef6oT!m|J9d5u)xCOW24%~%%a33DPLzsm*n1=;ege8c; zIz%B3X~=^BHIP7t-F>h-2Q%;10R{~$aKM8DJm7~AgkcCqVGPD$0w!S!rr{_YgX3@l zPQodefzxmX&cZo34;SDfT!PDR1+Kz1xDGeqCftJCa0l+fJ-81K;33Sy9L&Q4EW#2* zU>%|mhcx6tfEq|3!|p!Vor9To>i~lW7C7L+0Uq!}2*NM~qc8^JFaeV=1=Da8j=^y_ z0Vm-U%)n_l183nJoQDf=5iY@HxB^$<8eE4Pa1(C9ZMXw>;U3(F2k;PPVGibD0Ty8i zBCrloh(j9kAV3WykYRTp?9Rc=yLEs;0}CAR-~bQ!Ap~I9WQahQNfn1X3I3di6$ zoPd*X3TEImoPo1&4$i{`xCocvGF*YHa1E}*4Y&!n;5OWWyKoQg!vlB-voHtqumFp& z1QA$=D8wNRc@Urm63DQ-4|eBZ=G{8Lpn(MrcyNFR{1AdL48bUj!8lC7Buv3H9ED?W z98SPVI0Z9s8qUC3I0xt90$hYka2c+^Rk#M%;Rf7w<2Rt~y1AYiW7=~aJ#$X&KU=pTa8jiv- zI1VS^B%Fd7I1OjuES!V$Z~-pDCAbV%;3`~$>u>{Z!Y#NBci=AEgZuCR9>Ofl!8|O$ zA}m1!)*%XUNJAb3sDT7B?CyizIhc934lrn7fdd{K-~m5`APhq=3S%%16EF!=FbzlH z7#xQaa1u_z44j5Da2C$NdAI-<;SyYiD{vLA!F9L+H{llChC6T!W2xy zQ8)(2;RKw7Q!oRk;S8LGb8sFmz(u$Om*EOrg==sfZoo~r1-Ic2+=Y8^A0EI%n1wl* zhXq)KC5XT}L?I4o$b$eikU)mreXu(RGw;>`1`RB5z=H!k;D-=|VF*TH48~ysCSeMu z;V2w~<8T5_!YP=6({KjP!Z|n(7vLgXg3E9PuEI6A4maQ?+=AP12kyc>xDOBDAOa2xKxUAPDL;Q>5^ zS(t-)Sb#-Xf(Wcb6ylJEJP1$&31rya2fK4H^KKnr(7*x*JUGAueh5JrhF}!NU>qi3 z5~g4pj>0iG4kzFwoPrrR4QJpioP+al0WQKNxC~d|DqMr>a070_Ew~ML;4a*Q`|toB z!Ys_eJS@N>EI|a;AqsIwLmmXEfdn$_?t|Sqn0dDjFlbCMkoQ5-S7S6$WxBwU75?qEWa22k>b+`dH;TGJ6J8&27!F_lD z4`CMOU>+7=5tbkV>kx%Fq#+Li)Ib6mcK5;V9L&612N*Q4zyS{q@PHpe5QZTbg)tb1 z37CW_n1-Wp435JII0>g<22R5nI1A_CJY0Z_a0xEM6}Sr5;5yuZn{W$m!yUK__uxJ} zfQK*(b1)AJun0>Kfpv&N9MX^n0cs$D47>YacMfLWtpf}iSm1yM2YA2_Aqc||jKUa< z!vsvi6imZWI0nbz1e}CZFaxLI44j2?a2_teMYsf);R;-ZYj7QIz)iRXx8V-lg?n%x z9>7DGg*ljq1z3b7h`>5TAr5KCg8(&fLg9AL^hY*Be2u5KH z#$f^`VG5?(?1Z~{)kDVTxNa0br8IXDj&;38at%Wws*!Zo-KH{d4Rg4=Kh?!rB| z4-eoW%)%VZ!vZYA5=3Afq7a8PaunRn{|g9a8j;K2bN@Iwf~Fa)D8 z2IDXRlQ0F-a1@TgaX0}d;S|ikX*dIC;T)WY3vdxG!DYAtSK%65hZ}GcZozH119#yb z+=mD75N2Tx=3xOAVF@Cz4pE3h8uB1O4J43ZcOUG|!OXjLfI$Nb9Pr=(5BMPjVHko@ z7=v+`fJvBwX*deU;5eLslW+=V;53|pvv3a1!v(kqm*6s7fva#0uEPzu3Af-j+=07r z5AMSQcnGsF2lKE1i?9R{ScfRYAq{yDpav4iu)7a-=V0dDI>4ZT1rB&{fCu~#f-nrh zD2%~4Ou!^e!89C&V{jZ!z)3g-GjJNtz*#s4=ivfegiCN4uE15e2G`*R+=N?j8}7he zxCi&)0X&3Rn1gv(fJIn>2&_XC;*f?s2v7qFWZ2yYyK^w}ZXICIzyb$6IKTsb2tgQz zU=+q+9425AreGS5!ZA1wC*UNUf*CjsXW%THgY$3!F2W_a3|HVPT!ZUy18%}CxD9vU zF5H9r@BkjdEX=_?EWjcxK?K$z3UNq79t5a?1TyUIgWWlpdAANQXkdW@9vt8SKZGC* zLof8E!38!ENPQw{E3+LcGT!4#k2`hk;66NnhcF9sFb@l`2ul!wb%;V7(vSxMY9N6OyZc~w4rbo10}L8i;D84Qc)$-K z2*VJJ!WfLh1WdvdOv6z)2FKw9oP<*_1E=8(oP~369xlK|xCEEs3S5P2a2;;IO}GWO z;SSt|dvG5fz(bgYIhcn9ScD~rz&b=B4r$1P05y<6hTVOzI|noG)&T|$EO5Ys13ch| z5QJd}Mqv!bVFD&$3Z~&G9E1OdUAv8nsR7>wPC_U`2qA`1H>FGz!I#%25i9&?7;yXK><$S3=Aki09SAWckl!+@CF}HfiL(& z00cr11Vad@Aq*lw1JMu*agYE>kPIoH1s!BSCg?#1BjiFJm>?etpb(0n7)qcN%Ag!7 zp$cktP;&!Sbq^48umDT21{<&iJFo`_a0CT7fip0m1OZ&Z4cx&KyucfLKn1?w4*?Je zK@bcfpoTDr01ZS#EW|+qBtbHyfEIL+0hyo&8H|t%d0>KkD1bsJf?_CvQYeFRsDvu0 z*+I<>RMkB|%)tUI!5VD97VN+t9KaD2-~`UVfD#071vhX9Pw)b7@BtP0f4(!1J96$~919$KQFYpE*P=PP_LjVLq5ClUAs38m@ zKm*Yb3vrMDNstUFpamUdKqlxx1|#G`9+)5>3ZM{*pcqP^6w06+DxnH$c2IKzRdo*# zbFctQum&5j1v{_@2XF)hIDs=TpacP2!42HO6THA1d_V=h;12;12tg1GA)tmZhyV>l zLoCEW0wh5)q<|K5kO7&X2N{fz3wdCId?q z2MLe_$&dnC&_M=df*xcrLN4Ti3G$%;3ZV#!p#(~y49cMrs-R{EH8)UI_W&^m3$O%h zumM}J1AA})M^JzhI0FMp5Wp4Oz#Tln3%tPxRNxE#5CDM?1i=sjY6yb}&_FcALL4MO z5+p+kXh8=VkO_K_!3epK2PVje0w{zcD25U!g)%6IN~nUG9n{=FRow%`94x>Rtic9s z!4B-f0USXAPT&j-C_w;Ma07Sn1TXLgA5eiW_(K2$LJ$N)2&f?pB0vMt5DRgT07;Mx zDWC-%WI!h9K?Wn_LLQhP9}1ulil7)upcKlW94es-YIaa_166eo5Oc5qORxqTumwA? z2M2Hj1vr5-FrWkhT)_?8!4tf|8+{Q}GNgbO zbdUj=pa&U@kPCTWf_x}|LMVb_D1lNagL0^ZDyZ2(%?(u5JwVLC0xZEAY`_-mz#bgH z5ftDA&cJ{Y1aJj6a0gHD0&nmE75IWb1VA7JK`?}X8p0p~G!PB35C;j61j&#BTF^lT zWP%=KFhVZmfeG@V01BZ9ilGEbp$y8Q5~`qP2Q@cPRrdff2Me$SYp?-ZumgK=07p=O z6F36{N)W&m+`t_?!3(^>2UOq-{ty6x5Cp*x0%{0@2+%+@#6lb-KoTTF3TQzG8ITEj zkiiJKkOwBnhXN>sA}EFuD1|a8hf1h|njO^KKvmrX#2hTZ60E@nY{3rf!2ujW0Z!ly z3@AYWS8xM&@B}aL1|Lv?FZe?M1VRu5LkOrL3?e`S(GUx9kN`=L3@M-m9b`Zz=s^Y} z`1H>FGz!I#%25i9&?7;yXK><$S3=Aki09SAWckl!+ z@CF}HfiL(&00cr11Vad@Aq*lw1JMu*agYE>kPIoH1s!BSCg?#1BjiFJm>?etpb(0n z7)qcN%Ag!7p$cktP;&!Sbq^48umDT21{<&iJFo`_a0CT7fip0m1OZ&Z4cx&KyucfL zKn1?w4*?JeK@bcfpoTDr01ZS#EW|+qBtbHyfEIL+0hyo&8H|t%d0>KkD1bsJf?_Cv zQYeFRsDvu0*+I<>RMkB|%)tUI!5VD97VN+t9KaD2-~`UVfD#071vhX9Pw)b7@BtP0 zf4(!1J96$~919$KQFYpE*P=PP_LjVLq z5ClUAs38m@Km*Yb3vrMDNstUFpamUdKqlxx1|#G`9+)5>3ZM{*pcqP^6w06+DxnH$ zc2IKzRdo*#bFctQum&5j1v{_@2XF)hIDs=TpacP2!42HO6THA1d_V=h;12;12tg1G zA)tmZhyV>lLoCEW0wh5)q<|K5kO7&X2N{fz3wdCId?q2MLe_$&dnC&_M=df*xcrLN4Ti3G$%;3ZV#!p#(~y49cMrs-R{EH8)UI z_W&^m3$O%humM}J1AA})M^JzhI0FMp5Wp4Oz#Tln3%tPxRNxE#5CDM?1i=sjY6yb} z&_FcALL4MO5+p+kXh8=VkO_K_!3epK2PVje0w{zcD25U!g)%6IN~nUG9n{=FRow%` z94x>Rtic9s!4B-f0USXAPT&j-C_w;Ma07Sn1TXLgA5eiW_(K2$LJ$N)2&f?pB0vMt z5DRgT07;MxDWC-%WI!h9K?Wn_LLQhP9}1ulil7)upcKlW94es-YIaa_166eo5Oc5q zORxqTumwA?2M2Hj1vr5-FrWkhT)_?8!4tf|8+{Q}GNgbObdUj=pa&U@kPCTWf_x}|LMVb_D1lNagL0^ZDyZ2(%?(u5JwVLC0xZEA zY`_-mz#bgH5ftDA&cJ{Y1aJj6a0gHD0&nmE75IWb1VA7JK`?}X8p0p~G!PB35C;j6 z1j&#BTF^lTWP%=KFhVZmfeG@V01BZ9ilGEbp$y8Q5~`qP2Q@cPRrdff2Me$SYp?-Z zumgK=07p=O6F36{N)W&m+`t_?!3(^>2UOq-{ty6x5Cp*x0%{0@2+%+@#6lb-KoTTF z3TQzG8ITEjkiiJKkOwBnhXN>sA}EFuD1|a8hf1h|njO^KKvmrX#2hTZ60E@nY{3rf z!2ujW0Z!ly3@AYWS8xM&@B}aL1|Lv?FZe?M1VRu5LkOrL3?e`S(GUx9kN`=L3@M-m z9b`Zz=s^Y}`1H>FGz!I#%25i9&?7;yXK><$S3=Aki z09SAWckl!+@CF}HfiL(&00cr11Vad@Aq*lw1JMu*agYE>kPIoH1s!BSCg?#1BjiFJ zm>?etpb(0n7)qcN%Ag!7p$cktP;&!Sbq^48umDT21{<&iJFo`_a0CT7fip0m1OZ&Z z4cx&KyucfLKn1?w4*?JeK@bcfpoTDr01ZS#EW|+qBtbHyfEIL+0hyo&8H|t%d0>Kk zD1bsJf?_CvQYeFRsDvu0*+I<>RMkB|%)tUI!5VD97VN+t9KaD2-~`UVfD#071vhX9 zPw)b7@BtP0f4(!1J96$~919$KQFYpE* zP=PP_LjVLq5ClUAs38m@Km*Yb3vrMDNstUFpamUdKqlxx1|#G`9+)5>3ZM{*pcqP^ z6w06+DxnH$c2IKzRdo*#bFctQum&5j1v{_@2XF)hIDs=TpacP2!42HO6THA1d_V=h z;12;12tg1GA)tmZhyV>lLoCEW0wh5)q<|K5kO7&X2N{fz3wdCId?)qjouoo4tJ{FbfgJ9GZxz!gC=m#>&Tf7bH<^V9#Y@2;FZ!(Uu9 zjGx!y1>4d+K{|P+OtLf#mlyA9$l3U|7kye(N(U!z=O;JlA?7|j%WL<&5+^P>C;iv7 zf-kt`DSE6J#gD$Dl@e`-DRV}B7SBFgD4k#Po%jBCuAHTMAjR+d!FTO!Cznl}DxOa( z;)mOAmY&8GO8=Z+C_Qa`ODx#_{nDb@R+4_W8Q1AghP1VHvdFB;<8$pha$$$oOH)#h zv(6{$%NNhjHP|f=;j@Ofl0N_AEf11f%cF1E2s6mzr|XIHgH>fQZ6zQIFt>GZq+;n%+I@@0=%Laj1K;nU#Tym6zI`0x4&`U6|) z2Kk@%JVVkkrd&@@AtCNpm%_l(ljzzs9eYU}^QtFnZxy$@ktZsn)~B z^8AIr`D1=VglUxrq~lwPrKBEprGSM_(uTFk;)N6OQtT;KDwyKIzZ>6Q2%gcDfB15| zT(&01Aitj{Z*Fvx@AGo3{Jmp6dE&=${CR~ernp;*f1h_3&aOQtJ?(y2`mukGF!H`u zG(FqLTMQZ_eVN-tuIR8>wjaYwt#mPb@RC*h=R-w&;rH2DSHG&o0LLh4@oigv$_klZ zd2=ei{^%7+6`js6+uxEm|8E!H;=8Swbum&}w(hjpcC%WZM?K|fpZD`m2Qp&tj#Xkm z=NR$P-sAiSr~Q2L(GWg#dZrYzuAbcZ>=e0T$7RWR{ycfVtwHbbvBD73(n7wrcefZd zij$*fy8;;Vt!d#U~D1h-pdp{;+OE^^3g)%#!u3@i(7dQReK?Ea9bg6h>zeNkR#b$PnY^e z{gUQfJuCfle2{S5`mS_-;dK7f)I90Wm22GIcL(|W9!Zkh?>*e3ZkPC_&BC~GotDWZ zmDfa%sFw1Q?kRkmUR&5(r}H>{`U+k+y_=6n-z7Km4B=U!^WV6QzvdW2F1qt#Vdo10f|M zLJD2@U7GkIiT`vU$1vwh1i!sge<>)!UVgA?96#$s8-ApkvDZot-}X+lO&Kb& zeFsVNI$q%4kW&8C;5DadrIe;Q-{G^YCiBlb$MKcNuNW)_4-qb`s3i{@k;rB5xGS{` zwGU#Z>~Ya#yEaCyp>mcr}3 zUHE>2AT4jQguml4oiA@zC|yk|lD^iO&j)SlD0yvfB68C^h})((^6&X!`e*&7Ndq%Y zQp?-@xP^x<@ssBz^Ow?lN&{Lf!{d&X)ZocVzG8YI?~%5i|1^E8*!6>r)WWBsG_Q9p z*?U|Vzc>FF|F>Y1l0rI!tRCNb;*Y|1gU zoS&+*l8?Lj@fL42qEM?Y`|M~piEW+1Z~xgt__ptaR6lu?)OhI`ab#f&;px>1e$O%& zVb=N_u2Z?1pV^?BRGBu3cTl{SRyE;-ey8q<-+FhDuYPDQOq1&fKg+)H_TM77;YVl4 z?@uh1wsiO`t_``yd$ne{wB=j*FP4M&H=#S_apQ*@KJ^UeZ*H&4olIRM6x;pb+jeLm zSl&)#b=)PXdzB~uW@-d)x@W^Xq?4U&r92*SKaYU%o&orcw3?~<=fqjm3j$_g@oLG!iJQl+=M=6 z@{Z{;U+T0#>h~?)@a98Xsm(oS!A(7ue;nS2UpMh8zoo@0@%)E<{Pfnx_@b^BQt?Gw z;rII?{N*q+?sBUze#GMs;`ptcy!Mt_x+^Y~^Ov9F)q9RhpgK;D&N;{bIMz_kalX%;*=;5G$8M01 zwY|lE?6ypDZ1t5Nz9LF&G`6?AsljP+N|TntVb5{A+5LLF-K9NZv*g;+j0;MkPv8R1$7xR4PUmzLtgc@ zkKAv}cKIgXLh^dlT{xQ2P(D0xBp<%jQyLxNBy^lVTB=uUC#|q*E4RLVgqv_VSJ?Yu zn6RV!R>`T`VexX$BEH@&Kk4%aPPo>TmHfg&+0+%kc{e*jSUopdh;O`+SIkQ@e2}aR z_4e16yO*t()(y(#&b=FMitDZT`KKRA2je>mo5MHC za}K*mpL~x=Z=Hgriq2d4bxB5UU7Z$!ooi=lP1k0E_w!V4QS>0W{i{2o)qYRGY|KU} zpvQk)56hv_37;5Y$f!i_uHuwrL(RD`y9<2bpl704ZN0>{G#A#cXf6rvLxegNM|qne z_R@dSB42g-M&Zt~J2JLyULLaw9DF{xETi5MElNTb3f>Di4jyvMo;VuP5m zLfp`Bsi9RXxzE_Ha@FKM`FBve>v%R zL*Yfv1Yvi-Od2^66+;7t0HO&S} z&7Lolc1OfY#%#&qOMQtM*Gx#Sj1xbXe-ZbzTPLhK z-b3h~6wa@2P=~*|xR-p#Dv`I$E*3LW>k7X|r0}W{ccf6eXI%Q4xBR?I|4PqaE2JdG z)vzb5wK6KhR@h%Um+#B2*V;&fS%wHWc#mjbf7?@a#WuFv8!O+&tSc6+H` z@>D5eQ6>LiR*+Qp*>P#(2a&hf;wE%|yGJ@VO2;*-xX4dwY9lu&8p{7@gx51>VVqmT zY0{^qLpi7HDt6?PM$%B%`BJ;^_ncxt4)^`zUT*!Q0o>x%wd9asgH-t{h8ue?onN)( z4sVL^k^Jtx;k^1ZkqVf_T=|cY{Mjx2g}<65;;LdV$?s{llymSEKd8l7e!FHMe>8Ly zcY0g8SZ8b=e<`}TVc&;shNmUJM7ezqU#Uuvq8%KBfBqiiE)H`Rf)^!8H^u}h51#Rp z()69BtJ}GVMPOs{0FOO_MI{!QgCPt|aXSJsvH z&if)VR|oRP@AMEBcFkcwzZ%53cvf+v&Ra^86Cxz5H=(>)qY7^5-D%vJz}Z}A-P2NR zx`kNeH& z0q^qn1;6v)6fX1IQ9eIvAFnf><9%N2@j;(XoY1XU{BQCczQe+SqVDNe_U%&Qn;d=3O-%eN z-5WJrJ{h@Ea=6xlb6#gI&1)GX8C(1i&((gwH$B!|SXmM&y|v#hsjkoC?`3KEmNzCE zR41ND&0{)A`$x~=S00!mUI=&N`AhF5t8)>CU%Iza>e8#?G35u&@9921GI+M+_f3#A z_J8=#KH<`)u*>2c^%*hfq8Hcx+P}R0;JWhDh;w}KfBmJGoxAYNsC@3s1D0c2zYxEi zj*xVjk~F4sAEEX#gSfg?3A^WEBkqt%&$mxw(4W6j+i&Cf#%l($*`8CmN!cxhR@bw| z(CgXKTDR@|$Hv>GF3;1Y>?s=lbjdAVm3l++wQMB?X3UaYQ$h{C2U|#$+3on2r`zx? zXI+uzwJ(>p`uE}Q+|Y10E+tBpduoZRA3x*VRq1^1wi~6*2ljE++A@Cqk7wMh_hY3C zzZ*$^8n2Wd%MGND3j_EZ#YwTpVQ+5JrL}yAPHs}~oer|@LOm`yvlcrp;5a*L;B0AR zy;!OE&>O?|+p3sr;VF`=$N`Rot3gCH%k5-iU{0 zK9m;66ia!h7mGT#Z(`$i?sDYjSV?>AnfO$kFEtzAQfhXr3GeIwFaP`Lbbi#Mqx^$@ zRm%0V2TFO1R`7Kml!@Et=5gn)KH+}vu#rFS9?CmRS|-=;F_{ZXy~yRK#_~JtMb7@@=FCx-;C$?F*&<>HVWQvjXP+zuq_czdvS`JcJSB>NED9MoJjG zm-rta$YNCtc?8dN*sE;Ed~Nj`N=G(P9_wi#aCRUiT|ch%GOM}-=!1dwM9$wdmW-Bvv<F0Bq8kEM9K0+d&=^yCEyvr09KAbAj!pXtqEX{s* zljhXRpc%^&Dd|Wib?3KJ%%p?V)%OJJ=ZyrsmZJ?w97wAoxIpY@} zOQ*`>X-MA$av9Z_*?6NB6W{k9)xDZcPq!YSv{!ms<$jsA_r66h>K~>7^$KX>l`tl! zqA~Nsvw(aa9qL~3S#HbgU_4j4EvteB)_HCSJTPq)CzLi7*182 zACTeaO=@5Af_Bfyr%gY1Q`Cbh`Wb(f#{9`6#eoLQ-|12G`)f1>-F{0Big@x^(3KhV zrj$-Ht108o4NBmy(ZkAcT9TeZw>yZWFZyg#eVX289-Vo9g>IX1Oi!zD+WJ^S zYodbbaMf?h;$PA7hhem6W*U78-9vwS?59V)u28VXNO&qrnVN^hRqUgT&so$iU^n%D zRzZC(t*81c>ND(^XS5{p4t@Uog*MHaL$h9Ksmq%-%neUFW=2Ibrpu#X>apo5rLMhA z;S;q~ui;HveSAHsE>+T2vtyLn%$&(C-$y=awV2zjH8l0a66}>XlL|Z@|yCL zW|YrnD(Bv!tdBYL_4_&M&t9TEzE5eM9ZzEYflP|iZ@OZhNa{sC%mAOgbo`5vx_;A8 z5C3bVzaB#^HQ2NHNA6_ln3?n%4`eO z?^>5BZTK(sXq-X`-BQRuES+91uwshtZKZ*28#4O(XX)P6owT7-XJ%J<3LTn~Mp6Dd z=|W@?)$gdLKT{vl+UL2XniNHUC;8E$_-4%JI!%}-y^fPM!=8!BenryHc#2u`fR0Db zqf?e2Y2zf3f;$dox+f-5tH?+S_>)daP2=cUYD>m%;$iwTu?@3KdP^UdZX)|_E9h7E zRGM$NMq&P6sO^MI3XD5J?^oZaww0S`Pu&!%pVgRY?`WhEfon6p^ap)C6henst<_UQ;tkr2c;_FE(++xYzVGo_czv1M_y>u~c59u$y zrme@bss6Nj%%Yi>se8|}6xjVfJ-Ymo8Xwcp_d}a#@6rUi{&5pE*%?PkF?n>W?nC;S zvyZxJ>oGfnzY@Rn8Vy%&qII@sX>HDZvV1q2u7^4?pC&J%X%>-mwd+A@H|h!9Pe`Zw z120pPjONVm+)BDIX%Tt9I6~XA%^3ZUr&RBE6K40*3<~{mmwMOzL;YQr)8>Xz^!;Wg z>FeB~?4$qD*p|CUyTy%e>`JE)_ZzgK=r(P*c#y7b`Au!k@1Uk@8#DR&w`s?>do*>= zF)9gf%KS+dY2dBVjO)k?)OW;hT41?`t`?u5dpQT_$jF=I(k7F<|6NIYTP&yYs8||n zzL3VQR4{f1JpQaYO6=G*G`LMXU27XdwzY52f3`QbsTUr(*3y(a6# z%~aq08TnSE(Tmg3)HX>&F9u$r9~)Klu4@?$>o}P%1twDKx^0Z^FFG z*+x%(=Fpr6qBU0anBNCq(}b7x8Q0!*n5>+WW1!PPj+Cr{z+u*8kDG+RtcGo42GH`Hj9z+DrX?8#13--lC?eTlA}-F|+KVC3E|$ zkuJ?mrYGYw$#vN=idlPr@;w?czp^UGY+NSk?x)gG*W0vl|9gswEv6ksEt!`;3ux@| zQnDDmmB!npQOv?*@`}>Yv);9t42w#NeIgS3B+d&dQb2F z9;dSp9upgwK+%n^((3MU)NE~S=Jbn;)N|A^N?x8qUmiDMPJJH5)aqv>hyJH&@aC^{ zv%_6F*1&>U;g&;hN8ci2ah3KgzKh>in>kWs&a}~G(#tP*=vLq<^4FfFlNYOK z#FajbW15!wcaNZUPwO(9ex0Fv7n?G-LM<5Mhbn5Ve@74AmC%@#Y1C7ZK&qGbX>gr% z;+u6~v~>(LHl~c;{nF8!vewM0;3T>}@&tK~*+&J9f+)1gidp6TgjA;_ihuioq&7PG z#=ItD$axB8O;pkOJ)O&XNs~8TB;CBTG}ZG5IlnMtGAg%Jo^67lG(g%1as}_J4$GHp2qIVr#VOV)8!+VY56KOvwY}(^aY=D@40*@)AOHH z@}mPYyU7Q#)?A>CPbz5dVmt@xZNs=#iIo1ZiUv(}XDVZ=$jRa^t#LXDe&iavO1bW2lsp-o0YYhb4B^2uAfM~URW_pYh9qg zCj*#kVn1f|{eLO6kCs*`yD;~MKBv&ed+1PJOXgXJbf&d9fVmxzL|x;pnWFzL(Bor| zDc<%q<$P$sESP`iY5wE_`vWDBJcJoj4dGJ%}SI3qD3hw^pSl)cAnqpe#`Ubv zT@1s?Qbo$4L&%q%^n)UKMnR}ljx~rw0m&}=Zl_v7`zd^S; zUZdl6jdUpL0V%FkQ0L~!r0eyF);>K&S2#UgwR}R8Umc``Sdk9<9VW(RE9F>!rPM=D z>BvP3CTMH}CbR>?6xT1M56iBT_m)mf;Hvt}>CEnoaY+#^-S&cp_wCFW)4iF@Cl^Q` z^??$`gNnNF26ESdfjkC5uxEjn=i4sp|8(%%sxefd~O zkvpDH(83(DDUPCUFWWMy{m;?6BO9q@_lC^LgIRRP<`^kLn=zMvZKlNVGzuSfmyYK= zrgx)^@2fF@x2F-gvmF6rtgU`P$D7w{7n$9hx`yB&m zqjDOpP-M~X(w%hd`+O3EeW~;EKr*kINz#YQRImRmGWndLs%yJw{j9a~SkMlGhgHojEPLrbshJn8Q^Upi|k zla(7D!#7W(C-W9lvlGjy-OW=}=g>l0ICm8#)ml$skplG@@eiF?v6LKFX(&18IMpg* zn9c`o(P4{Ha@r-6-+`%g^1&G5=lf84;$ph;pB=3mwT}*1`_bGx{b@^kaccX;1dix_=B5b!afH^BPVk!{^dV^+vMaX~|6Y97>UX^XT@DM9NF)Mave1 z(&}&fsP&^BG%tBKg@4;gejo8%r?H0c#T@FkHI}4=o^&~JBK?|okgWcBOJ(JEX!{uz znGNK~W_uDnDGjH>?3uK<=_HD)dyC9d3@3%X8`*ltk@wW8)WcarJL8^Hn8t}-b=XA3;$~{GqJoC>9!VzS zLTb1;h8)#dbk;tam?ug)aUz1=OPk3*coDU^5=ttkXbPGz=>G|6@r zy$_pBXBI?L;^L2VtnM&+zhM|9{u4;^_qdXJ*Cg5;pG?0V`cY+zA(UBPL9J{Kkoj+S z>K~w^g6q5KP@#zetG3gOgq?JyGLy{I>!_F4EgG3Hi_8{96F)1Q);9{J(}9<0*Za+s z_wP2+7B8lwpC{AXyfrj*LK6MfIP}?Da)Xu1;$8L)#zDqV058h3? z7iei(st=h>KSQ^_7f_&WD2eQEDQPE?E@P74&_#Gf8d-v=;sf>}a` zqYu-Wv3YcL#5nSQf1dmg#?zQ*+v%a#K6<-)I8C|eK--p#qFpWt)G}lgb=jz;1wUP> zfA#?~ig;fkZ4JHHu!FwfwM6c#Y`V1Cmhql{ihe0}QR(W#6pddu0)1%w5&L>|oS2<^ zsceHp2X4)xu_va|zphhB@4k+_hpQ=S>JUntwTRYsil-K*RuS889_8n+q7?&HlaF|k z8eZu@K^2EcSFwZEMMaTuLLnV%et@n&o=LNQ#L^YlWNK`Ck9N9v(dIo@$=5E1UIvb( zzdy&5?VLFjw{kh`b?q9l4Df&_9Pmf-;W-q9i?^4CQB`@JD*wyd?j*+{qUEvMM!45ebb4^=nm!tagLG&Gt14B~0zVLZkh_oP#GFVU*ev*~|$ z|LA}C-$%7-EqSnj9nQyGjEIg=<_;ah_Ou+tPWn579k=P8-g{yjcGjIpEQ1)h>Si==%iea;Iz2P%=N13{_g}CAHG*R8UAzL2O(NO4R zDc+sUvECme4J-61?EDy)OLgS4Y;HwYwyKw%_?BtUUbVlcKR4&tC^vDJ`mwI%C_7-G1@@!V*p zFW0qR7jEvdL&}qGafa^J^U!{egpqtY2-!?~gOs0n3W@ zF(cL*5`u^5cfPq{7(YCbop3yXb;van?e=bDUxl<&+J9f@a)>ps721y6%Jv>28_|z@ z+t|hM^shgA-}$>st>PYrhPM>l5T|kaO~G*Q%Vu)XfmrH>Qa zdqhX>`9hQ7{a}{M%kFLXxnO`;em0#wrFx-cz1O=m8@|cltw=KTIk=b2kY*bCTq8EV z>%FXl{76naBbV)NmZ=pl>~Pl5di@r5(nfPb{U(;&ti~DaL}M@Z%V-_zv(lAqxqFH7 z;i7DI;P$)h)ioVCjpV`w)pHR;uf0)viJGhztsg1F_IVhTk0yveFRU;Wz3R*c7k$wm z`ZZZ^Hp9q{AJRbd{dh}X6x*M@k+zdfJl9AZ(X+QpRp7vTYR#sQhc4JeAo1ca(PZK z!^Qk`7mZ)6vg?ykViWJi?B6N}WuogFgX5AF?39w>%HLa$vi6&Map#hY+1aKn<@w1w z^cPO5*&p4r^%m2k#E~&khEulrY-hidhO{5u#d-<#*@6>(Y~s%ThF+iBaBD6uVjmXt zVB6$4vSBN{4GZdS5*v4}C$?`p$FRiw7yERfBRkIZqT%E7rutS}T8bX~&#)z97qZPq zk6~AzSGf4Ui&k3JYs>X94_BVmo>Y#ux8v&fj$)ls4eTn$ne}dOC8pUvQ5NYElp3qG ztjCj3uHBcL?3D)Y%F}}`vu0r(xM?@`vmH)eV0GP$?6sH-ee9LyhO?zz#2NOV4G~-I z^(N7i^^a@Fu8w)B&u*$$E_>6{&?a`GVc(oxqD|$&tj^u{DL*#Z!G_iD&RrR_L%Fof z(~y3DCwu5o7&kP$Hd}aT0;g(|r{ou{6F(pBq34%G8XkdCA$%#r0Am8=KRJjndZ^>-mU=&$T}p z)-Ne>*>B!VY`LVXzJBOjeY-b_hJI}iusu9CD76l!mBM+6{oSjZ!Tls>xK`9yJaM+U z;r@nn!#bmdc((MgGUn_`B|APmE9;-LhM2+E*!a5}4fi5vh@X}VS^U~phPPh>Meg}> z!~RBYhLUo_AcvqM?6Ue}*u^_m=+g!bP%7M>82Y{G%5HLdU}!Wan~m}B!m`n$4W%FY zh#$J=v2zR7D?K}#i%Z(48+NG`wv+ziu{ws@HlfP&^#hcd zOEwwWH7rq?jXz8-aKCn|s%~_x`x+{>Vz! z`H`G`-o4-Vd7igqc3b77Z$1ZZ<7M>KW6uNl|`9(MGa%P3%RRv%aPeChFmVnv)$3W9gF4}TqedPq(MnM1cJ9KHu40PSdD%~@N zH^7BS+{%xEA7m_AQQ7&i44Z%5uAAFt0>3_>gH6XU^vAK!fUeQ|^iBIGg16Fme(EczTjbwCzj06RH@culVvfzMj#*Uf5pt%d?oygTa z`F^*)+X(c~_Orf{xeR#1d{Fu_1it0Bbmo-*s?#}ifEE+)>cnQUj{7F8uY>n2tL^)0l3EmjO+%msCJhA z!ts;U{*-{;b8Z5Z9JrwW_lwP-@3%wf*5+C0y$5gTK5yF#$~XUA`Br!m2x@nOr@K~x z*M5%ZPX4k16=VJSnk!cQmXSkf?sLVuRiV?BA8mM`i=TWAo$u-a^S^u#dTa8rUzJmV z?)9ch@w^SFle?udBh#*brJ@DQZv0z!<0T5%8Di^eTSn+F=v%;YksZ`CjQ#|0Lwy8*5U_5nEgd$9TS3_zJ4uQ<5lUy#PR zp_}(whpvjF1h2i73^p&s_45<=ep!#AAHDJ)c>dlDbo$Z#VAZEHbVnClK^<#7Xe#8u z4;&kHCocc5x=6C2dfWbephG=vLP2~;x915D%;62%z-yx`VQln6^z6a!DhpXZR-Ssd3TP*j72C*fbbCV@@Wz^ujy3Hk zFyj506_*XuLGr0JVBy61SWPhr2CvoV-+bDvJNGjkPFuCFGH3WOcx}~K{o~VHE7`Mo zV8g#-&|Y{G{c}4D?frwJS5d_1cNKqu*U@!o``F`^CGk4_{c(STnZNxGN(NZ4gpv%@ zYx2OIx8_!F%Sc0~W*k8eRx7}v>zeW%;LLU6`?y{=c6;UB@n3`Wy?^PGUN(Z}yC^#1 z%=>8O^_jYdA8Ym3CBK5dFOPz|ezXF`A|_b5ET!`Pfule(AOZ_7bI^vWn>u>zCBSrJ z=(@7gVD)~jZdCmkaNJ_l5s`7I>CVN<6-g^WnzRg*te*~kS!LI6{dOa$JY9w!{15>* zo>Ks|dmsA#Gbi}lcDQ5v|nePazkJB>nXHhfPsB? zxC&KWgL;8v8X%F0;CQ!P-#uv(xEV3)#)qQ%dwavWD^LZ$)g0Fg{@JHjk6(ip@tEk? z_KD!1Jqs~HBtTEwKGE&i<3=z2aR7a8PYM__y&LV^@-5Kd`_bIL&Y>lLvfz=fkHP(O z$?%JD8+F?V9;|PiruUv-2F}HMbfc&Fu5U2xL!Xd;p~*xo$jkf;G;V1EtUnKe=D{z} zHR3X`z4`!nq56C^`Zx_cUG#$P?S`|ueV1>dufF~fdITQ?MJLmAdv{C*^C?P@J^wwh z`*a1UA3qW%f0YDx+%JaR>clgx0N0Ov!GR@bzJME+73!zFeqDb@DaTY@f9c9@UPphB ztDyG&W2`3Is(-_B9sQ@Z5>B7|JLR>7rrgStlthS9}^$IwI( zFt+~8`s$YQPpccpTtx%ly7lLFzE*wm)Os{;=@0A^#G5_Q*pJuC15`qE-L z_QeNB^si4+VMC8MUXKP1;Ge5PY<=l>AdNKwwViyZJ7e0et2Q>E@6ukyE}mZkKG^XW z+IVj}S|;q#|Ipc`Tib2~swZ#23Fm&(Q@1zkcAnpeWo9MoUR&`uy5-sjXrRKU|7hAG zc;X31w|@8E=z31RKErgc!T^PE{X#xA`j211t=A@C2jJh}x#!lx)lc>%Foys`hzr&4 zK7Sf@cP~lsKoNTT+kSK)sTjTV-x_f1l|J-4B^0^F4B`F24}n50=7bRu<^; zGaaC7%QSuL`hO_M`dvr8^%uBudzUW#+y8X;a$f_l-EyG|0vGh#5}YpM(2IKedMVsv zdQiFi*%siO@tbbuBNeFnDg|ucQK!pG*k~MD50Ggw)OctB-M;;bE{prT?we0|*w@up z^lalXkXJDm9xmAhF0VU*Mn6r4i;fmyXOTX1-fyc>?W^~|dgU+Zh6*jVNco43eXRjh zar!~U$TVH*-v`m1>1)6e1_5?1oULcp@}abL0`{E#DEiT;h|Z9d1RIcsu^-s5A8wd|r{x=OP`{hfpcJF8UAEwLT{+dQ`l6e57TDx@G z_ZI2?3;zzj=+#%2_|n1Sq<1R!tG1vM{{?#1ge>ev(q?q|cL8+h?epN!&wIec)WI`LRzYc7fhk%#Zjjq!V=`D`8_2o2;{-xKm(RrVD=+kGI zQ25h7z<;r=viSUN^lh0A7!&#kuQsatO7RMqPB{VAf8*A#@YbQc3NifZuX0`0jo(pr zlL0IdKEB?#=5_G0g#o8b^ypTsE<{bIu2s)ES%G#QCUn;+4lw5PF;M9~0XDyIO~14J z8O(QWmj0)E9C&CY51WUsh8J})aHduT6z%)Lq62@Tp2rWXCw+HXXPrC)H64Ehjx@8t z$MXeX&XR%hiVOift2=_OKK?x9hyFt2R7GX)&fQ?uw^D3s|I6UwhjXyb!^2?7sO#wS zlzR038&o*{_qni^Ooe9_Y}A?JbXc|%NB@8IqYqcSx$eUcSFB#UzciGYZ^FDLB9^GaB7JmQwcQ7!OjpdEJ0ix}bfcnV`z;t=M{-qVQnC0LDpnLiN zd*PxMoA6IQ*e`n?8{PX7I&W+%yyY=f@YthZ$%j|4b0b%yJ}cAESlm6q>JXruU%PZj z!nVKcn}DUyuEVAeF%9d|0^s}4?eP4=MetTezwYt#k0AMB7*e)Su=}5Bs{HfgXim~i zxOCzkxGJ+1`~8K<@Kus(*j_^DP1Kj+@m)@x;MH?*-toUNNuU`MAHNMh9+_e&ZXMMB zT>X^+EL;Yav$)v5r`BOloy&Ea8QbC6u`928Esv{K?K%PrM?MSb-nX%on#`&Tf=8fD z&Z%k`eN3nRON#w*e)%PkB;J_Kj| z$=K@VGVq@8D=6IZkN))<2U_yOHjMGg*HHQVHE`+i+t{9?Zcuue0d12?u=3KU*y+Xq z{Ntb#3Z}jY8+zQJoCw1!H-@WN896ZPLQ+*x&0A>Bzgw_w>2^$WekNA)1|1d_+TrzM zW6{vTK3MgK0o}H{9D6#eO@F~+MURimfbT7w0)R+{{^j3Y;hVyPg{3R7qXq@UmYvhB z&Djbg{~dzP2OBCc%ji`LW=w+V*ZzX;*Rl-@YSKa0w|lT8WfS(?p*9$tn*)RYV;MFV zaSToSE`X=TW>~%aFwBU5ihaMa0Q+L(o7gMX4}rREFP1j}g>#;i!-uZb@Qd#^>Bj%~ zD;T1F2hJ4z3Kvn?ApG7n%y{iM`ibuctP;Nf-kYQZ3--K%ZSmw(9seH1ej4}!{d!Cf z%+iRk&JKFjC*R(KDN8S76EA*>_J!ZT0?)Cq;SEE&skyh%gF{J%wVO)}$E`HrzJ3vI zc<(ZnyZsRO?QxgB{oT`0qdE;Y9);-Z-7mxSt;f-me>Gxlw->;7+PE0~;AS*;);75E zU=4b4=bPA#ieJEg6OX{;9ddNyZzYDGdpgk%cYOy^BiGS^$uD5{UO5Cv?@#C%O8vJx=0PLHHV)wUpfMbo*s=asmu)9wWVEz8tSbe1y-n=O@%-_5Y zO`0XHD&M;nuC->Orw(j`d#)xy*H>JFe(aZ3r}~a!Urb9g@J=j(OB?w5jF}banU>_L z$&DWD(DGIKy$94)|7?B}ZfIs1-r6`Dm9h4~n=|cT{EU#Uq&tXh+^`yZp=TvLJarqE z^RWUP*ET>jECB!hk_EaSH|fql`3!sQhou3~@EQm_Xn8?pLjyej61 zg>V%8-1S?Eb5MPp1e%}sVAXFQ#(vSA#}){4u~__XZ0&nL!;6|hxYY0wYM|x7+@9kw zso#KYTK7J>e8y^B@0%+?U^5T9QOSq1zBQst_IK$0WmDje=h$$GXbEe5pYn zPU!EyUHrN{_n-S1UV0am1O~AyCwj2qf5*Z1|NRMTdcO#}Vxz*6{ywbnk1&d!`5m52 zE<{(3NQRr2RKQib!`J{kk6nFnpYG}#dolcN09T`jVEuD_ca~Pe(+3X&bKV!T&hMtq@}^m9uwBPe5mqGMlGr}zXZpA(F%Eo zXH{%HcMNp(pT~+8oT#|fd;nhEzp*kf`ZOqSu0#L1b^_yUdKwl+;jhZRNVYKEZAkor=K5%weMu1`R^=5KW{vb{d?gQEPQkd`oSDnIVucKa8IID_xV_F)m~V!r~{j) z5yI>@w_(Y1yp^99WF}7zq58@E1O<~7brL3JCAhm;juK6Tx54O~DGel~D454Ex)0 z5+43^8fu`=!tVUB5*Bax675{)K(9@q7_Rj;pq4))O2!u?lQ!Rw9; z?1lJt{WD8W>88$)=u?TE*f)AL98B7xU$v}7H!!aOgRgvp4gPW+TleW_(9u@}hcD6% zw)a=UvuA6-aP47Ow&q>P_8xs zw(DW`r5~Vq-bsUlTV&uWeggN;)}s&G_F;`976PEY1u{Qr0#$vJ!00P#LrcnkP~yI& zA5*^%emOA>kl8dik^U`se5PDK=k!)A@?ATcE6#+i2ezR@gIC~tDG$+Skpp1YtCO)$ z23gqq-+zyNPOnEF2uO76zU|n=w3%=OQiGl;Pt<|WID*Aj{fM3Y`3*38S3g{w@-}RI zb_x8(%fuQA-Zd)ly@fzUEVu6Aemz!Dd>vjudSG)SrOL_s8QXR4fNuHIL=Vc;x2ve@JFstOJckX9 zJAj^AkYTv9EQ|%(`r!z4c9rYRU$L}@_u-gCF6;Mix&if@3!n-q!CpVR3H>ILXV~yC z3cueJ0+RN5e?5tUw zz`)Au!j~q&i)mNjnXgdnh547krX$0ES0R83S)zC8gG;dX?MK*@pTi)x^*+2A+zNM{ zu)-B7Z(_xUZP?|$k1@_H9%dNJhhHAEpffFhVdsN%_-Ergm`Td1TDaG{=Vb^3aaPyhP*c*zw zdiB3_*n~8}5;q4^kF7;Vuf2G2n8p;aO;je?U49gae(m(&&C6K$~TX1;UKiHTVyJ1#n9QJkk zpXj3I@8FIT_p#r8`(A&R@jF~K;{dFp|EmA~W()eYd%temPrIS%`kU~B3bA46^^<7X zSD&LV{<<6eZ21oCle6z&wNLvo@9JJ%q$U@x`*;LI#YbSn$9eD>&GUw1H)Uv(un2o; z(jNH1+=G~Y$5_L{ubtT5Gu@!1Z7*EEivXx_C;VSU5FEZh#Y8u>V5;2&-Wk4waX&_| zedGpA?a9SD^uNG0i?71clV4*`D(+$z`zhF(*(YG-=`MJzd?BPi#tcV~mBC}qA^1b( zOelE2LAT~uKIWKw4nEf!L@ymoPV{kpsC!Wy0sNNvknvMD$XRn9y||+a{_kBGOrBW| zkH0L253rGjo8l=(#h&k&hg3+V}I|+tZ8T?^9>Pj(KVDqsbU7b^i+&j~;~Y zWmLoW8C&4f{ms>fMMAh_&muU+yd7S1PB#4XS_{0iaSa*- zV(3|fRPB9pm+sE1dGO+azhPVPa>KI^#ehEi1a2Mk9UMtJ2xnD>VQX4F?3}@b6W>1% zzh(t>%RIZ`{Ei}w`B@iydP8E^`9dQstJJ}jTQ`Hh0trd^9^mYxNz;N zr|@d=PuRV4^Wkc1Dx9@RiybR3N7tYE9@1Xg3O|`mLT27A7|z`cN*26@S)Cnd;~zza zLG?lS=;n8@diV{4ZH5ZE>sP{+*AxcvSIgn_qCa5C%`EJf1qmr((ig9VquqIMpZ_rUtG*RNQ7*V^u!AuR znEJ1N-rp4vR_0kr)L^oXublM)?C+>HBt;OtiOl8(zORZBWcw;$3bjg zXEB^3GeczUHMm3>fg3MS4Hs?;(Ghni=oV4Op)ViZ3+qpP3mtoo!4r4?04u%w;HLN+ z@cDoCz_Cy1hR3D5V6edgGasCU>)ziEsh932aM%7h&ki!sg3 z4D^$avSGu)ChU~%8v4OFr0SQXZ(!}~DA>YW0-p2y0Cv3h9_(rO9PXQBh3M}Kuto7b zFtFomIDNbyFe0PiT*x<2TqdlXo&s-_*MRIdH-j2U8+b3X$RK`UE{xY4fRCR02v$1v z(EHUt;N_pL!C51|tFql^V*lIL37@eJ!BNFt?DVD=64~oa*lv0XrfmBMezGkwA0ulX zjDlg%ceoyu*8TwhW+m=*Wh-2lvJBHfz!!W*42iLy*DO~yP zTUgC=hpML^{tvErHwvC+-2&*R-(&kG&Hy85-(Y3uYM{9B9$a_)4cK&N8<;)oUvTi! zHdrLKg2Ljxs890^WQz*m_Q_4~-np0I^Od{76T?23|5+AxK=3ov|AApO|24t3Wm@#g z=J!CJ?>6+G+X&N-j)NHuEcj{NdMx;i9xloG8qE2z2JSzgfKv;4Am_}B82j^=Vc^Pf zI7E2im79l9wf_{jvsPx<%>eNJj1XwrTWFZqUIi_Ajqu{KQm8s4hu-w9Xw%UMJdySb zT)OK#w0*&b*ZK_lyf3c6i_(|jonPBw>HIX1wC79o+1IrObwdXH_UExx6Nn#l+TCs7 z#c#HOxxa3L|F?cb|34L>8?689^?%Jj`v2-j@2*}u;s4Q%{@)J~cZ`w~l6xrrL0OpM z?bR}@J>B9E%{&;f1dMT7lpPT_{GZ@UJH7_Y|dzo~A~5b~e>{+a1%1GbP1brILqdN+=v8E-({05>_X($itH{ z@}q;7vtsfa$w7CsJUGyxWKlwR)JI)O@@?J%M}R@Las8pF-KOSIsUbCs5@kB*ej;uO zvEqWXJWof8HMw~DAU7YO2igTRo{&uL@{?jOGpO~caa=Czc@fXU``C!9C3T$lc@4q# znfg>d$1`ObGb6`~#MC(3*wCQh4_i{5X#$dAbk<8c8OnaHDavlA@GGv#>eD=u2rouA zmG*mB1kD{Y`NB;^dVkMIzoaZnW|y{#GW=2TC<&fs77_%Lbeg;ke-9-ynclD~tB*x+ zEj%C7#xt|LIZPfxVIlplcrwAbgG5Zef)YHrk8?j^NIySY%ZSBzHlCE37Zkc{(ztv| z`;>6o*g!U0W*rl;=MCOf1>#XBgKkrEtvEMi2_n%VTr|O&tCGudSk)y+1g8t5-e@Su z5`>&q4!=(zVT7HIOkbanSHN}COmv(k35QK5@iPSaN>G3!s z>qe+7r#I3bmgI*ghfO`@?ywTEk}{T;mmDO*j>*c9S#8!ZNAZaPnz>QWbTep4&N#{L z2z#ld!%bw+@{7i#(v|UOv`B(8q~5TFLz6@@QbTN~z%k5Xk)g*po=q9Y^FQsTNmavy zIwj&yb$2W(@FC1WWsu?1irHLInC%z8QNYR3oYIP7^B z!5BU$8z%XduRLzjp7L{;W}ivrr%7-{RLUp3Wg)xOh-W+8qVNbCbGTi~D-ww^TT3&8 zu52`Jb2~_r&*L+R!)(W(2SudAm9}_*$|~(c0^;GQjOJ6Z=}cypCdU#tRRqRIgDK_; zrYdPuDwU$AM(=Sw@qBwo8pt77xwTd00m zpphAA?(=0172G5ANrM_&z9rJaOg4&ARLb;Jw>q9VD0k9Gm8Z1rOqSa7bDSdP^Cavb zy^a;LnK&^l{8a89)PxA!-YZdhqNLKM;Lv@fEadXKnw^kTuaZi3`Yu57`lj4osHNYB2<9{XGUyMrcldZn=FsaxfVAuBx{Q|_xH(?WmLL9 zB4HsF^q6rRGbH!>$u_>29vgP}SvZx_g$P2jhdIS%cHPtTqT2{wR^H`qCu0_Zj6W3d=8oB2*{NJ3cE!bW-+-Dhm@*j%lnCV znM>^8&^hVP(&F{TtOhwJQ;ygJBV*iv-5X^}$aD@Tz!qCm1vXXOFSl7KoOE_SH#4NI z>`a_vV~`*AG8CoCAy+VJk$IEZRPDbR3>#fTE#x)i24lWOR7ZNKpldkQjgW-dBBc$> z2}NjF%284RaZ{@@+rsCwP5nGKLz?HI;F07Oc2AqRznAYKrE(UFiLlr#nbnvt4!e_W ztWYS-6AQ!SA3>Hf-rZ^Fqh? z+i+$;66CVvC5#+NCX>$5GMEAe5ed^Igr&8{*~QL4RCK4)JwjtDGupYSY?5;?h{S0= z5rZbo=;E;F$y!3fcN`xMG}Bub?v*_cj8 zSI&bll_Qg7+afd;$#e5V{m6JH;x!G{Nhnc8hn0o&Iwi9FIANi?lA|6;;LnJCn8DQe z8O6*lhpaZz;Tq;E{Bfs^>&Ob26~@@#2gx)#`*BYx+n6J#bPEvAU{t$qL*f*wnn?{e2TO`wW=~kcN(zNJ7H7;O_TnC9h>$9olAhs|j9zc1+M}iNSWHJ+ zCqiSfV`C}27*E1-g@~l4-VteT-qZ}C*u7BTqlO8&o5+*RZYL!SGllE3n5E7fi4rLf z2#VS`Gol=>l!2>?Q)_7T#$l(clNF=;%cBxPOb=V4G#ATXhzkTn(dZ|1FX@-1PKdJa z-^TJkRj!!^| z(X4&FlFCNvq_KW>d4zF0ol@v!;VopKx40-JDDsPk98^tC$tbZ_Bnl6d1w4|dGJvp< zQc<_2lZIP-4kyEJk=i8O%wa)Z1HUGW^r^^PDs&cjBV zLXd22GG;k51uO%kYH6g zD3nHRS~$JGz|40RGFqu3f|9T()x@RyI37Qp9y`TiXcR&NTcvhULK+8$(<6zp%9Xrm z2jQWR;jqww*YxqCd`5C_awI9)Lt_Ubgvaa9i1D!;W_>bOLbOquv-36nNSr=hg_x7* zQdUz;FfcBKrhJfB?-n46{K3*N7LkQI2ckiGEK3zc6K4(<(W23IgpPP?ob1r0 zFh%R{rnehyP0{Wls%NAiM27nWz5Z02r%i;1N;Apad(kLj6KPmJKi85bE_9Ee#zLMt zp=Fpq6t*-{NEapcT=W@=Id$n%3Zd%Apoj-CBHOM`rHHs}q*uXo;|#^5;9qUYX*h?) zXFR1agk(Bpl*DGE(9>8}N>3_J9EymzOa(Rlq(#(CE5y?&DJ)}BklN`M3cabeAeF|6 zj$+3Wi)qKbnZ9T|5=^KK9=dmRxEB~=5^7W;rv2-l)?6k1kq$Bg{v9g z7o#TNc9b*N9kfknT6j^RC(h~fh=v+sBYjj+IKW}6bYgFp#hb@SM`!{@B%N#b3SDe7 zZ(v-+`9NaM=uyxFc6x+wwF?y{8bRv`ho1@}I+2UhrX0$@htnGUL0^U=ji~37)|gg; z*sY8qRlLpTXdd)%HO4wxlr~6nBRm=%7y6k5t&buYZpqHz$=u99G*ij(%Y&|7HeD9u zgni72AnaxF*|a=znlUXrfg=gq`?P{Qmbt)3@S}<_&ZDMqa0dCrNK6PQyehYIM4T^U zD%}i5dsIlLhI8od3Qj0CC~7D5Gz!noDGtbO>CplI{b*RgqmAnJB*jG|mBMt9&p4cn z^Qp=-QFN?qkU~gV6f)@b#?w;y@wl`juQWKAncN#6!QxXSe3Ep~X#*L)pm4ZZBEmbe z1+*)%DAU6oYdydwJ#ynE>*a&3GGvqv1DN@D!f{+#}(l5bNzWG9YC5xE3n$%|1BY%WzmHsEq9%e;nlxvy(u6B2zgU@hG@{!C0u2O3G zY_>*a8AQCe-y5W9xJ15t*o6Et-{OdgihM!VAl2@nAuVbnvnNH2GZ>e6eQwInAxVEw z>Z-piGD)cv`p^+6FDz?Aq-iuKQ%&u0^ZA)FKCV;7MIyc{JISdeio_ipnl@sLdT3-z ze{EVOgOepKDO8oI!b!}iMPA%UQvI>cvC0G>3)PeY4P>@mVhX&4SC0CQJ6(ddZ>gt-kOHWG+YM+!aWW|Jx6F7a6z!qWJa!KopK z(G{n%gB-5J7_a4>mD$4b0N2L|1blWR|UE!%i(z+3FQDxjf?&OO9RUut-=zPB3g9q0Qzkz=Jlr8p%F) z&BsQxj2B6bN!dR8L7UkEBFAEa4=ipV3ICXR?((;ZQV>&u<+q^Qaga zOJkuh#M5{OylR4B7i9RIp*zg%%Ix5n) zc!qeies_kyKc!Dfw zC)@;gD9;f~@EulM9+K4|LAE$PLgXP`;ZBy9YhiXWm_z2UsZ8#Ug#HW~l%l@EC_~7z z(`nq1$vI*_B~umR+*JsN`2DI%hRQ~=M$=pz;YR^GMJ1AQ9BJB-md7bv4^v~O%6^t_-q6;DpMJdU$Om~AU{aU!9xDWss`#!!If zug;=yB5DQ0o8!w2a5z>Rkw>Btf|AN^8>MDsyJu$Drc9+tXc-O{-R~B#sMK(XOW0kS zL3yLs7Rc{&J$PYY2x0WfT1kSd{?E!DV$nO@?Og)ySh_ex#~n^@sbi<5+O}0#dfhMpp0@8SlusW4?7$(vcIQ|&cRwJX6itHn`SyYWb`y7hWOJc;!sCo+q)|G zPMSO@G^t`VkBduZdI?-X_fT7t`7XbZtg|H3-BEYDl}u$@_yoyKq9^bnwK<7GU&tq@ zQ5kZ*Jv%@$`8;bros~3#7l^T9&XmLzD(yAz5F^K5>gUt65>X00keMMA;eMQ^4cLPm z87Gsbh<5O!ZhlL$(jO<}yl6p|P~%Dfrcs@o?ns}Z8wnLp&*@uiX$+H5Zh$s?pv!t|Mt@MG(o-Yj%WKE!*^hTp1alb+xO;0VT zV$)etft2mRvrQ3dgwrbwiHGqReorC_`zbwvR`WRf5HCO`JF?X%bCr=ou>|@pG^*N^MOAP(<2>RBm1Ry>Ck;F7ILEIjQN-zV zCy~w+Y2sEg&Q&T>g^4W}^<}p9*_<(cMDld7IHBL*Heae5A@GcF{-oU7K388v!4o(6 zkXV{T&K%(7klc=-lU5K71{F2#bdxL+h(GR$1q19bm%~(g27QFt%jH?!Dcrb);%=i_ z5PXnm;#gS>Ta8%2P*`WPxa_;!bk2cPimTtM_9QXAtZ8gH;Upa`{E?zAE{(|+6E(eY zUw=P+G!mx8l{_9E&1HC zNO6zr94{o`Q5|6p*{5@f&Fb^l%i2b; z*u9YTv!cqvp%$+WtFXsi;^gaf?VCVR!RN1j?XAAnJ7EID3en@hC4gSW9ano8xXt zzM0F8v!VmG5E<vJO)=6e6R@0AES~Jol=I?N5u*_6C&KhlQ^~+EGyPxcNCzR{xoZT@Zb!5^;O;sZ zi#;3&wGIcRUEPU*YZFA2bbnE5fE7`(ze+>~f1o!*>M5%>w%r@>Bc0*`YNBAr`7Ae2 zG89e3sjy$z?7m^@;A@!UVj(qK+84EiRMcFKC>%wSM~Z7gR`iY_y<%{1bX&(@it{Fd zaMVI?yfHE;yu;6mh(k8Z)sCb-ao5QXSweqd2e&f@2_lG)K`y&Hzl!I5*B9slxmK4M7ws=_y`bJX6f%M`^oa6H+9d5*p#4j$s(3js$E;o!x5}$T81!PD6-e76(bpS zv}XHT(jJG(FOCOP`PVqNoUDBLIFr%EY6?}65>GnMlI3U$r?gqSSgp@z(5T%?f1p3w zCg!_+3HW2BXK-1GUy8;On(ctr9YshJ1ChH$QaqS~;MNQF)~L9=uFFIh+^#Q<*)$QK zCsTP>Ko41CX=)@e>@K?)=uBxD7CpJ0&rRl}u@lP=P!#b9r$It8Qu#H)sw^U~EZvjA zWQj&_LK>TbZBjk)a3lGApCj3&B#zol>P$-#GbeN_oab_FfL28Rg(E4?CuGs^dJi#P7V_#EesVRaL2S`vf}Q zt%;9{n;A4jQ{n5ihWptaq=~1^6+3Tgz1)`~RJLmrp2}iU;@zI^gh0?IZeTcOw5n^R zdMAocQm9|tNGS{KC_YLO_BH^rf zB$gn&jZQ1xCSp7-71YNZ9O3N(Zfe}jbw7^DrHGblrCdh^-VBb#DL< z!f3+V_z`8l#Osz4;fLxTDQk+x*Jn#+WcA9q>?To(x0^6i0{FniM!AoS;5aD{8Hc?3 zrMT1XFKZhL(7o=&vIazTytJWGiJFuYI&!9-I@4s2I2-7EBFNUrS=7u$i4hEJ|!FQ|yR`M_cfxO<}ax<9W%J-0n0NoNIUYM40g| zAS^qn=+#=EL!P*Gv0=tA)uupFE$Td$$DU#LCG#wjn3jG< zp&>^x72Mtk=?{2(u0fX7A&(eF6c|0uAtcG}%L{O=5|KqB&A9Rhd-Wf$`kpAR{jl zZO&oY>7#<)i`v-O>Jj*)LcF(|l_TVdneGxBc_Y(bSUr-VcjqB7PxP1Wu7CXWZlbD7 zKB!J);%62+oJJm}Fv6Pgw3+(AGA`PlYgD<|k-k`1s%r1cOLO6^5)my=9_b)nw37YA z120?DYfnZ56MG1Gr;pK{6iB@~-S{v#j$dcIBQv*X9>+5LUaoa8mQ1?1Pm6<`vilL2 zw5*p_R~fU98ek8E8v~gn)gF^~2{oiANOX5uBtf^PXVOK_;2hGE?54@gh3xkjWZ2v+ zWbj;~lBg(^PT}}-skn(5EY%=NnweG*d6klsna=KXUh+r#8rrVrXQ-N7ru^V=IAvJd zEmN3OlH)1D;6Q?4rwmZo-lvbms;AaS|3h;^9Py~E?jY6uh#egCq_sH1-4BBv=rA!d zBn*R0G|(1k5BZsSh5W)oWvru1%PZ(-k}AIz7j^SQ0%3qlL>U}ID?1kES@9&EI!kDJ zlCJI+#?qW~+l5pfO&C>1Y_LUgqKJpIY#(J z{ywi(WU7}biU(|Rt|`svjCJRu|A{2UWPOTKg5Z3yGt6N1kjhLp1*!GNCevv4?3-R& z$^e}z^Lot2Ox!LE$+)@gSy;aMp2Oj{O1-(9PG789p^OaUeGG+n;1N?b94J*d^V~c? zH=mYtGb9&KU6KI(k<*8)41_(tM^Q31>UI{9ksMBM;m}3Sbi2kQA(E|?9zHvveEGHG zWCG84XFD}Uq&#X<6#N-rL?V`wX|>EMX){R?w3f>r;}&XJU2m#b(iw{?g+A9%JI$-K zx&?l(nr~~4rZmE#j`lkibDY}Fm$==ygvxuI&GibAf=Wm4s5ChxH&ISf5*noP3tL@J zlS6!;^@(FBn3~y6`DoZhX&WIbp)j5lvxob5Jf?t>681ceF}f{8EosrlQbqFOEmm8W z+1HWg8}QY&vg3l1r`JnF`9{PWHWwFA{^ktH@1>XmR+-6cX0kbaI$!V`o+dYGnn1iw z=;sCK%pUbK%xtRiOdBh}U`CZD+-}Ilf(jl%qqb=$W zw-ycJ^k}}igO_DC*N5UgMxj-MnAk;;K~J_lgc!#}qx3AwXt&D2@P?kY_VYW31PYd2 z!sL_rA-gw`#-yM;Hr33-d;gYN;sO+CJ$6S;%3o5R+ z=G`KJA@?qKZSmjTxVH3EP8}zDz86s*jK#^)Uj6$`wBvH^zKfHd49|smW%Hi+AfpT! zOpN1~_Wmq{{8O$6vCh*PG^z*|lo-ce68hBGb>;M4`b|kYe~_9Og5D=tMmZuwXwqhN zXpzA*DDkX00to?}SpIOwN{Aa!BC5I;wHjPnuTk?}-AwPlBOvvK`=TALa((no^>l_Y z>|iKh#z3r7@aau`c~;%&*G|zQ_rJ^~xZqo9Jo+ZKx+o{vGk#*0(9WD)6wu75D0^c& ziCgs}gDD0iV+*m3^g2d+pYccEf(us((#SuWm$nntQZaT3@?7lT)gFTzPIR zuN(lM?hKzd2)lsiwRL^0`N-I*eLCvzoJZc^)1%gI?~xEJ>_9gbRy>REx8z5!u3@v} z&lAqnK-c8FaDZ+5Hu2rRVy{f404`C zZSQuPVP`s7nw%9NL7;$vUQC`7I<|iFhA``lcPBxRPCyLG|Fa%3{}Aov#=SL}p0qmQ zZesK5&fK83#U=e@!e$-#C48r!(@lskIuC4SU6V`ugUbLry}YFF zg%bYR>`Wiy712BWdt2J4JL!k{4zbMSu9(1=Rk0L(bM?1#x#wXG0v>HTkkBSvd*`br z{lCY_nx&|$#wz}L>a2EDiHIL%Q1)_zB=FxydtqcWrrchdNV@Ifwo}Od#s}Hym80wI zj-690@n$tgAL}9_^|7D$qs3lhdDZM8r2m5IoD`8Tt^&LOdP_cf&1C%>@3`J7zMBkB zy=$1c8_O}_p>uCHEp@tm z`k7NEk76~|hu!g$pq%|zG{5+my>{)8;L26{O3a88}|)>$6Gz=0UX$bxQ?6iHMReB6S~0)xm(xAFG#S*1!f;Yq|v=%KR0W zzz$4&O(y=Y*NAzIPdI;RG)YBrok^zu(!I-!cj>A5z4lOe-Ex1wH9zy??9mLu9_w z-o1zx-EIm7&j0Nb)n0JPdu$^Z<`&N{Alh(9#56h0I~wa-aJiHGvpF<8kbmJrzyltF z@s~CiX4u2NH~bSPOcXVu)X=g5H(iPY=<*FC^z@7?_SVk%x;DAZ85e;a<6+(*gJ_5l zJxhuv4f?RAAI^ym?q`_Za?+bmx$Q}|yrW)3nuN|v-kh+x+!ps0v69nq45pWWhQ8Jw zxf6tZUS@dVy-I4`I-m|R7}PHT0~}tBzcD{vo5#yyn3Db^&29X=)PE4vEP-O1hb#>&OR~lxI4>%unTZ z@c91cpPc1xU!Z7TeExCML8j{#az7cJ1uYjw;%wjf{qy5L)AV(_4wv5#ANUU!(z5q; zp(9^a*#qajnyGQ^KleXzfqFq67E>{?sxNIZnhFKObhGKf2+lx98*OAeE^JzQxdgs* zm4X0o;McD^tWD40vq{NXSWEczB?IQJ#ec9%1o?K>WJS zE+)5x)MvRw_=8QD`rel!^NZK}kL7oGe>QB+PaYBc@dwgJ1Mjs`$Mfh&_hx#AHP;>0 z1UG69S#OgkIt710x@+A|%vezp*0l2MdSMkAU8K9&zpx8Fo{oCAGI=J~A$&fEERV5^ zES8aX_76=50=_^#07#{Mol6y&J1bXe*q%s9c_VcqJEkBH>>JRpyPW2~!D?BH>}Bds#oE5AhOYPLg#`lbLHYz+&s^Y`3*JL_Bqf;T zO%!VUAe`an4ciIL7nNQR33!9P4_;q_p<|tUQ)xhl80|54hGJrw?veM1j1}8QSM7a0 zeI@g}w{=3n$;|gujH=z=pAy~sd%h_n8?6g-m8au-9(=&o&=X24E5_Cqw_b8GW*F!A% z7$)p*=u~`LyJ}xVN%hv6BWXox118QV+=-Rpx;ZFNhY{?RPAIK{+whZjnPk zFE#D!H=SR}L+mqHoR;cC;W^hpS`p$n@HA%r?b~ZN>DjQ{e}Zh{vuuv!x^a$qsx>x^ zj!uZFScU!5!}`v-W5%o-55JK-6C&pPm`i?C-QdI|Qb?K;-oX_h@l%-vQriBo`jRYS ztyxTsCU+qog53E_@MV}yCgE}&%0NhH6C?h~`K?XSCOy964ziMGcc*$?kv{imIJnH5JL z>#VF6)0p=uvcG&J4$DI+0YPikpU#>A!d#3_uLv-%rYA^$ac6C|5?ql^`tv4uJaR5# zN@^m2K1wgg>Lj+a^rb7HO~g*)`tcR>toFIB2JE?Nr2BwrRu-$ zFQ4}!ApO`8w1da^4XIXW#LR+!@MPM*-|cX_&{bh20r4G-f<}$K7($-BK15)E*yfqI zVczhfjeZqMI>c92PfSmsMJW4)1w+g9gFl2;pLimaF&2&KjZ{7=h;42KB_(cF#`tXL z{UEUfy??J+wuc(pK^CPm<(ehVk(qqqDEuVh_n&Xmi-A{Pe1+dAQQx$^!b?ljEo(6- z0&f}h>E?w^^fM58y@Vp8DC=-y4fix41%8=z@hmpwj@Xl^G6cr$8Bf07VLS(khp=T{ z0ZuI(zU-G9mUsBTfs!cCqv*YC%|EQBb2u-q`c41prM8xHPGl`6KU^+br9@ywnvzOu zn-!wT2?I0XEBJwIfOT(o=&8jTb6y7d3BiZb&7}pF34kt;&Gwg_^Om>#qO;byce#B-P(6*^WWf#a70W21qs!CW+tU;!?iS(p{;B#JVyMAANLcwPpQle zu$56s7XEeWWv(FEeqrfAUvcWZ6l)(3@FXKs)Dj)rkd;_UW8ouV?Hf-9&lzW){%39>PWu8AvHnn>|0@`Mc*x}KthI)VQvfqum^%J(z__xM&aTCB8|@ z+-Mj8{MdOi9dg(|H&=mio;Mcil%D!TZDxXbHqfajw2mOc%!hz>rx(0@O3}W&R{&F~ zWqA3)^I&H!)wn~=euu~%dqi5C+;&j5f0hg(><8Q%@yVO9{Eie=;`rS)e)y*(JPzvi zUIV%|Io%l3sSFGKCNaVH)}0#Og3$lEkc6-++S|Xz4*RIWmpkyzsXOHk@I)oBDg_^zY7=Kz zBu!KGIZ8b(M&>-G*d%o#%6^nprpJjH+)MQ2U+J9W``)EAhx=A6Up=fYCi53xp!k+p z(3{XpA!j6Fm|Zo90l`1$H8;yl)OdC+o!XIm`$9Q%X1^`=HLcAdS_5WY)=vOz!y-t}Nz|L!}R*R(l3I^v%YqBN) zhz_N~GqYr8tK9Z~OPrsfmq?tf=R1Y6h2a^G*$ag0vqIKj zD4(7FzcAH}(|lBo&K@Q3AIRkn5>Bg6j+2My#j@&Q|3nY_jc!~QBav)Lgjyqe^b&l*!7tEZc07ycXs(1C2`aC^#%+>< zoH!k&rE7^ikf>BcJ4&Ap+6rO26iZ0$^|j>?zTk&P*9;Q>`bx8R52 zSMe1nZyaZD)`t1jukdfb5lut_n;lN>TqSTAeIcQwA>^CHO;1=y>GV)v!rgcI$EhI{zaP*1*2#v`(<;QJudBvB@sfkVu+3(B&f}-1@ z;eJ0I5eZc*c2=w71tmF1KksZhINzdTpD#e1uIt8Xaf5$lfO9K9O_=sU4oAA!fik-( zZBx*h+gm>_`NdhLgH)ux!6(heB63EQ)VWOM{`(7#@(Xlt0Nc37DK*J7u)-}eSoG;7 z%9&D28%$f7=UTL71i@~)+)JdW5#-kP0%BpE`v-1-*H15NGO%CksmQa^AuFo-{PxMU zPl?CsP35)Z9J8MNK-D!9{|tf44kKtR7Lj(4=ix_~xb(){=r1{;I}uQ9ZsMiuKHkR4 zY&NMQ6@u)c3G?e|W!Xz`xE9Jz?BwX%!5GccCub`pE`J z&ryJm$Q5;tZTIObqJb2|Cn2Uj?Fw3Q^FiEq-j{~~bLDL`)bV2t; zuv4yo{Q_#=(qKl8ppfTQro^v?rk>w&GHY@;-^@NP&J-eZRq`2_-ME`P6kJNrUZcf| zv`mMmuBburfDBaMvq3~hdq@X)xF<2YK48s4y%r{=I&NadCdJlw^N<`CG#p37d&$Yx zxau#S1|&d=x4X-F{fFlH#(cWK(6F;J>;suYjK5FfXcYYALAc^7wi{O7B43O_ima+_ zF0y0iy@|WIt}C-Zn%RsVyML#=<^~iqj%g^fLG>f$i`y6Y$#{`M2jH@B7&#BlL-VHSk;`ejhlVsf_?y8tqH%NIl%B>>@M7yQ&FjK6lUQw& z*$_!m*F@ujSxMz`rle3ui-+V9QbkqQM`eXmlG*tDy0mRRXxhdoa^}6!Y@{!g2F~_(?*Y?zaF#MMWt`s9tYjNJntA zQsvzLCUFC|gVxK{Jnf}7va#sUnJ87y2U~C{@hI;{5GQ=yTD;V)0|M>YY7V;WL~up# zP~B`+3W5TmusEAqvR^#4V_0(gXD@}+Ao+Cl(xS6)7rpa~`Pe_#>+8p8OA7SQ`S@+G zaI-WOFAzH!Rv0U5QVvn#oTgYHpz#b$syPlXp>o7SSy!e z;0Fbx6L^yB&o>j**zwkajd^+sMx@)K89vvEc`dE3uV-Gs^E%@ zq`qa0j{%QI80DkqgXNR>jYpYIH!AHAw7cDe_Y__zf1@a-&oakksp3MffDqPwD3R|% zOV6v**egg>!4?-Uof_}>S?>g4N%*J}(2)?2FN8ud`+i1DHIawK1^g7p;bW0opi_Yx zsyWhNFiE(u!T%7gYbv`7lhw8vU6Q^rApIqISAc(EF}(a*f*NiC_8)mv^ui9eud^(#vGpAhH>eXL!66WH>@`i!qUu@w#xls=W$g*;H zL8H=Hr3JmARC1ahOD~7d&4XXur zbC-5T3)mmAT;@X_O->?&v&0lca2N9j-AJ7}K>jgdrXdWcMiX67qv`10<6#{!$))W~ z(!^NoVj^vKmDFS$FdhvF8=;rbL#Xi9|5#yeycd zGhBC(Sq1Kg;kmXdM2YSMPApDYKbJcrmFmv*nE2IFBCK0MeP)o0<8NO{ zcAR3cl5F;;}w+$7G zM=94Saghr7pe6!|@k~oNOT)MR?~Q=7%?)%V71OB-G$vj!yf>$r=!Kps8=r*6rPVNQ zh9c>TKV3K2dT@RaUmXrht&=md!r0+I-H8G(haF}v$@|EV$;H{Foy4pUXV0!Xsar&X|s>!1ws~;e+yoO}h>A&P=$Rc0%xb zd@ZiLI`$WOdJxOVdt8bO+AyVQfs3w=&eLKVUw`f0>tj0)A7jG=Q3Y;{48Yr*^qfUj z;iOX(4;KYDRw#;q+tX9XRey!TgmL27&X2jH@#h!^HZITOvXC&wHdl}9tu?MuOV%+- zDh{tQ{E(WQfzT-k=ZD*?HJY*th&xP7k{vR_ZELeAX+Rh-g88GQzBNtbYz{PS=%tjA zle5BU2_XwCiA)y7&|})dqfr>3>|S0~cxK-dOnamOQz|yjN&tueko@5!;jc`=GwpZ zi`{=p`jR)!rx1NeKpO6QFQ#V~7=g$_P6(O^h(}-~T(H9e6Q`K;Sv%YuCT-kq?;Fz)Ah&UWkumpdYnCT5PulqJP zKrF=EgX8!wT1UzM0Fof;6u@q>sSScA%{g7UufD!ZKTR%9{&lx<2H|8ug{t9m=eW1L zG4Z?6J8;@04(L(q_RSh+<4Fe@r!_C+{$&$jTxcvEiuuxk;w*hR#TSGoJ8_wzcj~AJ zaflldB>rPd$mLI+YfAqNc}sd9r@0Qube=CkgoBZodKI;-v?5?gXT2m}-OkQnB>?#f zs;=`Xh=j=Z$Zu7Ate`eM*Zh_foWOw~!!t5oV!rog3P($1CJ}}gP+7XS1D5Jxg|LAZ z3d&>7e;3hR9!hOb%f_6#ZfM)TZFVsaN|7((+y00va7F>ZjmjyNQDW}&{cqmV^DmgS zz$alj8RgHHRc3y9 zu1;6pfj|?(mmo7B&ma-afy`UBu&**y6!ysK>FS*u2E>+&G@X^o_>z(Zy+;Y`oQDAJ zI)#$@ybN);$;Swe4pHVggQz^Il}U<5WE}N{6vm5&LB^d z3vCZCrlYX@?Mg1hJYL8~0*ObsJo@>DH9IN{O)TI+hCKt9&5^*t4r-xD zJ!UCPa@LICa%B;rSkbe%m-+2uf*#n3XzB(V)dbWWs5?rRBq)Z?Dbw$fi!QkSj2b$$!wS z&vSjgoLx_(g~zw~Ol3j5@V}H){ zqmwfx?b9X(g|nZ|7^K^KIz&G0${>Y{AruG`c0KE7NtwfQ;v%dY&e9EaBTHCW)&HZw zgakj=k3$rPoa9^$Uej@ijLz09<>}k?NCm@#?JfTP$`*&dX?OCK@BE37x4W%R{psb0 znN4UhEO0hFX4C7OD=*Wur7GrfURxE%lcdvn8ash`Mo1k=iGusY26Ik1;Dn-72uCoh$-cO!s%I5hBZ+JIy>Qz4(flUf6#wv4c0p1{LUPn> zzF9N6;%d}z-7qoZB?KYwJ&Snk6qPcZY9aH9wp|YBT_psSW2BzGt%3s&_ucr9kx~zh zd^}jCzR~P$ydEb_QjeU8`Pfo7iU^n$;B>!-akE0q?jNWPsT+~rc*$-y^di7coRRs0 z6>XvykNV7_1dd?>Mh1}!U(?D>BF_lte<9@9_^z^E8Lhls+`of#gAq$bXfhxhch(1_ z5|lCqc|_p9-cjOH`~)$g1c$`Uk*j7R42+2g+GN|NEq%%ah_mDS92pWWLk~(N(x4~U zSMpYQ+pvxfHeuvroV8F~@K#gl*au6IB`|~|DggcGF2yztt?KE~c*$oL>^>X>rtH3r?{{DDGhi9er+4?|%xi zm>_};3&Hr1$oJr4jK-eYRieU~58HwV_z0R}W7#e+6k1-_ez*C=8+ijRX1-_ZJZ7*| zJtfxXUK9|4HV30bw1AXC zc9xkp#KZ+7cMBeLnrK(0H4T4`lQ4=JVX3dvY3MuX+EMzn#9V#`%M z90%YrLYVg4({d2@FsUsxn(NA$;JJ@@I=Lj!6^~A6DxWfE+=45d2F+;;ai0^Ra@@|~ zzXf6sGn_3Zp1|{xJ^N2kDN1)&ivBUEewlv69L?K?P{sHXuS*fnSiJT0`oFN(_Y%9F67Ekfs}CxfR__ZFMWX91xh8WgRo}+g;F%BYF8Ol+LlAM3{Z69j~~r zD>y_9T7x+MqPL8X$Ib`3+h(y+;-z<@Pw+1-x&(b+?U#Om^;gH2Smegf^~(YDyxDf* zXF&4~YQE~ho^=UsYlWe%CDf0)=uB*F2J5SZ(pEf;Z2+VPse#raclql&MJh$n{A;ZCRGgV6c3KzfXQ#I0aIX9&BWLvkovG0Sdze@#tJF*y}E zPN1r<{I9zQpLD`5bqT43smN!w)E$(}=#cMD8q2^;kN7LaAK(AO2vpi+wb(1;^p`?% zuELnQVc(A3x|>CUVjqkTwi=`^fZVmE2q9z|$jQ8J-AGj*E)t_tEzj7wFeGk~c^rwQ z+HuHUY*Q-A{d4B`NH4MRSqijBv9Lyy`9xvPb4KqIn3@m9@66YK@xo?~01u}}lx}*_ z)wyB75~*W32<{iXIx7{PtWVQ_DeZn7eo+syXmlvl~g~Ky_i(fl{mVHT%;QzD#xL0cE4ZO4nW7vNr;e% zSC0x2;3Ik0Xps6 zE;Wr?RQ@b<*Qfxii^cm}i?kfmIZfR7e%^Mlcz%wrF}LD&>N$qY^E$<&}X18 z;?K`7y!V?%BEWzW8M{iwus}MeRfcf7}U*ys<%n*0tyy|rE3tmXbhtZe@*zp*C#$*RI!L= ztTz*oD;iK%+*sKxpbas(<}3doJ_dU)uUllcJ5I?AsbxWN$lCmy`2<5?e=6M5hr;F{ z`^NbLe0#F-SR`kc3#aC2j)%0qc`j(ZrL+Tb%n78#_+j2?GwP)bb7FAXdSd*{clif2 z-j6MA-))$`NUp98z2YepoF})ai}H1b{xbZy5`)zh#cM+-p+Ln3t|_f-f=FARkB32b z`Dl(Rmc0_m`Ma*PuME2(U%@%$ce9@ZPi=Pc!Sgydg{Tx$0^uYY%@_shVDKaBrJ|Zy zCX3(&EeGQeBnM}N2BGzOkgKFwd7Y}}%MX&!v82Aze9SKP z5ePnIT24tVJ9gUo#uaiJqbPe(xbRoDe3j0Ek1gTs6y-dJ)-yH8K^07= zKvjcB?ViO8Ni`AM*>ic{`J)-!4rVx0k5+Sp(wQG)37LgsJJ?EviNvv~6gf$EP1yI< ze(0~EdJ8=56o#fyZeD^M?21vwT3;a%w?1^d%^JQfSdQcEDU+@D;|^=JS6v>zq!Fe7^ZWh@vYnpOB8dH zj6kP|f9xMaSU^>v`o$1j!_CG368qzwY;^+iji8goG!ui?NFrI}T_CAc<$8Z{!l23i ztFdCFNYBgV4&AGgB;C=|= z;J`jv2{@S6rb-#%Zfmj{2>2*s)rX6mvs8(0Ob;}l_a;NXfIA5=|3kQcVbf@lPjtud zd#7i3_5a9vT7GrD=ocd*_NUClQ;LIGihQ=Ybe8{CqI^*+I9MZIuA@)O!ChT0fSoE| zoMn@%r2V_jG*M4NeqBEga3l?3ifyp&D4 zo&Fo7sGpv!YBo$N#58@dcXEG|$_7;?EQB|$dC}6IUW%nFQ&0jiHaWoFZhbTWBkF*T ziV$kzw95)oqK7;*LyS>u<4|2UXCeqA5)7WN2dOS(kHd75&L35@tO3WUUN8LT2aQ*- zSsGiqCsf`;ym3Y5H;_2!2N_0gQukkoG7y`TI3LLq(6f0>8oQm_7deAIc?Q~wA1nVe zc)dIw2~<#mVNW6alo)92gHFKUQyukznQRrJJfsjQj1h~X74rQurnid_PIcNa`O#^3 zC2AjuG-1I$G8>vv_kfr>0pWnLFt!2GB4)#+(k`gDiXvA3On}tH&jBHI(FwY7#$lXC zSe^DI#Ev-_m_jH?H|Sj3iX4R9cbyhbzt_DzaGy{Dkrwlz|+=qQvfJ;aqC0~rl&F02^C3}nY+@Jwnjnh;SR1ZZt;O($n zLe|cBP*RjbVO!l1Qe1WW?JZ&zw~GK zUW!i&6jOp!0!Um@adG&Cd<}A!V35GRlWc4ytbHXQy;-p1AVE}Y@n$m}fb#JUz zri{2+7wlGEa&;1;p?7BbfM%m9PJz5fdM)di_|VGRN0+zII&8{TGSu!+LrtX2mDOxIxQ17YiFv0ewafFTCg5-Z?kqbcOWPMsgO2&#c z!^jytj(z|Wgy4_y0&KlNiZh9OOuI`+g>osWeWsOubbusvfwB+8m;xoG)qBTqrk|>oo$4=8T*8}boKD(>OvT2(z3;*(2#;_a05^3#Lw_Oi9&lazyQ3EcJ5K2Yh__ENqW=UYNkS1QuqEv0&j$Z>6>kL1~xnyR> z7UXbAkL-+0aXB{$!gNVZh6gZFd`|muMM~%n(9XV}Ps~oi8Re1Ae$Sr&^X`{)I;)GjnqlQ>0>EZk#gy?F%fhV)6l2o7z7xkShz>xa%oD``MeLA91~vF@nQmdtMUXqnQVe<%T4{xz_{bU8i%{#Yj6JL zKRj5^z}j7HX^q2XF?xoi!6)9W_|;@&(`R3DZjGkt;;fjp{dA9^!vyi=1aozOjX=r1 zOHxjPHV%scBat5ZDJ}Kr`^hHUrE4CGrZK{hTFNQvu_t4=3%!5&K_eO$>*_s+UM(qB%2DhE z8;0^4`wXP%pe62!f@{u%tCj+l77}z&&M?rSs#JT4gPH%i^~9`K=0$LG{@E_>OEH-a z%BlbH>AmaNX?W}T%?&K0)me>l+>m*>DB#drB?Kkys4_V5?+~>j?-Ez82760kh%UZc zh+ZRXg0@+bx$tLipLXEMzLL4bvS6*+!eOc6moH5t^JBx#3%yr5-lva)4K)Bg5E&ZB zkbcdK)Vj!{kp)mk!0buwgTDmr_J;u^^^ZeEbe;l3q23Ad$PoucG%p$z$UXiNh`}zrLgxi49xW6HH4l zEWA%LyGI?I1eDp|LQ{`LM3HFUsaKR6*ndCNsc4?cJpV`M*0y1}~?aELqP5 znpZsr6Nz{;g`E;}=*&zLQg8F!t6$WEg_}NKRDH)@3~tz6e2YkU>Wi9$b+>+4xJXZh zAMc=p)UsS?fEvH^odrFG^69FigqhXx-P)PQ{QSJt_a7I52;#OvZP6b)$uV0bxt4=# zf0Qae*JJ7J%R$-hm?_>!*B4**n#uOe--OlQ`TkXcU+A;f77N9_0)H@)Ud|e)RFcUd zN)To>ZA`p=`N8;4Vfc$fY{DeaV?Y$qiVLcD0SjNM+zbz*mcH$ORvErcsv`t4inI2 zf0(PHs{R~AfiIT3^!h{-Yy>*|cA&l#m!P@@u6($@FmPHT z@r%C@C>+#)R+=BLENd~SbxcL)#$;+~oRSKCwj{=a0p!tR<;}_C?6xp$+tqv&r^|Rs zlA;a%L>)f@fM+tZsqIIZDF=X0nQ8<*Jk8&UvrBa$d_{UlJgJ;;y~d`v32H-{%p5mJ0?J zakE#O;T+M87K27}jZ-7XZA{VgAbwbJjb%@%QRD`b0$WP%G%J_ic@E6h+l6ZCy7VzO zrc<4Ki&X*`baCF~#YMM9z47DUF^4B8mxp`Y)wApuwSixPq^?2o7V&{f)Gv-G=6Kd= z1oa5h`BNGM)0AG#@e#B<=(VcUnxO0BCfRIm8xt5M;vh2XldrbV|qS*LBuhQh8 zpUnNmM@YQ?w?FTZm3WBNCuyw5T%>gL_cklpCe15vGcT#Fd|lcI8(j<-BG)f-^@%5K z{L`0+?+~Jh?0>26ob`6+RVMeoVGP&iOxC$|d0}BXsA&uc29;<4W?nz4D{4b|>vp zuzOzyfUg_g`7MdY5X8OQghtM`xqZq<=WCL!rN$D;%LCR&r`k}2e_k>-l^=+7o} z3kr)1;!1~j3|VPTl(^vR=*;kxKw_AzW?P1u?VgEC?=&SaAz(PcOOT|>K7Noe~MTlkcbi7`qj&EP{3 zf&c`aAeOQGjEN`4?JCxQlcHx6!#v*BQk0f|A{UF6+ZUodk^Qdu_PRGtYLoJr9xt^^ z{ds6S$Tfl#u~Zt-RKt+-#_WtrYX5T~_oOCML5XO69r?U7o6iI4XosS6}H=tl&!o&y9=R zI%L*6E|OVc<@9~}AG~+DUjFeCExgb@ce~(R-Iy?Ni~xeQkHWlomo#qdB-hsF#bou% z(0@IhyKZM)_Otf*@hrvJ%whOA1-n1fd+p%BSn*-gU+ly53<37|Wax3b4`TdnGbgY> zF_Q{zwytLIiB>2isb)H$P3)j|I%|#b>}>3l^V6VzS*`|$csg!eENc>8N%*xt#8Pz1 z%SJ~Eu8^{RpVy!Wvmnch?NqH;N;mb&=Egx+RWmcBQC5|oJgp;@oR1@-b$}o@CS~?> zL;|-}L|t8viT)SiRMLg0mF;dac4;95w=UGFn@I;Vs{<=E^CTrLp{~|A>@BscrK}pT|AyvLd1FThq(_s)01y3 zt2=12a=SAB!XaweKx9ZexvU29N_#(y!#1)1?b>1e>_*;NC=NW|vx<~LFlz+!HO@MT zL*d@19lq($)Qm`a?4 z<(19C9(_pCPwDFpe{^(m@#OWJ^`i~CG|o=7UumF^&flSAQOss0REw;){_EvdhPrmglD01O1jeV%tuSb*#Dd3k35ktt|TIgE97PGRhUpGhaI)m-K5|npkuv zCx+MEkP-Rt!G5hdb2fBbS)$n@hxb5*y7=>083HXq{t2HIX_hT ztLulSGxpC3CAb>WgDScq4%e30JQLwbHs59Bj*V@Tt#`MNmgOrzB7Ql$`}}SG}bsuf;=rxEU>`-`TFd&CsXM@&||2O-lS*gBQ?- zAO||0pwAQ`r1jZLym5893$g_IbE431;0^<&H>o$VY~6X(Ceq>oxW(-;<@ zVFrLo549F0Aw~JCiRCn%i2SRC=2>a@#ZsFp7g9`ABoicxlY!SfQ;HlzUb*gOYqF5@ zpR5tZ@`CWR^2@)GBa>^zel>s|IuJQNvV;4_i~~h>2Z2@sDjA{)^)fSqeS7>h^_}Fc zmn&cSQ(@t$e8Nq1rEpRf7GwM{vrT6r+ibQ**WHDUt(gSscrn4?>C>me8D_W;jBULb zBx-+VDhKiGkicvcMO2N$KQ(4h)X{5Sy!K^|sSU&9V~PA$gAij5br1jj@QHBrly(RF zJlMLDS)#VR*1xe{9aiL{nvYRj#u>D5(s2eXYo0R&rcpKdLWSW1c}RiE16mmMtFpi3 zk$Iz+;`|>4ds0^YZ@fe&upG+bW74q*LQPC>*>_J@?nGY)Vt4 zuJ7h7abngGoK~8>_oD%@rZhhx3l^jv4@Iyq@@V{v&AS-hh@MpVv#-DY8B38dmP=cH z==4JZBPr=@uJBfGtFn9_YXM4~_M*h+oooYcPQhHg{bml{=no$VlY>;)U!0<`pFZ;m zDnsWzM6q`iDzgl4KRLTvB{z%g4o5&Bo0^%J+V_$2%6T~T_OnETfz0VM1XfN0!5c8% zCdV|Jk_g58?Q(nt3>Hj#_}i@5<8D3KhXPNs?v01Zr zN%BF>hS-5XToa1y)5SfX*SXbikLL|^IZV3>pXml8iaP*;R|cUa-tO<5%d%g%$ajXS z80d43gUW{-=`84EoYZ)hX+7s&>fF!0C)iu<{2?9yeS9;rU{hEVI&4cfYn053=&kib#=>^AvJTrzk?;ZJw^Ge(&IEh#Kc- zFP^ljH*TI~ERZBk=xg0H+0hsT1UcyXqLubCthmL4D)Q?GTvCS#J8hSS!Rk;+=5UQ$ zfAmI$*Hdv-`(|?mV%$I@S8Sef1GJI5>~;#CCI!>Y@%0{^to#8<@O5`=XJ+nC<*bqw z7N7U9Um#b0{p@#71_@NQ!C(j?FF@qKIN&fKS2nQO;1D}|CpucvE8NAhki-tIqq-SY z=%rl5l ziQ0(D<3sl5v@OP=_`!bV_sDJ#H5N#co`qJzFj_6o+%~B0KIc?}F(ivnOtS4Ku)|?2 zx7=~&O@HRY89{zJt$@gsHe=DtQRW;yDzpeggM@;CTqXWW!XGyji5*^!?n zDoG^-oEJwFJFYOml@HA{wsvs^c-5uf!BG8djuuyuX^3aYa7gBxMCXOMVA|EgR`(*Y zUhE*r4o#CB=0`KXKus9pcyr(CjoEyGmlNs{o_-ZXVhFR8U=ANSNB?d`NI%#K+VwUk zJ(D(0$+Iq<5Lq6^$0R@Fy?$|?6HrO2XHfs9{@2|8`a(!VoH)T0b(Sfy*#es)>lYj< z(6zNCRs3u0#4AG5g~-GVw#9iwGv%}z{S*UD~ihx#lfZclDldIUDU)gyWppQj`12AIZ2F?g_jDlHf z!U{-kPGP_xj7qF&vZNbfI2OKmUD;_BCs4x<;}buwoMGc&scEhqL64wJ?k=`BLn%8F z8_)UClZ%wfuafh4wM{}A1WuQ7ou{%Z@OQm>MC6W|bUz*Ydm^bnA8=_Dch`QEWol6T zT$u)8OuFN<;_NhmufZPwsl3> z!cAcgP()0f0poJ8IDepgXzuWo&|m6zZ29!e`Bq(k@8T4-)q=)ID>Z-5>)=Qv)5AS) zY^4zO_&PxCZuB_EXO@Ao?R{nGQs<^4%o!&~ayph^=wQ;Q1}!W<&)xpcnU-BDGuOV1 zbFOek|LThCfEGo5%DI%xr9X9wx6$J06v7^_ONh>s`1^eTf*E$32+r z1fe}sL3tHLbSa}fu850IoBEBxkAsso&6$usfgUA|6?Jh%8(zKG2%o2yz%ag>EpOp1 zw@VMlmY6{&S6P7W!*p~D#Y^~&Ds}fH$w=F|PLwQC;u0ZB35>gm67SB`<{9V(d)?-F zv@2LKPst2I4PMHGKkpWJE@fMRHxb061FKxc+? z6q>)uhvyW{`TypO(uuUcSWP@ADdChVrs8iBe_?haFDsmoa7KNjg{U{N^L8ZW57Tjm zAh6v7BLJ~3dY+aXTCPY)?b0JlpE_w6j|Mp-(rWA$_xffPu(N5uDo?^ShG?zTX^#

wiBO#k=$w3$6Q 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�C*}2A2sQ7Vq|Fd`J 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

4vPvW=3py@%GvU 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 %gK0YJR&)b)9y@iVlG{C8-F+S3phlk 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

rI{Lg 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

#;pLuiYPrlP9QeY2CqWG*f97?Q&Uju`V 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

G`9o)#9&!34mbh3FS9 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®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�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

j4D9jNppJhmtMt+XBjX2xjx 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 yNakG_9BzOeS>6TjjP&wb{Gc=y*_ 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

70V9e@VfgBGEx3mI?Ow;{gExsVGZ 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

`OF-o$>@;^XVpBGCuRC(;YOWV* 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

U?U_1_y60ydXh?W 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%0AYWnET5 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≦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

6Xa+-R)v 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%0Aseg1sElZHOtEtka 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

_W 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%0D!c^AdvTU!_{(iT>JI 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�Le1WH@KwI>#&rY)B_9>n6(z>pqTuPx55 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

  • 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≻3hWElK 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
    @@ -926,7 +928,7 @@ function InProgressRecordingInner() {
    From 60d3615db2e12917f51e2f0f7f177bb6381cbc6c Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:52 +0100 Subject: [PATCH 042/217] feat(gpui): share desktop recording and notification sounds --- apps/desktop-gpui/Cargo.lock | 21 +++++++ apps/desktop-gpui/Cargo.toml | 2 +- apps/desktop-gpui/src/app_sounds.rs | 98 +++++++++++++++++++++++++++++ apps/desktop-gpui/src/main.rs | 1 + apps/desktop-gpui/src/store.rs | 36 +++++++++++ 5 files changed, 157 insertions(+), 1 deletion(-) create mode 100644 apps/desktop-gpui/src/app_sounds.rs diff --git a/apps/desktop-gpui/Cargo.lock b/apps/desktop-gpui/Cargo.lock index b045500db4a..cf9255478dc 100644 --- a/apps/desktop-gpui/Cargo.lock +++ b/apps/desktop-gpui/Cargo.lock @@ -5883,6 +5883,17 @@ version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a79a3332a6609480d7d0c9eab957bca6b455b91bb84e66d19f5ff66294b85b8" +[[package]] +name = "lewton" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" +dependencies = [ + "byteorder", + "ogg", + "tinyvec", +] + [[package]] name = "libappindicator" version = "0.9.0" @@ -7390,6 +7401,15 @@ dependencies = [ "cc", ] +[[package]] +name = "ogg" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" +dependencies = [ + "byteorder", +] + [[package]] name = "once_cell" version = "1.21.4" @@ -9080,6 +9100,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6006a627c1a38d37f3d3a85c6575418cfe34a5392d60a686d0071e1c8d427acb" dependencies = [ "cpal 0.15.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lewton", "symphonia", "thiserror 1.0.69", ] diff --git a/apps/desktop-gpui/Cargo.toml b/apps/desktop-gpui/Cargo.toml index b2411ea5a9f..c90bcce4a19 100644 --- a/apps/desktop-gpui/Cargo.toml +++ b/apps/desktop-gpui/Cargo.toml @@ -68,7 +68,7 @@ cap-project = { path = "../../crates/project" } # a `RenderImage` (`src/editor_sidebar/cursor.rs`). cap-cursor-info = { path = "../../crates/cursor-info" } resvg = "0.45" -rodio = { version = "0.19.0", default-features = false, features = ["mp3"] } +rodio = { version = "0.19.0", default-features = false, features = ["mp3", "vorbis"] } # The editor stack. `cap-rendering` is not a new subtree -- cap-recording # already depends on it, so wgpu 25 and its vendored wgpu-hal have been built # by this workspace since the recording unit; naming it here only makes the diff --git a/apps/desktop-gpui/src/app_sounds.rs b/apps/desktop-gpui/src/app_sounds.rs new file mode 100644 index 00000000000..1604ab84354 --- /dev/null +++ b/apps/desktop-gpui/src/app_sounds.rs @@ -0,0 +1,98 @@ +use std::io::Cursor; + +use anyhow::Context as _; +use rodio::{Decoder, OutputStream, Sink}; + +#[path = "../../desktop/src-tauri/src/recording_start_sound.rs"] +mod recording_start_sound; + +pub use recording_start_sound::should_play_countdown_sound; + +pub async fn play_recording_start_sound() { + recording_start_sound::play(AppSound::StartRecording.bytes()).await; +} + +#[derive(Clone, Copy, Debug)] +pub enum AppSound { + StartRecording, + StopRecording, + Notification, +} + +impl AppSound { + fn bytes(self) -> &'static [u8] { + match self { + Self::StartRecording => { + include_bytes!("../../desktop/src-tauri/sounds/start-recording.ogg") + } + Self::StopRecording => { + include_bytes!("../../desktop/src-tauri/sounds/stop-recording.ogg") + } + Self::Notification => include_bytes!("../../desktop/src-tauri/sounds/action.ogg"), + } + } + + pub fn play(self) { + if let Err(error) = std::thread::Builder::new() + .name("app-sound".into()) + .spawn(move || { + if let Err(error) = self.play_to_end() { + tracing::warn!(?self, %error, "App sound unavailable"); + } + }) + { + tracing::warn!(%error, "Could not start app sound playback"); + } + } + + fn play_to_end(self) -> anyhow::Result<()> { + let (_stream, handle) = OutputStream::try_default().context("opening audio output")?; + let source = Decoder::new(Cursor::new(self.bytes())).context("decoding app sound")?; + let sink = Sink::try_new(&handle).context("creating app sound sink")?; + sink.append(source); + sink.sleep_until_end(); + tracing::debug!(?self, "App sound played"); + Ok(()) + } +} + +pub fn play_notification() { + if crate::store::notification_sounds_enabled() { + AppSound::Notification.play(); + } +} + +#[cfg(test)] +mod tests { + use super::*; + use rodio::Source as _; + + const SOUNDS: [AppSound; 3] = [ + AppSound::StartRecording, + AppSound::StopRecording, + AppSound::Notification, + ]; + + #[test] + fn tauri_sound_assets_decode_to_audible_pcm() { + for sound in SOUNDS { + let source = Decoder::new(Cursor::new(sound.bytes())).unwrap(); + let channels = source.channels(); + let rate = source.sample_rate(); + assert!(channels > 0); + assert!(rate > 0); + let samples: Vec<_> = source.collect(); + assert!(samples.iter().any(|sample| *sample != 0), "{sound:?}"); + let duration = samples.len() as f64 / f64::from(channels) / f64::from(rate); + assert!((0.05..10.0).contains(&duration), "{sound:?}: {duration}"); + } + } + + #[test] + #[ignore = "plays the recording and notification cues through the default audio output"] + fn native_app_sound_playback() { + for sound in SOUNDS { + sound.play_to_end().unwrap(); + } + } +} diff --git a/apps/desktop-gpui/src/main.rs b/apps/desktop-gpui/src/main.rs index 6771d8b128b..9eb04f0e98c 100644 --- a/apps/desktop-gpui/src/main.rs +++ b/apps/desktop-gpui/src/main.rs @@ -5,6 +5,7 @@ #![cfg_attr(all(windows, not(debug_assertions)), windows_subsystem = "windows")] +mod app_sounds; mod app_windows; mod assets; mod auth; diff --git a/apps/desktop-gpui/src/store.rs b/apps/desktop-gpui/src/store.rs index bf3c9f13cfd..0d82334dbfd 100644 --- a/apps/desktop-gpui/src/store.rs +++ b/apps/desktop-gpui/src/store.rs @@ -453,6 +453,17 @@ pub fn store_section(section: &str) -> Map { .unwrap_or_default() } +pub fn notification_sounds_enabled() -> bool { + read_store(&tauri_store_path()) + .and_then(|mut store| store.remove(GENERAL_SETTINGS)) + .and_then(|settings| { + settings + .as_object() + .map(|settings| bool_at(settings, "enableNotifications", true)) + }) + .unwrap_or(false) +} + /// Write one key of one section, preserving every other byte of meaning in /// the file. /// @@ -1854,6 +1865,31 @@ mod tests { } } + #[test] + fn notification_sounds_follow_tauri_settings_without_writing() { + for (contents, enabled) in [ + (None, false), + (Some("{}"), false), + (Some("invalid json"), false), + (Some(r#"{"general_settings":{}}"#), true), + ( + Some(r#"{"general_settings":{"enableNotifications":false}}"#), + false, + ), + ( + Some(r#"{"general_settings":{"enableNotifications":true}}"#), + true, + ), + ] { + let store = TempStore::new("notification-sounds", contents); + assert_eq!(notification_sounds_enabled(), enabled); + assert_eq!( + std::fs::read_to_string(&store.path).ok().as_deref(), + contents + ); + } + } + #[test] fn device_format_preferences_use_tauri_keys_and_preserve_other_fields() { use cap_recording::feeds::{ From a162377c6001b45f53e78075efcfeb00c30d85bf Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:52 +0100 Subject: [PATCH 043/217] build(gpui): watch shared sound assets during development --- apps/desktop-gpui/dev.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/desktop-gpui/dev.sh b/apps/desktop-gpui/dev.sh index cd92c3edd60..49aa48d645e 100755 --- a/apps/desktop-gpui/dev.sh +++ b/apps/desktop-gpui/dev.sh @@ -10,7 +10,7 @@ STATE_FILE="$PWD/target/dev-restore.json" BIN="$PWD/target/debug/cap-gpui" BUILD=cargo -WATCH_PATHS=(src assets Cargo.toml) +WATCH_PATHS=(src assets Cargo.toml ../desktop/src-tauri/sounds) [ -d resources ] && WATCH_PATHS+=(resources) for crate in camera scap-targets recording timestamp utils project rendering editor export; do [ -d "../../crates/$crate/src" ] && WATCH_PATHS+=("../../crates/$crate/src") From 7922d1ee9b3218ba288b53e6be5f008c4ccf4ac9 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:53 +0100 Subject: [PATCH 044/217] feat(gpui): play screenshot and clipboard completion cues --- apps/desktop-gpui/src/screenshot.rs | 5 +++-- apps/desktop-gpui/src/screenshot_editor.rs | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/desktop-gpui/src/screenshot.rs b/apps/desktop-gpui/src/screenshot.rs index 08805c9143e..ef966aca10d 100644 --- a/apps/desktop-gpui/src/screenshot.rs +++ b/apps/desktop-gpui/src/screenshot.rs @@ -8,8 +8,7 @@ //! {name}.cap/` holding `original.png`, a Studio `SingleSegment` meta whose //! display track is the PNG at `fps: 0`, and a project config whose //! background is transparent white with no shadow (`recording.rs:2963-2985`). -//! Known deviations from that command: no capture sound (this app has no -//! sound assets yet), no native notification, and no `ScreenshotTaken` +//! Known deviations from that command: no native notification and no `ScreenshotTaken` //! automations (no automation runner here). use std::path::PathBuf; @@ -66,6 +65,8 @@ async fn capture_and_write(target: ScreenCaptureTarget) -> anyhow::Result, ) { cx.write_to_clipboard(gpui::ClipboardItem::new_string(link)); + crate::app_sounds::play_notification(); self.toast_update( toast, ToastKind::Success, From a89d4e8f327ec91dc4d37ca3a293dd43685d7fab Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:53 +0100 Subject: [PATCH 045/217] feat(gpui): play upload success and failure notifications --- apps/desktop-gpui/src/upload.rs | 10 +++++++++- apps/desktop-gpui/src/upload/queue.rs | 27 +++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/apps/desktop-gpui/src/upload.rs b/apps/desktop-gpui/src/upload.rs index 420d82bd471..aa01ca62772 100644 --- a/apps/desktop-gpui/src/upload.rs +++ b/apps/desktop-gpui/src/upload.rs @@ -1103,6 +1103,9 @@ async fn upload_exported_video_inner( .map_err(|error| format!("Failed to load recording metadata: {error}"))?; let file_path = meta.output_path(); if !file_path.exists() { + if !defer_completion { + crate::app_sounds::play_notification(); + } return Err("Failed to upload video: Rendered video not found".into()); } @@ -1227,7 +1230,12 @@ async fn upload_exported_video_inner( } Err(AuthApiError::UpgradeRequired) => Ok((UploadResult::UpgradeRequired, None)), Err(AuthApiError::InvalidAuthentication) => Ok((UploadResult::NotAuthenticated, None)), - Err(error) => Err(error.to_string()), + Err(error) => { + if !defer_completion && !cancel.load(Ordering::Relaxed) { + crate::app_sounds::play_notification(); + } + Err(error.to_string()) + } } } diff --git a/apps/desktop-gpui/src/upload/queue.rs b/apps/desktop-gpui/src/upload/queue.rs index 4a148ff0f24..d88be269d85 100644 --- a/apps/desktop-gpui/src/upload/queue.rs +++ b/apps/desktop-gpui/src/upload/queue.rs @@ -355,6 +355,7 @@ trait UploadBackend: Send + Sync + 'static { verification: &UploadVerification, ) -> Result<(), String>; fn delete_after_upload(&self) -> bool; + fn notify_failure(&self); } struct LiveBackend; @@ -500,6 +501,10 @@ impl UploadBackend for LiveBackend { fn delete_after_upload(&self) -> bool { crate::store::GeneralSettings::load().delete_instant_recordings_after_upload } + + fn notify_failure(&self) { + crate::app_sounds::play_notification(); + } } struct Job { @@ -632,6 +637,9 @@ impl Manager { })).catch_unwind().await.unwrap_or_else(|_| Err("The upload worker failed; the local recording is preserved".into())); upload.abort_segments().await; if let Err(error) = result { + if !*cancelled.borrow() { + self.backend.notify_failure(); + } state.fail(error.clone(), now()); if let Err(save_error) = write_state(&project, &state) { tracing::error!(%save_error, "Failed to persist upload retry state"); @@ -1184,6 +1192,7 @@ mod tests { delete: AtomicBool, transfers: AtomicUsize, confirmations: AtomicUsize, + failure_notifications: AtomicUsize, transfer_steps: usize, transfer_step_delay: Duration, progress: AtomicUsize, @@ -1268,6 +1277,10 @@ mod tests { fn delete_after_upload(&self) -> bool { self.delete.load(Ordering::Acquire) } + + fn notify_failure(&self) { + self.failure_notifications.fetch_add(1, Ordering::AcqRel); + } } async fn joined(manager: &Manager) { @@ -1330,6 +1343,13 @@ mod tests { .unwrap(); joined(&manager).await; fixture.assert_retained(); + assert_eq!( + manager + .backend + .failure_notifications + .load(Ordering::Acquire), + 1 + ); assert_eq!( fixture.state().phase, if failure == "authentication" { @@ -1600,6 +1620,13 @@ mod tests { manager.backend.release.notify_one(); fixture.assert_retained(); assert_eq!(manager.backend.confirmations.load(Ordering::Acquire), 0); + assert_eq!( + manager + .backend + .failure_notifications + .load(Ordering::Acquire), + 0 + ); assert!(manager.jobs.lock().await.is_empty()); } From c82d5553fcf06f4a93d0f537fe3d62f4e07babca Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:53 +0100 Subject: [PATCH 046/217] fix(gpui): wait for countdown audio before recording --- apps/desktop-gpui/src/controls_window.rs | 2 +- apps/desktop-gpui/src/main_window.rs | 14 +-- apps/desktop-gpui/src/session.rs | 111 ++++++++++++++++++++--- 3 files changed, 106 insertions(+), 21 deletions(-) diff --git a/apps/desktop-gpui/src/controls_window.rs b/apps/desktop-gpui/src/controls_window.rs index 6a5da71b3a6..f5b0adcaffb 100644 --- a/apps/desktop-gpui/src/controls_window.rs +++ b/apps/desktop-gpui/src/controls_window.rs @@ -130,7 +130,7 @@ impl ControlsWindow { let stopping = session.phase == Phase::Stopping; let countdown = session.countdown_remaining(); let can_stop = (!starting && !stopping) || countdown.is_some(); - let label: SharedString = if let Some(countdown) = countdown { + let label: SharedString = if let Some(countdown) = countdown.filter(|value| *value > 0) { countdown.to_string().into() } else if starting { "Starting".into() diff --git a/apps/desktop-gpui/src/main_window.rs b/apps/desktop-gpui/src/main_window.rs index a1a13ba7769..ee1e3bec170 100644 --- a/apps/desktop-gpui/src/main_window.rs +++ b/apps/desktop-gpui/src/main_window.rs @@ -3586,13 +3586,13 @@ impl MainWindow { .pb(px(32.)) .bg(wash) .when_some(countdown, |this, remaining| { - this.child( - div() - .mb(px(16.)) - .text_size(px(18.)) - .text_center() - .child(format!("Recording starts in {remaining}")), - ) + this.child(div().mb(px(16.)).text_size(px(18.)).text_center().child( + if remaining == 0 { + "Starting...".to_string() + } else { + format!("Recording starts in {remaining}") + }, + )) }) .when_some(self.session.read(cx).error.clone(), |this, error| { this.child( diff --git a/apps/desktop-gpui/src/session.rs b/apps/desktop-gpui/src/session.rs index adae83be56c..b00b3e58d59 100644 --- a/apps/desktop-gpui/src/session.rs +++ b/apps/desktop-gpui/src/session.rs @@ -6,11 +6,15 @@ //! engine work runs on tokio via `gpui_tokio` and lands back here with //! `cx.notify()`. -use std::time::{Duration, Instant}; +use std::{ + sync::{Arc, Once}, + time::{Duration, Instant}, +}; use cap_utils::disk_space::{DiskSpaceStatus, RecordingStorageMonitor}; use gpui::{App, AppContext as _, Context, Entity, Global, Task}; +use crate::app_sounds::AppSound; use crate::recording::{self, ActiveRecording, StartConfig}; /// `Idle -> Starting -> Recording -> Stopping -> Idle`; pause is a flag on @@ -70,6 +74,7 @@ fn prepares_studio_editor( enum CountdownAdvance { Ignore, Tick(u32), + PlaySound, Start, } @@ -78,13 +83,15 @@ fn countdown_advance( current_generation: u64, countdown_generation: u64, remaining: Option, + play_sound: bool, ) -> CountdownAdvance { if phase != Phase::Starting || current_generation != countdown_generation { return CountdownAdvance::Ignore; } match remaining { Some(remaining) if remaining > 1 => CountdownAdvance::Tick(remaining - 1), - Some(1) => CountdownAdvance::Start, + Some(1) if play_sound => CountdownAdvance::PlaySound, + Some(0 | 1) => CountdownAdvance::Start, _ => CountdownAdvance::Ignore, } } @@ -428,6 +435,7 @@ pub struct RecordingSession { failure_monitor: Option>, recording_generation: u64, countdown_remaining: Option, + countdown_cue_abort: Option, pause_control: PauseControlState, pause_control_error: Option, #[cfg(target_os = "linux")] @@ -469,6 +477,7 @@ impl RecordingSession { failure_monitor: None, recording_generation: 0, countdown_remaining: None, + countdown_cue_abort: None, pause_control: PauseControlState::default(), pause_control_error: None, #[cfg(target_os = "linux")] @@ -637,6 +646,10 @@ impl RecordingSession { let countdown = crate::store::GeneralSettings::load() .recording_countdown .unwrap_or(0); + let play_countdown_sound = crate::app_sounds::should_play_countdown_sound( + Some(countdown), + self.controls_open && !crate::app_windows::clean_capture_owned(cx), + ); self.pause_control.invalidate(); self.pause_control.uncertain = false; self.pause_control_error = None; @@ -658,13 +671,18 @@ impl RecordingSession { cx.notify(); if countdown == 0 { - self.start_engine(config, generation, cx); + self.start_engine(config, generation, true, cx); return; } cx.spawn(async move |this, cx| { + let mut pending_sound = None; loop { - cx.background_executor().timer(Duration::from_secs(1)).await; + if let Some(sound) = pending_sound.take() { + let _ = sound.await; + } else { + cx.background_executor().timer(Duration::from_secs(1)).await; + } let keep_waiting = this .update(cx, |this, cx| { match countdown_advance( @@ -672,6 +690,7 @@ impl RecordingSession { this.recording_generation, generation, this.countdown_remaining, + play_countdown_sound, ) { CountdownAdvance::Ignore => false, CountdownAdvance::Tick(remaining) => { @@ -679,10 +698,31 @@ impl RecordingSession { cx.notify(); true } + CountdownAdvance::PlaySound => { + this.countdown_remaining = Some(0); + let (abort, registration) = + futures_util::future::AbortHandle::new_pair(); + this.countdown_cue_abort = Some(abort); + pending_sound = Some(gpui_tokio::Tokio::spawn( + cx, + futures_util::future::Abortable::new( + crate::app_sounds::play_recording_start_sound(), + registration, + ), + )); + cx.notify(); + true + } CountdownAdvance::Start => { this.countdown_remaining = None; + this.countdown_cue_abort = None; cx.notify(); - this.start_engine(config.clone(), generation, cx); + this.start_engine( + config.clone(), + generation, + !play_countdown_sound, + cx, + ); false } } @@ -696,7 +736,13 @@ impl RecordingSession { .detach(); } - fn start_engine(&mut self, config: StartConfig, generation: u64, cx: &mut Context) { + fn start_engine( + &mut self, + config: StartConfig, + generation: u64, + play_started_sound: bool, + cx: &mut Context, + ) { if self.phase != Phase::Starting || self.recording_generation != generation || self.countdown_remaining.is_some() @@ -764,6 +810,9 @@ impl RecordingSession { this.paused_since = None; this.monitor_storage(project_dir, cx); this.monitor_recording_failure(done, cx); + if play_started_sound { + AppSound::StartRecording.play(); + } #[cfg(target_os = "linux")] if this.stop_requested { this.stop(cx); @@ -1073,8 +1122,10 @@ impl RecordingSession { }); cx.notify(); + let stop_sound = Arc::new(Once::new()); let task = gpui_tokio::Tokio::spawn(cx, stop_future); if let Some(pending) = self.preparing_studio_editor.clone() { + let stop_sound = stop_sound.clone(); let finalization = pending.finalization.clone(); let captured = gpui_tokio::Tokio::spawn(cx, async move { finalization.wait_for_capture().await }); @@ -1093,6 +1144,7 @@ impl RecordingSession { && current.finalization.same_job(&pending.finalization) { current.capture_stopped = true; + stop_sound.call_once(|| AppSound::StopRecording.play()); tracing::info!(path = %current.project_path.display(), "Studio capture stopped; editor preparation can begin"); cx.notify(); } @@ -1165,6 +1217,7 @@ impl RecordingSession { // never does that, so it goes with the placeholder it // was standing in for. tracing::info!(dir = %project_dir.display(), "recording finished"); + stop_sound.call_once(|| AppSound::StopRecording.play()); if low_storage { this.storage_notice = Some("Recording stopped because storage is low. Your recording was saved.".into()); } @@ -1770,6 +1823,9 @@ impl RecordingSession { } fn finish(&mut self, cx: &mut Context) { + if let Some(abort) = self.countdown_cue_abort.take() { + abort.abort(); + } #[cfg(target_os = "linux")] if !self.instant_cleanup_safe() { self.clean_control.uncertain = true; @@ -1818,19 +1874,19 @@ mod countdown_tests { #[test] fn countdown_ticks_until_the_final_step_before_start() { assert_eq!( - countdown_advance(Phase::Starting, 7, 7, Some(3)), + countdown_advance(Phase::Starting, 7, 7, Some(3), false), CountdownAdvance::Tick(2) ); assert_eq!( - countdown_advance(Phase::Starting, 7, 7, Some(2)), + countdown_advance(Phase::Starting, 7, 7, Some(2), false), CountdownAdvance::Tick(1) ); assert_eq!( - countdown_advance(Phase::Starting, 7, 7, Some(1)), + countdown_advance(Phase::Starting, 7, 7, Some(1), false), CountdownAdvance::Start ); assert_eq!( - countdown_advance(Phase::Starting, 7, 7, None), + countdown_advance(Phase::Starting, 7, 7, None, false), CountdownAdvance::Ignore ); } @@ -1838,18 +1894,47 @@ mod countdown_tests { #[test] fn cancelled_or_superseded_countdown_cannot_start_capture() { assert_eq!( - countdown_advance(Phase::Idle, 7, 7, Some(1)), + countdown_advance(Phase::Idle, 7, 7, Some(1), true), CountdownAdvance::Ignore ); assert_eq!( - countdown_advance(Phase::Starting, 8, 7, Some(1)), + countdown_advance(Phase::Starting, 8, 7, Some(1), true), CountdownAdvance::Ignore ); assert_eq!( - countdown_advance(Phase::Recording { paused: false }, 7, 7, Some(1)), + countdown_advance(Phase::Recording { paused: false }, 7, 7, Some(1), true), CountdownAdvance::Ignore ); } + + #[test] + fn completed_cue_can_only_start_its_own_pending_recording() { + assert_eq!( + countdown_advance(Phase::Starting, 7, 7, Some(0), true), + CountdownAdvance::Start + ); + for (phase, current) in [(Phase::Idle, 7), (Phase::Starting, 8)] { + assert_eq!( + countdown_advance(phase, current, 7, Some(0), true), + CountdownAdvance::Ignore + ); + } + } + + #[test] + fn sound_follows_every_countdown_step_and_precedes_capture() { + for (remaining, expected) in [ + (3, CountdownAdvance::Tick(2)), + (2, CountdownAdvance::Tick(1)), + (1, CountdownAdvance::PlaySound), + (0, CountdownAdvance::Start), + ] { + assert_eq!( + countdown_advance(Phase::Starting, 7, 7, Some(remaining), true), + expected + ); + } + } } #[cfg(target_os = "linux")] From 9b21f21c0cea4ccc747a659b1d9278825d1e675b Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:53 +0100 Subject: [PATCH 047/217] feat(gpui): persist Studio Sound defaults and isolation --- apps/desktop-gpui/src/settings_window.rs | 20 ++++++++ apps/desktop-gpui/src/store.rs | 64 ++++++++++++++++++++++-- 2 files changed, 80 insertions(+), 4 deletions(-) diff --git a/apps/desktop-gpui/src/settings_window.rs b/apps/desktop-gpui/src/settings_window.rs index d0d5578d36e..62a136eba8c 100644 --- a/apps/desktop-gpui/src/settings_window.rs +++ b/apps/desktop-gpui/src/settings_window.rs @@ -3277,6 +3277,26 @@ impl SettingsWindow { ) .into_any_element(), ), + self.setting_row( + "Studio Sound on new recordings", + Some( + "Clean up microphone audio automatically. You can still turn it \ + off for any recording in the editor.", + ), + self.toggle( + "studio-sound-default", + settings.studio_sound_by_default, + cx, + |this, cx| { + let value = !this.settings.studio_sound_by_default; + if store::set_studio_sound_by_default(value) { + this.settings.studio_sound_by_default = value; + } + cx.notify(); + }, + ) + .into_any_element(), + ), self.setting_row( "Main window when recording starts", Some("What happens to the main window once a recording begins."), diff --git a/apps/desktop-gpui/src/store.rs b/apps/desktop-gpui/src/store.rs index 0d82334dbfd..b217d5065ba 100644 --- a/apps/desktop-gpui/src/store.rs +++ b/apps/desktop-gpui/src/store.rs @@ -937,11 +937,58 @@ pub struct GeneralSettings { /// (`RECORDING_START_SAFETY_DEFAULTS`), and the page renders it in the /// middle of the Recording card as if it were one of them. pub confirm_without_microphone: bool, + /// Also outside `general_settings`: the `audio_enhancement` section's + /// `enabledByDefault`, rendered in the Recording card next to it. + pub studio_sound_by_default: bool, } /// The section names, so the write calls read as the store keys they are. pub const GENERAL_SETTINGS: &str = "general_settings"; pub const RECORDING_START_SAFETY: &str = "recording_start_safety"; +/// `audioEnhancementStore` (`apps/desktop/src/store.ts`): whether new Studio +/// recordings start with Studio Sound on. Defaults on; the editor's Audio tab +/// and the Recording settings card both write it. +pub const AUDIO_ENHANCEMENT: &str = "audio_enhancement"; +pub const STUDIO_SOUND_BY_DEFAULT_KEY: &str = "enabledByDefault"; + +pub fn studio_sound_by_default() -> bool { + bool_at( + &store_section(AUDIO_ENHANCEMENT), + STUDIO_SOUND_BY_DEFAULT_KEY, + true, + ) +} + +pub fn set_studio_sound_by_default(enabled: bool) -> bool { + set_store_setting( + AUDIO_ENHANCEMENT, + STUDIO_SOUND_BY_DEFAULT_KEY, + Value::Bool(enabled), + ) +} + +pub fn studio_sound_isolation() -> cap_project::VoiceIsolation { + store_section(AUDIO_ENHANCEMENT) + .get("isolation") + .cloned() + .and_then(|value| serde_json::from_value(value).ok()) + .unwrap_or_default() +} + +pub fn set_studio_sound_isolation(isolation: cap_project::VoiceIsolation) -> bool { + set_store_setting( + AUDIO_ENHANCEMENT, + "isolation", + serde_json::to_value(isolation).unwrap(), + ) +} + +pub fn set_studio_sound_defaults(enabled: bool, isolation: cap_project::VoiceIsolation) -> bool { + let mut section = store_section(AUDIO_ENHANCEMENT); + section.insert(STUDIO_SOUND_BY_DEFAULT_KEY.into(), Value::Bool(enabled)); + section.insert("isolation".into(), serde_json::to_value(isolation).unwrap()); + set_store_value(AUDIO_ENHANCEMENT, Value::Object(section)) +} /// `RecordingSettingsStore::KEY` (`src-tauri/src/recording_settings.rs:37`) -- /// the section the tray's Select Mode submenu reads and writes. pub const RECORDING_SETTINGS: &str = "recording_settings"; @@ -1146,7 +1193,7 @@ pub fn should_show_onboarding() -> bool { impl Default for GeneralSettings { fn default() -> Self { - Self::from_sections(&Map::new(), &Map::new()) + Self::from_sections(&Map::new(), &Map::new(), &Map::new()) } } @@ -1155,10 +1202,15 @@ impl GeneralSettings { Self::from_sections( &store_section(GENERAL_SETTINGS), &store_section(RECORDING_START_SAFETY), + &store_section(AUDIO_ENHANCEMENT), ) } - fn from_sections(general: &Map, safety: &Map) -> Self { + fn from_sections( + general: &Map, + safety: &Map, + audio_enhancement: &Map, + ) -> Self { Self { theme: enum_at(general, "theme"), hide_dock_icon: bool_at(general, "hideDockIcon", false), @@ -1217,6 +1269,7 @@ impl GeneralSettings { "confirmBeforeRecordingWithoutMicrophone", true, ), + studio_sound_by_default: bool_at(audio_enhancement, STUDIO_SOUND_BY_DEFAULT_KEY, true), } } } @@ -2163,9 +2216,11 @@ mod tests { "confirmBeforeRecordingWithoutMicrophone", Value::Bool(false) )); + assert!(super::set_studio_sound_by_default(false)); let settings = GeneralSettings::load(); assert!(settings.hide_dock_icon); assert!(!settings.confirm_without_microphone); + assert!(!settings.studio_sound_by_default); // The section it created did not disturb the others. assert_eq!(store.read()["auth"]["user_id"], "u_1"); } @@ -2230,6 +2285,7 @@ mod tests { assert!(settings.enable_notifications); assert!(settings.crash_recovery_recording); assert!(settings.confirm_without_microphone); + assert!(settings.studio_sound_by_default); assert_eq!(settings.instant_mode_max_resolution, 1920); } @@ -2673,7 +2729,7 @@ mod tests { /// default); key present but empty -> the user cleared every entry. #[test] fn excluded_windows_default_only_when_key_is_absent() { - let absent = GeneralSettings::from_sections(&Map::new(), &Map::new()); + let absent = GeneralSettings::from_sections(&Map::new(), &Map::new(), &Map::new()); assert_eq!(absent.excluded_windows, default_excluded_windows()); assert!( absent @@ -2684,7 +2740,7 @@ mod tests { let mut general = Map::new(); general.insert("excludedWindows".to_string(), Value::Array(Vec::new())); - let cleared = GeneralSettings::from_sections(&general, &Map::new()); + let cleared = GeneralSettings::from_sections(&general, &Map::new(), &Map::new()); assert!(cleared.excluded_windows.is_empty()); } } From 474ad26543871896b45800d16030c8fda9c358b4 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:54 +0100 Subject: [PATCH 048/217] feat(desktop): enable configurable Studio Sound defaults --- apps/desktop/src-tauri/src/recording.rs | 36 ++++++++++++------- .../(window-chrome)/settings/general.tsx | 30 +++++++++++++++- apps/desktop/src/store.ts | 4 ++- 3 files changed, 55 insertions(+), 15 deletions(-) diff --git a/apps/desktop/src-tauri/src/recording.rs b/apps/desktop/src-tauri/src/recording.rs index 80ef857c21e..570912a58d4 100644 --- a/apps/desktop/src-tauri/src/recording.rs +++ b/apps/desktop/src-tauri/src/recording.rs @@ -6440,6 +6440,28 @@ pub fn generate_zoom_segments_for_project( ) } +fn apply_studio_sound_default(app: &AppHandle, config: &mut ProjectConfiguration) { + let audio_enhancement = app + .store("store") + .ok() + .and_then(|store| store.get("audio_enhancement")); + if audio_enhancement + .as_ref() + .and_then(|value| { + value + .get("enabledByDefault") + .and_then(serde_json::Value::as_bool) + }) + .unwrap_or(true) + { + config.audio.improve = true; + config.audio.isolation = audio_enhancement + .and_then(|value| value.get("isolation").cloned()) + .and_then(|value| serde_json::from_value(value).ok()) + .unwrap_or_default(); + } +} + fn project_config_from_recording( app: &AppHandle, completed_recording: &studio_recording::CompletedRecording, @@ -6454,19 +6476,7 @@ fn project_config_from_recording( let using_default_config = default_config.is_none(); let mut config = default_config.unwrap_or_default(); - if app - .store("store") - .ok() - .and_then(|store| store.get("audio_enhancement")) - .and_then(|value| { - value - .get("enabledByDefault") - .and_then(serde_json::Value::as_bool) - }) - .unwrap_or(false) - { - config.audio.improve = true; - } + apply_studio_sound_default(app, &mut config); if using_default_config { let library = app .store("store") diff --git a/apps/desktop/src/routes/(window-chrome)/settings/general.tsx b/apps/desktop/src/routes/(window-chrome)/settings/general.tsx index 7b953b98db3..68c090af51a 100644 --- a/apps/desktop/src/routes/(window-chrome)/settings/general.tsx +++ b/apps/desktop/src/routes/(window-chrome)/settings/general.tsx @@ -26,6 +26,7 @@ import themePreviewDark from "~/assets/theme-previews/dark.jpg"; import themePreviewLight from "~/assets/theme-previews/light.jpg"; import { Input, Slider } from "~/routes/editor/ui"; import { + audioEnhancementStore, authStore, generalSettingsStore, recordingStartSafetyStore, @@ -129,7 +130,11 @@ const DEFAULT_PROJECT_NAME_TEMPLATE = export default function GeneralSettings() { const [stores] = createResource(() => - Promise.all([generalSettingsStore.get(), recordingStartSafetyStore.get()]), + Promise.all([ + generalSettingsStore.get(), + recordingStartSafetyStore.get(), + audioEnhancementStore.get(), + ]), ); return ( @@ -140,6 +145,7 @@ export default function GeneralSettings() { initialRecordingStartSafety={ stores[1] ?? RECORDING_START_SAFETY_DEFAULTS } + initialStudioSoundByDefault={stores[2]?.enabledByDefault ?? true} /> )} @@ -223,6 +229,7 @@ function AppearanceSection(props: { function Inner(props: { initialStore: GeneralSettingsStore | null; initialRecordingStartSafety: RecordingStartSafetySettings; + initialStudioSoundByDefault: boolean; }) { const [settings, setSettings] = createStore( deriveGeneralSettings(props.initialStore), @@ -234,6 +241,10 @@ function Inner(props: { props.initialRecordingStartSafety.confirmBeforeRecordingWithoutMicrophone, ); + const [studioSoundByDefault, setStudioSoundByDefault] = createSignal( + props.initialStudioSoundByDefault, + ); + createEffect(() => { setSettings(reconcile(deriveGeneralSettings(props.initialStore))); }); @@ -285,6 +296,17 @@ function Inner(props: { } }; + const handleStudioSoundByDefaultChange = async (value: boolean) => { + const previousValue = studioSoundByDefault(); + setStudioSoundByDefault(value); + try { + await audioEnhancementStore.set({ enabledByDefault: value }); + } catch (error) { + setStudioSoundByDefault(previousValue); + console.error("Failed to update Studio Sound default", error); + } + }; + const ostype: OsType = type(); const excludedWindows = createMemo(() => settings.excludedWindows ?? []); const missingDefaultExclusions = createMemo(() => @@ -508,6 +530,12 @@ function Inner(props: { value={confirmBeforeRecordingWithoutMicrophone()} onChange={handleRecordingStartSafetyChange} /> + (name: string, defaults?: T) { export const audioEnhancementStore = declareStore<{ enabledByDefault: boolean; -}>("audio_enhancement", { enabledByDefault: false }); + isolation: VoiceIsolation; +}>("audio_enhancement", { enabledByDefault: true, isolation: "balanced" }); export const presetsStore = declareStore("presets"); const animatedGradientDefaults: AnimatedGradientLibrary = { From daa35e0263185d9e3d4a173a143ea1e37b18e82b Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:54 +0100 Subject: [PATCH 049/217] feat(desktop): preserve alpha through preview transports --- apps/desktop/src/utils/frame-worker.ts | 24 +++++--- apps/desktop/src/utils/socket.ts | 24 ++++++-- .../desktop/src/utils/webgpu-renderer.test.ts | 60 +++++++++++++++++++ apps/desktop/src/utils/webgpu-renderer.ts | 20 +++++-- 4 files changed, 110 insertions(+), 18 deletions(-) create mode 100644 apps/desktop/src/utils/webgpu-renderer.test.ts diff --git a/apps/desktop/src/utils/frame-worker.ts b/apps/desktop/src/utils/frame-worker.ts index 271822c323f..a1a20ef33c6 100644 --- a/apps/desktop/src/utils/frame-worker.ts +++ b/apps/desktop/src/utils/frame-worker.ts @@ -15,6 +15,7 @@ interface FrameMessage { interface InitCanvasMessage { type: "init-canvas"; + preserveAlpha?: boolean; canvas: OffscreenCanvas; } @@ -149,7 +150,7 @@ let webgpuRenderer: WebGPURenderer | null = null; let offscreenCanvas: OffscreenCanvas | null = null; let offscreenCtx: OffscreenCanvasRenderingContext2D | null = null; let lastImageData: ImageData | null = null; -let pendingCanvasInit: OffscreenCanvas | null = null; +let pendingCanvasInit: InitCanvasMessage | null = null; let strideBuffer: Uint8ClampedArray | null = null; let strideBufferSize = 0; @@ -877,7 +878,7 @@ function initWorker() { self.postMessage({ type: "ready" } satisfies ReadyMessage); if (pendingCanvasInit) { - initCanvas(pendingCanvasInit); + initCanvas(pendingCanvasInit.canvas, pendingCanvasInit.preserveAlpha); pendingCanvasInit = null; } @@ -888,7 +889,10 @@ function initWorker() { initWorker(); -async function initCanvas(canvas: OffscreenCanvas): Promise { +async function initCanvas( + canvas: OffscreenCanvas, + preserveAlpha = false, +): Promise { if (isInitializing) { return initializationPromise ?? Promise.resolve(); } @@ -901,7 +905,11 @@ async function initCanvas(canvas: OffscreenCanvas): Promise { if (webgpuSupported) { try { - webgpuRenderer = await initWebGPU(canvas); + webgpuRenderer = await initWebGPU( + canvas, + "high-performance", + preserveAlpha, + ); renderMode = "webgpu"; self.postMessage({ type: "renderer-mode", @@ -911,7 +919,7 @@ async function initCanvas(canvas: OffscreenCanvas): Promise { console.error("[frame-worker] WebGPU init failed:", e); renderMode = "canvas2d"; offscreenCtx = canvas.getContext("2d", { - alpha: false, + alpha: preserveAlpha, desynchronized: true, }); self.postMessage({ @@ -922,7 +930,7 @@ async function initCanvas(canvas: OffscreenCanvas): Promise { } else { renderMode = "canvas2d"; offscreenCtx = canvas.getContext("2d", { - alpha: false, + alpha: preserveAlpha, desynchronized: true, }); self.postMessage({ @@ -1171,10 +1179,10 @@ self.onmessage = async (e: MessageEvent) => { if (e.data.type === "init-canvas") { if (!workerReady) { - pendingCanvasInit = e.data.canvas; + pendingCanvasInit = e.data; return; } - await initCanvas(e.data.canvas); + await initCanvas(e.data.canvas, e.data.preserveAlpha); return; } diff --git a/apps/desktop/src/utils/socket.ts b/apps/desktop/src/utils/socket.ts index 5494eff2a35..6b6e10ea14f 100644 --- a/apps/desktop/src/utils/socket.ts +++ b/apps/desktop/src/utils/socket.ts @@ -219,6 +219,7 @@ export type CanvasControls = { }; export type ImageDataWSOptions = { + preserveAlpha?: boolean; powerPreference?: GPUPowerPreference; retainLastFrameOnDispose?: HTMLCanvasElement; }; @@ -829,7 +830,10 @@ export function createImageDataWS( initCanvas: (canvas: OffscreenCanvas) => { if (isCleanedUp) return; workerCanvasMode = true; - ensureWorker().postMessage({ type: "init-canvas", canvas }, [canvas]); + ensureWorker().postMessage( + { type: "init-canvas", canvas, preserveAlpha: options.preserveAlpha }, + [canvas], + ); }, resizeCanvas: (width: number, height: number) => { if (isCleanedUp) return; @@ -865,6 +869,7 @@ export function createImageDataWS( initWebGPU( directCanvas as unknown as OffscreenCanvas, options.powerPreference, + options.preserveAlpha, ) .then((renderer) => { if (isCleanedUp || !directCanvas) { @@ -892,7 +897,9 @@ export function createImageDataWS( mainThreadWebGPUInitializing = false; console.error("[Socket] Main thread WebGPU init failed:", e); directCtx = - directCanvas?.getContext("2d", { alpha: false }) ?? null; + directCanvas?.getContext("2d", { + alpha: options.preserveAlpha ?? false, + }) ?? null; if (pendingNv12Frame && directCanvas && directCtx) { renderPendingFrameCanvas2D(); } @@ -903,7 +910,10 @@ export function createImageDataWS( }); } else { mainThreadWebGPUInitializing = false; - directCtx = directCanvas?.getContext("2d", { alpha: false }) ?? null; + directCtx = + directCanvas?.getContext("2d", { + alpha: options.preserveAlpha ?? false, + }) ?? null; if (pendingNv12Frame && directCanvas && directCtx) { renderPendingFrameCanvas2D(); } @@ -975,7 +985,9 @@ export function createImageDataWS( if (canvas !== mirrorCanvas) { mirrorCanvas = canvas; - mirrorCtx = canvas.getContext("2d", { alpha: false }); + mirrorCtx = canvas.getContext("2d", { + alpha: options.preserveAlpha ?? false, + }); mirrorImageData = null; } if (!mirrorCtx) return false; @@ -1294,7 +1306,9 @@ export function createImageDataWS( ) as HTMLCanvasElement | null; if (domCanvas && domCanvas !== directCanvas) { directCanvas = domCanvas; - directCtx = domCanvas.getContext("2d", { alpha: false }); + directCtx = domCanvas.getContext("2d", { + alpha: options.preserveAlpha ?? false, + }); if (!directCtx) { console.error( "[Socket] Failed to get 2D context from DOM canvas", diff --git a/apps/desktop/src/utils/webgpu-renderer.test.ts b/apps/desktop/src/utils/webgpu-renderer.test.ts new file mode 100644 index 00000000000..0e2205293ab --- /dev/null +++ b/apps/desktop/src/utils/webgpu-renderer.test.ts @@ -0,0 +1,60 @@ +import { afterEach, describe, expect, it, vi } from "vitest"; +import { initWebGPU, renderFrameWebGPU } from "./webgpu-renderer"; + +afterEach(() => vi.unstubAllGlobals()); + +describe("camera preview transparency", () => { + it.each([false, true])( + "preserves the canvas alpha contract through resize (%s)", + async (preserveAlpha) => { + const texture = { createView: vi.fn(() => ({})), destroy: vi.fn() }; + const pass = { + setPipeline: vi.fn(), + setBindGroup: vi.fn(), + draw: vi.fn(), + end: vi.fn(), + }; + const device = { + lost: new Promise(() => {}), + createBindGroupLayout: vi.fn(() => ({})), + createPipelineLayout: vi.fn(() => ({})), + createShaderModule: vi.fn(() => ({})), + createRenderPipeline: vi.fn(() => ({})), + createSampler: vi.fn(() => ({})), + createTexture: vi.fn(() => texture), + createBindGroup: vi.fn(() => ({})), + createCommandEncoder: vi.fn(() => ({ + beginRenderPass: () => pass, + finish: () => ({}), + })), + queue: { writeTexture: vi.fn(), submit: vi.fn() }, + }; + vi.stubGlobal("GPUTextureUsage", { TEXTURE_BINDING: 4, COPY_DST: 2 }); + vi.stubGlobal("GPUShaderStage", { FRAGMENT: 2 }); + vi.stubGlobal("navigator", { + gpu: { + requestAdapter: async () => ({ requestDevice: async () => device }), + getPreferredCanvasFormat: () => "rgba8unorm", + }, + }); + const context = { + configure: vi.fn(), + getCurrentTexture: () => texture, + }; + const canvas = { + width: 1, + height: 1, + getContext: () => context, + } as unknown as OffscreenCanvas; + const renderer = await initWebGPU(canvas, "low-power", preserveAlpha); + renderFrameWebGPU(renderer, new Uint8ClampedArray(64 * 32 * 4), 64, 32); + expect(context.configure).toHaveBeenCalledTimes(2); + for (const [configuration] of context.configure.mock.calls) { + expect(configuration.alphaMode).toBe( + preserveAlpha ? "premultiplied" : "opaque", + ); + } + expect(pass.draw).toHaveBeenCalledTimes(1); + }, + ); +}); diff --git a/apps/desktop/src/utils/webgpu-renderer.ts b/apps/desktop/src/utils/webgpu-renderer.ts index 3167ddd2e1d..6b3d371e576 100644 --- a/apps/desktop/src/utils/webgpu-renderer.ts +++ b/apps/desktop/src/utils/webgpu-renderer.ts @@ -30,7 +30,7 @@ const FRAGMENT_SHADER = ` @fragment fn fs(@location(0) texCoord: vec2f) -> @location(0) vec4f { let sampled = textureSample(frameTexture, frameSampler, texCoord); - return vec4f(sampled.r, sampled.g, sampled.b, 1.0); + return vec4f(sampled.rgb * sampled.a, sampled.a); } `; @@ -78,6 +78,7 @@ fn fs(@location(0) texCoord: vec2f) -> @location(0) vec4f { `; export interface WebGPURenderer { + alphaMode: GPUCanvasAlphaMode; device: GPUDevice; context: GPUCanvasContext; pipeline: GPURenderPipeline; @@ -145,6 +146,7 @@ export async function isWebGPUSupported( export async function initWebGPU( canvas: OffscreenCanvas, powerPreference: GPUPowerPreference = "high-performance", + preserveAlpha = false, ): Promise { const adapter = await requestWebGPUAdapter(powerPreference); if (!adapter) { @@ -171,7 +173,7 @@ export async function initWebGPU( context.configure({ device, format, - alphaMode: "opaque", + alphaMode: preserveAlpha ? "premultiplied" : "opaque", }); const bindGroupLayout = device.createBindGroupLayout({ @@ -218,7 +220,14 @@ export async function initWebGPU( }); const vertexModule = device.createShaderModule({ code: VERTEX_SHADER }); - const fragmentModule = device.createShaderModule({ code: FRAGMENT_SHADER }); + const fragmentModule = device.createShaderModule({ + code: preserveAlpha + ? FRAGMENT_SHADER + : FRAGMENT_SHADER.replace( + "vec4f(sampled.rgb * sampled.a, sampled.a)", + "vec4f(sampled.rgb, 1.0)", + ), + }); const nv12FragmentModule = device.createShaderModule({ code: NV12_FRAGMENT_SHADER, }); @@ -282,6 +291,7 @@ export async function initWebGPU( }); return { + alphaMode: preserveAlpha ? "premultiplied" : "opaque", device, context, pipeline, @@ -326,7 +336,7 @@ export function renderFrameWebGPU( context.configure({ device, format, - alphaMode: "opaque", + alphaMode: renderer.alphaMode, }); resizeMs = performance.now() - start; } @@ -437,7 +447,7 @@ export function renderNv12FrameWebGPU( context.configure({ device, format, - alphaMode: "opaque", + alphaMode: renderer.alphaMode, }); resizeMs = performance.now() - start; } From d54e27a2400226e1ee7ca05b326c20f8c0bb6211 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:55 +0100 Subject: [PATCH 050/217] feat(desktop): support transparent camera cutout previews --- apps/desktop/src-tauri/src/camera.rs | 17 ++++-- apps/desktop/src-tauri/src/camera.wgsl | 2 +- apps/desktop/src-tauri/src/camera_legacy.rs | 57 ++++++++++++------- .../src-tauri/src/linux_instant_camera.rs | 4 +- apps/desktop/src/routes/camera.tsx | 11 +++- 5 files changed, 60 insertions(+), 31 deletions(-) diff --git a/apps/desktop/src-tauri/src/camera.rs b/apps/desktop/src-tauri/src/camera.rs index f505e86b555..350bce064a6 100644 --- a/apps/desktop/src-tauri/src/camera.rs +++ b/apps/desktop/src-tauri/src/camera.rs @@ -47,7 +47,7 @@ const CAMERA_PREVIEW_BLUR_MAX_TEXTURE_WIDTH: u32 = 640; const CAMERA_PREVIEW_BLUR_MAX_TEXTURE_HEIGHT: u32 = 360; const CAMERA_PREVIEW_TARGET_FRAME_INTERVAL: Duration = Duration::from_micros(16_666); const CAMERA_PREVIEW_FRAME_INTERVAL_SLACK: Duration = Duration::from_millis(1); -const CAMERA_PREVIEW_BLUR_INFERENCE_INTERVAL: Duration = Duration::from_millis(150); +const CAMERA_PREVIEW_BLUR_INFERENCE_INTERVAL: Duration = Duration::from_millis(33); // ── Low-spec preview profile ──────────────────────────────────────────────── // On low-RAM machines (e.g. an 8GB iMac) the full-quality preview is laggy, so @@ -1637,10 +1637,14 @@ impl Renderer { (clamped_size - MIN_CAMERA_SIZE) / (MAX_CAMERA_SIZE - MIN_CAMERA_SIZE); let state_uniforms = StateUniforms { - shape: match state.shape { - CameraPreviewShape::Round => 0.0, - CameraPreviewShape::Square => 1.0, - CameraPreviewShape::Full => 2.0, + shape: if state.background_blur == cap_project::BackgroundBlurMode::Remove { + 3.0 + } else { + match state.shape { + CameraPreviewShape::Round => 0.0, + CameraPreviewShape::Square => 1.0, + CameraPreviewShape::Full => 2.0, + } }, size: normalized_size, mirrored: if state.mirrored { 1.0 } else { 0.0 }, @@ -1875,6 +1879,9 @@ fn blur_mode_from_project( cap_project::BackgroundBlurMode::Off => None, cap_project::BackgroundBlurMode::Light => Some(cap_camera_effects::BlurMode::Light), cap_project::BackgroundBlurMode::Heavy => Some(cap_camera_effects::BlurMode::Heavy), + cap_project::BackgroundBlurMode::Remove => { + cfg!(target_os = "macos").then_some(cap_camera_effects::BlurMode::Remove) + } } } diff --git a/apps/desktop/src-tauri/src/camera.wgsl b/apps/desktop/src-tauri/src/camera.wgsl index 332bf5b7223..7d5354bc9cf 100644 --- a/apps/desktop/src-tauri/src/camera.wgsl +++ b/apps/desktop/src-tauri/src/camera.wgsl @@ -174,6 +174,6 @@ fn fs_main(in: VertexOutput) -> @location(0) vec4 { let camera_color = textureSample(t_camera, s_camera, final_uv); - let final_alpha = select(1.0, mask, mask < 0.95); + let final_alpha = camera_color.a * select(1.0, mask, mask < 0.95); return vec4(camera_color.rgb, final_alpha); } diff --git a/apps/desktop/src-tauri/src/camera_legacy.rs b/apps/desktop/src-tauri/src/camera_legacy.rs index b929d9a8e75..b428e4d9adc 100644 --- a/apps/desktop/src-tauri/src/camera_legacy.rs +++ b/apps/desktop/src-tauri/src/camera_legacy.rs @@ -129,7 +129,8 @@ const WS_PREVIEW_BLUR_MAX_WIDTH: u32 = 640; const WS_PREVIEW_BLUR_MAX_HEIGHT: u32 = 360; const WS_PREVIEW_TARGET_FRAME_INTERVAL: Duration = Duration::from_micros(16_666); const WS_PREVIEW_FRAME_INTERVAL_SLACK: Duration = Duration::from_millis(1); -const WS_BLUR_INFERENCE_INTERVAL: Duration = Duration::from_millis(150); +const WS_BLUR_INFERENCE_INTERVAL: Duration = + Duration::from_millis(if cfg!(target_os = "macos") { 33 } else { 150 }); // Low-spec preview profile (mirrors the native path in camera.rs). Only used // when `is_low_spec_preview()` is true (machines <= 8GB RAM detected at @@ -439,6 +440,7 @@ pub async fn create_camera_preview_ws( cap_camera_effects::BlurMode::Light } cap_project::BackgroundBlurMode::Heavy => cap_camera_effects::BlurMode::Heavy, + cap_project::BackgroundBlurMode::Remove => cap_camera_effects::BlurMode::Remove, }; let (mut target_width, mut target_height) = scaled_preview_dimensions(frame.width(), frame.height(), &state); @@ -559,6 +561,11 @@ pub async fn create_camera_preview_ws( } } if ws_active { + if blur_mode == cap_project::BackgroundBlurMode::Remove + && matches!(blurred, Ok(None)) + { + continue; + } let (data, stride) = blurred .ok() .flatten() @@ -610,6 +617,7 @@ struct WsBlurResources { source_texture: Option<(u32, u32, wgpu::Texture)>, readbacks: Option<(u32, u32, [WsReadback; 2])>, current_idx: usize, + mode: Option, } impl WsBlurState { @@ -669,6 +677,12 @@ impl WsBlurState { .as_mut() .ok_or("Requested camera blur initialization failed")?; + if res.mode != Some(mode) { + res.readbacks = None; + res.current_idx = 0; + res.mode = Some(mode); + } + #[cfg(target_os = "linux")] if receipt.as_ref().is_some_and(|receipt| matches!(receipt.timestamp, cap_timestamp::Timestamp::Instant(captured) if captured.elapsed() > Duration::from_secs(1))) { @@ -699,26 +713,6 @@ impl WsBlurState { } }; - res.queue.write_texture( - wgpu::TexelCopyTextureInfo { - texture: src, - mip_level: 0, - origin: wgpu::Origin3d::ZERO, - aspect: wgpu::TextureAspect::All, - }, - rgba_data, - wgpu::TexelCopyBufferLayout { - offset: 0, - bytes_per_row: Some(stride), - rows_per_image: Some(height), - }, - wgpu::Extent3d { - width, - height, - depth_or_array_layers: 1, - }, - ); - let bytes_per_row_aligned = (width * 4 + 255) & !255; let buf_size = (bytes_per_row_aligned * height) as u64; @@ -793,6 +787,26 @@ impl WsBlurState { }; if let Some(idx) = issue_idx { + res.queue.write_texture( + wgpu::TexelCopyTextureInfo { + texture: src, + mip_level: 0, + origin: wgpu::Origin3d::ZERO, + aspect: wgpu::TextureAspect::All, + }, + rgba_data, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(stride), + rows_per_image: Some(height), + }, + wgpu::Extent3d { + width, + height, + depth_or_array_layers: 1, + }, + ); + let output = res.processor.process(&res.device, &res.queue, src, mode); let mut encoder = res @@ -940,6 +954,7 @@ fn init_headless_blur() -> Result { source_texture: None, readbacks: None, current_idx: 0, + mode: None, }) } diff --git a/apps/desktop/src-tauri/src/linux_instant_camera.rs b/apps/desktop/src-tauri/src/linux_instant_camera.rs index 6bb6fb93a23..56d0aaa7a4a 100644 --- a/apps/desktop/src-tauri/src/linux_instant_camera.rs +++ b/apps/desktop/src-tauri/src/linux_instant_camera.rs @@ -342,7 +342,9 @@ fn processing( LinuxCameraProcessing { mirrored: state.mirrored, blur: match state.background_blur { - cap_project::BackgroundBlurMode::Off => LinuxCameraBlur::Off, + cap_project::BackgroundBlurMode::Off | cap_project::BackgroundBlurMode::Remove => { + LinuxCameraBlur::Off + } cap_project::BackgroundBlurMode::Light => LinuxCameraBlur::Light, cap_project::BackgroundBlurMode::Heavy => LinuxCameraBlur::Heavy, }, diff --git a/apps/desktop/src/routes/camera.tsx b/apps/desktop/src/routes/camera.tsx index 61905af6789..715652f69e0 100644 --- a/apps/desktop/src/routes/camera.tsx +++ b/apps/desktop/src/routes/camera.tsx @@ -597,7 +597,7 @@ function LegacyCameraPreviewPage(props: { if (canvasControls === controls) updateFrameState(frame); }, () => commands.refreshCameraFeed().catch(() => {}), - { powerPreference: "low-power" }, + { powerPreference: "low-power", preserveAlpha: type() === "macos" }, ); canvasControls = controls; initCanvasControls(); @@ -999,8 +999,13 @@ function LegacyCameraPreviewPage(props: { - - - {(pos) => ( diff --git a/apps/desktop/src/routes/editor/Editor.tsx b/apps/desktop/src/routes/editor/Editor.tsx index b9ea01c1423..bfbae6605d5 100644 --- a/apps/desktop/src/routes/editor/Editor.tsx +++ b/apps/desktop/src/routes/editor/Editor.tsx @@ -976,7 +976,6 @@ function Inner(props: { diff --git a/apps/desktop/src/routes/target-select-overlay.tsx b/apps/desktop/src/routes/target-select-overlay.tsx index 42c116b9042..bf7816745e6 100644 --- a/apps/desktop/src/routes/target-select-overlay.tsx +++ b/apps/desktop/src/routes/target-select-overlay.tsx @@ -17,7 +17,7 @@ import { MenuItem, PredefinedMenuItem, } from "@tauri-apps/api/menu"; -import { WebviewWindow } from "@tauri-apps/api/webviewWindow"; +import type { WebviewWindow } from "@tauri-apps/api/webviewWindow"; import { type as ostype } from "@tauri-apps/plugin-os"; import { createEffect, @@ -198,6 +198,7 @@ function Inner() { displayId: DisplayId; isHoveredDisplay: string; targetMode: "display" | "window" | "area" | "camera"; + overlayInstance: string; }>(); const [options, setOptions] = useOptions(); const [areaSelectionPreferences, setAreaSelectionPreferences] = makePersisted( @@ -214,6 +215,12 @@ function Inner() { if (params.targetMode) { setOptions("targetMode", params.targetMode); } + const instance = Number(params.overlayInstance); + if (Number.isSafeInteger(instance) && instance > 0) { + void commands.targetSelectOverlayReady(instance).catch((error) => { + console.error("Failed to prepare target picker", error); + }); + } }); const [toggleModeSelect, setToggleModeSelect] = createSignal(false); @@ -345,12 +352,6 @@ function Inner() { } }); - const unsubOnEscapePress = events.onEscapePress.listen(() => { - setOptions({ targetMode: null, targetModeDismissal: "cancelled" }); - commands.closeTargetSelectOverlays(); - }); - onCleanup(() => unsubOnEscapePress.then((f) => f())); - // Dismiss the picker because a recording is starting. The dismissal reason // rides along with `targetMode: null` so the main window never has to guess // (from possibly-stale query state) whether it may reveal itself again. @@ -358,28 +359,7 @@ function Inner() { if (options.mode === "screenshot") return; const targetModeDismissal = options.mode === "instant" ? "recordingInstant" : "recordingStudio"; - if (options.targetModeSource === "editor") { - setOptions({ - targetMode: null, - targetModeSource: "editorRecording", - targetModeDismissal, - }); - } else { - setOptions({ targetMode: null, targetModeDismissal }); - } - // Hide rather than close: startRecording is invoked from THIS webview right - // after dismissal, and closing destroys the webview before the invoke is - // dispatched — the recording then silently never starts. The backend closes - // these windows itself once the recording is underway, and the start handler - // closes them if the command fails. - void WebviewWindow.getAll().then((all) => { - for (const win of all) { - if (win.label.startsWith("target-select-overlay-")) { - void win.setIgnoreCursorEvents(true); - void win.hide(); - } - } - }); + setOptions({ targetMode: null, targetModeDismissal }); }; // This prevents browser keyboard shortcuts from firing. @@ -703,18 +683,10 @@ function Inner() { // so the screenshot silently never happens. The start // handler hides these windows and closes them once the // capture is done. - if (options.targetModeSource === "editor") { - setOptions({ - targetMode: null, - targetModeSource: "editorRecording", - targetModeDismissal: "screenshot", - }); - } else { - setOptions({ - targetMode: null, - targetModeDismissal: "screenshot", - }); - } + setOptions({ + targetMode: null, + targetModeDismissal: "screenshot", + }); } else { dismissPickerForRecordingStart(); } @@ -1326,13 +1298,7 @@ function Inner() { ); try { - const allWindows = await WebviewWindow.getAll(); - for (const win of allWindows) { - if (win.label.startsWith("target-select-overlay-")) { - await win.setIgnoreCursorEvents(true); - await win.hide(); - } - } + await commands.suspendTargetSelectOverlays(); await new Promise((resolve) => setTimeout(resolve, 50)); const path = await commands.takeScreenshot(target); @@ -1918,6 +1884,7 @@ function RecordingControls(props: { createSignal(false); const [confirmingWithoutMicrophone, setConfirmingWithoutMicrophone] = createSignal(false); + const [dismissingPicker, setDismissingPicker] = createSignal(false); let microphoneConfirmationRevision = 0; let controlsDisposed = false; onCleanup(() => { @@ -2011,6 +1978,7 @@ function RecordingControls(props: { }); const startLoading = () => + dismissingPicker() || devices.isPending || recordingStartSafety.isPending || restoringInputs() || @@ -2068,18 +2036,20 @@ function RecordingControls(props: { ); } + setDismissingPicker(true); + try { + await commands.suspendTargetSelectOverlays(); + } catch (error) { + setDismissingPicker(false); + toast.error("Could not dismiss the target picker. Please try again."); + console.error("Failed to suspend target select overlays", error); + return; + } + if (controlsDisposed) return; props.onRecordingStart?.(); if (rawOptions.mode === "screenshot") { try { - const allWindows = await WebviewWindow.getAll(); - for (const win of allWindows) { - if (win.label.startsWith("target-select-overlay-")) { - await win.setIgnoreCursorEvents(true); - await win.hide(); - } - } - const path = await commands.takeScreenshot(target); const shouldOpenEditor = await commands.automationShouldOpenScreenshotEditor(target); @@ -2270,7 +2240,6 @@ function RecordingControls(props: { targetMode: null, targetModeDismissal: "cancelled", }); - commands.setEditorRecordingTarget(null); commands.closeTargetSelectOverlays(); } }} diff --git a/apps/desktop/src/utils/queries.ts b/apps/desktop/src/utils/queries.ts index 50a37d5665f..70fa5ce0e58 100644 --- a/apps/desktop/src/utils/queries.ts +++ b/apps/desktop/src/utils/queries.ts @@ -141,6 +141,12 @@ export function createPermissionsQuery() { })); } +export const getEditorRecordingTarget = queryOptions({ + queryKey: ["editorRecordingTarget"] as const, + queryFn: () => commands.getEditorRecordingTarget(), + staleTime: Number.POSITIVE_INFINITY, +}); + export const isSystemAudioSupported = queryOptions({ queryKey: ["systemAudioSupported"] as const, queryFn: () => commands.isSystemAudioCaptureSupported(), @@ -149,7 +155,7 @@ export const isSystemAudioSupported = queryOptions({ type CameraCaptureTarget = ScreenCaptureTarget | { variant: "cameraOnly" }; type ExtendedRecordingTargetMode = RecordingTargetMode | "camera" | null; -type RecordingTargetModeSource = "main" | "editor" | "editorRecording" | null; +type RecordingTargetModeSource = "main" | null; /** * Why the target picker was last dismissed. Written in the same `setOptions` * call that sets `targetMode: null`, so it reaches other webviews atomically diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index 974a6ac47c5..8f5ca056d66 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -429,8 +429,14 @@ async getEditorMeta() : Promise { async getRecordingMetaByPath(projectPath: string) : Promise { return await TAURI_INVOKE("get_recording_meta_by_path", { projectPath }); }, -async setEditorRecordingTarget(projectPath: string | null) : Promise { - return await TAURI_INVOKE("set_editor_recording_target", { projectPath }); +async openEditorRecordingMain(projectPath: string) : Promise { + return await TAURI_INVOKE("open_editor_recording_main", { projectPath }); +}, +async cancelEditorRecordingFlow() : Promise { + return await TAURI_INVOKE("cancel_editor_recording_flow"); +}, +async getEditorRecordingTarget() : Promise { + return await TAURI_INVOKE("get_editor_recording_target"); }, async deleteRecordingDirectory(path: string) : Promise { return await TAURI_INVOKE("delete_recording_directory", { path }); @@ -589,6 +595,7 @@ devicesUpdated: DevicesUpdated, diagnosticProgress: DiagnosticProgress, downloadProgress: DownloadProgress, editorRecordingAdded: EditorRecordingAdded, +editorRecordingFlowChanged: EditorRecordingFlowChanged, editorStateChanged: EditorStateChanged, frameLayoutEvent: FrameLayoutEvent, newNotification: NewNotification, @@ -623,6 +630,7 @@ devicesUpdated: "devices-updated", diagnosticProgress: "diagnostic-progress", downloadProgress: "download-progress", editorRecordingAdded: "editor-recording-added", +editorRecordingFlowChanged: "editor-recording-flow-changed", editorStateChanged: "editor-state-changed", frameLayoutEvent: "frame-layout-event", newNotification: "new-notification", @@ -1014,6 +1022,8 @@ x: number; width: number; height: number } export type DownloadProgress = { progress: number; message: string } export type EditorPreviewQuality = "quarter" | "half" | "full" export type EditorRecordingAdded = { editor_path: string; recording_path: string } +export type EditorRecordingFlowChanged = { target: EditorRecordingFlowInfo | null } +export type EditorRecordingFlowInfo = { projectPath: string; projectName: string } export type EditorStateChanged = { playhead_position: number } export type ExportCompression = "Maximum" | "Social" | "Web" | "Potato" export type ExportDestination = "projectFolder" | { customPath: { dir: string } } From 4d9d8653813f16594ffe18b2254e358286a25f18 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:00 +0100 Subject: [PATCH 065/217] fix(desktop): supervise export resource usage --- apps/desktop/src-tauri/src/export.rs | 140 +++++++++++++++++++++++++-- 1 file changed, 134 insertions(+), 6 deletions(-) diff --git a/apps/desktop/src-tauri/src/export.rs b/apps/desktop/src-tauri/src/export.rs index 440cbdec81f..2c439f3395f 100644 --- a/apps/desktop/src-tauri/src/export.rs +++ b/apps/desktop/src-tauri/src/export.rs @@ -6,6 +6,7 @@ use cap_rendering::{ FrameRenderer, ProjectRecordingsMeta, ProjectUniforms, RenderSegment, RenderVideoConstants, RendererLayers, TransitionRenderInput, ZoomTransformTimeline, }; +use cap_utils::export_resources::{DiskBudget, ExportResources, estimated_working_bytes}; use futures::FutureExt; use image::codecs::jpeg::JpegEncoder; use serde::{Deserialize, Serialize}; @@ -22,10 +23,8 @@ use std::{ atomic::{AtomicBool, AtomicUsize, Ordering}, }, }; -#[cfg(not(target_os = "linux"))] use tauri::Manager; -#[cfg(not(any(target_os = "linux", target_os = "macos")))] -use tauri_plugin_dialog::DialogExt; +use tauri_plugin_dialog::{DialogExt, MessageDialogButtons, MessageDialogKind}; use tokio::io::AsyncBufReadExt; use tokio_util::sync::CancellationToken; use tracing::{error, info, instrument, warn}; @@ -1161,15 +1160,26 @@ pub async fn export_video( editor: OptionalWindowEditorInstance, ) -> Result { let window_label = window.label().to_string(); + let app = window.app_handle().clone(); Box::pin(run_export_command(move || async move { let cancellation_guard = ExportCancellationGuard::new(next_export_command_id("export"), Some(window_label)); + let resources = export_resource_preflight( + &app, + &project_path, + &settings, + &editor, + None, + &cancellation_guard.token(), + ) + .await?; export_video_inner( project_path, settings, editor, ExportProgress(progress), cancellation_guard.token(), + resources, ) .await })) @@ -1188,14 +1198,25 @@ pub async fn export_video_with_id( editor: OptionalWindowEditorInstance, ) -> Result { let window_label = window.label().to_string(); + let app = window.app_handle().clone(); Box::pin(run_export_command(move || async move { let cancellation_guard = ExportCancellationGuard::new(export_id, Some(window_label)); + let resources = export_resource_preflight( + &app, + &project_path, + &settings, + &editor, + None, + &cancellation_guard.token(), + ) + .await?; export_video_inner( project_path, settings, editor, ExportProgress(progress), cancellation_guard.token(), + resources, ) .await })) @@ -1214,7 +1235,6 @@ pub async fn export_video_to_file( file_type: String, editor: OptionalWindowEditorInstance, ) -> Result { - #[cfg(not(target_os = "linux"))] let app = window.app_handle().clone(); let window_label = window.label().to_string(); Box::pin(run_export_command(move || async move { @@ -1223,6 +1243,7 @@ pub async fn export_video_to_file( Some(window_label), ); export_video_to_file_inner( + app.clone(), project_path, settings, editor, @@ -1245,6 +1266,7 @@ pub async fn export_video_to_file( } async fn export_video_to_file_inner( + app: tauri::AppHandle, project_path: PathBuf, settings: ExportSettings, editor: OptionalWindowEditorInstance, @@ -1257,8 +1279,29 @@ async fn export_video_to_file_inner( return Err("Save dialog cancelled".to_string()); }; - let output_path = - export_video_inner(project_path, settings, editor, progress, cancel_token).await?; + let destination = match &save_path { + ExportSaveDestination::Selected(path) => Some(path.as_path()), + #[cfg(any(target_os = "macos", test))] + ExportSaveDestination::Default => None, + }; + let resources = export_resource_preflight( + &app, + &project_path, + &settings, + &editor, + destination, + &cancel_token, + ) + .await?; + let output_path = export_video_inner( + project_path, + settings, + editor, + progress, + cancel_token, + resources, + ) + .await?; match save_path { ExportSaveDestination::Selected(path) => { copy_export_to_path(&output_path, &path).await?; @@ -1269,12 +1312,97 @@ async fn export_video_to_file_inner( } } +async fn export_resource_preflight( + app: &tauri::AppHandle, + project_path: &Path, + settings: &ExportSettings, + editor: &OptionalWindowEditorInstance, + destination: Option<&Path>, + cancel: &CancellationToken, +) -> Result { + if cancel.is_cancelled() { + return Err("Export cancelled".into()); + } + let estimate = editor + .as_ref() + .map(|editor| { + let duration = export_estimate_duration( + &editor.project_config.1.borrow(), + editor.recordings.duration(), + ); + estimated_working_bytes( + export_estimates_for_duration(settings, duration).estimated_size_mb, + ) + }) + .unwrap_or(0); + let mut disks = vec![DiskBudget { + path: project_path.to_path_buf(), + description: "your recording drive", + estimated_bytes: estimate, + }]; + if let Some(path) = destination { + disks.push(DiskBudget { + path: path.to_path_buf(), + description: "your export drive", + estimated_bytes: estimate, + }); + } + let resources = ExportResources::new(disks); + if let Some(message) = resources.check().await? { + if cancel.is_cancelled() { + return Err("Export cancelled".into()); + } + let (sender, receiver) = tokio::sync::oneshot::channel(); + app.dialog() + .message(message) + .title("Check export resources") + .kind(MessageDialogKind::Warning) + .buttons(MessageDialogButtons::OkCancelCustom( + "Proceed anyway".into(), + "Go back".into(), + )) + .show(move |confirmed| { + let _ = sender.send(confirmed); + }); + let confirmed = tokio::select! { + biased; + _ = cancel.cancelled() => false, + confirmed = receiver => confirmed.unwrap_or(false), + }; + if !confirmed { + return Err("Export cancelled".into()); + } + let _ = resources.check().await?; + } + if cancel.is_cancelled() { + return Err("Export cancelled".into()); + } + Ok(resources) +} + async fn export_video_inner( project_path: PathBuf, settings: ExportSettings, editor: OptionalWindowEditorInstance, progress: ExportProgress, cancel_token: CancellationToken, + resources: ExportResources, +) -> Result { + let stopped = cancel_token.child_token(); + resources + .supervise( + export_video_attempts(project_path, settings, editor, progress, stopped.clone()), + || stopped.cancel(), + ) + .await +} + +async fn export_video_attempts( + project_path: PathBuf, + settings: ExportSettings, + editor: OptionalWindowEditorInstance, + progress: ExportProgress, + cancel_token: CancellationToken, ) -> Result { let _session_guard = ExportSessionGuard::new(); let force_ffmpeg = should_force_ffmpeg_export(&project_path, &settings); From d01a9740cdeb28265386742fe561f6ac818aa6a9 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:01 +0100 Subject: [PATCH 066/217] feat(desktop): expose cancellable measured export estimates --- apps/desktop/src-tauri/src/export.rs | 75 ++++++++++++++++++++++++---- apps/desktop/src-tauri/src/lib.rs | 1 + apps/desktop/src/utils/tauri.ts | 9 ++-- 3 files changed, 71 insertions(+), 14 deletions(-) diff --git a/apps/desktop/src-tauri/src/export.rs b/apps/desktop/src-tauri/src/export.rs index 2c439f3395f..f5b87f89cb5 100644 --- a/apps/desktop/src-tauri/src/export.rs +++ b/apps/desktop/src-tauri/src/export.rs @@ -1728,20 +1728,73 @@ pub struct ExportEstimates { pub estimated_size_mb: f64, } +static EXPORT_ESTIMATE_CANCELLATIONS: LazyLock>>> = + LazyLock::new(Mutex::default); + #[tauri::command] #[specta::specta] -#[instrument] +pub fn cancel_export_estimates(editor: WindowEditorInstance) { + if let Ok(cancellations) = EXPORT_ESTIMATE_CANCELLATIONS.lock() + && let Some(cancel) = cancellations.get(&editor.project_path) + { + cancel.store(true, Ordering::Release); + } +} + +#[tauri::command] +#[specta::specta] +#[instrument(skip(editor, on_estimate))] pub async fn get_export_estimates( path: PathBuf, settings: ExportSettings, -) -> Result { - let metadata = get_video_metadata(path.clone()).await?; - - let meta = RecordingMeta::load_for_project(&path).map_err(|e| e.to_string())?; - let project_config = meta.project_config(); - let duration_seconds = export_estimate_duration(&project_config, metadata.duration); + on_estimate: tauri::ipc::Channel, + editor: WindowEditorInstance, +) -> Result { + if path != editor.project_path { + return Err("Export estimate does not match the open project".into()); + } + let cancel = Arc::new(AtomicBool::new(false)); + if let Some(previous) = EXPORT_ESTIMATE_CANCELLATIONS + .lock() + .map_err(|error| error.to_string())? + .insert(path.clone(), cancel.clone()) + { + previous.store(true, Ordering::Release); + } + let result = async { + let project = load_export_preview_config(path.clone(), settings.cursor_only()).await?; + let settings = match settings { + ExportSettings::Mp4(settings) => cap_export::settings::ExportSettings::Mp4(settings), + ExportSettings::Gif(settings) => cap_export::settings::ExportSettings::Gif(settings), + ExportSettings::Mov(settings) => cap_export::settings::ExportSettings::Mov(settings), + }; + cap_export::estimates::estimate_export( + (**editor).clone(), + project, + settings, + cancel.clone(), + move |estimate| { + let _ = on_estimate.send(estimate); + }, + ) + .await + } + .await; + if let Ok(mut cancellations) = EXPORT_ESTIMATE_CANCELLATIONS.lock() + && cancellations + .get(&path) + .is_some_and(|current| Arc::ptr_eq(current, &cancel)) + { + let _ = cancellations.remove(&path); + } + result +} - let (resolution, fps) = match &settings { +fn export_estimates_for_duration( + settings: &ExportSettings, + duration_seconds: f64, +) -> ExportEstimates { + let (resolution, fps) = match settings { ExportSettings::Mp4(s) => (s.resolution_base, s.fps), ExportSettings::Gif(s) => (s.resolution_base, s.fps), ExportSettings::Mov(s) => (s.resolution_base, s.fps), @@ -1754,7 +1807,7 @@ pub async fn get_export_estimates( let (estimated_size_mb, estimated_time_seconds) = match &settings { ExportSettings::Mp4(mp4_settings) => { - let bits_per_pixel = mp4_settings.compression.bits_per_pixel() as f64; + let bits_per_pixel = mp4_settings.effective_bpp() as f64; let effective_fps = ((fps_f64 - 30.0).max(0.0) * 0.6) + fps_f64.min(30.0); let video_bitrate = total_pixels * bits_per_pixel * effective_fps; let audio_bitrate = 192_000.0; @@ -1797,11 +1850,11 @@ pub async fn get_export_estimates( } }; - Ok(ExportEstimates { + ExportEstimates { duration_seconds, estimated_time_seconds, estimated_size_mb, - }) + } } #[derive(Debug, Serialize, Deserialize, Type)] diff --git a/apps/desktop/src-tauri/src/lib.rs b/apps/desktop/src-tauri/src/lib.rs index 8564e8dfca2..8d659964616 100644 --- a/apps/desktop/src-tauri/src/lib.rs +++ b/apps/desktop/src-tauri/src/lib.rs @@ -6794,6 +6794,7 @@ fn specta_builder() -> tauri_specta::Builder { export::export_video_with_id, export::export_video_to_file, export::get_export_estimates, + export::cancel_export_estimates, export::generate_export_preview, export::generate_export_preview_fast, import::start_video_import, diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index 8f5ca056d66..6f27d9856cb 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -175,8 +175,11 @@ async exportVideoWithId(projectPath: string, progress: TAURI_CHANNEL, settings: ExportSettings, fileName: string, fileType: string) : Promise { return await TAURI_INVOKE("export_video_to_file", { projectPath, progress, settings, fileName, fileType }); }, -async getExportEstimates(path: string, settings: ExportSettings) : Promise { - return await TAURI_INVOKE("get_export_estimates", { path, settings }); +async getExportEstimates(path: string, settings: ExportSettings, onEstimate: TAURI_CHANNEL) : Promise { + return await TAURI_INVOKE("get_export_estimates", { path, settings, onEstimate }); +}, +async cancelExportEstimates() : Promise { + await TAURI_INVOKE("cancel_export_estimates"); }, async generateExportPreview(projectPath: string, frameTime: number, settings: ExportPreviewSettings) : Promise { return await TAURI_INVOKE("generate_export_preview", { projectPath, frameTime, settings }); @@ -1027,7 +1030,7 @@ export type EditorRecordingFlowInfo = { projectPath: string; projectName: string export type EditorStateChanged = { playhead_position: number } export type ExportCompression = "Maximum" | "Social" | "Web" | "Potato" export type ExportDestination = "projectFolder" | { customPath: { dir: string } } -export type ExportEstimates = { duration_seconds: number; estimated_time_seconds: number; estimated_size_mb: number } +export type ExportEstimates = { duration_seconds: number; estimated_time_seconds: number; estimated_size_mb: number; time_range_seconds: [number, number]; size_range_mb: [number, number] } export type ExportFormat = "mp4" | "gif" | "mov" export type ExportPreviewResult = { jpeg_base64: string; estimated_size_mb: number; actual_width: number; actual_height: number; frame_render_time_ms: number; total_frames: number } export type ExportPreviewSettings = { fps: number; resolution_base: XY; compression_bpp: number; cursor_only?: boolean } From 2f2c961f6db5e00e022b96ebcceb9b8d2b90a87b Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:01 +0100 Subject: [PATCH 067/217] feat(desktop): format measured export estimate ranges --- .../routes/editor/export-estimates.test.ts | 21 +++++++++++++++ .../src/routes/editor/export-estimates.ts | 26 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 apps/desktop/src/routes/editor/export-estimates.test.ts create mode 100644 apps/desktop/src/routes/editor/export-estimates.ts diff --git a/apps/desktop/src/routes/editor/export-estimates.test.ts b/apps/desktop/src/routes/editor/export-estimates.test.ts new file mode 100644 index 00000000000..cce9b0b38e3 --- /dev/null +++ b/apps/desktop/src/routes/editor/export-estimates.test.ts @@ -0,0 +1,21 @@ +import { describe, expect, it } from "vitest"; +import { formatEstimatedSize, formatEstimatedTime } from "./export-estimates"; + +describe("export estimate labels", () => { + it("keeps measured variation visible", () => { + expect(formatEstimatedSize([18.7, 31.5])).toBe("~19–32 MB"); + expect(formatEstimatedTime([17.6, 18.9])).toBe("~18–19 s"); + }); + + it("uses useful precision across unit boundaries", () => { + expect(formatEstimatedSize([900, 1200])).toBe("~0.9–1.2 GB"); + expect(formatEstimatedTime([59, 90])).toBe("~1–1.5 min"); + expect(formatEstimatedTime([3600, 5400])).toBe("~1–1.5 hr"); + }); + + it("avoids false zero or duplicated ranges for tiny exports", () => { + expect(formatEstimatedTime([0.1, 0.9])).toBe("< 1s"); + expect(formatEstimatedSize([0.1, 0.9])).toBe("< 1 MB"); + expect(formatEstimatedTime([2.1, 2.3])).toBe("~2 s"); + }); +}); diff --git a/apps/desktop/src/routes/editor/export-estimates.ts b/apps/desktop/src/routes/editor/export-estimates.ts new file mode 100644 index 00000000000..af80285359f --- /dev/null +++ b/apps/desktop/src/routes/editor/export-estimates.ts @@ -0,0 +1,26 @@ +function formatRange(range: number[], scale: number, unit: string): string { + const precision = scale === 1 ? 1 : 10; + const lower = Math.max( + 1 / precision, + Math.round((range[0] / scale) * precision) / precision, + ); + const upper = Math.max( + lower, + Math.round((range[1] / scale) * precision) / precision, + ); + return lower === upper ? `~${lower} ${unit}` : `~${lower}–${upper} ${unit}`; +} + +export function formatEstimatedSize(range: number[]): string { + if (range[1] < 1) return "< 1 MB"; + return range[1] >= 1024 + ? formatRange(range, 1024, "GB") + : formatRange(range, 1, "MB"); +} + +export function formatEstimatedTime(range: number[]): string { + if (range[1] < 1) return "< 1s"; + if (range[1] >= 3600) return formatRange(range, 3600, "hr"); + if (range[1] >= 60) return formatRange(range, 60, "min"); + return formatRange(range, 1, "s"); +} From 9444e0aaa9b516dcdc77a2cbe76802d6b82334b6 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:01 +0100 Subject: [PATCH 068/217] feat(desktop): refresh export settings and estimate presentation --- apps/desktop/src/routes/editor/ExportPage.tsx | 1361 +++++++++-------- 1 file changed, 726 insertions(+), 635 deletions(-) diff --git a/apps/desktop/src/routes/editor/ExportPage.tsx b/apps/desktop/src/routes/editor/ExportPage.tsx index 5ee82e2bf3f..73fcf5a5e60 100644 --- a/apps/desktop/src/routes/editor/ExportPage.tsx +++ b/apps/desktop/src/routes/editor/ExportPage.tsx @@ -1,4 +1,5 @@ import { Button } from "@cap/ui-solid"; +import { createElementBounds } from "@solid-primitives/bounds"; import { debounce } from "@solid-primitives/scheduled"; import { makePersisted } from "@solid-primitives/storage"; import { createMutation } from "@tanstack/solid-query"; @@ -12,17 +13,21 @@ import { createEffect, createSignal, For, + type JSX, Match, mergeProps, on, onCleanup, + type ParentProps, Show, Suspense, Switch, + type ValidComponent, } from "solid-js"; import { createStore, produce, reconcile } from "solid-js/store"; +import { Dynamic } from "solid-js/web"; import toast from "solid-toast"; -import { SignInButton } from "~/components/SignInButton"; +import { Toggle } from "~/components/Toggle"; import Tooltip from "~/components/Tooltip"; import CaptionControlsWindows11 from "~/components/titlebar/controls/CaptionControlsWindows11"; import { authStore } from "~/store"; @@ -41,12 +46,18 @@ import { type FramesRendered, type UploadProgress, } from "~/utils/tauri"; +import IconLucideGem from "~icons/lucide/gem"; +import IconLucideSlidersHorizontal from "~icons/lucide/sliders-horizontal"; import { type RenderState, useEditorContext } from "./context"; +import { formatEstimatedSize, formatEstimatedTime } from "./export-estimates"; import { RESOLUTION_OPTIONS } from "./Header"; -import { Dialog, Field } from "./ui"; +import { Dialog } from "./ui"; class SilentError extends Error {} +const EXPORT_CTA_CLASS = + "flex w-full h-10 items-center justify-center gap-2 rounded-[10px] text-[13px] font-medium transition-colors outline-hidden focus-visible:ring-2 focus-visible:ring-ed-accent/40 disabled:opacity-50 disabled:cursor-not-allowed"; + export const COMPRESSION_OPTIONS: Array<{ label: string; value: ExportCompression; @@ -177,6 +188,7 @@ export function ExportPage() { const [reuploading, setReuploading] = createSignal(false); const auth = authStore.createQuery(); + const signIn = createSignInMutation(); const organizationSelection = createSelectedOrganization(); const organisations = organizationSelection.organizations; @@ -296,25 +308,28 @@ export function ExportPage() { const [previewLoading, setPreviewLoading] = createSignal(false); const [previewUnavailable, setPreviewUnavailable] = createSignal(false); const [previewError, setPreviewError] = createSignal(null); - const [renderEstimate, setRenderEstimate] = createSignal<{ - frameRenderTimeMs: number; - totalFrames: number; - estimatedSizeMb: number; - } | null>(null); - - type EstimateCacheKey = string; - const estimateCache = new Map< - EstimateCacheKey, - { frameRenderTimeMs: number; totalFrames: number; estimatedSizeMb: number } - >(); - - const getEstimateCacheKey = ( - fps: number, - width: number, - height: number, - bpp: number, - mode: "video" | "gif" | "cursor", - ): EstimateCacheKey => `${fps}-${width}-${height}-${bpp}-${mode}`; + type MeasuredEstimate = Awaited< + ReturnType + >; + const [renderEstimate, setRenderEstimate] = + createSignal(null); + const [estimateLoading, setEstimateLoading] = createSignal(false); + const estimatedSizeLabel = () => { + const estimate = renderEstimate(); + return estimate + ? formatEstimatedSize(estimate.size_range_mb) + : estimateLoading() + ? "Calculating…" + : "Unavailable"; + }; + const estimatedTimeLabel = () => { + const estimate = renderEstimate(); + return estimate + ? formatEstimatedTime(estimate.time_range_seconds) + : estimateLoading() + ? "Calculating…" + : "Unavailable"; + }; const updateSettings: typeof setSettings = (( ...args: Parameters @@ -363,6 +378,7 @@ export function ExportPage() { resHeight: number; bpp: number; mode: "video" | "gif" | "cursor"; + exportSettings: ExportSettings; }; let previewDisposed = false; @@ -373,6 +389,7 @@ export function ExportPage() { let ownedPreviewUrl: string | null = null; const [previewDimensions, setPreviewDimensions] = createSignal<{ request: PreviewRequest; + durationSeconds: number; width: number; height: number; } | null>(null); @@ -385,29 +402,94 @@ export function ExportPage() { request.resWidth === settings.resolution.width && request.resHeight === settings.resolution.height && request.bpp === compressionBpp() && - request.mode === previewMode(); + request.mode === previewMode() && + JSON.stringify(request.exportSettings) === + JSON.stringify(currentExportSettings()); const isPreviewCurrent = (request: PreviewRequest) => !previewDisposed && latestPreviewRequest === request && matchesPreviewSettings(request); - const outputDimensions = () => { + const currentPreviewDimensions = () => { const dimensions = previewDimensions(); return dimensions && matchesPreviewSettings(dimensions.request) ? dimensions - : settings.resolution; + : null; + }; + const outputDimensions = () => + currentPreviewDimensions() ?? settings.resolution; + const outputDescription = () => { + const dimensions = currentPreviewDimensions(); + return dimensions + ? `${dimensions.width}×${dimensions.height} · ${settings.fps} fps` + : undefined; + }; + + const currentExportSettings = () => + buildExportSettings( + settings, + isMovCursorOnlyExport(), + advancedMode() && isCustomBpp() ? compressionBpp() : null, + forceFfmpegDecoder(), + ); + let estimateGeneration = 0; + let estimateCancellation = Promise.resolve(); + let pendingEstimate: PreviewRequest | null = null; + let estimating = false; + const fetchEstimate = async (request: PreviewRequest) => { + if (exportState.type !== "idle" || !isPreviewCurrent(request)) return; + pendingEstimate = request; + if (estimating) return; + estimating = true; + try { + while (!previewDisposed && pendingEstimate) { + const current = pendingEstimate; + pendingEstimate = null; + const generation = estimateGeneration; + let settled = false; + const onEstimate = new Channel((estimate) => { + if ( + !settled && + generation === estimateGeneration && + isPreviewCurrent(current) + ) + setRenderEstimate(estimate); + }); + try { + const estimate = await commands.getExportEstimates( + projectPath, + current.exportSettings, + onEstimate, + ); + if (generation === estimateGeneration && isPreviewCurrent(current)) + setRenderEstimate(estimate); + } catch (error) { + if (generation === estimateGeneration && isPreviewCurrent(current)) + console.warn("Export estimate unavailable", error); + } finally { + settled = true; + const internals = ( + globalThis as { + __TAURI_INTERNALS__?: { + unregisterCallback?: (id: number) => void; + }; + } + ).__TAURI_INTERNALS__; + internals?.unregisterCallback?.(onEstimate.id); + if (generation === estimateGeneration && isPreviewCurrent(current)) + setEstimateLoading(false); + } + } + } finally { + estimating = false; + } }; const runPreviewRequest = async (request: PreviewRequest, retryCount = 0) => { if (!isPreviewCurrent(request)) return; const { frameTime, fps, resWidth, resHeight, bpp, mode } = request; - const cacheKey = getEstimateCacheKey(fps, resWidth, resHeight, bpp, mode); - const cachedEstimate = estimateCache.get(cacheKey); - - if (cachedEstimate) { - setRenderEstimate(cachedEstimate); - } try { + await estimateCancellation; await flushProjectConfig(); } catch (error) { if (!isPreviewCurrent(request)) return; @@ -418,6 +500,7 @@ export function ExportPage() { setRenderEstimate(null); setPreviewError(error instanceof Error ? error.message : String(error)); setPreviewUnavailable(true); + setEstimateLoading(false); return; } if (!isPreviewCurrent(request)) return; @@ -443,21 +526,13 @@ export function ExportPage() { setPreviewUrl(nextUrl); setPreviewDimensions({ request, + durationSeconds: result.total_frames / request.fps, width: result.actual_width, height: result.actual_height, }); - const newEstimate = { - frameRenderTimeMs: result.frame_render_time_ms, - totalFrames: result.total_frames, - estimatedSizeMb: result.estimated_size_mb, - }; - - if (!cachedEstimate) { - estimateCache.set(cacheKey, newEstimate); - } setPreviewUnavailable(false); - setRenderEstimate(newEstimate); + void fetchEstimate(request); } catch (e) { if (!isPreviewCurrent(request)) return; console.error("Failed to generate preview:", e); @@ -480,6 +555,7 @@ export function ExportPage() { return runPreviewRequest(request, retryCount + 1); } setPreviewUnavailable(true); + setEstimateLoading(false); } }; @@ -516,6 +592,7 @@ export function ExportPage() { resHeight: settings.resolution.height, bpp: compressionBpp(), mode: previewMode(), + exportSettings: currentExportSettings(), }; if ( previewDimensions()?.request.projectRevision !== request.projectRevision @@ -525,6 +602,11 @@ export function ExportPage() { setPreviewUrl(null); setPreviewDimensions(null); } + estimateGeneration += 1; + pendingEstimate = null; + setRenderEstimate(null); + setEstimateLoading(true); + estimateCancellation = commands.cancelExportEstimates().catch(console.warn); setPreviewError(null); latestPreviewRequest = request; pendingPreviewRequest = null; @@ -546,6 +628,10 @@ export function ExportPage() { cursorOnly, compressionBpp, projectRevision, + () => settings.optimizeFilesize, + () => settings.compression, + forceFfmpegDecoder, + advancedMode, ], () => requestPreview(true), { defer: true }, @@ -554,6 +640,9 @@ export function ExportPage() { onCleanup(() => { previewDisposed = true; + estimateGeneration += 1; + pendingEstimate = null; + void commands.cancelExportEstimates().catch(console.warn); latestPreviewRequest = null; pendingPreviewRequest = null; debouncedFetchPreview.clear(); @@ -564,6 +653,15 @@ export function ExportPage() { } }); + createEffect(() => { + if (exportState.type !== "idle") { + estimateGeneration += 1; + pendingEstimate = null; + setEstimateLoading(false); + void commands.cancelExportEstimates().catch(console.warn); + } + }); + let cancelCurrentExport: (() => void) | null = null; onCleanup(() => { @@ -845,240 +943,258 @@ export function ExportPage() { return `${minutes}:${secs.toString().padStart(2, "0")}`; }; + const [stageRef, setStageRef] = createSignal(); + const stageBounds = createElementBounds(stageRef); + const previewBox = () => { + const availWidth = Math.max(120, stageBounds.width ?? 0); + const availHeight = Math.max(68, stageBounds.height ?? 0); + const { width, height } = outputDimensions(); + const scale = Math.min(availWidth / width, availHeight / height); + return { + width: Math.floor(width * scale), + height: Math.floor(height * scale), + }; + }; + + const destinationOptions = () => + EXPORT_TO_OPTIONS.map((option) => ({ + value: option.value, + label: + option.value === "link" && meta().sharing ? "Reupload" : option.label, + icon: option.icon, + disabled: option.value === "link" && disablesLinkExport(), + disabledReason: + option.value === "link" && disablesLinkExport() + ? cursorOnly() + ? "Cursor-only exports can only be saved to a file or clipboard" + : "Transparent exports can only be saved to a file or clipboard" + : undefined, + })); + + const formatOptions = () => + FORMAT_OPTIONS.map((option) => { + const disabled = + cursorOnly() || + (option.value === "Mp4" && requiresTransparentExport()) || + (option.value === "Gif" && settings.exportTo === "link"); + return { + value: option.value, + label: option.label, + disabled, + disabledReason: cursorOnly() + ? "Cursor-only export always uses transparent MOV" + : option.value === "Mp4" && requiresTransparentExport() + ? "MP4 doesn't support transparency" + : option.value === "Gif" && settings.exportTo === "link" + ? "Links require MP4 format" + : undefined, + }; + }); + + const resolutionOptions = () => + (shouldUseGifMode() + ? [RESOLUTION_OPTIONS._720p, RESOLUTION_OPTIONS._1080p] + : [ + RESOLUTION_OPTIONS._720p, + RESOLUTION_OPTIONS._1080p, + RESOLUTION_OPTIONS._4k, + ] + ).map((option) => ({ value: option.value, label: option.label })); + + const fpsOptions = () => + (shouldUseGifMode() ? GIF_FPS_OPTIONS : FPS_OPTIONS).map((option) => ({ + value: option.value, + label: option.label, + })); + + const qualityOptions = () => + [...COMPRESSION_OPTIONS].reverse().map((option) => ({ + value: option.value, + label: option.label === "Social Media" ? "Social" : option.label, + })); + + const selectedQuality = () => (isCustomBpp() ? null : settings.compression); + + const showBitrateControls = () => settings.format === "Mp4" && !cursorOnly(); + return ( -
    +
    -

    +
    + +
    +

    Export

    -
    - {ostype() === "macos" &&
    } -
    +
    {ostype() === "windows" && }
    -
    -
    - Preview - - +
    +
    + Preview + +
    -
    - - - - - {previewError() ?? - (previewUnavailable() - ? "Preview unavailable" - : "Generating preview...")} - -
    - } - > -
    -
    -
    - -
    - } - > - {(url) => ( - <> - Export preview - -
    -
    +
    +
    +
    + + + {previewError() ?? + (previewUnavailable() + ? "Preview unavailable" + : "Generating preview...")} + + } + > +
    +
    +
    +
    -
    - - - )} -
    -
    - - - - - - - - - - - - - - - - - - -
    - } - > - {(est) => { - const data = est(); - const durationSeconds = data.totalFrames / settings.fps; - - const exportSpeedMultiplier = shouldUseGifMode() ? 4 : 10; - const totalTimeMs = - (data.frameRenderTimeMs * data.totalFrames) / - exportSpeedMultiplier; - const estimatedTimeSeconds = Math.max(1, totalTimeMs / 1000); - - const estimatedSizeMb = data.estimatedSizeMb; - - return ( -
    - - - - {formatDuration(Math.round(durationSeconds))} - - - - - - {outputDimensions().width}×{outputDimensions().height} - - - - - - ~{estimatedSizeMb.toFixed(1)} MB - - - - - - ~{formatDuration(Math.round(estimatedTimeSeconds))} - - -
    - ); - }} - -
    - -
    - -
    - }> -
    - - {(option) => { - const Icon = option.icon; - const isSelected = () => settings.exportTo === option.value; - const isDisabled = () => - option.value === "link" && disablesLinkExport(); - const disabledReason = () => - isDisabled() - ? cursorOnly() - ? "Cursor-only exports can only be saved to a file or clipboard" - : "Transparent exports can only be saved to a file or clipboard" - : undefined; - const button = ( + } + > + {(url) => ( + <> + Export preview + +
    +
    +
    + - ); - - return disabledReason() ? ( - {button} - ) : ( - button - ); - }} - + + )} +
    +
    +
    + +
    +
    + + + + +
    +
    +
    + +
    +
    + } + > + { + setSettings( + produce((newSettings) => { + newSettings.exportTo = value; + if (value === "link" && settings.format === "Gif") { + newSettings.format = "Mp4"; + } + }), + ); + }} + /> + +

    + {cursorOnly() + ? "Cursor-only exports can only be saved to a file or clipboard." + : "Transparent exports can only be saved to a file or clipboard."} +

    +
    {(sharing) => ( -
    -

    +

    +

    Update your existing link

    -

    +

    Reupload replaces the video at this link with your latest edit. Everyone with the link will see the updated version.

    - - - }> -
    - - {(option) => { - const isDisabled = () => - cursorOnly() || - (option.value === "Mp4" && requiresTransparentExport()) || - (option.value === "Gif" && settings.exportTo === "link"); - - const disabledReason = () => - cursorOnly() - ? "Cursor-only export always uses transparent MOV" - : option.value === "Mp4" && requiresTransparentExport() - ? "MP4 doesn't support transparency" - : option.value === "Gif" && - settings.exportTo === "link" - ? "Links require MP4 format" - : undefined; - - const button = ( - - ); + - return disabledReason() ? ( - {button} - ) : ( - button - ); - }} - -
    -
    - - } + disabled={cursorOnly()} + > + { + updateSettings( + produce((newSettings) => { + newSettings.format = value; + if ( + value === "Gif" && + !( + settings.resolution.value === "720p" || + settings.resolution.value === "1080p" + ) + ) + newSettings.resolution = { + ...RESOLUTION_OPTIONS._720p, + }; + if ( + value === "Gif" && + GIF_FPS_OPTIONS.every((v) => v.value !== settings.fps) + ) + newSettings.fps = 15; + if ( + value === "Mp4" && + FPS_OPTIONS.every((v) => v.value !== settings.fps) + ) + newSettings.fps = 30; + }), + ); + }} + /> + + + } + icon={} > -
    - - {(option) => ( - - )} - -
    -
    - - }> -
    - - {(option) => ( - - )} - -
    -
    - - - { + const option = Object.values(RESOLUTION_OPTIONS).find( + (candidate) => candidate.value === value, + ); + if (option) updateSettings("resolution", { ...option }); + }} + /> + + + } + > + { + trackEvent("export_fps_changed", { fps: value }); + updateSettings("fps", value); + }} + /> + + + + } + icon={} > -
    - - {(option) => { - const isSelected = () => { - if (advancedMode() && isCustomBpp()) return false; - return settings.compression === option.value; - }; - return ( - - ); - }} - -
    -
    + { + const option = COMPRESSION_OPTIONS.find( + (candidate) => candidate.value === value, + ); + if (!option) return; + setPreviewLoading(true); + setCompressionBpp(option.bpp); + setSettings("compression", option.value); + }} + /> +
    Smaller file Larger file
    - - - + /> + - } - > +
    + +
    -
    - + - -
    -
    - -
    -

    - Warning -

    -

    - Exports as a transparent MOV. Files are large and - best for compositing or editing. -

    -
    -
    -
    -
    + +
    + +

    + Exports as a transparent MOV. Files are large and best for + compositing or editing. +

    +
    +
    - -
    -
    - Bits per pixel - - {compressionBpp().toFixed(2)} - -
    + +
    + + Bits per pixel + +
    -
    - 0.02 (tiny) - 0.50 (huge) -
    - -

    - Using custom bitrate -

    -
    - - -
    - -
    -
    + + {compressionBpp().toFixed(2)} + +
    + +

    + Using a custom bitrate +

    -
    + + + + +
    - +
    -
    +
    {settings.exportTo === "link" && !auth.data ? ( -
    - - - Sign in to share - -
    + ) : ( -
    - -
    + )}
    @@ -1559,16 +1520,19 @@ export function ExportPage() { >
    -

    Quality Preview

    +

    + Quality preview +

    -
    +
    {(url) => (
    -
    +
    {outputDimensions().width}×{outputDimensions().height} - {(est) => { - return ( - - Estimated size: {est().estimatedSizeMb.toFixed(1)} MB - - ); - }} + {(est) => ( + + Estimated size: {formatEstimatedSize(est().size_range_mb)} + + )}
    @@ -1604,10 +1566,10 @@ export function ExportPage() { return (
    @@ -1846,8 +1808,8 @@ export function ExportPage() { -

    - Tip: Use +

    + Tip: Use Instant Mode for your next recording to record and upload on the fly, with no exporting required.

    @@ -1860,6 +1822,135 @@ export function ExportPage() { ); } +function ExportSection( + props: ParentProps<{ name: string; icon: JSX.Element; disabled?: boolean }>, +) { + return ( +
    +
    + {props.icon} + {props.name} +
    + {props.children} +
    + ); +} + +type SegmentedOption = { + value: T; + label: string; + icon?: ValidComponent; + disabled?: boolean; + disabledReason?: string; +}; + +function ExportSegmented(props: { + options: SegmentedOption[]; + value: T | null; + onChange: (value: T) => void; + tall?: boolean; +}) { + return ( +
    + + {(option) => { + const selected = () => props.value === option.value; + const button = ( + + ); + return option.disabledReason ? ( + {button} + ) : ( + button + ); + }} + +
    + ); +} + +function ExportToggleRow(props: { + title: string; + description: string; + checked: boolean; + onChange: (value: boolean) => void; +}) { + return ( +
    +
    + + {props.title} + + + {props.description} + +
    + +
    + ); +} + +function ExportStat(props: { + label: string; + value?: string; + divided?: boolean; +}) { + return ( +
    + + {props.label} + + + } + > + + {props.value} + + +
    + ); +} + function ProgressRing(props: { percent?: number; indeterminate?: boolean }) { const pct = () => Math.max(0, Math.min(100, props.percent ?? 0)); @@ -1876,7 +1967,7 @@ function ProgressRing(props: { percent?: number; indeterminate?: boolean }) { r="28" stroke="currentColor" stroke-width="4" - class="text-gray-4" + class="text-ed-ctl-active" />
    - + {Math.round(pct())}%
    @@ -1924,10 +2015,10 @@ function ActiveExport(props: { indeterminate={percent() === undefined} />
    -

    {props.heading}

    +

    {props.heading}

    {(rendered) => ( -

    +

    {rendered().renderedCount.toLocaleString()} /{" "} {rendered().totalFrames.toLocaleString()} frames

    @@ -1946,12 +2037,12 @@ function ActiveExport(props: { function CompletedExport(props: { title: string; subtitle: string }) { return (
    -
    - +
    +
    -

    {props.title}

    -

    {props.subtitle}

    +

    {props.title}

    +

    {props.subtitle}

    ); From 060664902c94c47b4cd432155b0d87c78e6ac16d Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:01 +0100 Subject: [PATCH 069/217] feat(editor): add bounded clip audio controls --- .../src/routes/editor/clip-audio.test.ts | 23 +++++++++++++++++++ apps/desktop/src/routes/editor/clip-audio.ts | 14 +++++++++++ 2 files changed, 37 insertions(+) create mode 100644 apps/desktop/src/routes/editor/clip-audio.test.ts create mode 100644 apps/desktop/src/routes/editor/clip-audio.ts diff --git a/apps/desktop/src/routes/editor/clip-audio.test.ts b/apps/desktop/src/routes/editor/clip-audio.test.ts new file mode 100644 index 00000000000..e5a783c3718 --- /dev/null +++ b/apps/desktop/src/routes/editor/clip-audio.test.ts @@ -0,0 +1,23 @@ +import { describe, expect, it } from "vitest"; +import { clipAudioMuted, clipVolume } from "./clip-audio"; + +describe("clip audio", () => { + it("keeps old clips at full volume and bounds saved values", () => { + expect(clipVolume({})).toBe(1); + expect(clipVolume({ volume: null })).toBe(1); + expect(clipVolume({ volume: 0.35 })).toBe(0.35); + expect(clipVolume({ volume: -1 })).toBe(0); + expect(clipVolume({ volume: 3 })).toBe(2); + expect(clipVolume({ volume: Number.NaN })).toBe(1); + expect(clipVolume({ volume: Number.POSITIVE_INFINITY })).toBe(1); + }); + + it("mutes normal clips explicitly and sped-up clips by default", () => { + expect(clipAudioMuted({ timescale: 1 })).toBe(false); + expect(clipAudioMuted({ timescale: 1, speedAudioMode: "mute" })).toBe(true); + expect(clipAudioMuted({ timescale: 2 })).toBe(true); + for (const speedAudioMode of ["maintainPitch", "matchSpeed"] as const) { + expect(clipAudioMuted({ timescale: 2, speedAudioMode })).toBe(false); + } + }); +}); diff --git a/apps/desktop/src/routes/editor/clip-audio.ts b/apps/desktop/src/routes/editor/clip-audio.ts new file mode 100644 index 00000000000..847e8338bbd --- /dev/null +++ b/apps/desktop/src/routes/editor/clip-audio.ts @@ -0,0 +1,14 @@ +import type { TimelineSegment } from "~/utils/tauri"; + +export function clipVolume(segment: Pick): number { + const volume = segment.volume ?? 1; + return Number.isFinite(volume) ? Math.min(2, Math.max(0, volume)) : 1; +} + +export function clipAudioMuted( + segment: Pick, +): boolean { + return segment.timescale === 1 + ? segment.speedAudioMode === "mute" + : (segment.speedAudioMode ?? "mute") === "mute"; +} From b362ce87084874cb698aea204125ecf5cc811cc2 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:02 +0100 Subject: [PATCH 070/217] feat(editor): add compatible adjacent clip merging --- apps/desktop/src/routes/editor/clip-merge.ts | 168 +++++++++++++++++++ 1 file changed, 168 insertions(+) create mode 100644 apps/desktop/src/routes/editor/clip-merge.ts diff --git a/apps/desktop/src/routes/editor/clip-merge.ts b/apps/desktop/src/routes/editor/clip-merge.ts new file mode 100644 index 00000000000..3c3ab3c34a4 --- /dev/null +++ b/apps/desktop/src/routes/editor/clip-merge.ts @@ -0,0 +1,168 @@ +import type { TimelineSegment } from "~/utils/tauri"; +import type { ClipTransition } from "./clip-transitions"; + +export type ClipMergeDirection = "previous" | "next"; + +export type ClipMergeBlocker = "edge" | "different-recording" | "gap" | "speed"; + +const CONTIGUOUS_EPSILON = 1e-6; + +export function clipMergeKeptIndex( + index: number, + direction: ClipMergeDirection, +) { + return direction === "next" ? index : index - 1; +} + +export function clipMergeBlocker( + segments: ReadonlyArray, + index: number, + direction: ClipMergeDirection, +): ClipMergeBlocker | null { + const kept = clipMergeKeptIndex(index, direction); + const left = segments[kept]; + const right = segments[kept + 1]; + if (!left || !right) return "edge"; + if ((left.recordingSegment ?? 0) !== (right.recordingSegment ?? 0)) + return "different-recording"; + if (Math.abs(left.end - right.start) > CONTIGUOUS_EPSILON) return "gap"; + if (left.timescale !== right.timescale) return "speed"; + return null; +} + +export function clipMergeBlockerHint(blocker: ClipMergeBlocker): string { + switch (blocker) { + case "edge": + return "No clip on that side"; + case "different-recording": + return "Different recording"; + case "gap": + return "Footage was cut between them"; + case "speed": + return "Match the clip speeds first"; + } +} + +/** + * The clip that replaces `left` and `right`: it spans both, and takes its + * settings (speed audio mode, volume, cursor visibility) from `settingsFrom`, + * the clip the user acted on. A custom name survives from whichever clip has + * one, preferring the acted-on clip. + */ +export function mergedClipSegment( + left: T, + right: T, + settingsFrom: T, +): T { + const name = + settingsFrom.name?.trim() || + left.name?.trim() || + right.name?.trim() || + null; + return { + ...settingsFrom, + recordingSegment: left.recordingSegment, + timescale: left.timescale, + start: left.start, + end: right.end, + name, + }; +} + +/** + * The boundary between `keptIndex` and the clip after it disappears, so any + * transition on it goes and every later transition shifts down one. + */ +export function transitionsAfterClipMerge( + transitions: ClipTransition[], + keptIndex: number, +) { + return transitions.flatMap((transition) => { + if (transition.segmentIndex === keptIndex + 1) return []; + return [ + transition.segmentIndex > keptIndex + 1 + ? { ...transition, segmentIndex: transition.segmentIndex - 1 } + : transition, + ]; + }); +} + +if (import.meta.vitest) { + const { describe, expect, it } = import.meta.vitest; + + const clip = ( + start: number, + end: number, + extra: Partial = {}, + ): TimelineSegment => ({ + recordingSegment: 0, + timescale: 1, + start, + end, + ...extra, + }); + + describe("clipMergeBlocker", () => { + it("allows contiguous clips from the same recording at the same speed", () => { + const segments = [clip(0, 4), clip(4, 8)]; + expect(clipMergeBlocker(segments, 0, "next")).toBeNull(); + expect(clipMergeBlocker(segments, 1, "previous")).toBeNull(); + }); + + it("refuses the timeline edges", () => { + const segments = [clip(0, 4), clip(4, 8)]; + expect(clipMergeBlocker(segments, 0, "previous")).toBe("edge"); + expect(clipMergeBlocker(segments, 1, "next")).toBe("edge"); + }); + + it("refuses clips whose footage was cut apart, or that differ in source or speed", () => { + expect(clipMergeBlocker([clip(0, 4), clip(5, 8)], 0, "next")).toBe("gap"); + expect( + clipMergeBlocker( + [clip(0, 4), clip(4, 8, { recordingSegment: 1 })], + 0, + "next", + ), + ).toBe("different-recording"); + expect( + clipMergeBlocker([clip(0, 4), clip(4, 8, { timescale: 2 })], 0, "next"), + ).toBe("speed"); + }); + }); + + describe("mergedClipSegment", () => { + it("spans both clips and keeps the acted-on clip's settings", () => { + const left = clip(0, 4, { volume: 0.5, name: "Intro" }); + const right = clip(4, 8, { speedAudioMode: "mute", hideCursor: true }); + expect(mergedClipSegment(left, right, right)).toEqual({ + recordingSegment: 0, + timescale: 1, + start: 0, + end: 8, + speedAudioMode: "mute", + hideCursor: true, + name: "Intro", + }); + expect(mergedClipSegment(left, right, left)).toMatchObject({ + start: 0, + end: 8, + volume: 0.5, + name: "Intro", + }); + }); + }); + + describe("transitionsAfterClipMerge", () => { + it("drops the merged boundary's transition and reindexes the rest", () => { + const transitions: ClipTransition[] = [ + { segmentIndex: 1, type: "cross-fade", duration: 0.5 }, + { segmentIndex: 2, type: "cross-fade", duration: 0.5 }, + { segmentIndex: 3, type: "fade-through-black", duration: 0.25 }, + ]; + expect(transitionsAfterClipMerge(transitions, 1)).toEqual([ + { segmentIndex: 1, type: "cross-fade", duration: 0.5 }, + { segmentIndex: 2, type: "fade-through-black", duration: 0.25 }, + ]); + }); + }); +} From dfaac03a0fb9c6d4788b566c98b0614da26bff86 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:02 +0100 Subject: [PATCH 071/217] fix(desktop): preserve clip settings when importing projects --- apps/desktop/src-tauri/src/import.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/desktop/src-tauri/src/import.rs b/apps/desktop/src-tauri/src/import.rs index 19aa7faf635..cebe7d9c065 100644 --- a/apps/desktop/src-tauri/src/import.rs +++ b/apps/desktop/src-tauri/src/import.rs @@ -925,7 +925,9 @@ fn source_timeline_segments_for_import( start, end, name: None, - speed_audio_mode: None, + speed_audio_mode: segment.speed_audio_mode, + hide_cursor: segment.hide_cursor, + volume: segment.volume, }); } From e11b0fc37901d5f4d44a60d5a367e96965d4d2dd Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:02 +0100 Subject: [PATCH 072/217] feat(editor): wire clip volume visibility and merge actions --- apps/desktop/src/routes/editor/context.ts | 87 +++++++++++++++++++++++ 1 file changed, 87 insertions(+) diff --git a/apps/desktop/src/routes/editor/context.ts b/apps/desktop/src/routes/editor/context.ts index 1a92ec274eb..a7bbe4e9f0e 100644 --- a/apps/desktop/src/routes/editor/context.ts +++ b/apps/desktop/src/routes/editor/context.ts @@ -64,6 +64,13 @@ import { MIN_AUDIO_SEGMENT_DURATION, } from "./audio"; import { deriveCaptionTrackSegments, mapEditedTimeToSource } from "./captions"; +import { + type ClipMergeDirection, + clipMergeBlocker, + clipMergeKeptIndex, + mergedClipSegment, + transitionsAfterClipMerge, +} from "./clip-merge"; import { type ClipTransition, type ClipTransitionInput, @@ -1477,6 +1484,86 @@ export const [EditorContextProvider, useBaseEditorContext] = speedAudioMode, ); }, + setClipSegmentVolume: (index: number, volume: number) => { + if (!Number.isFinite(volume) || !project.timeline?.segments[index]) { + return; + } + const next = Math.min(2, Math.max(0, volume)); + setProject( + "timeline", + "segments", + index, + "volume", + next === 1 ? null : next, + ); + }, + setClipSegmentMuted: (index: number, muted: boolean) => { + const segment = project.timeline?.segments[index]; + if (!segment) return; + setProject( + "timeline", + "segments", + index, + "speedAudioMode", + muted ? "mute" : segment.timescale === 1 ? null : "maintainPitch", + ); + }, + setClipSegmentHideCursor: (index: number, hidden: boolean) => { + if (!project.timeline?.segments[index]) return; + setProject( + "timeline", + "segments", + index, + "hideCursor", + hidden ? true : undefined, + ); + }, + setClipSegmentName: (index: number, name: string | null) => { + if (!project.timeline?.segments[index]) return; + const trimmed = name?.trim(); + setProject( + "timeline", + "segments", + index, + "name", + trimmed ? trimmed : null, + ); + }, + mergeClipSegment: (index: number, direction: ClipMergeDirection) => { + const timeline = project.timeline; + if (!timeline) return; + if (clipMergeBlocker(timeline.segments, index, direction)) return; + const kept = clipMergeKeptIndex(index, direction); + batch(() => { + // Dropping the transition on the merged boundary first lets + // setClipTransition ripple the other tracks for the overlap it + // gave back; the merge itself is duration-neutral. + setClipTransition(kept + 1, null); + setProject( + produce((project) => { + const timeline = project.timeline; + if (!timeline) return; + const left = timeline.segments[kept]; + const right = timeline.segments[kept + 1]; + const settingsFrom = timeline.segments[index]; + if (!left || !right || !settingsFrom) return; + timeline.segments.splice( + kept, + 2, + mergedClipSegment(left, right, settingsFrom), + ); + timeline.transitions = transitionsAfterClipMerge( + timeline.transitions ?? [], + kept, + ); + }), + ); + setEditorState("timeline", "selection", { + type: "clip", + indices: [kept], + }); + }); + }, }; const projectSave = createProjectConfigSave({ From 8b347ebcea5d78f6f7220f3ff3fd5d166eab6cb6 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:47:02 +0100 Subject: [PATCH 073/217] feat(editor): add clip settings menus and scaled waveforms --- .../src/routes/editor/Timeline/ClipTrack.tsx | 661 ++++++++++++++---- 1 file changed, 516 insertions(+), 145 deletions(-) diff --git a/apps/desktop/src/routes/editor/Timeline/ClipTrack.tsx b/apps/desktop/src/routes/editor/Timeline/ClipTrack.tsx index 29ce295418a..bb18c3c86e5 100644 --- a/apps/desktop/src/routes/editor/Timeline/ClipTrack.tsx +++ b/apps/desktop/src/routes/editor/Timeline/ClipTrack.tsx @@ -10,6 +10,7 @@ import { createSignal, For, Index, + type JSX, Match, onCleanup, onMount, @@ -17,8 +18,19 @@ import { Switch, } from "solid-js"; import { produce } from "solid-js/store"; - -import type { ClipSpeedAudioMode, TimelineSegment } from "~/utils/tauri"; +import type { TimelineSegment } from "~/utils/tauri"; +import IconLucideArrowLeftToLine from "~icons/lucide/arrow-left-to-line"; +import IconLucideArrowRightToLine from "~icons/lucide/arrow-right-to-line"; +import IconLucideMousePointerBan from "~icons/lucide/mouse-pointer-ban"; +import IconLucideScissors from "~icons/lucide/scissors"; +import IconLucideTrash2 from "~icons/lucide/trash-2"; +import IconLucideVolumeX from "~icons/lucide/volume-x"; +import { clipAudioMuted, clipVolume } from "../clip-audio"; +import { + type ClipMergeDirection, + clipMergeBlocker, + clipMergeBlockerHint, +} from "../clip-merge"; import { clampTransitionDuration, clipTimelineDuration, @@ -30,7 +42,9 @@ import { maxTransitionDuration, } from "../clip-transitions"; import { useEditorContext } from "../context"; +import { TextInput } from "../TextInput"; import { effectiveToOutput, holdWindows } from "../timeline-holds"; +import { Slider } from "../ui"; import { useSegmentContext, useTimelineContext } from "./context"; import { getSectionMarker } from "./sectionMarker"; import { SPLIT_SNAP_PX, snapSplitTime } from "./split-snapping"; @@ -146,7 +160,7 @@ const SAMPLES_PER_PIXEL = 2; function WaveformCanvas(props: { systemWaveform?: number[]; micWaveform?: number[]; - segment: { start: number; end: number }; + segment: Pick; segmentOffset: number; holds: ReadonlyArray<[number, number]>; }) { @@ -157,6 +171,11 @@ function WaveformCanvas(props: { let canvas: HTMLCanvasElement | undefined; let rafId: number | null = null; let lastRenderKey = ""; + let pathKey = ""; + let micPath: Path2D | undefined; + let systemPath: Path2D | undefined; + let cachedMicWaveform: number[] | undefined; + let cachedSystemWaveform: number[] | undefined; const renderCanvas = () => { rafId = null; @@ -215,6 +234,7 @@ function WaveformCanvas(props: { canvas.width = 1; canvas.style.left = "0px"; canvas.style.width = "1px"; + lastRenderKey = ""; return; } @@ -244,21 +264,27 @@ function WaveformCanvas(props: { renderRange = { start: 0, end: outputDuration }; } - const micScale = gainToScale(project.audio.micVolumeDb); - const systemScale = gainToScale(project.audio.systemVolumeDb); - - const holdsKey = holds - .map(([start, end]) => `${start.toFixed(2)}:${end.toFixed(2)}`) - .join(","); - const renderKey = `${canvasWidth}-${props.segment.start.toFixed(2)}-${renderRange.start.toFixed(2)}-${renderRange.end.toFixed(2)}-${holdsKey}-${micScale.toFixed(2)}-${systemScale.toFixed(2)}`; - if (renderKey === lastRenderKey) { + const volume = clipVolume(props.segment); + const micScale = gainToScale(project.audio.micVolumeDb) * volume; + const systemScale = gainToScale(project.audio.systemVolumeDb) * volume; + + const holdsKey = holds.map(([start, end]) => `${start}:${end}`).join(","); + const geometryKey = `${canvasWidth}-${props.segment.start}-${renderRange.start}-${renderRange.end}-${holdsKey}`; + const renderKey = `${geometryKey}-${leftOffsetPx}-${renderWidth}-${micScale}-${systemScale}`; + const micWaveform = props.micWaveform; + const systemWaveform = props.systemWaveform; + const micChanged = cachedMicWaveform !== micWaveform; + const systemChanged = cachedSystemWaveform !== systemWaveform; + if (renderKey === lastRenderKey && !micChanged && !systemChanged) { return; } lastRenderKey = renderKey; - canvas.width = canvasWidth; - canvas.style.left = `${leftOffsetPx}px`; - canvas.style.width = `${renderWidth}px`; + if (canvas.width !== canvasWidth) canvas.width = canvasWidth; + const left = `${leftOffsetPx}px`; + const cssWidth = `${renderWidth}px`; + if (canvas.style.left !== left) canvas.style.left = left; + if (canvas.style.width !== cssWidth) canvas.style.width = cssWidth; const canvasHeight = canvas.height; ctx.clearRect(0, 0, canvasWidth, canvasHeight); @@ -268,36 +294,39 @@ function WaveformCanvas(props: { MAX_WAVEFORM_SAMPLES, ); - const drawWaveform = ( - waveform: number[] | undefined, - color: string, - gain?: number, - ) => { - const path = createWaveformPath( + if (pathKey !== geometryKey || micChanged) { + micPath = createWaveformPath( + renderRange, + micWaveform, + numSamples, + sourceTimeAt, + ); + cachedMicWaveform = micWaveform; + } + if (pathKey !== geometryKey || systemChanged) { + systemPath = createWaveformPath( renderRange, - waveform, + systemWaveform, numSamples, sourceTimeAt, ); - if (!path) return; - const scale = gainToScale(gain); - if (scale <= 0) return; + cachedSystemWaveform = systemWaveform; + } + pathKey = geometryKey; + + const drawWaveform = (path: Path2D | undefined, scale: number) => { + if (!path || scale <= 0) return; ctx.save(); ctx.translate(0, canvasHeight * (1 - scale)); ctx.scale(canvasWidth, canvasHeight * scale); - ctx.fillStyle = color; ctx.fill(path); ctx.restore(); }; - const trackColor = getComputedStyle(canvas).color; + ctx.fillStyle = getComputedStyle(canvas).color; ctx.globalAlpha = 0.55; - drawWaveform(props.micWaveform, trackColor, project.audio.micVolumeDb); - drawWaveform( - props.systemWaveform, - trackColor, - project.audio.systemVolumeDb, - ); + drawWaveform(micPath, micScale); + drawWaveform(systemPath, systemScale); ctx.globalAlpha = 1; }; @@ -308,6 +337,7 @@ function WaveformCanvas(props: { editorState.timeline.transform.zoom; props.segment.start; props.segment.end; + props.segment.volume; props.segmentOffset; props.holds; props.micWaveform; @@ -322,13 +352,14 @@ function WaveformCanvas(props: { }); onMount(() => { - setTimeout(() => { + const timeout = setTimeout(() => { lastRenderKey = ""; if (rafId !== null) { cancelAnimationFrame(rafId); } rafId = requestAnimationFrame(renderCanvas); }, 300); + onCleanup(() => clearTimeout(timeout)); }); onCleanup(() => { @@ -349,83 +380,405 @@ function WaveformCanvas(props: { ); } -// The speed chip is rendered once per label tier so an open popover survives -// the segment shrinking past a tier boundary; the menu itself lives here so -// it isn't duplicated per tier. -function ClipSpeedControl(props: { - timescale: number; - speedAudioMode?: ClipSpeedAudioMode | null; +const CLIP_SPEEDS = [0.25, 0.5, 1, 1.5, 2, 4, 8] as const; + +type ClipMenuAnchor = { x: number; y: number }; + +function ClipMenuSection(props: { name: string; children: JSX.Element }) { + return ( +
    + + {props.name} + + {props.children} +
    + ); +} + +function ClipMenuChips(props: { + options: ReadonlyArray; + value: T; + onChange: (value: T) => void; + label: string; +}) { + return ( +
    + + {([value, label]) => ( + + )} + +
    + ); +} + +function ClipMenuToggleRow(props: { + icon: JSX.Element; + label: string; + description: string; + checked: boolean; + onChange: (checked: boolean) => void; +}) { + return ( + + ); +} + +function ClipMenuRow(props: { + icon: JSX.Element; + label: string; + hint?: string; + kbd?: string; + disabled?: boolean; + danger?: boolean; + onClick: () => void; +}) { + return ( + + ); +} + +function ClipSettingsControl(props: { + index: number; + segment: TimelineSegment; + label: string; + defaultLabel: string; + box: { start: number; end: number }; open: boolean; + anchor: ClipMenuAnchor | null; onOpenChange: (open: boolean) => void; triggerClass?: string; - onSetTimescale: (timescale: number) => void; - onSetSpeedAudioMode: (mode: ClipSpeedAudioMode) => void; }) { + const { project, projectActions, editorState } = useEditorContext(); + const [renaming, setRenaming] = createSignal(false); + const [draftName, setDraftName] = createSignal(""); + + const segments = () => project.timeline?.segments ?? []; + const muted = () => clipAudioMuted(props.segment); + const silent = () => muted() || clipVolume(props.segment) === 0; + const cursorHidden = () => props.segment.hideCursor === true; + const normalSpeed = () => props.segment.timescale === 1; + + const playheadTime = () => + editorState.previewTime ?? editorState.playbackTime; + const canSplitAtPlayhead = () => { + const time = playheadTime(); + return time > props.box.start && time < props.box.end; + }; + const mergeBlocker = (direction: ClipMergeDirection) => + clipMergeBlocker(segments(), props.index, direction); + const mergeHint = (direction: ClipMergeDirection) => { + const blocker = mergeBlocker(direction); + return blocker ? clipMergeBlockerHint(blocker) : undefined; + }; + const canDelete = () => segments().length > 1; + + const close = () => props.onOpenChange(false); + + createEffect(() => { + if (!props.open) setRenaming(false); + }); + + const startRename = () => { + setDraftName(props.segment.name?.trim() ?? ""); + setRenaming(true); + }; + const commitRename = () => { + if (!renaming()) return; + projectActions.setClipSegmentName(props.index, draftName()); + setRenaming(false); + }; + return ( + props.anchor + ? { x: props.anchor.x, y: props.anchor.y, width: 0, height: 0 } + : undefined + } > event.stopPropagation()} > - - {props.timescale}x + + {props.segment.timescale}x} + > + + + + + event.stopPropagation()} - class="z-50 flex w-max flex-col gap-1.5 rounded-xl bg-ed-card p-2 text-ed-text-1 shadow-ed-pop outline-hidden animate-in fade-in slide-in-from-bottom-2" + class="z-50 flex w-[300px] max-w-[calc(100vw-16px)] flex-col gap-2 rounded-xl bg-ed-card p-1.5 text-ed-text-1 shadow-ed-pop outline-hidden animate-in fade-in zoom-in-95 duration-100" > -
    - {[0.25, 0.5, 1, 1.5, 2, 4, 8].map((mult) => ( - - ))} +
    + + {props.label} + + + {formatTime(props.segment.end - props.segment.start)} + + {" · "} + {props.segment.timescale}x + +
    - -
    - {( - [ - ["mute", "Mute"], - ["maintainPitch", "Maintain pitch"], - ["matchSpeed", "Match speed"], - ] as const - ).map(([value, label]) => ( - - ))} + + + [mult, `${mult}x`] as const)} + value={props.segment.timescale} + onChange={(mult) => + projectActions.setClipSegmentTimescale(props.index, mult) + } + /> + + + +
    + Volume + + projectActions.setClipSegmentVolume(props.index, value / 100) + } + formatTooltip={(value) => `${value}%`} + /> + + {Math.round(clipVolume(props.segment) * 100)}% +
    - + } + label="Mute clip" + description="Silence this clip's audio" + checked={muted()} + onChange={(checked) => + projectActions.setClipSegmentMuted(props.index, checked) + } + /> + } + > + + projectActions.setClipSegmentSpeedAudioMode(props.index, mode) + } + /> + +
    + + + } + label="Hide cursor" + description="Fades out while this clip plays" + checked={cursorHidden()} + onChange={(checked) => + projectActions.setClipSegmentHideCursor(props.index, checked) + } + /> + + +
    + +
    + } + label="Split at playhead" + kbd="C" + hint="Move the playhead into this clip" + disabled={!canSplitAtPlayhead()} + onClick={() => { + projectActions.splitClipSegment(playheadTime(), props.index); + close(); + }} + /> + } + label="Merge with previous clip" + hint={mergeHint("previous")} + disabled={mergeBlocker("previous") !== null} + onClick={() => { + projectActions.mergeClipSegment(props.index, "previous"); + close(); + }} + /> + } + label="Merge with next clip" + hint={mergeHint("next")} + disabled={mergeBlocker("next") !== null} + onClick={() => { + projectActions.mergeClipSegment(props.index, "next"); + close(); + }} + /> + } + label="Rename clip" + onClick={startRename} + /> + } + > +
    + { + queueMicrotask(() => { + el.focus(); + el.select(); + }); + }} + class="h-7 min-w-0 flex-1 px-2 text-[12px]" + value={draftName()} + placeholder={props.defaultLabel} + aria-label="Clip name" + onInput={(event) => setDraftName(event.currentTarget.value)} + onKeyDown={(event) => { + if (event.key === "Enter") { + event.preventDefault(); + commitRename(); + } else if (event.key === "Escape") { + event.preventDefault(); + setRenaming(false); + } + }} + onBlur={commitRename} + /> +
    +
    +
    + +
    + + } + label="Delete clip" + kbd="⌫" + hint="Can't delete the only clip" + disabled={!canDelete()} + danger + onClick={() => { + projectActions.deleteClipSegment(props.index); + close(); + }} + /> @@ -612,16 +965,42 @@ export function ClipTrack( const i = segmentIndex; const segment = () => segments()[i()]; const [speedOpen, setSpeedOpen] = createSignal(false); + const [menuAnchor, setMenuAnchor] = + createSignal(null); + const setMenuOpen = (open: boolean) => { + setSpeedOpen(open); + if (!open) setMenuAnchor(null); + }; - const clipName = () => + const defaultClipName = () => hasMultipleRecordingSegments() ? `Clip ${segment().recordingSegment}` : "Clip"; + const clipName = () => segment().name?.trim() || defaultClipName(); + + const speedControl = (triggerClass?: string) => ( + + ); const clipTitle = () => { const seg = segment(); const parts = [clipName(), formatTime(seg.end - seg.start)]; if (seg.timescale !== 1) parts.push(`${seg.timescale}x`); + if (clipAudioMuted(seg) || clipVolume(seg) === 0) + parts.push("Muted"); + else if (clipVolume(seg) !== 1) + parts.push(`${Math.round(clipVolume(seg) * 100)}% volume`); + if (seg.hideCursor) parts.push("Cursor hidden"); return parts.join(" · "); }; @@ -833,6 +1212,24 @@ export function ClipTrack( if (editorState.timeline.splitPreview) setEditorState("timeline", "splitPreview", null); }} + onContextMenu={(e) => { + e.preventDefault(); + e.stopPropagation(); + if (split()) return; + const index = i(); + const selection = editorState.timeline.selection; + if ( + selection?.type !== "clip" || + !selection.indices.includes(index) + ) { + setEditorState("timeline", "selection", { + type: "clip", + indices: [index], + }); + } + setMenuAnchor({ x: e.clientX, y: e.clientY }); + setSpeedOpen(true); + }} onMouseDown={(e) => { e.stopPropagation(); if (e.button !== 0) return; @@ -936,15 +1333,17 @@ export function ClipTrack( } }} > - {segment().timescale === 1 && ( - - )} + {segment().timescale === 1 && + !clipAudioMuted(segment()) && + clipVolume(segment()) > 0 && ( + + )} - {(() => { - const seg = segment(); - - const speedControl = (triggerClass?: string) => ( - - projectActions.setClipSegmentTimescale(i(), mult) - } - onSetSpeedAudioMode={(mode) => - projectActions.setClipSegmentSpeedAudioMode(i(), mode) - } - /> - ); - - return ( - ( -
    - - {clipName()} - - - {formatTime(seg.end - seg.start)} - - {speedControl("shrink-0")} -
    - )} - compact={() => ( -
    - {speedControl("shrink-0")} - - {formatTime(seg.end - seg.start)} - -
    - )} - glyph={ - seg.timescale !== 1 - ? () => speedControl("shrink-0") - : undefined - } - /> - ); - })()} + ( +
    + {clipName()} + + {formatTime(segment().end - segment().start)} + + {speedControl("shrink-0")} +
    + )} + compact={() => ( +
    + {speedControl("shrink-0")} + + {formatTime(segment().end - segment().start)} + +
    + )} + glyph={() => speedControl("shrink-0")} + />
    Date: Sun, 13 Sep 2026 23:47:03 +0100 Subject: [PATCH 074/217] fix(editor): retain selection while hiding idle preview handles --- .../routes/editor/CanvasElementsOverlay.tsx | 7 ++- .../src/routes/editor/CaptionOverlay.tsx | 5 +- .../desktop/src/routes/editor/MaskOverlay.tsx | 5 +- apps/desktop/src/routes/editor/Player.tsx | 51 +++++++++++++++++-- .../desktop/src/routes/editor/TextOverlay.tsx | 11 +++- .../src/routes/editor/image-overlay.tsx | 5 +- 6 files changed, 75 insertions(+), 9 deletions(-) diff --git a/apps/desktop/src/routes/editor/CanvasElementsOverlay.tsx b/apps/desktop/src/routes/editor/CanvasElementsOverlay.tsx index d14bab3fd3f..3b017e92ce4 100644 --- a/apps/desktop/src/routes/editor/CanvasElementsOverlay.tsx +++ b/apps/desktop/src/routes/editor/CanvasElementsOverlay.tsx @@ -482,6 +482,7 @@ export function CanvasElementsOverlay(props: { size: Size }) { const rect = cameraRect(); const layout = latestFrameLayout(); if (!rect || !layout || !cameraResizable()) return null; + select("camera"); return { rect, layout, @@ -549,6 +550,7 @@ export function CanvasElementsOverlay(props: { size: Size }) { const rect = displayRect(); const layout = latestFrameLayout(); if (!rect || !layout || !displayDraggable()) return null; + select("display"); const { output_width: W, output_height: H } = layout; const contentAspect = (rect.w * W) / Math.max(rect.h * H, 1e-6); @@ -667,7 +669,10 @@ export function CanvasElementsOverlay(props: { size: Size }) { }); return ( -
    +
    +
    From ee4e52b1dd121bbbd0b7b8d5febc8157b5028870 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:55 +0100 Subject: [PATCH 051/217] feat(gpui): display transparent camera cutout frames --- apps/desktop-gpui/src/app_windows.rs | 2 +- apps/desktop-gpui/src/camera_blur.rs | 113 ++++++++++++++++++++++++- apps/desktop-gpui/src/camera_window.rs | 81 ++++++++++++++++-- apps/desktop-gpui/src/deeplink.rs | 1 + apps/desktop-gpui/src/feeds.rs | 1 + apps/desktop-gpui/src/store.rs | 5 +- 6 files changed, 191 insertions(+), 12 deletions(-) diff --git a/apps/desktop-gpui/src/app_windows.rs b/apps/desktop-gpui/src/app_windows.rs index d7ddafcc65a..f9f47c33e2f 100644 --- a/apps/desktop-gpui/src/app_windows.rs +++ b/apps/desktop-gpui/src/app_windows.rs @@ -2971,7 +2971,7 @@ pub(crate) fn refresh_linux_instant_camera( effects: LinuxCameraProcessing { mirrored: snapshot.state.mirrored, blur: match snapshot.state.background_blur { - BlurMode::Off => LinuxCameraBlur::Off, + BlurMode::Off | BlurMode::Remove => LinuxCameraBlur::Off, BlurMode::Light => LinuxCameraBlur::Light, BlurMode::Heavy => LinuxCameraBlur::Heavy, }, diff --git a/apps/desktop-gpui/src/camera_blur.rs b/apps/desktop-gpui/src/camera_blur.rs index a5adde3da16..1ff061685db 100644 --- a/apps/desktop-gpui/src/camera_blur.rs +++ b/apps/desktop-gpui/src/camera_blur.rs @@ -16,7 +16,7 @@ //! Imports are cached per ring slot (keyed by pixel-buffer pointer + //! ring generation), so the steady state creates no textures. //! 3. `BlurProcessor::process_into_encoder` runs the segmentation mask + -//! separable blur + composite, with the preview's 150ms inference interval +//! separable blur + composite, with the preview's 33ms inference interval //! (`CAMERA_PREVIEW_BLUR_INFERENCE_INTERVAL`, `camera.rs:50`). //! 4. `cap_rendering::RgbaToBgraSurfaceConverter` blits the RGBA output into //! a BGRA IOSurface-backed CVPixelBuffer from its own ring, and @@ -25,7 +25,7 @@ //! //! Everything runs on one dedicated `camera-blur` thread (the Tauri preview //! renders on a dedicated thread too, `camera.rs:466-490`), so the ~10ms -//! CoreML/CPU segmentation inference every 150ms never blocks the UI thread. +//! CoreML/CPU segmentation inference every 33ms never blocks the UI thread. //! The channel back to the window is how "what you see is what records" holds: //! this is the same `BlurProcessor` the editor/export camera layer runs //! (`cap-rendering/src/lib.rs:5742`), fed by the same `BackgroundBlurMode` @@ -57,7 +57,7 @@ use cidre::{arc, cv}; pub const BLUR_MAX_DIMS: (usize, usize) = (640, 360); /// `CAMERA_PREVIEW_BLUR_INFERENCE_INTERVAL` (`camera.rs:50`). -const BLUR_INFERENCE_INTERVAL: Duration = Duration::from_millis(150); +const BLUR_INFERENCE_INTERVAL: Duration = Duration::from_millis(33); /// `LOW_SPEC_PREVIEW_RAM_THRESHOLD_BYTES` (`camera.rs:66`): machines at or /// under 8GB never spin up the ONNX/wgpu blur processor -- the heaviest cost @@ -113,6 +113,8 @@ pub struct BlurJob { } pub struct BlurOutput { + pub mode: cap_camera_effects::BlurMode, + pub cutout: Option>, /// Blurred BGRA IOSurface pixel buffer, GPU work complete. pub buffer: SendPixelBuf, pub width: u32, @@ -291,7 +293,21 @@ impl Worker { let frame = runtime .block_on(pending.wait(&self.device, &self.queue)) .map_err(|error| anyhow!("{error}"))?; + let cutout = if mode == cap_camera_effects::BlurMode::Remove { + use core_foundation::base::TCFType as _; + use core_video::pixel_buffer::{CVPixelBuffer, CVPixelBufferRef}; + let raw = &*frame.pixel_buffer as *const cv::PixelBuf as CVPixelBufferRef; + let buffer = unsafe { CVPixelBuffer::wrap_under_get_rule(raw) }; + Some( + crate::camera_window::snapshot_preview(&buffer) + .context("cutout preview pixels unavailable")?, + ) + } else { + None + }; Ok(BlurOutput { + mode, + cutout, buffer: SendPixelBuf(frame.pixel_buffer), width: frame.width, height: frame.height, @@ -333,3 +349,94 @@ impl Worker { Ok(&self.imported.last().expect("just pushed").1) } } + +#[cfg(test)] +mod tests { + use super::*; + use cap_camera_effects::BlurMode; + use cidre::cf; + use core_foundation::base::TCFType as _; + use core_video::pixel_buffer::{CVPixelBuffer, CVPixelBufferRef}; + use std::time::Instant; + + #[test] + #[ignore = "requires CAP_CAMERA_EFFECT_TEST_FRAME containing a 640x360 RGBA webcam frame"] + fn native_cutout_preserves_alpha_through_iosurface_and_preview_image() { + let pixels = std::fs::read(std::env::var("CAP_CAMERA_EFFECT_TEST_FRAME").unwrap()).unwrap(); + let (width, height) = BLUR_MAX_DIMS; + assert_eq!(pixels.len(), width * height * 4); + let properties = cf::Dictionary::new(); + let attributes = cf::Dictionary::with_keys_values( + &[ + cv::pixel_buffer::keys::io_surf_props().as_ref(), + cv::pixel_buffer::keys::metal_compatibility().as_ref(), + ], + &[properties.as_ref(), cf::Boolean::value_true().as_ref()], + ) + .unwrap(); + let buffer = + cv::PixelBuf::new(width, height, cv::PixelFormat::_32_BGRA, Some(&attributes)).unwrap(); + let raw = &*buffer as *const cv::PixelBuf as CVPixelBufferRef; + let wrapped = unsafe { CVPixelBuffer::wrap_under_get_rule(raw) }; + assert_eq!(wrapped.lock_base_address(0), 0); + let stride = wrapped.get_bytes_per_row(); + let destination = unsafe { + std::slice::from_raw_parts_mut(wrapped.get_base_address().cast::(), stride * height) + }; + for (source, target) in pixels + .chunks_exact(width * 4) + .zip(destination.chunks_exact_mut(stride)) + { + for (source, target) in source.chunks_exact(4).zip(target.chunks_exact_mut(4)) { + target.copy_from_slice(&[source[2], source[1], source[0], source[3]]); + } + } + assert_eq!(wrapped.unlock_base_address(0), 0); + let runtime = tokio::runtime::Builder::new_current_thread() + .enable_time() + .build() + .unwrap(); + let (device, queue) = shared_device(&runtime).unwrap(); + let mut worker = Worker::new(device, queue).unwrap(); + for mode in [ + BlurMode::Remove, + BlurMode::Heavy, + BlurMode::Light, + BlurMode::Remove, + ] { + let mut timings = Vec::new(); + for _ in 0..30 { + let start = Instant::now(); + let output = worker + .process( + &runtime, + BlurJob { + buffer: SendPixelBuf(buffer.clone()), + width: width as u32, + height: height as u32, + ring_generation: 1, + mode, + }, + ) + .unwrap(); + timings.push(start.elapsed().as_secs_f64() * 1000.0); + assert_eq!(output.mode, mode); + if mode == BlurMode::Remove { + let image = output.cutout.unwrap(); + let bytes = image.as_bytes(0).unwrap(); + assert!(bytes.chunks_exact(4).any(|pixel| pixel[3] == 0)); + assert!(bytes.chunks_exact(4).any(|pixel| pixel[3] == 255)); + } else { + assert!(output.cutout.is_none()); + } + std::thread::sleep(Duration::from_millis(33).saturating_sub(start.elapsed())); + } + timings.sort_by(f64::total_cmp); + eprintln!( + "native {mode:?} preview worker: p50={:.2}ms p95={:.2}ms", + timings[15], timings[28] + ); + } + assert_eq!(worker.imported.len(), 1); + } +} diff --git a/apps/desktop-gpui/src/camera_window.rs b/apps/desktop-gpui/src/camera_window.rs index 90219560df1..c930b1d68b4 100644 --- a/apps/desktop-gpui/src/camera_window.rs +++ b/apps/desktop-gpui/src/camera_window.rs @@ -161,6 +161,9 @@ fn normalized_size(state: &CameraWindowState) -> f32 { /// the native page's issue overlay, and the native WGSL mask uses its own /// smaller radii; the 24px container is what users see. pub(crate) fn preview_radius(state: &CameraWindowState) -> f32 { + if cfg!(target_os = "macos") && state.background_blur == BlurMode::Remove { + return 0.; + } match state.shape { CameraShape::Round => clamp_size(state.size) / 2., _ => 24., @@ -168,6 +171,9 @@ pub(crate) fn preview_radius(state: &CameraWindowState) -> f32 { } fn picker_preview_radius(state: &CameraWindowState, picker_size: Option<(f32, f32)>) -> f32 { + if cfg!(target_os = "macos") && state.background_blur == BlurMode::Remove { + return 0.; + } match (state.shape, picker_size) { (CameraShape::Round, Some((width, height))) => { width.max(0.).min((height - CAMERA_TOOLBAR_HEIGHT).max(0.)) / 2. @@ -859,7 +865,7 @@ pub(crate) fn clear_parked_camera_preview(cx: &mut gpui::App) { } #[cfg(target_os = "macos")] -fn snapshot_preview( +pub(crate) fn snapshot_preview( buffer: &core_video::pixel_buffer::CVPixelBuffer, ) -> Option> { use core_video::pixel_buffer::{kCVPixelBufferLock_ReadOnly, kCVPixelFormatType_32BGRA}; @@ -895,7 +901,7 @@ fn snapshot_preview( let offset = source_y * stride + source_x * 4; let pixel = unsafe { std::slice::from_raw_parts(base.add(offset), 4) }; // RenderImage consumes BGRA bytes even though image::Frame wraps RgbaImage. - image::Rgba([pixel[0], pixel[1], pixel[2], 255]) + image::Rgba([pixel[0], pixel[1], pixel[2], pixel[3]]) }); Some(Arc::new(gpui::RenderImage::new(smallvec::smallvec![ image::Frame::new(image) @@ -912,6 +918,10 @@ fn snapshot_preview( /// goes through the parent [`CameraWindow`] instead, so a frame draw reuses /// the cached toolbar subtree. struct CameraPreviewView { + #[cfg(target_os = "macos")] + cutout_frame: Option>, + #[cfg(target_os = "macos")] + painted_cutout_frame: Option>, theme: Theme, radius: f32, /// Clamped bubble size, for the issue overlay's scaled text metrics. @@ -997,6 +1007,10 @@ impl CameraPreviewView { } }); Self { + #[cfg(target_os = "macos")] + cutout_frame: None, + #[cfg(target_os = "macos")] + painted_cutout_frame: None, theme, radius, size, @@ -1027,6 +1041,7 @@ impl CameraPreviewView { dims: (usize, usize), cx: &mut Context, ) { + self.cutout_frame = None; self.latest_frame = Some(frame); self.frame_dims = Some(dims); self.frame_revision = Some(self.selection_revision); @@ -1064,12 +1079,24 @@ impl CameraPreviewView { impl Render for CameraPreviewView { fn render(&mut self, window: &mut Window, _cx: &mut Context) -> impl IntoElement { + #[cfg(target_os = "macos")] + if self.painted_cutout_frame.as_ref().is_some_and(|painted| { + self.cutout_frame + .as_ref() + .is_none_or(|current| !Arc::ptr_eq(painted, current)) + }) && let Some(image) = self.painted_cutout_frame.take() + { + let _ = window.drop_image(image); + } if self .frame_revision .is_some_and(|revision| revision != self.selection_revision) { #[cfg(target_os = "macos")] { + if let Some(image) = self.cutout_frame.take() { + let _ = window.drop_image(image); + } self.latest_frame = None; } #[cfg(not(target_os = "macos"))] @@ -1096,11 +1123,15 @@ impl Render for CameraPreviewView { .size_full() .overflow_hidden() .rounded(px(radius)) - .bg(theme.gray_1) + .when(radius > 0., |this| this.bg(theme.gray_1)) .text_color(theme.gray_12); #[cfg(target_os = "macos")] - if let Some(buffer) = self.latest_frame.clone() { + if let Some(buffer) = self + .latest_frame + .clone() + .filter(|_| self.cutout_frame.is_none()) + { let frame_dims = self.frame_dims; let paints = self.paints.clone(); // Cover-fit painted straight from the IOSurface: `ObjectFit::Cover` @@ -1132,6 +1163,17 @@ impl Render for CameraPreviewView { ); } + #[cfg(target_os = "macos")] + if let Some(image) = self.cutout_frame.clone() { + self.painted_cutout_frame = Some(image.clone()); + self.paints.fetch_add(1, Ordering::Relaxed); + container = container.child( + gpui::img(image) + .size_full() + .object_fit(gpui::ObjectFit::Cover), + ); + } + #[cfg(not(target_os = "macos"))] if let Some(image) = self.latest_frame.clone() { self.paints.fetch_add(1, Ordering::Relaxed); @@ -1678,6 +1720,7 @@ impl CameraWindow { BlurMode::Off => None, BlurMode::Light => Some(cap_camera_effects::BlurMode::Light), BlurMode::Heavy => Some(cap_camera_effects::BlurMode::Heavy), + BlurMode::Remove => Some(cap_camera_effects::BlurMode::Remove), } } @@ -1748,7 +1791,7 @@ impl CameraWindow { ) -> bool { // A stale output can land after the mode flips back to Off; the raw // path is already painting again, so drop it. - if self.state.background_blur == BlurMode::Off + if self.active_blur_mode() != Some(output.mode) || Feeds::global(cx).read(cx).camera_preview_epoch() != Some(epoch) { return false; @@ -1763,8 +1806,10 @@ impl CameraWindow { let dims = (output.width as usize, output.height as usize); let raw = &*output.buffer.0 as *const cidre::cv::PixelBuf as CVPixelBufferRef; let buffer = unsafe { CVPixelBuffer::wrap_under_get_rule(raw) }; - self.preview - .update(cx, |preview, cx| preview.set_frame(buffer, dims, cx)); + self.preview.update(cx, |preview, cx| { + preview.set_frame(buffer, dims, cx); + preview.cutout_frame = output.cutout; + }); first } @@ -2848,6 +2893,28 @@ mod retained_preview_tests { assert_eq!(&image.as_bytes(0).unwrap()[..4], &[19, 71, 143, 255]); } + #[test] + fn cutout_preview_preserves_transparent_and_feathered_pixels() { + let buffer = buffer(3, 1); + assert_eq!(buffer.lock_base_address(0), 0); + let base = unsafe { buffer.get_base_address().cast::() }; + unsafe { + base.add(3).write(0); + base.add(7).write(128); + } + assert_eq!(buffer.unlock_base_address(0), 0); + let image = snapshot_preview(&buffer).unwrap(); + let bytes = image.as_bytes(0).unwrap(); + assert_eq!([bytes[3], bytes[7], bytes[11]], [0, 128, 255]); + let state = CameraWindowState { + background_blur: BlurMode::Remove, + ..Default::default() + }; + assert_eq!(preview_radius(&state), 0.0); + assert_eq!(picker_preview_radius(&state, Some((230.0, 286.0))), 0.0); + assert_eq!(state.shape, CameraShape::Round); + } + #[test] fn retained_preview_rejects_non_bgra_surfaces() { let buffer = CVPixelBuffer::new(kCVPixelFormatType_32ARGB, 32, 16, None).unwrap(); diff --git a/apps/desktop-gpui/src/deeplink.rs b/apps/desktop-gpui/src/deeplink.rs index 6ea0e331520..a4d52683e5f 100644 --- a/apps/desktop-gpui/src/deeplink.rs +++ b/apps/desktop-gpui/src/deeplink.rs @@ -512,6 +512,7 @@ impl DeepLinkAction { cap_project::BackgroundBlurMode::Off => crate::store::BlurMode::Off, cap_project::BackgroundBlurMode::Light => crate::store::BlurMode::Light, cap_project::BackgroundBlurMode::Heavy => crate::store::BlurMode::Heavy, + cap_project::BackgroundBlurMode::Remove => crate::store::BlurMode::Remove, }; crate::store::update(|persisted| { persisted.camera_window = Some(crate::store::CameraWindowState { diff --git a/apps/desktop-gpui/src/feeds.rs b/apps/desktop-gpui/src/feeds.rs index 05570c5dac3..1df51a623f3 100644 --- a/apps/desktop-gpui/src/feeds.rs +++ b/apps/desktop-gpui/src/feeds.rs @@ -845,6 +845,7 @@ impl Feeds { crate::store::BlurMode::Off => 0, crate::store::BlurMode::Light => 1, crate::store::BlurMode::Heavy => 2, + crate::store::BlurMode::Remove => 0, }, Ordering::Relaxed, ); diff --git a/apps/desktop-gpui/src/store.rs b/apps/desktop-gpui/src/store.rs index b217d5065ba..cd12fe31cf1 100644 --- a/apps/desktop-gpui/src/store.rs +++ b/apps/desktop-gpui/src/store.rs @@ -42,6 +42,7 @@ pub enum BlurMode { Off, Light, Heavy, + Remove, } impl BlurMode { @@ -49,7 +50,8 @@ impl BlurMode { match self { Self::Off => Self::Light, Self::Light => Self::Heavy, - Self::Heavy => Self::Off, + Self::Heavy if cfg!(target_os = "macos") => Self::Remove, + Self::Heavy | Self::Remove => Self::Off, } } @@ -60,6 +62,7 @@ impl BlurMode { Self::Off => None, Self::Light => Some("Light"), Self::Heavy => Some("Heavy"), + Self::Remove => Some("Cutout"), } } } From 897010b3266694bd394b4606d6065a5cc57d232f Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:55 +0100 Subject: [PATCH 052/217] feat(desktop): add camera background controls --- apps/desktop-gpui/src/editor_tabs.rs | 12 ++++-- .../src/components/CameraPreviewChrome.tsx | 23 +++++++++-- .../src/routes/editor/ConfigSidebar.tsx | 21 +++------- .../src/utils/camera-background.test.ts | 41 +++++++++++++++++++ 4 files changed, 74 insertions(+), 23 deletions(-) create mode 100644 apps/desktop/src/utils/camera-background.test.ts diff --git a/apps/desktop-gpui/src/editor_tabs.rs b/apps/desktop-gpui/src/editor_tabs.rs index 5a0b24829fe..2728721d90f 100644 --- a/apps/desktop-gpui/src/editor_tabs.rs +++ b/apps/desktop-gpui/src/editor_tabs.rs @@ -51,11 +51,12 @@ pub const CAMERA_SHAPES: [(CameraShape, &str); 2] = [ (CameraShape::Source, "Source"), ]; -/// The three `backgroundBlur` rows (`:3078-3082`). -pub const CAMERA_BLUR_MODES: [(BackgroundBlurMode, &str); 3] = [ +pub const CAMERA_BLUR_MODES: &[(BackgroundBlurMode, &str)] = &[ (BackgroundBlurMode::Off, "Off"), (BackgroundBlurMode::Light, "Light Blur"), (BackgroundBlurMode::Heavy, "Heavy Blur"), + #[cfg(target_os = "macos")] + (BackgroundBlurMode::Remove, "Remove Background"), ]; /// `CORNER_STYLE_OPTIONS` (`:399-402`). @@ -1266,7 +1267,7 @@ impl EditorWindow { }), ), )) - .child(ui::Subfield::plain(&theme, "Background Blur").child( + .child(ui::Subfield::plain(&theme, "Background").child( div().w(px(160.)).child(self.menu_select( SidebarMenu::CameraBlur, "camera-blur", @@ -3394,7 +3395,10 @@ mod tests { assert_eq!(KEYBOARD_POSITIONS.len(), 6); assert_eq!(FONT_OPTIONS.len(), 3); assert_eq!(TEXT_WEIGHTS.len(), 3); - assert_eq!(CAMERA_BLUR_MODES.len(), 3); + assert_eq!( + CAMERA_BLUR_MODES.len(), + if cfg!(target_os = "macos") { 4 } else { 3 } + ); // `MODEL_OPTIONS` (`CaptionsTab.tsx:87-116`): two Parakeet entries in // front of the two Whisper ones, so the Intel-macOS slice keeps // exactly the Whisper pair. diff --git a/apps/desktop/src/components/CameraPreviewChrome.tsx b/apps/desktop/src/components/CameraPreviewChrome.tsx index 2477be89c99..b57838a0f0d 100644 --- a/apps/desktop/src/components/CameraPreviewChrome.tsx +++ b/apps/desktop/src/components/CameraPreviewChrome.tsx @@ -1,4 +1,5 @@ import { ToggleButton as KToggleButton } from "@kobalte/core/toggle-button"; +import { type as ostype } from "@tauri-apps/plugin-os"; import { cx } from "cva"; import { type ComponentProps, @@ -26,7 +27,14 @@ export const CAMERA_TOOLBAR_HEIGHT = 56; export const CAMERA_WINDOW_STATE_STORAGE_KEY = "cameraWindowState"; export const CAMERA_WIDE_ASPECT_RATIO = 16 / 9; -const BLUR_MODES: BackgroundBlurMode[] = ["off", "light", "heavy"]; +export const cameraBackgroundOptions = ( + macOS: boolean, +): { name: string; value: BackgroundBlurMode }[] => [ + { name: "Off", value: "off" }, + { name: "Light Blur", value: "light" }, + { name: "Heavy Blur", value: "heavy" }, + ...(macOS ? [{ name: "Remove Background", value: "remove" as const }] : []), +]; const RESIZE_CORNERS = ["nw", "ne", "sw", "se"] as const; type ResizeCorner = (typeof RESIZE_CORNERS)[number]; @@ -78,12 +86,14 @@ export const normalizeBackgroundBlurMode = ( export const cycleBlurMode = ( current: BackgroundBlurMode | boolean, + macOS = false, ): BackgroundBlurMode => { if (typeof current === "boolean") { return current ? "heavy" : "light"; } - const idx = BLUR_MODES.indexOf(current); - return BLUR_MODES[(idx + 1) % BLUR_MODES.length]; + const modes = cameraBackgroundOptions(macOS).map((option) => option.value); + const idx = modes.indexOf(current); + return modes[(idx + 1) % modes.length]; }; export const blurModeLabel = (mode: BackgroundBlurMode | boolean): string => { @@ -93,6 +103,8 @@ export const blurModeLabel = (mode: BackgroundBlurMode | boolean): string => { return "Light"; case "heavy": return "Heavy"; + case "remove": + return "Cutout"; default: return ""; } @@ -106,6 +118,7 @@ export const cameraToolbarScale = (size: number) => { }; export function cameraBorderRadius(state: CameraWindowState) { + if (state.backgroundBlur === "remove") return "0px"; if (state.shape === "round") return "9999px"; const normalized = (clampCameraSize(state.size) - CAMERA_MIN_SIZE) / @@ -182,7 +195,9 @@ export function CameraPreviewToolbar(props: { props.state.backgroundBlur !== false } onClick={() => - props.setState("backgroundBlur", (mode) => cycleBlurMode(mode)) + props.setState("backgroundBlur", (mode) => + cycleBlurMode(mode, ostype() === "macos"), + ) } >
    diff --git a/apps/desktop/src/routes/editor/ConfigSidebar.tsx b/apps/desktop/src/routes/editor/ConfigSidebar.tsx index a95b1977b20..3b4875f00ea 100644 --- a/apps/desktop/src/routes/editor/ConfigSidebar.tsx +++ b/apps/desktop/src/routes/editor/ConfigSidebar.tsx @@ -45,6 +45,7 @@ import { import { createStore, produce } from "solid-js/store"; import { Dynamic } from "solid-js/web"; import toast from "solid-toast"; +import { cameraBackgroundOptions } from "~/components/CameraPreviewChrome"; import { Toggle } from "~/components/Toggle"; import { animatedGradientsStore, @@ -3257,25 +3258,15 @@ function CameraConfig(props: { scrollRef: HTMLDivElement }) { onChange={(mirror) => setProject("camera", "mirror", mirror)} /> - + - options={[ - { name: "Off", value: "off" }, - { name: "Light Blur", value: "light" }, - { name: "Heavy Blur", value: "heavy" }, - ]} + options={cameraBackgroundOptions(ostype() === "macos")} optionValue="value" optionTextValue="name" value={ - ( - [ - { name: "Off", value: "off" }, - { name: "Light Blur", value: "light" }, - { name: "Heavy Blur", value: "heavy" }, - ] as const - ).find( - (v) => - v.value === + cameraBackgroundOptions(ostype() === "macos").find( + (option) => + option.value === (project.camera.backgroundBlur?.mode ?? "off"), ) ?? { name: "Off", value: "off" } } diff --git a/apps/desktop/src/utils/camera-background.test.ts b/apps/desktop/src/utils/camera-background.test.ts new file mode 100644 index 00000000000..c62d18a8fbb --- /dev/null +++ b/apps/desktop/src/utils/camera-background.test.ts @@ -0,0 +1,41 @@ +import { describe, expect, it } from "vitest"; +import { + cameraBackgroundOptions, + cameraBorderRadius, + cycleBlurMode, + getDefaultCameraWindowState, + normalizeBackgroundBlurMode, +} from "../components/CameraPreviewChrome"; + +describe("camera background effects", () => { + it("offers removal only on macOS and keeps the existing modes everywhere", () => { + expect( + cameraBackgroundOptions(false).map((option) => option.value), + ).toEqual(["off", "light", "heavy"]); + expect(cameraBackgroundOptions(true).map((option) => option.value)).toEqual( + ["off", "light", "heavy", "remove"], + ); + expect(cycleBlurMode("heavy", true)).toBe("remove"); + expect(cycleBlurMode("remove", true)).toBe("off"); + expect(cycleBlurMode("heavy", false)).toBe("off"); + }); + + it("preserves legacy boolean settings", () => { + expect(normalizeBackgroundBlurMode(true)).toBe("heavy"); + expect(normalizeBackgroundBlurMode(false)).toBe("off"); + expect(normalizeBackgroundBlurMode(undefined)).toBe("off"); + expect(normalizeBackgroundBlurMode("remove")).toBe("remove"); + }); + + it("removes the clipping shape without overwriting the stored shape", () => { + const state = { + ...getDefaultCameraWindowState(), + backgroundBlur: "remove" as const, + }; + expect(cameraBorderRadius(state)).toBe("0px"); + expect(state.shape).toBe("round"); + expect(cameraBorderRadius({ ...state, backgroundBlur: "off" })).toBe( + "9999px", + ); + }); +}); From 7bdf8080592c45b4085ac2a872935e1e5daaede0 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:56 +0100 Subject: [PATCH 053/217] fix(camera): improve resize handle contrast in both apps --- apps/desktop-gpui/src/camera_window.rs | 122 ++++++++++++------ .../src/components/CameraPreviewChrome.tsx | 37 +++++- 2 files changed, 112 insertions(+), 47 deletions(-) diff --git a/apps/desktop-gpui/src/camera_window.rs b/apps/desktop-gpui/src/camera_window.rs index c930b1d68b4..394b0974101 100644 --- a/apps/desktop-gpui/src/camera_window.rs +++ b/apps/desktop-gpui/src/camera_window.rs @@ -2183,14 +2183,11 @@ impl CameraWindow { ) } - /// `CameraResizeHandles` + `ResizeCornerHandle` - /// (`CameraPreviewChrome.tsx:218-357`): a 28px hit area per corner, with - /// a 14px white 2px-bordered bracket inset 6px, rounded 6px on its outer - /// corner. Opacity 0 hidden / 0.7 with chrome visible / 1.0 hovered or - /// resizing. The 150ms transition, the hover `scale-110` and the - /// `drop-shadow` filter have no hooks here (no animation pass, no - /// transform, and a box shadow would shadow the bracket's full rect, not - /// its L-shape). + /// `CameraResizeHandles` + `ResizeCornerHandle`: a 28px hit area in each + /// corner holding a 14px white 2px L-bracket, 85% while the chrome is + /// visible and 100% while hovered or resizing. A 50% black bracket sits + /// underneath, 1px proud on every edge, so the white L keeps a contour + /// over a light desktop (cutout mode has no backdrop behind it). fn render_resize_handles(&self, cx: &mut Context) -> impl IntoElement { let visible = self.chrome_visible || self.resizing.is_some(); let mut layer = div() @@ -2213,51 +2210,94 @@ impl CameraWindow { .is_some_and(|drag| drag.corner == corner) || self.hovered_handle == Some(corner); - let mut bracket = div() + // 14px white L-bracket 6px in from the corner, with a thicker + // 50% black bracket underneath that pokes out 1px on every edge + // so the L reads as a contour over a light desktop too (cutout + // mode has no backdrop). Mirrors `ResizeCornerHandle` in + // `CameraPreviewChrome.tsx`. + let outline = div() .absolute() - .size(px(14.)) - .border_color(gpui::white()) + .size(px(16.)) + .border_color(gpui::hsla(0., 0., 0., 0.5)); + let bracket = div().absolute().size(px(14.)).border_color(gpui::white()); + let (outline, bracket) = match corner { + ResizeCorner::NorthWest => ( + outline + .top(px(5.)) + .left(px(5.)) + .border_t_4() + .border_l_4() + .rounded_tl(px(7.)), + bracket + .top(px(6.)) + .left(px(6.)) + .border_t_2() + .border_l_2() + .rounded_tl(px(6.)), + ), + ResizeCorner::NorthEast => ( + outline + .top(px(5.)) + .right(px(5.)) + .border_t_4() + .border_r_4() + .rounded_tr(px(7.)), + bracket + .top(px(6.)) + .right(px(6.)) + .border_t_2() + .border_r_2() + .rounded_tr(px(6.)), + ), + ResizeCorner::SouthWest => ( + outline + .bottom(px(5.)) + .left(px(5.)) + .border_b_4() + .border_l_4() + .rounded_bl(px(7.)), + bracket + .bottom(px(6.)) + .left(px(6.)) + .border_b_2() + .border_l_2() + .rounded_bl(px(6.)), + ), + ResizeCorner::SouthEast => ( + outline + .bottom(px(5.)) + .right(px(5.)) + .border_b_4() + .border_r_4() + .rounded_br(px(7.)), + bracket + .bottom(px(6.)) + .right(px(6.)) + .border_b_2() + .border_r_2() + .rounded_br(px(6.)), + ), + }; + let glyph = div() + .absolute() + .inset_0() .opacity(if active { 1.0 } else if visible { - 0.7 + 0.85 } else { 0.0 - }); - bracket = match corner { - ResizeCorner::NorthWest => bracket - .top(px(6.)) - .left(px(6.)) - .border_t_2() - .border_l_2() - .rounded_tl(px(6.)), - ResizeCorner::NorthEast => bracket - .top(px(6.)) - .right(px(6.)) - .border_t_2() - .border_r_2() - .rounded_tr(px(6.)), - ResizeCorner::SouthWest => bracket - .bottom(px(6.)) - .left(px(6.)) - .border_b_2() - .border_l_2() - .rounded_bl(px(6.)), - ResizeCorner::SouthEast => bracket - .bottom(px(6.)) - .right(px(6.)) - .border_b_2() - .border_r_2() - .rounded_br(px(6.)), - }; + }) + .child(outline) + .child(bracket); // Like the toolbar buttons, no `.occlude()`: it would knock the // root's hover flag false over the 28px corner hit areas (even // while the brackets are invisible) and hide the chrome mid- // travel. The handle's own on_mouse_down stops propagation, which // is what keeps a resize press from starting a window move. - let mut handle = div().id(id).absolute().size(px(28.)).child(bracket); - // `cursor-nw-resize` and friends (`CameraPreviewChrome.tsx:306-317`). + let mut handle = div().id(id).absolute().size(px(28.)).child(glyph); + // `cursor-nw-resize` and friends (`CameraPreviewChrome.tsx`). handle = match corner { ResizeCorner::NorthWest => handle .top_0() diff --git a/apps/desktop/src/components/CameraPreviewChrome.tsx b/apps/desktop/src/components/CameraPreviewChrome.tsx index b57838a0f0d..e9e1f50f3aa 100644 --- a/apps/desktop/src/components/CameraPreviewChrome.tsx +++ b/apps/desktop/src/components/CameraPreviewChrome.tsx @@ -344,6 +344,22 @@ function ResizeCornerHandle(props: { } }; + // A thicker dark bracket sits 1px outside the white one on every edge so + // the L reads as a contour on light desktops too (cutout mode has no + // backdrop behind it). Same construction as the GPUI window. + const outlinePositionClass = () => { + switch (props.corner) { + case "nw": + return "top-[5px] left-[5px] border-t-4 border-l-4 rounded-tl-[7px]"; + case "ne": + return "top-[5px] right-[5px] border-t-4 border-r-4 rounded-tr-[7px]"; + case "sw": + return "bottom-[5px] left-[5px] border-b-4 border-l-4 rounded-bl-[7px]"; + case "se": + return "bottom-[5px] right-[5px] border-b-4 border-r-4 rounded-br-[7px]"; + } + }; + return (
    + > +
    +
    +
    ); } From 4b76bc7d4ec9afc61435112a76cd10a3512cf0a8 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:56 +0100 Subject: [PATCH 054/217] fix(desktop): retain stopped camera placement in Studio --- apps/desktop-gpui/src/app_windows.rs | 10 ++ apps/desktop-gpui/src/camera_window.rs | 45 ++++++ apps/desktop-gpui/src/editor_preparing.rs | 6 +- apps/desktop-gpui/src/recording.rs | 136 +++++++++++++++-- apps/desktop-gpui/src/session.rs | 21 ++- apps/desktop/src-tauri/src/recording.rs | 170 ++++++++++++++++++++-- 6 files changed, 359 insertions(+), 29 deletions(-) diff --git a/apps/desktop-gpui/src/app_windows.rs b/apps/desktop-gpui/src/app_windows.rs index f9f47c33e2f..4b2e4304808 100644 --- a/apps/desktop-gpui/src/app_windows.rs +++ b/apps/desktop-gpui/src/app_windows.rs @@ -4052,6 +4052,16 @@ fn camera_frame(cx: &mut App) -> Option { .filter(|camera| camera.snapshot.bounds.width > 0. && camera.snapshot.bounds.height > 0.) } +pub(crate) fn studio_camera_snapshot( + target: &ScreenCaptureTarget, + cx: &mut App, +) -> Option { + let handle = cx.global::().camera?; + handle + .update(cx, |view, window, _| view.studio_snapshot(window, target)) + .ok() +} + fn visible_camera_frame(cx: &mut App) -> Option { if camera_preview_is_inline(cx) { return None; diff --git a/apps/desktop-gpui/src/camera_window.rs b/apps/desktop-gpui/src/camera_window.rs index 394b0974101..59240b7128d 100644 --- a/apps/desktop-gpui/src/camera_window.rs +++ b/apps/desktop-gpui/src/camera_window.rs @@ -1352,6 +1352,51 @@ pub struct CameraWindow { } impl CameraWindow { + pub(crate) fn studio_snapshot( + &self, + window: &Window, + target: &cap_recording::screen_capture::ScreenCaptureTarget, + ) -> crate::recording::StudioCameraSnapshot { + let placement = (|| { + if self.inline { + return None; + } + #[cfg(target_os = "macos")] + let bounds = { + let bounds = window.bounds(); + [ + f64::from(f32::from(bounds.origin.x)), + f64::from(f32::from(bounds.origin.y)) + f64::from(CAMERA_TOOLBAR_HEIGHT), + f64::from(f32::from(bounds.size.width)), + f64::from(f32::from(bounds.size.height) - CAMERA_TOOLBAR_HEIGHT), + ] + }; + #[cfg(target_os = "windows")] + let bounds = { + let native = platform::native_window(window)?; + let (x, y, width, height) = platform::window_frame(&native); + let toolbar = f64::from(CAMERA_TOOLBAR_HEIGHT * window.scale_factor()); + [x, y + toolbar, width, height - toolbar] + }; + #[cfg(target_os = "linux")] + let bounds = { + let snapshot = self.recording_snapshot(window).ok()?; + let rect = snapshot.content_rect; + [ + f64::from(rect.x), + f64::from(rect.y), + f64::from(rect.width), + f64::from(rect.height), + ] + }; + cap_recording::camera_placement::recording_camera_placement(target, bounds) + })(); + crate::recording::StudioCameraSnapshot { + blur: self.state.background_blur, + placement, + } + } + #[cfg(target_os = "linux")] pub(crate) fn recording_snapshot( &self, diff --git a/apps/desktop-gpui/src/editor_preparing.rs b/apps/desktop-gpui/src/editor_preparing.rs index 9c938990e91..63641cf9dd7 100644 --- a/apps/desktop-gpui/src/editor_preparing.rs +++ b/apps/desktop-gpui/src/editor_preparing.rs @@ -664,8 +664,10 @@ fn adapt( let live = sources.live().ok_or_else(ended)?; let recording_meta = live.metadata().ok_or_else(ended)?.clone(); let studio = recording_meta.studio_meta().ok_or_else(ended)?; - let mut project = - crate::recording::preparing_presentation(live.configuration().ok_or_else(ended)?)?; + let mut project = crate::recording::preparing_presentation( + live.configuration().ok_or_else(ended)?, + control.finalization.camera_snapshot(), + )?; if project.clips.is_empty() { project.clips = cap_editor::initial_clip_configuration(&recording_meta.project_path, studio); diff --git a/apps/desktop-gpui/src/recording.rs b/apps/desktop-gpui/src/recording.rs index 80ef6472448..898da73521c 100644 --- a/apps/desktop-gpui/src/recording.rs +++ b/apps/desktop-gpui/src/recording.rs @@ -411,6 +411,7 @@ async fn finalize_studio( completed: studio_recording::CompletedRecording, capture_target: ScreenCaptureTarget, progress: Option, + camera_snapshot: Option, ) -> anyhow::Result { let started = std::time::Instant::now(); let project_path = completed.project_path.clone(); @@ -454,16 +455,21 @@ async fn finalize_studio( elapsed_ms = thumbnail_started.elapsed().as_secs_f64() * 1000.0, "Studio stop thumbnail complete" ); - apply_camera_blur_to_project_config(&project_path, current_camera_blur()); + let placement = completed + .meta + .camera_path() + .and_then(|_| camera_snapshot.and_then(|snapshot| snapshot.placement)); + apply_camera_preview_to_project_config( + &project_path, + camera_snapshot.map_or_else(current_camera_blur, |snapshot| snapshot.blur), + placement, + ); let library = serde_json::from_value(serde_json::Value::Object( crate::store::store_section("animated_gradients"), )) .unwrap_or_default(); apply_animated_gradient_to_project_config(&project_path, &capture_target, &library); - if crate::store::store_section("audio_enhancement") - .get("enabledByDefault") - .and_then(serde_json::Value::as_bool) - .unwrap_or(false) + if crate::store::studio_sound_by_default() && let Err(error) = enable_studio_sound(&project_path) { tracing::warn!(%error, "Could not apply the Studio Sound default"); @@ -543,8 +549,15 @@ where pub(crate) type CaptureStopFuture = std::pin::Pin)> + Send>>; +#[derive(Clone, Copy, Debug)] +pub(crate) struct StudioCameraSnapshot { + pub blur: crate::store::BlurMode, + pub placement: Option, +} + #[derive(Clone, Default)] struct StudioFinalizationState { + camera_snapshot: Option, capture_stopped: bool, preparing_decided: bool, preparing: Option, @@ -568,6 +581,10 @@ struct StudioFinalizationTarget { } impl StudioFinalization { + pub(crate) fn camera_snapshot(&self) -> Option { + self.state.borrow().camera_snapshot + } + pub(crate) fn channel( project_path: PathBuf, generation: u64, @@ -670,6 +687,11 @@ impl StudioFinalization { } impl StudioFinalizationPublisher { + pub(crate) fn set_camera_snapshot(&self, snapshot: Option) { + self.state + .send_modify(|state| state.camera_snapshot = snapshot); + } + fn claim_preparing( &self, completed: &studio_recording::CompletedRecording, @@ -831,6 +853,7 @@ impl ActiveRecording { pub(crate) fn clean_studio_stop_handle( &self, progress: Option, + camera_snapshot: Option, ) -> Option { let Handle::Studio(handle) = &self.handle else { return None; @@ -842,7 +865,7 @@ impl ActiveRecording { if let Some(progress) = &progress { progress.capture_stopped(); } - finalize_studio(completed, capture_target, progress.clone()) + finalize_studio(completed, capture_target, progress.clone(), camera_snapshot) }) .await; if let Some(progress) = progress { @@ -856,6 +879,7 @@ impl ActiveRecording { pub(crate) fn clean_studio_stop_handle( &self, progress: Option, + camera_snapshot: Option, ) -> Option { let Handle::Studio(handle) = &self.handle else { return None; @@ -875,7 +899,7 @@ impl ActiveRecording { if let Some(progress) = &progress { progress.capture_stopped(); } - finalize_studio(completed, capture_target, progress.clone()) + finalize_studio(completed, capture_target, progress.clone(), camera_snapshot) }, ) .await; @@ -943,7 +967,7 @@ impl ActiveRecording { }) .await } else { - joined_instant_result(lifecycle, active.stop(preserve_local)).await + joined_instant_result(lifecycle, active.stop(preserve_local, None)).await } }, cancel, @@ -1129,7 +1153,11 @@ impl ActiveRecording { Ok(()) } - pub async fn stop(self, preserve_local: bool) -> anyhow::Result { + pub(crate) async fn stop( + self, + preserve_local: bool, + camera_snapshot: Option, + ) -> anyhow::Result { #[cfg(target_os = "linux")] let _operation = self.instant_operation.lock().await; let mut upload_guard = match self.instant_upload.as_ref() { @@ -1141,7 +1169,7 @@ impl ActiveRecording { Handle::Studio(handle) => { let capture_target = handle.capture_target.clone(); let completed = handle.stop().await?; - finalize_studio(completed, capture_target, None).await + finalize_studio(completed, capture_target, None, camera_snapshot).await } Handle::Instant(handle) => { let result = async { @@ -1422,12 +1450,25 @@ fn write_bundle_thumbnail(project_dir: &std::path::Path, source_video: &std::pat pub(crate) fn preparing_presentation( project: &cap_project::ProjectConfiguration, + camera_snapshot: Option, ) -> Result { let library = serde_json::from_value(serde_json::Value::Object(crate::store::store_section( "animated_gradients", ))) .map_err(|error| format!("Preparing appearance preferences did not parse: {error}"))?; - preparing_presentation_for(project, current_camera_blur(), &library) + let mut config = preparing_presentation_for( + project, + camera_snapshot.map_or_else(current_camera_blur, |snapshot| snapshot.blur), + &library, + )?; + if crate::store::studio_sound_by_default() { + config.audio.improve = true; + config.audio.isolation = crate::store::studio_sound_isolation(); + } + if let Some(placement) = camera_snapshot.and_then(|snapshot| snapshot.placement) { + placement.apply(&mut config.camera); + } + Ok(config) } fn preparing_presentation_for( @@ -1466,6 +1507,7 @@ fn blur_mode_json(blur: crate::store::BlurMode) -> &'static str { crate::store::BlurMode::Off => "off", crate::store::BlurMode::Light => "light", crate::store::BlurMode::Heavy => "heavy", + crate::store::BlurMode::Remove => "remove", } } @@ -1488,6 +1530,10 @@ fn enable_studio_sound(project_path: &std::path::Path) -> std::io::Result<()> { ) })?; audio.insert("improve".into(), serde_json::Value::Bool(true)); + audio.insert( + "isolation".into(), + serde_json::to_value(crate::store::studio_sound_isolation())?, + ); let temp = path.with_extension(format!("studio-sound-{}.tmp", crate::store::new_uuid_v4())); let result = std::fs::write(&temp, serde_json::to_vec_pretty(&config)?) .and_then(|()| std::fs::rename(&temp, path)); @@ -1612,9 +1658,18 @@ fn apply_initial_animated_gradient( /// discipline applied to the other shared file, including its refusal: a config /// that does not parse, or whose `camera` is not an object, is left alone /// rather than replaced. -pub fn apply_camera_blur_to_project_config( +#[cfg(test)] +fn apply_camera_blur_to_project_config( project_dir: &std::path::Path, blur: crate::store::BlurMode, +) -> bool { + apply_camera_preview_to_project_config(project_dir, blur, None) +} + +fn apply_camera_preview_to_project_config( + project_dir: &std::path::Path, + blur: crate::store::BlurMode, + placement: Option, ) -> bool { use serde_json::{Map, Value}; @@ -1656,6 +1711,23 @@ pub fn apply_camera_blur_to_project_config( Value::String(blur_mode_json(blur).to_string()), ); + if let Some(placement) = placement { + let mut positioned = cap_project::Camera::default(); + placement.apply(&mut positioned); + let Ok(Value::Object(position)) = serde_json::to_value(positioned.position) else { + return false; + }; + let Some(saved_position) = camera + .entry("position") + .or_insert_with(|| Value::Object(Map::new())) + .as_object_mut() + else { + return false; + }; + saved_position.extend(position); + camera.insert("manualPosition".into(), Value::Null); + } + // Same shape `ProjectConfiguration::write` produces (serde_json pretty), // via a temp file so a crash mid-write cannot leave a project whose config // neither app can parse. @@ -3283,6 +3355,45 @@ mod tests { std::fs::remove_dir_all(&dir).ok(); } + #[test] + fn bridging_camera_placement_preserves_unknown_fields_and_saved_edits() { + let dir = temp_project("camera-placement"); + let path = dir.join("project-config.json"); + let original = serde_json::json!({ + "camera": { + "size": 41.0, + "mirror": true, + "manualPosition": { "x": 0.1, "y": 0.9 }, + "position": { "x": "right", "y": "bottom", "futureAxis": 1 }, + "backgroundBlur": { "mode": "light", "futureSetting": 123 }, + "futureCameraSetting": "retained" + }, + "timeline": { "segments": [{ "start": 1.0, "end": 7200.0 }] }, + "futureProjectSetting": [1, 2, 3] + }); + let placement = cap_recording::camera_placement::RecordingCameraPlacement::from_bounds( + [860.0, 20.0, 200.0, 200.0], + [0.0, 0.0, 1920.0, 1080.0], + ) + .unwrap(); + for blur in [BlurMode::Off, BlurMode::Remove] { + std::fs::write(&path, serde_json::to_vec(&original).unwrap()).unwrap(); + assert!(apply_camera_preview_to_project_config( + &dir, + blur, + Some(placement) + )); + let written: Value = serde_json::from_slice(&std::fs::read(&path).unwrap()).unwrap(); + let mut expected = original.clone(); + expected["camera"]["backgroundBlur"]["mode"] = blur_mode_json(blur).into(); + expected["camera"]["manualPosition"] = Value::Null; + expected["camera"]["position"]["x"] = "center".into(); + expected["camera"]["position"]["y"] = "top".into(); + assert_eq!(written, expected); + } + std::fs::remove_dir_all(dir).unwrap(); + } + /// A config written by a build that predates `backgroundBlur` (or one that /// never had a camera section at all) gets the key created rather than /// being skipped. @@ -3350,6 +3461,7 @@ mod tests { (BlurMode::Off, "off"), (BlurMode::Light, "light"), (BlurMode::Heavy, "heavy"), + (BlurMode::Remove, "remove"), ] { assert_eq!(blur_mode_json(mode), json); let parsed: cap_project::BackgroundBlurMode = diff --git a/apps/desktop-gpui/src/session.rs b/apps/desktop-gpui/src/session.rs index b00b3e58d59..252d6c1ab12 100644 --- a/apps/desktop-gpui/src/session.rs +++ b/apps/desktop-gpui/src/session.rs @@ -1066,6 +1066,11 @@ impl RecordingSession { cx.open_url(&format!("{link}{separator}recordingStopped=1")); } let studio_project_path = active.project_dir.clone(); + let camera_snapshot = self.last_config.as_ref().and_then(|config| { + (config.mode == recording::RecordingMode::Studio && config.camera.is_some()) + .then(|| crate::app_windows::studio_camera_snapshot(&config.target, cx)) + .flatten() + }); let (studio_progress, studio_finalization) = if prepares_studio_editor( self.mode(), low_storage, @@ -1078,6 +1083,7 @@ impl RecordingSession { studio_project_path.clone(), self.recording_generation, ); + publisher.set_camera_snapshot(camera_snapshot); (Some(publisher), Some(finalization)) } else { (None, None) @@ -1085,15 +1091,15 @@ impl RecordingSession { #[cfg(target_os = "linux")] let retained_stop = active .instant_stop_handle(low_storage || recording_failed, recording_failed) - .or_else(|| active.clean_studio_stop_handle(studio_progress)); + .or_else(|| active.clean_studio_stop_handle(studio_progress, camera_snapshot)); #[cfg(windows)] let retained_stop = recording_failed .then(|| active.failed_stop_handle()) - .or_else(|| active.clean_studio_stop_handle(studio_progress)); + .or_else(|| active.clean_studio_stop_handle(studio_progress, camera_snapshot)); #[cfg(target_os = "macos")] let retained_stop = recording_failed .then(|| active.failed_stop_handle()) - .or_else(|| active.clean_studio_stop_handle(studio_progress)); + .or_else(|| active.clean_studio_stop_handle(studio_progress, camera_snapshot)); #[cfg(not(any(target_os = "linux", target_os = "macos", windows)))] let retained_stop: Option = None; let retains_active = retained_stop.is_some(); @@ -1101,7 +1107,14 @@ impl RecordingSession { Some(future) => future, None => { let active = self.active.take().unwrap(); - Box::pin(async move { (true, active.stop(low_storage || recording_failed).await) }) + Box::pin(async move { + ( + true, + active + .stop(low_storage || recording_failed, camera_snapshot) + .await, + ) + }) } }; #[cfg(target_os = "linux")] diff --git a/apps/desktop/src-tauri/src/recording.rs b/apps/desktop/src-tauri/src/recording.rs index 570912a58d4..33f35c52c96 100644 --- a/apps/desktop/src-tauri/src/recording.rs +++ b/apps/desktop/src-tauri/src/recording.rs @@ -56,7 +56,7 @@ use tauri_specta::Event; use tokio_util::sync::CancellationToken; use tracing::*; -use crate::camera::{CameraPreviewManager, CameraPreviewShape}; +use crate::camera::CameraPreviewShape; #[cfg(target_os = "macos")] use crate::general_settings; use crate::permissions; @@ -593,6 +593,7 @@ pub struct InProgressRecordingCommon { pub inputs: StartRecordingInputs, pub recording_dir: PathBuf, pub health: Arc, + camera_snapshot: Arc>, } #[cfg(target_os = "linux")] @@ -2585,6 +2586,7 @@ async fn start_recording_prepared( inputs: inputs.clone(), recording_dir: recording_dir.clone(), health, + camera_snapshot: Arc::new(std::sync::OnceLock::new()), }; #[cfg(target_os = "macos")] @@ -4433,6 +4435,11 @@ async fn control_studio_recording( } else { None }; + if action == StudioTerminalAction::Stop { + common.camera_snapshot.get_or_init(|| { + StudioCameraSnapshot::capture(app, ¤t_state, &common.inputs.capture_target) + }); + } ( handle.clone(), common.recording_dir.clone(), @@ -4631,6 +4638,11 @@ async fn control_studio_recording( } else { None }; + if action == StudioTerminalAction::Stop { + common.camera_snapshot.get_or_init(|| { + StudioCameraSnapshot::capture(app, ¤t_state, &common.inputs.capture_target) + }); + } ( handle.clone(), common.recording_dir.clone(), @@ -4912,6 +4924,14 @@ pub async fn stop_recording(app: AppHandle, state: MutableState<'_, App>) -> Res if cancel_recording_storage_prompt(&app, &state).await { return Ok(()); } + { + let current = state.read().await; + if let Some(InProgressRecording::Studio { common, .. }) = current.current_recording() { + common.camera_snapshot.get_or_init(|| { + StudioCameraSnapshot::capture(&app, ¤t, &common.inputs.capture_target) + }); + } + } #[cfg(target_os = "linux")] if let Some(attempt) = linux_instant::current(&app) { return linux_instant::control(app, attempt, false).await; @@ -5583,6 +5603,24 @@ async fn handle_recording_end_inner( if crate::clean_capture::phase(&handle).is_some() && clean_generation.is_none() { return Ok(()); } + let camera_snapshot = match &recording { + Ok(CompletedRecording::Studio { + recording, + capture_target, + .. + }) => { + let mut snapshot = app + .current_recording() + .and_then(|current| current.common().camera_snapshot.get()) + .cloned() + .unwrap_or_else(|| StudioCameraSnapshot::capture(&handle, app, capture_target)); + if recording.meta.camera_path().is_none() { + snapshot.placement = None; + } + Some(snapshot) + } + _ => None, + }; let cleared = app.clear_recording_state(); #[cfg(any(target_os = "linux", target_os = "macos", windows))] if let Some(InProgressRecording::Studio { @@ -5706,9 +5744,10 @@ async fn handle_recording_end_inner( } let res = match recording { // we delay reporting errors here so that everything else happens first - Ok(recording) => { - Some(handle_recording_finish(&handle, recording, finalization_project).await) - } + Ok(recording) => Some( + handle_recording_finish(&handle, recording, finalization_project, camera_snapshot) + .await, + ), Err(error) => { if let Ok(mut project_meta) = RecordingMeta::load_for_project(&recording_dir).map_err(|err| { @@ -5915,6 +5954,7 @@ async fn handle_recording_finish( app: &AppHandle, completed_recording: CompletedRecording, finalization_project: Option, String>>, + camera_snapshot: Option, ) -> Result { let recording_dir = completed_recording.project_path().clone(); @@ -5975,6 +6015,7 @@ async fn handle_recording_finish( default_preset, Some(capture_target), finalization.preparing(), + camera_snapshot, ) .await; @@ -6029,6 +6070,7 @@ async fn handle_recording_finish( PresetsStore::get_default_preset(app)?.map(|p| p.config), Some(&capture_target), stored_current_desktop_background_path(&recording_dir), + camera_snapshot.as_ref(), ); config.write(&recording_dir).map_err(|e| e.to_string())?; @@ -6214,13 +6256,21 @@ async fn finalize_studio_recording( default_preset: Option, capture_target: Option, preparing: crate::preparing_finalization::FinalizationPreparing, + camera_snapshot: Option, ) -> Result<(), String> { info!("Starting background finalization for recording"); project.validate_async().await?; - preparing.set_presentation(preparing_presentation_snapshot( - default_preset.as_ref(), - capture_target.as_ref(), - )); + preparing.set_presentation( + preparing_presentation_snapshot(default_preset.as_ref(), capture_target.as_ref()).map( + |mut config| { + apply_studio_sound_default(app, &mut config); + if let Some(snapshot) = &camera_snapshot { + snapshot.apply(&mut config); + } + config + }, + ), + ); let recording_dir = project.work_path().to_path_buf(); let screenshots_dir = recording_dir.join("screenshots"); let display_path = project.display_path().to_path_buf(); @@ -6282,6 +6332,7 @@ async fn finalize_studio_recording( default_preset, capture_target.as_ref(), stored_current_desktop_background_path(&recording_dir), + camera_snapshot.as_ref(), ); config @@ -6469,6 +6520,7 @@ fn project_config_from_recording( default_config: Option, capture_target: Option<&ScreenCaptureTarget>, stored_desktop_background_path: Option, + camera_snapshot: Option<&StudioCameraSnapshot>, ) -> ProjectConfiguration { let settings = GeneralSettingsStore::get(app) .unwrap_or(None) @@ -6499,9 +6551,8 @@ fn project_config_from_recording( stored_desktop_background_path, ); - let camera_preview_manager = CameraPreviewManager::new(app); - if let Ok(camera_preview_state) = camera_preview_manager.get_state() { - apply_recording_camera_preview_state(&mut config, &camera_preview_state); + if let Some(snapshot) = camera_snapshot { + snapshot.apply(&mut config); } let timeline_segments = recordings @@ -6568,6 +6619,61 @@ pub(crate) fn recording_timeline( } } +#[derive(Clone)] +struct StudioCameraSnapshot { + state: crate::camera::CameraPreviewState, + placement: Option, +} + +impl StudioCameraSnapshot { + fn capture(app: &AppHandle, state: &App, target: &ScreenCaptureTarget) -> Self { + Self { + state: state.camera_preview.get_state().unwrap_or_default(), + placement: state + .camera_in_use + .then(|| studio_camera_placement(app, target)) + .flatten(), + } + } + + fn apply(&self, config: &mut ProjectConfiguration) { + apply_recording_camera_preview_state(config, &self.state); + if let Some(placement) = self.placement { + placement.apply(&mut config.camera); + } + } +} + +fn studio_camera_placement( + app: &AppHandle, + target: &ScreenCaptureTarget, +) -> Option { + if matches!(target, ScreenCaptureTarget::CameraOnly) { + return None; + } + let window = CapWindowId::Camera.get(app)?; + let scale = window.scale_factor().ok()?; + if !scale.is_finite() || scale <= 0.0 { + return None; + } + let position = window.inner_position().ok()?; + let size = window.inner_size().ok()?; + let toolbar = 56.0 * scale; + #[cfg(target_os = "macos")] + let units = scale; + #[cfg(not(target_os = "macos"))] + let units = 1.0; + cap_recording::camera_placement::recording_camera_placement( + target, + [ + f64::from(position.x) / units, + (f64::from(position.y) + toolbar) / units, + f64::from(size.width) / units, + (f64::from(size.height) - toolbar) / units, + ], + ) +} + fn apply_recording_camera_preview_state( config: &mut ProjectConfiguration, camera_preview_state: &crate::camera::CameraPreviewState, @@ -9901,6 +10007,48 @@ pub(crate) fn preparing_presentation_snapshot( mod preparing_presentation_tests { use super::*; + #[test] + fn stopped_camera_snapshot_matches_preparing_and_final_presentation() { + let target = ScreenCaptureTarget::Display { + id: "1".parse().unwrap(), + }; + for blur in [ + cap_project::BackgroundBlurMode::Off, + cap_project::BackgroundBlurMode::Remove, + ] { + let snapshot = StudioCameraSnapshot { + state: crate::camera::CameraPreviewState { + background_blur: blur, + ..Default::default() + }, + placement: cap_recording::camera_placement::RecordingCameraPlacement::from_bounds( + [860.0, 20.0, 200.0, 200.0], + [0.0, 0.0, 1920.0, 1080.0], + ), + }; + let original = ProjectConfiguration::default(); + let mut preparing = + preparing_presentation_snapshot(Some(&original), Some(&target)).unwrap(); + let mut finished = original.clone(); + snapshot.apply(&mut preparing); + snapshot.apply(&mut finished); + assert_eq!( + serde_json::to_value(&preparing.camera).unwrap(), + serde_json::to_value(&finished.camera).unwrap() + ); + assert!(finished.camera.manual_position.is_none()); + assert_eq!( + serde_json::to_value(&finished.camera.position).unwrap(), + serde_json::json!({"x": "center", "y": "top"}) + ); + assert_eq!(finished.camera.size, original.camera.size); + assert_eq!( + serde_json::to_value(&finished.timeline).unwrap(), + serde_json::to_value(&original.timeline).unwrap() + ); + } + } + #[test] fn preparing_never_guesses_default_wallpaper_or_animated_background() { assert!(preparing_presentation_snapshot(None, None).is_err()); From 30c6db3d0fb07d74ef2296331abfb166cb8e64a2 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:56 +0100 Subject: [PATCH 055/217] feat(desktop): add versioned recording thumbnail queries --- .../src/utils/recording-thumbnail.test.ts | 45 +++++++++++++++++++ apps/desktop/src/utils/recording-thumbnail.ts | 44 ++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 apps/desktop/src/utils/recording-thumbnail.test.ts create mode 100644 apps/desktop/src/utils/recording-thumbnail.ts diff --git a/apps/desktop/src/utils/recording-thumbnail.test.ts b/apps/desktop/src/utils/recording-thumbnail.test.ts new file mode 100644 index 00000000000..c251a5d0759 --- /dev/null +++ b/apps/desktop/src/utils/recording-thumbnail.test.ts @@ -0,0 +1,45 @@ +import { stat } from "@tauri-apps/plugin-fs"; +import { beforeEach, describe, expect, it, vi } from "vitest"; +import { recordingThumbnailUrl } from "./recording-thumbnail"; + +vi.mock("@tauri-apps/api/core", () => ({ + convertFileSrc: (path: string) => `asset://${path}`, +})); +vi.mock("@tauri-apps/plugin-fs", () => ({ stat: vi.fn() })); + +function metadata(mtime: number, size = 1234) { + return { isFile: true, mtime: new Date(mtime), size } as Awaited< + ReturnType + >; +} + +describe("recording thumbnails", () => { + beforeEach(() => vi.resetAllMocks()); + + it("loads the edited preview and reuses its URL until the file changes", async () => { + vi.mocked(stat).mockResolvedValue(metadata(1000)); + const first = await recordingThumbnailUrl("/recording.cap"); + expect(await recordingThumbnailUrl("/recording.cap")).toBe(first); + expect(first).toBe( + "asset:///recording.cap/screenshots/preview.jpg?v=1000-1234", + ); + vi.mocked(stat).mockResolvedValue(metadata(2000)); + expect(await recordingThumbnailUrl("/recording.cap")).not.toBe(first); + }); + + it("falls back to the original capture for older recordings", async () => { + vi.mocked(stat) + .mockRejectedValueOnce(new Error("missing preview")) + .mockResolvedValueOnce(metadata(500)); + expect(await recordingThumbnailUrl("/legacy.cap")).toBe( + "asset:///legacy.cap/screenshots/display.jpg?v=500-1234", + ); + }); + + it("retains a usable fallback path when no thumbnail exists yet", async () => { + vi.mocked(stat).mockRejectedValue(new Error("missing")); + expect(await recordingThumbnailUrl("/new.cap")).toBe( + "asset:///new.cap/screenshots/display.jpg", + ); + }); +}); diff --git a/apps/desktop/src/utils/recording-thumbnail.ts b/apps/desktop/src/utils/recording-thumbnail.ts new file mode 100644 index 00000000000..93266cb9cce --- /dev/null +++ b/apps/desktop/src/utils/recording-thumbnail.ts @@ -0,0 +1,44 @@ +import { createQuery, useQueryClient } from "@tanstack/solid-query"; +import { convertFileSrc } from "@tauri-apps/api/core"; +import { listen } from "@tauri-apps/api/event"; +import { stat } from "@tauri-apps/plugin-fs"; +import type { Accessor } from "solid-js"; +import { createTauriEventListener } from "./createEventListener"; + +export async function recordingThumbnailUrl(path: string): Promise { + for (const name of ["preview.jpg", "display.jpg"]) { + const file = `${path}/screenshots/${name}`; + try { + const metadata = await stat(file); + if (metadata.isFile) { + return `${convertFileSrc(file)}?v=${metadata.mtime?.getTime() ?? 0}-${metadata.size}`; + } + } catch {} + } + return convertFileSrc(`${path}/screenshots/display.jpg`); +} + +export function createRecordingThumbnail(path: Accessor) { + const client = useQueryClient(); + const thumbnail = createQuery(() => ({ + queryKey: ["recording-thumbnail", path()] as const, + queryFn: ({ queryKey }) => recordingThumbnailUrl(queryKey[1] ?? ""), + enabled: !!path(), + placeholderData: path() + ? convertFileSrc(`${path()}/screenshots/display.jpg`) + : undefined, + staleTime: Number.POSITIVE_INFINITY, + refetchOnMount: "always" as const, + })); + createTauriEventListener( + { listen: (callback) => listen("recording-thumbnail-changed", callback) }, + (changedPath) => { + if (changedPath === path()) { + void client.invalidateQueries({ + queryKey: ["recording-thumbnail", changedPath], + }); + } + }, + ); + return () => (path() ? thumbnail.data : undefined); +} From 4fdfba891a648b81d57fe4a4c4ee00cedbcceff7 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:57 +0100 Subject: [PATCH 056/217] fix(desktop): refresh recording thumbnails after editing --- apps/desktop/src-tauri/src/editor_window.rs | 22 ++++++++++++++----- .../(window-chrome)/new-main/Recents.tsx | 14 ++++++++++-- .../(window-chrome)/new-main/TargetCard.tsx | 20 +++++++++++++---- .../(window-chrome)/settings/recordings.tsx | 15 +++++++------ apps/desktop/src/routes/editor/Editor.tsx | 9 ++++++++ 5 files changed, 62 insertions(+), 18 deletions(-) diff --git a/apps/desktop/src-tauri/src/editor_window.rs b/apps/desktop/src-tauri/src/editor_window.rs index 8def29c522c..42cd221b970 100644 --- a/apps/desktop/src-tauri/src/editor_window.rs +++ b/apps/desktop/src-tauri/src/editor_window.rs @@ -9,7 +9,7 @@ use std::{ }, time::Instant, }; -use tauri::{AppHandle, Listener, Manager, Runtime, Window, ipc::CommandArg}; +use tauri::{AppHandle, Emitter, Listener, Manager, Runtime, Window, ipc::CommandArg}; use tokio::sync::{RwLock, watch}; use tokio_util::sync::CancellationToken; @@ -400,12 +400,24 @@ impl PendingEditorInstances { impl EditorInstance { pub async fn dispose(&self) { + self.dispose_inner(false).await; + } + + async fn dispose_inner(&self, refresh_thumbnail: bool) { self.disposed.store(true, Ordering::Release); let mut handoff = self.handoff_playback.lock().await; if let Some((_, playback)) = handoff.take() { playback.stop(); } - self.inner.dispose().await; + if refresh_thumbnail { + if self.inner.dispose_with_thumbnail().await { + let _ = self + .app_handle + .emit("recording-thumbnail-changed", &self.project_path); + } + } else { + self.inner.dispose().await; + } self.ws_shutdown_token.cancel(); self.app_handle.unlisten(self.render_frame_event_id); @@ -740,9 +752,9 @@ impl EditorInstances { return; }; - let mut instances = instances.0.write().await; - if let Some(instance) = instances.remove(window.label()) { - instance.dispose().await; + let instance = instances.0.write().await.remove(window.label()); + if let Some(instance) = instance { + instance.dispose_inner(true).await; } } diff --git a/apps/desktop/src/routes/(window-chrome)/new-main/Recents.tsx b/apps/desktop/src/routes/(window-chrome)/new-main/Recents.tsx index 6d7fe4d83bf..1b3e2205d9a 100644 --- a/apps/desktop/src/routes/(window-chrome)/new-main/Recents.tsx +++ b/apps/desktop/src/routes/(window-chrome)/new-main/Recents.tsx @@ -10,6 +10,7 @@ import { onMount, Show, } from "solid-js"; +import { createRecordingThumbnail } from "~/utils/recording-thumbnail"; import IconLucideClapperboard from "~icons/lucide/clapperboard"; import IconLucideHistory from "~icons/lucide/history"; import IconLucideImage from "~icons/lucide/image"; @@ -126,10 +127,19 @@ function RecentCard(props: { } return ; }; - const thumbnailSrc = createMemo(() => { - if (!props.item.previewPath || !imageAvailable()) return undefined; + const recordingThumbnail = createRecordingThumbnail(() => + props.item.kind === "recording" ? props.item.target.path : undefined, + ); + const source = createMemo(() => { + if (props.item.kind === "recording") return recordingThumbnail(); + if (!props.item.previewPath) return undefined; return `${convertFileSrc(props.item.previewPath)}?v=${props.item.previewVersion ?? 0}`; }); + createEffect(() => { + source(); + setImageAvailable(true); + }); + const thumbnailSrc = () => (imageAvailable() ? source() : undefined); return (
    + + + +
    + } + > + {(flow) => ( +
    +
    + +
    +
    + + Record a new clip + + + Adds to {flow().projectName} + +
    + Back to editor}> - - - -
    + +
    + )} + { + if (editorRecordingFlow()) return; setModeInfoMenuOpen(true); setDisplayMenuOpen(false); setWindowMenuOpen(false); diff --git a/apps/desktop/src/routes/editor/ClipsSidebar.tsx b/apps/desktop/src/routes/editor/ClipsSidebar.tsx index 734bdab3373..1a4bbbe3d58 100644 --- a/apps/desktop/src/routes/editor/ClipsSidebar.tsx +++ b/apps/desktop/src/routes/editor/ClipsSidebar.tsx @@ -1,58 +1,25 @@ import { Button } from "@cap/ui-solid"; -import { createEventListener } from "@solid-primitives/event-listener"; -import { useQuery } from "@tanstack/solid-query"; import { convertFileSrc } from "@tauri-apps/api/core"; import { LogicalPosition } from "@tauri-apps/api/dpi"; import { Menu, MenuItem } from "@tauri-apps/api/menu"; import { appDataDir, join } from "@tauri-apps/api/path"; -import { getCurrentWindow } from "@tauri-apps/api/window"; import { open } from "@tauri-apps/plugin-dialog"; import { type as ostype } from "@tauri-apps/plugin-os"; import { cx } from "cva"; import { - type Component, - type ComponentProps, createEffect, createMemo, createRoot, createSignal, For, - on, onCleanup, onMount, Show, - untrack, } from "solid-js"; -import { produce, reconcile } from "solid-js/store"; +import { produce } from "solid-js/store"; import { Portal } from "solid-js/web"; import toast from "solid-toast"; -import { createDevicesQuery } from "~/utils/devices"; -import { - createCameraMutation, - listDisplaysWithThumbnails, - listWindowsWithThumbnails, -} from "~/utils/queries"; -import { - type CameraInfo, - type CaptureDisplayWithThumbnail, - type CaptureWindowWithThumbnail, - commands, - type DeviceOrModelID, - type RecordingMode, - type RecordingTargetMode, - type ScreenCaptureTarget, -} from "~/utils/tauri"; -import { CameraSelectBase } from "../(window-chrome)/new-main/CameraSelect"; -import InfoPill from "../(window-chrome)/new-main/InfoPill"; -import { MicrophoneSelectBase } from "../(window-chrome)/new-main/MicrophoneSelect"; -import SystemAudio from "../(window-chrome)/new-main/SystemAudio"; -import TargetDropdownButton from "../(window-chrome)/new-main/TargetDropdownButton"; -import TargetMenuGrid from "../(window-chrome)/new-main/TargetMenuGrid"; -import TargetTypeButton from "../(window-chrome)/new-main/TargetTypeButton"; -import { - RecordingOptionsProvider, - useRecordingOptions, -} from "../(window-chrome)/OptionsContext"; +import { commands } from "~/utils/tauri"; import { clipTimelineOffsets, getClipTransition, @@ -65,16 +32,6 @@ import { rippleKeyboardTrack } from "./keyboard-timing"; import { routeEditorPlaybackIntent } from "./playback-intent-routing"; import { scaleKeyframeTimes } from "./three-d"; import { effectiveToOutput, holdWindows } from "./timeline-holds"; -import { Input } from "./ui"; - -const findCamera = (cameras: CameraInfo[], id?: DeviceOrModelID | null) => { - if (!id) return undefined; - return cameras.find((camera) => - "DeviceID" in id - ? camera.device_id === id.DeviceID - : camera.model_id === id.ModelID, - ); -}; const formatClipDuration = (seconds: number) => { if (!Number.isFinite(seconds) || seconds <= 0) return "0:00"; @@ -255,15 +212,7 @@ function ClipThumbnail(props: { ); } -export function ClipsSidebar(props: { open: boolean; class?: string }) { - return ( - - - - ); -} - -function ClipsSidebarInner(props: { open: boolean; class?: string }) { +export function ClipsSidebar(props: { class?: string }) { const { project, flushProjectConfig, @@ -275,163 +224,11 @@ function ClipsSidebarInner(props: { open: boolean; class?: string }) { setDialog, requestHandoffPlayback, } = useEditorContext(); - const { rawOptions, setOptions } = useRecordingOptions(); const backToEditor = () => setDialog((d) => ({ ...d, open: false })); - let previousMode: RecordingMode | null = null; const [importing, setImporting] = createSignal(false); - const [recordOpen, setRecordOpen] = createSignal(false); - - const restoreMode = () => { - if (previousMode !== null && rawOptions.mode !== previousMode) { - setOptions("mode", previousMode); - void commands.setRecordingMode(previousMode); - } - previousMode = null; - }; - - const [displayMenuOpen, setDisplayMenuOpen] = createSignal(false); - const [windowMenuOpen, setWindowMenuOpen] = createSignal(false); - const activeTargetMenu = createMemo<"display" | "window" | null>(() => - displayMenuOpen() ? "display" : windowMenuOpen() ? "window" : null, - ); - const [targetSearch, setTargetSearch] = createSignal(""); - let displayTriggerRef: HTMLButtonElement | undefined; - let windowTriggerRef: HTMLButtonElement | undefined; - - createEffect(() => { - if (!activeTargetMenu()) setTargetSearch(""); - }); - - const closeRecord = () => { - setRecordOpen(false); - setDisplayMenuOpen(false); - setWindowMenuOpen(false); - }; - - let hiddenForPicker = false; - - const resetRecordingTarget = () => { - const targetMode = untrack(() => rawOptions.targetMode); - if (targetMode != null) { - const source = untrack(() => rawOptions.targetModeSource) ?? "main"; - // "superseded" only for a picker the editor owns: the editor is taking - // it over, so the main window must not treat the dismissal as a cancel - // and resurface itself. A main-owned picker dismissed from here keeps - // cancel semantics — the main window hid itself for that picker and - // must stay reachable. - setOptions({ - targetMode: null, - targetModeDismissal: source === "main" ? "cancelled" : "superseded", - }); - void commands.closeTargetSelectOverlays().catch(() => {}); - } - void commands.setEditorRecordingTarget(null).catch(() => {}); - }; - - const showEditorWindow = async (focus: boolean) => { - const window = getCurrentWindow(); - await window.show(); - if (focus) await window.setFocus(); - }; - - const hideEditorForPicker = () => { - if (hiddenForPicker) return; - hiddenForPicker = true; - void getCurrentWindow().hide(); - }; - - createEffect( - on( - () => props.open, - (open) => { - if (open) { - resetRecordingTarget(); - return; - } - - closeRecord(); - setTargetSearch(""); - resetRecordingTarget(); - restoreMode(); - - if (hiddenForPicker) { - hiddenForPicker = false; - void showEditorWindow(false).catch(() => {}); - } - }, - ), - ); - - const devices = createDevicesQuery(() => props.open && recordOpen()); - const cameras = createMemo(() => devices.data?.cameras ?? []); - const mics = createMemo(() => devices.data?.microphones ?? []); - const permissions = createMemo(() => devices.data?.permissions); - const setCamera = createCameraMutation(); - - const selectedCamera = createMemo( - () => findCamera(cameras(), rawOptions.cameraID) ?? null, - ); - const selectedMicName = createMemo(() => { - if (!rawOptions.micName) return null; - return mics().find((name) => name === rawOptions.micName) ?? null; - }); - - const displayTargets = useQuery(() => ({ - ...listDisplaysWithThumbnails, - enabled: props.open && recordOpen() && displayMenuOpen(), - })); - const windowTargets = useQuery(() => ({ - ...listWindowsWithThumbnails, - enabled: props.open && recordOpen() && windowMenuOpen(), - })); - - const normalizedTargetQuery = createMemo(() => - targetSearch().trim().toLowerCase(), - ); - const matchesQuery = (value: string | null | undefined, query: string) => - !!value && value.toLowerCase().includes(query); - - const filteredDisplayTargets = createMemo( - () => { - const query = normalizedTargetQuery(); - const targets = displayTargets.data ?? []; - if (!query) return targets; - return targets.filter((target) => matchesQuery(target.name, query)); - }, - ); - const filteredWindowTargets = createMemo(() => { - const query = normalizedTargetQuery(); - const targets = windowTargets.data ?? []; - if (!query) return targets; - return targets.filter( - (target) => - matchesQuery(target.name, query) || - matchesQuery(target.owner_name, query), - ); - }); - - createEffect(() => { - if (rawOptions.targetMode == null && hiddenForPicker) { - hiddenForPicker = false; - if (rawOptions.targetModeSource === "editorRecording") { - closeRecord(); - setTargetSearch(""); - return; - } - void commands.setEditorRecordingTarget(null).catch(() => {}); - restoreMode(); - closeRecord(); - void showEditorWindow(true).catch(() => {}); - } - }); - - onCleanup(() => { - resetRecordingTarget(); - restoreMode(); - if (hiddenForPicker) void showEditorWindow(false).catch(() => {}); - }); + const [openingRecorder, setOpeningRecorder] = createSignal(false); const pauseForProjectChange = () => routeEditorPlaybackIntent( @@ -445,70 +242,18 @@ function ClipsSidebarInner(props: { open: boolean; class?: string }) { }, ); - const beginEditorRecording = async () => { - closeRecord(); - if (!(await pauseForProjectChange())) return false; - if (previousMode === null) previousMode = rawOptions.mode; - setOptions("mode", "studio"); - await commands.setRecordingMode("studio"); - await flushProjectConfig(); - await commands.setEditorRecordingTarget(editorInstance.path); - return true; - }; - - const openTargetMode = async (mode: RecordingTargetMode) => { - setDisplayMenuOpen(false); - setWindowMenuOpen(false); - if (!(await beginEditorRecording())) return; - - if (mode === "camera") { - setOptions( - "captureTarget", - reconcile({ variant: "cameraOnly" } as ScreenCaptureTarget), - ); - setOptions("captureSystemAudio", false); - } - - await commands.openTargetSelectOverlays(null, null, mode); - setOptions({ targetMode: mode, targetModeSource: "editor" }); - hideEditorForPicker(); - }; - - const selectDisplayTarget = async (target: CaptureDisplayWithThumbnail) => { - setOptions( - "captureTarget", - reconcile({ variant: "display", id: target.id }), - ); - setDisplayMenuOpen(false); - if (!(await beginEditorRecording())) return; - await commands.openTargetSelectOverlays( - { variant: "display", id: target.id }, - null, - "display", - ); - setOptions({ targetMode: "display", targetModeSource: "editor" }); - hideEditorForPicker(); - }; - - const selectWindowTarget = async (target: CaptureWindowWithThumbnail) => { - setOptions( - "captureTarget", - reconcile({ variant: "window", id: target.id }), - ); - setWindowMenuOpen(false); - if (!(await beginEditorRecording())) return; - await commands.openTargetSelectOverlays( - { variant: "window", id: target.id }, - null, - "window", - ); - setOptions({ targetMode: "window", targetModeSource: "editor" }); - hideEditorForPicker(); - + const recordNewClip = async () => { + if (openingRecorder() || importing()) return; + setOpeningRecorder(true); try { - await commands.focusWindow(target.id); + if (!(await pauseForProjectChange())) return; + await flushProjectConfig(); + await commands.openEditorRecordingMain(editorInstance.path); } catch (error) { - console.error("Failed to focus window:", error); + const message = error instanceof Error ? error.message : String(error); + toast.error(`Could not open the recorder: ${message}`); + } finally { + setOpeningRecorder(false); } }; @@ -795,33 +540,6 @@ function ClipsSidebarInner(props: { open: boolean; class?: string }) { projectActions.deleteClipSegment(index); }; - createEventListener(window, "keydown", (event) => { - if (event.key !== "Escape") return; - if (!recordOpen() || rawOptions.targetMode != null) return; - event.preventDefault(); - event.stopPropagation(); - if (activeTargetMenu()) { - setDisplayMenuOpen(false); - setWindowMenuOpen(false); - } else { - closeRecord(); - } - }); - - const areaButton = ( - mode: RecordingTargetMode, - name: string, - Icon: Component>, - ) => ( - void openTargetMode(mode)} - name={name} - class="flex-1" - /> - ); - return (
    setRecordOpen(true)} + disabled={openingRecorder() || importing()} + onClick={() => void recordNewClip()} > Record a new clip @@ -1000,261 +719,6 @@ function ClipsSidebarInner(props: { open: boolean; class?: string }) {
    - - -
    { - if (e.target === e.currentTarget) closeRecord(); - }} - > -
    -
    -
    - -
    -
    -

    - Record a new clip -

    -

    - Captured in Studio Mode and added to this project. -

    -
    - -
    - -
    - -
    -
    -
    - void openTargetMode("display")} - name="Display" - class="flex-1 pl-5 rounded-none border-0 focus-visible:ring-0 focus-visible:ring-offset-0" - /> - { - setDisplayMenuOpen((prev) => { - const next = !prev; - if (next) setWindowMenuOpen(false); - return next; - }); - }} - aria-haspopup="menu" - aria-label="Choose display" - /> -
    -
    - void openTargetMode("window")} - name="Window" - class="flex-1 pl-5 rounded-none border-0 focus-visible:ring-0 focus-visible:ring-offset-0" - /> - { - setWindowMenuOpen((prev) => { - const next = !prev; - if (next) setDisplayMenuOpen(false); - return next; - }); - }} - aria-haspopup="menu" - aria-label="Choose window" - /> -
    -
    -
    - {areaButton( - "area", - "Area", - IconMaterialSymbolsScreenshotFrame2Rounded, - )} - {areaButton("camera", "Camera Only", IconLucideVideo)} -
    -
    - -
    - { - const isCameraOnly = - rawOptions.captureTarget.variant === "cameraOnly"; - if (!camera) setCamera.mutate({ model: null }); - else if (camera.model_id) - setCamera.mutate({ - model: { ModelID: camera.model_id }, - skipCameraWindow: isCameraOnly, - }); - else - setCamera.mutate({ - model: { DeviceID: camera.device_id }, - skipCameraWindow: isCameraOnly, - }); - }} - permissions={permissions()} - PillComponent={InfoPill} - class="flex flex-row gap-2 items-center px-2 w-full h-[42px] rounded-lg border border-gray-5 transition-colors cursor-default disabled:opacity-70 bg-gray-3 disabled:text-gray-11 KSelect" - iconClass="text-gray-10 size-4" - /> - { - setOptions("micName", value); - void commands.setMicInput(value); - }} - permissions={permissions()} - PillComponent={InfoPill} - class="flex overflow-hidden relative z-10 flex-row gap-2 items-center px-2 w-full h-[42px] rounded-lg border border-gray-5 transition-colors cursor-default disabled:opacity-70 bg-gray-3 disabled:text-gray-11 KSelect" - levelIndicatorClass="bg-blue-7" - iconClass="text-gray-10 size-4" - /> - -
    -
    - } - > -
    -
    - -
    - - - setTargetSearch(event.currentTarget.value) - } - onKeyDown={(event) => { - if (event.key === "Escape" && targetSearch()) { - event.preventDefault(); - event.stopPropagation(); - setTargetSearch(""); - } - }} - placeholder={ - activeTargetMenu() === "window" - ? "Search windows" - : "Search displays" - } - autoCapitalize="off" - autocorrect="off" - autocomplete="off" - spellcheck={false} - /> -
    -
    -
    - - - void selectDisplayTarget(target) - } - highlightQuery={targetSearch().trim()} - emptyMessage={ - targetSearch().trim() - ? "No matching displays" - : undefined - } - /> - - - void selectWindowTarget(target)} - highlightQuery={targetSearch().trim()} - emptyMessage={ - targetSearch().trim() - ? "No matching windows" - : undefined - } - /> - -
    -
    - -
    -
    -

    a%j8jhkN{Oa4nTU-;85$$4!+LmqbFwq-iu$*O*rIC}Ea! zK5i_Zh_h9U!MWixH}VBwjG_Yh8n5Ek1PT1L-%Ht0zrC#F!*CV|IxHnmhmZFCfj1Uf zfzjZ>OzGAU2$Ig16jUi!s;$<8fiE{>`5oc@bH{dkIlhPAuX>+X+Rz`X$}ACU+bi$s z??kRIkYvPeyVS4Hvd5^WIGnmXW{$1SgXt{ zrg}r4&a@oGSl!h)%%IA#7&SSm<7ihtK;_>_k=S ze73?-wRaJ|whrYM#pS>amvgvFPRLiT*@zDoH1KooA-}j^2wV%6hxP({Tp!3`yH+ay zRkL>T3q0&Z7J9}9qw`Eo!J*$!L zS9Ah&kFS6~$yfMi4#}_=H(<>Yz`&H*{7B7Q9B+IKYbIF1qAy*No}cLol=Je_?LODDeg(_LpqE|Imccu)+Nbi0N7*Pn?ko{PkP+Qwi`eE=nx-X-&8x|CY4 zMa#cC(9WsK)bVQ+J^EXOllUe0W>PC=>gv;MCj$xsZJJT|1K+&2!?m$(T;|PIr0~T{#FFlam-3Pn3C%|{F5Q)6YTF&}yAB>y1jHzdDXU9+H z!?S{WaH8lQEBE=!RzELcdp?#i2YSFVyH~Jw3>GPCjA-#&aFbrU1^*wTbkOT`DnBgH+IHdTYF)5!asi}=ohHPoHA4Ntn|l9bYE zEGROeuB#b1lnK45DXBQ%8A8;w?{H_04?pdICR^D*2b~lOIh`v@1vlMwl)IdXn_>o{ z=K2KORUeMI>jVzbKY1G5ehgB*TXCB{n)ffMLQlq4i zTd*?a6dvoWz|W#OT$o$L|5|i~3$AY#b?+9&fGv;wqjEm_p(0IPV2l^u-QvT#rKz9r zK(i(@{sAn4-qx}7w^xbOwl2p|4}gU(%VE=lI>=2N1?I1R!mn9jEK{=q8mlaj{oyNL zUcCy%dxx;OJHNv0D@iQL&5x~-`Xt#i#SON+m;htmwey1>`s2!*?{T2sE8M0soHra3 z2Vb>iSl0$I>sosOk|Po@Ca8*n{{h`8I>1%MHDa~#9vl+7k6$>&6e`~Afm3PSqIM;L zU9Iv9ZOlgzm#jr!wq>GgybXq6}jVh}(2Qlx5V4`ojLNU;9M*)iRXc)~+S@KiX*bB@TWk?BhOH z9K?Y-6(~Jy6*uafA~W2k%APO%BS~p0qCBU8RfF5(aN>{y?5aQ zjL!qVPZm(}Jb@&||Iv#?8~S#CGLw1g$4VP!uwS>FXl(mIY70J$s-x5)Qu{ML+_Y8H zq&EZJ4^%`8Nf3Y6TaGk3oaks@CLX(Ri%;=M=e=utv2~9FjrcNwZx;CDmwMc2{sVog z$_~Szf4ljuqXW<@JBTwqcmf7&$%QoT6DUtU1+fR}QRd)l9Gh_fuLwTA*=CinVnI9X z)#Si^xwdfju7zi{1Muwh>A2)bJUWcFLw9i#&gnjgFK1sx@5GB}l3`CVnd52nHC3A0 zwVCcMmLhSex5H$qCjP_(3#?x<02AZ;_@h+AI`X`^MCtlx!Plj}rw6C&ZXg%>l@aAYp8b})m#VQh`Z zZ&;kYOmaV|4bOuF&UKqZNTikU{WaoDZrgArORM2?OdaG@NkO}0p`+EYIN%PJ!QUI& ztg2}p`#RK?{VjK6mPUiww{LIYUdT%Bgq$J&qUI6=PJHP2Z{~Xb-nKyUwAGcf zuW!J&C6%~Be;(d$9VpCNxQDX|AS1+b}W50nh9hM^X^?6PbVucC}N z_2X*%q=dL9v<)gj$fP^#h=Yy$i{}SiWg}*ZS#C_MFn^=r=UNX2E5_0dsXe5AS%T($ zPB2Ll#kQLjvd%Ao?Bx8x%zDCpFj9X5PbGU{#i?7Odo@1XLbq1fI$fRpG2IP{%MSCu zV#Ab6 zH8iPcJw2Q-vuf8w z4w?Wr#4z8(L@zYMe6GbI;z)VLQE>{!@y_aRg zrQhAf<>N(S1$`N@-PZ$5f4dD+%RkKPD`;}ns#np=dK4`>=fH-Fj|;v1w|HyrNctD# z0+QNSqI+h&oUZiC&h(+{%4@2$W@{*h$qO(ohW zaDb2YorWX7dbs}rYv||%tEzwxDpiUOkJ-l;+2XsgHDXuG6md*Ugg7$(HVeGs#nRe) zfyp>g@Sip0SulxM&Jlc9#e>D6D)5{o_-=c4f#LcrIGHbtHGir_J)?$K-oB)X{r&7g zCSV)PRSCtfcEOkvAwsF1t>|`Z1wNiX7yq5{#iVu;J=NLIp~_$GZct-obEl2O&!wgE zak)L%fBDNlyL%kJ%P@StZ9ZO6Ho#T8UAVHW=bYi?!|<|O6>^N{u&UNILf6fWso5wC z4E~L*!zi6`i~SjY&5Xs)ZsQjTj+XiMQsR-Prph~TPSv4tu2t3pmR31Gm|x{TbtL+Q`O{SSdQvnAr%h4| z*l+92u%Y@b9NbpKM;(-<`rku%IB-Jg%w+xOF`*4x-HG86v^y-4YAYhl+T zbzHw7i|f+P#b-&EuWr}aK>$at<8Gm65wvsRBdo1gPJ= ziHjHf!(*Yb@N+iDj{F0rYCf4I8x4kZ;mjKSwF!>bmEk|n0=jmhmOd!t3z?FKbo##@ zYFJc9>l{odOYb}PSh_z8^SuiF7M&6Wo;U``hXy4)s#hDx8sv%LAyNvpl_e@fDAp=ui7)m*BvC`?0*j2HS=$ z!{h3DSodreS2*qitm(2~*6yk-qh=NSb`5}&!ZW-7^P*Xmby(RWf}!&tK>Pt!4ELLW z_&U3yRPx3#w?c}IsxV|v@`25oXU)!pw1Br>HKbfDhVuc!E-0yhq|$Tf!?RP^Ur`$) z-#Ovf)M6MrVH8BvmqO&qSa!Rijrq=LXaA<|VPy(8I1{N8`1{9HD)BNWlazyWW#TsQ zk?Ud$eCwHt=`GRt^@iZpWX6BbisrSa?I*R7pQttS6HUCLUX|Xxv1;}3(yHw4j;g!k z?1lU7c5HE&N?k_BXhlf^w=iP{+b}dyNJF0I=Jam@ry3dd*jk-!t-1iJMNyp5nmO2i z)Hz%kyaE5&wer{O+BskEJZ_7jDqTC+iK5A+xS=%^x>pHB;Efm2GV&TeaepuAuQLLV zP8$qWb0fIv7f$lVfx#eUJOt)w?S@n*ZMOYPJTzT8i!O;-?8mjy?90IQ+~)HIFhZsQ zzU>);h3C!)_o5@H__sB+x@^F}C?~<+bCy#Wp~ed1c+d&*K)cfs+=RCw;CJZ>ck^i` z4wgI0Bc#H%AOci4hcR(6SQ{%#`Pp{({;eVX&N#_>_q#F|xp+3vbv*0+qlCF*X4BfJ zOn#@fG^$zM;Pl`IHoqZSoPyJw2O7h7Cc- z8IIKHGl4c1-^E37dRX5*fClu)V&M9pT;Q0+!X4B&FdU^z`7dNCKHHH#eB4Dj!-Tf7 z-UHaDupK_vWzm%@hw0_fTliUEoPHdZiz{kM_=7$Eyid|ne&%;MZj!tTcP(}nWW~n` zEP?%?ZE%!()wcqf63_Le{NeU2YQ(O?IsDi35_q~JgDVuT;4&KS@Jb)uanP?iEXcRP zI9WS^*SwDlcRj@>{LNzu5v$oJRXI+kISY)pgo~Db2t%-Ppu5J?XuFCfc7M7dGCMaN z%|?I6y4hVAbV$q$yfxV}oh76r^AuvcZ~Mnzquz z+gEVSh7A61OB?10e&Ua_g#Bf{30SXN4xY-YY_X{k9{i_9P6J;;$I+{z<=O&UHb$7` zQwNcH=1}T5CreH<)3I<<3I<+i=WY7!!TbBJqL0sQVP|MWep#dN)iaI?y*21`#9zG1 zsembL0kOI#{3+6*?=l@Y)_o7SXoYgp2LCv{x&7G*=_jCHH=0ecuwz4&p2CkPeQJT@*{0Kx9*1(+zH<;9w2+J=| zg2!u)qQ>bmRP5iwb9(S?L{y6`fm9XnHhrSyRao+F@)R~}-+q}<0o#0I`oi>?y$LGVV>pS^FsUNr- z*J^q3%gd;(pU5pWOho&0s`Tggf4uVbDDKj31DLnp6g>>ybA#uP<{qo<#to|mQc9pb ze3V%ScBb_b2NNmU(4}}f_zQXPRPHzI;51(-qf6s|Sl_V# z6^*>1KEM>h3mag0lN7rjb`D%*a=`XWBlkwrf?IiA@B!!gfv5jZ_!(%xmZ$`>+m{6f zP{sguAV!__-fn{EcpJ7xek@zsWx_@sX@&W*e<5UzDw|mO6)wU*FtLqc2OZMca@!d! z^gE{Wcz& zJ&4xLu0Zo)TSbu@B_f+~LFkh42?t#;lQchb;Zg*a`N*8z{JGS_I3{Koc`tG%^}Q0_ z>ahqOZd%2^|073t=HJAM*zF`_HF5I09{jfR5TxkwZ4E-u#~U&J@~p z+LqdKv{2#0eUZmzCGKuN4N&iLfyFLg;d5X(1l6qMUPYT>u#YsGThI(K(+}`Zr7c;p zNe_&ckA-4>6?p$HtgS`UIBjq0PosWwNfCAK0xDNR!mg zvm?u;nfSp`PP@Yb95f4nt+B-3rzW)7SD%J1sKj$P07{cwSj}-AcI~GzJ90*qwbb=O zUsbiEN9sY`D2@d6*<2JmW|B-r+BNcfzZa&f_|^5tpdW!@C1t;pD=d zNPEXXUAYQ)hn^BuY2L-5b>0##eK^egPYwFD4rLlD?r<@ppS;Ez_s{mkDfcx|rD8nB9V>M@$vVK%wHoD^n(wJG)ui8&TJOso2_K7VH_J0 z^bxWS9EY?)YvJ{!=iCqvPf1vx3Er4}oX@1UaP81|R@wh6EPDL|RIVHa`;D{k#CL5n z4}ON4=Z0}JufK;`d7kh$`WFOzlVe#zZbswLH;8-^%Q>%oA{uV~64pQ#iUq!tr?2R75m{&&%FnJtvd$ze~AF^#`pi`QyAB!=q-!p$j(@asY_x9{*U ziV@~^WbIJW^!d&Er&Z$1#--d3oz-|NunL>A1TIpJ0qs*~)aWyV)JADGZHKKBjX zKikpzR5!rUReV8wk|a`S=k+ess5kv$df95+p$t8dsqj%f!{$n#D7+-KRkz4Y1F`S+97OOq>Q|^>_%)Y!IK6oC5jUQt%;d%>~)aA@8 z1iA9}+&#fx%a+@;VFV=Gyc1=tT!`bmPT+{`s<@Iuim4?ux_H469~Y^3--jLM7Xq$slw%M1Lm9zR^DX z+@H(g?7Ty0ZJ9+YqEgA_>SEeFCKj(orepcDX#QWd3+hij1uyLPL1nlW^Xl9K4d;^} zMrsF06+D77G5T!0R2_u(6~WK`8F0np1NYPE2lso>dZ^iiqOgmNd|->1lbdk>F11L& zI&T*nrk=#q`|7!pt@7M%k5;hS`5cb#-NRK2=V+6LOqi;Hy z{>HYOyzH0l{BQYF7-p1b7rSz`DDS-&j^E_U-3d71aAzFhVi{lLT)yJ^zxvpKOZWrt zr*T0#mZD^XBdGpd4&K-J!zuYYjxRnHh#a&FQB$fBH%P4$t?fJsTlae5qf{r_)KA#Y z?AcBw&1NKbLYIoY&FEL)KHi{k*UM!%Gzn1g3#xYkyc`b^EQC( zGHtwgd7nsmpg%m`b(jnL91ZsmS@2bz253AmAO7at#T>t2bWqWwt9K4igpxXqKPW|m zW;UR`=Qvz7`~x-$?;oR|mtup%Lo69Tm^wm+)6L}?q|J%QBhr}$F6h9ieLJ|~?d!Np zrc1Fr9J!>tlUzt)1y}iX5YF_=#}%`tk&Dr8e0E!l^hX?p?9XQCaWjV-GEq!kdzA!l zxF!9t@~7(QYJ8A}9hglu2p9T z#(VG|Tl8Nyipa%i2Qn)vBPS_m0q$ylBcz(xj~} zpK<#_5%u`2WgpJ0We-0{us{EPn%Vffo%fjc)zG%NipCqGjQW?oq$ zVPDUH_PRIlc!L+zsCRMBbw%jZ(t;^3!eL_iRLnfL2<<(_vWCU#Z14RVSfehmoRj0Y zx(i#d^e#&m&2l0ufV=>Dwq^Ra*TGv=Mh@0YUfGd zj}FI^$t%#Q`Y_a4{f4F;4!2Nt-2Vh?&3rD5?K+j7rcCbcK{NSvjc%$+@ zRyX`A?%wy6TRSfVavQ5z`qv+9MzcPPPq-wieRF}?8;7u${`=U6tQ>*2@6R4DD`E$C zWwW_$w%pD0CGcoRDf4UG3W2{@kW5UMD81=2H(}~`Zix34-sDT4a2L=Ai~XBG^g*2| z{&)+GQ)^(*%RUfI`3P!rX0vqRZc5o*j>WeRfSQ%RxQdcA=$bbiiiOO^k1c9ovtU1} zzgENfm#5-|pX#u=J{rbs@@6VqGx5}XfxT7z41adsLD@ien%3_lUh~!#7;qNk`%sk> zYa1}yxB;K(olUCRN@}G;K-D>H&1C7S>X6Sguks5GsgR?SqoX-cE8{+_8qfNB>;a#9(^%?`7zlXtlr~R4 zK?XwK;@ILyT&E$6xBI7KqmZ!=bdshq+XOzUq9550-aw+QW|X(gfZpyA+^L5O=*OUB zGCMwpDh9u-{MkLQGCD(_w(Vu)xt4)O@eJ@C`;$*{i02BA%F^a=^R*N8+rE{Y|I4A*o43((lebu88-jRFa9atTwhg(yY}~Ge zY)92#*0y{-=$5DAww<;#_w5`?SkTN5+dLIYR~&$qey_P#qv~O2dK4T7<1TyyUXpFa8>S*?y@!xAc(@1(Pp zb@9%iIDak$?$l=LH>X4E(>W0MsZ+?UH^XNA?=bdJ7Tg*p!&`z4zae-p=Rf>6ykw)e z0O$P_dRZ#Du~zULIUS}1m0IZIa2*=Y3r@>xG5jwzdANSg9=0{?;1*7;2F+uRu%NL> zVzNaKPe$tE^MM<2oserCcQTNI4{c_9uil}I#@Uj?5oaj1HI$p>x`y;Uhp?u@^H|vE zY3z!sJ)5fN!hG(|XI;CV)0pl*V7#Oc3MK-+JE4{~MGj=G!JApa-W#-~3Z15oAnU(LbVG6}> zXmOjNv~)$5bbi@H=}p_`5V`mT${wu(Qz6gUS7L~}=P!aK)^XS}aUpididdz-6QK61RTGUB08=HEyQdb*_AR%2?XJp1(ViqicUPX~x%|lF|0U9vrf zz?g6;K!3dyblF&lf5&ddOUI4Tzwa-gXX?E9iDNK*TneSz=;6m}TcG^td#Lp~h%xpP zapBtkAn5!WxVu^xGGg{(=A>raV*DLv#O8|q#+?G4h#S&x)koR9OkpSUUNS}WBx9>@ z2~>MWLa>KF%>JN+2U3zib&D=nb;A&1wDjS|Ef=ol??q7DeHNF#u_9HQJZ5-hBHcN6 z0~?muf>Na5v|YRioswfPbRv>ILm zk9Lp4r#YR_?O}>DcWlPOD`O!gQdY9F1_?v;T)THpDL7P}x_PpGF>KO+~vV&S{}2st*XaxPve zT$!&TTxQ$g$&?D-PvFMs*=oTV@BiSK;PEvNe~r$APNA-KI+RBq(buAfj1@e&}=g;n`R@p zJabrTRy%FjdXVB@DnZy!e~Ds=9ADkEU%11a@upL};3eq`c@x?|MVOz@*DZjR%ieL` zq3KXCsSB2xKIKM!>Er^OWZ^nDl6Zl{y|~>7x|{@_Ugj9wGGq+y&R&W6Kjd+0&196Z z5aH@gTT$lgKb&==7nRL^!06j{ST!mKUmQ7!LN^+{SPrMOVKqP6EsOY^P+g1uV0Uwm;G=v@2GKmV->fr~=WLi_(6^DNNIC*y|whV`E|O-u`&mb21*Ba0$xhyoNff0l2Sm z34UJ^h~Gw-pubxmd~#X=TT;%0{+h##u?mNuw{yw@hx{gYtkwtl| z1gDD&aoab*!srv+Cn3LBs5F@Ne*D03s^g&guqtGHOMt^F524KB3g{h~M4z1FMEhR{ zK-Ll+Ocvb%!$?0;i*2R8MH_j~yJgVax`L)JTf)7yaiDvTvgl7u1ML|8nZm03GIQng z(5hn!rL(_NdzvFVVxiAYo_@_g(J^59Y3FIf)GR(ODS_?})@Pg32eIpW&X_+;#iVsJImRS&C)_O zSyq54(_5iTd&gFBXJ2n-;T~yBX=Z$uRruoP1JeuC8WL!dj{m7DzDp51-A21oX7L%YIYtj@YbeGB|y z&FTH{ZVy9^s+X9rXu*!+NvgXh#cNS<7~mg;nf`}SVU`Kzc22}=y`E@wU=JN_kS7J7 zA+TW2T5j(ZiBo8-F+|=wM^W=DXq;>h|KQF9>Im;gkGu=H<2F-BreF!vnXSx5=G9Qw zl6ngMc3d*`;b+d;!bvQMi@=;y+mt}d`;LLRfxOnS(*k)A-FSbYWJ?^*owekbW$7}|@ zo#98HjPu5fP;P=2$uqcb=*~%dFOpa5FB*321|OWJEbQmKg@ygJP~x{4d|xTS=X>wC zt?TqKp^Knneih8n0^D$C1jaNEz;*Gn@nC*GT%Pj+GG7$&iz`Jq_>Dj%+nf)fbP$v@ zm*c`wkHFI9BX9=2T=5(s|2I?~FBxuxn_?qe`fwmdw`cHX?upbXc!VVaKkw9Q6KGns z50=es0WYg|{-s_F>H3yRW*(gmH~Q#MtIuxwHO`lYIEKSEilZZUt#ONg3@q4i6t1-H zhFCXWY_$~Tvoiwm&i-RiCwN6}W?R6JIX5M+t{iTi{SDUE-(iB)bO_%+h4+56kiR^( zi+^1jFR2P1LY+Q^WYML9BS&q598@@zTWX@3vj^D9KYX76d)l2QsmHTJ^T zg6=O*h@v?dprX_yH{}&?pu(kG>Jy<$>G+>4@2_33R?xY)3Kw&V5XNmZjq0L z*49yQb*d`VSwG}&hwY+a`8!3vMZykS(`mRP)BxLJ4#G6SA+ILm1<4X)9Hle^p8mKB z50f>qBl{a@f3An0RRR}#>qs=a!QmJ-3*#Q73c1*KkRfCSJ2$$(Hn+{N;*kS4$8jpw zI8DSzpHTQ;Jj4=8{qwGc=Y2uh;|OAjR$u~nlj$=M;nb; z|7U_zvgkR5X4o_Enon~_$>2U!W}^RhB&-&g)w_&Qpm-A)zJKPkdPhuLPlru1f^N8}Mh zqci?+MpJ6QX%Pp9U#%e>tI4#&M)+>s6wRXYy+vhXLs96A<@}G2xXpam%2p=Hi(2MDg>oE!&zm`_)zQ@`6?&9(m-Qf?{3oHNo<0$Fp zGybu#Lzvnyg&()SL*nWoFm$8dfXelW{N>$KS;mXyOz-?Vx{+hcdUqZpA0>CH8)eB1 zd*uY)-A`^xzcW~W_Z=3bJQc~w50+LB{==lv8@TKLAr3FH#8bz%U_M^LM3W2n`Or~( z+MSPKHG6Pkm>!OfErt4|>)gfv%&_R_Lg*c^NZ`rtgo#bNAVRc5=u_7U8Fh7BHOms+ z4XknC!e|ib{0FrkEikggk)06gpKa)fr(2A%POF#KHhs%&`7|GDC;Wibmgd-JVFRqr zYvnveXTVeuQjX6vS4>F&SC{A{n+2@H~4uEy`jD~9^`ZO!o>TNF;ArkM$U?2 zH@7yj`o4eJnyD46^n@wP%Nj=$U(BW^XLI^-&x#%2+(vp${&cL`oMi|shldKP?CN$c z#y@&PFFd!fOWDnk6m}Wlf<3$$6V7%j_LaH}%wuQPT%o>gKRB5-2{-;=8#g{t4o}2u zK+TVV-;~?Ry-%3a)>VuT?Xf?i}={4Yjkn1 zhon)s9*%qWNHm{0QQyHsL|<#XKzm*tJTZF$|02`isHqrK5(@Y~ez)m&?Ha0R^QOo0 z_2hKu6)!LBu)7Y>AlLE3*{Gdi?CLz>T%qJjA!&Wt3GX-L>}|~McP}8nxtqwxei>i0 z;wu+>LyAW=&tsp}d*IDz;{Qpkn8d@LWgSvy5kE_)YNsn^=NjPIjb&WO*CNV`4D|H2@PT7ND$634E`+2fI{a;Zpq`ZnsS_ zY`R#=Ti9Qcc;Ar$hy6ETU(HMS<5mkTvr6IAg~C`tZ2M@zP9dLWrLc!v+}6bHsy_wtW6D8xt8ivheZ_4Xx`O=2G}5}t zvAF3X2OG4G@PpqR;QRYqVl3L?n_VTM>u%>^&}~nC^`=B>cszj1?bs@0aEmC-HkgI~ zGhm9V;=pd_3qDeHAnV}dguG`2UrgD|>}3h7%W>f|&DS}13bQW$}I^9fy>>ux$=!lZ1bNUDi~eL9iJ)OFRHTSb#Eha@|!88 zwTJ93yD*atDr~I(PvULLDQZ^)+$>J#&Mpg}hg%y2POu4^Y}tox5csSfozLjNOMiBz z*NNE;tfX7!ifn9!7L`rl$?aGHS*hzXrQI4dukH(?POo8i~mR zJTdU`NOa#Cg`VR~amRLN= zh1Wajr@>fqDsBVCC2wK7zr*3ixtiFC?Cv2+8WPf{WOjT9&8s8Dr1Fxbq&E z=WU2dJ}USvX%;#R60Xzj1m1glD4qSLgZB4l!=6Ed;Mv%2csbh%N8>KIT|WgcZ*{|E zjay;Usb^GjWik7AJfGQ2ievW|0sDAWR$#NNpzip1%1nPl?sesK`??W5{O|~#pY@~U z3kP`8AelELd6)Y$fd zmYY2y|GEmwY!|UIWN}V!mSumE>1UfJ;p-#7)oycOkPx2oBra*e_C}>klp{0j5Qv3!>=42-H zjzXs3jDfE}Fq=a6Fk$ZBClwCn8c?^9I?|jw@J-JSyA_9E^O}D6$U0A$9lWA1gH%{> zM>i!*aAZk4PLu3CRhH-cjs`mHqtze%;q<>YIQab#toabnE!@4&>F;~N_w{l)nQl=4 znak(k{eQ!tDpM83HFx38zu#xajCiF z{rd#GKQRIgFR$mn=;^S7*22D#SpcuFNDTM2r!bvO4J>Gs601?p!0PH`?D>@?lH<~8 zWz-kJjkN%)c7$O2?9ZSyK3qdUnwKWj^CqAcXlnKNxLJFnU;$rUV2f2va`utJ-eeKcaxKW*59+k4o{yuGa9Z9V&XuCLV6 zu%F9;pMza0`L(z-tCVRENDv%8I*fH@()hyxSaUZJbFTd6gJsT9=Jn-F+kY5qKee5% zfF|^OE`p?S_xLBvqL`A|AU0^|E;2vaM30{Yu^Cfrn8xsJ)b(I5eBPyx`@Qp_M$?`> zPBmk;XO!5WQpR78KE$b>xJDKY)olOLv+S4G0b#Fq6`l{=fy<73k$jo?if&Y^GZj}Q zHsO~rN9v3wjfM4aj775=9Vcf0b|JK`y-b(1?z6{#7z;Zd%S!j|rR7I;NYi2joe^@7 z_KrF9#w3~_G^d)kR8wXa>zYV*OCf!?ngUN(FF?7nENC*eq{8JJ=*G`b$g3~ossvBi z!-h1-KBtTet6#yW<)$ciz+Mz|t5MXd6+{JvW5~U$xN?x&2zYlc7=735$JB>r7`|{c z%FoWm5|d+C`TYde*yiEF%?Y@^F&Q0OTF}VvG)^~Mf4ZXb?!DP%Mm}hD#iyElM){YY6DD!dHsAP=C z2OS05!F%D6u?+;}spHGfe<9$u8U~%MhJ8yea!$n`oomhjSHDsnzU;igziod-XNMcp zxN;Sdc*=flZcl2u{bnD2Nzm@;%-e`3~O>l;NI>)cU}hxHA)#B z9{QHl@elvqU5mm)UU2)4x6>2rK{QFtnOwzgxZuih929*L3*7=tMmjJu?}9zwnC@Tc8Zp`URJc3cRh&FcbT_(n~<+F>`R(>lVlm=6#p4#^A%K{y2Zr zFfX|{hP2A((f6FoiCR zT|l9U>uBHUOj@y|jC%8;sa8dWJ*_-NvVNy1vZ#l=wpBV`|FlqGJC~Bbk1X4~Rvt3H zoa8?p%B0(ij2VC93z6Peeq_@h-hN;TH(Rcm*Sb3koO~;JVcy5=z6P=bEz$H}#(uCk zb%?V%r^N<8E*3#!D)?I8hrj(AAfoO76falh9U87m{+vpMW?v3Gbe{{%W}zlG)<$oW zQ}EBg5<`mwo_ARRxEQJmnKcvgn%BrrJyiuM&G$eztOkN69E80>M(4z^QurQGEYj>) zhB6a{TDo6f*zR=;=J#7eA!A=d+MD(0(Iog*ddARKcN=isBKTtNj>LW^UW4aOO9(mH z2COp@+RfH-X1hsr!PiN$dG=X|8`nS~A+AguQO=Jwy)T(L1DIDpIlC>r$yTrKV21k} znER1LR+Y4s%?f=@VEBryOPI!1W{EMpaUc4sO@YB;IZ%ktDet?>}%x?-N9G zf3BtD!>>_UP(3WQ$iU(WlX1^PH+73!SO zN5%})Kfty6k=Qjx7M}#ZfZo-`)RAcp#Q2p+Lgg21b- z4Nje0z#ShhLk6c7^84Lx@l@_kL0g5nn!q<$_xUZX{oDm@`L?(`EEzT455q5IPq~nt z77%Wj4)^RlAV0bkMkG9ds@XnhFPu&1{q2WoFZaNggHK>tY9Q4dDrZNw-(_XNNAd0w zMe&=)FvdL}2l+29g0Wlygk%e64!MVr{^}5ZGJX%al6F2bdJuk_;)!zCU%|(!O77jL zO(?f)CLUe>5Bw}%z}$L0oG#Qse$p7;OA^9O6A62ZEnh*FlLO_t$-*92KHprhjMV)E zK6Be)K6Sb<)zmVF0dl+~`;{Sg*=HE6iA@#wW2q39*ak9ZwK*%7apYP!4dxWcU`@ho z&^nz8LsDy@D$*3S2BmT>!v{i0lnR*r+ADf@#{|+^B>XI#1a%QFpleVgm}UzulV1k- zV$%jJ4xfcf*AGCxrW$7V-iM_>3P3|@jwR-fxJRoF!pj$+@K{6e2}gM2yod7;yjdl~ zexkqp2(eu0X0gogc=3q9IPvyL+r;PXjKwBS^5UE8&tbRxXDl3FjdHHv@#JV5vA(e; z-~6xv?oBwwzk0h$U@%58lY4?|^mZD1^17b#K6Jwwg9i97zJdG>O=WTS`!TJQT)Gle zOfy9GFi}pKg%({UH{W39cgC5W9hO7fkN@D}=s2j~Vha9i%=je---=qJ3#oclEPpKH zgtKMi8L%|}1K+kR#;TY5s8V%2DK6eb!M28M%6L7tF>)6dB4nDC6;4;C^gm5Y#`WWG zdMeNfbyK)d)gPy)F2ef;)6paCyTH|(1U|FJ3cGpgY>;waR+2xJEjjGRxKl&$jE6QR zlNwu+Je-|Wn#YnW!r6)!K1@?rjRps<NvqCF&E3 zVVL9~3_7%vvk6*9;pL@dmi3vuyMB?b(Emz(dYiUeeW&{$3u%YxZ~AUgMu~WZN{=_u zr_s+S&-OlrY5btYE3eY%>;bIBaf`rv-6i-SzEY;THG}R33QPY@H(sSvjHRa7=;}56 zA(rKbY2>h5nU+w|m4$145HGy11?@~v=fmrCiQg8&ikBp_o+bsh=HX+`*TEd8di@1s zHC>n;G94S87hrg10;KKHA=CJKw5;|RJt$XTrhV*azkCL4|2Px(v-N$1gYrZTRWYfJBM$}``ddKx?4m_7PY zN!k2n=r>XulJZWHPrDE29N;4PHpoeI*R+jKR>_3%x%TkbeLsKXXaK!Gnnp?Ma-sY~ z6*T$C;qU6*c+PqQ_Om*Q)YlxNnyU@Yv!-Fa|9H$;>V)Q3P2jOX z4gM(*90jqhFs@k-SIwKj=G%wUd!s>+;j^6VtF_rw_jK5uc$*8^$4IdtlATeEWB;W0 z;gOCi>P`OzUcJen5i^%hjlC!`b6Uf`j7(-NffEESr4eh{)Inh`QqILqU|IL(am(k~ z@TJSWMGHs#qp-=Z_<7k=SwJ637+lr`*SQ=_qU=(kpj8=h=IG# zzd>Kc0)sE93w6vdFcY}NMYo5tvaI<`t=pIRE*7{c$vWKTHMgiP^gTTuvXti0Jzh!k zr$nl=l!60F$Y6jay{hnstTHtipx#&T2OH3aeVM$R+&{i>wkmY^+S7I~KQfLV$cj8p zvx=*CSvcz1#-s&Md1wjWt}%}ueKckB#!O=>SNpTs z57e1P|7IE>DXq+SC}gcJ+6Z-aE-mnjq7eJzG}rGpy@;)%4;fvO;eyk<_BBsybsx|r zmkHG8m;$$YdpeBS8^EP26w&+8Yjm~UfMToeP{leincB5*yO&nNixLNLEn9`SwTBzH zcpCreLo@XWcV-9UOj-V!eA3Z1Vsm$!FrT^JH2bd%cW%Q+{`Q@x{Afu#eY&uS-F4l> z_9P7!y?xvYqi3t3)h#hzuP;Eqg@veOTMph=esa$><=|iMV*bMXhp<7iRD6+O?8 zUef=oEkgo@sAr&Xa-}pouMQa zMqS3+_|~xal|N(Ya@XNh$OW zwL>-~oT|eOAEPl|U`ahr7DkS1C$7H!1ILHe8i@Z!o8q3=41O~GO8?W-J89CeOcYgP?)cf6Qv z|1{bq>;%~tDX?c&$05R@m=}00Y)HQcaNO@7d<##3yz-~q-#Q(3b>~i2AzjY;D5r6w zzo4&jxn|RG(6nwQ zn)R!IkB=wAoUTm7>t6tVCBahv_X3|a3f=nJVuQQ}y3{R{oR_Nc%3+Hsyh)&WT{U6z z`aPqEQ@7Es${{$~elpBnvXnx4cT?G`O7e14K# z>eOyH?y(Yao+=KD$b`JbGhk%49QVX^BR^q-1`MBG%L&LcE?WOE^tmJpl6#GO?$$JR zZMdBDfxaDUA3v9TR+>untF5IEqSBZ|riQrG7hoAN9%r-~;6#BRy3x;CU{UK~a?q=ep!!E(C6&-B*^g+^Na{Z-eWYwh4Kiy~FOPZOA_Y(#MU!Y^=QRhWB zJ;Bn_0gkLsgqE@-NT|r*G!M(diP!PMym=^g_BX+cUIDN%xD?jO55?s^cIb3;IA@e7 zAs2qWNF&1mkH^o%g_wXNEtTl|##x{#=5hYELcE)D2+j{qB%jcClsDLv&0l>?vgTPS zq>c_ip-$y$vkL__Sv$EH`@)T2O*}AP2|h+Gg9SFpqL8EQ#7YcV>KsG1caRN+=boeVChdZ1PGy6%`m_n$g^g@$_eOq0^hQBRmpZ`2&sYjKiZfT>W zZyH3>l4Z`)5n&)zD0Y+%e6KH+_Zc8{I5$Lky<1sokfkCO7|PNsBOkD9ONBW@oIJ6S zf(1&gh-se-XOmuSCi}1VIr*iHhHkLNQi1fowiZ;M{-d|wzhov!N97{$s zGoYlznTF@dfV)!w8Xr6cW5Im~;@aySgI3)2O z^v^sBYgFYitzSExePl>nfEknzbbzKAeVMMYCtdKI%f*?E0I$DF81;TGD0U-#n6gUT zJ~#tr?Mgut;f!8fk%Be_E|e{RR#onuhfDTW82gihYhFL^kYuO0OP@+}>NJyU1w zfpCo4y%gOaBh=MCfDtAcFkqrSm^+-JBYPf;BJ4fUBx)|&>IpsMxf)n*QvjJ2h1`kt z$+W8`pZ+y`;>^_du%F}hGMfV>lvR)pS0{SWlPk5N6OB@6(_Tn(W6Y?w&jQff_XMo3 zYvcH3HmHC61N_j9gRDNbf)BGu;+y!ATU{-O13l!icb^B=jc5^#xR*)Y+F_h?`bm&D z_V8CD0x5oF1(lB;L%E;!^U_VaFB=7ML=U??^}4CgnUhg-5`uwl{;c;u}BF?B-CR&?UfwM+tDjWEQu zu9=*@QVhPRG!uKbe@1PUwOGE&6V0xq<6GHEbW#!alEsNaHaiO!JwA=qXpP0zD^Ydn z4b;7ADIV}rMywp%jc()Zaa;W)oLW|eZ_h=c_1MFb!27!3p1X*ms&)CQQK=G-kSE-# z1%I43KR02$;VF`1CmsVNsG#M~=iKR$hU~`673^a`2;0176orK@B~;9Wej!Efq5&{^gR z;^sIoxqT6m0(h`~lLS+Od2%<>A@zjmY`seo`%+s>2NWG~w4_DoZOEm{g@Vtn{v(~OIOE#A+gl;RE;G)>c60Xs}0T#FXfbh4%yJYTD_$xXfvMn)ZwogOpp4JPHb2+nQ}M>$JkVF2j%Oof#7c@f;sTd`;w8^p@z@P1mCs0KXQEZ5UZWMI zW!h0}hR+Z-%ViTAuJRUV&i)EV8v3E`UM<|EdV!n2e=zIPv1Tz{TiB2)d1*$Xz)dmO z%bu=VB(*A(O0|}clzwPXMyIG!v>9K9ftO~J&iVz?39)5TjcRx4&fbTTIU^53z?Iv~ zG5-)7*`F7mo-^GbavlJs|M|dOVb46f<~t1k zr;0(=?hqR(f;m>%-1N1(L=Rl`MSDg}Bzv7R)V;Etrhk=E?@CSP-cN=tmb$RBgRR-g z)Fa%aem|gVhXGFWC-^mL0RPM6Jtr&dQF#?AVfpw;DBT(ZyBrULv#~5&H~$iQXV=K) zUhH7nE%j`~hAJkb)yP_8pR!Kx7B;Mmd|X(i0n+6L$Pso*o|4w&L$$6pVYh1VP)W8dxZElz%=>@VU@!_-HD|c_{>LPmjQ~ zL^-f~IFH-g{|UEVH5$g!4LGuU1=fLs_+`gJ@sEDP#kOyC#YLVd-Y1?QmfFjU-H-po zryIUvi?O1(^WkUI2yejW=C|f-aUfAGM%>j)!jaeYt@#u$7- zt27Pq5#8r#)bkf-|56dR-s;AaU9Yj%;}gQ5pBQYcDK0NJ7H`;poyPCaplzSs*&F@= z4cRt=^5mn)J5G%$&>zbAo<(2hPNP)KTJjz(@HYNSqnd3W>GQ_^tnX(n<{zcUI(y~W z_@G|?W@|Iat@EV9_=&X9t&BE(Sxxy#Ip8rr0pM#6_pqsiD+`z}WMV71;uSuW)_j~g zd9|tzll#&me5%yV#Ifr74m+_e`z7Ay(2a#kF`{3t&sb*7L6)$pmm2o_RZejo&DN{t zFv}H0kW2Q>Dr)7E8N^ zxl8xl93^c~GL=e|{<2rc8^@O!BJ-sEIay15}$aPl6>z|Na6|V>;I6FcHiKys%)x^ihfA^ zIU8nBpD8iFssX=J2C>%<71)IQcuMq;V;Lca%&%cOLUPthrj#Fi-!+N7SH&8P;B_dNW3&&37;EF(dUROuAXHj{jz41bcmgTwCC3y zRuq)Qu6ti#e{FwL@bb%Ka#};kwhmxUI>VZOr&w z1*vK{anA)O^~&4rFhx6;si$SIiri(APbMnTt8XVu*EGsXzoaNhCyj7mTMEW8e@B0) z88ar>jkUboukLm9|h>sXea48?9>axhlU3}nxh1gSlrTD{?{^IUE zxs)GMgD(F9am$8$e1GyGPHg@Kt-8X@M_pj1SXkoJDSh!&>P{~CZ6uwrb%fu_nPfgd z$PVwZ#@ca5x!@tz(C6Yh=>C;U<9aqyW0E-?ew0Wf4(CbiwjJQV&WNRr+ZWU27xlcc zV+9`;+8?SGWpH~Y_oKI}aRMj7hQ_}5NFV!Yv(~F-Z10U*6b6q;qwq7`ZeGr678|n6 zi+-e6Rz#PNIua4dAkH3jGKste+6fV-%&U|^b7dyoQt;;qj6VwGxwk@nrpne zLfBWAMeE(`aIISwI-Qgg7tXwm<^z?*ukQcC$XTVhB*z2Y0$;{=G{uO7M%Zq2) zyvK>^r%}BzTO7Q@Ufi=-N1Ar)C7Tr87hT4vh?gzChLfvClh4*!%-hQpBAx* zn>ukQeX5=drX!Ldz-T{bS1UybmlJPVIZS*~XRkOrUZE{lODNfRAzYJ-uw^~)}MP53o?^70Qp(53HA0c(H?<3V7RnAtlUS=Qn z+^2-qyO>mXK3!JdWZ{YVXrQGl{$}Ve?l<36+?zK=9Qt95xW?@a-q8?xO@*()G_4f8 z`;Uf2@@wGlie_-vn+yvJEVv&UWw7z=2v`~s0T%TUpybk*^wX5suaQ6LuI_7o><53+ zsxf0%+ALU;wRZy)o5Q4*VGM72 zhTu*!W8B2tr7eMnq{9_G*zxs)xI^99Qh%Fm(hHeB(i?ZTNc+FP#|~ZkDmYaFnf8jC zkX`g$*rkrfakYl{EIfi_*I8oePZ9cERYffmA+zYDg+K4C#q=csXa^2>wj&1z$t#Pu zo+v>3tqSbldJWd{s~;6eve>ILbER)xzp(l`2N$^kQ(a!VhKY@2Tj8{AA7+#EoE4j& zVA{L%D~&FCKwpypHnDhtRED#ZK3bE({yhCmha*f_>#5<)=J;fmbV`$T&KoOa?bDg& zrB2oHTB$*w}dythjw2d-1cC-LSG_$&Ym5 zxmXk1oQ!e7FAk5NQ^K(L$IxLZ>_l<jXlkl2O2#yI{j62geW2#Ovy7~>mq@Y@^vS0^p54et6rL;K{z<_yM|`aD zb`2G;cXJfak{>DFB0odCfBYD+>M|>FT$f1v&3L@H*bKz=z4qeke@w;Sn6Y@LpQ6~2 zYOyo_5}xxog;x?fP%T?tJj%~Vy!TWWe(-HX^?W&T(Ke^Y79vNckBr$p)I0~yi_FS4YCceY7eUoMtvaXwP}?xE869~Gq5 zYo4(WNmf$d3#L+|uA$Po3J%f>)wQFKjJbUP z4bDg6+>fg;F*yw$Twp2Xgk%JGs3Q$k35)b|=!XU3YY>WPgqulNxH9f(NM-{~3 zEq8F^`7oUH>mq8%U&UxoVdi@89G;&29sl#L!++W*am2@T{IeY}uir7aRTqzn)g|~g z@i89r&%wL{8mPaYL8jUznD?^)mPZ@GBWD*b{_-KN-SYw$JnIv8;`|9%`#OoMwKxff zIho87{XOtx7eaFGR%Owz0z6sY9q~N`icDU$|7Sw2*<*EcHg<(tr z>aMG*@zER6k_}OacJ=80F3X^2P@qZ z5_hu&{D}3J>D!mrGL|KJaR%=$rN6%h73v9+Mz1NHiV}$wDlH8eQOe9nW(p}I zl#xm)+~+z-h2GR*9N@O2|lkd2kEY zfdkftFwoLY^4GbOZ9-ha;HJR*+oeq`_bZVd@*>exCprGe?jmw?#ATc9ZbLBW)eHK6 z_odW~B09J^h?Y&CQ129Rh!4(lB5NhCi!H<wxEX{Xpr| zgIM*S0T$S*p=UrnJsM+8N6j&V`ybt5ih~^7TeO%2tlejmtRgr`zBt2C-9GyDpekD< z_X{`2zCqil$bU4#ZTf*dJ!`c4w zL+sV@3MYOMELQ^e42|3R+!+Q=7rcBT!VL?h~W&eVf5Ze zXR`fp675fy$CWpmsi&40c~DZwSH7>L6Yh?}p}s$9R?jq)7%Phh?paZ7nIEEW(Oc*v zIe{}+d5TPsZXkz+zT#Y;DoXbm(rbdJ#=W&em@`h1!EaGEhW{LB0ZF1a7CQ0YccznT z4wFGiTbwp_e1W7Qqj z-FOy?H&RZ_WgKS|z{8bm6S=lYDUduXu0f*h5@gNp294qfcwU|W^OsbUHl+%B+2AL= z|Na~8>_ia^*-JLAa)RX}*F%j&In2H(@Xz8qNy+77U@EXi)(=hs+?Gjx_w5$;JTd&a z??XjJkDD6mzx(is$8PYWZJHXY!%E5Lqz00`I~ocbqoH#8G+325MAV#PNbY2MkTEgx za8e>4oTR^#1BaKBzHUv3HM&9;8B0U&i}_&QJ`=P(ETKB!8E8}>$GW)A`7Z;ltG1c?| zyfvbn9G)FV))mL`HNW>@nb4banxjwGgcOiPx9;NXm8BRQtc3fEqw0OVQu-u1I>tD3KpmKwPrtkY@RfnBBYpXFr;YGUjK{BJ3RY zO}L87XK1s_XY5%AM6n68?Ag$l8G=js04#iRNa%fC1OAI4cV@&mPI;3Fce~J%GYp!> znV6e!DX(?8M3EL(yLBu_KPhwLBEG|koQa&J_6Tlrgfy4->^U?nY=o-wufbbMoy!?_ z3ruBWAf$g8yq{VHi*GjyowDEX?VmWeP*Iwj@%RB$ss08(eSMhj_6k0@4M4|@3FvF^ zf&4z>4E1&0{HTt0;@eF`yWS>=#;A^=QwkFKDK>9-&B|uF`Ed?aIx-E?n|8rUS$`6F zPXn_(|B`kk6L>z&0;0=JV7O(xP4y{r(&9Tw$UQZZiZ6X+;EN8lyvngDU)n=Ewu;cr zY7Kv2tuClX^boya>QLC`4e}Rmkjg3N$dOmYq$5IsT*opZ{YaR@_SNym7wTzxojO{K zOr*1ALisMS>12YnlgMKoPlGm(rRVxb(81x={%srW%?)DI`XS1P++3wHQgn!X0qt)d4KTS?ZmC~3+M9hjOV7Udj}P##o3OV z{>*>E6y_6|%wz+WF}n&4SRUresRi`F^^2J>^H@8Wzl;YT;lAuiMh5&%jD;Uj*M%8o zJr|Tw&V|gcHSl$%ISxopr;WO)G`D08?XbMeKaU z7ttTgAYw+7c-x05yo8*Hx1G{LeArMpAh2qJjvga@-;5!BZzMS%vX6|aE+TnHgy{9g zOT_8wZ=3H&uG(0NCX=3@f>+ZsnNIfhqcx9JZNyIrUT2r5G)-_uW*v1W8+wOfrAG&D zUoe&JZMngAh8i`hacwMX!+N&eZ7e&G_XiI=R%FlLNwW*@)Y+>h=0{63(9rvvK`&t}O|9n9kJNA_aTeYQ+7o81%V@!*6; za`~DQ9ej~Tf>zjzUL3T?zaQ^Wvbu)sl;X%o?Ba6-&eOgAU>a^Sjy_U~C&$+gfy~4} zI;-FqZ(xv0ZG$g>UTzQUvasX&FIjN2WljMR*rrnprx4{kYSjMpX`vUZ2P?%IN$tck zk*B$EN2%LI1Kl@L@A#Xb*kQ!IXV$17w*#`;^to+E=5S#uF7V*OLXnY53~ai(9~`zz z@fof)4X>y-ouqV%rWnh^&RHJd8JGrx`=h|dJ^@1A(x7zO1=xJ~J{%)oL8>i{)~rrgPFu5;^%l z@myWhUT*l`Y|d+S8Tb5BDQD?c!d+;nXT(0n{#Z#C zeRL(}<=Y8!_+Iks%Nim(#F1X!VM0p>SCbL`Yw3^KtMTW&%Q(GDj>%O&$JyV~L3`*R zOxWcEYZE81ezRRnzIqCK?q>%}|C#fB&+XWQd}Su*tO5_+o?*=G66}58fSO;kFr#}T ze(OArt;MOtpz|Avl=QX9Te230`x?Maq30sHBo1p$l)#}>8qBSxfo-P-JQkRiZ|=!M z-_FOx$KgI{HX1^$$y*Y8q=Vm}znQE!d5+!=I!Pl2eMt71NYPomN`p0);(=dj82tPL zRxgoZcNKnMQMeb55%TcEYCn_KGpq2@=Mk86A|5YSiouPB0P1p9m%bZRr#q*~*gF$^ZIgfbLMUmV8F=PQbl}?3V7^oEOlgDW&<ce`=JnPXKr zMpc~2#_lGpaHy@+T}#`S-TIt~VhR7uAOjq;PLU4j8>D5bK9r?zCDo@ti8@VhQors= zIAhLyOde*5tJL1m)UC}lpiqK8k-C69A2R}$ZE=D(ai*Y>I~{fv$HOn{dRUThAFTXt zgV=|5NPcn|Y_?tpwFiUXH{~__ylcT_Pu$2^6c=&7UtZxBlz!s$IZ0dVM-sMG%7dJ~ zmyE66q*q*a;2-X6TNfAFdy$iK-31Conecmh3d~)U4?jY$!mg%Iu=t!JXOaB~jUJZI%-6sb=C#yAK9b1Zd_*iKG?P!8)xjX+ zA^Et|7XHnBD=6W&fN|$aNY39v+Kw2)wz8uT6_^XVMjM0I#sv^OOa;c~s6pprfzRqy z%op`dAsULoFvsq$&@BqYWU+s=?4mf?_`(A^SDV2mM=eoho&w&QKN>Ca&G2ik73%W4 zFmFJdOuzl!`nB2T`c=-k*w^<9w_X#@xW`rL)UlKCs?Aj_SL?!m@E*0|ELm;OXclQI z$^KY&;L(knu;%Y-bV+ zNadPusdE2eC-?=|!sR`CYQ`hYz$1 zuIM#q?|`O}I}EzG!I*{tvKjSlrk{P^(EV1NY~7zjBK}yBNAHDfyh#w9?tGUXDEdgf zYvSq0dn4%&7X{Ix$C>=w8I&qt-AAL1stEp6grl#ez-&Q3G5m0d_+RL#e||xd5A&KL zs}VJ+GoJY5 z^w1BthT!@iF8EIU5wQwVCtH?iV(qF>G>|vL=l*^4yq+UoFpot0`y27m=Z&~{R|R&P z-NA9AtFb};5DquCg+w+Td_L!nlb~0-J-HdGKtN*9Bu`GDZ6J`PK_9ERql~lkv?2slQVas+>r~`ap0!A zt>ylX@Z|Qm>vBzwDqLULGR{|)<6?7cxOJ7YxDRsrT)OBR9K7EO)^`rzU!!~cnhldt zZ|-4S=5-Cnjd_pGfeP%^0eg0G!$#&Dw2f814`P>MHZkjroh(Z{hDn}Z!S>H^V+Unz zn1`MoD_XC~Qq6DU)37M?eYFmyFX)iv<;|k=cXMg0qYYXf)JMtwzjW~t2MV7vXmkB4 z${D|;GOHsS^YqKu>jnllPkENcTv(=v32pa;oSn zd6l67JMNf5sgnVj_w@`dznDo4FN>iCr%NObz9Cg|^U0Bg(=cKqxdD`W;NuGQp~-2pY<~ z@SW^PQtc5>itYA*SaU0|SN*Vdh6=Z~aV+=bl{I&SIB_Afmv8|u9JmKRMsf-J?}7T) zeGqU`2Qu!wTO! zbWSEAhwI6;c0XbeB~I>~U(Stl7{a~1^$l9?e}hr4#kf7w2B7wK6QuH|V6j0Oc=)74 zdsVU!R?LKMfkF0mnJ=smy2oaRkHbjq8}PU0E<_lefps?uVX=eoJz8aO@5yq=UbzQ8 zpG^eYr>j6=+Hp7%+X2P#w_((z68Kh73!fcs!K@Ay=$rhI=J}-HD$R7%tFOkb`tr=t zV>1i-lgd{0?PV_Olh}~P6m~cjb^Z^~>KXzDY?7e6t> z`VHCye!;5=HE4FN7B5bJfT_1B27g|N8#QF`Ri-zuanOvv5oASO?PRED{YAQPAcy`J zIakziBZ0VNl#{b(KZ-8(N|N$hheYOD;k@SMOVma}2IKNN1uuLDwH-YJ?~aPcyR|1! zL)3*QW!f>nw+%fsB$?N(v zVdQOk6yK*ryiVwW`TzIGHf31>~+DSp$_Q$F$KTr7vrxf zkML}A5=)x@lx?{1imi*3Xq@bPjyXp!V_8{l?BrtMaQEyk{yCnF^G{B}--9~1_2p_* z@r=iH`qua@^A7#q@`G+0TSaqD4nblz67?@$r+bSY(5~-KX)S1B(Vx*c?!|ekH(Hf$ zQa0gV7i!vU30)_8l~0J9NCw7r0qFc$0MVBXM2`;~C4K*-A;U)5(Q`ko@(BJO;@Ao&6hi<|9x}*#8(G)VQB(8ZJNo#hwWpd z-BZ~-x|p@x)?*V+v|%92{I{WDu^I+{IE0CN^>Fub zeJ*)N1RT;k3KbjfL1w5Lr`f-Z+mhnQz4UVBHg8+QnTthnuhrr>y8df@ zH`gR+i7zI<K->($N(;v~}w;`k7xtezx7^rKK;@N5#|W zc3m6HzU4>*dsVUTj3f>rdZgxTH!u11ul1LiBjJmsJXH9uhNG`6A%9LW5v+pb^DHs4 zA-zsC+-MHrm^dFqByfy^Emq2=;misx)VH;!pX;*tn!4|_Sj-RCH*Udwk?L4(M(B6D zPC9AnO{#cKmu78`r#WVY)ZJ(vR@(LA`b+2Wmii%nv3)TK`c*;P^cNB}UKacn^2qcr z-9*luBmcP%A$hQZF01-MyO#c?pYvs~>dWIH~jd*1o;`3YksaorPI&ye4 zofyBD7HWK?vVWs!yqjA$ZGIX^-P^zLpR8S|_0h#NbN+bxZ9^9gUAcpn zYTThy@9&^vw;mChW`CnS)_-Z=+VkM9wv*FX-NB6uybfhD^~}KKCi|UI!phGdWv#oi zS=?Ya%MApUvGNEwPZp!FUErb=uYid=ztFwyM(l0Qd~`9HMxDiiMAx^(^46+OXsx#& z+-GJ%p7Bo6ccuMGhq?M9J9Qk$DY`ZWEK;&Se2Is+jDw2vs^94x|`e3 zu=+dd%r>MeVg#QjO8cKOC_0>TSa}kR%GHmAW#0DAhzpz z$fPf>V7a#js($6d3n2r$;AaY1(NRfs^&XLVj}DQ%9gXCNVm(Rg&n1neQ%Q))6LPJ1 z3HY2WC8N)VigJG_k(=dpM7BDQY$(4j8oJDjZV$b0L$eei<7qBw@%loCl^M|2X>B&` zEA;6n$0A-~>NYy=V_?9RgtETiuU2G1GCoNljVCp9-Q zwd+3Y;cizZ`(rIreHhFJPfcg9y3N`1N?Vq?a~N}OyM`A8x2aq0N@msI&3+%9h7JYB zSpRed`}N74nLYc1V$G`Tq{bV(dL#{eAN6zae!r6Iy;pop} zXgs%*ezR4E|2l%9CFlv<4ef%!hIEjLbcgTnOhN6_WbiyCg0~4jm;17 zD~5a*4aq!44C_b2`E@#MdSp3U=J}GD|5wAF6=bmBRomF}ne&*}aVxfZRU?jDQ;5^& z&BLFo70}zv5&s!i;EpN9s5kxwhUVYG!&hG7^OfZod8ZgR9Erw1VdZ#JcL)>T`WS;? z54P6*7Cw6P*~J<1EGk@+6)k%x%mrd>G*^O^>s(-nSSZXVA>_vIgXE>2G11gIM2@vz zAn8{d>5K=CIJ#;Hj!%$7&#PPcx(fn-*~3+M&D0vIWh#jJ4=FgL^&biUXeV0PxsljS zP=rO!ws2ZO4a7?NiDdeEFr97S1am>eFyiwSOM(bbOGSy))Z3!C%a1n#|V9DX^$V`fRC_2a_Ka!mj^|W|c2Du{?2SChr@- zF8*1_Jikt3Ym;5slh1Z6;hznA_FxRVbznYgKc>Y}Du3gK2fA#{_xUXNQXqSIaWA_z zA%i9CNMKSgyx5udE=>Q3AFGPr$?9B#Sk75jwyQ3Z%`Y0qR>mAc=f2CB6Z{l2BQNn! zb%icM(-}y0r~?}z8=19LiwmA>#BG0k4C2I^1t+zoXx$s0Mr6gHgMA|`#6!?ABMrpV zYhkFxYv^69%Q-fGhZ%KWz|vzBH$2dSqdQeNvyx}R-1-yFZ&Kz8OBJ{aey1SP=>wSm zsfM9vx`nPlB|Ka-hDgV3#-k;-u}fct*@a56%RSq$hdrYk8y1jb2Bl=azdqP69tEcb zj>_O!S^nIvnS7Vv72AAmGzzp_Jp5`TYG40EH$Qt%pC1^7#X1T?{-Ji+MCqLqnxS$ z&{YMLuKg~CV^U_~s{U!1vWn-F#D%+P4NdNk+$adM-2}ruCeXz52C%r{GJW^;D7~tY z$_LKaK;m4A$>g3~>b%5;+Q-g=t7k{Shugz2DIt%poNY`uT(iPY!7pfKZvZbF8%q>Z zPtc|?E5SRpgk1UhqyDV^S*7jF$G!V1!nGOX+{1Bn z!Q!uU_LtMVQ^jcV;`>q?In(iUUG5!vA}Eihh#vDAnH#CDf+4m4_Lp8L%cX%1#+Y~h z40(O$F%ezh$)=j4^t;y<+Pv>9l{#H#6E2s`pV<1DZW>r3aMzUaNxKF8I$cWit0#>- z)K#bd^;M$zswhmz60-6^#x}AquF)|&O9a>3Pda<*Mfx?Pi?+%gq{ok^k~)=E!3l7h z*!((A41Z1)9XX_iApv68xxROChIv$Kd6wA8|^U2^*`lnyKi=Ft>SS z%+Ym_O~_&F>zhO{v8mub%PMdRvL`_ClOp$YQUQFE8v(|?Ye{*^UWog*AGG)H1=}4t z(Dn8qJgVsir`}$W=!^oHK3CWyrU5HwE+Ge|NRVh#H=28TB7Rz9imAm3FmaO#XUb`E zlbw?|(Kav6(C;*aRs>-}ffM7e?qQkXN=&O~KOCAb22Qnl^nUeZe7C58XqWZFBVisH z<6YRW@|+=*T+@N`wr58Grt?ejTNoBQihXbLrX=SGdo11kLXj2{wE?8YfZR#WCYAlc|tB) zPQwigoG@ih5IU19^z<=LI&IQtUgvNR<%IeFhr7T*am%C!9hT$$)2=9+{fAa)PC)n3 zg;W&ajwJ@hc;iMIn>nnCt!&6_Hl~RJr5)8N1L@+!$94N}{!qDvn*D zijNl?;O1uzXvDf{VDNEt{O=N;u1dx>kv3l5mMI!EF?0!?cW8+=M#4JtUnv6?9Pl+JlSqnJuvI5fsJ*=aL_+fAWZjy9D4{d`!2yzwL37>qZu}M zw1Bc{3wS?j0-Aptp7_6l@o(g~XLb{~uO}XYPSqjU>P2A7#5EA5774m5?ICVkA;^r6 z1<%R|QhUf4a%Y9WJRAk@Lo%VSU=fk{l}WsJ)RGGZ%Gmt9jF^{2;pOBacIm}!_SY+! zoqij^&Z#}e7s=ysgo+j&`o)nv+$4oy9)@QBS<_E4Psz5e;Lso1V-gkxrDQhkf- z^tjRs{<2B{m7V&BPq}}dCOW0im?h@4Gx>7EnI=7q%8|w|0kUNA#TfcJkk&W&|DcnD zLuuEEWICZk15ahG!#4!*-Nb2#uh-zw#0j{_RUA!p@9`}+7l`6Tt+Y6N4DNYig0;g0 zM{*xe9k$(UkhFB*Wq3&(Gf#wr8U6Ibg&aERQaaVCEu!WR8tKiTvG{IK3gyO2P@hR_ z=z{IxSZo;FpsuLEHJo(f-Yl5P?d{5fceAeW8%_{8sv)OGpPBM_f#pfz$+_P$`Jj0GYTw6q!92=l^G0Hfh!3JHQ z%Hv(14qEhlJdR$fh<$1KRQ+Zz%^826dJ8|h{JtrQ{dUK;K2yvJsHBr-_0gA2VmLz4 ziulZS0~Vr+VdYRDwPFZp!#0o%oC`#@%}q z@#}tjTz}pGmvle1&L27zKYo(JaNVgkqpru$fdjs{;_-AWqchRODhYR#kHU8X=VE(L zyy&a*W}N$GINFvBLs9<<95XlrYd`tn`=12muZ_gfLshY(-vYD3j1YZ&(S2hf!sK$4 zuoh=t;h$05SA}&nny@xSclPJnEVfeLjji1i%1nZyneD3w%uCUz@ju&4<~(SANOxsG8Z{zJNK~I zm)me;CO2o*2yXwEe~>d?gIm1+3;6yzK(=ef2s!(hdihh*^jgkoYBVAomsmeWRku$3 zYVaHH7`(+jO@DE^`zbX0dJxMit1!+!7CSTJF!tmseC9NnHQX{6`eTN+WqA&^uaZZw z*=N&;(?(_PT zje%oYsqZ)^SZuQkB(2_(yKzHl+B_+6_#pWEgdM$d^j#sUH;o zUIhc;V?k;4Pzc*+0^(DQVDUOtxZW}qeuy@J##n_L z_!|zjw8HO?#c)kHC+3J*2~Llt;C3JyMkOr=JFjW*-6vMqo$V#=CwU@sD2AvkE+sD( zj0aQyx1{o10+|Q6vNYWSbdd<9oZwrzW&IehnjM9+i zOca#3M{%-T&G*kRN96(>j!Ff|PzsWhnjrUCF07ll1C0FULEfMS970zpal$UkM2*Zpk+nP)GTy3PMD{F1IKRj=5v!8rWn3$*l~cPQi*%$%K@SEGEtdc zx5}bB=B%N&dQIpx)e3%~U+{4d)JuUYyV%yVuR2?ZUmY zbJRyVu|W&Jv<#y|!h`7ZX&kNkC9q=8+R~dV3Tf;3LQ>sk4~hfDBH48v{QX0F=~_Ah z+lS4@v0?rEszz@*DoYE(i3zOE`as6LoDAbK?P2kkAOJ@<2vJgl`3eBs=G##3Vrw*^jr42Gar*Y`TG5Mjb8udDB`%Hj#YG1b zvB2~+zL?sGP3cpxm!6@jpHHI$*M#52g7Nlme|-9I2US!UZ+&oPIvt%A2d+Agi1L3^ z1aDIV*||pnYMs;|)N?O*XB2=}xbQzZbP0_7`HI|`Y)g&?4-$ug;qbFj0{%uh!nRsZ zcrKX%)AQ}%$e~hDX%+Ugot@x0N77yR=VAdD3LD6{UuSUI8%35gY&@$PaAZ3+ z2eSaz-Atn}lzr7W#x5+#XNP<%VfLPV+{4*>x#jJJT!E`T_oVb4$nR=^hdW1euGjtp z#{m}*UmFZ@&(*n}nh!8n>ox3I@CRB1A6A`j8~m8EA3kVHLROX)tk#f#5?@1ze>Xr* zR9+SB);LYdW+cGZ%eC+zuNhnt-awFqG$->wmz#3kjJrrCa{BQ`oQb9h*EU3zBd^ss z@$F-{nX|>Xh#OguBDW1rJx+t+M?Ha8Ur)j(%qOCkk)kUSjEr>^_|P}b!|i{u;OM&- z%qBOH13EuRp;HYSN0gzO;w_@Ly@n?ISi_Wqjx&4jT2}RP6}xxk6nHPb!j-8cbAGM6 z+3lN!Y<_-`z_Z)~ujfs{b1S6TWtxcf+p1{y6$RYmor5Pw_~5eg(Kd~D4p8eROX0ky ziwPn%WRVB>;dSq*tAaeu(;A5pat1`@d4Gd_eZ9@k&w8}t_BtABTS!*Ck%HBgT5#dm zSXij-L8PXivGx!cgbwZxXmy&v6*1B#{yBa&o-=*u=7@XLciMjb@ZBzY%J(FdRIDTJ z5C@YTuaf@G6q4ZaOJr+$l&sVYqVw)sqhtIgTv2}trrnN)nNLz7!euNg(9dR08E@#y z;UuitmlSF^|j&GQYLcr2lYzqPejv`Z(CAJtGtO9S@vH+7=vo#sdqerFibY868We?u#Z z{Q3G8RWi{*mKfaE6FpcUO{bOBQP=f?Utw=K7jRmKx$KK#$yX3khc9N0X8L$!bv)K| z?m)$rzv-j{vDmOjESyvxVKN1>RVZhdv{= z<5E9WJinru9&tE8gMSFTF4?gte`^=k3-imzZ6a)aB*Kh?W6*8N8r;^q9M3i^M){9% zSa#qA9j~Z>?>5P!?1NXdPG=}~k7}c)x}Egc#?w?gJRCOWyzGf?Bj8tJB<~%tH~QJ z$g%-h7eAg(FAKFC>&ndyvuu-r#%?y?ao$QA9Iizv(1@c!V z7lID|2HVfWx!J3Qe)hDV5b3PO-6`?lqT>oVvkVVz#^+wrS-?=k$elKOq(V@dC-w^W z5Ahde*qn94*nr0z=1^+EVzw)?y!*GYVC_K^8-5U-{T+x_Oa$CMlme^$ePP&65j;&T zfpsD6pitfq=Sthav{Z-Fq0_ndGF>o9sfv6mvtsYh)v*4m6t-~t61ZmE!5xVmW;^+( zrtPgdC0nQDV$S&eJM6R`$u_BsAiHy=p=c-%lP-RPz&~~HQ9Fm+ebCDfKkZH)-?~XI zdlLHPLS zG<0r_!uFXXS@b(!R{SWQ>75K=qb6mrs!4UMYEKp$CbpdXTJna|I$>jbgP&`=_M4?` z*u`($%~2P*5$&a%oO>a(l_tRMX>p*=)xs_4f}1-!!JHH0eCKmqmdhgUbi)iz^@Am6 zS7gdku;^>tK3Gb^Q zuw}XM`*R?1IRqY?JHhAA>O^JyNzv320=uR=;JNn^cy~?$esW~E!TmYj@_m9shM&V9 z@7`mF*Jw88hcEMan9BAo&Sz>md)dXj0G2;CiKQM0W%F&~*e|Dewyz?d-KNQG++ZmC zcg%a!IBB(`1f5jXKv}ljhVC=0}O_9KPq29PM1GE2^ocj(J7Ex5(ht8 z<+!WYCi25ecZ0m%F9-{p4?YjZaAmWH5N-2Rc)3}fZrkRBFTX7$_s->$oCCv2_VUq$ zo8(DO=}VHj_y)4nWg%R#aRy71DRA4<032NGiT;Qr`c)#19?$YX!%HP}=D4GD%?L?a z*BQx=4GbeadcwJPPZPaz@|sQHtp7kohC%haizI(jDRDAxvAGavNkbyEkxyg|5R$~l z9rqcXv!BlhpNt=ihwfvUkhh$jlGxB5oNxJ>% z99|~$5V>XZm$-*&K*w|^)H#)jPG?Wz>D~YgnZE)5y&FbTm&8+rXUc4M)FpP)xR*)J z&1BAxc2RMi8Qk^bFJW+=;Ms6kL^D1u6zymV;1zNO7wJ(q+WM)?X5f@Q8SjuzT*g)q z%V*id@JK0n{~?e#eHkLs7aXf*`|8QZ=(#q}7B8l$Qsc;qe<4(BrHRP8MT=LgJs}#l zRi1D^5~)LyjH5#=nv@t1N%-~ zA1B6^D}6%O6JOEd%^f_j>lQBR$i}7>%P~~h6h*5?Vxht@OcS!bVqTHB#6KPX+f|RM z$1{-Mb{RJ;I)Y_4x8f6-Ef`w08M|xm*hJG=kYXY9qAORD-Lv)4LEj87PEbJu^*E8+ zB_Vqps0c5X`#`nJPjnxVNJpMZ$KoAr=x}x~{%$#dHX>#A#b^clHrk8Lcx}%nX}hw; z#UeIv&x$oJ4`H3!imcGJ8aG%vW7UdGd@J0ed*!;bvwq9i*n&ZvDwm16R}Gl9JI4y| zeh@@?!5zy81yfp7nFb%gY*R(rOuA@7QTx z<=Sn2%aIerVtGGNu~UbE=CK57A{rtZcMzEcx=^w5F#T}F9nam5!=M-!`taTl`k#*> zZTD=nkutr&uit);bf2FHhC6?XI^wh&;<|1U)zPtJ^rJf@`(-X!bp9UcQV53mp4%I4 z?2(}sMf1syF_U24Y2aqnE#@psXK-sohTQRsYFt#Q2AA(Qit~@tXtVkRB4u?2td-tE=MHJkVXP)Ruhga$gVCg-WHqSW_``Sk)sVo;r^%-(WnwmW zI5e*i_(q$(MP);8;kk}Zj5+=c7e3KrkDo4OKFd;=-uz$|?Y@A0aM{3YR<35B1#Z*U zZ8mIrfG>MI$BSvNkYUr>W@2BFIL1s|hl(LBc+s^JAFVu($*B^!*KsI$9TP!AE(*Jv zO7Z#x2MG*#HwEi;v@pUf3?;2sQl~zF7v1d&L$;3~x;GZl&sI12k?VE&Z@*49>^vX= z<9bB!VxWU`{7fLzM}6ZX%*LSi(Rny~;vfYXXKL=g7I*!8iE}EtFhbyx87`_N`!fXh zyI&2&{bu^!5p7SLL`blUdWPc&d0OTvOLkw*^+sT$uzR#i>J#Qni2GkFU7 zF55%>VyEMf_FFXXs-I|mivm587(sXGh>H^CR?yvj&uBr+ciMVlE^ewz!Ty_zW0AlAd1@RTL*LrA5tVKwa4r-4 zebVtz-_i+hUnYaBR6TfEKZKqh1x_Vt1=kuJ#bqx@;`Yr-;9TZ}a6^}D;`oamobEjl z_xJl4ju@PRo4TpcCSD7Xu?yf*%mAp28O|j=ROCi){7Z_gker$|8@dlPz~GR>#7t^B zxY~I^`x!4$sE`kwmnetx<_Zk4m78G2fjoGkH4YlS`9k?cMVM5!pIlX`;H^Tw@&}_F zgNjhXrV0~!qbQ6@u6bT>W~NN_jc3xd5zhR* zJy9adkELX-{0gFw^oW#88xiT(K(A;ByH3qFcz16ebsTw;U<)s*I-g7{)uQRby^pP@ z<_ZkoD~GMDuZ!_kpRS5Rjyn7@Pm~!p*n$;QQBx5%=z6WOr8-Nf)gk={9b}D9e&u zks3*6E9;STz41inl|9*WyAF45IfZRHyYcU>JpSrW@utceoOd}J&x8&5R;Ls;{$7Th zJ$|5wGe-DmhA(al%EiDJV=J>V9J6f$ZXX?odrZS1bmd{#W*-0xtA|0l&3`C)gbCh> zjPUEReRQenE=YGc4r3Ny2gPUC!FBcIoW|#1Ylp*FBTgI-{Yv0^1P(`k1do$f_~FJJRnR#5 zj>;S|q)qKk^lSeJO8>2+2ZPVia_ftu`(Q|{ze~LuMi(=84ATP8Mm z%5=W6;2GV!%ah9(64+3=1$6w62=0|+CBJNVE>+3w;eH>gL{@!%sDXGPi=P_kVqHIX z&NvXY9lwXlPhUZc?u&!_*E*P57y%!GZ-Jt4R-)>B%*JUG&E>Y_qEZ+hy4E4G;7@U0 z7234&+*!Ko?|8}`a6lDSIp|qOA7A};4ZXLgm~P(LOQWU={qXEN)U(El#;^2*M-mAz zL)-#_tZS&BLo9tXJ(AvmQ*>0? z+`^8krm_=0r`F%>_`tj05R zB;m@z8d~k@z%>r!A=lt|JPgE1*Q{6QPXM6jMaNO!GZ(x#PUvyPRN%10Z@BaJaB{-V zjT|L)&i|I0vy;Wk7#Et%#=lW#E9zTdfo3TDCm9Mw?X!U&@e+BL9l&;f4Y2lZ2~MG3 z99QohjmKyw^2Q(b2o5`*3TY!{bE7NCX6VOKAN67NXVQ2#$mZn?*S(719HyzI6a^#t1 zvKTwq+ybj7S3~@xI_Q?HhOiwGaJ69*R7}c%d+G5|e=rp!WQ2~vtbEuqWf{cxSilt* z!S(#d0{+h03Tks!L;6Nfc&)t)_Dx>|*H&zTYwCNzzk5Ga39}V2jsB_Y-*Yx3` zRLTclLXZ2ciOv0F(mNr59PfIENA13ehi?rP;eCt2b08bu7d{criZw83@dnKq2*E{P zig8%UJ#6{mHg2D%LGGp?lD9CH%pUY6B@ya^`(_L&%Pk-dE+yn+b~@Rdokt!O6p$$+ zLWrTT)BV|1L`o}pk{QrM{-xHFme{YjZb~Mbu&b4K8(w2Djrvq3E{jIixlI4d>|o zi;4@mw+*k%1%rYMh;p}rYgq_*7j1%7-noz!83ErrCPVy-3Thd+0I)F29e4RE6u1Zs zJpFDUSs!43@f`?q?}sWqNoJ8K?AyP*fDr*7;meVCV3$V0cYl@8T^b3cDWjl<8>D}^ zGEni)1GiNTkWDQhX;T;H|2PH$|8~J)qyyQBIZz@ALjP$m#DDljuWRn&DhA|XRdX@y z*=G;YZpR>uO0b!J@@(Yi7r-2jf}g;p^tK)g_q~q8bLS_p>DEIyuJ8axjZtS@urpiv zP=`IL8^NG|82fV8mc_ic7S4Y=Hu9MqdyM1ZvcX{}IQWD<>a@qZnn%;;_Zyr|Cn@4a z*9IDVJe_|f-sc?i&K}+0*UcXs^_a$qJis|j3KHMCfKLzyvb!Z9GA5O(eSSwZZ0sPY z#Rhb8FVW%qS5Ysw7gQnW3SDh#O=F&3p?AducZaM4-|v5!M!QDPX%8zoyz>UH?YN&V z>aFMML(Xu4Q3AtGu8zMH)Ic-yG+_KOAGl(E25vHdEvgJm{ZyIX6?K;XX*dgCqRW)m zsk6jP2{!EAA6OqXjIDPa!=A<3vO>I&jrqKRJzeb0(skY0mjn8&CuSJ)RFY#s{y(AZ z!yRy2{0=S)tkwqMvvu!}%`p8~0Hp6zf!o#w@bQ~6jEKKLU1lw#PV2(SuBs^VSSOsw zzBoxf=++SH7iA>LuACT|rjk2*!ikq*BzZDzABp?4l{9xnlkHElh}jVlk&??MeI%Bg zVy8%=1y7!!RPrr6lSp{sKzsg1b@IkQ>+!?g_qwvfiLAn;Vn6jka5{5)Gm0NQ&&xK8j9uU z?z{Hfz2qtQ`sO3}gliDbT@8W{<~+2Aslj#oWcp@~6cV4Ffx^U!AVGCB>z=uuMSABl zqc?TzX7FWU&Y#8-)Fv}q3k8;)bb)&GZRJkXG|~AXI<$morM^ys_muQUhd;SXG>hSp4+Jlh&pTJNS?Cd{O7_pAr| zvmwB?e}{916PW&31hfu>kJyx!gb4;+J`R=WzK^CLi`d@)2^-v^Rfj&RgN0T$>N z(P8rh#_=aPJpSr1^52YYWcbGxqN8<~G)SDn^F3GMIp06w+W{X17W{eecpSk_eUD-F zfAT=fNbuS&tw*beoXBctX|n0hG)`4H6gkN0W1~`k>|6N~4Sa}z2OEch-rz3y-p9eT zrK)f%(F>Yt-BF@x1^oibI9_5N-ubfy%^d##shbJ2786}uX;~<0US!9k);dn>R6@;w zbOLhZx{xR;0!^?>L(lDoVdDZt%u7|G;j((js-OuaD!fN2rdrr;$yi)cV2p#0JVFoq z5MI==4$n0A!nwRZjx5d+STMH z#j7jG!xPYW9H_Y2uLbRY>9>)eJEX)$_aY8nmJIR$ER z4^#j$YBq58Zyh^r?#@mg z-i8Wt+whLiV*WxGVJA<|Vqx*B47;a+!@;xM+R*!`A?!4An(-2iz0!)}7HZM83&QC= zJzs3&m4i2K5je)T&fpoRwNT3Wjns6}HB?^}fCr~7!M3YTVomFE!ChB^Z)zsu6|uj$ z_H`OGS$#dt3@Twa8dX{2l85w7xD0hk(10H=WRb?)W^^>j4asd~D8gVmdU7`dt-Di# zMx07Qw(Wh~65lA^GCvA--*RR?`I#4Lfz^@jlxzSn*;P zh@DS@mfBuOoKOg!+qS^;jB~Jj+H&D-r~m<#MCX4U^XEH)Vk7OMMyH( zRi%LQj6xtN2PXSwfipf1QNb|~yC@fo4oWfo3^R81c@|XoxI(UNChaT;N6YhV&{Ew5 zX?0AB2sF%jY4`*U!B8fGEmtl|dBk@JI0_vWt09p--blRSL zbn3!u-nL8{Z(SIHt;Z_R^RgB+Qf3!A6aN5NR&>%|jWQ6>H^`OsoZ+1JJ)t-D11G8Q z6<7H+;d{Z4al_o57{v?o-gEcSMimq6XD<@`pR312!@ zj~B{iVWnOhEa}!Oyg6kAcf1-7pX7*D4*f;yazbZ*nGP1+o{BvL2gQGDWrNmZ-Ba zhgy$+EYLIyj?Bbl+?(bqriddwo72buKx6$SwnW*Go67oHTQPJ`S?)UK){(O)%tu>#--4oR!sjbhEY>)*mNL9j0 zqYQ9@XBV2~x)k{(NW<`q9Q@^U4gQ%tn-m)S!SnA%@ugdC(DI4r=$a*ie0a<}WH?P1 zO;I%Ci(TrdwwRDr4_}0C?w3c9>%~V+y@fLM8u;XE`{)tpRIb!65T}&BMaR-WR4J~& zS=2v8W?Ro8yNFQK^ydb5b9tGw&Fw8T@I{By_F1Q)+~ox9JCqHQK3_qi<};)WWx(Be z>2RT@5X0eg46ghf}Dfo{Aj z)TTv%^gAi&Q5gw6k{hA?XDoDY3xV^!hrvE_6C5AE6*BxzLDPumf^X1{9J;=hEEdG! zfA1FH>K$T2Z)GX=l2pJ00d81q_;750^8@;0u!g()ej!CYcX*m*$2Y6kqeHDik5IRf zKDOkYZg`wT-tWb^i-|n_SS%0uMd|eJ^GqtHSVZ-TI=Dk#|Djcpt(-<#9hd#7oS&c_ zL)RC*LTQV=;p5vPcy%KjMx<u4D-29|@A?wwamOJ9ElU(^GgN`7p-WGcJ+xQf~LRImrjk22+*v)O1n z9hQ(P!45th0xs_}B(1pzn{Ji}W1V>T@^v^YA&bGG>MI}6r409K<+W~u=RJ0XOie7=gueZcfQ9)>g>J9XF z-*AM~RCtrMGmwvT0D2;HBKw~%Lw(c4k$#^N>MbomzRwsUan0zgzL2dk^uX2S1gjdK zKxFJp^zjXksy>Ax@uw%z>qIxsaViyst4Z;@hqmyQ86A8`loz!)m_+ZVt)*Wt8VK$Y zb>R-NvghNur_SPtuUE12j|Lod^A;|= z+>M{jyoV(lF5-;67qMz)37$7}69>LfA$}KsV%x*n_|H%jR@_p6Bci_wPR6O^)mlQ9 z^g5D%*UClfMA)~`d^9@%r zBrtGu#W-U0a~9ER7*CG8vLzes=aGR7On6fdGXKF$G84@sv)0TY=H+%|?|=L0&y&-5 z=b#wWEzBa_+dSy(OU=|gPT<@)F9UC5H~6(>F*MIT4++tena}ScHc{yUTQ%2<<;zJj z?PU$nwDdU4a@!4G_eOHEa>vm!i>XL)Ts9qbD1olj4C2F!IWR z1%^VVQsy|+sq6>*;0SE3eFV2lAHhhqV$i8O4+qa=K~L!|2v~a^{8P?=i{O88ntKl> z8a9B@YiTyUVh}Q7hTzrbCdk?F5N@CC;SaZ1qZcF(y>-k+U|)n(o3ha8o!8LS)Lm%3 zkR6TMd>nmz%cGe$j-bm9UZ}d%0yV;LJUUke?=nB;bRsz$O%@zz@%4ztbnBvcJAoTr z2%Z;_rv-6$v)BAwb`h9nK^o} z^A0j!o`T{NZ19%SeAH_i!THK`qx)L=_(Z^3?9rXcSAVPGSH&lZ$}_I=am%OBp--_C zzwx9FYBJ=r`c^WbE1v9=btND6m<#S+36j#$iYMgc;F!Y~@#dHu+-;eKd!(=7gTC+jNA8vJaBi137s2iZ{q`Yzy9>%#$|b>%{HoMl!~v2A^E$L-a;D z3v6aWocec>{hq5y_pHO@#LU@b=BAk-ezp#b9L1Qn>UdUi#+AKEG-q>Hjbf#jg+6kT z3A3GKz~)(MFz4M*Aa#Zawx2D8XR?8?X7YS6C{3p(9{v!i*-t-QGy}6aVW9eA9$YRT z0k^%Thz@Q`qGh&$0>{4?PKSxJHU1v#Y{^l!^+gHu*FMUAe9ds4;hIQ4O;Vy8KD5wV z3og+Vy;vF(*GWfzmVoJTLf*F32E;bLrE{h`n4Zg zzPqsCnClE7@hjm=ez5%)yIGfZ4Xd*bU^=|O$7_=WEp!gqy9<0&n~CUVYbrgZ6AANX zYq4F6KGN+gn)$S*A-?Bk4Av05xfdtrAy1tF)LVBG=NLc3*XQP9|3}Ag<~Ji;w&o`~ zW~0bQ?>I^|pGx9iOvL4W2tk?^t5CREC_nDjXKr@=AgylwMPHYD3hvJ%qTVsr`3(mU zO?j5+EWURbTH0&PO}uGOt=GSy)-wb@5dGIpsY# zkG7p}an^D8!)1oW@^X^Wyun9Rx~bM0JyeTC>SdNx^GGUcv`s}Z+yLh`D-YQyL?WEg z#C3RS<5SDt32q4y+Fcld_K$9%)8+qhk_n@+<>wn{Kz9J_Q zs|qTge}qG=KjG)Pe=ugJGV^fz0^P=n%w&xQix{QMZiLIRdz-b`yze8K8mGmcIZj|E z$DCMPnFIU$P@fGuY0jpM@n){WJXqp9M<)573R@HV6YS!(Sw*Zg`?cUPSVbwZbCQB% zxUU=9J6^*f^a>36yTCs02Hkg}hPqC>Oy{H?Lnlq7&{owZI=Su-jTGyqFY0zV&kIzh ze0VO+yFSPV4LibjJanTYeP!sCfG6mx+G~E2Z7_eY5OIlm5BLk_vJk3ung8ijkGyj$ z(fPZQw9RuHTHNJ=^`{{m*t!lsyEqZ^&fic_%tN&AK{fr`CkN{^=7QU-YjocdO=uoH zn~u=Vqc6L%=nky~)I6d^^x?=9`Z?zp?Wsk9JL?^9FRN{>Lf2b$=H%+kYL! zwjRedB?2EUYzzL+G9H&*I*9yDq-lfMTQvKYz+<1Uh_~Gn!%Np_;XNt2NLRO>+qYZ^ zpRUNj8r*7JTA74p<}AX~pYMB{WyB0CJw{p?hmoe~NJ!YV z4}Mhe^tRv$d-YQdhH|s`(6MrKvG@>Ync_zODnCI|t5cE7thcCb-3Xlb+yS5Uw!+!p zIQ%at6pvfG7{_gPz@LJ2@u&IbSb2jT)}KEfE8Y;pf$gUFTe%!Q6B&xeZc)G^60V@( zf<@MgU9T-e^XdkWeac_7>P`>dFE55ZpSi`I zk7Rt=(Ok}QSv6|hXN(TIYoWzfrOqu|Cpf?98;zdKxWgUoeJlbSLM^0$HyQ4X5-g4B zNxYAiKQ5yc3KKc;k8-r6Et_7=dO_<-qIkX4=Y<^VMNY}~Bvl+-O~2oL#Q(aYN?mPV zqGXL5sN}2(wlq^^9&<-BiDEG}C0C72?;nJ#SE^wGR}su{`0%oT#04u>tc8IwaJ!UvY5es+?&q|PI|B_Gd8h{GZr#tJeKvH zHf1ZMT-jIM3GCJf#EgOzm{`#ts9oR#FCPwaFN|Hd6++o;{l(?Ta{4Otv95>z)b|wm zm008BSx$J+{SjJx#1a>7w!yrdI{r7I7D-RKhCVFcfFm#Vn(GfQ9!0`~txE88)oObEx+6@$`f&AQJKYf{3(}u3E$-E& z9Xo|L^?IIPxn7k^FndXFj?)3}=K)YKmeS@n11_l537M^1>8$CtLu8{<$oZe_=A@^H zbDvPDNON;0e<|)hZ)W?4&z7D_!(HQOaA_AGI>ioIj|dg*cw>$N>PDllt@~+Wa2yS< znuLsukJiM)2j^=uozRQ9>1dgIIXbP?iJq87;@UlDaD&ZmEFS2E&4!lYPIEcj#O!g- zy2ZFHA^-<>hv3f7hj9igz;kMk;fd#y@yTl~c$mizoH6e$UgsoF3V&&mU6TfJN7WG4 z-9LgX8yZ0hYz#=d@O9>`I?4H?N%mBZA>lBZOo_84eZx!$+`Z4wd=MmX@9%QQdV0BC z6NTP*NeUjdVFL~v%)y!aAL6*l%0x$S961cQkukAWWZ9-(Jg=W&s#1ZQs!w8Cbqkm3 z0k%18PIf&}BqiZDvH9UrEZtX(zj8b_H=B-UR&U3xYtwMjSU0TLxeedV+KBbHh2fw= zUsSYf9v|nCD0H-Q$Lx+dGl=Y*idAxV!v)7UFrk?x2id1Dt13Am;>z_`Gk9wIvzbptfv1|P3Sboe7ei&9M`Me z#3i1IrbFLDsFU^%G~(A(Y_+_J|5R)P8TQV+>d*_+o%SCdcK#Q5h(ej~=BxO)WhuFA zHjKPkTne+Ncc9^(X}C#C8$Uf=B}i$)(pNjN|k$NGJ{*X`z0@LSxL*!&H$a2>9G89DdcBGz{*jVpf}BwReS7Z zHU=Bn@3>@E5EaJiJZG`gT@I|;R*rcdQfJ|3OxT6R&%kY53yhn;P4Er}!o8m3urB^F z{k!=N9lWIvEq{JclNDd-JAXqky(SH>C+I`n+~Kg!dq3zDilFOJJCw=)0V!1@CbP_d zsUIKBveT?s`rj2yd(&~|m2#5JZ{5yTtlq{PXY69p%$P-gb!F*I0%E(+glUdfVz%6A zu+Y_^^51tO80CsGia5|#0SK^91d}Z@VBAex2#pw|!Skc2F?QCaI*h zC5o)wtVy<=PvYi0(P2}M>|#D=1K5#O>zLon*-Xd5iG9%4U}1LmKy%7xF!F7Ji@Fu? zz&s3YsXwGY4D+2v4q1wOPg1HEecu;yzL-EfA|ZOf5xSF(nM`yS8@dWKMT zT@o&AuHkcn9nh%ksWj@OEQ}|6=!FMqD8bqU(P9~-a@HJ)?^K5|^Y%ks&@t-#bprgo zY7Z4BRUtt5A1=C@L1$@BroD3%Xxp@v&d>jJawknb@eRd8@NK#wJFPyNNnICXvqB`; z^iQwAdvZRQT{;5ivUY;v5hsXHGKZ>pZeSMkAIvDugw1h{5cO7IHyPaqiOd#w5|;ok ze%Zk3_2r-&^BBHc=Y!NoN7!k83+lB*pq-}#>xUhHe{!{;UzZA6#Z}x zG*oV00=w!9XwRkNblKwTboR;FT)N&_Ud1~{)OhAaP1)^PD06`l5{=2LIbBjoZ*+4| z_}^J5P^p9P6V-6&dmPxF4u#;;%RwsQG5F5tgVy8UV9Smd9p+lTi!-p3D57vgn#hp^U8e{6XC3rZ5{;f~75c>QS~y!N9fK4=q< zFXo3~X{9mPWyd^hGd2#ZY+Hd}-x0$$8J;YSqZdpl9^~p)?B2p)s)V^ ze#xmQr5cGP83;XGX@NU&mb*0WE?U}UhWk#Q!yZ>9@Ye+kv8Gufwtcw`TY5xe{ggcH z_v9jW-IRr!RP(Wnd<$L@eFYnx2*cW{%kXLch4^8i1D<)cnh0?EiMYa zJC{tn_*@P)&dbKjKKtT|`nO2^y*l2!{Vf`n;EDncW+T7RNhtQ?CB)kd@+hMV9mw&e zURJU6&ijcFJar-b4qFMQ#}Vjsjfejhx4;rYXS@ZsA5Y=e<9ATu)CR4(sqn7Q5B%5o!wBz1@KvXhj?hsS9A=@=ERh0l z-w8ROcN<{h_*5zycZ`lQxJL7ideQRn@3_c@pIoN<4Sw>)jr?JsP=4^#5$@qIS#-c` z7+SGJgv`7*qq&B5{O@14=>tU(T`zEEf=>OR`&SQxy;C*e;n=$nde?x(XH~KLOAM~` zD>_`6yHWRwvQ;lLs%vCrTh6i8O?k{PGLk8pexp~Pl*IR0+KBW~h1_2OWtsV4aT|II3B}B{2;9QtFwl=YLmrI#;mBCi>K&Z z!C3Yj?hGr(x6xTFxLC2n!D#GtD;Pf=wigd=$;S>W;<5h;eSGQ*!bkB)T)sgXYx!AW zD-AO|Qnvv`U$sUBrNhyfm(J8^&IIZb_?e&BB_+83is+#%!CSxM0ew?87Ct_9GOTAVr?n z3p3cS0c72sZRCdQd@{Oj4)L25M;@dX6M4H*GUrAV8Tnv2sX69B;EoZN`5cZuGl9>G z^@*iT1i5o(H?as_h%?5Az;s5qyxI47Dgu=9Xrks|fFfQpdJ1mpDZ#z*2e1zpiNj^{gzvKy@4h?YWOa-S1TU%c;5OnmF`7)x zUrPE)q{x2p$>eO%7?N>vJ-@)m0$#uVf&FHD#Cm;ea0$-Dxe3=%MCeg?xi1)Y#aQzt zJsxoXRxBts#zJ_}c$C(lijBNY(f7%t@rzNzu)NP~v`qv^$w+X>*r?;|_I}i7@Q)kl z8{jaWgx(}Mp)l2KbO9XbzXJlxaLzc?(yoZ6oPUNYk7?tRza4RX{9Y_EEgGBjt;ePl z5iSci#m!@j(XTfl0>5j8P^SaLoj>WkDWB)wjg-ZI?RTK-3sqnUpN1>1!XbTg8QAV9 zfL&P^VX60J7_s;?ta7)4x;!1e?Co*1SJ-CUEu4yMJB3_C#22Jq6HR>vW4KnQTr@R3 z5MCtrfc(GF%)G~v{h0U{yyA~Sq(u>Yh$@Ef9+hzFOEk3B9)!pC5y)*zCejMg;KW7i zQP0Gu{NB)V8dZPQ+4{zN6qI!hJsj19_772XN52~7&3%K8ln0_&V+{E-mDf-w{}YXI zoq$^;rcvt`Mb4Kt+Bo+cediQ~IflX%Cu;rN092+%a{tXS;;)X|M5~(YILTS7sB1b#~F%5o6ac7}>>HPZYcM~FMI6#|xx1a~PRJh+Uf zuOlZz#X);0iJU;qe@D>n$DinEFDocs@`j4&6_L_lJioy`jK8TkkDsV?hd$hTjv5Ir zT+hgpqE`7;wDpcSdiSIst(|6oCmkouHY9?{9I|1=XcRlX(}^`%#=t5I;jXMh;2O6A zenlLG6yH5Cw=)FVnw5mlgp1Tl^E&LGNdoUrA**{icon3A4 zv33|U_LgIIuHCR>?jtz%<_4@1zY0_S9fwF^|1zpJ6}Cmj!`gNBEMoQu7HF-n8tP>nJ|A8VUdeS);KhkN9fARv*_l=!zl8(6yrvj33Q`GqKWLnBho%;%SXE}K-h zTM^xV)PW|JPQj11Rnz|thM+FfAH3&Rp85-So*P%=LG64CByE>t@(HTU%Tbd>ozi6w zo|>=~Q_Wb<^)YOvmpWU0&WJfiSuoe_)@;LWNA~IzVItm+G5iaTt!M@LlpA22a|`yH zo`;)VRdCm=KyZf!Lf#W~xC|2Dt?3GPHVvVzyGP^sNitaFx0c{KDWG!S`}twk%h6c% z%iMyxD(>o8e>8PN4BBIS9^E?Uh$cB(a-l(8T#fh%R6IWuxry>oNkxLlzAuP}ADj4@ zlV&5FCAd<&5>cF9Dj)Jx;GPfmpjV$2QF_@mwC{i$TE24!3jHg*b$Xo823tzk)cl~D zu}PebcNAK*Mj!8exdcBBGsi}!190P$OZb|Q)sL|`j2&k4IQwi5zV}Cttn4YpOU}Q> zpAU^D-u3fIciLLw&*BMvd6g90Y$8VCl*rBBNrKBA$#yq^Yh-Ca>aRJFlf(T92!^oRlOKKu!pPuhV}w?)y07w-7t`YzPdC3t$u{Lzn*c6j{4 z9LBc9u>Jt;GQOPY%w5)Lv^y?{<}`FO7vtZ?Nu=DxIR3p|4DBz`oyi;FvNGf z8%57MuBDTc!l}iE1N5@oJ<%Gz6QzC$MJIoDz!jv<)?eBJ27cXKyooe^kLRFS+ugu3 zRp723Orb~Q_tB+|Nf4#E1$H-McyOqWMoRc1jorUF!?zQVzr`(-{GuDb`dfqVJZMG6 z5J;cCy}&)&eviMkT@zAAhXUiO;mtldw&u@77Uepgb&CA~Gt&TYR9VDZTd${wZKSaC zrGNB=iogt?C&SwRdC;-1T>01bEzt5Tlv#aBgvh8?8my%bHM)^VZ{<^3qw<)`)eZyW zQRB&gh7-xtdV-rTe#F*GRuFr$6=dJgGID*i9pU7Lu-At$e6Bg2i?e=9i{d-zpR=WK z)u|3zQ{FkdiB`khW^tAs9m*mFhv@pWax!t=UGmqxkW{~NCjos@WU@OZk%#Sw*9d*G z>Z1)wSbY&^dfdnNe>vmN6;WKC${=!C>xNI3N@8oXZMbcG4fZpCgCAQ=Btvr-lQUrp z$m!SxCh$eZ{>-+?s(Ge5kg$h336vfIQcUziiqnA zkmwVoM6WxV+{+CipG>{UiW{~9&qB%&$^2(Se=a;wDpS7 zqxbI8C%Z;LvEN*nbSfM|x#>_h!4E!u-U}y6lc6Q_3>c8x(2}OXu6(d(Zab&33@n!pXJlnb%pFdrP^E&+SyTAE(|BPmAmq;-hc><@|6yVU2saSGp1U|Uf z5kHfeg=4f<rEOj8HEZU$V)?FHBOgy5L}lCsMFs>tyV@c@j>0 z9)vx7V{pC35VI?!*goOwwkc z8M#ZKZF?d#S4{?!kE0=X&oVgMYY)R@OhI{{1jH%=HMJ_HHocKFDAEn8&9A~9t2f|Z zFU^j-$gl(47r6RbmVNSdWsi#`n4{NASaaAHE(m+;Ki_I$RAv?od^UnrF0KNDY9(EF z>jn2qT%C4~SjWFIQV^Y}52NZSZamt+QIFDQ+H$0XCdhoCw`<#Z=?7C#q=5t;GhmC= zq=RtRf)iNk?OnWT=@0DF)qyXL8o;Y;R7iHLJh>jBO{Vy25ihSXWLl*sS*hSnJ}9mt zDxXzd+&2OSleOmMU%XtLGu9y|PWVOQQuJp;Ioc5s0}7k;*w(E&Y)_{M!i3r1S@m7i?7t9tboDvDcZn>W zsFy$;D=01A@Q!bqa1cId?uAuVhw0R-8)4ZM2N-I;PYvRApg1WW{@jukxUJJ*+D?7w zPZ^@#Q3hbPR2iZy#bL#y@o>P~5PoG(gR5pa)MC{W+CRJnDc*77vWGM&bBUvwi>3JX zF<)v9b^LS=cxZvlmJxol=V)-fwgZgk@_=Wnv*^>4*?|3C_WJ5{c2a%}d)z6;THeLL z7}KY8(GzKy5pfy4u#mxaokhqZR@h@s4#cSPFfKdnkDncn#(U<3;NRAE@Ji?}hK!U( zy0eA*%&ZXf{7(WG;II%@y*6jP3%0Uq$2~08C_w0yFJjfIHY~~d7np=3ps%SexbX8J zGR~iZY=_N*(Hey5T@ZGKL6Io;y&G!k_(->1Xatd5Ijtz24{?pcJEoh!CKbU0@XZ8f z?aTwSyEYVNm2jS!`skZw9lxY+zjKg@6U}zFqNN2xe9F@l+M6ClbLQ`%(wEQjUw5{1 z%~sTTTmCpsb+V;%jso=P^&&dTQUavYd})yU8oG6PGWX`r zIyA<+-#K8G7~-?L__Zz?;H72=UhAYFqJAf5G+!G}@!N_X&&Z}n!@c3le`fHdY%@IW z+5}ZXPk2E1x$hY)g8QoTgxvC5ihT5VXzrunAuG(|lR2qfA5e&z9M*sNl2#>!z%i@? zCXXJ9R6;g!J~J`erJ2deZHy4rHfg}>1P)>=g}Z1+A{?8f2%anD=mUcWdZE6bo-oLw z_J6-q#mB$tlk`~nZdCuJsLN(t+rjhBdf{Vfefmnlp;Sa?9L%S?(RKQzK85COzfP|^ z>C@Mzbx_j94*KoCQD8l0B)AGabcwny`b)Q*|8}Kc^zq+)RC!bht2kDn&CN&Xi*O$( z4G=o*iMH(O#Yrsbxjh@UdNgzYDaRICe1k(zKS1qOF{VFf82hZ%gK94^!mB9z8=tKeF);@(R!1xCGzaZHSMSe?@$d$6Z5j z)}5mf|I}#blM7T~iwW%BY7F->6=Cw4W@@+S2DRB&Lv12E>0i^2yt1$hY+TbLTHGQ7 z4XJymCV!32{B(xa85ucuKi^BuBHmN)y}_a{=BK%jf9*w%IcCVY<0Thiya0{ba}B+V zFQ&Ffjo_6>FdXTu2Cr6afhVubUgfoc^ujox6QZEzR3ad)Xh_ew548`B*!L;!Y_aSD zc0Ngl=_$#w-k7CqszNFY-8zj0a#!KYj3fw-8^$EjeAd3?Dm0!hhvmg;Y}6SQP_?`d zm3F&fw1hV-(n2`5Dgv@H?o)h29LA^5g!$joso}9x)anRFnZY&y$87gp7dgtF``njM}+pOpaZ%{7JV z4+YoO_YLr7*GdR-u!jvd9@9t1HdCETpLoM-UNzfRf2mQHHbFjQFIU+xg`RB}{Cr#V z@sGp3NOedScl`K`_N!>%rTd?uH9EN{$#=BC%}Bs8zJ_GmkE!J6J9E-J&x7P06elKw zOK{p#1N_8B8nt)+L{%N0n3S92J&ozq_(>xTDw7fBYu{+NsxgdJ*Mpu_6WPJO<*fDL zUY3yL#_sI%VV#dhFdtiK_Rvj@t&$%CwMpVExm1=tOs<5~W&3D#s4YFWD3Z@FkR@a5 z?MQ9lOPmq0nOqK(a+#%J;iCLc%td#`5ptw3iL4H}L6lENl54griH^Yz@-lETX_h-q zR0EEZ^S-Bv>;zvhm|_M2Ht*=i6UxxjCG0^Hv*|-UY52Be1jw0df}^qm#1(6Tcu_Ci zn0Jc?<>*5GMuE#*bzM|+KLK6z*i7rS-%!`r$LZmsfAq^bP5QyIiq{g(flJdY;NsA0 zYT~2`aYNDc%})*b(8+;@-917zG~dyd(j(}D%2HfuaSR{N*@PwMF+7+vn(Q2=Mf7Z? zi1$=kV(czW8kWAsx4cF8h3ap7Uf+vEsTz@;DQe__fxz~YoI_fDmXe55E<`^ zK+MNRlYf`O$eP=TG)|jIK7>S)Pla2Fltn!GF%U<{v^er_;}UW`Sd8ubWX(=K^fjhT1U^&eh`Nr) zfZu|z0>{3ZD&@|EZsGS4RmfX`^)772HQQlM^y#xy%x@Zfp)6U zdX_E>vVxl(D$tr#OaF++^Rva{=qDv>1V@@s|J%_tPjU;*3=5&ZHjKhnVjg(ZLTel@ zt%X+%u0vVR6~U*t0Jg2pgOcuMlK!)ils;}IBUs&`6O0+DJhL{C;#Sq5{*fYL?V7Hk?WpJrU%R-Gp|_? z-wBq)Q*k_*xyO=RI5nQs)|iq3?=j@d4h!N`Zb|O1RU?iW$|PjzY*Hq@oXnnMMS^83 zuyoc@Jf+_qOOEs7FOH4p4c}_eLc3)!dJVwTx#BF#T5zA)JYb=5(pL)f6|PjaHL$mF zIm}*T4eK(tWV1FXuqY-Ablh9?^5{NX;9ZDlm;BcYiq%0!)kc?ZW?$d%>t{j5m2$@ z02sW_fNZO380YjqUuPaw(;xo(MrqKXq>;)HMHxb!{dsngp(s-{h!8R*Ln*UFv!t1# zIYW~arL#ZJF3Qj(nW8}?645tgj=O*B-aqaicipqrS*_I{XR33~-p})Xzh3!xtF;iL zlMVQJTK4>Bb`o!#^beJHbl~y@&3H?{6Q|l%;7`#_ zvM_bM!he9@n*9)m-ywZrE}XLVf?VCJFuxZ;`ptEiGv_)~9u$N2hax!gB^?gB=0Kr! zC%m)!0=&&2Fq_jME;}4HUrqss@OwZHb;8izt8i;&Dl}dB05N~+;koe#*efaQJMLbC z&ck9@;&2xh6}r;zd#2EhizLV{g$6pXBZ*epZK4iCj?zP=L#e@;i}WX4qVrjedW_wz-!jg8&zNfWe z>c~|LL9-q2=d_D)ijx|B%C`XXlrUfVVRFRJp%rPP( z9y4l6NXepI&>|5`jvgCEB+aY2rlnKR%S0Npc5Nd;Ey3WRvk>;k$+BDb8L~6Mfc^e` zCVSz)9QJyhF}p}vlg+v($0jU%4t*bfgZFV6)~2-yO729%3*&r9eEIn-qqpb z&S~?R%T4(3ycj-Y-hEzUm1KpHH_U@AY!xEy#>#ZfHU2 zZqT?%ldfK(V^m`~w?pP)v;RJFF^4sD4Q~pjAFFtFHEz)T?Uq1<5ChVpAm!#m@loR~k-QN7pZ5)5|zYzY*3k$x{R+eAT zKAtaHC3ut!UHHHL?RfK`CSQL;nSVDk7M0S^WBbh+oNdGn&h~5+{G_sMp}_1`rI)}Y zK@6+6i$Hl?8_-Z~w%MO$b58DHeOH9C2B}f(GM5wVyW&HvTy8My?;gsoRKLgug`Hn?pwok{CG0OPRHG|roP2&0$rZT^j0*E0a4Lco0Ft%9%&P$XN+3PZp zA)yYBJLbZHD;^NPbv|?#hl9u5NiauwKMbj=2CF5n;J8?Yt@RzjK1nlUNB>^QhJD`3 znp*g<15XdK6ExPa>9Bx3y<;p(tS^w!^NpaaZ7MsE`xt6n@?mM$UIgs(?}VcNDV zFde)C6J}ik>xeX%G1Cu9`IAr?@ zuVL#yc(OnY=}j%reOrQ^{iqUtxmUq8?_DsdWD5y%*h_t^H87~_5}wV=z+L`#aF2^A zFPc)wk68JP-|U~wFP$FBpLylOueBHWw#}COQ12Q1>eN~M;bT*H{teUcnd$7`h$meS;MRq*oKC$h7xvwfXfNOi|DllyPI$*fYlhI_%8$5{ z?o06f@k-8V7b~*+DUA|I(=g%!C8qqz|REkIW^lCifK@uSr~G(-9c{Vpte{a?<3QJwQ) zyO9^z8vY=;9hoBi>8Ih-pgH9EkLE4S5Akn=qp73$5&TWm!`)Kv*`YV}t(CRTuuYSV zAh}nSo*UgQo;Ca+HAXA?)A=;BzM_-Hi$~&t@4`MUaR6=E2N?M8KGFq}e4Vo?iYt`Mv1mmh>IR?2`0NC%^-aNIDS`%@ zwxGrE5DbnyiEn;iMAxf%xOrJJRm9FM;swGTCf4xSY3X=@|ZhbqXO=4NuhVJ3)f*@Jlbs}}C$9jF@J!fR*9>m{g8MP)2uPX8!JZGkq;{qaY>?Jqjg>1{(QiHL zCv$GGvzx}Tit{ztou4kjar;3i^}h#Zk5a_ZFO6VS;}mF4{!6laSSU*2$trC(SfafI z{O1`69`72VOCC>bj|w@3o+gqY|B#I9(I*sIsOX~-S%MKjp?}be|#SO#)4lUmb+__Lbqf(&~mw4 z%4pZqagkK;WO~su)4lY+x(0f!Umi_cOfbO78drx;!luoR==RA5UHD#3@jxvN-DZV0 zYlG>uk@?)cv;Q&dr~+;<)r{u6Y@p548o8r8X44~Wr>F<$(K`a~d4Y>NIkN94GZ^-k zSu^wpld0)Sb8!iUB!J zxXUdSYrlNKdYMnmc-=@UR|1ppMB)yv-xotgPIbuEU z+-1p6I5V5SblrkK7BZHvI%vT=9ya7X9xULmR4?JfMFXg}#0f7soWaQ5tvIUUIp+U; zfQL>M<3i(ROjhj1hr$e~L_>oA^?oS-=7}<&UZT%`_^8fr36sI3dyz2hUp83AE+qjW znj~s@vS>!aWH_5$Lpm1hq<`z$sq)kz;ONlK{P}xXJWo-9SZSML)`yX(TF(kIWm_z$ zUWqe~*kMskG5vCSKKE_Y4`!p)W~%Qy1(W)HQ2J^JE-BxGuOF;HS-*KWr8^RPT#9Ln z+gom*WVYqt?si%!KN$zg&)~$W2o#lPQor}_=^>qoI8w(SUxtoAxA%#-QECc$%-VpL z9^0VACkw3c^}^-ji)e!5Yg!O>pSB(TNJke)ab3-?ndKjq=o*1-p5kFg&weqWy{5f1 z_`(lb-a3soT^2lT7sgXHcZldkA1=LVykpAkMK`$Qp%l)|gncjOOL91OkvI`37 zMUf)5-XBdpgA~z3`UOo{cphQm0Sx~Wi}x#jQ`Jk$sasSC;SIv+2HRbzlVFY7ibXWt z*@{*VICIVEDRh}QonATZA`UhF#ogAuC_1T_M5R>&xqlCB=$H4kw6p6v)iKVXy}#$c z{`x@jcKA4Ms*^PAez}oOH7w*FDqEA;e;kP6f&0YbUoi2%V@6Eb6xy6O7Ia%Q=(sp# zfhG5V^cxwG&&Q_`^%0e1)~-^rSIE9>O_wH5vvuhXMiw1YRPfbyJ=|f%VPJ9u{`Yqc z7wlpNrPbHThWD$n=YBRymds?6R6esaFO{&-hOVq($OP8cP~dfjEPzVSAjtNt0jD1~ zV8FQs`kG3aqUvqr@l7qly&g?g-Ipg4J)ul%@Lo_JH4B~=cEF(aI`+xqVpj2cCOaix zm$lBWq1LenFvBX6m==x@UE8ybxIU4=q4GgENqQCjye&bjyw8x>s5E+hmObsuYbLGm zl(BPPD|T%f4s)h_AdyF=L)Fy+@b68hGe-ZQlV%8up2IOXwC)bJ?|zEUg#1OwZWZ1n za}>W}!9;#jyD@Kj+Kg|zZ^I{V7kD9!8vLA~GVK0+5|0UkE>HJS{8mE)-Zw*vpZs?x z@@yoYbdlj--;m=^2+ok-Z!)krFcukuD6}k$L&ayC@ysj>)U1_?Y z0J;x#z<+`WMzux3)}a}2S93coDz$}aT_?a)b_=|*9S6$ZGeD_O$oqSlLhAWg*suSB z_O01VN6Gh4bx9GP9HEB8Uw8^^DjOVCw;FSd3{cW?2#%VjhZ9VPpqz3reRaEmn)I4s z{w6P6uzM)pSZ9DooW@e);mTxHO(gf{^DG>?`6B(OmPoI+M^QanDSW9ci=t>*{HAD% zt8OJxf1$&e`!|F$eH%ia{!ycgZ}9Zfk`Q{}x+EU=?WIo>rO;Emh%Wb%$NYs;aLY1* zQ~I!$3jcFd(|H4>rA;(Y`wu<0@F&hT0|FeL3Gys zMO3QzllX;Z5;Nn?bIyFJ5w|<8mS>}zvuEYdrJ7YVlE1-a|M)ISQ=CG) zMs{&WV9!TjS5{NS^|B0+VM>NdnodG(g@7ofZYDV3=Glg8y8VLB8lYd3H2~ z?73D_E-4+tje2s5#w{wL`nl26!de1ZyaJCD&%lla52)ti9swD;&EV=cKcL3Te^G_Ot@PH^C*137J6xami`EyV zizj7|CQ}YXl>2HfqxC|rS}pWDbzEkOX(n#S$0pFMSVz=Smcf_t(-BoPaPDytF0Zge zk1=Dh*Q|{y_q-Ic)539=_FSA#j8H038TB6jrNK`mF(c+AgYv$ z{rM!03wT5?Ul^c1%^&H%SMr?Cjo0+r;+Hhk$Q5@zZ4k4kui{+81}uwUd6fyb_@9?= z@CAMQd5L8c_$06I=>Omq4vqhUnNoWE68WM0m{l#PX!H~>HXIRd-vhO7IOBlO66RSPItj zPry3WN_g-n1D>3j150#AKw@_?VsIV3QyWLqG&GRkEsqQ9buh8U7QGjRVkYg}Xzj6XI^{tV~Js=;nuES$Q0 z1%lV=u(M*Kq0C|;xNPhuXHpm#UbY1chM0gf&I7L%;V>^Q1IC=Y4AsGWd1z(;^wmXx zsKW`!Qd4Tem;{HAox5I>H1qk;|B8XA`g}4m zautYnuOZLg+JUmRKTL5;g6sNv(AqE^O4?Q6YM(I_kFbZ>xD6mn-k z3>5BJ!Xd3r7#YT}%7>S-*Yb2&@A0odx#0wCP?m?MxvvBsRXcfQ@|FavT_!s5B2n|a z8qjl1Wc_R-*ejehTl67>O>1>#W4SBv!eJ5kUCw|P7em>-KZG5Ks^EOSKbm#XJI1a( z_!kVCm$PaUZo{p-7|>mJ9A~^r=4<+%@!vuuD^y!zc^{e2xHe!IO6-*f|DFgT(^SUE zzt1Q2>o-E`in)+nxSbfDZl|+I4!XOKVncHSS>EU={Jo{dAF5H~P3SoOjm=o0)3uvD zus#US3hvTpn_8ex&kq)N)xgI3p{(uclkls3FRc8q0S3lYL(e;12vt8pO`q)%S9mCs z<#RltP#gzSBq`KmF|>xR0eki1Fd*c9X8YE_{USs5e&G&T^9_ZVEIW%XJ3j=&l9cE!Clj)xR~sBE#pJ~`ilE6)gXQC;qo zW=#3rh;-sxF$%t}_()>kTQI{L)0ukrDWvQGLn9X-7EerHM85}Jr^7A((S?CZXeD-M z%H7h*rnHgpw*Lcj%k93XxlbRvrM@u_rc^=7n?X>!KN4Q=d`QMTI|q?8oW>pKuo}_MRg1T(?nf%zVsJv%_|^iKr12Pb=Rhf#g{|I+pLE z6Pai3qKKqj zCg&d=PID%^VP4!*G@kGTzwrkAhW;abbkQEZcabsgF42i@rz3IQUV&9R#7b~1XriXG z9maMy!I2#)aJeTE%=LCd$M0--_30p-O_&X#yVYQkyd11`@qk4d!W=O4j==sE{J6t7 z&=7|~YR54c`tS+ZjZq~Ta4OMtOOY?u+ph8oKA-(NcN_SuT;>qGr?nnMM@LtM)19XQPntd3@z zH#=dxw-Mj?&VftRl%wLf8aiqCXz2Zz44N^m@T1EGHt}OYqOH5U`F#kD$nmA0ex4Bj zQ>q}g5(G?CPC#VtHgJg81r5eaVVI5w{CVmCMW-alH;HRl{k{dy3Ase>dk*%aH)@>T zgsmUPVvu$_4OWt(f8X$2Rqq5c!d?Lq7R8dkR&U59Z3QSRbb?ShdpMlr2A{mE=(#mX zM7;4NsR}J2TenHUMn5Ie_IeT~JiLhU0ux~C&GWpw&r#m2eiQqnL&kbWM=?v2*RTx* zOIX*XtJwP2o~)DAP*zD}20LPfF?&nu862%Y0;UqXVIqx(AZu4xsm*~=cPBgzX@wiR zg}p}I8Myb_7gpEL#)neFbUTXw1Y7c9UI4 zcfje3Cm{Ff3YgwC3RJYTV1tlZ^j2R4SNZWIvZ{bQjaV6Jpes05j4Uh8m27x(`#}af&IJE^vqP5f<>aZz|mR~}c>3+~;9p7uNNcHa%~^t%c9D|;a``Zc`rAB6N`J=P#=8tcDi zGVANB$977}vyxeDaHZfKyfmu^^$Bq>Ht`5F9Lt0ZO?P-bkHECjT$sJ1hrGP7mF!b_ zPs=x-qPBq-8NY-Ca{IXl(fjtX+*qteo-J6!1^;dkFK|{T^-}Xm>>pK5rQkc~+MmNH z4W~qBhCg{DBlKD2D}-bAg}DFdLgE^w3CrD9!R1ZvFp!%FZYn9TZmt%)Pi75!zdoH6 zaL{aZp_qkxnXKBCHLSzPIjqj1b9BFF9sT3cM9neE<3Xva2T zR$V&;M@HVIH*Qu^&igKXtoMe?d8{H@nG?@Vc$>%dJw49Nu^vxf-e<65xfaH#ig^*H#5SxTFos{%LS6YfW(e;yBb@u>tqr zmcZ+?J1DHprdOsa;YQQ%wEIf~?I~YD_nli#)ekHdUky}eo^JOP*?u2FMSLkB*pNha$AI^_obQ@ zbyYH{XnHrhV&%GM-ob6XXzqPuK6p+K9z0#h^o@Fek+I*&0V7L%w@8!DinvbGymP6G z>KE?iogB{3bp#nMoMT>+>n7WDCQ#GlIw~Egh*#p;8ReCE&>oorv!h2qQRNMIESmxA z>sjzBHHU@6rNB%0?o^$83dWAlrMhW(xL@KiD!V?zUp|HC#rdO8k{ll%oyC{_yvNU- za+fDwNqp*6WBydvI(+Fp#Hy#Jl$JRj#~)6~xMAns zlk@a%u?FbspW#lOe<*kgmyn68syV#}1*GSq8L8aYM${VDX6ECXT1RdGXZy$*ZzIU8N-c-|q5~28NE=8!Y%} zoXIxm7rSOClOQumD4sA14sIAE`UiT%qTkQNd7>f)IuuB2VVroET@9TVG7l#_mP6f4 z3pz)4Ip?!4mD;-|QpuoB`rCg!(byvm+YX&1!&5^zN#Q$lUy}l<_i17DtIcWV(?|57 z%@r!Q(gKt9tuW?Q7tONEpmVOs({b6qMQ!^Q;&;XeueU#=`6{Pr>_Gz@@lPMM3x=Z5 znn#TZ7C3Fee7t;XCK~wf2TfxO_Q=NNtg1&YG%F0}^=@SISEq*YQYwOjrhOf+U~bN< zUNhxSdl>M4(vte>NI+CUhp<55=OX&5T~eieD}g1Qwj?(bp2Y|F~*TrJBo-{ zxWAWws%iV>Oj?$yOvBC_Gh4qtrWbf+Vg|9yh5vx6zq7$_O~-^eYaXUca`+=O5C^XK z;LX&lc>Zb*I(wYJyxRnu*|+rDKr4;^^n%j}*a|U6_XsZG4RqoJCo1>VjoxZ4qdJN5 zaJN%I+-pMc^|Z4@hWo}G>fel)bz-qB`4lenU~${Em$Z8EG3L&qX!@=6C!I9M0pG74 zgEI@4AobXX0}(0Mv^yU6ew4=)Unxx8F&vj(9Ex@mCt~Csf~g0TaB=i&TBI-yC*B>3 zzZ(ruda0PUY&N8wA9JYB0}HHw?u$tRyL^4z748o`K^2OwQibB}G9QV`PLg!L6>^8N&vlOkWmZ5>l2DH>Tf~Dn2xNLtNCaQfDI@a$o z>+&F$aP_Dzoq~5}*5faaH1zm!8_Rcn#5?BwIN_WupSp$R*Q%}IGb$N=%W8FAW$YXL zCi@tdHGRgLAw9VJWCwPvox(2@@<0Xc`)0YHC>{OPU`{pz9vQ zh@Jv;)r#z?x74 z^A_?|_Xkt+G=meb$`W5XVnM_)mr0$Rz=@q3%w%4@&uFgP%LLz%U=&5SL|zHg$@b6% z!VF~+?9KR1)UJFXw~co(@0MEASuHKUsL<|?42-$G2B)G0>uHAQ=h8Z@{8;fRPRsS6tb88&q(;6)9ct3&~{nAAHZL)No@L6>Jo-G~w zBbdg%OrY*w)9CTKD4OB)kouIpr)vyl&_U#ehi7=Whw8Hz6IED^ zB2Cud_DuF-r6K#fc(jn?S7gIdMzTFtYHar6A27dIg56#^mCgRC#rpa+!@5orh`c=$ z?&U|r^P4}(uz^)jJ97qg+xw9m_)`EW!;4^hLjagQSp}PpHINYn%fQD$9i%sukyTYI zM5DaFGb_Rw`g;AK*umDCs{GF^#W#=}+8!ZZ{_-Aa7+yxkhjcNAsuq*{z#w84zm8m0 z&mt*o7W3J73%PS{GuLvrfw1mN;mQ6q(3HCaJNCqb)fO30eP#wbWurk?)d`yVEWq<% z9JqhO`)VwCV(%y~I&)?wFam7fUMWVv)%h*$%im+tA@ZJu>6+Z*8 z=hRM|`^X*7y9l2{zP2<^rHIi=SU|JSoT2YU<4CgLx(4SaTGuF#rz$92e>{NPH8@MI z7srUCy=IXOf2NX_uwl&A#RAz6`ego$W+ye?#XZFZnNL$lkD%bR>Kk(YCj{+*AVL0Rlh1gQ>R!5r9ej^6rliY5du;;J2u=))sw zBx#)|XM!+kl4>FFR_1aF^l)M$3c zfo<%FERNzc`zJr|?9zw&s;q0JHG__svkXzHUjH*Z%(S?IU(82m6 z&GhW02k*_LS$=^u*!?b7{Oh2V@eeQJycK~v<$_cadCF7iWhQx=@CocrY^aAO{kTGdER62j9MH%z)P|6lG6pzREE>Ee% zQW2FCcJLXIPe?%PFBq6=z-m3O2VHGBR1mr|P1(Tz{H4IhU_J(a$wsOWkL|gU*cO_O zsh+3MGB*r^R!87_#b2cDkqB(&*OJEN1620g3u>fSj282TW7^;-+W0aS!`!E0a#KF( zIa$U0+1y1`CodrC+v*tWjLqcD&uQd92H?cyJk@XeL?vJCz^0DH=q@=N{a$*Z+_o@` zYK=qt^BHLTK#Uvx9^<+R9atOn3hiPfc)9%1yp+8GFEzUz&$Ql0ou_4};^vBGTQ*^e zP9VA+GRA=;#k78mG;R+bhLXx=NK;mzvAI23tg^$E{h?S9>O(C2C@0mdh(U3JRJLLi zelbZP%;z3bqZ&x3D%hd1zb|r5NAT}#BedSiQ(u7{c}okq`#aY; zY4ZuXD zfJ`yjzwJJ$$$dj&a<34lm(8S1@hoR!aDs6va3c}VWg&6195fcMB`)h^$*~LWWC86Y zqA}MP_X2C8zv&q4%)3ea#;Og?o~jTm#CU8T8(o$b6COtdGVqN65F2;WAG0w2Pp((eG)4IsGM zU|-rF(o)|f{`goH|M?H+*DRJmrHC&0KGL7gzAeWq%C;cg5ro^4UBSd~F_c?|VsG*h z+Ev?1wgnxepY|W4DcdDbU<%^t@>s0tKaKU9kdv#@gPzeIP=8q$e)5(OG3hFKC?g5n zb)H!3=Fv%#Bk<=6$_&^Fw|RRZ?UIYdH($N5O(Gaa+f$@Qa0G zEJyxCzZEY)nE5*ik^*i~k5@8P=1@3$P~eE--AD9 z-o~dx?vRAVQS_6t9hQwO#+KDrg}K0PUgUp{PY(~|&A%Vv*@t1gy^|OJCUGABs~&j0 zSbDQBk9ilDO6)fE^QM}rO{2Ns8zuaZtulQG)O0i{>lrd&H74cqHl}R`{&^Jx!KgQ z{5x$Fcsc6*c~o@C3N5$FV?`OkR{Lz+=zayy#OUDqdlgKf>oJ;jQ3_Y+4nuEybM$c* zW-61GV0chCD$?VqK2;6P58t9EOdisYlX|IB%?FxxwVfMX7Dq?_{!NFjc}BghuhYHb z?V65 z0eZ}UO-FV^?&ClR^9uy#zgghjZUrXFLFBI2bFyaGUDC31JgKl44s(rFVW52_c*J|a zZm-kuYi2p9f9Zs|ix&q-{GUsp@biDJ8#np*Zd$u@uiskFt?PY-U;KYAhZpDL%T>b| zo#0q5u-sfU!QDi}xXRHSnMhLSrUsSYd&qf#kQ960l4h&3Kl?QBSQwx-n-oI(=59 zDtCrMdfZ#?|9<=uTEYVruKw#cuKnN7Az;(i&0G9@*Lr#HT<`b)d={e7BCb&;A0iI8 zU`f0abRWy5tz0vaZm=bVAN0x9s|VqeTm>{8@kYg8+aWdVJU95am(dDKg83g-;JspH z642|6Thh1S?V@wk)J`6M_DB=WDn}Ypeh`gf?uoAF+{ZBo3rVoBkGQ20iPvWpk?|^5 z$)V(3^w^AWfg2lzSzINQ#Mg53_iKt?#Hf?%umX@@^^S?%aUA28-y+a+h-$4GiUWb3 zkatK06k*-$U21d32 zaqIpbr#A2Hap^y2vUYqXBOCIT8#!G}=C-aPgYR6)Ue{)FW8Y(vvu`XK>(o(GBY{0I z$(4)=%po_*=fi0~UFvsO3PyjH#wPc}wCGzF4Ly(!-^S0O5~JEk-Ld2FHrZHM1ODW` z$V)=a&0unCq8{_^#!37$^)M`+UxG3jktlQTCUwe~N+)WTlaTaBbnn_TOjC;lPHBBj zmUzvjO5-%lj(|A%M*3{GF|juOL>;D#r>{mFFNhEE`6KO3s8S71lJ3D@T4 zN=|KA0;~P+lT|`SsX8^Ve4Ncg5`L(FVXhUxzNBTi-iZ>A<)h#iy91-ox6-@oHj>pR zcG8UKJCL1QOa3Lk$J~%wCdld-?)|4mmab~R75;}n_k9Gxi_viPU;rKd7=Rsj1*3y< z>5<1uLLVrI=81M7@hHLz3To)KV}W>FQ7X5kcNt0rT!y+uE1>=1J33tH4Ot3--13p( zT&T}n!HFsdQX3Cag*(&n%b!uKRDBy)R=t>}EK?;?XWC(kT^(nzRu-Gb49A80r-7B% zPF&z}4?j(w3(@gKuH^#mu5aa+qpH_*)t{17^nscP{2@=Pxx5=-< z2{>o1kSl%HPKr97;>5A*VSU7JPV@3Pa;0GgPM$x4Yd!snCU1x#-fhpw(hQ+DTqFe} zX9}6xZjP?4l|$FI)pYy5p?pe0g0Rmoq}#qUV5a;NddK-cPQvjYT@h48_g>gdvs{mh zo<2E9-a6hu)?WYEAMh!EXE05&m7KJ{t}(3me294h0p&_X3&%34fdu_FlYNI zf!BM7jM$n%dY;tKBN?gm`j%qul}rT54% zdf<03J|8=UtTy^0{@q}NnvU7b=gBcNM5dnlOI`#k_jJ1Clsj5}O@u$=x1q|<^%#0@ z5?#_LWRD|{(Xj6e@zj@0>U(uDao!`ielNVoAy0;Oo+FbSu0h22Nl#D-QM*VYlg%llw@{yEs|+KTUA55dM9Y538Lq87_Hmmjt@tV$9Y3Mu+L0} zY}z!1lrmevE=`goPE`bx5mMyBsz9s!kYD8Ff2z!{sY~#R^lX|a@NN%n7zwMLBN@>- zIrQ42g1hrwV4C!Na%Na4seh@=z_2!Y;!Oh$&rk)!>4i96nt-Y9KKv^>hYudu!K_%M z7fOZvKleDUvY&|o_vSM`d%w?;a(qC~+PDZ_F%^iZizb_lOwjf$ z5X)g(IJZkjP{gpbQ!BosgyM2gyZw*0Kb;C=WYzHJ$sW2xKY>Ik$J3HQYcyN$ zLv7y`(a|F=amsE6=#{BKJDTQEqZ}LDthI^j>KqhuwdYCANneN!8V~oRM?*xZA{G2f zRC;3>^C|xq8PVTGyed|MzFjS*pgB?NKF>v8Z6WFrGeKEendZ zUAq&=u#bvxWO@vEK01aOQ&s7h>U^te*~N4=e}ZwGHjG&%aR?4*C1Pj5YMed8n(!+N z=oyndDkHEiCz-B>x5jIs?mt7g(%=F2rRUNKI`OzcUWOf3>WlqLnrZrkIdIgJrJ9G+ zIO#8k;dxX&&RQ2vk7(92>LZWCfrOvR@{y+}KjiQIN3s8Q4 zndr#eA#~dmX^0ECNA7PL6s;4So+#sugg+f35*|%XtOKujP?YK#w*Q(>g zGvU~NP!}}Pjfj%rMKBKup#MUxaAQ>*dOFXcCC9JOWwl9+y3<&&2@QfPzWb@sI!)2) zKr7Jt{++wyvx9D$^NTy07DbC<%doiB7$e-%C8g~ih^lTa4Bgj`$;7hZ^O|ltA+3DHrl>2n3jIZ0dDa5}-DoYWf#nI4_-8L7i1M3J?BmWB5~?+w{rzu0_!k6FCipHrHoOvTqL;8F z#tz?yxj@&s^HeNnjRPZ25eu(i@+m$5Zq}|OU48*%jjb9gotn*e`A_FZYMaBe=rkCg zlnEOxy15Cv`*B*^N*I|CisY>|%~x6u)oZ(Hj>T)dwY3V5yBA`_p1Ck@>jOAz@tJd-m85)%5!FN0Kkd_IUSnEakh-=RRv?_Q$+_C?~AYDvC9 zDH-<`t-|>}`$Q?Jh3N1}8E@*xCfs}5aczDzy~-G5$j*%3nC zY_B^=dFrvPKP?1KNhfR@cmVEY9xzv6sm@kyp@H{rf{b}F)cYIY6NB=tr2A^CVUb;Dfz$6q1E$Hb6l z=T3AJthi%ZqxkoS|3mGC`P{5YtpMwW;JsB6{5!=EP!3rLAO9PTlJW@o`L8f?@jcXo z6X0_93I?fMq7Rb$q3>}!BegCMol0+zhWH)A-1#Kmk=)Bkn$G}H`eWk#D}pZ4naDeQ zuO!m;i=g*a5?pZ|Aoq_pl5V-#a3gaP9t-&=itILLM;MgzQ*A=QHDnhFv&%v<_Y(De z9t+Y71SitJWW3w)6rS5@;Vl89c*bLpz7=>)629lCgeZx*gR0c&Yb7u-yQys7F6dmf zfweDxOJZBj!i;0Dz}sgm99GxkH(UyZwVijx=cPe%{?hrJVR@WvNu_J(#2|7FS>B+|!lCW*uFfoyCS z_6}$7X5;CF<pmUp8 z50hedYz;$?tZ#TtPY<#WDG=F(_QHPF5~lq(mH3#*u!Gq#7?-eskJ&$l_pTpCRW@#? z%QEA!N5ugg?r4xh8;-%esM$nOmz@wbGAMb>;qmI}z-(qYHyd&7ONU2tjQO#Xpy5_;&i zlim%V;mL~UaQWX5Xz0@5a-xRw|EsZc4d?m{<9JRvl*nRjD5sKAF^A><``r(zRYPMI z(pE_|$7y5bKcdp#`CNq3hQf*{o$!C|CpsZlP9ZLeZAeDxw5h~?@3t4auId*rwT>Uw3#Z}n{$%lJn@GAsk*_*4o22QVN3w4f8}qnA zFV~v@9dd(tlOMBl^#@5uxESjwB+suswA#Ng$fgh=+6~&NOAn+`8+PN?*MDBrR;mfT3%vR%|F;A&+;7QNL0vdH1iO0 zZEo+Anwh(ajHfPpe0m7djRKf^s3x~xLzBtes~3Dk>b$o>GA^Ac2Gi~#m>;wUF6d;U zwqO7W5S)~~dj0$&uNrEq_=II09l*kdlibtjW)#;>h=i~@W?4qEr$tiO=4VQsMhw`< zO%GA?pSjFq8BNo0PO~1q z^pYV?oDS1cIVEzpHz5O+N@SyKCBLmhf({Wnkorv^c6JZrk+&Q+uK$d=ibz#slO5)W z(*=QGCk~gaqRT&w#UPy?Ts`Q<3b;iOx>cEN{rVHuy6!MZiF(L)b<}}Z;YFGhrohFv zCJ~a5591DZY0HZs^!@Z5wK5*%iuF{0G|z;bnVQT}Y|klWJrz1aPT)gtbK;%K;d7r4 zpj)yYeT@~NyF{I8sCQtUl7!w~>jP<{_0-IH5X~I`FaHn%Dt=aIbs!t=(0EMF@0AuD z*?_Kc&!~fM0l#@T8~wKZ4ts>o$hg2qP}Vz(%UHUADVuAt=^$;`Vyi)RbXG`rh0JB* z%p-i6iy2I67V`-?6Q~$(P4vEX<{YOAF!7-rN_G;y>-H5o5?2lTi7{I!yp5yM?Bl=P@`B$*;KQI3RC|@ht literal 0 HcmV?d00001 From 2757bfd832ee3723fbe3b6586b6b1e63fcb7a162 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:40 +0100 Subject: [PATCH 004/217] feat(audio): add voice profiling and level normalization --- crates/audio/src/lib.rs | 2 + crates/audio/src/voice_level.rs | 216 ++++++++++++++++++++++++++++++++ 2 files changed, 218 insertions(+) create mode 100644 crates/audio/src/voice_level.rs diff --git a/crates/audio/src/lib.rs b/crates/audio/src/lib.rs index da87e13ee8e..ef0e71c45e3 100644 --- a/crates/audio/src/lib.rs +++ b/crates/audio/src/lib.rs @@ -7,6 +7,7 @@ mod streaming; mod sync_analysis; mod transcription_timing; mod voice; +mod voice_level; pub use audio_data::*; pub use calibration_store::*; @@ -17,6 +18,7 @@ pub use streaming::*; pub use sync_analysis::*; pub use transcription_timing::*; pub use voice::*; +pub use voice_level::*; pub trait FromSampleBytes: cpal::SizedSample + std::fmt::Debug + Send + 'static { const BYTE_SIZE: usize; diff --git a/crates/audio/src/voice_level.rs b/crates/audio/src/voice_level.rs new file mode 100644 index 00000000000..6eb142d9a7f --- /dev/null +++ b/crates/audio/src/voice_level.rs @@ -0,0 +1,216 @@ +use crate::{AudioSampleSource, VoiceEnhancer, cast_bytes_to_f32_slice, cast_f32_slice_to_bytes}; +use ffmpeg::{ChannelLayout, filter, format, frame::Audio}; + +pub const VOICE_PROFILE_SAMPLES: usize = 16 * 48_000; +fn compressor(channels: u16) -> String { + let threshold = if channels == 1 { + 0.125 * std::f32::consts::SQRT_2 + } else { + 0.125 + }; + format!("acompressor=threshold={threshold}:ratio=2:attack=15:release=180:knee=2.828:makeup=1") +} + +#[derive(Clone, Copy, Debug, Default, PartialEq)] +pub struct VoiceProfile { + pub gain_db: f32, + pub makeup_db: f32, +} + +struct ProfileSource<'a, T> { + source: &'a T, + frames: usize, + channels: u16, +} + +impl AudioSampleSource for ProfileSource<'_, T> { + fn channels(&self) -> u16 { + self.channels + } + fn sample_count(&self) -> usize { + self.frames + } + fn sample(&self, index: usize) -> Option<&f32> { + if index / usize::from(self.channels) < self.frames { + self.source.sample(index) + } else { + None + } + } +} + +impl VoiceProfile { + pub fn analyze(source: &impl AudioSampleSource) -> Self { + Self::try_analyze(source).unwrap_or_else(|error| { + tracing::warn!(%error, "Could not estimate Studio Sound voice level"); + Self::default() + }) + } + + fn try_analyze(source: &impl AudioSampleSource) -> Result { + let channels = source.channels().clamp(1, 2); + let frames = source.sample_count().min(VOICE_PROFILE_SAMPLES); + let source = ProfileSource { + source, + frames, + channels, + }; + let window = frames.min(24_000); + if window < 480 { + return Ok(Self::default()); + } + let windows = (frames / window).clamp(1, 8); + let mut samples = Vec::with_capacity(windows * window * usize::from(channels)); + let mut speech_frames = 0; + for index in 0..windows { + let start = if windows == 1 { + 0 + } else { + (frames - window) * index / (windows - 1) + }; + let mut enhancer = VoiceEnhancer::new(channels); + let audio = enhancer.render(&source, start, window); + speech_frames += enhancer.speech_frames(); + samples.extend_from_slice(audio.samples()); + } + if speech_frames < 20 { + return Ok(Self::default()); + } + let Some(level) = measure(&samples, channels, "anull")? else { + return Ok(Self::default()); + }; + if level < -60.0 { + return Ok(Self::default()); + } + let gain_db = (-16.0 - level).clamp(-12.0, 24.0); + let filter = format!("volume={gain_db}dB,{}", compressor(channels)); + let compressed = measure(&samples, channels, &filter)?.unwrap_or(-16.0); + Ok(Self { + gain_db, + makeup_db: (-16.0 - compressed).clamp(-6.0, 6.0), + }) + } + + pub(crate) fn filter(self, channels: u16) -> String { + format!( + "volume={}dB,{},volume={}dB,aresample=192000,alimiter=limit=0.841395:attack=5:release=80:level=false:latency=true,aresample=48000", + self.gain_db, + compressor(channels), + self.makeup_db, + ) + } +} + +fn measure(samples: &[f32], channels: u16, processing: &str) -> Result, ffmpeg::Error> { + let mut filter = VoiceFilter::new( + channels, + &format!("{processing},ebur128=metadata=1:framelog=verbose"), + )?; + let mut level = None; + for chunk in samples.chunks(4_800 * usize::from(channels)) { + filter.push(chunk)?; + filter.drain(|frame| { + if let Some(value) = frame.metadata().get("lavfi.r128.I") { + level = value.parse::().ok().filter(|value| value.is_finite()); + } + })?; + } + filter.graph.get("in").unwrap().source().flush()?; + filter.drain(|frame| { + if let Some(value) = frame.metadata().get("lavfi.r128.I") { + level = value.parse::().ok().filter(|value| value.is_finite()); + } + })?; + Ok(level) +} + +pub(crate) struct VoiceFilter { + graph: filter::Graph, + channels: usize, + position: i64, + output: Audio, +} + +impl VoiceFilter { + pub(crate) fn new(channels: u16, processing: &str) -> Result { + let layout = ChannelLayout::default(i32::from(channels)); + let mut graph = filter::Graph::new(); + unsafe { (*graph.as_mut_ptr()).nb_threads = 1 }; + graph.add( + &filter::find("abuffer").ok_or(ffmpeg::Error::FilterNotFound)?, + "in", + &format!( + "time_base=1/48000:sample_rate=48000:sample_fmt=flt:channel_layout=0x{:x}", + layout.bits() + ), + )?; + graph.add( + &filter::find("abuffersink").ok_or(ffmpeg::Error::FilterNotFound)?, + "out", + "", + )?; + graph.output("in", 0)?.input("out", 0)?.parse(&format!( + "{processing},aformat=sample_fmts=flt:sample_rates=48000:channel_layouts=0x{:x}", + layout.bits() + ))?; + graph.validate()?; + Ok(Self { + graph, + channels: usize::from(channels), + position: 0, + output: Audio::empty(), + }) + } + + fn push(&mut self, samples: &[f32]) -> Result<(), ffmpeg::Error> { + let frames = samples.len() / self.channels; + let mut frame = Audio::new( + format::Sample::F32(format::sample::Type::Packed), + frames, + ChannelLayout::default(self.channels as i32), + ); + frame.set_rate(48_000); + frame.set_pts(Some(self.position)); + frame.data_mut(0)[..samples.len() * 4] + .copy_from_slice(unsafe { cast_f32_slice_to_bytes(samples) }); + self.graph.get("in").unwrap().source().add(&frame)?; + self.position += frames as i64; + Ok(()) + } + + fn drain(&mut self, mut visit: impl FnMut(&Audio)) -> Result<(), ffmpeg::Error> { + loop { + match self + .graph + .get("out") + .unwrap() + .sink() + .frame(&mut self.output) + { + Ok(()) => { + visit(&self.output); + // The filter sink transfers a frame reference; reusing a referenced frame leaks its buffers. + unsafe { ffmpeg::ffi::av_frame_unref(self.output.as_mut_ptr()) }; + } + Err(ffmpeg::Error::Eof) => return Ok(()), + Err(ffmpeg::Error::Other { errno }) if errno == ffmpeg::error::EAGAIN => { + return Ok(()); + } + Err(error) => return Err(error), + } + } + } + + pub(crate) fn process( + &mut self, + samples: &[f32], + output: &mut std::collections::VecDeque, + ) -> Result<(), ffmpeg::Error> { + self.push(samples)?; + let channels = self.channels; + self.drain(|frame| { + let bytes = &frame.data(0)[..frame.samples() * channels * 4]; + output.extend(unsafe { cast_bytes_to_f32_slice(bytes) }); + }) + } +} From d4bc0995db748f622433425dd1e309bba0fef6a8 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:41 +0100 Subject: [PATCH 005/217] feat(audio): upgrade Studio Sound denoising and alignment --- Cargo.lock | 55 ++------- apps/desktop-gpui/Cargo.lock | 55 ++------- crates/audio/Cargo.toml | 2 +- crates/audio/src/voice.rs | 215 ++++++++++++++++++++++++++++------- 4 files changed, 194 insertions(+), 133 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 280a91700af..1f89b4a265e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -387,12 +387,6 @@ version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" -[[package]] -name = "anymap3" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5dfbc6d8d2675589ccbe4d0fd61df2419075625f8c1a62325e718e2b0049f9" - [[package]] name = "apple-native-keyring-store" version = "1.0.1" @@ -445,12 +439,6 @@ dependencies = [ "syn 2.0.106", ] -[[package]] -name = "array-init" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc" - [[package]] name = "arrayref" version = "0.3.9" @@ -1281,10 +1269,10 @@ name = "cap-audio" version = "0.1.0" dependencies = [ "cap-enc-ffmpeg", + "cap-rnnoise", "cidre", "cpal 0.15.3 (git+https://github.com/CapSoftware/cpal?rev=6013cb5f8bd3)", "ffmpeg-next", - "nnnoiseless", "serde", "serde_json", "tempfile", @@ -1999,6 +1987,13 @@ dependencies = [ "workspace-hack", ] +[[package]] +name = "cap-rnnoise" +version = "0.1.0" +dependencies = [ + "cc", +] + [[package]] name = "cap-test" version = "0.1.0" @@ -3446,19 +3441,6 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" -[[package]] -name = "easyfft" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "767e39eef2ad8a3b6f1d733be3ec70364d21d437d06d4f18ea76ce08df20b75f" -dependencies = [ - "array-init", - "generic_singleton", - "num-complex", - "realfft", - "rustfft", -] - [[package]] name = "either" version = "1.15.0" @@ -4165,16 +4147,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "generic_singleton" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab6e923c8e978e57cf63e2e200ca967d1d20f0ea2662b28f6d4e11c44aa6ab16" -dependencies = [ - "anymap3", - "parking_lot", -] - [[package]] name = "gethostname" version = "1.0.2" @@ -6415,16 +6387,6 @@ dependencies = [ "libc", ] -[[package]] -name = "nnnoiseless" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "805d5964d1e7a0006a7fdced7dae75084d66d18b35f1dfe81bd76929b1f8da0c" -dependencies = [ - "easyfft", - "once_cell", -] - [[package]] name = "nodrop" version = "0.1.14" @@ -6519,7 +6481,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" dependencies = [ "num-traits", - "serde", ] [[package]] diff --git a/apps/desktop-gpui/Cargo.lock b/apps/desktop-gpui/Cargo.lock index 2a9f3e5aa36..b3c0c16f4eb 100644 --- a/apps/desktop-gpui/Cargo.lock +++ b/apps/desktop-gpui/Cargo.lock @@ -453,12 +453,6 @@ version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470" -[[package]] -name = "anymap3" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5dfbc6d8d2675589ccbe4d0fd61df2419075625f8c1a62325e718e2b0049f9" - [[package]] name = "ar_archive_writer" version = "0.5.3" @@ -485,12 +479,6 @@ dependencies = [ "syn 2.0.119", ] -[[package]] -name = "array-init" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc" - [[package]] name = "arrayref" version = "0.3.9" @@ -1409,10 +1397,10 @@ name = "cap-audio" version = "0.1.0" dependencies = [ "cap-enc-ffmpeg", + "cap-rnnoise", "cidre", "cpal 0.15.3 (git+https://github.com/CapSoftware/cpal?rev=6013cb5f8bd3)", "ffmpeg-next", - "nnnoiseless", "serde", "serde_json", "tokio", @@ -1962,6 +1950,13 @@ dependencies = [ "workspace-hack", ] +[[package]] +name = "cap-rnnoise" +version = "0.1.0" +dependencies = [ + "cc", +] + [[package]] name = "cap-timestamp" version = "0.1.0" @@ -3422,19 +3417,6 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" -[[package]] -name = "easyfft" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "767e39eef2ad8a3b6f1d733be3ec70364d21d437d06d4f18ea76ce08df20b75f" -dependencies = [ - "array-init", - "generic_singleton", - "num-complex", - "realfft", - "rustfft", -] - [[package]] name = "either" version = "1.17.0" @@ -4151,16 +4133,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "generic_singleton" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab6e923c8e978e57cf63e2e200ca967d1d20f0ea2662b28f6d4e11c44aa6ab16" -dependencies = [ - "anymap3", - "parking_lot", -] - [[package]] name = "gethostname" version = "1.1.0" @@ -6717,16 +6689,6 @@ dependencies = [ "libc", ] -[[package]] -name = "nnnoiseless" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "805d5964d1e7a0006a7fdced7dae75084d66d18b35f1dfe81bd76929b1f8da0c" -dependencies = [ - "easyfft", - "once_cell", -] - [[package]] name = "no_std_io2" version = "0.9.4" @@ -6848,7 +6810,6 @@ checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" dependencies = [ "bytemuck", "num-traits", - "serde", ] [[package]] diff --git a/crates/audio/Cargo.toml b/crates/audio/Cargo.toml index 04154e62e01..a9431abb65a 100644 --- a/crates/audio/Cargo.toml +++ b/crates/audio/Cargo.toml @@ -7,7 +7,7 @@ edition = "2024" test-support = [] [dependencies] -nnnoiseless = { version = "0.5.2", default-features = false } +cap-rnnoise = { path = "../rnnoise" } cap-enc-ffmpeg = { path = "../enc-ffmpeg" } ffmpeg = { workspace = true } cpal = { workspace = true } diff --git a/crates/audio/src/voice.rs b/crates/audio/src/voice.rs index 89a0c5bedaf..32e786a3761 100644 --- a/crates/audio/src/voice.rs +++ b/crates/audio/src/voice.rs @@ -1,18 +1,24 @@ -use crate::AudioSampleSource; -use nnnoiseless::DenoiseState; -use std::ops::Range; +use crate::{AudioSampleSource, VoiceProfile, voice_level::VoiceFilter}; +use cap_rnnoise::{DELAY_SAMPLES, DenoiseState, FRAME_SIZE}; +use std::{collections::VecDeque, ops::Range}; -const FRAME: usize = DenoiseState::FRAME_SIZE; -pub const VOICE_PREROLL_SAMPLES: usize = 9_600; -pub const VOICE_WINDOW_PADDING_SAMPLES: usize = FRAME * 3; +const FRAME: usize = FRAME_SIZE; +pub const VOICE_PREROLL_SAMPLES: usize = 24_000; +pub const VOICE_WINDOW_PADDING_SAMPLES: usize = FRAME * 9; pub struct VoiceEnhancer { - states: Vec>>, + states: Vec, next_input: usize, expected_start: Option, - frame_start: Option, - frame: Vec, + warm_start: usize, + pending_start: usize, + pending: VecDeque, previous: Vec, + frame: Vec, + wet: f32, + profile: Option, + leveler: Option, + speech_frames: usize, } impl VoiceEnhancer { @@ -22,17 +28,37 @@ impl VoiceEnhancer { states: (0..channels).map(|_| DenoiseState::new()).collect(), next_input: 0, expected_start: None, - frame_start: None, + warm_start: 0, + pending_start: 0, + pending: VecDeque::new(), + previous: vec![0.0; DELAY_SAMPLES * channels], frame: vec![0.0; FRAME * channels], - previous: vec![0.0; FRAME * channels], + wet: 0.9, + profile: None, + leveler: None, + speech_frames: 0, } } + pub fn with_settings(channels: u16, wet: f32, profile: VoiceProfile) -> Self { + let mut enhancer = Self::new(channels); + enhancer.wet = if wet.is_finite() { + wet.clamp(0.0, 1.0) + } else { + 0.9 + }; + enhancer.profile = Some(profile); + enhancer + } + + pub fn speech_frames(&self) -> usize { + self.speech_frames + } + pub fn is_contiguous(&self, start: usize) -> bool { self.expected_start == Some(start) - || self - .frame_start - .is_some_and(|first| (first..first + FRAME).contains(&start)) + || (self.pending_start..self.pending_start + self.pending.len() / self.states.len()) + .contains(&start) } pub fn source_range(&self, start: usize, count: usize) -> Range { @@ -44,10 +70,21 @@ impl VoiceEnhancer { } else { (start / FRAME * FRAME).saturating_sub(VOICE_PREROLL_SAMPLES) }; + let padding = if self.profile.is_some() { 7 } else { 3 }; + let end = start + .saturating_add(count) + .div_ceil(FRAME) + .saturating_add(padding) + .saturating_mul(FRAME); + first..end.max(first) + } + + pub fn initial_source_range(start: usize, count: usize) -> Range { + let first = (start / FRAME * FRAME).saturating_sub(VOICE_PREROLL_SAMPLES); let end = start .saturating_add(count) .div_ceil(FRAME) - .saturating_add(1) + .saturating_add(7) .saturating_mul(FRAME); first..end.max(first) } @@ -60,28 +97,48 @@ impl VoiceEnhancer { ) -> VoiceAudio { let channels = self.states.len(); let count = count.min(source.sample_count().saturating_sub(start)); + if count == 0 { + return VoiceAudio { + samples: Vec::new(), + channels: channels as u16, + start, + total_samples: source.sample_count(), + }; + } if count > 0 && !self.is_contiguous(start) { self.next_input = self.source_range(start, count).start; - self.states = (0..channels).map(|_| DenoiseState::new()).collect(); - self.frame_start = None; + self.warm_start = self.next_input; + self.pending_start = self.next_input; + self.pending.clear(); self.previous.fill(0.0); + self.states = (0..channels).map(|_| DenoiseState::new()).collect(); + self.speech_frames = 0; + self.leveler = self.profile.and_then(|profile| { + VoiceFilter::new(channels as u16, &profile.filter(channels as u16)) + .map_err(|error| { + tracing::warn!(%error, "Studio Sound leveling is unavailable"); + }) + .ok() + }); } - let mut samples = vec![0.0; count * channels]; - let mut written = 0; - while written < count { - let cursor = start + written; - while !self - .frame_start - .is_some_and(|first| (first..first + FRAME).contains(&cursor)) - { - self.process_frame(source); - } - let offset = cursor - self.frame_start.unwrap(); - let take = (FRAME - offset).min(count - written); - samples[written * channels..(written + take) * channels] - .copy_from_slice(&self.frame[offset * channels..(offset + take) * channels]); - written += take; + while count > 0 && self.pending_start + self.pending.len() / channels < start + count { + self.process_frame(source); } + let first = (start - self.pending_start) * channels; + let samples = self + .pending + .iter() + .skip(first) + .take(count * channels) + .copied() + .collect(); + // Fractional timeline mappings can repeat a source sample without rewinding the decoder. + let history_start = (start + count - 1) / FRAME * FRAME; + let discard = history_start + .saturating_sub(self.pending_start) + .min(self.pending.len() / channels); + drop(self.pending.drain(..discard * channels)); + self.pending_start += discard; self.expected_start = Some(start + count); VoiceAudio { samples, @@ -95,6 +152,8 @@ impl VoiceEnhancer { let channels = self.states.len(); let mut input = [0.0; FRAME]; let mut output = [0.0; FRAME]; + let delayed = (self.next_input / FRAME % 2) * FRAME * channels; + let mut speech = false; for (channel, state) in self.states.iter_mut().enumerate() { for (index, sample) in input.iter_mut().enumerate() { let value = source @@ -107,16 +166,26 @@ impl VoiceEnhancer { 0.0 }; } - state.process_frame(&mut output, &input); + speech |= state.process_frame(&mut output, &input) > 0.6; for (index, (&clean, &raw)) in output.iter().zip(&input).enumerate() { let index = index * channels + channel; self.frame[index] = - (clean / 32_768.0 * 0.9 + self.previous[index] * 0.1).clamp(-1.0, 1.0); - self.previous[index] = raw / 32_768.0; + clean / 32_768.0 * self.wet + self.previous[delayed + index] * (1.0 - self.wet); + self.previous[delayed + index] = raw / 32_768.0; + } + } + self.speech_frames += usize::from(speech); + if self.next_input >= self.warm_start + DELAY_SAMPLES { + if let Some(leveler) = &mut self.leveler { + if let Err(error) = leveler.process(&self.frame, &mut self.pending) { + tracing::warn!(%error, "Studio Sound leveling failed"); + self.leveler = None; + self.pending.extend(&self.frame); + } + } else { + self.pending.extend(&self.frame); } } - // RNNoise emits the preceding 10 ms frame. Reading ahead keeps source timestamps intact. - self.frame_start = self.next_input.checked_sub(FRAME); self.next_input += FRAME; } } @@ -128,6 +197,12 @@ pub struct VoiceAudio { total_samples: usize, } +impl VoiceAudio { + pub fn samples(&self) -> &[f32] { + &self.samples + } +} + impl AudioSampleSource for VoiceAudio { fn channels(&self) -> u16 { self.channels @@ -212,6 +287,70 @@ mod tests { } } + #[test] + fn leveling_preserves_chunk_boundaries_timing_and_peak_headroom() { + ffmpeg::init().unwrap(); + for channels in [1, 2] { + let mut source = signal(96_137, channels); + for (index, sample) in source.data.iter_mut().enumerate() { + let position = index / usize::from(channels); + *sample = if (8_000..80_000).contains(&position) { + (position as f32 * 0.037).sin() * 0.05 + } else { + 0.0 + }; + } + let profile = VoiceProfile { + gain_db: 12.0, + makeup_db: 2.0, + }; + let expected = VoiceEnhancer::with_settings(channels, 0.9, profile).render( + &source, + 0, + source.sample_count(), + ); + let mut enhancer = VoiceEnhancer::with_settings(channels, 0.9, profile); + let mut actual = Vec::new(); + let mut cursor = 0; + while cursor < source.sample_count() { + let audio = enhancer.render(&source, cursor, cursor % 5_007 + 1); + cursor += audio.samples.len() / usize::from(channels); + actual.extend(audio.samples); + assert!( + enhancer.pending.len() < VOICE_WINDOW_PADDING_SAMPLES * usize::from(channels) + ); + } + assert_eq!(actual, expected.samples); + assert!( + actual + .iter() + .all(|value| value.is_finite() && value.abs() < 0.86) + ); + assert!(actual.iter().any(|value| value.abs() > 0.05)); + for remainder in 0..FRAME { + let range = enhancer.source_range(48_000 + remainder, 4_096); + assert!( + range.len() <= 4_096 + VOICE_PREROLL_SAMPLES + VOICE_WINDOW_PADDING_SAMPLES + ); + } + let mut impulse = Samples { + data: vec![0.0; 12_017 * usize::from(channels)], + channels, + }; + impulse.data[5_333 * usize::from(channels)] = 0.8; + let audio = VoiceEnhancer::with_settings(channels, 0.0, VoiceProfile::default()) + .render(&impulse, 0, impulse.sample_count()); + let peak = audio + .samples + .iter() + .enumerate() + .max_by(|(_, a), (_, b)| a.abs().total_cmp(&b.abs())) + .unwrap() + .0; + assert_eq!(peak / usize::from(channels), 5_333); + } + } + #[test] fn arbitrary_blocks_match_whole_processing_including_stereo_and_tail() { for channels in [1, 2] { @@ -311,6 +450,6 @@ mod tests { ); assert_eq!(enhancer.states.len(), 1); assert_eq!(enhancer.frame.len(), FRAME); - assert_eq!(enhancer.previous.len(), FRAME); + assert_eq!(enhancer.previous.len(), DELAY_SAMPLES); } } From 2cbc63c7f3ffa3a3bef534f293c9c9120241092b Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:41 +0100 Subject: [PATCH 006/217] perf(audio): cache voice profiles during progressive decoding --- crates/audio/src/progressive.rs | 43 +++++++++++++++++++- crates/audio/src/progressive/test_support.rs | 1 + 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/crates/audio/src/progressive.rs b/crates/audio/src/progressive.rs index 82ac48b2c17..be01cfe115f 100644 --- a/crates/audio/src/progressive.rs +++ b/crates/audio/src/progressive.rs @@ -6,11 +6,13 @@ mod test_support; #[cfg(feature = "test-support")] pub use test_support::ProgressiveAudioTestProducer; -use crate::{AudioData, AudioSampleSource, AudioStream, ChunkRead}; +use crate::{ + AudioData, AudioSampleSource, AudioStream, ChunkRead, VOICE_PROFILE_SAMPLES, VoiceProfile, +}; use std::{ ops::Range, path::PathBuf, - sync::{Arc, Mutex, atomic::AtomicBool}, + sync::{Arc, Mutex, OnceLock, atomic::AtomicBool}, }; use tokio::sync::watch; @@ -47,6 +49,7 @@ pub struct DecodedAudio { storage: AudioStorage, channels: u16, frames: usize, + voice_profile: Arc>, } enum AudioStorage { @@ -55,6 +58,12 @@ enum AudioStorage { } impl DecodedAudio { + pub fn voice_profile(&self) -> VoiceProfile { + *self + .voice_profile + .get_or_init(|| VoiceProfile::analyze(self)) + } + pub fn channels(&self) -> u16 { self.channels } @@ -79,6 +88,7 @@ impl From> for DecodedAudio { Self { channels: data.channels(), frames: data.sample_count(), + voice_profile: Arc::default(), storage: AudioStorage::Contiguous(data), } } @@ -141,6 +151,7 @@ struct PendingBlocks { blocks: Vec>>, frames: usize, channels: Option, + voice_profile: Arc>, } impl PendingBlocks { @@ -303,6 +314,7 @@ impl ProgressiveAudio { return Ok(Arc::new(DecodedAudio { channels: stream.channels(), frames: pending.frames, + voice_profile: pending.voice_profile.clone(), storage: AudioStorage::Blocks(std::mem::take(&mut pending.blocks)), })); } @@ -318,6 +330,31 @@ impl ProgressiveAudio { progress } + pub fn try_voice_profile(&self) -> Result, String> { + let result = self.rx.borrow().result.clone(); + if let Some(result) = result { + return result + .as_ref() + .map(|audio| audio.as_ref().map(|audio| audio.voice_profile())) + .map_err(Clone::clone); + } + let profile = self + .pending + .lock() + .map_err(|error| error.to_string())? + .voice_profile + .clone(); + if let Some(profile) = profile.get() { + return Ok(Some(*profile)); + } + match self.try_window(0..VOICE_PROFILE_SAMPLES)? { + AudioWindowRead::Ready(Some(window)) => Ok(Some( + *profile.get_or_init(|| VoiceProfile::analyze(&window)), + )), + AudioWindowRead::Pending | AudioWindowRead::Ready(None) => Ok(None), + } + } + pub async fn get(&self) -> Result>, String> { let mut rx = self.complete.clone(); loop { @@ -609,6 +646,7 @@ mod tests { Arc::new(DecodedAudio { channels: 2, frames: pending.frames, + voice_profile: pending.voice_profile.clone(), storage: AudioStorage::Blocks(std::mem::take(&mut pending.blocks)), }) }; @@ -980,6 +1018,7 @@ mod tests { Arc::new(DecodedAudio { channels: 2, frames: pending.frames, + voice_profile: pending.voice_profile.clone(), storage: AudioStorage::Blocks(std::mem::take(&mut pending.blocks)), }) }; diff --git a/crates/audio/src/progressive/test_support.rs b/crates/audio/src/progressive/test_support.rs index 849b99721c1..ab46ed77ff5 100644 --- a/crates/audio/src/progressive/test_support.rs +++ b/crates/audio/src/progressive/test_support.rs @@ -55,6 +55,7 @@ impl ProgressiveAudioTestProducer { Arc::new(DecodedAudio { channels: pending.channels.ok_or("No published audio channels")?, frames: pending.frames, + voice_profile: pending.voice_profile.clone(), storage: AudioStorage::Blocks(std::mem::take(&mut pending.blocks)), }) }; From d7fa7a2725a4d38b2d31180e23ca2f16ac97b837 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:41 +0100 Subject: [PATCH 007/217] feat(project): persist Studio Sound isolation strength --- .../src/routes/screenshot-editor/context.tsx | 1 + apps/desktop/src/utils/tauri.ts | 3 ++- crates/project/src/configuration.rs | 21 +++++++++++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/apps/desktop/src/routes/screenshot-editor/context.tsx b/apps/desktop/src/routes/screenshot-editor/context.tsx index b7e5bcef3e1..c5930fe71e0 100644 --- a/apps/desktop/src/routes/screenshot-editor/context.tsx +++ b/apps/desktop/src/routes/screenshot-editor/context.tsx @@ -126,6 +126,7 @@ const DEFAULT_CAMERA: Camera = { const DEFAULT_AUDIO: AudioConfiguration = { mute: false, improve: false, + isolation: "balanced", micVolumeDb: 0, micStereoMode: "stereo", systemVolumeDb: 0, diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index 69c9d0543b5..fa2ca178c73 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -655,7 +655,7 @@ export type AnnotationType = "arrow" | "circle" | "rectangle" | "text" | "mask" export type AppTheme = "system" | "light" | "dark" export type AspectRatio = "wide" | "vertical" | "square" | "classic" | "tall" export type Audio = { duration: number; sample_rate: number; channels: number; start_time: number } -export type AudioConfiguration = { mute: boolean; improve: boolean; micVolumeDb: number; micStereoMode: StereoMode; systemVolumeDb: number } +export type AudioConfiguration = { mute: boolean; improve: boolean; isolation: VoiceIsolation; micVolumeDb: number; micStereoMode: StereoMode; systemVolumeDb: number } /** * Overlap-trim accounting captured by the recorder's audio gap tracker, persisted so the * editor can compensate for stale-startup audio drift from typed data instead of scraping @@ -1312,6 +1312,7 @@ export type VideoImportProgress = { project_path: string; stage: ImportStage; pr export type VideoMeta = { path: string; fps?: number; start_time?: number | null; device_id?: string | null } export type VideoRecordingMetadata = { duration: number; size: number } export type VideoUploadInfo = { id: string; link: string; config: S3UploadMeta } +export type VoiceIsolation = "light" | "balanced" | "strong" export type WindowExclusion = { bundleIdentifier?: string | null; ownerName?: string | null; windowTitle?: string | null } export type WindowId = string export type WindowPosition = { x: number; y: number; displayId?: DisplayId | null } diff --git a/crates/project/src/configuration.rs b/crates/project/src/configuration.rs index df1421d62f6..994786fada9 100644 --- a/crates/project/src/configuration.rs +++ b/crates/project/src/configuration.rs @@ -621,11 +621,31 @@ pub enum StereoMode { MonoR, } +#[derive(Type, Serialize, Deserialize, Clone, Copy, Debug, Default, PartialEq, Eq)] +#[serde(rename_all = "camelCase")] +pub enum VoiceIsolation { + Light, + #[default] + Balanced, + Strong, +} + +impl VoiceIsolation { + pub fn strength(self) -> f32 { + match self { + Self::Light => 0.7, + Self::Balanced => 0.9, + Self::Strong => 0.98, + } + } +} + #[derive(Type, Serialize, Deserialize, Clone, Debug, PartialEq)] #[serde(rename_all = "camelCase", default)] pub struct AudioConfiguration { pub mute: bool, pub improve: bool, + pub isolation: VoiceIsolation, pub mic_volume_db: f32, pub mic_stereo_mode: StereoMode, pub system_volume_db: f32, @@ -636,6 +656,7 @@ impl Default for AudioConfiguration { Self { mute: false, improve: false, + isolation: VoiceIsolation::default(), mic_volume_db: 0.0, mic_stereo_mode: StereoMode::default(), system_volume_db: 0.0, From 788d94adc907c62df3ad73263216d6215f522498 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:43 +0100 Subject: [PATCH 008/217] feat(project): add clip volume and cursor visibility --- apps/cli/src/selftest/playback.rs | 2 + apps/desktop-gpui/src/editor_clips.rs | 10 + apps/desktop-gpui/src/editor_edits.rs | 2 + apps/desktop-gpui/src/editor_window.rs | 8 + apps/desktop-gpui/src/transcription.rs | 2 + .../desktop-display-transport-benchmark.rs | 4 + .../desktop/src-tauri/src/editor_preparing.rs | 2 + apps/desktop/src-tauri/src/import.rs | 8 + apps/desktop/src-tauri/src/recording.rs | 4 + apps/desktop/src/utils/tauri.ts | 2 +- .../examples/editor-playback-benchmark.rs | 4 + .../examples/playback-pipeline-benchmark.rs | 4 + crates/editor/src/audio.rs | 14 ++ crates/editor/src/editor_instance.rs | 4 + crates/editor/src/export_audio.rs | 2 + crates/project/src/configuration.rs | 217 ++++++++++++++++++ crates/recording/src/recovery.rs | 2 + crates/recording/src/studio_recording.rs | 2 + crates/recording/src/track_heal.rs | 8 + crates/rendering/src/zoom_spring.rs | 10 + 20 files changed, 310 insertions(+), 1 deletion(-) diff --git a/apps/cli/src/selftest/playback.rs b/apps/cli/src/selftest/playback.rs index 6612739e7a7..57e997d9471 100644 --- a/apps/cli/src/selftest/playback.rs +++ b/apps/cli/src/selftest/playback.rs @@ -903,6 +903,8 @@ mod fixture { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], transitions: Vec::new(), zoom_segments: Vec::new(), diff --git a/apps/desktop-gpui/src/editor_clips.rs b/apps/desktop-gpui/src/editor_clips.rs index 814c372b176..b2d2aa2256d 100644 --- a/apps/desktop-gpui/src/editor_clips.rs +++ b/apps/desktop-gpui/src/editor_clips.rs @@ -1941,6 +1941,8 @@ impl PreparedMp4Import { end: self.duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }); add_clip_configs(&mut config, index, std::slice::from_ref(&self.segment)); config.validate().map_err(|error| error.to_string())?; @@ -2364,6 +2366,8 @@ fn full_timeline_for_segments( end: duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect() @@ -2959,6 +2963,8 @@ fn full_timeline_for_source_segments( end: duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect() @@ -3278,6 +3284,8 @@ pub(crate) fn append_cap_project_to_editor( end: source_segment.end, name: None, speed_audio_mode: source_segment.speed_audio_mode, + hide_cursor: source_segment.hide_cursor, + volume: source_segment.volume, }); } } @@ -3661,6 +3669,8 @@ mod tests { end, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, } } diff --git a/apps/desktop-gpui/src/editor_edits.rs b/apps/desktop-gpui/src/editor_edits.rs index ca9f0c598c7..95594d45165 100644 --- a/apps/desktop-gpui/src/editor_edits.rs +++ b/apps/desktop-gpui/src/editor_edits.rs @@ -1754,6 +1754,8 @@ pub fn ensure_timeline(project: &mut ProjectConfiguration, clip_display_duration end: *duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) .collect(), transitions: Vec::new(), diff --git a/apps/desktop-gpui/src/editor_window.rs b/apps/desktop-gpui/src/editor_window.rs index b4babcc1ca6..07360dd4a7f 100644 --- a/apps/desktop-gpui/src/editor_window.rs +++ b/apps/desktop-gpui/src/editor_window.rs @@ -428,6 +428,8 @@ pub fn preflight(path: &std::path::Path) -> Result { end: segment.duration(), name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) .collect(), // `TimelineConfiguration` has no `Default`, so the eight other @@ -10849,6 +10851,8 @@ mod tests { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], transitions: Vec::new(), zoom_segments: Vec::new(), @@ -10902,6 +10906,8 @@ mod tests { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, cap_project::TimelineSegment { recording_clip: 0, @@ -10910,6 +10916,8 @@ mod tests { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, ], transitions: Vec::new(), diff --git a/apps/desktop-gpui/src/transcription.rs b/apps/desktop-gpui/src/transcription.rs index 5ed9802d628..ce2ed9dc1e6 100644 --- a/apps/desktop-gpui/src/transcription.rs +++ b/apps/desktop-gpui/src/transcription.rs @@ -2071,6 +2071,8 @@ pub fn apply_caption_result( end: recording_duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], transitions: Vec::new(), zoom_segments: Vec::new(), diff --git a/apps/desktop/src-tauri/examples/desktop-display-transport-benchmark.rs b/apps/desktop/src-tauri/examples/desktop-display-transport-benchmark.rs index efb5684eb91..4aafe33f3be 100644 --- a/apps/desktop/src-tauri/examples/desktop-display-transport-benchmark.rs +++ b/apps/desktop/src-tauri/examples/desktop-display-transport-benchmark.rs @@ -133,6 +133,8 @@ async fn load_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }] } StudioRecordingMeta::MultipleSegments { inner } => inner @@ -152,6 +154,8 @@ async fn load_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect(), diff --git a/apps/desktop/src-tauri/src/editor_preparing.rs b/apps/desktop/src-tauri/src/editor_preparing.rs index d3a91041841..7a213388e47 100644 --- a/apps/desktop/src-tauri/src/editor_preparing.rs +++ b/apps/desktop/src-tauri/src/editor_preparing.rs @@ -1364,6 +1364,8 @@ mod presentation_guard_tests { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }; for notch in [ None, diff --git a/apps/desktop/src-tauri/src/import.rs b/apps/desktop/src-tauri/src/import.rs index c139420ece8..19aa7faf635 100644 --- a/apps/desktop/src-tauri/src/import.rs +++ b/apps/desktop/src-tauri/src/import.rs @@ -324,6 +324,8 @@ fn full_timeline_for_segments( end: duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect() @@ -358,6 +360,8 @@ fn full_timeline_for_source_segments( end: duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect() @@ -1731,6 +1735,8 @@ async fn append_mp4_to_editor_project( end: duration, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }); add_clip_configs( &mut config, @@ -1862,6 +1868,8 @@ async fn append_cap_project_to_editor_project( end: source_segment.end, name: None, speed_audio_mode: source_segment.speed_audio_mode, + hide_cursor: source_segment.hide_cursor, + volume: source_segment.volume, }); } } diff --git a/apps/desktop/src-tauri/src/recording.rs b/apps/desktop/src-tauri/src/recording.rs index 8096b61c3e5..0e776b3c5f2 100644 --- a/apps/desktop/src-tauri/src/recording.rs +++ b/apps/desktop/src-tauri/src/recording.rs @@ -6458,6 +6458,8 @@ fn project_config_from_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) .collect::>(); @@ -9908,6 +9910,8 @@ mod preparing_presentation_parity_tests { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }] } diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index fa2ca178c73..c66d7500d1a 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -1295,7 +1295,7 @@ letterSpacing?: number; lineHeight?: number; opacity?: number; shadow?: number; */ layoutTransition?: number } export type TimelineConfiguration = { segments: TimelineSegment[]; transitions: ClipTransition[]; zoomSegments: ZoomSegment[]; sceneSegments?: SceneSegment[]; maskSegments?: MaskSegment[]; textSegments?: TextSegment[]; captionSegments?: CaptionTrackSegment[]; keyboardSegments?: KeyboardTrackSegment[]; audioSegments?: AudioTrackSegment[]; styleSegments: StyleSegment[]; imageSegments: ImageSegment[]; camera3dSegments?: Camera3DSegment[] } -export type TimelineSegment = { recordingSegment?: number; timescale: number; start: number; end: number; name?: string | null; speedAudioMode?: ClipSpeedAudioMode | null } +export type TimelineSegment = { recordingSegment?: number; timescale: number; start: number; end: number; name?: string | null; speedAudioMode?: ClipSpeedAudioMode | null; volume?: number | null; hideCursor?: boolean | null } export type TranscriptionEngine = "Whisper" | "Parakeet" export type Trigger = "screenshotTaken" | "studioRecordingFinished" | "instantRecordingFinished" | "recordingStarted" | "uploadCompleted" | "videoImported" | "recordingDeleted" export type UpdateChannel = "stable" | "nightly" diff --git a/crates/editor/examples/editor-playback-benchmark.rs b/crates/editor/examples/editor-playback-benchmark.rs index 00cb31769d6..14305d6c61a 100644 --- a/crates/editor/examples/editor-playback-benchmark.rs +++ b/crates/editor/examples/editor-playback-benchmark.rs @@ -353,6 +353,8 @@ async fn load_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }] } StudioRecordingMeta::MultipleSegments { inner } => inner @@ -372,6 +374,8 @@ async fn load_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect(), diff --git a/crates/editor/examples/playback-pipeline-benchmark.rs b/crates/editor/examples/playback-pipeline-benchmark.rs index 4c3f3fc0793..8e772d10372 100644 --- a/crates/editor/examples/playback-pipeline-benchmark.rs +++ b/crates/editor/examples/playback-pipeline-benchmark.rs @@ -276,6 +276,8 @@ async fn load_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }] } StudioRecordingMeta::MultipleSegments { inner } => inner @@ -298,6 +300,8 @@ async fn load_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect(), diff --git a/crates/editor/src/audio.rs b/crates/editor/src/audio.rs index ac363c19c40..b769bf177d1 100644 --- a/crates/editor/src/audio.rs +++ b/crates/editor/src/audio.rs @@ -2320,6 +2320,8 @@ mod tests { end: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 0, @@ -2328,6 +2330,8 @@ mod tests { end: 2.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 0, @@ -2336,6 +2340,8 @@ mod tests { end: 3.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 1, @@ -2344,6 +2350,8 @@ mod tests { end: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 1, @@ -2352,6 +2360,8 @@ mod tests { end: 2.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 1, @@ -2360,6 +2370,8 @@ mod tests { end: 3.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, ], transitions: Vec::new(), @@ -2711,6 +2723,8 @@ mod tests { end, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, } } diff --git a/crates/editor/src/editor_instance.rs b/crates/editor/src/editor_instance.rs index a668af23aae..11ca6f2f370 100644 --- a/crates/editor/src/editor_instance.rs +++ b/crates/editor/src/editor_instance.rs @@ -378,6 +378,8 @@ impl EditorInstance { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], _ => { warn!( @@ -411,6 +413,8 @@ impl EditorInstance { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect(), diff --git a/crates/editor/src/export_audio.rs b/crates/editor/src/export_audio.rs index a01c07c86e9..92c92ec9043 100644 --- a/crates/editor/src/export_audio.rs +++ b/crates/editor/src/export_audio.rs @@ -1052,6 +1052,8 @@ mod tests { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, } } diff --git a/crates/project/src/configuration.rs b/crates/project/src/configuration.rs index 994786fada9..7b1aa21d9a5 100644 --- a/crates/project/src/configuration.rs +++ b/crates/project/src/configuration.rs @@ -928,6 +928,10 @@ pub struct TimelineSegment { pub name: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub speed_audio_mode: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub volume: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub hide_cursor: Option, } #[derive(Type, Serialize, Deserialize, Clone, Copy, Debug, Default, PartialEq, Eq)] @@ -940,6 +944,17 @@ pub enum ClipSpeedAudioMode { } impl TimelineSegment { + pub fn hides_cursor(&self) -> bool { + self.hide_cursor.unwrap_or(false) + } + + pub fn volume(&self) -> f64 { + self.volume + .filter(|volume| volume.is_finite()) + .unwrap_or(1.0) + .clamp(0.0, 2.0) + } + fn interpolate_time(&self, tick: f64) -> Option { if tick > self.duration() { None @@ -1690,6 +1705,9 @@ fn is_timeline_interval_active(start: f64, end: f64, time: f64) -> bool { } pub const MIN_CLIP_TRANSITION_DURATION: f64 = 0.05; +/// How long the cursor takes to fade out after entering a clip that hides it +/// (and to fade back in before leaving the hidden run). +pub const CLIP_CURSOR_FADE_SECS: f64 = 0.3; #[derive(Type, Serialize, Deserialize, Clone, Copy, Debug, Default, PartialEq, Eq)] #[serde(rename_all = "kebab-case")] @@ -2056,6 +2074,66 @@ impl TimelineConfiguration { segment_duration + self.held_duration() } + + /// Gapless-time windows covered by clips that hide the cursor, with + /// touching windows merged so a run of hidden clips fades once at each + /// end rather than at every boundary. A window opens where its clip's + /// incoming transition starts and closes where the next transition + /// starts, matching the frame mapping above. + fn hidden_cursor_windows(&self) -> (Vec<(f64, f64)>, f64) { + let mut windows: Vec<(f64, f64)> = Vec::new(); + let mut segment_start = 0.0; + for (index, segment) in self.segments.iter().enumerate() { + let next_duration = self + .effective_transition(index + 1) + .map_or(0.0, |transition| transition.duration); + let end = segment_start + segment.duration() - next_duration; + if segment.hides_cursor() { + match windows.last_mut() { + Some(last) if (last.1 - segment_start).abs() < 1e-9 => last.1 = end, + _ => windows.push((segment_start, end)), + } + } + segment_start = end; + } + (windows, segment_start) + } + + /// 0..1 multiplier for the cursor (and its click ripples) at an output + /// time: 1 on ordinary clips, 0 inside a clip that hides the cursor, with + /// a [`CLIP_CURSOR_FADE_SECS`] smoothstep ramp just inside each end of the + /// hidden run. The ramp is skipped at the timeline's own start and end so + /// the cursor never blinks in for a hidden first or last clip. + pub fn cursor_visibility_at(&self, output_time: f64) -> f64 { + if !self.segments.iter().any(TimelineSegment::hides_cursor) { + return 1.0; + } + let holds = self.hold_windows(); + let time = output_time - held_time_before(&holds, output_time); + let (windows, total) = self.hidden_cursor_windows(); + for (start, end) in windows { + if time < start || time >= end { + continue; + } + let from_start = if start <= 1e-9 { + f64::INFINITY + } else { + time - start + }; + let from_end = if end >= total - 1e-9 { + f64::INFINITY + } else { + end - time + }; + let edge = from_start.min(from_end); + if edge >= CLIP_CURSOR_FADE_SECS { + return 0.0; + } + let t = (edge / CLIP_CURSOR_FADE_SECS).clamp(0.0, 1.0); + return 1.0 - t * t * (3.0 - 2.0 * t); + } + 1.0 + } } fn active_hold_window(windows: &[(f64, f64)], time: f64) -> Option<(f64, f64)> { @@ -2786,6 +2864,12 @@ impl ProjectConfiguration { .as_ref() .and_then(|t| t.get_segment_time(frame_time)) } + + pub fn cursor_visibility_at(&self, output_time: f64) -> f64 { + self.timeline + .as_ref() + .map_or(1.0, |timeline| timeline.cursor_visibility_at(output_time)) + } } pub const SLOW_SMOOTHING_SAMPLES: usize = 24; @@ -2904,6 +2988,8 @@ mod tests { end: 4.0, name: None, speed_audio_mode: None, + volume: None, + hide_cursor: None, }, TimelineSegment { recording_clip: 1, @@ -2912,6 +2998,8 @@ mod tests { end: 16.0, name: None, speed_audio_mode: None, + volume: None, + hide_cursor: None, }, ], transitions, @@ -3583,6 +3671,39 @@ mod tests { )); } + #[test] + fn timeline_segment_volume_is_backward_compatible_and_bounded() { + let mut segment: TimelineSegment = serde_json::from_value(serde_json::json!({ + "recordingSegment": 0, + "timescale": 1.0, + "start": 0.0, + "end": 4.0 + })) + .unwrap(); + assert_eq!(segment.volume(), 1.0); + assert!( + serde_json::to_value(&segment) + .unwrap() + .get("volume") + .is_none() + ); + segment.volume = Some(0.35); + let saved = serde_json::to_string(&segment).unwrap(); + let restored: TimelineSegment = serde_json::from_str(&saved).unwrap(); + assert_eq!(restored.volume(), 0.35); + for (volume, expected) in [ + (-1.0, 0.0), + (0.0, 0.0), + (2.0, 2.0), + (3.0, 2.0), + (f64::NAN, 1.0), + (f64::INFINITY, 1.0), + ] { + segment.volume = Some(volume); + assert_eq!(segment.volume(), expected); + } + } + #[test] fn timeline_segment_speed_audio_mode_is_backward_compatible() { let legacy: TimelineSegment = serde_json::from_value(serde_json::json!({ @@ -3732,6 +3853,102 @@ mod tests { ); } + fn clip(start: f64, end: f64, hide_cursor: bool) -> TimelineSegment { + TimelineSegment { + recording_clip: 0, + timescale: 1.0, + start, + end, + name: None, + speed_audio_mode: None, + volume: None, + hide_cursor: hide_cursor.then_some(true), + } + } + + fn cursor_timeline(segments: Vec) -> TimelineConfiguration { + TimelineConfiguration { + segments, + ..timeline_with_transitions(Vec::new()) + } + } + + #[test] + fn hide_cursor_is_omitted_from_json_unless_set() { + let visible = serde_json::to_value(clip(0.0, 1.0, false)).unwrap(); + assert!(visible.get("hideCursor").is_none()); + let hidden = serde_json::to_value(clip(0.0, 1.0, true)).unwrap(); + assert_eq!(hidden["hideCursor"], serde_json::Value::Bool(true)); + let legacy: TimelineSegment = + serde_json::from_str(r#"{"timescale":1.0,"start":0.0,"end":1.0}"#).unwrap(); + assert!(!legacy.hides_cursor()); + } + + #[test] + fn cursor_visibility_is_full_without_hidden_clips() { + let timeline = cursor_timeline(vec![clip(0.0, 4.0, false), clip(4.0, 8.0, false)]); + for time in [0.0, 3.9, 4.0, 7.9] { + assert_eq!(timeline.cursor_visibility_at(time), 1.0); + } + } + + #[test] + fn cursor_fades_at_both_edges_of_a_hidden_middle_clip() { + let timeline = cursor_timeline(vec![ + clip(0.0, 4.0, false), + clip(4.0, 8.0, true), + clip(8.0, 12.0, false), + ]); + assert_eq!(timeline.cursor_visibility_at(3.99), 1.0); + assert_eq!(timeline.cursor_visibility_at(4.0), 1.0); + let half = timeline.cursor_visibility_at(4.0 + CLIP_CURSOR_FADE_SECS / 2.0); + assert!((half - 0.5).abs() < 1e-9, "{half}"); + assert_eq!( + timeline.cursor_visibility_at(4.0 + CLIP_CURSOR_FADE_SECS), + 0.0 + ); + assert_eq!(timeline.cursor_visibility_at(6.0), 0.0); + let back = timeline.cursor_visibility_at(8.0 - CLIP_CURSOR_FADE_SECS / 2.0); + assert!((back - 0.5).abs() < 1e-9, "{back}"); + assert_eq!(timeline.cursor_visibility_at(8.0), 1.0); + assert_eq!(timeline.cursor_visibility_at(10.0), 1.0); + } + + #[test] + fn cursor_never_fades_in_at_the_timeline_ends() { + let timeline = cursor_timeline(vec![clip(0.0, 4.0, true), clip(4.0, 8.0, true)]); + assert_eq!(timeline.cursor_visibility_at(0.0), 0.0); + assert_eq!(timeline.cursor_visibility_at(0.1), 0.0); + assert_eq!(timeline.cursor_visibility_at(4.0), 0.0); + assert_eq!(timeline.cursor_visibility_at(7.95), 0.0); + } + + #[test] + fn adjacent_hidden_clips_fade_as_one_run() { + let timeline = cursor_timeline(vec![ + clip(0.0, 2.0, false), + clip(2.0, 4.0, true), + clip(4.0, 6.0, true), + clip(6.0, 8.0, false), + ]); + assert_eq!(timeline.cursor_visibility_at(3.9), 0.0); + assert_eq!(timeline.cursor_visibility_at(4.0), 0.0); + assert_eq!(timeline.cursor_visibility_at(4.1), 0.0); + assert!(timeline.cursor_visibility_at(5.9) > 0.0); + } + + #[test] + fn cursor_visibility_follows_held_output_time() { + let mut timeline = cursor_timeline(vec![clip(0.0, 4.0, false), clip(4.0, 8.0, true)]); + timeline.text_segments = vec![fullscreen_text(1.0, 3.0)]; + assert_eq!(timeline.cursor_visibility_at(5.0), 1.0); + assert_eq!(timeline.cursor_visibility_at(6.0), 1.0); + assert_eq!( + timeline.cursor_visibility_at(6.0 + CLIP_CURSOR_FADE_SECS), + 0.0 + ); + } + #[test] fn transition_json_is_normalized_by_segment_index() { let timeline: TimelineConfiguration = serde_json::from_value(serde_json::json!({ diff --git a/crates/recording/src/recovery.rs b/crates/recording/src/recovery.rs index 67cfad71cd7..1d8af583564 100644 --- a/crates/recording/src/recovery.rs +++ b/crates/recording/src/recovery.rs @@ -2316,6 +2316,8 @@ impl RecoveryManager { timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect(); diff --git a/crates/recording/src/studio_recording.rs b/crates/recording/src/studio_recording.rs index bd1b6fbc7f4..8c35916a2cf 100644 --- a/crates/recording/src/studio_recording.rs +++ b/crates/recording/src/studio_recording.rs @@ -2714,6 +2714,8 @@ async fn stop_recording( timescale: 1.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }) }) .collect(); diff --git a/crates/recording/src/track_heal.rs b/crates/recording/src/track_heal.rs index 16626b63a6b..9ebfba3046f 100644 --- a/crates/recording/src/track_heal.rs +++ b/crates/recording/src/track_heal.rs @@ -1050,6 +1050,8 @@ mod tests { end: 202.220711, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], transitions: Vec::new(), zoom_segments: vec![ZoomSegment { @@ -1106,6 +1108,8 @@ mod tests { end: 202.220711, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], transitions: Vec::new(), zoom_segments: vec![], @@ -1182,6 +1186,8 @@ mod tests { end: 100.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 1, @@ -1190,6 +1196,8 @@ mod tests { end: 50.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, ], transitions: Vec::new(), diff --git a/crates/rendering/src/zoom_spring.rs b/crates/rendering/src/zoom_spring.rs index 50bc80f965e..462c931d3d7 100644 --- a/crates/rendering/src/zoom_spring.rs +++ b/crates/rendering/src/zoom_spring.rs @@ -1329,6 +1329,8 @@ mod tests { end: 14.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 0, @@ -1337,6 +1339,8 @@ mod tests { end: 34.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, ]; config.transitions = vec![ClipTransition { @@ -2103,6 +2107,8 @@ mod tests { end: 20.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }], transitions: vec![], zoom_segments: vec![], @@ -2162,6 +2168,8 @@ mod tests { end: 4.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, TimelineSegment { recording_clip: 0, @@ -2170,6 +2178,8 @@ mod tests { end: 14.0, name: None, speed_audio_mode: None, + hide_cursor: None, + volume: None, }, ], transitions: vec![ClipTransition { From 7e77bf7f17bd2b39c69e8a785b75e26d13687045 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:43 +0100 Subject: [PATCH 009/217] feat(project): add camera background removal settings --- apps/desktop/src/utils/tauri.ts | 2 +- crates/project/src/configuration.rs | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index c66d7500d1a..d9cae56299d 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -709,7 +709,7 @@ export type AutomationRule = { id: string; name: string; enabled?: boolean; trig export type AutomationTestReport = { ruleId: string; ruleName: string; actionChecks: AutomationActionCheck[] } export type AutomationsStore = { version?: number; rules?: AutomationRule[] } export type BackgroundBlurConfig = { mode: BackgroundBlurMode } -export type BackgroundBlurMode = "off" | "light" | "heavy" +export type BackgroundBlurMode = "off" | "light" | "heavy" | "remove" export type BackgroundConfiguration = { source: BackgroundSource; blur: number; padding: number; rounding: number; roundingType: CornerStyle; inset: number; crop: Crop | null; /** * Normalized (0-1) center of the display rect in output-frame space. diff --git a/crates/project/src/configuration.rs b/crates/project/src/configuration.rs index 7b1aa21d9a5..3fd5847deeb 100644 --- a/crates/project/src/configuration.rs +++ b/crates/project/src/configuration.rs @@ -433,6 +433,7 @@ pub enum BackgroundBlurMode { Off, Light, Heavy, + Remove, } #[derive(Debug, Clone, Serialize, Deserialize, Type)] @@ -442,8 +443,15 @@ pub struct BackgroundBlurConfig { } impl BackgroundBlurConfig { + pub fn removes_background(&self) -> bool { + cfg!(target_os = "macos") && self.mode == BackgroundBlurMode::Remove + } + pub fn is_active(&self) -> bool { - self.mode != BackgroundBlurMode::Off + matches!( + self.mode, + BackgroundBlurMode::Light | BackgroundBlurMode::Heavy + ) || self.removes_background() } } From 573380307dbb7d859a131c35d79b624b61f912d3 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:43 +0100 Subject: [PATCH 010/217] test(project): cover legacy audio and camera settings --- crates/project/src/configuration.rs | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/crates/project/src/configuration.rs b/crates/project/src/configuration.rs index 3fd5847deeb..bae633cbdc8 100644 --- a/crates/project/src/configuration.rs +++ b/crates/project/src/configuration.rs @@ -2986,6 +2986,51 @@ mod notch_tests { mod tests { use super::*; + #[test] + fn studio_sound_defaults_old_projects_to_balanced_and_round_trips_tiers() { + let legacy: AudioConfiguration = + serde_json::from_str(r#"{"improve":true,"micVolumeDb":-3.0}"#).unwrap(); + assert!(legacy.improve); + assert_eq!(legacy.isolation, VoiceIsolation::Balanced); + assert_eq!(legacy.mic_volume_db, -3.0); + for isolation in [ + VoiceIsolation::Light, + VoiceIsolation::Balanced, + VoiceIsolation::Strong, + ] { + let audio = AudioConfiguration { + isolation, + ..legacy.clone() + }; + let restored: AudioConfiguration = + serde_json::from_slice(&serde_json::to_vec(&audio).unwrap()).unwrap(); + assert_eq!(audio, restored); + } + } + + #[test] + fn camera_background_removal_round_trips_without_rewriting_framing() { + let camera: Camera = serde_json::from_value(serde_json::json!({ + "backgroundBlur": { "mode": "remove" }, + "rounding": 100.0, + "shadow": 65.0, + "shape": "square" + })) + .unwrap(); + let round_trip: Camera = + serde_json::from_slice(&serde_json::to_vec(&camera).unwrap()).unwrap(); + assert_eq!(round_trip.background_blur.mode, BackgroundBlurMode::Remove); + assert_eq!(round_trip.rounding, 100.0); + assert_eq!(round_trip.shadow, 65.0); + assert!(matches!(round_trip.shape, CameraShape::Square)); + let legacy: Camera = serde_json::from_str("{}").unwrap(); + assert_eq!(legacy.background_blur.mode, BackgroundBlurMode::Off); + assert_eq!( + round_trip.background_blur.is_active(), + cfg!(target_os = "macos") + ); + } + fn timeline_with_transitions(transitions: Vec) -> TimelineConfiguration { TimelineConfiguration { segments: vec![ From 68668a3ae8eb6078d5ba88e234aa636713e05db0 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:44 +0100 Subject: [PATCH 011/217] feat(project): add text styles and animation options --- apps/desktop-gpui/src/editor_edits.rs | 6 ++ apps/desktop-gpui/src/editor_panels.rs | 8 +++ .../desktop/src/routes/editor/TextOverlay.tsx | 2 + .../desktop/src/routes/editor/text-presets.ts | 9 +++ apps/desktop/src/routes/editor/text.ts | 2 + apps/desktop/src/utils/tauri.ts | 32 +++++++++- crates/project/src/configuration.rs | 58 +++++++++++++++++++ crates/rendering/src/takeover.rs | 6 ++ crates/rendering/src/text.rs | 6 ++ 9 files changed, 127 insertions(+), 2 deletions(-) diff --git a/apps/desktop-gpui/src/editor_edits.rs b/apps/desktop-gpui/src/editor_edits.rs index 95594d45165..13ce3bf3e44 100644 --- a/apps/desktop-gpui/src/editor_edits.rs +++ b/apps/desktop-gpui/src/editor_edits.rs @@ -1526,6 +1526,12 @@ pub fn default_text_segment(start: f64, end: f64, track: u32) -> TextSegment { italic: false, color: "#ffffff".to_string(), background_color: None, + background_style: Default::default(), + uppercase: false, + stroke_width: 0.0, + stroke_color: "#000000".to_string(), + gradient_color: None, + glow: 0.0, fade_duration: 0.15, align: Default::default(), letter_spacing: 0.0, diff --git a/apps/desktop-gpui/src/editor_panels.rs b/apps/desktop-gpui/src/editor_panels.rs index 71a3951cb69..54b5e98bacb 100644 --- a/apps/desktop-gpui/src/editor_panels.rs +++ b/apps/desktop-gpui/src/editor_panels.rs @@ -136,6 +136,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 96., font_weight: 700., italic: false, + uppercase: false, align: TextAlign::Center, letter_spacing: -1., line_height: 1.1, @@ -156,6 +157,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 44., font_weight: 500., italic: false, + uppercase: false, align: TextAlign::Center, letter_spacing: 0., line_height: 1.3, @@ -176,6 +178,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 40., font_weight: 600., italic: false, + uppercase: false, align: TextAlign::Left, letter_spacing: 0., line_height: 1.25, @@ -196,6 +199,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 26., font_weight: 700., italic: false, + uppercase: true, align: TextAlign::Center, letter_spacing: 6., line_height: 1.2, @@ -216,6 +220,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 160., font_weight: 800., italic: false, + uppercase: false, align: TextAlign::Center, letter_spacing: -2., line_height: 1., @@ -236,6 +241,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 56., font_weight: 500., italic: true, + uppercase: false, align: TextAlign::Center, letter_spacing: 0., line_height: 1.35, @@ -256,6 +262,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 36., font_weight: 400., italic: false, + uppercase: false, align: TextAlign::Left, letter_spacing: 0., line_height: 1.4, @@ -276,6 +283,7 @@ pub static TEXT_PRESETS: &[TextPreset] = &[ font_size: 44., font_weight: 500., italic: false, + uppercase: false, align: TextAlign::Left, letter_spacing: 0., line_height: 1.3, diff --git a/apps/desktop/src/routes/editor/TextOverlay.tsx b/apps/desktop/src/routes/editor/TextOverlay.tsx index 2ca0d6fff8e..965d7e4867c 100644 --- a/apps/desktop/src/routes/editor/TextOverlay.tsx +++ b/apps/desktop/src/routes/editor/TextOverlay.tsx @@ -259,6 +259,7 @@ type SegmentWithDefaults = { fontSize: number; fontWeight: number; italic: boolean; + uppercase: boolean; color: string; backgroundColor: string | null; align: TextAlign; @@ -287,6 +288,7 @@ function normalizeSegment(segment: TauriTextSegment): SegmentWithDefaults { fontSize: segment.fontSize ?? 48, fontWeight: segment.fontWeight ?? 700, italic: segment.italic ?? false, + uppercase: styled.uppercase ?? false, color: segment.color ?? "#ffffff", backgroundColor: styled.backgroundColor ?? null, align: styled.align ?? "center", diff --git a/apps/desktop/src/routes/editor/text-presets.ts b/apps/desktop/src/routes/editor/text-presets.ts index 750b47e3731..9405683e9a7 100644 --- a/apps/desktop/src/routes/editor/text-presets.ts +++ b/apps/desktop/src/routes/editor/text-presets.ts @@ -5,6 +5,7 @@ export type TextPresetStyle = { fontSize: number; fontWeight: number; italic: boolean; + uppercase: boolean; align: TextAlign; letterSpacing: number; lineHeight: number; @@ -34,6 +35,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 96, fontWeight: 700, italic: false, + uppercase: false, align: "center", letterSpacing: -1, lineHeight: 1.1, @@ -53,6 +55,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 44, fontWeight: 500, italic: false, + uppercase: false, align: "center", letterSpacing: 0, lineHeight: 1.3, @@ -73,6 +76,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 40, fontWeight: 600, italic: false, + uppercase: false, align: "left", letterSpacing: 0, lineHeight: 1.25, @@ -92,6 +96,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 26, fontWeight: 700, italic: false, + uppercase: true, align: "center", letterSpacing: 6, lineHeight: 1.2, @@ -111,6 +116,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 160, fontWeight: 800, italic: false, + uppercase: false, align: "center", letterSpacing: -2, lineHeight: 1, @@ -130,6 +136,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 56, fontWeight: 500, italic: true, + uppercase: false, align: "center", letterSpacing: 0, lineHeight: 1.35, @@ -149,6 +156,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 36, fontWeight: 400, italic: false, + uppercase: false, align: "left", letterSpacing: 0, lineHeight: 1.4, @@ -168,6 +176,7 @@ export const TEXT_PRESETS: TextPreset[] = [ fontSize: 44, fontWeight: 500, italic: false, + uppercase: false, align: "left", letterSpacing: 0, lineHeight: 1.3, diff --git a/apps/desktop/src/routes/editor/text.ts b/apps/desktop/src/routes/editor/text.ts index 2141eb0c3d6..808d87881f2 100644 --- a/apps/desktop/src/routes/editor/text.ts +++ b/apps/desktop/src/routes/editor/text.ts @@ -31,6 +31,7 @@ export type TextSegment = { fontSize: number; fontWeight: number; italic: boolean; + uppercase: boolean; color: string; backgroundColor?: string | null; fadeDuration: number; @@ -120,6 +121,7 @@ export const defaultTextSegment = ( fontSize: 48, fontWeight: 700, italic: false, + uppercase: false, color: "#ffffff", backgroundColor: undefined, fadeDuration: 0.15, diff --git a/apps/desktop/src/utils/tauri.ts b/apps/desktop/src/utils/tauri.ts index d9cae56299d..92271d6dc9d 100644 --- a/apps/desktop/src/utils/tauri.ts +++ b/apps/desktop/src/utils/tauri.ts @@ -1256,7 +1256,23 @@ export type StyleSegment = { start: number; end: number; track: number; enabled: export type SystemDiagnostics = { macosVersion: MacOSVersionInfo | null; availableEncoders: string[]; screenCaptureSupported: boolean; metalSupported: boolean; gpuName: string | null } export type TargetUnderCursor = { display_id: DisplayId | null; window: WindowUnderCursor | null } export type TextAlign = "left" | "center" | "right" -export type TextAnimation = "none" | "fade" | "slideUp" | "slideDown" | "pop" | "typewriter" +export type TextAnimation = "none" | "fade" | "slideUp" | "slideDown" | "slideLeft" | "slideRight" | "pop" | "zoom" | "bounce" | "wipe" | "words" | "letters" | "tracking" | "typewriter" +/** + * How a text segment's optional background hugs the text. + */ +export type TextBackgroundStyle = +/** + * One rounded rectangle behind the whole block. + */ +"box" | +/** + * A capsule: half-height radius and wider side padding. + */ +"pill" | +/** + * A marker stroke per laid-out line, hugging each line's ink. + */ +"highlight" /** * How a text segment shares the frame with the display recording. The * variants name where the TEXT sits; the display card makes room for it. @@ -1278,7 +1294,19 @@ export type TextLayout = * Text in the right half, display card contained in the left half. */ "splitRight" -export type TextSegment = { start: number; end: number; track?: number; enabled?: boolean; content?: string; center?: XY; size?: XY; fontFamily?: string; fontSize?: number; fontWeight?: number; italic?: boolean; color?: string; backgroundColor?: string | null; +export type TextSegment = { start: number; end: number; track?: number; enabled?: boolean; content?: string; center?: XY; size?: XY; fontFamily?: string; fontSize?: number; fontWeight?: number; italic?: boolean; color?: string; backgroundColor?: string | null; backgroundStyle?: TextBackgroundStyle; uppercase?: boolean; +/** + * Outline px at the 1080p reference height, like `font_size`; 0 disables. + */ +strokeWidth?: number; strokeColor?: string; +/** + * Second colour of a horizontal gradient that starts at `color`. + */ +gradientColor?: string | null; +/** + * 0..1 soft halo strength in the text colour. + */ +glow?: number; /** * Legacy symmetric fade. Superseded by the animation fields below; kept * so configs written by new builds still fade in old builds. The diff --git a/crates/project/src/configuration.rs b/crates/project/src/configuration.rs index bae633cbdc8..4e107005f4d 100644 --- a/crates/project/src/configuration.rs +++ b/crates/project/src/configuration.rs @@ -1134,10 +1134,31 @@ pub enum TextAnimation { Fade, SlideUp, SlideDown, + SlideLeft, + SlideRight, Pop, + Zoom, + Bounce, + Wipe, + Words, + Letters, + Tracking, Typewriter, } +/// How a text segment's optional background hugs the text. +#[derive(Type, Serialize, Deserialize, Clone, Copy, Debug, Default, PartialEq, Eq)] +#[serde(rename_all = "camelCase")] +pub enum TextBackgroundStyle { + /// One rounded rectangle behind the whole block. + #[default] + Box, + /// A capsule: half-height radius and wider side padding. + Pill, + /// A marker stroke per laid-out line, hugging each line's ink. + Highlight, +} + /// How a text segment shares the frame with the display recording. The /// variants name where the TEXT sits; the display card makes room for it. #[derive(Type, Serialize, Deserialize, Clone, Copy, Debug, Default, PartialEq, Eq)] @@ -1181,6 +1202,21 @@ pub struct TextSegment { pub color: String, #[serde(default, skip_serializing_if = "Option::is_none")] pub background_color: Option, + #[serde(default)] + pub background_style: TextBackgroundStyle, + #[serde(default)] + pub uppercase: bool, + /// Outline px at the 1080p reference height, like `font_size`; 0 disables. + #[serde(default)] + pub stroke_width: f32, + #[serde(default = "TextSegment::default_stroke_color")] + pub stroke_color: String, + /// Second colour of a horizontal gradient that starts at `color`. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub gradient_color: Option, + /// 0..1 soft halo strength in the text colour. + #[serde(default)] + pub glow: f32, /// Legacy symmetric fade. Superseded by the animation fields below; kept /// so configs written by new builds still fade in old builds. The /// `text_anim_version` migration seeds the animation durations from it. @@ -1246,6 +1282,10 @@ impl TextSegment { "#ffffff".to_string() } + fn default_stroke_color() -> String { + "#000000".to_string() + } + fn default_fade_duration() -> f64 { 0.15 } @@ -3582,6 +3622,12 @@ mod tests { italic: false, color: "#ffffff".to_string(), background_color: None, + background_style: TextBackgroundStyle::Box, + uppercase: false, + stroke_width: 0.0, + stroke_color: "#000000".to_string(), + gradient_color: None, + glow: 0.0, fade_duration: 0.15, align: TextAlign::Center, letter_spacing: 0.0, @@ -4191,6 +4237,12 @@ mod tests { italic: false, color: "#ffffff".to_string(), background_color: None, + background_style: TextBackgroundStyle::Box, + uppercase: false, + stroke_width: 0.0, + stroke_color: "#000000".to_string(), + gradient_color: None, + glow: 0.0, fade_duration: 0.15, align: TextAlign::Center, letter_spacing: 0.0, @@ -4294,6 +4346,12 @@ mod tests { italic: false, color: "#ffffff".to_string(), background_color: None, + background_style: TextBackgroundStyle::Box, + uppercase: false, + stroke_width: 0.0, + stroke_color: "#000000".to_string(), + gradient_color: None, + glow: 0.0, fade_duration, align: TextAlign::Center, letter_spacing: 0.0, diff --git a/crates/rendering/src/takeover.rs b/crates/rendering/src/takeover.rs index 5ba40d57c7f..43721a85144 100644 --- a/crates/rendering/src/takeover.rs +++ b/crates/rendering/src/takeover.rs @@ -168,6 +168,12 @@ mod tests { italic: false, color: "#ffffff".to_string(), background_color: None, + background_style: Default::default(), + uppercase: false, + stroke_width: 0.0, + stroke_color: "#000000".to_string(), + gradient_color: None, + glow: 0.0, fade_duration: 0.15, align: TextAlign::Center, letter_spacing: 0.0, diff --git a/crates/rendering/src/text.rs b/crates/rendering/src/text.rs index 6fdbd8c9a25..97480b7c536 100644 --- a/crates/rendering/src/text.rs +++ b/crates/rendering/src/text.rs @@ -299,6 +299,12 @@ mod tests { italic: false, color: "#ffffff".to_string(), background_color: None, + background_style: Default::default(), + uppercase: false, + stroke_width: 0.0, + stroke_color: "#000000".to_string(), + gradient_color: None, + glow: 0.0, fade_duration: 0.15, align: TextAlign::Center, letter_spacing: 0.0, From acd8230ba0b1bbcb8200eff95c03a759c5f3e11d Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:44 +0100 Subject: [PATCH 012/217] perf(editor): move streaming audio processing off callbacks --- crates/editor/src/audio.rs | 303 +++++++++++++++++++++++++++++- crates/editor/src/audio_output.rs | 9 +- 2 files changed, 300 insertions(+), 12 deletions(-) diff --git a/crates/editor/src/audio.rs b/crates/editor/src/audio.rs index b769bf177d1..115d1bd2f52 100644 --- a/crates/editor/src/audio.rs +++ b/crates/editor/src/audio.rs @@ -1643,10 +1643,13 @@ impl> PrerenderedAudioBuffer { } } - pub fn wait_until_ready(&self, timeout: std::time::Duration) { + pub fn wait_until_ready(&self, timeout: std::time::Duration) -> bool { match &self.mode { - PrerenderedAudioBufferMode::Progressive(buffer) => buffer.wait_until_ready(timeout), - PrerenderedAudioBufferMode::Streaming(_) => {} + PrerenderedAudioBufferMode::Progressive(buffer) => { + buffer.wait_until_ready(timeout); + true + } + PrerenderedAudioBufferMode::Streaming(buffer) => buffer.wait_until_ready(timeout), } } @@ -1865,7 +1868,246 @@ impl> ProgressiveAudioBuffer { } } +struct StreamingAudioTimeline { + samples: Box<[AtomicU32]>, + requested_position: AtomicUsize, + consumed_position: AtomicUsize, + generation: AtomicUsize, + published_generation: AtomicUsize, + published_start: AtomicUsize, + published_end: AtomicUsize, + stop: AtomicBool, + failed: AtomicBool, +} + struct StreamingAudioBuffer { + timeline: Arc, + worker: Option>, + ready: std::sync::mpsc::Receiver<()>, + generation: usize, + read_position: usize, + sample_rate: u32, + channels: usize, + _format: std::marker::PhantomData, +} + +impl Drop for StreamingAudioBuffer { + fn drop(&mut self) { + self.timeline.stop.store(true, Ordering::Release); + if let Some(worker) = &self.worker { + worker.thread().unpark(); + } + } +} + +impl> StreamingAudioBuffer { + fn new( + segments: Vec, + music: MusicTracks, + project: ProjectConfiguration, + output_info: AudioInfo, + start_playhead_secs: f64, + ) -> Self { + let output_info = output_info.for_ffmpeg_output(); + let sample_rate = output_info.sample_rate; + let channels = output_info.channels; + let capacity = (sample_rate as usize) + .saturating_mul(channels) + .saturating_mul(2) + .max(4096 * channels); + let start = output_sample_index(start_playhead_secs, sample_rate, channels, usize::MAX); + let timeline = Arc::new(StreamingAudioTimeline { + samples: (0..capacity).map(|_| AtomicU32::new(0)).collect(), + requested_position: AtomicUsize::new(start), + consumed_position: AtomicUsize::new(start), + generation: AtomicUsize::new(1), + published_generation: AtomicUsize::new(0), + published_start: AtomicUsize::new(start), + published_end: AtomicUsize::new(start), + stop: AtomicBool::new(false), + failed: AtomicBool::new(false), + }); + let (ready_tx, ready) = std::sync::mpsc::sync_channel(1); + let state = timeline.clone(); + let worker = std::thread::Builder::new() + .name("cap-audio-stream".into()) + .spawn(move || { + let result = std::panic::catch_unwind(std::panic::AssertUnwindSafe(|| { + let render_info = + AudioInfo::new(AudioData::SAMPLE_FORMAT, sample_rate, channels as u16) + .unwrap(); + let mut producer = StreamingAudioProducer::::new( + segments, + music, + project, + render_info, + start_playhead_secs, + ); + let mut generation = 1; + let mut first = start; + let mut position = start; + let mut block = vec![0.0; 1024 * channels]; + while !state.stop.load(Ordering::Acquire) { + let requested_generation = state.generation.load(Ordering::Acquire); + if requested_generation != generation { + generation = requested_generation; + first = state.requested_position.load(Ordering::Acquire); + position = first; + producer + .set_playhead((first / channels) as f64 / f64::from(sample_rate)); + } + let consumed = state.consumed_position.load(Ordering::Acquire); + if position + .saturating_sub(consumed) + .saturating_add(block.len()) + > capacity + { + std::thread::park_timeout(std::time::Duration::from_millis(10)); + continue; + } + producer.fill(&mut block); + if state.generation.load(Ordering::Acquire) != generation { + continue; + } + for (offset, sample) in block.iter().enumerate() { + state.samples[(position + offset) % capacity] + .store(sample.to_bits(), Ordering::Relaxed); + } + position += block.len(); + state.published_start.store(first, Ordering::Relaxed); + state.published_end.store(position, Ordering::Release); + state + .published_generation + .store(generation, Ordering::Release); + if position - first >= sample_rate as usize / 4 * channels { + let _ = ready_tx.try_send(()); + } + } + })); + if result.is_err() { + state.failed.store(true, Ordering::Release); + let _ = ready_tx.try_send(()); + warn!("Streaming audio worker failed"); + } + }) + .map_err(|error| { + timeline.failed.store(true, Ordering::Release); + warn!(%error, "Could not start streaming audio worker"); + }) + .ok(); + Self { + timeline, + worker, + ready, + generation: 1, + read_position: start, + sample_rate, + channels, + _format: std::marker::PhantomData, + } + } + + fn wait_until_ready(&self, timeout: std::time::Duration) -> bool { + let started = std::time::Instant::now(); + loop { + if self.timeline.failed.load(Ordering::Acquire) { + return false; + } + if self.timeline.published_generation.load(Ordering::Acquire) == self.generation + && self + .timeline + .published_end + .load(Ordering::Acquire) + .saturating_sub(self.read_position) + >= self.sample_rate as usize / 4 * self.channels + { + return true; + } + let remaining = timeout.saturating_sub(started.elapsed()); + if remaining.is_zero() || self.ready.recv_timeout(remaining).is_err() { + return false; + } + } + } + + fn set_playhead(&mut self, playhead_secs: f64) { + let position = + output_sample_index(playhead_secs, self.sample_rate, self.channels, usize::MAX); + if position == self.read_position || self.try_align_prepared_playhead(playhead_secs) { + return; + } + self.read_position = position; + self.timeline + .requested_position + .store(position, Ordering::Release); + self.timeline + .consumed_position + .store(position, Ordering::Release); + self.generation = self.timeline.generation.fetch_add(1, Ordering::AcqRel) + 1; + if let Some(worker) = &self.worker { + worker.thread().unpark(); + } + } + + fn try_align_prepared_playhead(&mut self, playhead_secs: f64) -> bool { + if !playhead_secs.is_finite() + || self.timeline.published_generation.load(Ordering::Acquire) != self.generation + { + return false; + } + let position = + output_sample_index(playhead_secs, self.sample_rate, self.channels, usize::MAX); + if position < self.read_position + || position > self.timeline.published_end.load(Ordering::Acquire) + { + return false; + } + self.read_position = position; + self.timeline + .consumed_position + .store(position, Ordering::Release); + if let Some(worker) = &self.worker { + worker.thread().unpark(); + } + true + } + + fn current_audible_playhead(&self, device_latency_secs: f64) -> f64 { + ((self.read_position / self.channels) as f64 / f64::from(self.sample_rate) + - device_latency_secs.max(0.0)) + .max(0.0) + } + + fn current_playhead_secs(&self) -> f64 { + self.current_audible_playhead(0.0) + } + + fn fill(&mut self, buffer: &mut [T]) { + let generation = self.timeline.published_generation.load(Ordering::Acquire); + let start = self.timeline.published_start.load(Ordering::Acquire); + let end = self.timeline.published_end.load(Ordering::Acquire); + for (offset, sample) in buffer.iter_mut().enumerate() { + let position = self.read_position + offset; + *sample = if generation == self.generation && position >= start && position < end { + T::from_sample(f32::from_bits( + self.timeline.samples[position % self.timeline.samples.len()] + .load(Ordering::Relaxed), + )) + } else { + T::EQUILIBRIUM + }; + } + self.read_position = self.read_position.saturating_add(buffer.len()); + self.timeline + .consumed_position + .store(self.read_position, Ordering::Release); + if let Some(worker) = &self.worker { + worker.thread().unpark(); + } + } +} + +struct StreamingAudioProducer { renderer: AudioRenderer, resampler: AudioResampler, resampled_buffer: HeapRb, @@ -1875,7 +2117,7 @@ struct StreamingAudioBuffer { read_position: usize, } -impl StreamingAudioBuffer { +impl StreamingAudioProducer { const PROCESSING_SAMPLES_COUNT: usize = 1024; const READY_WINDOW_SECS: f64 = 0.25; const BUFFER_SECS: usize = 2; @@ -1924,6 +2166,7 @@ impl StreamingAudioBuffer { self.prefill(self.ready_window_samples()); } + #[cfg(test)] fn try_align_prepared_playhead(&mut self, playhead_secs: f64) -> bool { let delta = playhead_secs - self.current_audible_playhead(0.0); let samples = ((delta.max(0.0) * f64::from(self.sample_rate)).round() as usize) @@ -1941,17 +2184,13 @@ impl StreamingAudioBuffer { } } + #[cfg(test)] fn current_audible_playhead(&self, device_latency_secs: f64) -> f64 { let consumed_secs = (self.read_position / self.channels) as f64 / f64::from(self.sample_rate); (consumed_secs - device_latency_secs.max(0.0)).max(0.0) } - #[allow(dead_code)] - fn current_playhead_secs(&self) -> f64 { - self.current_audible_playhead(0.0) - } - fn buffer_reaching_limit(&self) -> bool { self.resampled_buffer.vacant_len() <= 2 * Self::PROCESSING_SAMPLES_COUNT * self.channels } @@ -2616,6 +2855,7 @@ mod tests { playback.wait_until_fully_rendered(); let mut playback_stream = vec![0.0; export_stream.len()]; for block in playback_stream.chunks_mut(1024) { + assert!(playback.wait_until_ready(std::time::Duration::from_secs(5))); playback.fill(block); } for (index, (playback_sample, export_sample)) in @@ -2909,6 +3149,49 @@ mod tests { assert_eq!(renderer.speed_audio_processors.iter().flatten().count(), 2); } + #[test] + fn studio_sound_streaming_worker_preserves_ring_wraps_and_seek_generations() { + use std::time::Duration; + let (_dir, mut renderer, mut project) = build_renderer_fixture(); + renderer.data[0].tracks[0].is_microphone = true; + project.audio.improve = true; + for sample_rate in [44_100, 48_000] { + let info = AudioInfo::new(AudioRenderer::SAMPLE_FORMAT, sample_rate, 2).unwrap(); + let mut reference = StreamingAudioProducer::::new( + renderer.data.clone(), + MusicTracks::new(), + project.clone(), + info, + 0.0, + ); + let mut candidate = StreamingAudioBuffer::::new( + renderer.data.clone(), + MusicTracks::new(), + project.clone(), + info, + 0.0, + ); + assert_eq!(candidate.timeline.samples.len(), sample_rate as usize * 4); + for block in 0..300 { + if block == 180 { + for position in [0.25, 2.5, 0.75] { + candidate.set_playhead(position); + } + reference.set_playhead(0.75); + } + assert!(candidate.wait_until_ready(Duration::from_secs(5))); + let mut expected = [0.0; 1024]; + let mut actual = [0.0; 1024]; + reference.fill(&mut expected); + candidate.fill(&mut actual); + assert_eq!(actual, expected, "rate {sample_rate}, block {block}"); + } + let worker = candidate.worker.take().unwrap(); + drop(candidate); + worker.join().unwrap(); + } + } + #[test] fn studio_sound_prepared_alignment_reuses_samples_without_rendering() { let (_dir, mut renderer, mut project) = build_renderer_fixture(); @@ -2917,7 +3200,7 @@ mod tests { for sample_rate in [44_100, 48_000] { let info = AudioInfo::new(AudioRenderer::SAMPLE_FORMAT, sample_rate, 2).unwrap(); let make = || { - StreamingAudioBuffer::::new( + StreamingAudioProducer::::new( renderer.data.clone(), MusicTracks::new(), project.clone(), diff --git a/crates/editor/src/audio_output.rs b/crates/editor/src/audio_output.rs index 3f3ae6b6119..de31845a663 100644 --- a/crates/editor/src/audio_output.rs +++ b/crates/editor/src/audio_output.rs @@ -710,6 +710,9 @@ fn drain_source_commands>( let _ = sender.send(ControlMsg::Realign(Box::new(move || { if let ActiveSourceBuffer::Ordinary(buffer) = &mut source.buffer { buffer.set_playhead(playhead); + if !buffer.wait_until_ready(PRERENDER_READY_TIMEOUT) { + return; + } } let sender = requeue_tx.clone(); let _ = sender.send(SourceCommand::Refresh { @@ -899,7 +902,9 @@ fn install_source>( } // A few ms: guarantees the callback reads real samples at the // playhead, never leading silence. - buffer.wait_until_ready(PRERENDER_READY_TIMEOUT); + if !buffer.wait_until_ready(PRERENDER_READY_TIMEOUT) { + return Err("Audio processing did not become ready in time".into()); + } if preparing_request .as_ref() @@ -1475,7 +1480,7 @@ mod tests { MusicTracks::new(), &ProjectConfiguration::default(), AudioInfo::new_raw(AudioData::SAMPLE_FORMAT, 48_000, 2), - 0.0, + 3.0, )); let replacement_receiver = replacement.playhead_rx.clone(); let (tx, rx) = std_mpsc::channel(); From 43b5a82a575e9d83372e43f38e446c20dc7d98f7 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:44 +0100 Subject: [PATCH 013/217] fix(editor): release audio filter frames before reuse --- crates/editor/src/audio.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/editor/src/audio.rs b/crates/editor/src/audio.rs index 115d1bd2f52..d1f5a869f89 100644 --- a/crates/editor/src/audio.rs +++ b/crates/editor/src/audio.rs @@ -1159,6 +1159,7 @@ impl SpeedAudioProcessor { let byte_len = value_count * f32::BYTE_SIZE; let values = unsafe { cast_bytes_to_f32_slice(&frame.data(0)[..byte_len]) }; self.pending.extend(values.iter().copied()); + unsafe { ffmpeg::ffi::av_frame_unref(frame.as_mut_ptr()) }; } Ok(()) From 4fb0acd69ee48bdd08e9fcd6eb3d578999c6f51a Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:44 +0100 Subject: [PATCH 014/217] feat(editor): apply clip volume during playback and export --- crates/editor/src/audio.rs | 131 +++++++++++++++++++++++++++++++++++-- 1 file changed, 126 insertions(+), 5 deletions(-) diff --git a/crates/editor/src/audio.rs b/crates/editor/src/audio.rs index d1f5a869f89..f5d697ed3a3 100644 --- a/crates/editor/src/audio.rs +++ b/crates/editor/src/audio.rs @@ -360,6 +360,7 @@ impl AudioRenderer { count, output, )?; + apply_clip_volume(output, source.segment); } } TimelineFrameMapping::Hold { .. } => {} @@ -383,6 +384,7 @@ impl AudioRenderer { count, outgoing_buffer, )?; + apply_clip_volume(outgoing_buffer, outgoing.segment); } if incoming.segment.speed_audio_mode != Some(ClipSpeedAudioMode::Mute) { sources.render( @@ -392,6 +394,7 @@ impl AudioRenderer { count, incoming_buffer, )?; + apply_clip_volume(incoming_buffer, incoming.segment); } mix_transition_audio_at( outgoing_buffer, @@ -683,15 +686,20 @@ impl AudioRenderer { out_offset: usize, out: &mut [f32], ) -> usize { - if source.segment.timescale == 1.0 { + let rendered = if source.segment.timescale == 1.0 { if source.segment.speed_audio_mode == Some(ClipSpeedAudioMode::Mute) { return 0; } let cursor = source_cursor(source, self.playhead_to_samples(source.source_time)); - return self.render_chunk_at_cursor(project, cursor, samples, out_offset, out); - } - - self.render_speed_audio_chunk(project, source, samples, out_offset, out) + self.render_chunk_at_cursor(project, cursor, samples, out_offset, out) + } else { + self.render_speed_audio_chunk(project, source, samples, out_offset, out) + }; + apply_clip_volume( + &mut out[out_offset..out_offset + rendered * 2], + source.segment, + ); + rendered } fn render_speed_audio_chunk( @@ -824,6 +832,15 @@ impl AudioRenderer { } } +fn apply_clip_volume(samples: &mut [f32], segment: &cap_project::TimelineSegment) { + let volume = segment.volume() as f32; + if volume != 1.0 { + for sample in samples { + *sample *= volume; + } + } +} + fn source_cursor(source: TimelineSource<'_>, samples: usize) -> AudioRendererCursor { AudioRendererCursor { clip_index: source.segment.recording_clip, @@ -2880,6 +2897,110 @@ mod tests { assert!((samples[0] - expected(8000)).abs() < 0.001); } + #[test] + fn clip_volume_is_local_across_boundaries_playback_and_export() { + let (_dir, mut renderer, mut project) = single_clip_fixture( + &[4000, 8000, 12000], + vec![ + segment(0, 0.0, 1.0, 1.0), + segment(0, 1.0, 2.0, 1.0), + segment(0, 2.0, 3.0, 1.0), + ], + ); + for volume in [0.0, 0.5, 2.0] { + project.timeline.as_mut().unwrap().segments[1].volume = Some(volume); + renderer.set_playhead(0.0, &project); + let exported = render_export_audio(&mut renderer, &project, 30, 90); + for (second, value) in [ + expected(4000), + expected(8000) * volume as f32, + expected(12000), + ] + .into_iter() + .enumerate() + { + assert!((left_at_second(&exported, second) - value).abs() < 0.001); + } + renderer.set_playhead(0.99, &project); + let (_, boundary) = renderer.render_frame_raw(1920, &project).unwrap(); + assert!((boundary[0] - expected(4000)).abs() < 0.001); + assert!((boundary[boundary.len() - 1] - expected(8000) * volume as f32).abs() < 0.001); + + for duration in [3.0, 3600.0] { + let mut playback = PrerenderedAudioBuffer::::new( + renderer.data.clone(), + MusicTracks::new(), + &project, + AudioRenderer::info(), + duration, + 0.0, + ); + playback.wait_until_fully_rendered(); + let mut played = vec![0.0; exported.len()]; + for block in played.chunks_mut(1024) { + assert!(playback.wait_until_ready(std::time::Duration::from_secs(5))); + playback.fill(block); + } + assert!( + played + .iter() + .zip(&exported) + .all(|(a, b)| (a - b).abs() < 0.000_001) + ); + playback.set_playhead(1.5); + let mut seek = [0.0; 1024]; + assert!(playback.wait_until_ready(std::time::Duration::from_secs(5))); + playback.fill(&mut seek); + assert!((seek[0] - expected(8000) * volume as f32).abs() < 0.001); + } + } + } + + #[test] + fn clip_volume_scales_retimed_audio_without_changing_pitch_processing() { + for mode in [ + ClipSpeedAudioMode::MaintainPitch, + ClipSpeedAudioMode::MatchSpeed, + ] { + let (_dir, mut renderer, mut project) = build_renderer_fixture(); + let segment = &mut project.timeline.as_mut().unwrap().segments[0]; + segment.timescale = 2.0; + segment.speed_audio_mode = Some(mode); + renderer.set_playhead(0.0, &project); + let (_, original) = renderer.render_frame_raw(4800, &project).unwrap(); + assert!(mean_abs(&original) > 0.01); + project.timeline.as_mut().unwrap().segments[0].volume = Some(0.5); + renderer.set_playhead(0.0, &project); + let (_, quieter) = renderer.render_frame_raw(4800, &project).unwrap(); + assert!( + original + .iter() + .zip(quieter) + .all(|(a, b)| (a * 0.5 - b).abs() < 0.000_001) + ); + } + } + + #[test] + fn clip_volume_does_not_scale_timeline_music() { + let (dir, mut renderer, mut project) = + single_clip_fixture(&[4000], vec![segment(0, 0.0, 1.0, 1.0)]); + let music_path = dir.path().join("music.wav"); + write_step_wav(&music_path, &[8000]); + renderer.music.insert( + "music.wav".into(), + Arc::new(AudioData::from_file(&music_path).unwrap()), + ); + let timeline = project.timeline.as_mut().unwrap(); + timeline + .audio_segments + .push(music_track_segment("music.wav", 0.0, 1.0, 0.0, 0.0)); + timeline.segments[0].volume = Some(0.5); + renderer.set_playhead(0.0, &project); + let (_, samples) = renderer.render_frame_raw(4800, &project).unwrap(); + assert!((samples[0] - expected(4000) * 0.5 - expected(8000)).abs() < 0.001); + } + #[test] fn one_x_clip_mute_cuts_and_resumes_inside_a_single_request() { let (_dir, mut renderer, mut project) = single_clip_fixture( From 5c7af8e107db342f1f895a3f5e5ad71671e9feee Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:45 +0100 Subject: [PATCH 015/217] feat(editor): apply isolation tiers to cached voice processing --- crates/editor/src/audio.rs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/crates/editor/src/audio.rs b/crates/editor/src/audio.rs index f5d697ed3a3..73433bd3657 100644 --- a/crates/editor/src/audio.rs +++ b/crates/editor/src/audio.rs @@ -7,7 +7,7 @@ use cap_media::MediaError; use cap_media_info::AudioInfo; use cap_project::{ AudioConfiguration, ClipOffsets, ClipSpeedAudioMode, ClipTransitionType, ProjectConfiguration, - TimelineConfiguration, TimelineFrameMapping, TimelineSource, + TimelineConfiguration, TimelineFrameMapping, TimelineSource, VoiceIsolation, }; use ffmpeg::{ ChannelLayout, Dictionary, filter, format as avformat, frame::Audio as FFAudio, @@ -144,6 +144,7 @@ struct SpeedAudioProcessorKey { segment_end_samples: usize, mic_volume_bits: u32, improve_microphone: bool, + isolation: VoiceIsolation, system_volume_bits: u32, mic_stereo_mode: u8, mic_offset_bits: u32, @@ -741,6 +742,7 @@ impl AudioRenderer { segment_end_samples: self.playhead_to_samples(source.segment.end), mic_volume_bits: project.audio.mic_volume_db.to_bits(), improve_microphone: project.audio.improve, + isolation: project.audio.isolation, system_volume_bits: project.audio.system_volume_db.to_bits(), mic_stereo_mode: project_stereo_mode_key(&project.audio.mic_stereo_mode), mic_offset_bits: offsets.mic.to_bits(), @@ -938,6 +940,7 @@ fn render_audio_data_chunk( data.data, start, end.saturating_sub(start), + project.audio.isolation, )) }) .collect::>(); @@ -971,7 +974,7 @@ fn render_audio_data_chunk( #[derive(Default)] struct VoiceEnhancementCache { - slots: Vec<((usize, usize), VoiceEnhancer)>, + slots: Vec<((usize, usize, VoiceIsolation), VoiceEnhancer)>, } impl VoiceEnhancementCache { @@ -981,7 +984,9 @@ impl VoiceEnhancementCache { source: &DecodedAudio, start: usize, count: usize, + isolation: VoiceIsolation, ) -> VoiceAudio { + let key = (key.0, key.1, isolation); let index = self .slots .iter() @@ -989,7 +994,14 @@ impl VoiceEnhancementCache { let slot = if let Some(index) = index { self.slots.remove(index) } else { - (key, VoiceEnhancer::new(source.channels())) + ( + key, + VoiceEnhancer::with_settings( + source.channels(), + isolation.strength(), + source.voice_profile(), + ), + ) }; if self.slots.len() == 4 { self.slots.remove(0); From 0bfdad2fa1ac8fb509bf2c3e375ae81857b387f6 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:45 +0100 Subject: [PATCH 016/217] feat(editor): preserve voice enhancement in streaming exports --- crates/editor/src/export_audio.rs | 118 ++++++++++++++++++++++++++++-- 1 file changed, 110 insertions(+), 8 deletions(-) diff --git a/crates/editor/src/export_audio.rs b/crates/editor/src/export_audio.rs index 92c92ec9043..8df5e4df7f3 100644 --- a/crates/editor/src/export_audio.rs +++ b/crates/editor/src/export_audio.rs @@ -1,7 +1,8 @@ use crate::{AudioRenderer, SegmentMedia}; use cap_audio::{ - AudioRendererTrack, AudioSampleSource, AudioStream, AudioStreamError, ChunkRead, StereoMode, - VOICE_PREROLL_SAMPLES, VOICE_WINDOW_PADDING_SAMPLES, VoiceAudio, VoiceEnhancer, VoiceSource, + AudioData, AudioRendererTrack, AudioSampleSource, AudioStream, AudioStreamError, ChunkRead, + StereoMode, VOICE_PREROLL_SAMPLES, VOICE_PROFILE_SAMPLES, VOICE_WINDOW_PADDING_SAMPLES, + VoiceAudio, VoiceEnhancer, VoiceProfile, VoiceSource, }; use cap_project::{ClipOffsets, ProjectConfiguration, RecordingMeta, StudioRecordingMeta}; use std::{ @@ -480,10 +481,29 @@ impl ExportAudioSources { usize::try_from(start.max(0)).map_err(|_| ExportAudioError::InvalidWindow)?; let end = usize::try_from(end.max(0)).map_err(|_| ExportAudioError::InvalidWindow)?; - let mut enhancer = track - .enhancer - .take() - .unwrap_or_else(|| VoiceEnhancer::new(track.source.channels())); + if track.eof.is_some_and(|eof| start >= eof) { + track.enhanced = None; + continue; + } + if track.isolation != project.audio.isolation { + track.enhancer = None; + track.isolation = project.audio.isolation; + } + let profile = *track.voice_profile.get_or_insert_with(|| { + AudioData::from_file_range(&track.path, 0, VOICE_PROFILE_SAMPLES) + .map(|audio| VoiceProfile::analyze(&audio)) + .unwrap_or_else(|error| { + tracing::warn!(%error, "Could not estimate export voice level"); + VoiceProfile::default() + }) + }); + let mut enhancer = track.enhancer.take().unwrap_or_else(|| { + VoiceEnhancer::with_settings( + track.source.channels(), + project.audio.isolation.strength(), + profile, + ) + }); let range = enhancer.source_range(start, end.saturating_sub(start)); track.prepare(range.start as i128, range.end as i128)?; track.enhanced = @@ -565,6 +585,8 @@ struct ExportAudioTrack { eof: Option, enhancer: Option, enhanced: Option, + voice_profile: Option, + isolation: cap_project::VoiceIsolation, } impl ExportAudioTrack { @@ -594,6 +616,8 @@ impl ExportAudioTrack { eof: None, enhancer: None, enhanced: None, + voice_profile: None, + isolation: cap_project::VoiceIsolation::default(), }) } @@ -1319,6 +1343,46 @@ mod tests { assert_eq!(candidate.sources.tracks.iter().flatten().count(), 5); } + #[test] + #[ignore = "requires CAP_STUDIO_SOUND_TEST_AUDIO pointing to a local microphone recording"] + fn studio_sound_real_voice_matches_preview_and_export_at_every_tier() { + ffmpeg::init().unwrap(); + let path = PathBuf::from(std::env::var_os("CAP_STUDIO_SOUND_TEST_AUDIO").unwrap()); + let audio = Arc::new(AudioData::from_file(&path).unwrap()); + let paths = vec![path; 3]; + let data = vec![audio.clone(); 3]; + for isolation in [ + cap_project::VoiceIsolation::Light, + cap_project::VoiceIsolation::Balanced, + cap_project::VoiceIsolation::Strong, + ] { + let (mut preview, mut export) = fixture(&paths, &data); + let mut project = ProjectConfiguration::default(); + project.audio.improve = true; + project.audio.isolation = isolation; + project.audio.system_volume_db = f32::NEG_INFINITY; + let mut count = 0; + while let Some((frames, expected)) = preview.render_frame_raw(4096, &project) { + let mut actual = Vec::new(); + let written = export + .render_chunks(4096, &project, |_, samples| { + actual.extend_from_slice(samples); + Ok(()) + }) + .unwrap(); + assert_eq!(written, Some(frames)); + assert_eq!(actual, expected, "tier {isolation:?}, frame {count}"); + count += frames; + } + assert_eq!(count, audio.sample_count()); + assert_ne!( + export.sources.tracks[0][0].voice_profile.unwrap(), + VoiceProfile::default() + ); + eprintln!("{isolation:?}: {count} microphone frames match exactly"); + } + } + #[test] #[ignore = "requires CAP_STUDIO_SOUND_BENCH_RECORDING pointing to a local Studio recording"] fn studio_sound_streams_a_real_recording_with_bounded_memory() { @@ -1393,6 +1457,20 @@ mod tests { #[test] fn bounded_sink_matches_full_renderer_at_original_request_boundaries() { + assert_bounded_sink_variants(0..22, &[1, 7, 997, 4_096, 4_800, 48_001, 96_000, 384_000]); + } + + #[test] + fn clip_volume_matches_preview_in_streaming_exports_and_transitions() { + assert_bounded_sink_variants(22..26, &[1, 997, 4_800, 48_001]); + } + + #[test] + fn studio_sound_transition_with_single_sample_requests_keeps_lookahead() { + assert_bounded_sink_variants([19], &[1]); + } + + fn assert_bounded_sink_variants(variants: impl IntoIterator, requests: &[usize]) { ffmpeg::init().unwrap(); let directory = tempfile::tempdir().unwrap(); let paths = @@ -1404,7 +1482,7 @@ mod tests { .iter() .map(|path| Arc::new(AudioData::from_file(path).unwrap())) .collect::>(); - for variant in 0..20 { + for variant in variants { let mut project = project(); match variant { 0 => project.timeline = None, @@ -1468,9 +1546,33 @@ mod tests { duration: 0.131_234_567, }); } + 20 | 21 => { + project.audio.improve = true; + project.audio.isolation = if variant == 20 { + cap_project::VoiceIsolation::Light + } else { + cap_project::VoiceIsolation::Strong + }; + } + 22..=25 => { + let timeline = project.timeline.as_mut().unwrap(); + timeline.segments[0].volume = Some(if variant == 22 { 0.0 } else { 0.5 }); + timeline.segments[1].volume = Some(2.0); + if variant >= 24 { + timeline.transitions.push(ClipTransition { + segment_index: 1, + kind: if variant == 24 { + ClipTransitionType::CrossFade + } else { + ClipTransitionType::FadeThroughBlack + }, + duration: 0.131_234_567, + }); + } + } _ => unreachable!(), } - for request in [1, 7, 997, 4_096, 4_800, 48_001, 96_000, 384_000] { + for &request in requests { let (mut reference, mut candidate) = fixture(&paths, &data); reference.set_playhead(0.0, &project); loop { From 5217a408459e51ef77cf26bc86328c77ace357eb Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:45 +0100 Subject: [PATCH 017/217] feat(editor): enhance microphone audio during preparation --- crates/editor/src/preparing_audio/mixer.rs | 132 ++++++++++++++++++++- crates/editor/src/preparing_preview.rs | 1 + 2 files changed, 130 insertions(+), 3 deletions(-) diff --git a/crates/editor/src/preparing_audio/mixer.rs b/crates/editor/src/preparing_audio/mixer.rs index b0948ddabd4..9a309333db2 100644 --- a/crates/editor/src/preparing_audio/mixer.rs +++ b/crates/editor/src/preparing_audio/mixer.rs @@ -1,7 +1,8 @@ use crate::SegmentAudioTimingRepair; use cap_audio::{ AudioData, AudioRendererTrack, AudioSampleSource, AudioSampleWindow, AudioWindowRead, - ProgressiveAudio, + ProgressiveAudio, VOICE_PROFILE_SAMPLES, VOICE_WINDOW_PADDING_SAMPLES, VoiceEnhancer, + VoiceProfile, VoiceSource, }; use cap_project::ProjectConfiguration; use std::{ops::Range, sync::Arc}; @@ -73,6 +74,7 @@ impl PreparingAudioSources { || segment.start != 0.0 || segment.timescale != 1.0 || segment.speed_audio_mode.is_some() + || segment.volume() != 1.0 || !segment.end.is_finite() || segment.end <= 0.0 { @@ -151,12 +153,25 @@ impl PreparingAudioSources { }; let progress = loader.progress(); let end = progress.ready_frames; + let improve = track == 0 + && self.project.audio.improve + && !self.project.audio.mute + && self.project.audio.mic_volume_db > -30.0; let covered = match loader.try_window(end.saturating_sub(1)..end)? { AudioWindowRead::Ready(Some(window)) => { if window.complete_sample_count().is_some() { frames } else if progress.channels.is_some() && window.available_range().end >= end { + let end = if improve { + if end < VOICE_PROFILE_SAMPLES { + 0 + } else { + end.saturating_sub(VOICE_WINDOW_PADDING_SAMPLES) + } + } else { + end + }; (end as i128 - clip.offsets[track] as i128).clamp(0, frames as i128) as usize } else { @@ -193,6 +208,8 @@ pub(crate) struct PreparingAudioMixer { sources: PreparingAudioSources, clips: Vec, position: usize, + voice_profiles: Vec>, + voice_enhancer: Option<(usize, VoiceEnhancer)>, } struct PreparedSpan { @@ -214,6 +231,8 @@ impl PreparingAudioMixer { } let position = (start_seconds * RATE).round() as usize; Ok(Self { + voice_profiles: vec![None; clips.len()], + voice_enhancer: None, sources, clips, position, @@ -236,6 +255,9 @@ impl PreparingAudioMixer { let end = self.position + requested_frames.min(total - self.position); let mut spans = Vec::new(); let mut pending = None; + let improve = self.sources.project.audio.improve + && !self.sources.project.audio.mute + && self.sources.project.audio.mic_volume_db > -30.0; for (index, clip) in self.clips.iter().enumerate() { let start = self.position.max(clip.start); let until = end.min(clip.end); @@ -244,13 +266,29 @@ impl PreparingAudioMixer { } let local = start - clip.start; let frames = until - start; + if improve + && self.sources.required[index][0] + && self.voice_profiles[index].is_none() + && let Some(loader) = &self.sources.tracks[index][0] + { + self.voice_profiles[index] = loader.try_voice_profile()?; + if self.voice_profiles[index].is_none() { + pending.get_or_insert_with(|| PreparingAudioRead::Pending { + loader: Some(loader.clone()), + range: 0..VOICE_PROFILE_SAMPLES, + }); + } + } let mut windows = [None, None]; for (track, slot) in windows.iter_mut().enumerate() { if !self.sources.required[index][track] { continue; } let first = local as i128 + clip.offsets[track] as i128; - let range = first.max(0) as usize..(first + frames as i128).max(0) as usize; + let mut range = first.max(0) as usize..(first + frames as i128).max(0) as usize; + if improve && track == 0 && !range.is_empty() { + range = VoiceEnhancer::initial_source_range(range.start, range.len()); + } let Some(loader) = &self.sources.tracks[index][track] else { pending.get_or_insert(PreparingAudioRead::Pending { loader: None, @@ -302,8 +340,55 @@ impl PreparingAudioMixer { let frames = end - self.position; let mut samples = vec![0.0; frames * 2]; for span in spans { - let tracks = span + let enhanced = + if improve { + span.windows[0].as_ref().and_then(|window| { + let first = span.local as i128 + self.clips[span.clip].offsets[0] as i128; + let start = first.max(0) as usize; + let end = (first + span.frames as i128).max(0) as usize; + if start == end || start >= window.sample_count() { + return None; + } + if self + .voice_enhancer + .as_ref() + .is_none_or(|(clip, _)| *clip != span.clip) + { + self.voice_enhancer = Some(( + span.clip, + VoiceEnhancer::with_settings( + window.channels(), + self.sources.project.audio.isolation.strength(), + self.voice_profiles[span.clip].unwrap_or_default(), + ), + )); + } + Some(self.voice_enhancer.as_mut().unwrap().1.render( + window, + start, + end - start, + )) + }) + } else { + None + }; + let sources = span .windows + .iter() + .enumerate() + .map(|(track, window)| { + window.as_ref().map(|window| { + if track == 0 { + enhanced + .as_ref() + .map_or(VoiceSource::Original(window), VoiceSource::Enhanced) + } else { + VoiceSource::Original(window) + } + }) + }) + .collect::>(); + let tracks = sources .iter() .enumerate() .filter_map(|(track, window)| { @@ -468,6 +553,47 @@ mod tests { } } + #[test] + fn studio_sound_pending_and_completed_audio_match_all_tiers() { + ffmpeg::init().unwrap(); + for isolation in [ + cap_project::VoiceIsolation::Light, + cap_project::VoiceIsolation::Balanced, + cap_project::VoiceIsolation::Strong, + ] { + let mic = audio(VOICE_PROFILE_SAMPLES + 32_768, 1, 17); + let (loader, producer) = ProgressiveAudioTestProducer::new(); + append(&producer, &mic, 0..32_768); + let mut sources = sources( + &[mic.sample_count() as f64 / RATE], + vec![[Some(loader), None]], + ); + let project = Arc::make_mut(&mut sources.project); + project.audio.improve = true; + project.audio.isolation = isolation; + let mut mixer = PreparingAudioMixer::new(sources.clone(), 0.0).unwrap(); + assert_eq!(sources.playable_prefix().unwrap(), 0.0); + assert!(matches!( + mixer.next(4096).unwrap(), + PreparingAudioRead::Pending { .. } + )); + let ready = VOICE_PROFILE_SAMPLES.div_ceil(32_768) * 32_768; + for start in (32_768..ready).step_by(32_768) { + append(&producer, &mic, start..start + 32_768); + } + let expected = reference(&sources, vec![[Some(mic.clone()), None]], 0.0, 8192); + let first = mixer.next(4096).unwrap(); + assert_samples(first, 0, (4096, expected.1[..8192].to_vec())); + append(&producer, &mic, ready..mic.sample_count()); + producer.finish().unwrap(); + assert_samples( + mixer.next(4096).unwrap(), + 4096, + (4096, expected.1[8192..].to_vec()), + ); + } + } + #[test] fn pending_blocks_match_ordinary_offset_gain_stereo_and_mute_mixing() { for channels in [1, 2] { diff --git a/crates/editor/src/preparing_preview.rs b/crates/editor/src/preparing_preview.rs index 0e15a21c62e..caf5bf4c801 100644 --- a/crates/editor/src/preparing_preview.rs +++ b/crates/editor/src/preparing_preview.rs @@ -355,6 +355,7 @@ pub(crate) fn validate_input(input: &PreparingPreviewInput) -> Result Date: Sun, 13 Sep 2026 23:46:45 +0100 Subject: [PATCH 018/217] fix(editor): refresh live playback when clip audio changes --- crates/editor/src/playback.rs | 63 +++++++++++++++++++++++++++++++---- 1 file changed, 56 insertions(+), 7 deletions(-) diff --git a/crates/editor/src/playback.rs b/crates/editor/src/playback.rs index 86faa3003a3..95696fa680e 100644 --- a/crates/editor/src/playback.rs +++ b/crates/editor/src/playback.rs @@ -49,6 +49,28 @@ const FRAME_CACHE_SIZE: usize = 4; const MAX_FRAME_CACHE_BYTES: usize = 64 * 1024 * 1024; const RAMP_UP_FRAME_COUNT: u32 = 15; +fn clip_audio_changed(previous: &ProjectConfiguration, next: &ProjectConfiguration) -> bool { + let settings = |segment: &cap_project::TimelineSegment| { + ( + segment.recording_clip, + segment.start, + segment.end, + segment.timescale, + segment.speed_audio_mode, + segment.volume(), + ) + }; + match (&previous.timeline, &next.timeline) { + (Some(previous), Some(next)) => !previous + .segments + .iter() + .map(settings) + .eq(next.segments.iter().map(settings)), + (None, None) => false, + _ => true, + } +} + #[cfg(target_os = "windows")] struct WindowsTimerResolution; @@ -1296,9 +1318,12 @@ impl Playback { if *stop_rx.borrow() { break; } - if self.project.borrow().audio.improve - && adopted.as_ref().is_some_and(|adoption| adoption.is_owner()) - { + if adopted.as_ref().is_some_and(|adoption| adoption.is_owner()) && { + let project = self.project.borrow(); + project.audio.improve + || project.audio != cached_project.audio + || clip_audio_changed(&cached_project, &project) + } { let adoption = adopted.as_ref().unwrap(); frame_number = adoption.frame_number(fps).unwrap_or(frame_number); let cleaned = runtime.block_on(async { @@ -1316,7 +1341,7 @@ impl Playback { drop(adopted.take()); preparing_audio_released.store(true, Ordering::Release); let project = self.project.borrow().clone(); - cached_project.audio.improve = project.audio.improve; + cached_project.audio = project.audio.clone(); let ticket = self.audio_output.prepare_playback(PlaySpec { segments: audio_segments.clone(), music: self.music.clone(), @@ -1384,10 +1409,12 @@ impl Playback { } if self.project.has_changed().unwrap_or(false) { - let improved = cached_project.audio.improve; - cached_project = self.project.borrow_and_update().clone(); + let next_project = self.project.borrow_and_update().clone(); + let audio_changed = cached_project.audio != next_project.audio + || clip_audio_changed(&cached_project, &next_project); + cached_project = next_project; if adopted.is_none() - && improved != cached_project.audio.improve + && audio_changed && let Some(generation) = audio_generation { self.audio_output.refresh_playback( @@ -2009,6 +2036,28 @@ impl PlaybackHandle { mod tests { use super::*; + #[test] + fn clip_audio_changes_refresh_playback_without_refreshing_for_names() { + let project: ProjectConfiguration = serde_json::from_value(serde_json::json!({ + "timeline": { "zoomSegments": [], "segments": [ + { "recordingSegment": 0, "start": 0.0, "end": 2.0, "timescale": 1.0 } + ] } + })) + .unwrap(); + let mut next = project.clone(); + next.timeline.as_mut().unwrap().segments[0].name = Some("Renamed".into()); + next.timeline.as_mut().unwrap().segments[0].volume = Some(1.0); + assert!(!clip_audio_changed(&project, &next)); + next.timeline.as_mut().unwrap().segments[0].volume = Some(0.5); + assert!(clip_audio_changed(&project, &next)); + next.timeline.as_mut().unwrap().segments[0].volume = None; + next.timeline.as_mut().unwrap().segments[0].speed_audio_mode = + Some(cap_project::ClipSpeedAudioMode::Mute); + assert!(clip_audio_changed(&project, &next)); + next.timeline.as_mut().unwrap().segments.clear(); + assert!(clip_audio_changed(&project, &next)); + } + #[test] fn late_handoff_stop_only_cancels_its_original_playback() { let make_handle = || { From ae67add1ee89a0890bf7c093cc055845b25c9ff4 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:46 +0100 Subject: [PATCH 019/217] test(editor): cover live clip volume and isolation changes --- .../editor/src/audio_output/native_tests.rs | 97 ++++++++++++++++--- 1 file changed, 85 insertions(+), 12 deletions(-) diff --git a/crates/editor/src/audio_output/native_tests.rs b/crates/editor/src/audio_output/native_tests.rs index 7fafc827c24..d64b46ebca6 100644 --- a/crates/editor/src/audio_output/native_tests.rs +++ b/crates/editor/src/audio_output/native_tests.rs @@ -74,9 +74,13 @@ impl Drop for HeadlessControl { } fn audible_spec() -> PlaySpec { + audible_spec_with_duration(2) +} + +fn audible_spec_with_duration(duration_secs: usize) -> PlaySpec { ffmpeg::init().unwrap(); let mut file = tempfile::Builder::new().suffix(".wav").tempfile().unwrap(); - let samples = vec![5000i16; 96_000]; + let samples = vec![5000i16; 48_000 * duration_secs]; let bytes = (samples.len() * 2) as u32; file.write_all(b"RIFF").unwrap(); file.write_all(&(36 + bytes).to_le_bytes()).unwrap(); @@ -90,9 +94,13 @@ fn audible_spec() -> PlaySpec { file.write_all(&16u16.to_le_bytes()).unwrap(); file.write_all(b"data").unwrap(); file.write_all(&bytes.to_le_bytes()).unwrap(); - for sample in samples { - file.write_all(&sample.to_le_bytes()).unwrap(); - } + file.write_all( + &samples + .into_iter() + .flat_map(i16::to_le_bytes) + .collect::>(), + ) + .unwrap(); file.flush().unwrap(); let audio = Arc::new(cap_audio::DecodedAudio::from(Arc::new( AudioData::from_file(file.path()).unwrap(), @@ -106,7 +114,7 @@ fn audible_spec() -> PlaySpec { )], music: MusicTracks::new(), project: ProjectConfiguration::default(), - duration_secs: 2.0, + duration_secs: duration_secs as f64, start_playhead_secs: 0.0, playhead_rx, } @@ -713,11 +721,70 @@ async fn progressive_output_without_a_prefix_never_acknowledges_and_cancels_clea .unwrap(); } +#[test] +fn clip_volume_refresh_changes_live_pcm_and_preserves_mute() { + let spec = |volume, muted| { + let mut spec = audible_spec_with_duration(10); + spec.project = serde_json::from_value(serde_json::json!({ + "timeline": { "zoomSegments": [], "segments": [{ + "recordingSegment": 0, + "start": 0.0, + "end": 10.0, + "timescale": 1.0, + "volume": volume, + "speedAudioMode": if muted { Some("mute") } else { None } + }] } + })) + .unwrap(); + spec + }; + let (tx, rx) = std_mpsc::channel(); + let output = AudioOutput::new_headless(Box::new(move |samples, _| { + let mean = samples.iter().map(|sample| sample.abs()).sum::() / samples.len() as f32; + let _ = tx.send(mean); + })); + let generation = output.play(spec(1.0, false)).unwrap(); + let wait_for = |stage: &str, expected: f32| { + let deadline = Instant::now() + Duration::from_secs(5); + let mut last = None; + loop { + let mean = rx + .recv_timeout(deadline.saturating_duration_since(Instant::now())) + .unwrap_or_else(|error| { + panic!("{stage}: {error}, expected {expected}, last mean {last:?}") + }); + last = Some(mean); + if (mean - expected).abs() < 0.001 { + break; + } + } + }; + let full = 5000.0 / 32768.0 * std::f32::consts::FRAC_1_SQRT_2; + wait_for("original", full); + output.refresh_playback(spec(0.5, false), generation); + wait_for("half", full * 0.5); + output.refresh_playback(spec(0.5, true), generation); + wait_for("mute", 0.0); + output.refresh_playback(spec(0.5, false), generation); + wait_for("unmute", full * 0.5); + output.refresh_playback(spec(2.0, false), generation); + wait_for("double", full * 2.0); + output.stop_playback(generation); + wait_for("stopped", 0.0); + output.shutdown(); +} + #[test] fn studio_sound_refresh_changes_live_pcm_and_cannot_restart_stopped_audio() { - let original = audible_spec(); - let mut enhanced = audible_spec(); + let original = audible_spec_with_duration(10); + let mut enhanced = audible_spec_with_duration(10); enhanced.project.audio.improve = true; + let mut strong = audible_spec_with_duration(10); + strong.project.audio.improve = true; + strong.project.audio.isolation = cap_project::VoiceIsolation::Strong; + let mut light = audible_spec_with_duration(10); + light.project.audio.improve = true; + light.project.audio.isolation = cap_project::VoiceIsolation::Light; let late_refresh = audible_spec(); let (tx, rx) = std_mpsc::channel(); let output = AudioOutput::new_headless(Box::new(move |samples, _| { @@ -725,22 +792,28 @@ fn studio_sound_refresh_changes_live_pcm_and_cannot_restart_stopped_audio() { let _ = tx.send(mean); })); let generation = output.play(original).unwrap(); - let wait_for = |predicate: fn(f32) -> bool| { + let wait_for = |stage: &str, predicate: fn(f32) -> bool| { let deadline = Instant::now() + Duration::from_secs(5); + let mut last = None; loop { let value = rx .recv_timeout(deadline.saturating_duration_since(Instant::now())) - .unwrap(); + .unwrap_or_else(|error| panic!("{stage}: {error}, last audio mean {last:?}")); + last = Some(value); if predicate(value) { break; } } }; - wait_for(|mean| mean > 0.1); + wait_for("original", |mean| mean > 0.1); output.refresh_playback(enhanced, generation); - wait_for(|mean| mean > 0.005 && mean < 0.04); + wait_for("balanced", |mean| mean > 0.005 && mean < 0.02); + output.refresh_playback(strong, generation); + wait_for("strong", |mean| mean > 0.0005 && mean < 0.009); + output.refresh_playback(light, generation); + wait_for("light", |mean| mean > 0.02 && mean < 0.05); output.stop_playback(generation); - wait_for(|mean| mean == 0.0); + wait_for("stopped", |mean| mean == 0.0); output.refresh_playback(late_refresh, generation); for _ in 0..30 { assert_eq!(rx.recv_timeout(Duration::from_secs(2)).unwrap(), 0.0); From a951f241f1f2c8f3646bd0c8d543907f8780a909 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:46 +0100 Subject: [PATCH 020/217] test(audio): add a streaming Studio Sound probe --- crates/audio/examples/studio-sound-probe.rs | 131 ++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 crates/audio/examples/studio-sound-probe.rs diff --git a/crates/audio/examples/studio-sound-probe.rs b/crates/audio/examples/studio-sound-probe.rs new file mode 100644 index 00000000000..01fe9f7c64d --- /dev/null +++ b/crates/audio/examples/studio-sound-probe.rs @@ -0,0 +1,131 @@ +use cap_audio::{ + AudioData, AudioSampleSource, AudioStream, ChunkRead, VOICE_PROFILE_SAMPLES, VoiceEnhancer, + VoiceProfile, cast_f32_slice_to_bytes, +}; +use std::{ + error::Error, + io::{self, Write}, + path::{Path, PathBuf}, + sync::{Arc, atomic::AtomicBool}, + time::Instant, +}; + +struct Window { + samples: Vec, + start: usize, + end: usize, + channels: u16, + complete: bool, +} + +impl AudioSampleSource for Window { + fn channels(&self) -> u16 { + self.channels + } + + fn sample_count(&self) -> usize { + if self.complete { self.end } else { usize::MAX } + } + + fn sample(&self, index: usize) -> Option<&f32> { + self.samples + .get(index.checked_sub(self.start * usize::from(self.channels))?) + } +} + +fn decode_original(path: &Path) -> Result<(), Box> { + let started = Instant::now(); + let mut source = AudioStream::open(path, Arc::new(AtomicBool::new(false)))?; + let mut output = io::BufWriter::new(io::stdout().lock()); + let mut frames = 0; + while let ChunkRead::Chunk(chunk) = source.read_chunk(12_000)? { + frames += chunk.samples.len() / usize::from(chunk.channels); + output.write_all(unsafe { cast_f32_slice_to_bytes(&chunk.samples) })?; + } + output.flush()?; + eprintln!( + "original_frames={frames} duration_secs={:.6} processing_secs={:.6}", + frames as f64 / 48_000.0, + started.elapsed().as_secs_f64() + ); + Ok(()) +} + +fn main() -> Result<(), Box> { + let mut args = std::env::args_os().skip(1); + let path = args.next().map(PathBuf::from).ok_or_else(|| { + io::Error::other("Usage: studio-sound-probe INPUT [off|light|balanced|strong]; writes f32 PCM at 48 kHz to stdout") + })?; + ffmpeg::init()?; + ffmpeg::log::set_level(ffmpeg::log::Level::Error); + let strength = match args.next().as_deref().and_then(|value| value.to_str()) { + Some("off") => return decode_original(&path), + Some("light") => 0.7, + None | Some("balanced") => 0.9, + Some("strong") => 0.98, + Some(value) => return Err(io::Error::other(format!("Unknown isolation: {value}")).into()), + }; + let started = Instant::now(); + let seed = + AudioData::from_file_range(&path, 0, VOICE_PROFILE_SAMPLES).map_err(io::Error::other)?; + let profile = VoiceProfile::analyze(&seed); + let channels = seed.channels(); + drop(seed); + let calibration_ms = started.elapsed().as_secs_f64() * 1000.0; + let mut enhancer = VoiceEnhancer::with_settings(channels, strength, profile); + let mut stream = AudioStream::open(&path, Arc::new(AtomicBool::new(false)))?; + let mut window = Window { + samples: Vec::new(), + start: 0, + end: 0, + channels, + complete: false, + }; + let mut cursor = 0; + let mut peak_source_bytes = 0; + let processing = Instant::now(); + let mut output = io::BufWriter::new(io::stdout().lock()); + loop { + let range = enhancer.source_range(cursor, 4096); + let discard = range + .start + .saturating_sub(window.start) + .min(window.samples.len() / usize::from(channels)); + window.samples.drain(..discard * usize::from(channels)); + window.start += discard; + while !window.complete && window.end < range.end { + match stream.read_chunk(12_000)? { + ChunkRead::Chunk(chunk) => { + let chunk_start = chunk.source_start_sample as usize; + let chunk_end = chunk_start + chunk.samples.len() / usize::from(channels); + if chunk.channels != channels || chunk_start != window.end { + return Err(io::Error::other("Discontinuous source audio").into()); + } + let start = range.start.max(chunk_start).min(chunk_end); + if window.samples.is_empty() { + window.start = start; + } + window.samples.extend_from_slice( + &chunk.samples[(start - chunk_start) * usize::from(channels)..], + ); + window.end = chunk_end; + } + ChunkRead::Eof { .. } => window.complete = true, + } + } + peak_source_bytes = peak_source_bytes.max(window.samples.len() * 4); + let audio = enhancer.render(&window, cursor, 4096); + if audio.samples().is_empty() { + break; + } + output.write_all(unsafe { cast_f32_slice_to_bytes(audio.samples()) })?; + cursor += audio.samples().len() / usize::from(channels); + } + output.flush()?; + eprintln!( + "frames={cursor} channels={channels} duration_secs={:.6} calibration_ms={calibration_ms:.3} processing_secs={:.6} peak_source_bytes={peak_source_bytes} profile={profile:?}", + cursor as f64 / 48_000.0, + processing.elapsed().as_secs_f64() + ); + Ok(()) +} From a320936319e31a940b0c1244d74f2cc7b9e5f7dc Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:46 +0100 Subject: [PATCH 021/217] feat(editor): render updated thumbnails when projects close --- apps/desktop-gpui/Cargo.lock | 2 + crates/editor/Cargo.toml | 4 +- crates/editor/src/editor.rs | 45 ++++ crates/editor/src/editor_instance.rs | 28 ++- crates/editor/src/lib.rs | 1 + crates/editor/src/thumbnail.rs | 335 +++++++++++++++++++++++++++ 6 files changed, 412 insertions(+), 3 deletions(-) create mode 100644 crates/editor/src/thumbnail.rs diff --git a/apps/desktop-gpui/Cargo.lock b/apps/desktop-gpui/Cargo.lock index b3c0c16f4eb..b045500db4a 100644 --- a/apps/desktop-gpui/Cargo.lock +++ b/apps/desktop-gpui/Cargo.lock @@ -1619,12 +1619,14 @@ dependencies = [ "ffmpeg-next", "flume 0.11.1", "futures", + "image 0.25.10", "lru", "ringbuf", "sentry", "serde", "serde_json", "specta", + "tempfile", "tokio", "tokio-util", "tracing", diff --git a/crates/editor/Cargo.toml b/crates/editor/Cargo.toml index 072c7bc72ff..6b4c98dc167 100644 --- a/crates/editor/Cargo.toml +++ b/crates/editor/Cargo.toml @@ -37,6 +37,8 @@ ffmpeg.workspace = true specta.workspace = true serde = { workspace = true } serde_json = "1.0" +image = "0.25.2" +tempfile = "3" sentry.workspace = true futures = { workspace = true } tracing.workspace = true @@ -53,5 +55,3 @@ windows = { workspace = true, features = ["Win32_Media"] } [dev-dependencies] cap-audio = { path = "../audio", features = ["test-support"] } cap-enc-ffmpeg = { path = "../enc-ffmpeg" } -image = "0.25.2" -tempfile = "3" diff --git a/crates/editor/src/editor.rs b/crates/editor/src/editor.rs index 60e094e7d82..16f906b3e3b 100644 --- a/crates/editor/src/editor.rs +++ b/crates/editor/src/editor.rs @@ -18,6 +18,10 @@ pub enum RendererMessage { width: u32, height: u32, }, + RenderThumbnail { + input: RendererTransitionInput, + finished: oneshot::Sender>, + }, RenderFrame { segment_frames: DecodedSegmentFrames, uniforms: ProjectUniforms, @@ -247,6 +251,20 @@ impl Renderer { Self::prepare_output_size(&telemetry, &mut frame_renderer, width, height); continue; } + Some(RendererMessage::RenderThumbnail { input, finished }) => { + let result = frame_renderer + .render_immediate( + input.segment_frames, + input.uniforms, + &input.cursor, + true, + &mut layers, + ) + .await + .map_err(|error| error.to_string()); + let _ = finished.send(result); + continue; + } Some(RendererMessage::RenderFrame { segment_frames, uniforms, @@ -295,6 +313,19 @@ impl Renderer { let queue_drain_start = Instant::now(); while let Ok(msg) = rx.try_recv() { match msg { + RendererMessage::RenderThumbnail { input, finished } => { + let result = frame_renderer + .render_immediate( + input.segment_frames, + input.uniforms, + &input.cursor, + true, + &mut layers, + ) + .await + .map_err(|error| error.to_string()); + let _ = finished.send(result); + } RendererMessage::PrepareOutputSize { width, height } => { Self::prepare_output_size(&telemetry, &mut frame_renderer, width, height); } @@ -541,6 +572,20 @@ impl Renderer { } impl RendererHandle { + pub(crate) async fn render_thumbnail( + &self, + input: RendererTransitionInput, + ) -> Result { + let (finished, result) = oneshot::channel(); + self.tx + .send(RendererMessage::RenderThumbnail { input, finished }) + .await + .map_err(|_| "Thumbnail renderer stopped".to_string())?; + result + .await + .map_err(|_| "Thumbnail render cancelled".to_string())? + } + pub fn prepare_output_size(&self, width: u32, height: u32) { let _ = self .tx diff --git a/crates/editor/src/editor_instance.rs b/crates/editor/src/editor_instance.rs index 11ca6f2f370..f670c27a4fb 100644 --- a/crates/editor/src/editor_instance.rs +++ b/crates/editor/src/editor_instance.rs @@ -739,6 +739,14 @@ impl EditorInstance { } pub async fn dispose(&self) { + self.dispose_inner(false).await; + } + + pub async fn dispose_with_thumbnail(&self) -> bool { + self.dispose_inner(true).await + } + + async fn dispose_inner(&self, refresh_thumbnail: bool) -> bool { self.playback_epoch.fetch_add(1, Ordering::SeqCst); let mut state = self.state.lock().await; @@ -757,7 +765,9 @@ impl EditorInstance { } } - self.renderer.stop().await; + if !refresh_thumbnail { + self.renderer.stop().await; + } let adoption = self.preparing_adoption(); let owns_output = adoption.as_ref().is_none_or(|adoption| adoption.is_owner()); @@ -768,9 +778,25 @@ impl EditorInstance { self.audio_output.shutdown(); } + let thumbnail_updated = if refresh_thumbnail { + match self.refresh_thumbnail().await { + Ok(updated) => updated, + Err(error) => { + warn!(%error, path = %self.project_path.display(), "Recording thumbnail refresh failed"); + false + } + } + } else { + false + }; + if refresh_thumbnail { + self.renderer.stop().await; + } + tokio::task::yield_now().await; drop(state); + thumbnail_updated } pub async fn modify_and_emit_state(&self, modify: impl Fn(&mut EditorState)) { diff --git a/crates/editor/src/lib.rs b/crates/editor/src/lib.rs index d932fb5a194..56025c826b4 100644 --- a/crates/editor/src/lib.rs +++ b/crates/editor/src/lib.rs @@ -12,6 +12,7 @@ mod preparing_playback; mod preparing_preview; mod segments; mod telemetry; +mod thumbnail; pub use audio::{AudioRenderer, AudioSegment, MusicTracks}; pub use audio_output::{ diff --git a/crates/editor/src/thumbnail.rs b/crates/editor/src/thumbnail.rs new file mode 100644 index 00000000000..ac3534278a8 --- /dev/null +++ b/crates/editor/src/thumbnail.rs @@ -0,0 +1,335 @@ +use crate::{EditorInstance, editor::RendererTransitionInput}; +use cap_project::{ProjectConfiguration, XY}; +use cap_rendering::{ProjectUniforms, RenderedFrame, ZoomTransformTimeline}; +use std::{io::Write, path::Path}; + +const THUMBNAIL_SIZE: XY = XY { x: 640, y: 640 }; +const THUMBNAIL_FPS: u32 = 30; +static THUMBNAIL_RENDER: tokio::sync::Semaphore = tokio::sync::Semaphore::const_new(1); + +impl EditorInstance { + pub(super) async fn refresh_thumbnail(&self) -> Result { + let _permit = tokio::time::timeout( + std::time::Duration::from_secs(5), + THUMBNAIL_RENDER.acquire(), + ) + .await + .map_err(|_| "Thumbnail renderer is busy".to_string())? + .map_err(|e| e.to_string())?; + let pending = tokio::time::timeout( + std::time::Duration::from_secs(5), + self.render_pending_thumbnail(), + ) + .await + .map_err(|_| "Recording thumbnail render timed out".to_string())??; + let Some((signature, frame)) = pending else { + return Ok(false); + }; + let project_path = self.project_path.clone(); + tokio::task::spawn_blocking(move || save_thumbnail(&project_path, &signature, &frame)) + .await + .map_err(|e| e.to_string())? + } + + async fn render_pending_thumbnail(&self) -> Result, RenderedFrame)>, String> { + let project_path = self.project_path.clone(); + let pending = tokio::task::spawn_blocking(move || { + let project = ProjectConfiguration::load(&project_path)?; + let signature = serde_json::to_vec(&project)?; + let screenshots = project_path.join("screenshots"); + if screenshots.join("preview.jpg").is_file() + && std::fs::read(screenshots.join("preview-config.json")) + .ok() + .as_ref() + == Some(&signature) + { + return Ok::<_, std::io::Error>(None); + } + Ok(Some((project, signature))) + }) + .await + .map_err(|e| e.to_string())? + .map_err(|e| e.to_string())?; + let Some((project, signature)) = pending else { + return Ok(None); + }; + let (source_time, segment) = project + .get_segment_time(0.0) + .ok_or("No first frame in the edited timeline")?; + let media = self + .segment_medias + .get(segment.recording_clip as usize) + .ok_or("First thumbnail clip is unavailable")?; + let offsets = project + .clips + .iter() + .find(|clip| clip.index == segment.recording_clip) + .map(|clip| clip.offsets) + .unwrap_or_default(); + let frames = media + .decoders + .get_frames_initial(source_time as f32, project.requires_camera(), true, offsets) + .await + .ok_or("Could not decode the first thumbnail frame")?; + let duration = project + .timeline + .as_ref() + .map(|timeline| timeline.duration()) + .unwrap_or(0.0); + let mut zoom = ZoomTransformTimeline::from_project_for_clip( + &project, + &media.cursor, + duration, + self.render_constants.options.screen_size, + segment.recording_clip, + ); + zoom.ensure_precomputed_until(1.0 / THUMBNAIL_FPS as f32); + let uniforms = ProjectUniforms::new( + &self.render_constants, + &project, + 0, + THUMBNAIL_FPS, + THUMBNAIL_SIZE, + &media.cursor, + &frames, + duration, + &zoom, + ); + let frame = self + .renderer + .render_thumbnail(RendererTransitionInput { + segment_frames: frames, + uniforms, + cursor: media.cursor.clone(), + }) + .await?; + Ok(Some((signature, frame))) + } +} + +fn save_thumbnail( + project_path: &Path, + signature: &[u8], + frame: &RenderedFrame, +) -> Result { + let current = ProjectConfiguration::load(project_path).map_err(|e| e.to_string())?; + if serde_json::to_vec(¤t).map_err(|e| e.to_string())? != signature { + return Ok(false); + } + let width = frame.width as usize; + let height = frame.height as usize; + let stride = frame.padded_bytes_per_row as usize; + if width == 0 + || height == 0 + || width > 640 + || height > 640 + || stride < width * 4 + || frame.data.len() < stride * height + { + return Err("Invalid recording thumbnail dimensions".into()); + } + let mut rgb = Vec::with_capacity(width * height * 3); + for row in frame.data.chunks_exact(stride).take(height) { + for pixel in row[..width * 4].chunks_exact(4) { + rgb.extend_from_slice(&pixel[..3]); + } + } + let screenshots = project_path.join("screenshots"); + if !screenshots.is_dir() { + std::fs::create_dir(&screenshots).map_err(|e| e.to_string())?; + } + let mut image = tempfile::NamedTempFile::new_in(&screenshots).map_err(|e| e.to_string())?; + image::codecs::jpeg::JpegEncoder::new_with_quality(&mut image, 75) + .encode( + &rgb, + frame.width, + frame.height, + image::ExtendedColorType::Rgb8, + ) + .map_err(|e| e.to_string())?; + let mut config = tempfile::NamedTempFile::new_in(&screenshots).map_err(|e| e.to_string())?; + config.write_all(signature).map_err(|e| e.to_string())?; + let current = ProjectConfiguration::load(project_path).map_err(|e| e.to_string())?; + if serde_json::to_vec(¤t).map_err(|e| e.to_string())? != signature { + return Ok(false); + } + image + .persist(screenshots.join("preview.jpg")) + .map_err(|e| e.to_string())?; + config + .persist(screenshots.join("preview-config.json")) + .map_err(|e| e.to_string())?; + Ok(true) +} + +#[cfg(test)] +mod tests { + use super::*; + use std::sync::Arc; + + fn project() -> (tempfile::TempDir, Vec) { + let root = tempfile::tempdir().unwrap(); + ProjectConfiguration::default().write(root.path()).unwrap(); + let project = ProjectConfiguration::load(root.path()).unwrap(); + (root, serde_json::to_vec(&project).unwrap()) + } + + fn frame() -> RenderedFrame { + let mut data = vec![0; 256 * 8]; + for row in data.chunks_exact_mut(256) { + for pixel in row[..16 * 4].chunks_exact_mut(4) { + pixel.copy_from_slice(&[220, 40, 20, 255]); + } + } + RenderedFrame { + data: Arc::new(data), + width: 16, + height: 8, + padded_bytes_per_row: 256, + frame_number: 0, + target_time_ns: 0, + } + } + + #[test] + fn saves_padded_rgba_without_replacing_the_original_capture() { + let (root, signature) = project(); + let screenshots = root.path().join("screenshots"); + std::fs::create_dir(&screenshots).unwrap(); + let original = screenshots.join("display.jpg"); + std::fs::write(&original, b"original capture").unwrap(); + assert!(save_thumbnail(root.path(), &signature, &frame()).unwrap()); + let image = image::open(screenshots.join("preview.jpg")) + .unwrap() + .into_rgb8(); + assert_eq!(image.dimensions(), (16, 8)); + let pixel = image.get_pixel(8, 4).0; + assert!(pixel[0] > 210 && pixel[1] < 50 && pixel[2] < 30); + assert_eq!(std::fs::read(original).unwrap(), b"original capture"); + assert_eq!( + std::fs::read(screenshots.join("preview-config.json")).unwrap(), + signature + ); + assert_eq!(std::fs::read_dir(screenshots).unwrap().count(), 3); + } + + #[test] + fn superseded_edits_cannot_publish_an_old_thumbnail() { + let (root, signature) = project(); + let mut changed = ProjectConfiguration::load(root.path()).unwrap(); + changed.background.padding = 42.0; + changed.write(root.path()).unwrap(); + assert!(!save_thumbnail(root.path(), &signature, &frame()).unwrap()); + assert!(!root.path().join("screenshots").exists()); + } + + #[test] + fn invalid_frames_preserve_an_existing_thumbnail() { + let (root, signature) = project(); + assert!(save_thumbnail(root.path(), &signature, &frame()).unwrap()); + let path = root.path().join("screenshots/preview.jpg"); + let before = std::fs::read(&path).unwrap(); + let mut invalid = frame(); + invalid.data = Arc::new(vec![0; 4]); + assert!(save_thumbnail(root.path(), &signature, &invalid).is_err()); + assert_eq!(std::fs::read(path).unwrap(), before); + } + + #[test] + fn deleted_projects_are_not_recreated() { + let (root, signature) = project(); + let missing = root.path().join("deleted.cap"); + assert!(save_thumbnail(&missing, &signature, &frame()).is_err()); + assert!(!missing.exists()); + } + + #[tokio::test] + #[ignore = "Requires CAP_THUMBNAIL_TEST_PROJECT pointing to the synthetic red then blue video fixture and a GPU"] + async fn native_thumbnail_tracks_edits_and_reuses_unchanged_projects() { + let source = std::path::PathBuf::from(std::env::var("CAP_THUMBNAIL_TEST_PROJECT").unwrap()); + let fixture = tempfile::tempdir().unwrap(); + let path = fixture.path().to_path_buf(); + std::fs::create_dir(path.join("content")).unwrap(); + std::fs::copy( + source.join("content/display.mp4"), + path.join("content/display.mp4"), + ) + .unwrap(); + std::fs::write(path.join("recording-meta.json"), serde_json::to_vec(&serde_json::json!({ + "platform": "MacOS", + "pretty_name": "Thumbnail verification", + "segments": [{"display": {"path": "content/display.mp4", "fps": 30, "start_time": 0}}], + "status": {"status": "Complete"} + })).unwrap()).unwrap(); + ffmpeg::init().unwrap(); + for format in [ + crate::EditorFrameFormat::Rgba, + #[cfg(target_os = "macos")] + crate::EditorFrameFormat::BgraSurface, + ] { + let mut project = ProjectConfiguration::default(); + project.background.source = cap_project::BackgroundSource::Color { + value: [20, 200, 40], + alpha: 255, + }; + project.write(&path).unwrap(); + let (frames, mut rendered) = tokio::sync::mpsc::unbounded_channel(); + let editor = EditorInstance::new_with_frame_format( + path.clone(), + |_| {}, + Box::new(move |_, _| { + let _ = frames.send(()); + }), + None, + format, + ) + .await + .unwrap(); + editor + .preview_tx + .send(Some((0, 30, THUMBNAIL_SIZE))) + .unwrap(); + tokio::time::timeout(std::time::Duration::from_secs(20), rendered.recv()) + .await + .unwrap() + .unwrap(); + let start = std::time::Instant::now(); + assert!(editor.refresh_thumbnail().await.unwrap()); + let image_path = path.join("screenshots/preview.jpg"); + let first = std::fs::read(&image_path).unwrap(); + println!( + "initial thumbnail: {:?}, {} bytes", + start.elapsed(), + first.len() + ); + let before = std::fs::metadata(&image_path).unwrap().modified().unwrap(); + assert!(!editor.refresh_thumbnail().await.unwrap()); + assert_eq!( + std::fs::metadata(&image_path).unwrap().modified().unwrap(), + before + ); + project = ProjectConfiguration::load(&path).unwrap(); + let first_clip = &mut project.timeline.as_mut().unwrap().segments[0]; + first_clip.start = 1.2; + first_clip.end = 1.9; + project.write(&path).unwrap(); + let start = std::time::Instant::now(); + assert!(editor.dispose_with_thumbnail().await); + let image = image::open(&image_path).unwrap().into_rgb8(); + let pixel = image.get_pixel(image.width() / 2, image.height() / 2).0; + assert!( + pixel[2] > 180 && pixel[0] < 80, + "trimmed first frame must be blue: {pixel:?}" + ); + assert!(image.width() <= 640 && image.height() <= 640); + assert_ne!(std::fs::read(&image_path).unwrap(), first); + println!( + "close and trimmed thumbnail: {:?}, {}x{}, {} bytes", + start.elapsed(), + image.width(), + image.height(), + std::fs::metadata(image_path).unwrap().len() + ); + } + } +} From 849af1b89b9cdafeb8f9bc5dbcfc7797fe397baa Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:46 +0100 Subject: [PATCH 022/217] feat(export): guard exports against disk and memory pressure --- crates/utils/src/export_resources.rs | 593 +++++++++++++++++++++++++++ crates/utils/src/lib.rs | 1 + 2 files changed, 594 insertions(+) create mode 100644 crates/utils/src/export_resources.rs diff --git a/crates/utils/src/export_resources.rs b/crates/utils/src/export_resources.rs new file mode 100644 index 00000000000..810b1b506fc --- /dev/null +++ b/crates/utils/src/export_resources.rs @@ -0,0 +1,593 @@ +use std::{future::Future, path::PathBuf, time::Duration}; + +const GIB: u64 = 1024 * 1024 * 1024; +const DISK_RESERVE: u64 = 512 * 1024 * 1024; +const DISK_WARNING: u64 = 5 * GIB; +const SAMPLE_INTERVAL: Duration = Duration::from_secs(2); +const DISK_SAMPLE_TIMEOUT: Duration = Duration::from_millis(500); +static DISK_SAMPLE_SLOT: tokio::sync::Semaphore = tokio::sync::Semaphore::const_new(1); +const CRITICAL_MEMORY_SAMPLES: u8 = 3; +const STOP_PREFIX: &str = "Export stopped to protect your computer: "; + +#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)] +enum MemoryPressure { + #[default] + Unknown, + Normal, + Warning, + Critical, +} + +#[derive(Clone)] +pub struct DiskBudget { + pub path: PathBuf, + pub description: &'static str, + pub estimated_bytes: u64, +} + +#[derive(Clone)] +pub struct ExportResources { + disks: Vec, +} + +#[derive(Default)] +struct Sample { + free_bytes: Vec>, + memory: MemoryPressure, +} + +#[derive(Default)] +struct PressureHistory { + critical_memory_samples: u8, +} + +impl ExportResources { + pub fn new(mut disks: Vec) -> Self { + #[cfg(target_os = "macos")] + let system_path = Some(PathBuf::from("/System/Volumes/Data")); + #[cfg(not(target_os = "macos"))] + let system_path = directories::BaseDirs::new().map(|home| home.home_dir().to_path_buf()); + if let Some(path) = system_path { + disks.push(DiskBudget { + path, + description: "your system drive", + estimated_bytes: 0, + }); + } + Self { disks } + } + + fn disk_free_bytes(&self) -> Vec> { + self.disks + .iter() + .map(|disk| crate::disk_space::free_bytes_for_path(&disk.path).ok()) + .collect() + } + + async fn read(&self) -> Sample { + let resources = self.clone(); + let free_bytes = read_disk_space( + move || resources.disk_free_bytes(), + &DISK_SAMPLE_SLOT, + DISK_SAMPLE_TIMEOUT, + ) + .await; + Sample { + free_bytes, + memory: memory_pressure(), + } + } + + fn disk_failure(&self, sample: &Sample) -> Option { + self.disks.iter().zip(&sample.free_bytes).find_map(|(disk, free)| { + free.filter(|free| *free <= DISK_RESERVE).map(|free| { + format!("{STOP_PREFIX}{} has only {:.2} GiB free. Free up disk space and try again. Your original recording has been kept.", disk.description, free as f64 / GIB as f64) + }) + }) + } + + pub async fn check(&self) -> Result, String> { + let sample = self.read().await; + if let Some(error) = self.disk_failure(&sample) { + return Err(error); + } + Ok(self.warning(&sample)) + } + + fn warning(&self, sample: &Sample) -> Option { + let mut warnings = Vec::new(); + let lowest = self + .disks + .iter() + .zip(&sample.free_bytes) + .filter_map(|(disk, free)| free.map(|free| (disk, free))) + .filter(|(disk, free)| *free < DISK_WARNING.saturating_add(disk.estimated_bytes)) + .min_by_key(|(disk, free)| free.saturating_sub(disk.estimated_bytes)); + if let Some((disk, free)) = lowest { + let estimate = if disk.estimated_bytes > 0 { + format!( + " This export may need approximately {:.2} GiB, including temporary files.", + disk.estimated_bytes as f64 / GIB as f64 + ) + } else { + String::new() + }; + warnings.push(format!( + "Only {:.2} GiB is available on {}.{estimate}", + free as f64 / GIB as f64, + disk.description + )); + } + if matches!( + sample.memory, + MemoryPressure::Warning | MemoryPressure::Critical + ) { + warnings.push("Your computer is already under memory pressure. Close other applications before exporting.".to_string()); + } + if warnings.is_empty() { + None + } else { + warnings.push("The export may fail or your computer may become unresponsive if resources run out. Cap monitors resources during export and may stop if they become critically low.".to_string()); + Some(warnings.join("\n\n")) + } + } + + pub async fn supervise( + &self, + export: impl Future>, + stop: impl FnOnce(), + ) -> Result { + self.supervise_with(export, stop, || self.read(), SAMPLE_INTERVAL) + .await + } + + async fn supervise_with( + &self, + export: impl Future>, + stop: impl FnOnce(), + mut sample: F, + interval: Duration, + ) -> Result + where + F: FnMut() -> S, + S: Future, + { + tokio::pin!(export); + let mut history = PressureHistory::default(); + let mut ticks = tokio::time::interval(interval); + ticks.set_missed_tick_behavior(tokio::time::MissedTickBehavior::Skip); + loop { + let observation = tokio::select! { + biased; + result = &mut export => return result, + _ = ticks.tick() => { + tokio::select! { + biased; + result = &mut export => return result, + observation = sample() => observation, + } + } + }; + if let Some(error) = self + .disk_failure(&observation) + .or_else(|| history.observe(observation.memory)) + { + tracing::warn!(reason = %error, "Stopping export because resources are exhausted"); + stop(); + let _ = export.await; + return Err(error); + } + } + } +} + +async fn read_disk_space( + probe: impl FnOnce() -> Vec> + Send + 'static, + slot: &'static tokio::sync::Semaphore, + timeout: Duration, +) -> Vec> { + let Ok(permit) = slot.try_acquire() else { + return Vec::new(); + }; + let (sender, sample) = tokio::sync::oneshot::channel(); + // Windows exports drop a per-command Tokio runtime; a stalled disk probe + // must not hold that runtime's shutdown open. + if std::thread::Builder::new() + .name("export-resource-check".into()) + .spawn(move || { + let _permit = permit; + let _ = sender.send(probe()); + }) + .is_err() + { + return Vec::new(); + } + tokio::time::timeout(timeout, sample) + .await + .ok() + .and_then(Result::ok) + .unwrap_or_default() +} + +impl PressureHistory { + fn observe(&mut self, pressure: MemoryPressure) -> Option { + self.critical_memory_samples = if pressure == MemoryPressure::Critical { + self.critical_memory_samples.saturating_add(1) + } else { + 0 + }; + (self.critical_memory_samples >= CRITICAL_MEMORY_SAMPLES).then(|| { + format!("{STOP_PREFIX}memory pressure stayed critically high. Close other applications or choose a lower export resolution and try again. Your original recording has been kept.") + }) + } +} + +pub fn is_resource_stop(error: &str) -> bool { + error.starts_with(STOP_PREFIX) +} + +pub fn estimated_working_bytes(megabytes: f64) -> u64 { + if megabytes.is_finite() && megabytes > 0.0 { + (megabytes * 1024.0 * 1024.0 * 2.0).ceil() as u64 + } else { + 0 + } +} + +#[cfg(target_os = "macos")] +fn memory_pressure() -> MemoryPressure { + let mut level = 0u32; + let mut length = std::mem::size_of_val(&level); + let result = unsafe { + libc::sysctlbyname( + c"kern.memorystatus_vm_pressure_level".as_ptr(), + (&mut level as *mut u32).cast(), + &mut length, + std::ptr::null_mut(), + 0, + ) + }; + if result != 0 || length != std::mem::size_of_val(&level) { + return MemoryPressure::Unknown; + } + match level { + 1 => MemoryPressure::Normal, + 2 => MemoryPressure::Warning, + 4 => MemoryPressure::Critical, + _ => MemoryPressure::Unknown, + } +} + +#[cfg(not(target_os = "macos"))] +fn memory_pressure() -> MemoryPressure { + MemoryPressure::Unknown +} + +#[cfg(test)] +mod tests { + use super::*; + use std::{ + cell::Cell, + sync::{ + Arc, + atomic::{AtomicBool, Ordering}, + }, + }; + + fn resources() -> ExportResources { + ExportResources { + disks: vec![DiskBudget { + path: PathBuf::from("unused"), + description: "your export drive", + estimated_bytes: 2 * GIB, + }], + } + } + + fn sample(free: Option, memory: MemoryPressure) -> Sample { + Sample { + free_bytes: vec![free], + memory, + } + } + + #[test] + fn warns_for_working_space_without_blocking_estimates() { + let resources = resources(); + for (free, warns, stops) in [ + (9 * GIB, false, false), + (6 * GIB, true, false), + (GIB, true, false), + (DISK_RESERVE, true, true), + (0, true, true), + ] { + let observation = sample(Some(free), MemoryPressure::Normal); + assert_eq!(resources.warning(&observation).is_some(), warns); + assert_eq!(resources.disk_failure(&observation).is_some(), stops); + } + } + + #[test] + fn unknown_metrics_do_not_reject_healthy_exports() { + let observation = sample(None, MemoryPressure::Unknown); + assert!(resources().warning(&observation).is_none()); + assert!(resources().disk_failure(&observation).is_none()); + } + + #[test] + fn a_transient_or_unknown_pressure_sample_resets_the_stop_threshold() { + let mut history = PressureHistory::default(); + for pressure in [ + MemoryPressure::Critical, + MemoryPressure::Critical, + MemoryPressure::Normal, + MemoryPressure::Critical, + MemoryPressure::Critical, + MemoryPressure::Unknown, + MemoryPressure::Critical, + MemoryPressure::Warning, + ] { + assert!(history.observe(pressure).is_none()); + } + assert!(history.observe(MemoryPressure::Critical).is_none()); + assert!(history.observe(MemoryPressure::Critical).is_none()); + assert!(history.observe(MemoryPressure::Critical).is_some()); + } + + #[test] + fn invalid_or_oversized_estimates_do_not_wrap() { + for invalid in [f64::NAN, f64::INFINITY, -1.0, 0.0] { + assert_eq!(estimated_working_bytes(invalid), 0); + } + assert_eq!(estimated_working_bytes(1024.0), 2 * GIB); + assert_eq!(estimated_working_bytes(f64::MAX), u64::MAX); + } + + #[tokio::test] + async fn stops_without_progress_and_waits_for_export_cleanup() { + let (tx, rx) = tokio::sync::oneshot::channel(); + let cleaned = Arc::new(AtomicBool::new(false)); + let observed = cleaned.clone(); + let result = resources() + .supervise_with( + async move { + rx.await.unwrap(); + observed.store(true, Ordering::Release); + Err::<(), _>("Export cancelled".into()) + }, + move || { + tx.send(()).unwrap(); + }, + || async { sample(Some(0), MemoryPressure::Normal) }, + Duration::from_millis(1), + ) + .await; + assert!(is_resource_stop(&result.unwrap_err())); + assert!(cleaned.load(Ordering::Acquire)); + } + + #[tokio::test] + async fn reports_resource_stop_and_preserves_files_when_completion_races() { + let (tx, rx) = tokio::sync::oneshot::channel(); + let directory = tempfile::tempdir().unwrap(); + let output = directory.path().join("completed.mp4"); + let completed = output.clone(); + let result = resources() + .supervise_with( + async move { + rx.await.unwrap(); + std::fs::write(&completed, b"completed output").unwrap(); + Ok(completed) + }, + move || { + tx.send(()).unwrap(); + }, + || async { sample(Some(0), MemoryPressure::Normal) }, + Duration::from_millis(1), + ) + .await; + assert!(is_resource_stop(&result.unwrap_err())); + assert_eq!(std::fs::read(output).unwrap(), b"completed output"); + } + + #[tokio::test] + async fn completion_is_not_delayed_by_a_stalled_storage_sample() { + let result = resources() + .supervise_with( + async { + tokio::task::yield_now().await; + Ok(42) + }, + || panic!("Healthy export should not stop"), + std::future::pending::, + Duration::from_millis(1), + ) + .await; + assert_eq!(result.unwrap(), 42); + } + + #[tokio::test] + async fn no_samples_or_stop_callbacks_survive_completion() { + let samples = Cell::new(0); + let result = resources() + .supervise_with( + async { Ok(42) }, + || panic!("Completed export should not stop"), + || { + samples.set(samples.get() + 1); + async { sample(None, MemoryPressure::Unknown) } + }, + Duration::from_millis(1), + ) + .await; + assert_eq!(result.unwrap(), 42); + assert_eq!(samples.get(), 0); + } + + #[tokio::test] + async fn stalled_disk_checks_time_out_without_accumulating_workers() { + static SLOT: tokio::sync::Semaphore = tokio::sync::Semaphore::const_new(1); + let (release, blocked) = std::sync::mpsc::channel(); + let result = read_disk_space( + move || { + blocked.recv().unwrap(); + vec![Some(GIB)] + }, + &SLOT, + Duration::from_millis(1), + ) + .await; + assert!(result.is_empty()); + for _ in 0..100 { + let skipped = read_disk_space( + || panic!("A stalled sample must retain the only worker slot"), + &SLOT, + Duration::from_millis(1), + ) + .await; + assert!(skipped.is_empty()); + } + release.send(()).unwrap(); + let permit = tokio::time::timeout(Duration::from_secs(2), SLOT.acquire()) + .await + .unwrap() + .unwrap(); + drop(permit); + assert_eq!( + read_disk_space(|| vec![Some(GIB)], &SLOT, Duration::from_secs(2)).await, + vec![Some(GIB)] + ); + } + + #[test] + fn stalled_disk_check_does_not_hold_an_export_runtime_open() { + static SLOT: tokio::sync::Semaphore = tokio::sync::Semaphore::const_new(1); + let (release, blocked) = std::sync::mpsc::channel(); + let (finished, completion) = std::sync::mpsc::channel(); + let worker = std::thread::spawn(move || { + let runtime = tokio::runtime::Builder::new_current_thread() + .enable_time() + .build() + .unwrap(); + let sample = runtime.block_on(read_disk_space( + move || { + blocked.recv().unwrap(); + Vec::new() + }, + &SLOT, + Duration::from_millis(1), + )); + assert!(sample.is_empty()); + drop(runtime); + finished.send(()).unwrap(); + }); + let result = completion.recv_timeout(Duration::from_secs(2)); + release.send(()).unwrap(); + worker.join().unwrap(); + result.unwrap(); + } + + #[tokio::test] + async fn cancellation_drops_the_sampling_future() { + let (sample_started, started) = tokio::sync::oneshot::channel(); + let (sample_dropped, dropped) = tokio::sync::oneshot::channel(); + struct SamplingGuard(Option>); + impl Drop for SamplingGuard { + fn drop(&mut self) { + self.0.take().unwrap().send(()).unwrap(); + } + } + let mut started_tx = Some(sample_started); + let mut dropped_tx = Some(sample_dropped); + let task = tokio::spawn(async move { + resources() + .supervise_with( + std::future::pending::>(), + || panic!("Dropping supervision must not request a resource stop"), + move || { + let guard = SamplingGuard(dropped_tx.take()); + started_tx.take().unwrap().send(()).unwrap(); + async move { + let _guard = guard; + std::future::pending::().await + } + }, + Duration::from_millis(1), + ) + .await + }); + started.await.unwrap(); + task.abort(); + assert!(task.await.unwrap_err().is_cancelled()); + dropped.await.unwrap(); + } + + #[test] + fn live_sampling_has_bounded_storage_and_valid_memory_state() { + let resources = ExportResources::new(vec![DiskBudget { + path: std::env::temp_dir(), + description: "your export drive", + estimated_bytes: 0, + }]); + let observation = Sample { + free_bytes: resources.disk_free_bytes(), + memory: memory_pressure(), + }; + assert_eq!(observation.free_bytes.len(), resources.disks.len()); + assert!(observation.free_bytes[0].is_some()); + } + #[cfg(target_os = "macos")] + #[tokio::test] + #[ignore] + async fn sample_cost_and_footprint_probe() { + fn usage() -> libc::rusage_info_v2 { + let mut usage = std::mem::MaybeUninit::::zeroed(); + let result = unsafe { + libc::proc_pid_rusage( + std::process::id() as i32, + libc::RUSAGE_INFO_V2, + usage.as_mut_ptr().cast(), + ) + }; + assert_eq!(result, 0); + unsafe { usage.assume_init() } + } + let resources = ExportResources::new(vec![DiskBudget { + path: std::env::temp_dir(), + description: "your export drive", + estimated_bytes: 0, + }]); + for _ in 0..100 { + drop(resources.read().await); + } + let before = usage(); + let start = std::time::Instant::now(); + let mut samples = 0; + let mut skipped = 0; + while samples < 50_000 { + let observation = resources.read().await; + if observation.free_bytes.len() == resources.disks.len() { + samples += 1; + if samples % 10_000 == 0 { + println!("samples={samples} footprint={}", usage().ri_phys_footprint); + } + } else { + skipped += 1; + tokio::task::yield_now().await; + } + } + let elapsed = start.elapsed(); + let after = usage(); + let cpu_ns = after + .ri_user_time + .saturating_add(after.ri_system_time) + .saturating_sub(before.ri_user_time.saturating_add(before.ri_system_time)); + println!( + "samples={samples} skipped={skipped} wall_ms={} cpu_ms={:.3} footprint_before={} footprint_after={}", + elapsed.as_millis(), + cpu_ns as f64 / 1_000_000.0, + before.ri_phys_footprint, + after.ri_phys_footprint + ); + } +} diff --git a/crates/utils/src/lib.rs b/crates/utils/src/lib.rs index 16cebda774a..1e510081e11 100644 --- a/crates/utils/src/lib.rs +++ b/crates/utils/src/lib.rs @@ -11,6 +11,7 @@ use tracing::Instrument; pub mod diagnostic_writer; pub mod disk_space; +pub mod export_resources; #[cfg(any(target_os = "linux", test))] pub mod linux_package; #[cfg(target_os = "linux")] From 0ea4be71b3b68d78b7848be3efb98bb088943a73 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:47 +0100 Subject: [PATCH 023/217] feat(export): measure estimates with sampled encodes --- crates/export/src/estimates.rs | 556 ++++++++++++++++++ crates/export/src/gif.rs | 11 + crates/export/src/lib.rs | 95 +-- crates/export/src/mov.rs | 16 +- crates/export/src/mp4.rs | 27 +- .../export/tests/real_recording_regression.rs | 1 + crates/rendering/src/lib.rs | 10 +- crates/rendering/src/main.rs | 1 + 8 files changed, 668 insertions(+), 49 deletions(-) create mode 100644 crates/export/src/estimates.rs diff --git a/crates/export/src/estimates.rs b/crates/export/src/estimates.rs new file mode 100644 index 00000000000..bcafe180628 --- /dev/null +++ b/crates/export/src/estimates.rs @@ -0,0 +1,556 @@ +use std::{ + collections::{VecDeque, hash_map::DefaultHasher}, + hash::{Hash, Hasher}, + ops::Range, + sync::{ + Arc, LazyLock, Mutex, + atomic::{AtomicBool, Ordering}, + }, + time::{Duration, Instant}, +}; + +use cap_editor::{EditorInstance, SegmentMedia}; +use cap_project::ProjectConfiguration; +use serde::Serialize; +use specta::Type; + +use crate::{ + ExporterBase, make_cursor_only_project, prepare_project_for_export, settings::ExportSettings, + synthesize_default_timeline, +}; + +#[derive(Clone, Debug, Serialize, Type)] +pub struct ExportEstimates { + pub duration_seconds: f64, + pub estimated_time_seconds: f64, + pub estimated_size_mb: f64, + pub time_range_seconds: [f64; 2], + pub size_range_mb: [f64; 2], +} + +pub(crate) struct SampleTiming { + frames: Mutex>, + cancelled: AtomicBool, + _temporary_files: Arc, +} + +impl SampleTiming { + pub(crate) fn record_frame(&self) { + if let Ok(mut frames) = self.frames.lock() { + frames.push(Instant::now()); + } + } + + pub(crate) fn is_cancelled(&self) -> bool { + self.cancelled.load(Ordering::Acquire) + } +} + +struct SampleGuard(Arc); + +impl Drop for SampleGuard { + fn drop(&mut self) { + self.0.cancelled.store(true, Ordering::Release); + } +} + +async fn wait_for_stop(editor: &EditorInstance, cancel: &AtomicBool, deadline: Instant) { + while !cancel.load(Ordering::Acquire) + && !editor.export_active.load(Ordering::Acquire) + && Instant::now() < deadline + { + tokio::time::sleep(Duration::from_millis(50)).await; + } +} + +struct CachedEstimate { + key: u64, + created: Instant, + estimate: ExportEstimates, +} + +static CACHE: LazyLock>> = LazyLock::new(Mutex::default); +static SAMPLING: tokio::sync::Semaphore = tokio::sync::Semaphore::const_new(1); + +struct PreviewGuard<'a>(&'a AtomicBool); + +impl Drop for PreviewGuard<'_> { + fn drop(&mut self) { + self.0.store(false, Ordering::Release); + } +} + +struct Sample { + frames: u32, + bytes: f64, + elapsed_seconds: f64, + seconds_per_frame: f64, +} + +pub async fn estimate_export( + editor: Arc, + project: ProjectConfiguration, + settings: ExportSettings, + cancel: Arc, + mut on_estimate: impl FnMut(ExportEstimates) + Send, +) -> Result { + if cancel.load(Ordering::Acquire) || editor.export_active.load(Ordering::Acquire) { + return Err("Export estimate cancelled".into()); + } + if settings.fps() == 0 || settings.fps() > 120 { + return Err("Invalid export frame rate".into()); + } + let resolution = match settings { + ExportSettings::Mp4(settings) => settings.resolution_base, + ExportSettings::Gif(settings) => settings.resolution_base, + ExportSettings::Mov(settings) => settings.resolution_base, + }; + if resolution.x == 0 || resolution.y == 0 { + return Err("Invalid export resolution".into()); + } + let mut project = prepare_project_for_export(project); + if settings.cursor_only() { + project = make_cursor_only_project(project); + } + synthesize_default_timeline(&mut project, &editor.recordings); + cap_project::synchronize_legacy_keyboard(editor.meta(), &mut project); + cap_project::synchronize_captions( + &mut project, + &editor + .recordings + .segments + .iter() + .map(|segment| segment.display.duration) + .collect::>(), + ); + let duration = project + .timeline + .as_ref() + .map_or(0.0, |timeline| timeline.duration()); + if !duration.is_finite() || duration <= 0.0 { + return Err("No frames to estimate".into()); + } + if project.timeline.as_ref().is_some_and(|timeline| { + timeline + .segments + .iter() + .any(|segment| segment.recording_clip as usize >= editor.segment_medias.len()) + }) { + return Err("An export clip is still preparing".into()); + } + let total_frames = (duration * f64::from(settings.fps())).ceil() as u32; + let mut hasher = DefaultHasher::new(); + editor.project_path.hash(&mut hasher); + serde_json::to_vec(&(&project, settings)) + .map_err(|error| error.to_string())? + .hash(&mut hasher); + let key = hasher.finish(); + if let Ok(cache) = CACHE.lock() + && let Some(cached) = cache + .iter() + .find(|cached| cached.key == key && cached.created.elapsed() < Duration::from_secs(300)) + { + return Ok(cached.estimate.clone()); + } + let _sampling = loop { + if cancel.load(Ordering::Acquire) || editor.export_active.load(Ordering::Acquire) { + return Err("Export estimate cancelled".into()); + } + tokio::select! { + permit = SAMPLING.acquire() => break permit.map_err(|error| error.to_string())?, + _ = tokio::time::sleep(Duration::from_millis(50)) => {} + } + }; + if editor.export_active.load(Ordering::Acquire) || cancel.load(Ordering::Acquire) { + return Err("Export estimate cancelled".into()); + } + editor + .export_preview_active + .compare_exchange(false, true, Ordering::AcqRel, Ordering::Acquire) + .map_err(|_| "Export preview is busy")?; + let _guard = PreviewGuard(&editor.export_preview_active); + let deadline = Instant::now() + Duration::from_secs(20); + while editor.segment_medias.iter().any(|segment| { + !segment.audio.progress().complete || !segment.system_audio.progress().complete + }) { + if editor.segment_medias.iter().any(|segment| { + segment.audio.progress().error.is_some() + || segment.system_audio.progress().error.is_some() + }) { + return Err("Audio is unavailable for export estimation".into()); + } + tokio::select! { + _ = wait_for_stop(&editor, &cancel, deadline) => return Err("Export estimate cancelled or timed out".into()), + _ = tokio::time::sleep(Duration::from_millis(100)) => {} + } + } + + let temp = Arc::new( + tempfile::Builder::new() + .prefix("cap-export-estimate-") + .tempdir() + .map_err(|error| error.to_string())?, + ); + let setup_started = Instant::now(); + let render_constants = tokio::select! { + _ = wait_for_stop(&editor, &cancel, deadline) => return Err("Export estimate cancelled or timed out".into()), + result = cap_rendering::RenderVideoConstants::new( + &editor.recordings.segments, + editor.meta().clone(), + editor.meta().studio_meta().ok_or("Cannot estimate this recording")?.clone(), + ) => Arc::new(result.map_err(|error| error.to_string())?), + }; + let sample_medias = tokio::select! { + _ = wait_for_stop(&editor, &cancel, deadline) => return Err("Export estimate cancelled or timed out".into()), + result = cap_editor::create_segments_without_audio( + editor.meta(), + editor.meta().studio_meta().ok_or("Cannot estimate this recording")?, + settings.force_ffmpeg_decoder(), + ) => result?, + }; + if sample_medias.len() != editor.segment_medias.len() { + return Err("Recording sources changed during export estimation".into()); + } + let setup_seconds = setup_started.elapsed().as_secs_f64(); + let window_frames = match settings { + ExportSettings::Gif(_) => settings.fps().min(20), + ExportSettings::Mp4(settings) if settings.optimize_filesize => settings.fps * 4, + _ => settings.fps() * 2, + }; + let ranges = sample_ranges(total_frames, window_frames); + let mut samples = Vec::new(); + let summarize = |samples: &[Sample]| -> Result { + let mut estimate = summarize_samples(samples, total_frames, duration)?; + estimate.estimated_time_seconds += setup_seconds; + for seconds in &mut estimate.time_range_seconds { + *seconds += setup_seconds; + } + Ok(estimate) + }; + for (index, range) in ranges.iter().enumerate() { + if cancel.load(Ordering::Acquire) || editor.export_active.load(Ordering::Acquire) { + return Err("Export estimate cancelled".into()); + } + if Instant::now() >= deadline { + break; + } + let timing = Arc::new(SampleTiming { + frames: Mutex::default(), + cancelled: AtomicBool::new(false), + _temporary_files: temp.clone(), + }); + let _sample_guard = SampleGuard(timing.clone()); + let base = ExporterBase { + project_path: editor.project_path.clone(), + recording_meta: editor.meta().clone(), + project_config: project.clone(), + studio_meta: editor + .meta() + .studio_meta() + .ok_or("Cannot estimate this recording")? + .clone(), + recordings: editor.recordings.clone(), + render_constants: render_constants.clone(), + segments: editor + .segment_medias + .iter() + .zip(&sample_medias) + .map(|(segment, sample)| SegmentMedia { + audio: segment.audio.clone(), + system_audio: segment.system_audio.clone(), + audio_timing_repair: segment.audio_timing_repair, + cursor: segment.cursor.clone(), + keyboard: segment.keyboard.clone(), + decoders: sample.decoders.clone(), + }) + .collect(), + output_path: temp.path().join(format!("sample-{index}.mp4")), + streaming_audio: None, + streaming_output: None, + audio_cancellation: None, + sample_range: Some(range.clone()), + sample_timing: Some(timing.clone()), + }; + let progress_editor = editor.clone(); + let progress_cancel = cancel.clone(); + let on_progress = move |_| { + !progress_cancel.load(Ordering::Acquire) + && !progress_editor.export_active.load(Ordering::Acquire) + && Instant::now() < deadline + }; + let started = Instant::now(); + let export = async { + match settings { + ExportSettings::Mp4(settings) => settings.export(base, on_progress).await, + ExportSettings::Gif(settings) => settings.export(base, on_progress).await, + ExportSettings::Mov(settings) => settings.export(base, on_progress).await, + } + }; + let path = tokio::select! { + _ = wait_for_stop(&editor, &cancel, deadline) => { + if !samples.is_empty() && !cancel.load(Ordering::Acquire) && !editor.export_active.load(Ordering::Acquire) { + break; + } + return Err("Export estimate cancelled or timed out".into()); + } + result = export => result?, + }; + let elapsed = started.elapsed().as_secs_f64(); + let frames = timing.frames.lock().map_err(|error| error.to_string())?; + let expected = range.end.saturating_sub(range.start); + if frames.len() != expected as usize { + return Err("Export sample did not render every frame".into()); + } + let startup = frames.first().map_or(0.0, |first| { + first.saturating_duration_since(started).as_secs_f64() + }); + let seconds_per_frame = if matches!(settings, ExportSettings::Gif(_)) { + (elapsed - startup).max(0.0) / f64::from(expected.saturating_sub(1).max(1)) + } else { + steady_frame_time(&frames, elapsed) + }; + tracing::debug!( + sample = index, + frames = expected, + elapsed_seconds = elapsed, + startup_seconds = startup, + seconds_per_frame, + "Measured export sample" + ); + samples.push(Sample { + frames: expected, + bytes: std::fs::metadata(&path) + .map_err(|error| error.to_string())? + .len() as f64, + elapsed_seconds: elapsed, + seconds_per_frame, + }); + drop(frames); + if cancel.load(Ordering::Acquire) || editor.export_active.load(Ordering::Acquire) { + return Err("Export estimate cancelled".into()); + } + on_estimate(summarize(&samples)?); + } + if cancel.load(Ordering::Acquire) || editor.export_active.load(Ordering::Acquire) { + return Err("Export estimate cancelled".into()); + } + let estimate = summarize(&samples)?; + if samples.len() == ranges.len() + && let Ok(mut cache) = CACHE.lock() + { + cache.retain(|cached| cached.key != key); + cache.push_back(CachedEstimate { + key, + created: Instant::now(), + estimate: estimate.clone(), + }); + while cache.len() > 8 { + let _ = cache.pop_front(); + } + } + Ok(estimate) +} + +fn steady_frame_time(frames: &[Instant], elapsed_seconds: f64) -> f64 { + let tail_start = frames.len().saturating_sub((frames.len() / 4).max(2)); + match (frames.get(tail_start), frames.last()) { + (Some(first), Some(last)) if frames.len() > 1 => { + last.saturating_duration_since(*first).as_secs_f64() + / frames.len().saturating_sub(tail_start + 1).max(1) as f64 + } + _ => elapsed_seconds / frames.len().max(1) as f64, + } +} + +fn sample_ranges(total_frames: u32, window_frames: u32) -> Vec> { + let count = window_frames.max(2); + if total_frames <= count.saturating_mul(3) { + return std::iter::once(0..total_frames).collect(); + } + (0..3) + .map(|index| { + let stratum = total_frames / 3; + let start = index * stratum + (stratum - count) / 2; + start..start + count + }) + .collect() +} + +fn summarize_samples( + samples: &[Sample], + total_frames: u32, + duration_seconds: f64, +) -> Result { + if samples.is_empty() || total_frames == 0 { + return Err("Export estimate unavailable".into()); + } + let sampled_frames: u32 = samples.iter().map(|sample| sample.frames).sum(); + if sampled_frames == total_frames && samples.len() == 1 { + let time = samples[0].elapsed_seconds; + let size = samples[0].bytes / (1024.0 * 1024.0); + return Ok(ExportEstimates { + duration_seconds, + estimated_time_seconds: time, + estimated_size_mb: size, + time_range_seconds: [time, time], + size_range_mb: [size, size], + }); + } + let times: Vec = samples + .iter() + .map(|sample| { + sample.elapsed_seconds + + sample.seconds_per_frame * f64::from(total_frames.saturating_sub(sample.frames)) + }) + .collect(); + let sizes: Vec = samples + .iter() + .map(|sample| { + sample.bytes / f64::from(sample.frames) * f64::from(total_frames) / (1024.0 * 1024.0) + }) + .collect(); + let range = |values: &[f64]| { + let mean = values.iter().sum::() / values.len() as f64; + let deviation = (values + .iter() + .map(|value| (value - mean).powi(2)) + .sum::() + / values.len().saturating_sub(1).max(1) as f64) + .sqrt(); + [ + values + .iter() + .copied() + .fold(mean - deviation, f64::min) + .max(0.0), + values.iter().copied().fold(mean + deviation, f64::max), + ] + }; + Ok(ExportEstimates { + duration_seconds, + estimated_time_seconds: times.iter().sum::() / times.len() as f64, + estimated_size_mb: sizes.iter().sum::() / sizes.len() as f64, + time_range_seconds: range(×), + size_range_mb: range(&sizes), + }) +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn steady_throughput_excludes_encoder_warmup_and_flush() { + let started = Instant::now(); + let frames: Vec<_> = (0..120) + .map(|frame| { + started + + Duration::from_millis(if frame < 60 { + frame + } else { + 60 + (frame - 60) * 20 + }) + }) + .collect(); + assert!((steady_frame_time(&frames, 5.0) - 0.02).abs() < 0.00001); + let estimate = summarize_samples( + &[Sample { + frames: 120, + bytes: 1_000_000.0, + elapsed_seconds: 5.0, + seconds_per_frame: 0.02, + }], + 1200, + 40.0, + ) + .unwrap(); + assert!((estimate.estimated_time_seconds - 26.6).abs() < 0.00001); + } + + #[test] + fn cancellation_keeps_temporary_files_alive_until_the_encoder_stops() { + let directory = Arc::new(tempfile::tempdir().unwrap()); + let path = directory.path().to_path_buf(); + let timing = Arc::new(SampleTiming { + frames: Mutex::default(), + cancelled: AtomicBool::new(false), + _temporary_files: directory.clone(), + }); + let guard = SampleGuard(timing.clone()); + drop(directory); + drop(guard); + assert!(timing.is_cancelled()); + assert!(path.exists()); + drop(timing); + assert!(!path.exists()); + } + + #[test] + fn samples_cover_the_timeline_without_overlapping_or_crossing_the_end() { + for fps in [10, 15, 30, 60, 120] { + for total in [1, 15, 59, 60, 181, 10_000, 10_000_000] { + for window in [fps.min(20), fps * 2, fps * 4] { + let ranges = sample_ranges(total, window); + assert!( + ranges + .iter() + .all(|range| range.start < range.end && range.end <= total) + ); + assert!(ranges.windows(2).all(|pair| pair[0].end <= pair[1].start)); + assert!( + ranges + .iter() + .map(|range| range.end - range.start) + .sum::() + <= window * 3 + ); + } + } + } + } + + #[test] + fn short_exports_use_measured_totals_without_extrapolating_startup() { + let result = summarize_samples( + &[Sample { + frames: 60, + bytes: 1_048_576.0, + elapsed_seconds: 2.0, + seconds_per_frame: 0.01, + }], + 60, + 2.0, + ) + .unwrap(); + assert_eq!(result.estimated_time_seconds, 2.0); + assert_eq!(result.estimated_size_mb, 1.0); + } + + #[test] + fn startup_is_paid_once_and_sample_variation_is_preserved() { + let result = summarize_samples( + &[ + Sample { + frames: 61, + bytes: 1_048_576.0, + elapsed_seconds: 1.6, + seconds_per_frame: 0.01, + }, + Sample { + frames: 61, + bytes: 2_097_152.0, + elapsed_seconds: 2.2, + seconds_per_frame: 0.02, + }, + ], + 601, + 20.0, + ) + .unwrap(); + assert!((result.estimated_time_seconds - 10.0).abs() < 0.0001); + assert!(result.time_range_seconds[0] <= 7.0); + assert!(result.time_range_seconds[1] >= 13.0); + assert!(result.size_range_mb[0] < result.estimated_size_mb); + assert!(result.size_range_mb[1] > result.estimated_size_mb); + } +} diff --git a/crates/export/src/gif.rs b/crates/export/src/gif.rs index 22fca98759b..56eb724ce0e 100644 --- a/crates/export/src/gif.rs +++ b/crates/export/src/gif.rs @@ -118,6 +118,7 @@ impl GifExportSettings { ) .map_err(|e| format!("Failed to create GIF encoder: {e}"))?; + let sample_timing = base.sample_timing.clone(); let encoder_thread = tokio::task::spawn_blocking(move || { let mut frame_count = 0; @@ -134,7 +135,16 @@ impl GifExportSettings { ))); } + if sample_timing + .as_ref() + .is_some_and(|timing| timing.is_cancelled()) + { + return Err(ExportError::Other("Export cancelled".into())); + } frame_count += 1; + if let Some(timing) = &sample_timing { + timing.record_frame(); + } } if let Err(e) = gif_encoder.finish() { @@ -166,6 +176,7 @@ impl GifExportSettings { fps, self.resolution_base, &base.recordings, + base.sample_range.clone(), ) .then(|f| async { f.map_err(|v| v.to_string()) }); diff --git a/crates/export/src/lib.rs b/crates/export/src/lib.rs index 36a80c63bc5..cc9b53169e6 100644 --- a/crates/export/src/lib.rs +++ b/crates/export/src/lib.rs @@ -1,3 +1,4 @@ +pub mod estimates; pub mod gif; pub mod mov; pub mod mp4; @@ -125,46 +126,7 @@ impl ExporterBuilder { .map_err(Error::RecordingsMeta)?, ); - // A freshly recorded .cap has no timeline — only the editor creates one. Without it the - // render loop's get_segment_time() returns None on frame 0 and produces zero frames (an empty - // export). Synthesize the same default timeline the editor would (one segment per recording, - // spanning its full duration) so raw recordings — e.g. from `cap export` — render correctly. - // Desktop exports already carry a timeline by export time, so this only fires for un-edited - // projects and changes nothing for them. - if project_config.timeline.is_none() { - let segments: Vec = recordings - .segments - .iter() - .enumerate() - .filter_map(|(i, segment)| { - let duration = segment.duration(); - (duration > 0.0).then_some(TimelineSegment { - recording_clip: i as u32, - start: 0.0, - end: duration, - timescale: 1.0, - name: None, - speed_audio_mode: None, - }) - }) - .collect(); - if !segments.is_empty() { - project_config.timeline = Some(TimelineConfiguration { - segments, - transitions: Vec::new(), - zoom_segments: Vec::new(), - scene_segments: Vec::new(), - style_segments: Vec::new(), - image_segments: Vec::new(), - mask_segments: Vec::new(), - text_segments: Vec::new(), - caption_segments: Vec::new(), - keyboard_segments: Vec::new(), - audio_segments: Vec::new(), - camera3d_segments: Vec::new(), - }); - } - } + synthesize_default_timeline(&mut project_config, &recordings); cap_project::synchronize_legacy_keyboard(&recording_meta, &mut project_config); cap_project::synchronize_captions( @@ -249,6 +211,8 @@ impl ExporterBuilder { streaming_audio, streaming_output, audio_cancellation, + sample_range: None, + sample_timing: None, }) } } @@ -273,6 +237,55 @@ async fn finish_audio_preparation( Ok((segments, audio)) } +/// A freshly recorded .cap has no timeline — only the editor creates one. Without it the +/// render loop's get_segment_time() returns None on frame 0 and produces zero frames (an empty +/// export). Synthesize the same default timeline the editor would (one segment per recording, +/// spanning its full duration) so raw recordings — e.g. from `cap export` — render correctly. +/// Desktop exports already carry a timeline by export time, so this only fires for un-edited +/// projects and changes nothing for them. +pub fn synthesize_default_timeline( + project_config: &mut ProjectConfiguration, + recordings: &ProjectRecordingsMeta, +) { + if project_config.timeline.is_some() { + return; + } + let segments: Vec = recordings + .segments + .iter() + .enumerate() + .filter_map(|(i, segment)| { + let duration = segment.duration(); + (duration > 0.0).then_some(TimelineSegment { + recording_clip: i as u32, + start: 0.0, + end: duration, + timescale: 1.0, + name: None, + speed_audio_mode: None, + hide_cursor: None, + volume: None, + }) + }) + .collect(); + if !segments.is_empty() { + project_config.timeline = Some(TimelineConfiguration { + segments, + transitions: Vec::new(), + zoom_segments: Vec::new(), + scene_segments: Vec::new(), + style_segments: Vec::new(), + image_segments: Vec::new(), + mask_segments: Vec::new(), + text_segments: Vec::new(), + caption_segments: Vec::new(), + keyboard_segments: Vec::new(), + audio_segments: Vec::new(), + camera3d_segments: Vec::new(), + }); + } +} + pub fn prepare_project_for_export( mut project_config: ProjectConfiguration, ) -> ProjectConfiguration { @@ -379,6 +392,8 @@ pub struct ExporterBase { streaming_audio: Option, streaming_output: Option, audio_cancellation: Option, + sample_range: Option>, + sample_timing: Option>, } impl ExporterBase { diff --git a/crates/export/src/mov.rs b/crates/export/src/mov.rs index e4560f01dcb..e700a276a27 100644 --- a/crates/export/src/mov.rs +++ b/crates/export/src/mov.rs @@ -61,6 +61,7 @@ impl MovExportSettings { let (tx_image_data, mut video_rx) = tokio::sync::mpsc::channel::<(RenderedFrame, u32)>(4); let fps = self.fps; + let first_frame = base.sample_range.as_ref().map_or(0, |range| range.start); let output_size = ProjectUniforms::get_output_size( &base.render_constants.options, @@ -80,6 +81,7 @@ impl MovExportSettings { let video_info = VideoInfo::from_raw(RawVideoFormat::Rgba, output_size.0, output_size.1, fps); + let sample_timing = base.sample_timing.clone(); let encoder_thread = tokio::task::spawn_blocking(move || { let mut mov_encoder = MOVFile::init(mov_output_path.clone(), |output| { ProResEncoder::builder(video_info).build(output) @@ -100,13 +102,24 @@ impl MovExportSettings { fill_rgba_frame(&mut reusable_frame, &frame) .map_err(|e| ExportError::Other(format!("Failed to prepare frame: {e}")))?; - let timestamp = Duration::from_secs_f64(frame_number as f64 / fps as f64); + let timestamp = Duration::from_secs_f64( + frame_number.saturating_sub(first_frame) as f64 / fps as f64, + ); mov_encoder .queue_video_frame(&mut reusable_frame, timestamp) .map_err(|e| ExportError::Other(format!("Failed to encode MOV frame: {e}")))?; + if sample_timing + .as_ref() + .is_some_and(|timing| timing.is_cancelled()) + { + return Err(ExportError::Other("Export cancelled".into())); + } frame_count += 1; + if let Some(timing) = &sample_timing { + timing.record_frame(); + } } mov_encoder @@ -138,6 +151,7 @@ impl MovExportSettings { fps, self.resolution_base, &base.recordings, + base.sample_range.clone(), ) .then(|f| async { f.map_err(|v| v.to_string()) }); diff --git a/crates/export/src/mp4.rs b/crates/export/src/mp4.rs index 300f373d8e4..37fafe87ca7 100644 --- a/crates/export/src/mp4.rs +++ b/crates/export/src/mp4.rs @@ -326,6 +326,8 @@ impl Mp4ExportSettings { mode: ExportNv12Mode, ) -> Result { let pipeline_start = std::time::Instant::now(); + let sample_start_frame = base.sample_range.as_ref().map_or(0, |range| range.start); + let sample_timing = base.sample_timing.clone(); let output_path = base.output_path.clone(); let mut streaming_audio = base.streaming_audio.take(); let audio_control = base.audio_cancellation.take(); @@ -479,13 +481,16 @@ impl Mp4ExportSettings { .into_iter() .chain(std::iter::from_fn(|| frame_rx.recv().ok())); for input in frames { + if sample_timing.as_ref().is_some_and(|timing| timing.is_cancelled()) { + return Err(Mp4PipelineError::Interrupted); + } if encoder_cancellation.as_ref().is_some_and(|cancel| cancel.load(Ordering::Relaxed)) || encoder_user_cancellation.as_ref().is_some_and(|cancel| cancel.load(Ordering::Relaxed)) { return Err(Mp4PipelineError::Interrupted); } if encoded_frames == 0 && let Some(audio) = &mut audio_renderer { - audio.set_playhead(0.0, &project_for_audio); + audio.set_playhead(sample_start_frame as f64 / fps as f64, &project_for_audio); } let audio_frame = audio_renderer.as_mut().and_then(|audio| { @@ -584,6 +589,9 @@ impl Mp4ExportSettings { } } encoded_frames += 1; + if let Some(timing) = &sample_timing { + timing.record_frame(); + } if encoded_frames == 1 && let Some(atom) = record_first_queued_ms.as_ref() { @@ -668,6 +676,7 @@ impl Mp4ExportSettings { fps, self.resolution_base, &base.recordings, + base.sample_range.clone(), stop_after_frames_sent, nv12_render_startup_breakdown_ms, audio_cancellation.is_some(), @@ -1188,6 +1197,7 @@ async fn export_render_to_channel( fps: u32, resolution_base: XY, recordings: &ProjectRecordingsMeta, + frame_range: Option>, stop_after_frames_sent: Option, startup_breakdown_ms: Option>>>, stop_on_encoder_drop: bool, @@ -1196,7 +1206,8 @@ async fn export_render_to_channel( ) -> Result<(), cap_rendering::RenderingError> { let (tx_image_data, mut video_rx) = tokio::sync::mpsc::channel::<(Nv12RenderedFrame, u32)>(8); - let screenshot_project_path = project_path; + let screenshot_project_path = frame_range.is_none().then_some(project_path); + let first_frame = frame_range.as_ref().map_or(0, |range| range.start); let render_result = { let render_future = Box::pin(cap_rendering::render_video_to_channel_nv12( @@ -1209,6 +1220,7 @@ async fn export_render_to_channel( fps, resolution_base, recordings, + frame_range, stop_after_frames_sent, startup_breakdown_ms, )); @@ -1262,9 +1274,11 @@ async fn export_render_to_channel( )); } - let export_frame = nv12_from_rendered_frame(frame); + let mut export_frame = nv12_from_rendered_frame(frame); + export_frame.frame_number = export_frame.frame_number.saturating_sub(first_frame); - if first_frame_data.is_none() + if screenshot_project_path.is_some() + && first_frame_data.is_none() && let Some((data, y_stride)) = export_frame.materialize_nv12() { first_frame_data = Some(FirstFrameNv12 { @@ -1290,8 +1304,9 @@ async fn export_render_to_channel( drop(sender); - if let Some(first) = first_frame_data { - let pp = screenshot_project_path; + if let Some(first) = first_frame_data + && let Some(pp) = screenshot_project_path + { let _screenshot_task = tokio::task::spawn_blocking(move || { save_screenshot_from_nv12( &first.data, diff --git a/crates/export/tests/real_recording_regression.rs b/crates/export/tests/real_recording_regression.rs index 9cba28eb753..54050064193 100644 --- a/crates/export/tests/real_recording_regression.rs +++ b/crates/export/tests/real_recording_regression.rs @@ -105,6 +105,7 @@ async fn render_sampled_sequence_frames( 60, resolution_base, recordings, + None, ) .await .map_err(std::io::Error::other)?; diff --git a/crates/rendering/src/lib.rs b/crates/rendering/src/lib.rs index 7120c516bfe..f68a460fec0 100644 --- a/crates/rendering/src/lib.rs +++ b/crates/rendering/src/lib.rs @@ -627,6 +627,7 @@ pub async fn render_video_to_channel( fps: u32, resolution_base: XY, recordings: &ProjectRecordingsMeta, + frame_range: Option>, ) -> Result<(), RenderingError> { ffmpeg::init().unwrap(); @@ -635,6 +636,8 @@ pub async fn render_video_to_channel( let duration = get_duration(recordings, recording_meta, meta, project); let total_frames = (fps as f64 * duration).ceil() as u32; + let frame_range = frame_range.unwrap_or(0..total_frames); + let total_frames = total_frames.min(frame_range.end); let cursor_smoothing = (!project.cursor.raw).then_some(spring_mass_damper::SpringMassDamperSimulationConfig { @@ -689,7 +692,7 @@ pub async fn render_video_to_channel( .collect::>() }); - let mut frame_number = 0; + let mut frame_number = frame_range.start.min(total_frames); let mut frame_renderer = FrameRenderer::new(constants); @@ -1076,6 +1079,7 @@ pub async fn render_video_to_channel_nv12( fps: u32, resolution_base: XY, recordings: &ProjectRecordingsMeta, + frame_range: Option>, stop_after_frames_sent: Option, startup_breakdown_ms: Option>>>, ) -> Result<(), RenderingError> { @@ -1088,6 +1092,8 @@ pub async fn render_video_to_channel_nv12( let duration = get_duration(recordings, recording_meta, meta, project); let total_frames = (fps as f64 * duration).ceil() as u32; + let frame_range = frame_range.unwrap_or(0..total_frames); + let total_frames = total_frames.min(frame_range.end); let cursor_smoothing = (!project.cursor.raw).then_some(spring_mass_damper::SpringMassDamperSimulationConfig { @@ -1144,7 +1150,7 @@ pub async fn render_video_to_channel_nv12( }); let zoom_focus_interpolators_construct_ms = zoom_build_start.elapsed().as_millis() as u64; - let mut frame_number = 0; + let mut frame_number = frame_range.start.min(total_frames); let renderer_setup_start = Instant::now(); let mut frame_renderer = FrameRenderer::new(constants); diff --git a/crates/rendering/src/main.rs b/crates/rendering/src/main.rs index abcf7720378..d306057fc49 100644 --- a/crates/rendering/src/main.rs +++ b/crates/rendering/src/main.rs @@ -203,6 +203,7 @@ async fn main() -> Result<()> { fps, XY::new(output_size.0, output_size.1), &recordings, + None, ) .await }); From 495788667e6758aafd079b958981845553fb05d7 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:47 +0100 Subject: [PATCH 024/217] perf(export): reuse editor decoders for quality previews --- crates/export/src/preview.rs | 229 ++++++++++++++++++++++++++--------- 1 file changed, 170 insertions(+), 59 deletions(-) diff --git a/crates/export/src/preview.rs b/crates/export/src/preview.rs index 06248d4db13..3257d07e731 100644 --- a/crates/export/src/preview.rs +++ b/crates/export/src/preview.rs @@ -1,10 +1,11 @@ use std::path::PathBuf; use base64::{Engine, engine::general_purpose::STANDARD}; -use cap_project::{ProjectConfiguration, RecordingMeta, TimelineFrameMapping, XY}; +use cap_editor::EditorInstance; +use cap_project::{CursorEvents, ProjectConfiguration, RecordingMeta, TimelineFrameMapping, XY}; use cap_rendering::{ - FrameRenderer, ProjectUniforms, RenderedFrame, RendererLayers, TransitionRenderInput, - ZoomTransformTimeline, + FrameRenderer, ProjectUniforms, RecordingSegmentDecoders, RenderVideoConstants, RenderedFrame, + RendererLayers, TransitionRenderInput, ZoomTransformTimeline, }; use image::{ Rgba, @@ -13,7 +14,10 @@ use image::{ }; use serde::{Deserialize, Serialize}; -use crate::{ExportError, ExporterBase, ExporterBuilder, make_cursor_only_project}; +use crate::{ + ExportError, ExporterBase, ExporterBuilder, make_cursor_only_project, + prepare_project_for_export, synthesize_default_timeline, +}; #[derive(Debug, Clone, Copy, Serialize, Deserialize)] pub struct ExportPreviewSettings { @@ -89,42 +93,157 @@ pub async fn render_preview_with_config( render_preview_with_base(exporter_base, frame_time, settings).await } +/// Everything a preview frame needs, borrowed from whichever owner already +/// holds the decoders and GPU pipelines. +struct PreviewSource<'a> { + project_config: &'a ProjectConfiguration, + render_constants: &'a RenderVideoConstants, + segments: Vec>, + total_duration: f64, +} + +struct PreviewSegment<'a> { + decoders: &'a RecordingSegmentDecoders, + cursor: &'a CursorEvents, +} + async fn render_preview_with_base( exporter_base: ExporterBase, frame_time: f64, settings: ExportPreviewSettings, ) -> Result { - let transition_mapping = exporter_base - .project_config - .timeline - .as_ref() - .and_then(|timeline| { - if timeline.transitions.is_empty() { - return None; - } - match timeline.get_frame_mapping(frame_time) { - Some(TimelineFrameMapping::Transition { - outgoing, - kind, - progress, - .. - }) => Some((outgoing, kind, progress)), - _ => None, - } - }); - let Some((segment_time, segment)) = exporter_base.project_config.get_segment_time(frame_time) - else { + let total_duration = cap_rendering::get_duration( + &exporter_base.recordings, + &exporter_base.recording_meta, + &exporter_base.studio_meta, + &exporter_base.project_config, + ); + let source = PreviewSource { + project_config: &exporter_base.project_config, + render_constants: &exporter_base.render_constants, + segments: exporter_base + .segments + .iter() + .map(|segment| PreviewSegment { + decoders: &segment.decoders, + cursor: &segment.cursor, + }) + .collect(), + total_duration, + }; + render_preview_frame(source, frame_time, settings).await +} + +/// Render the preview through an open editor's decoders and GPU pipelines +/// instead of building a fresh exporter (a new wgpu device, every shader, and +/// a cold decoder per recording segment) for each frame. This is what makes the +/// export page's preview respond in one frame's worth of work rather than +/// seconds, and it is the same path the Tauri editor's fast preview takes. +pub async fn render_preview_with_editor( + editor: &EditorInstance, + project_config: ProjectConfiguration, + frame_time: f64, + settings: ExportPreviewSettings, +) -> Result { + let recording_meta = editor.meta(); + let studio_meta = recording_meta + .studio_meta() + .ok_or_else(|| ExportError::Other("Cannot preview non-studio recordings".to_string()))?; + let mut project_config = prepare_project_for_export(project_config); + if settings.cursor_only { + project_config = make_cursor_only_project(project_config); + } + synthesize_default_timeline(&mut project_config, &editor.recordings); + cap_project::synchronize_legacy_keyboard(recording_meta, &mut project_config); + cap_project::synchronize_captions( + &mut project_config, + &editor + .recordings + .segments + .iter() + .map(|segment| segment.display.duration) + .collect::>(), + ); + let total_duration = cap_rendering::get_duration( + &editor.recordings, + recording_meta, + studio_meta, + &project_config, + ); + + let _pause_prefetch = EditorPreviewGuard::new(editor); + let source = PreviewSource { + project_config: &project_config, + render_constants: &editor.render_constants, + segments: editor + .segment_medias + .iter() + .map(|segment| PreviewSegment { + decoders: &segment.decoders, + cursor: &segment.cursor, + }) + .collect(), + total_duration, + }; + render_preview_frame(source, frame_time, settings).await +} + +/// Holds the editor's `export_preview_active` flag so its idle prefetch does +/// not compete with the preview for the decoders. +struct EditorPreviewGuard<'a>(&'a EditorInstance); + +impl<'a> EditorPreviewGuard<'a> { + fn new(editor: &'a EditorInstance) -> Self { + editor + .export_preview_active + .store(true, std::sync::atomic::Ordering::Release); + Self(editor) + } +} + +impl Drop for EditorPreviewGuard<'_> { + fn drop(&mut self) { + self.0 + .export_preview_active + .store(false, std::sync::atomic::Ordering::Release); + } +} + +async fn render_preview_frame( + source: PreviewSource<'_>, + frame_time: f64, + settings: ExportPreviewSettings, +) -> Result { + let PreviewSource { + project_config, + render_constants, + segments, + total_duration, + } = source; + let transition_mapping = project_config.timeline.as_ref().and_then(|timeline| { + if timeline.transitions.is_empty() { + return None; + } + match timeline.get_frame_mapping(frame_time) { + Some(TimelineFrameMapping::Transition { + outgoing, + kind, + progress, + .. + }) => Some((outgoing, kind, progress)), + _ => None, + } + }); + let Some((segment_time, segment)) = project_config.get_segment_time(frame_time) else { return Err(ExportError::Other( "Frame time is outside video duration".to_string(), )); }; - let segment_media = exporter_base - .segments + let segment_media = segments .get(segment.recording_clip as usize) .ok_or_else(|| ExportError::Other("Recording clip is unavailable".to_string()))?; - let clip_config = exporter_base - .project_config + let clip_config = project_config .clips .iter() .find(|v| v.index == segment.recording_clip); @@ -135,7 +254,7 @@ async fn render_preview_with_base( .decoders .get_frames( segment_time as f32, - exporter_base.project_config.requires_camera() && !settings.cursor_only, + project_config.requires_camera() && !settings.cursor_only, !settings.cursor_only, clip_config.map(|v| v.offsets).unwrap_or_default(), ) @@ -143,50 +262,42 @@ async fn render_preview_with_base( .ok_or_else(|| ExportError::Other("Failed to decode frame".to_string()))?; let frame_number = (frame_time * settings.fps as f64).floor() as u32; - let total_duration = cap_rendering::get_duration( - &exporter_base.recordings, - &exporter_base.recording_meta, - &exporter_base.studio_meta, - &exporter_base.project_config, - ); let mut zoom_timeline = ZoomTransformTimeline::from_project_for_clip( - &exporter_base.project_config, - &segment_media.cursor, + project_config, + segment_media.cursor, total_duration, - exporter_base.render_constants.options.screen_size, + render_constants.options.screen_size, segment.recording_clip, ); zoom_timeline.ensure_precomputed_until((frame_number as f32 + 1.0) / settings.fps as f32); let uniforms = ProjectUniforms::new( - &exporter_base.render_constants, - &exporter_base.project_config, + render_constants, + project_config, frame_number, settings.fps, settings.resolution_base, - &segment_media.cursor, + segment_media.cursor, &segment_frames, total_duration, &zoom_timeline, ); - let mut frame_renderer = FrameRenderer::new(&exporter_base.render_constants); + let mut frame_renderer = FrameRenderer::new(render_constants); let mut layers = RendererLayers::new_with_options( - &exporter_base.render_constants.device, - &exporter_base.render_constants.queue, - exporter_base.render_constants.is_software_adapter, + &render_constants.device, + &render_constants.queue, + render_constants.is_software_adapter, ); let frame = if let Some((outgoing, kind, progress)) = transition_mapping { - let outgoing_media = exporter_base - .segments + let outgoing_media = segments .get(outgoing.segment.recording_clip as usize) .ok_or_else(|| { ExportError::Other("Outgoing recording clip is unavailable".to_string()) })?; - let outgoing_offsets = exporter_base - .project_config + let outgoing_offsets = project_config .clips .iter() .find(|clip| clip.index == outgoing.segment.recording_clip) @@ -196,27 +307,27 @@ async fn render_preview_with_base( .decoders .get_frames( outgoing.source_time as f32, - exporter_base.project_config.requires_camera() && !settings.cursor_only, + project_config.requires_camera() && !settings.cursor_only, !settings.cursor_only, outgoing_offsets, ) .await .ok_or_else(|| ExportError::Other("Failed to decode outgoing frame".to_string()))?; let mut outgoing_zoom = ZoomTransformTimeline::from_project_for_outgoing_clip( - &exporter_base.project_config, - &outgoing_media.cursor, + project_config, + outgoing_media.cursor, total_duration, - exporter_base.render_constants.options.screen_size, + render_constants.options.screen_size, outgoing.segment.recording_clip, ); outgoing_zoom.ensure_precomputed_until((frame_number as f32 + 1.0) / settings.fps as f32); let outgoing_uniforms = ProjectUniforms::new( - &exporter_base.render_constants, - &exporter_base.project_config, + render_constants, + project_config, frame_number, settings.fps, settings.resolution_base, - &outgoing_media.cursor, + outgoing_media.cursor, &outgoing_frames, total_duration, &outgoing_zoom, @@ -227,13 +338,13 @@ async fn render_preview_with_base( TransitionRenderInput { segment_frames: outgoing_frames, uniforms: outgoing_uniforms, - cursor: &outgoing_media.cursor, + cursor: outgoing_media.cursor, render_display: !settings.cursor_only, }, TransitionRenderInput { segment_frames, uniforms, - cursor: &segment_media.cursor, + cursor: segment_media.cursor, render_display: !settings.cursor_only, }, kind, @@ -246,7 +357,7 @@ async fn render_preview_with_base( .render_immediate( segment_frames, uniforms, - &segment_media.cursor, + segment_media.cursor, !settings.cursor_only, &mut layers, ) From f1bb1f1edaece7af5c5418ec6fc5b468bd0086f2 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:47 +0100 Subject: [PATCH 025/217] test(export): add an estimate accuracy benchmark --- .../examples/export-estimate-benchmark.rs | 174 ++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 crates/export/examples/export-estimate-benchmark.rs diff --git a/crates/export/examples/export-estimate-benchmark.rs b/crates/export/examples/export-estimate-benchmark.rs new file mode 100644 index 00000000000..9a055b7ef86 --- /dev/null +++ b/crates/export/examples/export-estimate-benchmark.rs @@ -0,0 +1,174 @@ +use std::{ + path::PathBuf, + sync::{ + Arc, + atomic::{AtomicBool, Ordering}, + }, + time::{Duration, Instant}, +}; + +use cap_editor::EditorInstance; +use cap_export::{ + ExporterBase, estimates::estimate_export, make_cursor_only_project, settings::ExportSettings, +}; +use clap::Parser; + +#[derive(Parser)] +struct Args { + project: PathBuf, + settings: String, + #[arg(long)] + cancel_after_ms: Option, + #[arg(long, conflicts_with = "cancel_after_ms")] + cancel_after_first_sample: bool, + #[arg(long)] + estimate_only: bool, +} + +#[tokio::main] +async fn main() -> Result<(), Box> { + tracing_subscriber::fmt() + .with_env_filter(tracing_subscriber::EnvFilter::from_default_env()) + .with_writer(std::io::stderr) + .init(); + let args = Args::parse(); + let settings: ExportSettings = serde_json::from_str(&args.settings)?; + let editor = + EditorInstance::new(args.project.clone(), |_| {}, Box::new(|_, _| {}), None).await?; + for segment in editor.segment_medias.iter() { + segment.audio.get().await?; + segment.system_audio.get().await?; + } + let project = editor.project_config.1.borrow().clone(); + let (resolution_base, compression_bpp) = match settings { + ExportSettings::Mp4(settings) => (settings.resolution_base, settings.effective_bpp()), + ExportSettings::Gif(settings) => (settings.resolution_base, 0.3), + ExportSettings::Mov(settings) => (settings.resolution_base, 0.3), + }; + let preview = cap_export::preview::render_preview_with_editor( + &editor, + project.clone(), + 0.0, + cap_export::preview::ExportPreviewSettings { + fps: settings.fps(), + resolution_base, + compression_bpp, + cursor_only: settings.cursor_only(), + }, + ) + .await?; + let old_time_seconds = preview.frame_render_time_ms * f64::from(preview.total_frames) + / 1000.0 + / if matches!(settings, ExportSettings::Gif(_)) { + 4.0 + } else { + 10.0 + }; + let started = Instant::now(); + let cancel = Arc::new(AtomicBool::new(false)); + let cancellation = args.cancel_after_ms.map(|milliseconds| { + let cancel = cancel.clone(); + tokio::spawn(async move { + tokio::time::sleep(Duration::from_millis(milliseconds)).await; + cancel.store(true, Ordering::Release); + }) + }); + let mut updates = Vec::new(); + let estimate = estimate_export( + editor.clone(), + project.clone(), + settings, + cancel.clone(), + |estimate| { + updates.push(serde_json::json!({ + "seconds": started.elapsed().as_secs_f64(), + "estimate": estimate, + })); + if args.cancel_after_first_sample { + cancel.store(true, Ordering::Release); + } + }, + ) + .await; + let sample_seconds = started.elapsed().as_secs_f64(); + if let Some(cancellation) = cancellation { + cancellation.await?; + } + if args.cancel_after_ms.is_some() || args.cancel_after_first_sample { + assert!(estimate.is_err()); + assert!(!editor.export_preview_active.load(Ordering::Acquire)); + if args.cancel_after_first_sample { + assert_eq!(updates.len(), 1); + } + editor.dispose().await; + println!( + "{}", + serde_json::json!({ + "cancelled": true, + "sampling_seconds": sample_seconds, + "updates": updates, + }) + ); + return Ok(()); + } + let estimate = estimate?; + let cached_started = Instant::now(); + let cached = estimate_export(editor.clone(), project.clone(), settings, cancel, |_| { + panic!("A cached estimate should not sample again"); + }) + .await?; + let cached_seconds = cached_started.elapsed().as_secs_f64(); + assert_eq!( + serde_json::to_value(&estimate)?, + serde_json::to_value(cached)? + ); + editor.dispose().await; + if args.estimate_only { + println!( + "{}", + serde_json::json!({ + "estimate": estimate, + "updates": updates, + "sampling_seconds": sample_seconds, + "cached_seconds": cached_seconds, + }) + ); + return Ok(()); + } + let output = tempfile::tempdir()?; + let config = if settings.cursor_only() { + make_cursor_only_project(project) + } else { + project + }; + let started = Instant::now(); + let base = ExporterBase::builder(args.project) + .with_config(config) + .with_output_path(output.path().join("actual.mp4")) + .with_force_ffmpeg_decoder(settings.force_ffmpeg_decoder()) + .build() + .await?; + let path = match settings { + ExportSettings::Mp4(settings) => settings.export(base, |_| true).await?, + ExportSettings::Gif(settings) => settings.export(base, |_| true).await?, + ExportSettings::Mov(settings) => settings.export(base, |_| true).await?, + }; + let actual_seconds = started.elapsed().as_secs_f64(); + let actual_mb = std::fs::metadata(path)?.len() as f64 / (1024.0 * 1024.0); + println!( + "{}", + serde_json::json!({ + "estimate": estimate, + "previous_estimated_seconds": old_time_seconds, + "previous_estimated_size_mb": preview.estimated_size_mb, + "sampling_seconds": sample_seconds, + "updates": updates, + "cached_seconds": cached_seconds, + "actual_seconds": actual_seconds, + "actual_size_mb": actual_mb, + "time_error_percent": (estimate.estimated_time_seconds / actual_seconds - 1.0) * 100.0, + "size_error_percent": (estimate.estimated_size_mb / actual_mb - 1.0) * 100.0, + }) + ); + Ok(()) +} From 1c1c074c922bdf5dd5506cb9eff7e8d5611298b7 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:48 +0100 Subject: [PATCH 026/217] feat(camera): refine segmentation masks using frame motion --- crates/camera-effects/src/mask_refinement.rs | 199 +++++++++++++++++++ 1 file changed, 199 insertions(+) create mode 100644 crates/camera-effects/src/mask_refinement.rs diff --git a/crates/camera-effects/src/mask_refinement.rs b/crates/camera-effects/src/mask_refinement.rs new file mode 100644 index 00000000000..cd477ccecf6 --- /dev/null +++ b/crates/camera-effects/src/mask_refinement.rs @@ -0,0 +1,199 @@ +pub struct MaskRefiner { + width: usize, + previous_frame: Vec, + frame_difference: Vec, + motion_history: Vec, + labels: Vec, + queue: Vec, + regions: Vec<(usize, usize)>, +} + +impl MaskRefiner { + pub fn new(width: usize, height: usize) -> Self { + Self { + width, + previous_frame: vec![0; width * height * 4], + frame_difference: vec![0; width * height], + motion_history: vec![0; width * height], + labels: vec![0; width * height], + queue: Vec::with_capacity(width * height), + regions: Vec::with_capacity(128), + } + } + + pub fn refine( + &mut self, + mask: &mut [f32], + previous: &[f32], + frame: &mut Vec, + initialized: bool, + ) { + self.remove_weak_regions(mask); + if initialized { + for (index, difference) in self.frame_difference.iter_mut().enumerate() { + let offset = index * 4; + *difference = (0..3) + .map(|channel| { + frame[offset + channel].abs_diff(self.previous_frame[offset + channel]) + }) + .max() + .unwrap_or(0); + } + let height = mask.len() / self.width; + for (index, value) in mask.iter_mut().enumerate() { + let x = index % self.width; + let y = index / self.width; + let mut motion = (u16::from(self.motion_history[index]) * 3 / 4) as u8; + for row in y.saturating_sub(1)..=(y + 1).min(height - 1) { + for col in x.saturating_sub(1)..=(x + 1).min(self.width - 1) { + motion = motion.max(self.frame_difference[row * self.width + col]); + } + } + self.motion_history[index] = motion; + *value = smooth_mask_value(previous[index], *value, f32::from(motion) / 255.0); + } + } else { + self.motion_history.fill(0); + } + std::mem::swap(&mut self.previous_frame, frame); + } + + fn remove_weak_regions(&mut self, mask: &mut [f32]) { + self.labels.fill(0); + self.regions.clear(); + self.regions.push((0, 0)); + let threshold = (mask.iter().copied().fold(0.0_f32, f32::max) * 0.5).clamp(0.1, 0.5); + for (start, &value) in mask.iter().enumerate() { + if value < threshold || self.labels[start] != 0 { + continue; + } + let label = self.regions.len(); + self.labels[start] = label; + self.queue.clear(); + self.queue.push(start); + let mut cursor = 0; + let mut confident = 0; + while cursor < self.queue.len() { + let index = self.queue[cursor]; + cursor += 1; + confident += usize::from(mask[index] >= 0.9); + let x = index % self.width; + let neighbors = [ + (x > 0).then(|| index - 1), + (x + 1 < self.width).then_some(index + 1), + index.checked_sub(self.width), + (index + self.width < mask.len()).then_some(index + self.width), + ]; + for neighbor in neighbors.into_iter().flatten() { + if self.labels[neighbor] == 0 && mask[neighbor] >= threshold { + self.labels[neighbor] = label; + self.queue.push(neighbor); + } + } + } + self.regions.push((self.queue.len(), confident)); + } + let largest = self + .regions + .iter() + .enumerate() + .max_by_key(|(_, region)| region.0) + .map_or(0, |(label, _)| label); + if largest == 0 { + mask.fill(0.0); + return; + } + for (index, value) in mask.iter_mut().enumerate() { + let label = self.labels[index]; + let x = index % self.width; + let y = index / self.width; + let near_subject = label == 0 + && *value > 0.0 + && (y.saturating_sub(2)..=(y + 2).min(self.labels.len() / self.width - 1)).any( + |row| { + (x.saturating_sub(2)..=(x + 2).min(self.width - 1)).any(|col| { + let label = self.labels[row * self.width + col]; + label == largest || self.regions[label].1 >= 8 + }) + }, + ); + if label != largest && self.regions[label].1 < 8 && !near_subject { + *value = 0.0; + } + } + } +} + +pub fn smooth_mask_value(previous: f32, next: f32, image_motion: f32) -> f32 { + let motion = ((image_motion - 0.01) / 0.06).clamp(0.0, 1.0); + let alpha = 0.18 + motion * 0.72; + (previous + (next - previous) * alpha).clamp(0.0, 1.0) +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn stationary_image_noise_is_smoothed_without_delaying_motion() { + assert!((smooth_mask_value(0.8, 0.2, 0.0) - 0.692).abs() < 0.001); + assert!(smooth_mask_value(0.0, 1.0, 0.3) >= 0.89); + assert!(smooth_mask_value(1.0, 0.0, 0.3) <= 0.11); + } + + #[test] + fn weak_background_islands_are_removed_without_removing_detached_hands() { + let mut refiner = MaskRefiner::new(32, 32); + let mut mask = vec![0.0; 1024]; + for y in 8..30 { + for x in 5..15 { + mask[y * 32 + x] = 1.0; + } + } + for y in 20..24 { + for x in 24..28 { + mask[y * 32 + x] = 0.7; + } + } + for y in 2..5 { + for x in 20..24 { + mask[y * 32 + x] = 1.0; + } + } + refiner.remove_weak_regions(&mut mask); + assert_eq!(mask[22 * 32 + 25], 0.0); + assert_eq!(mask[3 * 32 + 21], 1.0); + assert_eq!(mask[20 * 32 + 10], 1.0); + } + + #[test] + fn a_small_or_low_confidence_primary_subject_is_preserved() { + let mut refiner = MaskRefiner::new(8, 8); + let mut mask = vec![0.0; 64]; + mask[18] = 0.3; + mask[19] = 0.2; + refiner.remove_weak_regions(&mut mask); + assert_eq!(mask[18], 0.3); + assert_eq!(mask[19], 0.2); + } + + #[test] + fn recent_motion_stays_responsive_when_the_image_stops_moving() { + let mut refiner = MaskRefiner::new(4, 4); + let mut frame = vec![255; 64]; + let frame_pointer = frame.as_ptr(); + let previous_pointer = refiner.previous_frame.as_ptr(); + let mut mask = vec![1.0; 16]; + refiner.refine(&mut mask, &[0.0; 16], &mut frame, true); + assert!(mask.iter().all(|value| *value >= 0.89)); + assert_eq!(refiner.previous_frame.as_ptr(), frame_pointer); + assert_eq!(frame.as_ptr(), previous_pointer); + let previous = mask.clone(); + mask.fill(0.0); + frame.fill(255); + refiner.refine(&mut mask, &previous, &mut frame, true); + assert!(mask.iter().all(|value| *value < 0.1)); + assert_eq!(refiner.previous_frame.as_ptr(), previous_pointer); + assert_eq!(frame.as_ptr(), frame_pointer); + } +} From d09e1f5c7165f21977cf0c9459e6a3a86fec984f Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:48 +0100 Subject: [PATCH 027/217] perf(camera): reuse tensors and tune Apple Silicon inference --- crates/camera-effects/src/segmentation.rs | 32 ++++++++++++++++------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/crates/camera-effects/src/segmentation.rs b/crates/camera-effects/src/segmentation.rs index d1cca17d655..fcf093b8cc8 100644 --- a/crates/camera-effects/src/segmentation.rs +++ b/crates/camera-effects/src/segmentation.rs @@ -1,6 +1,6 @@ use anyhow::Context; use ort::session::Session; -use ort::value::TensorRef; +use ort::value::{DynValue, TensorRef}; #[cfg(any(target_os = "macos", target_os = "linux", target_os = "windows"))] use std::path::{Path, PathBuf}; @@ -18,7 +18,7 @@ const MODEL_CHANNEL_SIZE: usize = MODEL_INPUT_SIZE * MODEL_INPUT_SIZE; pub struct SegmentationModel { session: Session, input: Vec, - output: Vec, + output: Option, } impl SegmentationModel { @@ -27,11 +27,12 @@ impl SegmentationModel { Ok(Self { session, input: vec![0.0; 3 * MODEL_CHANNEL_SIZE], - output: Vec::with_capacity(MODEL_CHANNEL_SIZE), + output: None, }) } pub fn run_inference(&mut self, rgba_256x256: &[u8]) -> anyhow::Result<&[f32]> { + self.output = None; populate_rgb_planes(&mut self.input, rgba_256x256); let input_value = TensorRef::from_array_view(( [1usize, 3, MODEL_INPUT_SIZE, MODEL_INPUT_SIZE], @@ -39,19 +40,21 @@ impl SegmentationModel { )) .context("Failed to create input tensor")?; - let outputs = self + let mut outputs = self .session .run(ort::inputs!["pixel_values" => input_value]) .context("ONNX inference failed")?; - let output_value = &outputs["alphas"]; + let output_value = self.output.insert( + outputs + .remove("alphas") + .context("Missing segmentation output tensor")?, + ); let (_shape, raw_data) = output_value .try_extract_tensor::() .context("Failed to extract output tensor")?; - self.output.clear(); - self.output.extend_from_slice(raw_data); - Ok(&self.output) + Ok(raw_data) } } @@ -76,7 +79,16 @@ fn create_session() -> anyhow::Result { .with_inter_op_spinning(false) .map_err(|error| anyhow::anyhow!("Failed to disable ONNX inter-op spinning: {error}"))?; - #[cfg(target_os = "macos")] + #[cfg(all(target_os = "macos", target_arch = "aarch64"))] + { + // This small graph is cheaper on two CPU threads than CoreML's partition transfers and compilation. + builder = builder + .with_intra_threads(2) + .map_err(|error| anyhow::anyhow!("Failed to limit segmentation threads: {error}"))?; + tracing::info!("Camera background segmentation: CPU inference with two threads"); + } + + #[cfg(all(target_os = "macos", not(target_arch = "aarch64")))] { builder = try_register_coreml(builder); } @@ -228,7 +240,7 @@ fn onnx_runtime_candidates(executable: Option<&Path>) -> Vec { // logger), so a CPU-only runtime DLL would make the "registered" log a false // positive while inference silently runs on CPU. -#[cfg(target_os = "macos")] +#[cfg(all(target_os = "macos", not(target_arch = "aarch64")))] fn try_register_coreml( builder: ort::session::builder::SessionBuilder, ) -> ort::session::builder::SessionBuilder { From 5816e739a0976ea9ff2afa0201da4cc2c187a0b2 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:48 +0100 Subject: [PATCH 028/217] feat(camera): add cutouts and improve background blur --- crates/camera-effects/src/blur_pipeline.rs | 173 ++++++--- crates/camera-effects/src/lib.rs | 343 +++++++++++------- .../src/shaders/mask_composite.wgsl | 78 +++- 3 files changed, 392 insertions(+), 202 deletions(-) diff --git a/crates/camera-effects/src/blur_pipeline.rs b/crates/camera-effects/src/blur_pipeline.rs index 20d2b9c50c6..64a21b07fca 100644 --- a/crates/camera-effects/src/blur_pipeline.rs +++ b/crates/camera-effects/src/blur_pipeline.rs @@ -14,6 +14,14 @@ pub struct BlurPipeline { blur_pipeline: wgpu::RenderPipeline, blur_bind_group_layout: wgpu::BindGroupLayout, sampler: wgpu::Sampler, + uniforms: Option, +} + +struct BlurUniformBuffers { + dimensions: (u32, u32), + intensity: f32, + horizontal: wgpu::Buffer, + vertical: wgpu::Buffer, } pub struct BlurPassInputs<'a> { @@ -84,7 +92,7 @@ impl BlurPipeline { module: &shader, entry_point: Some("fs_main"), targets: &[Some(wgpu::ColorTargetState { - format: wgpu::TextureFormat::Rgba8Unorm, + format: wgpu::TextureFormat::Rgba16Float, blend: None, write_mask: wgpu::ColorWrites::ALL, })], @@ -110,11 +118,12 @@ impl BlurPipeline { blur_pipeline, blur_bind_group_layout, sampler, + uniforms: None, } } pub fn blur_two_pass( - &self, + &mut self, device: &wgpu::Device, encoder: &mut wgpu::CommandEncoder, inputs: BlurPassInputs<'_>, @@ -128,20 +137,30 @@ impl BlurPipeline { intensity, } = inputs; - let texel_size = [1.0 / width as f32, 1.0 / height as f32]; - - let h_uniforms = BlurUniforms { - direction: [1.0, 0.0], - texel_size, - intensity, - _padding: 0.0, - _padding2: [0.0, 0.0], - }; - let h_buffer = device.create_buffer_init(&wgpu::util::BufferInitDescriptor { - label: Some("Blur H Uniform"), - contents: bytemuck::cast_slice(&[h_uniforms]), - usage: wgpu::BufferUsages::UNIFORM, - }); + if self.uniforms.as_ref().is_none_or(|uniforms| { + uniforms.dimensions != (width, height) || uniforms.intensity != intensity + }) { + let create_uniform = |label, direction| { + device.create_buffer_init(&wgpu::util::BufferInitDescriptor { + label: Some(label), + contents: bytemuck::bytes_of(&BlurUniforms { + direction, + texel_size: [1.0 / width as f32, 1.0 / height as f32], + intensity, + _padding: 0.0, + _padding2: [0.0, 0.0], + }), + usage: wgpu::BufferUsages::UNIFORM, + }) + }; + self.uniforms = Some(BlurUniformBuffers { + dimensions: (width, height), + intensity, + horizontal: create_uniform("Blur H Uniform", [1.0, 0.0]), + vertical: create_uniform("Blur V Uniform", [0.0, 1.0]), + }); + } + let uniforms = self.uniforms.as_ref().expect("uniforms initialized above"); let h_bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { label: Some("Blur H Bind Group"), layout: &self.blur_bind_group_layout, @@ -156,7 +175,7 @@ impl BlurPipeline { }, wgpu::BindGroupEntry { binding: 2, - resource: h_buffer.as_entire_binding(), + resource: uniforms.horizontal.as_entire_binding(), }, ], }); @@ -181,18 +200,6 @@ impl BlurPipeline { pass.draw(0..3, 0..1); } - let v_uniforms = BlurUniforms { - direction: [0.0, 1.0], - texel_size, - intensity, - _padding: 0.0, - _padding2: [0.0, 0.0], - }; - let v_buffer = device.create_buffer_init(&wgpu::util::BufferInitDescriptor { - label: Some("Blur V Uniform"), - contents: bytemuck::cast_slice(&[v_uniforms]), - usage: wgpu::BufferUsages::UNIFORM, - }); let v_bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { label: Some("Blur V Bind Group"), layout: &self.blur_bind_group_layout, @@ -207,7 +214,7 @@ impl BlurPipeline { }, wgpu::BindGroupEntry { binding: 2, - resource: v_buffer.as_entire_binding(), + resource: uniforms.vertical.as_entire_binding(), }, ], }); @@ -236,10 +243,19 @@ impl BlurPipeline { pub struct CompositePipeline { pipeline: wgpu::RenderPipeline, + cutout_pipeline: wgpu::RenderPipeline, + background_pipeline: wgpu::RenderPipeline, bind_group_layout: wgpu::BindGroupLayout, sampler: wgpu::Sampler, } +pub struct CompositePassInputs<'a> { + pub sharp: &'a wgpu::TextureView, + pub blurred: &'a wgpu::TextureView, + pub mask: &'a wgpu::TextureView, + pub output: &'a wgpu::TextureView, +} + impl CompositePipeline { pub fn new(device: &wgpu::Device, output_format: wgpu::TextureFormat) -> Self { let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor { @@ -295,31 +311,38 @@ impl CompositePipeline { push_constant_ranges: &[], }); - let pipeline = device.create_render_pipeline(&wgpu::RenderPipelineDescriptor { - label: Some("Composite Pipeline"), - layout: Some(&pipeline_layout), - vertex: wgpu::VertexState { - module: &shader, - entry_point: Some("vs_main"), - buffers: &[], - compilation_options: Default::default(), - }, - fragment: Some(wgpu::FragmentState { - module: &shader, - entry_point: Some("fs_main"), - targets: &[Some(wgpu::ColorTargetState { - format: output_format, - blend: None, - write_mask: wgpu::ColorWrites::ALL, - })], - compilation_options: Default::default(), - }), - primitive: wgpu::PrimitiveState::default(), - depth_stencil: None, - multisample: Default::default(), - multiview: None, - cache: None, - }); + let create_pipeline = |entry_point, format| { + device.create_render_pipeline(&wgpu::RenderPipelineDescriptor { + label: Some("Composite Pipeline"), + layout: Some(&pipeline_layout), + vertex: wgpu::VertexState { + module: &shader, + entry_point: Some("vs_main"), + buffers: &[], + compilation_options: Default::default(), + }, + fragment: Some(wgpu::FragmentState { + module: &shader, + entry_point: Some(entry_point), + targets: &[Some(wgpu::ColorTargetState { + format, + blend: None, + write_mask: wgpu::ColorWrites::ALL, + })], + compilation_options: Default::default(), + }), + primitive: wgpu::PrimitiveState::default(), + depth_stencil: None, + multisample: Default::default(), + multiview: None, + cache: None, + }) + }; + + let pipeline = create_pipeline("fs_main", output_format); + let cutout_pipeline = create_pipeline("fs_cutout", output_format); + let background_pipeline = + create_pipeline("fs_background", wgpu::TextureFormat::Rgba16Float); let sampler = device.create_sampler(&wgpu::SamplerDescriptor { address_mode_u: wgpu::AddressMode::ClampToEdge, @@ -332,6 +355,8 @@ impl CompositePipeline { Self { pipeline, + cutout_pipeline, + background_pipeline, bind_group_layout, sampler, } @@ -341,11 +366,39 @@ impl CompositePipeline { &self, device: &wgpu::Device, encoder: &mut wgpu::CommandEncoder, - sharp_view: &wgpu::TextureView, - blurred_view: &wgpu::TextureView, - mask_view: &wgpu::TextureView, - output_view: &wgpu::TextureView, + inputs: CompositePassInputs<'_>, + remove_background: bool, ) { + let pipeline = if remove_background { + &self.cutout_pipeline + } else { + &self.pipeline + }; + self.draw(device, encoder, inputs, pipeline); + } + + pub fn prepare_background( + &self, + device: &wgpu::Device, + encoder: &mut wgpu::CommandEncoder, + inputs: CompositePassInputs<'_>, + ) { + self.draw(device, encoder, inputs, &self.background_pipeline); + } + + fn draw( + &self, + device: &wgpu::Device, + encoder: &mut wgpu::CommandEncoder, + inputs: CompositePassInputs<'_>, + pipeline: &wgpu::RenderPipeline, + ) { + let CompositePassInputs { + sharp: sharp_view, + blurred: blurred_view, + mask: mask_view, + output: output_view, + } = inputs; let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { label: Some("Composite Bind Group"), layout: &self.bind_group_layout, @@ -383,7 +436,7 @@ impl CompositePipeline { timestamp_writes: None, occlusion_query_set: None, }); - pass.set_pipeline(&self.pipeline); + pass.set_pipeline(pipeline); pass.set_bind_group(0, &bind_group, &[]); pass.draw(0..3, 0..1); } diff --git a/crates/camera-effects/src/lib.rs b/crates/camera-effects/src/lib.rs index 40e66e09dea..1b047957e14 100644 --- a/crates/camera-effects/src/lib.rs +++ b/crates/camera-effects/src/lib.rs @@ -1,11 +1,17 @@ mod blur_pipeline; +#[cfg(test)] +mod gpu_tests; +mod mask_refinement; mod segmentation; use std::sync::atomic::{AtomicBool, AtomicU8, Ordering}; use std::sync::{Arc, OnceLock}; use std::time::{Duration, Instant}; -use blur_pipeline::{BlurPassInputs, BlurPipeline, CompositePipeline}; +use blur_pipeline::{BlurPassInputs, BlurPipeline, CompositePassInputs, CompositePipeline}; +use mask_refinement::MaskRefiner; +#[cfg(test)] +use mask_refinement::smooth_mask_value; use segmentation::SegmentationModel; #[cfg(any(target_os = "macos", target_os = "linux", target_os = "windows"))] @@ -76,6 +82,7 @@ enum ReadbackState { pub enum BlurMode { Light, Heavy, + Remove, } #[derive(Debug, Clone, PartialEq, Eq)] @@ -238,20 +245,15 @@ fn validate_mask_samples(mask: &[f32], expected_samples: usize) -> Result<(), Bl } struct ReadbackFrame { - pixels: Vec, submitted_at: Instant, dimensions: (u32, u32), } const SEGMENTATION_SIZE: u32 = 256; const DEFAULT_INFERENCE_INTERVAL: Duration = Duration::from_millis(66); -const MASK_GROWTH_ALPHA: f32 = 0.25; -const MASK_SHRINK_ALPHA: f32 = 0.12; -const MASK_STABILITY_EPSILON: f32 = 0.025; -const MASK_EDGE_CONTRAST: f32 = 4.0; const INITIAL_MASK_VALUE: f32 = 1.0; -fn reset_mask_buffers(buffers: [&mut [f32]; 4]) { +fn reset_mask_buffers(buffers: [&mut [f32]; N]) { for buffer in buffers { buffer.fill(INITIAL_MASK_VALUE); } @@ -265,12 +267,13 @@ pub struct BlurProcessor { textures: Option, mask_data: Vec, smoothed_mask: Vec, - mask_scratch: Vec, - mask_upload: Vec, + mask_refiner: MaskRefiner, + mask_bytes: Vec, last_inference: Instant, downsample_texture: wgpu::Texture, downsample_view: wgpu::TextureView, readback_buffer: wgpu::Buffer, + readback_pixels: Vec, readback_bytes_per_row: u32, readback_state: ReadbackState, inference_interval: Duration, @@ -281,6 +284,8 @@ pub struct BlurProcessor { output_sequence: u64, mask_status: MaskStatusTracker, last_output_status: Option, + frame_synchronous: bool, + frame_time: Option, // Keep last: must drop after every other field (see BlurSessionHandle). _blur_session: BlurSessionHandle, } @@ -369,6 +374,9 @@ impl DownsamplePipeline { struct ProcessorTextures { width: u32, height: u32, + blur_dimensions: (u32, u32), + _background_texture: wgpu::Texture, + background_view: wgpu::TextureView, _blurred_texture: wgpu::Texture, blurred_view: wgpu::TextureView, _blur_intermediate: wgpu::Texture, @@ -436,14 +444,15 @@ impl BlurProcessor { textures: None, mask_data: vec![INITIAL_MASK_VALUE; pixel_count], smoothed_mask: vec![INITIAL_MASK_VALUE; pixel_count], - mask_scratch: vec![INITIAL_MASK_VALUE; pixel_count], - mask_upload: vec![INITIAL_MASK_VALUE; pixel_count], + mask_refiner: MaskRefiner::new(SEGMENTATION_SIZE as usize, SEGMENTATION_SIZE as usize), + mask_bytes: vec![255; pixel_count], last_inference: Instant::now() .checked_sub(std::time::Duration::from_secs(1)) .unwrap_or_else(Instant::now), downsample_texture, downsample_view, readback_buffer, + readback_pixels: Vec::with_capacity(pixel_count * 4), readback_bytes_per_row, readback_state: ReadbackState::Idle, inference_interval: DEFAULT_INFERENCE_INTERVAL, @@ -454,10 +463,29 @@ impl BlurProcessor { output_sequence: 0, mask_status: MaskStatusTracker::default(), last_output_status: None, + frame_synchronous: false, + frame_time: None, _blur_session: blur_session, }) } + pub fn set_frame_synchronous(&mut self, synchronous: bool) { + self.frame_synchronous = synchronous; + } + + pub fn set_frame_time(&mut self, time: f32) { + if self + .frame_time + .is_some_and(|previous| time < previous || time - previous > 0.15) + { + self.reset_mask_history(); + } + if self.frame_time != Some(time) { + self.inference_requested = true; + self.frame_time = Some(time); + } + } + pub fn set_inference_interval(&mut self, interval: Duration) { self.inference_interval = interval; } @@ -468,12 +496,7 @@ impl BlurProcessor { self.readback_buffer.unmap(); } self.readback_state = ReadbackState::Idle; - reset_mask_buffers([ - &mut self.mask_data, - &mut self.smoothed_mask, - &mut self.mask_scratch, - &mut self.mask_upload, - ]); + reset_mask_buffers([&mut self.mask_data, &mut self.smoothed_mask]); self.mask_initialized = false; self.mask_dirty = true; self.inference_requested = true; @@ -530,11 +553,15 @@ impl BlurProcessor { self.ensure_textures(device, width, height); let input_view = input_texture.create_view(&Default::default()); - if self.inference_requested || self.last_inference.elapsed() >= self.inference_interval { + if self.inference_requested + || !self.mask_initialized + || (!self.frame_synchronous + && (matches!(self.readback_state, ReadbackState::InFlight { .. }) + || self.last_inference.elapsed() >= self.inference_interval)) + { self.inference_requested = false; - let mask_updated = self.run_segmentation(device, queue, input_texture); - self.last_inference = Instant::now(); - if mask_updated { + if self.run_segmentation(device, queue, input_texture) { + self.last_inference = Instant::now(); self.mask_dirty = true; } } @@ -545,40 +572,51 @@ impl BlurProcessor { } let textures = self.textures.as_ref().expect("textures initialized above"); - - let (blur_intensity, blur_passes) = match mode { - BlurMode::Light => (1.5, 1), - BlurMode::Heavy => (2.0, 3), - }; - - for pass_index in 0..blur_passes { - let source = if pass_index == 0 { - &input_view - } else { - &textures.blurred_view - }; - - self.blur_pipeline.blur_two_pass( + if mode != BlurMode::Remove { + self.composite_pipeline.prepare_background( device, encoder, - BlurPassInputs { - source, - intermediate: &textures.blur_intermediate_view, - output: &textures.blurred_view, - width, - height, - intensity: blur_intensity, + CompositePassInputs { + sharp: &input_view, + blurred: &input_view, + mask: &textures.mask_view, + output: &textures.background_view, }, ); + let (intensity, passes) = match mode { + BlurMode::Light => (1.5, 1), + BlurMode::Heavy => (2.5, 3), + BlurMode::Remove => unreachable!(), + }; + for pass in 0..passes { + self.blur_pipeline.blur_two_pass( + device, + encoder, + BlurPassInputs { + source: if pass == 0 { + &textures.background_view + } else { + &textures.blurred_view + }, + intermediate: &textures.blur_intermediate_view, + output: &textures.blurred_view, + width: textures.blur_dimensions.0, + height: textures.blur_dimensions.1, + intensity, + }, + ); + } } - self.composite_pipeline.composite( device, encoder, - &input_view, - &textures.blurred_view, - &textures.mask_view, - &textures.output_view, + CompositePassInputs { + sharp: &input_view, + blurred: &textures.blurred_view, + mask: &textures.mask_view, + output: &textures.output_view, + }, + mode == BlurMode::Remove, ); self.output_sequence = self.output_sequence.wrapping_add(1); self.last_output_status = Some(BlurOutputStatus { @@ -601,30 +639,59 @@ impl BlurProcessor { return; } - let create_rgba_texture = |label: &str, w: u32, h: u32, usage: wgpu::TextureUsages| { - device.create_texture(&wgpu::TextureDescriptor { - label: Some(label), - size: wgpu::Extent3d { - width: w, - height: h, - depth_or_array_layers: 1, - }, - mip_level_count: 1, - sample_count: 1, - dimension: wgpu::TextureDimension::D2, - format: wgpu::TextureFormat::Rgba8Unorm, - usage, - view_formats: &[], - }) - }; + self.reset_mask_history(); + + let create_rgba_texture = + |label: &str, w: u32, h: u32, format, usage: wgpu::TextureUsages| { + device.create_texture(&wgpu::TextureDescriptor { + label: Some(label), + size: wgpu::Extent3d { + width: w, + height: h, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format, + usage, + view_formats: &[], + }) + }; let tex_usage = wgpu::TextureUsages::RENDER_ATTACHMENT | wgpu::TextureUsages::TEXTURE_BINDING | wgpu::TextureUsages::COPY_SRC; - let blurred = create_rgba_texture("Blurred Camera", width, height, tex_usage); - let blur_inter = create_rgba_texture("Blur Intermediate", width, height, tex_usage); - let output_texture = create_rgba_texture("Blur Output", width, height, tex_usage); + let blur_dimensions = background_dimensions(width, height); + let background = create_rgba_texture( + "Camera Background", + blur_dimensions.0, + blur_dimensions.1, + wgpu::TextureFormat::Rgba16Float, + tex_usage, + ); + let blurred = create_rgba_texture( + "Blurred Camera", + blur_dimensions.0, + blur_dimensions.1, + wgpu::TextureFormat::Rgba16Float, + tex_usage, + ); + let blur_inter = create_rgba_texture( + "Blur Intermediate", + blur_dimensions.0, + blur_dimensions.1, + wgpu::TextureFormat::Rgba16Float, + tex_usage, + ); + let output_texture = create_rgba_texture( + "Blur Output", + width, + height, + wgpu::TextureFormat::Rgba8Unorm, + tex_usage, + ); let mask_texture = device.create_texture(&wgpu::TextureDescriptor { label: Some("Segmentation Mask"), @@ -644,6 +711,9 @@ impl BlurProcessor { self.textures = Some(ProcessorTextures { width, height, + blur_dimensions, + background_view: background.create_view(&Default::default()), + _background_texture: background, blurred_view: blurred.create_view(&Default::default()), _blurred_texture: blurred, blur_intermediate_view: blur_inter.create_view(&Default::default()), @@ -664,30 +734,35 @@ impl BlurProcessor { input_texture: &wgpu::Texture, ) -> bool { let failure_revision = self.mask_status.failure_revision; - let rgba_256 = - match self.readback_downsampled(device, queue, input_texture, !self.mask_initialized) { - Some(data) => data, - None => return false, - }; + let rgba_256 = match self.readback_downsampled( + device, + queue, + input_texture, + self.frame_synchronous || !self.mask_initialized, + ) { + Some(data) => data, + None => return false, + }; - match self.model.run_inference(&rgba_256.pixels) { + match self.model.run_inference(&self.readback_pixels) { Ok(new_mask) => { let pixel_count = (SEGMENTATION_SIZE * SEGMENTATION_SIZE) as usize; let mask_validation = validate_mask_samples(new_mask, pixel_count); if let Err(error) = &mask_validation { self.mask_status.fail(error.clone()); + return false; } if new_mask.len() >= pixel_count { for (i, &raw) in new_mask.iter().take(pixel_count).enumerate() { - let v = refine_mask_value(raw); - self.smoothed_mask[i] = if self.mask_initialized { - smooth_mask_value(self.smoothed_mask[i], v) - } else { - v - }; + self.smoothed_mask[i] = refine_mask_value(raw); } - self.mask_data - .copy_from_slice(&self.smoothed_mask[..pixel_count]); + self.mask_refiner.refine( + &mut self.smoothed_mask, + &self.mask_data, + &mut self.readback_pixels, + self.mask_initialized, + ); + std::mem::swap(&mut self.mask_data, &mut self.smoothed_mask); self.mask_initialized = true; let smoothed_validation = validate_mask_samples(&self.mask_data, pixel_count); if let Err(error) = &smoothed_validation { @@ -723,7 +798,7 @@ impl BlurProcessor { ) -> Option { let mut completed = self.take_completed_readback(device, wgpu::PollType::Poll); - if matches!(self.readback_state, ReadbackState::Idle) { + if completed.is_none() && matches!(self.readback_state, ReadbackState::Idle) { let input_view = input_texture.create_view(&Default::default()); let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { @@ -844,16 +919,16 @@ impl BlurProcessor { let data = slice.get_mapped_range(); let expected_row = (SEGMENTATION_SIZE * 4) as usize; let bytes_per_row = self.readback_bytes_per_row as usize; - let mut out = Vec::with_capacity(expected_row * SEGMENTATION_SIZE as usize); + self.readback_pixels.clear(); for row in 0..SEGMENTATION_SIZE as usize { let start = row * bytes_per_row; - out.extend_from_slice(&data[start..start + expected_row]); + self.readback_pixels + .extend_from_slice(&data[start..start + expected_row]); } drop(data); self.readback_buffer.unmap(); self.readback_state = ReadbackState::Idle; Some(ReadbackFrame { - pixels: out, submitted_at, dimensions, }) @@ -877,18 +952,9 @@ impl BlurProcessor { return; }; - let w = SEGMENTATION_SIZE as usize; - - blur_mask_1d(&self.mask_data, &mut self.mask_scratch, w, true); - blur_mask_1d(&self.mask_scratch, &mut self.mask_upload, w, false); - blur_mask_1d(&self.mask_upload, &mut self.mask_scratch, w, true); - blur_mask_1d(&self.mask_scratch, &mut self.mask_upload, w, false); - - let mask_u8: Vec = self - .mask_upload - .iter() - .map(|&v| (v.clamp(0.0, 1.0) * 255.0) as u8) - .collect(); + for (output, &value) in self.mask_bytes.iter_mut().zip(&self.mask_data) { + *output = (value.clamp(0.0, 1.0) * 255.0).round() as u8; + } queue.write_texture( wgpu::TexelCopyTextureInfo { @@ -897,7 +963,7 @@ impl BlurProcessor { origin: wgpu::Origin3d::ZERO, aspect: wgpu::TextureAspect::All, }, - &mask_u8, + &self.mask_bytes, wgpu::TexelCopyBufferLayout { offset: 0, bytes_per_row: Some(SEGMENTATION_SIZE), @@ -912,51 +978,17 @@ impl BlurProcessor { } } -fn blur_mask_1d(src: &[f32], dst: &mut [f32], width: usize, horizontal: bool) { - let kernel = [0.06136, 0.24477, 0.38774, 0.24477, 0.06136]; - let height = src.len() / width; - - for y in 0..height { - for x in 0..width { - let mut sum = 0.0; - for (ki, &weight) in kernel.iter().enumerate() { - let offset = ki as isize - 2; - let (sx, sy) = if horizontal { - ( - (x as isize + offset).clamp(0, width as isize - 1) as usize, - y, - ) - } else { - ( - x, - (y as isize + offset).clamp(0, height as isize - 1) as usize, - ) - }; - sum += src[sy * width + sx] * weight; - } - dst[y * width + x] = sum; - } - } +fn background_dimensions(width: u32, height: u32) -> (u32, u32) { + let scale = (256.0 / width.max(height) as f64).min(1.0); + ( + (width as f64 * scale).round().max(1.0) as u32, + (height as f64 * scale).round().max(1.0) as u32, + ) } fn refine_mask_value(raw: f32) -> f32 { - let clamped = raw.clamp(0.0, 1.0); - let shifted = (clamped - 0.5) * MASK_EDGE_CONTRAST; - 1.0 / (1.0 + (-shifted).exp()) -} - -fn smooth_mask_value(previous: f32, next: f32) -> f32 { - let delta = next - previous; - if delta.abs() < MASK_STABILITY_EPSILON { - previous - } else { - let alpha = if delta > 0.0 { - MASK_GROWTH_ALPHA - } else { - MASK_SHRINK_ALPHA - }; - (previous + delta * alpha).clamp(0.0, 1.0) - } + let value = ((raw - 0.08) / 0.84).clamp(0.0, 1.0); + value * value * (3.0 - 2.0 * value) } const BLIT_SHADER: &str = r" @@ -996,6 +1028,37 @@ fn fs_main(in: VertexOutput) -> @location(0) vec4 { mod blur_status_tests { use super::*; + #[test] + fn confident_mask_values_reach_transparent_and_opaque() { + for value in [-1.0, 0.0, 0.04, 0.08] { + assert_eq!(refine_mask_value(value), 0.0); + } + for value in [0.92, 0.96, 1.0, 2.0] { + assert_eq!(refine_mask_value(value), 1.0); + } + assert!((refine_mask_value(0.5) - 0.5).abs() < 0.0001); + } + + #[test] + fn moving_foreground_does_not_leave_a_slow_trailing_mask() { + assert!(smooth_mask_value(1.0, 0.0, 0.3) < 0.11); + assert!(smooth_mask_value(0.0, 1.0, 0.3) > 0.89); + assert!((smooth_mask_value(0.5, 0.52, 0.0) - 0.5).abs() < 0.01); + let mut alpha = 1.0; + for _ in 0..6 { + alpha = smooth_mask_value(alpha, 0.0, 0.3); + } + assert!(alpha < 0.01); + } + + #[test] + fn background_work_is_bounded_and_preserves_aspect() { + assert_eq!(background_dimensions(3840, 2160), (256, 144)); + assert_eq!(background_dimensions(640, 360), (256, 144)); + assert_eq!(background_dimensions(720, 1280), (144, 256)); + assert_eq!(background_dimensions(128, 64), (128, 64)); + } + #[test] fn reset_invalidates_ready_and_failed_masks_until_new_inference() { let now = Instant::now(); @@ -1199,7 +1262,7 @@ mod blur_status_tests { fn valid_new_inference_cannot_certify_nan_contaminated_smoothed_mask() { let next = refine_mask_value(0.5); assert_eq!(validate_mask_samples(&[next], 1), Ok(())); - let smoothed = smooth_mask_value(f32::NAN, next); + let smoothed = smooth_mask_value(f32::NAN, next, 0.0); assert_eq!( validate_mask_samples(&[smoothed], 1), Err(BlurFailure::NonFiniteMask) diff --git a/crates/camera-effects/src/shaders/mask_composite.wgsl b/crates/camera-effects/src/shaders/mask_composite.wgsl index d329ecd0489..66050ee11d1 100644 --- a/crates/camera-effects/src/shaders/mask_composite.wgsl +++ b/crates/camera-effects/src/shaders/mask_composite.wgsl @@ -27,11 +27,85 @@ fn vs_main(@builtin(vertex_index) vertex_index: u32) -> VertexOutput { return out; } +fn foreground_alpha(uv: vec2, color: vec3) -> f32 { + let center = textureSampleLevel(mask_tex, tex_sampler, uv, 0.0).r; + if center <= 0.01 || center >= 0.99 { + return center; + } + let texel = 1.0 / vec2(textureDimensions(mask_tex)); + var total = 0.0; + var weights = 0.0; + for (var y = -1; y <= 1; y += 1) { + for (var x = -1; x <= 1; x += 1) { + let offset = vec2(f32(x), f32(y)); + let sample_uv = uv + offset * texel; + let neighbor = textureSampleLevel(sharp_tex, tex_sampler, sample_uv, 0.0).rgb; + let difference = neighbor - color; + let weight = exp(-dot(difference, difference) * 40.0 - dot(offset, offset) * 0.5); + total += textureSampleLevel(mask_tex, tex_sampler, sample_uv, 0.0).r * weight; + weights += weight; + } + } + return clamp(total / weights, 0.0, 1.0); +} + +@fragment +fn fs_background(in: VertexOutput) -> @location(0) vec4 { + let sharp = textureSample(sharp_tex, tex_sampler, in.uv); + let texel = 1.0 / vec2(textureDimensions(mask_tex)); + var foreground = textureSample(mask_tex, tex_sampler, in.uv).r; + foreground = max(foreground, textureSample(mask_tex, tex_sampler, in.uv + vec2(texel.x, 0.0)).r); + foreground = max(foreground, textureSample(mask_tex, tex_sampler, in.uv - vec2(texel.x, 0.0)).r); + foreground = max(foreground, textureSample(mask_tex, tex_sampler, in.uv + vec2(0.0, texel.y)).r); + foreground = max(foreground, textureSample(mask_tex, tex_sampler, in.uv - vec2(0.0, texel.y)).r); + let background = 1.0 - foreground; + return vec4(sharp.rgb * background, background); +} + @fragment fn fs_main(in: VertexOutput) -> @location(0) vec4 { let sharp = textureSample(sharp_tex, tex_sampler, in.uv); let blurred = textureSample(blurred_tex, tex_sampler, in.uv); - let mask_value = textureSample(mask_tex, tex_sampler, in.uv).r; + let alpha = foreground_alpha(in.uv, sharp.rgb); + let background = select(sharp.rgb, blurred.rgb / max(blurred.a, 0.0001), blurred.a > 0.0001); + return vec4(mix(background, sharp.rgb, alpha), sharp.a); +} - return mix(blurred, sharp, mask_value); +fn cubic_weights(fraction: f32) -> vec4 { + let inverse = 1.0 - fraction; + let square = fraction * fraction; + let cube = square * fraction; + return vec4( + inverse * inverse * inverse, + 3.0 * cube - 6.0 * square + 4.0, + -3.0 * cube + 3.0 * square + 3.0 * fraction + 1.0, + cube, + ) / 6.0; +} + +fn smooth_cutout_alpha(uv: vec2) -> f32 { + let size = vec2(textureDimensions(mask_tex)); + let position = uv * size - 0.5; + let base = floor(position); + let fraction = fract(position); + let x_weights = cubic_weights(fraction.x); + let y_weights = cubic_weights(fraction.y); + let x_groups = x_weights.xz + x_weights.yw; + let y_groups = y_weights.xz + y_weights.yw; + let x = (base.x + vec2(-0.5, 1.5) + x_weights.yw / x_groups) / size.x; + let y = (base.y + vec2(-0.5, 1.5) + y_weights.yw / y_groups) / size.y; + let top_left = textureSampleLevel(mask_tex, tex_sampler, vec2(x.x, y.x), 0.0).r; + let top_right = textureSampleLevel(mask_tex, tex_sampler, vec2(x.y, y.x), 0.0).r; + let bottom_left = textureSampleLevel(mask_tex, tex_sampler, vec2(x.x, y.y), 0.0).r; + let bottom_right = textureSampleLevel(mask_tex, tex_sampler, vec2(x.y, y.y), 0.0).r; + let top = mix(top_left, top_right, x_groups.y); + let bottom = mix(bottom_left, bottom_right, x_groups.y); + return mix(top, bottom, y_groups.y); +} + +@fragment +fn fs_cutout(in: VertexOutput) -> @location(0) vec4 { + let sharp = textureSample(sharp_tex, tex_sampler, in.uv); + let alpha = clamp((smooth_cutout_alpha(in.uv) - 0.04) / 0.96, 0.0, 1.0); + return vec4(sharp.rgb, sharp.a * alpha); } From f490b26d574f8125e0700bf502a07270f5a93f16 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:48 +0100 Subject: [PATCH 029/217] test(camera): verify GPU blur and cutout output --- Cargo.lock | 1 + crates/camera-effects/Cargo.toml | 3 + crates/camera-effects/src/gpu_tests.rs | 231 +++++++++++++++++++++++++ 3 files changed, 235 insertions(+) create mode 100644 crates/camera-effects/src/gpu_tests.rs diff --git a/Cargo.lock b/Cargo.lock index 1f89b4a265e..a7f205fd772 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1348,6 +1348,7 @@ dependencies = [ "libloading 0.9.0", "ndarray 0.16.1", "ort", + "tokio", "tracing", "wgpu", ] diff --git a/crates/camera-effects/Cargo.toml b/crates/camera-effects/Cargo.toml index 1645e02bb34..e51e1960b15 100644 --- a/crates/camera-effects/Cargo.toml +++ b/crates/camera-effects/Cargo.toml @@ -13,6 +13,9 @@ tracing.workspace = true bytemuck = { version = "1.7", features = ["derive"] } ndarray = "0.16" +[dev-dependencies] +tokio.workspace = true + [target.'cfg(any(target_os = "macos", target_os = "linux", target_os = "windows"))'.dependencies] libloading = "0.9" diff --git a/crates/camera-effects/src/gpu_tests.rs b/crates/camera-effects/src/gpu_tests.rs new file mode 100644 index 00000000000..f8b5eaecc97 --- /dev/null +++ b/crates/camera-effects/src/gpu_tests.rs @@ -0,0 +1,231 @@ +use super::*; + +async fn read_output( + device: &wgpu::Device, + queue: &wgpu::Queue, + texture: &wgpu::Texture, +) -> Vec { + let stride = (texture.width() * 4).div_ceil(256) * 256; + let buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: None, + size: u64::from(stride) * u64::from(texture.height()), + usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST, + mapped_at_creation: false, + }); + let mut encoder = device.create_command_encoder(&Default::default()); + encoder.copy_texture_to_buffer( + texture.as_image_copy(), + wgpu::TexelCopyBufferInfo { + buffer: &buffer, + layout: wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(stride), + rows_per_image: Some(texture.height()), + }, + }, + texture.size(), + ); + queue.submit([encoder.finish()]); + let (tx, rx) = tokio::sync::oneshot::channel(); + buffer + .slice(..) + .map_async(wgpu::MapMode::Read, move |result| { + let _ = tx.send(result); + }); + device.poll(wgpu::PollType::Wait).unwrap(); + rx.await.unwrap().unwrap(); + let mapped = buffer.slice(..).get_mapped_range(); + mapped + .chunks_exact(stride as usize) + .flat_map(|row| row[..texture.width() as usize * 4].iter().copied()) + .collect() +} + +#[tokio::test] +#[ignore = "requires a GPU and ONNX Runtime"] +async fn effects_preserve_foreground_alpha_and_suppress_background_detail() { + let instance = wgpu::Instance::default(); + let adapter = instance.request_adapter(&Default::default()).await.unwrap(); + let (device, queue) = adapter.request_device(&Default::default()).await.unwrap(); + let width = 640; + let height = 360; + let input = device.create_texture(&wgpu::TextureDescriptor { + label: None, + size: wgpu::Extent3d { + width, + height, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rgba8Unorm, + usage: wgpu::TextureUsages::TEXTURE_BINDING | wgpu::TextureUsages::COPY_DST, + view_formats: &[], + }); + let mut pixels = Vec::new(); + for y in 0..height { + for x in 0..width { + let pixel = if x > width / 2 { + [255, 0, 0, 255] + } else { + let value = if (x / 12 + y / 12) % 2 == 0 { 255 } else { 0 }; + [0, value, value, 255] + }; + pixels.extend_from_slice(&pixel); + } + } + queue.write_texture( + input.as_image_copy(), + &pixels, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(width * 4), + rows_per_image: Some(height), + }, + input.size(), + ); + let mut processor = BlurProcessor::new(&device, wgpu::TextureFormat::Rgba8Unorm).unwrap(); + processor.ensure_textures(&device, width, height); + processor.set_frame_synchronous(true); + processor.inference_requested = false; + processor.mask_initialized = true; + for (index, mask) in processor.mask_data.iter_mut().enumerate() { + *mask = if index % SEGMENTATION_SIZE as usize > SEGMENTATION_SIZE as usize / 2 { + 1.0 + } else { + 0.0 + }; + } + let mut blurred = Vec::new(); + for mode in [ + BlurMode::Remove, + BlurMode::Light, + BlurMode::Heavy, + BlurMode::Remove, + ] { + let output = processor.process(&device, &queue, &input, mode); + let actual = read_output(&device, &queue, output).await; + let foreground = ((height / 2 * width + width * 3 / 4) * 4) as usize; + assert_eq!(&actual[foreground..foreground + 4], &[255, 0, 0, 255]); + for y in 20..height - 20 { + for x in 20..width / 2 - 20 { + let index = ((y * width + x) * 4) as usize; + if mode == BlurMode::Remove { + assert_eq!(actual[index + 3], 0); + } else { + assert_eq!(actual[index + 3], 255); + assert!( + actual[index] <= 2, + "foreground color leaked into the background: {}", + actual[index] + ); + } + } + } + if mode != BlurMode::Remove { + let mut detail = 0.0; + for y in 40..height - 40 { + for x in 40..width / 2 - 40 { + let index = ((y * width + x) * 4 + 1) as usize; + detail += (f64::from(actual[index]) - 127.5).powi(2); + } + } + blurred.push(detail); + } + } + assert!( + blurred[1] < blurred[0] * 0.25, + "Heavy should remove more detail than Light: {blurred:?}" + ); + for (index, mask) in processor.mask_data.iter_mut().enumerate() { + let x = index % SEGMENTATION_SIZE as usize; + let y = index / SEGMENTATION_SIZE as usize; + *mask = if x > 80 + y / 3 { 1.0 } else { 0.0 }; + } + processor.mask_dirty = true; + let output = processor.process(&device, &queue, &input, BlurMode::Remove); + let diagonal = read_output(&device, &queue, output).await; + for row in diagonal + .chunks_exact(width as usize * 4) + .skip(40) + .take(height as usize - 80) + { + let alpha: Vec<_> = row.chunks_exact(4).map(|pixel| pixel[3]).collect(); + let transition_pixels = alpha + .iter() + .filter(|&&value| value > 8 && value < 247) + .count(); + assert!((3..=12).contains(&transition_pixels)); + assert!( + alpha + .windows(2) + .all(|pair| pair[0].abs_diff(pair[1]) <= 100) + ); + } + for pixel in pixels.chunks_exact_mut(4) { + pixel.copy_from_slice(&[80, 80, 80, 255]); + } + queue.write_texture( + input.as_image_copy(), + &pixels, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(width * 4), + rows_per_image: Some(height), + }, + input.size(), + ); + let output = processor.process(&device, &queue, &input, BlurMode::Remove); + let flat_color = read_output(&device, &queue, output).await; + assert!( + diagonal + .chunks_exact(4) + .zip(flat_color.chunks_exact(4)) + .all(|(before, after)| before[3] == after[3]), + "Camera texture must not add jagged detail to the cutout contour" + ); + processor.frame_time = Some(1.0); + processor.inference_requested = false; + processor.set_frame_time(1.0); + assert!(!processor.inference_requested); + processor.set_frame_time(1.0 + 1.0 / 30.0); + assert!(processor.inference_requested); + let readback_pointer = processor.readback_pixels.as_ptr(); + for value in [80, 160] { + for pixel in pixels.chunks_exact_mut(4) { + pixel.copy_from_slice(&[value, value, value, 255]); + } + queue.write_texture( + input.as_image_copy(), + &pixels, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(width * 4), + rows_per_image: Some(height), + }, + input.size(), + ); + assert!( + processor + .readback_downsampled(&device, &queue, &input, true) + .is_some() + ); + assert_eq!(processor.readback_pixels.as_ptr(), readback_pointer); + assert_eq!(processor.readback_pixels.len(), 256 * 256 * 4); + assert!( + processor + .readback_pixels + .chunks_exact(4) + .all(|pixel| pixel == [value, value, value, 255]) + ); + } + assert!(processor.mask_initialized); + processor.set_frame_time(0.5); + assert!(!processor.mask_initialized); + assert_eq!(processor.mask_status.status, BlurMaskStatus::Pending); + processor.ensure_textures(&device, 320, 180); + assert!(!processor.mask_initialized); + assert_eq!(processor.mask_status.status, BlurMaskStatus::Pending); + assert!(processor.inference_requested); +} From 0b458004bf08702df2f6bef918fc594e0fe700b5 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:49 +0100 Subject: [PATCH 030/217] test(camera): add segmentation performance benchmarks --- .../examples/benchmark-model.rs | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 crates/camera-effects/examples/benchmark-model.rs diff --git a/crates/camera-effects/examples/benchmark-model.rs b/crates/camera-effects/examples/benchmark-model.rs new file mode 100644 index 00000000000..cc4c8dee3b5 --- /dev/null +++ b/crates/camera-effects/examples/benchmark-model.rs @@ -0,0 +1,80 @@ +#[cfg(target_os = "macos")] +fn main() -> anyhow::Result<()> { + use ort::{ep, session::Session, value::TensorRef}; + use std::time::Instant; + + let args: Vec = std::env::args().collect(); + anyhow::ensure!( + args.len() == 3, + "usage: benchmark-model INPUT.rgba default|program|neural|cpu|cpu1|cpu2|cpu4" + ); + anyhow::ensure!( + matches!( + args[2].as_str(), + "default" | "program" | "neural" | "cpu" | "cpu1" | "cpu2" | "cpu4" + ), + "unknown execution provider configuration" + ); + let rgba = std::fs::read(&args[1])?; + anyhow::ensure!(rgba.len() == 256 * 256 * 4, "expected a 256x256 RGBA frame"); + cap_camera_effects::initialize_onnx_runtime()?; + let mut provider = ep::CoreML::default(); + if args[2] == "program" || args[2] == "neural" { + provider = provider.with_model_format(ep::coreml::ModelFormat::MLProgram); + } + if args[2] == "neural" { + provider = provider.with_compute_units(ep::coreml::ComputeUnits::CPUAndNeuralEngine); + } + let start = Instant::now(); + let mut builder = Session::builder()? + .with_intra_op_spinning(false) + .map_err(|error| anyhow::anyhow!("{error}"))? + .with_inter_op_spinning(false) + .map_err(|error| anyhow::anyhow!("{error}"))?; + if let Some(threads) = args[2] + .strip_prefix("cpu") + .filter(|value| !value.is_empty()) + { + builder = builder + .with_intra_threads(threads.parse()?) + .map_err(|error| anyhow::anyhow!("{error}"))?; + } + if !args[2].starts_with("cpu") { + builder = builder + .with_execution_providers([provider.build().error_on_failure()]) + .map_err(|error| anyhow::anyhow!("{error}"))?; + } + let mut session = + builder.commit_from_memory(include_bytes!("../assets/selfie_segmentation.onnx"))?; + eprintln!("init_ms={:.2}", start.elapsed().as_secs_f64() * 1000.0); + let mut input = vec![0.0_f32; 3 * 256 * 256]; + for (index, pixel) in rgba.chunks_exact(4).enumerate() { + for (channel, &value) in pixel.iter().take(3).enumerate() { + input[channel * 256 * 256 + index] = f32::from(value) / 255.0; + } + } + let mut timings = Vec::new(); + for _ in 0..120 { + let value = TensorRef::from_array_view(([1usize, 3, 256, 256], input.as_slice()))?; + let start = Instant::now(); + let output = session.run(ort::inputs!["pixel_values" => value])?; + let (_, mask) = output["alphas"].try_extract_tensor::()?; + anyhow::ensure!( + mask.len() == 256 * 256 && mask.iter().all(|value| value.is_finite()), + "invalid mask" + ); + timings.push(start.elapsed().as_secs_f64() * 1000.0); + } + timings.remove(0); + timings.sort_by(f64::total_cmp); + eprintln!( + "{} p50_ms={:.2} p95_ms={:.2}", + args[2], timings[59], timings[113] + ); + Ok(()) +} + +#[cfg(not(target_os = "macos"))] +fn main() { + eprintln!("This benchmark compares macOS execution providers."); +} From b8844eefdc1b4784a3f10be19f798d6b46217ae8 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:49 +0100 Subject: [PATCH 031/217] test(camera): add image and video effect probes --- .../camera-effects/examples/process-frame.rs | 117 ++++++++++++++++++ .../camera-effects/examples/process-video.rs | 116 +++++++++++++++++ 2 files changed, 233 insertions(+) create mode 100644 crates/camera-effects/examples/process-frame.rs create mode 100644 crates/camera-effects/examples/process-video.rs diff --git a/crates/camera-effects/examples/process-frame.rs b/crates/camera-effects/examples/process-frame.rs new file mode 100644 index 00000000000..9cce6e2e41b --- /dev/null +++ b/crates/camera-effects/examples/process-frame.rs @@ -0,0 +1,117 @@ +use anyhow::{Context, ensure}; +use cap_camera_effects::{BlurMode, BlurProcessor}; +use std::time::{Duration, Instant}; + +#[tokio::main] +async fn main() -> anyhow::Result<()> { + let args: Vec = std::env::args().collect(); + ensure!( + args.len() == 6, + "usage: process-frame INPUT.rgba WIDTH HEIGHT light|heavy|remove OUTPUT.rgba" + ); + let width: u32 = args[2].parse()?; + let height: u32 = args[3].parse()?; + let mode = match args[4].as_str() { + "light" => BlurMode::Light, + "heavy" => BlurMode::Heavy, + "remove" => BlurMode::Remove, + _ => anyhow::bail!("unknown effect"), + }; + let pixels = std::fs::read(&args[1])?; + ensure!( + pixels.len() == (width * height * 4) as usize, + "invalid frame size" + ); + let instance = wgpu::Instance::default(); + let adapter = instance.request_adapter(&Default::default()).await?; + println!("adapter: {:?}", adapter.get_info()); + let (device, queue) = adapter.request_device(&Default::default()).await?; + let input = device.create_texture(&wgpu::TextureDescriptor { + label: Some("Camera effect verification input"), + size: wgpu::Extent3d { + width, + height, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rgba8Unorm, + usage: wgpu::TextureUsages::TEXTURE_BINDING | wgpu::TextureUsages::COPY_DST, + view_formats: &[], + }); + queue.write_texture( + input.as_image_copy(), + &pixels, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(width * 4), + rows_per_image: Some(height), + }, + input.size(), + ); + let start = Instant::now(); + let mut processor = BlurProcessor::new(&device, wgpu::TextureFormat::Rgba8Unorm)?; + println!( + "initialization_ms: {:.2}", + start.elapsed().as_secs_f64() * 1000.0 + ); + processor.set_inference_interval(Duration::ZERO); + processor.set_frame_synchronous(true); + let mut timings = Vec::new(); + for frame in 0..60 { + processor.set_frame_time(frame as f32 / 30.0); + let start = Instant::now(); + let _ = processor.process(&device, &queue, &input, mode); + device.poll(wgpu::PollType::Wait)?; + timings.push(start.elapsed().as_secs_f64() * 1000.0); + } + println!("first_frame_ms: {:.2}", timings[0]); + timings.remove(0); + timings.sort_by(f64::total_cmp); + println!( + "frame_ms p50={:.2} p95={:.2}", + timings[timings.len() / 2], + timings[timings.len() * 95 / 100] + ); + println!("status: {:?}", processor.output_status()); + let output = processor + .process_returning_output() + .context("missing output")?; + let stride = (width * 4).div_ceil(256) * 256; + let buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: Some("Camera effect verification readback"), + size: u64::from(stride) * u64::from(height), + usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST, + mapped_at_creation: false, + }); + let mut encoder = device.create_command_encoder(&Default::default()); + encoder.copy_texture_to_buffer( + output.as_image_copy(), + wgpu::TexelCopyBufferInfo { + buffer: &buffer, + layout: wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(stride), + rows_per_image: Some(height), + }, + }, + output.size(), + ); + queue.submit([encoder.finish()]); + let (tx, rx) = std::sync::mpsc::channel(); + buffer + .slice(..) + .map_async(wgpu::MapMode::Read, move |result| { + let _ = tx.send(result); + }); + device.poll(wgpu::PollType::Wait)?; + rx.recv()??; + let mapped = buffer.slice(..).get_mapped_range(); + let mut rgba = Vec::with_capacity(pixels.len()); + for row in mapped.chunks_exact(stride as usize) { + rgba.extend_from_slice(&row[..(width * 4) as usize]); + } + std::fs::write(&args[5], rgba)?; + Ok(()) +} diff --git a/crates/camera-effects/examples/process-video.rs b/crates/camera-effects/examples/process-video.rs new file mode 100644 index 00000000000..47919fc620f --- /dev/null +++ b/crates/camera-effects/examples/process-video.rs @@ -0,0 +1,116 @@ +use anyhow::ensure; +use cap_camera_effects::{BlurMode, BlurProcessor}; +use std::io::{Read, Write}; +use std::time::{Duration, Instant}; + +#[tokio::main] +async fn main() -> anyhow::Result<()> { + let args: Vec = std::env::args().collect(); + ensure!( + args.len() == 4, + "usage: process-video WIDTH HEIGHT light|heavy|remove < input.rgba > output.rgba" + ); + let width: u32 = args[1].parse()?; + let height: u32 = args[2].parse()?; + let mode = match args[3].as_str() { + "light" => BlurMode::Light, + "heavy" => BlurMode::Heavy, + "remove" => BlurMode::Remove, + _ => anyhow::bail!("unknown effect"), + }; + let mut pixels = vec![0; (width * height * 4) as usize]; + let mut stdin = std::io::stdin().lock(); + let mut stdout = std::io::stdout().lock(); + let instance = wgpu::Instance::default(); + let adapter = instance.request_adapter(&Default::default()).await?; + eprintln!("adapter: {:?}", adapter.get_info()); + let (device, queue) = adapter.request_device(&Default::default()).await?; + let input = device.create_texture(&wgpu::TextureDescriptor { + label: Some("Camera effect verification input"), + size: wgpu::Extent3d { + width, + height, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rgba8Unorm, + usage: wgpu::TextureUsages::TEXTURE_BINDING | wgpu::TextureUsages::COPY_DST, + view_formats: &[], + }); + let start = Instant::now(); + let mut processor = BlurProcessor::new(&device, wgpu::TextureFormat::Rgba8Unorm)?; + eprintln!( + "initialization_ms: {:.2}", + start.elapsed().as_secs_f64() * 1000.0 + ); + processor.set_inference_interval(Duration::ZERO); + processor.set_frame_synchronous(true); + let stride = (width * 4).div_ceil(256) * 256; + let buffer = device.create_buffer(&wgpu::BufferDescriptor { + label: Some("Camera effect verification readback"), + size: u64::from(stride) * u64::from(height), + usage: wgpu::BufferUsages::MAP_READ | wgpu::BufferUsages::COPY_DST, + mapped_at_creation: false, + }); + let mut timings = Vec::new(); + let mut frame = 0; + while stdin.read_exact(&mut pixels).is_ok() { + queue.write_texture( + input.as_image_copy(), + &pixels, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(width * 4), + rows_per_image: Some(height), + }, + input.size(), + ); + processor.set_frame_time(frame as f32 / 30.0); + let start = Instant::now(); + let output = processor.process(&device, &queue, &input, mode); + let mut encoder = device.create_command_encoder(&Default::default()); + encoder.copy_texture_to_buffer( + output.as_image_copy(), + wgpu::TexelCopyBufferInfo { + buffer: &buffer, + layout: wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(stride), + rows_per_image: Some(height), + }, + }, + output.size(), + ); + queue.submit([encoder.finish()]); + let (tx, rx) = std::sync::mpsc::channel(); + buffer + .slice(..) + .map_async(wgpu::MapMode::Read, move |result| { + let _ = tx.send(result); + }); + device.poll(wgpu::PollType::Wait)?; + rx.recv()??; + let mapped = buffer.slice(..).get_mapped_range(); + let mut rgba = Vec::with_capacity(pixels.len()); + for row in mapped.chunks_exact(stride as usize) { + rgba.extend_from_slice(&row[..(width * 4) as usize]); + } + drop(mapped); + buffer.unmap(); + timings.push(start.elapsed().as_secs_f64() * 1000.0); + stdout.write_all(&rgba)?; + frame += 1; + } + ensure!(timings.len() > 1, "at least two frames required"); + eprintln!("first_frame_ms: {:.2}", timings.remove(0)); + timings.sort_by(f64::total_cmp); + eprintln!( + "frames={} p50_ms={:.2} p95_ms={:.2}", + frame, + timings[timings.len() / 2], + timings[timings.len() * 95 / 100] + ); + Ok(()) +} From 4042b296df4c7fd73377e773e8b6ed1ee4a023cd Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:49 +0100 Subject: [PATCH 032/217] test(camera): add a resource soak harness --- .../camera-effects/examples/soak-effects.rs | 205 ++++++++++++++++++ 1 file changed, 205 insertions(+) create mode 100644 crates/camera-effects/examples/soak-effects.rs diff --git a/crates/camera-effects/examples/soak-effects.rs b/crates/camera-effects/examples/soak-effects.rs new file mode 100644 index 00000000000..139d15a3447 --- /dev/null +++ b/crates/camera-effects/examples/soak-effects.rs @@ -0,0 +1,205 @@ +use anyhow::{Context, ensure}; +use cap_camera_effects::{BlurMode, BlurProcessor}; +use std::time::{Duration, Instant}; + +fn heap_mib() -> Option<[f64; 2]> { + #[cfg(target_os = "macos")] + { + #[repr(C)] + #[derive(Default)] + struct MallocStatistics { + blocks_in_use: u32, + size_in_use: usize, + max_size_in_use: usize, + size_allocated: usize, + } + unsafe extern "C" { + fn malloc_zone_statistics( + zone: *mut std::ffi::c_void, + statistics: *mut MallocStatistics, + ); + } + let mut statistics = MallocStatistics::default(); + unsafe { malloc_zone_statistics(std::ptr::null_mut(), &mut statistics) }; + Some([ + statistics.size_in_use as f64 / 1_048_576.0, + statistics.size_allocated as f64 / 1_048_576.0, + ]) + } + #[cfg(not(target_os = "macos"))] + None +} + +fn resources(instance: &wgpu::Instance) -> [usize; 8] { + let hub = instance.generate_report().expect("native GPU report").hub; + [ + hub.buffers, + hub.textures, + hub.texture_views, + hub.bind_groups, + hub.render_pipelines, + hub.samplers, + hub.shader_modules, + hub.command_buffers, + ] + .map(|entry| entry.num_kept_from_user) +} + +async fn setup_device( + adapter: &wgpu::Adapter, + pixels: &[u8], + width: u32, + height: u32, +) -> anyhow::Result<(wgpu::Device, wgpu::Queue, Vec)> { + let (device, queue) = adapter.request_device(&Default::default()).await?; + let mut inputs = Vec::new(); + for scale in [1, 3] { + let (w, h) = (width * scale, height * scale); + let input = device.create_texture(&wgpu::TextureDescriptor { + label: Some("Camera effect soak input"), + size: wgpu::Extent3d { + width: w, + height: h, + depth_or_array_layers: 1, + }, + mip_level_count: 1, + sample_count: 1, + dimension: wgpu::TextureDimension::D2, + format: wgpu::TextureFormat::Rgba8Unorm, + usage: wgpu::TextureUsages::TEXTURE_BINDING | wgpu::TextureUsages::COPY_DST, + view_formats: &[], + }); + let mut scaled = Vec::with_capacity((w * h * 4) as usize); + for y in 0..h { + for x in 0..w { + let index = ((y / scale * width + x / scale) * 4) as usize; + scaled.extend_from_slice(&pixels[index..index + 4]); + } + } + queue.write_texture( + input.as_image_copy(), + &scaled, + wgpu::TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some(w * 4), + rows_per_image: Some(h), + }, + input.size(), + ); + inputs.push(input); + } + queue.submit([]); + device.poll(wgpu::PollType::Wait)?; + Ok((device, queue, inputs)) +} + +#[tokio::main] +async fn main() -> anyhow::Result<()> { + let args: Vec = std::env::args().collect(); + ensure!( + args.len() == 7, + "usage: soak-effects INPUT.rgba WIDTH HEIGHT SECONDS_PER_CYCLE CYCLES preview|studio|recreate" + ); + let width: u32 = args[2].parse()?; + let height: u32 = args[3].parse()?; + let seconds: u64 = args[4].parse()?; + let cycles: usize = args[5].parse()?; + let synchronous = match args[6].as_str() { + "preview" | "recreate" => false, + "studio" => true, + _ => anyhow::bail!("unknown processing mode"), + }; + ensure!(width > 0 && height > 0 && seconds > 0 && cycles > 0); + let pixels = std::fs::read(&args[1])?; + ensure!(pixels.len() == (width * height * 4) as usize); + let instance = wgpu::Instance::default(); + let adapter = instance.request_adapter(&Default::default()).await?; + let empty = resources(&instance); + let mut gpu = None; + println!( + "pid={} empty={empty:?} heap_mib={:?}", + std::process::id(), + heap_mib() + ); + let started = Instant::now(); + let frame_interval = Duration::from_secs_f64(1.0 / 30.0); + for cycle in 0..cycles { + if gpu.is_none() { + gpu = Some(setup_device(&adapter, &pixels, width, height).await?); + } + let (device, queue, inputs) = gpu.as_ref().expect("device initialized above"); + let baseline = resources(&instance); + let mut processor = BlurProcessor::new(device, wgpu::TextureFormat::Rgba8Unorm)?; + processor.set_frame_synchronous(synchronous); + processor.set_inference_interval(Duration::from_millis(33)); + let cycle_start = Instant::now(); + let mut frame = 0; + let mut processing_ms = 0.0; + while cycle_start.elapsed() < Duration::from_secs(seconds) { + let frame_start = Instant::now(); + let mode = match frame / 60 % 3 { + 0 => BlurMode::Remove, + 1 => BlurMode::Light, + _ => BlurMode::Heavy, + }; + let input = &inputs[frame / 150 % inputs.len()]; + if synchronous { + processor.set_frame_time(frame as f32 / 30.0); + } + let _ = processor.process(device, queue, input, mode); + device.poll(wgpu::PollType::Wait)?; + processor + .output_status() + .context("missing output status")? + .applied_at(Instant::now(), Duration::from_secs(1)) + .map_err(|error| anyhow::anyhow!("effect output unavailable: {error:?}"))?; + processing_ms += frame_start.elapsed().as_secs_f64() * 1000.0; + frame += 1; + if frame % 150 == 0 { + println!( + "active cycle={cycle} elapsed={:.2} frames={frame} mean_ms={:.2} resources={:?} heap_mib={:?}", + started.elapsed().as_secs_f64(), + processing_ms / frame as f64, + resources(&instance), + heap_mib(), + ); + } + std::thread::sleep(frame_interval.saturating_sub(frame_start.elapsed())); + } + drop(processor); + queue.submit([]); + device.poll(wgpu::PollType::Wait)?; + let released = resources(&instance); + println!( + "released cycle={cycle} elapsed={:.2} frames={frame} resources={released:?} heap_mib={:?}", + started.elapsed().as_secs_f64(), + heap_mib(), + ); + ensure!( + released == baseline, + "GPU resources retained after teardown" + ); + if args[6] == "recreate" { + gpu = None; + let released = resources(&instance); + println!( + "device_released cycle={cycle} resources={released:?} heap_mib={:?}", + heap_mib() + ); + ensure!( + released == empty, + "GPU resources retained after device teardown" + ); + } + std::thread::sleep(Duration::from_secs(2)); + } + println!( + "complete elapsed={:.2} heap_mib={:?}", + started.elapsed().as_secs_f64(), + heap_mib() + ); + if let Ok(seconds) = std::env::var("CAP_EFFECTS_SOAK_HOLD_SECONDS") { + std::thread::sleep(Duration::from_secs(seconds.parse()?)); + } + Ok(()) +} From db3de3f008e86b953d16e8a408f1769ecbce4bad Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:49 +0100 Subject: [PATCH 033/217] build(media): optimize audio and camera effects in development --- Cargo.toml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index 91e45dbbdc9..0aa206efbb2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -103,6 +103,12 @@ debug = 1 [profile.dev.package."*"] debug = 0 +[profile.dev.package.cap-camera-effects] +opt-level = 2 + +[profile.dev.package.cap-audio] +opt-level = 2 + # Optimize for smaller binary size [profile.release] panic = "unwind" From 409b60a1112eae95c28a6d734f6d8fb1f2f68d1c Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:50 +0100 Subject: [PATCH 034/217] feat(rendering): fade cursors across hidden clip boundaries --- crates/rendering/src/layers/click_ripple.rs | 6 ++-- crates/rendering/src/layers/cursor.rs | 4 ++- crates/rendering/src/lib.rs | 35 +++++++++++++++++++++ 3 files changed, 42 insertions(+), 3 deletions(-) diff --git a/crates/rendering/src/layers/click_ripple.rs b/crates/rendering/src/layers/click_ripple.rs index 895ff060690..cf3b76dd476 100644 --- a/crates/rendering/src/layers/click_ripple.rs +++ b/crates/rendering/src/layers/click_ripple.rs @@ -148,7 +148,8 @@ impl ClickRippleLayer { pub fn prepare(&mut self, uniforms: &ProjectUniforms, constants: &RenderVideoConstants) { self.instance_count = 0; - if uniforms.click_ripples.is_empty() { + let clip_visibility = uniforms.cursor_clip_visibility.clamp(0.0, 1.0); + if uniforms.click_ripples.is_empty() || clip_visibility <= f32::EPSILON { return; } @@ -188,7 +189,8 @@ impl ClickRippleLayer { continue; } - let (position_size, opacity) = placement.map(position_uv, size, hotspot, 1.0); + let (position_size, opacity) = + placement.map(position_uv, size, hotspot, clip_visibility); if !position_size.iter().all(|v| v.is_finite()) { continue; } diff --git a/crates/rendering/src/layers/cursor.rs b/crates/rendering/src/layers/cursor.rs index 5e7ebe6ccdf..fce5bcd35a6 100644 --- a/crates/rendering/src/layers/cursor.rs +++ b/crates/rendering/src/layers/cursor.rs @@ -444,7 +444,8 @@ impl CursorLayer { uniforms: &ProjectUniforms, constants: &RenderVideoConstants, ) { - if uniforms.project.cursor.hide { + let clip_visibility = uniforms.cursor_clip_visibility.clamp(0.0, 1.0); + if uniforms.project.cursor.hide || clip_visibility <= f32::EPSILON { self.bind_group = None; return; } @@ -515,6 +516,7 @@ impl CursorLayer { cursor_opacity = 0.0; } } + cursor_opacity *= clip_visibility; let cursor_type = uniforms.project.cursor.cursor_type().clone(); diff --git a/crates/rendering/src/lib.rs b/crates/rendering/src/lib.rs index f68a460fec0..9d6a7d70c97 100644 --- a/crates/rendering/src/lib.rs +++ b/crates/rendering/src/lib.rs @@ -2421,6 +2421,9 @@ pub struct ProjectUniforms { display_outer_bounds: [f32; 4], interpolated_cursor: Option, pub prev_cursor: Option, + /// 0..1 multiplier from clips that hide the cursor (with the fade at + /// their edges); the cursor and click-ripple layers scale by it. + pub cursor_clip_visibility: f32, pub click_ripples: Vec, pub project: ProjectConfiguration, pub zoom: InterpolatedZoom, @@ -3563,6 +3566,7 @@ impl ProjectUniforms { let fps_f32 = fps.max(1) as f32; let timeline_time = f64::from(frame_number) / f64::from(fps.max(1)); let frame_time = timeline_time as f32; + let cursor_clip_visibility = project.cursor_visibility_at(timeline_time) as f32; let camera_only_padding = project.camera_only_padding_at(timeline_time); let base_crop = Self::get_crop(options, project); let base_padding = project.background.padding; @@ -4632,6 +4636,7 @@ impl ProjectUniforms { frame_number, recording_time: current_recording_time as f64, prev_cursor: prev_interpolated_cursor, + cursor_clip_visibility, click_ripples, display_parent_motion_px: display_motion_parent, motion_blur_amount: cursor_motion_blur, @@ -5513,6 +5518,36 @@ mod style_image_tests { assert_eq!(camera.opacity, 0.0); assert_eq!(camera.shadow, 0.0); assert_eq!(camera.shadow_opacity, 0.0); + + // A clip that hides the cursor reaches the layers as a 0..1 multiplier + // on the uniforms: full on the first clip, zero deep inside the hidden + // one, ramping in between. + let timeline = project.timeline.as_mut().expect("timeline"); + timeline.text_segments.clear(); + timeline.segments = serde_json::from_value(serde_json::json!([ + { "recordingSegment": 0, "timescale": 1.0, "start": 0.0, "end": 1.5 }, + { "recordingSegment": 0, "timescale": 1.0, "start": 1.5, "end": 3.0, "hideCursor": true } + ])) + .expect("clip segments"); + let visibility_at = |frame_number: u32| { + ProjectUniforms::new( + &constants, + &project, + frame_number, + 60, + XY::new(160, 90), + &cursor, + &frames, + 3.0, + &zoom, + ) + .cursor_clip_visibility + }; + assert_eq!(visibility_at(30), 1.0); + assert_eq!(visibility_at(89), 1.0); + let ramp = visibility_at(96); + assert!(ramp > 0.0 && ramp < 1.0, "{ramp}"); + assert_eq!(visibility_at(150), 0.0); std::fs::remove_dir_all(directory).expect("remove test assets"); } } From d0f9750dd87167593a83ddcb2cfe5b7398dc3b2d Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:50 +0100 Subject: [PATCH 035/217] fix(rendering): base camera transition blur on frame motion --- crates/rendering/src/lib.rs | 25 +++----- crates/rendering/src/scene.rs | 105 ++++++++++++++++++++++------------ 2 files changed, 76 insertions(+), 54 deletions(-) diff --git a/crates/rendering/src/lib.rs b/crates/rendering/src/lib.rs index 9d6a7d70c97..a7fd3c7120d 100644 --- a/crates/rendering/src/lib.rs +++ b/crates/rendering/src/lib.rs @@ -2867,10 +2867,6 @@ const MAX_ZOOM_BLUR_AMOUNT: f32 = 0.5; const DISPLAY_MOVE_MULTIPLIER: f32 = 1.0; const DISPLAY_ZOOM_MULTIPLIER: f32 = 1.0; const CAMERA_MULTIPLIER: f32 = 1.0; -const CAMERA_ONLY_MULTIPLIER: f32 = 0.45; -/// Ceiling for synthetic transition blur (scene morphs, camera-only -/// entrances). These are art-directed effects that predate the proportional -/// model and are tuned to their own visual scale, not to real velocity. const TRANSITION_ZOOM_CAP: f32 = 0.08; #[derive(Clone, Copy, Debug, PartialEq, Eq)] @@ -3286,9 +3282,6 @@ impl ProjectUniforms { analysis.size_delta_px /= frame_span; analysis.zoom_magnitude /= frame_span; if extra_zoom > 0.0 { - // Scene transitions inject synthetic radial blur; they also move - // the bounds a lot, so force the zoom branch past the dominance - // check or the pan delta would win and hide it. analysis.zoom_magnitude = (analysis.zoom_magnitude + extra_zoom).min(3.0); analysis.prefer_zoom = true; } @@ -3876,7 +3869,11 @@ impl ProjectUniforms { let (prev_start, prev_end) = Self::display_bounds(&motion_prev_zoom, display_offset, display_size); - let scene_blur_strength = (scene.screen_blur as f32 * 0.8).min(1.2); + let scene_blur_strength = if options.camera_size.is_some() && !project.camera.hide { + scene.camera_only_motion(&prev_scene) + } else { + 0.0 + }; // An instant-animation zoom snap is a deliberate hard cut; the // bounds delta across it is not motion, so blurring it would smear @@ -4508,20 +4505,14 @@ impl ProjectUniforms { let crop_bounds = inset_crop_bounds(crop_bounds, frame_size, CAMERA_EDGE_CROP_INSET_PX); - let camera_only_blur = (scene.camera_only_blur as f32 - * CAMERA_ONLY_MULTIPLIER - * normalized_screen_motion) - .clamp(0.0, 1.0); + let camera_only_blur = + scene.camera_only_motion(&prev_scene) * normalized_screen_motion; let camera_only_descriptor = if camera_only_blur <= f32::EPSILON { MotionBlurDescriptor::none() } else { - // Synthetic transition blur (not velocity-derived): keep - // its ray length on the old visual scale — the shader no - // longer softens via a sharp/blur crossfade, so the - // amount alone sets the look. MotionBlurDescriptor::zoom( XY::new(0.5, 0.5), - (camera_only_blur * 0.75).min(TRANSITION_ZOOM_CAP), + camera_only_blur.min(TRANSITION_ZOOM_CAP), 1.0, ) }; diff --git a/crates/rendering/src/scene.rs b/crates/rendering/src/scene.rs index acb5dae7a97..6c12e8152a8 100644 --- a/crates/rendering/src/scene.rs +++ b/crates/rendering/src/scene.rs @@ -67,9 +67,7 @@ pub struct InterpolatedScene { pub transition_progress: f64, pub from_mode: SceneMode, pub to_mode: SceneMode, - pub screen_blur: f64, pub camera_only_zoom: f64, - pub camera_only_blur: f64, /// 0.0 = no split layout, 1.0 = fully side-by-side. Ramps with /// `transition_progress` when entering/leaving [`SceneMode::SplitScreen`] /// or [`SceneMode::Floating`] so the compositor morphs the screen+camera @@ -95,9 +93,7 @@ impl InterpolatedScene { transition_progress: 1.0, from_mode: scene_mode, to_mode: scene_mode, - screen_blur: 0.0, camera_only_zoom: 1.0, - camera_only_blur: 0.0, split_factor: if is_split_mode(&scene_mode) { 1.0 } else { 0.0 }, floating_factor: if matches!(scene_mode, SceneMode::Floating) { 1.0 @@ -234,24 +230,6 @@ impl InterpolatedScene { ); let camera_scale = Self::lerp(start_camera_scale, end_camera_scale, transition_progress); - let screen_blur = if matches!(current_mode, SceneMode::CameraOnly) - || matches!(next_mode, SceneMode::CameraOnly) - { - if matches!(current_mode, SceneMode::CameraOnly) - && !matches!(next_mode, SceneMode::CameraOnly) - { - Self::lerp(1.0, 0.0, transition_progress) - } else if !matches!(current_mode, SceneMode::CameraOnly) - && matches!(next_mode, SceneMode::CameraOnly) - { - transition_progress - } else { - 0.0 - } - } else { - 0.0 - }; - let camera_only_zoom = if matches!(next_mode, SceneMode::CameraOnly) && !matches!(current_mode, SceneMode::CameraOnly) { @@ -264,18 +242,6 @@ impl InterpolatedScene { 1.0 }; - let camera_only_blur = if matches!(next_mode, SceneMode::CameraOnly) - && !matches!(current_mode, SceneMode::CameraOnly) - { - Self::lerp(1.0, 0.0, transition_progress) - } else if matches!(current_mode, SceneMode::CameraOnly) - && !matches!(next_mode, SceneMode::CameraOnly) - { - transition_progress - } else { - 0.0 - }; - let from_split = is_split_mode(¤t_mode); let to_split = is_split_mode(&next_mode); let split_factor = match (from_split, to_split) { @@ -306,9 +272,7 @@ impl InterpolatedScene { transition_progress, from_mode: current_mode, to_mode: next_mode, - screen_blur, camera_only_zoom, - camera_only_blur, split_factor, floating_factor, } @@ -335,7 +299,7 @@ impl InterpolatedScene { } pub fn should_render_screen(&self) -> bool { - self.screen_opacity > 0.01 || self.screen_blur > 0.01 + self.screen_opacity > 0.01 } pub fn is_split(&self) -> bool { @@ -365,6 +329,19 @@ impl InterpolatedScene { } } + pub fn camera_only_motion(&self, previous: &Self) -> f32 { + if matches!(self.from_mode, SceneMode::CameraOnly) + == matches!(self.to_mode, SceneMode::CameraOnly) + { + return 0.0; + } + + // The invisible camera jumps to 1.1x at entry. Opacity tracks the + // continuous part of that 10% zoom without counting the jump as motion. + ((self.camera_only_transition_opacity() - previous.camera_only_transition_opacity()).abs() + * 0.1) as f32 + } + pub fn regular_camera_transition_opacity(&self) -> f64 { if matches!(self.to_mode, SceneMode::CameraOnly) && !matches!(self.from_mode, SceneMode::CameraOnly) @@ -385,3 +362,57 @@ impl InterpolatedScene { } } } + +#[cfg(test)] +mod tests { + use super::*; + + fn scene_at(time: f64, segments: &[SceneSegment]) -> InterpolatedScene { + InterpolatedScene::new(SceneSegmentsCursor::new(time, segments)) + } + + fn camera_scene(transition: f64) -> SceneSegment { + SceneSegment { + start: 2.0, + end: 5.0, + mode: SceneMode::CameraOnly, + split_layout: None, + transition_in: transition, + transition_out: transition, + } + } + + #[test] + fn camera_only_blur_tracks_motion_at_both_boundaries() { + let segments = [camera_scene(0.3)]; + for fps in [30, 60, 120] { + let motion_at = |frame: u32| { + let scene = scene_at(f64::from(frame) / f64::from(fps), &segments); + let previous = scene_at(f64::from(frame - 1) / f64::from(fps), &segments); + scene.camera_only_motion(&previous) * fps as f32 / 60.0 + }; + let peak = (fps..6 * fps).map(motion_at).fold(0.0_f32, f32::max); + assert!(peak > 0.005 && peak < 0.011, "{fps} fps: {peak}"); + for time in [1.7, 2.0, 4.7, 5.0] { + let frame = (time * f64::from(fps)).round() as u32; + assert!(motion_at(frame) < 0.003, "{fps} fps at {time}"); + assert!(motion_at(frame + 1) < 0.003, "{fps} fps after {time}"); + } + for time in [1, 3, 6] { + assert_eq!(motion_at(time * fps), 0.0); + } + } + } + + #[test] + fn camera_only_cuts_and_contiguous_scenes_do_not_blur() { + let mut segments = [camera_scene(0.0), camera_scene(0.3)]; + segments[1].start = segments[0].end; + segments[1].end = 8.0; + for time in [2.0, 4.99, 5.0, 5.01] { + let scene = scene_at(time, &segments); + let previous = scene_at(time - 1.0 / 60.0, &segments); + assert_eq!(scene.camera_only_motion(&previous), 0.0); + } + } +} From 0ac4e5c562317ac17560f39d2b9cf3f447fd766d Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:50 +0100 Subject: [PATCH 036/217] fix(rendering): preserve cutout edges and camera-only backgrounds --- crates/rendering/src/layers/camera.rs | 4 + crates/rendering/src/lib.rs | 280 +++++++++++++++++- .../src/shaders/composite-video-frame.wgsl | 28 ++ 3 files changed, 307 insertions(+), 5 deletions(-) diff --git a/crates/rendering/src/layers/camera.rs b/crates/rendering/src/layers/camera.rs index 4558de2f914..06163a9f94f 100644 --- a/crates/rendering/src/layers/camera.rs +++ b/crates/rendering/src/layers/camera.rs @@ -528,6 +528,10 @@ impl CameraLayer { } } + pub fn source_time_for_blur(&self) -> Option { + self.last_recording_time.filter(|_| !self.hidden) + } + pub fn source_texture_for_blur(&self) -> Option<&wgpu::Texture> { if self.hidden || self.last_recording_time.is_none() { return None; diff --git a/crates/rendering/src/lib.rs b/crates/rendering/src/lib.rs index a7fd3c7120d..3ee3482c2e3 100644 --- a/crates/rendering/src/lib.rs +++ b/crates/rendering/src/lib.rs @@ -2346,6 +2346,11 @@ fn compute_camera_position( ]; } + let camera_padding = if camera.background_blur.removes_background() { + 0.0 + } else { + camera_padding + }; let x = match &camera.position.x { CameraXPosition::Left => camera_padding, CameraXPosition::Center => output_size[0] / 2.0 - subject_size[0] / 2.0, @@ -3262,6 +3267,13 @@ impl ProjectUniforms { (start, end) } + fn camera_background_effect_mode(&self) -> Option { + blur_mode_from_config(&self.project.camera.background_blur).filter(|mode| { + *mode != cap_camera_effects::BlurMode::Remove + || (self.camera.is_some() && self.scene.regular_camera_transition_opacity() > 0.01) + }) + } + fn compute_display_motion_blur( current: MotionBounds, previous: MotionBounds, @@ -4580,6 +4592,17 @@ impl ProjectUniforms { grain_params: camera_color_grade.grain_params, } }); + let cutout_uniforms = |mut uniforms: CompositeVideoFrameUniforms| { + if project.camera.background_blur.removes_background() { + uniforms.preserve_source_alpha = 1.0; + uniforms.rounding_px = 0.0; + uniforms.shadow = 0.0; + uniforms.shadow_opacity = 0.0; + uniforms.border_enabled = 0.0; + } + uniforms + }; + let camera = camera.map(cutout_uniforms); let masks = project .timeline @@ -5138,6 +5161,55 @@ mod tests { assert_eq!(position, [1470.0, 630.0]); } + #[test] + fn camera_position_presets_keep_cutouts_flush_at_every_size() { + for output in [[1920.0, 1080.0], [1080.0, 1920.0], [1280.0, 720.0]] { + for subject in [[200.0, 200.0], [400.0, 250.0], [650.0, 650.0]] { + for x in [ + CameraXPosition::Left, + CameraXPosition::Center, + CameraXPosition::Right, + ] { + for y in [CameraYPosition::Top, CameraYPosition::Bottom] { + let mut camera = Camera::default(); + camera.position = cap_project::CameraPosition { + x: x.clone(), + y: y.clone(), + }; + camera.background_blur.mode = cap_project::BackgroundBlurMode::Remove; + let padding = if cfg!(target_os = "macos") { 0.0 } else { 50.0 }; + let expected_x = match x { + CameraXPosition::Left => padding, + CameraXPosition::Center => (output[0] - subject[0]) / 2.0, + CameraXPosition::Right => output[0] - subject[0] - padding, + }; + let expected_y = match y { + CameraYPosition::Top => padding, + CameraYPosition::Bottom => output[1] - subject[1] - padding, + }; + assert_eq!( + compute_camera_position(&camera, output, subject, 50.0), + [expected_x, expected_y] + ); + } + } + } + } + } + + #[test] + fn cutout_manual_camera_position_remains_free() { + let mut camera = Camera { + manual_position: Some(XY::new(0.5, 0.5)), + ..Camera::default() + }; + camera.background_blur.mode = cap_project::BackgroundBlurMode::Remove; + assert_eq!( + compute_camera_position(&camera, [1920.0, 1080.0], [400.0, 400.0], 50.0), + [760.0, 340.0] + ); + } + #[test] fn display_zoom_blur_is_symmetric_in_and_out() { // Screen Studio treats zoom-in and zoom-out identically: the radial @@ -5307,6 +5379,174 @@ mod style_image_tests { use super::*; use cap_project::{BackgroundSource, ImageSegment, StyleOverrides, StyleSegment}; + #[tokio::test] + async fn camera_only_ignores_cutout_and_preserves_background_blur() { + let recording_meta: RecordingMeta = serde_json::from_value(serde_json::json!({ + "pretty_name": "camera-only-cutout", + "display": { "path": "display.mp4", "fps": 60 }, + "camera": { "path": "camera.mp4", "fps": 60 }, + "audio": null, "cursor": null + })) + .expect("metadata"); + let meta = recording_meta.studio_meta().expect("studio").clone(); + let size = XY::new(160, 90); + let constants = RenderVideoConstants::new_with_options( + RenderOptions { + screen_size: size, + camera_size: Some(size), + preserve_screen_alpha: false, + }, + recording_meta, + meta, + ) + .await + .expect("graphics device"); + let mut project = ProjectConfiguration::default(); + project.background.source = BackgroundSource::Color { + value: [0, 255, 0], + alpha: 255, + }; + project.camera.background_blur.mode = cap_project::BackgroundBlurMode::Remove; + project.timeline = Some( + serde_json::from_value(serde_json::json!({ + "segments": [], "zoomSegments": [], + "sceneSegments": [{ + "start": 2.0, "end": 5.0, "mode": "cameraOnly", + "transitionIn": 0.3, "transitionOut": 0.3 + }] + })) + .expect("timeline"), + ); + let cursor = CursorEvents::default(); + let frames = DecodedSegmentFrames { + screen_size: size, + screen_frame: Some(DecodedFrame::new( + [0, 0, 255, 255].repeat(160 * 90), + 160, + 90, + )), + camera_frame: Some(DecodedFrame::new( + [255, 0, 0, 255].repeat(160 * 90), + 160, + 90, + )), + segment_time: 3.0, + recording_time: 3.0, + segment_has_camera: true, + }; + let zoom = ZoomTransformTimeline::from_project(&project, &cursor, 6.0, size); + let at = |project: &ProjectConfiguration, frame| { + ProjectUniforms::new( + &constants, project, frame, 60, size, &cursor, &frames, 6.0, &zoom, + ) + }; + let uniforms = at(&project, 180); + assert!(uniforms.camera_background_effect_mode().is_none()); + assert_eq!( + uniforms + .camera_only + .expect("full camera") + .preserve_source_alpha, + 0.0 + ); + let mut layers = RendererLayers::new(&constants.device, &constants.queue); + layers + .prepare(&constants, &uniforms, &frames, &cursor, true) + .await + .expect("preview preparation"); + assert!(layers.camera_blur_processor.is_none()); + let mut renderer = FrameRenderer::new(&constants); + let preview = renderer + .render_immediate(frames.clone(), uniforms.clone(), &cursor, true, &mut layers) + .await + .expect("preview"); + for row in preview + .data + .chunks_exact(preview.padded_bytes_per_row as usize) + .skip(2) + .take(86) + { + for pixel in row.chunks_exact(4).skip(2).take(156) { + assert_eq!(pixel, [255, 0, 0, 255]); + } + } + let export = match renderer + .render(frames.clone(), uniforms, &cursor, true, &mut layers) + .await + .expect("export") + { + Some(frame) => frame, + None => renderer + .flush_pipeline() + .await + .expect("flush") + .expect("frame"), + }; + assert_eq!(preview.data, export.data); + assert!(layers.camera_blur_processor.is_none()); + + for frame in [60, 108, 288, 330] { + let uniforms = at(&project, frame); + let camera = uniforms.camera.expect("overlay"); + assert_eq!( + camera.preserve_source_alpha, + if cfg!(target_os = "macos") { 1.0 } else { 0.0 } + ); + assert_eq!( + uniforms.camera_background_effect_mode(), + cfg!(target_os = "macos").then_some(cap_camera_effects::BlurMode::Remove) + ); + if let Some(camera_only) = uniforms.camera_only { + assert_eq!(camera_only.preserve_source_alpha, 0.0); + } + } + project.screen_motion_blur = 0.0; + let transition = at(&project, 108); + assert_eq!(transition.display.motion_blur_params, [0.0; 4]); + assert_eq!( + transition + .camera_only + .expect("transition camera") + .motion_blur_params, + [0.0; 4] + ); + project.background.rounding = 50.0; + project.background.shadow = 50.0; + project + .timeline + .as_mut() + .expect("timeline") + .style_segments + .push(StyleSegment { + start: 2.0, + end: 5.0, + overrides: StyleOverrides { + camera_only_padding: Some(10.0), + ..Default::default() + }, + ..Default::default() + }); + let padded_camera = at(&project, 180).camera_only.expect("padded camera"); + assert!(padded_camera.rounding_px > 0.0); + assert!(padded_camera.shadow > 0.0); + for (setting, mode) in [ + ( + cap_project::BackgroundBlurMode::Light, + cap_camera_effects::BlurMode::Light, + ), + ( + cap_project::BackgroundBlurMode::Heavy, + cap_camera_effects::BlurMode::Heavy, + ), + ] { + project.camera.background_blur.mode = setting; + assert_eq!( + at(&project, 180).camera_background_effect_mode(), + Some(mode) + ); + } + } + #[tokio::test] async fn timed_styles_and_images_share_preview_and_export_canvas() { let instance = create_wgpu_instance_sync(); @@ -6633,7 +6873,8 @@ impl RendererLayers { fn ensure_camera_blur_processor(&mut self, device: &wgpu::Device) { if self.camera_blur_processor.is_none() && !self.camera_blur_init_failed { match cap_camera_effects::BlurProcessor::new(device, wgpu::TextureFormat::Rgba8Unorm) { - Ok(processor) => { + Ok(mut processor) => { + processor.set_frame_synchronous(true); self.camera_blur_processor = Some(processor); } Err(e) => { @@ -6672,13 +6913,22 @@ impl RendererLayers { let dimensions = (source_texture.width(), source_texture.height()); reset_camera_blur_for_dimensions(processor, dimensions); + if let Some(time) = self + .camera + .source_time_for_blur() + .or_else(|| self.camera_only.source_time_for_blur()) + { + processor.set_frame_time(time); + } let _ = processor.process(device, queue, source_texture, mode); self.camera_blur_unavailable = !camera_blur_output_is_available(processor.output_status().as_ref(), mode, dimensions); let processor: &cap_camera_effects::BlurProcessor = processor; self.camera.attach_shared_blur(device, processor, mode); - self.camera_only.attach_shared_blur(device, processor, mode); + if mode != cap_camera_effects::BlurMode::Remove { + self.camera_only.attach_shared_blur(device, processor, mode); + } } fn run_shared_camera_blur_with_encoder( @@ -6710,13 +6960,30 @@ impl RendererLayers { let dimensions = (source_texture.width(), source_texture.height()); reset_camera_blur_for_dimensions(processor, dimensions); + if let Some(time) = self + .camera + .source_time_for_blur() + .or_else(|| self.camera_only.source_time_for_blur()) + { + processor.set_frame_time(time); + } + // YUV conversion in the caller's encoder must complete before segmentation reads this frame. + let pending = std::mem::replace( + encoder, + device.create_command_encoder(&wgpu::CommandEncoderDescriptor { + label: Some("Camera effects and composition"), + }), + ); + queue.submit([pending.finish()]); processor.process_into_encoder(device, queue, source_texture, encoder, mode); self.camera_blur_unavailable = !camera_blur_output_is_available(processor.output_status().as_ref(), mode, dimensions); let processor: &cap_camera_effects::BlurProcessor = processor; self.camera.attach_shared_blur(device, processor, mode); - self.camera_only.attach_shared_blur(device, processor, mode); + if mode != cap_camera_effects::BlurMode::Remove { + self.camera_only.attach_shared_blur(device, processor, mode); + } } pub fn prepare_for_video_dimensions( @@ -6841,7 +7108,7 @@ impl RendererLayers { camera_frame_data, ); - if let Some(mode) = blur_mode_from_config(&uniforms.project.camera.background_blur) { + if let Some(mode) = uniforms.camera_background_effect_mode() { self.run_shared_camera_blur(&constants.device, &constants.queue, mode); } @@ -7013,7 +7280,7 @@ impl RendererLayers { timings.camera_only_prepare_duration = start.elapsed(); let start = Instant::now(); - if let Some(mode) = blur_mode_from_config(&uniforms.project.camera.background_blur) { + if let Some(mode) = uniforms.camera_background_effect_mode() { self.run_shared_camera_blur_with_encoder( &constants.device, &constants.queue, @@ -7475,6 +7742,9 @@ fn blur_mode_from_config( cap_project::BackgroundBlurMode::Off => None, cap_project::BackgroundBlurMode::Light => Some(cap_camera_effects::BlurMode::Light), cap_project::BackgroundBlurMode::Heavy => Some(cap_camera_effects::BlurMode::Heavy), + cap_project::BackgroundBlurMode::Remove => { + cfg!(target_os = "macos").then_some(cap_camera_effects::BlurMode::Remove) + } } } diff --git a/crates/rendering/src/shaders/composite-video-frame.wgsl b/crates/rendering/src/shaders/composite-video-frame.wgsl index 919b4b9627f..cf6b0c01eaa 100644 --- a/crates/rendering/src/shaders/composite-video-frame.wgsl +++ b/crates/rendering/src/shaders/composite-video-frame.wgsl @@ -445,6 +445,34 @@ fn sample_texture(uv: vec2, crop_bounds_uv: vec4) -> vec4 { let center_color = center_sample.rgb; let out_alpha = select(1.0, center_sample.a, uniforms.preserve_source_alpha > 0.5); + if uniforms.preserve_source_alpha > 0.5 && center_sample.a < 0.999 { + if !is_downscaling { + return center_sample; + } + + let footprint = scale_ratio / uniforms.frame_size * 0.5; + let left = textureSampleLevel( + frame_texture, frame_sampler, + clamp(cropped_uv - vec2(footprint.x, 0.0), safe_min, safe_max), 0.0 + ); + let right = textureSampleLevel( + frame_texture, frame_sampler, + clamp(cropped_uv + vec2(footprint.x, 0.0), safe_min, safe_max), 0.0 + ); + let top = textureSampleLevel( + frame_texture, frame_sampler, + clamp(cropped_uv - vec2(0.0, footprint.y), safe_min, safe_max), 0.0 + ); + let bottom = textureSampleLevel( + frame_texture, frame_sampler, + clamp(cropped_uv + vec2(0.0, footprint.y), safe_min, safe_max), 0.0 + ); + let alpha_sum = center_sample.a * 4.0 + left.a + right.a + top.a + bottom.a; + let color_sum = center_sample.rgb * center_sample.a * 4.0 + + left.rgb * left.a + right.rgb * right.a + top.rgb * top.a + bottom.rgb * bottom.a; + return vec4(color_sum / max(alpha_sum, 0.0001), alpha_sum * 0.125); + } + if is_downscaling { let texel_size = 1.0 / uniforms.frame_size; From 137e60c85af39262388102f603e52684b81f8782 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:51 +0100 Subject: [PATCH 037/217] feat(rendering): prepare animated text styles and backgrounds --- crates/rendering/src/text.rs | 305 +++++++++++++++++++++++++++++++++-- 1 file changed, 294 insertions(+), 11 deletions(-) diff --git a/crates/rendering/src/text.rs b/crates/rendering/src/text.rs index 97480b7c536..9f72eca35bb 100644 --- a/crates/rendering/src/text.rs +++ b/crates/rendering/src/text.rs @@ -1,4 +1,4 @@ -use cap_project::{TextAlign, TextAnimation, TextSegment, XY}; +use cap_project::{TextAlign, TextAnimation, TextBackgroundStyle, TextSegment, XY}; /// Text font sizes are authored against a 1080p-tall reference frame and /// scaled to the output height, so a project renders identically at every @@ -32,6 +32,36 @@ pub struct PreparedText { pub offset: [f32; 2], /// Animation scale about the box center. pub scale: f32, + /// Outline (output px, colour); `None` when the width is 0. + pub stroke: Option<(f32, [f32; 4])>, + /// 0..1 halo strength in the text colour; 0 disables the glow passes. + pub glow: f32, + /// Right-hand colour of a horizontal gradient that starts at `color`. + pub gradient_color: Option<[f32; 4]>, + pub background_style: TextBackgroundStyle, + /// Fraction of the wrap width left visible by a wipe; 1 = unclipped. + pub wipe: f32, + pub stagger_in: Option, + pub stagger_out: Option, +} + +/// One edge of a per-word / per-letter reveal: `progress` runs 0 → 1 toward +/// fully visible, and [`stagger_alpha`] turns it into a unit's alpha. +#[derive(Debug, Clone, Copy, PartialEq)] +pub struct StaggerEdge { + pub by_word: bool, + pub progress: f32, +} + +/// Every unit gets the same-length window; unit `i` of `n` opens its window +/// at `i / n` of the remaining span so the last unit finishes exactly at 1. +pub fn stagger_alpha(edge: StaggerEdge, unit: usize, units: usize) -> f32 { + if edge.progress >= 1.0 || units == 0 { + return 1.0; + } + const WINDOW: f32 = 0.55; + let start = (unit as f32 / units as f32) * (1.0 - WINDOW); + ease_out_cubic(((edge.progress - start) / WINDOW).clamp(0.0, 1.0)) } fn parse_color(hex: &str) -> [f32; 4] { @@ -54,20 +84,24 @@ fn parse_rgb_color(hex: &str) -> Option<[f32; 4]> { None } -pub(crate) fn text_background_rect( +/// The block-level background behind a text box. A pill widens the side +/// padding and rounds to half its height. +pub(crate) fn background_rect( bounds: [f32; 4], laid_out_height: f32, font_size: f32, + center: [f32; 2], scale: f32, offset: [f32; 2], + pill: bool, ) -> ([f32; 4], f32) { let padding = font_size * 0.2; - let left = bounds[0] - padding; + let padding_x = if pill { font_size * 0.5 } else { padding }; + let left = bounds[0] - padding_x; let top = bounds[1] - padding; - let right = bounds[2] + padding; + let right = bounds[2] + padding_x; let bottom = bounds[1] + (bounds[3] - bounds[1]).max(laid_out_height) + padding; - let cx = (bounds[0] + bounds[2]) * 0.5; - let cy = (bounds[1] + bounds[3]) * 0.5; + let [cx, cy] = center; let transform = |x: f32, y: f32| { [ cx + (x - cx) * scale + offset[0], @@ -78,9 +112,42 @@ pub(crate) fn text_background_rect( let [transformed_right, transformed_bottom] = transform(right, bottom); let width = (transformed_right - transformed_left).max(0.0); let height = (transformed_bottom - transformed_top).max(0.0); + let radius = if pill { + height * 0.5 + } else { + font_size * 0.15 * scale + }; ( [transformed_left, transformed_top, width, height], - (font_size * 0.15 * scale) + radius.min(width * 0.5).min(height * 0.5), + ) +} + +/// One marker stroke behind a laid-out line: `ink` is the line's glyph extent +/// (left, right) and `line` its top and height, all in unscaled buffer space. +pub(crate) fn highlight_rect( + ink: (f32, f32), + line: (f32, f32), + font_size: f32, + box_center: [f32; 2], + scale: f32, + offset: [f32; 2], +) -> ([f32; 4], f32) { + let padding_x = font_size * 0.12; + let padding_y = font_size * 0.06; + let transform = |x: f32, y: f32| { + [ + box_center[0] + (x - box_center[0]) * scale + offset[0], + box_center[1] + (y - box_center[1]) * scale + offset[1], + ] + }; + let [left, top] = transform(ink.0 - padding_x, line.0 - padding_y); + let [right, bottom] = transform(ink.1 + padding_x, line.0 + line.1 + padding_y); + let width = (right - left).max(0.0); + let height = (bottom - top).max(0.0); + ( + [left, top, width, height], + (font_size * 0.12 * scale) .min(width * 0.5) .min(height * 0.5), ) @@ -100,6 +167,10 @@ fn ease_out_back(t: f32) -> f32 { } const POP_MIN_SCALE: f32 = 0.8; +const ZOOM_MAX_SCALE: f32 = 1.35; +const BOUNCE_TRAVEL: f32 = 1.25; +/// Extra tracking at the start of a `Tracking` reveal, in em. +const TRACKING_TRAVEL_EM: f32 = 0.35; #[derive(Debug, Clone, Copy)] struct AnimSample { @@ -108,6 +179,11 @@ struct AnimSample { scale: f32, /// Fraction of characters visible (typewriter); 1 for other styles. reveal: f32, + /// Fraction of the width visible (wipe); 1 for other styles. + wipe: f32, + /// Extra letter spacing in em (tracking); 0 for other styles. + tracking: f32, + stagger: Option, } const ANIM_REST: AnimSample = AnimSample { @@ -115,6 +191,9 @@ const ANIM_REST: AnimSample = AnimSample { offset: [0.0, 0.0], scale: 1.0, reveal: 1.0, + wipe: 1.0, + tracking: 0.0, + stagger: None, }; /// `progress` runs 0 → 1 toward fully visible for both edges: time since @@ -149,11 +228,57 @@ fn sample_animation( offset: [0.0, -direction * (1.0 - eased) * slide_px], ..ANIM_REST }, + TextAnimation::SlideLeft => AnimSample { + alpha: eased, + offset: [direction * (1.0 - eased) * slide_px, 0.0], + ..ANIM_REST + }, + TextAnimation::SlideRight => AnimSample { + alpha: eased, + offset: [-direction * (1.0 - eased) * slide_px, 0.0], + ..ANIM_REST + }, TextAnimation::Pop => AnimSample { alpha: eased, scale: POP_MIN_SCALE + (1.0 - POP_MIN_SCALE) * ease_out_back(progress), ..ANIM_REST }, + TextAnimation::Zoom => AnimSample { + alpha: eased, + scale: ZOOM_MAX_SCALE - (ZOOM_MAX_SCALE - 1.0) * eased, + ..ANIM_REST + }, + TextAnimation::Bounce => AnimSample { + alpha: eased, + offset: [ + 0.0, + direction * (1.0 - ease_out_back(progress)) * slide_px * BOUNCE_TRAVEL, + ], + ..ANIM_REST + }, + TextAnimation::Wipe => AnimSample { + wipe: eased, + ..ANIM_REST + }, + TextAnimation::Words => AnimSample { + stagger: Some(StaggerEdge { + by_word: true, + progress, + }), + ..ANIM_REST + }, + TextAnimation::Letters => AnimSample { + stagger: Some(StaggerEdge { + by_word: false, + progress, + }), + ..ANIM_REST + }, + TextAnimation::Tracking => AnimSample { + alpha: eased, + tracking: (1.0 - eased) * TRACKING_TRAVEL_EM, + ..ANIM_REST + }, TextAnimation::Typewriter => AnimSample { reveal: progress, ..ANIM_REST @@ -245,10 +370,21 @@ pub fn prepare_texts( } let reveal = enter.reveal.min(exit.reveal); - let content = reveal_content(&segment.content, reveal); + let cased = if segment.uppercase { + segment.content.to_uppercase() + } else { + segment.content.clone() + }; + let content = reveal_content(&cased, reveal); if content.is_empty() { continue; } + let wipe = enter.wipe * exit.wipe; + if wipe <= 0.0 { + continue; + } + let tracking_px = (enter.tracking + exit.tracking) * font_size; + let stroke_px = segment.stroke_width.clamp(0.0, 40.0) * height_scale; prepared.push(PreparedText { track: segment.track, @@ -265,7 +401,7 @@ pub fn prepare_texts( italic: segment.italic, opacity, align: segment.align, - letter_spacing: segment.letter_spacing.clamp(-24.0, 240.0) * height_scale, + letter_spacing: segment.letter_spacing.clamp(-24.0, 240.0) * height_scale + tracking_px, line_height: segment.line_height.clamp(0.5, 3.0), shadow: segment.shadow.clamp(0.0, 1.0), offset: [ @@ -273,6 +409,13 @@ pub fn prepare_texts( enter.offset[1] + exit.offset[1], ], scale: (enter.scale * exit.scale).max(0.01), + stroke: (stroke_px > 0.0).then(|| (stroke_px, parse_color(&segment.stroke_color))), + glow: segment.glow.clamp(0.0, 1.0), + gradient_color: segment.gradient_color.as_deref().and_then(parse_rgb_color), + background_style: segment.background_style, + wipe, + stagger_in: enter.stagger, + stagger_out: exit.stagger, }); } @@ -390,25 +533,165 @@ mod tests { #[test] fn background_rect_expands_authored_bounds_then_transforms_about_center() { - let (rect, radius) = text_background_rect( + let (rect, radius) = background_rect( [100.0, 200.0, 300.0, 400.0], 100.0, 50.0, + [200.0, 300.0], 0.5, [10.0, -20.0], + false, ); assert_eq!(rect, [155.0, 225.0, 110.0, 110.0]); assert!((radius - 3.75).abs() < 0.000_001); } + #[test] + fn pill_background_widens_and_rounds_to_half_height() { + let (rect, radius) = background_rect( + [100.0, 200.0, 300.0, 260.0], + 60.0, + 50.0, + [200.0, 230.0], + 1.0, + [0.0, 0.0], + true, + ); + assert_eq!(rect, [75.0, 190.0, 250.0, 80.0]); + assert_eq!(radius, 40.0); + } + + #[test] + fn highlight_rect_hugs_one_line_of_ink() { + let (rect, radius) = highlight_rect( + (100.0, 200.0), + (50.0, 60.0), + 50.0, + [150.0, 80.0], + 1.0, + [0.0, 0.0], + ); + assert_eq!(rect, [94.0, 47.0, 112.0, 66.0]); + assert_eq!(radius, 6.0); + } + + #[test] + fn slides_enter_from_opposite_sides_and_exit_through() { + let seg = |anim| segment(anim, anim); + let left = prepare_one(seg(TextAnimation::SlideLeft), 0.1).unwrap(); + assert!(left.offset[0] > 0.0 && left.offset[1] == 0.0); + let left_exit = prepare_one(seg(TextAnimation::SlideLeft), 9.9).unwrap(); + assert!(left_exit.offset[0] < 0.0); + let right = prepare_one(seg(TextAnimation::SlideRight), 0.1).unwrap(); + assert!(right.offset[0] < 0.0); + assert!( + prepare_one(seg(TextAnimation::SlideRight), 5.0) + .unwrap() + .offset + == [0.0, 0.0] + ); + } + + #[test] + fn zoom_starts_large_and_bounce_overshoots_the_rest_position() { + let zoom = prepare_one(segment(TextAnimation::Zoom, TextAnimation::None), 0.05).unwrap(); + assert!(zoom.scale > 1.25 && zoom.scale < ZOOM_MAX_SCALE); + assert_eq!( + prepare_one(segment(TextAnimation::Zoom, TextAnimation::None), 5.0) + .unwrap() + .scale, + 1.0 + ); + let early = prepare_one(segment(TextAnimation::Bounce, TextAnimation::None), 0.05).unwrap(); + assert!(early.offset[1] > 0.0, "starts below its rest position"); + let late = prepare_one(segment(TextAnimation::Bounce, TextAnimation::None), 0.8).unwrap(); + assert!(late.offset[1] < 0.0, "overshoots above before settling"); + } + + #[test] + fn wipe_reveals_width_without_fading() { + let seg = segment(TextAnimation::Wipe, TextAnimation::Wipe); + let half = prepare_one(seg.clone(), 0.5).unwrap(); + assert_eq!(half.opacity, 1.0); + assert!(half.wipe > 0.5 && half.wipe < 1.0); + assert_eq!(prepare_one(seg.clone(), 5.0).unwrap().wipe, 1.0); + assert!(prepare_one(seg.clone(), 9.8).unwrap().wipe < 1.0); + assert!( + prepare_one(seg, 0.0).is_none(), + "nothing visible at width 0" + ); + } + + #[test] + fn words_and_letters_carry_their_edge_progress() { + let seg = segment(TextAnimation::Words, TextAnimation::Letters); + let entering = prepare_one(seg.clone(), 0.25).unwrap(); + assert_eq!( + entering.stagger_in, + Some(StaggerEdge { + by_word: true, + progress: 0.25 + }) + ); + assert_eq!(entering.stagger_out, None); + assert_eq!(entering.opacity, 1.0); + assert_eq!( + stagger_alpha(entering.stagger_in.unwrap(), 0, 2), + ease_out_cubic(0.25 / 0.55) + ); + assert!(stagger_alpha(entering.stagger_in.unwrap(), 1, 2) < 0.2); + let resting = prepare_one(seg.clone(), 5.0).unwrap(); + assert_eq!(resting.stagger_in, None); + let exiting = prepare_one(seg, 9.5).unwrap(); + assert_eq!( + exiting.stagger_out, + Some(StaggerEdge { + by_word: false, + progress: 0.5 + }) + ); + } + + #[test] + fn tracking_widens_letter_spacing_while_entering() { + let seg = segment(TextAnimation::Tracking, TextAnimation::None); + let entering = prepare_one(seg.clone(), 0.05).unwrap(); + let eased = ease_out_cubic(0.05); + let expected = (1.0 - eased) * TRACKING_TRAVEL_EM * 48.0; + assert!((entering.letter_spacing - expected).abs() < 1e-3); + assert_eq!(prepare_one(seg, 5.0).unwrap().letter_spacing, 0.0); + } + + #[test] + fn look_fields_are_prepared_and_scaled() { + let mut seg = segment(TextAnimation::None, TextAnimation::None); + seg.uppercase = true; + seg.stroke_width = 4.0; + seg.stroke_color = "#ff0000".to_string(); + seg.gradient_color = Some("#0000ff".to_string()); + seg.glow = 0.5; + seg.background_style = TextBackgroundStyle::Pill; + let text = prepare_texts(XY::new(3840, 2160), 5.0, &[seg], &[]) + .into_iter() + .next() + .unwrap(); + assert_eq!(text.content, "HELLO"); + assert_eq!(text.stroke, Some((8.0, [1.0, 0.0, 0.0, 1.0]))); + assert_eq!(text.gradient_color, Some([0.0, 0.0, 1.0, 1.0])); + assert_eq!(text.glow, 0.5); + assert_eq!(text.background_style, TextBackgroundStyle::Pill); + } + #[test] fn multiline_background_keeps_the_authored_transform_origin() { - let (rect, _) = text_background_rect( + let (rect, _) = background_rect( [100.0, 200.0, 300.0, 400.0], 300.0, 50.0, + [200.0, 300.0], 0.5, [10.0, -20.0], + false, ); assert_eq!(rect, [155.0, 225.0, 110.0, 160.0]); } From f5721f384bbaaa9b17526a48d4383d94b09d632b Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:51 +0100 Subject: [PATCH 038/217] feat(rendering): draw text outlines gradients and reveals --- crates/rendering/src/layers/text.rs | 629 +++++++++++++++++++++------- 1 file changed, 483 insertions(+), 146 deletions(-) diff --git a/crates/rendering/src/layers/text.rs b/crates/rendering/src/layers/text.rs index 7cfff37ecbb..36611496c50 100644 --- a/crates/rendering/src/layers/text.rs +++ b/crates/rendering/src/layers/text.rs @@ -1,5 +1,7 @@ +use std::ops::Range; + use bytemuck::{Pod, Zeroable}; -use cap_project::TextAlign; +use cap_project::{TextAlign, TextBackgroundStyle}; use glyphon::cosmic_text::Align; use glyphon::{ Attrs, Buffer, Cache, Color, Family, FontSystem, Metrics, Resolution, Shaping, Style, @@ -8,7 +10,7 @@ use glyphon::{ use log::warn; use wgpu::{Device, Queue, include_wgsl, util::DeviceExt}; -use crate::text::PreparedText; +use crate::text::{PreparedText, StaggerEdge, stagger_alpha}; pub struct TextLayer { font_system: FontSystem, @@ -17,11 +19,10 @@ pub struct TextLayer { text_renderer: TextRenderer, viewport: Viewport, buffers: Vec, - tracks: Vec, + draws: Vec, segment_renderers: Vec, background: Option, segmented_render: bool, - segment_backgrounds: Vec, } #[repr(C)] @@ -146,36 +147,40 @@ impl TextBackgroundResources { } } -struct AreaSpec { +/// One `TextArea` per entry of `offsets`, all sharing `buffer` and tinted +/// `color` unless the buffer carries its own per-glyph colours. +struct Pass { + buffer: usize, + color: Color, + offsets: Vec<[f32; 2]>, +} + +struct TextDraw { + track: u32, bounds: TextBounds, left: f32, top: f32, scale: f32, - color: Color, - shadow: Option<(f32, f32, Color)>, - background: Option, + /// Draw order: shadow, glow, outline, then the text itself. + passes: Vec, + background: Range, } -fn text_areas<'a>(buffer: &'a Buffer, spec: &AreaSpec) -> impl Iterator> { - let shadow_area = spec.shadow.map(|(dx, dy, shadow_color)| TextArea { - buffer, - left: spec.left + dx, - top: spec.top + dy, - scale: spec.scale, - bounds: shift_bounds(spec.bounds, dx, dy), - default_color: shadow_color, - custom_glyphs: &[], - }); - let main_area = TextArea { - buffer, - left: spec.left, - top: spec.top, - scale: spec.scale, - bounds: spec.bounds, - default_color: spec.color, - custom_glyphs: &[], - }; - shadow_area.into_iter().chain(std::iter::once(main_area)) +fn text_areas<'a>( + buffers: &'a [Buffer], + draw: &'a TextDraw, +) -> impl Iterator> + 'a { + draw.passes.iter().flat_map(move |pass| { + pass.offsets.iter().map(move |[dx, dy]| TextArea { + buffer: &buffers[pass.buffer], + left: draw.left + dx, + top: draw.top + dy, + scale: draw.scale, + bounds: shift_bounds(draw.bounds, *dx, *dy), + default_color: pass.color, + custom_glyphs: &[], + }) + }) } fn shift_bounds(bounds: TextBounds, dx: f32, dy: f32) -> TextBounds { @@ -187,6 +192,162 @@ fn shift_bounds(bounds: TextBounds, dx: f32, dy: f32) -> TextBounds { } } +fn to_color(rgb: [f32; 4], alpha: f32) -> Color { + Color::rgba( + (rgb[0].clamp(0.0, 1.0) * 255.0) as u8, + (rgb[1].clamp(0.0, 1.0) * 255.0) as u8, + (rgb[2].clamp(0.0, 1.0) * 255.0) as u8, + (alpha.clamp(0.0, 1.0) * 255.0) as u8, + ) +} + +/// Eight compass directions at `radius`, the diagonals pulled in so every +/// copy sits on the same circle. +fn ring(radius: f32) -> impl Iterator { + let diagonal = radius * std::f32::consts::FRAC_1_SQRT_2; + [ + [radius, 0.0], + [-radius, 0.0], + [0.0, radius], + [0.0, -radius], + [diagonal, diagonal], + [-diagonal, diagonal], + [diagonal, -diagonal], + [-diagonal, -diagonal], + ] + .into_iter() +} + +/// Concentric rings out to `radius`, dense enough that the copies overlap +/// into a solid outline. +fn stroke_offsets(radius: f32) -> Vec<[f32; 2]> { + let rings = ((radius / 2.5).ceil() as usize).clamp(1, 5); + (1..=rings) + .flat_map(|step| ring(radius * step as f32 / rings as f32)) + .collect() +} + +/// Radius (em) and alpha of each halo ring, outermost faintest. +const GLOW_RINGS: [(f32, f32); 3] = [(0.04, 0.16), (0.09, 0.10), (0.16, 0.06)]; + +/// Which reveal unit each byte of `content` belongs to, and how many units +/// there are. Whitespace rides with the unit before it. +fn unit_map(content: &str, by_word: bool) -> (Vec, usize) { + let mut map = vec![0; content.len()]; + let mut units = 0usize; + let mut in_word = false; + for (index, ch) in content.char_indices() { + if ch.is_whitespace() { + in_word = false; + } else if !by_word || !in_word { + units += 1; + in_word = true; + } + let unit = units.saturating_sub(1); + for byte in map.iter_mut().take(index + ch.len_utf8()).skip(index) { + *byte = unit; + } + } + (map, units) +} + +fn stagger_alpha_by_byte(content: &str, edge: Option, out: &mut [f32]) { + let Some(edge) = edge else { + return; + }; + if edge.progress >= 1.0 { + return; + } + let (map, units) = unit_map(content, edge.by_word); + for (alpha, unit) in out.iter_mut().zip(map) { + *alpha *= stagger_alpha(edge, unit, units); + } +} + +/// Byte offset of every original line's start, matching cosmic-text's own +/// line split so a glyph's in-line byte range maps back into `content`. +fn line_starts(content: &str) -> Vec { + let mut starts = vec![0]; + for (index, ch) in content.char_indices() { + if ch == '\n' { + starts.push(index + 1); + } + } + starts +} + +fn lerp_rgb(a: [f32; 4], b: [f32; 4], t: f32) -> [f32; 4] { + let t = t.clamp(0.0, 1.0); + [ + a[0] + (b[0] - a[0]) * t, + a[1] + (b[1] - a[1]) * t, + a[2] + (b[2] - a[2]) * t, + a[3], + ] +} + +/// Per-byte text colour for a horizontal gradient: each laid-out line runs +/// `from` at its left ink edge to `to` at its right. +fn gradient_by_byte(buffer: &Buffer, content: &str, from: [f32; 4], to: [f32; 4]) -> Vec<[f32; 4]> { + let mut colors = vec![from; content.len()]; + let starts = line_starts(content); + for run in buffer.layout_runs() { + let Some(base) = starts.get(run.line_i).copied() else { + continue; + }; + let (min_x, max_x) = run + .glyphs + .iter() + .fold((f32::MAX, f32::MIN), |(lo, hi), glyph| { + (lo.min(glyph.x), hi.max(glyph.x + glyph.w)) + }); + let span = (max_x - min_x).max(1.0); + for glyph in run.glyphs { + let t = (glyph.x + glyph.w * 0.5 - min_x) / span; + let color = lerp_rgb(from, to, t); + for byte in colors + .iter_mut() + .take((base + glyph.end).min(content.len())) + .skip(base + glyph.start) + { + *byte = color; + } + } + } + colors +} + +/// Coalesces per-byte colours into the fewest rich-text spans that rebuild +/// `content` exactly, which is what `set_rich_text` needs. +fn rich_spans(content: &str, colors: &[Color]) -> Vec<(Range, Color)> { + let mut spans: Vec<(Range, Color)> = Vec::new(); + for (index, _) in content.char_indices() { + let color = colors[index]; + match spans.last_mut() { + Some((range, last)) if *last == color => range.end = index, + _ => spans.push((index..index, color)), + } + } + let mut end = content.len(); + for (range, _) in spans.iter_mut().rev() { + range.end = end; + end = range.start; + } + spans +} + +/// The ink extent of one laid-out line: `(left, right)` from the leftmost +/// glyph edge to the rightmost, in unscaled buffer space, or `None` for an +/// empty line. +fn run_ink(run: &glyphon::LayoutRun<'_>) -> Option<(f32, f32)> { + run.glyphs + .iter() + .fold(None, |extent: Option<(f32, f32)>, glyph| { + let (lo, hi) = extent.unwrap_or((f32::MAX, f32::MIN)); + Some((lo.min(glyph.x), hi.max(glyph.x + glyph.w))) + }) +} + impl TextLayer { pub fn new(device: &Device, queue: &Queue) -> Self { let font_system = super::new_font_system(); @@ -210,11 +371,10 @@ impl TextLayer { text_renderer, viewport, buffers: Vec::new(), - tracks: Vec::new(), + draws: Vec::new(), segment_renderers: Vec::new(), background: None, segmented_render: false, - segment_backgrounds: Vec::new(), } } @@ -238,6 +398,47 @@ impl TextLayer { self.prepare_with_mode(device, queue, output_size, texts, true); } + fn shape( + &mut self, + content: &str, + attrs: &Attrs<'_>, + align: Align, + metrics: Metrics, + wrap_width: f32, + colors: Option<&[Color]>, + ) -> usize { + let mut buffer = Buffer::new(&mut self.font_system, metrics); + // The box only constrains wrapping; height is unbounded so every + // line is laid out even when the configured box is a little + // shorter than the shaped text (e.g. font metric differences + // between the editor's measurement and cosmic-text). + buffer.set_size(&mut self.font_system, Some(wrap_width), None); + buffer.set_wrap(&mut self.font_system, glyphon::Wrap::Word); + match colors { + Some(colors) => { + let spans = rich_spans(content, colors); + buffer.set_rich_text( + &mut self.font_system, + spans.iter().map(|(range, color)| { + (&content[range.clone()], attrs.clone().color(*color)) + }), + attrs, + Shaping::Advanced, + Some(align), + ); + } + None => { + buffer.set_text(&mut self.font_system, content, attrs, Shaping::Advanced); + for line in buffer.lines.iter_mut() { + line.set_align(Some(align)); + } + } + } + buffer.shape_until_scroll(&mut self.font_system, false); + self.buffers.push(buffer); + self.buffers.len() - 1 + } + fn prepare_with_mode( &mut self, device: &Device, @@ -247,19 +448,12 @@ impl TextLayer { force_segmented: bool, ) { self.buffers.clear(); - self.tracks.clear(); - self.buffers.reserve(texts.len()); - self.tracks.reserve(texts.len()); - let mut specs = Vec::with_capacity(texts.len()); + self.draws.clear(); + let mut backgrounds: Vec = Vec::new(); + let output_px = [output_size.0.max(1) as f32, output_size.1.max(1) as f32]; for text in texts { let alpha = text.color[3].clamp(0.0, 1.0) * text.opacity.clamp(0.0, 1.0); - let color = Color::rgba( - (text.color[0].clamp(0.0, 1.0) * 255.0) as u8, - (text.color[1].clamp(0.0, 1.0) * 255.0) as u8, - (text.color[2].clamp(0.0, 1.0) * 255.0) as u8, - (alpha * 255.0) as u8, - ); let width = (text.bounds[2] - text.bounds[0]).max(1.0); let height = (text.bounds[3] - text.bounds[1]).max(1.0); @@ -271,7 +465,7 @@ impl TextLayer { // split for centered text, after for left, before for right. // Boxes already spanning the frame keep their exact width — there // the editor genuinely wrapped too. - let output_width = (output_size.0 as f32).max(1.0); + let output_width = output_px[0]; let wrap_width = if width < output_width * 0.98 { (width * 1.05 + 4.0).min(output_width.max(width)) } else { @@ -284,14 +478,6 @@ impl TextLayer { }; let metrics = Metrics::new(text.font_size, text.font_size * text.line_height); - let mut buffer = Buffer::new(&mut self.font_system, metrics); - // The box only constrains wrapping; height is unbounded so every - // line is laid out even when the configured box is a little - // shorter than the shaped text (e.g. font metric differences - // between the editor's measurement and cosmic-text). - buffer.set_size(&mut self.font_system, Some(wrap_width), None); - buffer.set_wrap(&mut self.font_system, glyphon::Wrap::Word); - let family = match text.font_family.trim() { "" => Family::SansSerif, name => match name.to_ascii_lowercase().as_str() { @@ -304,8 +490,9 @@ impl TextLayer { }, }; let weight = Weight(text.font_weight.round().clamp(100.0, 900.0) as u16); - // Glyph color comes from each area's default_color (not Attrs) so - // the shadow pass can re-tint the same shaped buffer. + // Glyph colour comes from each area's default_color (or, for a + // gradient / staggered reveal, from per-span attrs) so the + // shadow, glow and outline passes can re-tint the same layout. let mut attrs = Attrs::new() .family(family) .weight(weight) @@ -320,26 +507,65 @@ impl TextLayer { // the attr is in em — convert from our px value. attrs = attrs.letter_spacing(text.letter_spacing / text.font_size.max(1.0)); } - - buffer.set_text( - &mut self.font_system, - &text.content, - &attrs, - Shaping::Advanced, - ); - let align = match text.align { TextAlign::Left => Align::Left, TextAlign::Center => Align::Center, TextAlign::Right => Align::Right, }; - for line in buffer.lines.iter_mut() { - line.set_align(Some(align)); - } - buffer.shape_until_scroll(&mut self.font_system, false); + let content = text.content.as_str(); + let plain = self.shape(content, &attrs, align, metrics, wrap_width, None); + let laid_out_height = + self.buffers[plain].layout_runs().count() as f32 * metrics.line_height; + // The glyphs' own horizontal extent across every line, so a + // background hugs the text rather than the authored box and a + // wipe reveals the ink proportionally whatever the alignment. + let ink = self.buffers[plain] + .layout_runs() + .filter_map(|run| run_ink(&run)) + .fold(None, |extent: Option<(f32, f32)>, (lo, hi)| { + let (min, max) = extent.unwrap_or((lo, hi)); + Some((min.min(lo), max.max(hi))) + }); - let laid_out_height = buffer.layout_runs().count() as f32 * metrics.line_height; + let staggered = text.stagger_in.is_some_and(|edge| edge.progress < 1.0) + || text.stagger_out.is_some_and(|edge| edge.progress < 1.0); + let mut unit_alpha = vec![1.0f32; content.len()]; + if staggered { + stagger_alpha_by_byte(content, text.stagger_in, &mut unit_alpha); + stagger_alpha_by_byte(content, text.stagger_out, &mut unit_alpha); + } + let gradient = text + .gradient_color + .map(|to| gradient_by_byte(&self.buffers[plain], content, text.color, to)); + + // A pass whose colour varies per glyph needs its own buffer; a + // flat pass re-tints the plain layout through default_color. + let pass = |this: &mut Self, + rgb: [f32; 4], + pass_alpha: f32, + offsets: Vec<[f32; 2]>, + is_main: bool| { + let gradient = if is_main { gradient.as_deref() } else { None }; + if !staggered && gradient.is_none() { + return Pass { + buffer: plain, + color: to_color(rgb, pass_alpha), + offsets, + }; + } + let colors: Vec = (0..content.len()) + .map(|byte| { + let rgb = gradient.map_or(rgb, |colors| colors[byte]); + to_color(rgb, pass_alpha * unit_alpha[byte]) + }) + .collect(); + Pass { + buffer: this.shape(content, &attrs, align, metrics, wrap_width, Some(&colors)), + color: to_color(rgb, pass_alpha), + offsets, + } + }; // Animation transform: uniform scale about the box center plus a // translation, applied to the buffer origin and clip bounds (the @@ -351,62 +577,131 @@ impl TextLayer { let tx = |x: f32| cx + (x - cx) * scale + text.offset[0]; let ty = |y: f32| cy + (y - cy) * scale + text.offset[1]; - let origin_left = tx(text.bounds[0] - origin_dx); + let block_left = text.bounds[0] - origin_dx; + let origin_left = tx(block_left); let origin_top = ty(text.bounds[1]); + let wipe = text.wipe.clamp(0.0, 1.0); + let clip_right = match ink { + Some((ink_left, ink_right)) if wipe < 1.0 => { + block_left + ink_left + (ink_right - ink_left) * wipe + } + _ => block_left + wrap_width, + }; // Clip horizontally at the (slack-expanded) wrap box, but extend // the bottom to the laid-out text height so descenders and extra // lines never get cut off; glyphon intersects these bounds with - // the viewport. + // the viewport. A wipe narrows the right edge. let bounds = TextBounds { left: origin_left.floor() as i32, top: origin_top.floor() as i32, - right: tx(text.bounds[0] - origin_dx + wrap_width).ceil() as i32, + right: tx(clip_right).ceil() as i32, bottom: ty(text.bounds[1] + height.max(laid_out_height)).ceil() as i32, }; - let shadow = (text.shadow > 0.0).then(|| { + let mut passes = Vec::new(); + if text.shadow > 0.0 { let dx = text.font_size * scale * 0.02; let dy = text.font_size * scale * 0.055; let shadow_alpha = alpha * text.shadow.clamp(0.0, 1.0) * 0.85; - (dx, dy, Color::rgba(0, 0, 0, (shadow_alpha * 255.0) as u8)) - }); - - let background = text.background_color.map(|background_color| { - let (rect, radius) = crate::text::text_background_rect( - text.bounds, - laid_out_height, - text.font_size, - scale, - text.offset, - ); - TextBackgroundUniforms { - rect, - color: [ - background_color[0], - background_color[1], - background_color[2], - background_color[3] * text.opacity.clamp(0.0, 1.0), - ], - radius, - _padding0: 0.0, - _padding1: 0.0, - _padding2: 0.0, - output_size: [output_size.0.max(1) as f32, output_size.1.max(1) as f32], - _padding3: [0.0; 2], + passes.push(pass( + self, + [0.0, 0.0, 0.0, 1.0], + shadow_alpha, + vec![[dx, dy]], + false, + )); + } + if text.glow > 0.0 { + for (radius_em, ring_alpha) in GLOW_RINGS { + let radius = radius_em * text.font_size * scale; + passes.push(pass( + self, + text.color, + alpha * ring_alpha * text.glow, + ring(radius).collect(), + false, + )); } - }); + } + if let Some((stroke_px, stroke_color)) = text.stroke { + passes.push(pass( + self, + stroke_color, + alpha, + stroke_offsets(stroke_px * scale), + false, + )); + } + passes.push(pass(self, text.color, alpha, vec![[0.0, 0.0]], true)); + + let background_start = backgrounds.len(); + if let Some(background_color) = text.background_color { + let color = [ + background_color[0], + background_color[1], + background_color[2], + background_color[3] * text.opacity.clamp(0.0, 1.0), + ]; + let uniforms = |(mut rect, radius): ([f32; 4], f32)| { + rect[2] *= wipe; + TextBackgroundUniforms { + rect, + color, + radius: radius.min(rect[2] * 0.5), + _padding0: 0.0, + _padding1: 0.0, + _padding2: 0.0, + output_size: output_px, + _padding3: [0.0; 2], + } + }; + match text.background_style { + TextBackgroundStyle::Highlight => { + for run in self.buffers[plain].layout_runs() { + let Some((ink_left, ink_right)) = run_ink(&run) else { + continue; + }; + backgrounds.push(uniforms(crate::text::highlight_rect( + (block_left + ink_left, block_left + ink_right), + (text.bounds[1] + run.line_top, run.line_height), + text.font_size, + [cx, cy], + scale, + text.offset, + ))); + } + } + style => { + let hugged = ink.map_or(text.bounds, |(ink_left, ink_right)| { + [ + block_left + ink_left, + text.bounds[1], + block_left + ink_right, + text.bounds[3], + ] + }); + backgrounds.push(uniforms(crate::text::background_rect( + hugged, + laid_out_height, + text.font_size, + [cx, cy], + scale, + text.offset, + style == TextBackgroundStyle::Pill, + ))); + } + } + } - self.buffers.push(buffer); - self.tracks.push(text.track); - specs.push(AreaSpec { + self.draws.push(TextDraw { + track: text.track, bounds, left: origin_left, top: origin_top, scale, - color, - shadow, - background, + passes, + background: background_start..backgrounds.len(), }); } @@ -418,21 +713,17 @@ impl TextLayer { }, ); - self.segmented_render = - force_segmented || specs.iter().any(|spec| spec.background.is_some()); + self.segmented_render = force_segmented || !backgrounds.is_empty(); if self.segmented_render { - self.segment_backgrounds = specs.iter().map(|spec| spec.background.is_some()).collect(); let background = self .background .get_or_insert_with(|| TextBackgroundResources::new(device)); - background.ensure_capacity(device, specs.len()); - for (index, spec) in specs.iter().enumerate() { - if let Some(uniforms) = spec.background { - background.write(queue, index, &uniforms); - } + background.ensure_capacity(device, backgrounds.len()); + for (index, uniforms) in backgrounds.iter().enumerate() { + background.write(queue, index, uniforms); } - while self.segment_renderers.len() < specs.len() { + while self.segment_renderers.len() < self.draws.len() { self.segment_renderers.push(TextRenderer::new( &mut self.text_atlas, device, @@ -440,14 +731,14 @@ impl TextLayer { None, )); } - for (index, spec) in specs.iter().enumerate() { + for (index, draw) in self.draws.iter().enumerate() { if let Err(error) = self.segment_renderers[index].prepare( device, queue, &mut self.font_system, &mut self.text_atlas, &self.viewport, - text_areas(&self.buffers[index], spec), + text_areas(&self.buffers, draw), &mut self.swash_cache, ) { warn!("Failed to prepare text: {error:?}"); @@ -459,32 +750,33 @@ impl TextLayer { &mut self.font_system, &mut self.text_atlas, &self.viewport, - self.buffers + self.draws .iter() - .zip(&specs) - .flat_map(|(buffer, spec)| text_areas(buffer, spec)), + .flat_map(|draw| text_areas(&self.buffers, draw)), &mut self.swash_cache, ) { warn!("Failed to prepare text: {error:?}"); } } + fn render_draw<'a>(&'a self, pass: &mut wgpu::RenderPass<'a>, index: usize) { + let draw = &self.draws[index]; + if let Some(background) = &self.background { + for rect in draw.background.clone() { + background.render(pass, rect); + } + } + if let Err(error) = + self.segment_renderers[index].render(&self.text_atlas, &self.viewport, pass) + { + warn!("Failed to render text: {error:?}"); + } + } + pub fn render<'a>(&'a self, pass: &mut wgpu::RenderPass<'a>) { if self.segmented_render { - if let Some(background) = &self.background { - for (index, (renderer, has_background)) in self - .segment_renderers - .iter() - .zip(&self.segment_backgrounds) - .enumerate() - { - if *has_background { - background.render(pass, index); - } - if let Err(error) = renderer.render(&self.text_atlas, &self.viewport, pass) { - warn!("Failed to render text: {error:?}"); - } - } + for index in 0..self.draws.len() { + self.render_draw(pass, index); } } else if let Err(error) = self .text_renderer @@ -498,29 +790,67 @@ impl TextLayer { if !self.segmented_render { return; } - let Some(background) = &self.background else { - return; - }; - for (index, (renderer, has_background)) in self - .segment_renderers - .iter() - .zip(&self.segment_backgrounds) - .enumerate() - { - if self.tracks.get(index) != Some(&track) { - continue; - } - if *has_background { - background.render(pass, index); - } - if let Err(error) = renderer.render(&self.text_atlas, &self.viewport, pass) { - warn!("Failed to render text: {error:?}"); + for index in 0..self.draws.len() { + if self.draws[index].track == track { + self.render_draw(pass, index); } } } pub fn has_track(&self, track: u32) -> bool { - self.segmented_render && self.tracks.contains(&track) + self.segmented_render && self.draws.iter().any(|draw| draw.track == track) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn words_and_letters_map_bytes_to_reveal_units() { + let (map, units) = unit_map("Hi there", true); + assert_eq!(units, 2); + assert_eq!(map, [0, 0, 0, 1, 1, 1, 1, 1]); + + let (map, units) = unit_map("Hi there", false); + assert_eq!(units, 7); + assert_eq!(map, [0, 1, 1, 2, 3, 4, 5, 6]); + + let (map, units) = unit_map("é a", false); + assert_eq!(units, 2); + assert_eq!(map, [0, 0, 0, 1]); + } + + #[test] + fn rich_spans_rebuild_the_whole_string() { + let content = "ab\ncd"; + let red = Color::rgb(255, 0, 0); + let blue = Color::rgb(0, 0, 255); + let colors = [red, red, red, blue, blue]; + let spans = rich_spans(content, &colors); + assert_eq!(spans, vec![(0..3, red), (3..5, blue)]); + let rebuilt: String = spans + .iter() + .map(|(range, _)| &content[range.clone()]) + .collect(); + assert_eq!(rebuilt, content); + } + + #[test] + fn stroke_rings_grow_with_the_radius() { + assert_eq!(stroke_offsets(1.0).len(), 8); + assert_eq!(stroke_offsets(6.0).len(), 24); + assert_eq!(stroke_offsets(100.0).len(), 40); + let far = stroke_offsets(6.0); + assert!( + far.iter() + .all(|[x, y]| (x * x + y * y).sqrt() <= 6.0 + 1e-4) + ); + } + + #[test] + fn line_starts_follow_newlines() { + assert_eq!(line_starts("a\nbc\n"), [0, 2, 5]); } } @@ -561,6 +891,13 @@ mod gpu_tests { shadow: 0.0, offset: [0.0, 0.0], scale: 1.0, + stroke: None, + glow: 0.0, + gradient_color: None, + background_style: TextBackgroundStyle::Box, + wipe: 1.0, + stagger_in: None, + stagger_out: None, } } From 73a778d2466101cdf3c1fe829d47b9b2bf04a85f Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:51 +0100 Subject: [PATCH 039/217] feat(backgrounds): refresh animated gradient palettes --- crates/project/src/animated_gradient.rs | 249 +++++++++++++++++------- 1 file changed, 177 insertions(+), 72 deletions(-) diff --git a/crates/project/src/animated_gradient.rs b/crates/project/src/animated_gradient.rs index f747035abc3..070bd94f358 100644 --- a/crates/project/src/animated_gradient.rs +++ b/crates/project/src/animated_gradient.rs @@ -34,24 +34,65 @@ pub struct AnimatedGradientConfig { impl Default for AnimatedGradientConfig { fn default() -> Self { - Self { - color_stops: stops([0xff6b35, 0xf7c59f, 0xe891b9, 0x2e4057, 0x1a1a2e]), - direction: 45.0, - flow_scale: 2.0, - flow_strength: 55.0, - curvature: 70.0, - detail: 2.0, - relief: 60.0, - light: 50.0, - shade: 55.0, - ripples: 60.0, - grain_amount: 8.0, - grain_size: 1.0, - exposure: 0.0, - contrast: 100.0, - vibrance: 100.0, - motion_speed: 30.0, - seed: 0, + Mood::Field.config(COOL_CANDY, 0) + } +} + +/// Aqua to periwinkle to lilac; also the default palette for a fresh animated background. +const COOL_CANDY: [u32; 5] = [0x7ddcf9, 0x6f9bf5, 0x6b6fe8, 0x9a7ff5, 0xc0a6f7]; + +/// Two families of presets, both built like a blurred colour-field wallpaper: +/// a few adjacent hues at large scale, no specular highlights, fine grain. +/// `Field` is a full-frame colour wash at mid lightness; `Deep` starts from a +/// tinted dark base and lets one or two colours glow out of it. +#[derive(Clone, Copy)] +enum Mood { + Field, + Deep, +} + +impl Mood { + fn config(self, palette: [u32; 5], index: usize) -> AnimatedGradientConfig { + let variation = index as f32; + match self { + Self::Field => AnimatedGradientConfig { + color_stops: stops(palette), + direction: (30.0 + variation * 33.0) % 360.0, + flow_scale: 0.8 + (index % 3) as f32 * 0.1, + flow_strength: 65.0, + curvature: 75.0, + detail: 2.0, + relief: 15.0, + light: 5.0, + shade: 20.0, + ripples: 100.0, + grain_amount: 7.0, + grain_size: 1.0, + exposure: 0.0, + contrast: 104.0, + vibrance: 110.0, + motion_speed: 40.0, + seed: index as u32 * 137, + }, + Self::Deep => AnimatedGradientConfig { + color_stops: stops(palette), + direction: (20.0 + variation * 37.0) % 360.0, + flow_scale: 0.9 + (index % 3) as f32 * 0.1, + flow_strength: 65.0, + curvature: 80.0, + detail: 2.0, + relief: 30.0, + light: 8.0, + shade: 40.0, + ripples: 100.0, + grain_amount: 8.0, + grain_size: 1.0, + exposure: 0.0, + contrast: 106.0, + vibrance: 112.0, + motion_speed: 40.0, + seed: index as u32 * 137, + }, } } } @@ -203,21 +244,68 @@ impl AnimatedGradientConfig { pub fn from_seed(seed: u32) -> Self { let mut random = GradientRandom(u64::from(seed)); - let hue = random.range(0.0, 360.0); - let span = random.range(65.0, 260.0); + // Built from scratch rather than sampled from the templates: any + // start hue, a pastel / field / deep register, 3-5 stops and freely + // varied lighting. Only three quality rules survive: stops walk a short + // arc of adjacent hues (a long arc blends through grey), yellow-green + // is folded onto gold (olive), and a dark base never sits on orange or + // green (brown, forest) but leans maroon or navy instead. + let register = random.next() % 3; + let deep = register == 0; + let pastel = register == 1; + // The arc lives either in the teal -> blue -> violet -> magenta -> red + // -> orange -> gold sweep or entirely inside green; crossing between + // the two always blends through olive. + let (arc_start, arc_end): (f32, f32) = if random.next() % 6 == 0 { + (120.0, 200.0) + } else { + (175.0, 415.0) + }; + let span = random.range(60.0, (arc_end - arc_start).min(170.0)); + let start = random.range(arc_start, arc_end - span); + let reversed = random.next() % 2 == 0; + let hue = if reversed { start + span } else { start }; + let span = if reversed { -span } else { span }; let count = 3 + (random.next() % 3) as usize; let color_stops = (0..count) .map(|index| { let t = index as f32 / (count - 1) as f32; - let h = (hue + span * t + random.range(-12.0, 12.0)).rem_euclid(360.0); - let s = random.range(0.55, 0.92); - let l = (0.76 - t * 0.55 + random.range(-0.08, 0.08)).clamp(0.12, 0.88); + let mut h = (hue + span * t + random.range(-8.0, 8.0)).rem_euclid(360.0); + // Yellow-green at any lightness is olive; fold that band onto gold. + if (55.0..105.0).contains(&h) { + h = 40.0 + (h - 55.0) * 0.2; + } + let (s, l) = if deep { + if index == 0 { + if (15.0..55.0).contains(&h) { + h = 350.0; + } else if (105.0..175.0).contains(&h) { + h = 205.0; + } + (random.range(0.5, 0.8), random.range(0.08, 0.16)) + } else { + ( + random.range(0.6, 0.95), + (0.2 + t * 0.5 + random.range(-0.06, 0.06)).clamp(0.2, 0.8), + ) + } + } else if pastel { + ( + random.range(0.7, 1.0), + (0.78 + t * 0.1 + random.range(-0.05, 0.05)).clamp(0.68, 0.9), + ) + } else { + ( + random.range(0.7, 0.95), + (0.55 + t * 0.15 + random.range(-0.06, 0.06)).clamp(0.45, 0.78), + ) + }; AnimatedGradientStop { color: hsl_color(h, s, l), position: if index == 0 || index == count - 1 { t * 100.0 } else { - t * 100.0 + random.range(-7.0, 7.0) + t * 100.0 + random.range(-9.0, 9.0) }, } }) @@ -225,20 +313,28 @@ impl AnimatedGradientConfig { Self { color_stops, direction: random.range(0.0, 360.0), - flow_scale: random.range(0.7, 3.2), - flow_strength: random.range(25.0, 75.0), - curvature: random.range(30.0, 90.0), + flow_scale: random.range(0.6, 1.8), + flow_strength: random.range(40.0, 80.0), + curvature: random.range(40.0, 95.0), detail: random.range(1.0, 4.0), - relief: random.range(30.0, 85.0), - light: random.range(20.0, 75.0), - shade: random.range(25.0, 80.0), - ripples: random.range(30.0, 90.0), - grain_amount: random.range(3.0, 15.0), - grain_size: random.range(0.6, 2.0), - exposure: random.range(-8.0, 8.0), - contrast: random.range(90.0, 125.0), - vibrance: random.range(85.0, 130.0), - motion_speed: random.range(20.0, 65.0), + relief: if deep { + random.range(20.0, 55.0) + } else { + random.range(5.0, 35.0) + }, + light: random.range(0.0, 25.0), + shade: if deep { + random.range(25.0, 55.0) + } else { + random.range(10.0, 35.0) + }, + ripples: random.range(60.0, 100.0), + grain_amount: random.range(3.0, 12.0), + grain_size: random.range(0.7, 1.6), + exposure: random.range(-4.0, 5.0), + contrast: random.range(98.0, 112.0), + vibrance: random.range(95.0, 125.0), + motion_speed: random.range(30.0, 55.0), seed, } .normalized() @@ -346,51 +442,65 @@ pub struct AnimatedGradientCatalog { } pub fn animated_gradient_catalog() -> AnimatedGradientCatalog { + // Seven colour fields (five vibrant, two pastel) then five deep glows. + // Stops walk a short arc of adjacent hues so every blend stays clean, + // with the brightest, warmest stop reading as the light source. let palettes = [ ( - "Afterglow", - [0xff6b35, 0xf7c59f, 0xe891b9, 0x2e4057, 0x1a1a2e], + "Golden Hour", + Mood::Field, + [0xff6a52, 0xff9a4d, 0xf8c56a, 0xe9a8a0, 0xb0a6d8], ), - ("Tidal", [0x081c35, 0x165b83, 0x51b6d6, 0xc7eef2, 0xffd49b]), + ("Cool Candy", Mood::Field, COOL_CANDY), ( - "Northern Lights", - [0x091322, 0x155450, 0x3ac8a0, 0xa4eed4, 0x7154b8], + "Sherbet", + Mood::Field, + [0xf9c87e, 0xf28fb7, 0xc86ad8, 0x8467ea, 0x6a9af2], ), ( - "Electric Iris", - [0x23085d, 0x4737d7, 0x8b62f1, 0xee98d2, 0xffcfdf], + "Good Energy", + Mood::Field, + [0x5a35e0, 0x9a4de8, 0xd84fa0, 0xf0705f, 0xf5b85a], ), ( - "Rose Quartz", - [0x542c56, 0xa65d88, 0xea9cae, 0xffd2c2, 0xffead5], + "Rain Light", + Mood::Field, + [0x5f52b8, 0x6a86d4, 0x58b3cf, 0xc27e8c, 0xe7a58a], ), ( - "Solar Flare", - [0x260c23, 0x971c49, 0xef5a43, 0xffad58, 0xffe7a3], + "Blush Aqua", + Mood::Field, + [0x6fd9e6, 0x9bcdf5, 0xa8a6f0, 0xe3a0c4, 0xf3e6d6], ), ( - "Glacier", - [0xf0ffff, 0xbce9fa, 0x63b9de, 0x27628c, 0x11253e], + "Blossom", + Mood::Field, + [0xd66a5c, 0xe4948f, 0xf0cfa0, 0xc9b3e6, 0xe4eef0], ), ( - "Jade Silk", - [0x102f2e, 0x286854, 0x70af83, 0xc2dca6, 0xf8efd5], + "Moonlit", + Mood::Deep, + [0x1a0c4a, 0x4a1478, 0x7b2a9a, 0xb055b0, 0xd48fd0], ), ( - "Moonstone", - [0x181a36, 0x515470, 0x9195b1, 0xd1c7d7, 0xffe6dd], + "Deep Reef", + Mood::Deep, + [0x171a44, 0x2a4f8f, 0x2ee0cc, 0x6f69b8, 0xcf62ac], ), ( - "Hot Pink", - [0x21134b, 0x612585, 0xc33599, 0xfa77b1, 0xffced9], + "Ultraviolet", + Mood::Deep, + [0x150a3a, 0x3e1fa8, 0x7b3ff0, 0xd056e6, 0xff8a6a], ), ( - "Desert Glass", - [0x263a42, 0x737b76, 0xd1ad84, 0xf3d3a7, 0xfaeee0], + "Nightfall Bloom", + Mood::Deep, + [0x120820, 0x3a1a60, 0x7a4fb0, 0xbb8fe8, 0xecd0ff], ), ( - "Deep Current", - [0x040c23, 0x152a64, 0x265e9f, 0x44afb0, 0xb0ead2], + "Ember Bloom", + Mood::Deep, + [0x160809, 0x5a2030, 0xa04f66, 0xe092a8, 0xffd0e0], ), ]; AnimatedGradientCatalog { @@ -398,19 +508,10 @@ pub fn animated_gradient_catalog() -> AnimatedGradientCatalog { templates: palettes .into_iter() .enumerate() - .map(|(index, (name, palette))| AnimatedGradientPreset { + .map(|(index, (name, mood, palette))| AnimatedGradientPreset { id: format!("template-{index}"), name: name.into(), - config: AnimatedGradientConfig { - color_stops: stops(palette), - direction: (45.0 + index as f32 * 29.0) % 360.0, - flow_scale: 1.3 + (index % 4) as f32 * 0.4, - curvature: 45.0 + (index % 3) as f32 * 18.0, - relief: 40.0 + (index % 4) as f32 * 13.0, - seed: index as u32 * 137, - ..Default::default() - } - .normalized(), + config: mood.config(palette, index).normalized(), }) .collect(), controls: AnimatedGradientParameter::ALL @@ -428,6 +529,7 @@ mod tests { fn defaults_and_library_round_trip() { let config: AnimatedGradientConfig = serde_json::from_str("{}").unwrap(); assert_eq!(config, AnimatedGradientConfig::default()); + assert_eq!(config, config.normalized()); assert_eq!( serde_json::from_str::("{}").unwrap(), AnimatedGradientLibrary::default() @@ -534,7 +636,10 @@ mod tests { ..Default::default() } .normalized(); - assert_eq!(config.flow_scale, 2.0); + assert_eq!( + config.flow_scale, + AnimatedGradientConfig::default().flow_scale + ); assert_eq!(config.grain_size, 0.5); assert_eq!(config.detail, 6.0); assert_eq!(config.motion_speed, 0.0); From c56b742b431a0e6c93e4e718c91b1f138042baa6 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:51 +0100 Subject: [PATCH 040/217] fix(recording): map webcam placement to the captured region --- crates/recording/src/camera_placement.rs | 304 +++++++++++++++++++++++ crates/recording/src/lib.rs | 1 + 2 files changed, 305 insertions(+) create mode 100644 crates/recording/src/camera_placement.rs diff --git a/crates/recording/src/camera_placement.rs b/crates/recording/src/camera_placement.rs new file mode 100644 index 00000000000..c83145c8d3e --- /dev/null +++ b/crates/recording/src/camera_placement.rs @@ -0,0 +1,304 @@ +use cap_project::{Camera, CameraPosition, CameraXPosition, CameraYPosition}; + +use crate::screen_capture::ScreenCaptureTarget; + +#[derive(Clone, Copy, Debug)] +pub struct RecordingCameraPlacement { + column: u8, + bottom: bool, +} + +impl RecordingCameraPlacement { + pub fn from_bounds(camera: [f64; 4], reference: [f64; 4]) -> Option { + if !valid_bounds(camera) || !valid_bounds(reference) { + return None; + } + let [x, y, width, height] = camera; + let [left, top, reference_width, reference_height] = reference; + let center_x = ((x - left + width / 2.0) / reference_width).clamp(0.0, 1.0); + let center_y = ((y - top + height / 2.0) / reference_height).clamp(0.0, 1.0); + let column = if center_x < 1.0 / 3.0 { + 0 + } else if center_x > 2.0 / 3.0 { + 2 + } else { + 1 + }; + Some(Self { + column, + bottom: center_y >= 0.5, + }) + } + + pub fn apply(self, camera: &mut Camera) { + camera.position = CameraPosition { + x: match self.column { + 0 => CameraXPosition::Left, + 2 => CameraXPosition::Right, + _ => CameraXPosition::Center, + }, + y: if self.bottom { + CameraYPosition::Bottom + } else { + CameraYPosition::Top + }, + }; + camera.manual_position = None; + } +} + +fn valid_bounds([x, y, width, height]: [f64; 4]) -> bool { + [x, y, width, height, x + width, y + height] + .into_iter() + .all(f64::is_finite) + && width > 0.0 + && height > 0.0 +} + +fn overlap(a: [f64; 4], b: [f64; 4]) -> f64 { + ((a[0] + a[2]).min(b[0] + b[2]) - a[0].max(b[0])).max(0.0) + * ((a[1] + a[3]).min(b[1] + b[3]) - a[1].max(b[1])).max(0.0) +} + +// macOS capture coordinates are global points; Windows and X11 use global +// pixels so monitors with different DPI never share incompatible logical origins. +pub fn recording_camera_placement( + target: &ScreenCaptureTarget, + camera: [f64; 4], +) -> Option { + if matches!(target, ScreenCaptureTarget::CameraOnly) || !valid_bounds(camera) { + return None; + } + let reference = capture_bounds(target) + .filter(|bounds| valid_bounds(*bounds) && overlap(camera, *bounds) > 0.0); + let reference = reference.or_else(|| { + scap_targets::Display::list() + .into_iter() + .filter_map(display_bounds) + .filter(|bounds| valid_bounds(*bounds) && overlap(camera, *bounds) > 0.0) + .max_by(|a, b| overlap(camera, *a).total_cmp(&overlap(camera, *b))) + })?; + RecordingCameraPlacement::from_bounds(camera, reference) +} + +fn display_bounds(display: scap_targets::Display) -> Option<[f64; 4]> { + #[cfg(target_os = "macos")] + let bounds = display.raw_handle().logical_bounds()?; + #[cfg(not(target_os = "macos"))] + let bounds = display.raw_handle().physical_bounds()?; + Some([ + bounds.position().x(), + bounds.position().y(), + bounds.size().width(), + bounds.size().height(), + ]) +} + +fn capture_bounds(target: &ScreenCaptureTarget) -> Option<[f64; 4]> { + match target { + ScreenCaptureTarget::CameraOnly => None, + ScreenCaptureTarget::Display { .. } => display_bounds(target.display()?), + ScreenCaptureTarget::Window { id } => { + let window = scap_targets::Window::from_id(id)?; + #[cfg(target_os = "macos")] + let bounds = window.raw_handle().logical_bounds()?; + #[cfg(not(target_os = "macos"))] + let bounds = window.raw_handle().physical_bounds()?; + Some([ + bounds.position().x(), + bounds.position().y(), + bounds.size().width(), + bounds.size().height(), + ]) + } + ScreenCaptureTarget::Area { bounds, .. } => { + let display = target.display()?; + let origin = display_bounds(display)?; + #[cfg(target_os = "macos")] + let scale = (1.0, 1.0); + #[cfg(not(target_os = "macos"))] + let scale = { + let logical = display.logical_size()?; + (origin[2] / logical.width(), origin[3] / logical.height()) + }; + Some([ + origin[0] + bounds.position().x() * scale.0, + origin[1] + bounds.position().y() * scale.1, + bounds.size().width() * scale.0, + bounds.size().height() * scale.1, + ]) + } + } +} + +#[cfg(test)] +mod tests { + use super::*; + use cap_project::BackgroundBlurMode; + + fn position(bounds: [f64; 4], reference: [f64; 4], cutout: bool) -> serde_json::Value { + let mut camera = Camera::default(); + camera.manual_position = Some(cap_project::XY::new(0.8, 0.2)); + if cutout { + camera.background_blur.mode = BackgroundBlurMode::Remove; + } + RecordingCameraPlacement::from_bounds(bounds, reference) + .unwrap() + .apply(&mut camera); + assert!(camera.manual_position.is_none()); + serde_json::to_value(camera.position).unwrap() + } + + #[test] + fn chooses_all_six_position_presets_with_and_without_cutout() { + let reference = [0.0, 0.0, 1920.0, 1080.0]; + for (x, horizontal) in [(40.0, "left"), (860.0, "center"), (1600.0, "right")] { + for (y, vertical) in [(20.0, "top"), (800.0, "bottom")] { + for cutout in [false, true] { + assert_eq!( + position([x, y, 200.0, 200.0], reference, cutout), + serde_json::json!({"x": horizontal, "y": vertical}), + ); + } + } + } + } + + #[test] + fn reported_low_left_cutout_selects_bottom_left_not_a_custom_position() { + let center = [0.1123798076923077, 0.6731481685185186]; + assert_eq!( + position( + [ + center[0] * 1920.0 - 100.0, + center[1] * 1080.0 - 100.0, + 200.0, + 200.0 + ], + [0.0, 0.0, 1920.0, 1080.0], + true + ), + serde_json::json!({"x": "left", "y": "bottom"}), + ); + } + + #[test] + fn preset_boundaries_use_the_preview_center() { + for (x, horizontal) in [ + (299.0, "left"), + (300.0, "center"), + (600.0, "center"), + (601.0, "right"), + ] { + for (y, vertical) in [(299.0, "top"), (300.0, "bottom")] { + assert_eq!( + position( + [x - 50.0, y - 50.0, 100.0, 100.0], + [0.0, 0.0, 900.0, 600.0], + false + ), + serde_json::json!({"x": horizontal, "y": vertical}) + ); + } + } + } + + #[test] + fn placement_is_invariant_under_display_origin_and_scale() { + for origin in [[0.0, 0.0], [-3840.0, -2160.0], [1920.0, -400.0]] { + for scale in [1.0, 1.25, 1.5, 2.0, 3.0] { + for cutout in [false, true] { + let bounds = [80.0, 760.0, 240.0, 240.0]; + let reference = [0.0, 0.0, 1920.0, 1080.0]; + let shifted = |rect: [f64; 4]| { + [ + origin[0] + rect[0] * scale, + origin[1] + rect[1] * scale, + rect[2] * scale, + rect[3] * scale, + ] + }; + let expected = position(bounds, reference, cutout); + let actual = position(shifted(bounds), shifted(reference), cutout); + assert_eq!(actual, expected); + } + } + } + } + + #[test] + fn window_and_area_origins_are_relative_to_the_recorded_region() { + let placed = position( + [-900.0, 250.0, 200.0, 200.0], + [-1400.0, 200.0, 1200.0, 700.0], + false, + ); + assert_eq!(placed, serde_json::json!({"x": "center", "y": "top"})); + } + + #[test] + fn invalid_geometry_is_ignored_and_offscreen_centers_are_clamped() { + let valid = [0.0, 0.0, 100.0, 100.0]; + for index in 0..4 { + for value in [f64::NAN, f64::INFINITY, f64::NEG_INFINITY] { + let mut invalid = valid; + invalid[index] = value; + assert!(RecordingCameraPlacement::from_bounds(invalid, valid).is_none()); + assert!(RecordingCameraPlacement::from_bounds(valid, invalid).is_none()); + } + } + for size in [0.0, -1.0] { + assert!( + RecordingCameraPlacement::from_bounds([0.0, 0.0, size, 100.0], valid).is_none() + ); + assert!( + RecordingCameraPlacement::from_bounds(valid, [0.0, 0.0, 100.0, size]).is_none() + ); + } + let placed = position([-100.0, 200.0, 20.0, 20.0], valid, false); + assert_eq!(placed, serde_json::json!({"x": "left", "y": "bottom"})); + } + + #[test] + fn applying_placement_preserves_every_other_camera_setting() { + for mode in [ + BackgroundBlurMode::Off, + BackgroundBlurMode::Light, + BackgroundBlurMode::Heavy, + BackgroundBlurMode::Remove, + ] { + let mut camera = Camera::default(); + camera.background_blur.mode = mode; + let mut expected = serde_json::to_value(&camera).unwrap(); + RecordingCameraPlacement::from_bounds( + [800.0, 20.0, 320.0, 180.0], + [0.0, 0.0, 1920.0, 1080.0], + ) + .unwrap() + .apply(&mut camera); + expected["manualPosition"] = serde_json::Value::Null; + expected["position"] = serde_json::json!({"x": "center", "y": "top"}); + assert_eq!(serde_json::to_value(&camera).unwrap(), expected); + } + } + + #[test] + #[ignore = "placement microbenchmark"] + fn placement_benchmark() { + let mut camera = Camera::default(); + camera.background_blur.mode = BackgroundBlurMode::Remove; + let iterations = 1_000_000; + let started = std::time::Instant::now(); + for index in 0..iterations { + let bounds = std::hint::black_box([f64::from(index % 1600), 20.0, 200.0, 200.0]); + RecordingCameraPlacement::from_bounds(bounds, [0.0, 0.0, 1920.0, 1080.0]) + .unwrap() + .apply(&mut camera); + std::hint::black_box(&camera); + } + println!( + "placement mapping: {:.1} ns/operation over {iterations} operations", + started.elapsed().as_nanos() as f64 / f64::from(iterations) + ); + } +} diff --git a/crates/recording/src/lib.rs b/crates/recording/src/lib.rs index adf7be98b2d..e07288d9403 100644 --- a/crates/recording/src/lib.rs +++ b/crates/recording/src/lib.rs @@ -1,4 +1,5 @@ pub mod benchmark; +pub mod camera_placement; mod capture_pipeline; pub mod cursor; pub mod defaults; From a02b625db2f52618fbe934adf86f61bba7ce8f57 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Sun, 13 Sep 2026 23:46:52 +0100 Subject: [PATCH 041/217] fix(desktop): await the recording cue before countdown capture --- .../src-tauri/sounds/start-recording.ogg | Bin 11227 -> 21667 bytes apps/desktop/src-tauri/src/audio.rs | 9 + apps/desktop/src-tauri/src/recording.rs | 55 ++- .../src-tauri/src/recording_start_sound.rs | 444 ++++++++++++++++++ .../src/routes/in-progress-recording.tsx | 4 +- 5 files changed, 507 insertions(+), 5 deletions(-) create mode 100644 apps/desktop/src-tauri/src/recording_start_sound.rs diff --git a/apps/desktop/src-tauri/sounds/start-recording.ogg b/apps/desktop/src-tauri/sounds/start-recording.ogg index 3c29375678275525ee6cdc71f2a5fb1dc53e209f..31e2a5d82785de268a6350c1261556d58c2688c7 100644 GIT binary patch literal 21667 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 break, + _ = tokio::time::sleep(Duration::from_millis(50)) => {} + } + if clean_generation.is_some_and(|generation| { + crate::clean_capture::stop_requested(&app, generation) + }) { + return Err("Recording cancelled".into()); + } + #[cfg(target_os = "linux")] + if inputs.mode == RecordingMode::Instant + && linux_instant::current(&app).is_none_or(|attempt| attempt.cancelled()) + { + return Err("Instant startup cancelled".into()); + } + } + if clean_generation + .is_some_and(|generation| crate::clean_capture::stop_requested(&app, generation)) + { + return Err("Recording cancelled".into()); + } + } + } + + if play_countdown_sound { + let _ = RecordingEvent::Countdown { value: 0 }.emit(&app); + let sound = crate::audio::play_recording_start_sound(); + tokio::pin!(sound); + loop { + tokio::select! { + _ = &mut sound => break, + _ = tokio::time::sleep(Duration::from_millis(50)) => {} + } if clean_generation .is_some_and(|generation| crate::clean_capture::stop_requested(&app, generation)) { return Err("Recording cancelled".into()); } + #[cfg(target_os = "linux")] + if inputs.mode == RecordingMode::Instant + && linux_instant::current(&app).is_none_or(|attempt| attempt.cancelled()) + { + return Err("Instant startup cancelled".into()); + } } } @@ -3355,7 +3400,9 @@ async fn start_recording_prepared( }); } - AppSounds::StartRecording.play(); + if !play_countdown_sound { + AppSounds::StartRecording.play(); + } Ok(RecordingAction::Started) } diff --git a/apps/desktop/src-tauri/src/recording_start_sound.rs b/apps/desktop/src-tauri/src/recording_start_sound.rs new file mode 100644 index 00000000000..378dbe81d27 --- /dev/null +++ b/apps/desktop/src-tauri/src/recording_start_sound.rs @@ -0,0 +1,444 @@ +use std::{ + io::Cursor, + sync::{Arc, Mutex}, + time::Duration, +}; + +use rodio::{Decoder, OutputStream, Sink, Source}; + +const PLAYBACK_TIMEOUT: Duration = Duration::from_secs(3); +const OUTPUT_SETTLING_TIME: Duration = Duration::from_millis(500); +static ACTIVE_WORKER: Mutex>> = Mutex::new(None); + +pub fn should_play_countdown_sound(countdown: Option, visible: bool) -> bool { + visible && countdown.is_some_and(|seconds| seconds > 1) +} + +#[derive(Default)] +struct PlaybackState { + cancelled: bool, + started: bool, + sink: Option>, +} + +#[derive(Default)] +struct PlaybackControl(Mutex); + +impl PlaybackControl { + fn start(&self, sink: Arc, source: S) -> bool + where + S: Source + Send + 'static, + { + let mut state = self.0.lock().unwrap_or_else(|error| error.into_inner()); + if state.cancelled { + return false; + } + sink.append(source); + state.started = true; + state.sink = Some(sink); + true + } + + #[cfg(target_os = "macos")] + fn start_native(&self, start: impl FnOnce()) -> bool { + let mut state = self.0.lock().unwrap_or_else(|error| error.into_inner()); + if state.cancelled { + return false; + } + state.started = true; + start(); + true + } + + #[cfg(target_os = "macos")] + fn started(&self) -> bool { + self.0 + .lock() + .unwrap_or_else(|error| error.into_inner()) + .started + } + + fn cancelled(&self) -> bool { + self.0 + .lock() + .unwrap_or_else(|error| error.into_inner()) + .cancelled + } + + fn cancel(&self) -> bool { + let mut state = self.0.lock().unwrap_or_else(|error| error.into_inner()); + state.cancelled = true; + if let Some(sink) = state.sink.take() { + sink.stop(); + } + std::mem::take(&mut state.started) + } +} + +struct CancelOnDrop(Arc); + +impl Drop for CancelOnDrop { + fn drop(&mut self) { + self.0.cancel(); + } +} + +struct WorkerSlot; + +impl Drop for WorkerSlot { + fn drop(&mut self) { + *ACTIVE_WORKER + .lock() + .unwrap_or_else(|error| error.into_inner()) = None; + } +} + +pub async fn play(bytes: &'static [u8]) { + let control = { + let mut active = ACTIVE_WORKER + .lock() + .unwrap_or_else(|error| error.into_inner()); + match active.as_ref() { + Some(control) => Err(control.clone()), + None => { + let control = Arc::new(PlaybackControl::default()); + *active = Some(control.clone()); + Ok(control) + } + } + }; + let control = match control { + Ok(control) => control, + Err(control) => { + tracing::warn!("Previous start sound worker is still stopping; skipping start sound"); + control.cancel(); + tokio::time::sleep(OUTPUT_SETTLING_TIME).await; + return; + } + }; + let slot = WorkerSlot; + play_with_worker( + control, + PLAYBACK_TIMEOUT, + OUTPUT_SETTLING_TIME, + move |control| { + let _slot = slot; + #[cfg(target_os = "macos")] + match native::play(bytes, &control) { + Ok(()) => return Ok(()), + Err(error) if control.started() || control.cancelled() => return Err(error), + Err(error) => { + tracing::warn!(%error, "Native start sound unavailable; using fallback") + } + } + let (_stream, handle) = + OutputStream::try_default().map_err(|error| error.to_string())?; + let source = Decoder::new(Cursor::new(bytes)).map_err(|error| error.to_string())?; + let sink = Arc::new(Sink::try_new(&handle).map_err(|error| error.to_string())?); + if !control.start(sink.clone(), source) { + return Ok(()); + } + while !sink.empty() && !control.cancelled() { + std::thread::sleep(Duration::from_millis(10)); + } + // Rodio drains its queue before buffered output reaches the speakers. + // Keep the stream alive through a quiet interval before admitting capture. + std::thread::sleep(OUTPUT_SETTLING_TIME); + Ok(()) + }, + ) + .await; +} + +async fn play_with_worker( + control: Arc, + timeout: Duration, + settling_time: Duration, + worker: impl FnOnce(Arc) -> Result<(), String> + Send + 'static, +) { + let _cancel_on_drop = CancelOnDrop(control.clone()); + let (sender, receiver) = tokio::sync::oneshot::channel(); + let worker_control = control.clone(); + if let Err(error) = std::thread::Builder::new() + .name("recording-start-sound".into()) + .spawn(move || { + let result = worker(worker_control); + let _ = sender.send(result); + }) + { + tracing::warn!(%error, "Could not start recording sound worker"); + return; + } + + let failed = match tokio::time::timeout(timeout, receiver).await { + Ok(Ok(Ok(()))) => false, + Ok(Ok(Err(error))) => { + tracing::warn!(%error, "Recording start sound unavailable"); + true + } + Ok(Err(error)) => { + tracing::warn!(%error, "Recording start sound worker stopped"); + true + } + Err(_) => { + tracing::warn!("Recording start sound timed out"); + true + } + }; + if control.cancel() && failed { + tokio::time::sleep(settling_time).await; + } +} + +#[cfg(target_os = "macos")] +mod native { + use super::*; + use cidre::{av, blocks, objc}; + use std::sync::mpsc; + + const ACOUSTIC_SETTLING_TIME: Duration = Duration::from_millis(100); + + trait PlayedBackScheduling: objc::Obj { + #[objc::msg_send(scheduleBuffer:completionCallbackType:completionHandler:)] + fn schedule_played_back( + &self, + buffer: &av::AudioPcmBuf, + callback_type: av::audio::PlayerNodeCompletionCbType, + callback: &mut blocks::EscBlock, + ); + } + + impl PlayedBackScheduling for av::AudioPlayerNode {} + + struct Output { + engine: cidre::arc::R, + player: cidre::arc::R, + } + + impl Drop for Output { + fn drop(&mut self) { + let _ = objc::try_catch(|| { + self.player.stop(); + self.engine.stop(); + }); + } + } + + pub fn play(bytes: &'static [u8], control: &PlaybackControl) -> Result<(), String> { + objc::try_catch(|| play_inner(bytes, control)) + .map_err(|error| format!("Start sound output exception: {error:?}"))? + } + + fn play_inner(bytes: &'static [u8], control: &PlaybackControl) -> Result<(), String> { + let source = Decoder::new(Cursor::new(bytes)).map_err(|error| error.to_string())?; + let channels = usize::from(source.channels()); + let rate = source.sample_rate(); + let samples: Vec = source.collect(); + let frames = u32::try_from(samples.len() / channels).map_err(|error| error.to_string())?; + let format = av::AudioFormat::standard_with_sample_rate_and_channels( + f64::from(rate), + channels as u32, + ) + .ok_or("Could not create start sound format")?; + let mut buffer = av::AudioPcmBuf::with_format(&format, frames) + .ok_or("Could not create start sound buffer")?; + buffer + .set_frame_len(frames) + .map_err(|error| format!("{error:?}"))?; + for channel in 0..channels { + let target = buffer + .data_f32_mut_at(channel) + .ok_or("Could not access start sound samples")?; + for (frame, sample) in target.iter_mut().enumerate() { + *sample = f32::from(samples[frame * channels + channel]) / 32768.0; + } + } + + let mut output = Output { + engine: av::AudioEngine::new(), + player: av::AudioPlayerNode::new(), + }; + output.engine.attach_node(&output.player); + let mixer = output.engine.main_mixer_node().retained(); + output + .engine + .connect_node_to_node(&output.player, &mixer, Some(&format)); + output.engine.prepare(); + output + .engine + .start() + .map_err(|error| format!("{error:?}"))?; + let (sender, receiver) = mpsc::channel(); + let mut callback = blocks::EscBlock::new1(move |kind| { + let _ = sender.send(kind); + }); + output.player.schedule_played_back( + &buffer, + av::audio::PlayerNodeCompletionCbType::DataPlayedBack, + &mut callback, + ); + if !control.start_native(|| output.player.play()) { + return Ok(()); + } + + loop { + if control.cancelled() { + return Ok(()); + } + match receiver.recv_timeout(Duration::from_millis(10)) { + Ok(av::audio::PlayerNodeCompletionCbType::DataPlayedBack) => break, + Ok(_) => return Err("Unexpected start sound completion".into()), + Err(mpsc::RecvTimeoutError::Timeout) => {} + Err(mpsc::RecvTimeoutError::Disconnected) => { + return Err("Start sound completion disconnected".into()); + } + } + } + // DataPlayedBack includes device latency; allow the speaker's acoustic tail to clear too. + std::thread::sleep(ACOUSTIC_SETTLING_TIME); + Ok(()) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn pre_capture_sound_requires_a_visible_multi_second_countdown() { + for countdown in [None, Some(0), Some(1), Some(2), Some(3), Some(5), Some(10)] { + assert!(!should_play_countdown_sound(countdown, false)); + } + for countdown in [None, Some(0), Some(1)] { + assert!(!should_play_countdown_sound(countdown, true)); + } + for countdown in [Some(2), Some(3), Some(5), Some(10)] { + assert!(should_play_countdown_sound(countdown, true)); + } + } + + #[tokio::test] + async fn waits_for_playback_worker_before_returning() { + let (entered_tx, entered_rx) = tokio::sync::oneshot::channel(); + let (finish_tx, finish_rx) = std::sync::mpsc::channel(); + let playback = tokio::spawn(play_with_worker( + Arc::new(PlaybackControl::default()), + Duration::from_secs(2), + Duration::ZERO, + move |_| { + entered_tx.send(()).unwrap(); + finish_rx.recv().unwrap(); + Ok(()) + }, + )); + entered_rx.await.unwrap(); + assert!(!playback.is_finished()); + finish_tx.send(()).unwrap(); + playback.await.unwrap(); + } + + #[tokio::test] + async fn timeout_prevents_a_delayed_worker_from_playing() { + let (control_tx, control_rx) = tokio::sync::oneshot::channel(); + let (finish_tx, finish_rx) = std::sync::mpsc::channel(); + play_with_worker( + Arc::new(PlaybackControl::default()), + Duration::from_millis(20), + Duration::ZERO, + move |control| { + control_tx.send(control).ok().unwrap(); + finish_rx.recv().unwrap(); + Ok(()) + }, + ) + .await; + let control = control_rx.await.unwrap(); + let (sink, _output) = Sink::new_idle(); + assert!(!control.start( + Arc::new(sink), + rodio::buffer::SamplesBuffer::new(1, 48000, vec![1i16; 10]) + )); + finish_tx.send(()).unwrap(); + } + + #[tokio::test] + async fn dropping_startup_cancels_playback() { + let (control_tx, control_rx) = tokio::sync::oneshot::channel(); + let (finish_tx, finish_rx) = std::sync::mpsc::channel(); + let playback = tokio::spawn(play_with_worker( + Arc::new(PlaybackControl::default()), + Duration::from_secs(2), + Duration::ZERO, + move |control| { + control_tx.send(control).ok().unwrap(); + finish_rx.recv().unwrap(); + Ok(()) + }, + )); + let control = control_rx.await.unwrap(); + playback.abort(); + assert!(playback.await.unwrap_err().is_cancelled()); + assert!(control.cancelled()); + finish_tx.send(()).unwrap(); + } + + #[cfg(target_os = "macos")] + #[test] + fn cancellation_prevents_late_native_playback() { + let control = PlaybackControl::default(); + assert!(!control.cancel()); + assert!(!control.start_native(|| panic!("Cancelled output must not play"))); + assert!(!control.started()); + } + + #[cfg(target_os = "macos")] + #[tokio::test] + async fn native_playback_timeout_waits_for_buffered_audio_to_settle() { + let control = Arc::new(PlaybackControl::default()); + assert!(control.start_native(|| {})); + let (finish_tx, finish_rx) = std::sync::mpsc::channel(); + let timeout = Duration::from_millis(20); + let settling_time = Duration::from_millis(30); + let started = std::time::Instant::now(); + play_with_worker(control.clone(), timeout, settling_time, move |_| { + finish_rx.recv().unwrap(); + Ok(()) + }) + .await; + assert!(control.cancelled()); + assert!(started.elapsed() >= timeout + settling_time); + finish_tx.send(()).unwrap(); + } + + #[tokio::test] + async fn unavailable_output_does_not_fail_recording_startup() { + play_with_worker( + Arc::new(PlaybackControl::default()), + Duration::from_secs(1), + Duration::ZERO, + |_| Err("No audio output device".into()), + ) + .await; + } + + #[tokio::test] + async fn failed_playback_waits_for_buffered_audio_to_settle() { + let started = std::time::Instant::now(); + let settling_time = Duration::from_millis(30); + play_with_worker( + Arc::new(PlaybackControl::default()), + Duration::from_secs(1), + settling_time, + |control| { + let (sink, _output) = Sink::new_idle(); + assert!(control.start( + Arc::new(sink), + rodio::buffer::SamplesBuffer::new(1, 48000, vec![1i16; 10]), + )); + Err("Output disconnected after playback began".into()) + }, + ) + .await; + assert!(started.elapsed() >= settling_time); + } +} diff --git a/apps/desktop/src/routes/in-progress-recording.tsx b/apps/desktop/src/routes/in-progress-recording.tsx index 89c54e8903a..afb6298659b 100644 --- a/apps/desktop/src/routes/in-progress-recording.tsx +++ b/apps/desktop/src/routes/in-progress-recording.tsx @@ -884,6 +884,8 @@ function InProgressRecordingInner() { const s = state(); return s.variant === "countdown" ? s.current : 0; }; + const isStarting = () => + isInitializing() || (isCountdown() && countdownCurrent() === 0); return (

  • kQaLCqltx( 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˄PaY*$<%7F5 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