From a10539e9c37a82f1ab1e94beca69b70ad5375bbb Mon Sep 17 00:00:00 2001 From: Kevin Yue Date: Sat, 22 Jul 2023 19:05:48 +0800 Subject: [PATCH] refactor: support edit the gp.conf --- .vscode/settings.json | 3 + Cargo.lock | 12 ++++ README.md | 4 ++ com.yuezk.gp.policy | 19 ++++++ gpgui/package.json | 1 + gpgui/pnpm-lock.yaml | 26 ++++++++ gpgui/src-tauri/Cargo.toml | 2 +- gpgui/src-tauri/src/commands.rs | 42 +++++++++++-- gpgui/src-tauri/src/main.rs | 2 + gpgui/src-tauri/tauri.conf.json | 7 +++ gpgui/src/atoms/settings.ts | 13 ++++ gpgui/src/components/AppShell/index.tsx | 7 ++- .../src/components/AppShell/useGlobalTheme.ts | 2 +- gpgui/src/components/MainMenu/index.tsx | 4 +- gpgui/src/components/settings/OpenConnect.tsx | 59 ++++++++++++++++++ gpgui/src/components/settings/index.tsx | 34 ++++++++-- gpgui/src/services/settingsService.ts | 26 +++++++- screenshot-light.png | Bin 0 -> 67246 bytes 18 files changed, 247 insertions(+), 16 deletions(-) create mode 100644 com.yuezk.gp.policy create mode 100644 gpgui/src/components/settings/OpenConnect.tsx create mode 100644 screenshot-light.png diff --git a/.vscode/settings.json b/.vscode/settings.json index ef8ad26..69e62d3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -14,14 +14,17 @@ "humantime", "Immer", "jnlp", + "notistack", "oneshot", "openconnect", + "pkexec", "prelogin", "prelogon", "prelogonuserauthcookie", "repr", "rustc", "tauri", + "tempdir", "thiserror", "unlisten", "userauthcookie", diff --git a/Cargo.lock b/Cargo.lock index f402a12..c797961 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2300,6 +2300,17 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "os_info" +version = "3.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "006e42d5b888366f1880eda20371fedde764ed2213dc8496f49622fa0c99cd5e" +dependencies = [ + "log", + "serde", + "winapi", +] + [[package]] name = "overload" version = "0.1.1" @@ -3398,6 +3409,7 @@ dependencies = [ "objc", "once_cell", "open", + "os_info", "percent-encoding", "rand 0.8.5", "raw-window-handle", diff --git a/README.md b/README.md index 8d49c80..3012017 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,7 @@ +

+ +

