-2. Ensure the required system permissions (listed at the start of this section) are selected, then click **Save**.
+2. Ensure the [required system permissions](#required-system-permissions) are selected, then click **Save**.
@@ -272,6 +274,7 @@ If the integration includes Subscribe Actions, enable these permissions.
Explicitly enable:
+- **API Enabled** - allows the integration to make API calls
- **Modify Metadata Through Metadata API Functions** — configure event channels and memberships through Metadata API
- **Customize Application** — configure artifacts like Named Credentials so Ampersand can connect to event channels securely
@@ -283,11 +286,14 @@ Salesforce auto-enables these dependent permissions when you enable the ones abo
Enable these on the profile (Option A, step 1) or permission set (Option B, step 4) you configured above.
-## Quota optimization permissions
+## Custom field management permissions
-Quota optimization also requires these additional permissions in addition to [Subscribe Action permissions](#subscribe-action-permissions).
+If the integration creates or updates custom fields in your Salesforce instance, you will need to enable the following permissions:
-- **Author Apex** — required to write and deploy an Apex trigger used by the optimization
-- **Manage Profiles and Permission Sets** and **Assign Permission Sets** — required so the integration can create a dedicated permission set to manage field access and field-level security for a custom checkbox field
+- **API Enabled** - allows the integration to make API calls
+- **Modify Metadata Through Metadata API Functions** — allows the integration to call the Metadata API in order to modify custom fields
+- **Customize Application** — allow the creation and update of custom fields
+- **Manage Profiles and Permission Sets** - allows a new permission set to be created to give the current user permission to read from and write to the field
+- **Assign Permission Sets** - allows the integration to assign the new permission set to the current user
Enable these on the profile (Option A, step 1) or permission set (Option B, step 4) you configured above.
diff --git a/src/destinations/azureservicebus.mdx b/src/destinations/azureservicebus.mdx
new file mode 100644
index 00000000..d09a0d0e
--- /dev/null
+++ b/src/destinations/azureservicebus.mdx
@@ -0,0 +1,47 @@
+---
+title: Azure Service Bus destinations
+---
+
+For more information on destinations, see the [Destinations](/destinations) page.
+
+When new data is read from a SaaS instance via a [Read Action](/read-actions) or [Subscribe Action](/subscribe-actions), Ampersand publishes the payload as messages to your Azure Service Bus queue or topic.
+
+## Prerequisites
+
+Before setting up an Azure Service Bus destination, ensure that you have:
+- An Azure Service Bus namespace with a queue or topic
+- A connection string with `Send` permission on that queue or topic
+
+## Data format
+
+Ampersand publishes each read or subscribe message to your queue or topic as JSON. The full payload schema is defined in [webhook.yaml](https://github.com/amp-labs/openapi/blob/main/webhook/webhook.yaml).
+
+## Create an Azure Service Bus destination
+
+Go to the [Destinations page](https://dashboard.withampersand.com/projects/_/destinations) in the Ampersand Dashboard and create a new Azure Service Bus destination.
+
+You'll need to provide:
+
+| Field | Type | Required | Example | Description |
+|-------|------|----------|---------|-------------|
+| **Destination name** | string | Yes | `ampersandServiceBus` | Alias to reference in your `amp.yaml` file |
+| **Name** | string | Yes | `ampersand-events` | Name of the queue or topic to publish to |
+| **Connection string** | string | Yes | | Connection string with `Send` permission |
+
+## Refer to the destination in your integration
+
+After creating your Azure Service Bus destination, reference it in your `amp.yaml` file:
+
+```yaml
+specVersion: 1.0.0
+integrations:
+ - name: salesforceToServiceBus
+ displayName: Salesforce to Azure Service Bus
+ provider: salesforce
+ read:
+ objects:
+ - objectName: account
+ destination: ampersandServiceBus
+ - objectName: contact
+ destination: ampersandServiceBus
+```
diff --git a/src/destinations/clickhouse.mdx b/src/destinations/clickhouse.mdx
index 3dbea330..6262a1b5 100644
--- a/src/destinations/clickhouse.mdx
+++ b/src/destinations/clickhouse.mdx
@@ -47,7 +47,7 @@ You'll need to provide:
| **Username** | string | Yes | `default` | ClickHouse username |
| **Password** | string | Yes | | ClickHouse password |
| **Table name** | string | Yes | `ampersand_events` | Table to insert rows into |
-| **Database** | string | No | `default` | Database containing the table |
+| **Database** | string | Yes | `analytics` | Database containing the table |
| **Batch size** | integer | No | `1000` | Rows to buffer before flushing a batch (defaults to 1000) |
| **Max wait (seconds)** | integer | No | `30` | Max seconds to wait before flushing a batch (defaults to 30) |
diff --git a/src/destinations/eventbridge.mdx b/src/destinations/eventbridge.mdx
deleted file mode 100644
index ef98bc55..00000000
--- a/src/destinations/eventbridge.mdx
+++ /dev/null
@@ -1,51 +0,0 @@
----
-title: Amazon EventBridge destinations
-description: "Fan out Read Actions and Subscribe Actions events from Ampersand to an Amazon EventBridge event bus using AWS access keys with PutEvents permission."
----
-
-For more information on destinations, see the [Destinations](/destinations) page.
-
-When new data is read from a SaaS instance via a [Read Action](/read-actions) or [Subscribe Action](/subscribe-actions), Ampersand publishes the payload as events to your Amazon EventBridge event bus.
-
-## Prerequisites
-
-Before setting up an EventBridge destination, ensure that you have:
-- An AWS account with an EventBridge event bus
-- AWS credentials with `events:PutEvents` permission on that event bus
-
-## Data format
-
-Ampersand publishes each read or subscribe message to your event bus. The message payload is carried in the event's `detail` field, and its schema is defined in [webhook.yaml](https://github.com/amp-labs/openapi/blob/main/webhook/webhook.yaml).
-
-## Create an EventBridge destination
-
-Go to the [Destinations page](https://dashboard.withampersand.com/projects/_/destinations) in the Ampersand Dashboard and create a new EventBridge destination.
-
-You'll need to provide:
-
-| Field | Type | Required | Example | Description |
-|-------|------|----------|---------|-------------|
-| **Destination name** | string | Yes | `ampersandEventBridge` | Alias to reference in your `amp.yaml` file |
-| **Event bus name** | string | Yes | `default` | Name of your EventBridge event bus |
-| **Region** | string | Yes | `us-west-2` | AWS region where your event bus is located |
-| **AWS Access Key ID** | string | Yes | `AKIAIOSFODNN7EXAMPLE` | AWS access key with `events:PutEvents` permission |
-| **AWS Secret Access Key** | string | Yes | | AWS secret access key |
-| **Detail type** | string | No | `ampersand.record` | Value to set as the EventBridge `detail-type` on published events |
-
-## Refer to the destination in your integration
-
-After creating your EventBridge destination, reference it in your `amp.yaml` file:
-
-```yaml
-specVersion: 1.0.0
-integrations:
- - name: salesforceToEventBridge
- displayName: Salesforce to EventBridge
- provider: salesforce
- read:
- objects:
- - objectName: account
- destination: ampersandEventBridge
- - objectName: contact
- destination: ampersandEventBridge
-```
diff --git a/src/destinations/overview.mdx b/src/destinations/overview.mdx
index 02faa5fb..35d25067 100644
--- a/src/destinations/overview.mdx
+++ b/src/destinations/overview.mdx
@@ -3,7 +3,7 @@ title: Overview
description: "Route data from Read and Subscribe Actions or notifications to Slack, webhooks, warehouses, blob storage, and message queue destinations in Ampersand."
---
-Ampersand supports webhook, Slack, Kinesis, and S3 destinations, along with a range of data warehouse and message queue destinations (ClickHouse, Snowflake, BigQuery, Redshift, Amazon SQS, Amazon SNS, Amazon EventBridge, Google Cloud Pub/Sub, and RabbitMQ). Destinations allow you to route data synced from SaaS instances via [Read Actions](/read-actions) or [Subscribe Actions](/subscribe-actions), and to receive real-time [Notifications](/notifications) about important lifecycle events in your projects.
+Ampersand supports webhook and Slack destinations, S3, a range of data warehouse destinations (ClickHouse, Snowflake, BigQuery, and Redshift), and a range of stream and queue destinations (Kinesis, Amazon SQS, Google Cloud Pub/Sub, RabbitMQ, and Azure Service Bus). Destinations allow you to route data synced from SaaS instances via [Read Actions](/read-actions) or [Subscribe Actions](/subscribe-actions), and to receive real-time [Notifications](/notifications) about important lifecycle events in your projects.
## Add a destination to the Ampersand Dashboard
@@ -49,14 +49,13 @@ Destinations can also be used to receive [notifications](/notifications) about i
* [BigQuery destinations](/destinations/bigquery)
* [Amazon Redshift destinations](/destinations/redshift)
-### Message queues and event buses
+### Streams and queues
+* [Azure Service Bus destinations](/destinations/azureservicebus)
* [Amazon Kinesis destinations](/destinations/kinesis)
-* [Amazon SQS destinations](/destinations/sqs)
-* [Amazon SNS destinations](/destinations/sns)
-* [Amazon EventBridge destinations](/destinations/eventbridge)
* [Google Cloud Pub/Sub destinations](/destinations/pubsub)
* [RabbitMQ destinations](/destinations/rabbitmq)
+* [Amazon SQS destinations](/destinations/sqs)
## Other Destinations
@@ -64,4 +63,3 @@ We have more destination types on the roadmap, including:
* Postgres
* Ampersand-hosted Postgres
-* Azure Service Bus
diff --git a/src/destinations/rabbitmq.mdx b/src/destinations/rabbitmq.mdx
index a8aee33f..7fc6dcdf 100644
--- a/src/destinations/rabbitmq.mdx
+++ b/src/destinations/rabbitmq.mdx
@@ -11,12 +11,12 @@ When new data is read from a SaaS instance via a [Read Action](/read-actions) or
Before setting up a RabbitMQ destination, ensure that you have:
- A RabbitMQ instance reachable from the internet
-- A connection URI with permission to publish
-- A routing key that reaches a queue you can consume from
+- An exchange that already exists on that instance
+- A username and password with permission to publish to that exchange
## Data format
-Ampersand publishes each read or subscribe message to your RabbitMQ instance as JSON, using the routing key you configure. The full payload schema is defined in [webhook.yaml](https://github.com/amp-labs/openapi/blob/main/webhook/webhook.yaml).
+Ampersand publishes each read or subscribe message to your RabbitMQ exchange as JSON. The full payload schema is defined in [webhook.yaml](https://github.com/amp-labs/openapi/blob/main/webhook/webhook.yaml).
## Create a RabbitMQ destination
@@ -27,8 +27,11 @@ You'll need to provide:
| Field | Type | Required | Example | Description |
|-------|------|----------|---------|-------------|
| **Destination name** | string | Yes | `ampersandRabbitMQ` | Alias to reference in your `amp.yaml` file |
-| **Connection URI** | string | Yes | `amqp://user:pass@host:5672` | AMQP connection URI (it embeds your credentials) |
-| **Routing key** | string | Yes | `ampersand-events` | Routing key to publish messages with |
+| **Server URL** | string | Yes | `rabbitmq.example.com:5672` | Host and port of your RabbitMQ instance |
+| **Exchange** | string | Yes | `ampersand-events` | Name of an exchange that already exists |
+| **TLS** | boolean | No | `false` | Whether to connect over TLS. Defaults to false (plain AMQP); set to true for managed brokers that require TLS, e.g. CloudAMQP |
+| **Username** | string | Yes | `ampersand` | Username with permission to publish |
+| **Password** | string | Yes | | Password for the username |
## Refer to the destination in your integration
diff --git a/src/destinations/redshift.mdx b/src/destinations/redshift.mdx
index e77af199..a90c3d7f 100644
--- a/src/destinations/redshift.mdx
+++ b/src/destinations/redshift.mdx
@@ -5,12 +5,12 @@ description: "Stream Read Actions and Subscribe Actions data from Ampersand to a
For more information on destinations, see the [Destinations](/destinations) page.
-When new data is read from a SaaS instance via a [Read Action](/read-actions) or [Subscribe Action](/subscribe-actions), Ampersand inserts the payload as rows into your Amazon Redshift table. Both Redshift Serverless (via a workgroup) and provisioned clusters (via a cluster identifier) are supported.
+When new data is read from a SaaS instance via a [Read Action](/read-actions) or [Subscribe Action](/subscribe-actions), Ampersand inserts the payload as rows into your Amazon Redshift table, delivered to a Redshift Serverless workgroup.
## Prerequisites
Before setting up a Redshift destination, ensure that you have:
-- An Amazon Redshift Serverless workgroup or a provisioned cluster
+- An Amazon Redshift Serverless workgroup
- A target database, and a table to insert into (see [Data format and table setup](#data-format-and-table-setup))
- AWS credentials with permission to run the Redshift Data API and insert into the target table
@@ -39,19 +39,13 @@ You'll need to provide:
| **Region** | string | Yes | `us-west-2` | AWS region where your Redshift resource lives |
| **AWS Access Key ID** | string | Yes | `AKIAIOSFODNN7EXAMPLE` | AWS access key with Redshift Data API permissions |
| **AWS Secret Access Key** | string | Yes | | AWS secret access key |
-| **Database** | string | No | `dev` | Target database name |
-| **Schema** | string | No | `public` | Target schema |
-| **Table name** | string | No | `events` | Target table |
-| **Workgroup name** | string | No* | `my-workgroup` | Redshift Serverless workgroup name |
-| **Cluster identifier** | string | No* | `my-cluster` | Provisioned cluster identifier |
-| **DB user** | string | No | `ampersand` | Database user (for provisioned clusters) |
+| **Database** | string | Yes | `dev` | Target database name |
+| **Schema** | string | Yes | `public` | Target schema |
+| **Table name** | string | Yes | `events` | Target table |
+| **Workgroup name** | string | Yes | `my-workgroup` | Redshift Serverless workgroup name |
| **Batch size** | integer | No | `1000` | Rows to buffer before flushing a batch (defaults to 1000) |
| **Max wait (seconds)** | integer | No | `30` | Max seconds to wait before flushing a batch (defaults to 30) |
-F!_iMW|2j>;vh z?oT0ufjm0F>*yE+W>rL`GOmPOrCF9K>?wFPOqReZR79+eS&5)#B8-inlq2c~sxT5D z8y=Oo{7ORSyA`1Z9qa_U1;j(YJBgF#2m%sU)MFi;3{^BjZR}8Jw%lB4h#`y18A+!DBvi zI|*59r3K4oOOl $K6za$fZ1JL66$FKj~1&`Zeg{ zRo%X7a8cB&m?R<^mC|Y)AczF7@=N5uVN%NF?O3yfSgG2E|J0M=@~D}F4pn{-IzTaO zrH@Nm0OtE9i3@Ud=DLkJVEj$2C3EN8)n<+vh>*)-Zf6zbDM}Fnmy6nS&PQz)TW}c% zGVb2Z$98bLs)+zP?sQn)li}icSL5l;2S)h #HEluz`wMSfNw3b%mA)XUYGoDoHzF)I&_GHDy zS|#I|?}iF3xESN84Jhm@jDJ(GEKQBYYuff_fZ#gZTdT`0T MXUd)MQ5r5-!x zMSdAIdbAlf&t^BwYTFh@staGS)# ~PwPg@ M~()j>aVE@lvW*K*BTivvU}KLFD5t) zf&HS1QP9tiQ!O;&i2liWlI}I}R$@g5Uy=|CMIMW|vS#qOF1fcp&Myot_Y%|EWFceo z6m}(BXdH6MD~+94l?1@K+Z7|s9d7Z{lthZJqU!BQ2G QAv=f7SCWbGXyXhMS~6oXxc(^DUzMK<3#!FMGDq06wyliGYGT>bPM}jIG(vIO zWtD^T`Yrd>gNR<2oBNcuBq?FBDRpAkF+cNg4x;+@E1GeqNS* m$<*wDjYZy^t3p(S~?=!=nhLTj%;b}xW8SCGtf zyQDNzk45^C#R=%AaY)l2a~R&h$>fg>Q(3y-040=}GI;NdihPheUdqtZU#&7FIaJFS z%-{aBjP_!=^3>Yu=rrJrW6UcuN?SdPu7c>5Of;{z2iZSb!QICHoEoR6X=R8KZ7}&( zYPf(EEl=wgGOLaox7dx-ul1ea{rh+=x1s2F9j5JH*S^%W)rNi)^nwUBq rs%N|N;GGrf*q>z2i8g@aFY^Q zB?~2U7rFDMtD<74CTd92tX^&iMWqtB#VK`g(p16;ysH>~ToJp?sJ(L #@Tgv3e*mFB-9FlE#f6vD+xIJs5F#kfxg*agt1Qq#kwQ9=*pL zb=!z>H5>JClUY|C^`aj3EE@H08dXXfb?X}adob!pGVF^h i-Cl?{>vg>cIR zqsoN3fx?@l!xp3gMW9GC0!YNf2%Iy%`e0@cbj>^A(Ar5L76lkfw5?wiT1O9 q#{Sfb;U?LWg9ne_=X_l?7`DZme}5q>TzW2WF5&LUBYTk$g-41+H@f zzk|SefUyTzIifh^#4O~5iRdJ|v~o#McJxTjuk?(9=2=_R((zb+q?W<}aQOfLJwgG# zUG6 qH*tFp!qlc3)= zltMZc$g`0l4;y2of7RZM$Bu^bqP FXMQ zRu(()4Yn~gfDu>IX`*$rb6=?nu&IxTBYsO(pw5w@aUn{R3Kj)T5Jgw;nD)8%SL&QG zTye54Tzs#);rcB^Zgbvl$d$$_HJuPLonEB=f=YLuHF>3|o^Uf+#SMrb8oP9x3j_b8 zO^zhfP#*$;JCfAQlQnC&)k5-Atg2_ve3j8C0$bCT(uLLNnuqi^#|(>AP9C_ANCM4x z<~L#04QR9|K!Ki<^6m60cV?qvXd^X%dQ7#E#muiUNX*h>)qWlHdv$FRx+GmNQi~G( z)ESBpao55`E0Je!rsgcJ1g~Ckb?M^uEMikOta~|*_r@iL%9VvNAGFeqraAq^#d!89 z5(?-JcI6c2xz;LqlgaVU=xHxF%{&^dy{hGqG`THmuut)7Znlp1u!<$A@|mx$Y4gxq zl1_QG!cg8A6VJS$5+Vu+aZOlDXmL^Ruja>uiu!|=mT-%*AVcgXk{SyVU1f&dF5Xl; z%CCgRI9!cDCZsj7@h4XX;RpVtGpT%&@x6pf-Qes*I2dgf1&(uph!aprkQ}k>JXKu) zRo~d=j65Da%o>UQS^tvjB4Od78kq*T;$Zbmc+-wl|Ga84o=`t#cWjS2DDx6}o?Z=N ztv{M Q)tX$1N{A*>k~xXK_(*FrYR3(? zFIXXJB6ElHmjDYjYQ+Q-z94@cHkc$0%rsZqgM%UJGoS$IpTPZ|ijk}4R?gMeH&}$~ zUNJ(=Q9itgUZGjXz1lPw)~Q+4!VBR4MygqGiHgjtWr?; f$mWkN$l^-^9+cjwhOX4Uw zk{n7mby$r9Po4X2{<3)o0X)TVhxE}jX&JhQxTU5z1)wO2QV7#;5JAkuGdSBYV*WJS z<&NZ^oQ-c<70!+%S)9iyp5&g~C|6Y1H87w%R5~iwEk`u*`m3gS1)VCzUv>$N?X+t5 zIKmVrS*#;ocbo0p-?5`ce<@Fez@5_HJP_$cDK Ce&(ilnJIr;` zQ7qZ_Ts$aVjEYE!ns=9H?p`V@)^F9*McLBdQncdHwbJ~KhzvhxrlHP(XV3?`oojWJ z#xtK?qVxv4+ghj7iDVKSz`q`Hy4j_*MY?O-bOhBD&nS(nlW4PG*L3@G^3^Y@hN1>Y zhTKqmnl=IsyS2$WSo_C+UKfDUZDkWee_kntEK7@&>!nO-j!yF(v7HsU`UtthVYC!p z)b)TtlCq8VR0no-t)?-cWML<&1=I#*SBG=aKe *KIL+a3~ePva(xSPjSL8(ow29ww>Npev{|s( zmPXuf!8jmu@IrMU_ ^JbVcOvde3&r4zqA(G?U>80DBr?(WfAaZgUN N^6VI~sBjwU!HQ z_+60O9T;%O*gDEk>cX^q*E{0Ex_QS&H_H0#!cON}ihmE`l(`28-*a2u>*L;6INbA- zC-9`+3t}YlwcZPlVhb }z#S+(gkp6)s?fD?Pj44Zp z>~fYO7Uaq^R&60BFZcWaC*xLVgp@eZuu~OvtB|D(dC-`?X8kcN?U19SqVR0~s5>g7 z#kQcd4JaE(iD}D<1hGgoqezgJblS9v-MNQDJ^fSi`2FlAuQDe6oj_d<*9;?DEQp-c z)+76C$v9E3oqymI`@+`jlT9zFWvZK1Z;As4=}EfBrr2Yc4NXaWOJU}--K>W;!IP)V zvx=4{6Y&puw6D+2&vL(M4N5(6UCPY(7AUI_6(cGjUf0iV81D6PkAWD<5 x`w)^?&s z%!*@8^EuBp+);Cmz;WIf_II)NbA@>rF7+=2q2upf#_kHa)bjFawV(2At8)|7=hCyU zOzPQz;lD1=f5){xlR)oN$NP_Hzw_|-&RV}q%lm=@zw27}n_k~Ge1HGr$eSPj-{|aB z n1VjoL1Z-xj8;XGtWCBjRlN-t*05+XkmDMfP zNHj5@%f-p c z#4=$0D{z0jP@&c6pwI3$I*Xt*&l 2v~nHh<|Om3nvw2 z|GfT#knFxhB(;aK5|b7bh4AN@%$KbqZ_`t>iT)e#i}fgJ@I$h8kvqe~$$l)3?hAF2 zhB5!DoMHL`WeNjjnQB6S4uPRNWIGfw#P=@#_0UH|kRi_9M38?k(yS-XB7!D=l{Qg) zDYX>nYLiNxxtyIokS8GhhrZw^9AR!m?JnJNvW`W&dC<}%17;+{QaDwvouAgX5=p%J zqQWl%M3fkux|S8ufjO@f{<~=9r5SoL?KTDNXJa^F!WXitzC~*I CFr&LYxzL(c^R&-uT6DAOCNA&U*8P_NJ zy{HyesVS6+A?w=Obil+Q8&sAic%LV%yYO8#2)?aUl)4~mvUKA8j%Mo-;yh#RekAs( zm1sj&r2or_2tM%;Wk#uzh2-^ob?$W>P>cg%tTUJlzU2^^4K ANs7RAYJBue=W@@+IqFm!yNVg_V)wM`d~t4 zT!gRWO5_c ^Vnp7$ zAp9=S7d-7BNSg5e1RoTLT>Q0r&T*_{u$0JO>BX6hYeQP{jgU?0C9> T;!QsIVcNYXOWL~3@KT$S m3hs6sSs^LhqyLkM^VGWBun~M4%$$$OyF5$9hC(pIm86ao*JfU1q=ee9(i$da&XU zsHmx4tz?U+8{!T0sC7sf eu$hQ(6kS{Z86k3X66J#`J(5W!(Uc4#Zetp{ z?8z*~G|XR5 d`zuPHLM7vx ze3`JWVaizOvN)^y&sZ8$%KR^4I^2ac<$NWdbs&74KM^tIt|^;+;Y;^t18MpXl}ye< zSE<8A#Pr_=>D-TxQp*pdnZWPTd9Wg7Ca94!p;uD*sDJ5ylOWGV BP;Ab0{sf1J$1(gTthso~1dMQ?%WbNi^=R;RzX-*P64%k-cJWwT&f z+jDhq5gnmMf4t2ClX#&^1 Rq57VgbCRM!9Yw)vP%ZlZJ Z0 zI67>`11Jw|d%5Z;4T@md*gm8tcujij=2-AmBUMf_l1yljN;Fwzk*{2eoGPUq`RCZe z6#QXhax<36AvG02_pwymyp8R?q`-HZl*Xpd2z$EwmK$a!X);x2%(IH$)w@r1%<|B) zT_?+aWw=$N-2nS}8f-HCM>Tz9&BBl W#nSQBscF9+HHD~kXND*dd z#Wr~jwi?g>ChF@&;5@Z-4d2D_B-N_X1HcMvi*HJb5RJs#F6@QHAhb@uBsK+tE}U%X z@ji& $Co_-6@AV&w)Njgb48^`eVWTeLc@5Ya>tR%80S@UTin`{a~F zW9Gi_SN`$#DcFL>?8A>a;ctJYeS7M2Azem4WEy82n2`$5s;y*o4~ot4A9%XITFH`Y z6#`2hez163E1J$nCmuEF(sWp>%6Ly^z*3b9*`LW52re#EQD%BxoOuqsEi~jj3ffMd z{oa4e>agIh^%0peWNTO)V5O}`v%WC>!nGQp$J^+6Y9}HtwAPaKL|SQosco_zyS4@4 zW$M%)bqsz_+H?5UKF%`cTF9|^c17LUe{$t%%DJVR#n(+|?Z~(%v>m&_hx2}UEeW#$ zfFb9nM7bIa{-zg)+)6q4b!#-dlYI}H?%S|})os)dm&Lv%ic!PMTN4DKgAKCw1_g&Z zr^1g_M#J{@-^!P%gT9-b)4Y?m=+~J(LdSx&eAA IHXgI@+j0x7*PnPG)ree` zQNIuDIy}=)kp}vVmX<&q OFVAC%zp(z5 N9)>~li`w9~zwbikQJQw4y6s`XoAgSk(T<7yb$oG9Cx9zzXczY9N_&&h~ zIh_XnQ#JAbRI%%Q=aT#Pa{u?=gMaVmHJktAIb{3wx)-yb9I9m#g0@5dU)pI3GeS jESfL0j4uCJ)L3)}$i_fzXSPJ2Z*x7;P?PW#4_o0~2 zf|?Z3j p@3Vu`j#xM |y@?aX 1~8;84qol3WxRnh zenlJ{MY0(xvMC3g@znCMMUpktjO9fNC1wifBl$WxN?X**f=Y#t2BIU>NwUO>Z)SJe z8LH^2J9vkxH7cr9hnE0ibw-u#PnAuP|J)1Gp;J-~UD;o2)4wc=33bhfjf=JZjcT^2 zXvG$D1{IG)(CCgN>h@%dwG kaJvo+JIeW$rR#{ 3dl@q$t!ONqKNmeY2mhz@IacBEq#h4K$k%P1D7 zSf7od#5orBFD7gZrew4>UH8V3;gN+Kd?@mb!iM6pD8(_N03EBCrKh)~d+hOV-(yX< zO!bmd%Nwf7E&}&3bdxJ|?=d==s#27aF-n*~{}CD`bh^NsV_*2=uoqgV7G=K r~|#JuyP?(S?IvAZGx5PpT%EFd!iY~%$Iag zBVpkwCD9$&F-s@d)^x_w^g!MuAT4biytRQa{pkgyEWTqQ?#wct)moB=AtaVQX(=&@ z_B2t`T9=}Hi@rQ%X(`#mI>oPC$EjR7mLc6DG~GKowZvMb%DTI$JTq21Er%g_ia~sd zA#?Ban1m*`AWzNWB$swf4xJGTnbDc}%m#|4Am^v@cg7;=vp*&|07jcx+=}9ieKiY4 zW(UU7f2M_g75+vQWj65TDHWz!j1`<=6*V^Ee<~_@r7K5l3?~??d2y?@Y)n=vYWCo2 zpKK%#8SD0J%Fxfr@GI-7it1=>e}6DGrkpl>uhiwQY-0V{q-iUq&(vZA*X&TKU|rd2 zf!h{#E*rzt{vEF&$5t%8vcns{vxQ03jj8Jm0xS1A=DAgwKp%m8!PNUy+53;F55B4o zow*;ss-KK`fVOIYm3ff2YVbSrkaX3MGV`!z)vy8ch(*=lR!q)_wd93u#Q{@KY!xVl z8JtrEE@2+4sTylx9`C6dA7P%Ds+w40p4_UMJYt@@s+xLYp8i)g4bL)zUOj`)GD}uH zOUp8uf*6Zr13Iz=N!v##viPc2FKDtX8B{OnvMgKtC)rdlhq0{0UM{CpuVk>S=2Wkh zu&ftUuh(3zx3FwXRc|cWZ)~w_?p1Fdv20&eZ=bR3JlXFAU3zlbkK&^Mk}gnK9eQ{j zcE7Xki`VQ+vmPqf9LlpEX*wJk)Es$0Sdaa#j>2k=BUw*kYfe*G&k}0Ra<0xwSkHTE z&PN>1r&urMYA%*oueNHg)@she>~{B#&n|6OJQi)b^RCHiZ)qKGS=nxR+3q;6?*(h` z dKaU(gS=k=Y0g_m?s4#U0ysXd!4$uhfFkDyAOm)zFPB3ijutMx#e$>Iru)`VN zz*^S9+5V>@vBNvEBl@r-_}3wZvm@o+AePo4RXQQHvLn~Bqjs{R^wyz{vZHO^?4jT6 z$|Fls+{|CGeZq76gSo{-ssBd|;lLty#$v0-=5xmW!GSHqfg^E?t5A>gn*-0#`Nf1K z8r$-Qj2-GnHR1RUp*qV_jx$jq2T^T3QEC0x#(Lsb4wBw_l4WO-Z4T1?TaxQ~(&Kva z`+Blx4hl#;1%V3%IVa_}I|{Z2O1g$`Tn$uwoYX%WsI~4W{poHj=xLd*Q9T>bd|c4N zInn(&8KOApfej3)oQ$=146O}}oi2={oJ_r(EaRNarZ?ST7wGFz62e#W4x9@%_3V}$ z9H#XgS{$4h_Z&>FoCL01Y>ix8jodO^JQ9tV_*TW7usy6-Y>+z^e^-|229|Ixeqf_O z6qjJCt6(CRP;R4Oud7fk ku+=yN4p6mIZTY^jUo$CjrQ51n&jQl~A zu1So^jcfUS^nsIZ|DFh=PH2=%Sc_YFyiwZlLHc)-j3u{B_=Aimw`^sDgeyoy<$;uo zTb!*)fq+}F)lIRHTdB86aobI4x=AeeVO}`oi%;X;9h+1l_s=LdIdb=(z^0#cJZfys z>P$Sp_}o$N-2#gqFs`|7|J5lSb1OSGYn^jzd%A18^62 Ujqj%B61ALv{F{I9d&dJc9*D(Ca@SVpx_{l2M!#b)(=D5;46 q=f5K0enU&n_~pE-HNbKkS|M zXKl~9dJOC>9k1< p z+gf39Jnud3cu^kxQeXU+AMwUeNXVN5XFdIU`Ta-RB69CFTwgvh`T5jY?fxHa_Z8Jt z)IExRCqU>VNDEbZuYz >S;EL!?2{wA+c?p;aah|*1l%*JltCS8PHS{GHD1 zV+LIN+J +cp@Ye%jE*19#o5ecNVsj z&1~C$%8CSiy(svhkTu l_B!27eupqH*yq?aeEO%jz%O z$q@%WhYHnhmsO$7mZw<$*9S$R5~j&*e$}nzO|5U %>|SYjQ=ip4&e&3@8)aB&vv1E(BT>ZDWXihf&rDb7y_YWHX0 zms9a4x|-w(Zk?BL8&MRRYSpyD$*ETN(glC>Y+G3l-mFsi4v=Fo_W2^@(@zwIOvTEI zl~cdCl~&v4-@L;1Dt-BSiHyC_Z4Vjys{Gmbm9utbPZ~6di4b_osJPPGdME2@A-prp z?W)*0MA9^5akDm@5?9&YQZf>RRcgcX1UYVB?bb0S%eN-eg>0YRaWs=%8f5A9@^5tT zT^{UcaywtqzjK&%Ae*)qOj#Yqx<3*6?@+(}_{FWgcY!9V$bqf~A0E}iFUsfDvYn4# zkvjc5U{wTZ{5|7n-cGw}HU712d=?ZQdZ}NpIUhP2D2*sH0Y#7|(<=wUAEwx^tA`80 z@4h5U+2{+W=lXywllpo$nO*JHU%^|v+NlDDZ`t10Zt7);*}VxClIGXXk@MKf%Rbyt z<5UfUFi@0e-z(Nm;eXVc?(*QBanUVyMTYI380MhI4bF!ISF>{3n{WCQ=iIdF9J}7C zSTX*zZ17mG&A9ZdvTF0$*|MQzv^P(Cs+}1kkF4m&1Z&(FXlCFt;gBR2&J=91Gp&fK z-0cr)`t@`oU(JnX?7D{O(>v8%8p;&m*|KW8!AzAl?H}*0>NYat&EI{_?{WhV3bmi^ zuMH*&NOUUiuckYCx%TTV{?={GmNOk)-LGE!729yr)F@B+`PSA*vUb ;lB_$`{x`oBAFhES!da7J5y zyhUl&ON)cubgymg5 J-*64STC;r8l6!ZL8sR8fj-xcs|d|b-&Yms zKl-G~^E_?LSnbiUVJ{oKNwv1hk)HmoF443{QZ|VVy!^VAxAk?r9RKJkUG^|ES*C4L z-xH !| z4H7alhc`|1f8;r><-blvRDQai!pE<$k;Y{-%Y`EGT =(m?P>1KmcDf;d z+h$$p-#urt-=pG=O{+ zjj){*Ot;9pxY;+v&lHNLms5o$`Q*J=rwB!=at?@xQj-^vk$&foG% g3ZwJo{UTmk(A7A!EokXzFH+&P>jYox6C7EvKkOVFx-Z zc}=ceO8c(dZ2BL(a`j}j=5&V>)AVl#m4Er95Zxl&H(Sx9m-{1;s$bzi#}tXfF2Y{9 zXnqxVJzuvvWhC}9?(4Grdxav8aWtvM=H|G$mhtc>6}L??D7S*Hp6PuDqrPJP@Dn}u zTeo5oS03IJTj0n}tWEoMW3`{ApF@H_6&okIb^GdQs9NT2Vk?z7Z|HrD3k0gL{iBG< zC41cbqRcAlZ|R04bE8;6vUo=MGLy|mO~i*6nLqMM#i-Hx-hp+YYcktvv^ge`;^{@y zzS|mHEcarK(%NY->s7+&hQW`?4HwYpb!`Pf1EI;k&(~doSmcvroFWu }Ye%qi&d5#`*3!aIsnp+!v|MXxMZ5t!QClmsyv8yk~a% z^8G|oW__ultMj6xpYrQ=`zpb?u3R95@9#B!vI!{g(s zriyJtiJ*1XCm*=`I%-mWhaAMuTy)BHT^)NFo+=Sm2{c%|Aoad4Wu7g`lOsH}-+nk3 zn;p3^wuhl{KT;~sj@k>`%YL#St;S|gn~d$_lRb#NmuJsVjqMlnJBYVqb6}pp4%}`$ zNc72bVE>IBR5>|F4r6oVf@TkC$^J=6$#dkB$o^>P_b080%}K~Od-ze~pNyJ3Co!+= z5u1}gS>0?;rINEpon#NQr}CcOuFf9w@H@<1XM3hFkv;C)c$j~X_e|w?_C(0Z;cF1P zvl=vKGE(-ah&JC@OCo0~(eJ33i`_-nIOkJF<58(pzKfw(&UF6C(K|JE*L%r1Go`Y} z@9*WiKB~@{t@JxCw_|s+n8=xHXgsd;$#=6M{LY#0I61BkV|TZM<}UQhp46n|yE{qb zE{^$~)D^LNxESXy%{HDi)Z}}3c;#NZS0_!~?4CZ!xhvmfPg|z)J$ g2Qw#NizV&08apJL{$`@Q#$oTc`Fv>*eC`i8apKU}!q) zmn!f{^ve6netI^j#_>EQId79s?)>Aug6A34dEdnR&qwSyUSvR}*B53}$mfXcuO2NxgiToWy|BLA&4&V32`MZyrE@o>Ad@H^3f7qN}%y)D6 z)g 1|39Um17<0khT8uRQqbY<=MmZUNA@2J$p1$Q5_vrO|B`~R(r*8^6lB |yd!;g8~|42av&>Q-R|CNHmDR2H)3WB^oM*IC&3M$rrZPcOY7~Ym`_2s`(&{}UO zL9R>$cXqfv{U0gl$|1aA b$yaSpWKEqO0p#2-qcELlOT+3K}Q>uN1Vs7M>?W zwjM!m>dX~><8j$~6q_IRaTG_C;6@BD1*v_k;M=l|xWfFQjd;lc!D2h{ap$jz@_yzH zNy;bN#bHYS1UE67txP3$A941>sRpt;n`tI@g}$XfG n_Pbx&x!FoMx_yNKy{2P+gK zySrVCxqFfRCQ(Xwrxg42!_Hgbd&Ah$yeQ$_vXV?o%)9t7*WC{ljk~S|Wx|BFyXEzB zu0JYO`*Rj5n*S>WWtNE8w?o|aYKHjRCUMaW<^Pd_f<)?~6yhiOf<=2sMLzlc_}LVB z-wNA6@;+6I?&+T0UAiD*ieGK}10(6p5h+R-VQo?HD59c}>+UTkm#<(rjKrZ^U~;H@ zzlTam^SA8@MLNk%2%mI~9HWbL1U+2Iai5D_?pg|>QWZ7t%aT!hrzS*XeNUQI{}9tn zmgasqwwCkPpf7kY%;c7#rZVRCn>7TA#NC`o8a^X0O-ii&Ma}T`c>0tYNU )p(HriN&jf1nrWGDI~kC@qMIa zBI1{OrMEg^B8EfHVLYY?M`{TJGH w(L 6CGkKGC+d#iPb#%~ zfTO}rQkR#Akpig!wHxXe=hup&IJkSuporo#`Q{DUyfyV&0od3h4VJlWEbF>?;?5%; zcjU?nd&kh=9Tt*=8+H-IS2{!L_7s>XgA#7D$ZIL+PfE5cFRy^^M-AO;DQI*vU;O zqrh6BylW{)TOr*f^-p@)Xspn+6lB_|`K;DEOXQjE2o_7l;*jnn=KoPYZF`Sd_j%fX zr686=?9jCol=X4+>9rJOhNiQ7`!1i`;xK1HG)boJ dn>W99K9SmRrsb z&o#ClS9&LwTYuM^Z(TaBLXMR`J{_L#yg05#QCHZK>M!)LoZw;%E9{v@76uegYB2pJ zG9~vYEzD19)2 xdq$+!3#;Wth=21yzNl1;Na8pCrj}9PUrs?O7CV-it;5HnenoAI zKP}A|S7$wa`*T14N}6x~mj5eYHh1+$)qKZKlHWn!SfALB&UYS L}D zv*u%N$e$G7CdYM-)8R*Ve|gp=I0+JEjU06R^zUc0`SU!h<5`qf&Q9Cb{+lMk*rBg< zPM65D+tUi;$Rw|Pq2Mofp2_#oRpHPQ%G;_;fxW0q+?(5M&gzGYlgW3Fidd<4{(V^Z zbaT8u{#pADi~q%dz?Mvs7Q3r)^3qHx es!rdzi)BeMQXH W3{f zXy%^yf2AN<0i~t+@sq|N>z|(gk%E%EvC~(-kP}Ls)m5jR*HX}zEu}S5 COLSMR^nO;TK)aFt9?r@*}wV4wG<@R_FcpH;*&$j(c5b&D8ut~w(Z}s z<~!wUDJUp&r1PYC;%b>);^pVdf2S;6D%Vm_a5!bx*^u$8PU-5uTS}q7Ndm5=AgI^O z1H#3^m&W6|iK}07ZO5zsk%FKTmj}6ozrA |3nnn3h+~3@%u!@#L2FqkD)Zpec@(TH5DE{YhX>M`hr!DNn6P1N@&Vtn zyk;h8PWGX^=4gH-S`dpCZbpkPpvBM7lJM|b^5HV(;j+kZd2G01bGY(C_?@$G1Uy1r zK0?VE`V&Dt+8Fw0jz)7K!ssl*1Ri-`KJuY?q$x7e92=>$Kr`Zp+Tn*8#3^0|%~8+gqhFdw`yr!|*yuY$kwaUNU++=}!eh|#F%jl5QOFqO zn21lNFqEB_4 uyG%n z<0|B%N_Ak#r=FGa@%85MjmUVZvp6E!_+L@+ooDfQctSy0Jh(glCx5~aHet9q;ki!2 ztO+IceEg_<;*5FXoKD1ejMsc~;>tqe>JWMn>GefEY12Gu1fF#AG- TZQd?Dt~ zT+$!; &gS z%@PXHvp5jI2}rcWcnKy+lR+bKAeafjiy=F}MDD=ABRra-`y~4B!!I!8#I{6hDD)AA zm y!9UA2p5DJN&!DO!Pr)BHF_Tg!g+t5xJ7-9<;y8zsh8H(Fb z8~}tcha0*8;C(O*lO?#8C5ME1+X6IrDobV}o9ysks4NH$`?MvyU?CGgrSWfPyJm+o z1jI=-X8@Dn*9e+1Nz&19QpfYG4189?BHHjhkU9zdYeE6>21;<@``+Y@7_^l|wj3EY zkQ^XGP}Y3R9v6yz(~|inJFSE~y^Rd>=?wi3M+rdzUFXmPZ)hN4AFPjph9dwyP6}}x z(LW3{AEOK{BzlL)yx^qJumz}1hzcj6M=+v*7G*eR_6ndyA_;cKWbiMfQ*x5?Vrkf5 zKr}!J!GNmp!~%s>{{Uq(2k`4j=pX 5VS@@yboAP=1o|XI?Lxf zpJ%&S Mf&sO`#n6R^FHLD5L%ZFT3dS`PF@88 zDr9rY_!iQMy+JYAS>{4T#F9jpEl^cgq5}-nJ`VH+R<*WIBPFT6$pXz%0Q4o_+*r!k zimPHn<;qe3Hw)7RoU54eRLgh}R~!xk10J{JcIZ-+vk)KHWCYlSa5mH)bw8l_V|ukd>l S8@iKw`oqLj6XDh@p>T@Ro@aN#1_LMlU6Fb{oG9wM_Sw+)%wabGaUrKQx` z()|@d(DN1 @Yd>GKR#M)~J&+nti`AE@hd{P<_M5W!9RX^N3!BR 6cRZDE;B~_UAedK39n{VjlQ&_7W?D{DO9yH%Tcu#{uaw@lkpofLnkB;} z_uSJSj+T=Iqj6T*bC<<(lF%D*156lAA^_sP_f}Tnt)ob9M0@y@E;{;eM<0Q)bNz0( zrc1hxP|eguMYITokuJdRP2u!|B)|on4}fTFThCDB!#q`2c K)M3}Qx?&_lv@z6{RmXVXx$~Ld8Vz^>-;CWDOg+8SP8 d%?`)YB$cwGTpOp*G`+3A5Ip$C$=G z*|1+%HGGmwoU#v@Te_Uxjhb^$Y;w)_^kARwxtQDLpZB}U)9je_@0jPan7unTkD^X} z jthk4 87%Oa*-D8mwn+7=vZf ZhIp@nt6HW)6TXj%7O$(UI 1lH`W; zxs)SRt9NqA_KFe0CA>OKN(i*kNUpI05VHTp(w3av8>Ht=&GxgzM7Xr~d}n#}r)F%4 zC8{VJ-{_PF`nq4txCb5kw>Kr8{qfH3NKziXYtb-<+5ouCE14;REi%9rU3e7Be<)UV ztqR$}0&BUX?$mZd;7Sw`HRo$hmLGM5$3NT?fG_#={&?)Ywk$b(Gq;J1MD<4=;lp~P zHHdAA&WDo4)!+PXKR2jp_^Y$$-72{$elQXKyjNZ)ypnOik2=Q{?6wdIUePcS(ur|I zoiuwe&ONfwZc1Zda=e9xPykbX-5K+(fIVEw4gJ(@^}#6Ez_!eRqw@A;5h>@9TW%gm z@qGY`rXfeY6;7F sCJHGKRu4=6^KzaLP>H;8CCr zK$JZYJ=sbeP$w>SE^p*V)_i0u4@&;E%hA?-{o^zMr%GN{L*K
(2`Zk8Lc(^Z67Kx zJ`i9HmHM3&mt?KG=MixO0Bu-imko@HejBhwU_;mC0YN-ERy~R!+R6$BA;Rfxj;O)5 zC{zRnOwOXIGxbIb4YAha)LpyV9-?clZg40Lx$Y$K9}0Iufhwce7`^qFxKSmqNCNaE zVb8ZZ#kh-Du!W*GbpV@ZRV7&wC;$YbzyhVxh-=p?LJh8$fl7a+t7RHP0fgTQ$!L}3 zY(ad|>xrbkc{k7e;93e|*AHj2_~STyo#+@as4#OH&sPbB*eup)$wN%~ctn|W4X;1= zoH7n&Iu=PFH2RQvJD0o6h}x-fN)kO(ZIQO4bZQ(yp*0ANU>$^>$IbX|&LPt)S_B~0 z_^;(b+~AiN^qU+Y_=SWhKsrp;7N2tY wERwy5L2+&z3^J`;khyjJ`&(nw-I}gf+)esb z0fHuax@<2V!a*BXcFblAX$SgvlJg7E*Ed~g{9PxZeoK=!5{3MuV5|`hoN=bCioOwm zP*yIZ0D4z$7%#E>!FTuyuTWB7A>3r32vh=x^3vjU#k5;50)CCk%)1}T%P(JiZw5Y{ zMH61%r@|Yn{==?EYg6qxJZwF?Frh~g3DskS0Zqgh7m=s!pdzu(J&9O_1~(MtZ^R}r z)VXz`{SH)iIrxyxcT=k4W;j*#_}o5QrMW}0mS6p3W(Guh)G;N}!sT5? pY+;375?W7F9a}Ke_IaqoSG0hc=x=y0l z*JyvNu~Xw4)c{ZVagZBQ*-%_)Q*q&SMB22DZAYp!>T~G+d)^PE6}Del`XbmW2(P^k zUI@ymoAo@yfHILKfQ)?%J_8mNNV6>NMKZCC)b$xskD#8EoM>74WaQy->AdXx*VI*a z-SVrx!$$a{@Uu@ k+?A(Ig3?5pe&J8#|&w _CA<07q^V~A+1>W$+gIPcpG2ODLRsL~LC++q 7d7@_@ zOJTu2G%2|u-pDd@Y;79Jwo|ORp>q~Or z4$)C|QyRcNpj_W?>b}m=HJ;T;&HWSjD)QwAv4W2JM$)ai^1DB&T83N`pWb{di6=Fh zO1{yL;6GS{|B3r956N&-YR=iX_&bebUhlmjVWO^_o`&k)?3JL%!MeFKGDUYtq1?E} zneSsDBjlPYR<;v@%K|N6r*HDPqPBKxbZjCU8uXHZMnuH>XeM_&&_b9>Ldd@y+rrj3 zfS!}RYV<2r%HK30cGOj)!4+22ILS%C;uu00g@ChE4m|NE)Iu%PChof&T4Ru7yO4^f zcEVFSfChqB>#MAE%!Y82iUOQrk^8Z+%Dilo8+LjR2YMr4)ZG-4y33JJFm21K;v}5? z3{~w>?=n=cBSp@V-UT8f?QP}T{{a2~BvG&pE6n=GA;3lpH@scdQT!1uw=6Q_GhY 1TOC=e^vNr!~EVASo@pTi`CVM`@kqAP*Md;alP|oXKLPQ#1PDD8k zb==dm6^onzU=4V-bpr)uT9p2$Z|}hvl;K9Lj=Zjvk%BBf=k=Rd#tC?IxH4mtM-7c} z=SJNtnMNQvkpfdtY`(bZo~|f`Cn|)2SIq@Vnm~Ax8>y(R;2FtaEwuJc?s2)3eR%*c zA{SqKi$^$J(jZ)iqQ~3(5JJ+Cm0w|_@x~?-ZC5E0pzTB&zlfFnndZUepgL1e`z1-3 zW4mn6=l1h=y*J(>_HUrbk %`t||?yEv*C(yu~oD?Tm>&h`37uBj&9Vuqi2_bmF?Tb?froh%)Gfe%>?M zmwiPdB+m7!!Uv}DM?9q;iMFoJxXzTloc>&|LSzPziv7qfrKNQ@JisW^LEXK-Nn=-J I_W6f! z!SOu#`E}yPWbc_*!i%Z#R 08xCsFK?*k!ldf*I(F5{or4rHysy1s>q%? zqnQ_Cf9-!s#YSjGQ0o{3Z&H#UFMhUJOZES}D%BM*=CykGI_vL8HPt}JSrzHrnqYI? zuE4pb)#K{ukUb|a`1CZ*!24&Ld%j&ktEYt3(=O6i@j|~vaT}|cZtYipGP;7dQ5c~q5-3ItKInOPt%vH-_fC$MaES2 zWuaGJl0*L;cU@P>aa_zctDgMm0`cO(GWf2`E}%W1$Po{Di6^BmArK*4Fp(Dz@J_MH z{`fFbI8_LYgbj%qe}h_7WCY)rQ@^1+*i5Rm4NR#sGLnap57iCen8V0{E@?)7JM_pW zKp5NIcTmc zn!3bF&k#(*nY>qmSmTyvuXK7OVW>Q1srd#;bGXeJuOoQ@9hGu1l53DNrpmj~L7_Q= zJf8Jo0>px2-iHs&872iMxwQ>+aMNpm`1);ch>^c0K`_*eM5`Cd@Hwi#dZ8}3@ fVd zmm|UE;29k0#sV0E%z#LR)rx5KU7z9N85sjm+<8jE=bDT>WZaH5!3Kj}%MfZn_R*fQ zsVJ3MgqB5uj#Yw=P5lrdzHcaDW+<^e!TuxZ0G+6~cXAGll^+F&@My 1#qu5KNHMUE>akWKD@p1eG+ZT~4#K$Pv>Q{XnC_}=8@<6I}wILeD z#}%NH;Km9W03>e|zXsta3#)_Epqsg-9Elz`OHm?~Gi#)3j>dW<<)&sDJJX3SN2NMn zhSBzq+z?Yva-3rHonnfda-C$a1JJpxbXSN<3~o58h9XOn|A&0cfCE{oLR2nGJX5pi zUt8LA*e9cnSZWh6KLnCOKy_MbI412XdE5A?zE&>dH`BVA4tb9z$>PB11$g@>LH zf{z$r4ePmAm$DrfIz@v#kK3oEup*1fy@jIm7VE=~^iqK+&LXV$(Ody3kV3FALfPLu zOk95O`7kjtF0#KO#vcx@ILv%WKEu}mh;u>=%76q5@)miJ)js6OHmYC|4R!_@OTHFc zgZh{dXRl$P%sNIxgQ1IYKp|LRzpnT)hV%^VMmEOkF>4k=lJ6X5OvXbGS6JXgG1^9G zNq*dxkEJ^!eyjubxq*Qr0a+a6aSX`h VWRw&-5!WyElSy#E LmMLMIbw5fcP*vY$V}X|8>}nLiI ZvK|%02dll26AG7uzk<^IS1R+2?CdvmEX;V%~gI&z&Sd?)d zVu+tAWLPTtHe~OT6S^3!GDP%rGP#u;N19FgK#jpO_6GZ>PbZwk65JGvA1p(fEu9uf zH6@8Gw@FhJB9z+8#9QF6FlE9^*IXx&k^^USEUBk=xDrf)Bt}+;E&oAx^dm{4dz;a3 zh2EjPQ$Xu{m^GSBQTk+G4kM|-p0e&L^B8t!ipF5xNO1BacQP0vy@!)2@=dfLLQsA( z&p*b%YYNq&u8mrZWcHzv_pZL5s9k#;ZCx5yL3VQs7meIsB5WfJq84U_q-?x(NMYva z$h1P((7V|XZM4bI3PaJ?5O^p&+N@cdLqs67kit9;tz;oj-TvSYRoHYP@1Qb?5b>8< z>T#s`{HfrRnf?1?TuHxe=1+OaD0fI-osn2^#tgQ ^#8_m08sajYkEU*bOUMhbDz6; zmf)G|aPiESFeye!qUY|MUVSL%HQHk4j0z9I)E!crDPAL!qA1}ME+o@b&)ro?Zpcui z7-wsbv&m3u9FnXGat2bwMZPK<1y4RaM)B6vgY~Ur3E&pG+fjwjTR@>jBU?4xLt>ip zSd>17!_+)#{wR@^e6<%b>S!6;B4f_S6O++BBULbZ^73;=%WEd1HyTur@2t}5JRZFx zsY7lFT2Blo>NbdVgHhj0@^5+DldV3pMyIts&7u<#fJpdyWgXGo_m!cx68kycJPdr@ zul|_a3PKu4GB~*C$gzCW&DkcV#_U#-xG HkJXT+noV3MUtHt;q8_qn0*n)2FC@OV1_ VSwFO(^R+J1bnoF6)95c9Z z#Wc#>ZFIwla;UFl#FhRHuP0}?U}5%N2-|=)xz;_5H~eY*b`Iv^tA0do*W( x zNh27z^*9v(erh#iIV6#tl#=Y7SYP3|hB8UKkM*fZYNPi+I@_khuWxGGjSvgFUem1m zXE}e};eR>Xn6U*9aSl#o@h`+9!Ok?cG_Ql^Z2OAih;Fd_R(WO) -rP7@01x!th=4VxdI`;VBlBgB iI)1p za^2UZ)Mh}kModfzqJ{qm^7EKMeAi?6qt5mGy#=`?e`OH>jgp8E;Iy)+O|{(AEA zt9YiC5WvwaW&S}lMle3`V&fQt%lk*_h$I7JWY)=Dc|1kN FjUI`q8WkqaKnnyv}q$Mv%>4P?Nas zhtH6!`$8mQ4!Rjz^~#*}Oh{B80HMz}ou4ML3jvaF(t+t5_Vp_0Kwr7(!G}T=!h}St z48_VxBY`M_*hyQCof3}TM?lsVq=i>IodL0ZV%0QM#agrh5~auqxd(uR0(j{yN14qb z&lbRo2vP}CrXRTNdoe`hCKwrVP~5jUGFxlAsu=73fP7={lRy4^m(QbnK*+@K+|bXQ zoDkJEECqz<`F OM1`Q;1T3S{MkF@ho5w>jx%!WeE z4)l>+xJMKLmS<;}o9C$#{Xsc^m5y|Cp>UihNKYqH9$#95HSN_7ZrnaHj{X}g&iIPV zFsl&7S41shQm4ahm7&}Oa+b*)f>iQe|1Uf-CsKMWSK)#oGlhSfZ^+3nGzfT}Jzuvr zqpM+_{6xq$S4&(QKUSx^9cJk$U+W^G<^Bw#6CPtEy5G1btA5E_^89%}e}mw5oVkW1 zMX2m!6qw_v+o-j`L6sVb;uZNp9O<6L>VVor_%N6r2x7zhJpn#%8Kq~;DI|cxO6oE! z&xVA|o3L+(2G+W>^x)X5uVyd=h!1?KrAGVvi)!f5b+*s8D7ouCU8bGrPW2;FB9f=| zwRoZ8YB;;qq_D-O&vBCQtDn!wAMgV?az1d|!iq0rd9q)$c68Kk3 *P-U*Aj#o_?C9YkT)S+32Ur$@_v%U<|=K5F*ARvHKq>sA}ut_TED6v*{|2 zOW9v54HnfW0 Xo%EQ&HBmeBr{%Bo% z7EOn8z_0abfoDJc&Q9wOY9^qe5=oe|;d}FP5?#vv%SE$akibU6>#$u~tgW9<(Ko1N zUgW_Vnw-CkHHz7_nJaqM+yQ0`fyT^a9f jN+kFwSnfYXqIj@EfI9$6|BGkMvZbD^yQ&-t(f0$H}{ z^%Rcc&2f3-!k_EWdd{EcGprzx@4HdTUl8!rS>ScZ#koLX7=>b4Y#>YEwtIwdt6*`W z;)P&|Cb!~FQHo`t(A#X+R-ugaz#M^hMRAJ4?@OOv2z_wNX%#N7Y`xgcd_Qc-ThXu- zC{oq(K~|)iW%oh^*G&=cQr*8LD_Z+exXnFpK(URrZc0x{tU>BdkcWHn?jaduxLLZ- zo@E`ssd_pJ3L~N-zZi$f;uaiKo0O$~)A_;w{E9v)+~~U(mN`AZa`vxSqKm=PWkT#h zdxSUZ1I&E`R^&nquBR;Hh1SiJhf2JS>_OYxjg(VF{j3KoM1#aRYzzqyf^V?BcfeW2 z^ZbO%ZP0)>@ccnEzM}s!f@>gRV~8G HetA_Jbr2hfC)>E5eCb`-JZ2fROShY2q8+QJQLo+k9+{cgqY? 2Q$7q4p4gK?=#?d8uLsn!|Ij7R<>KG!uR~3f`EX3XSaxnsYh)o@BedtahH?? zYdfTRA-G9FM<@6d`V&TG(klXAchJ>i3Feyo-3?8iSIJyM;K?HTxNgy?m(Za>0Nl2h zhaCjSsa8sYx``gJ*WsUCPbe7;VwdYMDu)q~}@#YP~qiLEh zm7+){p#l1+Of986w41PF5vA09XpGYo>|Vk=z0th{5reSDhdG~A|CtY(kWob?mYCga z-tHG+Q;&)5(@}`oiZE>7prHQym3~i$O`S23H&uG_yS qLe1&)PBb5r0VLiZjNeZ^^#cyi+Jb8>q9j_D?U zIu!?V*1e-q&mvDON1{=3Kw+g}EqJt`TVnW}&dmJl(!Vfm0l58j6nx#(u@I%`x#5O( za5RxSh(H|^F(g>`@?&de-pVF0#>8{axEJY$Fc6N*NUTcO)qUb+<--_lu3XL2zBb*a z*C>~;*fb4a!ewozzjIx&G+TDnG%o0g(h7={+VqWiW$jC?vAny0`k<|09qw}XQhNbT zxfEqFN1I%)Z5PyfyPTYn(jn;EbLaDlKi=UqBl0xQKH 6Obl~o-yr3uIR@NpKEF?@L8QL2cBj@WwdCzJPnMiJ8_;1`d6oi)J_HgK zj?D*^@$EE67nS_Sl8|JkY$sHhL%+bw8ve_$yLY&6iQ3hXrb*3dJm7f8k?UM+s7$G6 zboab2es6O%N!j{MLI2qO3K6ED_JkX~CkC~*O#{xlDfwTL0Nq8jFC3XbTvkoGg7%Us z?bl^l+iMIux(%QnCPeQ3W)Yu4_Rt#~(SGZgz|I=txc(W6HAXQ`ncPpCN)jc5V$u1H z4^wj)v(_!t@}sl88w@4dy+}OGyMPmjYn7e@CdwO2$aPZv!^~to_!?MDhqyGBM?#|= z?QGXl&hr{G#37sT*huN6?l?uGBtJ8o3A^ gY4Re#FJu9T1+KBnm88?qwy7d-GZ)mB!Ci4BwkHmwx O1`tpIbF=VJH<;%xisicr^&tPu4R&jdIw6ua$9}b+V36`8 zg3s*Md7o+_nM4gcn jmtogHWJ#UxYW+I{8A6 ziXa-SY0GE(_%53USzo#|7pGE4w_Kklq>o5c27qIT @Km!^+hq#i-e?AJ7QHwv?gu1;PvJ^%rZM-h`2DR{vHVfvPYN~1kO{h3|ZH|x`7Zw z2)ti2N6tvt_K;>jU^4*(UqZ>s=#|345R+?EqT$l+YWiFn3@ETacCx_tp6fcM4>xCB zdPDxN0c9oZzRw`HT^JWKgI3Do^n8+Tlk4|+!6Ex27rVKAW^H3x2G$cwD&}qh2A05& z`bLeQ``@yiDlxP>BVTY3tAh+v-BIq+`-1RC@EeJCDq($O_iULNgyS+Zzunw}F+9nh zvsfUut(oFKqICj&6R9xCD!Tcp-(;Y##Ol@}y}X*6?jxovdskwf>zQ>&Q2m$}&$ot; z8I5E@5F*Hf)%P@uF;{&C@| C!GKkgS#Oi_(%j*cGVVf&>kt&;p9t?jg z>8;Fwk)sZ=t`qs1P`{_2*7nW>ktp~F0En07>(i4e&XAC-6e%TXS)gFcV__i2N$-UI zCy4aNNMapxbA4034Q0r^9oD^y8$5<#yap+V1=y6r(@$&tT`+c72J!!5?5@9};M#YA z&kUV2bT`teq*6n7i8PV|BHax`cSwhHcMP2ah;&GYNJ|MQt-u_f=lh;@a-DVlgIRO^ zFniy#@6R=)`nC6@b23{K*Rw4FREE?-PcX% zUyZe`wv!nkYBX0SevB0Id~tqd7HqwHpH+3utdlwL*0pBGjSRJCH?^jJsj;z_5{{B* zbd-nCzKM~uomOOdhs_jvj+_au!HA>B1an7j&0}tH1K5paQ>zqqL}osi9ELzf(tI%{ zh!xxl MM_pO7`QGk4jKDC;1M#Wp z-nb-_E~jFJvs-%L b zjyc;dxS*=47ppRGtg4rzW|$)fUR6F)RlC7amyTDfu3UFrRsUE8JK?AYaW+0NL64yg zjAM;FoXx9tO}fg>^3`zpqh`u6_*>3aUBi|mrB=`CHs$fwkg>J|&JK`D`?gX?S#{^Y zSVz@pXD?@Wf^yfB6xh93-D5b`T{YHo%Grml+{>uc_ap_aj`q=x_CHBMtx5<=rGY0Y z$Z&Mv>)7Cv6tt>1w5a{rx@I_i g-+&f~H_tyd6PB%zm)wSWbSr6NA{g zLOJX$k9X!FuL=E$?^LsSdT_*JSP)81E-fJoqPibo#05+44$!LdU|!3-&_Q_EX5O-$ z`Rxy~6+lVmp}Zq?Qs*c mFL$~{RkzmQ_|^{VEyeb3ZoU2M00>u ztbp7W$jK#5iaRahekyl &fEqO<}|S(%YQLb&2W$Z^3EQXxo?bJka0 zthR`UCiGq9)7^nJj99RIf9T0``D^6?l)6(%?=w7J-s>2|+l>OWdK9q=1cPmyxIiem zGcx3{*BXo0<)N3`A+3%FfD*eY!%VFqX&XvDqYC*B6-(m5y8w~Qhuv7ylb~uz_VZ1d zHDdp*XYfDm7$_8F{c#f4Yr^f-{8w)KI#K5Ig53XXcyQJ!cRzBhNs^ovtHb4dH 76_FA3vrc9c&s{r5f*Vbe>+Lus~3Lu%y5N~G4 zbF-$WQjEO3b31)kLxD4@5BelCFjjItD%A*)b||ScENP36M4^F$D}>w%!F$| 1&hSa+6yBZ}rU(%3EH{0c&O}#A1}|W1aNwR|FTEv%GgRas&8F3JDT4 za^sqINm*pi`r0fp&M$P Ig zr=c!m3YT9}lyibB^eHL?!4*>!6%*k~D2ht?aODem<$Acvw5#ls5p?0Eni0ugkxXzK ztbQh-aRb*t3TR@qXo3Z`$Xc}M1fN I*9{dJS{ zzP8A4@QJ#%Ic|RcMc2$y)-L~gc@bpHtMEbNxlQC3`!3I=G3ms0A-=^{`yHXx#Q{er zq4!=w&iS>D7nn{O`*z4dSGu-2>^4^-;pKE8_gDwlvk|xA6RYZBPgCJpL z9I3dGydV|I5xjk~{7v;}BGK{!@3;zYH{n}6zjjYzj6d3ZH21fX?ziT ;!T-}h|E{aDF)IdEpw|dT%7{x{0B_iyr13xF)~X_>U%Q-{;&?o zT(At($_>y<-pQqkQr;uD{0pR nIGkkF@IYcU9l=y^m2 zuZUf+sASv#t>ysdy`aSJ5DNbgVUa;v_?d*_9f5oZ9UxTre1KLlL|lNE#vde6Qh)xQ zd|KcO$|-_1H?%QyU|E2d5;7oM5&A+FM0<-uat1r(LCQ$D50D2BG@rp3bndjyd1#gg zP(tV>+e0WcrFr=}sqUX&r~3*-$uQ5uo(t4>9ZUbLeOch#p$3uJgNLe($Z(HHKVN?N z5vTU!jz~TDuc?>FcjI5Z)psO6pnbM~1)W1FP?Mt$+gnlYc-sx-lWyC)+LI3b1{I`5 zE*vMy@p)%pPosc%Vblsqvr%^uHrojbrU7)JdU)SCZE(oMebW$;a`jr+OM8D_Gk<1S z&vN~6?cdffK_e|)eqy#Ll kqo zz-qI6=m*MiDutUl>0K&?gwW7zr^1QvVp6wr@?UiOf*yt^K|ksZXx|~94)kr2L__|` zN5QeTXN)xO&?yLq+OQK5fs@0_AqR n=r5uDAb}6eOSaGR^KywO*t3LT4KCgI>KUBBGX~x~lVSliih_-a_PpozvEE+N%sl zlP<4c`wJhI?AEFeu5W#wf%yu(xeon*@7rq>dH=o6JraIC&FR!V5&TDCC0%k@_NU;B z3#Io%v9Q!Vqi~iT`32kG6O0i!c!!0L^a-l|qRr62%*hIP^otFr7uit{G4RNE`Tp#p z=-7Gx63fP=Mw_MHPkvr!-w{Ez?>yetzZG2R{MMBh;CFNO*FsLj4ooSLzfF<)r8@9u z-Z|-PT(Q==R4Be?DkT=)-?vZ==nGo|>^wzM)v%03)!48kV^SAOcwW^pd)u3%7dvS_ zjG#C?;z%Z0ra M7W7^W9Z=6z_F8;P~Qg_XvLoj9eBrbex)n#q4b 2l6NZJvZ~YeV{b9+}4aaeLE0SU1=4Id~?PZI0@(BH%cv1O_ z&1j-t@AbG>JS)2?Z7KR(F*$@Q79X_|4ED2@tg_fMNFuWKKlz+yDd%Ji+?iI_We)!+ zPFAPvdRK>OU~5v_WJy$7S+{CeCDb^0SZ>fVmdQEOWq8t9dHMs}vUT5Zq58x*?4)gL zzvE~1JPTR15In)?tVi(l3;wHNv8Oko%}qNoYUx ItB hI8J>T!QD3vRt{ znREL7ptm%A`EYlbArPo~JZ*}UIO}sqB7vD@k2D;?Xabu_=(ZIoJV~%MC9^_GawwMX z9?U&^6ODhl1bdi0l;(1CQi!}1oG=s0K+J%pB?2XqW)J7K-^9+}m8PJCM5t$P;UV>8 zWVezcFXjqUeaVNe9~z9M1-5Uayla_wlKqs7!9<0&;;g67V&3>~5MNoyag%~$eO9)~ zD3;{9gOlTYiFQoJGUb~-5t!MzGc7FZX9!R6zjsL`qxseT;?>l%#DLrt+P!TBs4_T- zoNCt#)mhPi |C?KXRDt6 Be<#@NaO)2dsmpJ{(g^664p!*kV!~AK0mu@N*zim;i-x`q6vbsULSvtW+kX9iI}v}01q!y=y8nVhN#kfiXoy7PHx z7J<1E35WKyUkpdSj)9zVE}^P(5)m%){0m2w6sAF(G;V>I4Jo`ITa|H+ZYTJVHP{93 z-SfFmV3?vL@_J=jFCjH26+XsM0VyoQbuUF %#`5WU23zNnAunfPHLy4bSiCp3c?`B-HZN2@JJ zYUr^g=NH9lTN&I)5qr%_! (O1w85c4b8juQO8l!-YPDl!Z6n=e zX(4UbG-YUYRv||&W3$ggq{zH;WZvx#S()arsS4+^Pfc@5 73w+S d`Lo)3TP-ynDm1Bt9kt 6(=Pj+)?xXM%jxc=;r{Oo_6jS$M2c5$SuV1wE%u`(cBtl@ z|No_+s7Lwb1D5?tcoxky8-I4~2e7B=4po1OyH4-yd({`B^ZNX5l?o45I^}nB>RFMq z+7G*dswiKV((K>#x)kdpC9`OX7B_1vrH@S{S7;j^Js4`A$E$$-J`c0#ROf8lTZ0W& zLr|`Ds>FZN*mRlBSYx-fa9cXN-L7g=c(vzz65?W^`Zlk7L%j0MkuLw0?Z#W|o;?Q> ze}$p(zf;0i4-bifNUASDIuXR@2S?Unsx2;|_8wuv^9ZMlt-XYpAy%Hz7^W_cr}cbB zVSL4iApbsw?>i$(Z%tCx2=>@9+6PjWT{8wf_FPi$CKL?agf^&u5J!p<_-wevBkv=j zWG_de>tu@Q0+L=z?tINURVa@oIMSNlneWo~sGcJ@K0du&JX`Vb4x%|}CjL7x`qon+ zPkjHq-d~0leD}6K6J(ML@1OO<4TUaFnlqm-I~yM=Jo eYCW}2qAlo!|R7+@uu@WJ$ABc@uSb)=rqZjPug{DJTBmqr4KvQhRO^dz!O^ymB7 z*Pm$}94~JWbb(L)`u(0T@@_Ui@T&g% }QJ0Lah~!|V(ytN?L4M?dXt#@nKZ@ p{uYx+VX)M&e7TVFg(sdJ`EUx=NPaClyGNE zXai=vGivhF)|N9?79ZNDb1VZs?9y|z$_DIr=h%%6=xt6op$#}aNtlRpb{_T=ma&wu zXwm0fxNdA1r5`eUm5PE7>mn*M>$aJfM^z(6o0gr;x=(Tjl-Nf`bHB!NVjrt6#(@7q zOuM-%g|_oS9L+V@h1XJr b8q(dPnuox*{z51F3Pgm2Bs-&K(#ww@1d;zyZNc+S4<#;wvl zZczNteXUt7QeDlsRh<-5JFMI)6q5TDi!OMJPZx$G5yAukrji~j*jo@ENl`>#F)VOa zKblu_SmaY4(`+@8UCh*Aay+@o^#Y?1@)J7HhX!mM)q5b>NN^h8L}5ZQa|b=;ZZi8O z0x#^Co-LL+=#Wmp^-koYL3dmeF~2ZhHEnH7vltFM3JU*S2vLje-sdkaVaKW1B 8n!IQr|VtOXs;2YAD{ku5|S`p&PcKCVRnKO&WqRqFuH24E+^mx1aS9p3XS<^>$ z z;0${}sfB=%0?>>WCgI2!IOb)z7K z2ls;rK-+Af6gn~3m(Tz<>1Xo+)NtwgC~1D;03LUllyVvIRBtH(St=V@C3hF3>ZR<> z{^N4ogYl)Dxq$pTclq~ld58IXS~boCr$5)P<^0h9MkFo_>oBE0C2dI&j}sfRy4> zoigET5$^1s^-8f{Zk)lttrL|~eq4v?C{6ynfxA1I)vF})F8d0ordeMSVqVT%+RnQN zFT>UR_SOEfs_(hm99#yTT&ml!XzbW%+zD9Uy9WRSH8rd?$ICVGTC5;fe#9PHqGejm zKeQO$STcL~vbAW_?Q7?-z7}jT7rF8lyL$b;lx}{DdwxrmiBTuiMn{Q6_XtYzrJ* zisZ !5Q^1Z1jAtULS1{&PZ7xt$=tuTe|hq z2FDQwId8Oi%)uXl93RcWJWoFN8wa?D5nUZm`P zd1JH-HD+R@n2|E>@-Sg4GWrf)JAZR=>0w$}N;V@!%V Mvy8^I}=QfdbUa4 zYQ$qsAY=hnHD|K&U?Md)CQD!MzTAF!Z7d;VWnj*vZw^)^eHY4YF3J1ONLQbl)Pli+ zfJ?|C^qOv;!BSWVL)_8Ee8H3fWJU%f(SZ@HOTFzPQT 5?6guNgRZb!`t?9WTNh zKBtk-Be>9YNj{R;C~4TBk?D7vo6QF6^1`T{(_EJ3UFgX4Ra+=)7~XVkJGrnp3oq%( zF1=H1bAP|*F2~~WMo(A=`i{bOZ1WM_^ZB{&U3z0&;brww{Z0Lifp(&5G4FCstKZT))xyNRrc{57 z2$kujeRtmX3mFDA#Qw8-x7#;w^WYYNns=vqCb_(d`FIXlAqsz&T!MA}>ZbqgK9i?t zhtb@^7(_yzd57#wJh `#(x`%A`m8*Nrpsg55qbP(`vU8^A7hb z4L9-DH4}-jd>8SaJW%mAqT_RfM`np@dt`HXB#b;i&^zi?dsIAm*c*{(H2J8k%)X@C z=%CNhrTSVG?J*C#F^!oTaPQdHTroZE5eShu7w_oNTjS2#I2-%8h4#vc_W04r_^r&> zU%eBO!yXHuL?H9TyY|F~+eDyf5}HpER!0)vT@rz4GKo(zMMpBtT{45{$7ent**iXR z-+km4P2n{l$^*j2;T)IxDRMrkN*$?ccd1&UX>WYe3_8+GM3V%8kLmhE 3H1n7^6^O{Hy~}PC&1vz; z=`ctVL|k^) E^J)z~AyYr?-R1of&A;-==grE) zTFAQ-EkN@vz%tB#5Y+;97LfQBQgjyP+!fFW7Si|@v3C}6|4C)=)qeJ;NVKz9{7*5S zXfeM>F|@Np?N14-Vacns60OcslRu?<2BmUorRJSw4u8s;4a$tt%3M0j1OAkI8I*gZ zmBTtK;{Q}A8B}DXJykqZe)>~MVNlteR$18j&!X;)e$`}JRbyv$4`oHm%MTrYsz*C( zOkURf@T{5itzF43o~3kN=&arItt0tUs~}u=*qMctG^f~p8VDC=Yh< wxQj{8X&y%NQ#npj`Cj1-db0F!PEYd$ixvr^GXz!tk<@Eh;? zzfjtkR}f4nMJIyPE`&Ps6+~*w>;gvM+eH`nsvU)afba`lI#q*_U(O37PvKWRURi|$ zU5Ny!P29~?Y=wMTuLzd6$XIgd>|liFmegE+iBJS>36zA3h>pj+31LJkutjnUg9i;! z>o5?+K@nIm(tAX&AoOXImUy?23?N2}>_l{F!02Sf`g?Ln&tW87&0XJ&dfxc`Sba6@ zX3$C&*C7cdWi;x#Ge@MEQ)3z PmfbZ%b|bH=&OO! zwGM`mX(({ep>T+5PB{vvhk|1Qc?&PiAypQGNFc~%!`eOl8i>AqDfaACp@!m$PvET6 zb{CSOi%rw{4(HbmD}74CLJ)CLO`!k>e5fH(P#W#6@wF|obE7Vj?!?(w@CC6}_O4M$ zqb?b-CL)u$JCRu+3{r<+M!HfFk3hREyF`APFTL)WU&|Q&b-$Xn^7Lal+J#uS(H~P< zYwm(_eprF*ZjIdN6Up`@Zgr2^z~B@CZS1gFoZP+)hN&-9)C2cJYA{0I`|%~3hHo^J zHqh>chqVszte?4FZ9Q9wE6ooua?*8D#_qoF-B8BdNlA0s>zqUlL_O4;=Jr#fjnR;) zA0pJG4daPeDWnYq_LGJ5Rjz$~2 (yF(R4*exj%p2 0W{cK}P?bDIw!+}~B z#2P`fx7A;r1tI)FH?c)z8<0o@rC_9Pzyd;ztH|VgIs}VoClKwXTPG%OM<}}KZnqAv zK7HpkktN#}PY0a(@$93OLEi%b=6+X6ilr(y>I7b?zgcOw^OkYDBBJc8(U5mm+bT z{`iaAw{wzVlWu*Ly>E)?`!Oi!!X>-A*{TC-I^6s)FWGnbCg_Uj?kryT%0Tk^9Wv1* z$cHuP+C_5V1D&sv jOY8dN TyQBDvhvTVV`QBqbFBwT@R>>BN zb}cLmL^C3+L88AXo5&LQu-YB{qI~L;u*si$4DQmILfKeK@fd;1ucfLvLgCkQ&!#JN zsttP#xvNyv;&Oc-u!U-t8?DB(uf~)=sMOf6b?#NRmX <_|`&KVbO-2NO#^(v5Bk!XGZ1;eOUHLYoXGWV6=BkoK1!EA|2jzs*+mZOClqprm` z(bkjf`VVWp@vquWzjgcleZ=d&JlSdvrIJh#>-fDlk@M=in%JMcAM@2leF@@S*FVEc z{a7c&yKjH(j^{|$Uv>Gm9;|f*fhBwW7mknhJ|#-_JwDuzuOa(h2Z8Vv&0y$@=w>0} zG$UrA_!5}NLMd!@k=J3QZ==j39<@daBWMFLpH{$KmJ6d;@}ewa3X>HJV|aQoE#tV< z$t~lBHlnuTu(wAn6D59^TZTyDD_JG)qG1&zEAxypyD2^{S*2>LN3W$^Yem0HH%zd8 z7hn{KWu2+z(UF&Fop<*v>!@(lI!CSQ?o*EI)FD&u#%#1r9`7pqr@X*NEXMrV6%^aT zh?lmB1w$=vw#5n8O9@4T$%9{u)88J^ihjiZ!d8|SIA&6kgRcj!D9bxC7B7}xVy~*} zUCpVeCR9*=6*ds_p{{CWE}^XX5!=3D0AIzvahNvNzG;kS+`f5A0>=UVRb9oQW$|sS zL+h&JIMShQBM`^2eLF$Lv130k*0J-bZrri!v=_&z`}dTJQ_uBAtW)ow({ZQ1$44CJ zeh^sI8G%k0=RAPTJK;QtFNy0iM5v+a@|n~$&SjX=X~N|TZ4j>O2xFqE>nKZpoa-1z z{e XLXK^V%9} z9t*mr@g9qYPLm!>Z-ekWmn{<2JXfsq<2_gH>L)$d9Q*LR)?KI7yuNvUkN4W}J)89U z9*D&A-V6b&dv8V1C3tVg@J@N}BuL`>?0(cx_t{G~P4L;zcAE0}kr#yTdr*|9?t564 zpYX-^sH*;nWUuSP_d98tR`>ha`aQw#wDWAr@2nSz?|(i3*6{x|Oqb~YdyIG5|6)oK z9B}znLnGj7(KIpOdevz<;ASHT9C*8(s1bO#pPv}`=cs-<@b76KIOzWOv_{aw^*<}2 zf6k_ZkdH`kKLFb~7?rC42#)GU<#2}K+83bEVInY ?QD(7%6`$8O3%t7)o=LmtCLOiFaLFyytNU@VbFd5m?qTn4W8a4m~ z;4%Q%07XEefPZXbG)(FP%K}6wCJ~46NJHUZB!o#hSFy3^b1eA_yY-RA;xCExGBGFm zGlh*oOs}hqN1IB=Gx#jWa+Ol7`?5vcj@Cz;%ct|DLY3ieuPbJY6;n7^9AQuh`It zJ(OFj7OM4|?F5(4V&-ej24iScT2B-#t>>yt##?`C!yR|VKB=^weyQ;M$2M-O|K1mj zg7g1r8^aIhDqjEZwsE`L@y6u;VjGX7aGFm258Jr&>Ug>N!+*DpV-4sudb{ubV;lGU zy*c0ck8ON=ar__K7@h4O+c=8E7@b9tECgHV$u^!{0d9pksL5@G>$Si#pseNx=C3sa z*cjhDOS9aHV&n0!koun_=`K(P3J?H%`nFL4XsD?FBL+=?4^R>G4)~uK6dMYlp|tq_ zuNbJ6T+IhQvi&bHyzU?UpJI5ofvXJvPYi$f80y6RKv=h5;QtlFH|29VR#;E_KQYv- zG*kV324ASBTWxcGilKTw9H6dq_)iSHU#+TEDRjz}Db>K;6PN(f>H3{7Nleu`9*2aY zA-f#aFHbb+DMt%rVrlXCUli-iqgvOU{5+Qm1Q9jvux!3KTx)lm`}w2x_cNz?o= l0)$2*|x$kpo&}J 9*VdMND(G9{fv8@5Bi#{zFXfSM2;lOz$L0p|d{`)1>crlNDJicmMCiwEWWI|4B?A z?&mlUv;W9-U;Ga-o#%h;lbm^dNpw&ULaKaF7{L;AP!uCHc2Jxkk9}D3QCIn}G~GJp zuq@ki?65p90{f_ *8Z>;9LRM&~?f7$W_b zn65r)nh-kvhnVK%ZVnH*o5}c@#5CEu{tq#|8NqqlzMKBxwBw+x`n2<;_4prRn)9st za`D4i&+UG7y})k8#WNYxRT*``-|Y)~hwpLKLNT^igQ($U)5~BkriqFWauA&DT{j)C|=aS#Uww}3YkQD;w>zN zvb=`RHeJVEuX=xxvt4p`N8))&x+a?3ti1o>;B64vSu3&*n^SY0^`hhH(66UFaa}N< z{?@c|H9~Z^TVN^3Sr NOqh1@7^5Fwk+NU} zON!r>jcHJ_WCJ-witbww-Q(>&nSiZzOjp>;?Q4lI+!}$T9T?QA!6?K6`}B7+rbrgH zBxvP;!@(K~C#jJ57EOaU2^I$CfF?F}k_G)u11dfyA4nQ^0J!Lliqg)SWNBLfzOfy` zRwzJo#x$dQn~9)C(n|qws0Yl5tyZg_FSpfkGt$D2= )@U$2;D4=_|iPJTn~Mr48T&1gR5;1tk`0yX;6 zvcfqN5x4?{Uls_W8VW4|yJHAxVQcF14CFXk8jEN}YQ~iOf`ODuP%dCtnB)cVY4pWX zms-){buBdjwqQbk%%P8Ysa346-=oixB|;rNygH~y_fQ!ZqPNpLqKVij0a$4v+Tb#s z+%ZWOm6cn~>n8GF3eVW2a6(P4n={4jmCZ-nYC@Wm_|a diU38fpDpFR?g8? zsan5H{G@bSfY}|#!sIC1t9|al!Lvn$KTRmPKG5UzWZ2K-sEn-n>oZ=@rSXl>yI)m7 z_B=e%3Z^@GWL pQEklI zE%)Baod=RoucEnmtDIid72q0f|Ioc1PMPHM<-E5*e!Ol4g>O6VarSLfX0>qF)x?6= zE$MD#T$+eoByA@aGRra;erJuzxKih{{NOI26Z)Bi!S$M#Nw0%zfg^d`-g@?t3|Za2 z!0la4y&}|ngD^>H4(qbB`T6u8?}pBctiS#?r>9#z9W=kPv3~xb!_c1%wH9zlqp}d^ zHT>$h?}&~Pu&QWDS uIG)V4qPSg z rwI( z!>}c;v#1$MoV5?Jl8oNLL@)hwveEhd(SlDmbnh8TkvhT5*dM{VVbgSVW*}4^%}~AD zCSuHjLeSm;KG_HqOv47iIX#zh %L9r>A=afz}u=ta`Bo!ipVD(N8 zOSmWwdl?x@J%@mSoDt+Z5INx2nM7F@dV-z)A(VuXOZq}z7gNr=u=0&0*QzV}xl~J| zbyz5s|0iJUa?vuvT!}!SjLv?KS?romHK54s(BnHn9#-dZ1yLrW{k#50TtcNF*W@@6 zaMuo#!F=NB04VnWLpV5L>Z5h9LXhtI(CEZXL`ioB>idr81N?7bn@srR^cc$|({2!Y zgjt`M+{>4Ip?a602?>2YiR%xo27ViDB%^PUsDyo=6#yx;T1mxH#C9mzb;f`dDnHCP z_Fz9;>8vhIsS`EIkdqJj3J;_zRn}mgbjO|_eqSIUQcaAiBy2Y+K XEooOqWdZ$dpXOukAv>sJOuqzm*E1I<{!Pi1_cBf>Yj( zJGaJrwh1MBYF!5bZXz+qBK$w1VnB ii2*DGYJ1q+!Ll&S2We`5`(Ko3Cf<7st9Vyi28fi-(oeLv_hGJQiQp%YD zxBWP8H32GSV74uAZ2`)z7s1;3zjIxK)UE~qZDgv`mgD)m*j*6&A`P zK}qRp#!JN?26j%h_92ZqaN5pH7N~SZO;%jN0Ea-_Ir`Bhc2)Q>fOrKcw{W-kN=-RA zu#IL|?JoFPn8rOo;Q$qYD}@Uckd>45LT$tg6NN;qkY57arM)n&HGNTL)3laxRcC-t z2z11zO1-cuAFG>yja#WKu$bPh3kw_lA{#2~eyy2X*^k<=lp$CcJ6e&Bc9`04<9}0* z>z)d5qQ{Rx0${&_J&4<3#Ln2M9f2bBsM)0e`%PSzBmiPQt8^Y RHBdGaqIdqYYG3P9&_Oq~@)B{sktVSoB30-HX+dq{o1!^1=YyYw>5OA3FR4?{3b z5&I=RZYQb?CQ#`!cD&N3=Rj*lvXo^}Q{q{$gA!z85HLQZat#5CX8}t1)Dq`O&l@lc zW)zPwf<%H*Z|P;$L%~f2xVfVS3M9a-LGXJ)1)~DxFPBP8ZpA3c#p71e4g|jA0-r7$ zo`%(mibUSO&U0WG_@R2 z!Pc!)NT+#MP~BO)wo> Uyct)1%%%up(wiqv48XWEoiJSVJ>KKkT&24Q0@da v`Jyrai ^xCHlj^C|a@MwA#4u4O_Yl`%U4CJg3%HX@aH=6sEvsCyJ%92otA z*!`h`udj>*@k3>?{ri{*qAOk%W5OLJlNHI&v356cV}iXE7#fIi#j^LqY1vc!JxzB! z9aibx0A>K9`8Y$@cc1us5+5tGf@;b0jQWLo0ynfAL~^8Jj2B_us*ba z8#=``zM3`3>^jNGMNo-NaNB_0e>8~(n$p!JsPdVDK*2IIz6ZHeYxd*BvuTmRrF1i4 zPcoy~4Ee1YmU;!y6oB6V$+iju7c~Gm#?VM#VbDOb*#O|T5L6tRCsy5EvE2RexRz@O zy_;U1v_JErM)*o>LU1)*Um3u9j=epqa%2d6A%$yztd?tB^}Un SWl0GuFR zA%C7gB&_;PPiI!INWQQqkiP&@gf5k~v5CX!jG}As)wXadforOKR~(BTi!m1E)g~Nk z0^HY6x^|?}t%(s2m6W2?z`xYdYEX3Ftw_=HVSb|=f*r)qSCT9Y*Z-Np8b4_qfJv}Q z%KQ#|*$<;ENI7P$Mo9*L>PMZl0&rv$w{C(*_@vWsq#pVF2p&|~`tcE(ueS}Wa@hx9 z4y1-ZN5O?((>4Kr-Rkc9ajb$-WYK~+>CqesGH{$RmgrS~CE>jx*Be<|S(FV}j0|vk z`KcVw==IBjYH`xqo^b-;T0-_x^*Q>UkM9IBX_2|5MXkzJ>Jr!wz}1Ui@4E~nX9HcI z!>7M3mKLneseKEjnOX`^*3bU-HVF>HM&I2GRT5Dn>L*pp28g6#5kdgD5PWK9Cw6Dl zXeqr?4gjky%4S0dWYgPnMg0%zw{gAi*W8nR6X}1rYnppB@+m-vR-jvfFs@VY*q^F& zGgy@USlPQ(2@2XXZ8+3slCHtwlO{d~7~7ZJ+eTX7=BW{k1mIRBt)9x@v4w3s5c%CkbeBcSr+rgPbM z34C?qVDa1KEmxd{2kikYk8DrS!4LVC#BIYb@~y+w!eDgWL4c!WoTIrytHslc+=WsL z(R2%E+C%xq18mqqc;35`$AeOJ5- Q;7jOO{-WiP{Z;2Fiovp<0h_Zw$Kzs~@4 z3?RvKJneJzK6=djbBv~QT#f0v-U+bA`Ih51qG|eb{2|J|U)0}!(IS7*)BR?2a!Aq^ z E|aIpHj=sx!dkIFdI{a!Hm1xLBS;Gd%9@5J}N zK>g(*`UAW(gT>zfsNKEL!nu^DyQroh^o_2;g x&+GGF#$^x|YLEXR9vyb;umr0piL*GEvGq?``{2tv}dN*(ZT7xq{gclImmd0}6 z-y4?GIhun|2HKo=aV23EHApi t!iBbS&2xfiKQ -niW>_T7DCF2UFDK`Uv*)<`F=Of7q+(=qedNL`6@Sr7Cs1K@?}`JQ zLBQ2%uT8v6XPKoov`r*?o&wdMU74%))24_A%*$wj8rE`|Wk5hbcptpzz`AG^fT_6) z{(y&%XvnxW#gN!t1VHUf2?;ju@7CI$0a<}~Xy=@Auyh&V-=e6Q8#WXX-~*S1Kb-Gv zpC!ao03J2)od+%Q -7)yJn?`>R7#x#%_6yYTDfeUL+vu PQ~)}uqA~_!yiCy3ix?|oY?w*AmSevPNb15GclPUVyz+K)2@%F~@zrBK_xwOL zlfDQVqig%s7No=X;hxt=j#Zkq77Jq@|CIHGr;E!jAy!+H&}N!d>$H!$d@$6^belzc zm2pmujVgm*Z}Z_Z@RVRC!? )vi4+y2Usy_qWyD~LMp@3!i zplD>&F~S%DT~FG`pTiiD#*yc-JV(+pMGQd+Kn7fRg~}+MKK?~R*2{jZeW1E_%o!XF zpQ3_3mDn|*Hi~TrANKlkFqjE=8ZAqR2PNX}6TyD@D=EU_X@G-XUefgR&}ZoP7zWL~ zn)Fup6P%2bIPUzi_maKzNrNLOMIkV&3hO=E?qJ2omf9*OfjFMWraTggFz2f>V+Ioi zg}|hc7|Qa|GN8+elnEY}ZSR7_h;>9^xJGWYB?ElEN&`hqo)a(EZ_|4d&xM#B5XWU2 zE~sl@Q+id#?blpBzR5<-GqKI5I;DESg#`=-g#gO)nY0F~Tm1HegM$e+qROX#bn^j% z!G +r9c;