From ea16259de34583c5a3b5bb1903c0460845929fce Mon Sep 17 00:00:00 2001 From: Jinny You Date: Wed, 18 Mar 2026 12:43:31 +0900 Subject: [PATCH 1/2] webcanvas: added FontProvider for pluggable font backends issue: https://github.com/thorvg/thorvg.web/issues/242 --- packages/webcanvas/src/core/Font.ts | 130 ++++++++++-------- packages/webcanvas/src/core/FontProvider.ts | 49 +++++++ packages/webcanvas/src/core/Text.ts | 6 +- packages/webcanvas/src/index.ts | 7 +- .../src/providers/FontsourceProvider.ts | 71 ++++++++++ packages/webcanvas/src/utils/FontRegistry.ts | 35 ----- 6 files changed, 197 insertions(+), 101 deletions(-) create mode 100644 packages/webcanvas/src/core/FontProvider.ts create mode 100644 packages/webcanvas/src/providers/FontsourceProvider.ts delete mode 100644 packages/webcanvas/src/utils/FontRegistry.ts diff --git a/packages/webcanvas/src/core/Font.ts b/packages/webcanvas/src/core/Font.ts index 70ae8967..71474d1d 100644 --- a/packages/webcanvas/src/core/Font.ts +++ b/packages/webcanvas/src/core/Font.ts @@ -5,7 +5,8 @@ import { getModule } from '../interop/module'; import { checkResult } from '../common/errors'; -import { FontRegistry } from '../utils/FontRegistry'; +import type { FontProvider } from './FontProvider'; +import { FontsourceProvider } from '../providers/FontsourceProvider'; /** * Supported font file types. @@ -22,34 +23,9 @@ export interface LoadFontOptions { type?: FontType; } -/** - * Options for loading a font from fontsource CDN. - * @category Font - */ -export interface FontsourceOptions { - /** - * Font weight to load. - * @default 400 - */ - weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900; - /** - * Font style to load. - * @default 'normal' - */ - style?: 'normal' | 'italic'; - /** - * Unicode subset to load. - * @default 'latin' - */ - subset?: string; -} - -/** @internal */ -const FONTSOURCE_CDN = 'https://cdn.jsdelivr.net/fontsource/fonts'; - /** * Font loader class for managing custom fonts. - * Fonts are loaded globally and can be referenced by name in Text objects. + * Fonts are loaded globally and can be referenced by name in {@link Text} objects. * @category Font * * @example @@ -64,32 +40,71 @@ const FONTSOURCE_CDN = 'https://cdn.jsdelivr.net/fontsource/fonts'; * * @example * ```typescript - * // Auto-load from fontsource CDN (no manual fetch needed) + * // Auto-load from the configured font provider (fontsource CDN by default) * await TVG.Font.load('poppins'); * await TVG.Font.load('roboto', { weight: 700, style: 'italic' }); * * const text = new TVG.Text(); * text.font('poppins').fontSize(48).text('Hello!').fill(50, 50, 50); * ``` + * + * @example + * ```typescript + * // Use a custom font provider + * TVG.Font.provider({ + * fetch: async (name) => { + * const res = await fetch(`/my-fonts/${name}.ttf`); + * return { data: new Uint8Array(await res.arrayBuffer()), type: 'ttf' }; + * } + * }); + * + * await TVG.Font.load('my-font'); + * ``` */ export class Font { + private static _provider: FontProvider = new FontsourceProvider(); + private static readonly _loaded = new Set(); + /** - * Load font from raw data (Uint8Array) + * Set the font provider used when calling `Font.load()` without raw data. + * + * The default provider fetches from the [fontsource](https://fontsource.org) CDN. + * Replace it to load fonts from your own CDN or any other source. + * + * @param provider - A {@link FontProvider} implementation + * @beta + * + * @example + * ```typescript + * TVG.Font.provider({ + * fetch: async (name) => { + * const res = await fetch(`https://my-cdn.com/fonts/${name}.ttf`); + * return { data: new Uint8Array(await res.arrayBuffer()), type: 'ttf' }; + * } + * }); + * ``` + */ + public static provider(provider: FontProvider): void { + Font._provider = provider; + } + + + /** + * Load font from raw data. * @param name - Unique name to identify this font - * @param data - Raw font data + * @param data - Raw font binary data * @param options - Load options */ public static load(name: string, data: Uint8Array, options?: LoadFontOptions): void; /** - * Auto-load a font from the fontsource CDN + * Auto-load a font using the configured font provider. * - * The font name must match a package on fontsource (e.g. `'poppins'`, `'roboto'`). - * Calling this multiple times with the same arguments is safe — the CDN is only - * fetched once regardless of how many times you call it. + * With the default {@link FontsourceProvider}, the name must match a fontsource + * package slug (e.g. `'poppins'`, `'open-sans'`). * - * @param name - Font slug as it appears on fontsource (e.g. `'poppins'`, `'open-sans'`) - * @param options - Weight, style, and subset options + * @param name - Font name passed to the provider + * @param options - Provider-specific options (see {@link FontsourceOptions} for defaults) * * @example * ```typescript @@ -98,11 +113,11 @@ export class Font { * await TVG.Font.load('noto-sans', { subset: 'latin-ext' }); * ``` */ - public static load(name: string, options?: FontsourceOptions): Promise; + public static load(name: string, options?: Record): Promise; public static load( name: string, - dataOrOptions?: Uint8Array | FontsourceOptions, + dataOrOptions?: Uint8Array | Record, loadOptions?: LoadFontOptions, ): void | Promise { if (dataOrOptions instanceof Uint8Array) { @@ -110,29 +125,21 @@ export class Font { return; } - const opts = { - weight: 400, - style: 'normal' as const, - subset: 'latin', - ...dataOrOptions, - }; - - const key = `${name.toLowerCase()}:${opts.subset}:${opts.weight}:${opts.style}`; - - return FontRegistry.ensure(key, async () => { - const slug = name.toLowerCase().replace(/\s+/g, '-'); - const url = `${FONTSOURCE_CDN}/${slug}@latest/${opts.subset}-${opts.weight}-${opts.style}.ttf`; - - const res = await fetch(url); - if (!res.ok) { - throw new Error( - `Font "${name}" could not be loaded from fontsource (HTTP ${res.status}). ` + - `Check that the font exists at https://fontsource.org/fonts/${slug}`, - ); - } - - Font._loadData(name, new Uint8Array(await res.arrayBuffer()), { type: 'ttf' }); - }); + if (Font._loaded.has(name)) { + return Promise.resolve(); + } + + Font._loaded.add(name); + + return Font._provider + .fetch(name, dataOrOptions) + .then((result) => { + Font._loadData(name, result.data, { type: result.type }); + }) + .catch((err) => { + Font._loaded.delete(name); + throw err; + }); } /** @@ -140,6 +147,7 @@ export class Font { * @param name - Font name to unload */ public static unload(name: string): void { + Font._loaded.delete(name); const Module = getModule(); const namePtr = Module._malloc(name.length + 1); diff --git a/packages/webcanvas/src/core/FontProvider.ts b/packages/webcanvas/src/core/FontProvider.ts new file mode 100644 index 00000000..ab1a7033 --- /dev/null +++ b/packages/webcanvas/src/core/FontProvider.ts @@ -0,0 +1,49 @@ +/** + * Font provider abstraction for pluggable font sources. + * @category Font + */ + +import type { FontType } from './Font'; + +/** + * Result returned by a {@link FontProvider} after fetching font data. + * @category Font + */ +export interface FontProviderResult { + /** Raw font binary data */ + data: Uint8Array; + /** Font format */ + type: FontType; +} + +/** + * Interface for pluggable font sources. + * + * A font provider resolves a font name into binary font data. + * Implement this interface to load fonts from any source — a self-hosted + * CDN, a local server, or any custom storage. + * + * @category Font + * @beta + * + * @example + * ```typescript + * TVG.Font.provider({ + * fetch: async (name) => { + * const res = await fetch(`/my-fonts/${name}.ttf`); + * return { data: new Uint8Array(await res.arrayBuffer()), type: 'ttf' }; + * } + * }); + * + * await TVG.Font.load('my-font'); + * ``` + */ +export interface FontProvider { + /** + * Fetch font data by name. + * @param name - Font name as provided by the caller + * @param options - Provider-specific options + * @returns Font binary data and format + */ + fetch(name: string, options?: Record): Promise; +} diff --git a/packages/webcanvas/src/core/Text.ts b/packages/webcanvas/src/core/Text.ts index e1b6386c..a99d4860 100644 --- a/packages/webcanvas/src/core/Text.ts +++ b/packages/webcanvas/src/core/Text.ts @@ -87,9 +87,9 @@ export class Text extends Paint { } /** - * Set the font to use for this text - * @param name - Font name (previously loaded via Font.load()) or "default" - */ + * Set the font to use for this text. + * @param name - Font name + */ public font(name: string): this { const Module = getModule(); diff --git a/packages/webcanvas/src/index.ts b/packages/webcanvas/src/index.ts index c3ae67ae..ad0b35da 100644 --- a/packages/webcanvas/src/index.ts +++ b/packages/webcanvas/src/index.ts @@ -49,6 +49,7 @@ import { LinearGradient } from './core/LinearGradient'; import { RadialGradient } from './core/RadialGradient'; import { Font } from './core/Font'; import { Accessor } from './core/Accessor'; +import { FontsourceProvider } from './providers/FontsourceProvider'; import { ThorVGResultCode, ThorVGError, setGlobalErrorHandler, handleError, type ErrorHandler } from './common/errors'; import * as constants from './common/constants'; import type { RendererType } from './common/constants'; @@ -286,7 +287,7 @@ const ThorVG = { export default ThorVG; // Named exports for advanced usage -export { init, Canvas, Shape, Scene, Picture, Text, Animation, LinearGradient, RadialGradient, Font, Accessor, constants, ThorVGResultCode, ThorVGError }; +export { init, Canvas, Shape, Scene, Picture, Text, Animation, LinearGradient, RadialGradient, Font, FontsourceProvider, Accessor, constants, ThorVGResultCode, ThorVGError }; // Re-export types export type { CanvasOptions } from './core/Canvas'; @@ -296,7 +297,9 @@ export type { RectOptions, StrokeOptions } from './core/Shape'; export type { LoadDataOptions, PictureSize } from './core/Picture'; export type { TextLayout, TextOutline } from './core/Text'; export type { AnimationInfo, AnimationSegment } from './core/Animation'; -export type { LoadFontOptions, FontType, FontsourceOptions } from './core/Font'; +export type { LoadFontOptions, FontType } from './core/Font'; +export type { FontsourceOptions } from './providers/FontsourceProvider'; +export type { FontProvider, FontProviderResult } from './core/FontProvider'; export type { ColorStop } from './core/Fill'; /** @category Canvas */ export type { RendererType } from './common/constants'; diff --git a/packages/webcanvas/src/providers/FontsourceProvider.ts b/packages/webcanvas/src/providers/FontsourceProvider.ts new file mode 100644 index 00000000..5d1f0573 --- /dev/null +++ b/packages/webcanvas/src/providers/FontsourceProvider.ts @@ -0,0 +1,71 @@ +/** + * Fontsource CDN font provider. + * @category Font + */ + +import type { FontProvider, FontProviderResult } from '../core/FontProvider'; + +const FONTSOURCE_CDN = 'https://cdn.jsdelivr.net/fontsource/fonts'; + +/** + * Options for loading a font from the fontsource CDN. + * @category Font + */ +export interface FontsourceOptions { + /** + * Font weight to load. + * @default 400 + */ + weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900; + /** + * Font style to load. + * @default 'normal' + */ + style?: 'normal' | 'italic'; + /** + * Unicode subset to load. + * @default 'latin' + */ + subset?: string; +} + +/** + * Font provider that fetches fonts from the [fontsource](https://fontsource.org) CDN. + * + * This is the default provider used by {@link Font.load} when no raw data is supplied. + * + * @category Font + * @beta + * + * @example + * ```typescript + * // Restore to default (if you previously swapped it out) + * TVG.Font.provider(new FontsourceProvider()); + * ``` + */ +export class FontsourceProvider implements FontProvider { + async fetch(name: string, options?: FontsourceOptions): Promise { + const opts = { + weight: 400 as const, + style: 'normal' as const, + subset: 'latin', + ...options, + }; + + const slug = name.toLowerCase().replace(/\s+/g, '-'); + const url = `${FONTSOURCE_CDN}/${slug}@latest/${opts.subset}-${opts.weight}-${opts.style}.ttf`; + + const res = await fetch(url); + if (!res.ok) { + throw new Error( + `Font "${name}" could not be loaded from fontsource (HTTP ${res.status}). ` + + `Check that the font exists at https://fontsource.org/fonts/${slug}`, + ); + } + + return { + data: new Uint8Array(await res.arrayBuffer()), + type: 'ttf', + }; + } +} diff --git a/packages/webcanvas/src/utils/FontRegistry.ts b/packages/webcanvas/src/utils/FontRegistry.ts deleted file mode 100644 index 442ea54b..00000000 --- a/packages/webcanvas/src/utils/FontRegistry.ts +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Font registry for tracking fontsource CDN fetch state. - * @internal - */ -export class FontRegistry { - private static readonly _loaded = new Set(); - private static readonly _pending = new Map>(); - - /** - * Ensure a font is loaded once. - */ - static ensure(key: string, loader: () => Promise): Promise { - if (this._loaded.has(key)) { - return Promise.resolve(); - } - - if (this._pending.has(key)) { - return this._pending.get(key)!; - } - - const promise = loader() - .then(() => { - this._loaded.add(key); - this._pending.delete(key); - }) - .catch((err) => { - // Remove on failure so the caller can retry if desired - this._pending.delete(key); - throw err; - }); - - this._pending.set(key, promise); - return promise; - } -} From fa990d7b193ccb3057e5c60183bd8e19c0248a66 Mon Sep 17 00:00:00 2001 From: Jinny You Date: Thu, 12 Mar 2026 18:45:29 +0900 Subject: [PATCH 2/2] playground: added FontProvider sample --- playground/lib/examples/font-provider.ts | 125 ++++++++++++++++++ playground/lib/examples/index.ts | 2 + .../public/assets/font-provider-thumbnail.png | Bin 0 -> 93048 bytes 3 files changed, 127 insertions(+) create mode 100644 playground/lib/examples/font-provider.ts create mode 100644 playground/public/assets/font-provider-thumbnail.png diff --git a/playground/lib/examples/font-provider.ts b/playground/lib/examples/font-provider.ts new file mode 100644 index 00000000..32ec372a --- /dev/null +++ b/playground/lib/examples/font-provider.ts @@ -0,0 +1,125 @@ +import { ShowcaseExample } from './types'; + +export const fontProviderExample: ShowcaseExample = { + id: 'font-provider', + title: 'Font Provider', + description: 'Use a custom font provider to load fonts from any source', + category: 'text', + useDarkCanvas: true, + thumbnail: '/assets/font-provider-thumbnail.png', + code: `import { init } from '@thorvg/webcanvas'; + +const TVG = await init({ + renderer: 'gl', + locateFile: (path) => '/webcanvas/' + path.split('/').pop() +}); + +const canvas = new TVG.Canvas('#canvas', { + width: 600, + height: 600, +}); + +(async () => { + await Promise.all([ + TVG.Font.load('roboto'), + TVG.Font.load('poppins', { weight: 700 }), + TVG.Font.load('merriweather'), + TVG.Font.load('oswald', { weight: 600 }), + TVG.Font.load('dancing-script', { weight: 700 }), + ]); + + const bg = new TVG.Shape(); + bg.appendRect(0, 0, 600, 600); + bg.fill(22, 22, 30); + canvas.add(bg); + + const header = new TVG.Text(); + header.font('poppins') + .fontSize(30) + .text('Font Auto-Loading') + .fill(255, 255, 255) + .translate(32, 36); + canvas.add(header); + + const subheader = new TVG.Text(); + subheader.font('roboto') + .fontSize(13) + .text('Fonts fetched from fontsource CDN') + .fill(130, 130, 160) + .translate(32, 82); + canvas.add(subheader); + + // divider + const divider = new TVG.Shape(); + divider.appendRect(32, 108, 536, 1); + divider.fill(60, 60, 80); + canvas.add(divider); + + const rows = [ + { + label: "Font.load('roboto') - weight 400, style normal", + sample: 'The quick brown fox jumps over the lazy dog', + font: 'roboto', + size: 20, + y: 128, + }, + { + label: "Font.load('poppins', { weight: 700 }) - bold", + sample: 'Sphinx of black quartz, judge my vow.', + font: 'poppins', + size: 22, + y: 210, + }, + { + label: "Font.load('merriweather') - serif, weight 400", + sample: 'How vexingly quick daft zebras jump!', + font: 'merriweather', + size: 19, + y: 292, + }, + { + label: "Font.load('oswald', { weight: 600 }) - condensed", + sample: 'PACK MY BOX WITH FIVE DOZEN LIQUOR JUGS', + font: 'oswald', + size: 22, + y: 374, + }, + { + label: "Font.load('dancing-script', { weight: 700 }) - script", + sample: 'Waltz, bad nymph, for quick jigs vex!', + font: 'dancing-script', + size: 24, + y: 456, + }, + ]; + + for (const row of rows) { + const labelText = new TVG.Text(); + labelText.font('roboto') + .fontSize(11) + .text(row.label) + .fill(100, 100, 140) + .translate(32, row.y); + canvas.add(labelText); + + const sampleText = new TVG.Text(); + sampleText.font(row.font) + .fontSize(row.size) + .text(row.sample) + .fill(230, 230, 245) + .translate(32, row.y + 20); + canvas.add(sampleText); + + // row separator + if (row !== rows[rows.length - 1]) { + const sep = new TVG.Shape(); + sep.appendRect(32, row.y + 56, 536, 1); + sep.fill(45, 45, 60); + canvas.add(sep); + } + } + + canvas.render(); +})(); +`, +}; diff --git a/playground/lib/examples/index.ts b/playground/lib/examples/index.ts index 5a699be8..9ad7a2bd 100644 --- a/playground/lib/examples/index.ts +++ b/playground/lib/examples/index.ts @@ -17,6 +17,7 @@ import { boundingBoxExample } from './bounding-box'; import { transformStaticExample } from './transform-static'; import { transformAnimationExample } from './transform-animation'; import { textStaticExample } from './text-static'; +import { fontProviderExample } from './font-provider'; import { textAnimationExample } from './text-animation'; import { textLayoutExample } from './text-layout'; import { textLineWrapExample } from './text-line-wrap'; @@ -89,6 +90,7 @@ export const showcaseExamples: ShowcaseExample[] = [ sceneEffectsExample, viewportExample, // Text (alphabetically sorted by title) + fontProviderExample, textAnimationExample, textLayoutExample, textLineWrapExample, diff --git a/playground/public/assets/font-provider-thumbnail.png b/playground/public/assets/font-provider-thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..b4505d515452ee091cfcde971f3d20f91bcf36f5 GIT binary patch literal 93048 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%0DvKwxL%r)rU1%9T6Z3)EqqSvf}ej zJ89fY)51M@EuJN6BD09WvME`#x&n!xBt|sFT|lIsh2N+jp9BT#$otS~6lXU&CX%;* z*_q~ZnGly`u^c&_q3p+uvn{JwNf}Ow0uRh?1LWfZ3J zWWc5ldGekXBG@#RpM0rzw=9By8a*Bg^s&gbQb^i#wx!Dmk+{$8OS^3pVNEZ#OrE=O zBqjKa)rl;BSNDS?1u>Ug@->u2p)MVx?!&jWIT?eyuevg$ppj;w50Cw?MDG3bKQ%d| zs(SCztWx|iYAk*I;*w%T)K>q8QvMI=rwaNNP`jk%f_n6pU`JcgL@rp9T2WrCfdWk z2f07Ry}F&G)c=wfuz9Uj8(YkiQ3-`{#D?w+f?;VP~Ja7l{I@WN1Xg{I1Zo{)8nGN zOg&LR-|aXwWT}%!r^$`laNK<9mKCi zuR8o1euOrp;;^^(S*U-F;y)=`*K&%VFN@pn*TxIWP%F-LHtnAr(wb~N4G?nkiziKG z(W2+>w*QvVHaM?&>fdzrJL9d>7kiCy?_hubJ*)L828&@qyxa2g6{j9(@2>U#Nr3BL z_d{^?L zZCcx0zPT@aBbXIBUtdMjm_~o1{wI0A?W<_>x%R)D{)?0U#;`KK^7^9fpZ^is|EKh) zb6aeXN4#9>q^=lszpwf2G5?gl&;9BFAvHg?>3^@p@9zS>Mw{i_ z{PffRY7P{2{3QJvL>Ir~$^TmKuhqS)@^t|G-)8;YXaDzW{kH+981Vmh5Pq{l|L4rD zgU7xM*viE}f)D?fz}?}GAcZZ0TyGo8eAm0aV5>mqQd+fMtO*3-T8XtGzJR*I25jt= zvQjU-Kk&`EI9&X6+-5l&yH-*BboKoMIooSpX%W)4!3m+>o4;ebzKW$vCY4ZgJnxN$ z3Hd;2Rhn#cCZ3->*@uQ4y;(H1VBq|q{%$jTonCz92jK&awND{{v%vKp!O-@Ib%L$T z0rQx~XxGc5*Ek*O*2yu7@XQ6@JU(vGV}-5_sqvoczF3t9mrtSAY$wQ5aRWB z_KB~4HlK17Yr_?CD}}x-dhzAMq1nk&7t=7GEj4ZHC0OYKEACmkX^2&N$O*nGJ z$eW$*$9vT*Fq|Ek0lGu;IOIQKBMQ^n@>RIcr*TKBsM7@k*YIAuVAu5?pv*MRv}Ju( zGR0P@(`3V0(0+m*?FKd2?lk@s+si5yE;+YT9ULVf9E za7TPV{;QucePzOMd5Z@X`#z*ssUyLwlDzV#?dk(m!|*6zky&JF{rXq5_JT+WU)7<1?GbzkBUc;5%nI4nf-M zB++1szFD!Vm+&#|7h2$U@S3RT*Z8@6buB@a14w-ZUbtA_YgkPK(^z`>2ongNqLn}R z&E;P4^>p_}*E^ii)eHbdpB-J^w4ihn5ak1Q3$4?0ABSePa&;G@U_Bt}V1)Wm4`83B zL2f3iTsTA$w^i2#FBy~bUmDGS4EcS3!wy1(95Ms3Bo6Z!Nz#JVAYc@X3MzWt83f~b z>nhko2!oEP!o{~YA-JyLBno}iH8zHEFwyYo4d9hxUu*qvR>8sP@ERqSt5}8N*qh3D zT0CSLNPT`gIlRKNBCbNi7@6^{-e1fVYwT=S;ek7l*Uj4QZ=2DQ`W^w~qoi}nqbfYO zjONvo&{=b^VCmH@8eUD(k9UL}w+<}E_B+B{(#a{Slb;Q-AQ2oG`lf=v>=>xzSFV{g zS5NN|z~B~D>p#USg!Xr`GQ5^F`R-pp#Umxyl@-&uFS~{HmuJ#6jMb~hAPkPP;Qe-A zOMErJ-`h@~QMVrz5C>GSdHtkUzYro=Y3MW;RY9xIJBvXZske0{rm?fBHJ*vtV?mDKMCZkYD3Jlzvx7Gh#Z)-QNOk|4+>}B};XH7i zat-rF>E-&BlmpaKG~i#3h4XSfej&;IZQUr8n<66Ve&jiLsM>)`G1%BkCCCSjBlCAH zJz2fi^SPeI2(mCSqr*O7KJtV=O*eDe-tXyo+hCaIDS|?%m~<~i5vF$#TM0IY_}m~( zCcfkc-H_gNK`3X!=dM|{rcIsRjA@|M`kJJ&RBX!;A~!0FQEr*VwP+2Hc<8&4BR#v$ z!{WeDt6W+K-e$(KV+PhaO)^K-jUypa`{jq;VYzUEc--Tdt%XVWp*j2xPweOC@9$KZ zWuWA<*VMbar+`;KD0DIH^18N@ohc>!_S8iMa}4UYN8bK2@_PL%_K%7^Jn z_m;Fqw^{2=Hr^`Jn1Nvg(#t^j z45IY~A(FCxz0Wq7@pM8VVApRO zXR4NP9Bk)UD|>PFh+R(w%N@J8Tz8XpMt>h|MA#CNh43ZT#iYq;S(%X#z`6@fs@Z(8q7jTdCNPVyA&2lTz$3E z|A<;&ubz2|ln2&LH1Vto&j^hPq2c3fEHTwq_#WhFn3mVg11$Hb7ISG|S+5Pp#@kb5 zyqqFj@}q}=n4r1PB*&J}W_&7lq4PIz=hK&Un7EqJ?4HzI*}Lqu zLrZ=oXnTwdTj@h3bp`daHRpAO-(_Cp1h;IWPvMOWKVh+Imv*`u^|g*ei26fjIThOEcDiR9h2 z972=y=E~WJvoPN28Y8uj*E3eo8SN?YgTN+AjX{6^jE$09NL;I_(oe69R*P)F)?X`gFn8YTCV zv@APZk^u9OmYL?XY8x*^V@(9dWb_|fm8ZxZ=5V~`*QbePd7|3GiHW7UN{fX9`0BMJ zh5ELQ##V+q%QE5Eg z?jOiv5H9S5r#^;O8cs1Qg#eRr+=-u^)>HG{W%lU_Cl7$syhlIW+UX2yEseVuKgJN- zC#|;G*^HWoOA5rW7~$&Rz>l#jhyQUEp88tLN2xah4cOlYIy4aUsf}&C}YrTqzlE1$Q0y_u4zOZGcfdK90=IWzur*BNPIby(q`5=^x-&1vx7Tgf*+65V6p4t z7OCZe{H;u04iJ5I>?ur!|YYHmGDsP)Q`p{jPYuk?iVZBYIHf=qQ9w z5^oWyCf5))*9lw~18B_Rf zLDq^N-bvgkG8&mk$MDo5O%53aF+I}^FlPK$Hms+9^-%?po-o-4LA>5b_hleCpv2t) zzuo`S`Br*K*M%3q2ge>Rit2bL{a4QKXE*E38qIFIeDv|Zeu+5xTZ!6PsK1_QmC{wcf{lSymxOvoh9p{f7x*u79e1{Vo8neB->usznwjGo z^G7-6PqV({bgJ2Rhu)}0wK~`tXAi{Gl$ki_3WXv?!nz&p<~;{#*(-3cGd1>lsjD5{ zAU-*H#u~v-rxoV;JaZ_d&K5&XX~H@$kvB-c^P1%4S30xcgX%#YWKGk#dp3Dq#5!st zAUo40Aa5;Yp~Il8*ROMZD57%)Li6o%p;{&wtUpi8NycBnXBjvU!VxD4Vh`0uAzw+* zy%f84Cj_hZ;ZCDa5d(`Vvr}k!mR`!YM2&+t+R)5(rWsUNr4nM&U!1o(GE_I55o35` zi4_}?&ab_gZ=}$df8g^Cs!_-OYuhhRRJq>|0K_?OWBPR*uhg#)ViVKNnFDplQ%8Ur zc+&m^?NaH@F!PR(ql5IJ*! zXAvC45ATLQv7HYdN|R^gXXcujIeRfI#F10=f=&cIs;flV&)3+5Uc&=9BlSFk7uoL( z{MJ4`KX~4u#pVr$^urVRAPRBo_dc_fYTj8Wx4 zAA3aB!1L?Q$egy0tBbi?=vA1#^617$R?+cy>I!e#FoT}!Eha;i?Q2QpHlBl==08uc z2y>xn6$WL*vMafMpgPbZ+bh|?i0E4vliIR$A)hjpc0L4N5wdUKjqUu3Yb&<>!{fpg z5H_;?k&@v}qj5NRMlWA|fLkT8Nh9oJkB3=f?X#nUB{>eE9z0h(c-r2x5;PQAmgNWI zKyHkfNk>)vfOXZtW%{d_!Zu)NU#8fB8A| z#%gVP8r(Z>Qm9Ei;~&9CzV8{X6)1F6OV9vv zA%+($I!X?l%JAVW#)KnJ9nd?y`jBA|mfI@AmQdGaLQx(aGQ5bbVZ1Vo^6R8MsM}4 z1n6y9x~JTttNbm7=U-b$yFQ`M2ETl?{hv<#&+%5#BTk#v4BAc|Q292d|Le-G;d8$~ ze55z{?3=jie*;%v*efpm|F{$!oe2G=1@M1p8$XqS|9p1;UEn5#4*QRQQ?_ega2WYc z)arwKSft3Mtoy~coEZ1_?)n%$(HmFyA$()YrT5=|wdUKl#<3slq)HMWO0Ru?|Kui( z_|^P-iU+kTr6(`mWGm7lO+eqjwC60TIBl+cU?#cwx^%P2-^)NPYLok|kKr_u{7V8# zfd6!ji~Hs8m7kxe7|-I&s)S|HfWyX0C#KW+t|EAk?Cx1(`>*d%3XSbY?!OKGn*8(M z^Oc|YJAXNrFE%-FC^lmD@4!aeEv|QJu^xKMXX3*~ua|m(&7>|$hI@BNT3_Qb3uPgT zNc?^ri}3OAAqr1L!No!a%{F5!^+)0?gSCh6bnbU0Y*V4k6l?_Y;#2Iz#us1J?K-5G z5cd&B-%Z?^^#uX`0@C33x-{s8RfS|K=?>0z?K5Bpnz9z#7=%HvKaVwNWOV0EnBQOc zGd$!u&V6HnfTpevC2`lRpBYK;7;eS%?PwiEM&oz!n=msH*Irx?%{>)nbH@9_x$}wY zJVmYxx34zhqJKm<0YS`%zqf4prMRPXv)tkoulyKl5r*o7^MjH#RN_knQU zx70&-W;X%N% z-LylMO2_p)zTC|N+@}0CzjG=3rSTiJf}$le*}~Dy>D{gE=BbM2?0URq1+M694VvU# z>%^^3bsCpK|4xBI-D)*-?gKl-a29pil_sHSPadgDu251XUD6c(w#C&q_BDLZ-+8~p zTfcOnuv_)ME(Gey?`|kwUh0Lpv;V%*A$NI=;?U@`Y26oQmA3o8trUu{rL2gFHdVoU zF-65COMbv@`6+9kU(DzLwiUZvpckQ@r0a-?nY+9jTl<Id%BNG4oe1TkTGP;asZQ0f+j*IVR05Gi97DUJPbJ8j0N5+esi zT019D`xv{cc~3r2?IsMR-lG*u26X!KH_*<|n(B-3=*!wgStw0~N`L3XkQ6?1d70F& zBzY6_+Et}9{9#qwtMb45A&;_lh5rlS;M zG`xz~J6kY>`17g+l`%eUe5`@|6y?;YX-!yq@`QZc{myEe!9B5b>H(YMmGJnXbBc1l z&J*0m%U5flPP_}k0HOET0n!DT5;MV6h0J%iQnOg4w~Q1$C4y~mKdb!E)vyrx(t1Wr9gZc_?#*@rc0A;T@0_k2 z%ry@gvbT%secmNx)bkDT*-)}v3G9Uq))5;?kAdk4LJFjTAzAEG!+4hmDWT@6gY$;- zCtznp#1ysz*G((C4LAd|J!DAS$GzJ$&`T_zsIYKcr~+HtR>`Y?xV)I@g-Gn@V`GF^ zqji5yPYMVz7gvEBUXHc8(STF+gi|11%+b!=F4>3K@$~L1kETv&XnH}m(oidBXch*i zY+gF1)|dcHYNTTY)l=0Kl&7-gUX-ADGne=~*k_2pqyxu9l_Od(j_`Znv zpH?Z$`S`unh%cfh8GZ?(B<<)nJ<04DCI@wP55Dp1ZFKQ4GRXe0y&-d{!H(T}$8vI5U9s#hP$lz3~fX8?Q8p=OUzC|#lx=9Y=Qh;DpTa|`-6fC()v>7>b?DP$dN}sV0 zMv=CMma=4Bsnpdvi@n^wB>(5ZpP8{eC-j%wR&VXlL()^T69X51LknZD$`got_<}I3 zketEIhtBIP>zjt_0a1BnPK>kznz5`mwBv_lcB2^+dgi3$Vz)bY-%;d0z1H8pIfRFh z8X>7K{aUho)+QZEA=VS~i2zbXluKt2JMD>W_`r25N-lBjP*5eguNF@828SBe6qJt< zQdl<#4FAJk#*WI?s)6N3#-8b1Vi1M;st0C}k*`b6+=l3JTeR5~(=-LEeqvG;s;doN zJPRBQ1#tEoj}JIZAomWtYalA`AE>5KYgU2-yh8JH`mzu+2e6>*3WGsDi%9B+aO0+d zQTikOUN9wuJc*TAr<7III}mAm}{z^Um_pOes5{d-Oqc*SYgA4D28M zd_G+PoL)1JeDjKlFj5;!!tdY-{i@>Vy?th5XYfisS6m)J{ryOVK&sywSkgZrC_I2F zy0V_QY#oA-(+)h?ALYzJEeiL;{4c^Cy<&9bOc}R>8+6g5|0Nd4bUy9o)@ogeU;b?Y zQQdFqaI4w+?&5MQ1lx`oV$1|0{pl=jeXosCVC<{4pErOO`0&1*DkACfLN-R6!(T{@ z5{>5yiJZg{UnuuSGrfFV+!N1`L(Mkxi*qSRO>3sd#r&n!fCDOaTa7a=SH~{Q%TF-f z5V*;nS+~!fKie8o)vfJ9S4=$rWFCrZH@*>~;}x6I@nq87*loVr=2cZ!yR#yZMEi`h zJPllky4a>1 zIwX&-((n!)w3<3WsaUJwyg0qMA(4L1oV?xWF)bKF=N##FUUi$B}E0cIuJfy+eW1qz4};6FU^hWZZRH-HO0Y($;pJ(+b9wr zs1zXbKO~&BGpKi)-86wnwe)8`6^&5?Q8nvM@#-Z&p-sn}vkW+2Ae{TnE9DIiJ_egi zr(_v*;iHV|)&06siOVOF9#5@pNvU-RN_MBJ3P-brb9eOXQKKx9g=xjiQ_fRGmv5(C zzEY8gCB=2T?M#}Jj7%~G0VIkOq2eL>jqP5rDvezW^=X#14(Oigx~l#?B=Hw<3g_r9#MOOxNVzcq7?b}Y!yB;nq5h>o0 zqtzRKvE$kB-811hQe4q6O8I#< zZx2hPa3J)J3+=91ds{hf;{!d0mC&C>WW@!`4k~*nU3~DSWI7`_)}|IP z1>|fh+fNQsrSyL3vKhvQ`aVyZ?BU#d4U`KkryADOJrB9j>`beYCK&3tVZ$YK%X7)8 z4WqhrJ$6V$w?B-+MvP+^A>Km~ewC@^6*=)lKiKJXaaOXkEQtr{F%(y2?S#U5Im;@M zjSrL8`V({FZyK%7u|pE`^$fjp-EJaY$Bz6pH)2?tI$ji))Uq;7KxQ|3wJado)jX$^ zZTAf*SDqv|#ZTXZ<+4pW?unGgeDc|h{?wRwzn~gL?weM+k0?HRNMO7dTI5eKFKg}- zbXSwZrq{zJrp#qF!vjtuynNfSa}RFKp6k6Ff%r69{8zixC+qkcjs5v-Kr?Oe~*m;`j2)$sqd zOi1z)*@g!(;yP@e1EuV;`M8xE%SQ%^WMSGrmaf@C$g+SVw-%Gl}0x#E^!B85AH? zlH!fu(Ba^+t?2yrY-vwes1**`!k}AM4ygzE*8!C^py9b{E)7@x<(*CNjVY>s1KmFx zep!L4*|HUl|LKML7Q)ub`!`=X>zZ^y8nchi?swEXK<>VqtqhYxSyd@#>zJ=@7=ou` ztzbLT!`70zyUyQ*jb+Ara;?Jkm>779vq9Tzb~|?Rx!U5ekxUm9zQ8jQbr?)$#_WQH zr3;BQ)st~8qORfnRJE5=k1cvGUlX_B0}I|V&{>Tfb!8Iz+IhVnpm1zmYjF1!?L{ih zUpYvqh4WH`)WbN(_kvqE#1>!vMK@CRh}(N8*ZYb|imt3e+H|YwWoy_moehM*FD_f< zO?NBM#Bf}9;Ong=jH>QIOcUDu&?uKy*-fked%BY!ben`QIQW_ zBpNd>v-HC83=+RkS&a>X$3Vi;dXmPk2S?cS*Tp&>yJ4w`wKGubTjUlOS*GV+9_`QX zb6S2$7Y%OvW%uJ3^S2kUdfyjqNzw1WL$Dh6CJerp#Qbyuo4x-kBChG^gGfTi-cR)~ zLQIo7TSjN77~j*#jO17aOy*~Y%qmB4%=oxHdbhZg>1tv=dSJNK?U*z#AT={9jCP%_)zYI8v4X!4|M`yRMF z@FF1e;lbiv(MMh!if%lc^fqtFCB)9g_T0whl;GVVobekrzlVIDp$vD$?`bqH@Ssu& zPV%u1c5Pe)dC7BNsf%!~(dFuaD&+}vu#xyLqcItIH7wanZ6rMr=Vv6&z#+{V*1Hl4 z<73o@KJ_&MsVx^%Q>!{Ut;aT;-x5>Ckw?N3Tm96)E=($WO#vbmIND9z{n&hP8>RVd zJ1gxqsDHWaA?0Xw2zc$St_-;)Zn-DW(MF3P<-AcjIP_E-%5+zryWZ&L>1F~wgt>j! z1dFpJ5CfP)L|=-ISXl$9;f1WINWu+9X60BWYD^M{DIk(KqQKL)R#^4p*xmtUFQZ-( z6XqMWmPD&(bdS!YtXu@7Q7|vEYY*mXz8ICoFw(B|C;+Y23O;}Zou380e6Yh#9Pe37 zfe{%{47BQD*Q&FeJi<$y_{H7C+iGc85IWKS*+4S}-O0!Lzq}psa_jR?qJKg4hjmv+ zY8?fj>^{YDb!IJgi(&fv9MjSpV|QaCUDF%^H3NekdZrhRVI+=Dqz6tgqHTk#@4s_E8InCVKdZvHCyLEqy68iO zNTi1p#a&*omNJ!;@rCf?Q5IMDYSt+I&>0l*Efg3k zu zg_TkqkyVc?I8(|ahSdRGkNf6b{RO6_xn1(Y8IvEY}$^ z6xRGj+uqtG#3~O=rY)VtXRCB41xP}RL<^J)Q+AAu$^Hw*os!F{c&e{Y=i3g&wM?OA zIFG+{eq9K;x_~N*KchWW6-gIqdKoe**380o*K@=;vLE)L-i}f+yqg?R9@sl5utymg z=PKh?#iwtMN&|ul`Qr`PHC|9*C4Cq)iuw{Z@x`NvGo{#v*Zi8vqvXbmwDYc94`9vM z7o>Ac7RP3m$06|x!op%KRlLvv7L7|-70Y&o8$D&D;7nu`@N@* zd-Fz;uS@O-&H1$xvRml-h`es>;!eNq7G6#_l)V;!$_YKt`8V3O16fPLzx>CD+8cNY zhIatX%*p-Sufh^soN^g-(AFS1E&KVYkq;^wFg9abG9L13XJzWJv*iI6d~9fXj01C7 zgV|Ed(;`P>7Y{a7j>aO{!}OReLO4UKiiXMW`|hl#~zy%E`)}Sx*qH6~l!f z+jvNZRRJgD%!&J(j7Ido=%cKFPr?lC@9J6Orb*KsB2d5n&h}ZLdF4HuQzHes$mK0@ z)xu+$AS97!@gYe7-COHO`k=$&3U8vA;)Z`E z8${X2Y-#{Es@HEm59Jm#UUxZd8i!hHY>l_>KKJ0T-!^+6fN7(|p>Dggg>#TmGd!31 zN)#=UZS_@8tK7*0qT+z+mx}#Fv1T_m@WevC?|GuQi&YwzxgENET%u>L%cJ)|8-70aJi=5O>lYuwDy@f^=aJ>8opQ4@`JI4Tv@GG z+Q2rauq}G%(fLNks~Xm@yEQm9GiZO=KP8HbE9RH zOh)d4Y79j<`9`RgO~|1*v)mLpW67nSk!yEY%3&B}lzR8NZv2U>Y__gKJpgHb{ugym zMaqMTzk(CHARFT0(WANf8t`OpTg=NicS*Thp-z08;O4ep?Asi_kBphko6_RWzB< zxhN=(Hr*dGh{cDzIj>Tb7RrW#fNr_qnvlBpA=LzT?eqsp-LTQk&R4Wunmp*?j~xBG z93wOQin&2Gcb-2v@3Rj?4|bj@2-S&mbF|c1+m*1Ny71XN&2#@uTTkhF--cD#f$=i_ zZp2io1|qV&W6bUOi2_{hY^=q$MW>hsQb9H%&2{3bI0>8j`2b3bFa)Xbw9FdMhK2i= zF9;_+OFFBQ3wEn3i5gVdA@D`J1LmLVavJ8ZTO@B`9@ zQ$~CJiZrJ+jj)S8;(xCH1N`xPY*!QJ(Q@7*S9;L7f4tq5H@3sY(^HP7<68hajUD`B#k>5{?oc$gH?!j(!4#th{eSsA;R*;M%~|HQT! zJ@?_q{stM&(Kl|JSsz}WE!C+T>pYx+7&0EFpf6%7#m4I_D@|(% zmH{{TwoPyBQ_V4FK|nAhF41Bb+Z_9{i(WP86F769l5nu>F`8 zC%h}TJghdSjmnBJTxezxmd4;w$#IAmH+=R6FJdx>AYe^~qqgsYCa~MmB5>F7{p#ir z8R79p^|am`o50}(kYf(VRCDT3v*wwQBN~%{knW0{71H;uQBzBBQ`p((nNIr!xM%LZIUhK}FjfMyJI8>3ihOF~ym5#Q(fNLKz zT>|BU2{q&Lk4F#bK^&ZE{yK;EIntbjSSg(cb)K1;85VB*EEc<(`{4&6Z)7Y>kl z6k?`sE${5EqS1pNX0{e;gs*-3`fyn7IRStz=aFowDU;$nSB;)WtKUv`H?}yb z1(4}>|4-uH-FrK0q1RkU&y^=dPUY9rtVr2{g;90ggvWZ@PA(_%<>C{-QoFsze)=?- zeZPg!VKnS;2Y7M!{=I(%=)Szzskqn{0e57)c>nC@r;9f~Hs<`8Y#X2UCRyqz@)Bg#yNT{ zOQ(cMN3Tv7-K_X6os*U(F$c8U#>g>hq)DDdXbb{c{rNUR?gQ+vL3sD*j@V}0a&GKR zTho`O17E!J?hqF&-2LD6&Kse1`EfYnu~1Q%u3Dl)N{fegchPsYQT^F2*5tM?xi zi8sWimR<3pWifYwkRTv55;tb7#k9tn)!~TDKLXSH>rQSl2U~UTFH~`{+tvD$gcV5h zP;AfF^Vt#|laIk7hM3{w7|QwQwwOy>!LvVW+xk_KRD?5Pi(3+P+?^82@h`p}NWZY> z-&4eK=PJ6p>iun7s}{asoV3Bus@c6y>u1G`3^@Gyn05Z#uY0#z{}jDS>bZT)Ec`p} z_zz~zyu<_+I!lXT@P_=rQwf=m&KLoq@a+A+ytuK;DswZS{T~>c&CA1E#e4q!>i@X^ z%b_jO^3G2#Nd8}NJ8{K#<^QXl&A0!ew1o&{5I>&x9eeuk-#9n`n4MDHEkFES1nL1m zI3=4?-@#m)E&VA+VIi=19bj93_;)+s#jj8WaGWOD{{IBJ@b3pUFU`yWxeJLBKm5;s zZ#L;_4G0mT)dN5r{!5JL*sWTp%uu_2_>Tej*X6r3KnRxW%UypPx^F80C?tCQryu?% z!{$gx%Tuc^0124?ON=kGn=p)(<3IfH-!j~JZvqHW;gzWN_d9)3zr6T5YxBbo-~0cU z{C6V&AzaBn+5P=a=_b~-FXx9J{#%A0wz77<`~1Hj>dz_rzaQ$4N&5e2MUCvZGrpRd zu(m*mXTioF)T&nd2OQJ_u`Sd?@Si>`sPB6n-OH^oDm04PNg_FcX3zdk;p9E}?!)HcnW}5x+1M zxtVxAOrr6B_e*?c^j*iO18TI_eE!k~SF_}AY-JgN4wwth-Ba%}ACqT1J!PK{TUj{L zYTL|h{W#cN*bP-QKy@LoI=(AxC3u1dqVmJIa5RB@^TRQZfiPX{TvVqG&dnjuxaBsv zCpn7h$TItI?jC16>Bb~ln4PlV<)+rtS~0H$Y5l%O|ADJKR2cu_O?XeZ&(^}{7OYZo zp}$jxi%wILF==Ja^3vLspt)%`={qMczRtTwX=V+XmGtXY`dawR9J{B)Duyfs^F^y)8x?jq3%phJfHt6pf2XgZ~WUeR~i@Ky-tw8D@c!P?+S`` z(c#EnP2|pbf0x95ml+WIQLD4HUnq7r&#kb#z)}6D5c<}+j3!h>e}3My`eT|Rb0@!& zxq36VFLJ>V9m`&aIIFG`6W~vtcQi_y)(*ZYfP2IUKe|6c#l{QrGE}M%laj*k`<_S6 z4`SBGh!`*JONZkdau42+m8i6TuWJ%t*3hs`_Sg4WyXvT(0`2AE5bd>S4mNd>pwJ}S zQ|(~-eTya>2N)dwgGs|h6VaTuG_`XW>=yV-CgMtTFSB{l#w|e!WdD4`*Bl~5hb|pa zum-^VIN6D47214O(e0QD{#1XSe>OYGT7T+Vja&?b#4q=%0w-BlStV?+wgzW(S92Wr z#~9etWWBVQYf{-|dTH^N%GG6^)k~HZx5`tIv#U&SdXM4TGJiqNOIW(`Vu4W~=zO+VCo6||LabhWnt#nqY>RfSb{({yhqFg*aY z(c7~|rdgKDpaHzs%2>qfMROIU24)j_N!iQ1yilW>DWBeaC_lUv zPF}1HPev22QrYu=t(VQy^e5xb-meQbq9X_{>oi`L02oQ@@7o7KNGmZ@`LQI`E)Y^Ldr3Lv}nqOHGe1K z+;JE~f9-JvLD{rrqGcPJHYUp4W2Uz52BiN=T%2=dctI2qp7flEvXCX4d7GG2LIwF2 zj9Nx-%F+*r8kq_*4TvgYGGaPu*&?~3!1MYzcO~Xok?D2;yE!f!U46tH6QY~|Twfgt zNj95INEJvM1F`fDo_XsuJtv46qnK}=y-%3Ab|TEPb-{zWV8@II1VeECkP^wH7p)i9 zD<}<+#k5H!7d!NDKs;`~%yaQmrQs+iVvK$hMzK!~>8GXl$+nrKo%o>leHKk0*(8|A zgoGYaX9mzNsN1ia)hC|>S%FI`)WzupkBx)FQYHk;XOJ{6#k^N-uhm1-elujF*>#?w z=^-Sbj$zpCM&`sv57YudH=Pw!oak>yHL*cXu~9=XurR(V=fN0UW6HTp1~7Nglk6Q4^Rmwtn+ zbTdY#+pt{>qi19zU#9!`oySnpx7ldQ>%?$$ly*)}k-l_Mcl%IOSf52`6p5GD)JOug zGQ0xY9pL35;gGTqY~BYGYh!91#v`zpz*+Mu($45%je;;fV!YN>BMQL4~r zvHxQwzJ+%}f!wMWj1JN^MtfHAC$;IRv0jbpzt7QLUDbuHm)ZSnehYA}2O>?<8X^`j z#~UA7+xP_{*1Sj)@%Zg8E6~=wNk}S&2}iP03fSc<_24P}&{Uq;Yv#juR|Ovw^ZfLxa9WNRw(*FLUr^YK0l&`?rm@-|Dbd zE>$R-c6DLbi&kicby}>v!a^)= z5jk8y&Qm6Tt(%Y~+!~*dCS%PihcYFbH;l4-B^M*Ld|*=^)#iXpLX_Z6!eAp9&HH&KG(YhjP%}pXlLOkN! zvN0Y z8ki{iq^RW=-tPJs&XIB=dHavY9yle5=B_wy!!o3qk_*YdnF*lUE1} zkmJDhX~Cu$y0orhSnHTA0Tke2&( zt9x8MUCenrCKcJD6a2skK`8DL+-hM)&p@v~uE)DC zBhZe{xZu$+>XLzag_q^$PFx+WcV-sDe#z9FwkKC^q9NPrP`%SC`=GCgB$aTi?0!Ckk-6vSk{@i(W$--~`kJK%h zw;iNGZb=ME2*HA5_neuphS1CI1#la~#m&-N zXzT-7O%;dqKyAPP?$5^CUiQJ$ewUm>j6f%)`ZM3 zmJOjoJ1{;6i@YjYUX0XR-Aw6n!svK7;2jsV8}-S0`vi(?lLzi8AtN1C(G@8-T6z8z zVQ)j2Agtly=P8e-g1AKo2m8f53{yL55{f7Co5693UgghZb0X^OjJ1q2y~3fPDP~q6 z*j$EP%OR{r4R`RmKo(LhG`*|Dw%g5RTSEoNYW5M=;C8yK45)^?y zjnRZg$s?Krq7>!JiO!08qP!IFk@BJbUmZs_med=2OI4PEuW2}(ZtEMSh^YdJCtL-N z3NmsRTZu!j*D09S>S*$eU=f?*&2^f3D^t{(!#zlb`y=9`#McEl$gwnesGv!^Bf42|F-@%p46J zsZmGajJz7<1_D_LH+oKAthFpU?!@ryJNuXRLs0#eC26rbr5o(0Oxf=*^;zAWp0@UEdwv1 zac-*((ClzFxR-Z2VL2m5K&KIT<+|g8pP~8EGOO7gsy=zH|581=ZSEjWnIRT9CqtVD zZy{effH)_&7zvKwwHAa6DesN`({cFzDBxbx+L|c;{Z##~z5qWOYi6L&Uj6a=68=8s zfbOcb>1fo?Jn?r&W$-0PV&QlKf5>CGq(HY2!ik#=@xX7{JH_8wKfGh*l+`ae`Hb!`SK@ zmNV>j?Mn1$rK;CEhAxeHeo8~mfc&haK#~iZGDsa z7VY*mNuI*rMy@x{Ub_9EgEw(H!b64Uyjk?mx zu7Q}4dY}AdZb$b5WNF+BV$2w;eR#MUeGzaATX&q)GY4&H_8?izTdYkum4l7BrPwXCH-vW=tO=T|2lmDDx^LT?NA z-#clY^1s;1(1s2U7lER+6Q@ zBs?=J)RR7Z8?@E-V&wz*^U1sV0|-?7pw^uIx#u3f3*%GfRp+_N(yL`~5SsyJiaA#;mbxaH-NAEARK61mdI|*xmzbqsxPbZ#ziL@xgPe zV`0$_B8H|!+Tm{pckkU^s!)$#--{BFR$~XE)<#{1tM>BAk!eS6pW1>Nb3LmZib=l+!k)J*>F635icJ?`Vb5~0*tZ{3*t zc&SEO{JbcB+(JauhiNuLd))zzX$or;+sj7rB#UF3c*U!yS{Ye;X|MQ5{cCf09Tsnl zP0yhvi|ku!f{vdaKmGA+$I;V3Vu$0J(^SD#qM}N-Hbdwm0$dfX~7XE`o8M$1#f~YzWksAJy-a$`V zR}y?mBd7987G|8xlxK5iPjBNGbO)ok778RXQWxy!t$jMZ#|S+d@F6q=%jobOrW4|{ zQJG`Z!4$hzV6Vb%22y-NmQ@{&1;Dm7k7$8o79CH&r>N|ED@IGN!$5Ii>>rPtV`TK( za>S+&m18kr`^>7L40OD2_^r5ZaW`0e>6)84Rjk-c&rEh#hLT~SJxOJ)oa;Qcqjp+~ zSOlK(u_59^D=*#B><*$9HGTSY8qvHS$6vr1Lhu!(xNiL%he~mkEycarQ&Gte^$}ja zM#6if(QRSYyZ}zbwS_n2FE}-wwM2P1ZkQ(&#y)CTAE8$Z>B7lmGXlrBC*G{^>jAjN z++gU4FQ15aW;cQLX%l&!BQ>G&<0=D;ITq}y-0Sv6xD#JpW%z9ugntHR+WZt!-AgKY zJ@4XxC42MT!0scu9Z*gqQQeoF!*Gw(VOU(6#tF67Cz%Q2q)4Bd?1X8fG;YYaLn^)N zLIZ99TTI}8wtYrA!P+QR#K(9_Tf@7Z+6HM?g?>e|G2-|gW0?*qYYZ^Q3#y+d5 z0@=NHxT3%zKuvN9%E&?&FFihfOa&h(S1+g5TbgK#c%vTg8fP0RW9j#ogg6ErxU_UtKwJMA7?Tt|88w~-zkgquEV zgPxyVpVxlv@95iYSo5Za+@2`mB9u@_z(MByl1z6$H zHo&e=FsqE8$}i`IEbko*!iD50EC3+L&m^tw8()~OJ?93_FE7=wADlqNf1{sf2leUh z>#4jMqqH14C?q$md`^tj@jU0NrP_Sb~qSHR!hm;@V2&i^l&8`$k>k5-Y0;y zLv%zZJ1xlq-N}+pdi~0PEHW@P(Yp!fZKJIGgvks2o(llB0AIJ6N`LY!-I5Y{%WKNR zqlH+Zzh)%=Wz zOzgnPce&e>sz#EMUGVtWJltBUp*6!!r{{` zgKV+dP7j&CUuVmw?_GoHbA~M5cJqg|iAIQ;>f)yCJs^uvleHY3=P+>>$?`^N4T2mUDjabFll&f<0;Ca&%=l&P7x7DkxdLZQIAKRvq0Nnhu2VeM0;_)y z-Eyv)TCAt)`^1kea+)KIW(l64@z)vJL)7Ny71Pd8T^_dyMX_Jf9_6(m4HCv%nLpYK zCs-klmDv!%tB~|t1HW=7c^uk{$#z+`SLb*h7OxG>z7EknokJvq{ev}BontZZmQ9Ps zt>i@*li{gRjgz&raxT;~awc;4DpDKU^N<<&gnHuXOq}^Ugz{@ z%HE+$*3@)9Zn#Mo@jJ1tA)!{6Y0aRBLiMlk_+5}{1HDWS_r*-fs_Yfgh?4JBOPT;qH{`!N6bjNW8*yZ<|C;)E_*SnRxxjxfJ+oJP)A9doIsN~ zL$uJ>_wg7=C*RF82{-wABc%>llf3BZVCsUjvUPPjcrh;v(-C2+5aqV5y5=P@Ab!T= zGv)CLZLo~}#t1GdDAE4V$O~MkdONWE$zEIC2etB4gQTs%!$s;Unv*V*!l7L;I(YFU zQ@$r+q9~74wGS@34Cr)i1bRC%)-Ebjn~{WqpxJ^04TSanboiR=vQtKu2PW+l@9K`6 zmb-F8`cWl;-85+70IdPh?ExtP7o7hh2cQOS7gxZ~y(p^V2FC$DjgXjP?I3D+i^44p zaGu9SSgTcMFb2c>Mc&-wW#NpCTrxRJ@0JI=!lzajrO9nlf)u^7riL`7c@+iv#GQ>bJx2kkbHlW$Gwwk9p&ij~u5<@H77nugH zr4#I6ZYrSqWL>u9gA-0QFGRiLC!CZi>VlFw4@fVYzG%_@cHGMg$*F51A|w2ZV%OV= zw$RJD))q1x=hTmN5HEMO>X3GQMpsI+jV%J)pAm@7Zg1#|Hr#1u3LIPUZd-CL-BsJZ z42A?p;&z1d)UG#P!UxB%zlGNi1d{di3iB|7D$H<2!9fSZ*H_Wqa2}+}y;U%iOb=-2 zhc5Z2_6_zp(^D95U8S5@qyQA%_GYxT;(m3Wa`JxGisq3!%W@D1}rJllQPM`8>6E7=f15^85b7T^i^nv+{Um0E1^B3jJZzLI1mDO@^&m2FpG%-fmU zUvaOF-A`CQN~S)Adfl9Oi9d}EwWSnRJb>zSr^7;!_( z0bbf?H;M~Z#6Iulq8U1q_ipci73TG*ct()^aH4bRbMik!kxyb0^mrv+6Gil+=czfn z3^>{q7b7i$I#<7ScyZGUhTL&Ola&MkAQ7tKQZH^(VgtW~kTfz4tXzUljI|D((zjI-{l7 zeAowSp;a@n#Toe+8XRBm@E8;s{sB95Wls{0w^i*Kaf=QAA}JTsbh_BO*-wW<6{PmQcPA9IvDf?G0ksiYCD+Q=(Yhw zAC*148yq69x^$N(e5;H)GOc*(e5%_9HZMS5lOAB4s9R%AdROu220G2zt{Hh6dO|ad zO5rH0AgggKGQ&pf4w_rcMOFBrv3lX-#T=Vf!XpCjY8n2}T4hVvgQv_Kj#I<-t_i19 z8gBUG%gATG3rtX2Kx1po486d42y*=)5sJ}WFI8M6v8Z8IUWmn}M2nC(x1ZT2Hpr`uP5P9;+vAwb|l3*2NL&xyAxx|zJ#`DuY0W<}&`%RBh{ zhK~*p+N5x3-W4z0ZGD14Q!^XX6`EQJkC5^rQW&izh>)mkb6eA0p1@ww72J(ZwgeiY_D_HvyzrvO4>sTz|wbzrrYON z$uBKW?T;=3CUSI9n`iBObMAmzV#v#D_Gv5o({x>A)(Axw)<9Lx^5ZX7&WbYQFITR3 zQFEwU&vcen2eoFm&Z)0M)?srAua@cROYLQJh@w|&(*1y!pvdFp)x1}b7=LgIC)&?A!POsNRB20cSQjJKu1$R74`_&Lemf7e2>*_sKPm_`b zIuHq&FT2~kR4Re%(HM9Euex@`KBtJH5;0KKdQ#mWKeWU>c%U)DGdy9MIaH%gqLM|T zoo`wPfn-IBz-Aj-uuo+`a5A#9PC3#bU-=PJ;)-Pd>hly6>(jkP&ha0YpUkI>7gzc0 zk%3vPU)5^m`!K$IaTjT-Jb{GUWV|xpt?Wp1L$}oPwqgedrhnXFaJ7=5Hl)3lYEn&( z&rM>$X%%rek~~sd{1T?90why=BhLk`i<)u7ov{^ua2!yBOdbSVZb**ojvZ-0W9xWW zt`_|RJ`yofjLjSn*5dtdUr>Tp&Qi|Z4*-u*Y)EmP*iT_)`ODWyvQJFFiDxkfY9%>r-y%gA(E=UuJ z@b1?}l{i@$^6j{B312uAR4m?pS^)bxc3P?F;rpk+3ih&+G(Ac@(UOx*y-;0XWSJXn zphLz;xZ2Nn?WvYh=gWchy`0w(o;?nWm3j%;mr_FagAbK6F9hYZ+y}?R+@VG1vKnK);UjQ zbR$-ny97gp>%{O*QKIMk^l^0V8k24x%tP!BmH%&}7^NtGkWXLAK&jx~C zBp2;m&Des|D9SCU{N!k7-5Keo*;PIXXTW1QC72X$N<3lV$MQICvb7yddt4JcPH%oY zMNY!IlBq7q-Kg$5thW9MYdL!m5eHD{yK7=Jg_Ub&cvRnd-2@ptuI8Ow!5F8@D;6|UO!zy z9?1z>y8-i^cpNyQ=n@Et&>HO_f3hLt1_Pw%*F_`l4wEkuJ@C9>W>l`q^i|PEhB?9@qR{)GlD>JcdyBW-TswSyk4<3iJbpOLIBTY4)&EH7p~~JW081>k;-2lR7OXD zX=o9vea26l;J82~_qYhs6KP(AdAK2A=2qK9Qs_{-p9U?~Du+=S1EqHMbX3X>%LQhc zwKRIiZwD`K+3I&3_zl;GhG<(@I=al0%%yr8 z1eFB0&DV>40`;e~?>eW>=0YjmkXb_VjgUA@VRz>65>$1(SnN~453Q`*$XKlBrgVMM zpCay@ao6Rn;Woxyu0`*@%lZj$IX5)rxN0KeuI4qbWo6`ErCoF|u6mS#u0~vXcj!1s zg_3wK$kuYe#tGFk&CTDTU7s5nk~VHTV|N)Mx%^V>!Zf z{3eMxM@)TxwYxCeTU8w{mnqgvXA9 z#sf|)AB~h-FaTYtIRJ0U#>xpnYgs|e=Hqk9EeFWiWSskfaw={pquZj`m*v*|GAo~L z{Vd6tm5`ZlKIZ-qXXX>=7jWLIJ%qW#NDe|!EQaGY2A)CI!>opJg53D#8p0(j+_d~+ zjKc$qon|I?u@@4rvDieef3lf-pjbk~u zSHI}%c6QxswRza(l}|^Hw2z$Ns3gR_YH=CGnPj0tl0heT(aKoM*C{;Jf$CfcnNUG{BYFtHB_)^FS%ycxnt_;GRB!-9FrfO2k+PL%!TW<1E#d~(SJo1l{KEbYc*`~ zh_{#(~H3$wdPzy zD)Jkat^`BG;)!hH)daT3BKct~*5W85eW=9#I+im%9I1^!rY~-*tax(OYP!d_+aVRF zO)kaPxj}Ta@@pd}&Pm06f;Tmx7vm0fLQ@K^N@~ruY%qk~^z8X&jtl_Apjuw=2 zeqwrH{cHm0XZYfF*-%-&2) zu)$iD($M~UuBMAd>p#C$NeybVGOw{crXWmhu(D|8mPXpG7(+xKBnh;n)j4`M)D+`- zh#;*0IXczac7Trur^lKX4uEfJb(V}$xf;^dFpCUmGtzu+ZOvp(Sgcxkt9i24u!@$Q z*k&@xxZeWbH#*(CZc{mj>|ACM;pXcuqq^IOtLlP{rRX6%CpcLkC*8b3Ocng} zkWFMOEI&>#hxCZyiU^-;t=h0rHNy}E&zkJ=QJPhCPvuGz!W8L%f*H2%NBc}qgf&lr zBGt$x-S~lkC@^w!g8@QruBa+3wRBf=aBTcVSnwSL1u=C)?7Sp2m`%!%ZK+XzJ@#rA z#e%!9+)mZISgukB(SGzBliB<%`O{k;gbIZqx$3OdV`UbcipBXc-5Kue5)9Rd*^L{M zcbZ#Tt@fObT}&GHZ=1`U?{H;~#z*TaVPdb0x7!h0O;RmBrLA*oelLnfw9^;WEkl}6 zNs9gWfQ(9Isi7)Ka~-#$%?5o6G#7HaQq`A0V?GrI{CE~EOk>Vj3p4$M4x%zTH-xLx zK$e`hfUqk7{oFWHl+vX{^B;K|zgDgiqQ$7*OP*$RvN6reW%1ph@Oh8f!QqO96Vr_A z0_XUW1cXvjqM^ahGDW0t(Na-1#%Ri!{Nzd8BM~9AERu#JldJTkaejCzN?Q|FQ)P`W z?bajfAww(NlW1?lHFN{_NBaV?xpJxQf?sYv1k!|N7PYqi_|KH?yki%w>t}C}VsBoh ze~X#@016s@I8U6^wkq`Yi}-opAF=ARBk#>)&0U&Tb5t&Nc7dqK`&K*6B)5oYiPLSM zC+EJLl9)IxH`$*p18qJb=zA#p)MB)mI^{s}b`W{M?=svMZ|wM^oyzmidAkG=T3$Z_ zf4Te%&jod6e(O4$q-wusEosvJ`J+EDmhW>UT38pa-v&Q> z`hBX*{yS&btmo_5ALg;jnYtTC8`txHtiC~NdgBNy1w_+`3S!x#= zP3<8wkMZ_ceBHL$ML)IYg6jBozm8@zm##w7Wo_Zg@;Bwe(Gm{eTO8Z@uY9}6F!=;v z$OUT8cQlK-zlHYQgB49?O5HKKaYEgvHw4Ifvyv^w*3+AA=|@u?p6L`lMy-sMdh?n` zij1>+UAi`V4G3!fAsk&9G?EOzHbsx^X6LCrrM>yQ{VqrX;6lo$`2%CAw$nrUplGtW zjq0;y!t|CMA@A@=d$4p0G4ZQIkiLFS75LL0pFa~u&mX=b;GQ*?YW_?-4|=Jv^V`Po z4|@;nJhtmw>Vsn^9sprf^8U}~p+(=kVJTSSBQ=P$jhm)oP37!Ho&`mJy<`wDTmk&V zm*}kx)`EmzOjxHGX{EPQek@EN-?r2QvQq;vgWVu+V2qd&6O-?yepcvFKhv}`e>?I& zVIl?jfWP;GiHi9Xq^Ee{3qs5zDZg4%3{V01h|^#(Z2Iu#Wc~C0 zUwD$c>W9C5+r7!POb|%iI(Fgj9W&nf?X-N?lO0X}{U|`qlK>{M^3ha@@0gN*H*T~8 zxb?qJ{R^-2zoYS=6YqaV<9|ov|EqmNcK<47e4WNw`4E{PkxAI(H^wBSF&1ZczDcvf zt&DO+%KW50pM4L%BMhSrx005)STSA29P$~h$l(+D4`KGzVi89yC_6u}`!~);7YP*; zvYJm?yVU2BDrh}T^hNSy^UrF}eBMnXt(_JNc1wnAA}94Q1A9tTt6hYd zLAOd;&dfTFdD{qzL@VG!s>C|X0|N+ zt)sGvFT5b|YwCihFmRF?@<-@@o|8Sh;XPY|}4Co9B{+yz_#= zv8CVG@|tq9!EG@e6~V)s>e~17^4&8a2r$^SuWj3|nIF&T>XgIY?F*M1xO*qG6vO>V z_CevoH?8D7)_2RASJ6w8EJuqhuNF#BY??I?_`)9Ad^&p7uM7&%S42}@!jTt$|R=6NpSqa$@kj%c2Ol^Vt^pa|g zThxk%YE-%2QeRbz8Gl2Mk>Y`Y77(0+ZH5ha_;%_>0nXHPj2Qf6_^221JJ}GuS=Ync z7bLg*t5%YKs5HrH-U7{^v=iI>Q+-6)seO(`W=x(rj9WIp#)yChYa2phE(f<- z3u>|wnM41Y!OB^H2AbH>n)s`Fd0wXf(N`*5nzX_zccDl{H=sK2O#LX5mEAOa>d0_o zOJWJPJ=<`t?2p&eDgc9d z7r0WYHZ6PE7?%@-_Zh{YYK!%H_;32w-HC)18y)*Rj6o|sz1atue5+f1pwdt;72^HN zSU}%Ytc*-eVl@t6?_Gs?duCkECl40JJyGGcB>y<)k}o(8ms8>l9lU2)vs52A)Y<_e zkYy-znU0T+`^&tkE0PsP+fP!5aXl4`2kTdx8zFow#?9Mj(Nr;8s5XOj^~BS z_&|u+yqBJ{m2Da#eWJgO$q0Btjv0UtuzfYI2*=0To+|va(8u9#Gk`TG>+K4#FJvcd z>ePNNEOP}`oTOP0lIe&%Us zk*rv~r512DtA$gg$-~PqGN8|_!RAkD?I_%hep#{~DqV*5iPF$7;}c$~&4am*>3r&s ziwZWgs3AOax2+sbDb)6Ql@OV1YvV?K$pgwRg~e+j>Ob{+`R2A;ITWprAOtv6jAUYH z^$YhUbm(->=W5>)NL4=_9tjUxJbp=tKNK@C=}V7O$tcn!M0e&6UrdM`x!BzvPfJ<# zE<8|e{??L)4{scUTlfX^gz}uGOA0nZ*wJw#jk?qH-v{K1LnURhg0 z%tmMTJatn`|4zH#bessh9_PLCpZL7)NII>A)IXpO)2tVbx6f*D1!lyi!9rmsw#sn6 z(Z_rYNe(29EG#a#G_p>t&nzy`i2aAi9~lRb!^!%ZXr*G=fv5Pu+*@*`++4SE@SKv~ z?PeR74tW0obdZw;9X$wxCkss~N6)`3U}!O8rw!st$c9ZhDB&l5#hEwT28@i=2Wp$I@sryj{`y~cJ>(6wS@xGE+M5v; zt_ylDv`6053hpDyWT?5}It$<#@93+8(&~4snxo8Aou)2Xw8LiKtSP83@XoGPr>s2< zOTM&H)j^1GO&B4pwCLd&?pnBza{5HX;b%T6s;0j3j@ z7qb|fGgdc%VghwomP-lcK}s*W`I=1ki08}h@y_3}MDA&?8hs6NFI`=*=-%--?aKhEx-fLU+QUoIaSO^2V=}W7Nl;xR{7Ip z{r2b&imIfT`ti)JG${p#87rynT;%*v^08Lh()Elt@~RFq$4@7nw*TlJX~mX}-cc0|b_rMNTNV_Acz5>ZhwjK8VH zP#yy1e6l6eUzNA^^I{vgOC!Utysp9VUMk4-|HIy!hb5W)@8grxv@cVZW^R?0j!TZ2 zmK(H6W#yQ=D9nV4xskhqNKI4bN>*xaP?2eFoflcOII)LK44dUz$DAMW6PlPR+F$Jph<6Ns*(M4Wh*v)a z70c34jSxJT+V$0myE;PQiz3~nGvPOW&D@tNcRK-Jo4JgMo^OE&kF<;#5UW>Ea^Mb^ zU#NyKn=6-t#dh>=<;L-lIl(ALS*daC>B^z*w!*Mf!$XhkvSOl(`h9CGJ4+eARwasf zlS)}pnRv1%y0oq-y=-1lc{)OF29{xt8HS@Hg+Zm)w6=y|1B~gQ@iXLzRdkLp`h9=d zHRKo!KZ7Xr|6p$s9>A0ctBOAcs^6#!D^D)w83#-H{#?kb;$Db#)39ois(=%}mWZEz zcJ&KEbwFo$q5Gw$H!o=XuSN6%&j5G88@3qf+BH6yur1Rk{qbBsUX%|EPD4T2enjYH z2pEF(>=E~zy6R9FmqAV~<+_gz6449y=wtr$J_2QLqVWn+f0j8rOhr8+*4&gQhSKJh z?6DF4H>P2N)GJmH@x#vHzDIK{gDAXMeHW+>(=e8109DQ?wTmTMwe(VVYtm;T5jaqo z!+^y*v3?JZ(P@vkQfM2KxIEWkTVVi}bfd4upccm5DDG_fl;Kyq!aJbDpF=U*f^Bw} zD;A|bt}%$2PgS8rCm)UPrfMf?<=DNl#HE->{Yz${H|-~9dd@ollUZALRxWlk@=vxR z6J?3W*%0p+s+>-wdqNPFIH98sP-1AF!RbIXm@&?R?}R+rApTJ23~n^`ItIP4=^19 zO}rrHubsYLuHxFz^17+U)~GKu9Tpl042%9SvHSuGViim$8Kt%Rj={1r;`1_^V$}7h z`?9=7Pf5Gp@1lDr7b8q@iSvHRL23rai~!iARj={U<$S^sRXQ9Cim|q0)@;0xWlXnP z3q`!goZCNEIgiVh`ZDix%B5Cj6|=2_q7@;fuE|D!l+ul?TJ}+yu6FVlrhny_euT(# zl)pAV(e}-({&3U~=jo%MsIB>9Qa-%4l($#prK-Kti;AFN6OUov=Fj! z1Ads_ZDRUgH8pfBk|bj;njlnXoU{Tf9ChJb316~*oM3bT4X8TSLh5Hxg~=Uqu>kd4 zEAbu``eHGx(UW!={U}b~&3y1!R1&dt@o6v0*w;u9_G-0nV!3yOH)MFkK)uvT;?Uz< zxTr(p^alw&{ls%gnn6MS$;=w>@yj#=zoEX@l!0szHbI8MYT@4#DK(;2dL+pIg+be; zS4Z*|TR#;%C3G}9ghyk$g2=Ad=1icyC4PCmd8-*$E64Gf*?tCn5q)&teo}Tc(I|t0 zV6NnT-A3GEtY22$es}if@#mNRI;xX-s-Xp(trqp(=(qHli8S{Bdka#$0F9eBp|JlXvDDV3+fH^WFM~@HSwglnqirc<0UfJqyMoGy#taL44gYu zE|FcM4f-9=(?n$YPr(HfaaeiDgyM-g!cJFq{5eGnnG4a&L>zBASb|=_cs@*ohQI6q zT)u`L@VBK4ErhQrgC7v&{BkvA#u37)aa$F9)9aCN`66QDp0#G} z=?~P(xS(+#&6guamz=76jh-M0*gU^c61VC#|zm|x%l z)tdY6m|Uy>LAd2-JI3jc|0p6_o_i)4KLZX>$VnP8A6;LV%YdOwtzP93{%yQzpkddk z_&T3BfepJqn^B&^S5COw6_ zExkGPFkF@5X5U^MBdDBB3I#i%F=$eEm>xLX@KKF5x0#M2V zQu75&TfuI6xRnA_IzXiMV3oFKC#Y~+)5mFxNeIe=A=K*9FEze)z_lgYwXwGT)n1xp zgc`jlTj8&TC>E-eFf2`v38%8OifdMKM#LmT@pMv@cXGqmt%ZCH$w%e7ifUK)$!g_{ z+Ovjrt1qKT*Y~(5-G;OaHZM^ouLU*O_SoG10KeoZBhzxb3XjYybIF8V{|P|5JazR) z+P*Qw+0%wQk=0eaTk2C9+VGo@_$!Gra?XSr4?fS7VIkKP-8_#c{|4;Pp6n;rp%rqNq`Y(X-^|DC! zFZy_afpOdZ)8TKI-3pU8xvQIP_$C?jU)&%2gw%=f8Y1sFIDhiUISQr3gq?~Lsi&mqJiW7i%T&1W-lwI{drln4Ek1wd$11~T>T+dCRq78L z&z`$uSUdNf5KADY|HmCWFD!veisHyfPdfnSjFE7pFTC)eLr2* z$JUwdFHr?sej{K1D^S@#sBYg0NAp48Kl;C{r%&tqeIic<@A+PYv&80h z(tU1|665~}p?rDl)RuSsT?*mn@7Iine7x=_t0KRjt;kdIu4^Q#-TQvL+}+E2wmN|AfD=JX$@8+mnHPjI()Tq30 zdEU$!;5O2GLvmepJ8*RokCyP-fNtvVpev)3h@Gn_MPy$xkt*rwt*Rk}PA@NFF{3Xg zTw`QQc^ETFb@xZrmO1gSqi-70UfCn4*fBt%UlTl};wk|^rbrt@u)SB-bP8+cTZjX- z?Xa_=GFSqPm@SiVX)~G3Hpeiv#-IrFgrD7~ z)ruWH_{uzOeB2FKuI^|ldNj0OJ9Rtj+7OB7UnLjk*7chXlAE_%yQjCNTB;LFG6!6$ zI?L%4VPJ=yuwA07nVzU!smUrdEq=$R@1`2K+O#s8@=cTo^TW}WGYioPJR}n}8Jx?W zMe@sKk)iH-D2BUG9zx@t0?3=d&7#MSkAt6}i0XDu3&`-%%57qifCPK;Kf z6Wawq59`F{GOmkXuDoCD!LMH6N0sMNz(MX~g)0wf<iE@j> ztJfRXmK%s^D;(l{neAOv@oMWUchg73mzH-a237fm0#$4EK|3pkjYhk zZe-Gvo<}Vdo}EGh>qu)Z%?-rfG0AJkW zVQ2Fb#E`_z{;A4fz+<`-(eEG>K2eks+9Fr$yXahm+0fKI41(w#rGzc)27AL$2tdG1 z{_Zv0a|6}w5!N>uEjKz2*Ytiok;XbRBQ%~&fr9ERvHoSy@;SLTTzAtY#KB6ZyfDqM zdGVfr0dqJhO*x>rgoGpyT)yU|<@NK=ckGgrCNd$ii$X`OUyT`Y>^}bcK3=B=-kBe9 z)3ORuI7hDXm;nbGvXLQnfxwy(Safn|!D@RVe0HR;qYs8YY`Zve2=9&i31wta?ryr@ z^g-vN@%=}lPrz@E8mj2K?dd$WExliD4&i|vPlB|9gTb6~HPD>3z(96P6P*cZA-3w< zP8PdfV1eDSH>@nevx&xLdfo;UEr&Q!zd6BpVMVE%N#g5hK_?e;xSCN5F6V)uknCAiMutRnYR1HLY`G}Z!A!@R0PnIAr;1yTv3|+W zLM?QI#cSH3-y2^s-J~{cNV~9b82Z zzNuzy<_BiP%$Ig1E-YS%F2t*-JJRgx=1T>8rNYs!wiL)v@2U6{%+d`vW~h8qFLNaM+X*;a{n(^VU$YsNx=vg-E7f2F!pU`I>62RzjYXMSd5$4N&AoXB3- z@tUD2eKRdrEwHuu{A*2?X#r^-Qk(IU-;?a*zd9mJka0g1XxW=)$X)ZxU z5C2WQeBab*zNP!}#NJlxD{iF@Vw_p{diHSS{$koZtGbrXv|E`^kzGN%WF?;AJ^e}k!y3|^jZG>QUl5JR) zC}~D1I&B%(m<)elCf|A`zHdL!I-yqiE^}_*)p;^H4EQMMeoLe$jKh3XmV&jzEL>Re ze>|umoITi6ni+TZMt8#7i}%AiaH!R$x`%bqKmx2|#aJudlzFJDwb)5qS%*ONsN!eB z_TWv%ke=LTrfIIsue0pvz(^0>XI~@oi5|9;7vv`7DR++TOYRrR$6ge5cw}yrY(f(* z6?ZF!LFO`(?r*fNNRK8ELzCM5x8Lt4p8WMjtyKw%YJ>N;cn^>cj`pKIg^sX74Es{- z>pIIwF)bZD=qIZ3MlsQSs`2A&V%eM+FaYGY-1KJ%LKLSuDvQnDOa|FPh$DI*1WiND zYn19_92}0JCeCUGQLf7}7bQijBgSdt#tbq%X@xx3XIZRS{0jm&xm-C>{u_+&=}wA^ z#if!t(P`%W0_&}JDM}9K-d*cIU1V(pR3)ZRK)-9SPPknW0nGS!z5Hm%prqBh_oKmn zP0d--UPAjX6VMXaI(%HVl&WmwI-C{T`Oy^-2)K*x|KU#V`cA+^nuM=E2O0#2B;lgu zZtFXTW0p1o5tt>uF!l}TIR0LTQ+QeTo4qY}vWM@YpFCl#UOza3THQM2s#IWLQOL6! zbo<2!`PPv(+|=$yF+d5A0d4&CfS?iId`Z6l(fh?z3Xj$AB!0^2tO&xpQUV#`n)L;B zuUikT<7vM?B@#H^V4>EwvASbL9UBkTzf2a_>xw>~?W5cA~A4tqK(@S$w3!vWypCw|L z0UPvqmbHO6JJC*J(6oi;Nu=>|+62(gvsUJ)(bJfYmr@V%BFv%P`rUP;pLBwl)! zE;57i(1-gTE3$*oF$xSN8wO%hJK-Mj^68LCCUnh_DYIhk@o03Q?t1DGakB$V*?GIv zRxU_&7!Y)Z!_8ymv!vdS^Rf6X+S?`003by#G<25kcUV*0iY z`a{}}y?6WFnu?_cFdx~7C)Zp1Wf<`Mmx_L~gokiLb^_9ThKK*2z+NZcl`G3f0eWRV z?ZrLki3Xboaiw!mcyi5&NgX+~b|`h#M0NWe#-sG4uDL9PLPJ?}j`lN`h1inL;&2K+C6drWHt^`Bk1NT&!^J!Kh6w~e7Wis=-wXxusKRJ>y+ zr$9zAj8APRwDr9)e?NhvP_iSRbXZ9>ynaN^Ydza19L=}1I9FmIxNaECSSoUz(VWBI ztsfA@!o{a2%wD`1zRWmiEH_Io*dA=EIuXe)R1C?kDb9XYY)yzo6>4%sic_WOOTK^X zl{RpFI+P6Igt|D1Th)XqXvA+c6>5XF7?@{8;@%SbnD_KFvuVWuPzY!(XnjF+sY$2m z5Z#YS4>5^tLY5qS^V2%S?{HUR!wuw}qMuLwxUM4y?qZ*Pr%}cKH+^qB9C^&Q{Eww* z%eznzyZ+?<`NaD6z;UI774UHyrZpyyl{XzTp0`UbY+AZ&Vfe2eZteQ{tDV?aHJ0yw zY=PeGtB%}&+8#5(O^SCk)Yj(?^L4ZfHnN+m3K*2|_iNr3R;Qpyvm=Oc z0y;UB7~M8Uj;-%rj|)f&Jwd!o!`YWJbOne2Cu^4Ejeq!$XKHAx5~1H7%dJ|CSf>Ap z=<(92!0;DO)i;&ne>FJH8&5*`C$mp?j}}PIpI7}k^Hjl4?P-efo*fhPmUH5_mPWnU zqjLsP=--07vmn*I!2&_=%3kR$S)_uE(ioN$2!U}GTUg3}MqRCt!$FXY z+qi&Y@vBkZHou|PdC-%^r2FU14C_WI0Fy+~Yd?M!={GKVcg9Z=d!c)b5VgH;`0Pg? z+MXUY0$V1;e4@oW<^o9;$TNnjm2Fwr3=e3f*}$rQL>;tj6L3H|DK)#0*T}!FmtFuU zg^mZ^^Xo7xCOd9J@w*8!L{c$`og%REg-n2LGgihHNZEK%JDe5us#Lms@%duW`la^8 zQ<<*HIlVh)k=ma%7(kTath+h|F#9yzXRqq^b(n0Ovx^?-#XrT^_;4>g?_HhcP=2BX zF#mr0r1F)LPp+@VQWNBghQ+k&iw>B)L48>kLJ!z8q72egv-zY^8x%Cy+WV zBM^vXJjjO8{!*foW}ph@*w8=tbPvBTf4PElaVC$)LcQKu)#ye&u~NPRSpmTaOc7bf zojuS!XkmQA5sTiiqxxbO#5@8?MSVru> zk2o=_);oMIX8Kuw$c_EmcWfU;B^zV5*io`um`V$|LA9~$@}<3xm59dDE>*lit)?JV z?upoVY64bQBAG06nx70Gq-m_2&B!*2a*v1org}ea6NjACGCFjljLsN_G22YsZA@jF;%Y;t0yeDE0d2xVUgE#HZm? z{vC1y@kjt+&6%c@K5Wxc95@0sb7^%k75E3Xpw5>hM_RM3VR}`Z{R$cNkK7Z`*i0f} zySr#};>4*&2#^t;2pPq7XwIUo6yWZP6v&>ms9E^%6lHFgUxQbgCOcDZJ(RIFb-~(j zS)2!d?{n@MQ`B6O(b%3s?dXp<3=Bos{(iy~wIAEwi}NVZN(cRwk6n)xALpZ9+bJ<8 z5B-{%S9c4L-V5`?_0E^VE2_8L>E8H*s0di{_mqE(&e4IxU058tcjYx%t{yPlAhN3Q zKT%iSzY>35`XJQ%R?O^Tb?xvC3%9ol+V3N2F-@@r)S7=nUKdWAv=Fx>HRHTe-lWY9#9$K@YlPZwy!lTCS-@i=U!M*{n$5PWe}-UxhC%E`l{x|lsELdrWVm4B)HJ00?Fks4 zFko3L0|)swVw_g5BzLq9lzDKNR>`(prFfxZ8twecfvc==>XT^gpG z2dh0&W*yFvL~9DD?*%#-H+^rVI0IHOFTZdv9x~!@PsQ@WhW6W&hae&X`9+>cJ`nPU zGjg#@Z``CPF|RNCgYL-@laOpl@`Onn=04xYcv&U7n%U%};S$I-%dOMkgzFJO=Eb$< z#16lf{nHdWv$YQ;7iTaV#Sm93Wuo!H*4G(PuPa~STR8EJ7vZV4@FZ8xh)Qd}&ncZP zlrw{c+zg8zL)*{$&lAoV?|)#GRZx?X(_3FMZdp@gVg?vUCM-oAV!9f=$F909=wS9N z*tLTJj$+qT&Z-sK3RNgyA!jx0S!tD`RD<%e`Du&7yWz}(Z$blWgJT@|gYEkeMj25t zP9biNrddH0vunrQsybWqhRB=R8;mF41RqX!ga|xEGly-=vcm=+Gas25J3Fo!Aga!l z@r;a}Lhz^s5G<^C1!cyV>d4MDPInAOM)edvE^@lo(LgG@;H8zrYhm2Gj5!itE%zgLcnBnZ2c@JZXtnxw9gM@EW| zokj}N^_;1z$RT2d1KAgXjML;4X}VL4{)hsQLWRLp!SDMx_rf%S0@;H&pg+8j$Tg$w zxO0U3=H=YBGuQRjfA5SOk&QYbyf;CdlDIvz3%4S$cf*IKx@5-G%cAiukodc zEj)uF%@CX?uJwgMU`gZgTqoGg`*-FZb!Mog$h4&1o~{cIKt&6j#^$3fK|4D8;S^sB zE%qFoVa(k~Fi+Hsv3*~ceUq=ViKkw?8dUuRVHu`RIU&5R@5krb>I zxWt8ia{smcy_Iq1ZlC)-Y^|w?951>X*zLF@HMSi`&8Wd$rPN#&>W>sGq_#E`(@R9p z+SI%=grPzWssR|u^CV~>QEFC!sHt-keu_^!NUU(;S$j*jkXV((nW1Zw1`}kRg}o(k zrj@g|QQPmPv<6?fy|ctb?$d1@(!PsYvUmY)O)W~zlHLp;Tm|Q#xY>im2w)poTZ@?# z?Cqe*F=*lR8$u1cGo(%;a9d%hrM-&kc8d#sCw`dEiFV_qeiXGPUli{DRZCTbj7p$7 zGPP<808e_?Hv~`gyeZc7F3#?KdNWBisw)9ayoM$r-`Mocc9-8=`sFflp(tj+Bca~^ zT4FHQ&7ouOpFR74qopm@MDhV3`mppyB)h`DD4-AlrHs4?&>_E^*Zya z9%*IqjQGEr^|Y~-jM}!9L=#)W!w=SRUOZ1Pr$p~>jCevs>F=43daf!C;S9bzxyka+ z+f6PAYKy7A6~jwRjG;|%Mt$4U#$k+zQZ+07Ack9qLx%_CMzpv!0v3WaC@1}kL(=%O z=7F9ggkaxd3V6I{wiWC^;kAl#-2+^IEfz(Xbty|+Lf16l9|`=RBD8S<5UVd3376?K~deF3VXYX3B( zz?Rq7;Dnry0t`K-`$ek-)n1m_$c&op6grPpSifcd)!k!aJe`lRZED`o>o?lhmI}R% zG<5SN-U+r~06pg`OPOol3v~vFCgn8;^Md1Hjyo!5wsa>9ILSP!&gV(}qacMqVO9$l z*YQZu>r4VVhtdvx?1D|PC2Iljvj+b}TjJV;#633Hg3_z2)ezbm4yiF0pqm613 zWe{Z(Y{7Mg(qp`b4p<1v9VQ>FJz(c!gnmS6rD20jh_Auq6bZ%!?i+MtczVP)x(&~q z%%Zy@Dss3H3ee~U)W}+g)WF$U`?u{MDu3k76n$P$Ti?tIX;`Nx=MSPcIfP`NSo9x` z73p2>Fq=pxwVyT1Q?4rxHsq#Ki#_3NG;})pF9;VnI>`1kTFA}P(*o*t_LFj*D9WN(qv z8&wt71hiGmh&yy~RDSW=XU&+k_@H;%|GxN3#y;}8!rCX`%80G6IGdHeCjX`wxJC;( z?DNyVa{hOe4|YjgDRRVoiL?>2UNKOf_SM_$F85f}BX@l*koqUNo__RM$Nd?aPv4qp z{TEW-M-2rz%~jMzF#LC3ANQnwjwr>fEHsH>5w`oUwBN69*%ZyS7!l9o@$E<3zp!h+ z)hGP0UgLBEAL#x>rwTrxasqmT7ZatUFtFH*RvgapLDbHh&$KU4#RS0<-CUn zIMxDJ-eH8(Kv^CwN}7VfeBKCjnH?*lS`59AZdJS$sOwBJe?nSY!mnZxWQ@>=lFG14 z&H%j2R+jAy=ecV`xdjz2c&mzP33hF9 zEh8YNAY8~Fk=3qomjFIzq#`*rk!IixuIp_AM0FPebip$Oj{aOk+7E53@XijcQ}G$W zQzI)`YqEngIa%PwORC!*z0O9b!Tct`#vX0m{N6{a#nn;A9$o1`my34?+!{$sZoS5R z6eC-ig|D&U9UrWZ2aN3&<2R#96^!iNHB3h8_CW^!r^5Y?wwC;fwd+@dA~!?og^>90 z!yg;xX)@9p-G+WX!P!OM_Jnbdm<4(2Sq>=^?3Uo@dh=*s}?2ZJ3k-36vG$;mxhuFH=v=IAM5D>xaU(?4B` zs_-gV25)%8LK)S?+DG4vdX;WD`8s;!k=QK_XG40B8l4q)@5W@59((TU29~1hYj^Y$ zu;Vqe$-}m$Pm3on=6Hz0jh5+Sf5Qlw_6|xXk8d~xrJ6VOEV2~hVZ^5$<0DGuDPI}$ z{eRZC1)T6Ps(*(}_`rhRS7!A7jl#@L_WTgbF(UsxT8G^1er+_!sw6wln6V?^#8h*D z72YvRW8k;d$3QW@O&Nu7ckzBwIQYPWHt2R8n`PudmCblPN0}Gq`JLW zS?EMAPH!(r3TZGK6M}J8nuuQ%UB5lN+_UQ2(1bq%PEl?zu@Wo{R(OA2H~(;Lt4;6g zB;^bMs(YVwM(>gN=%3wQY5cyAofyw|MVfYwvw6JM*#2Q=DW04J5F6$7{avGrn9lN2 zo_kW1QkRE^_igUMdxxhsh;M!GjlI}SDPtZa)FNYyyr zBR8NV5gAS!Xoj}fTP!+fESnuowiCYP1g68%VLzLpqG!}N{mFwTB_w88h2cc3fD8z^ zh4#F8w4{e6;6?3eYd_pN-4dMBnYvS#X#`6Mm}=B*9nkeIyBd3nXmwbtss1>a_o8Hw z)C;e255M^86tbv8i1xH#=}6TOoP0WL{Bgi>a8CMoWz>|ub#glYn#hjWmddotn@t%W z93FEN2rqd_y1P|15!;vlkw!UiOF_Q>xU&At)*lUb3=ZzZ$N~f0eHxG?JJ(*IC~1zM z=0U%Zz)iz3mk+AD4K7C{5U#NbgAJazZPhe*^8!lkWBx^XlW@G4F{ev&bV_v&znmOX zce<@68b9Yi4*1OjvZ)Cf6b6=~TtkHjfOTp9>athg9~s9GE$vYgG3JwiG)}dI$~)K^ z$8>!)qYnz!8~O06mr*sYW`D)N8I8^#6xIMH6WV$i%z2_T-Zd~!NS2>6({0^|E{3H|Rwb7%3<2;c+1N<=>v0D!;ngrRP}zJp zMWw)FBHvuoz^Yh$>w~Re1}vVWin2KgrvlziX;`?SL$2lL_?uu^;-y7`xlH|r z5%JHOwT8MrAy1e~o?mz!ihS#bHs`*v>Kh9d*lRLvUadUD_>KjO5)yQK$-`BNO4kVY zNP=a5i!i((gT!tsm$1?X8DTRc@%P630A?rM19OB>kt^QyGSu&mznOS;p9@~#@=9Eb z=Y|n$3h?YsT=^AlDB1tDi!k`YT(4~a&-?D|^_(5j&*8>mtfU4X3=S{2qAwtv6BLB3 z1QbR(3a=Cl*JaFBbXa}reB9r(4VF=2U|S|2!1lC}tQ&#zdAcobnTWFP#rP^6VCZ?8 znqKO3-d?>HIh;uo{aR??Ipo)N1;Yu|n|H(n9Tyd>J}Aq!uVQd`h>qwn7dOb#)#Ev} z0J>y2ES2^?mzQ6jiSV@XvbEI=`{(a_M{9H4_=r!}p_hWkcR$6_l=dthB;Gq6{khgd zKIi?{MDvAQkb0GE%oOLM>GA_1IfvVDDdB*6Y0f-B(?%+QbQRf}dt-g_AYERCJ6W&G z`u<=S#@Ho?I>d&&yP~CB$yjy4OI=?{UEy-LzPNl$aqdBOxr~)O$Ox}ka^zHzc?JVF zh8`KITC{Z{b8QUM%A5iH*ujz-lKdCS%?i*JEZp8N4T zjFGkCIiN4WrNEu8uSF`ikNKF%=*{@!=LV#l0jR zAj}o58dj_n{2PcqXy#>{Er$gGO)kYP+SAuNbvkYM*615C{nyejSOi$W|9Q36m+y`w zCv7meva}h*)dozB{n@bfj@p!qhO{ZXG^q{dT8L){1_^JN%p?WF$jXQU=GlveL6X-> zjxnqUWuXD+n&h&u1wwDc_ML3~jMN;*jJYW>lRLR;vy#>FOPfdQbFWxV<5T_8ce3nn_ME{WvX#H_}_xSd;D;R3#%P&08sD?{v%}v}WH0z%49C8j#X~ z_*C-6G`2Ol6p+Sn&+;mqQ&A!L=YHMC|9a^2BY8d^*{_a^2yb8J zy7;MOQKXmB#_W6P!sIyV1S+-Gf7-=$=5c^e&O!#v?Rff=gu5!|@7s8)^*W6?ndL=y zVd;w+!e!^=vRQ-B*6_wNE3lYGZV|~juVWIVp^^Un7a+3A>ix0Muchnr2R{d^Zbv?2 z9NR#7NZt6^QGz^J^8pVscv{y5mA)_Sqvcx8SBAW%I!UeOx)Sb2UXF!k?^VXuf;i{p z;&Q>X3P#mP%}}Ph5}58JTs~5Lq)p(C zr+QeBKdtigGY~iGbdQ44Td2(|KBzAh&RvGzd!=0KxeANuzK`6;r;hTU`nNX2nH3igO&H4`)O7?7kY^RZn1>GWzQA$Tfr zY}{@e7};x72=XysB5WU{y#)I{xLiRX{A#$u`rCg3F@s+}hlMqg|3>UxXToXH>0 zt-vhZsg10W;}7Qyq$bJe^R@1#s9`SnQWeEyq@wBJ)8R2j(TEM(XgF;*;UA`%T((?w zyQ=j>VuBL+WbLiEt(ReoqgO@6KV`|Epe{ZK^Hz(0^7q#yE=<>YFYbfxNgLQdha=;X z8WW2Q24)2cTI@X_?B>aor8v^5>cFi);ln>nv56TOap_B3_~yL9KC-%4hweE4H2>Hn zdMT<+`Mj~*5S3pk*2rN@>>o27ol&#LtF76M826!On@uOHs(s!a3w+oL<(m^U``7;y zS9yLcT~3U)QJA~{M%axuW{%g$cB^B3RH1;nU+1Tj=H_an6F8LB(oPwSrNQ)L>BRsv zDE-Mb0e3qghZzmJLU1r8jd?NFpSW^;e(GK?5(YU%EQsmTR+3Ct2C)q~vG04z!tP%x zB=Y<5PNb&5#4~ALGTo6wJJm%+ldOdtZSP?o{C=Jp+-cs=!xdC$Noo`IrMH1atP-bM zP+FU)6=Rg3>S=>^l;)!67i)Q+G@_QiQbV)v$U~f?6L}}^Xz_(uWo~g}G-%~qq4m~3 z3_@QRvQ9BO(m-f~aMwO7QL>|rv)@4`udS+LoE$Ul8lHL8h7>xJ=f%ICAoWL8yaL7-Omw zJ(Fi^PH<1XS^DbST;0z-=!y$-gT%78VKaGJGY(Kq-$`4rhZ3WY<@ThpiduDSNVF1y z!h>bHYia#3F{S+J`D4C?C~jPpV7#cfJevJ!nH9kjxABV{+uez1kpQ!P9$yQ3A zs*Go5SvRvnaU3nFfEIRfUTcTE+Ec^UF2YfX8#ZTJW`X@>@w)565yQ4}j|{PuI4!JV zzT*(nnaVLOM$vn+-R6SHGAu{8JW1nR36m0*@6qYV{)0MC>NT5TU!HIZo(-8eBu;rP zmLCuX4JRul%dYtVGo={}mN*hhxzlNss;%%CIXA`fv0y!{M^wR_7 zdov}bkZs!V zC(aM9w98p`fSn6COzVXT7H?U!81r2aSuhrb`Dj{;ep&2oF%E5PLGxMUf?#PXdmKe7 zU+Yt6ldtOcR0czZq|s+FHnR*KN<^@n77W#1i?LAZtve{&tID~@FP_N*NLZ4G*XY2u zlG*lv?01WZYvZPa-@{7~OJa&7s24i+svSml9KP2KWif()|{+EQh7 zxjL&e1tX74b8s+4RxofOXGR+uP{?qF903Kmapr-3u~8t|vGSsf5KflFwPdF79QlRi zE(CW@FfH~Hdykd3p_8jRryPLOjhqau|?vF_&4dfq_^Y`bb z8*?Y&Ptv_Eh-;E#1&w8qL+@D$soW=s;#E6PUD{mLYr3JZJB)+TUubC!$&#=(v@tCwR#Y!V_3$3;9w&C-ig(%@&xn=$Vt zx_Ai0Y(&^vj2iD8&xMs8j#wz2E$o;n(gn1_hT2hT=- zeVlF_(D`YX(>IjzmbHSRoOsc>Ni(Zy{Zd(O`X92-f*~W~5rc|2!aGBa8qtC-IC+_W z^VLm#;D}UDdzBKs1`!$4|BMFXfT*ReNYPOzJ^Tl2Gy3v~mO}Gac3RzrI|%fo#fXg0 zytUU5pHlw?;E9qtz0+KIyAvRmsK`zcIwr&sYx5X>3$V)Ga39iWX=_{?F<6*a$?G<( zhc8_1wv&m!T(cy>Wkn^?QcWwRp+yA{`~);AciUQZ5uf7(k(W_&{#zD?>6cXH(CzBh_44c~LtASv?K zBynF@^fxEV{{r8$=jE@PoccrGt2us-|H6T5%pWuUE_v{~w!G`J>y=8s?}YOgh+WTG z9shl7Eq2KTrX$!UN$0ftaPY^K#WM zL!fL_86$h1m=&e)h217g<7%QMGljsMg{40YQc(cNk&$fGL?aL`=BJbuBBdW4gz8A$JC)_)1#f?GR?mUILS-hFXTv6+iL@F4Ga%IZ2WwCt`Uek6<($D?r z^&~1kXJJ)L)$RPn<8c>lC4G&XHzK8sV2nTK0c8n@qX*MppJifr+G{fQVF4Gq*6}VU zB?ozv*;YH-C58i~%$+1y+~3WPGEZaG?RdrZoo7j1KQ0!4ID8ggTu^$d9O{T`9xhBw zO2Z_#IIdIxvo&oGOg?3rjQ5Sf?ljSNcV*ghyCQvZf*SS%2I@`LLsIH(R+H|p{LrU; z5xJ`m8@^KLfst*gCt&^ami!cw@V9{juTlVr`0;Rfl^I*|K&o4X?Lxgw){S7@Ha~u7 z@&j5>YQ)1TzYUq-7`r-lR5Cn)RcGZnvnYyKe`Eud4wsz$ShOAzNH}Q7E4cd8)ytCm z=PZM1E+l#w;`wJEu(#~7M_CrZ_L(wUkKeX)4RFL4no{3OZ*rZScW$pNloT25!GtXq z#EdGh*Hvg;(<2ge@xR=y&)8h|!TKDe!T0f}A`Jg@_z?BxV$i#>qLwGD*3N3zcX^=; zDX2!}`I%3Qylo3+Z+nyKQ|Z=z$sa5+eUm>&iKEw-Sl-7O?sr-7QRqFYI+7h7x~FU7 zod^ZP^6qCBAadJO!g8b|WgoXEAEZfwPA^B7pIObGZcfNzkJMGqkL-78qe}WfgAd6w zKN?NOE_?JcE6Iy9GHciv3);lr*Htar_c^+Af?bIHQ@WywJ&0=&?Rq83*zDjJI`P36 zw2ck9Q*RS+qTzP(QGDNvzO8@j_$~MuT8sM1onjz^4|4pIG0Yc@_UOuWPn19T1(<~Z zIoE{zy{4Yy5gI26ixCs2Zm@;xy_>8n#kG_p(u?gOo|P>JI^cM&==t3b2AkTG4zAYD z8@OnVWv}N+E;}91!x=ld2+Y?*df|nd)>*Qro}{AjPQ~D7m&+gTneGRy7Q8J-n}_%PR&^2`P$KN0b=^LuN*ch$RR)N*{jlgQVKWa@#Cojz|OW!?r8sL0BG3s z#)V%bCFI9HD)?=3;Ll3=9O1#OA@lpomZFptdSh>E{Ky#nG5qYu`1KHP!l(GR76W;8 z)!k>C6j9OS_N{6LCHzsT4^-HPmnEql?+Xa0(*8D+8sJN&CimV5d$Q9ERC29z@;yc5wma!VKKbE5&AZV# zN>^XPEdbELI?Q!AHR=U6fjh-WRX!ueK5Rp83AlL0@#v$e*|GT)!D-7jqI=}QZvG#Pn!4&Z!-qHEF|5wM zA3ymTvb;52tJ|;K$Y~p#*fMF}w~%G${CSt=yw<~zhOv)ZU|Nh6$-)zKgE>YrYu?EK zonDM)aPW0z&#KMwqNOR1g{ukt_N;BX=)cribnKPDN+?D~Agxtdkc#I`HlEi6plgD9 zF&o>~ty6r!*pfaSeZCVU`?9$|Dc_GIZMbUgjLxt+l))c8dTpj8A!}z@De^%6)mhYE zhNzhnTe%OexGT2}&a>oTYMb+pO%HBE&X4Y*zm-4T(GRiRa;sOD2#(mWNmRh>-CFto zwfCh_O>_kwm1|}8KNR$84D;7gwPfQ6%kS9DU~UdBw&Cb5R%kdC#EpSBvTa? zB#=muFcVvZK!S8lW}oqtj z7I%DMl%RoS%U-0)y3Y#f*CF$yhNkQU&MyIy?Jc+?f${@OJ%44J=Mr}RDKt-P@IBK} z!v8W7F{`~Yc8}K`9(RR3Xh=KGQB!CLHx?vG#`K)0J7RTPX=Q^L-CFZ+nILIx>S84x zZBZb^-C?$?jM^Ur5q?PVc3QTZ?zSKScGRI?w)K%O9VF|VPYhb> zBwbTCK#$J7$r9Ym;+FK%O%Ue0nW>vCruog2>MSsfEci4}e^+bY_?Wg-f?Z~})K&3;U^9a( z&3i0@QF_K=G2cZoUxykpc*E2?OW60>8=?6;VJs}m&7*SZ^qr6*`U8P3_FUs;S)Ry` zaa=Z9*o)-i`G6d5Wb66o-C6TN1#k)PgUvK^ZfY|?>^!3Q(q^NTXzg%}Vz5 zn5RpYysTfa_dac6fp6K95stc_hrEaN8pZv2Fynh ziWwitir>cb?rqZ%iTNL{@rj>c+>fsdj5{Qt+@aT1T~hg@Zt?Dkxtk|gTY zyuV17&Aq-gz@UB4WUtR%wpe}p_NS|x#w*`h)|vEoZ-nd@J_(@Px3a`~+@nRf9^(}k zl?m`ThV zb0{8*u`3)cRYomg}KmqqsJ9YfrBc%FLTC*mjA6>WxrQV|2f;ywhUl>35O*o56e*Kj_l7Njl+u(w zc7eC?D1(qN5mzcId7n$aOmJjU%chs=otF;dYnHS5AGUH%!y{sf?QcAvqF*$gOps}d zbh`|=n*x|lBRW_esc2~Yz*k>VE|*twO%PtuUgd}YK4m$Af*9!dDE#FxLyt8J0^uxIB0ri z5Uli8yc`LxzkxTa@md0pp=;~cZ4zwZylcH_=UkWC=fE@_exYN(djkP27eEIcxNT0| z7oiRP<~-Q&2{wn*p)Zb`F2Zy%o2>?eks;|Yw$Eb!$Tm#nT{Z>e~XG$}=enoQE6r;`bV+3d9TlY)xlwBs}D1lO`A zHumSL?x}Pte5u{!F+35js7+a|dyq8SCf)6C1`S=}$`XV3v&Uj&<156)>p^`EyllwZyO3H3LEHD5z~Bd4U+mCk;=QU z`4Vv-R~;nGy2$o3@vH5qpQE0kT95jA2l+JDc35u-_An?S}V%?3aIqNbER_mU(&^waHhkPKP&k+)pc4pOX>=Vo^Qe-(J z&md_}lPbe)D|g(E#9M2&FNndXou|xJh9Y$+uL9sBnQOOUePcP2|9#4M*TQc@Cz+ zg%=2B&|hz{H7-<^Y*`V~j48!Hh%7+cNh)43hm@EY(4MrUh`?NMPPyibfipbjVdZN> z{(1ovmy%5y4-29ug~1}s4-?AGQXHV^wp0BlOmO-EF8Pm8&pNGWlN(E*-dGxSniunV zRSdeYA>PyMtYHC`Lyat$jmRv*$eJl#v9Z(MT$empLMGi`6_LcePl$_iO&|tR!5Yz_ zxDg;nIy!F8HKQj-;82^hb-*3_pxl-_?K=-|Xzb%;xDdWzzV)+BP9Abjsdbgx4jB*( zI74SB=?Bdgu5WDwQZq8+-0AITj&rYYSXprl&e)J_;9VE7ICEng%$7M4TSY2s%W*F?NZQEjcYK z=1edHL$*HDGce%M+ymhdK?}vD=1uf-oh9O?HD?)5Y-T*YfFJthjI+Wr=Ro*WT>J5n z0ln76TT1~++T5xjGiXdK?(v{CJ$=ioIJ*o%`_?eii}t}$9Z;vvp4B;g#tSMOPGVP3 z>Z~1{%8@=X8?A0Ey*zmeVEvw<&y@LLX9=@{kBauq&~KVIrs@mVTyP}tER;zvG|R80 zdQBDH(WHE73lm)b6QR1a9J#H8qo%lZ(pLSbd!@F?|I|UTC+~< z&-uz6viB+GiG$EnnGIQJY7o+Xn7u#wja>IbR4(!`C$xD5acKCrKGBS$OSom*#0_D+ zs9{38F_M^ANaNCz3%cqBlE;pyp5zcv5Z#wBlclL{t>v)g1QBEfab($Ubz1|%f8-NPEM04*2Z$DXUlmV~?xn9H1FH)S7 z1_wrSYGq4$IwL0K?RAe)&8n_#7fmz{}y2 zttrg7zL?&;pzE(fvbSwBe0JXHM^BU1T5Abi4t)tQl@ym zov8adEKPYfVK^{=?NW~4{aPF?8Kx)mtI%EGA8g~=xn3}#N6=HEz!C5RyKeUx4t?zP z9}nLV&;Iy9{O0Mpx2oXcll?N3g@`uWReDW|wEy0d&y(DB2>`C0R4!`q4NUEPi|<{f zLg^dXn{Gx2B8dfQMBLv@*ErMPu}GYK8Q%m=M-K_t6Z2Jm^m85S{5NWOZ&t6io_3i> z9O@r6bdjFstPT4};k~gzr1EQ#7=OO;pvW_NGfzeB6`}L(O=yydy-Jhjsbl#vX0o0O zpTMAy##mT(!cte<{aW+PB?Da#T$^`s$}$ep3W-Cj^w<=A{*Thw1IYacl<&lh0^=JG ztaG%~8bETz+Csy)57nueV$Yo(d}`Z34t`7_jD$MtVeD8FWY}Gb)8@!>~pm{J@y!n@(t-h z)^Q|6*@BA}Fr8OE)k0b>gl{Kha_*ihc~DWJf8a4FTHx^T9t?D_UqjlPK;6hxrA#J| zH3jpHWAdT;6?E2aW4YE!Y^yzs!}rsvM^MN))1ejX+HkWkJ$-b*W?|f(j{H6k+J&w5 za4PdIOabW67g^KwONMjf~^SL*k$%e(HE3Vct zRPheH(JL53d&_V=`-=6d&XpTQW5N##AtdT*18_4ajHA{HmZM3Dco&h zsX$cP-|&)vNOh6Ey(euU#m`z*V0u3&^jaU6X^?y3pGeBqBh%)3p6R=gvH9d(NOJo| zX0bOVbO=IEet-w>lr>b+kuS4)WzD1;(OrX-DBTNXkjTF|sJ_R_h1?8C-#sxQun+2nTL|Z8el0H5a5Ti6PSg)aQ3bGjN z!d)IDbTvWQMWvoqRILkcPpKxn`Bi%PN`LI@27%BDz{ImSJ*?LrBL|~qd(J%IO*PxS zKH(z9*bX($NvfbjLg8Ws6X|mr_bndzeN%?A3YmAHx}YqzRSDoQ0++f`yOut4Sz45F zTh!nDl-~EGGNihL18P9(!0E2}1?c&84dn!BM$@kc&(WT{?}#`MUfrIlVKnSTW!LBp z`^cOFjLG2y0T{SFk^sluM+b5_Uzxby(ExLyqKb46TL0&r>pVZT+Z&e`7kZKU#N}BD3cVX9`vV{qX3p#JH%tUa2P)!pW z;lo{xp^xE1-qe$tx+o{mlbEo8@Z7Lj^RiI&<@P4)xZ$qkg{+IiKIrNj&>-c(H-my) z6?(cKEY#{UkYsK6K`qiEix=6D)p2^qO0rwYFdj+kV^hZpPWlw@uKoH>zxH?b@Wev6 zdWCl|Cqa2diY{fV-~G_a?W&LcPM9j~@NPXx3vc8qCvrrnmi)>&0xNhlqx-?E(^kA0 zH;fiGTaw*2(g+`tkC3;ljfY5wne}iB4!nbk{WfM{7SM#S&H_+vy4x|g$l&GE_sx}L zwBp($jN8YGySWBIa*+KKAhMJTKD&mkjq3`TbYXX8v+T^g z;Ih?_;{pCyqt@!e2>c8--^A3!s;-=56qM)IT+Zts@@%&3 z2ow?n@b_P;2%IaH`V?QxFPb}dL!Io=W?z{;9zH$3K92wWZ40F)37SlC*ev~Gp=#E7 z(j>Uf4J|tOx+Qq2J7J~e>9jaB7?{0};B$AO2QeM~?qs)@K*eFRC$6zG`$VYb@iAP% zWW}h37@V2wTY#i2*SWzjv9X~bD3^8`;@92BNgncU2{H9FlSF~kZVg*YCd zBFaX%GE5m@Fg&1L?*`#-s_$+b_LKIP=Lgjh$it0jn`o~~)b)w0WuY93Nn@I=y>3Vm z$;fYJHdeyyxKIWu@@yAOKp5o3g|1hD`W2(5f_tNW<%sIVE9F&2j7VuOCA2)H{r3hX zqs)*NG;K>P$IbMM!PMuZ0Ej=XET%%Y;l4aCrQp1KT0M7_#rPT^f0#@bJ?9cwemJr! zC()&w!r?`Yun-07lbsa4Pfh*g6e68xsU#~?#(WgSH@Azv-r4(NaYUPEMKu%ZOr}+? zJ1eXMxcH`&Ftet?CGQ3=Udgwrfx+(qs{tvFFN^isyk{s#i8xvjq7Vi_jB2S zWD$(BtX8mo?eX2`n%e|}gM3?uUu$_D{I<3FV6K@mM4OmsoKdXsD`1Z-C=;zJeMegJ zzu`7Ks0G4xeW>2}vB}|mntERCj3H}z3}-KI|C|@E%lNnvgFNHM`B|ZtpXX+u*^CW$ zPfJ5S1ar5>tdv)Xy(^BLJ*#m1oEq+T!` zSC=C5hurUqG&gFM+&U$BVS;h^0K=w<9;>`Ido=TuS9`}AZy<4A#Up?9ln5Z@v_&VK z3Y+jE4<93WY@b)`F8B0 zyvfW^_1wS_3O!jL{xwKW;Afj!2JPR~Yn@g_MC)+971?O+38tjG%BGsOR^=AWm)W{L zqo<9t`)&bHAI^P(15Z)87Q-?t9Dg)!shADojDWs85AFNBuE(m{O_=o!chSmJD2)qX z0m*p9mu(x)j&LzU?a4t~>HXYaY9wefZ9Gvt)S$bgLKf9H`|%dad+Ec`ftfIk0ZXFM z`lC&X7gqB5cT`EkxRZVG!Kx`pSec=<8j~Z@MlzDa@WJ=)-3*3=RY(liBM+&ABv*^8 z-Mu0%RTBmJmb&wm6z=1v!C|i<0F6yvyV{Ht8e=GKQN>`Ya;yJtHDf3DdCLXTp_9%m z{f4U;df$cEl8GrPgcuW^CPcF+Ue6A$X7*JNTx<3Ua;FOV45`de(-ATMCmd=0;?WXPwM$A96~e|#0Lz!x=&5q4;<=VVa!zz9z8KbPFDT_QGD!v z6d$Ecot?wMm+iMEQZ_amKjY}|cTU1IT+uGnh@9}kY$g)g)d^{;WsN+NQT*f)Moa3- zv2r*Nj7oL{<0`JX`OX}F-g^o({Q59A@h7jMb@-JajAzTnHe@d=tt`@Ac=VX^@pPkd z?YWQ0G4RVU&{H2OW7k5d{bM$DlD}BblsI1Z9@P~c%Pnqa+~g8$`r1zQkUr$DyO>hX z2(A<*eORY%Q=~k4Y(t!`6)8tATL$#@+>L{~O#{*z@Uo|Az=*EN33D|gg@E6Y-N+0h zgxP!(^2hC*%nMTwQDz+Ydi$Z3R(x0if?8S^eO#$ADv!BQMNZL@rrAbg1&U*h5^PwF z1*iWZe`o~UMxQyw9S{elVKQKO|6)0aW z=`$fO#TT#`v|r;~c&RBHoX34L!Eb6NY#cK83gFJ*8Yx=46+H8Ag=iB_$g<{@Ja7T! zqGep$kX7c{NusIl$Ykh)I13pxu9T-49+qEc3UvXmjEgKl1$+s;q=ufe?v#{yGkgJ} zn_VAEx9wAU%T~Y@o3(anlxBdN!#ewp%eUaKjCiJHL|vhVmwiB!@4A-+PCmOK`@PyK z$zn-b{Jc01TRclkJa9-PB`*{A zq78ls8qTe$pZP^gf4C##bYEjt*p%)aY1#usgPTCu#ZGsgtCpSx_s7(~uv=K~GK-$R z{33W59O1Re+$7UB*J|%nbyDKAJ#qCyUP!F~e#nyF*5u2mrCjCtCLvDbe0KseM3;Kt zW%?t{WL74D>k5TvGXs|}y(}?IeAYHp_k(}zB4L(0jqm|-=|y>>LCz*X-kU;x>mH?<`;fFB$U)1quFx<3#>Ag-f;S@wp=dz4ii3_3mHTD#i4@I=vpz9*@QfVLH?qxR~OiA~u;REyl8-tq#(~-XWHB7SXzKa?d zc`aWUdxifO+b0?YL$1D+P{cKR4S~Fo>dGlDi{TVL@ zOwY(kCgk;Ixml#JU~3GPCXDoXpvfbPH@?qA#u8^zcmQ*ZRUY4q$^(-e9IH}5a23FnAM z_dJ=V#3UtfzeI4JQi04%6o?6%xskhtx~7fIYD!5E*=Rk=8SKKWYdGw@6USU zNd2%Sd+fk4=4f!WPYT7s!+Etf%9`Q=nJWyq^uVN)gKtRFs`k3XhfwW>HSyuBWL*xZ zx2_cRO>gXwsikLe|D!g!-4iNDBhRbFvt#~+*^&?z3XG%& zsqYvb@uYs-NJf#gZ}9xxv7R*fHPwI~meu<-dDx6`1+T0Y$}_46ariD*5%ykQoUg25 zexk=lHjExY0cHv(nx|C%&f0(SaSuxupSWd!al7|0(&g@nc=vAk#fQV4#{}dsB0=}q z0Eo+waeoh{{mP|pT+jJNheYV`kv)e9hOyz53|Qvc^>~b;|ICw^p=YBs9|KNNwyz7s zd^6|i-IboQ3(>Q_<}X^^2~nCo<=KaVZC-~4336}M~!$lGQmfR`l*Ok0lKhXw8W#e z+pUj@6AVDBp+SNenU~UczA$OZvs5`w9}6C>6YUT3yCj4#e6+Z^+(t&+nMwM@J*l~O z-A0+PXUIIewy|7humnf@mqYC;O8mB*jl0Ysipxw^s}cimh+ z(s-*oiKh$DYIOhWP9Z65ZGZakxa#`-fzwBYZ+|~%a3znvt5`rh>q*?wP}|L&?e$NP zoj?pLua|$gB~0c6l^t*jB*>w3jVT?$dI~;9w2xBm&(2&q)W0|!@(&GHl zk)spt+2I{K1oI{+$qT#=aso?na>O-6`DHMx*icQ(^gG?i=>`tu&M?k9XusbXnTu^8 z2s^M0jlm{fs+;KRTknD|l<<7d%k0~bTn?+k?)%nA`C?!tWZt?n`aCz1J%AgIJIWZ8 z?gs&vddeQvGxF5sBEa4w@|!-bTvwGJ;}rMuBp+o9&qegIxhJ8q@r(9^^LLRRkjCKd z;pjKlID%q@>vRoXKtvJs*tcVDZvb`Ubt;NJAk^qRZBT8ss{YSf{#J(gaKq}~t~xG=G=n@{i3EtOM@*i88R z_AVok4-^)Thb^Cu?utl=3-LA;eUgXoedl9<({gdo!X?hX&D8a5-xLr#k(5QuGI{f3 z+U{NSNB%oJwTFX|pssUf8dMWALwPEG&N^JV_v1#ECS~B6Hpa6I`My*<)V!W9Ydi?B z2;hX3e0sckjOC;wp2;UZC@$UTpAfAie6dxA#CkFbT)}*M(`Farj-8qzA5<#m zoLC?TtgZTB%(L>+#x&0;?*&+T3@X&>Z z<>A@+x03b*{ZcXOQP-2)cd8(!G?#qDEYsXx?dN2~5YKLHQ;buZQIH%x{$BFF_>uSM z-#WTM1eft|rLn+u7(fiR1~LFyUsWE>(zF~t_9L>b>BW1mGoz?Gul%>yrg$dVm6>me z52kKjw|6$DWOXR>eRS=xT~#34OiD<-`qIT#HH_uVnxEu?!U4WIwnlU{On0NH|v1EL@YDy|bn-?yL2e{EYjChG$-b5-IjmVOb+=Wbz`}ZAl0o z_{1W%Gx)5d|6>WN^}%q`%4O`as@o}>JI?N{rWX8m%TmqYEt76!98s^Pwrk_}fAO4u zdqXgL9dVdBkts>u{xOifG*yPu9opR<`lv38-lLa{A*w-;P?@t7+-?QuAP4Nte@;KcyPLhzFz1jX=DWdj-E&Ek}*6=4 zz;#|LbxNLeeZ`(w3-m4#-@$Kq|JiPfQ6ULdd&M?!rRzS@PgZK5h|aHYJJyEptHzEc z{r0Qo1AlGL@*fhfQ0h&?}MlboyeKN=Q7t! zo4;aBCVh6d|EE!T39!xI9&=PU zei`}aAGd!BwmX;9Fm^5X{n2YlN&2Xjhniz6#MkVdhU@y=r0n9fKcI*Zc>Cg1Wa876F6Kl34a@C~ zU46>G>~}}(%f5e|w(GO@MCBKNsqw}z%&<&x+aku|<1x8kV(S;F?QwcmVbQ6lsI3tP z5NGn`=c=tXK<%9BW(Ln);#S_#`&8(VVJi$3zg{Ij`-vF7s?8kEK^DcgEPW`m+_N~haQ-ik&Yw)prB zn>o$5v*42*vmbw}cl+5g0Hp$IR!gn^%BB?lka_ouMBSl4@drn%Ulx-#b8zH+V-J$! zPrdylNccJPKbjNE(Ffjp$I5@z*za$5{fBpZc904QKC27;&D%S%_d3xalKh-~=tWlK zpndwnCpE#lY9M?yMTM>G{+oW_`nJzDG0e~ZsM!DaM_xco2s}+$```VK{v9m#+5qK! zzTWkNi~isE{{Qb!Ssni7*USrlmnwJxl9lVjJpeWPfBEJ7NB!__8_)>tZ8~{>*AEas z=^LuEyUhOnzR!UFYqQPP@bAh3pHDS|y!6tbe}CWSz%;$SE#C9*q6pFjU~UneHE92L z>$Yv*wHIi_whvW*FS``@Nz>_*VT}8Gg{N{s9yJfQkREivK?_adQil8Jc+na?d(y Q8}K`S_L39nr=NfOAC~aK`~Uy| literal 0 HcmV?d00001