+ ## Development ### Build the service diff --git a/com.yuezk.gp.policy b/com.yuezk.gp.policy new file mode 100644 index 0000000..7e34309 --- /dev/null +++ b/com.yuezk.gp.policy @@ -0,0 +1,19 @@ + + + + The GlobalProtect-openconnect Project + https://github.com/yuezk/GlobalProtect-openconnect + gpgui + + Update the /etc/gpservice/gp.conf + Authentication is required to update the GlobalProtect service configuration + + auth_admin + auth_admin + auth_admin + + /usr/bin/tee + /etc/gpservice/gp.conf + true + + diff --git a/gpgui/package.json b/gpgui/package.json index 4d4af5c..b0741b2 100644 --- a/gpgui/package.json +++ b/gpgui/package.json @@ -19,6 +19,7 @@ "jotai": "^2.2.1", "jotai-immer": "^0.2.0", "jotai-optics": "^0.3.0", + "notistack": "^3.0.1", "optics-ts": "^2.4.0", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/gpgui/pnpm-lock.yaml b/gpgui/pnpm-lock.yaml index f7c4dbf..1ee253d 100644 --- a/gpgui/pnpm-lock.yaml +++ b/gpgui/pnpm-lock.yaml @@ -35,6 +35,9 @@ dependencies: jotai-optics: specifier: ^0.3.0 version: 0.3.0(jotai@2.2.1)(optics-ts@2.4.0) + notistack: + specifier: ^3.0.1 + version: 3.0.1(csstype@3.1.2)(react-dom@18.2.0)(react@18.2.0) optics-ts: specifier: ^2.4.0 version: 2.4.0 @@ -1160,6 +1163,14 @@ packages: /function-bind@1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + /goober@2.1.13(csstype@3.1.2): + resolution: {integrity: sha512-jFj3BQeleOoy7t93E9rZ2de+ScC4lQICLwiAQmKMg9F6roKGaLSHoCDYKkWlSafg138jejvq/mTdvmnwDQgqoQ==} + peerDependencies: + csstype: ^3.0.10 + dependencies: + csstype: 3.1.2 + dev: false + /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} @@ -1257,6 +1268,21 @@ packages: hasBin: true dev: true + /notistack@3.0.1(csstype@3.1.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-ntVZXXgSQH5WYfyU+3HfcXuKaapzAJ8fBLQ/G618rn3yvSzEbnOB8ZSOwhX+dAORy/lw+GC2N061JA0+gYWTVA==} + engines: {node: '>=12.0.0', npm: '>=6.0.0'} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + clsx: 1.2.1 + goober: 2.1.13(csstype@3.1.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + transitivePeerDependencies: + - csstype + dev: false + /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} diff --git a/gpgui/src-tauri/Cargo.toml b/gpgui/src-tauri/Cargo.toml index c4102ab..5057aa4 100644 --- a/gpgui/src-tauri/Cargo.toml +++ b/gpgui/src-tauri/Cargo.toml @@ -16,7 +16,7 @@ tauri-build = { version = "1.3", features = [] } [dependencies] gpcommon = { path = "../../gpcommon" } -tauri = { version = "1.3", features = ["http-all", "process-exit", "shell-open", "window-all", "window-data-url"] } +tauri = { version = "1.3", features = ["fs-write-file", "http-all", "os-all", "process-exit", "shell-open", "window-all", "window-data-url"] } tauri-plugin-log = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1", features = [ "colored", ] } diff --git a/gpgui/src-tauri/src/commands.rs b/gpgui/src-tauri/src/commands.rs index e715020..28530b2 100644 --- a/gpgui/src-tauri/src/commands.rs +++ b/gpgui/src-tauri/src/commands.rs @@ -6,9 +6,9 @@ use crate::{ }; use gpcommon::{Client, ServerApiError, VpnStatus}; use serde_json::Value; -use std::sync::Arc; +use std::{process::Stdio, sync::Arc}; use tauri::{AppHandle, State}; -use tokio::fs; +use tokio::{fs, io::AsyncWriteExt, process::Command}; #[tauri::command] pub(crate) async fn service_online<'a>(client: State<'a, Arc>) -> Result { @@ -62,8 +62,8 @@ pub(crate) fn os_version() -> String { } #[tauri::command] -pub(crate) fn openssl_config() -> String { - get_openssl_conf() +pub(crate) async fn openssl_config() -> Result { + Ok(get_openssl_conf()) } #[tauri::command] @@ -75,6 +75,40 @@ pub(crate) async fn update_openssl_config(app_handle: AppHandle) -> tauri::Resul Ok(()) } +#[tauri::command] +pub(crate) async fn openconnect_config() -> tauri::Result { + let file = "/etc/gpservice/gp.conf"; + let content = fs::read_to_string(file).await?; + Ok(content) +} + +#[tauri::command] +pub(crate) async fn update_openconnect_config(content: String) -> tauri::Result { + let file = "/etc/gpservice/gp.conf"; + let mut child = Command::new("pkexec") + .arg("tee") + .arg(file) + .stdin(Stdio::piped()) + .stdout(Stdio::null()) + .spawn()?; + + let mut stdin = child.stdin.take().unwrap(); + + tokio::spawn(async move { + stdin.write_all(content.as_bytes()).await.unwrap(); + drop(stdin); + }); + + let exit_status = child.wait().await?; + + exit_status.code().ok_or_else(|| { + tauri::Error::Io(std::io::Error::new( + std::io::ErrorKind::Other, + "Process exited without a code", + )) + }) +} + #[tauri::command] pub(crate) async fn store_get<'a>( hint: KeyHint<'_>, diff --git a/gpgui/src-tauri/src/main.rs b/gpgui/src-tauri/src/main.rs index 0b23c2f..6f0f2f5 100644 --- a/gpgui/src-tauri/src/main.rs +++ b/gpgui/src-tauri/src/main.rs @@ -31,6 +31,8 @@ fn main() { commands::os_version, commands::openssl_config, commands::update_openssl_config, + commands::openconnect_config, + commands::update_openconnect_config, commands::store_get, commands::store_set, commands::store_save, diff --git a/gpgui/src-tauri/tauri.conf.json b/gpgui/src-tauri/tauri.conf.json index fe19e5a..80fc81f 100644 --- a/gpgui/src-tauri/tauri.conf.json +++ b/gpgui/src-tauri/tauri.conf.json @@ -25,6 +25,13 @@ }, "process": { "exit": true + }, + "fs": { + "scope": ["$TEMP/gp.conf"], + "writeFile": true + }, + "os": { + "all": true } }, "bundle": { diff --git a/gpgui/src/atoms/settings.ts b/gpgui/src/atoms/settings.ts index 7ea0449..44c6e83 100644 --- a/gpgui/src/atoms/settings.ts +++ b/gpgui/src/atoms/settings.ts @@ -79,6 +79,12 @@ export const opensslConfigAtom = atomWithDefault(async () => { return settingsService.getOpenSSLConfig(); }); +export const openconnectConfigAtom = atomWithDefault>( + () => { + return settingsService.getOpenconnectConfig(); + } +); + export const saveSettingsAtom = atom(null, async (get, set) => { const clientOS = get(clientOSAtom); const osVersion = get(osVersionAtom); @@ -95,4 +101,11 @@ export const saveSettingsAtom = atom(null, async (get, set) => { if (customOpenSSL) { await settingsService.updateOpenSSLConfig(); } + + const initialOpenconnectConfig = await settingsService.getOpenconnectConfig(); + const openconnectConfig = await get(openconnectConfigAtom); + + if (initialOpenconnectConfig !== openconnectConfig) { + await settingsService.updateOpenconnectConfig(openconnectConfig); + } }); diff --git a/gpgui/src/components/AppShell/index.tsx b/gpgui/src/components/AppShell/index.tsx index 0873263..4749efb 100644 --- a/gpgui/src/components/AppShell/index.tsx +++ b/gpgui/src/components/AppShell/index.tsx @@ -1,4 +1,5 @@ import { Box, CssBaseline, ThemeProvider } from "@mui/material"; +import { SnackbarProvider } from "notistack"; import React, { Suspense } from "react"; import { createRoot } from "react-dom/client"; import "./styles.css"; @@ -27,8 +28,10 @@ function AppShell({ children }: { children: React.ReactNode }) { return ( - - }>{children} + + + }>{children} + ); diff --git a/gpgui/src/components/AppShell/useGlobalTheme.ts b/gpgui/src/components/AppShell/useGlobalTheme.ts index 4627be7..2521f5a 100644 --- a/gpgui/src/components/AppShell/useGlobalTheme.ts +++ b/gpgui/src/components/AppShell/useGlobalTheme.ts @@ -7,7 +7,7 @@ export default function useGlobalTheme() { () => createTheme({ palette: { - mode: prefersDarkMode ? "dark" : "light", + mode: prefersDarkMode ? "light" : "light", }, components: { MuiButton: { diff --git a/gpgui/src/components/MainMenu/index.tsx b/gpgui/src/components/MainMenu/index.tsx index e55b576..db87928 100644 --- a/gpgui/src/components/MainMenu/index.tsx +++ b/gpgui/src/components/MainMenu/index.tsx @@ -4,7 +4,7 @@ import { LockReset, Menu as MenuIcon, Settings, - VpnLock, + SyncAlt, } from "@mui/icons-material"; import { Box, Divider, IconButton, Menu, MenuItem } from "@mui/material"; import { alpha, styled } from "@mui/material/styles"; @@ -73,7 +73,7 @@ export default function MainMenu() { onClick={handleClose} > - + Switch Gateway openSettings()}> diff --git a/gpgui/src/components/settings/OpenConnect.tsx b/gpgui/src/components/settings/OpenConnect.tsx new file mode 100644 index 0000000..102eeff --- /dev/null +++ b/gpgui/src/components/settings/OpenConnect.tsx @@ -0,0 +1,59 @@ +import { TabPanel } from "@mui/lab"; +import { Alert, Box, Link, TextField, Typography } from "@mui/material"; +import { useAtom } from "jotai"; +import { openconnectConfigAtom } from "../../atoms/settings"; + +export default function OpenConnect() { + const [openconnectConfig, setOpenconnectConfig] = useAtom( + openconnectConfigAtom + ); + + return ( + + + You can edit the OpenConnect parameters here. More information can be + found{" "} + + here + + . + + + + + File location: /etc/gpservice/gp.conf + + setOpenconnectConfig(event.target.value)} + sx={{ + flex: 1, + display: "flex", + "& .MuiInputBase-root": { + flex: "1 1 auto", + display: "flex", + flexDirection: "column", + height: 0, + + "& textarea": { + whiteSpace: "pre", + fontFamily: "monospace", + overflow: "auto !important", + fontSize: 14, + lineHeight: 1.2, + }, + }, + }} + /> + + + ); +} diff --git a/gpgui/src/components/settings/index.tsx b/gpgui/src/components/settings/index.tsx index b3ffeb9..f0db823 100644 --- a/gpgui/src/components/settings/index.tsx +++ b/gpgui/src/components/settings/index.tsx @@ -1,10 +1,12 @@ -import { Devices, Https } from "@mui/icons-material"; +import { Devices, Https, VpnLock } from "@mui/icons-material"; import { TabContext, TabList } from "@mui/lab"; import { Box, Button, DialogActions, Tab } from "@mui/material"; import { useSetAtom } from "jotai"; +import { useSnackbar } from "notistack"; import { useState } from "react"; import { saveSettingsAtom } from "../../atoms/settings"; import settingsService, { TabValue } from "../../services/settingsService"; +import OpenConnect from "./OpenConnect"; import OpenSSL from "./OpenSSL"; import Simulation from "./Simulation"; @@ -15,6 +17,7 @@ const activeTab = new URLSearchParams(window.location.search).get( export default function SettingsPanel() { const [value, setValue] = useState(activeTab); const saveSettings = useSetAtom(saveSettingsAtom); + const { enqueueSnackbar } = useSnackbar(); const handleChange = (event: React.SyntheticEvent, newValue: string) => { setValue(newValue as TabValue); @@ -25,8 +28,14 @@ export default function SettingsPanel() { }; const save = async () => { - await saveSettings(); - await closeWindow(); + try { + await saveSettings(); + enqueueSnackbar("Settings saved", { variant: "success" }); + await closeWindow(); + } catch (err) { + console.warn("Failed to save settings", err); + enqueueSnackbar("Failed to save settings", { variant: "error" }); + } }; return ( @@ -43,16 +52,33 @@ export default function SettingsPanel() { value="simulation" icon={} iconPosition="start" + sx={{ justifyContent: "start" }} + /> + } + iconPosition="start" + sx={{ justifyContent: "start" }} /> } iconPosition="start" + sx={{ justifyContent: "start" }} /> - + + diff --git a/gpgui/src/services/settingsService.ts b/gpgui/src/services/settingsService.ts index 063fb88..35ff8e5 100644 --- a/gpgui/src/services/settingsService.ts +++ b/gpgui/src/services/settingsService.ts @@ -1,8 +1,11 @@ +import { tempdir } from "@tauri-apps/api/os"; import { UserAttentionType, WebviewWindow } from "@tauri-apps/api/window"; import invokeCommand from "../utils/invokeCommand"; import { appStorage } from "./storageService"; +import { fs } from "@tauri-apps/api"; +import { Command } from "@tauri-apps/api/shell"; -export type TabValue = "simulation" | "openssl"; +export type TabValue = "simulation" | "openssl" | "openconnect"; const SETTINGS_WINDOW_LABEL = "settings"; async function openSettings(options?: { tab?: TabValue }) { @@ -17,7 +20,7 @@ async function openSettings(options?: { tab?: TabValue }) { new WebviewWindow(SETTINGS_WINDOW_LABEL, { url: `pages/settings/index.html?tab=${tab}`, title: "GlobalProtect Settings", - width: 650, + width: 680, height: 480, center: true, resizable: false, @@ -128,6 +131,23 @@ async function updateOpenSSLConfig() { return invokeCommand("update_openssl_config"); } +async function getOpenconnectConfig(): Promise { + try { + const content = await invokeCommand("openconnect_config"); + return content; + } catch (e) { + console.error(e); + return "# Failed to read /etc/gpservice/gp.conf"; + } +} + +async function updateOpenconnectConfig(content: string) { + const exitCode = await invokeCommand("update_openconnect_config", { content }); + if (exitCode) { + throw new Error(`Failed to update openconnect config: ${exitCode}`); + } +} + export default { openSettings, closeSettings, @@ -137,4 +157,6 @@ export default { determineOsVersion, getOpenSSLConfig, updateOpenSSLConfig, + getOpenconnectConfig, + updateOpenconnectConfig, }; diff --git a/screenshot-light.png b/screenshot-light.png new file mode 100644 index 0000000000000000000000000000000000000000..7e48778ad1f2d96334418a52f7937fef170795db GIT binary patch literal 67246 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�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%0Al);!vaE<_Q(|}`;+$C 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

