From 5afc9b6d118647b62e490e0cee728348d5373d81 Mon Sep 17 00:00:00 2001 From: Krist Wongsuphasawat Date: Tue, 5 Feb 2019 13:45:56 -0800 Subject: [PATCH] Add WordCloud plugin (#50) * scaffold * resolve dependency issues * use d3 v4 * - Update peer dependencies - Getting src to build * Type word cloud * Add tests for transformProps * Update and simplify d3-cloud typing as the fix we've been waiting was merged. * resolve all tests * update unit tests * fix unit test * update readme --- README.md | 4 +- .../src/models/ChartPlugin.ts | 14 +-- .../src/models/ChartProps.ts | 1 + .../test/components/SuperChart.test.tsx | 8 +- .../createLoadableRenderer.test.tsx | 4 +- .../test/components/reactify.test.tsx | 2 +- .../test/models/ChartPlugin.test.ts | 4 +- .../README.md | 34 ++++++++ .../package.json | 53 ++++++++++++ .../src/FormData.ts | 12 +++ .../src/ReactWordCloud.ts | 4 + .../src/WordCloud.ts | 81 ++++++++++++++++++ .../src/buildQuery.ts | 12 +++ .../src/images/thumbnail.png | Bin 0 -> 24048 bytes .../src/images/thumbnailLarge.png | Bin 0 -> 117846 bytes .../src/index.ts | 24 ++++++ .../src/transformProps.ts | 26 ++++++ .../test/buildQuery.test.ts | 16 ++++ .../test/index.test.ts | 5 ++ .../test/transformProps.test.ts | 34 ++++++++ .../types/external.d.ts | 1 + 21 files changed, 321 insertions(+), 18 deletions(-) create mode 100644 packages/superset-ui-plugin-chart-word-cloud/README.md create mode 100644 packages/superset-ui-plugin-chart-word-cloud/package.json create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/FormData.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/ReactWordCloud.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/WordCloud.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/buildQuery.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/images/thumbnail.png create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/images/thumbnailLarge.png create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/index.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/src/transformProps.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/test/buildQuery.test.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/test/index.test.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/test/transformProps.test.ts create mode 100644 packages/superset-ui-plugin-chart-word-cloud/types/external.d.ts diff --git a/README.md b/README.md index dfdaf11fe0..5e6b049bc0 100644 --- a/README.md +++ b/README.md @@ -21,12 +21,12 @@ applications that leverage a Superset backend :chart_with_upwards_trend: | [@superset-ui/number-format](https://github.com/apache-superset/superset-ui/tree/master/packages/superset-ui-number-format) | [![Version](https://img.shields.io/npm/v/@superset-ui/number-format.svg?style=flat-square)](https://img.shields.io/npm/v/@superset-ui/number-format.svg?style=flat-square) | | [@superset-ui/time-format](https://github.com/apache-superset/superset-ui/tree/master/packages/superset-ui-time-format) | [![Version](https://img.shields.io/npm/v/@superset-ui/time-format.svg?style=flat-square)](https://img.shields.io/npm/v/@superset-ui/time-format.svg?style=flat-square) | | [@superset-ui/translation](https://github.com/apache-superset/superset-ui/tree/master/packages/superset-ui-translation) | [![Version](https://img.shields.io/npm/v/@superset-ui/translation.svg?style=flat-square)](https://img.shields.io/npm/v/@superset-ui/translation.svg?style=flat-square) | +| [@superset-ui/plugin-chart-word-cloud](https://github.com/apache-superset/superset-ui/tree/master/packages/superset-ui-plugin-chart-word-cloud) | [![Version](https://img.shields.io/npm/v/@superset-ui/plugin-chart-word-cloud.svg?style=flat-square)](https://img.shields.io/npm/v/@superset-ui/plugin-chart-word-cloud.svg?style=flat-square) | #### Coming :soon: - Data providers -- Embeddable charts -- Chart collections +- Chart plugins ### Development diff --git a/packages/superset-ui-chart/src/models/ChartPlugin.ts b/packages/superset-ui-chart/src/models/ChartPlugin.ts index 4f55a8477a..6b08f5f2cc 100644 --- a/packages/superset-ui-chart/src/models/ChartPlugin.ts +++ b/packages/superset-ui-chart/src/models/ChartPlugin.ts @@ -13,7 +13,7 @@ const IDENTITY = (x: any) => x; type PromiseOrValue = Promise | T; type PromiseOrValueLoader = () => PromiseOrValue | PromiseOrValue<{ default: T }>; -export type BuildQueryFunction = (formData: FormData) => QueryContext; +export type BuildQueryFunction = (formData: T) => QueryContext; export type TransformPropsFunction = ( chartProps: ChartProps, @@ -21,12 +21,12 @@ export type TransformPropsFunction = ( [key: string]: any; }; -export interface ChartPluginConfig { +export interface ChartPluginConfig { metadata: ChartMetadata; // use buildQuery for immediate value - buildQuery?: BuildQueryFunction; + buildQuery?: BuildQueryFunction; // use loadBuildQuery for dynamic import (lazy-loading) - loadBuildQuery?: PromiseOrValueLoader; + loadBuildQuery?: PromiseOrValueLoader>; // use transformProps for immediate value transformProps?: TransformPropsFunction; // use loadTransformProps for dynamic import (lazy-loading) @@ -37,13 +37,13 @@ export interface ChartPluginConfig { loadChart?: PromiseOrValueLoader; } -export default class ChartPlugin extends Plugin { +export default class ChartPlugin extends Plugin { metadata: ChartMetadata; - loadBuildQuery?: PromiseOrValueLoader; + loadBuildQuery?: PromiseOrValueLoader>; loadTransformProps: PromiseOrValueLoader; loadChart: PromiseOrValueLoader; - constructor(config: ChartPluginConfig) { + constructor(config: ChartPluginConfig) { super(); const { metadata, diff --git a/packages/superset-ui-chart/src/models/ChartProps.ts b/packages/superset-ui-chart/src/models/ChartProps.ts index 331f8feed5..448768dbdd 100644 --- a/packages/superset-ui-chart/src/models/ChartProps.ts +++ b/packages/superset-ui-chart/src/models/ChartProps.ts @@ -5,6 +5,7 @@ interface PlainObject { [key: string]: any; } +// TODO: more specific typing for these fields of ChartProps type AnnotationData = PlainObject; type CamelCaseDatasource = PlainObject; type SnakeCaseDatasource = PlainObject; diff --git a/packages/superset-ui-chart/test/components/SuperChart.test.tsx b/packages/superset-ui-chart/test/components/SuperChart.test.tsx index 9217491709..9c7f9f1270 100644 --- a/packages/superset-ui-chart/test/components/SuperChart.test.tsx +++ b/packages/superset-ui-chart/test/components/SuperChart.test.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { mount, shallow } from 'enzyme'; -import { ChartProps, ChartMetadata, ChartPlugin, SuperChart } from '../../src'; +import { ChartProps, ChartMetadata, ChartPlugin, FormData, SuperChart } from '../../src'; describe('SuperChart', () => { const TestComponent = (props: any) => ( @@ -8,7 +8,7 @@ describe('SuperChart', () => { ); const chartProps = new ChartProps(); - class MyChartPlugin extends ChartPlugin { + class MyChartPlugin extends ChartPlugin { constructor() { super({ metadata: new ChartMetadata({ @@ -21,7 +21,7 @@ describe('SuperChart', () => { } } - class SecondChartPlugin extends ChartPlugin { + class SecondChartPlugin extends ChartPlugin { constructor() { super({ metadata: new ChartMetadata({ @@ -34,7 +34,7 @@ describe('SuperChart', () => { } } - class SlowChartPlugin extends ChartPlugin { + class SlowChartPlugin extends ChartPlugin { constructor() { super({ metadata: new ChartMetadata({ diff --git a/packages/superset-ui-chart/test/components/createLoadableRenderer.test.tsx b/packages/superset-ui-chart/test/components/createLoadableRenderer.test.tsx index da0f6691a8..a6b8efbed1 100644 --- a/packages/superset-ui-chart/test/components/createLoadableRenderer.test.tsx +++ b/packages/superset-ui-chart/test/components/createLoadableRenderer.test.tsx @@ -9,8 +9,8 @@ describe('createLoadableRenderer', () => { return
test
; } let loadChartSuccess = jest.fn(() => Promise.resolve(TestComponent)); - let render = () => null; - let loading = () => null; + let render: (loaded: { [key: string]: any }) => JSX.Element; + let loading: () => JSX.Element; let LoadableRenderer: LoadableRendererType<{}, {}>; beforeEach(() => { diff --git a/packages/superset-ui-chart/test/components/reactify.test.tsx b/packages/superset-ui-chart/test/components/reactify.test.tsx index dedfb2e503..629779f7b8 100644 --- a/packages/superset-ui-chart/test/components/reactify.test.tsx +++ b/packages/superset-ui-chart/test/components/reactify.test.tsx @@ -8,7 +8,7 @@ describe('reactify(renderFn)', () => { const container = element; container.innerHTML = ''; const child = document.createElement('b'); - child.innerHTML = props.content; + child.innerHTML = props.content || ''; container.appendChild(child); }); diff --git a/packages/superset-ui-chart/test/models/ChartPlugin.test.ts b/packages/superset-ui-chart/test/models/ChartPlugin.test.ts index 2c475aaa37..7c49024796 100644 --- a/packages/superset-ui-chart/test/models/ChartPlugin.test.ts +++ b/packages/superset-ui-chart/test/models/ChartPlugin.test.ts @@ -53,7 +53,7 @@ describe('ChartPlugin', () => { loadBuildQuery: () => buildQuery, }); if (typeof plugin.loadBuildQuery === 'function') { - const fn = plugin.loadBuildQuery() as BuildQueryFunction; + const fn = plugin.loadBuildQuery() as BuildQueryFunction; expect(fn(FORM_DATA).queries[0]).toEqual({ granularity: 'day' }); } }); @@ -65,7 +65,7 @@ describe('ChartPlugin', () => { buildQuery, }); if (typeof plugin.loadBuildQuery === 'function') { - const fn = plugin.loadBuildQuery() as BuildQueryFunction; + const fn = plugin.loadBuildQuery() as BuildQueryFunction; expect(fn(FORM_DATA).queries[0]).toEqual({ granularity: 'day' }); } }); diff --git a/packages/superset-ui-plugin-chart-word-cloud/README.md b/packages/superset-ui-plugin-chart-word-cloud/README.md new file mode 100644 index 0000000000..8abadb2f0d --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/README.md @@ -0,0 +1,34 @@ +## @superset-ui/plugin-chart-word-cloud + +[![Version](https://img.shields.io/npm/v/@superset-ui/plugin-chart-word-cloud.svg?style=flat-square)](https://img.shields.io/npm/v/@superset-ui/plugin-chart-word-cloud.svg?style=flat-square) +[![David (path)](https://img.shields.io/david/apache-superset/superset-ui.svg?path=packages%2Fsuperset-ui-plugin-chart-word-cloud&style=flat-square)](https://david-dm.org/apache-superset/superset-ui?path=packages/superset-ui-plugin-chart-word-cloud) + +This plugin provides Word Cloud for Superset. + +### Usage + +Configure `key`, which can be any `string`, and register the plugin. This `key` will be used to lookup this chart throughout the app. + +```js +import WordCloudChartPlugin from '@superset-ui/legacy-plugin-chart-word-cloud'; + +new WordCloudChartPlugin() + .configure({ key: 'word-cloud' }) + .register(); +``` + +Then use it via `SuperChart`. See [storybook](https://apache-superset.github.io/superset-ui-legacy/?selectedKind=plugin-chart-word-cloud) for more details. + +```js + +``` \ No newline at end of file diff --git a/packages/superset-ui-plugin-chart-word-cloud/package.json b/packages/superset-ui-plugin-chart-word-cloud/package.json new file mode 100644 index 0000000000..ee8609baf4 --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/package.json @@ -0,0 +1,53 @@ +{ + "name": "@superset-ui/plugin-chart-word-cloud", + "version": "0.0.0", + "description": "Superset UI plugin-chart-word-cloud", + "sideEffects": false, + "main": "lib/index.js", + "module": "esm/index.js", + "files": [ + "esm", + "lib" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/apache-superset/superset-ui.git" + }, + "keywords": [ + "superset" + ], + "author": "Superset", + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/apache-superset/superset-ui/issues" + }, + "homepage": "https://github.com/apache-superset/superset-ui#readme", + "publishConfig": { + "access": "public" + }, + "dependencies": { + "@types/d3-array": "^1.2.4", + "@types/d3-cloud": "^1.2.1", + "@types/d3-scale": "^2.0.2", + "@types/d3-selection": "^1.3.4", + "d3-array": "^2.0.2", + "d3-cloud": "^1.2.5", + "d3-scale": "^2.1.2", + "d3-selection": "^1.3.2", + "prop-types": "^15.6.2" + }, + "devDependencies": { + "@superset-ui/chart": "^0.9.x", + "@superset-ui/color": "^0.9.x", + "@superset-ui/number-format": "^0.9.x", + "@superset-ui/time-format": "^0.9.x", + "@superset-ui/translation": "^0.9.x" + }, + "peerDependencies": { + "@superset-ui/chart": "^0.9.x", + "@superset-ui/color": "^0.9.x", + "@superset-ui/number-format": "^0.9.x", + "@superset-ui/time-format": "^0.9.x", + "@superset-ui/translation": "^0.9.x" + } +} diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/FormData.ts b/packages/superset-ui-plugin-chart-word-cloud/src/FormData.ts new file mode 100644 index 0000000000..78496d9fec --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/src/FormData.ts @@ -0,0 +1,12 @@ +import { FormData as GenericFormData } from '@superset-ui/chart'; + +// FormData specific to the wordcloud viz +interface WordCloudFormData { + series: string; +} + +// FormData for wordcloud contains both common properties of all form data +// and properties specific to wordcloud vizzes +type FormData = GenericFormData & WordCloudFormData; + +export default FormData; diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/ReactWordCloud.ts b/packages/superset-ui-plugin-chart-word-cloud/src/ReactWordCloud.ts new file mode 100644 index 0000000000..7b77fbf2a4 --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/src/ReactWordCloud.ts @@ -0,0 +1,4 @@ +import { reactify } from '@superset-ui/chart'; +import Component, { Props } from './WordCloud'; + +export default reactify(Component); diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/WordCloud.ts b/packages/superset-ui-plugin-chart-word-cloud/src/WordCloud.ts new file mode 100644 index 0000000000..049ae5e78b --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/src/WordCloud.ts @@ -0,0 +1,81 @@ +import { extent as d3Extent } from 'd3-array'; +import { scaleLinear } from 'd3-scale'; +import { select as d3Select } from 'd3-selection'; +import cloudLayout from 'd3-cloud'; +import { CategoricalColorNamespace } from '@superset-ui/color'; + +const ROTATION = { + flat: () => 0, + /* eslint-disable-next-line no-magic-numbers */ + random: () => Math.floor(Math.random() * 6 - 3) * 30, + /* eslint-disable-next-line no-magic-numbers */ + square: () => Math.floor(Math.random() * 2) * 90, +}; + +interface Datum { + size: number; + text: string; +} + +export interface Props { + colorScheme: string; + data: Datum[]; + height: number; + rotation: 'flat' | 'random' | 'square'; + sizeRange: number[]; + width: number; +} + +function WordCloud(element: Element, props: Props) { + const { data, width, height, rotation, sizeRange, colorScheme } = props; + + const chart = d3Select(element); + const size: [number, number] = [width, height]; + const rotationFn = ROTATION[rotation] || ROTATION.flat; + + const scale = scaleLinear() + .range(sizeRange) + .domain(d3Extent(data, d => d.size) as [number, number]); + + const layout = cloudLayout() + .size(size) + .words(data) + /* eslint-disable-next-line no-magic-numbers */ + .padding(5) + .rotate(rotationFn) + .font('Helvetica') + .fontWeight('bold') + .fontSize(d => scale(d.size)); + + const colorFn = CategoricalColorNamespace.getScale(colorScheme); + + function draw(words: d3.layout.cloud.Word[]) { + chart.selectAll('*').remove(); + + const [w, h] = layout.size(); + + chart + .append('svg') + .attr('width', w) + .attr('height', h) + .append('g') + .attr('transform', `translate(${w / 2},${h / 2})`) + .selectAll('text') + .data(words) + .enter() + .append('text') + .style('font-size', d => `${d.size}px`) + .style('font-weight', 'bold') + .style('font-family', 'Helvetica') + .style('fill', d => colorFn(d.text)) + .attr('text-anchor', 'middle') + .attr('transform', d => `translate(${d.x}, ${d.y}) rotate(${d.rotate})`) + .text(d => d.text!); + } + + layout.on('end', draw).start(); +} + +WordCloud.displayName = 'WordCloud'; + +export default WordCloud; diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/buildQuery.ts b/packages/superset-ui-plugin-chart-word-cloud/src/buildQuery.ts new file mode 100644 index 0000000000..3c75e4bc51 --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/src/buildQuery.ts @@ -0,0 +1,12 @@ +import { buildQueryContext } from '@superset-ui/chart'; +import FormData from './FormData'; + +export default function buildQuery(formData: FormData) { + // Set the single QueryObject's groupby field with series in formData + return buildQueryContext(formData, baseQueryObject => [ + { + ...baseQueryObject, + groupby: [formData.series], + }, + ]); +} diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/images/thumbnail.png b/packages/superset-ui-plugin-chart-word-cloud/src/images/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..1829a2f56088ab093850e14a14a4b97d0ccf0f9a GIT binary patch literal 24048 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®{^aBGs~pGQ}6jA}=4`<_=oGm>j#Z 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 z z69ru!ggNbKSUoO(d}e^^)gK$A5TvxQc2qn3wDhc=h=5*XX>xLSLTp8bO#agzAD4j# zY-fd)JC?3okV@oHe|x=WWK`wb7ng^^6Apr4d;Rk?Q>fOEHCXxKo;!8ROzf{Sf)zyu zk>Y7qLv^stirJDdBL!cR+!c0MGsU%9>`b<&awhJ%-qVYy{QBJQ@_C0huxKXDDZJy8 z7-otNy>nXOnwI~le2x$4-pZxa&=e3A5yS{;vx}+}%B9`s=f0CRI$p1h&TR{@MoXFz z?_FQ8)p^p$_ww|KH!{HyZ$4`JwFrlC-upVOo;Eqb#c06;nJDBBJm*UvU02yl#yQvZ z8OmPVjmKC#a_dih|8(c;=wn;`LqBt5WX&_)WE8#OKM4MEWQRkS%HH&-PekMuTrv<4 zcEtbX?jTORzf#p3QJ z^?kL3Utzuhz7cl9Q%wt$fdiw_CVFYRrYu(r~Mro*dH(=VMLOs}5q?_YP|GQ6OX4 z$1WP(9A6S85k-AdWtRJ3VJeW5k)hq9;=m^;t)~(o8dwmY;N#LclkB{wr?zdHohKA7 zr6qO)HD0znF+Dvwsre}8Tz{lOL#O$ToZ4%Oaq;XKmFMe9@M9ytE2YnFR888iFS~PBFrX6jAxA<(-6ldfGRy?7~%-XxH?Y8(*w`_ZpQk!d2Xqbp^^g9^08Hnwc;d z+w5d2{*~!~+ZC&Fw-21$vPc{ug}%`r<7>Pv5O?N|V|aqZwK}~02gIEL($k)BZYfED z!H&y_jS|vDZA;r!lz|oOEos6DN}Wd&C{*y!t};H1?sw*u zH1M~!vNSp{YpOfozFx>eUsZ5G?L}Xg4@=uR0(5;Ho}T9Vi<{GQJze)N4|e3uRbqep z?PwZmO`iaz(T9MfrO{wxhm!ln*`T(iZOOG^3FRR4;whFC!-+an`_*;yK4CDh(aPGI zAIRO8JjHc3IkxWW+HTL@^|dRazK0Hx1C<<FzMbo_VYIWQ{_MVnuzf-*LK@sCgvZ#U%QQpSai<=1`FK8WyWBVp^zXdgOSsXP zLAATFlUBkfE?7ND*s@zHTsmz=0gj11xlFn3;q9}m;vN#JPDy#-Xs0NUANn#2=x`)I z;~^iy;B0UQ+kJ5VQONJ7x336GJ#i@@*+;umjW1XBrAS+3<(!Y8#P~YvoeT+kQ7}mm z=Hi5090vUyIJ(he@WNvDyhIW1bK~JU$EjC}GkD(vyfE21mD%X-=2>Ap{c_Ut zob#xn)=3M)=U0T*{7tc4I)j%a@XIO-81tJsrO#N?&(!HTn2o!5C2n-nxd{D}vtJ7W zB~_2}-NHgjLuKtj{vJL9lR(awv~?0p%{HjsZfg%}^rJ&BRZd`A6Vdp+qTwKf^JC#ImbbL0Ps!&%31X*<^!(Ne(b9YAdl! zImDm#`8KM~#TP2AZ#5nF6TTQ)n`3q1b9UrMgPg+ZyTyVzQ!ZBTYOlLyOqwIyRw5qt ziFc(Oc>H0LU-vXz7N0JLAx11^jhy;0b{I5PIx~bvT&f`qq!bltXe^VOEc0J(s#3Uo zCbC`-Y+kA?&|uu&{r)B}a3JsT_(0FaSe)VFK+zzOOV;|*U@jy8`>@+^GW*^I9V%5&=s6b5!MWLRsN|u(Ud-l#2cct_v|;1D9sZD0R<;Ys zu}qz7d28&*Ik@iXvW!@AOBjeUYveuvdYF(&gy6 ziQxqg7Nl@~SlsN+(xbw5H0MoIWw0{y+0;Q=BJdFPfjje9+ggRZ+g;FleD-pC;$V@r zIjXAa!Ge__uFZy-Y1 z(n87cQo2ttGkXN(Yf%vo1gm-8&`NNz?|_tl(wD@g*PZ%{n` zERd-gy*g#sxs2Y+xUP{%ioq>~%oIy1?|pgZw>NUvef4eR%+|QxxyM_@l89gU=uHwQ z12;={!R)?}QlFSubI9Z@4F|YXhrb^eIH+CU>qmcQYi9<}BN@ecl3diVkJSmUmAESS zNPd@H+*4rigtznJYG=`%s=38I`?KK*7uWF5Hto{NpM_XwTSmM=OZ;4uMCij(UMwE9 z%!7vw;g+3t4Zb6^g`JCjB%)W^BnYG+ZtqK)`riopjFwl%DH#;MH^qoXPbY6BhoBjx zd1YUut^3Hzx@dGXoKsP?4&g}ZJ5>;PmDvj~@dA5DN|4+)Q31{}^W>xjED7HuIzt@Y z5df#Ijl}8l8@HK8!{pj3DpVaGz@ent!f;PT70wI;UNzhmWy-ni(}54J{Q)`2jc28n zwb=V>*EdM+3U`k~@1K4WE585H$1&VE3_U2YAFy5K40Wx8_Oh8kPMCFjMl4(PygkvB z3KSOg8frciJnsJ1;iA|B7ukT2z~CfTL4C26`|_VhRoY+Z;SC>5FzVeR=Kv&`VIR$s zS$7xgTK^)Me3X^aXy!P%FU?r7i6QS zV&n?hDZr3i!Pp=@X{%y6@?NLT%%(Hhu{DTi*0XLlx12d>sTd(b^)si%o98MYZIRru zQse^DNCNwFQJWZ*bI39qzO+V%_wB7C_&uxF%41pv(aePY>GGQAsZ{ZyC; zt^Z4iKe7`rf^Fsbau!x-t-Pmq$ZKU+S3Yk}c=4EtG;xP%D>F4rrq=OQ%ctKu%}G9( z)w-++%*6-j5{2KS=LIJB>gKn(U|=c2@bP7IjRyv)1>4T_Zp;`6S1tSl(^5fPuT=8# z61Ec7k09y0@K7Xtz6!`#CaYN`c=QPZSw!7 zw92i7Hv6b@RkAg$;lM&~7yJs|7GC5`+<9-PEx^WHptAhRGbolQ+MsX0yoB(nN@u9y zsZ!-u8r|A*8Z~ecfv~Ic9m5)WXQ!Venf3R^rw~uvGo~IrQO?o%2HmOkCVa2j|%UCc*uJ`2hM*EjYe0t+*~Ay z)1+rKBnyW#w}-R#SQmj|*DEH70eG#}Z*4qJ=|ldd;oQ<|TgkoO z8i^#Y!{AUL6zTkkV|ixgL@2Z`uT~!e1A)!n9k6U}B1H}A`YQ&OLq7Yr)Z1O5fM}4FyZ4z(+MXnlh*lz7d~8(QIpsaf zo%{kkY02TjIBUN#VBG1a3*x7u1xBo#Go(akDJX!dNg~vBbaZLSAro>RNIq2^1}{hw zZEb4}_H?WTZ{(0C@OnZol3=y{hAKG1Lya_t2ZwO73+KKry_{K_)kTz69` zQ7HTLv456YDH&n=O_WErYEc`26hZdS!#u?fd39xG(gnv~3r(^@aH!|fUgKUxq9&{U zRAur*urhBNwq_@gaVG8SPV{k5f5>Bo`1DbNm)*nn7+AeP;O?$}yU2bEyg57TNKykY z#PUJx=(LLLW^>-M>5G_u$qMR)BNEj@`ch}1oJp^|hE59E>ksBMCt~I;UM^&kfzsZ& zZ7mgDYX&s{NAj9#Ho|;l96kjZ@ zkAA(w^k34R5ppV^OdHHaNxcHVpj#7jek0pdGxwx2gJaJiGS8}sdYxzb1%zD@&dugT^`jWpf1R1(CYBmg|>6n*VsvbRPRLCGFls^JJJhR;I4@V0QLeOl{w}M1J-3oyF( z-pL78HYsJ3bt+Mw(-H&QuC?|&vJXr~`S1h}^iF^RJ=byf-O;6{O;JV*p}g>{0y~$g zBXT{mT+YY#ar2(56BB3E70O-1y>1)&{yNSpa4+65P)#HW_olgEv%t@+@r4P2c)i1hrcNItkITf0 zy5}^F(9KMUNj4ly_R6aK^n_?MX{#zp)PNyTCpWyeU1F4)xI%~VfwL1Cd3P%+`g8Z? z(Y6y>=e&%Tg(ZvTV)4A8-7-Vz<~P&$Q2QS2{W|_;sl~53`EYFQ$!;rEtHXwAl)Hez#g@>^VK}JWGYD z)XYhq*|7sD=Cz`t3i+q8bOe*Kp~F%x@d##b>4AO>H{Wr{ z9}Ytv@zdA&x6?$Y`LD40V?a~0ojxk)O<{?TOdHDkf$uU-nrCg*25*yFfic|j#HL@q zvKfnKZP$=vSl=a8%F)0^3LSmFvq@i)MrvScPO{f^Fdqx$n4GYg zBwR(K)6PK3 zklx;i-$WJ6TQAl>bL9JqxwDVoC>U(A8#kl(tQaD$%moDza0L?=tZ}lDiTA$oPq~|P zI!}LkqZW7W%vpgZ!lcZ?_OR^Ui=audyrwfUItCm2!Sb6NE6eYpDEc=G7M4;jEvSWX zDOsDp2K8u4AicP=?YGq_!%+IkYbj>sbH>M8ze!#Ntr9?QATwHdBaLH%2AmF&_ORJc zII=ttIyv)UXFMIpAgP=vGx23jCZ%Ap&@(FNP}gw)m0K+jAec97U_3v25bdiGG|Yda zZgbpXr=|35&}k8$I0W^%BKvVRIys0P9*84ka+Hu@KfCme^~baCK)p0I^~{v@9mQio z=x$8x#sE1fH};C{O`A$oCx^^T9qqW&_jg3%uQZxYPq{%x zxmk4Kd8($|&r#ORmO(0)gzOF86(>Ohj#tlUqbe?>Z|R^_QR3dAUbt@(`#G{CqbT`fZ1V({ zI0>!voR;eS_t54c0YG(aUVxSdLTE6MGP}YTs>*di${m;M39A*>`(t!~Xq=Vq1+SL( zwoj7xb`F&HHg>G=CpMh)Bf`^ARqD@CH4lHI(2AM}2OX8*@9#^?k3$yQeRaTj+`&O% zM)*iVxpr;s7C-w~pEErWT*UXXw!U`VH;L%~P&Fg(|71y#3cPsZm$%H~i#>2gBV+6l z?0yx8tVAXK`fGkr$$4&V`TZ@-8EZl_qa|@GwP){}YsSvLc29!t#dekrjsD+Rhe|F6 z=GaCIyo*ZmHDCtsKkLEUy@2IB@3*_u1_X=4DS{?YGbWTcbyWcJpaG=>>pf}IQnjs@ zdivaHI5m=7QPGl29*!1h5L^E zEcTP52Ny5Oi@}*=(N9f&G2y*c?Q~1qYSmQ*x^DX9;1?fT6Sj8xqKyTl5Uz75SfFhY zKX6;o;$^HrJ1a7D4t8`3q~z$BjDG~n33TH0 zhq;--u~HQk!i0}x=J!zJFWoYd7mU2U(eZP7dSPDXV;voFXcZK`TQ7P8(*H*H&7H{X zqmq()=7Rd-)rN)o-ot>!NCgT1g!=j7>14kAV*aYp>dliP;L;6K{6UqKzw> z=4j34nX*hz=9d=Q8qXSEe)@bqEPCJ&=xwJ*eB}sDpya*E9b+gP-#COy&^CM0*=f3ciUJ^LK@bOAKK*}jfT&4I^!so7gIB@EW z_rgYvqzW1O0FSV+o1{6$Wz*}58u)3Dcw-D*-WybCz|O4(zh?SQ$&z$e<;0_YrKcWI z+OtB+L!QQbOJm(ai{%fZ$Js9jD0=fGZ@c+HSYboNPS_s)*XztYv$o@w(ER8H3z*B` z7d~4}0~W=deezn%7Unp-?WDZgc251mrt(^gJGl%vC;2Cy8B;V_8Xk17GPnmr%FM*k zjUjBcvQ{0PQ4(A^%EznloT0gfVhhpjw4|^PSnsthUU7u#)Bw)U#Mfc;@E<>l62fmS zxo^#;n)^Ve#tr7m5^L_f&U6&}Md`>UNdY=l3e=b3nw?zVGQ3JCnbqLw(ed9maUaqi zJA&Hl-bJI{uIoQ7bI;t>m3F@ieqMx%xmttUlNw-UJ$8pJrNWXh$A1C4)$M-&T1bso z2HsUY$qFSz2`%T#t(mLfbi-U*#vy0MOnI5EGxgq3`_W5XW3uUmY3ig?E{xu@LUk6FUR z$@U%L=Z8v{pS#`JWf#Hrz21|}ld1bL8;BmoyT0@OJ2ENoPX)?!Hf47#%`JK-9!PvS z32J5hKUDxZEjkM{{Kx4~rAeHGRjoF6rx>nx!*Ra;S?JluL;>vO3-c0SyRcR4?XviI ziK~-O-Y=x^6gw`ERTk5_hEOBY99S7DS3wop*>*CX~bc~gE51WC&CLJ(yL7`IDQ`l|mixKJp_odf@!bQrUr`S9M0=Wd z=9DJ$80yz@>#0fw}z)C|bLv!$8J>*D$GCj`(YzjcF{I7GQimx6+GMOnQ7b%lfZO z;!~>Qz)y%(#ohIFwpka@H6%S+#0z3d>N(2#4Lq`gh2@X2R1p_>uU3zQ6mhze?Gxgc0oko`pG{8?wsM$D=9hZ?VnQM91zG>r2 zZw|Lv$AOfBsv}O%uNb~@r+&K(4H8Q>>+ZcBbFRD0DukJMvOjksa$umjH8FL~p-HJi zaBuc3A2IP)PzJ#JY$o;Xl_ui`CG~16y5#K)%R0v0g_6*Gz)c#Qx~?(x+q9DsB<>*a zE+tN{WcQcKctMv~mn!_^Wl?LbEW03Ie_I!!ovm$}20}f~)qo;JkaF%j^6wTnLgv4q z9;1c%%kUB=COVE|I}yR{i$1jA=24I&Q-&by#&PZsDaX&8xgyCRAwgsZa}z}c^xdx& zH|?SgR6n=gtu}7=h#y(dcZ|KJ)gy|v%WcPuA}(8IJT7=t?4vNx5RH-5yfpI}`{e|%xRFi> zlY-R~U+dp>yTsDmvFzZ2h+B0m<7KYV8!0kJL;dfpgp8H7Cp|dn6l=6HN#0L4nekr zyW@+iVFq)HM&E}zI$v!{JYFx$ik>=;t*s!9HrXc%9-A{?tHRHCdmI5mhFCB4#i^v- z5-b{nf%n8$274I5QtCv+9NYe+zx^X1NZak5+dQP}ivecS1J>yW=H=v&mA@#7dEgNe zXZX{jCP}8GV9bfr8bJrndGUlr<2-75L?s!%Vn@+EV>fa?aq85RTQ(JbTsgAH1 z%YC5`J$r0y(Ay-~M`&@&<0x3SOWT^Srpi7PVlEtW_9z4aLOn2y5sX%vj>#h>!;84& z=U^=;$^n~Xt`o5L(@ymI^%SI(|d) zm6Gsa_i-xe?#D*!1c|B{(pZ0w)uAd6_ge^`4tA@sz^&%^j>lf#YN>v1Rs;HRfb&$e0d#A&N6!u+r81nDqP}@NH!q` zj@qwR?jsrtWrSXKYb1?f`UXuQ#^)|tzHADdm@^nes84+r2;9oaC_VnihNYmgw6*%z zgopQYzbAe^_;~duS-g%m~4>jr<^a zDP#OZv$P63j0aMp9GVhoeX_k}ImTJ~NjmC_9?C8SeXrAN;e`WKb5Q_&fBW?}Kk0!} z@c~_@yN|gCgJ)+0)ONdw@PK_A6 z?oA5|C%?&-*nBM?B!~b5m8a3hPAkEF>2?dL<)<2HW)*a-ECmm8+?*>2341=KGZxGh z&^MqhY9E_)rvJ4ZnGa+{X~*!#*VjSU0(SQ);xO2aV^sIGSk!~L*y-AMO~5yI`HaWu z!S3nHsjzzg{>=i9?92Q;WnP&a? zE-zI%(Icl!XY>w^>QVr42v+DS&N=Hj@9%!!^2hgAC9|=K;s?^G3(__BrQZZ8O@YcI zUQECXnix)c)HqRn7*oYqDm1Q-K|@kWlgHp^fGQZ7y)u?p(SsPUF1fsQmkE5Y zvKNa7^;M(uefbkhhA^aoM`_cHGH|YOdK@4lB??E)H|<)3u0i=!DsX=!8@+xK_NVcA z$_3^eZa>LmMSCPRMOqK+3F!~UfO8Z02I7n1=+(A1SBl25C&_bRjOJ^_esy7gBdndWe{sBee zVaR-ZjcxdKwBzojQ2o?_y?lXtwBQgEm~$Sz^X@pf>2VwU3E)Q}Jzj28S1TB2;Y z+RYtDTCf7qG6GEE?QV6r6IHv(ftZtBcMn>LE*y{>Ls)bgSL;@_h5Zamj^baMjK8!iqXr2v%zwmFN+Ae^=L&;36ifE3XT!beez?qz)iz?cO? zCOLCRb?bfX3aWOC1w0{?K>y;Sios=mVa#HSGX;`3a8`Uqod+N%ho;iTrAXqabDEoP z#3&BzF_;4RielpP!!cd#u;RgLvb^Aw7qsZcU{6P!@I=ihZOmbiu$a$|cYwwpt0Py5 zCz}Hj1WhxPp1fDO^Kysl&&+9s2Uu7zvWc}I=oy6#$%7|oz&Z=$1VVbTCAm&zVJ>B5 zyw4g4Q?&{xM1kaN!|o(x0Ld}okO9mUD}8Mn&)vHUr$UlfdaY)JEVC}AU*LL>6ab@u_p`1j-xdc8E2>O`73AW zz|lrEf`em$%3gbzJT|8SU$}sYsh`d0MG@ODM4o0(nMMLHd7+9E?2Y`&M-x?}i2>r{ zvITo#O3OvCHvxgXkL~aNI96-*a7Pz9bzRSM41_)0oBX-*ZGHwON}hbc@suzn`Z6iO{*RzuXrJDFQ+iUH8(Sx9xjE0FtPNuz9Rl@7#BT1&PDGRs1uj5;0qW z^ea!(!X=lzCrJ<6l6zY>jvReG>2`kHBCQp@qT}6dQE@Lok5u+jodR+=h=E(&;5@c| zXZPoQsXcx3J@TlU2OO@2(9wMsmWD5mrA;3*h{t6-PJqg*RFK)aLC&_9d;?y~y0sST zv+^Fl@93yt*0JcxKEZC<5y?E)`t$m!WPyG^=|>4oc@r!bs?-nYK$y-EFeALV|0OkP zY|bAdjRZU|AcSr^)BOFCtVI%xb18B78+nUDqnPV%_mekj2_aKoRhMkgMPiiu{X zD&C&wjg}d#6RNc|pa`jr0DrpWLnnaE@G{}`w_fu4#5{+UaIi=oyHg7$i9FSG_vQQA0sC7CI1=yuSbC*Ea|RCI7r+0@uX+ zZ+hA~?TP!>N{OsUmiR(PhZ({8(yvJrw|G$_vuT^T9jydp< zm}5QbOsB_!#p+yQ>l;fb2yR&grhs|YU(ZK1z3cUv?KT+M9I3$bj*B;+f56cnQ@l4P zlY8|Kv7d(_fWvXJys63lOK>Bf;CAl@vBuyi%S;=?(q!r*V{UqaEiMwJFg2e1K4N@B6I>Y?G7N+_jTm>p zDYMZ7r9fg zLeF44j#EU>Bz2XIwR$k&g=<5?c*U(`Po3&juKPS|znns!rFr_mEwdP#)<^c%X6v-> zq|TyipkojX7F&Fib$pJ#O7qg8pNc!enIyI3Oy4Ly$+AzTo>@UqkmYh}9VVxr*pwdZ z#R`_jRS%-Xl_3fwG)|7R_QEHn61ItVc=;Q??D=0O8wBwwNRYA(fkJ6rd z!RGPLY8@cRGUv3m_Dk=Z=_RX%dl8QMUAyTLG;$4Qod{RQz^adO-Y=D`1BQ!mT4k}M z^3yok4T-;QMGsuw?h1kTet#5jN(~y(n)wD5BG}6ux2LpcR}RhsA&!EDMFMFzaXqy= z8{3oZ3Q;8H2On?B`53tMMYJQsdPWR15~Qf`IcBo)uGf_N_nF0DQVnO5 ze-E)hn>+-i5p1;`ef9dTlJpSytP~G81%XdOhM!vZhU>h)-Sw+I>^cse#DKu+qu`Nk z5;V~r_0*G2Bdvtu$YK4mze%#-XbD_9nJEd73xwlzm7|Dv@ruW4qzc5Dm0F|Sa3KA$VvNH z2@Pf@S4m5czc1p&xW=Yg8W>V%Hf^ivRkkHudGUqGu?Jl;+nxb?{W8}SY&d|#5a?hL z%+^5d{CJ~4R$4q z9BaNVQ)_`P4S^i5Rn4gxcnNP>`*Diu=fK0A;pSN;g3nfu5zlN$w@V<^p8@QZpFl2< z&5m>{S}6FDE>xskg4GXjZaSZ$1+~n;X2=HT(jI4S;LU0m2`Ksi3;Ba{tKy1tEhwyiUXe?fYN537wj z85B@^%Y4Nyd!yDVyFO}H%W$ywABvnc5XB>77<`w(pOP;lmkNv@2J32jQaFgD=xkh~ z7x|knPyyXV)OFR9Wk}rH{PL}%6E%!CBqWGgtvWcO=$>+bQ=HqMMAB5Gb6@KDkX?AC z2FP{Bjd*uCFW>IOKt;DUU}QJ9NgjjM6NqHjf>aR*crJe%hmW8z8)ZEQetZ%tWvW=e z2632oPB`b7oA?H~}~EU08Q!%rb*J-E(XgHEn98Bzo2DlaxLSBP+x4Y&>l_iHLZ%Dzlt z5KB0qfP8}D9O%l3b5egU#ZVmp0KjSlxm&a>6=Sx-F;eK4tT_XC!=6B@%;Y!e9$ zpJu$*QToDXPDy^!u{KEbbXL|J3-0Y{M{a&O8=5VeAW+@+ z7$zdpMws(v;BXl)&$$>B`uStY7Ha})vn=**qR2w}YE|{f++HwKvxtG{MpfwCZ5^J7;0YUYDw? z63=+3K($vgigb({Z*{Fl74L4z(`O*5Z9UkC^6d07%({xw(!X3x3c+vTkKVXj>>u>$ z#ihwvTee08mS4Qx4YO7)Dxou{M;OUkJP*2t%bm}E)ThzIxE=>jIl)}qyzx0EFjZ+E z^$w(vVD)huoABTy1*|oC4Qd6XUhVp*0;7Rm^DoCi`X|3j2IoYUz42QM375iUPQ>2q zud4P5nj;B#@vIRemSOqJchuWC&T405e_d)4xa^R2(x0z`*>67uf;(Fd|HH$5PaBTk zp3|pc$bOid0jlXc11%WciDv@qvfwF%4}+9+rLJ|NxHw>Pk4noh8LiY` zB`M=5>$AQF{E_NYC{lm&rqNqng)k@@kkRm^JtBBt91PXACwY(dk3b(ohlkD!bC1H1 ziHPP6tCzAZaX#r%{=ba~+AV3*nywDhdsN<4x zu)~PK%Uo-m(C5Gl^tzkeY_t7_gdfp5|77!sU|3ae;K-S1I|d61Hg_Rm2fYJwqI23K=d3jT?72<(oFIKQjI zoUAUuVS64+$;2!mn3+XrV5s^V3fsNqCpf5w(|Y`PMkIm^v2swm+-u1W z=iS`UQB!ATyWW9jxWs%pGo#SFZFP*_ZK_@YO=*ht}04A-T>8VN@+m>h``Ip(=E_DP!19;xi{ zP;ViAFs%mae7`erl)GX+b&5#!czch}nZLY@5yd3rz9eT+sG0$?bf87B?KQof%gF$L zD0e_Pj7>&rGc&);R1ueW9orXl8n+L>;reA?jF*g~8Mzj&uX5nSq6{X)aXX(%=4?Sq zsXlhJynB+sMQuDwg{--)=X-;kZ(XcJg6w(*{L(LRyG?U_lqRQDISL@HTjEx=RsL-5 z@F2|w)XFk|mKKFiLtfY-p$%uL&x9{1jlOc@imlEY^z3jMI|_iK2I98EX#HvfZ_`M; z%UrB8r@~ZwsLB&+Aj$h9XeHPBvLU~w&VaXWDJPaA^k?Phq8|aS0Dj)o6l$VC?p9x{ z^7PKtlPSweTb>xbpsv0#Al)RV1)I~kAb7(C!lRLZ7L-y}_>@3gEwrI9uYr*fRIV0T z%)Wu^f8$K7+9gtkT1?7qFHx6>S~sHVaB`%P_vC0VC!cO7Y0j-7YJLZ?{{2{NIrfUA zKeKnq<$XF35u{cGb@JkysrS>`lWwxOL#1D75gKu=9hFMbF&2o!^H4nm_a8hf-6lIB^V-C9{*9T(FeMD>N{M{+>gRAKRKZwTE1dIU)Ptud zn=^24mC&4m^1FcT#Qctt!o z9Xu=N94Hh7S)R^DY+0Oi-tBtmd2I|7S55*BNvOb71}U7hhH4+@0!B*naDE1~Kyv=@ z@w(b`;uW)2n-d$eH2NSV7kpP2@0@F7!4Fx>7E_n|usu z?J)E=UkpmM-QAp58|pR>j`nwH__~BpmZcRL`E{q}Z+?dV8Is(tavkRfD-j)C+)eN_ zW-$+s2Fd#rz;=RP{%gnqE+cB%&#!_o*yW;M= zFeG85lj!L&hUk7Aq;=qdl;C>nQS+exhpD#?i>mwHhxgDOqI3$<4br6`ph#Gxz|h^@ zgOoIgbSel+hja}kN~d%PQqtYbdwibf^ZmW^C)dTy+2`!N*1higUh5PLy6#p$Kol3e zl+P94H_mYrR*a#WB!GB7s3s7vZxj8HnFy2f4*gySGSlVJ4fHwMUqHEUT{-qKLqpcr zqi4x0q!xp_H~y`@)ynQf|9}zIO64QZL3G4B{(pZAfsTM^a@m`|g|s_1*v=os%ZLfB zQS!Y)PDA;j3gV8ic@A?S*M+Av5ev|W9}c7f8B#*X0Uc;_pWBzd-!IKl<=qhnmSv9< z9u*ei0Palm932*;8jDO6rO86^dzch*5Ou z{ogM=dUQTWOL9p}*aET94a|bRu8SDX5>3r!h_WAYIH1(P168H1)j6yJgLJ{^U3mcC zRuoNoYZ?;4!b=jKZ8Y{(rpI$Z&4BZ{>x;ZY>i2H=tvo3Q7O=ZfE=O zUDu38cz>QYbR)4r17FG9;-#O_74|CsMjIutv=G-|#f0efyn#1U!{|&v%ysO#JEL*P zmv55?45ih6FC*5Ez<+U%c_sW_B8i{;iG$z7B@D4F-Di24B#~=9SBy1Lg!vbqquqtH zF)}K_+36~`9T^cA;ut0;Nr%f%S@!Fv`^1mRVrbiXft<=pg>R|{b2mA3j|e$>xv(st zLNxi0FDkdKan|s=%qD9welS>E&D_bZZ+Q7-K<8lo^GWUIs6ut!Tb+e@ zGc=bOs0|-`cs7jS!sK>)=)+n1ysPgbKO2-@PJBXri|C~8en6%7D9r}rFZzO5;Zi1t zl?Pvlq}A0}!JZo=^uZ-f9ZrSRZeCubrL<0po%MXZIfvYT+`!V~7@Aau1k<$K*s%n*5-JT>#`oz}`( z6T|fRq(^(ypU{d;$8|2POrtrnv<^(CM#dC0D`s6}%?yG8E-DKmSI0+hpJu=yItR8ly?eribk4^eOcg0ju;ti}< z_%;>YIj;rE?QOu(*+2yK+=|b#q5j>Wm703Hk;SQxfyS^3hFXWS1$Yc5%o>Mr`5jxqR~d5*kTH+Ni*GQP=`8aN+X_isw z)I2dAejb0Xw_iwWQzXK6-rV4c^U~M)o%1S+RkzA{`Xypijtj;*i={-Rf@G2p@mt#& zj!N^O?@KG@CAtzwoTLj>q-LlxrMd5Ia}&}PzbfT_-PSOa^eJKV(=!82-}`-`|XjA-Gi#6`?He{-ZScxN?7wP_RaKG4y{Dsr~y@e zdGZ?XjxD4QuEeJQbir=j3fu&80i`mrezZ^+hCT$ZUfmt8*h!3W4UZ-ZR~J@#WM)B= zIV9*Z*2gHYjs{*On|wV#^2dUTWxO&<=@9aNe;tAXGEi6g_j+a_sltRy+4n<)vfJxh zyE6y&wU@K?l@HRWoB4^A?b4JFZk?hb&SD>NGOu6#eFOl=Q8ZY0eBzof8L32Al_n*z zikJJ8pS88Tv>Vn7osn_1k)5UO$N4coqF32Xns{)%{+Ay%lOFJ)3=AM49 zfo5w6y<`)S^h&1Uou5ZYl@)p)B$GBrIiSgO)8G2gE6}+zMB?8?Q_{ z($;YoEHX0QyI(3=-Lyv%vztw$nep_7pn!-+ZuLv`XI_=Se(Q+X%s(FCpJ2U)rwEXM zIO#`p$gQ!3D*(jbFZugj#(#ETCv-S`?mMtsqJXbeW^5MKOuXdnq0h^fp{6wX%XoO# z`9rHL5kuR#UcjIxSSbS+oD$uSS0Nxz)GzGsiWKt1I<|x_5Uh zRe)KVN6O6l{}wyaIi8(V(vdum8sq!9l8lwH_G2z=cJz*iyHB)B!yCiU%MDJ|yIr4z z70Ik68fS-*3&B3$EvrAO4R6yME{vl`_NxIowJ4ZI;VUl3C1k;5(;q5Z?GyH&JYFeX z^4hg$4^Z%q2|hoJbWN$iZCt*)lJ`k9BLzfg{s>nsd*Q81%Nz{-9wE+FxC`X&#xH5| zQfL^!GGv5qTW!ey5`V2`noTF~VD_=Vm+Q@;&k`S7+n5W{7Rd;+NB`e4W{cHRv98W5zjyL@pmE-( z)4FMz84qFzsC>zPRBJzbk3dp)hVja;?Z}HC;H@5`}l2k(*+S;I@CK$ zK*6QieY|sWEX?FI97OsBqdZ{dc1jfWKU)ca@Y_jeH0U=!(-i>xHjr!7Toc)`(39M2 zRUr!*%+9y)fg#!lc$-}1gwI>gY%weKre~K|^UR<>6(tW<4l%t(} z-}WU<x2Lego&HP9lEt!98F;JowRR z?w1{I7=TU^bf)lBsCoELU%-c-Gg^tp#bb`$2cfvS?V&*KDGbrO($2TaLlMgJ;|E3B z-r=BLBp0OA+v~B>&pXMTT^&Q4po~kTp}X1d_j?ME;(tK!=i(*ljD1mWR7u36l!b$z z)2zznc{|{(}6Vrv6LjzcBQ`H23oy0{d^CnCW5^N1B`F^ z?~UlyncO(T@CXX^zqI>BYW@27*r8#hs)BlKAL5WS0GQB-AS`T6O z7#SEOMOdJ15Cz3=m41)@c84rBbj_!dm6@iF5~S12a)1X5SbKgRyAG zlbl-hU@R|eBI(* zMWRx9*bL+%b!mpTi7>&|j)AJ7aJVqU4X|U&*~=$P_|l@i-utbx(^_`p*|L{EWn8-~ zThQl7yf*54ypi0zn(47e=|?K?zRMWdV)vqnKuZ0lI|10gzL_kqFq$&aZap$8JCEH? zrI!Y|6)ZdJ~t*B$=n2q|!`znGRD8uKIlMN{{JTPtMRvs{;gj6^j_FL65jFS|H1 zP;FAbT#6KF$}y2;E!wz2?=9a_NSi3Ki=EJg+&kuWGL&G5!r}U&UhxTZ+z}IAzqJ2T=g&?%2Yndv|K0bs272Sf5 zgZVjp=?W42z|(nL;_7G2EoZ9!D@0g7akKYqpv4rjWTZx1-L-{Yg2rp}E^M@%& z<@ZPYuxr$hy@L$(;zLVgtdH2O!w4VwU|MsjGaLQ7-Z>}U&LGWo~O3N+?$pSjp&v6vpaJ1phAUgI8|ggozlO(!8(jGwK7Ni?R}-(h)< z0Yg?Md@(qjtA=BqtWf-Ne8v%z^d8@+aw^VKf{dc&Ox>fY*^WZ({VVVO-sHy-nHg%5 zYP4s~q4pZ7r0SN~OnolLN(Z))S3kbLWOz`snnEI;w(P{v^br<*TOH)&SM`?hp-$PF zL#!TO!dDjE<(iD;V%7K*Y_e~mW;0k=@QyNKgJ93MI$ebJ^8Df<+hEtTp5;Yc&|`qf zId8g8eR=g9Cmi(`&|m;%2ud8h@wh{&0v5ZpLbJ`cB_z5-hs#>ELn2qX+q)R}zAb3l zD{S*qU6l|O#H|m0yNM2IhXE655!dGoR?mH5AZ#@JTuDuE6qP@5C3SN-m)fp(^Wc@M zE1ts*cJg6$f#H5y7BO3wW{GMDsSpZE_TepA`RvdXM1H~RR*aV|(73bPLN~R=Xnl4^ zpA!DNre!>^*K%F5_25?_4VwDlEDO>y&&8H<{Dkva|Hsfre3Ay&PCt#`KsR0Z0w8*K z9C21}Le(ko%&w)94|9_jLVMtHE)ER-2h+Dt9S!gtRsT?-fn4t7-oU=GYEl^R(wUh& z_=thvi7@JuX)MzU0K#P$4ewy8GH~Oyf`1>; z?B$rixyb3b0o@DAg+)(6}2TA}~EY)o<`CdpsM} zPeysLe`S~%Gf?D&3AiVRtKS1T9A~E_@`uVlNS6fj=CKdbtEGd@>abRE&F0**!`^6| z&aG56SG+#8l2d9 zO(hej6>;UV*3gZMI$G{^bltV3ofX&re9I9&<0B(*C(OOS^NYM;4!Z~OOFy1rpTpgA zuB~YXMNtsT9*`+b@p2?t_1~nC^3;5BJm3ke4wGK69!vrDI%))|iJec`YI|p@n94?jDMk$l}&AN7WUSWWT z8gy05h7Yrg>kuKke4Rh+s}gdOn+fP~`7iC1B=trD9`e}S>^=-1?IS;QYb6NUI+nqq zOSf6C$Vt&T3oz<^C$w9ulR;{Gl@qwzUBpy;DN|!#)ZK7i*}~~EpDh<6D5gjUe9wP8 zK0DUi#ou3D%|if20iIFmtv76j56zScvZoCF1^dhDQDj9wKYXrF1b`!W4J4;*w;rep zd@%e@f_Mks{XHRh73@_y+~aI!W5jg0QVb5{gVB7uRjKiqwsS;%nb=Z?XpSpx`@~>t z%gA?MutF!G?wKxclIZVjLz8X|6&|#2m9*FHwCg%bfDyy#h4%xTRsHQCaCYS(MO#>###p#1ouE@KV_oJEq$lSA`szXH%@Pl_j8Zew!%)d&gk9RI{h;e31V>m?eS zn^4ra=%?t5dGsYc=fsG)^-0y8?@o+H()=zWduWaObM79Va~R)r?;zyjU5L)sP4*9Y zJSvy-@(-;EddGJ=1y-OjI!u4o`rtkHE30J`$G+QFCCigRQvpbHTkRG@Z#D(j)@Ekf zw`5_6Gl-WCBTM*c*QS-_J;euObRga93AJlK7~h&d;wx*}rtdCj_Wda(vY_Hb2s{r) zZ~T)LqGFW>`d-+S8%^bsMpnKF%0(5MZeqHAlH>EivNju(J9feD!K#GdOn<^Zl}gta zZgR$ZcP5)DCd;X`E2z(WKctW?uFiZS+&M;p()#coa0{eRK8?Cg{vh)ZFe>Piz6l&W z_<@mQqIp)!1Tg3Wf&$LJ->!LGe|UJje|!tPEsfCA74ShB{g_PFVrRL$+!}H^;rQ&1)>COi$fI*RnhiYQ0xP@ zIMlj|z^rTfmH)*{tT=$gc=_oA0?57f77J#*!uAD-2%TTMq3|28z5JUNUChX>a}-83 z@WBC5F!qVT7Pe%3B68kv(civJT;I<;-&YpUpHtafe-!3}Bq#0v6(GW_03^bWus{=6 zN401egV#CI0>5)misPfM{Mr;{^3MxJ&~U-q<|ScW#n52PzjgRu z{D}h;9$ndyif%P!EWr0ngekK+&_l*K%~5OFKHgoOZ}S9rZp_7A`27uux>!}V%$FQZ zHs-q)H6kwoGPj#8b&;-by(jZ@E|BHTRpV;@G`kRYJMBIUWH8y*I^|TObF{!f?4Nf* zLz@j4B=G7#Mpe|gwE1t>=o$YOw*ThgPJ3)E1L9eC;=S()$S+^dBxPosxLzSX;#=As z#>S{Yz`mGXj(Vc9u~>Uzp92O`r+bSxyac1SOtT4Ys*La;XWhB5Rk9x1P*oJ8=%Ice z^+dVZk8q+k#cpf>uTed5pQtMD@y+<9PwTn)#>6&;t{l!Jsp(L)ozeLwz=NUv?Xm3{ zu1L!}Rg0wh*JLv$^)oZuFpskX{3)jyq)fl*=4!Vs(PgrOUbL1E0qUCFY+1BwFM>Mi3#!ek@Hbi19g^6rC|BYn8a(CPi~Ja^G6Y~cq+j9l2CKVwW!!!rH1(%?6%vQ}DWjKLkm^Sjx?rDpEb z&rG=6+vcOSXJoo>HBwLfvQ2)N`#LJy>mU!UqRc zH72Lu0zzpUMOp$gHx0Xfjt_dR0I~FzczXqiQ2Wb*kb=ErE<|q`thAoAZeOG#^)h`I z6#c9$sCKOw^g)T;;A$5y-NdkzK|`}Mwa7?tj;0!htgIA^KGFBDS_`LeX*h5ym3+Bf z{mpm`=UK2d6W+1}wQ3@>3@e_wMF8KZr#>EGRpnjb->TIe_tOuh-{G=`#s$ZTreni^ z(PQ7sR&v<#F4aWkt`^tuSDD*j@0x$&y37a>6*(n^`PR;WBDWN~OFaD>4|wZ(3mGI? zFdF?I@N2(S_DnWw81zny; z94OB-r^V^?(A8hvPEtkL(%)$|rz$v!=|x_>-TTxLK!xQ_-%xxcNf#touD6nHCenCA zHnu}>(`ED?&_3&b7L-Bwy9Tz-iW4Fs* z=mR$t<`J(!+!0LQ^zpy>L`rCaPh=w2tkVS_&7fs>K1_i*U}nzPBUJ8SwqThJLaZDE zryFa_ml;l#*d0+QOrih|GI8~2C5AC{7+XuiFJ@4gLF%R=j;Cw`C-$M^;__aDv3>YUe-A;BVY=g3!~@3W`!>4^18Th*M^WAt<(yRLb>6n zZb|yR+YCVio=G%aQlLV4a#v_^Wv40QF`HAhMo*1iNi)UcKvRZ`jB`0_L)kDN8xzj z%=w1pFvY9X<=sp&vVdvr6(|O*CZNwN1!>m*r0}d=vBm-*mvEUa2-tyJyAu zVXp0?SC0=q2O>PN08O&&kG=r9i_0(5{{=!)@b+ih9Kvq8XWAc z1l9pd0}l67{`-|C?{?^>jRlesEw|R6qS;y_H8y24FEZ+67LJQtrhFwIeIH80VLz!j z-<%vhTwg6-x45)%O3QI$AGX;HZl8{DS3%e1akCVeAW(37`;577;ak$Ek=3oFqG~Q9 z^UaOe!{Cgjg<9GwHzuJzuQ$@@1~_dR7vG|X@G^l!N_28MB2JW8wkK*`0UJndUdNi+ zik1y6eo=?NYi^eGJpjQFC*|3f-oAR7)OWr^g?Jcr@uhEfl~^PCVmGVd0ai=127~ZB)23 z>L*5(WJbmf?F;<;I@sP*L!~``0!ykqPu`Ed3NP1-mAONjaM@}ZhMYP=Tebt z^QC-V(?$Pv7H4W-T+jAQW?TLW4q_sP_;2}H({$n^UA5o(F12q*lDkss>6rp1V6CAQ zU!iElc0ks%V1UJRZNA%}oJ{_Q+hKqvA{vV<%=eV(s4x=wct! zk&$ddqmshxquE_hRo~~}Wiw`CHuKc9kT`c@8n=K;rqE+gbl=&ghQY!-PV}HfJovX? z%YJL$&8Z+wfAqGxDYf+cb0G^xlS!8mSFt})A5HbFdd)DBx+V7dOkJ{@8h_T2!TE&7)(Iz5MfZNs7*p{bV%QMq!X+-BzxD;a;$> z^QE@ ziZ*pI5xsc1IL40=XdF?x@Sl8G_rSygSxneqGG*iYSpv%QSf_%kt-`^Jm@j}wqH%s# z?!yiN`PU}8wz}y=!j{4$PdkAyK5?9R|nu_(1U~qKT7rf+z7WQi^EMZCI%NqB83`hwes$jElX8; z@F90E7-Dt$2r){LIY;1TNY>cjMNgzi4QQu?BL9D99K*B<_97o@J#(mkVf%oe6v+MI z3w(3gwa720MJ^8D&p?6ys-YE9;~p!9)V^P~FGj7x&3?wVN(d7%zFvN3^EpG*oPH79 z^^fAQYyBhhgqu?%1umfvC=mkwGq&~D6$I~%m{Cn6HAzgeykLK_c8QNljUtc z>_4Ohh}K>VP%!|@`D26ExMk>}6arsgfg!5fy`wJX1@J))+tW9S;|~TM{sV?dXX)t8 z23y_q;X{>SR@I8OIzz~(b8Gkt%)aOMk?r^7B!!$=U9RYf(E!91u9UrXIKjRHy{;j= zTn-OtO9U#qXN?C)-L~7jdnsgu+TJh_TJ3A4On8>h(5xwnZ+b%7nn1Px#C+=w)#Rbh z7Ipqt#$8nF-QZ5wvNK_*Yn`#gzQ&DavZ6KCPkjNeD)O5P20$zPBqPLqIG8K!(Wt?x z!3#(liEZy35OzLU8?bFZ=}c~q$a5<*KFt?(@|*~>6{iWQMEupAp~^Qx%WTb)W=Y>? z$;Ss5bYcP8R^>j@#V?L9U>NpNK?BdGm-0T!xOg`OJNJbwXF;!js>3p$$+xXpelzrd zfu{`FtlISrL47X=@R$VV)@*grKwuY_P@gHPl|MNDCa_-&hL9`dkfap>iw;MxnxmOu zfc{U*DrJj}W3-s(aggU{%m0dB6FtR~z4Wj6lXdqVR!~hMjkhKCqhwavR3o8i_J7hbV z^XFE)wm^L0;0I#Y**Cp}6hPs!Em7JvpW`&v3Y33dp?gV%r?}$!D^y=Cz<0hDwa6d3 zr)WOU87eSoV?;jxr}utR(<2xRFc9@5rMBG+)~;Za^510LJI4Xakrvy3Q<-J48X*-B zp2)=2e$G$5G-FY#lQZg`tM@E&pvIZ}&ibZ(@PmalvmLKX%1ns{dBJ zq|b^Iz`<*fUaNRTxc%AYP()y%%?V%GbGt_DxMJ*K9-}e#4t9%zJ&X1e_y0oG%BoiPeZsY;`LUh~)v~AR@ zSCpXsTD+>C9ly$mYawR!!aiO_zuo3_kZ5i2`cEpua=;<9ycyc|D#Myv z7DK%U?}lC`#Kf%ny4KwOkoyUg5bC^f;_I7V6!o+5BNr~ztSP=Fpc{$3`a{v}$Ai`l zuE-PoAx3g*2ac{k=N{OqJGJI*(w2o3hl!sP?cR;r>KqezH`1(6{g*Po-3BR#kA2Y* z@vA_)92zuH4i?KkK*}1nP6^i2XR4#NxIo^O1F=O4rh zs;)?PyeIe#9kU-TG(k^2WNDz8F@fmn=4(gN&1~#oaWf0XJdhxcV%`!fntW{o#gqp? zE{mI$@X3JP;rc`?QBRh{hD!M;QD#2bqp5UXXIODiS8-xSx9Q6d?A<;Wl~|59(t4YSF>n=oT9;A8T+{gIqR+|b#>@0Garc$$F#n~S8BX;? zP^z1K>3QOE1*7WKdBbn&Jz3;}!c&L{JAF_peuFzB+XW<;0Ezg<*fx9r9250XpMtB~ z`%1lckNGzqiWM8Qk)ihUQCaydpLoeMBMsK&cgyvRYEz8_HiwHoD?TuP<8h2=qHA{@ zP8v5x2HNfZKm)k=yGkZ@?iwJjeBIwe1@_m315qVilHhD}AuzYQn-A3O8p#dc7l0vu zL)jqoCk=!?3ms^{cKQ zZ_d}Sn%RArIq^<&3N2-6{K5FW9|mpddzWayfE3aCH%YSfz0j#sUw^`1_jH#R_+ZA7 z_yKrl;PwkM=nQ=cqrkufQqCi{{tu)8WSu+{j&#qg4~w94 z&6pd%x(s_3lWHq1R9<}SXEayY1FH#;;H)iYlUMGcVD}V#GZ0uikRFsWaQIMr)zq8_ z7rY&*sP5Hws8Z_2MFa8il?DC^k3k2nfj2+-V{oa@n@6X=WVYzx;7!(j63}PNdt&cT z1L4md`sBK^2cNyuibp_)7i)7yZ%>UNXb=V+Qx{JVB-yL?>vM(84ODMe{rcna?drW(K+11_ z=Ot_N*{|rDykS&x%BG(TiG*MXSoIGKuvWF#G(rj}8$nKsASSPtZ7H@s-K)vU3#zsz z2ffQT#GdOEw=TEm1ie1rLB@yJ&NR7TZqM$e`CQ%D?G7K({JR-LK4lp!GI*dR8{Cvx_x1 zaDSVjZKtx!cSbV=eha;8u5U{M%f8i*si}mByc^C8_;Yk?)|_jpAdrO#)@?bWrkG1K zOXOUx#UUHkXZWI!TB*YDlr;N~ncWy6Hcij3x9afO-mQJu+v5FgVb@*Z$KX@VDE8F_ z>wozAxpw7Dm-*)S{rE`Tnx<9qoM!Z)jqW6l)tNLu^12nZ4NZbmSprwiPAk6FY02{i z{IYVtG8)ucRAiu`jTv^Sv1PI@!fTS&1?1()ajM~n3wG=ch35L zU}Zop`n|z&vr?>LKhlM{{>;NLOmJ0lW!d{j5Pyz%sR9$pWInHG{nPN&vUISFU6$(C zL5pDAOGuXZ4vp`y=*)UNtT?28+Y;dOkE#Ta_5_?h2M(CirVA#6U#L)8U zeO^`F(}zOF^fCT4emVjuv`P8Z^j(bI9)7z}S%^TTFuc=<5%-bU`ZbY&D1s#BbBVS3 z#2+Il(zMLw8W&3^7O2v=OV+ybQYPAQ8HL*A0k}Yu9?6`{(;vuROJRL-KcSg*(1e{u zbdZFEX6O>2A-)v~yHiEaE!*Zn{hU8V8i?QhQ@nUNA4xiX_DIl}@G+(k5ZX`KZDVr=i9%bp8FdF&ocuc}3@ zog%s(*ATVXUHbeqlJB;td|9IqsfC`GtY*Cu^N(vj-&INnd`amw+@jC0+Jy2vT_i)UiC6<3NuSC?ipZ(L(N&7VQg*c0-dHThE2 z&SOgLv6s7s;E*rrvy$z#_qM@+!%p^BJ!-HwSrO@PxvWg}r(-#vfYIR#1o^PGe3&u7 zE18LgAm%O2J&Vu7%)=KpAJG81-oUxw+VxoO{crM2FFhFnKV(u!4@e)U9IZvgV}b6I z{*Vs)Pw8a;M2~j`^fm>TMq-8@)NF~3A)=O2k?xW8 z#3%L&h1S_VQ!{rWpP7qo-bhv~lfj6%O`lnCKdP$NwXBBH0{VwO%IwuB&eXZ@N|PaN zwpgqFSXV0t>zXjn3$F^Z2U5Kox1r3vy+V@vm0*1nJxv#p+uh|H;5)lK_!jr}xV4A@ zE=#dR_b#5(?8i?>@-#}E0Hr~i?0!lB zz9@oBaxuc`j-^5Q=mbA^j|XyatM@$Yy(-i?zjtqclnS7LGHm%|*q?W%<`=O!pLo#~ z=hmxTqcFf^`ISH(Z5nao+(S{;f2tZ5!x;a@nOQ!&R94|uhN~yBr}yerB}I=u;%4KQ z$glV#c*ia99ahdQZWLv|*rfW<+Ye!H2CiAg;4?CQxHh4r)rDG~XX`ciZ>|oBM9QYD zoG12H#c|JQZra>l(coj|4yIF3R2|cA%n1S_5vE7=dS^{v4qYZ+Gqe0sNeXwUHhG4( z7j6Mlp1^!Ckj!1c zFfI13=jZkgukcS3;ew25IyX(|lA(Zv&9jP2-*<>~w zbl2u-APt_U6N!Y0q?5X*Q>lgVn18x?^QGpl>h~*I-{OagJ=Ug~x{(=2$KQKrBSzks z3jZ{fpBhzIg)Fs@@EKB|=yK;Lf$;TO{8;rHDyLjHGQmgW?yLH2LOtFnmGu-3^04dusy@tvcIc)SGYrO zj1!uZV16L&0={Znhmd351>Y4)Ssx*YtP0U5WdM_it3T^|6rNsF*$q_lM4zwi*K!3O zMV(2D+ls(@zQ%7eyTK^6mL{-nBxyER1756MJ(G@Mh{+k05p8H0;n(x1e=5Xwhwm(9 zIGhNa`O9|4JpSAr??EF5&Fz4W)L%_;=@suuO2@)?(R7>OeAG^U#kA`O2GmWK0=I)7 zLoasPM%i`>`ln_|ez2~yi3K#1AFX%qPThw?V2KnRaQg6_xUs=?Hic{a7;r|5cQe>1 z-G`)35ynb8~7D<&gbC2fkDb?9bS}KK`WKqW@)X5v$EuCB63yc zGX=d9CKICy0CRlAwV;CAv*-UyM$3 zeJpc*^NW&)lDK!Hb;u5;qMzaGuNWk?!&r}e?or#gXz2UnS(~LV2uGRc9_uHFEFS0&W}krQ%&~4B&f<%h~5lP-w$2@q86kroo(9a(F3t znhcP8OM@6h=5dMAgr7O2w~{-{3N2fIONkWW^0=k4_smoB!{Ao)M6T7zc&rTpw;7u{ z?B$*24T^OjLU7?GVu@LPjd7;tqe~MLr1@*6E=r|G6`e1RHb9e13?!UE&zvF6T{BYvGxk92p-b zc&eBfccgA`4}l^4G9S4T^zkNjt}d59nP7tK>hhv z`1I_2_>Rosx$Uhj%AT-48M7B&(?@ks>{6T>kd+*)aJQ@V+~G?v_0KvVG>|+Rm_L0K*N=j$fO%&|@})s> zi&0UitRs)4$4=JiLj)u0oc;(zqD6JX{A3I2Pe7u!^Hx-2z=bV94ywPH(1A?oQb8*K?C zB8*dwLB~!XTmL)(Z(+YzMlbzjqYtR29eBq-uPKiEM^)mmf;kSH=S@CyTizSrUh{A6x6t=M5Hf8O>0%~D&uevTf zL{L)Hg=$@Sf(VE+fU2^F{!56{%KgAfCLJNc?vob631-Mx&r`2Tin8TZy{Io5Xolxs zvs_7w*`sPsO-mXHd8II#O=)Sra}8s#(c|;?4+L60`GxF|Sx#!_{=JQ(6nnZSu<7wDfo%s+x`d`a{)m2d}Rd9g;uy3A`q*{!wMe~@&pM|U{gF)Q%csysm zwH0Ot-YY|bWi3o+Qem->p9_M}QG8WrFD^)3b#c(52+%C!KhDzCuA-C|G(XH*3EzPv z)xkef5?0E2aK-BV4DL}Gh^3i+qGWm#Vs?jt#2H6H&pd&=QS^G$ZeFy^8|xaKhssMd zbhJC^A{7NaGUHX*@yr6GeXX%idnA20DCp7k5Ep6;yd~Wt5%*s3p0Z%i2KvfF^-3$> z1Y?<=Rfx{a*sUsNcz~;ad#fw?-U){bKv@}-YX7&tjy%2BJSBp$Poplf#9^t4$CitZ@P*f>CDIEthW5#A~$Mjh=9cHt}TZJ zs~&v!4x?EAUdhNVgx^fQC)HJR`og#2=Bf&pj?Fhyr@lPclsM&j&Spx-M;L|Iez80LT;oP|n7DPu#2}P)h6qdvwsdh@hkVStS&|oz(?%1LG2PT@&sR0Gsd(~K8shts ze@mZA2;$}{EOI|*u9_c3Z$ zv8mDUYM$eiS9%eN{ncV4bAf`HSkksr&mDp@ZGF<7h9WivE8M20T12a?+}&&7YIamV zzm9#7%Y8Fo9~&82)o&&rTY^rQ?|gf+D!xcMgy7idLmzvYM0?di_PPq5fcsLOv*`20 zON=3n9O)nl6WsSTyfuTR&!z@7U`Ph*gJH9(k^9LC?=&9$qUUolh^vlCT{I6^{Jd+T zDC1a)c+=+wS@5LRZl%r895p|TL>sh%IAjbY2|Cn!I*DO)IutJ&W0110<8YO!^M7ZR+#QB_75I9E`YsEq@Rx6L&4u!HYg6KJP{5 zDRnJ1G%EB5ELI=*n&)3ulz-q{6c)01@}Xj8FV@AXZhg|e)w7y=@LHr^yWm~M>LqvK zk-T4jz4*fPd~o_;{?cW)hf3)wS6J;bYJj$D?2mElYYgjj!d7)jmU>?L)E;_YU9G_E ztl72dJ_p*VKuMR;VffgngM=Ck>BY@k!qrL9Y$w(>P*A1F6VZqDzJgtp=Gl*dkP1rg zKTqT%5S|PEhC+t=&NzN^)kExhIe+XFEc7bi(?QMG4#khdBK5;A8?1+(XLG#AwJlbA z^yrsCtChH`qnI)J%1gfzW$hzm`D(!OLHCC(D*|Xr{8lPv`YQwabU0Wv{Gf1$2E_n- zTKXE~n4nr|bX)hc_UXu*%;XrMCM3^Z&<}pwS=3y`!und*j;!eIh}tnhy=_`{r5UE) zgu|3mQ9)kde*!QrI;cCs5*YqvrsdV08dV3tYl{>kBH{kSdutdS{s9jZ5mK-MBPw<# z&q^&O@qUlk?c4L;T*N0UWeRyZF#8sJw<8?WyCs6d6w>dY{+R6eeRx#9BK~r?sE9RPOEMOV@%2K$cki-JA-pSEJ03_G&wu*SLwoUw=Qt>V`=EXnSANo5Y+!j9W zsQg@`61Uma{z*jsT;HNnQHhh_B@7-QEXr{z3%dHx&OG|c$wBdCXS7{-pFCFN%Y3)} zo%*8CTN({3;`r(gRMLHZLC!%3ycP9HVZIA{y>lYWR`3ap7+g2{`VT0@nKv1|12)`@=Cosd57>%cYiC zCfX=CRoV7>Zv-c`onG{M|Mp60^!lRjEpv>C6(89FmAPw<3A=D5W>u09g|$$lhdmR^ zG3f`esL{8$;LeV%gEP{zD64>aQ>dSOh7PqhQ@?oSp;bZm^zQQ%*^(``gG?wQa3zRH zJCyC!FgZZ_{E@$n-XG!X*Xv4I7+lOHT20~Ty20CMCj|i>BMRWYest!p^TP8^b8#rO zFj)rJ9~Y$E&@P!`D*&#QQuBO#`t7LfVS(<|V6jt_+OJ5Xef&iA8#|iA7&iRAuuG~x z^2r-_9qhfLxasO6y;*5lcy4TnsH%xi*%p1wk{sme=urc7n^M^pdG_8DVT|toaaCI3 z5NwPiu`7AJ6hCd-ZDPqEhtbd)M6O(KvWqr|>g*0B=A%a+mp4eAIXC^%I(Pg*Zg532Cu3so=}?>1|zpey$DIocxOliDyAn z+Q&Anz48m~QvA!*F_BYP^`|Q51&`Qk$obvv$6(FrBbqcc^CA+N9~Q;33PdgW?i0Ce4s?MNU9?|O60lYH+l zM8w20Rklm`Qy%^V!wW;M1?TSyswKNVAzW4uroxJ3#tB zJc?@^4~iGLDsrQNI2LHealrj&sL*=NN0KwQzp@_b*g8Jpk^7rorUa5%t(bm_oLCDo z1?h!DbFg(g+VNgbx%f1epn!qmllR3Q$Jldd;ouSho>aWki(br5H${6-vNQSdc>E>c zXu#+aAa3gPjaz>9ZMjn04nL$EQ&t2!UX)Hc_IbP70Wo%e79iHS!K}+1S+< zRHZx1$$I>NQ_XhY+Xoto4N<>Je?Z&{h*kY|>5zS6jN((Fh;L7-M>g{$TR9eU@4~n5 zzeKXxMf`SyY>oaPI>oIBAVZb!Ps$cUW`vS2MWW1>4b7qufKW`zZH+>ci{%%gXpIAMrg5GN|@t4*R#a!e&jz>A{?+aLDuUIo6-wZhxFvt}B!@g^Ax^ zDyUEfja%Tut-hsduHZuyati1Wqm%#f>YMB!5RH8TNs{W|dABU`H?qdDu>*iRuW(nD z(=B=Dl_i6(_>6mAER=Iz%&^toQK+y_@NrE&e#7#N2fo{bozmC_pD5H|5X<#9kn653dFx3vVGIia1ju$>qm$MPvQR1Yv4t$W0O`QJx1gw2j>~jtB|!( ztc5f(_x4BW%wdZfDEq{Sh9K&E`$;eYM0@+ke1n{H8ZIRNDL&tq#B_i;zUQeZOw}CT zE)X`l^R|2m_pd)gr^&Wd0a^YVCY6e@C99ZDDa#m6NaQ9O35?doLW7kc-z70yZ}#2- zsufDwS)h>SDk-YkAULdcDrz{=I~SXr9|!)<8lDdEZQNCl4m3S}M-2GD`Ph2F4R>Fk zKSY`0LcAqRvXR%77ST9s7j3nZ9ztHE{ALqjPQmSQx|)Zmg(!^x3cqxioh!uLSoz{} z6nmVK57c2WFQrnk{+F1*fw(XL?DKb`Lp%yZtIlk8jutV0?74I0_v_x@MIsSX&a5Uz zIWaBvVwSVdM=a(nlOuo?XpGw=>-pOkIQPv;A3GM13u?8xcB$UHY}OrCjG-;ZiIy!u zfC76u(f+mdW&&QoY`AsaI7nt^S?IOFeY5x3X#&LwTf@AT5C*#7?|!rBd&}J}WXGY2VJMi$k=e)9M^Eqh{B|}lP#JBE_nA?s=eo)(1!0Z{y?X6&dexCt!7^>s9brP5Eszljfjs44x zMw^7c2yP&3+1;{n^)cSo1!(~46kho+^-CEnaE_P1eHS-%=fzl}Fj(fncb*^ckK+NE zo9|7UqK?pIdP@(QEo!nFB28@h_xtID=zCBtqj=5&Nb}~77#%8Q3w^7YC%Zdrpr3dF zT}4Q;Ktl&|zRxkDL}vOVp~<08>Rz9(Tl~}~eZOtNpN|v2KW^)Y?{=J79c4ZxIiw&> zuxD#&nGpMMQuLr6#j#Z4{$7ndifTbKpGV2pV&WL5N5~sTkXHpqYlwRuVAe**8d&!S zHlNa$XwD~kh|4fhobe+8%?YEdt~aw$BNMBM94Qr|)PR5Nw*=6QM+CQXCj#4QQxo0+ zPwu^=EREcMttrt^ML}JejKcYU)RxaQo#JH|x(^mh^WbeK@PwZBHf{)SJz0(RvfLKx zGx`8@lO)}{u9Iv1Kr=rwNZc&eD3P1;&eF)UG4$YK&tYr38z)-yGCe$SBf5JV?(bDJ z(7LB~T`8#gb>YYGIYj_LLoB;&`a}6)ZPIrTe=vjn9W$5gy($g#&PtEiyD@}s`}QB` zF5wBP*kFO4llzD_RliQx9_ty^-1Izw^)z9B#jh83N+#?uI69;P-`=FqFzPMpkFDjH z2T;^4h*E6DxdRx90#(W$VC(b$cq8ZYg0zM-@0~u*Jp~Oz8TL;B=YE3}{DW|ka2F5F z;NRt-$6d+ zSvCYo)F~_a`4&lm5f=N|m zpqdt4gPJNsTTj?UC+1fiQA=CDjU{JZZ{si$QC{DEyBp4^UT!I?=a&wmrniww$U$_mAJL4o2 zyihDBOv@{v{{#6Lg2=b;TqnIQKD#YitNmRJ|BqmZ{!yvPhgSDSn#*QkyQcYy8*U=8 z?2GIDLf#t^M~QjWY>>M0h{2{zShFj}QW0CaVSDXz!2qSH(-gg0>$Uj@v)C<8XgmVI zNH7Y|--#eg*`9c=lyhr7)aLoPN2EkV=EFuj&X`7j7w=zd@frUHQJeQ!l0k3%N%PQE zR5#cNSlFbCRvET_@@J^7kZb4!%psT_iIYCb&Euy$qK88yFKZ>7d&wCn9ExpTemOV7 z4e#DVh|*#!67w3$zcVKpY{D|1gFV8scVAJng*Ed9Z8tA>#G*Txli%QsJql1v@BJFU zJeD8<3lO$ovE}Ksk*guDt5v~@oANT*dY=*@Uf$O@qSwjmz^A>F-5TN0UY#vWro$pa zC)D_BnNPWCf+q(AByp|Sx<(uo$yQQ z%$bK0LudIS8jK}%e1&3nS|q%XKz+8bJeTQ_+AvqbMEyC>8Sn862ieH2M|52_8T% zhFMfGA+crud?#KYO_bT?+5xA6Q+s^~O_|)ilPpGHeY2cbexRv{Nv~}tv)oDF;fl4% zki*i0c;I#;lIKtN6Fx`J-Kt$=w(wzt!q}k+T?d^qov_AFG7844eimFW{&#`WwT8Lw z5)bCDXg^W6Cpa%$2~@0Va}_lr$j6x$=M+3#AM@B=n&YAg?srB2-3?^4z1UY;lj)ls z7Y{jalnxM$#seVml5b8C1~x_~0Lce`?z;`g0K*)s%AP~;phUwpZO-H{R zgSj8SJcb@KYmJ$l<$fO$rad&9G3E{@j)^2EGU_R^Vh+r`Shs;;CW>=H+`3MV+yR;e zf+@ZfZ_xZ@U{Kd4_6ssp1V^@ryvKG~uE!1cs!}?qy=`v<403}Pf0}X(m?|k6v-oxt z9&?|x0Qi)l!Ip`5<8FC~hR=H3MoA@VAGWU1)rg*nWGFlSU-KlF)Na;(uF72{s6p~( zph6LV1*4U zu5wBdy>jY0suV?XQV0T{nT#EK{oH#@6!r2c`Aw(^LwD3lji%>olKM(#oOKt0fA(YK zdAK^_th>xMXogC7F;n)lFOh&W4c^SUH0$t;r%_Lu1@y&@Ba9iYwq+2&esz8!b3O|a z1iyS{v*OmDCM{tHEJh(`r}^#Q$4SC61w#wygZi|J8MxG&t)q1Xpmg7xBIECrn^N?#pI+-g3>9TqBC_NT$3&^7_Ee&Zu=X z%tk$eJk%lmF|IS4lk&_fz4PhQ;D#?$dovO`X!m@6o~8Hi5j0&qwgCtZ)M$%Dg<8bm z(H--<6%Pd%9Z#7l-J4vFdqi5Vh%ZK zpxT*3$?APb0FVL*Ek=heERN1!M;B+_(0w?vRAsekGW-cip|C$WwJ(aS*nYwGPSJwZ z)+(yoq$z>m8t{)MunoAoF zYk&G#U@sAjcvH6aMp*GurhBq~;70b7>I6&CYNN(gvU7jF*DtekqjvX8$$Q6?j-C~s z)mC-b$aoXh>rG~byjx9NedKvpy-Rg_1nGV7@8X>9^;aQA>Cj<=NLD5&Uj>{PHqsu< zw4LewMlE}0haWM(t%|Cjw!ereSo9~HV&;*_d?L;Xit`OgFU`M00B37M9D~Lq^No-% z2=$L|tby+985tjvDAzO{3s!P9yQU$f=D{CTZ(1OB9(|NX?x3FCNiP)C3SE@CPc$i) z3>7&b1pA!^FIj(Ef00%*Vs&-FHPzwS6reGG6vwCG!CF`(QXc^ExP2uiunTetbLXX* z-AMgzuUbEsW@$%j=UMu8C;OQBFxpTk063x|&h7QyTcR^7UB%a#rs=t-HNH_44F3{w z>d@yD{Pc|LM?4!4Z*9Zh<-wcj9jonUcqA1Q^p^@}!)b)-&VzL#A-Hlp3UByE>I9S=dDrZe@b9~F3P=Wv4--h zz|9Z4N#pAjHb?TW5RT|GRQWqU)jZ1=CG40%o~V`f>}_-zULBZ(6N|co(oU)gD;_U* zFI@Vp63HKc{e}AV^8Ph-7;~SMXRnC4^v%1C!%xWnHNSO~I_?lIoVt-7D~OVLiq?R| z4V$~aq8Gvt3;$c%d8=+jiSA@J7tu?+g9G~TR_ZOa{l(Y1kljfCh|jGZgvJ1bpqIVNcIv7})xA1Lr6ERFWny&~q5-B9O z=oyhbyO64zoSIWWjkN7Gx)Fah^eX#j$z{$4Xljc2%u()e6_`AiA*)_rPoi-&Y61H+c6_1T>80l4pCah+;H5A zkG(=Or#VEYKMx_pnQs5+>RC^|T(w*}6RcU&4nCPyhot6%EBQiRWOy@JLFkPD7|c>NX;2rHe?H6>!90+sUqkXK4f!~kMXX28VH zFqW{X_coU%1jS3#_@jKIVD`zw?`dkb%ck*v)w(3P{hdXr`+VRo(zv2h<;7f19)bwY zMbCr83JI1ZBQLZ6)b?W6{5sdigNT$*8t0$h2(X&EOgzCk=}`Efo*?aA`yHPvQ2WI* zt;J4A?$ql1;@L{*hWh1b2W@5EFnIi80d^(wpdb|RLx?uKs{_(pI1M4L zS?HdB3z_XIS0bV zup*qr!<`1(u&9&SZXi&hg2l2mFWTUQI$^9g1ysPf;!-8$;zkCW!?nLt zqs<^2XC-Ci&JK4)3zfeM6B+EQ{2bj%vd4{6Ig1|Z+4!C7Rqg+}$SbyyAKFqutaO{S zQrpE`vOi?!s8nPmV6m8nF5n);M*v*km3O#PO3$A2h&}%zL3i9ug$?%ie!G0C_>hVM zJk=7hXVBysf*`m-fK3u#dyuot-`x}E2LbrGQPzqCpbWBkV+i8w*GTmidYxoq&_9ku zcfm+M!cWIMI-ROTcvF_|KpJ#n89ZaDgajDb!6M4-aA^}-OI_JH0(>IRN(QP8AH`~) z#TF^Xd7Jm63oD%(pB0~NQW7PmK!SJmO?M;XXLGHTYz;_I6q6FyvRE8}Xo&Qm>Yj5* z3p2zYB?KX%x*`9)Q0TWnilnreY03kAC3D`zt3Kvn6mV{8g5qfAng-R@v=YA=#R)6} zUF8{nDB_X`G>S)rOZ?q7eNT!JGFA~E=q0paL)K?Kpn<+GxY_E^wD|JT1vK;qs#)Sf zSib4&3>d7LxZldM6$x;bE}{g-k>8&3kVeo5ZmV27y}r$MK&(#75rz)hmSK$NZxmV>IJGZ$czMq; z#{tgV9*se5K{b--VhevEZh3C!-ftfz-n-JuGek<`#`uKqs}FaGpfUmhJ8(|DR;qvR z5dI)=+vx!s*wpwp0Dce`lV8hw^nOzl|;yA6Re{`5QDIJBM;P@n$jgj8$YTweB zjy>Ti`n(k^_P%rIc7UM;akQtpy8A}1v(hb@rJ`6s1A?UyC|x1^4V zF_K)y-vrX~m@P$PR{YJg!;_z+1F1cV)W-+!)HHNI;oq4X2VAsEnv4^Euz+ExZ+*t7s}KQV z8jd#o(7n>6dHW$~t(p~@LBNs2MWip)xgK_Opn`$~eDWYvW9o5$8tXAeV5#9Nk!1n{ zhRYqP*Hd~BPaZV?D#T7yM!Egq!E`I;whp6|ai~}VnG@pheSEZ+@MAx}2M}&Pgif>g z{c+~ZdtYpn741LsZhH+~mHF&>XVCvVGIpkO_mYGH%)9H<`*#Oa5`x!-;f}_;eF>#! z^=Gqo+JkQU{)axeipT)6aS*_j6yaxw)pSkj{O6?&0KMmT=cCQ>$Z)yySoIPZxLW#1 zVjo`DioC;J`2@80uzD7=jJ-8{Ln~w{-Mv!hgDkY&J@;^9h}Ujr^EnKdFAj!jmb{u9 zZ;UFE{VZoCK%!FB7`~@Uv%@8mu3*0QLG3QF0)yre!C$WI3;O5iyvK$td=E?~c)zJ^ zCGwP?zErnarS1k^n$d0R7{xLfB672De+nDeOVmr6j(ToYh)5y8d--Rcm_R_3?xI!0 z=R>cLQ80tOp8;YsXHu0`PVZsG8CcYL2-XMdupPIH!7m8FrPN>`M@P7sR!Bi&B2UV? z&IQ@~cf|s~;kO?gP_xE&BqWLppRz$zHJJdXhzCCeg*vy%OYxu)XXnuL!2TTfss&@> zR2Uz0M^>Tbb! zupX)YDd{6I*!e!bZXuQRHhoBVugju(9F7DlXeNKjJ838uBAL*2OSC}PHAsn0v(O(a zm@d0x#-wB$rtpzrxIzdEsEy?N?dp2()AW6e+eHF>u$*^Mn4+li9^G<2Ias!?ky;0} zoTOX@IU}ib9uA(uVG&Aor@g5tlcn%pf9vsud^Vy+g@LuIF*F3=77z6a)EW3k2m?tN zyqn|^IZ(U2Ry{X|dZ`KLDp=BkL2z-Qn-^isV58y7IbxOD&X? z7^OGd{&&lR*pvuZkczSn;H+DwxV;&wdex-`;4jcW$i3>4L%LVxyQlS>2J}~Aajnpz z0NnvE|I81?bY}gfh6l4iiLdML@nJ^pfK5TT2{ZcQ*Lr92T}wOYkbK`2+~EYe6~EX#2Evp}8F(XUk=|5VtSl4+L4qXjdq&pt z+bG?RcFojHPDy$-T2gVhk%7d{)y2AiHl8^lAb8Th)b_VB!QGD#F~H0Wbq!Is21WRV zblO7{-#5aeX2}yL;-hrF^>rkxpO@-KlVXbT*|2LA9}5npQIZa!Lkhx|$F}Rb27{?@ z5Cf%K?)bPz>#CiG78E1nd^{97sfw2UEq(yKEmaEyuOLyIJ*Q(+T zD%iGSZ3$NkdaBVhIIa~}MYn=-yj;<0v|2&TU~R_;-JaApT1!wZVZ2N=8{@eMUu1=v zm7&RJYop)2h}2p|V6v(hvGhYda>G8#Fv>3o;k^-B;_o;(_H z&}jNIfQw^xHm0=%51zH)X{#dwR=lm{9vJH-{Dp0aQ*6d8LhB2WTuTF{omCofm1WEF zvGs$2(nmnNXd<~%7-muewT2wd94+7qh$0UguhWRFJgODiVts?g^V`s_vm9~hb|GPb z{kV95hc)PvPE))sosE+Ai^Az0=8}d70-wf8X<$HTJ~!-B z8xq@}$~(LknWpEO8z0A18CrF%wGF;zLA@zh(IIzVr?^TC1@47v?yD#-D23M5AcP|2 zVRL3d^O)6ZdDKMLfuD$r!&z{DD!x^u^G+x~ z-IfCIw_wxa&EWvSa<(@DRVuI3TC4ct-ii#@B9m1|kcRIhC33hLO zWQ`W_G9Cp)<2TmXeDej($MqjB2ikG0lTH}W93WLK?gK3e-U_V@mgTfk=<2IsdKg#!Zso#t4E!hzXCj<}1Rn&QEzWp&w|$MMZ(Yz~P0<+|=E$#%BB&varL0i~5A5wr+wJtJ z@5zN~Q1JExrF^HQx*iq9{nm9}=OV21zYmtaL`{T{^&ZyWFaCJ_JkuD24mTf!Lqbxs z8(uj3xAcn{cQNE{DZhax0BVe0G&trz=;1|3&86y?CQn|FwiKm^DD>9Au;MJp1k3Mu zFbHzoo!vB5lan2`ZzeLP5dba2t-FSc6g`amk;8*s70`^5$I!znaif+kyE4ELcxB}! zVNtS2>PFEUIanxwSx~9c*iUBewu10h=iz8vp8KyQzF;+3@mjex9?)!H!aEK9iNv_C z11lO1;E!8nSDiYno*(N1r8%wTEn;u16+?F5T)aok|83c;N}n zgaM=YBE*60h7gPBvgJ3R`BF@Zl#W`7=G&f>qbF;+s-hv-z1*O{@?Zj-^^in6^0!aJ zCKQ`-DL}l2W$>epEvxB+kUimjYhlrR^PzOS&wT@;_+2K{&h;4gFa_rASTa~iI_ z6g9rl9VMNQF*cjIqDO*8Vs@#f@Ar~i4lb6Rb?7pnT|vQudp=Ux&8bI7`@G}V;(FjvMu0jnV zDBkK%<@z!mB=DN}GF?lT!JpdlF6cK0Fg$P4X9IYS(-7yN`~yy<=EHUJK2wBvsG1-!`y;%0$J)#TXNZXOml1WdskBQ5YO0+ z7^Fqs?gHTQSLXbWOAvr(mmT$qnX&n5PMe>eh3LP7W)Iv@8nsz*U)9%h{&YIVZ&k%P zcQa@<&yLV?r}UlF6~o+#IJ&|XIjER2_UOfd#utpEzWVksuTQjh{nCj4o}Lb+7CiA| z(`$BsT3dI=S-SG-XOS#n`Rf!~k7k?Fn8uV!J(8NMbe=9hia70$#LzfpEoPk#lsd^O zJ4oFgZMx9wQQ36zgYwr{PL#w<%Jh)bX>)9Yma1eEX1X2>U~nt!lUz~2fXB=8%Q!zF zV%||J9MCA~R`z&=j$zuJu_=`~ez3!x7MCFJ3e*pJ4&d_q@``eQoxFKifw&2Dbe;}9 z1P}15;ZB8DWC0+XEx4+BEwSLn_@mxUBmnZ~Q4!_-Nq_gs{E7_~A2Wo=Ydml+DNcNK4& zvYz>r`95)fU~m?h-XgxG^|BQS@cdrIs%dm%hO(T)t5@@LeL@F0!(``p@JJvoFO{ea zn%8@|Nc#h?gfvuiADdA9Z}Xo+)8CypxJG~6>MO*AA(fVT-MJ8++dnNfC%liSBQ1Nl zb$y{m26K-rZkV{7Q`?1wnr%(`E~msyi7CvyAYY{0-kk#2o6eY{fTs=b_iMU2zCWOW zj)5*`-1z$!P3ZT>z*Y%of9X`p1X`Wv=w!Z!hjMQF)I~t=Rt3)=b!0FOox=an(^-gM z;7W9^i&y;VvGpIMkVN#c-*!y{w#^&oxS5dQ5O5nn0^M`OPxa!S?sQ^W1{>B|jq*%s zMh1aq=#lb-pi$vCD1s9L@cTYC>y#K5KU8baGI-_)~Pfejkgl(4`dJ+p= z{ zV$GAV8TuVlahm~>w*~Zk4-Ap@vRQ*9J(Mw$9_wViJqRioa)YD{Ln7)Ygln{au`?U6 zIl_RW=4*#3_iw*MpA4YGGi4yQt{fBY2)-c>{#s9-GxP`C>Gk562G96O-WzO*{~m zgaC+Vbb6n@&Du#>K)~zvG41)th6o>jdV2&JHa1UQ0w5ba!}19D-6*0c(wIrTZzhMl zR6suU|Ez%QO@HS@fPb`DIqd0u1l(@|kw9k5eKyUZuvX zjZRyleXv*!&4{#O|Dri=N(laBP&~b=XP%*wPJ;SJAb9K2sqaULomEoh{F5XaeA)x0!u}@6|)^QAL^U zaUc5a&~ocN%!ZvJxwMBPmpDKD*Qs4R9;B{Oyy)U{vtA2lL%aScL~BI({Q7WIc7Zae zwAj2$gZ`%m{EtH}GnQ1_Uy}Gy(J5#EZ`_CA%Egc}hpUM8P-xQ~OnywQm$Z0pn6s_i z&E4&p*TCOoebFwG_}Io$wqyGa_i(4==IlnZ*F45P&D=e4b2P zrbMxn+1jFG0*N9+^8|Dnt~lNrVNUZZEf1bp&`op-M!`TOYg$ScX+$n9Zn5M5hGI(3 z`Xwu-%b`KKz0BgP8B06=COw)n7YwVvBcBYqKECj9@av*KudM0G=tyooWBVQbTgkVk z;F;QxdVrzDiQ3#eyr1Ir{$O!-^Tyb!xQ)$vO>GPFW zuLlz{N<-m7$P0gS%m`GJ$>DD1CurVpCiDp*1v!r8X-@wK53`IVGq%&?pw=-jvw}~9 z@*|hjn~G2xi1*U|EuJ`}-0adBd6gxt?8EFxdth0FRksKao^q#imnFYfBzf^r|+9Eg-Iy;h19zs7{ zedjtgDI)`2CK}nNZJw=<4+ZY~evCQ~aP7xeO*;90RLC48ZogQ6L_}2^Z&!a7KbX6~ zR7s!dZ8t(U*e4AoaW+AAiQM>3Qh9F=aUAbFichXs#l*cFoW^O`95I`;+H(HJdvxBM zVYPi`mC$$>`a-;eTHL{fyy-n$8Tl*!jYt!l5K86qSac!_e& z+8kajvOY7S;}Nl~J)jth^m1pKKEe}Sp>|-tCzSqi0B{C8_e}xav90E|LHN`WyoV(e z1|RzjsAn^G4Sk6n-3@!lTi!f_6a!B_t6d5LUBU;n$Oab*JEBgv{OBNBUjMz`yBl+E zwBkCO$AT3F$Ax4VlO#W~gV@@lI%lnszjvh(d`WyU?;Z2~ zenLWMr$hRghA?yKJ1C9!62pDvOcmWOa4zJCxD+aGQu83V_{a0y>zqNuc66 zCRNN}k@lwT&nWmR6>LY@X6GWg@>j*_wN&!&Z&nn~np2Pe3#M;C09JAGYWQ%D=9y8Oo zohNQ3wD_GGe7Lc|T6t%}of3q7J_}S2sLr^Jc9>$W61=;i5%&)?+y7VG`F~amzg@Z^ zmO&6c29k&3q{Qfm5-I-D!X_kJC`^6!G$^t0PgW_obx_-7}0Dw3_SDJ1i zWf9I8_-CTSO%yQyMFny@2q0ma7g{O3GqlotjOO7;Y&DIu0-34UT9fM^cbn5zNXn>_ z!y7VtLYQ(hL_q?oKMv5=n+A#Ij~S=GZ{9C$pR}asp^3(?=iDB_k(Q$Wu-|)I84NAr z5h9}g0#f5GPIh*=t86~KrnxGd6AU?!%K2_zSF#=?Ds~ooJ#tN<)f(d6c3Yp>d`2yk z_-T|?;N2Hiqb`f5vyWiZ6)^BVkAvPmSA|fB1P~-HNH63$JO=!e^&Pv1Zixo@u5dMs zFvpLk?=nYzKyF}XdwGW?&NVSt?DQx3d z9ERa5_;}Ak=;RlB2WwD)taCAKz8J=URp;$Y3`oAigHxt`2XG3a5l^*pRn#ZlXKD5P zNo9A9!mV_mIbU9e=2H**{YUzj1N}EoX#oMS40sPN#ouC?uzqBK@kaFOL-`UGmUVH4 zjZdY;h~}d|r6WsN`>|T->b7iTvH)8TzJ(&m$|rA) zk`^k}LJf&Q2!?QzyUQk!l>p6-LSyxjkWedti{^dffL{B)F#SJr`tw5y2x=dwE)Ii(7NBZp=tWG*b-)A$qf+r*pjIs08>j1y&2^FUVQrobxITn!=9^r z#wy%Y4&i7JpwOBYCAE-tzd!%an(!n<;*ZD)5b_t0+=W_y&Urzm4${~kY(x^i<=H>; za%Baw8yFOe^-oJ!{|<+}bKDt>Eipvs2r$K;d5Uil;BaiGu7wTM2vJbj;%&5{yzj}? zqgB7H7od68k@x(-uUD&;S{^6DZsLi4HzpIx8DJ9y4RWJS#d6J?QW2jjD%(sxFiRaCpi z<4O5CADUcNJSzv!RDBs-K(?(Z}y3G8a>2*ah z-c6l6>w6_fo##?sWh+J=15|m#XgXoTx{FCv*iOOF=M4Sgt41I}yuPSx=i9YSPAy2p z-!4EYbPAqKL`T5NQ9<#8lOP)MI+fSHbD_u{L<|QqWtrow$9ErJmRtBtG;1JYLt%)~ z6*RJ5_s*(U@QT31FZnwfbjI+n?ml^cLyalX#E?uAMgy9~w}xbpTs01e4%Z<}u;T49 zK&%lN9K^SH&_|0k3pu%qZjIWv&Me3&3)`y$7NWdjJlJ`AcRzJfi?4Tsi%*?&bUX36 zm+t0K=!)<+SsmxuW^Ip4PREi2F zi186+;O+laNw*3X*H>X^N?JkzlMTx5yx7B-!7F3_WF=>xktdHQiY~64+Bq2Yx+!LF z+@t<_&L0L_m0V5LxHl!ZJBc*CHZ-8z;|cK8jQ3?87wH%nRu^)SS+?0kbljb_yRNc2 zKhkzxM^*D!$hsD>U*4&ZRVVwpTgw}a1h!o)`?CK8ADqXT72h1hsNH216)&&jUu<U)0MLkCmrY)?OWj6p3?6uTboEa7+ecWYV2Il&u^Nz zJ9tt!*worG5xKm*J`-Aeh~*W`l}%IG<{td_neTc===%yJ})Kz*k zmpDt}H8<*8vgJ!H{-M~fTeWx_^jT|EKOXV7x}sYnwhqMeU2lhvmGG$?on@qT@}6y$ z@C$kp=B@;se|^Md6w_`WJ8^T18Q}4t?hpN%w%N>K`u-lSc-DCJj^-sIaKy1-z@9uF z;&YT3>&X_*dX98_V&(P$9~ZBkfA50tM`w&eWolXK)RJ+TLaInoRQ;E*W~=~@kVcVs zFVRacuNnP?e@y{vn@i;REXogc)^9%Q<2Xd*Mh{jlWSaOWaZuUv-hM3EDArS7YTJDv`W@b1+bKJ+PjlTpr`Hw9bcn-fM>=)s8Rvyo?e%_^i`OJqz@I;ygClyD zVqh<+0>8DQlicW(uX3O<-Ynq7(_@_@tF=dDKZ&k7!cI88b;X;f%wSjk^kK8g-g+z( z#QN}?R*HL!v?C?D77Y{XGrYBd;e?}mW2!e z|BPn5`~8pcIQi5>kB<9~e37@DpFXQ5J-`Rg`-FLP7j`lN`Gs9$+V@;(p&!@e#7UJz z2q;JWu$N2icA5Cm+7c=s>P3q#qNHctP}hj~n9O&OEUt#&D0(^a5_eLpEVEB8?lP!_ zi5K6^xzDz*wokyLGckDVHI0h#oYoFc*@x@fAQC(G4+LL52IgfwXEvh|j!E6LJlU~8 zvE8TcqE+Kj;@SN#H;ZezCHw~if}UU0SxeB;`sP9>Pxb`r^;s{=Ty~tvDXQ?=jYq1T zvIpn@*y`-@Y?9e-%>LT7MByR7a8HvBon`TyBU=|PwRLBGOKrzn(Lp&sdB?4v6!79J ziF5IMq*MN5o|Cx71(#3fcSb|MK6DQ1Fj?N+%#@*aeLY0nLj;S@w^ZWNKA-_C3s!SG z&fkm#0fG+uOdH|fU^+wNdr^Q$el>1^*TJ=?`u>gPXBv&LdZUe!KS3r?6v461V zkY-3q99sbZbKRtBMmTP-(|U!vb!!|y-#VvQ7nC(M8!=8f*lR4iw`i=EYJQN&c{x)G^O>r%i+;m9qV>2CszC4R4f8{AF}x@ z6H}#?r6SKcP^g{cDSWy9zipra8!g|)*(TM*M)l3#-LMWA>0_?{u`-JeP6+gzoGB;w zkDXY4wPpFID=c}-!E#(50TeCG&eHjw;>zcDgdu%@wlRI%)+Z4)>x>C>J4*9#BbL-( zfuU$^??+85zv9Vo0XWGqyvB-S(#)HR3X~l1Rtqp|5_t$@S>jw!f8$?TF34ljSP|jC z+U#TbZVg$Cv^V49QO%oPnhmIH-L6AJy%_uqF39}Y4Gj$G>~K2tPQSk0_0O3Il<63- zvxEUNFTNPN+ZmgWzXT=zyMD6tMfkm|Lpc^p;pDDCzmE*rXDVKAj8z=|ruvCOlEl%X z?80z=+5{q*@&R11%)AQ+d-Lw{B$*Jk9vyJ@PLr)Z1&Z#x6!Ml{6K0@!z^nf>+pOX+ zib`sFXz2im53{$gH7OirH_luwBYYzG6{+JAFghEhFK)#^lfajN`Q#lFy~N`yEyKMJ zGGPzCTbQ$X8X6S#!kRNto7V9EKc?QougdQE8s3Kv>24$h1yM@6Bve2`X{042q@?Q* z3W%ggNP}2(cO#u54bmkI(sAC6_xJaF-akOR&W_nLYpq$+ir4%2s+SUW)37lO<}O=5 zOJv%PcKtzgkL3wR3 zmuEsj1`2!T0$P%$q0HyPUbWUxEH$CC-`A55gcv#~$CCPGDyTh^RM_Fp6B6moji}Qa zUm#m)X10se5LrAJv^fwT*ezYK%vRP7RnmrTDh(&}bc_is$7ff0JtWTdNGQHi?8Lje zr6ND$OJGtqHHQ`SHuKx}wUaU3ZaQm7U5y6D z)7v+Q^ysE1;Sbo+B&~vC-`f{g)GaA$^DHv0-LPb$)ie?lhnuO33bTRik|qfm z7_A4asV8R^qI9Dde;c{&JDP=P{AlEd<)IYc4H`4x6IUigd(uuuvUkAP z)1XrOZa&xI)l)4B1k%@(f5Vn}+r91(Hze5^&V0y}Ai>oZ8PGKBH(%QyNL-+;DgL z{Pir-$hXUUg)gn9UVT3@Q$U#P>hV3SNDHe*J!N_ce_L0}kDAen3ui1oS9zyVcDkZ4 z732Je?1Zun<8Vd)^9g~m{MO}|xTKmozF|Edh6DaSZQ5m%oNpey;K;p3tyUe`JAth_y|Ck3aegt0=)U*S z`MaalV)1@C>cfxB!=cM~DgyZ2XAa$5K9XE{7&?5zx$D&8&v-+P^@JQ3K}TZ%7yrs= zb{wHqq(qDDX1&fC(Ybd`cOUx;yIJHqi_KQ+`T7s^7;chTW7B@s*~OI1(vsB?xAdnr z*vU#$drvbrCb#1%GNN<-gO{%E!Y`qL??1opehK8jQpHK22z(%Av{eL*hwIX$^=9Ts z0rBw?VaZQ>OpX{i{oB@3 z1aaH*^DBC}J19&k-?07`ha#P3e)TT2%l1gOW`j9_l3Mh*()Bfw%reJU=eOdMyPN4| zg8J?^@Jh2y?0ui{l|1&z(=hAb-f6 zk4=m(x=#Ka4C-YFAL|&eKE%qMw{^5(u&B^j$Z1oo)zl7X=W=rJGWm(LMa6CGE#i3l zZ0hu5fCi`)GBzov$`Ps1`*pC!?hnn+PeWhth^Fp1oFm6kl4Xm-A@6(g)#ueA?VD+~ zzW(E_XVIst8gBFV&s)#li})Rt>~ohpZuAakmNg}tYA1JVy)=p=XZx8e-tc!J;s{HE zN_Juk8xsp8gIb+^&%5w9Rtq6I8!`{O9v-3oX!SPl*3viaXm%Prl6X zh#4>!XLVW!=*JWr+)&(f!y*-jSi&}U{e^-0gxK*P(lEQ@h6?->-eS;OB zW(!lreM&Kk5zk=gQ@0 zpEt_K6iyFu)VGD|6l{u8T89yEV~a2Ke?kNqev`S>S)+9-9CPr00S_2A@pOkYuSa@| zl4`^{UWlMBtbcebEYB=uB!gZ#b@^$rY(!Y-=(a`)y=%R75>AuFQn3z<>j}fpP{(| z>6}Y93g~73Us!?#XPHt-=5ANmP_Q7d>dPw{Bh=^O(xOYOVZjA|hoT)L?jVdc0qsw& zHw1vVgzty(`ZBuY^bI{aM4GK*=ny>|ffHsI zL=~i2*|px0vMUN_Q0*hnBe3ay^&gIY6*^%40*4=lkEW(9-vv<`Wv1;~Op8*Tx$HGKl6FN|jDYL97=bkUM zzeES7=7N?-GA_2)J;SMd^>s}Pf2Lmxem6`#`c04#6R@l>?%o0pvwmT?ut5imoeu~Z zVgkM+IZs0Pw~2Cmo8pA8vg9}41iD<=Y*E;Kd8Zsp;bwKNB+!ZCiy>cYR|XB6gtOWS$&|b0D$-X$D(Z77y2!^`Ph{D5Xd*ZQRa*Z z#*Tj8hl52Rg5%*y1|E)6&%;KW#fYP#mDiX!A8W~q!c?8MOC2P~ZOkMn_im z`pL{DGbK(=DUk?l<6+#Xq`mGt%4*wrJ7nh2Z87zdShI6|K%JtOpi7if4?c-k(MzR5 zU**K?G#h$CA46xSV|V;&>&cT(MhaZ)CC>-|p305TkI$poF~oUI7>w!%wGoZu{S{sm zVC-T;{ND#c2rAUdj-IxP9P$V~w(!9bW#AKriQg3KZnvt;a5l33L9k)gAV>Si)s-tk zAen10Ov3CHHa<(SZVvdV6aS^TMH-)V{fK#@>;B+y6jt^pQazXW{(A3!M->TGr+aPyLrI zTrJJLNxOCx|lW;Gc*&s4(<(BYz&NY%NE*{6@ftZ+`%D1+_pbOju? zv;OZv1_KSY^QCn>=pfAAi>g;-xW&TuF${rwY%tjDp-KJ^z(;_jjjkYvcNZ(w*;MW~OlV>&yt+S>WhAl4-k}g&!IU`yaK(Dq7mMSxqgrJaJxaA+E{T~$pX&hd# z)04E%dr=HqH@qQOFuo00-~s^l;&^;F>q}CCPK0XxA!{tHYjy7(mSbEG#L8e)hVmz9^b?X;Nj9M4aIK7HQk|AR z&3T#Q`etKy$n;+hM%e!O?@56&Ue~9yH1B-8@jg!``oKY0E9gi9zeGIq;0xRxcz73k z4d7)Lh!-XBt*8w*v(HzsF@ZX`|5okVi{SQuJ;Tu(Pan7l7#$Wg>>H9a1l>7mNBYYY z_#5T~7_tUyP4_+^;ha!XOR6HHd7yCp)!@JBuEfCMeV?M(uDRLk2V>9sByG6c+X>8% z3+u@jY{GVC{-B9#MF*x)eVJVjkb9O$Wse0dO>zd?@y&yzQ3ygxlWtyq8n z$|)4RIxrXDabu+XeSD+%NZz@jOyXYrH2XhJrEv!V5NURhU}1^IfWyxNaRXJt8Rfai z8O&E-c1fH6q=gsV6S<%2IV&G4*LUA{_DhGjB;mKSRN3>9hU?bTJ~&36bO9?y@+6=h z4{VJ;1dU;EW>~Ekwe2q($Ko0WsnBbJfuLcckdA5Q0$Lm}L66GX4PpzVp#qFmaGKi_T22c~n8GxyCDF#m6h z5_G4YpiG3`z};qn8RJ(xWDP?4_cWdQV}8 zL*LSkuv~?{$2nLM`OQ+B#I6B$P0~#qsU{v|{=cXyqlZ=Dt5cbPzrQ-t5{QOWDmL3$ zwd{tU#+@-SmD3)2Z&nZD9n5*#%)mH{!N-T;cFJYq4KYvRI;t&B(%Utm{SnbVwaZlaBvwZl;t|ULDfsmg^KAoy z&k%k75+le^%9a(-y3jt)pUygqXB=vJ@_v7ZU*<#Fu@~~ixr`eC0Pb#SXX;Yr~?&IFE4s2 z_fL8zsIDR;iwF}a#6Wg>r7FnmJpW~}f&9dSC@yFDT5XfA=^|aAnN>0Rkl{7}&m(jK z`eZSABt9F~k!adu>PY18#Ya{Z40(!R%c!FXq+xU|qbHjAA7lHkp7}dVp*Q>Xh%Cns zks^KfZ1R3=%6BrFRXDoZWOTmdQEq;W8CuCBh0xaNxU}!Rlr(3DmjDfL{5HhTf+@?T z=I~@##NLhM)XL86XaE!R!jDS+|NR6Q&KBuIpw^NlnjRfA;pfX77f+Iu9ZI&^dl29B zO5+zfUDF@brR$GJv5o`qgf`kE^dQJfSNqO`apz!lsoQwBxt>6Z*_#CHTA5q-cY{FBGuw?@n=WHsy%@%}q))Dj{FBYl@xO%%U_8ngBM zcUfOuBtXIvgeXD@D!L{mcAz&!PRTox($16tV!P%?i-cx zu5=Z_E*kuo?tu+o{(HBsFmW~25jL5t0_F3TRwV{lWPJM%F%CjUsx{D&G;D5nh@RZ* zGNa7=HcKt~J?pw%pa1t7%4$X$FS;keBFyHV?}wjzrCJlrD2Vv(d2T&;W(WkFBXpOZ zFdz9aABZr|U1vU(WIosGcRqv{BR2eDc&k@K(xM|U?!8Ep`8@?GUf5kA5(;Bg!Y>0w z@>G={FtZnCK$GhgQ~d84gkl-Poc7d}Ws^;NNw=|Fd76+D?|%gi+=e$=1?oh3)iqLk zi-w-J`sU*I_|HYdr&uV4Z9WWe>Se?UI*qhmxY416Vqkahcu)V17ag#g`N%%dxw1v! z!mzSRg?9UkAI>;(*?s_>JM@Hed->}2vGPuig+3>3T4NlO=y#8k79 zzwr$(4MfTO%;z9(IJi#!K$&SrB2eY^pIDcNVmnN&w#N*8d9`%WIomQlZBon!jY?mY z^)Txcwx$9#|M!>%$hAK4=<-9_&-0_a^=PwuNmq_ZhFYg>XF`pWy z|Jb+LIK2fb1-P&ZY6Yej;5fq>Uxaz^JE(R5>29#cK+@`WvUXren%zSFu<#dY@JJIM zw*J_mx_z$#`7s9Iyb8n7wlvA5u^7zmb7dADfG;w#X7+r&j1%X?spA%Sef{aNkLcqU zDUAgI$eJp|B$;~Sr)$P`G!Ae|hu~Lbq_iCnNM5T%d~V`5B#_8X>8Nq8b3-7z;~LWk z@Wh(-Fby{rjoL&`w83?4M8+r@Zv&>&jRcGH8ve&8c(rnp_<%2y_q4M>f)L#OqQkBZ zGaq$GBoC$!iP`!zgt~OH>p1qy4d!5yr##w+{lQHN1!w@<$lyL`gwWNWGs*v+RH(rU zsiyr&B7m|EBlPhD15sYYP51>g#eC8O=Q#uF4C~%t#}5&=IXYz-`2a186sgLGtio(; zbDDK$5VE#KSA33?TX4FYZWooYb2M3p2gom9(s{a|VXyrLAfNyv(-*-e(H5>z=~d%^ zr&iS*>s`o-r55YhaEe#po9c59TUw9p_eD!PBR0%R*SP+@OOkMaGC!B&t0_f#PrGl^ zuI_*L5bQ*n41CE+&KUT9=W$l;OclRo%s?ZQ`ngj8;}7Ie0|DCzS04R$D@Z$kkNagY z!n_H~W%&#s^(Gp{4)1rP-`Mo+f^!J(p6McQTF<6R&&E$35(Oa&obPm>U^a$&ra!cP zOYIPIjgLSvO?*}pq+fR9%nj0~VuAbl*rXy48jy6v!<$&otELW?unMqVN}H@A-iba< zlwo>bfQICX>7OeRy8$_JyjDz*#CZNOZ4N&1Ng!Q7cxdj-{4iwD;s{5-#K?h9w{(Fh zrM%w^NJI7$X6P#Q6{%3vf`B!UO*I<0=DPVGoHfN#kJlL207dCoK15C`4R^+%w7-1O z;%`Ti1U|rdjY0GVy`VKIj*^=b!&L+A3mx*xYv84b58jLcuigMN=fw7L`o&O;Q5Y0Rk=Qks zEp+MzN|9cj`fF(5I4$V6p{>`3mwE)Mr(ItH3*4oidkmP}|GfNH{*;TK=V>EA9L_({ zNld}_+;`5z_>Z;px;#cx8(!+%{5GHBVgsZnlI;$}{P%f;&h$fO4!m(?3eZ6yO&EP; zq|N@(^<=7o^0NW2F7^)kId~s8UT57sT&+U~g#(uZbXC#6@*1mZkO^o0zgGO43y^v* zji+e3B_i!wGGnvh9`Huur|p`|4a4-JmbULY9s2}weV_xT>)zBL_VsfSXxy+;q>;QY zd^tkf4W!pR0dd_@ZOS{@_fV|Wya9Z8bAN{;vvYxteP9+8V->SkvH=Pp*`VCqyXgZFW)c#Va)e%}r zV!l#9|H&<_i?EtN1h(0j_}@W8*0?ei^U{0n9K=CQapnzUvvnvhJmvwA&~!Ye<%9D~ zR=Kwtj+H-hw)>ej>xG?-9$3k5erdX8_*eUM!~sTt7fG@P^8!SNhIpt;q?MiRad#|i zh@jqaf+Jj0Q#2dSb&|boZK$tOlB-S$N^Z113^dJQX}jBM+Lmc$My zsr>Sd5ppB&u)~w@v2*x)@F5P-$e}N9lO@2`&936SL*A`K(A+S2M~^Ov>C#mPfO1<| z0m#wtfdQxf4aI069qotrf9ud%Y~Ur*p4A>o0@!gr3Yj9Ency4cJ0j)UZPY8d&UK)j zQp_k?h9R?Gu!usxMkKF2wApKBdqHaOWvIl@nYxk z+zKPZ-O*lWdgM~2bar%n8&Y51vM2NVe4~m-BR9_FW=4Qf5!53R_tV~!1e1k#7m{2q zbw8AA+j51OVU0%whpz{*aM!Ng4n`mqEIihz^-yT*kz;(v1y@qxe>v)jtuF%=tzjm-PDvCH0~n zw*8GQ?EG=2uZH$|UTM3xh>tj!Hx#aJtZjKtmhA4HpQZ5|hQM@+hGYRNRO@XC_CLs+ ztXhciMaCnZc~6QFq9N4-`;x;jL0_-v^F%>sAMyPsyY$6}#ckIM!gC)5jK@b(X4hSy z%C7C7&&)7)UF!N`yTms`0N8jKt2Osy;aQ?c3mVY)5kl2TAu{UJM}64CQ?o7`d?Xd- zb?N!(Uug)#2Wva5?yNLPA)pp)ydq__g;T2e5i4W_NSC9;^0!e8nsAMbn*9%bGvcwf z1P4E1kxu$cOdVM+BFxDAgDbZ$c*&1l?(XcDKpdsze%%yvL$GtqMAg}6Yr&{9$*3J- zhb7yU$QU*#TuM^pq*=dLd{cXm zTYVPFk~kE-CYjPqPDB`Q_c_;|UaDqj9>R7q$>WJ9VRp%<##s;rqp5Jx0m%Fb*Pc4X z=k#Xh_wtoV;_+nP0F1Hj9LG?vnmk0i%(sDK(R9L zDjSg}^Q>WOIW^;l^yL@nQ!eRqqsO`z)Y^d>TtG6@M5O@K8fhPj*7E*#^?6HX}iL|1uYIZ%!S*(6`DNUc$PC7 z0FX!Mz&wfEW((CbcNV=wTKH)y&@q!}CqHmVnAC(8!gshj}MJE)I!O;r1Nu(}Kn`6Iz=4nB3?%`kw1Zm#e10Zrp*Wl9^8a zuDTl!4DAIHBlxrXO6g}!EmJ;ho$+8NKrL+-f$cWl&R2Hud1$T9xGgMq#!_~xrP)<- zSL;_dGGA_M)IIB_C-c@F>5gHkMY_sgWynT+fUNi~z=`f$K+82D9rD_4w3YIH!EjRt zLA@USdf_r;A4SI$bv)j{+l3D9Im{f-juLK5dH6()dnI2q=wxgJ%2O9g9@dx#SX~H= zJqbkkd>&p{t^6=w>Vdn0;mXx>YS+myFGtbbM0Z zk08VcjeLJgNOMg~i~iKBa{osEmektGPt3a?HSG1Tj*ht#LSUt*hwS0r+Kk3x`yyK` zm-bbk#F**L9c#25_t+QZzlU)V@&MFfv1(x2MbUF9>}Sdec+-VftG1}^%j{q#Q3q6a zl2|2^1((~6t9=&A(6;wzoO(LpVNw$rpf0sUUtu7wr}Zh_%$_kevDdpEkrwSQM&%+g z@BvTYBFZh@T{P;9=V+?V>Mf(O(zO5{4lv99=lhGmnaCMZm%FX+*d5HSCzx)#UAio& zCq07+d^-X>g-mEfyye+G`R_;D&KL>k@7>r^jRLpaLw3Ca`|cJ?8u}i|4W5RY%NIPp zwLIEORDS+Cg*7MQx>i#AjA2;n%O#=(!rPe_Dj~&2abMDTvVZ;Yx$$|Zr+>h&h(UsH zh&tfF2&zAPJ7aXtEYIi&0dm@mMyx*++gUsLjf&k{O2O5?u*c$+`x;S$^2YZfZ#I9y ze?Tf^%{R=g2W+aCMqhHWe^|{`lD2t4{OPucce7Mre*64A&%Al;r_II=(Sd85<{+C^ zqs{|McQj9Wc}eND`Fg`E-r{@%|F@_Vq>P23iX!7vq2qGaIOe3udq;f--T_U9f$t4J zgg>aX*=IV^`?D|IH6;D>z4W}9^!W_3FbS5?En*#GVHbDKLbtw(b(c%-r3^2c!1NCr zkf%MS$_~dIZScQM9bIe>EqTb-C8qK!;gY}BRIF9@U<7E z9-cLJ>7<@od;jk+GR(WA5ZnzhnyEjnSLIzVj?QelW|J}A2L(YQ9mQf&jTyY%MO#Gg z^IV$q)IYm~l-YsjUK>iW9<1_4&TMWwG6)X?9W))w3nxaJh@00w4w z^aHwfzhr#dAVpQj-r3nCMMCvA&+=?vl~b-Z3={-SvRB!=HyW^_upW$=2({yGGKO?) z4&=FhIxq7US|yyu79%!`|DaDMPvy(s8AZKiSuds?fWH#R}{AcW|0hMoflhH>d1cc~FNo>QJJ9t-+Os?yb zyYFbx5l9m}P<UFY!GR<2B6Z> zMUe+LSSi7$YKXgN>IYzUbOB7BTd)WF)lL~ZW7 zGnnmU^0!@XzR9b!B%KJO!TCEy_xH7*kGTKZZ>`86|0>`{55U=&1G-sYdUHRzUnt3aJFMKIP`O{HY=x^^1awj1g1<&M@78!bBO% z#;WmPi9f#2{=Rn`Fqq-}J0)jGkmlD2OFrH#G<-Skx|>~lDP{fvX(sjvP{PCT8aD3n zTjq(Q!h&vI1t;G$) zt$nE=K=c}2)gj`NuCuZEeq#fIGY+Ab)omaBR$KKg-akC}RHbYhAa!?Ty@Z36KGj2V zXE0{fMWVg%GlD;-so=Q^KHGD0pL zGQP^h(*6BbB`!x>4NNoAni{F;^`4S`?ec?-A3(GHOAP_)?F3RnnR+IMlu)cqa!F)&pg6%L@N@8C~?)qTEBfMuL z1cD>c+EsKaSlf}CV*V$-pEt)E4Ac($EkR?y@R^v9F+&QDcM5v$3fA>6!W>fNy#h%y zts)(!Z>q%71I{W!@IY~aKH`O38D!rRp)xC(3>u;qDQYP07IZzU=slb?J)-zBXQd4t zxVd1BAL(#;;me0OX(zRF)q!OvB``Ks841N*pAu{75D}pfW3l}s75*e#mNmW_N>A(?_m0v$N3&-cx0zfPLrOTMu!oVPTp?a;kTrs+=O%|O?pLZ@KIeho;%?3%qi3JW~9$kM^>dx+H5a<+5WGjKv z?<$`*ya-9Swo3csX8a4;D(@1eCnjL2xzUg~7ptq;(-D}SH#wLR-Id2T0Yt}XIcMNMfjB-snY zSEyn0Dj-vQh=i|g)uL{yUkjb^NuQ|35AtieVbdSrdhk?{*Q6zO%PKrb_M>Fa-g;7f z{!E+(6o!y#`LoQH*y;RzkE=p-A_c2qSi1-8EB>Q1_t=a4d#VW{R=`-*B$T47R+|rq zSm|+!c0*Lbmk~fHxNd2iMqY0s>NoBb)pI||oo=K1C6{%CH=aYp zt_IAa;oQy4`-FhJXnT)RinG+#JiWZuYorKu9Sa-oJ*W2EKT+2$c5!_-E8!6|%Ixne zzOmu!nm?2}7fz(Sbe22Xv>RIj73bInk%Uc8H}sbUU<1QL9gnup`*b`YUFy?&L6`ZC zN(z;#cFNy-l;2J9t5$v%J=FLIIQ`D=;A}@o8y70&fI=psykc}(`7nbKR-1tDHG~X; zMIm}#+b5jJ=BR?oAqUb92Q8Y$FuRyakj|BUEm51hY&A$*RXFT$+9T?X)_uyS_#XEq z8tNO?HEw>4XV0>pdhy(-;pcq0hnqdJx{%>*Y#V-DkFF{D;#7Tge_WQiJl@`=ecg{u ze7^=bs22J%K>kN`Yy7OZs5vJECF%9;7L!w;Z)0N>HygfX!`Ky<-WZTX-+y<@ZC`)v zV#-_Yw)oc0H5)iz!k)@_e6 z*bFTV1(A$Fa?bq-rMUL3oY|W-$4>%BPI;jI=zI^&OBy3d#Qg3`tJwOnq&{rZxfe)| zHGa>55LL9BLsD@rU`_V6Rd-|=UQna5P`uV2Fz-4WpTs4Bi`tL{(?<|Sw@2RxYIoD^Bt&uj`? znoGt{fXVF@m7m7q}JMge&x=aE_J17rY;l8-i{SLjh)y2dg+)3Xu_Y z9&!6P?{wZqOjnJ_L^g$V6@B4G530E*{dD>=x)WQL2&Sgn6r>Z*DBSO}Gk~??Js+3}Q|0uIsscG9xIP|sM(SfeB zA;H_ePb_9DA`pCeJ@CS74t0t3`$Y8eP)~ADfBs`hhgb~qPv!lG-ys#nX*}>YO?sRH z4u-U>oUw8xd^|qfAx7VSXXvW!$LKfD3j^j`Ec?vgUM_8i8)ii_@_D5_&QB9`5`5lE zS}$(l;eL;(-ZVa0j(A17j(jqR!nvi@rv{CReo_CY@)H{v=cw+c+Ffoq^dN8B>wk>`)F`dTeQ01-j zN4b=VU~u|6P+gl2v=qA6;i-1G9Y~3g?o%B}|8iBC1;gAh&N|KE@@ymN##{-lw>!Vk zLkr{d6uQzP(M4OW8ukh-1Hn9RO1D6Kt~|(oZGXu5KOYX)11sdIC-Zd@oJIQKAxq`X zOP=zf}v!UTE}8)Hj|_yCBtwTR`te%TVKV66N>8 zo#OeRVBF?2!CQusFSk03im87@Zpn7*e2% z@@f~gx>Z9j#p{AT@L_&(WN3c3AWfw%B2Dm!9XJ?0qP@uf&y?n$iO}LVa3zXS>!yWr zy!U)rG*wat?fQLrHpwx>1B~6MlN(mn*?;dIhn&}ld3T*`mr%nlYx_h=ncNma*FY&OLC0^#aMiofTl$g!k_g;S?A4A8H= zG>CcQKW`VPv53Kb^o|dyUtU#uEqx3yTU}Cg2=jGS5obNbd-n+AlFF~iu&Cv-dpxYD z@x6MZEJ>q;<>Ls{_I;#ZGP*^`x`X>I!0B~L40#@j21({bnaK8APTr(oN+$~E^`JCW z;(x9-SBC|*@_jI5m3^_uy?ESUmzLs*U4fPr{B!z&m5yR= zeL>thYxrD15vrp7w0xTvy4&^m_UV4}h7ejGI;IL5*OUvNHKGm=(%rpZka}B}JS$uK zKNHdOyrXZn_$o2GNqj`e66K7VNyN0KFPD!G*h`g&5V_MFRfJ2g>*lv8Rc<@j(Fx=d z&KDksc4%_#yl-ZM>pHr~!K}~z<%kLDcCRQ+7@}a(yq$I6WKSKU~#Lmm_U)4b>4sd#DfNzlWWTOU8P0O+G_zCmLjC8Bry|~F5 zjF3}`C?S&7;+P8qF2p=jVST~Cx_?ju;)Dskm!ry3X=SJ&UEssDQ3^JkzFd^G%XLXB z&L33a6bTa=p#@3bF(wyexdkhOO5$_yuxwiN#FfyxL@R!!A7zgA|UjF@FFheA!BBcCIXtx1aoT9N2xF1k_65{rdiI#r|4&z#OsUYXZtO}8N&;aa9UHPT396JJ&^ z8?oRwj48{wzvQtiJTkpSNA*^|Al4guQB|N~BJZ!hB8x|eXLwyQ&5t5Or>Fmp#LRnT ztXFRM75O}Ux_Ti;S$r2Zhf7#k_g@kpNKJ?Q*2nWa$s- z#`FK0Cbo5aR53P#{>Kxh5NYx=?GkQ-k|%h0F^@1_|15ckcu@8!&-Wo<{$}a)vG8t9-EdV?j+jXB!=vc@vp?>L)|Y%*_=Oy6Z5c$HAX+9wppAv>hd zu%x0@n@I;YyWnk4%*^}k1F2`RMmfsN4x>if^!a(%D zt6fC{xDB>`vO$E1d(1wd%I4-Jv(8NR8-cI)#qqxd3FP7xcUX61*+2>$d8-EV&rcOA z+UIw_ALQ2@=~guyW2fK)7T;6UMhdn&{qVt|*;Di&a6Jk`nJ5Ya?K;~hpD4pe_es%C zfVs(Zq2Q_qwiNf)x%!fH52t*bu)GRG2AcCtjiyYZto|zk8EvBkAFM5 z=&f4;5*|Mh;CenngMw_CG&cXqtdgr1g8CzA{Stxk|-Waf;pT>KD$X0a`slWX|!a7hxR zlPGDEf`nMloc!m;dfguuYI@VDkW($i0^+UnA0|xC>-m@}$l2yfJ}X-3Hl#-}pol2H z%yn-(OVBlX`(WIoJ6>X99L>j%sqdh4Zmn2(s^j-cmUV=yAU?ywARL1+v$%Z`o3c%x z>yyn)!u8Q6X!OyQrW|T4UIJp`)e(9is)_xC5Jfq+zU|~e{@RD7S8>G+y&(+YOX9=s z%eeGx=Lyp99r|S|=;;C8=F-;K>4HCZH@;?&@S*&g%GAr1O+h2e(PKx977Vpiz0d;6 z8#S%SNMFUZm%xFa|E7e(S-RG$WpL4Pwcmt6n%4sBc1BM1aNUa1+7mSJUhRDAa>&WC ztNUrTu57#8*G#e>wCtY=&n5CWF{L=kW*WjS8jvZIC4ai#d>$3=l@v2~P*n9oFV@8K zuH)22;`I~6t}d=9CuDX*pLsQRe6MX!i_0{cW5QH3R*m0}#6tdiH|a_5%vD&VEHrU} z+)40^5D3IxBnl8_uRGM8P$?j$e9dW*8i0A3WM31jE#p?HwK%6zQWTs=5_7Gl93ixK zNQ;_tJS^+onpF4EOZO%~ARloW9_~fQyqZh!t;xqQdft|V^3zn>#DRlcT=qtfQTApl zhToq=NNFrXtZkt_G4av{OA@y5{YZ61;Owxa)#|m)dhDCJMB{?lPJt8DHn(D1eneY_ zIhCOH5aEB5ve<%ujSvb{2vg?eNn3Kz_}LFcI2oTwZ{($K&V_h7O`!vKjqNB(5HuxV z(uMZ@^j)*~Stt&;S1~+UM(~#BGhyPXY=comNr8P^l~BdUHadNW(;2#=mlKoC#gZE{ zzHS8mTSB0$1{WybA6^xx{35I={8_vF*Q`k*4*I3KfiN61Q=@P%)-n(sNuK>Ifs`2y ziD7GR4`+N%CWOum{uchrh6*;FTct3mKfp`LC^*T{bJCqQ|5yMfxPnKA<3f*F&m2mP zSGA}1ZfP)-cQf3u$E8QZ!V2$$!bKPDk9XiD3!0}n+2$nuvPS>My2&0}`QqZoH#7KC zumC`vqvz&vDDuB{FVnI>1HU$&&5wrWD5O|!--{jmzujo3PmQCAku&a>Y;E)K^tR7OvE|`|H+;zDOcR-nu_H{T zI3~{=FCe{oTlztADM+8K!*!;amwnAa3y$}{Vg!w7kbDq&z8XKZ!#Co6A$9*}gK!#t z^I5OQuqjKUeeLUExBAf6Pf?NrXpMPKM)`+e3pMi5XB_$XyUJ-yqv9vac9^CV@ASt{ zesrVjp@VaA>SVOpNi8X8tIPyI?I!0)AL@_d?)HQ!w~2zE01%#;zLDT}IT0LAA-gjE z&huX<?I+hpNRhICwq-}g{aB4VHO=}D`zJU< z4gaJb_}<2>Y@az;0v_TN3eXkx^sn?@|EAECNd+SM2wi>Vxx{=8a+Z#sf8z%e;*^nj z0h4)oFq-7zanWYsDnu|^^grzpd%Uo)|WA_5%{mS&+R2gQR^)+ zK6~^aaQ{>Uge*pxH1444`T8M;Z{EF+nrWICn;idtcAUvEPjGF=Y{k0$o|l?~!guoC z0s1-MZ^`!eeu*0|sv6Rlgwk`ax0G?!=Z{IWrNNo$*raMzP1SRK$8-ZJ*W<1UaLC>n z_;92A{f@v{4>?ySXuz}D?3n0l!su5eMwPk%;-gQ`gDuSLD4$ow=PBsQ;FQw7?pBG! z7@2GEn7z5+jt#^oJ!+bYGENS97VSM3C2A0jb5i-p>YP#jBSLwES{Y`P4d=o*g0-PlVM9Y&(cQ==5_P+ z&vg#@7waS5ou2yYM2fEN%b)0FW;>7a6pml_r?0+n8o$|W^9EH@?mmT%Tu(@xWACP~ zt8y+JHyC~MGm4wd9#{Hr7ys9g9Ciq-lc5Z3S!70EO4dUQ3pETz5gY4*xB^po^yd`cJbMqbBEGvZi z|F=L-mmf&{{I$R5t6zcc%YDy|=EYtME3)OmkLxI3vDR;h!0kN4buEw{EyQd+6c~e! z91yIK$#RHp`lc50==7hAaP|p#QZSfvdn=pD;8bKMJ&!7p43|!|G}0Fo%R>i}1TriX zmPT@~8jCY}O;gTR|G$z)(xiqs@m8XWPU<9YZ#bp<@fq zK4bA8N;$jB8!)HgXK5bs@o9aATD={~VzFL9Qnq$ID8Jt2IUQF+Q0nrt(cD)&lb?w& zNx=?`3&V+^)yFNiGZjrE7yF$a_I2s?##g|(&F8If9#X2T^wr7s5D4c;Y(iDT>vDS< z2RYJqU!#j9nB}JFdjRI|k6f$MGN8mx(OTQv7kipbOd1~k0M00@ChZ8vYA0&=PI)|a zQQqRX9De&1le6@#Iz|avf**wrWr@qG`zInkMPC@;Z6RUVHojrFFh0n2RUJT6=x@X0 zn9pjtKf3!_sG0Mn=RSM)lW(^5n}5|Mmp`!uXIPkjrYWxna{=XD9H8@{*&wE3G5qe< zpgvQXPG7+dv!ekg6G=Def~qHF(yaF6%uTar^tWDVwAXYDzd|E|zr6k?DBGY9p~{l@ zd0u-Km4vM1KrXHzf6bu1@GE5Coq^qxcjjLn`pj5vUdEK2*)Xqt*>EN*Im$1;gUf8h z5xPk56ujY5ALnN=NvMGLWp82EPf))3y|U#m!;$CrI@9um&%aO@f|xT9sHg1k&4%hh zla;=Xz$A^`yat+&kj;a&UU0P-%0SHYhQ9ATwR2u(eH@KkblM2?XK{N7skz{-`&mdJ>ZY5&yp6TFpiug1GpU@@sX@G&lqnK+aPCr!f|wn#gxPb2?t5`eTQ`#20r* zRXH+6>j(Ic2(na^pR9FlTz*JuWlJU{q=4f7f6cj9vE&IruIg08AvC(zNvhTmITn(( zo13fos?Io|^`#%0LS5KrzIRw)h6r78(ahcr600$cZ~)fMZ%+N2^imea~vOh3MwBlscc83@@8;#}6y;!%d-hoH|K!ftBuB;MH|W(Qiq0eNFNFAD#4H z4*RJH4S9P~2mA5bh~~XNnh(VeYZsy6<5?7Z5Z>5jEnzlhdh_0k1Dg{?6_cN;NN@ja zf!+*;^p98ACi}z7ba6xv{Kqp;Bve$=S#e(HPkvkvsxKg7z>)}9V$d0X5~ywSb~ov* zct-13R`2o5mNGX0-ga~n4B4T8>v%JY|XjR8Mm?1qdXP4gTEh5 zyBS=XV22|rNH>U3iY6_ikomHbo}Gcr|G*Q=3XBg@?C*d1>24u^GUVd^tDR+jN~H{rjc6dw+gr1@wMR2Z@?0t^Z4k>qc8XOq@b>YJcC7g>5{Gu2&i;-OLs`aKBLe7yyv~H{RO|cX4aaSd+uNH5BA4y54w;%KU8q@ z93E{L<`143=2B2em4(xHV?2=K#h6t=IfLJl!pgV$Z?1n^yR0goHNo5)RE{93WC1mo zSz+GO@WdOOf6u`>|HE@chn-SGwznkpO;_<#&IyF@S?R@tRDen?@(D(q=y2<3@(pdx0Mn`n1m8xTnO7(F2C| zo3w9b7!h(C=Eyta>LlBd6wf|Vrk+zhOTBY{_W2x| zjNZh_jQ&iL0muBdTB^Ob@~BKE_C~LWohE9pusa=g;@M8zW!bt0P@i^Ts>0v6SO5%? z!%3*-TL>+9$|17 zn8nu#k!bZ2M?9`4yK5J75sr;kR)Tc%XSU`Ew@bmUV}nuitmnRbtVsUMV%9QYLI zek}8;P%rRdfOmQFufA^z<5@B)>E^)kZYaZ`@#8Lbu6Bj=@ zZ^zQ%r{;?$t6!x%5#dI4n%YQl!o?jsC%G4;S1f2Ld~UL1eqGZvYZ`1!?mU_~+YkAw z!o|2dzS~&vr&Du%OGq;Ev{t9NInIBso~FVTe{ge|3d#`RdtD$02PFZz+A5J+o236- zC*OR2tXJi>G}8(LG~F$fs!1fSgtG1v2?oy3JfeNw|9 z>+!e;@wDy+_SOY0GkN&CLW1*BhUfyQryG~AZn)VsbQlb63SU2To7+4k^=srJ6J2VZ zFs5|A9bt2ic9v9@8W6xKh=Puoqf zvi0@J(R(PsgbjYU;d&djgzou@19&ob^h#asRSi*IEkpQ3(SMkxJg7)ams#d3<*f^Q zO?WhZA4eIOodaZ@O@MqWQUw#LdaRZLlh%oP-f!jy3*%qU4{q&1C|==F!ddSP{g}d5 zH$Aa1{bZSb)SdP~?|bLD`^jPQbC_1pZ;i@*M{BfgcJ^*Qk;40HpUulYtZ3D~(J+e2 zhH&?R={v(2*1zeaT6Y8UTbgsws3cv{%$29N_j*{Lz)lt}NjlHHB?PH!+hBZ$%oR6> zLw^&IKyu)fcCqtxzvFqC>}l=oVd&Zi=R{st#;xRRJlW4uprpl|dclSf{5_0Qr&$@xW@V zX{)B&UH{3~*guW(lwp&Dnet2M=FT$t=W?m*xE%ULO z-1z>6U$~oENYux879B~GsPZw#TGnz}x2iAftu|zi_+W?az-c5w)e(k`KhdXkBibrE zEWK5x1v=Z}8=?7Q*TqqIh4a4aKE5U9A0=coHNOUukHSokT6hV8%xr25eh!owp-@v9 zvYCqr7R+9LOtzu~&c$?oK83;ULtIbpj>CVufO(?-UadIz>Qsz&je4LfLq)Ys87Dvs zlo=qb?lbJN*{?#jnXfQ~l5o&ZLCKO80pyAIJ6Ur#N3<6wh`l(tN?^QJvYi+$=3-r+ z_X6{kfJbzE0miS9;vK|ozo4~(`N`FBOncK*vwH5p3RCkW?_U^$ggpM^+w4F&dJ-$8 zO**B}vYv9rbMI%PG(e#WwP4rR$Px~`poY|%;p@j)sQW%08Ddn$ct7{iWu!tC6MW!- zI!da$l?IS?_3TE9PFVEt^U%z)0t}q`w$IW5_F~Vac2$MwrH!(o?t_GFV>X**~Ow3!~cU1}l zk{jFKADrOwTmhAothfWz8`@Ud_h zdViJ!Hz2xCl~R%4{bd!}!Wyslpp9YcPQkoS+)dO%;mei>eig~%OssdmG1Hc#q-B00 zEUgf{Y++isuQV`^bxA!RkPWtd(Bhwjq^Sj{HW8eb#^zsv!JnPgC~5M_9r@HAITT4@+D1K!^37{nPaT zl2&o5hgzxZ@sG=uaDuyY+#lUG81q=6tKcSF*~-6Xq4G_${wBBOmAB2JHv|KC@y0v~ zo)+!1tsUCKqHS|fV%Ps?V2|}K+i^6#2BC10dE>K^&89#nf9>19@LOKiiRg!IjD}B2 zx!GrxnddPt#1}h!Sl{pEbfPJFut^b0al4|CValZLpwQ(phkgK~3ozw~AdN0~wMGEX ziCE=++hcN&GmpCNQ9h#Fkc;aZV85(+S;Vq`pcZ?N=k9|glW*F0(fy~#iQ z4jNg%!n^Mhce1?unrmunh9?qKt#j8Z3{5Xwn!oL7bZVHT0li)ZZ@1pUN__1_`TL4t zVq&LJ;lg>_is@(orr6*A<^jF!?-sLVIi3nO^LA1#c}?s~OWmS((|MD0BBb#v}@rDE~wK5df4ywSKxO3#-CUi0rid%CHOxD?B&gZVR4Os+h zWLEnYq$vQD*qY6kJQ!`qWSIQyHIb1>cH~a*8|ntcCihK`n5$pe@m$w@tKKYY#INTK zkhs}KE2MR)juO`o@0BCjx?C+&j=y5c%%sM2hZE^-?a=$)(}-(zfBOj!h*t31%es;= zdR&rSnMh*ubM(4vVq!0h%PfoYVSUeDp2U|$*oRJHf^!oGtd>YJTtwO|)Q`yLJ-w=N z;<`N^-rRnezH!9%P?8P9m`W|f?(zLpZ?q#0@T;Tb&M(%Wy`+H~1v5`YZdo&c>~wk-tkTWNe$lfxDbuUqeqZ&ZDI zYGf?(SVDTssD5Z`=7$n~WB_st`hACX!E)balwcfh+T>w3wq>)u0)Y5$T57LR8t=1D zp6B~zFXxUGgVi5_SjI{++q@BtWm@aBs~g0_Gn6*km7qjAfa( z2czLtVoX`scSI0zWzf;rtDKKEGp`=+VIozs@&B8h01pHY-UW3NXX9OfdUVb~q)E3@ z<)PzKt(RP9c}0+EAGx6$bRdh#(TGDD_-meqdCrFUl7n)_)%dPoiv)P>+rMX(+%4Hn z_pC2puzJE47Qd9KkCg*V%JilmEeHUTfr+R*X|qf3N!@t76o#zz#|(IPd8CB}-hI5g z@vqa?`UX6u7gGF zUs?R-^GH}6s!;l{y?Y8JVi`T0Pu6u=nt+@+eA8j{RMG9R<&&Iey?;KHbCFk5&5$mg zk^yRpOG3B%l6k50%zr%Pesm3YRaPo>Ife$-lnWqRmZJ^m1lIDso;R54E>*)vpg!;_ z78_z&N^6Hs8(;gPy7KAVaW>FhZ!^B2=@@;ee4@UT6&yvhr7mO5rr(EFVLLLe*6TqP zd@64*qhN^r@xYwm!WyYZq1>x=%7U`9qp9_>DF={VBSduPi&gF5=iNhZ88W!mWn}&G z*Appg6~5-)pa3NMw>oJDBtlZpo_(i3*u4r=@#QzVug@KLrlm&YzNP+&khAR+dGh;3 zxy64IQKyt*jNHCuc5=JqE%M6SQWx8TO$SP(oOiPXESkx1YXe{NrAb~ZJ=MV~s>6ky zzSpR%k*hb+w}e1daw}W4n~{XS6dT5q$|$D=SsZ{WJ8#G0Vz}1Fxhe|w z=+jR~Cz5=V2KLDw__a##yJ1pD+Ikp!M=34h9F8-l?~=RHb$NhiIh!hMv;bC!|9dgsUvB|^Rtt4|CA<>pdM;@kGG-LB2A$&iWinLsFCu# z%(kp0d$(^Ql=_pr-B39FDlU-c{nH%Si{@8TZWDt}V>9iW+!l^gCJY4>mNDGRu7ImT zyx`@(jY!4EqEub?>D!ApsK`h5QqIuFvs#fJyV#1Ur(s@LHm4^&Sg{Yw+m&(rHcMY@ zAZY@JVMs2hPMp3oUb1|xa^2?cu{s?R6JBK}w~3`_FwR3ZW27na$#^cb?qrnNtn4>X zi%sVjq)iF1kCt3yhCR821v9L~V;8aC-+g$9{WA4Tk6q>W?cKZH10VfVd&*8tTjxL2 zc^M`1w(VJ#?Ca+Z%s#3kSvFC;T(X~VfpKMFB1QZ!Qpw%GwvHTJmj?8N0_)4tT z5r8`0_#bo*w(Xc;7QL*nGF4sBzu=k7&^pHjirN0RJQK;qflfZO&@*Mag3C)<^*|C}j-~vsaRfT>aIrt1DxNB8L%8WDC_R9PygiW^1%X5wAi@ z=1*@9v7D(j+}d8As_Y7CpGkW_zrX#714Iey^GFIGlkH6;l~lBA${MByE2MO>53<9^ ztm2l&8P-#r?hs-+&bDXg)nl?h8uA9xnfe-jS$}8qsOSoM8K@E3&|$(nJ_hlX!{ z4BMn?IS3_lIEhk%Sn?8FhpyKADWfl49#4kHTp*@5FJ;1wnlrk#%65I*QBEZwy+w=t zc)-V1YYx_Ie@ks9pjXj+Qw6P@nphc+pl2Y&e}zEOjU?BldB&vq%f|Ky5~15ZUjd~? zf!FCuZ1V5u%m?IUCAQ^0PB5ar?bLC<$ElF~7xs9jn1yH|P4G!zHW!^h)USEM4+^iU z2^U2sswH?C+iMJN@qiW4QoBGwW?n3xQe^kD^x%|a2A6kgN4x$%dL&cr%eaj?S$drb ztfjh)LS=oq<^42x6aCy}aieZ6$a0C1xIpX6JXM!m=>o+`wA7i89?2e`st^ML9PR^>1u#FJtkZB;q%f!uhGhO+Ak|Hf)QM z-M=3zBdog6WLZhpL+kbd8d2&FW!y5-K{0yoy`Y&4@l;O!l?FWakC^0j?N4vT${G_~ zqMNGGx0a2XwzcH16|^QgYac+E}=e(x9J|@L%tOUy1Bb&u;}g5os}1OU^Be z)^sIzI9Z{ubduF8{`>$~p@vqohIH#9MzI)b6^V0UO?F3}m9z8pjKiZPbv(dlM5~=R z;7xXX@smp`dV0y(7x&4!BE6whZDUK;nfwUs8o&j`uk5zSlbA!u4d^qke1MY!`+svPjeJIN zR$4N`YAecZScT-Nr3W;|x(0jlp0y8H{L3(bnW<77-@!D^eoqH>>ZW5Ez8CAE$Ao>% z@-49u2T7Mt5E@l`vYEjC_0E3rY+#I6AajkK!BpVIn)$7wU3$T_Z3F%tOMrZ1eDr}= zQWMWPJ>?zvsWZhZ9v6u&7Bkgbdj!=^ELN|O`+Z6+t#O0mag))Bp>cR1p5j$B7IHC6 z-C~xvQ-X~KkmTYK2)2i(T3)w`5KLNWhdWREJHbX_Zp-!`7kZT2gC$ubdH?!jv27(4 zo8)mPV|00X`NqWdqXhI)1iybH3>X}ge6>e0&)*~+ond@d!SYIz-I<_fE^oP+CkZEJ z)5P*a(T4+&&dQ5g^D_vUbk|?*8HX58scfUj#7&+Eq1%%tvA+)n&{TQ&8Rh0eT4g2? zY-$4b6`sZcQu2!_htgVB4C8ArZ+!H#k@mP;(XtOb&CD1*>1-D}tQ7tsMG_(t+*dYI zOzAjpH7c@|iICF`KYliI4e*K4%4u`|%uVa&g$s*Biz@%#6SZVm;G{v;IcejyWkdf| z*C9ZQ$BGHGv-nxYbMo%H;DO&?(&7ogv+vt9C0)LY-15~rN)sw!;{sa{5WF!zD56HK zfAVRXqv}8gUR?j18f8|=?`h{~o?&4N5J=iI8FS!X#wG>6j(6VQkB1*c|I-S5hCm_= zFRNfSiTSYvd;tx7klrBCW%1>nn^UFPjziLFG9GDhVL6eFsyLpIYP>*M59d|#+yrH< zpCx(qxC7yjQbf?6ls7X6oGm`Le0XP2XTnJ~uT9B2LOvIxeR3RNbIb7?i&c{u1@dl| z|FVURG9{(ykw%`vC6)2Tjd?$ws``V;*s5!l7MEQJ;J~RVHsZ1`OP!^rM{Ee$J{q|> zZ2Ph#GkOc5iq*|oKyF%p`?2BAH!Ng(6(W=pL+TbTpP#{vT0xXQ`V0LPP`6YI$!eUt zC`}U#9+T_@I!mjHBQH!KMU&||VUK?8;e}1V932YTppc;P*@b61X=4+6Z4D$5uve#x~@@r*fEULbao}GhYCXUm(Ry?lA^AYpx)J&@zETSe-UU&dr?$^mfZ7J z%es6g665#lJR*FOKau43dTSp2=-Zk+Do&@ssX}jbUc;%xy1kDXxtwfml~8JF;L0V8 zB_03?bRR|0!JB{HMV+vbS5`=B^ElmT6O<&%P%CiZ0M>RqF1g&7cYUyc^=*&bl=Dcf zw+Lj-!&gNa5-l76#aXC~4NBvPBKfv3fZ2#+J14F^y(d78J-j}qaz*Lez~jXA$C5WQ zpZ|sU;Fc4`Ycm!i%&zyb!^tr^P%-=J)!)zg$7Xh_(OQC*2j9s@Lo8d{`8BHSQjHKa7{$KU3Et#* z^oM5gMYXBlh1!n48BT?ajNxl-Oik2L(CX;Him#qeOGooelsLs!kpoai zI!Gd;iN@bmkPov?)dkw^D&pxC!3*OQFoSN7x29d3?6~B;A6D%=3$d!=;U!Wsw#e2 z*A33xE=Lv)1mHzLH?3IuYJC{5pz-&pkbB_$RtX{J(SJP=AdB(SZm=!#<*J##lp^yB z$CxSlM^AE_*Vq=dFHKpMWhPlEfirRUZa+IPOt)5GfSf+^T=G-Z2HTPg0bk&9*hJoM+F9$%H`qukTH0Jj``-)D| z6}b+v@wkyh|5fyTTaVg%dl;NJ{y2gc+u?0#N^@6k0Biipfm!0Sd`;EfP66TCHUdyZ z`Kn#rXFqVJhT#^f<0eSIHIP&BLcNRfRVlIJO0~vETQ(VcX#^4%ACP{OtWfWvakuy1 zcqY(P-;aURVv>8e-cu9t_)#+K*8H~JWjk6I9mN5hI*6em=qgkwy|Jc5#hnMt6v9rv z`#Tk@w;m9fS!Q4G2Xmu!BzBJOmOyw^B=GyVz2-F-W(V$0@zTESzh^%-lz&vE{;|iX zy084rrSAH=g#*KHZ=!808Qvj-<~AfXWZ^{8uj$6T~PCwh$3EH&&Rf# zOGdX_?*^Ukr{FHB5$HIODv?J%T>TRjH-2tfZpPjHo62xf2HLiL4zHTk{tFycvGzap zRK)`jy1n1c1n~vZpThmC_a8{}?k?A=2wh|e^iuxX-q>QAYmTZb|MOOCB9jez z9c6S|#sFlf#p>4~8zWfOadbQt^*W28t5@WeM{)#KUIm9zwZK@|0U8KRevJ`XyosOW z;w0+YwN4hgG2yc}<{f<4Qt%rEfV?_)Um7c}-s;&g-XqTU8OkYa6uU{&EG` z4mN}!|2D17Ak%NTtVb`wWN{+rMvMSu>xQ5W1Im;PM%D*A^UtN#p`pbL8z2afGMno1)wRZJcCZX&5 z^HW5?Z(@yW`ei#5>OX0;&`^q7SWYe>W}tWg{o)mp^ARZt++U-4<^6rceP|`5eHjFG z5$P)m0~_c566tKA#uJwMqG)=?9UF{u`h^p0w+)|c8wB}=3{+;go!H94UCV6xH=fk2 zwG542rxUQ|qZn?jFD_|R8$@3zpmycgwzIE;* zSRZ|IhPd-|rw_DnURkkOd8-YI%Lm=?P!|Z4`E}F+R|B1G;LhU7G9#ft7nB?+d%$p7 zkxE@?eAMfn+Tk!~3Cz^PQ*RCGu;OMshmtnKlaO5b$`5F(4%hV6GJAG7aIdgtoD_5S z^|Q0nH@*UlU(of}F1NRXvJG)Fr;+&zePV|r!lReLF)mwO1uOZsyPf=Fv`?phP<5FX z+G1+f>iRu5tr={17PM#N(xdBu2$y}bTQW-7!(`@oGA{l0Hz1K%->92TdlSJC_v3t~ z#1_VbN;;VI|GRF2SrY)U_y_*{e`g`NytT)J2pE=lFg!pMX9sjm=YcYD!xL@xl$g?Le6T#w_D4Vk&X3Lop7)kS$qWBd@V}7)< z6`O^N4F;ZR?WfzX-zhaEp)@_~xi$cz&%Mj7vVmKcYFwA;`yN>?N#8NmGnoM|#plfJ z%grtN>j?2&@At8Iw6O$Ob zh7s7udS6x^?!T$=UlARp@n@_fpw&hePRV-}*I8WfGtY5!1ciAv*o+GQE;mRr1Sqx# z3B6-gmg1NoyZAUggWljuQRtfEO-kea`PiS!(0r|egwxS`2;Lu>^DYtEU#?_lTd#fQ zM`M>EQ;n`5Pz33MKW`dme{7??-$)%!mw2o$wvYbNHYN5pg*RUIo9_Sj%(0%LkC>AF zcEY=1;fWI)f8PQ)gt2YXNt>Fkd5Oi+C?#|R;su^suRKynntrX*NbnfV20}D86}F}V zel)nV2oxEw>pg1B$$R5JfkQ4;gI{VDlRm!~VLg$Gt9^<w6O014H8{em3xucb6dC z;#PIZIYA2x9@0t@)Chvv#0^2Iw4jzcw)*>gM|N9&Wbou<_Sc~HKp&KG%FSM3x^DSL z|9EmgddE}$^_5qVw8C;fUzA`X@t8`umEa>kN-y->EE(Z$pMNcO{&d^L&u)NmvN7OF zLxUw}L+Mj8NBxFtqTEwRULKQ}b*iG4@(8cv*$*KyRpYHLU2;3yb{snQ zhBMg)l`KPsA#VtXPqvypD>qsW@SBti9h_|?Vcj{KH3lK4Nb%>7{w6>Iz8lTFez$&> z-0Z05g6f8wycE)1gGzr1A5nq;wSR>@;Tyx|!yJrbk7Bz{^c2^*sQTVCov z8_E90A6C;UO%DzbgFP{?GJM}I3cvphi!9Tr2*}Vk7TIpRV>MIq`zn}KK~LxK-Yf5} ze)ct?5Bo)lDP+{WHh4}-H9h_6=13!JT?Ldnu;X_$EqZ!3EpJtZjM$P!Of{N&VKmhE zn?n%0^z7cr506a*5blSS-cRw<)833n8M%3M-dzRC7K#!LHAHVHhOTlH$eF2#pIcZ| z85zBbxR>P^rq-IZV>Ls?%t_TC`|aB!y|mF>gQgWL(Ten{at1B?_$S;jcZ*XCjNr+q?Lb#mZA`*iam}f|3NppYg~Huhwqgi ze%F-GSYppznOCjk=414wTINFwBYxNnL$cFDv(>T(RBabFk3Kz|+wCW4(o=hK?k%Yi z|15nh=*#{gK-%f~mGj}!jjyFM1>e~$bP%Lj<0UvsJN5j$Nf6X2>%StLN+wsdM?w-u z^}1y@MF2ezw6ve?FpdH0`jL0kkBCGe_WhUXvxN!#eE(+Xxg zcD-NLNih>1d7Aj$mV3;(^Yn&u43-Lli5O>?0&}xa7^}^M;kIeR>@|2Zsy3a$uuzO! z4`9`(YwrpeE%>j6y@l(N`&BR0%~Xjjz%(gz{Ua8_PyG_I)<>tOuZpjyi{Fq*L|aja z%S(04>)K0S>LtZAYE$89oFzh0%Uxak4+rD?=wX@6Yl&7{5C9jWt__r63SZjd1ZKZx zTx{CZVZ}nO%q)l-^(6%pEXr)0j%-qcSqemr;7Y?C0HlrGzw$)6v#;d|{@vS(VdINb zMk$87!T&P?{Dm;H@QMFcBwh2aPqMDQz##JYtRMd)NW0Um;Vr>AE4`NhmKW>Qsvf4Q zk^4I%jV;q?7pxs0yy9An*xH8k8=`dOt}Ifvmsc{+d99v2uALS2v=UedJUbS-BqIQk zE9oWOLrvY5Ql<$pl6Y}^2{dOpm^gu6J0pcpcVoE-2a;5Hdn40URW3FpXe*cK;Z=jK zfw&trCR&M?0ICckAaC?H>z;aBX3s3Pw#*0KaE*gaVRUKF`;%?{nRhpV=JECP+-zT1 z^WV|F*%yx$3y^9+&ZYZi%uNJ=v}DYt=zr8&PrD-%RJ*6W%PfgD;yr5ZfsNdfc3wRO zcxFKDVj zh^CUD>UUgAFVw+eo<8xZdHQTHr@{rkmEZun`hCYI=?^L9cpVPqN{9!`t=0_$-$KIV zx_i}NAoRbFjf@`n!N%F&A{e3a5XX7h5q37q(~1N?&8Jb-wVV^*9e%Lh$F|6h?9U== zKi41ya(nOa@20))OH&YX9R2g$<-IIgmbb)auz#i4C7T_cMT&vs`a4V`EI|6d{sIht zFxoWWN6c2&aJn>@oGK?&c+_Xt;d>uB9^D40%ys!NA=y~jq{zBtfFzTM`w%31a;hJ> ztY25<%{D#i4g`tm+kZve5leU*{Vn|ViV8r9*hwB4 z;5L3Hs0+9SWGCFQVw}c8eMcPH3phpQ+io`8+8s(r4mmn`9w`2tk_lUB?yMUXCXrGc z7aS%5WOj{F3NoAc1F?AZ+>45mr^RDnBVFXnM<$Rrq5 zl$*#oXD-%-lUF2urQ|;4PqN{N{qU@wNU)`}d5%kYjnCU9icFz|yS;dd%HZKXU zmhzCzwZh3^Q!r`^d1URbN0%HK>gPHC>gM`xNY6+lN1^dbuv7kS%iGspE0MzpT{jED zLWAPrt%{RVm)V{EFno5KZRb^wu&OGQIEeiLow4G>xDMb5!$%>d5Pp}h*6zdM=Re&1 zzpVg=DI6|Cn?Mrq{xL|O+ovuPM9b@=tYVsbx$i6nXS>Sv3S)suEbywGY(FvMvr5fr zJN%p7gr`g}s5-}8?y@!;_Z-g>qefjYZQ!-*rMHc&VHoC#fD{w*;VB;5knz-UU~NqF z*nwgA5l<*C^3H9*C)H5r$1>cWC12=)&Ah6#lSG^%praplhD|19Bvo4jALJ3`qO)WU z{{&R&X@cJI$6VJz)rzxZbx!+#t@XANTiY>)lKxBfBJk^1&`VacMOw2F#zPLVn)_tH>*zqpLWP3CZU`3uBBMJNT8rKE%D`8BZFk8?z_-)feq;ep_XyYt@U0iL|2g@5?ZrcQ`AkQEhH8?wdW3@t%g zP)KtX?CkXXihE^I;XZrcHoNsTH&4cTEcsI7YQDn)+&M-sGFXPstr5xm3@hA;&;I;T zWV!Ub{(W&N?Fv(Ak1GZwFA=oSSz)I4tHhC%H#QOrTi~i=g1$)De(|Yq%c&r35q+O; zsuB>}vPr&da_jHVktScB=hjEQ^uOh>X!Y@VRZ950^8Xrh`N5$*#f*#%thZ47EJ zf00AiEE_x&7B&#~bQG~el{rlT2W_f#p>a=KEem0mk^6@FBWH3cR+mdwkF6h`<}Fw@ z${s~`$-ijk&ug}NniR;30cKJf3AP!#Dmp%3h^H+P z94&Y}Cue_ysFe-Btq_Jb%rASz8zecRVivLs9qHBXH=UyR{Jb^@EQ{Suy$(swn?E_r zNYkb0q*mm*OZ*-lHoUlO`qCtYJO3*p=)L!jn2e;m$uVI{{jXgYhV_Iot9d2Z)1`o2 zPF&d5ycyA&i(&rwp&i|pUU@4wK(^aiVZg+n?Be$>9N#Uw5oIH~nW;(a!jU)(g3OyQ zGH@HkW^6!g-1G0>?>@h0;vtn|25HDzaqj~9=R9a_1^+Ds6h-&6tCyQfe42`+R8Ust z<~JeA|E*(ll{Z+ip*m_4&oMBNop!??m|md2%hYx?mVxw{(a`Wj-VaRv&Xr8xw5QC` zK~lT$Y69Cwt7om^Z?zpZbwZcWZq+envseCfXwz}=oRuHR$a}bR-!?GVEzqFEFOqI- zBBrgM&fx%3c|I(HmrV5HA<5GpEdCr#o*#1M*N|g{s5(5~pc)jOUEdD0|FdtbdUJZr z^ZSPHQCCvT^TXuRI&W5rp1~RCL75gAdT?Na?5F5XMmHUb`B7&sg|^moof9i6`p0zu z5VKBM)N;~H8d}&Mj3cr#ctxG=vhPizPb9;QY+_iyIDach*K$>)esno;{1qrotXjN! z4=oRNKTCAMajY;=g&=Pb)NzIK-^h{5~Xq%@E)Fv2aZ=XRk{s31P(3u7FocbCpMOBVS{oPapK7 zdkRp0247H6CY~|+!W>OsfT}N(Z3+7ge>Mtdfr{n%Wb<3 zoEHLT+9NTQLT+Du_pW-sJ|@=CaJhbjFEydjK5GG_3qCye<$^9-nAU_01CPs03Wz-O zCpSF6PRs&T`Y@dl>=sJZU(8;8y@U%iV_kl6y|lJ_C;ms;;ekMg^b~H^N_8lEZw4t4FQR7c%pA~%0Gu}C7?D%<{U8p!+AHa@o_kP?+_OizN z%~v$5?cE)X(j9e=m11U;wG?(Y~!OY(3tP+i9}ZV=ynP2948Z znBq>DUZ1wivtzMQwA`<(?UE&yS!DiF(wYUAR_XygJk$DLm_ZYpyw!VtD+cXR*92{o z!p`1Mmjo3o+lR`U8oq(-=@*zt6K~E>=TwrDmZK*cAp!xr88XcSeoC@4(wz(y#D?BQW;9N*!Z5iz*2 z^;CV=qOX^{3o~5S{FUYPh)YO`7Oo~@S7N!% zs0b_%)elTWwkFxAtLUa23azr&}(=rI7oc6=uXRp4S=^0!QP9Yh6T- zv14h0(8%(K3&vEVVpdtr((Mwq`4_r(3N}~)UlRgoNF*hCG#9k%JRhXYFu;NJJOcC| zQ!+g_&|lQs!2{gfPlZ9$tIkI0{?cT-OrMQD)Ta;bd#dlBgxg^TF!@>>qw6n`fx(~i zriz(|p%>exZ$>A+vh(B^2I!*tp3$=<)5a-kV9M(yvziU(bv1;Oo9C#dHLowPZyXzR zh6n=Y`chg`|B*VHw8N$^U#)Ev^a3)>#g{^c>P0en_rGxfck-?sleXm z{vAe4;90O6{A9Gw9I|s5m0aok@{mJo-^((l@B3j1a$e72Jp3CRqcy zBrY}?6VV0H!vbaPl>g?2H0;@J&qd&MJ!r}%>TN-VR0U4bNZ}s|c-6;Nz5%<7Bb!MJ z78nR5V*;&c-Jgcm#mgF(iPt`>5Yk)jFLNIH`UWd_w`@^H-uHPq?NQIg-;!=odLrurg87bXXN2?0 zbpFKY?0lvI#p6!*!R*Wz9$#`G1@mB)@2;pq-`dSk=1MYV6>QMI;L&9LP1+$uR(KH? zq0rs!nxwLjg+b`U4K@Eb;J8L~WU=&uf5M_&MbS(dzSLmd51AVy()nKI0#7aac(zDXMbYvZSwfXKmnuYG*) z?su$0>iv=g%393Lft0F69lrRzwRWgj&!29U<&di`%d%xHf z5WLIVD9vtX%fD&_Hzm`+ZI<7|@0XCy&_e|@#a$#t=z4A_#5{`X&=)`6lVs8}PW<>m zA{2q*)rryq={9_6AA9=PKVlyc(Y2aWLH`mAt+sEc*j)ugNsbL0QEL7!9eYt#4z0KR zEEX;OELtrme_aOdml9UFgcY^i3i!|?VoiXwo z_F^z2Vg;FQd`yxziKs8(nc#61F%q`er3@@9x6Y;0w=7Ab`TZ4{MO3L3Z}A}$=G4s& zN>Es)&^?*du4hmtIC8IIFmZGd0@hCN#LLx7nm9vd1Pu(_W3)DJmM-*|0KONS>%w0P zlu4t>Qhje6Y)E0Hq&j45%y7+BEevQKm(uL|_KxfQ?mcn=v57vNb2C&_bssh>J=Qeg zOZn>(_c7858zFAYqwk;UV#;V7HCbC(!vyXdN0rW`A{B?PUl41N8!*|*Ui(xz$%#PC zemp8Zzfp?-qQ}Wy_vxI;fwh~@b@90s>$R<>t*>I|7A+!vtDE{FBeG?=mU{qXDst_M z>Hy8^r1C6x0zh8ZL;rnL@wao@adV%m2;spHzW>hN&j_*RNH;Hiibrd-Zw3ZmoG)%P>})wNrk1MTOrOH>_xHOUFToIQFwv!WM~!Z8^vFV_csr+10hv#~ zK5FHtU(r{1sH?~pT|2=dx?2}6XJsf(YgdM~prcJ1)&GJy^7pd@~3I><8-P=2v zYZ)@wKex=)GPkak9*GXWZr8afTd^0cw`0y};8jp^iwpv;I(hoB|5PP!k6<{uo)jek zYgOuvBO3ztz&S3#MLXztQ)n7-D~{Yy#jO%6fu3S>+n+)Fp>rLgCJF)U)){o$Yw*D~0kt?}lYe@+;rKNoU0u$LA=Sy|EdE9z}V!`*Dvs25UZ!31L3n1gwf9>S|yt9{-& zuhuFt9v*K_{kZJ+u>q*TAqW^?hNr@-2^H_vHq(Ud`Dz!~fWiSd9l(RX%yk02q-V61 zw;cfecBUx7tiqnTMHZwzyg0?_l=h*WdH*L&i-o%X7BtqNdO!WB@4KWOJQKS<26H;- z;`gfUf7i_!z|Y#tr&-bFS5YtT>X6z}?PyC(bowS&l*kaK<7uKT%`*;3- zn`o2r^>1z^^=XErrv^}ihQzP-xPnaIcV01gi2A8fs7f(6FSg z8DfG;^|av6{dg(>wK_;Jc|3eZnb_z%%vN>cur3ZBu~7iz`;f-58F8Rll4^YQaWn$i zO#IzOf>gC&WFd(ml$&Lf3DUFcF^LU+?(}@&-uZGC<6jZ42;M(}F}LrN_Qelr0yFN4f!BbX8+OE+mf|rE9+&? zb3{MYlwAoe-P;+`PTs@-g1jO9?kWHCcw>!W&%=LhQ%}07?y+$acNuOn>qWQ|aBHVb zc{Ya+QdG=7pnv#*fdQLZ7;P*8AU@%slQ_kAZ9xajrX@t!O?!=OJRfNkcV(}YMF2Gd z6tF%K=B8&iwiI_U9n$IhPFE0rOZ#^O&1LN)gtv%m@8Z)5#q!^I1$}hsy=yP6H?`-V zKFo=Y3UuSBmmIZ=aU2g$+m?Ps6=RCx{KC7?RffP2DrPg0a6yc48(0nG2bxDQF;3J` zHA*^@q9weq6_ss!Ee_s1Ul_%fs$6DgoT|e2Ecnw>F0w~S5YwYzzFMRHKijLfN(b`i z%C3yP)>#T&JlLxB$IoQ*$gWy;6msI2sNgUXm&jgE{|@g$Ez1<3&71^K%K|e)uWwU; zxxCJ{6U>?!eQI5-TGd^5!vgd*n$(DTdQH(1Yd}zEWR*5juoS6wohV_DE@qA_`Tmi~ zU$Z|5PF0)S&b(HJC!qNKe4c(VH(^D1rKBbw_4{IyaaDD=)$?1l_1PoW`XdC=KQqVTv zkl-HZxaed32bw04X~rP{{man9}DYn9@toJTY zvL${t1R83uzOInv=stu|1!97SwYQOrAt=)^-=izarlgurL2vTptkbJ*;H z&|6qv!^J9TUdL8+xGN{n3*bl1KX25p#T^e4aGohCnTDLi9W3Oy2qkxFSQ7`Lrtsl* zd1>%{C1A$9_rV}XLH>VF)&pRHqAog|t~wM!_d*>K#FXHv24-P$;*ZWiy?{5dt25)J zQY?*?0NHd6&>Kme_sL^`U;*3jCztnJrAhXYTlZb0ZI2@TG(?y*bx44j%S8ACc}L8@ zbN_cuNh#S`dDe@K)NJYmGq zk~Z)(^pk4V_nJLt)&Mr_ThT$|>0aUIJk*{{ih@Q%ZgUdId^B2Z2C1&V* zTwEK{ecW#<6DKT?_khv|W=@kL{#(6qZk`C_MF}otV(nV_>hV#9zn4n~kI~W6{l9QU z+k^A<-#1qX6xU**?a)7747|Enh0Prsy)(ZCz7pU_#gRxHjB{VN+KD+3BYTZf!i8=j zEnSz^V5g_kON!jxdu97a#jPW!cp4gW!Ly^{<9qSPkI{OqsmL>TA|8>Z@`zZ|FN7cz zdP4u0QaC?_S-}rEcAdYWd+lV^uikrPHSxM4RU;y(%^JquOEHqYw!_dMh`Pad=$p^-0NoOVVtN`hrjM!+*v$zrxUxPguwYt%Wstj-)4l@)KoIu7C z19{rbBXzoaBX8ZKC2*!J2@@hjf1mHuJCC)<|2sdh=TQ0cp#mE1Gb+BDf8AgG5b{n8^hVLYj{e{SRV2gc! z@*7UO-n$thWu*n)L^GlAX)6Pu%u0(Rie8#dgbjEzxY?S+v>ouAtsJ(~B~jBvtHI-xDQKXoR!oUV;z6=src zGfG*yh+i@U8@TZI&Oc|Om%%MpUrwR&hDI=S@QhGMRNee=F+F;9a73eSwo#4O_~~qX z1&H5Kktp9A7$>_jF0f#96{2gvW$TnEf6(Fl9SAE6y6mz#VJ?>VTuLy@c zz=jNEBc+bsBUp4e758}G^|5TA{0&b`OIZBOYo<4koReLAPb-d7RHI_ZQP;}6wi#|R z_{}rDqMppSUiE|017J4!T^oP6nT@B_y?tZY0U5LX9lw!5&Mw(a?ppV8FV~t#~NN5>=07`>y(|g62&(ngwoWb>t{7C>VeGa(d3+aWMyY~7i z$asgHunY_)aX|NoP@gc|o8V%70HabDo{aq;s@^&*s_uIqKEuG!CEW;$NH<6;f~cg@ z-O?f5Lw6{W(o#w{(hZ7)A}uh4gme!u%)IBR@8|daJJ)rtIeVYISKRl#*1GAsO-vfMjPmlC5^J$B&)mhPkDCb? zDqsO={dwzW>kz>teHb9PjPd zU`7xZ%-j{Nrb~Qt53G9we7IOiatxS^pZsl`e)Pit%;;05tLrZeEpA{2#zlUpr}Oqe5tgJ_c?<7V&h(yjcRM2@!Uu7WynAxR zqEJrO0)Yk)eB)Sf*#yY^*Qz5L(Z%zd?u|J4F$d;E-H?j(koYdFFXLEmE`(C#ru;0r z@^|z$MWgwo@4SU(fi={Baf;O`=@TE^`m|WF01y~vUj9s(km_qaYpN5smUWPND)1eK7%)-H7Go z_|Dx$y0@1JdX`p9w}>^^a9>ElCpZvVya-)_fLvVEJyjkGWQRuW3$P(hcleA?6&CAt z{5eaE$QQ6itu1NQF@(q-pJEpDx}?BiiO;%)2vMNb!+)CZ^#iQQ1Bm4VnxgkOz@9;+ zfMoXze7RSU?q9tss0X|@TL+*qCHO$h5ih}m$cLw+7g(X_bO=hCKI6SA?wS<@xZhQH z^W>NreqXD8f;2oaVtQ!G6qm}192=@)qQ<5=@ml>&jZ|M zvMMut9}o@j?(Hu(gDuJ51{)KW{F~}3r!WCU-rk5v#LM1g+24vb5TF`B=xT@Z-uiQ#tDtn~e$O!_hai!%iKtadz z0OcFeCs2_0|7&}TzI?!pFZp&iYvu;G>yzd0>VM_5rs6EGsIv=sG5-V2a2^R*r|OH* z-LZ0cb+97g)s*6M&~cG_oP6<)*MSs+KJcd@oqNl>a8LhrE`Q!8#dC3wY&GwT>%|jU z(yoV^@8dhnMczjoS<6%t+oVkSO8mmMowg&N(7Q*8BT{p5Jzi?vlRlNHLVa+-(k13f zC-Xi%*amY!Wb-LYO@$T8isHILM<0CH%tk00P{2)v2ZdX4!wuzO zaO3b9@in4qKnTDKWrf07@j{6JT*cnL(;M=!sM4#Guh%5xXlN)#_H49ad{0DN%P;J7 z5Q`4*dNc7e@}xa%82I~}W%A;QgyD_w(ZOi{<#i$rM&|bN!?r~NRbwvf z^x+y#F37k)%RoZ87-1h#{EJtuZy;tgcXN!9qbsiezc;{P5mzM}qr@;}j!|J`3Y2Aw z&l?8K9vhe5`b?}E{jqHDJIaD5?rHBgc8HH{{XM=b--IcP&;Us~fL##Cy0f54&;e32 zLvJDSWY}~7_Cqo&K!WuVA27eVbWmUrQ2OZ zH-)MDkq_^kuosQL7gu%kevZ$wbjr6io@uRGv4=3$YYvSOVAz^XqyG?#e{?W31Potm z@JMdi9J*aT%ON@Y%J;6R;dXt~!?MFJPD%1=Mu|j2nI_Bmq~~`W?kU5%@hk@H^FKcQ zVO%Uo?-nf2$dU5@tWB93QVMlC`hYfF(vV>=O>Z|7wQmqIXYSC)P5N|DG3H)oeu88G zRP>mfe%W|l2k`_lrDj=3HWe$ev#=a3QxM-n(j5F~E7LAkdf~}?ZneHTlx*9+wH7Dm zvK+OLInibDMN%cN-bkoc9o9{2c~=}L;up{#NDK*9Ect);SefkMD@fz@;Axk1+pel~ zp8NZ$niQ@%oymPXxxfTiIcR{6q(!G0j8j`jCiUQs5xH3#6QUoHQV zwAv5@w)trJZnK?;t%g@YMI%!u&fQ1zXt{I7{@-!a543(Iy@yOp{hqaTW;Usa3Qus% zQ5^811swXvy~ysZ6Z=STGN&`)^(bB|xUQhhj1Uy@C+dT~YmDtCkiU)s40!n0nc(9^ zk3+b`0h^9KVmKo0MyIsP^e{Y`NgmdHU)jAZ;S{9~kM)$#A)P>stj=nb!389wIPRUWrtlcRQFIUkyAJ6}umlyaRbY|LOY|I_)L0Z1$< z_VlUUXA!9L+@K-q8k=$eRk<~8KR-;55h2cVK{=7jia$g5s+Y&rSlzu))Gg zN>0)^s@HXSa4|#HKXWAJ8s82$JbCQAbZ8N{LvkGze0Ul9DAKfa$S=P#Cuj!yVe(&R z&+XZFMi^y~%-9jJ#wk-AOUTH|)do5v;{Rr7zO?NbPd zB|lHu4SaGekY_EOoOSkOW@Z}HIoDTuSAIhNb2Z_E>O%OpC?W0KWOI2UxLh#{=U2im z9FK%sL3mPQ#7wIPW{6kXRV?)oGTpmFy=B+|t~|8C3xPn_#cZPcX65VWwFl>5Q^c_= zKeGk3>%ra4^*V|Kw=K`(?SZ@9g~ffYFARH$Jaad!Kp1`Aq9U@A1=EvhtHd ztoQ#W3dl+_OPlw1P7=YRIawtV&Z(zu9Dn%*(8ya@2)~19d<{Rz`s7lnwq^`LQk=*h z^v9nj+P0@&B#)ly)8gF~_KSG1sW+)seo}nFE!3iX{$@%LE&aSZmma{61qWl+w;#vd zZWgbSNsh!hEiJdD9JrRP>*!SKdQ(}B-pXhLz^@cd1b-u>*#Ty^>%egZ4{&~`X9NUXSMSIz% zRIS?uABmrZy%|&g=kAx@@=M87yAyr~CU5hK5v_Y%F=cn8qH+;cI&)G1`1c2^fBWX& zA|3}%S_!_rnfUPJu=H3aK=&$kN(I|L4j{1xh-k{oJ0s2GacJ&Q4)WzAg4e8o0HEPs z(q&o<5$H+%EbmE;Z!uk5pQnqjCQ^Ktcx9U3XK<-%(<4P7P5lo3%Zq+Y9`s0L*n;NU zKN%4ECSj$$Z(TdR1vqNo!zX2K+-|<(1?0Ys3Lg~9C~K`=LtLln_KJUctZB8&Xw9i# zHrGm|w&x=I4nnr%M_awV;EIU^vxen%7JDrtoL4}n%r#7Q_lXh zQk9+^-wV>L&RRdUgIB2LLzl1;{&J+sEhu8)Z92lZi`r#V&e8Mg*KxDI13np9(&Sgq zHA_&6(Iep%q5uQvfR5T3!wLmfL8jd+6kQvM)U(rtSmAS+S&$dLBoRzfm;7%>t8&NZ z6AKNxv_7t*k|8AS0@qUCS^wZmvF3+9L0@R1)`ghkkl1GVE+46{sD8ySW-3Dba{!O_R53-K?(^bNTK zR4j%$-ilM{q20?bgqN>gX$5gL+^YETZnYy+jx-CcuXI&eGxn;d5l zPD=>f56yn@e{0OXK5(w!t*FU@NgQ^Z1cZjmc4gt_d7@Ed(bhp&NmtH=z&8~HL#wAwI;ry_e+(q~JKc!vQ1}29rcpA7 zG-6Aj>AOqM>K!XAtMVKN;2p139`~pVoCpvX05*7C$2N;fo;p$Wl@@v#g$H9YdV8B& zmsTqE@c#+=?wOg1dsPdrEMY9<0$qT#jZ}P`$g8e#VeEi%1|>&ez1iDB{WBx?iS?|e zLBdufwXG@#Aq89dXv%!yR)SxnPDY7fR`T>gAoEQe1>NXkw2OV;^joeb^lP8G@h`U8 zcru@_KUnX4ao(xXQ&%%AJ)9FNj&(967NgQFR9?v^7(?L){1H|`=B)&*$O$~+BO8+2 zq0hDe^s3RAgNN$9qq}k=v6#S~Jd}F?{j`1#IxqBI_!T4|;AZCTI4Sj^?*;zkPDKOz zI!w|2NfCIn6NR2il=vuxHg22NU=BzWxO049nU=fWx{U*4DsVx10LK*a=h+vrz(QIe zMIUAV-QZV8&^`3Fukx02H`p6iSBqFOuQdl!6IkjlTWUPN%ba_Kan(SzFaXj)fdZ6M z#`gc6h88Ih7!D>>uWgwy^%lYMRDoYli5RrYO--`2jjZ>ob|-Ycd6WZ3PxAj_i7)MY ztJzcHPOeotji@eos^h{DG?X@O^=PplTROPaBUnCr;MC;@VZ`2uMPVRf)3rYT)%>WV z%=9#7X2MFu&Z9$}=b2=y>)DEHoUgMibwtLXPWFTDVT4VDm3VuA4A`9xaWZI%B#qB7 z45_ksYL65D6F`=%E3U)@28(c{j$Ur2jXu`8cH^l;_A4d8as49Bj$?aLk*1>^xS|Gh z6k9PmX@O*l#&mCKflFh%N2$RJux<<(r4y!5m(9c019w@Wh`@XgS*eNjx6V!641m#3 z_4kdGufFL=nxY$SZH}5o#8FrD$S`=VoQ2)1f#ak4d=-aX>_f(EUoUy@sX*a!H|o#4 zP@6u!&pY3*zBh2I@=ktE3%r!M3Ez?XD^4fFUfDP--A;Ibqg2f;_|L~tHBP)USo3N~Rt~{b*ZN4-=U)o}Mp$0gKeT&; z#IGOMjt!tQh~T6HXT#0VNy68XoZs!rp z2Ig6Kp|0LPLG7t5n323?J>|x6XU)UkLw_$3&abE^>^h}45^&8bWpS3K53%5Ax-g_` zMrzsK;*%k>IARvZN4~tO{z1UAgmG5}iE1U!Cm(+kPgq}vMOfXPut+uZr-@ zZw+lTNcO)Av?ia(9AX3v0$Y_RK1do2DILjrk*aOlOZ-i`figUQc)FTJ{U+odfr}spQ;t0iQ zVf;~R6IGLzL25ArsPXW79~8^`?m{158wUyM)YI(~M=LNGCW%53C6=1Ks>f~kbJPbX zw;{C&mQ;4TBH5^SJ8{9cOMn6QL62=((C#-Q)WwGS-nXiH(E-)#zala(lV*v~lwD8s zW_CW|@?sv1?cq7kB~^;bfo5L!s!-!|FleGy>N}3s_|c0D^`$aV#k!qwqZh%12b*a< zm=mUGM&i>>Ldxb`6CVjOGN zv@7bb3?DpsFNF-GDol3o;j8zB)l`)|@~IO6V~AFE@~~;$4?hrcF>_%{n~ea8_LP3Z zgVj}|v5igjv+MEemtM8W=B^>?H3QeAu)(~FS7w=Xu2U-l1-T)jQ22Y;F90d=z+0oX zZ#XiocJF72nWkP_1f-kIj6Pr4I~r0`;FmUPHNembY`v0lV@E?prUjEXpJzN#9Md}LIZYM1xwxo96)LdbI zeN_Kle$39k-z&o!6VRH6ws-{vbVqT zt=pY$`9!bR@;K{^--u{^142UC->#OxO$SI5NWDA#aPRLu%E0rX{2Kn#+kpmUmy1RU z+{djn$XSGSe_jd+o9@dy#@zRDHHO2plO7!-y^-b2>=3L8qnsFYe) zY_XftwARik1jAlXU-|?&z`8roZlRFFr_YuEXm_w94B&UB@l3gn#^erPYpJBB%>vPm zGFBcZ1`1QEv`&P1vRZ-4RgMfU|izz2$$?3quomrDMGE?et+Ea9=UsB2y z;-?U>o8Y_Ij+L|^8#ROB_4=iB()8}@qkJ?ct06w+C>8-4cRkokNEVl%3-)XyE&^*I zW$xhHvz)}$xm6U7X^kfe?;Rh&H3LzFINn@3(ruS#NWI4EZqR@3y8VdsSDg(v^WvYo z@dubB7uF!Wn88m-%H6Ty0T98#P8|+k0X`l}u8WE(Oiw2&S<}3e%yG!VOB4apgja%R zX|}d%&~u)i-39Esh0V+vU9MIG*t%6PuRZh43r_iRPo#4zO1^B$;n*c9yzhxl9GjPM zxwb>NgL~VOz#oMEYhrp{uC||#baTdE96QnjPd@$Gj*R&`ueJcE-`q+XVQ_szOaXrd zMcuvgu^DIC71lj>jkOn4*u8_JRsPd4Ge2nUFf9B$7zC3HzKw8SpNIvY>nLrU9KELp zzeym3L{K-k|WA` zr8tE-^xJ2_?O<8-0+T8!i|KcCB)2er`B^bnDD^#Ch>s9Bl5PR!Me1|)RTb;~2ufFk zM#(omDGFkyTZ~~zN5nrEaoca#ZrR$LY6&=!MA?89m@Th`ozG?y{l)fsCqW`+uMdrs zy+hzYF&W+qcT0W!uDMBJp}O+Zq=YNp;VHfGu66DB`-r5LT=plBE`arI%y9){ez7(3 zU4U#(^KQyajdfiJUej*vT6d4as-Lf7u=6d(SDTR&u5Qe^suMrB2!iiT>DG8M{pNLH zidnK6)Hj)y^Y^zCT@?5)4KVQZlcq`Kh(?6aptn^H^OD8m=KX@MWFHgo`un8;{1-Dgs=tarnPP3>!W>;Y9)>vnEt7P zO_^TMP(0d5NT6m0qaNKe)kybVvzy)uH+aD0*O#HtQ>a)@6Zz+8r=9nuOif8lC+$DM zw0Gq4?9tDz*TtX2kLRUo%T*FjDx|G3VjX5bVQ?4Ej${)Ffh=_rUgS&H)%N{a~~lS1*&8jBin8)T;xaT0FN9+TD}`c{1wL+T@k5hD(z^#7u4 z&cy0x{`Uv#gfLW5z2R5^vMO-(qlR{57jwF(Jrtg#9q;1U$1+F!9D`TsK%I7JBhTG^ zAWXn(g5l*ED1jWhYJ}D#CJdxf?*y^kAwQ$9JRt)3YztkyOu>h9z%Ai?4CcEV9^qQ{;bN6I5RyT}<1u3;x*L30mafXj@y0SJ)pJ!KaMd_=CE zzHSrwP7Keq0^%8x^gm__FBt=pXRs@afAEoCbkMe1|5SW$2hct@i3{Ky9jx33J^iNP z7iPrAh#=8~uq8RY`z3G|3(R>irWQg6X=ev$c=er_!s;lPCGCKK_s(|o*_*rc00%GG z>w;@~fQ}!$2e#j57P8TT6bClZ>XxKpjt%#-89ZJy+W)ffyuzBpoyfe7eLZE*eHgTo z(nk*vS{L%YjF<>w|6H&*Gf1M6|+)cyzqVyKnp{go0N?OvZj%!^+* z>ARcBGlk~4Kf~!U8E)DM;C2EYEEgHtkQ+%qrU9a8f%dNwE+56MMmi=lVgs-_ub9j9 z*r|n64rpb46i@Q&ovOvr4@WM`o9l8~AF9-jT@yvOc_Zhs@kt+mMk7Gyl>hz7yN@T~ zzDNl)DFH^P!j*+Kgm)>e^~Xdw|8pCnwqIlOcPYjIJd9n}^-rKoO27*WkE%0Uhsp0p zS?r7mCc4}Mk^RGi@Zgf~oG||Rp*-oGGYfLrRD!KPb#h2lz+5h3XKm*z$a>vo9rKy$(ck>AC;kR<@QD{1>Ya76%?rXoAnLG-Z8SqNH4Hnz!YPro+pAU z!LL+I+Uh%OcR*HAgosfrA9!qyfS)+7F=4iIyUa`Pv$xO-aA#J_3~MF(6nOfN9QG`e17 z4E=QKEr=Xtzl9m$mW>*;y1b+7@S@(y&tcYD!GKgv8rq!`3ml&Zyr2bAnJu_`$ieBG z^Z{Q0*Sk=7oVz{_85OV2%5vvR$C+kFoEo#ESwrk&ogl(=pnUeI&Mr=GPmUE&`6<-` zv^9fHBVU6c!V%0_)Xz@))cyefVqJm~&c&Dl$@|GG0G>S-gYx=4gI}o(xkZ!vedYkJiuMCLBN8Z{8=qRZ>mSlt93@bKnuzY&!Ew- z)%>4aEd%fH-lj{xHOZ}U=-Ra9_eWPUrN*ziWze-@8!J;`zJY*=Awrm=BI=pxdLMSL z8a1#R(#+Z*#xKqQhT49cFB#&I?#hM9bY@OL&UlAx@Cc^W6!TI#fJwiv2%}C>kDcud z)Qp7Y;*alUD!7=Q9z1EZ8>08Na37T}|6Wl|v$0}%>OIBRD4C>tL(dVvz=Iu-T7oTm zwo}uv`VysaF4@WDOS1f~Jv{I0D~pr>5{lK^Is?I^_v@;Me!u8KS{seshH9sfXQpbfp8iwy%^C~9akKv+4;}SnytF#+ViII2tNSVL_Z?m z#f#ndCE2r3;qOK-aKqTaHpHXxZ}WH*eV2yh*YGtb7&2&uKh1XK>;e{>1lG)~%cC2Y z9yJ-8bJziaGUh*P%r?1=<7`DJgQR>iKdD-Z0iDE&{dD!|Zy*8&S+f^@$YEr3kV9<% z6&b_O*zX)Zx4ErV1>fxRyY!zuVaI;Bl>Tgs|5UJQ_eZw~!VcNZ79`U%gqr!- zNPTjQ9wKyq7U71b#>%b4tgRarl)90s2?M9ReKhlN9fTUG&s~82U$C)s1GT0 z8K@omhymEDEl*UL{T5aaygyr}FyI;wl6cTAOxS73TfeAV8&sB?*Q5u)CfIRQGeJN# z-E%U*1ArhP<$H!{!ucl~4^dC~5$vd#8?T%n*EzvThHO$w%Lf#{2kIZ!f87w;ZF5P0 z9m~>Z;|PS`4v%frnTJ%-x=VG7HNvbb_oClwn>$(1FG__%Z2q&Q@rN8JtocoF+QzKw&`D0xV{(LApLCiSeGTw^lY zW^^_Wb>w#abaZdnevj-M?EZ?~+x7u74+ZYnj0thiq_z7KMG&k~QWvblNAPxIv*VZY zS8?*wJ3LE_j1Mr|6bc}R^5XFZ_bI!pyG0sf&#}YO(3MnIf1=!YPtS}F`)f30eLqRT zIE_fMc+gW!hx5DyCkrbiv|7yu2w)=!@VuM<5vSoSEbJBT@U)(9VOQpj+Sl1rdcny^ zO!?c|vw_%59O!0x!XiK$JD;fbc;r)!s3@T+u98{gjJb5(6k)Tk;VBm3crsYq0(DC z92TE)UIB+{&~U>Kj*d^B>oZ;JLc){|vhQ7fKzD4xzn;m@vE?HOM+k0kOk*vt;yUY@ z16mv1ZZ7k3jrJLimQmxp!bDfN<6yf;h`{W@mQuP}QmfkCSi|{b9mAyL7j$BGUm;$0 z381VugN!;Hp(Usmt5pz-9L=Tq?QRW)Khb(O%iE2k0uNBUXA-UE9gDSkM5$wm@%jDpVxT1RRdb!#t;l1=sC8x1JkQhK~En4P)AO|z|3@|#% z=NVwt=!xhnV*H1nA$esXLrHUqy%vzi3gT|z^%pq!INni&vizozr2H-Mm20gZ$XobX zsYgz}=I589|D|Wmag9_COVjslfpAj@=gGE|hkMa3R{oxbx+7FRR17}$$U%f46Y85V z8eR3b7NA01WhfoJf}C0ELv{>_Wk2x#>`x2ax7)vs_Gf!AaKW){ zar>Gbil7t(WXTr1)C9QZsSbHLd(>ClkQYnrkEXi^K!mE@x7>9j`*((9?+VUa5FPzo zwY+5l>z+U36D0aaT>-Lay5WRp`KGOT5RDy$WhOeHG!fG60Nq;PKpmM`tad0CE14(= z_l|I_q^3qu)!s*b<0lesPekMrxBZn-t2CJtDLVrmURZJIpVJ}TA8Ml2`2OW&AI|1) z;a&&<76KBY^F3X;^U=-^@1o%lkvIEtKu;7}_esPR%V1*3S?PO?)1`-5?k^ zPihU#bj0>n+UKEs?x*pEg=3vI{}G39u}%j4!wW}#{wf6*A@+(Yy5%A&#N4pfFJEbT z@7(A?_K>3ty1a<92&&|Ak={)Y@06l{a3WSbsqlofm_Kd5`T)evy3>zn{D&(?l*rCz zw|=+NMdI1xiHi(TUzm=`#q9tSBS^=5PvFGR0N}$?wuF`Oad^(Pj2PDN>F1Bw?g~dU zG}eVMaK6iQ;YU8_l!FxFW%0foK&Vs$b`Jy5R`|tRt4N_RL5Fm)4@MbOHN#t})Xy#(Yd)1OR5t{Ll*<7fAB?mp9?+j(} zysoIpt|I~9YdUn0Pf}wru88u20wdkzNYh3W4@JH5Df(nm_Djy_TGkLI-}o$nn>2!$ z8-+VaXM)zt)m0nf{f8ibNEAF{1GASN;+SW$1F*A6)&p3Z`0j8J)eRekk1x7-hmW2s z4U_tlpPn)A`UE5Bg6Q@rlkj8$?jn1IzqFh9*lLNTuek&&;!{uH=OY?5@H( ze1^HRghyOHqy@!PeS9CpvmCkSW?Kp(&f9TR99^I!%rF#c?twsfpe=2jD}God|DAU^ z&@lLiA%Ne-Z0>78vqK+;d@+6cazkD_`KBN4+}+tqIzW-h7$i@T(SP$ptB+OLbByr+ zWqo}p;5ms5H&6I~feU$8$Kb@SeUoRatPhpX)moiR5M>xxxyM^zNyPETfL*^I*n2Af zL^7WT_^AzVBAF1aw=`Z$rrcLYJrW2U179A@t_*$xEq>dP=IM6Y4vu-G>}*l$jR!9t zRR57(=ICG^9%b-ro34P)&*z~1_a_+s!U@|3T0xX`VC$4z?vjNTWPYD?C_TTY_wTo@ ziR0radXWdg8fP?xvYJUIACgT_+Fq2*{AN*_=ym5|^Xqe(@EG3q&q2WCmkO}w3;GUw zYV*k(r`(%q^{@|rL^wnl+bBapirls!CqqQmwCKfyQ?E)B!iFYE&y@HL=YY4_QfviF zAWx{^BR%3Ucn5X;3gUSGV6nBe~{dT${Rpg+3al#Iuv;pELR!ryaY=^P8o4#M9t5!z6tfXfE>n=s00yh(zG6*Eh1%@c<^Tgy5j~@*CV_F}8*G;;c&HLs^NX`MWz#c>S#l zvdvP{OILI{%crIlE$7g0GHZ%GfW+ZfuB~_U^I-0;>;e=O$3&oiRT6ej@2O}rg^b;k0#@%Xk+U7;ZKlc&r@D({?7ah&v!$r%Ckph z1Ja{)c-XuWh9X4L&fz-x{6DD>)i;|tYC~5Nn(6oZQ0}G?L%ex~9ig9sQXmKb%F54@ z(KT^H1e$_x7nbaQdhxk|>#63Lp&drdz!MROnHUeGlkv0#)wE|k=Arn8bc?|x5PTZh%GO02u ztRfEiQKhJhJU!y~rS+_qQA|$p)T3HC=HEG7yL>4NyeJm@XYeQHI00PtZVjK9-^Z1Q zUpVrvsqX>*+QZTwmu_UjEEk6vclnj`H+%KOH~jY@Ui+|Vms^u6{>}yt4k3Zp1HXO7 zUzzObm*a@JP^6o-K{&agVouu(!Sjen@dv1nvegtC2P5YL(oLi`z?&IJ$SVLcsi%U2 zy0^ebN$d9o6eA?9T;zEhRJ*!xN^(dSYzE(R4DSB~$uE0Oll$kQoevL9@cW3HXXCrW zJXvkY_?9wi3`4GmT`!`>37S)N2e)n_)|3ZvbzQ{Cfn@H2)1U$0$Q zYb#v)p39^3DnLkRE};Bsn!ntYNz+9uE(egD6%&gR80biHVp%v3t)BDh!nz}Lo7s(* z0$G|=shCd%Zp6t&o|GclMo-+>lQ!w6$n-7}<8$tEnEVg`%@T_!1f5)FpN< zUbk`vh&@U(;z8vEA#l>AQC`iWW?l-#WG4*e8XsmpuX{b4g9$jeh~#(=1Ig0>B0T(a zI&%5*E2G3pLMN?5Q*GAz&)-6`Z<*_LyRKrIqxvHFpwk+3@fn@s-G5#$Q8oVWPGblE zSaw%v^0`k&vz-1ZxEE8@vW#=5G&a~}7VJ(_z=^(`#IyuWm41e}Zbc)TOVcyRUAJnG ze%ET7%>}p2#OMAH3vrVy)ftA&8Bj4T$f`(y!~v((9QqbzX~EFln90`J;<)1R$| z6Krwv!*$R739q(AV>LlYLO-{o`el3WLqw=4LGUJS(Ei(~<&-)`6x%(e=E3_CA z-8Soq!p~@HyM6E@zeeGH{GPhA^U#}5k|=iRxs5ta;>!Q6U)eq@qj1^Xa)X9d$7U(G zrkX?El07*Y?@lp5r@wmbFdbX%@BGI{CWO5+a3F^$vU5gSq1!Ck`Ms)v`~u)X1&y^j zpF`c3z5Z5rSAPFm{`jQ@Ls$29BKi3T5wI%27D90VH3ZI+ren9jCDSWvSAQn^I*Hkg zHHLg$O>1q3bgz9sc64;A?At$A@<|j*^lFfIO7qI@(1LX*4sB`>gK{iJO8^hozR2GL zis<{=VlGJXD}d)~3E3tUnuRES=%x8nA68b9t_O@Z!cM_vzkajCDJ4+bd+nhNeZEFZ zLf(0O+Iph?j{}mx?_l2Ar5xIES^VxDHrNI^r3Kn#c+*!t-pIh@>r#l|Rc!h8?8z9M zBjmg3*0{l5dcZd&E9Rg;Whk8R`a3C0M6x zGde!J-T|QUu`NxUIE^s7detHU;Jm9Pv=vB(AoQU5uYA%#i9kThoP=kDFOS5-A7UUP z5r^|S%)1EI{oooaLIwJ-EZLQ0?m?g;u&@wvc`uLos1_ZSbZQO!oQl!M+7X){18nWw zvLPCh%c3}FJYt~!X;RUm`f02e-=Fdy&9@x~s5%a;8G{0U!hn0lriKrhAt&SVmbH1$ znS;i)saqmIOFb7Jn}H&alK!Z-#hO2}wPmCLgRc<-i7H@^wC$|kJW?h?LY5iJolzvu zmjO&5+D#x&3m=pTFcZX={ueQ=JbpH!Mtx;SqNR0C2Q~r<@(D*?q&dmE)gr|YU=x$> zSv07)m^}u`{O{3B5I=jswP*Rn@0w3=0YNDas3`Fk&Mg1n9(&n=A@%d*wh;TZbZzpp zb(t^%>xlzE`Q%%zkDTpyUyYwdE$b^6P95KPK?x%f&@2dqr^wejWC4(nA0#*oIJv)H zw-H>;F}(7_VJ&L<=zRmeW~cI(5C3~jpB34pv$QoOU!342T?4*@9p2GWej~Qn;M_ms zdFYGw@wG!u!D8VC)4PAlY*`DJGkz8cMo+|80JI{}a~?Fkx;IMEtB3jmf2NcdFUFTH zEX0?2X#tsPUk|YjHn*8Pf7A2<9wpB!uQ*?#R<)lszi)X-+n57~c7ED%;GW-=6dn7L z;O+~Rw_Vd-jx3A7tv%tFGoRBwFz-jOFgX% zUGM{c22Cncyf7X0O$H$#8&vf9Oj92$^^VRTQKQ=lRXkKoL+0G>lvhI2nepCy1CY;c zZ%JNLkut_WTqAXXP>1*1xc{AgIuj^sLd;Ku2CE>x?UuOOX9GSG+~`EA9qhyRI((;> zqj&St<51sJzAGa*Q+GY7le4(^Modr4VfS}E18?rT01{bSXI;%?7<2BbN5=b*bXgQi z%J9g?SFEI^1~S3n0FvpIM>l_I9BLlO_O>@}TkDkK27RXROPv<=YR$b#w0u81R!zY^ z(%8zM3}FS0W0_{7PwrA{U_dPNcueRQW7Q}6WhWNM{=W+ESkh=8-J9E z;89_>W>H#{@BWol4+FG!E2oZZxd@fqeQ72C2%C%9FK%#esLyHJP*8HP8|XJ=5PgUh zqvpULfGt;bWA+$3CzjXg9;LxS!NO3*{c$#oYoWvLu9wWAmWb=6o1pBd#{;O@Es72b zQ5Zdt&TAyKEA&AKxFWF-EZ;%mcU$I2Q0KjZohIcvR(;22k({n)?%Z$O8K_0e4A#WG zDb=v}N;@ETKqA23W>vFkQ3~mnA`!7|_^-gi0u+LPF@j(-)-(FG?J-(#3RjR{r*SGe zsiO;D^nS5eX?54h^9-Yvn7lX!pf>fjquQ738uGj4x2^^*YVNUn&ssOUNXXgDE1!hK zlH}LomsLW!$^rd|*_-0_0PNco>E&gVGm}5KrbD;AZVWe4afGtBsU+;7h~+mQx9W~_ zW-S4uAOTABF--FFt$)fY!VT$x9vTQfDc0OU4a4g1-I6Qp32m&cg$zHfx^moNACibA z$4HkagtE!$h~J;E{%TH2mwG-FC3@FZShA`nesw_DuN~EQsPdQ# z47AO*!~-l@B~$2_BdC1DZ!=(?ej5xX5cxcQaA$e{-38Db*wjqzWE{WU5 zkn2LfHv>l(F$zH4vh_j@S=kY6{uYFZ%9Wm56(-}%|J0ih${NtrY%B`w#>}6BN`T@rGTE^f7f(E+;_YwV+UJT$6G9fq{P^XdQ^r4G&cgvm@L<^+1g7tUrO zz(a|hYk^AnQ`NwE15W@2WsEKf6;JKBs^b3~0bcp%vyX=sRSo^=!8*3G%Ge$g^)06(V-yr8Uzcpbz6vf_X>#6MI zJe2nKSwQl;Fge_NtIim`Ut0_@+$51Jy10+_V#{aSy{`ul+cj40OnDJ=nTpX)j*1D- zpb1~B8eLic13LH30HP^0|L$wnD;w6|E~~Csy<8tZsTmn(+@S@QVmUmr;x*o@PGpU; z6FgbgdTtJU%R1(HD~{bdnCN{Z28Z5vwD0kM0zG_hy(4%wbQd{58fPraQNPy?>Qma+ z*W!L=NrFxsoCg?m)ez2M%eE)@277k_sr z-SY_QkcZ2=57FNr+e-aRoNHkm*eXojt3T#DIV~-eME*&+A z1tHzU5uMvmv&V?fyyr>k8AOuUzpxt&b zfW~RjMyhbZOCsKsg~fRHBajRFW?1xqfBkU;n;*q@08uL~rhipI25Qs_RZEAAgKGKA0hP1UAz6K1W4wQN z>(PsEe)2PSbk=l>utsmg9YvEbg+QQz4pen^i2DKqGH0ginPUy4CKPKSw+dNPYumO=Vg+ zUt(z{tS*14U#F)XAS%AVRj?dA^O}D86fmX7Atx`YhH%a*+ zXDn@N6^&QXY^I$QoG21y|Fjs?f*OH87uJ?nCo#nV69<$)gzHYZBzgHC`HyN&Zr^{a zBi%)e!R)WEtpoqz?y{pNjYy(n`34^hJ|^8N@Oi^&boyrnz6&^5{bLyi)Qph`F1{*c ztb{s2*o3DUVEyaa`+@Z~_^eb&v;!z9&uqzkWDIcNMHo=!Rt*nSA5*y5I5U>4_ai3f z>z3l2o0KAOp9#CU1z~ZVFQ?~WugXRZ?6df1g zpiLX#0hRa&=8YKg0d=EtNDE2~Q5Apb(XDtJ)%4AWK-n|hPp_dCs8 zfBcEy)jL*?l)5!Q^yInl_lf;NIOCwoI zyopk3T0&yymp`vt^e9Ncf}hksS8B*LOnO3U@K;sTe75OOXWq6yv?A!dO6Y+x(SNo@ zloMv8G{rClNODUIovv&$96h`cV>1r-=4@EeMA)u@*4#@317S# zAnkPm_@aJ8O^|p)H^z}FKkvu2r?HuO9$ySIM1RjMonq!DbHg4g&;bg9;ymZz%F+hz zJncG}bs@-{3sbxp4a<-Y0PzNohyU8HXg6WNN3iFxJo8T*q4FhnTR{-Tkd$Oa>6y#i*jV10@cxY-g90#iO3=Og%_2KloVBW! z%8r-7s@c=vv1Zp8@iY+}teZmYA$e{uSsd9ra)8cn$g&4t!rwGs6`HU1p_mZs-}5E$ z6Tr)WJvJJ`Mla8*p3oH5Z06uJyzUWMvBpj&g zaz`Wr**Q+c8H3>+#mMoZ6Y7M4Vp?u3KqDEA;}&5O7jV8*WZ>nUtw+J zY9JEL@>?eFCdH}ckh}~w5-J$L(7C56R3-ahPHqF`G8KgT3Qq<%M|ken$~5JX%F*KP zlSVVtu`W|mPo7_`iBOjcKU|h`mSGkxf(T?uj81l4v_JXRl!bpF0+tk6kyxy&&GNe} z@S>rR(@l8xMTS5Yj#d@az8%gHoX;Eb@ofMI3T2#~8Y@4}c^G9FJL#v0avIq7=_;Xg z`5Nc;G^j8Fxv755p1P+ueP>9)THkT0VQB?IQ)8FvHzfNoxRCUDfs!+hi?Vz$3=@%txPb)6^WOejb*hN zor#4LA#eUhPgp({v9r3fZilhkw%~=QmOHsn@axRZZ=720{LYBij02lmtAokW)dzA9 z!T)?KIHU2rUyJong%xS!CG1a5cJ9EsYT!k2L)jLBzE!paX}AZ4*{_JuOR6gU(oK7? zOB>AGu9`pXI4C80H>~8QN`i_QHbgHB%COogB(m=n6%tuW7==)ld}J3w*|+S5nNiuZr6NK|_I=-XLI~NH zv1B(G+hE4b@8UyECAAy54=kv z+lF2YVh}$A31yVOl9ubwdyrf1tB*l=n8=6?rFNS40AA(A09#3C%EYJYD`W{9xEHNO zhyI&|=zfDyTtS-(iuK&@!Osm)Cq_LgMyy5GzI2xvDX#7ti~4 zAvuY?TM;4DYe_UQi3--VeU!3_btBgJu;vRtY@$`lI#5=+@vzJ`!$ClEYALn8ESF1N zNy54-wj`5FGCs^MCDSp`1kKaL*?-&jO$lW#g)SrM$PO1;2RZ$FyQ4j&_WtMN!G}5b zkGhf0u|i4Zyw|2y_cf$HmGK-(?(799Rc1g6UkLwP#7hI$dZQ`sldAg~5|Vw6%)NY0Uzz6q-HE7-l?y)B*o+=)q;Y`~C(X3dm;OxUpw8v@ zG;aP*7s_RJWj{XM<6?Tc&BSE9RsFQ+01N|L4U8-zre9pnb(e40yd=@m@$AlwHm%SP z3P;NG>d5a8Vxf{=+a*L^%k`%FLuy7gi>vEK@0krxZ zZGl`1=;}U3)Hd|G^KgBmizuLh-R;Q6zmz^?_|qE!erJ4xG)~~$KdC(y6YWcLjhj)R z@Ck&}>OLh4=;x_*a(kcrKclvsoH;*M5|j#vC{?2Y}3IffRnpo_7=7Z0X-fYD;wpOGjQucT)$!F??3 zVaFXXzyfr3gH;l4y8km$1MI>*Hd>#QpD2;bq4S9Y8KY}Dh9?0D;^aVBDf-#G6M!G4 zqja5G1rwd${sbOpA+K~#_5qZXFGJ?loy08cR4?Y=xe(Er1dl7t5P4t=?3#Lrgf*Hitp2Ry=pg2>; zMrtdX5;q@mb!LIA=mwI88FHD_><#FSmY6y|i(IvhmEQ0&gs0pOiK^!J>b5N`DP>Ct z6)dV(dFxkPAI|{p(bR2XTffa+f5yr!DGbJ~+(9Qk*3O3hrB~m+a=c__F4ahWCCo#9 zgv{*)q-c#83;gfW~6dcM}NI>WGFiaUuMT1YBizi(Bl1 zZgQi4te*M)FROs(OG$?p+^&bfMg(d1m1CoGIAR;pK+&4R&v7#ATKAU^HI>wKJNB1hg! zYaztyQuDzlEK0uQIt4vQd8LuXDps0kI~zj8yP7mju88nFcisBpec2z{qiI3h>=-L* zXkgpQEj^ojy|IE^#r|0X?a1a`4f4jTX8{erI(_{<&TOKT7LCl`ZWWG2nw$QXPax9# z@5I$8v$}xiaz8o9pA@q%z7j#cM*vz<5ADu^hT3J#{aXN+P*1bxp4bn&%vOARHt#$R zu0XLNq`LX^n_`Z~cMpD_gJ&xrHmS)Qb31Pp;^VPJt4EQANA1LO4BQr&f)~_nL@%bs zP&>K8xcbF!n(g&2>V{@7sGVJToEOf|6AH{+(x9M2_3!y&1#rrYjRGiWMi5z=7?%cWNNBD0j3nRyI1t%mc; zfpi}72HD>_AifrYpK81l7Blcm%6f5sxe3Lt~+{E>s5K;diOyoc7L z-xVy%8}yl+(sc3%Df=ydmeA~8vjtejh}b;>n0k;e1M$)WnL>*e$>k>fC66{UhxGaw z_UR2$>abC|$dKO8#vO`|Tv4$ia1EPlJUQo+4+N!0=|-x~U=}SeMpo)1m&_MD>vZG& z8>nEVXwD+zrw+>7LzQT#at^M>7glEZs1;?UpL?pNZ~u(AU#lDcHX{%Wpk5sr@8dpD zpmg@k3^yBeq$Pp-y(AnSS^{d|jv8aoKTF|IGS8_}g@WPC?_Wv3J}1SPv0tD6yg-wR zlqbKc4~UDUc;W#WvSm*pF^^ZegzO_aNS-(wz*-_FC0R}qe@|D)afpd83yp}c!cpZx zPmzOuRdFA1&_gv7?K~55bq%wmG7~XVe<=I##3usgx1S^>{s~qkS4>IJ!I5mGLDdg+xG)UI{Fh3d) zM78vPTI-L}z7j|AZt%w&d$7 z%B6Vsu5I|uzjmcHE3Da4zC;W9&H8!M1W7q7EmJ}ISMkdD=Ag??p8=?C6 zn>rZI`W*}F@C>TBiD}3o8P&e_;v7f|44B1bq+*%+vdMhpJdv~n!p7El!UKQp=LBm< zOXY;U5ye?hJ)=bSyI7!UZ8<&U4r4$FJgf{?)bUN}S=s4>(N=4em9l@Qfsp@#xVrim zlpsZdf-By&ksxa=03r^tUf0SLd-uf9+nOyh3x%f?R}`A~936ba(=oG4kxD0OM_l?B zrZc9z76wR%I=V`otDAks``a5=e+4{9F$}RMxp=&tUXK;=CCxHYC|vKtzR~w-s{!5c zdcq&`f;(e9NIkzJ1tTMC&zotg1APyr&kIn~(l&1E?qFO&0PP3H#?=x z7WBnqmZDlsc;We;=jGHpUt4+8;_cYzO-Afp4Pbn!^=DG-IhC{5imK%UainuT(6#%? zW#lTuuQj?8LYqJdEEyj^)dmci9I60!cJ@AKS>z}Yi@ z@AbX9edTtxbyNJJVU2~3HZ7B+uEn=n%9u|FL?Faq9>K&E{y>(x%+^@@J)b2YwmL z;y^ku-r4}09${HAbF&&B#a4M`;aCA>-^BVHE*e$mYotgk$gk`&x3hmkb5YEp)pI%c zCuV4Ka0~05qB;d2U*zGvy4OK~3b>tccj;n^(wE=H+&A|Rq!Z3P@C<~i61}6rHYYqo z$7nQugIUryMyR7aIseh`xGfbeQZqvhp>6T&u@b;y(jlMZ6joRatJrM+Qhu$ZJ2FyM zuIKCP{=`l*6sq>jh818xO}*@FLuL*R^I2OHr2Nz8IR zf<;nHHtmfh!aL}~;|p;R@0V1D57)jpYNt+UwJ?Ip=R!;%)A%IEXbH25>KSSp|Cg+f zg}LP_iweCyq4$^=cM}@eGP6m*BiCg1;c6T+MUKm8!wUMx*AuIAHnzju?~wB3O!AUtG-k)%S0QN zFj+geu5S1U%5|r=5)DlJZ{Ds9r23n^Ti@ISdV9m$=#_4%WxTwIrcK`upa>I*``OS= zS9#~W{?kb*;kWHPHD!?V7or=EKMc05q z5O0*v3YYqEyodZ8r`|%DX>Rr1WC8MY)zF$M96mLY_T;~8GdA)i6S)xQRNbgBh~9c0 zvJuICQMJDn=DpEQbklxY-n~Y5f}ahMhQ=DD&Pd9018$wtbC>L(XtTaj(VjK)kC6L` zVIE0vxtr?}fD9IbqYIsNl^18Lt@WQuYJ9-I!7Rk(Q&aB9ohT~$;QD)888-2HG|&h7 z=|K1BF8@Q~-zM2Bp7rOY^Mr=(6hA2~74?{W8bFF>d>nlXXlF|@nJ@1K&Hf*~LhVX& zO}E2BFj=74^IN{DZ$!3d(3A!4oaS_y#Li}v_AgrltY>nTbS9etsdojOj{A;WHxVfy zTX!6{`;83cNCam(HOU#!4m0bR8^G@@K94o?&=rM$7h==Ke>cBj)R#Ib=EbOM=Hwl| zWsvAY`cDaZ{tXy!glLCczjV^9181Rg2-xgoCAdER!b6nJ8t1yvVQCUbgmBaV^|CtB zznx2yW!J~7EC|L5v6Le>ku`E3)?Q>ymHhl!&Y zg(x%R=T{s8uYr3P$X?V%?0ML;8Q|1K#R03fZlxqF2;yAY1c6%{=nF8O3!%4g&|x2uF-Hfc>ZjySMV z<|CMyF4zDK)>zhhwSg;#CVqY}GUV=OIw>pq+HcMJ_}G$>ik^c8J)_hol4l?g066f# z8JXTt|4r-|3O4n4fZzNUjBw?fOXi3;Xesyzh9o&~0+5*n*WJ;5N?@hfKf&#Qn3V6Y zUWZ2+Dp#8~z5)Oe0N?>~aTkyXSc5iT@}MOkn44&6M}Ztcy=7q=FO5_I0I>UB_U6yT z;{`;9-%iBD&TsrGvlf{SnXU4_D(tv<@i)%uuI=>vjIriE^ReVn4q=nitGttdB1+Gp zl0y%Y)#;%&;Rn|fem(upZ>CUEza^5;wvL;a;>5I6RJ;JZ=7Z?b39#Sb89kH$ur>M< zFYl{;fX|w59+eV(8b5Bruy}Dp!!*ZRlPDaphI zFMsahcO9gsv*HUZ2_cU9w)%E56P^zZvSaq|8VLgUu{C-r#~Vu25c!ij!$7$vpfbPy zy(#XRCJm6V&|vC!G)+XIYTUBr4H;&*IYSSYK!OZmf}wJpE}1B>sSo^PHeiwZ{9x$u z^dbea4}P(KqGBZm0Rhj*1!h=D8l#)@r7JeyPJh~82h%-wv@H?fPE24cDfPv)La+mr!Om~6N z9h9McW%xqJCgSi8)0+K!wfOUxQiQX$O(fB07*a?%(_Qe{ZzMin_$lX%fkNXBC4ln2 zGWUU75x=`cpO{iNj?Tz*$F(JemW7Em_+Bg)vwooeKVtugoCEWbLXi+89PcSq+tE+0`AS-)G zj{bE?or_iWwcc>9UT(yT-)q+0Tt+?|Yy)I)`;_w|?S1Vb(SBoV>mgwl$|Y!&sbuN+I*cGY=DHqEW1(D(^_KH_!6oCJXjv{3Gljk1gA@7qZO1_xdZbP` zI+WCy3O(GO+$3~Aq)+t|n|n<`Ph9e8MO2^1IB6>4TNLOKuE{{7Q%~=M(#eq9_?`hR z2)8dICWgq2nTMJhitq^kz>d#jUhMa!r9Fyd_o^(-oUwBnj*yxT^;%PY)Q1`5q)+x` zD{}R0Et;nvDc+oKlvlJ_OMJn1x=3;_0KF0LMDA6n81`xeqlYejegD^j4Dgi-z0!Xy z5s4O>hHWp^k44}md|qsf$Y}1V@bV}HJhype>X&?L37); zfC>XXV+tA&uz<@5frqjVVXLI!#TypjYDz|l2nQg=@5PBI|9Eb}pWvo0tXQg{xW3lI zZ|ix9Fp(aNaJf83M}~AN!`J*_5+5fbB+k{XT=|t~f`$t!`}FQkh8f{ZW6uB}w?-|HlR1Xr1;EC4cOFZMy%&l$#M!8 zU1KVyGDNtn?E2TIipZd(NkHiWG~OaZ&Pqcc1zUGOOTlY!{8c5TZ;|Bk0&5 z1{Z_=k)j2%5_=}BwWSM7P6>)KP<#|#A(59x5D0Fra1C77#NhN^P>Jl}e3At4>n;{< z55FC_WNRvwNBi?CNV>hWDguj0_%B)}*M(0kMlAV<20nB)M%tCui~zV!er>EEUhX#6 z$B#xiIxzx^T_vKoM~qxAH&^v5)Y}(QNeg6HDBF$Da6@Y*Se+_lf;Un2;Y8mfLww?t zvLOF{1Gdxupmz_Z>6e6Z+g0-JXCwnf>F5{WF-!@W*e?#3ZrI$u@0D`~i7&(zy*_+% zJl^^#J~>k4?QdAunyg0|5XGhKB!VzxH*zxvGPTa9+p?C~0+2whTmQI$99 zDJZkd*2s~*?_{@i-1*LgyAf9@XW*I7#C6Ym0zzuX63k>W^gP7 zLd?82p26!0JLdo?0TCHjKt=Dy)qGH1EfC27$yT2mBNbz5B|AntYbzqXt)>Jogc6`a z#6L5N-Mn!^8h4O1o5usA{nbme6`CjmcUt7a#ltn#rC$|l60%9RH|@^@4^ODr*CQ`U zPb^-VrQwFvP?+mkA@Fl>&)S!15`-21Tkd@r;z&>*ZUaz7rbK*KstU?z7JW3f)*6 zpGq*y3|xnpT}}8}@I*+xZ6&*VCH)aFZ1i3e6rVHC=>VJ0aQ&@g@X&CeTo+KuS=H0D zj12dU)_lo+1{r=xi3eW*MEhNyClHLUU>NdOWguvLnAW>m2$axw>H zB#p~>=N@{%juxE6zL80*n+ZHl>A+7JZyQ=Y$iYK!#hwS?8AUZYC@k{{yBI>uDtr3| zW^r~@z}^kgxaRxSs0ZXop9~Hm3gpMmals3_Jsy^Q2Dwzg(gV7Mf-B&XqXgDCpK2?i zOi##cM}}m$1lyt7IV@5D7nVfz5gX9=l1zTQM(*as@g!+uYqNe&-;K9^47bwFr_L8~ z0OMhvwgn!K?L)E#6ni|3S)tLU)LN$<8@@$2DxixuL;gASxsn51d)wxRpGf6#ZjYuK zoy{##u5`f4PyA{Q%~yont!?+7H@?q-t3POmYo{^IN%3togUi>;7h>-*g2N<3?!ATH z@oe!t9Vi!s2Q940FasWGWkC~Q|FW)T5k3?&42=Y$&h0@#c`&u4&T#Yq!t-=^>!@{X zy*!Z?<>_cLC5 zjcBTl;w6>YOLa@nPbpgX5d%x+2=3$BeL;l&u|IXf7bcE7V`O*LXF8Z4m>k%ppMM<3 z{euo|>czo0%qL8U??SHpb+4@^g);b z=!LR{K&4+|0wNKfyXJUI(IX7Erf~?-XVDN}(A|R>&%+hvlt6tlK1Mty0a*mluPHe9 zV0{c*6FCLr^YEiTQDOxM1`H;HezT4n1VE3XXK@AjvH@@HX-U z;)4AuVZEVPTBbB<8&NsV=(6&%H6VZso7UO|_= z^&rjmJ(}dUIdgCA^5@I5Q=ty37T<0!cDIi2?J3n_hWC^3G^bNJ(em9{S+c+2^MPI@ ztfIab>zpCGf%c4S>*;QQi%D-Lk44F1WYNrmSnXSHhtnkd z2_?`e$J3pmA$#CU+mAn{NmTUos{Lj-u93p(;n(5aQtqUUYA$^3$~bdd^Q#YOTp)3*EpYa1Yn}4@svU74&EZ;j)C-1gO>+fzhOPrx|VdX-Xhf- z$zfv#3|F`w3E~^h{$(3HBfG8SpO3R*PvVc_@3^GEIrjUo zB@kQXhYq{?VUdj-xyB65sme>+ds5#~FAe-+*XylK)|`wfy=m&6n@LGI=D`#=4yttV zStn_1SbT>YwDRB=sC)Xp9IkHY$0cLhE}8eqK|nDMAj4gW8Vj=o8_`C$QMmLI_<{O-HO1>zWp3ePVuk$_>GOpe^)miN+t zDEP3iyOqx4JM_Zc$`ZM^|7dDRJuZ6;IP7bhX*fKOjXs3G}KMA0V|oW1v5|upNvI>e!PgB zsF~a6)biTpA;&q6%+7XS zjb-*dtVd5DXPpX;#&*@EeN^Q^_fgQglwY)nSB391!4|?J-0JDxma=JME~mR3(nJ{V zd^xUgf;CiK_H4*)_)s9gT*|6{buYd&BLE^e!aEwx9d9bzuNj?c0#tesV(@qVP|G|A ztS|+Gn^g!yAdZDQvr0Cv z=rN~$d`X{l0Hl7wgqZT@@B*!n_+prYyY3HD!%9azIbIVxz*>CZ4MB+1)~iz1K9)- zG2p8#(Lp#Ur+mk{hY!h44=^o;iArFuHZ(VF<2G$f4KvR}zRbQkI+5TP7`eR$QS+c~TegDA(j^!`%dA z0T)2NN{;+A=Vc5pW+q_1dd;>akwh_#K3bYCsFhXU4x*Sau?FHexO3S7Y6Uu7j*voM zYNP}}hSVWx>_a`GakF3FS5s50-Elldd!u`To0Q>JNB{sP43yV8v)6``e>jQuBX_TpCah}kYpo-Yd8@yG9eB9YKjiUkUkpjJRs}l$;=6%!bmjG6T*GIs zEZ2)jbHcbFsr=4R;^7JtB|uBsST7<4hmoDmYOE2$Q+wzYqGm^jm?Kb3S|_!GL*-Bd zE5S(d&O~92)-sypCu-G$Z(wefIdcRl5h6b#$p^xt^oGJSLPw4meteisumhi`M1B*w zuK8@)A%c+qjhPMTN)M3n&8?M9Wa~${ULwlq)@Qhxk|6^jGvE8eQAwRy!E|z=UOVV< z%tjwyVBm2tNM@kCq_h&%C5zpA5O0}bHz|O|M(E*%)V-Xf&=GS_ctIhoqY)?K`%(QH zG(VWc;*u;Vh^mcE_R7Bo;0Nv;+kq7a5{&hNLdCN{$=46ElB(&_P&W3xANi78ex-wD z<`i>e@Sqi61ZM%1%f8w3t8oNNPkl#Az_=Dmh`w_Yl;;GseB|%988G(iB{~%VTPAQ5 zc>EiILG2cam<`{}o9k-si8Ib&wi z)X=qLn`5{+qeO-*CCIPkz1AtH!?V^Vn?65v6PcBW$xHTc^azYO^aO3U91S8eI^C-I z8qKSWT{b}(cXq$xcWlX{prMQ+-={eI1%v|nFlozok7)lD%FN|16G9nIA|G!|CtDj^ zpb%vOv&@|DJnm42CD-b*kxof%mr)#*Q0;Y1#J;}gla~_YaF`ls!_GxJ*;DS4I#+M= z6`K^{sP8?|GM#X^K;NN^yY9%n?$Dd;Y5OvB(R;v#qI-aiB0w3NR(ip0Rn6HIt2+Wzh3i4g;Scuv0lrHOxc`M+xz`5&~%bMh<_n6Wtd z4Gsl3@%4e9|LIcx^eGUb04FmCe*Vqn|E|S9U-@sE`S0KJf7ST^Gy(tL4E-lP{|_4f z???Ub?*1P&{+~?r>9hZ?kN;L}u@0qzqfCfQHG!?IkGXmg8RY^lJ|GwF) F{|6}EFpB^H literal 0 HcmV?d00001 diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/index.ts b/packages/superset-ui-plugin-chart-word-cloud/src/index.ts new file mode 100644 index 0000000000..0ca05994ec --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/src/index.ts @@ -0,0 +1,24 @@ +import { t } from '@superset-ui/translation'; +import { ChartMetadata, ChartPlugin } from '@superset-ui/chart'; +import buildQuery from './buildQuery'; +import FormData from './FormData'; +import transformProps from './transformProps'; +import thumbnail from './images/thumbnail.png'; + +const metadata = new ChartMetadata({ + credits: ['https://github.com/jasondavies/d3-cloud'], + description: '', + name: t('Word Cloud'), + thumbnail, +}); + +export default class WordCloudChartPlugin extends ChartPlugin { + constructor() { + super({ + buildQuery, + loadChart: () => import('./ReactWordCloud.js'), + metadata, + transformProps, + }); + } +} diff --git a/packages/superset-ui-plugin-chart-word-cloud/src/transformProps.ts b/packages/superset-ui-plugin-chart-word-cloud/src/transformProps.ts new file mode 100644 index 0000000000..0186322cd4 --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/src/transformProps.ts @@ -0,0 +1,26 @@ +import { ChartProps } from '@superset-ui/chart'; + +function transformData(data: ChartProps['payload'][], formData: ChartProps['formData']) { + const { metric, series } = formData; + + const transformedData = data.map(datum => ({ + size: datum[metric.label || metric], + text: datum[series], + })); + + return transformedData; +} + +export default function transformProps(chartProps: ChartProps) { + const { width, height, formData, payload } = chartProps; + const { colorScheme, rotation, sizeTo, sizeFrom } = formData; + + return { + colorScheme, + data: transformData(payload.data, formData), + height, + rotation, + sizeRange: [sizeFrom, sizeTo], + width, + }; +} diff --git a/packages/superset-ui-plugin-chart-word-cloud/test/buildQuery.test.ts b/packages/superset-ui-plugin-chart-word-cloud/test/buildQuery.test.ts new file mode 100644 index 0000000000..6c1d10d6e2 --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/test/buildQuery.test.ts @@ -0,0 +1,16 @@ +import buildQuery from '../src/buildQuery'; + +describe('WordCloud buildQuery', () => { + const formData = { + datasource: '5__table', + granularity_sqla: 'ds', + series: 'foo', + viz_type: 'word_cloud', + }; + + it('should build groupby with series in form data', () => { + const queryContext = buildQuery(formData); + const [query] = queryContext.queries; + expect(query.groupby).toEqual(['foo']); + }); +}); diff --git a/packages/superset-ui-plugin-chart-word-cloud/test/index.test.ts b/packages/superset-ui-plugin-chart-word-cloud/test/index.test.ts new file mode 100644 index 0000000000..457263a03f --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/test/index.test.ts @@ -0,0 +1,5 @@ +describe('My Test', () => { + it('tests something', () => { + expect(1).toEqual(1); + }); +}); diff --git a/packages/superset-ui-plugin-chart-word-cloud/test/transformProps.test.ts b/packages/superset-ui-plugin-chart-word-cloud/test/transformProps.test.ts new file mode 100644 index 0000000000..eca284a282 --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/test/transformProps.test.ts @@ -0,0 +1,34 @@ +import { ChartProps } from '@superset-ui/chart'; +import transformProps from '../src/transformProps'; + +describe('WordCloud tranformProps', () => { + const formData = { + colorScheme: 'bnbColors', + datasource: '3__table', + granularity_sqla: 'ds', + metric: 'sum__num', + rotation: 'square', + series: 'name', + sizeFrom: 10, + sizeTo: 70, + }; + const chartProps = new ChartProps({ + formData, + width: 800, + height: 600, + payload: { + data: [{ name: 'Hulk', sum__num: 1 }], + }, + }); + + it('should tranform chart props for word cloud viz', () => { + expect(transformProps(chartProps)).toEqual({ + colorScheme: 'bnbColors', + width: 800, + height: 600, + rotation: 'square', + sizeRange: [10, 70], + data: [{ size: 1, text: 'Hulk' }], + }); + }); +}); diff --git a/packages/superset-ui-plugin-chart-word-cloud/types/external.d.ts b/packages/superset-ui-plugin-chart-word-cloud/types/external.d.ts new file mode 100644 index 0000000000..e2937d470e --- /dev/null +++ b/packages/superset-ui-plugin-chart-word-cloud/types/external.d.ts @@ -0,0 +1 @@ +declare module '*.png';