From e3642cad97db604c4735fb6f04ceca0019364567 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E6=B6=9B?= Date: Thu, 6 Feb 2025 10:45:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3wacg=E8=87=AA=E9=80=82?= =?UTF-8?q?=E5=BA=94=E6=8E=A8=E6=96=AD=E7=AE=97=E6=B3=95=E4=B8=BA=E5=8F=8C?= =?UTF-8?q?=E5=90=91=E4=BF=AE=E6=AD=A3=E7=AD=96=E7=95=A5=EF=BC=8C=E4=BB=A5?= =?UTF-8?q?=E9=81=BF=E5=85=8D=E6=8C=87=E5=AE=9A=E6=9D=A1=E4=BB=B6=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E6=BB=A1=E8=B6=B3=E6=97=B6=E6=AD=BB=E5=BE=AA=E7=8E=AF?= =?UTF-8?q?=E7=9A=84=E5=8F=91=E7=94=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- color-module/src/schemes/q_style/color_set.rs | 33 ++++-- src/color_functions/color_module.d.ts | 52 ++++----- src/color_functions/color_module.js | 104 +++++++++--------- src/color_functions/color_module_bg.wasm | Bin 694838 -> 695309 bytes src/color_functions/color_module_bg.wasm.d.ts | 28 ++--- 5 files changed, 113 insertions(+), 104 deletions(-) diff --git a/color-module/src/schemes/q_style/color_set.rs b/color-module/src/schemes/q_style/color_set.rs index 2a1a33a..b729eba 100644 --- a/color-module/src/schemes/q_style/color_set.rs +++ b/color-module/src/schemes/q_style/color_set.rs @@ -25,28 +25,37 @@ pub struct ColorSet { fn fit_to_wacg(reference: &Oklch, neutral_swatch: &NeutralSwatch, ratio: f32) -> Oklch { let reference_luma = map_oklch_to_luma(reference); let mut new_target = neutral_swatch.get(reference.l); - let quick_factor: f32 = if reference.l <= 0.5 { 0.05 } else { -0.05 }; - let fine_factor: f32 = if reference.l <= 0.5 { 0.01 } else { -0.01 }; + let factor: f32 = if reference.l <= 0.5 { 0.01 } else { -0.01 }; let match_wacg = |original: &Oklch, reference: &Luma| { let luma = map_oklch_to_luma(original); luma.relative_contrast(*reference) }; - while match_wacg(&new_target, &reference_luma) < ratio { - new_target.l = new_target.l * (1.0 + quick_factor); - if new_target.l > 1.0 { - new_target.l = 1.0; + let mut last_contrast_ratio = 0.0; + let mut repeat_count = 0; + let mut target_ratio = ratio; + loop { + let contrast_ratio = match_wacg(&new_target, &reference_luma); + if contrast_ratio >= target_ratio { break; } - } - while match_wacg(&new_target, &reference_luma) < ratio { - new_target.l = new_target.l * (1.0 + fine_factor); - if new_target.l > 1.0 { - new_target.l = 1.0; - break; + if (contrast_ratio - last_contrast_ratio).abs() / last_contrast_ratio < 0.001 { + repeat_count += 1; + if repeat_count > 20 { + target_ratio *= 1.0 - 0.01; + repeat_count = 0; + } + } else { + repeat_count = 0; } + last_contrast_ratio = contrast_ratio; + new_target = Oklch { + l: new_target.l * (1.0 + factor), + ..new_target + }; } + new_target } diff --git a/src/color_functions/color_module.d.ts b/src/color_functions/color_module.d.ts index 7fa0a0e..f719dca 100644 --- a/src/color_functions/color_module.d.ts +++ b/src/color_functions/color_module.d.ts @@ -14,20 +14,20 @@ export function relative_differ_in_oklch(color: string, other: string): OklchDif export function tint_scale(basic_color: string, mixed_color: string): MixReversing; export function shade_scale(basic_color: string, mixed_color: string): MixReversing; export function shift_hue(color: string, degree: number): string; -export function analogous_30(color: string): (string)[]; -export function analogous_60(color: string): (string)[]; +export function analogous_30(color: string): string[]; +export function analogous_60(color: string): string[]; export function complementary(color: string): string; -export function split_complementary(color: string): (string)[]; -export function tetradic(color: string): (string)[]; -export function triadic(color: string): (string)[]; -export function generate_palette_from_color(reference_color: string, swatch_amount: number, minimum_lightness: number, maximum_lightness: number, use_reference_color?: boolean, reference_color_bias?: number): (string)[]; +export function split_complementary(color: string): string[]; +export function tetradic(color: string): string[]; +export function triadic(color: string): string[]; +export function generate_palette_from_color(reference_color: string, swatch_amount: number, minimum_lightness: number, maximum_lightness: number, use_reference_color?: boolean | null, reference_color_bias?: number | null): string[]; export function color_categories(): any; -export function search_color_cards(tag: string, category?: string): any; +export function search_color_cards(tag: string, category?: string | null): any; export function generate_material_design_3_scheme(source_color: string, error_color: string, custom_colors: any): any; export function generate_material_design_2_scheme(primary_color: string, secondary_color: string, error_color: string, custom_colors: any): any; export function generate_q_scheme_automatically(primary_color: string, danger_color: string, success_color: string, warning_color: string, info_color: string, fg_color: string, bg_color: string, setting: SchemeSetting): any; -export function generate_q_scheme_manually(primary_color: string, secondary_color: string | undefined, tertiary_color: string | undefined, accent_color: string | undefined, danger_color: string, success_color: string, warning_color: string, info_color: string, fg_color: string, bg_color: string, setting: SchemeSetting): any; -export function generate_swatch_scheme(colors: (SwatchEntry)[], setting: SwatchSchemeSetting): any; +export function generate_q_scheme_manually(primary_color: string, secondary_color: string | null | undefined, tertiary_color: string | null | undefined, accent_color: string | null | undefined, danger_color: string, success_color: string, warning_color: string, info_color: string, fg_color: string, bg_color: string, setting: SchemeSetting): any; +export function generate_swatch_scheme(colors: SwatchEntry[], setting: SwatchSchemeSetting): any; export function lighten(color: string, percent: number): string; export function lighten_absolute(color: string, value: number): string; export function darken(color: string, percent: number): string; @@ -35,9 +35,9 @@ export function darken_absolute(color: string, value: number): string; export function mix(color1: string, color2: string, percent: number): string; export function tint(color: string, percent: number): string; export function shade(color: string, percent: number): string; -export function series(color: string, expand_amount: number, step: number): (string)[]; -export function tonal_lighten_series(color: string, expand_amount: number, step: number): (string)[]; -export function tonal_darken_series(color: string, expand_amount: number, step: number): (string)[]; +export function series(color: string, expand_amount: number, step: number): string[]; +export function tonal_lighten_series(color: string, expand_amount: number, step: number): string[]; +export function tonal_darken_series(color: string, expand_amount: number, step: number): string[]; export function represent_rgb(color: string): Uint8Array; export function rgb_to_hex(r: number, g: number, b: number): string; export function represent_hsl(color: string): Float32Array; @@ -220,13 +220,13 @@ export interface InitOutput { readonly __wbg_set_mixreversing_b_factor: (a: number, b: number) => void; readonly __wbg_get_mixreversing_average: (a: number) => number; readonly __wbg_set_mixreversing_average: (a: number, b: number) => void; - readonly __wbg_hsldifference_free: (a: number, b: number) => void; - readonly __wbg_get_hsldifference_hue: (a: number) => number; - readonly __wbg_set_hsldifference_hue: (a: number, b: number) => void; - readonly __wbg_get_hsldifference_saturation: (a: number) => number; - readonly __wbg_set_hsldifference_saturation: (a: number, b: number) => void; - readonly __wbg_get_hsldifference_lightness: (a: number) => number; - readonly __wbg_set_hsldifference_lightness: (a: number, b: number) => void; + readonly __wbg_rgbdifference_free: (a: number, b: number) => void; + readonly __wbg_get_rgbdifference_r: (a: number) => number; + readonly __wbg_set_rgbdifference_r: (a: number, b: number) => void; + readonly __wbg_get_rgbdifference_g: (a: number) => number; + readonly __wbg_set_rgbdifference_g: (a: number, b: number) => void; + readonly __wbg_get_rgbdifference_b: (a: number) => number; + readonly __wbg_set_rgbdifference_b: (a: number, b: number) => void; readonly __wbg_swatchentry_free: (a: number, b: number) => void; readonly __wbg_get_swatchentry_name: (a: number) => [number, number]; readonly __wbg_set_swatchentry_name: (a: number, b: number, c: number) => void; @@ -253,13 +253,13 @@ export interface InitOutput { readonly represent_hct: (a: number, b: number) => [number, number, number, number]; readonly hct_to_hex: (a: number, b: number, c: number) => [number, number, number, number]; readonly wacg_relative_contrast: (a: number, b: number, c: number, d: number) => [number, number, number]; - readonly __wbg_rgbdifference_free: (a: number, b: number) => void; - readonly __wbg_get_rgbdifference_r: (a: number) => number; - readonly __wbg_set_rgbdifference_r: (a: number, b: number) => void; - readonly __wbg_get_rgbdifference_g: (a: number) => number; - readonly __wbg_set_rgbdifference_g: (a: number, b: number) => void; - readonly __wbg_get_rgbdifference_b: (a: number) => number; - readonly __wbg_set_rgbdifference_b: (a: number, b: number) => void; + readonly __wbg_hsldifference_free: (a: number, b: number) => void; + readonly __wbg_get_hsldifference_hue: (a: number) => number; + readonly __wbg_set_hsldifference_hue: (a: number, b: number) => void; + readonly __wbg_get_hsldifference_saturation: (a: number) => number; + readonly __wbg_set_hsldifference_saturation: (a: number, b: number) => void; + readonly __wbg_get_hsldifference_lightness: (a: number) => number; + readonly __wbg_set_hsldifference_lightness: (a: number, b: number) => void; readonly __wbg_swatchschemesetting_free: (a: number, b: number) => void; readonly __wbg_get_swatchschemesetting_amount: (a: number) => number; readonly __wbg_set_swatchschemesetting_amount: (a: number, b: number) => void; diff --git a/src/color_functions/color_module.js b/src/color_functions/color_module.js index 0f408ba..5d9f690 100644 --- a/src/color_functions/color_module.js +++ b/src/color_functions/color_module.js @@ -410,7 +410,7 @@ function getArrayJsValueFromWasm0(ptr, len) { } /** * @param {string} color - * @returns {(string)[]} + * @returns {string[]} */ export function analogous_30(color) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -426,7 +426,7 @@ export function analogous_30(color) { /** * @param {string} color - * @returns {(string)[]} + * @returns {string[]} */ export function analogous_60(color) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -467,7 +467,7 @@ export function complementary(color) { /** * @param {string} color - * @returns {(string)[]} + * @returns {string[]} */ export function split_complementary(color) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -483,7 +483,7 @@ export function split_complementary(color) { /** * @param {string} color - * @returns {(string)[]} + * @returns {string[]} */ export function tetradic(color) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -499,7 +499,7 @@ export function tetradic(color) { /** * @param {string} color - * @returns {(string)[]} + * @returns {string[]} */ export function triadic(color) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -523,9 +523,9 @@ function _assertClass(instance, klass) { * @param {number} swatch_amount * @param {number} minimum_lightness * @param {number} maximum_lightness - * @param {boolean | undefined} [use_reference_color] - * @param {number | undefined} [reference_color_bias] - * @returns {(string)[]} + * @param {boolean | null} [use_reference_color] + * @param {number | null} [reference_color_bias] + * @returns {string[]} */ export function generate_palette_from_color(reference_color, swatch_amount, minimum_lightness, maximum_lightness, use_reference_color, reference_color_bias) { const ptr0 = passStringToWasm0(reference_color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -552,7 +552,7 @@ export function color_categories() { /** * @param {string} tag - * @param {string | undefined} [category] + * @param {string | null} [category] * @returns {any} */ export function search_color_cards(tag, category) { @@ -643,9 +643,9 @@ export function generate_q_scheme_automatically(primary_color, danger_color, suc /** * @param {string} primary_color - * @param {string | undefined} secondary_color - * @param {string | undefined} tertiary_color - * @param {string | undefined} accent_color + * @param {string | null | undefined} secondary_color + * @param {string | null | undefined} tertiary_color + * @param {string | null | undefined} accent_color * @param {string} danger_color * @param {string} success_color * @param {string} warning_color @@ -687,15 +687,15 @@ export function generate_q_scheme_manually(primary_color, secondary_color, terti function passArrayJsValueToWasm0(array, malloc) { const ptr = malloc(array.length * 4, 4) >>> 0; - const mem = getDataViewMemory0(); for (let i = 0; i < array.length; i++) { - mem.setUint32(ptr + 4 * i, addToExternrefTable0(array[i]), true); + const add = addToExternrefTable0(array[i]); + getDataViewMemory0().setUint32(ptr + 4 * i, add, true); } WASM_VECTOR_LEN = array.length; return ptr; } /** - * @param {(SwatchEntry)[]} colors + * @param {SwatchEntry[]} colors * @param {SwatchSchemeSetting} setting * @returns {any} */ @@ -900,7 +900,7 @@ export function shade(color, percent) { * @param {string} color * @param {number} expand_amount * @param {number} step - * @returns {(string)[]} + * @returns {string[]} */ export function series(color, expand_amount, step) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -918,7 +918,7 @@ export function series(color, expand_amount, step) { * @param {string} color * @param {number} expand_amount * @param {number} step - * @returns {(string)[]} + * @returns {string[]} */ export function tonal_lighten_series(color, expand_amount, step) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -936,7 +936,7 @@ export function tonal_lighten_series(color, expand_amount, step) { * @param {string} color * @param {number} expand_amount * @param {number} step - * @returns {(string)[]} + * @returns {string[]} */ export function tonal_darken_series(color, expand_amount, step) { const ptr0 = passStringToWasm0(color, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -2045,31 +2045,31 @@ function __wbg_get_imports() { getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; - imports.wbg.__wbg_buffer_61b7ce01341d7f88 = function(arg0) { + imports.wbg.__wbg_buffer_609cc3eee51ed158 = function(arg0) { const ret = arg0.buffer; return ret; }; - imports.wbg.__wbg_call_b0d8e36992d9900d = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_call_672a4d21634d4a24 = function() { return handleError(function (arg0, arg1) { const ret = arg0.call(arg1); return ret; }, arguments) }; - imports.wbg.__wbg_done_f22c1561fa919baa = function(arg0) { + imports.wbg.__wbg_done_769e5ede4b31c67b = function(arg0) { const ret = arg0.done; return ret; }; - imports.wbg.__wbg_entries_4f2bb9b0d701c0f6 = function(arg0) { + imports.wbg.__wbg_entries_3265d4158b33e5dc = function(arg0) { const ret = Object.entries(arg0); return ret; }; - imports.wbg.__wbg_get_9aa3dff3f0266054 = function(arg0, arg1) { - const ret = arg0[arg1 >>> 0]; - return ret; - }; - imports.wbg.__wbg_get_bbccf8970793c087 = function() { return handleError(function (arg0, arg1) { + imports.wbg.__wbg_get_67b2ba62fc30de12 = function() { return handleError(function (arg0, arg1) { const ret = Reflect.get(arg0, arg1); return ret; }, arguments) }; - imports.wbg.__wbg_instanceof_ArrayBuffer_670ddde44cdb2602 = function(arg0) { + imports.wbg.__wbg_get_b9b93047fe3cf45b = function(arg0, arg1) { + const ret = arg0[arg1 >>> 0]; + return ret; + }; + imports.wbg.__wbg_instanceof_ArrayBuffer_e14585432e3737fc = function(arg0) { let result; try { result = arg0 instanceof ArrayBuffer; @@ -2079,7 +2079,7 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_instanceof_Uint8Array_28af5bc19d6acad8 = function(arg0) { + imports.wbg.__wbg_instanceof_Uint8Array_17156bcf118086a9 = function(arg0) { let result; try { result = arg0 instanceof Uint8Array; @@ -2089,52 +2089,52 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_iterator_23604bb983791576 = function() { + imports.wbg.__wbg_iterator_9a24c88df860dc65 = function() { const ret = Symbol.iterator; return ret; }; - imports.wbg.__wbg_length_65d1cd11729ced11 = function(arg0) { + imports.wbg.__wbg_length_a446193dc22c12f8 = function(arg0) { const ret = arg0.length; return ret; }; - imports.wbg.__wbg_length_d65cf0786bfc5739 = function(arg0) { + imports.wbg.__wbg_length_e2d2a49132c1b256 = function(arg0) { const ret = arg0.length; return ret; }; - imports.wbg.__wbg_new_254fa9eac11932ae = function() { - const ret = new Array(); - return ret; - }; - imports.wbg.__wbg_new_3ff5b33b1ce712df = function(arg0) { - const ret = new Uint8Array(arg0); - return ret; - }; - imports.wbg.__wbg_new_688846f374351c92 = function() { + imports.wbg.__wbg_new_405e22f390576ce2 = function() { const ret = new Object(); return ret; }; - imports.wbg.__wbg_new_bc96c6a1c0786643 = function() { + imports.wbg.__wbg_new_5e0be73521bc8c17 = function() { const ret = new Map(); return ret; }; - imports.wbg.__wbg_next_01dd9234a5bf6d05 = function() { return handleError(function (arg0) { - const ret = arg0.next(); + imports.wbg.__wbg_new_78feb108b6472713 = function() { + const ret = new Array(); return ret; - }, arguments) }; - imports.wbg.__wbg_next_137428deb98342b0 = function(arg0) { + }; + imports.wbg.__wbg_new_a12002a7f91c75be = function(arg0) { + const ret = new Uint8Array(arg0); + return ret; + }; + imports.wbg.__wbg_next_25feadfc0913fea9 = function(arg0) { const ret = arg0.next; return ret; }; - imports.wbg.__wbg_set_1d80752d0d5f0b21 = function(arg0, arg1, arg2) { + imports.wbg.__wbg_next_6574e1a8a62d1055 = function() { return handleError(function (arg0) { + const ret = arg0.next(); + return ret; + }, arguments) }; + imports.wbg.__wbg_set_37837023f3d740e8 = function(arg0, arg1, arg2) { arg0[arg1 >>> 0] = arg2; }; - imports.wbg.__wbg_set_23d69db4e5c66a6e = function(arg0, arg1, arg2) { - arg0.set(arg1, arg2 >>> 0); - }; imports.wbg.__wbg_set_3f1d0b984ed272ed = function(arg0, arg1, arg2) { arg0[arg1] = arg2; }; - imports.wbg.__wbg_set_76818dc3c59a63d5 = function(arg0, arg1, arg2) { + imports.wbg.__wbg_set_65595bdd868b3009 = function(arg0, arg1, arg2) { + arg0.set(arg1, arg2 >>> 0); + }; + imports.wbg.__wbg_set_8fc6bf8a5b1071d1 = function(arg0, arg1, arg2) { const ret = arg0.set(arg1, arg2); return ret; }; @@ -2142,7 +2142,7 @@ function __wbg_get_imports() { const ret = SwatchEntry.__unwrap(arg0); return ret; }; - imports.wbg.__wbg_value_4c32fd138a88eee2 = function(arg0) { + imports.wbg.__wbg_value_cd1ffa7b1ab794f1 = function(arg0) { const ret = arg0.value; return ret; }; diff --git a/src/color_functions/color_module_bg.wasm b/src/color_functions/color_module_bg.wasm index 28dc56b39a6457905f33f2ee9eaa7bfd9f55bb99..d5714898d0291eca2e84fdf1e30bd78c8e7bf795 100644 GIT binary patch delta 46910 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 delta 46736 zcmd3P33yb+()M)snaO0IkdTBVkeLu5> z)m7am^S5_+wW`CGp4_;KhlScpN**sMvE8MWJYG4Bzr}9qnV;XiV9c2AW74~2Wu<5K zu(cNtjvCu?Lgu;Digx3epQQ$E1(ymSG&Rr)Fejrxz3y z6!z#bx?ohdtn_Y8+M9A^XXRw%6pZdZId8^}j~P>V-^i?tQQ4yl(=)pF$SBAjlapi81W4R{%$Uqk-Mf#<7+sj1(XC)i69Ou_ zTla#jo&}?N6lRXj%F53wv~{9ZK`DvU-qwK0$}GqjU67HH-L2>7LWD-GqqVDBPCj^# z&gfZ?l|MSaAjgOfs%e|y5H_3LrZJ`kYeFzh^9ZL?V-dD)v57XD(v#Z1UuZwo+yn%oghi zW+hB7Ev>eN27S}&DdxDh@ZO2Wq~NxR(?sm#kyA$BU3hQd$OrRBt8Om7XTsPiw&}*! z;Lhxb@nvv}W?%5|f_qe#+%sY1-BZTfjso30mSSHvNg7>jtEHrbyAeCaBO7x~95;US z-L~UA-Z&Nw_Pwgg|+B8L&X0neNy3lqamg37jC7|h_v$h(qr0QpK|v-W2nDIDk)F0R+bdT z@8R*{0&ivXjfgiQB7)cqBQ_$H{bKaS?@Z&ah;;U&@l1ps@_S>JOCW8CNMV0F(fL1 zpJK+#QSnA;RIu?uRDuf6MkRzm%>2>C6YsPAVjPT0fgGEnS{PlM1+$BQRZPqht&Gi4 zal!cy6yBFVw$S#waeFgQ%O`!!iy>#WVBv((SWc;HP8)rj_eDRZ7`e^kja|({jf&=N z#c#}`;CDmAj31k~MhRC&XR|p*Npv4ES0ozKqGOFi(d*C(55=@%r;MfeJ#Bbn+^pU> zjNdcHFEQ=-S#CVu>_+rVcyxmCW3y!Aqh^UlyXa)Fi;DG#Gc486<64E}-#hVsbo3>( z#fNdNoEA9SI2P-Pz>FDx&)B<*ClpSZf_l5+EUEfVPxUd2_vVV6$@?ijJ)^+CXL(UyTu%5kpVQSWnM5= z$G0f?oVx-NreM|-+u8-!VbRc8=%iP~D`J`0!Z)#ZMU8l$Rf?Cz>*8~9M7$&ZDZUVI zi|yhG{+yzzWN(3b7O!TM<7KvA%;RS6D)t`V$X;Zxh<%_~4jzSP*>mho@r)=r!4@KT zN=UI-EX02c#M9zgP`wJOcTwIlQOP&655++h+rpNJ&)9C}6?^$7Y^nH2ya2A1qKq#S zRou%y7CXfb$mHd_#35mbC;6MKjvYnb?fez?iTIaz5qx)x*TloWuz#|U!>qb;SBsw+ zui0%>CAQ&*c2|C$_@jfu{VDCV7PWgmu@!X`Hn-*uE=mbQY)yq*(@*R%LfQ@FwRk|V{69*O8=~VX8VRW zKd}KhG+gjJp66x*wLHDv#HH8AVR2pEIfrWXdFLXIGOq0M z3PHbhX{=*bS5K6$ST-1yvFjJ!H16(N=$TOi>6~fYnWE_wM>7_s*og0JK=?6Eb&ZQC zHB(YJs&(jfBRV~;WTAz!={C2`&4wmYl?mx)$Q`OLqU?Vp6Q^2qn%M$}DW(zb5XFd6 zuSZO^D*+b>piU-$LVrr>8vq)tl!n(!0_bK_(nTwYLO%o1?Ips|Dt;*KCi|I z?a{3@%}+H+X$eJMnz>geA`_xokw?(vzN<%Xj-b3pIxnp;KIqY$gU2^L6pxt94r=D2 zbWey|=&mCD2<98WZ1527kZkV!FQ)sE*Nu|QJJWZtFlQ(h^b5?ts0J*h0!yh)EqXTJ zq8Fa^P^7gC4GI@nXfM8LEY9+<^@cYqFCOe1p|q-9#?FY$j-|!CU3PZt1+)t)Y#*1R z)*WJoCN$D|wr}SQ^{>4)+CYei>ybmTq+O)eRD%;sYfW~$um)nI8X6M(oZTT9^nmyUUzH7S#(miBZJgZShB56!J+<=eESh>?8ZoaGn5` ze>ibAy*dcC(zv1TBl!KG?-Km7+&JU0eov^_atp4^ zonghU%bRJ%PWoeWbRVv5e_!lPf9$RSKHTpE&LVI96$|k@ZQx?{8*OwLG~J9)u_A_=V#OIR4D|^#@LC`Hg^H1&y+=?H zua79hFTwZU;VZJ)oxa#+e{9G|AMU%6B+!w&d;*o``vi&|bCrK=%og|LOXgWOKN!FX}T0u-@wW}LX94D1j4=9Z$CVe-*m3(S1(te<}D3W6|8t zJJzg2WtKuS!|LYHtNf51P@Ny5v_r=7r;;Grs`;qsd=hfi{3K(}e5%5#`2!$+{yb{y zumwwvl=;*P|25^mP|2?rNcM&C$kT3CZj?Rk39M|Wn^O-}e(?0Q9Q-#gO^_E~)I4B4 z{MjMuH_>?G*>o!wVI(zQ$=t!DwK^!U4T4G=td|+N#vn)C5;aJlGWIi*l`&~Car$y` zqOoalhKkWp`f_oSapjUkKPSb|;xw=F!6n(IB)vgOUG7*$Sy#?XGHzVfRmD8UbIYPz zn1aNlsO({;AYn!N#buQrE{o(5zF}w$!BZ>B*aOB>Wm){OiFQ4v zNMB@xl;?mTYHcFl@{%HWtlT8%!uP#oR8+(n@0WM9DC!hN=ssH!miP^<$VH60@QWth ztd%~xr5hEelPg11QC;|!jfzvhRX&OXiXyc3GEQ|S-FZcqQjy9pm~04PHxCx_NCEvE}7z;23mLs;f%Y$FcR5sn0#e8v8CtEgzeozlg#%uBQzlZ38XwZ*5qK-+~wDSG-8S zYhI+u-~T20J+6MIZ+xy3m9E!*g$Za$6{H{j%(u2^G&JykJ*96J#*(Tl*lc6zrl%b* zZ^C*RY)sx#XpDa~*4XoTkg@sYNai*6zAV{ZWBisP;9bT_uhU5KI@w!B>DFn%by|_C z=mDh9VIL{nA%}_k4A2}$EwRg9ZqK*fkCcJB3ZG+W$?AS_!9Bb_3P_d!r)TvwSG+=)6ghelv>RVRMnWnIV4OExJzpcxR&8T-m)5@?iucJA*`50n9ePrceqoKVtR@?&AJ(+yi`F8wWk`=AETR=^I^Maz3$I#h zEZ84s6ui~JB0H$ajQZDTViQHZNs;n4O-C?d^NeTq&;+8yjq6nQc}IhA|VKAL~TdZQ6l-O8x1_7NN~30lA7BRE0?p%*d311oXS zB&+k2%`=A8v#Qkm;e&l&$*t%>B56aPb(p*gyG>J;6?iKWdRwM0_bY9^|sl< zLPK?bMh7xF{27~>C9U$)0$u?i&1TC&#*oW0mNe#!GIKr`m~(Yw&ftKYb`*rD*oHfT&Ho^KrfL6BSRHmZ$-kWm!r+e-YzK)m7y!nA;#O>0bta}@a+X#F+b(U=jZ zQGbn_W(+nnz7d#lPh>i)7ySw0Ke%68na

FkGu#@<|9wYn0gEM-Efk9f6~Eo3Za-*Rb72^rtuGom_z(#{uOM8jI^NMr{-g z%(H~G2Vh+^>V77y7J!Wm3pSqlG&(2(mJ0ok6~^nI#+1w~15r=_Q5g06Ji-Pt3=Ko4 zK65!XggR^qVFQZ^CfmUB%lSH~rN1JPguk?KRumQ#s(*8Nr655aT0qYRB`h+BC|Uz~>a{>!^V9M&$QH*b-yJ z_nwm0Hr+KYMWouuU*?hwZ5YuOHX~0kYMP^bEkSJnw_&dMKmq~NgX?Kd4j12lZh;dS zj0JAZRfmn@O2nAXd)YJ$swddsa1CRT7`egF)xu;}5~PX~U`5$&ls(Ax6=e_SiZI$F z3{i9;;Oq%SWkU2B>^jhfxQ;V7M);s`hS^22E5ilOxH|SQj0SfQ88_kDP{bODLvc`? z!LAMuB7>nw8_P9M5XeO%IhoTSN|=X6lZ7Xr1?H)*K0&C@&~O_hC5FWQ>Trr!{3($N zQlP+`Otl$5{xCMX0v18k5z@kmp~iUrWM)Z_Zu4knzp+#s8Y8%~4IV0;dj#>I12Gyn#%wnXJanh<(EL?B=4NIu z@e;QHS#xS}iok z`KC}L>TZ<$cs)CAeE4HGyMwqG3r{6^W-??f#lNYL%!QWo*LU7RCJqy zs9=KeVE6>~J4!PXuMCIXVj%iM1NSdabw+97rw1~Jal`2WcAV=xc4KS9K%@3_7*c*b zo!A26qeQN!7kQv1co^D{278Lr@YF{q!5u~o*s5uRz+7#2JB=ar5B8%DBz2=8EfVySR{ct9s z#EDUmu4b<}2T_Z>aVd7{V6=wN-9;G0cJzA+x=Mqwg!=wEtwgukF*l%D6;WpaNy8G| zx>}&UStz;$SV}^JQa@rkxKo(PGrowxRM&d$9s=UYG}4`BKhPv0G1GVw%0&=Qo$H1? zF{-E-)Bya_AejpX2iLy^5yhzX7skP}u_Z!J1ADz|kzTt83l;j`>SF498hfb~T~V5h2M-EivDC?B<%m1ZptYHgs#38XNN{nVU^ z%AbFVVOdlv`neArIW)_-+eVWNNi#GMAid7rw=bJkYd7%=VHwK??)3_heeix!P z`swFi<&HWcsWAHevcWPv$Gd}RH*sUa$HStlIK1-fHxBmvwr|;|qU1iTh6j~-CY{J}1 zZNi*z-cmc;30t=89mYx#><(kF>qr*EV&%ke_LMIk710>442a(p$>#ZJE(F9^xD>ui z9EA3zK@wTM^DBDNc8|-f%(Q){;FNh;$M1*OqKWFj1m20j_Mt+Hiz#wPO7#3{GZGHs;~j zYJgmo%r^ZAdApmvLOCKm>?#Ux^RP?`7kb$6lHJdJVwuHVda&LIIRTYX+A=bk)1hS} zLCXmeNK=qXgX@37Qjo4!G{}3~vVWvMFX(nl;882a^w`+Lp;GEGu1~3Bpaba@zfm{I z({0(nK2?e#ttMeuo5^Xqt_g+%v&fHex+8GGgX>!wNF?v1cI+m>R(jv=!0O?%^Lo3o zA1GYggI!?!!ZKN&#r7fej?HFY@{$X);L_x-;iNdZCu8i`^wKAR5+} z6XlX}V{i6q6LhFTPwB(5*+%(NAJ&O&@E-2Nav59ajqk@=GPXfx<+4n6T#nCWH(b3* zz&&hkMqH^Y*kx}0Gitm-T^)|&9xdk3PeC_6g_(L3s&HI7^H{fbwDv0wW(rl#LS3PV zY11R({5+Nvf)t(6scw;cGLOwKc>v?F4$C9c!|326^m+xvn*bT|n4W3^FejyG0Mkv7 zOh-)bV*)T(0)Q_;@z|&!9H|tvT|w{;D5yq3bfTuxf(`@Zu5EI;&ic0Apmy{d%^f|B z4^vvmAr#B?eJ@wz;Om+uf7My?jV9p`52K1-1v0K5AOgE<8be+8f)7*~N<64Yic_Fc zrtzsRGvgIz#ypkrL(1p?=X?7zcNdeOk4ccD2tK`>b2=#*2eFGDk-Pe{cC1c*)t_}_ z-^<7W2+qjf6#OE`Qc&tO2Cx>49rtd!f?eTYwesvW>{(XfojI7@6Pj|KVW*zY!@_7? z2<>H?gh2HG8pTYLu3K1au8%H+=t_BS_GdyK7EFn@zeop8hcz;-@-B- z7W?0BVSSO(^H!wH_l~-iCGj}l`4#Mx`Og7GMz|Jv7Y}E@u*OY8!?_ZMB6vM2MzHGw z@zEyU%kIEt5@R}kY0V(K33o`5V-Lv8v8*jClOx8mRN7a@vM$(H zwv1(K+FpDGD~YvH2>s6+#k@+j_)Wc=wTbmr!*{}j?E*WTth}3LH}|DsH>bd&jYlda6y1 zp_F=D?l!kPT4V#E;3g2WAn*S1xL4WOBbwPGA?OheJz`8^K~BfUHCVnj%ZjP2#Iak& zy=@+1yX<`XUhnb8StpHclaWub8=SM1+XG|0=m~a>)ASGl+WiE(&1w2q0JWUKZgrZ* z6+n;8U~%j%xp)Q!^8xuf1s};DDfmpbn2DfP4y2$?PM*oSM9`#$c8+eg!5A+$&18KQ z4$7B_TPZKhWJ9qO4w}V|v*q6QPqJ9fmdm_3>_LFr=ddH1ORdMIyIHNr-gOIDBW8wTU)`pqpbs_kQ^_1aIsy%aR>zng|woBc5UX!`Kt@`f{w-Pk0|MXJ0df1*_O+ z+&`3QOP+sqioQpi3c4lSyls=dT)R<@5eVij~7o^JwW@ z&l0J*aQq`f399n}%(Z5X0q^$%WC;!SkaDD&%c4hfeF+k1d*oDL`lpTb*uxS*pV)*x zu1NnGBxVnQ9tO?&WhDUxg5e224-nM)0Wz-!fuUtUw*(MH`lUdIzxe?&yhejQx`_a| zsPar>|B}%}pWC{z1DQVE576<<2?kDLAg|cKQW6^*3gc=SC{2F|6XqAy)f8Gr_mnJ zBPZ*P*hqzSUWScO*s#m6;R@@ru=2*OYzSXoE<0ASmfpQv*?p{}Yy&jUPI?0c2bo^; zBEoNkYprPp(_efUaGL%r1#7rowiV$E9Lb@ySZQR8jHRGAi%~_zJP;shoI+hLf1<)# z^0RWewUWieH&(AjQ<1-@R3dvJ@_82N+Zy$yYWtVzud<7@@^$gD1Xks}+RJu^IS*Aq zYs%E;$cS}k%{T= z5~xbT$pH!|YD_;U%v<_C`-mmbt?{uKLzbDc115GD3)MA$`T-lAjZ;qt+_rES zd|sEge#lz2v)%zfN`~hEL+P?{q;(e-?M|0vF;_0UDa$`(@i$oIxRrsNF4~$mZwakp zbYqyV)uONzf#)9TPAvg^AOM@kWJd^1Zx16HE-OptM_5FNgZbP*aYZwryf}HsM=Uzk zeA5y5l0)cdQ=MLN_^uzzMIS+0)ak%StQB8WBTs$=y?9=Y4EmTo$_{vEe9VFwJ1G|& zV$0YOZ`vm~?fJJ?9ac;gs*2j!g~WCw})PpJw|5w2B;cH2Arm6?gd!{zScnvO>DvgMy(4AfN{4 zm`lWNqRMrB;9Yixh2#F5T>leJE$RZDZ1@Swi@HH4QyW;6ihATN4TP2B8dw6YK~FX? z4=pVXEQsG+g%wKKU-XN#^rY$Q2(i;N!G!5Gf1A9_&h3wJ%e57pik^2(p$6-~Z61e& zKh9GEt28W$RRb0;P{AT2#cn)>XpaGR(vod=YX+GXC{zT`V!gHB0SkD7l@SOd6#dFO zz=H%6eFyG>D=*mX$iZ9;Mn(sjg^fke=3tEpMs9~YXwkE-xp1(7q1>9o+p}}>a|C_0 z0b|C@%2n<`w*!f`+>wc%Af6}k0F>qu#>O9W2SZhLP1%!TAMnk~ZTgN>V!F=BYkTr8 zC1k0$-;u%+$w}B(3G4O&i`@c(<9;H%GQp5`QHq^pr23cU-ia!aOAJQgi*VU!p#xsN za$4?yb(0>;ZIs3Sx3V})SxQJ4hwB_0uzXpIJlB`X59Ju}%o8j7E((R)LDkB3N1_!) zu@qJAg(gD7L1ERPQE0m*v}#yl^cO-)Z%^)#C(g5BtlZo4XZ9LH+q%kma~bvvi$%Qk zFIe=>d58VNeiM$L=`1{7UjI956KuwLm?p2k#1gtL+>H^2b2ZXAt-KDnSM)#ds33%F zFti(CP9A&)L_-yieZRAteEeEpVr_i!YcH{up#jX~1DDwSknQ9pwink@7jNXa%!)hC zUCf)#vK`~itmsXQx4?{;$aq}KqYUd%8833F$ZTOn8dOB)zsKM9-oyDgQFOnXceZsx zCnM;L&QLbH+#BM`Z(!a^ap<3Zip2#6Bfv% zH2uW5Hpus#XuE0hgp(&Fnw*AEl}!tiLqAF!$WW9V%oAbK>m5ww-kXB?W3cbYk3(RV znYKPMlyfAy!g)U+uM6kHhQi(#WZC=3#@cIgFd+Ye)fQq9Z0c;(&9PsGrhXP?ZVGabsI4;!$ z!Z^L`4uq>LK*wRsp?7z!gx9HzQo0EV%z1-F8&YxM1_3O#Ya;Z8O2-jrRB0q6b8k1 zc~=x4M(9_f_$UfvoADI3NA_&SXYf+y-P4TU$RbKjjhp<;E+AXQ@Jh|K?{}DtOgjRG z#o^!Ov3Oq19+PWY@F)6}q~P8U);JrfqBhzWvCOHP2UHBn(6r$xd|tKustw=C z50uMQZFvh`5iUQB6)`y{en1PHhc*CiKGEP0caKYnpj#0<&sQGS4zfVI9T>TgQ##u5 zy^Uri%O0o9N-)UDFWT{}mcBY@vlO_qMm zV&pSjxY3fB`znZu$|h4Os%H3+dRN}J8E$Q0pJ>C{GPCt&<926Pp3e??&vwPkaa1hD zezjRn&EPG&SF1Q#hy>gKsnErtm*X;m4i}FKFy4I`{706sbS=4)op2|s zr$^*W*7pJDI`93UJ73Ov9y#Ni9U*Wb9q>bufHwLefgz3e-)bUWod_v*pOI@a`6FzB zY?Xzn)*x4B@y;>pL<-vKDkUX;$SBK&OMru{PfK5vm-_O-vP&O+4d3#j9NCMH2w;3r9_xdJr504Zc(%ovm%bzigC}43 zlAPC@_p`jHf8vdUYhPY~y>C=MCa!|@F0f_g6}L z@b(l&-OAmm7wX~O^IIqRINJB%NE{D+_Yas0Sg{Vun{MS-QjV3k@7lAyBe54Cj-{jhZlm_rj*w9 z3u=|!(xB|nBxv;JsBvN;{l3*9DdcXo9I5i?2<(~1<+&06^J>&Mn_rE>vf)#s0xN}4 zZ>?AU+N7%5kQ(Jjr40;+6&6$0swfVWe^#w7-N8w<8hIxlf$HzRlea2aEm$y}bFt}Z zsd$}^%>qV{4G7Gw+Vw5-knV#84Tn@U3UMKbuI*tVhsFc#*w)`hW-ve+ZfhYRPr1#! zCWI6lhwkd8iyw$!EkfkrM7QM7b&=kiIs-B~iSY7@_w`AbCs3YLWOq4)(zaaojU_jyS$Ekbx3@DmY ziuhgx-Nz}Vbi_D*8=zOm;p*u2OCQUBkK^TRp`1FN<5skH?Rb8gHLu>?C&aIbg$1Zd^1d9a6@>a!E*c{ou`=HvOr_40+u{OOPxi_|&UTJvM&t@rUM@LeCc zk9P{J8Fe%HPeP{fYaFI~L=K+<-Fd5=HH8o1Gb`kwDHv@C&rjh)DI8eL+amPdTg>Nk zeC$MCe1QAEb|SMM!yWpeOTK7cPQlMAO}P$B$yD({_8x(q}f zy=(=lL7SVt5ivbkKd?fkJ%n>B&MXh{!KpJV&;-^}Y1gq-!j{u?sf0{#J;bjk+2S8I zWy^b*m)qHw-lHXa5Ob80VF9Xp2~YK2JB_zuj#^yiX^N?veaMHAN1x!g61SWgX3dAs z;3Em%HN)io)eJ1WP;*w6@LrCEvmpPM-m7NuE12ViY%FQ~ENr=sbsPL8Et!K;NWJVe zhu_?C(~4@F9uJ!`URan`W@tNa5weBrCAn!1k7uRw?KwQ-#(L<17~Xi_SBz`c$^s42 z*+kk#<%goXbQz#*P<;uv@oWMP;>R3@&_y&XDhQl#93cpEt?>??%Y#J9PgqFQ45mB0 zh`Dfa6akFyn!e~f+M_}i&*ze=9=^bAimnUz?F7$TpqfHfE#OZ_9m0}_%dR?@6sN$Q z^`^Y>Y2McNksmqjX?)|TOy05(%HMjqa3S`f_456N*r3)gd4_vho0n=(GdgcMT-Ab( z_(@nz;8=p?14rO#-YcHrBbnE|h~LF9XQnOYSM)i715;5~hQ{e^v(c7$;tASRneD#U zb!RbQF|;jg7hnm4B?y>5K9+0=ZwW@pOL%Xw50meXCHTV9PtqfKvZD@9I}MyO=E3}@nYY~{U89IlH27YaK53SZuFJEmh1R!ovn5evQK!L5dxROV(X4UXGT3Zb^sv`Z3v))BjyoW~G z_RBkXoIJLjk0apP9sEuUnPb7R^3o0-8FS)Ecn5#Lk2|El?Y0yxQ9u2p^z7uBSI)yd zP*Q(_Xaa{}sSARlV$Sr1PE6oUc-`JEWdpX!+3>kzK1`D;kj!M&ZIBN z^?PB3tdPI&#ZkLLW>)io7%q=gqb3#JvT7V)I`|h-^5|$ZTm_i~aWL^{0@^QhPK>J{ zTzr)7H+Yfb!dA6PFMNZiIO?8L@$GN$cE0%6Z@_N$lgxgTx3W;)+u!787<A#XH<{?cY)bqwCXMcCL>lixen)i8E1P{Ltcfn6`)B8|KDkS>KEx&o6Ux$VZ zImkOV)g`eFLzlezAn)Ta?}2e3i^XVQ`*XQ}tFAH9dK!j|wnjAip32Grhz6Jc0W zCo6W@$%-Zg$&cQl^SyFIgkk6aNhd32o~!`jeJ~;6eFRcHz@U>A^()?uA&~bT;N7oXNa_@&=T|TbQfz6B zy!vC_y>$)9Q6{XPHe9gP2_yp|oqrUd@2i%pKv=TRB*fMYmEnL1VDd+Sp~VB9eK<66 z0>ef@MX0-6WLCF@+Cm>-qD0?~Y^IH4yFXUtk8LrT;=TaIbX?Cc&#KfUwoKKyW@hW; zs@j?EW!MI~Z3FL90}ma7+d}GmMH%Ev|Kbm^=VhBud0XX{#<39Ze1BB^D4+S9FL7>M zUah>*vf?n$m%|V9?$Hh8gfSi1fvKyUb2tAdTAyEAp8AZxQs{xRF{|FDlR97hn$%038kA1-xVO};n%7?Xlo^Ex}j)hwc=uY1%gb7JQx#TDx z+vqJ~v>2LegNBtU)YaA#M9=oHEVX5Bmg2y}wd5u!*E*pFXyEHQ?AmTS{?}X{G+N+A z_9kzvFf#3~uW|mBg5f5&IaH%-d*(`(=UHGc88I1odt5hwUfAxkmW^@VWfE|sHB@ae%10$ge@ zay_{I#}gdef;{ydAB0hn`906X`8jrYX3zku0l zDe2+ph#ZCT>Fw2oN>`|KOn5h_;lb5h=Vi;2Xz(g;-;=zLV2k9#r}7fU3 zUe^!Np?$V&SeC9B{*EGxQFXDPdIcITF7~xyFKhP9bhUsLj=K!07B@e2oxrWr97H0 zLEz0FoJ7CMi|2T&xao^Qp!o>!n6M*xsAkEG^SpW6d6Y=GsXkp$LMn_-iJ|(_gtrqO zr{X!@@#is(VfC2*GauIZV_XPDo=qI&T>rrb(Rq#Qry4=B+nkXh7huc!m+W+bPhjuK z6&Jv$!MpncpDNfYZ{|h*gXWwK8!znfTVxs&?R-!*9tnusK(m#Je=_#8d`O64Y@Xat z!5o>WiB$Aho+i4oS#pvlTCnMIu7(`H$~sMW(5Vi)xEIeLitS<$J0*A7L2^QVVh2f` z?CKE7Ai2&V1`G`73hs%Z^O))>M4N@;R#0FvFlHjoWpFJ8BzZq|h$szCgYQDb+Yxi= zOyj{Ji9EdXrRy}0m!E`+^N#xM7?>6E!!VKMi-(7cL2aN;TxLPYP!uYmY#pF> zV2Pm{NzheEf0gcLqC0zEx?@D^CWJ1N5W4lB3F#u%NpQwx(17fO9T|N&wh7ZTlPM;` zpP4ox#FJkV6Pi;1VJI#C7&Y{6O&)D7+Vgqq)DulOs9Jgxc*R(LceQa*tKl;aLo9wGC-QK zHnch(Sld!riET*&@+i zq9j(SCDy@IF;PC;N_1pj$md&$wz$Xq zUMq18Si~ob)Ib*W8A8=P8hyTjphgy*M;X5>aa{ zvcRr)Ytgo8Ev?59n)xje--{uMhMG&#xlqgGRMFO1E>ap;4!=Uywilh{!>KUtOqWk0 zr71fsr8K53cA){%EeEG@ZA?z*!D*P{6#g@!L(oNJn3yg<20>GX*4q_}VR!(;x$^n8 zNxH7M&gyT{-1ybd{E?(Y3c+jjrY^#bk`GCs&F(jHmIdM32Tnwqcb>&h_mBr1e*zvKy9Ky!psK8EeM5b4u@W&*UUbkFYA#&qrYlF@k zu(g>3^i&1p`a)i@T1<$`t;8AM2Ey@(0^Hc5iU{b3!O!Dj47jT zZKKze$)|UTSR!1%OXNg90*ZPk+|XpZr9%S5JG%=bFJK(BrEviJFvdaJYoZ5@gF9an zZ7~kKvtAQ5s{e=V6%X+Gd9r4&n844@^Y*Al6-%t9-XeYNW;J!SA7M51K|jK3>iVU= zELCPx*ZL9lpw&C;6@Eko)Ft%aVbYq^$7g0gNT@tA>B33l^PLecN1<{c(OpP7 z48P0?sx{4at_9CjBXQQHGY*JVKsi0f8bkcla8NZ`e< z#aYI8F?rp29A;q^Y6gqYzrRIgcFArh#6&)0mF)F{=oN-5i9z_R1AHmlSIN>J1X+cW zzZ2=PlmHWL3XaLJoWo=R1J8+7^5PGouXoLNn4mDdtovRp!sW4^KZxFRU(sT;RF?dJ zU1ocQbblwh($}y5#Au)Qw;yOby&!x4DCVd8HZn4$`2I7G2O=d5C5P$1DSL1TNs6H> zFZ?JnaF4UYDUnV5Lrg&tC_!OYms{&ajGTK)bb?LM3oZ81|4PK(x!pLPv*bU#FGMLBcmNJ6u!W7~{VD@@bh>NBWxo1SaDa4e& zDj&-C-<3a4?mdfIOgbx~8!sp~3ZWE8x#Fy74dn!sebGg~pB48G@qgnQ{Swmn#cM#K z2?XO=IZYEfXkVTNn~X}6ul^)%1^>tfF$i<)<_3|2J?QBM(ZYF@jO6%2huqR2639D8 zLkBm>5Rm)Mrhnxl___gl*a;sLeGbN{9|XE7G4?T()@ zx~9u-enw**geeVkVWnJkLEK{oi8A#UY_2P1@h_rB$CcKt7C1_{&hSY-MxGjIXugpE z1bwFwy0QHD7x9lkmy`9`C7J!JcpAn3^H(tdYf|WMqIXL5F3YQgYb8SWLpszwecx_% z)OhU^E!l%>B6)6XQm*;rQ*qk@3RdVUx#2g_F|Gy=v6W}myn#)7nw!iH-~T2$psLL; ziuQpA1M*5KW!^yt1AyAG}f3#twT}xaXr{Sd^Me%Wc3X&FY)$nHo z7Qe5>^4YJ+O?EAA@$cF|Jt~-v1$_pv*Fc(1LQ~R|XqrzN`Gt15IPyWe*3y)RUGQ$SYYv9)s&r_> z(OnTi+Av2zm&hlAw03CImx8qWa08;1Q|pT0S|^a_ybn0Fj*LAj*92=f1&#!|ErbU5 z28U>$QR{pas^n4i)WbB|SyVk2hJl-k_q3`QZ&p!VI@ibxw^T-jYqvYB4!bX0dknJH zhilhD*4zl~W}mEgexxPKoe@gb;}P0a2zh&?lJ%)bC2M7*)|q5I=F;vBlod`&CF@;L z+EJ18t}mcRbl_rS>#Lakf%zKdqH&`>m~1+ke&yW3a`eZf6I6A>7lM!iI297cvC8 zV_|)1?bf;niU5zX65(#Q_B=Wg%wlC5kJbY5Tn}-S;CQ=y!=oKWkFH433Q-T%T1!BX z)LNU6_#$&V^`+Q_Tf3XP6fh&aC?(aMi0d=YwbmS*y(l-f(cZ?#TBfwsmPc-6ZlXj$ zG#kB1?X(XW43ekPv<0Afti85AP(GJCR>_yuK^xJD+5=XMSj*Z#JBsg*y*Tw%7{UR6 z?M3eCpiP6`lh;vOOZLOMPFj&!L7G)oYpw6BwZ%yFzTZW=LMcaO{j@B&$nduk$VDb^ zNY@5HKa%O%8q~K}hBgU`)k_&#YYy;(?h4H7p?%8|e2cbES)ovGu0+?fAi+xcb(Tio z_M4ooUE65qF+U*mUbglUHt(oj+Mhlk^lOe5@Btz9bq%QNmTn;Pdup4lj4?h5aKblN zV0d_z^wivPdoQhhmZ z&TaCQJ{oP~KlH&kpC-flYHI%`)yxw~8k)I(pM4U0G;Q#DUoHBohbSS;OsCs7HvMNx zkDw=*k@Vyw1fTDN|B}euE=8@G)HX#ub2g~M!L6*XMmzrAzS^CTp;bSPEGG;5Y5l_= zbjQ1>i#LQ8xn{~Q`$4+nOLDcG%Mu3WYB!-0D{{5Ft$7biM_Hbh8(J)DL=V0AEf2p6Zx9=zmcuCS)rDM zk03Ty`wCUHJ$7uY~BW0{Za|Q)2E$!RmXaL=p;r^3{ zi9Gd2hn`E}I8_Au39hK)Pa5KhbEsT*x0>(o-i>CNE`PmS`#o^~_Km#YBCTsvygD4q zYl^gM8n?q#rNXT#((b{^8#YeMRw@u&M|c)KSE)clCtzmWKTb^+vqiMOX%8;0DG_cs-f{`g6w zcm!GE-FiRtBENWh@24`n$M46DlFP+&O;zGOJXL!L1vE_6ilKeo^N>wG0=PE%D?%^Nda>GG=lE2gWazInRY)Fn@7^_N%gu^Fm* z-_Gz=kNoE2W@_b8IP+*7pt;d!X6S9oblGB-HWxemx>?$D;iMAbuSHm=_nV*8n%t1} z3AXsjriTx!SLMH-)bz_GX+PU1Nn5#Nwiacs1eC)XgR1Q>&c@QJB*i>! z+r!R)D*+@eUWJn##5J8M**sxxt+Or0?N{IG=V+@@hiB)isr~L;?Lgop_Klqvo@%;y zS=S-u_fKg9E|g5Xyw9KY> zH8y1Z0&P%Z!Fa0(8&U4FSTeTBil=?6CVh_4D)ZR07^lGt1Im;rGe<63s9kEx-&{HW z8_OMx?pfe956yTRlIB;Py@w3#`+)T#Ue%)WE^QQTtGhJ(4MqwQ<@+l&+ILkvVHGwM zd^&vA{*8v%Uh?K1o0%fV4czf5YG;V$q{-X zJi>C-Yg+7IHBH;+l!CbWIi(<;c~0x?GeY30rD=qCY!6Nz|FOL~tpDHAUTN}~O{!ye zZt^!;jwixrw#k24yHaaBI4kYL{N}1WT?tFhXRm0vXww#zYA_;5l+!BJU{vwmW*!>D!c%Ys)r}Jibl!5#ls#5hTg@SJklX@~Sp0 zuy1@S)WTQQus!^$8n%7CYRmrXsg=3?e@_pT?a`*in159YmrxUX+2ZKChIj@iGxlon zEzCccg%sRJ#ov6PWc9S|tQ@r$BX^#BcCVH>@Q)R^I_L1^$Jc-Gs#`bzFcy&TuOuLI zm`;4nKWpV9#alK?pg%11j0~&BvRSp#{5A|OJ!<+!c~`Y|-f?jUl*{wp5wB}~16Cv# ztw`SWZ)!uiqXK{63KqCu-_oWw_6=Dbp$TL0o$)0ewi^p9lSOPm|ia+STFaWnml?@F;hu9R9A> zD*KGOKMWN9ScYpSjt6*!f@1@MF!K)s*{q@)h>&hBpt8uk`CXhAj?1I(Y7-C)J)o7a z-SWKy7}CdOtM{~7xF_}8dz#+X`Ws{Tn_l#25Pi`2N5;^5IO>g1of!7Mmh7mayS3+K z#`{|DjOolW#Nm&z;13n)^a%m~ftXN1q*8XZ**y;3+)~Tm*M>CqtWqRN4U;SXjqRcJ z2ipHB>`K6+Dzf$M&aEuf3F(CHtUx*oA!K0e5Nji|Id7;P3UmAT$Jc_91n5YHpv)Kd>j*1 zW3S|z|Wh9zUs^bun`EynD#`GzuEwjutj|xT` zLOquUQagf-E;N8n^$QRYBQU*f{k;9sgq-z_Jf(&9#HqH>&YwbG`LIYojW?)23QSa^ z#jB^)7??jit-W;Ke_pk_gU?{Tsy5P!QRlPh1)IgtvueBhb7c@HBuWs7*-#H9n z4~rG&w8zrsbLtT9oS-LIDqS2Keol{pUHs6Z4qSYAD?+YZm@r(8y z3LT6_9ZF!UItp!JLaTZ>@bDV#(Kq&@+E1FNT*Ru@b@AjywTra+`$e@na)%~L?{7W( zf%3k@li^PB*DuwS$Yzi837DK|*c5d2OZC-Uy7`MfChxqf{XJn_yzdFa7ejPSSb-@K zNAo}d`~I-QcHd!f?w@K8+!H1&m()I??OaA*QhUP1{lFzP5-;K1Yrj(G24KGZ(`9ui z8cDw^YX1(~P=|Jy941GSBh~t}xc>?sy4u^hJAb3zFeMq0+?Ax@s}%I-`SW})EfamO zs?&n#rYyu;Y`m%_WEwY~C3T^Vre;UNfB<}agKqM+>Md8*Oo}f5R$XIm_e$Sse50r@ zlZt)csk2SZ?&xduB=w{_|9f?70CrfOzoA;d#g(7c(&UzAVs#;M&Yjh zMZL*96-rw((CcN>AF9`F1E^&9Xb7+8QDxm9{h=PfOmFiF_FQ^f7_0cVS5181Sy3bFi(4~*sy)vFu+}_XeZ7U0H-sx%Bsb}X?I69DLTo9vsO_l|*n?TEgSvJrCVo!;0gBh*Sj|pK#V{upyT~9KB z-bB&cC#(TBCgPDF-*ae|3M?_e>W9!^3dEK$>}q;Zv~YQ#EG|bdZp5+=ksYZuy3;S<~%gVd>#* z!3S!VQ!Q+DPa`Rrx5lCut%M7@LuRp^gSe%#|!6NXP{+tNb z2dp)MMTcUGN4UO6&Z^nO^2~NP$q*EAk<22^xnAaCk2y9a#-obpBr0Zv(Wb@ii6mO*?t()D+9ofAmJg_abu{V&!{qZbS)Wxtk%oWzhutL+L;-sBD zaEsb~QK)NB+Z63j?Q#rTN;^&F#Ujnk?x$nfT_!o<`#Fxy3plv#xcJV-dW$Xb2u=$+ zAEEvbj~#Bt48`O;+J1&2?(D=ekQoh~SR&XHI(t)R=XG|o6MGI_b5j@AHC)?>f{NSH z{S)7ILHv%2k_46vwnAsII?L7B3khr*+_3DF5WXEZgkYKOUhM?4=bsfl9V`lNBOGi- z6!py5R*L|&4MRyLY+b>)Z~z~7bfwqw-?irSS<#sBT1|xyh%^x2t26ZqJ)2lf@GGC6J6#fvt?!+ z?)^hDTOO(%u!hcBp;ONvPQk$>IA;9a6!vJ&+c>Ji*~57aO#fW62?v|NVjq}p;a@_m z>B=&P(5dD6dEyik{S+wuLtBf*hAzQje$)DrzKcuS*le+DmS|niitAljSM!V8L|iKR zSRp2)vNZaTAeFsgzWThoZ#R~0zWc^b%4=-kEMNo7IjB;!e^cM>scr3?t69lUPc^Gz z%}O4L-%8(<7HU>0hT^p_@n79pFLU!Q@m+ToYtyuJ5sycrQ#wn{-AnH`8EwdAvWyJ{q zRK}<$w1-*R#*wYy8Ek0GHf>==v39puBB;aNZ)}hg4H>APd&DalY-|91H2-@B%ftrS z^i1Y-`7cAGlr0Hbr9^9?8mrY>jBB(vnhsyHhFM~~-P;`EEgcXEs5z;kA23}J7DPInb=Er z`$0fDOh$KI^QLsg(4;tbkZxlhhV0H(~zi@z)j15 zRv_KeI8D^~7Wzg+4+H5*x2*^JMos{b1gA$i1LH8xvr9MjRZ(s?Dv3MAl$-58$f7Y?%4lA#rpt4ykMT zyS`KeNAOWX-QqVV|GP(WtpQGc9-E6K`P+nlLNodV5_2vjoG}TsOiNA ziN6fuk%499J!%)mh^=?90a-B+Amt}j>|6zxcmr@MKHbG`VhbbRLQ!~IhOsg18Z>gq z%bDVpVJu}*c8FDRL7+bT=f97j^Dh&8f?4Pb*va4Me=Yo;S_h# zaLfqJH@H|;$R0M`FMb-qy7k_~_4tlQ{01OIi6;OL^1@T4yBI$bGq4R}GqL+c%Se`y z*cxh8IvG)>9Fw>RW(|w9QLNN7PplcmUX>*us9Xr6@}4o8J!qcMK|~a=Ix%hxM#dIV zIff-$YQn7wRgb1{tGJoQ6J33J&aW;*R&Rns3LMfw(V(oX((20U+N@cXC8hHQJCfgT zQ`8Dh%4ZnzJVlppm|Ia-4*CB;p6UhyY9~)65CbyA@0R{6Y1Z2-PzI8M46p#^jv$A_ z2&!9hx4F=z8n+Of>cJ+l;Z7DGvFR4;gRr(spGJCoS^|x$aGENeCK*l=Pxrz17+B^~ z7E+uUVO4@*pAAlt=m#DE-Xvy>W!+qbfDXXfAc}w1-0DT;wa|mvS9K+1Ltrm6PwG;u z)pScr>naveHs7jy7`pscU6)cTm1kF%)-Sw$z)Ixp170k3%PJO@%&IIeyG?p?piA9{ zZ=@g6bkX{iuPw%F5?2#b^8k;4j5r81gcQ{|(#$ zB=Pq!&$8ifumhb{X4~LgXV+W7VsH$;9);^LQ#&7}cM;vFkDxAvemfvbeS@#gFN!!n zk;TQGhC8)?U-#b?5iyCyxk52LxShTk0Z^F3JT1IivJ5jHI@Gj%{R}d6s;d;G4lL41Yu}4iSL~tQ^Bo5s2(7!o z1HkVFr>Zd%oJO)a;M7UaGu*2TzQEvh;%G2#g-8^8LU zxFO4-DA7BL=eZj>XQlw_F`GC$nr)2OaLlG@ zFS@(SBe26q-~(Xq0H|~F#-9Q^Kr(=nKKKeS&9|gGwR5T=62|~XQ|UB{onbr=D;Qsg z@k0T9k8An2P`LW>5VO)OQp5RxxUnbnf|~*kJ!L956>Q-N@kbg@5>JG4E9UeshVyur zuj~QH(j2PL&}{@y2bS|M8oi~?4Y*OoX!BnWPwEVT8|A7T{L)U^w6V`CUM?eI?G^7Z z6nz!^MQ)gn{QnoRQHFfuiEur2cfo>cX`}ee%DY9hBBGSAOW@R*H3}ZVGh$;t*Yn0> zZRE{#u{4W!jGY2!lD<{@fe5}VR_5BjAf^oqMh>sXT`@eNLOQ3M@^OYZbvv6u)G^CE zxy2hpZoiM*E&hq85nRMeMldoh>%}Kz-ExcdACY`QV%lk&_Q)kOPU4{mjGj)?L{&%r zsH+iT-px^_Nfx-|z7PYTS7Zd6zO<8)j2%bm4G*KLk;g!;ZV#uC84?n|b zQRcU?mI zGXw$*5yP{2c%Om4*c3{|K#VNZ5qjf9FP!Od7k|#?4+UKP1$%1?@fv->f5hs3d}!o? z|JbxK?JbOHlpOMZ=p}jVtzzz@O=|!2p>y2+PIQ4=RRf|e0E6N=Bug7ziQV4r`oR#jg zE2~TDDyrrKw(za9a!+8e3L^QxH}4m6h;+)F574un%^nu=^PflnWC73QTE{ z*o=DQ?QQ|4UU=W{;y3u?D*MBx%mUsHz2V>zKM$PigOxMgKK>70v}wfVN@s?;6jgp zyJ-ktt#-#2WUo1pqKriBWHq7gYcy!M;@q;z-8Y{{bNj#!cCV&O6Kv;u+uSq9@It$5 z7YX^A5Z=_CW=F5vlLFCd0E^>HwQyhe@lLO2DYHKe@ zEjvPBLzlw`qZH?38puxlab71}-%B8{sdd2p|3EkNs)n|oUNJ2jg70YP{qb|=zm2)! zXBx`gSbV7vk{1aD<*#{tap%2u#reGkC-U#U{QOcJgqMEkK2*$4bPSn*%$o?BB(~P^ zgw(1*c5T|#0FIi3=2BNar@Yot4D(8lo48oVqx$avre+~!OXrr<;{AmteHd=k+@#yW zx>{;fO6wqzRnI>$&l@a$ujfVP_XmsVi+EAjlp%I)I<9xOn6W}vmhm*0X&jj@PA}s3 z@W&zA9dNfQOjB8mnA*U*m>(bFu5aKy0{GZGJ>Y41;^hZ;Ibe7% zB3+8qg@AhpR0K@FU=jKtkMDXfjQ4?Nf{H<;MqN`0XcnjxR3>IT$Pc-u4bL~n;P#P!~G!|3@nh$ym^daaH=vPqCP{bA#2TBJyK}Dds zpnA|M(8i(mZpuqA{0(#j)C&3$q#&tLpkz=F(4ai=b|dnt$tf;2@;+HRobVKBm;y=z z4X>@Orgur@Aer|VgOxd;xgviFkM67#*tK_*C6$%c7~3$Q)Rr{NTvT3)L8X(ZTf&p$ z^C3bV(l^Lp)cLE+v5t3{o)MJ_@#+#j&wQjnBs|2E>{lU3qo5q8HAS(uAMY#{KEzWa zbMLTg9no0GP)X(9A@)3kGpTIiNf+-4cErUqzt zU>b95Vs;b8IGcC{%q3m#hl{ti1=04#lniei=7Vd2X{ICnYXGL&EAevR{$6-CFk+MB z5f}@LBrgFP(X;^FTbA;r=I{#}k((@k>nAr=WbHT>>uxnS{~cDycEv^V)w*Cl=d zX401UMIXG!gGJ&aeCT8;x7TB@`^yoF2rqvq*;FD@KHmqw?9mtdAK`ttlxs1Gn=T$B zjyCZ?VOhyTBc;oEBb|%y6x~n4aRt9eonX}`~Ke+!&4ZJog}_t1J+SSeR0xCcFoC+&!^ zNqXbi2}vr^FwwY%-(wy-Nt{`OXm6h+Le}zv^wSWd=zIg71YTQGHK*KBURCC(s46R8 z?C3OEkJC4kMEzQHf;qr6F`PVEys(z{DOd(fajik^Ab-3u^#l@^1}a+TDe*=R7M<7e z{;}V~ADZai1g9(sxJwVWqo`cRM;2uR(jbrrPN^ver^(xVaQLKj1V_Ouj*5kj>iRlI z^=!wi>iViOpxHFyNd2vlqv%Wdn#m$;J?|0O0{hOer|AeatCqXm0;1ko@xpf#hZD9`QajQW;1HT?jkqa!iO-tJ{j{AuL%n5)uT@jET+Bl6u number; export const __wbg_set_mixreversing_b_factor: (a: number, b: number) => void; export const __wbg_get_mixreversing_average: (a: number) => number; export const __wbg_set_mixreversing_average: (a: number, b: number) => void; -export const __wbg_hsldifference_free: (a: number, b: number) => void; -export const __wbg_get_hsldifference_hue: (a: number) => number; -export const __wbg_set_hsldifference_hue: (a: number, b: number) => void; -export const __wbg_get_hsldifference_saturation: (a: number) => number; -export const __wbg_set_hsldifference_saturation: (a: number, b: number) => void; -export const __wbg_get_hsldifference_lightness: (a: number) => number; -export const __wbg_set_hsldifference_lightness: (a: number, b: number) => void; +export const __wbg_rgbdifference_free: (a: number, b: number) => void; +export const __wbg_get_rgbdifference_r: (a: number) => number; +export const __wbg_set_rgbdifference_r: (a: number, b: number) => void; +export const __wbg_get_rgbdifference_g: (a: number) => number; +export const __wbg_set_rgbdifference_g: (a: number, b: number) => void; +export const __wbg_get_rgbdifference_b: (a: number) => number; +export const __wbg_set_rgbdifference_b: (a: number, b: number) => void; export const __wbg_swatchentry_free: (a: number, b: number) => void; export const __wbg_get_swatchentry_name: (a: number) => [number, number]; export const __wbg_set_swatchentry_name: (a: number, b: number, c: number) => void; @@ -112,13 +112,13 @@ export const oklch_to_hex: (a: number, b: number, c: number) => [number, number, export const represent_hct: (a: number, b: number) => [number, number, number, number]; export const hct_to_hex: (a: number, b: number, c: number) => [number, number, number, number]; export const wacg_relative_contrast: (a: number, b: number, c: number, d: number) => [number, number, number]; -export const __wbg_rgbdifference_free: (a: number, b: number) => void; -export const __wbg_get_rgbdifference_r: (a: number) => number; -export const __wbg_set_rgbdifference_r: (a: number, b: number) => void; -export const __wbg_get_rgbdifference_g: (a: number) => number; -export const __wbg_set_rgbdifference_g: (a: number, b: number) => void; -export const __wbg_get_rgbdifference_b: (a: number) => number; -export const __wbg_set_rgbdifference_b: (a: number, b: number) => void; +export const __wbg_hsldifference_free: (a: number, b: number) => void; +export const __wbg_get_hsldifference_hue: (a: number) => number; +export const __wbg_set_hsldifference_hue: (a: number, b: number) => void; +export const __wbg_get_hsldifference_saturation: (a: number) => number; +export const __wbg_set_hsldifference_saturation: (a: number, b: number) => void; +export const __wbg_get_hsldifference_lightness: (a: number) => number; +export const __wbg_set_hsldifference_lightness: (a: number, b: number) => void; export const __wbg_swatchschemesetting_free: (a: number, b: number) => void; export const __wbg_get_swatchschemesetting_amount: (a: number) => number; export const __wbg_set_swatchschemesetting_amount: (a: number, b: number) => void;