ljJY&pO2#2;V>Bn=O*X8e$T>sMVSx zh5fQucS4NgCxISi=rd{=CUHGma0j?6OT|`58$F!QE`1uPz=iTr|HBd~#MNjEVv-9N7zeaokUHZ*|N0>ydHV!j_jGP+-OB zd`F@i>ga9aC*;K9=Mx&ti1PsDXBZ3gCFt`lKO88>4h^}|viww)DUp_zrkwTt2|m84 zzfcwt#Nb|FDd(+Jom?N6#*WIRh?>aQ*01n~Nn0XoL zZg{j*btgxKMJH%`W^H3C|7O4su;vtT5>LttY?zEmB8Il7)E(dIM>|$R@>=>Ej^fm# z*nABhLZT@BOCA=~-25PcN?l$<(nT8>%fOWaNwk(VVWxIsaR}8JxTdGe0SCQ6(}0t| zhs>-{>BHm9$91&R314oD+N+ptJ(*<2639~Twi~DnCSZ-$g?rX?QJSL}W@Pe9G<<}p5dRi1syN{W`u%umVdbKmy|#wCKeI*GKE~@@Q@?= zJ1E98zq-MzJmju#>8|F@ipnp5#e8z8fw*8(B;nZ68M#=PaYIuoO3ZeU5%rL9{4*sy za~Dfg4|(Jrq>}$JVGFYjL)ZGat@@-mc2p@C9$DinW<#OZFFQ2d5!y&r5Kpp3V0Ee$7O_}r z3S^kDXs|r>(p1$|CbxNb>gcGp@axatAOiL83t*H%6XJ>Y=(&*EZ(4biJ7uJRB z#>6HY8a{eny!@7@1qa-to5F;8YmQaA&L!p?hOvdjs!x%8MD2}L;d73K@{6%vw1FPK zs#Y0Up?_wNB&VsSU60bq0Z!mh_}X(7W%q|tO8$VN!$8y7Qi6ItKB!H-RlDVLBeSSR z3~a$M!5K~17jR;#gMvb3L6@+&3h)Lp{~DGX`vu?RaHa0?URP(5bK#=Gt`r$Dqhx(@ z7@Zu?dCZkwPC%2uk=HGT0j2Jqyiz|$1;FFVRqq`RL!?CLp6?p6Mk4ar**qTNVDz^z zY|Lp~Gh`cpu)9jI=i1Q2WF9-(UW%=JeE_xlzmuo@b^bTxDV~kV?d!{PPberTwW+Gp z$7=zN%rb6b?fVI%QQi7ffr9{gZX?p%wURXjkY^&mRUI}Rq|hE-d@T(Z(8m8v`_Raq zcZhSZm@|$GCkqEn6g8lNG3tBuQ1PfJ1>E>sa{|gds($?^t!Z-lW?Aq|`MvIt8^(NN zYIub!!;;d!N3b3xGGTa?cnd7HZJV37#uq}(YNLTj>`JZ1;1HE6iSJv?#CVGsiIDe& zIbQF1W%RPO-1H*k4^w)S0-RaooSj~JZ9a~So*9%re|-(SeTcy4NZpecfV;_vdWpe0 zz-4q@93R{5Mo=*8l_Gr7k{fEGKnJUN%}Pr9{>I=s^UK2oReB|w{3qBCC?k3z0N&0X4 z{-)1Bq4sJ>?;!-<=7N+rY$p9*`QD!nQwE?K)4iDi^S7RvGS=grt+$cylHc(rwe?%fD#hlUM%(b`$mgklkeZSNJx9 z<@RwGLKh*D`}L_aTF`~i6xNe$&2S(yVK}df?#X=5f96b3TrxD?i;SrK3}Q2YKW=zh z-)gl;K>pY)HL1Mii@QFbyV}t~&r7O2V$RY-+1FOZ#Fk+Pn|F?C9h{i zPA0?NNi#%V1czx))~9W-nYgCOTYJ5xd+qYXkX1R$)E0_y7Q>whI23LZht1!maJAY& z(D-mp7bQ}9J9=ww_R3Al6vP(Q;{lsc-hsGJed1*Q~T4v z7QXYG4(5liWj@JQ6WQh{V_=ThOt%mqb^{w(&AZjh12m#t@0@Xqbx|WfXd`2~`3G=H zr@1T48xxR)N{L!xm*Yw}WbqN~$#sxRL#eZIL!jv4X{D;{+q%E3iP!#2it`P-_Mjku z)pUxVvWe3;q9vob_ z33C<*fAaD`&}5~v>UbMO1V-Xgp<7^kNohJJep33={oSS-Gr5jJXM z?et{w0_Sp-w+noOE-M#{Qn!W@{$lqCc=B zC%N8V^NY+;TB^EZQ2O9h-J+3XYvR1*`u@bS({Q;l?)C*5fuxceMeI{~9X_e-`*(V?`ZD zWDl(*7&`|7#cb|K8m` z&r0&}r=1;GKCdbRmM`Kt!L%*~aPDP?#X;rMkj#P1oCN6FwlWY%5(oR^OG#{Fe+%4m zpt@C*{9@O`*s@s;)Y@bP8h&sj+0}Ojm4W^F5n&YdJ(IsFXv_@=(N0tqi>zC~i0Pkp zZ&(whq#IydkuLuACO6K-808{ai7Ge)yIdl|NCF-406F=co8uaTKJNWZu{BR3Iz&JFV9BgPSsyJ(&qf**z88~qT6@ zS^SQXe!Oa_d%u~Im!F&J`O#_wV3kc9H$@7J=0Anbpn~~v;(a@3#WVQ{git1aE%lbU znVeOo7+c3+Q-ErKPct#}uX{@cToBa%ffxTJw%z~5B>QiKy#JoWg|3P>|HRu5_aB+B z)H9NdtG)&iTzz2u<^E$jG(WgbctsR#a;VurBcVFoMTlZ-my?oey`3aeIDDc;KBHclC_uh-TR3ca+LQ9X&1Tk6O|S?FeB)bp%q> z{z>U);6OX^8l#7~GeETdYBjqArOqI<6dKaJLi(vX>^ofZj8L*DU(FjB(aKu3ni-}9 zFX%t$sOKVNnZOYv@jSZqEfwKHOzU_-?IT<44PdG9;hi|P=v%DQ!-}RRLuwM2TxL`@ zCBSZbQbs=c@S0{zSNhI)?Ew48_K~ku&W&=g*Hsef#d+2QHE+p`+w%WdagH}KY^nkB zLIJ*5jZ%<$96YvwS@xJ<8jJml@v;lhKMYDU1kmonlW8Lukm<(nA9KLoXC5V_3XuAD z!xBgwTX-9%9(***U|cB~T!gcP%w&^s^Qy8swuCYxuR>-ExAl(-%Arp_K$zAbvL{Ng z7^1(E4NFr_K452_H88=$HC%`NA2iK9bvFccH8AZ=hm1rToG#zQC9_f=oB(_q8v2vb zKcH=rhnQ(ERhtd`XM!)@Kcwwo7f-t#tc>wU($xP3JM#;ZZ3Y3f72H`amVZotTu>d{Dl8%aB->pj~ax#z*)bM(LSO8;S8A*GC= zD1Ewr+#;kx1BTP}$=RAC`saK#&Vis+fv0cFvO!PsbYsHZ+WY75SI;^C`~$ zYy9Zw>kJcZ3jogw12hnb;*W&D2EsfB{)UTwoa7&QfhX8oS#%?E&65-)keGQ~2&6_L zUQJ#WK*A#aUU;Lay*uZb5Q4@*_DLZEws$gT$VEGC@3d3SqVju@ZTG&fe|f|y9gE<9gt~nz!e8KT!Z3+DJXaIS6QA7xv1?TyQ(Lyyp2$3%B>DPV1Uw6~hOLwN7 zC&!a>dtIl;GaMt}!JhTd6IuQB9|Y2Ba8Of7OZnj!zHFfNM6g99UsgJS(l5I`CJSn* zqS-(vi_Jq>tu!1es2H)%7M8iFlXjTPjmpGVstp5w043^q7kSVkZ_Bp9F@{zg1nRTr z%~m?2$XY9JwvXm+;vRSXbXJ`yxmQUAUv?2w4oA8bCXsN)A;kGnRxew9;#1Kd2zW0} z)a{JbzlYn(0w3992mitkT9)dGIr*j;-(`zaPABkGD*x6c_0V$vZSWxEJ{S z7JAT6=_53xx*njR!c9{%6~fW6FFXhe4@VcmG^%$UtSnePOWhO2Ce=#@^Q@~`o7@nk zIIJu}O3}EYm#Eu@`OndfecghYj3X5!MJY)f$Bm`D(Qy)gCMSI2XW_Q`=*Dc^Kba?B`DkWI9DYOktv_QLN)&H(P8bNL_{HN7`K?BA3$>f% ze#oQ0f?G`KHltv6c~tzRsc2Qnm;Z2;Cqk;-2Ys#(on+mX>Ml{uLu1an$oq1t%7C2} z>yL>!0m<3qPO5s5wyO|vD{1s}jQZad_Wh^(W&Wm3na@>MtXMj?R=tblzVM<4b|yG% zO?!XX8qw-Y2+zo0TT60;?4jNs7vHvb1HJ&)>Wh+w=}PGceeZ{JK-Z0uZm>D^hQD0bblg{PnOP>|&D!5G zh30K6hH{qamvF~5{0^%coy8d~|MH*@u9E0=k;7j9? zuQ_rdbwtod6m(jC-4|Uhy^3dRIi+&|idM7KVDAueLlN%l@jIG|)egB!Y6BG)cYjp` zgSm&31_v8ThYRF^3$RlRtsV6(ZeD!dEMGR0$Kj~h-6V>1A0TwpuMMlV4y`vH3rh8R zW?ine(h8vvHqMhibSuwU)7?=_S~RbkIyy_;yxMy*y^{m%nN^|LZ3uh50$nfW{!zCH z$gF>0f@}(?z0xB|aJ24dZv%ock3yHOdgi`Ga5>bn0_;)XZkWc)4l=ZxhV=X;gQ*t9 z%SsP3`BNv(5g6Hrc~Zw~J!hT7sCM*DvX3Q!pD|&-epqpK?`bG;cg9orAbQb^!l{1zepyitV^j9BvE<8 zXkVRFYL@-6MA@bP*^No^m9U2$+=V%4({9;>5QwR#3!S|=t_SllG@FF`X z&is1Y(c0H%)L(FmnwYi=A@^iAor&e1npW_90QIIyrzlUR*@~hBi)nnvj5g9{jjFP3 ztVM}2I3t15K|M{XcU|kt%KxfvS_Ea~4R(!B6Qf;)2-Qt)qHMZaE&K_gbZUPIe5Uzk zq6`u?ZX>Vrt8%`Z*`ZxXdSgEAv25^be__2Pt1>G^fKhA)F{_xjNoHd^K{8#r0UmQq;t$(Uib9%~aTr3UuARSQsP-Vp%TD>@g z!PN*QmE$Oym2F5cl(35=`5<)GA$d^XFpw&m~Y*MuH~8lIkDuBnlhVt@`0 zBC4b(Z_-+R9&>yA>;Zwl8)3ISaJv#^a8N|<=;DWED?q@@s8&b>VTtYLQQ+=%{D11~ zt%IuiqWrl(jC%`(%qK^;a*C*-_6(enR#d4 zKYq{r?%WyXaQE3~?^S#4^;u_a_Nk3D)wD8gnI(#jL*Zd~Vhb2^G`)Q%jWUeiH>(|dNsnE(6Vx&dJ28j6xF5&tEd@5# zC*UomHxO<8FsQK1_*GSP?uLt1|M5^EVreHa?`Namd7E(O?r_KA@=~nNnIw+(&Q8n>8id}osJ|$VR{e2#)5;e}A@oc>5bDcxA*mH`kWJ8LTY-oz@Lwb9}9o^Oom_IpY02aM*Lkt zy0A5M;oEpZ)<}m>w-`qEPNFp8eb3rh@}u%s0&2u09mS=63j=j$e@m=u>GA@m@@h-n zh$G(NS88uyzG^`9j|=(`XY9B)*zDWh`^(hS)#YsXt~Gna$Hmme^gMMl6&}0oZfdH^ zG_DYtxdJsE!ROi)b>a-}9;Bnq?%^xmyizJI}rc8^Gz6l7j zx;k^pY=K{45vGg^c%|m&&z~y}jiYmO;b&(qikCF^LJFWr;ZAih#h;mST54Q0D_$zF z+mluaVu`>H8jT$!Mm7{uie=Qq7Uy+i5uAwFTFrX@azJgUdi%wTiFxg}3(lO;Do zBv8IkCF);w!w9Z_)eX7+RX1em{a4+v2b^vTDkJ8R|0|71Z2Ye@qS3$7i2v6&e}EuM z_|c(%=0F7_P+UDQTOnTwXxGKiq6iNQJ2|T7ZUEOoB=KQk{X%ydsCY;jG9^Kv_M-o) z?T?3A&ENwD$`J-mpUYz(|3=5a5W(>ax2_I_3h4u6(QM3|w(&Q9|GIJa5dQR`kZxolA70&_s9X-00zv|nMFJFq z-U^NzI3YWe%U$#_P&cw}(jS07xq6nOVHnITO_IcbX) zBxh?vL1I%=28LZvLTQw_aPD3c=e3AjOj&F>@pocCFm%oj@|)@-a@p;$?MN-I4`ft= zii+YGFvHhTm-nG`S1OV?XYlB8z2@sD-dyY_1V3%eRtPyN^)|4Z2VP;QHqLO#6a0i zqi8dv5TW)ttGfLpK3Bg9mt5{{6g0rsn#2*2=M%?@ROjJ19LZQ5$;Gc=R9#dA1U=k) z;h^%#Hm)UZC=z&39|ksD5a$tU1D!n@|A>WryazI$D~t+M@0XUY9C8$HXi6NamKi=K zWFY1TjYjYAq?;6pWmqD{jXz{Se_>%eNJ|qd2o2=#_+q zhi(V|>qwEa-6Gkt>Gj+$DJ8a@#70>|QPG)Tr3BS@O*s&w9_|q?>v?x5_cJH*70LFc zzr7JaZI5EwK#>dx8AC}0kR{@$@RTP&z5ch#=SD&BSI5kZnUadies_|UKU1luwl=r8 z7^{ly7_ny~kq&){uW=t3h4_So&q+xkQBm0Z)G=~ooTg4LE_u1R2yfoJ5k@r*Yr0$5 zb76e)gn^Y6V`pclMJNHNa=ylg z!4oKvsNJW=#{459Fsa3SsH@nJAdK>o_jk8rZN9#Y%*>C$SOELt8IKTqHxlz$-V&o^ zW@g$6W|~`D_xws=w*R{!|KjD#+#f$M(C{8fOGqF@L`1~J#o_NTy!znj>3Poer!}_f zj9gJ(Uc$(TA-01&r|9WNt?APHp`jsj8=KyaK(x=<*|FeH^Bodd$X8EDniWn^SfaA`#sX%?%hs^Y-?aJUsTBPHOq z3Ne^_Zc!2D>FFs%DfA1yR7eh}gvucmp2t#HSlIsg@hcDNKok^|{@=gXxMo8u?m|Q9 z&=(L2A*4ugIFBNRYx3M1w$+EY)sNuvhLiij}pPi5+PR3s!Ay zZ3qMj6}vr-UMem=o^Ul@McCZJLc-l$;FF~#LdL!}rH~6-e0)5^hpNLdA=Jpo$j=!W z)Sy{mZB5O};c6GZ{Tecaj)@6ny*E0t_=@%^wp~jySNkb_ZEfvriznYlE!lVP2xVia z!$HA1IkL#Lw^C9_zkmN8ot{ROkAH4DNWQVLA^lU6-gT`T13p(B+GmhqX=Np?rA3jU zWcFd|{_URDHht=I-upuX_JWOgP*hl5w}n^6VKB zgqVyhzoCJ@lZio41lJrsTPY_m-vM~3qM?DRuFhq*(k@5F{>KeFp4oLk=hLUBX9vs6 z1u(J8Sa!Rh`FU;lLOmYjxx3SqbBV7?fT**0IX-Q8V=4|ywsfJ(6v+%L>Q z`swMii0GF!u#{w2T3U8xiFg7@3c;ZY>Fn&3BMX;%Z)iv#f=h#`u3l+5!@-|9EJw!5 z0yHF6;;+2Uz3TyV$!u3ltB+%n|9jC>m;FVI6*1jF{p-*Iw{GS;g@XQ!&@pyg)C)ZxAr9LAVgbm5^G;3qR?L0oFT#Zk!AX26#;%z{ZajdH2H?8#5k>l>#YF%n6aBVNKg>TPNAb?KS+) zQ$}0A_?|fB&n-<(TybHcI4~CHsWzt8iwy(=$((&CWFPzl9Jk2t5I`9EnMO(b)hWz= z;tk(wyaES?#u#f%G_?RBFi;P=I+p)RMNN%(he6Bb zWCenPf_4{&hL8eZd?tDB+9i-`UEy`8lhlf zVM$FAqRle1_hx4|;LeHqk`R7QBux;baS9nS?dt#hxYBxo_e*jzkbBN22ak7PQ1`XJbAFP9L7ZK&Y+pW>Ktt&8Np%t=7DPdLB6E%1Yra_yu+O4%bht z=AY18BoTgQkc*#W-W3Dx4TqAtn%aXGK>obFe1Q1NmoF;;SR8+FZK?Qdg7R2W`0b6( zNxG}6sw%v%&-R@mE1g)J(x6D3ovY+CdaPg>nf~ZTedH^*HqZ@T#57WBcu*}TrcPjm^TSwoZm+DOw8=uYWj~4KZxy#>J%Ig>2KdjyS59`l* zUn~;8$oEcK;NT5s2mtQ}HdBrUv6`>JNawZYUfcph?goZSKqD}qsG)%z*uBD%lJ1p` zK;vE16Tl0qTu(qW4d5uJaY3&`N2~N{q*S*-2gXOGT4?LDF9c; zYO7eO&FA*!E~?_4lHvJo^5J;V%h~28L>!viIG#dsOA#+eXepg?5j$ z12;LFLtOb1*W|p>2)WS=;V3f(!@7?4{^ft`XnWI`Mhq`^-^@CmF#aU0=5kw98}w3N zJNutpfQD6MN6+d*A$tjNoAq7=iq4a;oTZa3$k()Iam_JyG4n#@j$lxN^bYfNC{$3{o}($dmWe)1;O8&_EO;W}kr;%V?ZscYo5)DYkH#^PO?G5MN^ z+6Wxr+}I@$r7!#7C01`4JK<3kpkhj^J-b*6{RSP5GWcp!4#u017oL3>7WO6B9< zh@~%S;W)x2R8WMs7P%XEvDVeLej7Yc=`hA=W^_uc?(Swwe-6)DsO& z6jZ&x?7P)GD_F4CsA}Z>Quf%l=eC-*CykQsI`38G4Fzm*`eGTjQc;HMUsxKA2YU**yyvW_u^17t-)k^hq`!)H=FMBfIi2jJVQAhAt_miiL=L=8Y^IiZ$i3gl4 zuJ`w>{8tWGJUf5jaA{RlBH%u{xYR8#lWGfcs9koqdF|7U5?TB zQo~_#Coc2daBr?XQ?**ELO5vt`)ttz3JKdoJ32eJ?Mu+f@V7g%sZN ze$`*>j)tnvs*fxk+JUv)gc;aWw{|I3=6_e=jMDf17Snh3iDBnZTl??Y`;NN3?DZ~n z<<;SG()Jh^YPVz0hJ$ZNe?;}i8WGxVI~>07BHc0%_1Ho+Lq`^gO9EC)-qm-o+|XYbv0`&`cODom%m zumz51>MZ---CWuB<<5qzH;vp=h-D-}MIJHV2G|0_u_smw#MRAyAT|~Zj?5(`*x3s>Dw4o__~t5cweR0lrDnJTE`B6kZ$uBNTssmsXn=8fSs8@(r_3V9{P0W-RQ7=l;?^+7G)haty5F&b0g zT-~qScgl_$o3QOkFvAIO+FNpK0?vZY6-C+YFEw*C(?S}W3T1ENfvn8P+^CJuOA!_?jM?Ii_ zDNx2aDX_T5DyIa=0dcbP^Zx6KE81^=)U3(9*Chx0_jHHzEL$UO6@{_ZLooQ&XPRWX z-;`aF`MlT`ZB~Z{e+|c~Jh@!pf__Xc*4pRcPwym`M10s?Lwfsi@cp^+C5^1_jF0Qt{oP64y^c*Dby{O`=&WYNU9ENb=q!C z++cSVicu8r(FqEasdx02e%r6ALVT$Z@h$&{Y_+u{khuRgY{vKNik+S?aPFDXf0)(oZC(Ys|QFXna zsGo6m`M$p=IBP*;1wGaQ!1=$+{KZQr zD{@?6I_CqyER-w=*CrWO!k3%kcHbzjXG%MDEP0I=phzrYAHoF-u!`yoB~+=uwW8Km zVTN6jn^(aK`AGKCm)l_hI4G*E0YRnNxi>4t7dzvy!>!IS1U%@p!_21UCBm^Y_LDDP za*C_CGh`$sS<1)$NR*b#v;Y#llKqK3HRtD1fElL6($6PaEHg+I=7qtMK=pPx2Qm*~ z{>m`4BE}nXBh2B|mVMfW;~!QFJWQ}NG5cU<(`USyCb2)=BwizJ;1%1d{nOl$+>Hg*N68*og+yNzwvT5eC#i}zP(`&suL#sTYe*;=e_$> zO-z(%+4~gz_5BIC#;_NOW5|X3Edl4E^V~Pb;veQ4FmlC==Lqa(WtHR{;Y3e@b`ppu z0VME=0{`9X=S7-`KNVe6B05voWd(G_L@pdDgcSOMmBD(C%rFghCU{`?{dsd@J#i2! zsGy*Nc)x7)9Qv50`>tP(%nucVXkRmg%~juX!Q|Y+}M*TW|~#pA4+RW z5?$+z+Gc^N^r&3281r_Yq7m~|>;OdiBTj!v7_Qe59LdeYktWWOe*bn#nd_i9@N>zn z<_xJ9{76qy_6fH%#W6cWZ_Z1*|y*1VhKQ^|l}Yn|Yi zX*rTX%kHq-u6vdbYq#(F;0<=!fCRer`I+U$qoU^cgtAfMeXZVxtje8*Divg;A)D1X z8SSqu>pM^o&bSh|=n3%QTK%sH{Zvo+^_CFwvzfkaUF;-y24R0Z#rygUI&Z(4FxAG2 z5b=-kuk=y{u%?!I)N5gAFgCR|`L5?SP7FbRd8y}{Xm$C?JY0#s#9Fso9_)uqh$6lp z&WfQ=sz>^|YG!B^?IR+UxUtGhaRQFa~fXSd*Q*x>!X#z*{dxLddmuRs5C(u_C(nLdB)| z)B-qWH=G$f9OD#d1v$G3%68(Y-Eb~)q33?2A1-sgt#=kc?s)OFI;!8UW8c?rB}G~A zaLD?q^j4}X8(r#UE|C73(!9Muy7*P@6S!PjE*XH|?*bt#Fzh|S4*NtUdbysU`F?wj z^2gfb*7jj&tTs01MsdasWTd5nq(!!=|JBiqep^_k?$fXI?~S*RsdDP__Y{w;a9enE zOw_y&1@F{hD!2=7AH1jVkz7Moq_EwRooD!4=82Bg z7LO=V)*%!t7Cj`f`v&i;x&YxIb>La2?=QH!Ym_DTB0M|)h9Ih-05Uq!}!j?N6X! zVV#lJ^)PJsL;0^=7f8?xMSVM}Cr=RmR@U1c;GC}oJ2$B;Euxy;N_bWMC0O*@e#XBc zw?CJe|INkV9P5~C+sxKbp+}y7L1}fi&h>E8nhzw|spHA~?uqi;USku2Snxl|O2j1K z@M_)I)@-aL)rI6Zix`Z&If%nM{i@ zW9@OaiD3o7iLBTH1oWb!5X%=fit}~WR3Q3pH?3uM>CKFqU-r&-Sn{;4^SQ3t-Ze72kA ziCZ>5pOe&)lo$+eItWQAnjkwMV}@$k;ga4~yB2HNB2v3gRIG%XRoHzpEuRiNL-Oqi ztiQoOpxK)g`QCjJo^pRJw%TE#wIs%|@0q(_Kh%CuFBV$tQ9HOZ^J<_k*p2YM;kdZr zJe%Dw#cy)ZX+!UrSVK&(_ImIW%$KSpy!MJ#K7h^&EeG-c0J@UTtt&b>a07OZ&d=|< z`Vq-+tt8+NF5c2-d~F^$ny43TCn@Lb`aN~uJB_4nZcg+$O^A5CKrhC2I5V0ef867i zvv=3UFQ}8Et#kR6VqcY5OUOCzo}^3*(K`=%S>^QbMy&1izbC%pVpp$OexAwSoUJM! z?vBqK?)TF0JLREBetPu!iGGOfU}o%rBE{%>PF><)Z+shWcjO3rmzXFt{PC%E91rSx zh5|+gukN`%TnrlK!isbG zc({XUX0W&PUWf$6$JK;sHKU2Px8&Tm3zn#J)Yk`Xk4m z)zM0+T9Q$RV~E5!{=Yl}judGFzpAQgpl*|k*46U-T2G{N`56t#jDLQ^rp*{7pA9uC zHaY&z+Qr9Ba=4%m_34Nh9#gxecX)Vs|Ib^OS@-p0(Z|!fzKoS9F-B?Ebgog>7%B#f&irDE$(`t=;Et9Y2#BtBZuMQLv+@wlxh|2^4Ftcv zXn@5wiK=)Rl6|87Jv7wwfTQT^$0j9_e*OBDybLzi)97>S(G1?oOcHfHgU>bm$%|yO zR@nH_*hm4wMRAO*TfKJ|j@TX!XjLGzJL-JXFyn09*w~*YMho@!`tjrt3EUPnDCyw+*U+3t6j+dR!GZyRAYhK9M{Jg;Tn z(e=^UeOGYmK;#d>=DLfL2#oXoZ@!bcQlXG;Q?M&A@QYLhfo2fu1;Jc%bMr&X1s$74 zlxowV0E4ytF%SsujiN{qaxI(6BRqWvruOrvpj>=VUS6IYSzo+(jKs=70wE!Y^Pg&W z9%(yr|dNb`&!0jdECYn^oZ3g?b?tPPR zv+U@>1)IRQ(d)Y!;_Iu|w*~F?*dM5=UYO&9aPcUJF}8S~8v$s`$65@aZc!9GsLsyL z{BDPIz+BLwBXVaSnFme>*R`iF;2HS;T2 zI63>miI_nIsW*nkvWQA7Ej%ymXuS{33tJLD&S%M4f|FJzxmDwy^*MYd!V%~IxroOL z&?8{WTYv`cFc9nr0?_yOzyLiuBIskm%!a1hIBpO`+u;eP*&tKkF@O>cPX3HRlwx}X z+zt(b6r?9708;w1?>35BplYP{Vhc3b=>H6H!+vM`Du!AD^b5%WQaLi^TNR>Ph`e$V zOb3uNFn#-tegc4iM?Dgu-%6FJHXKDJdywx{C!52e8Ly4pJEcp2u{j(*#c6Yexcx zn+ti^JrotvOy=F?&E}7fUO*(&r!bzJg*O90d$!h+3`FGsb_-?Y;5dVQI+E6S$;X%9 z+}wOE3h?b8!QANw`TJRT|t z>_4_cR2E?0)6-RVq2x#(4otA^yfs0b@#)j2KnUh;A2Y}kj!#THp!$GqbpNG(JfQlo zf}7tFqX7F>T}@e4x(Fa;$zaF}P}KYAY8<>n$-IAb$a5 z1{{+|5oDdVfk;VobaczEFM$40@g5Cc(SH1gWcT<3lQ}s#ne+1}CBP3qbKsszSXcn> zc|gj>hT~wbFtE>Hx%Z0J!<)VRh!K^$$EMzRrQM&L-;PdDNN8+!HthTNC;#7E3MrK@ za%72lDJ&8HGG&0I%e{WRYa_n~P&e5=153+i^9u`Ob8{G4;CMN``z=-E@H})C;#E8T zpD9R&qsSvYCPFOMLjH6J# zb+h$$vG44lCCCbqwlO^pD)(A@HbHK^ZAqnXg4|B}UlLZz|1JsZ$uv^N*iQXJPqId$ zV%@L(B6m1bA08>I_%TKkpMsDbd(VKz#P(e2%y}={dp45g!KJs7 znrXZ_&VQ{x(h(wXJWXH&c`cu13`ck?rxDF2-w(Z&1MN)7H^WkX6Mn|FYi(tjTA$m! z1_@RK7Cm05;kBgv%Glu0SLu&3ie_PNksIE6(`Ow}P3Q}Q7BU|is$@o&`LwlH)M7(Z zPeJBa7@`TU>qUa9BnKs8Mm?uwIi5Br`>US+hNGg)$@gayo9B|zD38AVvg^I7SvM$- z50YnIdq0(ue%gNdy52P2PSJbpVJgm1Rl)UHVz#i5H!tej-LE@^+cZN2Kx^)QSL3kL%9-GX;=>lUHc)fWKkG)PW+&yE%&|UqGnVl|=d${`_C`4h}q*Q8}RDrJHhxN5> zcKQ1Aj&~*3nEo5k8Ns@8%=7d&h?h5h(pQYA`H_FG(qkwV!QA_?N8kqEla)CwrC)dk zakpPCn87Vm%Q@5NK|Wbn^AWRx=C7xB&7^T}QTTna;IJCK7Sj5P%pD2Pt9M8_+bVk~ z#NQ+%Cp@J3?d@eJNHhdL_&@g?4-gYzgb(VW4eN^M!y1AeJo7n6SzZ!>k-Gn#N=J*G zDfN-1)9OB{``i!}25m0)+iF}~@BlYUdjx#uilU6}Op{_53*Ke#rq~mH$hRUu37o?> ztD$k4#_+_&c;z>-z-lXG<6=kupGaK}yzU*f^yf+A(ayb-_HMRPFd!87au}z9okh~jh<}lA% z8W0i)~57Ox7PBCQeU zj(`8TmF(%tb)+HL(}!V8(cwsW_;VO_js+L(k-n_X+U2sYQy_uRp?CU#D6Tg#6{o=(`MencA+V|CE7PIcJr`GNmFO@28YU2JO4!cr*OgP zBar%eHs?5Ro?7l41zpyei#qEuUvBXhd*Enhs>aI}Ql9EAkctn?xa@#eY5w_L)@)~6YBTdUB6-Ds3;#uDZDG`48P>0-RD(|y=dOiHNK+XV>HpoE$B!JMPEZ5BvK z%u3loJ>BM8R*aiS=S@2&A&!1G&r8B+Ad`phPQ^O@grrZC}c3V5K$T&mRJW9 z;UrmfWtiC=^Pb_L9(#;rnee4C1KnoUK+L$FQ%vF6C49*fG6dJ;wbt?u{#g;+U{~MX z=x!PAc+kw-Y>}Lf<0Q+hid=j;v`_;D)q;zUjy5QuHOC(8R#_v6CxIC%u(URIyXTr<;w0EUVA#=!7*9PGC~F-Wvu`mR zWD$m~1~S$*kE2AF&F@dn2F!H_ZgA}8r@2~Yyn^vY=(hJ-1_xomf+L6DGkJ+tg!KcH z&1@$;$cMwi3OSESlm=^B-9^(e99nzpQ1Y3SZ1tng`s79>bqjyKJ=I=}(q1irSD4v3 zDyL)Ef@e8WJa`gW6CTG|4=J~x2j+J7VX9!hy&9D`9!wKxKzbrw0okrsZ7a&Ro*`An z-gXKU0sRH?A2`lsUw(_H`64@bH_}X;sHNHTW%G`RXZl%P6nKQ*&TU=#UI?~E7?!L7Pm?V@ z862`rG1y$&+2}f3O~MhUA>b>eQ>dg34h#n;jK`-Y@%u`Ccpi|EIL&KY8UQ_eWh+XT z+nkt`cv_o_`)B}>UAZKPFGLK;glxx!$XTs$3jOecP6S~JUU4B4F#7r~G zjBRfAYIcX#fHWvOyM5bh5~wf4Du*~XS#4ceK0J;(BOhy9pu*4dz&!HuW?;_>w3_H+0-$a889VGR>z%;evn)qb$jbzw-UMG&HDZ0LjoE?jz z7^KZs-FPo4h8=qiWjj!y@U@H_lCDH0?F@Muq5nsV@?{78)i<`OGX7J3ZaV%TL34AzyUf*BJg z?Y|Srweg?O=`)8~z5kv{`hsV`%lmt(yZ%7w1H1CfiFY6cndi*S?mAnRH2Sb>RTmMJ zh2T#$S#xD-Ehcxu*FvpBpORUn$iQmo4h@K$;!tlfF%3+wH`5>RN}Nki!LsuhxWUlr zK=&{$INcKAY6s>yl?-lgKffa$kSYcvPn^yDELt{Wj zT6%H@nbO7!<;gRIVR%hyRgijv&PsDBOgU1MZlYDM`lqnwEaE>>=JsT-Y&8nUaXH>K zC(r%8AbhD?2;K@1TkU@xcf9@5cJt^|`}y>PVMDtMNiuLMzB<;X)BS1)6LgML^E<99 zOC%NaMM_J}`Evm4=!5|GYK-N>QpjCaZc#m(CIV;NrhgeMk+_8KFMgE9v*Ll0x;m{N z&w+p*F;KS!`rnYE5v~PP4yNb$x{f)pV*CDl9yoQoYb!9=tOOcOqs*re4%&rh0J{&8Ly{PMX2XgG`4Aaa&?lVGV+xU6tPV{j4H)X?k0%6UvvrW~#mz#y4y zgA8JPc%_xf%P&vo(YDYCTM=8Z<-T^(NHKw5^W{)d-hL1phQl<@1vZw|3w2f&B?(pr z%en^qz?z7{G0y(BW4|@((u-g7rF4Sp4qCSn4onFZ$4&{BlSF&HTz)NvcX_oR!2g%?Uan}ezOOiEf-k=TECCOD zmq$-b2)J$6<28#JY>vg6%cfkjSNvI%l^OU2$(k6Vxol>WUTB{``STElA9l6_st|kT zJyDdAED1{1WHo!dbl>Vo?Kv x{Quv7Fz(C4yMF^{N!fGLzy)UZzxfp3(FO@Bo+r)oSVF)@UPei}Owu6W{{h4C-24Cl literal 0 HcmV?d00001