File size: 145,391 Bytes
4db7146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f18f009
4db7146
 
 
f18f009
4db7146
 
 
 
 
 
 
 
 
 
 
f18f009
4db7146
 
 
f18f009
4db7146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f18f009
4db7146
 
 
f18f009
4db7146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f18f009
4db7146
 
 
f18f009
4db7146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "497edad0-ac7e-48e4-9275-2a71c9938579",
   "metadata": {},
   "source": [
    "# Gemma-2b-orpo\n",
    "\n",
    "In this notebook, I show some examples of using this small model,\n",
    "building a simple Chat and RAG pipeline with the [Haystack LLM framework](https://github.com/deepset-ai/haystack)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "b234e908-cc77-4317-b793-642729844732",
   "metadata": {},
   "outputs": [],
   "source": [
    "! pip install haystack-ai accelerate transformers"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6f1a5c33-26c0-4107-8178-a2b6ede91d43",
   "metadata": {},
   "source": [
    "## Chat with Gemma-2b-orpo (travel assistant) 🛩"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "7bad8bb1-7aca-4d5a-b4b7-3d0df07db08c",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "be2f7073-cc18-4434-a4de-f44bb00042f0",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Gemma's activation function should be approximate GeLU and not exact GeLU.\n",
      "Changing the activation function to `gelu_pytorch_tanh`.if you want to use the legacy `gelu`, edit the `model.config` to set `hidden_activation=gelu`   instead of `hidden_act`. See https://github.com/huggingface/transformers/pull/29402 for more details.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ca44600f5e284bb99f24eada33ae4969",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from haystack.components.generators.chat import HuggingFaceLocalChatGenerator\n",
    "from haystack.dataclasses import ChatMessage\n",
    "\n",
    "generator = HuggingFaceLocalChatGenerator(\n",
    "    model=\"anakin87/gemma-2b-orpo\",\n",
    "    generation_kwargs={\"max_new_tokens\": 350},\n",
    "    huggingface_pipeline_kwargs={\"torch_dtype\":torch.bfloat16, \"device_map\":\"auto\"})\n",
    "\n",
    "generator.warm_up()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "ae63e65c-9fe8-4dbc-9040-7e8713b04f4c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Enter your message or Q to exit\n",
      "🧑  can you help me planning a trip?\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "🤖 Of course! I'd be happy to help you plan a trip. To get started, could you tell me a bit more about your trip goals, travel style, and preferred travel dates? Additionally, what are your ideal travel destinations and budget range? Once I have a better understanding of your needs and preferences, I can provide more specific and tailored recommendations.\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Enter your message or Q to exit\n",
      "🧑  I would like to take an cheap on-the-road trip to France. do you have any suggestions?\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "🤖 France is a beautiful country with a rich history and culture, and it offers a variety of road trip options at different price points. Here are some suggestions for a budget-friendly road trip in France:\n",
      "\n",
      "1. Begin in Paris and drive to the Normandy region to visit the beaches where the Allied troops landed during World War II. This area is known for its beautiful beaches and historic sites, such as the American Cemetery.\n",
      "2. Continue to the Loire Valley, where you can explore the châteaux (manor houses) and vineyards of the region. Be sure to visit Château de Chenonceau, Château d'Amboise, and Château de Villandry.\n",
      "3. Drive to the south of France and stop at the medieval town of Carcassonne, which is surrounded by walls and towers.\n",
      "4. Continue to the Provence region, where you can enjoy the beautiful lavender fields in late summer.\n",
      "5. Drive to the Côte d'Azur (French Riviera) and spend some time in Nice, a beautiful city with a lovely promenade and a rich cultural scene.\n",
      "6. Return to Paris via the Champagne region, where you can taste the local champagne and visit the vineyards.\n",
      "\n",
      "These are just a few suggestions, and there are many other places to visit in France on a budget. The key is to plan your route carefully, stay in budget-friendly accommodations, and eat local cuisine to keep your trip costs down.\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Enter your message or Q to exit\n",
      "🧑  nice. can you provide me with a list of things I should take with me to France for the trip?\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "🤖 Of course! Here is a list of things you should take with you to France for your trip:\n",
      "\n",
      "1. Passport and Visa: Make sure you have a valid passport and a visa to enter France. You can obtain a visa online before your trip, which is usually faster and cheaper than obtaining one upon arrival.\n",
      "\n",
      "2. Euros: You will need to have cash in euros to pay for things like food, drinks, and souvenirs. ATMs are widely available in France, and you can use your debit card to withdraw cash. However, it's a good idea to inform your bank about your travel plans to avoid blocked transactions.\n",
      "\n",
      "3. Travel Insurance: Make sure you have travel insurance that covers your specific needs, including medical expenses, cancellation, and repatriation.\n",
      "\n",
      "4. Driving License: If you plan to drive in France, you will need to have a valid driving license and possibly additional documents depending on your country of origin.\n",
      "\n",
      "5. Medicines and Prescriptions: If you have any medical conditions or require prescription medications, make sure you bring enough supplies for your trip and any duplicates of your prescriptions.\n",
      "\n",
      "6. Clothing and Shoes: Pack appropriate clothing for the weather, including layers for the cooler months. Also, bring comfortable walking shoes for exploring the cities and comfortable clothing for longer road trips.\n",
      "\n",
      "7. Electronics: Bring your charging cables and adapters for your electronic devices, such as your phone, laptop, and camera.\n",
      "\n",
      "8. Toiletries and Hygiene Products: Pack your usual toiletries, including shampoo, conditioner, soap, and any prescription medications you might need.\n",
      "\n",
      "9. Books and Magazines: If you enjoy reading, bring a few books or magazines with you to France.\n",
      "\n",
      "10. Sunscreen and Insect Repellent:\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Enter your message or Q to exit\n",
      "🧑  Q\n"
     ]
    }
   ],
   "source": [
    "messages = []\n",
    "\n",
    "while True:\n",
    "  msg = input(\"Enter your message or Q to exit\\n🧑 \")\n",
    "  if msg==\"Q\":\n",
    "    break\n",
    "  messages.append(ChatMessage.from_user(msg))\n",
    "  response = generator.run(messages=messages)\n",
    "  assistant_resp = response['replies'][0]\n",
    "  print(\"🤖 \"+assistant_resp.content)\n",
    "  messages.append(assistant_resp)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "78259bfa-e73f-4e52-a34c-c5f6c666b620",
   "metadata": {},
   "source": [
    "## RAG with Gemma-2b-orpo (about Rock music) 🎸"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "9132c804-56be-4ca0-998a-1a34d9e6ae43",
   "metadata": {},
   "outputs": [],
   "source": [
    "# import locale\n",
    "# locale.getpreferredencoding = lambda: \"UTF-8\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "263cb0d5-773c-46e4-9a03-b284d3a03c55",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Requirement already satisfied: wikipedia in /usr/local/lib/python3.10/dist-packages (1.4.0)\n",
      "Requirement already satisfied: rich in /usr/local/lib/python3.10/dist-packages (13.7.1)\n",
      "Requirement already satisfied: beautifulsoup4 in /usr/local/lib/python3.10/dist-packages (from wikipedia) (4.12.3)\n",
      "Requirement already satisfied: requests<3.0.0,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from wikipedia) (2.31.0)\n",
      "Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.10/dist-packages (from rich) (3.0.0)\n",
      "Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.10/dist-packages (from rich) (2.17.2)\n",
      "Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.10/dist-packages (from markdown-it-py>=2.2.0->rich) (0.1.2)\n",
      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.0.0->wikipedia) (3.3.2)\n",
      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.0.0->wikipedia) (3.6)\n",
      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.0.0->wikipedia) (2.2.0)\n",
      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.0.0->wikipedia) (2024.2.2)\n",
      "Requirement already satisfied: soupsieve>1.2 in /usr/local/lib/python3.10/dist-packages (from beautifulsoup4->wikipedia) (2.5)\n",
      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
      "\u001b[0m"
     ]
    }
   ],
   "source": [
    "! pip install wikipedia rich"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "0ab20125-94e9-48e3-929d-8412fb2683ff",
   "metadata": {},
   "outputs": [],
   "source": [
    "favourite_bands=\"\"\"Audioslave\n",
    "Blink-182\n",
    "Dire Straits\n",
    "Evanescence\n",
    "Green Day\n",
    "Muse (band)\n",
    "Nirvana (band)\n",
    "Sum 41\n",
    "The Cure\n",
    "The Smiths\"\"\".split(\"\\n\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "8af38ebe-3fee-4160-a0f0-5bd447abc4d9",
   "metadata": {},
   "outputs": [],
   "source": [
    "from IPython.display import Image\n",
    "from pprint import pprint\n",
    "import rich\n",
    "import random"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "1134ab48-85cd-466b-9c3b-d5d305c22a9f",
   "metadata": {},
   "outputs": [],
   "source": [
    "import wikipedia\n",
    "from haystack.dataclasses import Document\n",
    "\n",
    "raw_docs=[]\n",
    "\n",
    "for title in favourite_bands:\n",
    "    page = wikipedia.page(title=title, auto_suggest=False)\n",
    "    doc = Document(content=page.content, meta={\"title\": page.title, \"url\":page.url})\n",
    "    raw_docs.append(doc)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4b0bd9be-992b-4bda-b9d8-e0738a2bb420",
   "metadata": {},
   "source": [
    "### Indexing Pipeline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "80f7a815-b48b-4d2a-b81e-b661fcc98ed9",
   "metadata": {},
   "outputs": [],
   "source": [
    "from haystack import Pipeline\n",
    "from haystack.document_stores.in_memory import InMemoryDocumentStore\n",
    "from haystack.components.preprocessors import DocumentCleaner, DocumentSplitter\n",
    "from haystack.components.writers import DocumentWriter\n",
    "from haystack.document_stores.types import DuplicatePolicy"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "37ec042d-5936-4d8f-9198-4a042710c456",
   "metadata": {},
   "outputs": [],
   "source": [
    "document_store = InMemoryDocumentStore()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "32b50531-6c56-4693-bbad-82711fab74f7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAARMAAALNCAYAAAAMdYV6AAAAAXNSR0IArs4c6QAAIABJREFUeJzs3XlcTfn/B/DXqbTdSos27SXSQiJrSNYZxhjzZVCGjKUZxjBfsxnDYIZmMDEzhuJrGUu2wdiHMpYhg7SoZImSolJaaL+9f39M9/y6Uhi3bsv7+Xj00P2ccz73fc/pvpzl3s8BGGOMMcYYY4wxxhhjjDHGGGOMMcYYez5B2QWwhu3XX389oK6u7lVeXj7Pz8/vF2XXwxhrhDZv3vx7ZGRkQU5ODh06dOjh5s2bP1B2TYyxRqZqkMh+OFBYbVSVXQBreDZv3vy7q6urj52dnU7VdisrK+3s7OzugwcPfrx///5LyquQNUQcJkxOTUEiw4HCasJhwkTPCxIZDhT2LBwmDHiJIJHhQGFP4zBhLx0kMhworCoOk2bu3waJDAcKk+EwacZeNUhkOFAYOEyaL0UFiQwHCuMwaYYUHSQyHCjNG4dJM1NXQSLDgdJ8cZg0I5s2bdrr5uY2oK6CREYWKIMGDcrdv39/ZF0+F2s4OEyaiU2bNu11cXHxsbe316uP57OystJ++PBh18GDB+dzoDQPHCbNgCxIHBwcWtbn81pbW+twoDQfHCZNnLKCRIYDpfngMGnClB0kMhwozQOHSRPVUIJEhgOl6eMwaYIaWpDIcKA0bRwmTUxDDRIZDpSmS0XZBTDFqYsgOXLkCIyMjFBcXKyoLtGrVy9TIyOjRZs2bZqqsE6Z0vGeSRNRF0GyfPlymJiY4NatW7Czs0N0dDTat2+vkL55D6Xp4TBpAuoiSKRSKdasWYPQ0FA8efIEZ8+ehbq6OgYMGKCop+BAaWI4TBq5ujpHoqKiAldXV5w9exbt2rWDsbExAgMDoa6ursin4UBpQvicSSNW1ydbb926BSsrK6xevRp3795Fenp6XTwNn0NpIviOfo1UfV+1ISIIQt3+uZw7dy4jOzt7/sSJE0Pq9IlYneDDnEYoJCTkMxcXlxGOjo4m9fWcdR0kqDzkyczMtOrbt2/y4cOHk+r8CZlCcZg0QgcPHjzn7e1tV1RU5GJqaqrYkxhKFBYWlldYWPj+e++994eya2Evj8Okkdq7d+/RAQMGmDeVQAkLC8srKSkZM378+GPKroX9OxwmjVhTCRQOkqaBw6SRa+yBwkHSdHCYNAGNNVA4SJoWDpMmorEFCgdJ08Nh0oQ0lkDhIGmaOEyamIYeKBwkTReHSRPUUAOFg6Rp4zBpohpaoHCQNH0cJk1YQwkUDpLmgcOkiVN2oHCQNB8cJs2AsgKFg6R54TBpJmSBUlxc3MHU1LRFXT9feHh4QUlJyTscJM0Hj2fSzISGhq5p3br1BDc3N626eo7w8PACqVQ6bsyYMYfq6jlYw8Nh0gzVZaBwkDRfHCbNVF0ECgdJ88Zh0owpMlA4SBiHSTOniEDhIGHgMGF4xUDhIGEyHCYM+JeBwkHCquIwYaKXCRQOEvY0DhMm50UChYOEPQuHCaumtkDhIGE14TBhz/SsQOEgYYz9K6GhoWtOnz5dmJOTQ7t3787fsWPHMGXXxBou3jNhtdq1a9f3ZWVl01q0aPGf0aNHn1B2PazhUlN2AaxhCwsLCyIie0EQPAFwmLAaqSi7ANawSaVSiSAIbxORv7JrYQ0bhwmrFRGpAoAgCFJl18IaNg4TVqsWLVrIBtDiMGG14jBhtZJKpWr4Zw+lXNm1sIaNw4TVig9z2IviMGG1UlNT48Mc9kI4TFitKioqBPBhDnsBHCasVlUOc/gDjqxWHCasVrIwISI+zGG14jBhtRIEQfY3wmHCasVhwp5HdgK2Qsl1sAaOw4Q9D++ZsBfCYcKeh/dM2AvhMGG14nMm7EVxmLBaya7m8J4Jex4OE1Yr3jNhL4rDhNWK90zYi+IwYbXiPRP2ojhMWK2q7JlwmLBacZiwWqmqqvJhDnshHCasVlKplA9z2AvhMGG14j0T9qI4TFiteM+EvSgOE1Yr3jNhL4oHvGkgiGgGgJ+UXUcjtFoQhBnKLoLxngljTEE4TBhjCsFh0sDdunULgiBgx44dyi6l3uTn5yMqKkrZZbCXxGHCGpwOHTrgf//7n7LLYC+Jw4Q1OMXFxcougf0LHCYNTFZWFnx9faGrqwsTExN8+eWX1ea5ePEi+vTpAy0tLbRq1QqTJk3Co0eP5ObZsGED3N3doampCTMzM0ydOhWZmZkoLy+HIAgIDAyUm3/YsGHo3r07ACA6Ohp6eno4fPgwOnbsCHV1dbRp0wYbN27E0qVLYW1tDT09PYwYMQJZWVly/axZswaOjo7Q0tJC+/btsXjxYjEcoqOjoa2tjdOnT6NHjx7Q0tKCk5MTDhw4IC5va2uLjIwMrF69GoIgwNbWFgBQWFiIiRMnwsjICEZGRhgxYgRSUlIUuOYZayKIaEZxcTF17NiRtLW1af78+bRhwwbq0qULAaDQ0FAiIoqPjydtbW3q2rUrhYaG0qpVq0hfX5/69+9PMgsWLCAANGrUKNq0aRN9//331L9/f3r06BGVlZURAFq6dClVNXToUOrWrRsREUVFRREAsra2pkOHDlF4eDi5uroSAPLy8qJz585RaGgo6ejokJ+fn9jH119/Tbq6uvTll1/S9u3baf78+aSrq0vjx4+X69fExIR27NhBFy5coMGDB5O2tjZlZWUREdGlS5fI0NCQRo4cSWfPnqVLly4REdG8efNIEARatGgRrV+/nry8vOjhw4dERD8re9sx1qAQ0YwVK1YQADpx4oT4Br127ZpcmIwdO5Z0dXXp0aNH4jxbtmwhAHT69Gm6d+8eqampiW/gp71MmOzatUucvnHjRgJAcXFxYtukSZPIzMyMiIjS0tKoRYsWtGfPHrl+165dSwAoJydH7HfHjh3i9CtXrhAA+u2338Q2U1NTmj59ulw/fn5+pKOjQ6WlpU+/JA6TBoIPcxqQvXv3okOHDhgwYIDYpqamJjfPqVOn4OPjA319fbFt8ODBAIDLly/jxIkTKC8vx/vvv//K9WhpaYm/a2pqAgA0NDTENktLSzx8+BAAcOLECZSVlcHX1xeampriz4cffggAuHfvnricRCIRf7exsQEApKen11qLr68vCgsL8dprr+Hq1auv/NqY4nGYNCB3796FnZ1drfPk5eXBxMRErs3Q0BAAkJaWhoyMDACAlZVVHVb6D0EQQEQAgAcPHgAADh06hOjoaPEnNjYW165dQ/v27Z/Zh7q6OgCgvLz2WxkPGTIEhw8fxoMHD9CxY0dMmTIFZWVlCn9N7N9Te4F5WD0xNjZGZmZmrfNYWloiOztbrk0WIAYGBuIey4MHD2BpaVlt+bq6ZbCBgYH4u5OT0yv3JwupqoYMGYJBgwZh1apV+Pjjj2Fra/vME9RMOXjPpAHp3LkzLl26hBs3btQ4T48ePXDq1CkUFRWJbXv27AEAeHl5oV+/fhAEAevXr5dbTvY/v6qqKgwNDeUOK4gId+/efaXafXx8oKKigp9+kv960ZMnT166L4lEUu2wp6SkBACgoqKC2bNnw8LCAleuXHmlmpli8Z5JA/L555/j119/RZ8+fTBr1iyYm5sjNDRUbp4vv/wSO3bswJAhQxAQEICUlBQsXLgQ/fr1Q9++fSEIAqZMmYLg4GBkZ2djyJAhyMrKQnBwMP7880/Y2tpi8ODB2LJlC3x8fGBmZoYVK1YgMTERHh4e/7r2Nm3aYObMmVi5ciWGDx+OESNG4P79+/j5559x5MgRdOrU6YX76tOnD7Zv347AwEAYGhqiR48eOHbsGH7//XeMHz8e6enpSEtLQ5cuXf51vYw1WUQ0g4jozz//JA8PD9LQ0CAHBwf65JNP5K7mEBGdOnWKunfvThoaGmRkZERTpkyhvLw8cbpUKqUlS5aQra0tqaurk52dHU2bNo3u3btHREQZGRn01ltvkZ6eHllZWdGSJUvo9ddfr3Y15+DBg2KfoaGhBIBu3rwpti1YsIBUVVXFxxUVFbR8+XKytbWlFi1akLW1NX3wwQeUkZFRY78FBQUEgIKCgsS2jIwM8ZKxra0t7d27l3777Tfq0qULaWtrk7m5OX300UeyKzt8NaeB4CEIGggeguBf4yEIGgg+Z8IYUwgOE8aYQvAJ2HpEROoAWtcwWR1AWj2X9FxFRUUtS0pKdLS0tPI0NDQeK7ueZ5ASkW0N0zIFQSis53qaLT5nUo+IqAOAGGXX0YyMFgRht7KLaC74MIcxphAcJowxheAwYYwpBIcJY0whOEyakPPnz0MQBAiCUOO3dJu6//znP+I6+Oabb179G4fshXGYKMGWLVugo6ODiorqN8n7+uuvX+g7MuvWrcOCBQvk2uLi4iCRSHD//n2cP38eADB+/HhIJBIYGBjAw8MDK1eubDJjrD5rHYSEhCAiIgL459vLuUoqrVniMFGC6OhouLm5QUWl+urv3Lkzhg4d+tw+vv/+e1hYWMi1xcXFwdnZGWZmZuKQAOHh4Zg1axZOnDgBX19fzJ8/HyNGjFDgq1GeZ60DQ0NDcVza7t275yipNMbqFhF1ICLy8fGh999//+nhB+m9994jAPTf//6XiIhKS0tp+vTpZGRkRPr6+vT5558TEVH79u0JAEkkEtLR0RG/SOfj40MTJ06U+8IcAIqIiBDbdu7cSQDEsVXj4uJo4MCBpK2tTWZmZrR48WK5L+FNnz6dTExMSFNTkwICAoiIyMnJiQIDA8X5Nm7cSPr6+kREFBwcTP369SNfX19q1aoVGRgY0MKFC2n69Omkr69PxsbGtG3bNnHZiIgI8vHxIS0tLTIyMqIvvviCiIgyMzPJwsKCgoODydnZmTQ1Ncnb25seP35c6zogIlq6dCmZm5sTEY1S9jZnrE7IwsTIyIiCg4OrhYlUKiUrKyvatGkTERH99NNPZGlpSYmJiXT9+nU6e/YsERH98ccfpKOjQ1KpVG55ExMTWrZsmfj42LFjpKKiIr4BiYhycnLE8V2TkpLIwMCAgoKCqLCwkE6ePEkqKip05swZkkql5O3tTV26dKHLly9TXl4e3bhxg4qLi0lVVZWOHj0q9jl79mzq06cPERGtXr2a1NXVacOGDZSfn09Tp06lFi1a0NatWyk3N5eGDx9O7u7uRER07tw50tDQoMWLF1N2djb99ddfBICSk5PFbxP7+flRWloaRUZGkiAItHv37lrXARGRr68vDRgwgMOknvHH6etZamoqsrOznzm+R35+PlJTU+Hm5gYAkEqlyMvLQ3Z2Nnr27Im2bdsCAC5cuABPT0+5w6SHDx8iMzMTrq6uYlt0dDQcHR3lxlzNyflnz79ly5b48ssv4e3tjVmzZgEA+vXrB0tLS8TGxiIrKwuXLl3CrVu3YGZmBgDQ09NDVFQUpFIpOnbsKPYZGxsrPk5NTUXv3r3h7+8PADA1NUXXrl3h6+sLAOjYsaM4buycOXPg4+ODefPmoaysDBcvXoShoSHMzc0RHx8PQRDwyy+/QFdXF+bm5mjRooX4mp+1DmTi4+Ph7e39CluJ/Rt8zqSeRUdHQ1VVVQyMqq5evQpVVVU4OzsDAGbMmIGPPvoIAwYMwLhx48QTp3///Te6desmt2xcXBwAwMXFRe65qr7pAeDw4cNQVVVFly5dcPToUbnBq4kIDx8+hImJCcLCwtCrVy8xSKrWaGxsDHNzc7k22fPExsaiQ4cO4rSqQQMACQkJcHV1RUlJCS5cuIDIyEjo6elBT08Pe/bswR9//AF1dXXExsbC1tYWurq6AICUlBSUlpaKV6metQ4AoKKiAomJiXKhyuoHh0k9i46OhpOTkzjae1WxsbFo06aNOE1VVRWLFy9GZGQkdu/ejUOHDgGVN+F6+opPXFwc9PT05AaSjoqKgru7u/j49u3bWLRoEfz9/aGvr4/Hjx/LhcKxY8cglUrh4+ODgoICaGtrV6sxPj5e7o1669YtZGZmioFRNVhQQ7hUfRwaGop79+4hLy8P586dE0dPi42NlQvcmJgYaGhowNHRscZ1AABJSUkoLi6WC1VWPzhM6ll0dDRsbGyQmJgo/iQlJQGVb0TZG6ikpAQrVqxAeno67t27h4qKCjg4OKC8vBw5OTmIjY1Feno6cnP/ufopu5IjU1hYiJs3b0JHRweXL1/GDz/8gG7dusHNzQ2rVq2CiooKOnTogJ07d6KoqAgJCQn46KOPMHfuXBgZGaFr1644duwYjh49ivv372P79u3AP98iRnZ2NsrKypCRkYHJkydDVVUVLi4uyM3NRWpqqhgWBQUFSE5OFh8XFhYiKSkJHTp0gIaGBtzd3REUFITc3FxkZmbiwoULYv1Ph05MTAzat28PNTW1GteBbD0IgsBhwpo2Iurg4OBAAOR+evToQUREPXv2pIULFxIRUXR0tHgVo23btrR582bxBOPMmTNJXV2dWrZsSRcvXiQiIi8vL5o8ebLcVRJZ/7q6utSrVy8KDg6m8vJycZ6oqCjy9PQkLS0tcnR0pB9//FGcVlpaStOmTSMjIyPS0dGhN998U6zLzs6ODA0NycvLi9555x1ycnIiIqIzZ86QmpoaFRcXExHR+fPnSRAEKigoICKiixcvEgDKzc0lIqKYmBjq1q0baWlpkYWFBW3dulXuZPLOnTvFxyNHjpS7sdiz1gER0eLFi8nGxkb2kE/AsqZJdjWnLsiuyjR3Y8aModdff132kMOkHvFhThOQlpaGR48ewczMrNqNxJuL/Px8PHjwAFevXuWTr0rCYdIExMfHAwDGjh2LQYMGKbscpRg3bpx4SZnDRDl4pLV6REROAI4pu46XUVBQYFRaWqojkUiyNTU1G+KwjbX5QBCEI8ouorngMGG1mjp1ajCAqQCmhYSEhCi7HtZw8WEOqxURCZX/Vr/5L2NVcJiwWgmVdzoXBIHDhNWKw4TVSrZnwtjzcJiwF1JRUcF7JqxWHCbsefgwh70QDhNWK9k5ExUVFQ4TVisOE8aYQnCYsFrJTsDyORP2PBwmrFZ8aZi9KA4TViu+NMxeFIcJeyF8mMOeh//XYaKpU6fKPjVPVf82BEFA1U/TE9GvKioq74aEhPDfDxPxngmr6k8AJPxDvM0mKgNF9qOiovKusgtlDQ+HCavqixeZiYhARAV1Xw5rTDhMmCgkJORvQRAin3d+RBCEciKaV3+VscaAw4TJEQRhpiAINY44QESoqKgoUVFRWV/vxbEGjcOEyQkODo4AcLbyJOyzlAmC8H1ISEhhPZfGGjgOE1aNIAhLULkXUlXl4yfFxcUrlFQaa8A4TFg1ISEhxwVBuEhEUllbZZCUCYLw3ZYtW54otUDWIHGYsGciog+r/n1UXhYuA7BGuZWxhorDhD3TunXrLgH4g4iklZeCS4jom5CQkDxl18YaJg4TViNBEAJRZa8kNzd3pbJrYg0Xhwmr0bp1604DiMA/hz0/7N69u0jZNbGGi79b8ZLWr1+/RFVVta2y62B1q6ysbN/UqVO3KbuOxkRN2QU0NioqKmPbtGljK5FIlF0KqyMZGRm4d+9eFgAOk5fAYfIvWFhYQF9fX9llsDpSWlqKe/fuKbuMRofPmTDGFILDhDGmEBwmjDGF4DBhjCkEhwljTCE4TBhjCsFhwhhTCA6TJqq4uBhr167FF1+80LCujL0y/tBaE5WdnY25c+fC0dFR2aWwZoL3TBhjCsFhwhhTCA6TRiwhIQETJ06Eo6MjLC0t4ePjgwMHDtS6TGxsLP7zn//AysoKNjY2GDVqFGJjY8XpxcXFGDt2LBwdHWFqagoPDw8sX74cUqk4giNsbW0xatQozJkzBy4uLrCzs8OYMWOQkpIi91xZWVmYOXMmHB0dYW5ujn79+mH//v3i9DVr1sDQ0BDvvvsuhg8fDktLS7Rt2xb5+fkKXU+sfvA5k0bq0qVLGDFiBIqKimBvbw97e3vEx8cjNjYWw4cPf+4yHh4ekEqlCA8PR0REBI4dOwZXV1doamoiNTUV9vb2UFNTQ1RUFJYsWQJtbW188MEHYl/h4eHQ19fHsGHDcPPmTRw/fhwpKSk4e/Ys1NTU8OjRIwwZMgR37tyBvb09HB0dERUVhUmTJiE/Px/vvvv/NwU8dOgQnJyc8NZbb8HU1BR6enr1sg6ZYnGYNFL//e9/UVRUhE8++US8YpOWllbrG3HOnDkoKirC+vXrMXLkSADA5s2bMXv2bAQGBmLr1q0AgLNnz4q3Bb169Sr69u2LvXv3yoUJAISFhcHe3h4A4OPjg+joaFy+fBndu3fH8uXLcefOHfj7+2P58uUQBAHXrl2Dt7c3Fi1aBF9fX7EfGxsbhIeHQ0tLqw7WFKsvHCaN0L179xAXFwddXV3MmTNHbLewsKh1matXr6JFixaIiopCVFQUUHlYAwBXrlwR5/3999+xbt063Lp1S5yenJxcrU9ra2vxd3d3d0RHRyM5ORndu3fHkSNHAACPHz/G/Pnzxfl0dXWRk5ODO3fuiG1DhgzhIGkCOEwaoQcPHgCV4dGiRYuXWqasrAyrV6+uNl1TUxMA8NNPP2HBggXQ09PDgAEDoKOjg61bt6KwsPZ7bsmWLysrAyoHGAKA3bt3P3P+quGho6PzQq+BNWwcJo1Qy5YtAQCZmZkgIvGQpDaywx8zMzMkJCTUOF9ISAgA4MiRI3B2dgYRYfv27dVuyPUiz1dcXIy///6bP+vSTPDVnEbIwcEB5ubmyMnJwS+//CK2Z2ZmVjscKSkpAQC0adMGpqamePDgAdav///bBGdlZSEpKUl8/PjxYwiCACsrK6Dy8Ke8vBzl5eUvVWPPnj0BAMuWLUNpaSlQuddS9XCKNS0cJo2QioqKeB7iq6++goeHBwYNGgQPDw98++23QJVDh9TUVCQmJkJFRQVfffUVAODTTz9F165dMWDAAHh4eGDBggVi3z179gQRYdCgQXj33XfFE7VSqVTuPMfzfPrpp5BIJNizZw86duyIIUOGwMXFBb6+vuJ5GNa0cJg0Uu+88w62bNmCLl264MGDB0hMTISDgwP69esHVB4KDR8+HAYGBoiMjAQAjBs3Dps2bYKHhwdSU1ORkJAAe3t79O/fX+x3+fLlGDZsGO7fv4+IiAj4+fkhMDAQEokEf/311wvX5+TkhCNHjmDQoEEoLCxEVFQUdHR0MGrUKFRUVNTBGmHKxre6eEkbNmy44+3tbcsDSjddN27cwNWrV9dOmTLlfWXX0pjwngljTCE4TBhjCsFhwhhTCA4TxphCcJgwxhSCw4QxphAcJowxheAwYYwpBIcJqxcHDx6ElZUVf/q1CeMwqSMBAQGwtLSEnZ0dvL29sWbNmibznZRPP/0UBw8erNaemJgIf39/ODo6wszMDD179hTDIzY2Fm5ublBR4T+5poq3bB05c+YMAgICsHfvXowaNQqBgYHw8/NTdlmvLD09HevXr0f79u3l2s+cOYP+/fujoqICmzZtwsmTJzF//nwxPGJiYuDu7q6kqqt72SEV2PNxmNSBrKwsPHjwAIMHD0anTp0wffp0rFq1CidPnhRHODt8+DB69+6N1q1bo1u3bjh27Ji4/O3bt+Hr6wtra2vY2Nhg586dAIDu3btj1apV4nzbt2+HnZ0dAGDGjBn44IMPMHz4cFhbW6NDhw7YsmULxowZg9atW6Nr165y45jIxoO1sLBAmzZtsHjxYgDAiRMn0LdvX/z8889wcXGBlZUV5s6dC1QOC9m5c2eoqKigX79+4pcK8/LyMHnyZIwYMQKbN29Gr1694OzsjCFDhojPFxsbi44dO4qP79+/j4CAADg4OMDKygp+fn7iQNIpKSnw8/MTX//AgQNx48YNPHz4EK6urti8eTN69OiB1q1bY/jw4Xjy5AkAoLS0FN988w3c3Nxgbm4OHx8f8TUfP34c1tbWWL58OTw9PZGWllYHW7554zCpA7GxsVBRUYGzs7PY5u3tDVS+UQ4cOIAPP/wQixcvxp07d/DOO+9g2rRpKCwsxIMHD/D6669DX18fp0+fRmRkJHr37o2SkhIkJSXB1dVV7DM+Ph4uLi4AgCdPnuD06dOYN28eoqKiYGhoiMDAQHz22WeIjIxEUVERtm3bBgC4ePEihg8fDi8vL8TFxWHbtm0ICgpCamoqKioqkJCQACJCREQE5s2bh7Vr1yI7OxsWFhb44IMP0L9/f6SmpuLPP/8EAGzbtg0lJSVYunTpM9dHeno6MjMzxTDJycnBkCFDUFxcjD///BORkZGIiorC4cOHkZWVhaFDh8LBwQHXrl1DWFgYIiMjoaamBk1NTaSnpyMiIgJ79+7F0aNHce7cOYSFhQEAJk6ciCNHjuDXX3/FjRs3YGZmJo73cu3aNRQWFsLa2hqXLl1C69at62jrN1880lodiIuLg4ODAyQSidj26NEjAIBEIsHs2bPx2WefiQHz9ttv45tvvsHdu3exadMmtG7dGj///LPcCGqxsbGQSqVieKDyVheycElLS4O/vz+6du0qPs/AgQPRqVMnoHK8VtlQiV999RV69+6NOXPmoKysDJGRkTAwMICpqSkOHjwINzc3fPjhhwAgLi87XLl8+TJ69eol93pPnTqF/v371ziYdUxMDCQSCdq2bQsAWL16NZ48eYLVq1dDIpHg3LlzyMvLQ7t27bB06VJYWlpi4cKFAIC7d+/CwMAA9vb2iI2NhSAIWLZsGXR1dWFmZoYWLVpARUUFJ0+exLFjx3D8+HF06tQJKSkpuHPnjlhrQkICXnvtNYwePVru9TDF4TVaB65evSr3pkflbraqqiq0tbWRnp6Ovn37itMePnwIADAyMsLp06fxxhtvVBuKMSEhAa1atYKZmZlcm4uLC4gIiYmJ1YKm6uMbN26gffv2KCkpweXLlxETEwMbGxvY2NjgwIED2LNnD9TV1astd+vWLRgbG8PAwAAVFRWIjo5G586d5WrLysqCiYlJjesjNjYWLi4u4hv4r7/+giAIaNeuHaysrDBz5kwEBQWhU6dO2LdvH8aPHy+n8ktYAAAgAElEQVQue/nyZTHQ4uPjYW1tDV1dXaBy4KfS0lK0bdsW586dg46ODt5++23Y2trCx8cHr732Gt5//59RBK5du4Y+ffo8d9uxf4/3TOrA1atXMWbMGPFxcnIyli1bhnHjxoltVUPh4MGD6NSpE4yNjVFQUPDMkdoTExPlTnrevn0bWVlZcHV1RUpKCh4/fizupdy7dw95eXliKNy/fx/Z2dlyIbFu3Tq4u7tDU1MT6urqYnt8fDxGjRol91h2uHb9+nUUFBTInfsAABMTE1y/fr3G9VG1D5lJkyZh1qxZqKioEPfgcnNzkZeXJ54HAoCjR49i4MCBz+wnLi4OGhoacHBwAAC4ubnh999/R2FhodxeUnl5OW7evFmtBqZYvGeiYMXFxUhKSoJEIkFUVBR++eUXDBw4EM7Ozli6dCnatm0LDQ0N7Ny5E2VlZTh+/Dg2btwoDsPYuXNnbNiwAdeuXUNKSgqOHj0q9puTk4OysjJkZmbio48+gqqqKpycnBAfHw89PT1x3Nb4+HhoaWmJb7KEhARoaGigTZs20NDQgJubG9asWYP8/HxkZWXh0qVLQOXQjNevX5cLnbi4OPFNmJWVBVQetiQlJYlXRN5++22cPn0aS5YsQVRUFE6cOIEJEyaIfWRnZ8vdEbBLly7Ys2cPbt68ieLiYpw6dQqoHIRaV1cXt27dAgD88ssviI2NFYegfHqvKS4uDm3btoWamhq6dOmCyMhIHD9+HBUVFTh16pR4KT4pKQklJSXVrkAxxeIwUbDbt2+joqICn3/+OUaMGIGDBw9i3rx52LdvH7S1tWFsbIzVq1cjODgYdnZ2WL58OTZt2iQe9ixZsgTW1tYYNGgQBgwYgMTERACAn58fHj9+DCcnJ0ycOBEmJiZwcHCAlpYWEhIS5P7XTUhIgJOTk3hYkZCQIL7pUHnOIjs7G926dcPgwYPFQahl98mp2ld8fLz4JvT09ES3bt0wduxYvPHGG+I8o0ePxtKlS7Fv3z4MHToUn3zyidwbd+rUqQgPD8dvv/0GAPjkk0/g5uaG4cOHw9PTEydOnAAqz2MEBQXh+++/h6enJ8LCwtCtWzdxr+fpPZOqj1977TVMnz4dH3/8MVxdXbF06VJoaGgAlYc4ZmZmMDQ0VPDWZlXxsI0viYdtbPp42MZ/h/dMGGMKwWHCGFMIDhPGmEJwmDDGFILDhDGmEBwmjDGF4DBhjCkEhwljTCE4TBhjCsFhwhhTCP7W8EsioorY2NgidXV16QvM3hQIRCQIgtBsRoLOz89XB8DjOr4kDpOXJJVKZ9+/f7/ZfGPs/v3775WVlXnp6OisNzQ0PKfseupRwgvMw6rgL/qxWk2ZMmWjIAgTAUwMCQnZrOx6WMPF50wYYwrBYcIYUwgOE8aYQnCYMMYUgsOEMaYQHCaMMYXgMGGMKQSHCWNMIThMGGMKwWHCGFMIDhPGmEJwmDDGFILDhDGmEBwmjDGF4DBhjCkEhwljTCE4TBhjCsFhwhhTCA4TxphCcJgwxhSCw4QxphAcJowxheAwYYwpRKO+bw4RmQNIV3YdjCnAXEEQliq7iFfBeyaMMYXgMGGMKUSTDRNLS0sEBAQou4x6k5+fj6ioKGWXUav169dDEAQ8ePBA2aXUm5SUFCQnJyu7jHrRZMOkuenQoQP+97//KbsMVkVSUhLs7e1x+fJlZZdSLzhMmoji4mJll8CeUlZWhoqKCmWXUW+aRJhIpVLMnz8f5ubm0NPTw5tvvonCwkK5eS5evIg+ffpAS0sLrVq1wqRJk/Do0SO5ef766y8MHDgQurq60NXVxRtvvIErV66gvLwcgiAgMDBQbv5hw4ahe/fuAIDo6Gjo6enh8OHD6NixI9TV1dGmTRts3LgRS5cuhbW1NfT09DBixAhkZWXJ9XPq1Cl0794dWlpasLGxwaRJk3D//n2xX21tbZw+fRo9evSAlpYWnJyccODAAXF5W1tbZGRkYPXq1RAEAba2tuK07777DlZWVtDR0YGXlxfCw8Nfev1u2LABubm5L71cdHS0uM7t7e3x22+/VZtny5YtcHZ2hoaGBmxtbfHtt9/KvQGLioowd+5c2NvbQ0NDA23btsU333wDqVSKsLAwCIKACxcuyPWpo6ODzz//HACwcuVK9O7dG+vWrYOlpSU0NTXRrVs3hIWFwd/fHwYGBjA1NcWcOXMglUrFPgoLCzF79myYmppCT08Pnp6e2Llzpzh95cqV6N69O3bt2oU2bdpAIpGgd+/eSExMBAAkJyejffv2AIBRo0ZBEARMnDgRAHDjxg30798fOjo6sLKyQkBAQLMKnQaJiMyJiKZNm0YAaNKkSbRp0yYaM2YMAaBp06YREVF8fDxpa2tT165dKTQ0lFatWkX6+vrUv39/kjl+/DipqalR586dae3atbR69WoaMmQIXbhwgcrKyggALV26lKoaOnQodevWjYiIoqKiCABZW1vToUOHKDw8nFxdXQkAeXl50blz5yg0NJR0dHTIz89P7CMsLIxatGhBkyZNoq1bt9KqVavI3t6enJyc6MmTJ2K/JiYmtGPHDrpw4QINHjyYtLW1KSsri4iILl26RIaGhjRy5Eg6e/YsXbp0SewbAPn6+tKWLVto3LhxtH//fnpZw4YNo5YtW9KCBQsoNzf3hZZJTEwkPT09sre3p6CgIPr555/JxMSEAND9+/eJiGjTpk1ifb/99ht98sknJAgCffPNN0REVF5eTj4+PtSiRQuaM2cObdmyhb744gtx/Z04cYIAUEREhNxzSyQS+uyzz4iIKCgoiABQv3796Pz587Rjxw7S1dUV/z4uX75MCxcuJAC0fv16IiKSSqXUv39/sfZt27bR5MmTCQD973//k+vX09OTTp48ScePHydbW1vq2rUrEREVFxfTtm3bCAAtXryYzp49Szdu3CAiIi8vLzI2NqaQkBBasWIFDRs2jIjoC2W/n5o1IjKPjIwkAPTll1/K/UGZmZmJYTJ27FjS1dWlR48eidO3bNlCAOj06dNEROTk5ESOjo5UXFxc7Y3xMmGya9cucfrGjRsJAMXFxYltkyZNIjMzM/Gxs7MzzZgxo9obEQDt3btX7HfHjh3i9CtXrhAA+u2338Q2U1NTmj59ulw/69evJwB0/vz5aq/pZR09epT69u1L+vr6tHDhwueGyhtvvEEGBgaUmZkptq1Zs0YMk4qKCrKwsKDevXvLLffee++Rrq4uFRQU0I4dO+TewE97mTCpWseECRPI2NiYKioqxDZ7e3saM2YMERHt2rWL1NXVKS0tTa7fMWPGUIcOHeT6ffDggTj9hx9+IACUnZ1NRETXrl0jALR79265fiwtLWnQoEFPv5xGHyaN/jBn7969AICPP/5Yrl1VVVX8/dSpU/Dx8YG+vr7YNnjwYADA5cuXkZycjMTERPj7+0NDQ+OV6tHS0hJ/19TUBAC5Pi0tLfHw4UOg8kx/QkICgoODoampKf507NgRAHDv3j1xOYlEIv5uY2MDAEhPr/3zekOHDoWhoSH8/Pxw+PDh59aem5uL5ORkJCcnIy0tTW7akCFDcOrUKRw7dgz79u2Ds7Nzjf0UFRXh2LFjGD9+PIyNjcV2NTU18febN28iLS0NI0eOlFt28ODBKCgowI0bN3D06FFoaWlhwoQJz639eZ7eLurq6hCE///MZtXtcuTIEZSVlcHe3l5uu+zevVtum+Bfbpfx48fj+PHj+PDDD5GZmfnKr62hUHuBeRq0u3fvomXLljA0NKxxnry8PJiYmMi1yeZPS0tDRkYGAMDKyqqOqwUEQQARAYB4ifTrr7+u9qYCgNatW+P27dvV2tXV1QEA5eXltT6XmZkZzp8/j9mzZ2PYsGHo1asXdu7cCQsLi2fOv3LlSixcuBAA0K5dO/H4X+bcuXNYsmQJ7t69i08++aTG571//z7KyspgZ2dX4zx5eXkA8Nzt0rp1a7n/GOrK09vFzMwMJ0+erDafbN0/y4tul2+//RYmJiZYsmQJNm7ciO+++w7Tp09/5degbI0+TIyNjZGfn4+SkpIa9yosLS2RnZ0t1yYLEAMDA3GPpabPP1T9H0yRDAwMgMqTfU5OTq/cn+zNUFW7du1w5MgRnDx5Em+99RYmTpyIEydOPHP5MWPGwN3dHQCgq6srtoeHh2PRokWIjo7GrFmzsH37drRs2bLGOmR7I7X9r2tpaQkAz90ussfPUpfbJSsrC7a2tuLe5at4ersIgoBZs2bhvffew7Rp0zBjxgw4ODgY19hBI9HoD3M6d+4MIsL27dtrnKdHjx44deoUioqKxLY9e/YAALy8vNC2bVtYWlpi8+bNcv+rEBEqKiqgqqoKQ0NDud1XIsLdu3dfqXZHR0fY2Nhgw4YNePLkidheXl6O0tLSl+pLIpE8c/e6pKQEAODj4yNenaqJk5MTRowYgREjRqB///5i+7x589CrVy/cuXMHCxcurDVIUBlEjo6O2L17d42vw9zcHLa2tjhy5Ihc+549eyCRSNCpUyf4+Pjg8ePH2LFjh9w8sm0k26up+rofPHggvuZ/a8CAASgvL8eaNWvk2qtuoxchOwR6ervILuPr6upi0aJFwD9XvmretW4kGv2eyTvvvIPFixcjICAAcXFx6NSpEyIiIuQ24JdffokdO3ZgyJAhCAgIQEpKChYuXIh+/fqhb9++EAQB3333HXx9fdG9e3dMnDgRKioq2LJlC6ZPnw4/Pz8MHjwYW7ZsgY+PD8zMzLBixQokJibCw8PjX9cuCAKCgoLw9ttvo3v37nj//fdRXl6OX3/9FX5+fpg1a9YL99WnTx9s374dgYGBMDQ0RI8ePVBcXIxRo0Zh+vTp0NHRwdGjR9GlS5eXrjM8PBza2tovtcyCBQvg5+eHnj17wt/fH6qqqli5cqXcPAsXLsSECRMwefJkDB48GOHh4di3bx++/vprSCQSjB8/HqtXr8aECRNw8eJFdOzYEVevXkVYWBiuXLkCJycn2NjY4JtvvoGpqSkKCgowd+7cV77M6ufnh+DgYHzyySe4c+cOPDw8EBMTg3379uHatWty519qY2lpCXt7e6xYsQISiQQ5OTmYOXMmRo0aBT09PQwaNEgMU3d395xXKpq9Gtml4eTkZBo2bBhpaWmRmZkZzZgxg4yNjcWrOUREp06dou7du5OGhgYZGRnRlClTKC8vT+50+r59+6hTp06krq5O5ubm9MYbb9Dff/9NREQZGRn01ltvkZ6eHllZWdGSJUvo9ddfr3Y15+DBg2J/oaGhBIBu3rwpti1YsIBUVVXlnvfw4cPUuXNnUldXp1atWtHIkSPpypUrNfZbUFBAACgoKEhsy8jIEC8Z29ra0t69eykmJoaGDBlCBgYGpK+vT2+++SalpqY+fRWhzvz8889ka2tLWlpa1KVLF5owYYLcpWGqvMLj6OhILVq0IFtbW/ruu+/krrJkZ2fT5MmTqVWrVqStrU0uLi60ePFi8arbpUuXqGvXrqSlpUUdOnSg/fv3P/NqTkFBgdjntGnTyMLCQq7Wvn37yn1UIC8vjwICAqhVq1akoaFBrq6utHTpUiotLa2x34MHDxIAioqKEtsuXrxILi4uJJFIyMnJiZKTk2nRokXUpk0b0tTUpDZt2lBISAg1has5PAQBYw0DD0HAGGPgMGGMKUpjPwErBZCi7CJeggCg7j80oUCFhYUGpaWl2lpaWrkaGhovdzlDuSoqfxqLPGUX8Koa9TmTxoaIRgDYp+w6monfBUEYoewimhM+zGGMKQSHCWNMIThMGGMKwWHCGFMIDpMm5Pz58xAEAYIgiKN8NTf/+c9/ZOvgTQDvK7ue5oTDRAm2bNkCHR2dZ36H5Ouvv36h7/usW7cOCxYskGuLi4uDRCLB/fv3cf78eaBy7AyJRAIDAwN4eHhg5cqVTWa82Getg5CQEERERMgexiujruaKw0QJoqOj4ebmBhWV6qu/c+fOGDp06HP7+P7776uNSxIXFwdnZ2eYmZmJwxuEh4dj1qxZOHHiBHx9fTF//nyMGNE0rpg+ax0YGhpWHWM3Thl1MVbniGgEEZGPjw+9//771b4Y99577xEA+u9//0tERKWlpTR9+nQyMjIifX19+vzzz4mIqH379gSAJBIJ6ejoUEZGBsn6nThxothfRkZGtWENd+7cSQDEcWLj4uJo4MCBpK2tTWZmZrR48WJx3oKCApo+fTqZmJiQpqYmBQQEEFUOcRkYGCjOt3HjRtLX1yciouDgYOrXrx/5+vpSq1atyMDAgBYuXEjTp08nfX19MjY2pm3btonLRkREkI+PD2lpaZGRkRF98cUXRESUmZlJFhYWFBwcTM7OzqSpqUne3t70+PHjWtcBEdHSpUvJ0NCw6AU2CWONkyxMjIyMKDg4uFqYSKVSsrKyok2bNhER0U8//USWlpaUmJhI169fp7NnzxIR0R9//EE6OjoklUrlljcxMaFly5aJj48dO0YqKiriG5CIKCcnRxyrNikpiQwMDCgoKIgKCwvp5MmTpKKiQmfOnCGpVEre3t7UpUsXunz5MuXl5dGNGzeouLiYVFVV6ejRo2Kfs2fPpj59+hAR0erVq0ldXZ02bNhA+fn5NHXqVGrRogVt3bqVcnNzafjw4eTu7k5EROfOnSMNDQ1avHgxZWdn019//UUAKDk5WfxmtJ+fH6WlpVFkZCQJgiCOp1rTOiAi8vX1pc6dOzed8RAbicb+cfpGJzU1FdnZ2ejUqVO1afn5+UhNTYWbmxtQeQuPvLw8ZGdno2fPnmjbti0A4MKFC/D09JQ7THr48CEyMzPh6uoqtkVHR8PR0VFunNKcnH+GzWjZsiW+/PJLeHt7i+Om9OvXD5aWloiNjUVWVhYuXbqEW7duwczMDACgp6eHqKgoSKVScZxaAIiNjRUfp6amonfv3vD39wcAmJqaomvXrvD19QUAdOzYURxrdc6cOfDx8cG8efNQVlaGixcvwtDQEObm5oiPj4cgCPjll1+gq6sLc3NztGjRQnzNz1oHMvHx8Wjfvn1+ZGTkK2wp9rL4nEk9i46OhqqqqhgYVV29ehWqqqriYM0zZszARx99hAEDBmDcuHHiidO///4b3bp1k1s2Lu6f0wMuLi5yz1X1TQ8Ahw8fhqqqKrp06YKjR49iwIAB4jQiwsOHD2FiYoKwsDD06tVLDJKqNRobG8Pc3FyuTfY8sbGx6NChgzitatAAQEJCAlxdXVFSUoILFy4gMjISenp60NPTw549e/DHH39AXV0dsbGxsLW1FYePTElJQWlpqXiV6lnrAAAqKiqQmJgIFxeX/OdsCqZgHCb1LDo6Gk5OTs8cWzQ2NhZt2rQRp6mqqmLx4sWIjIzE7t27cejQIaDyhmJPX/GJi4uDnp6e3KDYUVFR4piuAHD79m0sWrQI/v7+0NfXx+PHj+VC4dixY5BKpfDx8UFBQcEzR1eLj4+X2/u5desWMjMzxcCoGiyoIVyqPg4NDcW9e/eQl5eHc+fOiSPBxcbGygVuTEwMNDQ04OjoWOM6QOUtOYuLi9GpU6eCZ24AVmc4TOpZdHQ0bGxskJiYKP4kJSUBlW9E2RuopKQEK1asQHp6Ou7du4eKigo4ODigvLwcOTk5iI2NRXp6uninPdmVHJnCwkLcvHkTOjo6uHz5Mn744Qd069YNbm5uWLVqFVRUVNChQwfs3LkTRUVFSEhIwEcffYS5c+fCyMgIXbt2xbFjx3D06FHcv39fHGO3qKgI2dnZKCsrQ0ZGBiZPngxVVVW4uLggNzcXqampYlgUFBQgOTlZfFxYWIikpCR06NABGhoacHd3R1BQEHJzc5GZmSl3Z76nQycmJgbt27eHmppajetAth4EQUD37t05TFjTRUQjHBwcCIDcT48ePYiIqGfPnrRw4UIiIoqOjhavYrRt25Y2b94snmCcOXMmqaurU8uWLenixYtElXeJmzx5stxVEln/urq61KtXLwoODqby8nJxnqioKPL09CQtLS1ydHSkH3/8UZxWWlpK06ZNIyMjI9LR0aE333xTrMvOzo4MDQ3Jy8uL3nnnHXJyciIiojNnzpCampo4pOL58+dJEARxaMOLFy8SAPEGXjExMdStWzfS0tIiCwsL2rp1q9zJ5J07d4qPR44cSePHj691HRARLV68mGxsbIiI9it7ezNWZ2RXc+qC7KpMczdmzBh6/fXXicOk/vFhThOQlpaGR48ewczMrNpN0ZuL/Px8PHjwAFevXpU7p8PqD4dJExAf/8+nxseOHYtBgwYpuxylGDdunHhJmcNEOXiktXpERIMAhCi7jpfx+PFjo5KSEh2JRJKtqan5WNn1vITjgiBMVXYRzQmHCavVlClTNgqCMBHAxJCQkM3Kroc1XHyYwxhTCA4TxphCcJgwxhSCw4QxphAcJowxheAwYYwpBIcJY0whOEwYYwrBYcIYUwgOE8aYQnCYMMYUgr+bw0RTp04lIkLloEri34YgCKhsB/75wuKvKioq74aEhPDfDxPxngmr6k8AJPxDvNUoKgNF9qOiovKusgtlDQ+HCavqixeZiYhARDzGKpPDYcJEISEhfwuCEFlRUUG1zScIQjkRzau/ylhjwGHC5AiCMFMQBKp6jqQqIkJFRUWJiorK+novjjVoHCZMTnBwcASAs5UnYZ+lTBCE70NCQgrruTTWwHGYsGoEQViCyr2QqiofPykuLl6hpNJYA8ZhwqoJCQk5LgjCRSKSytoqg6RMEITvtmzZ8kSpBbIGicOEPRMRfVj176PysnAZgDXKrYw1VBwm7JnWrVt3CcAfRCStvBRcQkTfhISE5Cm7NtYwcZiwGgmCEIgqeyW5ubkrlV0Ta7g4TFiN1q1bdxpABP457Plh9+7dRcquiTVc/N2KlxQcHDxDXV3dW9l1sLpDRCSVStdMmTLlpLJraUzUlF1AY6Ourj7MyspqsKGhobJLYXXkzp07ZVlZWX8C4DB5CRwm/4KxsTGsrKyUXQarI9nZ2eXN9Qbwr4LPmTDGFILDhDGmEBwmjDGF4DBhjCkEhwljTCE4TBhjCsFhwhhTCA6TZqy4uBhr167FF1+80NCvjNWKw6QZy87Oxty5c3Hy5P9/0PPkyZOwtbXFunXrxLbS0lL8/vvvKC4urtbH7du3ce7cuXqrmTVcHCZMTnx8PPLz8xEVFSW29e3bF/7+/igpKZGbd9++fejSpQsOHz6shEpZQ8Mfp2dypk6dCisrK/Tt21dsKyh49l0tHj9+XI+VsYaO90wasb/++gsDBw6EpaUlnJ2d8f7776OoqAgZGRkwNDSEo6MjRo4cCQsLC7Rt2xbTpk1Denp6jf0tX74c5ubmmDRpEpYtWwYA6Ny5s7iMnZ0dDA0NsWvXLuzatQsfffQRAGDt2rUwNDRE586dxb6ysrIwc+ZMODo6wtzcHP369cP+/fvF6VevXoWhoSF69eqFgIAAODg4wNzcnA+ZGjHeM2mk8vPzMXbsWDx58gQDBw5EcXExYmJioKWlhfz8fKDynEhJSQmGDx+OiIgI7N69G1euXMGZM2egpaVVrc82bdrAxcUF8fHxYtvgwYOxefNmFBUV4Y033oCamhqsra0BAB4eHrhy5QratGkDNzc3mJqaAgAePXqEIUOG4M6dO7C3t4ejoyOioqIwadIk5Ofn4913//+GgNeuXUNWVhaGDh2KR48eoWfPnvWw9lhd4DBppFJSUvDkyRPY2tpi586dAIAnT+THeba2thbPZxQXF2PgwIGIj4/HwYMHMXr06Gp9jhgxAllZWfjss8/EtiVLluDAgQMoKirCjz/+iJYtW4rTJkyYgCtXrmDAgAFYsmSJ2L58+XLcuXMH/v7+WL58OQRBwLVr1+Dt7Y1FixbB19dXnFdVVRUHDhyAk5OTgtcQq298mNNItW3bFra2tkhOTsbo0aNx4cIFSCQSuXlUVVXF3zU1NTFixAgAQGRkZJ3WduTIEaDynMr8+fPx1VdfYfv27dDV1UVOTg7u3Lkjzuvk5MRB0kTwnkkjpaGhgf3792PWrFkICwtDWFgYhg4dKndJ92lGRkYAgLy8uh0TOiMjAwCwe/fuZ07X0tJCUdE/I0Dq6OjUaS2s/vCeSSNmbW2NvXv34tChQ+IhzYYNG2qc/969ewAgd6jyMioqKl6oXU9PDwDw999/Iycnp9qPhYXFv3p+1rBxmDRiycnJAICePXti6tSpAICkpCRxellZmfhGT01NRWhoKACgR48ecv08/fmRp+nq6gIAbt26BVR+iO1Z7RUVFSgvLxdPoi5btkyct6ysDFeuXFHAq2YNFR/mNFIVFRV46623oKmpiXbt2omXVL28vMR57t27h06dOkFfXx83b95EcXExPDw8MGzYMKDKIUZqaioSExNrPHfh6emJ69evY/To0XBwcICzszN+/PFHdOrUCWpqajh58iS8vLyQn5+P/fv349NPP8WJEyewZ88enD17FjY2Nrh9+zZUVVURFRUFTU3NellHrH7xnkkjVVhYiN69eyMzMxPHjh2DgYEBAgMD8dZbb4nz6OrqQiKR4Pr16zAwMMDkyZOxd+9eqKn9839Iy5YtMXz4cBgYGNR6Uvarr77CoEGDUF5ejhs3bqBVq1YAABsbG6xcuRKWlpa4efMmKioqoKmpCScnJxw5cgSDBg1CYWEhoqKioKOjg1GjRtV4qMQaP77VxUvauHHjMQ8Pj8ENeUDpjIwMtG/fHnZ2dnV+5aYpioyMLEpKSpoTEBDwi7JraUx4z4QxphAcJowxheATsE2QqakpcnJylF0Ga2Z4z4QxphAcJowxheAwYYwpBIcJY0whOEwYYwrBYcKU6uDBg7CysuJPxjYBHCZ1JCAgAJaWlrCzs4O3tzfWrFnzzNHdG6Nff/0VgYGBcm0HDx5Er169YGZmBhsbGxw6dOiF+oqNjYWbmxtUVP75UwwPD7Yc1ZcAACAASURBVIerq6vcmCeffvopDh48KLfchQsX4O/vr5DXwxSDw6SOnDlzBgEBAdi7dy9GjRqFwMBA+Pn5Kbsshfjxxx9hbm4uPk5KSsJ7772Hd999F5GRkdi1a1e1bybXJCYmBu7u7uJjGxsbDBo0CIaGhgCA9PR0rF+/Hu3bt5dbLjQ0VPyO0b9BRP96WcYUYuPGjcdiYmIoJyenxp/r168TAPrjjz/Etg0bNhAACg8Pp5ycHDp//jz169ePtLW1ydTUlObOnSvOe/fuXZo8eTIZGxuTpqYm+fv7U05ODrVt25YWLFggzvfzzz9Ty5YtKScnh4KCgqh37940atQoMjIyIn19ffr8889p8uTJ1LJlS2rVqhWFhISIy/7xxx/Up08f0tLSIkNDQ5o9ezbl5OTQjRs3qHXr1hQUFETt2rUjTU1N8vLyotTUVMrJyaF27doRAJJIJKSjo0PXr1+nDRs2kLq6OmVlZVVbFy4uLhQQEEDu7u4kkUioa9euFBERIU43MTGhNWvWUE5ODq1du5YAkLu7O+Xk5NDVq1dJQ0ODVFRUSCKRUMeOHSknJ4f8/f1JEATS1NQkiURCmzZtopycHHrw4AF9/PHHZGFhQRoaGuTu7k5//fUX5eTk0IwZM6hXr170zjvvkKmpKUVFRdW4/U6cOFG4du3aD5T9t9bY8J5JHYiNjYWKigqcnZ3FNm9vb6By7Nbk5GS8/vrrGDBgAG7evImQkBAEBgYiIiICFRUVGDduHCIjI7Fz504kJibigw8+QElJCZKSkuDq6ir2GR8fDxcXFwBAeXk5/v77b/Tp0wdXrlzBm2++iRUrVsDT0xMxMTHw9PTETz/9BAC4ePEihg8fDi8vL8TFxWHbtm0ICgpCamoqNDU1kZ6ejoiICOzduxdHjx7FuXPnEBYWBgD49ttvoaOjg5SUFNy9exfGxsbw9PSEhoYGPvzwQxQWFsqti/v37+Phw4fYunUrzpw5g5KSEvEOgunp6cjMzETHjh0BAKNGjcLo0aPF9WZhYYEPPvgA/fv3/z/27jysiurx4/j7siObXAFZBRERZVFExTUVXFLLNJdcMJc0Nay+pZm5lWma39xTC6wsLc2lrMwlE9PMHRRZLoiiAqIiAgIurPf8/vjC/LiuWVdxOa/n8Xm8M3PPnJm587lnZi7nkJGRwR9//AHAzJkzMTQ05NdffyUjI4OePXsCMGzYMLZu3cqqVatISUnB0dGR5cv/97d6SUlJJCcnEx4eTmJiIq6urg/s+D+tZJg8AAkJCdSrV0+nT9a8vDyo6IVs1qxZtG3blrFjx2Jubk67du1wdnYmMTGRLVu2cOzYMdasWUOTJk2wtramXr16nDhxgvLyciU8ADQajRIumZmZtGrVisGDB2NlZYWDgwNNmzalX79+WFtb4+fnp/RIP23aNNq1a8eECROwtLQkJiYGW1tbateuzenTp1GpVHzyySc4OTkREBCAsbGxck8jOjqawMBA5TUVJ/0vv/zCoUOHCAkJ4fTp01DRTUJeXh4TJkzA2dmZunXr0rdvX1JSUqDiEsfCwgJvb28AVCoVGo1GJ4Sjo6N1htAAiI2NxdDQUCdYd+3axfbt25V+Vir7mq28PEpKSmL8+PH4+flhYGCg0z+upB8yTB6A+Ph4nZMeYMeOHRgaGhIYGMjOnTt1BrkSQpCbm4udnR179uwhODhYGTaikkajwc7ODkdHR51pletJTEzUOQkTExN1TrYTJ07QsGFDiouLiY6O5vjx47i7u+Pu7s4vv/zCxo0bMTExITExkTp16ii9qGVkZFBSUqKc8DExMbec3ACNGzdmz549uLm5MXjwYIQQJCcnY2pqSr169ZTl8vLylPshcXFx+Pr6KsFUVlbGyZMnlQDQarXExsbesr6YmBj8/f0xMTFRpu3btw9LS0v69OmDh4cHISEhdOvWjbFjx5Kfn8/58+d19rmkfzJMHoD4+Hj8/f2V12fPnuWTTz5h0KBB2NjYcO3aNZ2wiIqKory8nGeeeYarV6/edkyb5ORknZuQp0+fJjs7WwmMqq0UbroEut3rFStWEB8fz9mzZ9m+fTuBgYHKclVDKSEhQScQjh49SkBAwG2329LSkokTJ3LixAlycnLQaDQ0aNBAaQVotVq2b99Op06dbruuU6dOUVxcrEw7ceIEhYWFymVQpZiYmFumAfj7+5OamkpcXBypqalMnz4dAwMDNBoNxsbGeHl53bbekn7IMNGzynsbFhYWHDt2jOXLl9O5c2caNWrEnDlzMDAwwNfXl02bNnHjxg2Sk5N57733eOutt1Cr1TRt2pSoqCh27tzJxYsX2bhxI1SMe5Obm0tpaSmXLl3izTffxNDQEB8fH/Lz88nMzFTCorCwkPT0dOX19evXOXPmDL6+vpiamuLv789nn31GQUEB2dnZHDlyRKl/1dYOFWHi7e2NkZERZWVl5OXlodFouHDhgtLLfWRkJAcOHODIkSMsWbIENzc37OzsSEpKwtjYmMuXL3Pq1Clee+01CgoKeP3116FikLDy8nKdddeqVUsJ2uzsbKi4HEpNTVWewGRnZ3PmzBkuXryojDbYrFkzYmJi2LFjB1qtlt27dyuP4pOSkqhfvz7GxsYP9Ng/7WSY6Nm5c+fQarVMmjSJXr16sXnzZqZOncqmTZuoUaMGAJ9++ilpaWl4eXkxZMgQRo0axcSJEwEYPnw4AwYMYMyYMbRo0UIZUjMsLIyrV6/i4+PDsGHDcHBwoF69epibm6PRaDAyMqJBgwZQ0YoBlJZMcnIyWq1WCYlly5aRk5NDcHAwXbt2VTqm5g6XS5WvjYyMGDVqFEuWLKFVq1akpqYq/b4OGDCAfv36UVRUpAwKptFoKC4uJjg4mNDQUIqLi9m6dSu2trZQMa5xVFQUP/zwg7J81XU3b96c4OBgBg4cyPPPP69MHzFiBEeOHCEoKEj5/Um3bt0IDw/n7bffxs/Pjzlz5mBqaqqUe/OjZUn/ZLeN9+lx6LbxUeHj48OyZcsIDQ2t7qrcF9lt4z8jWybSA3H58mUuXbqk3LiVnnwyTKQHQqPRYG5uLn/P8RSR3TZKD8QzzzxDZmZmdVdDeohky0SSJL2QYSJJkl7IMJEkSS9kmEiSpBcyTCRJ0gsZJpIk6YUME0mS9EL+zuQ+CSG0J0+eLMrMzCyr7ro8JCohhEqlUj01PT7n5ubK8+IfkDvtPpWVlc3Nzs5eX931eFguXLjwSmlpaVtLS8sv1Gr1vuquz8MihDhQ3XV43Mg/9JPuatSoUStVKtUwYFhkZOQ31V0f6dEl75lIkqQXMkwkSdILGSaSJOmFDBNJkvRChokkSXohw0SSJL2QYSJJkl7IMJEkSS9kmEiSpBcyTCRJ0gsZJpIk6YUME0mS9EKGiSRJeiHDRJIkvZBhIkmSXsgwkSRJL2SYSJKkFzJMJEnSCxkmkiTphQwTSZL0QoaJJEl6IcNEkiS9kGEiSZJePNbj5gghnIDz1V0PSdKDySqVak51V+LfkC0TSZL0QoaJJEl68cSGiaurK2PGjKnuajw0BQUFHDt2rLqrcVdffPEFKpWKixcvVndVHpq0tDTOnj1b3dV4KJ7YMHnaBAQE8OWXX1Z3NaQqUlNT8fT0JDo6urqr8lDIMHlCFBUVVXcVpJuUlpai1WqruxoPzRMRJuXl5UyfPh0nJyesra154YUXuH79us4yhw8f5plnnsHc3Bw7OztGjBhBXl6ezjJ//fUXnTt3xsrKCisrK55//nmOHj1KWVkZKpWKjz/+WGf55557jpYtWwIQGxuLtbU1W7ZsoXHjxpiYmODl5cXKlSuZM2cOderUwdraml69epGdna1Tzu7du2nZsiXm5ua4u7szYsQILly4oJRbo0YN9uzZQ6tWrTA3N8fHx4dffvlFeb+HhwdZWVksW7YMlUqFh4eHMm/u3Lm4ublhaWlJ27ZtiYqKuu/9+9VXX3HlypX7fl9sbKyyzz09Pfnhhx9uWWb16tU0atQIU1NTPDw8+Oijj3ROwBs3bjB58mQ8PT0xNTXF29ubWbNmUV5ezs6dO1GpVBw8eFCnTEtLSyZNmgTAokWLaNeuHStWrMDV1RUzMzOCg4PZuXMnw4cPx9bWltq1azNhwgTKy8uVMq5fv85bb71F7dq1sba2pnnz5qxbt06Zv2jRIlq2bMn69evx8vLCwsKCdu3akZycDMDZs2dp2LAhAP369UOlUjFs2DAAUlJSCA0NxdLSEjc3N8aMGfNUhc4jSQjhJIQQo0ePFoAYMWKE+Prrr8WAAQMEIEaPHi2EECIxMVHUqFFDtGjRQqxdu1YsXrxY1KxZU4SGhopKO3bsEEZGRiIoKEh8/vnnYtmyZeLZZ58VBw8eFKWlpQIQc+bMEVX16NFDBAcHCyGEOHbsmABEnTp1xK+//iqioqKEn5+fAETbtm3Fvn37xNq1a4WlpaUICwtTyti5c6cwNjYWI0aMEN9++61YvHix8PT0FD4+PuLatWtKuQ4ODuL7778XBw8eFF27dhU1atQQ2dnZQgghjhw5ItRqtXjxxRfF3r17xZEjR5SyATF48GCxevVqMWjQIPHTTz+J+/Xcc88JGxsb8f7774srV678rfckJycLa2tr4enpKRYuXCiWLl0qHBwcBCAuXLgghBDi66+/Vur3ww8/iHfeeUeoVCoxa9YsIYQQZWVlIiQkRBgbG4sJEyaI1atXi/fee0/Zf7///rsAxIEDB3TWbWFhId59910hhBALFy4UgOjYsaPYv3+/+P7774WVlZXy+YiOjhYzZswQgPjiiy+EEEKUl5eL0NBQpe7fffedGDlypADEl19+qVNu8+bNxa5du8SOHTuEh4eHaNGihRBCiKKiIvHdd98JQMycOVPs3btXpKSkCCGEaNu2rbC3txeRkZFi/vz54rnnnhNCiPeq+3x6qgkhnGJiYgQgpkyZovOBcnR0VMJk4MCBwsrKSuTl5SnzV69eLQCxZ88eIYQQPj4+on79+qKoqOiWE+N+wmT9+vXK/JUrVwpAJCQkKNNGjBghHB0dldeNGjUS48aNu+VEBMSPP/6olPv9998r848ePSoA8cMPPyjTateuLcLDw3XK+eKLLwQg9u/ff8s23a9t27aJ9u3bi5o1a4oZM2bcM1Sef/55YWtrKy5duqRM++yzz5Qw0Wq1wsXFRbRr107nfa+88oqwsrIShYWF4vvvv9c5gW92P2FStR5Dhw4V9vb2QqvVKtM8PT3FgAEDhBBCrF+/XpiYmIjMzEydcgcMGCACAgJ0yr148aIyf8GCBQIQOTk5QgghkpKSBCA2bNigU46rq6vo0qXLzZvz2IfJY3+Z8+OPPwLw9ttv60w3NDRU/r97925CQkKoWbOmMq1r164AREdHc/bsWZKTkxk+fDimpqb/qj7m5ubK/83MzAB0ynR1deXy5ctQcadfo9EQERGBmZmZ8q9x48YAnDt3TnmfhYWF8n93d3cAzp+/++/1evTogVqtJiwsjC1bttyz7leuXOHs2bOcPXuWzMxMnXnPPvssu3fvZvv27WzatIlGjRrdsZwbN26wfft2hgwZgr29vTLdyMhI+f/JkyfJzMzkxRdf1Hlv165dKSwsJCUlhW3btmFubs7QoUPvWfd7ufm4mJiYoFL9/282qx6XrVu3Ulpaiqenp85x2bBhg84x4R8elyFDhrBjxw5ef/11Ll269K+37VFh9DeWeaSlp6djY2ODWq2+4zL5+fk4ODjoTKtcPjMzk6ysLADc3NwecG1BpVIhhABQHpF+8MEHt5xUAM7Ozpw+ffqW6SYmJgCUlZXddV2Ojo7s37+ft956i+eee442bdqwbt06XFxcbrv8okWLmDFjBgANGjRQrv8r7du3j9mzZ5Oens4777xzx/VeuHCB0tJS6tate8dl8vPzAe55XJydnXW+GB6Um4+Lo6Mju3btumW5yn1/O3/3uHz00Uc4ODgwe/ZsVq5cydy5cwkPD//X21DdHvswsbe3p6CggOLi4ju2KlxdXcnJydGZVhkgtra2SovlTr9/qPoNpk+2trZQcbPPx8fnX5dXeTJU1aBBA7Zu3cquXbvo3bs3w4YN4/fff7/t+wcMGECTJk0AsLKyUqZHRUXx4YcfEhsby3/+8x/WrFmDjY3NHetR2Rq527euq6srwD2PS+Xr23mQxyU7OxsPDw+ldflv3HxcVCoV//nPf3jllVcYPXo048aNo169evZ3LOAx8dhf5gQFBSGEYM2aNXdcplWrVuzevZsbN24o0zZu3AhA27Zt8fb2xtXVlW+++UbnW0UIgVarxdDQELVardN8FUKQnp7+r+pev3593N3d+eqrr7h27ZoyvaysjJKSkvsqy8LC4rbN6+LiYgBCQkKUp1N34uPjQ69evejVqxehoaHK9KlTp9KmTRvOnDnDjBkz7hokVARR/fr12bBhwx23w8nJCQ8PD7Zu3aozfePGjVhYWBAYGEhISAhXr17l+++/11mm8hhVtmqqbvfFixeVbf6nOnXqRFlZGZ999pnO9KrH6O+ovAS6+bhUPsa3srLiww8/hP89+bpz0/ox8di3TF566SVmzpzJmDFjSEhIIDAwkAMHDugcwClTpvD999/z7LPPMmbMGNLS0pgxYwYdO3akffv2qFQq5s6dy+DBg2nZsiXDhg3DwMCA1atXEx4eTlhYGF27dmX16tWEhITg6OjI/PnzSU5OpmnTpv+47iqVioULF9KnTx9atmzJ2LFjKSsrY9WqVYSFhfGf//znb5f1zDPPsGbNGj7++GPUajWtWrWiqKiIfv36ER4ejqWlJdu2baNZs2b3Xc+oqChq1KhxX+95//33CQsLo3Xr1gwfPhxDQ0MWLVqks8yMGTMYOnQoI0eOpGvXrkRFRbFp0yY++OADLCwsGDJkCMuWLWPo0KEcPnyYxo0bEx8fz86dOzl69Cg+Pj64u7sza9YsateuTWFhIZMnT/7Xj1nDwsKIiIjgnXfe4cyZMzRt2pTjx4+zadMmkpKSdO6/3I2rqyuenp7Mnz8fCwsLcnNzeeONN+jXrx/W1tZ06dJFCdMmTZrk/qtKS/9O5aPhs2fPiueee06Ym5sLR0dHMW7cOGFvb688zRFCiN27d4uWLVsKU1NTUatWLTFq1CiRn5+vczt906ZNIjAwUJiYmAgnJyfx/PPPi0OHDgkhhMjKyhK9e/cW1tbWws3NTcyePVt07979lqc5mzdvVspbu3atAMTJkyeVae+//74wNDTUWe+WLVtEUFCQMDExEXZ2duLFF18UR48evWO5hYWFAhALFy5UpmVlZSmPjD08PMSPP/4ojh8/Lp599llha2sratasKV544QWRkZFx81OEB2bp0qXCw8NDmJubi2bNmomhQ4fqPBoWFU946tevL4yNjYWHh4eYO3euzlOWnJwcMXLkSGFnZydq1KghfH19xcyZM5WnbkeOHBEtWrQQ5ubmIiAgQPz000+3fZpTWFiolDl69Gjh4uKiU9f27dvr/FQgPz9fjBkzRtjZ2QlTU1Ph5+cn5syZI0pKSu5Y7ubNmwUgjh07pkw7fPiw8PX1FRYWFsLHx0ecPXtWfPjhh8LLy0uYmZkJLy8vERkZKZ6EpzmyCwJJejTILggkSZKQYSJJkr487jdgy4G06q7EfVABD/5HE3p0/fp125KSkhrm5uZXTE1N7+9xRvXSVvx7XORXdwX+rcf6nsnjRgjRC9hU3fV4SvysUql6VXclnibyMkeSJL2QYSJJkl7IMJEkSS9kmEiSpBcyTJ4g+/fvR6VSoVKplF6+njZ9+/at3AcvAGOruz5PExkm1WD16tVYWlre9m9IPvjgg7/19z4rVqzg/fff15mWkJCAhYUFFy5cYP/+/VDRd4aFhQW2trY0bdqURYsWPTH9xd5uH0RGRnLgwIHKl4nVUa+nlQyTahAbG4u/vz8GBrfu/qCgIHr06HHPMv773//e0i9JQkICjRo1wtHRUeneICoqiv/85z/8/vvvDB48mOnTp9Or15PxxPR2+0CtVlftYzehOuolSQ+cEKKXEEKEhISIsWPH3vKHca+88ooAxPjx44UQQpSUlIjw8HBRq1YtUbNmTTFp0iQhhBANGzYUgLCwsBCWlpYiKytLVJY7bNgwpbysrKxbujVct26dAJR+YhMSEkTnzp1FjRo1hKOjo5g5c6aybGFhoQgPDxcODg7CzMxMjBkzRoiKLi4//vhjZbmVK1eKmjVrCiGEiIiIEB07dhSDBw8WdnZ2wtbWVsyYMUOEh4eLmjVrCnt7e/Hdd98p7z1w4IAICQkR5ubmolatWuK9994TQghx6dIl4eLiIiIiIkSjRo2EmZmZ6NChg7h69epd94EQQsyZM0eo1eobf+OQSNLjqTJMatWqJSIiIm4Jk/LycuHm5ia+/vprIYQQn376qXB1dRXJycnixIkTYu/evUIIIX777TdhaWkpysvLdd7v4OAgPvnkE+X19u3bhYGBgXICCiFEbm6u0ldtamqqsLW1FQsXLhTXr18Xu3btEgYGBuLPP/8U5eXlokOHDqJZs2YiOjpa5Ofni5SUFFFUVCQMDQ3Ftm3blDLfeust8cwzzwghhFi2bJkwMTERX331lSgoKBCvvvqqMDY2Ft9++624cuWK6Nmzp2jSpIkQQoh9+/YJU1NTMXPmTJGTkyP++usvAYizZ88qfxkdFhYmMjMzRUxMjFCpVEp/qnfaB0IIMXjwYBEUFPTk9If4mHjcf07/2MnIyCAnJ4fAwMBb5hUUFJCRkYG/vz9UDOGRn59PTk4OrVu3xtvbG4CDBw/SvHlzncuky5cvc+nSJfz8/JRpsbGx1K9fX6ef0tzc/3WbYWNjw5QpU+jQoYPSb0rHjh1xdXUlLi6O7Oxsjhw5wqlTp3B0dATA2tqaY8eOUV5ervRTCxAXF6e8zsjIoF27dgwfPhyA2rVr06JFCwYPHgxA48aNlb5WJ0yYQEhICFOnTqW0tJTDhw+jVqtxcnIiMTERlUrF8uXLsbKywsnJCWNjY2Wbb7cPKiUmJtKwYcOCmJiYf3GkpPsl75k8ZLGxsRgaGiqBUVV8fDyGhoZKZ83jxo3jzTffpFOnTgwaNEi5cXro0CGCg4N13puQ8L/bA76+vjrrqnrSA2zZsgVDQ0OaNWvGtm3b6NSpkzJPCMHly5dxcHBg586dtGnTRgmSqnW0t7fHyclJZ1rleuLi4ggICFDmVQ0aAI1Gg5+fH8XFxRw8eJCYmBisra2xtrZm48aN/Pbbb5iYmBAXF4eHh4fSfWRaWholJSXKU6rb7QMArVZLcnIyvr6+Bfc4FJKeyTB5yGJjY/Hx8blt36JxcXF4eXkp8wwNDZk5cyYxMTFs2LCBX3/9FSoGFLv5iU9CQgLW1tY6nWIfO3ZM6dMV4PTp03z44YcMHz6cmjVrcvXqVZ1Q2L59O+Xl5YSEhFBYWHjb3tUSExN1Wj+nTp3i0qVLSmBUDRbuEC5VX69du5Zz586Rn5/Pvn37lJ7g4uLidAL3+PHjmJqaUr9+/TvuAyqG5CwqKiIwMLDwtgdAemBkmDxksbGxuLu7k5ycrPxLTU2FihOx8gQqLi5m/vz5nD9/nnPnzqHVaqlXrx5lZWXk5uYSFxfH+fPnlZH2Kp/kVLp+/TonT57E0tKS6OhoFixYQHBwMP7+/ixevBgDAwMCAgJYt24dN27cQKPR8OabbzJ58mRq1apFixYt2L59O9u2bePChQtKH7s3btwgJyeH0tJSsrKyGDlyJIaGhvj6+nLlyhUyMjKUsCgsLOTs2bPK6+vXr5OamkpAQACmpqY0adKEhQsXcuXKFS5duqQzMt/NoXP8+HEaNmyIkZHRHfdB5X5QqVS0bNlShon05BJC9KpXr54AdP61atVKCCFE69atxYwZM4QQQsTGxipPMby9vcU333yj3GB84403hImJibCxsRGHDx8WomKUuJEjR+o8Jaks38rKSrRp00ZERESIsrIyZZljx46J5s2bC3Nzc1G/fn2xZMkSZV5JSYkYPXq0qFWrlrC0tBQvvPCCUq+6desKtVot2rZtK1566SXh4+MjhBDizz//FEZGRkqXivv37xcqlUrp2vDw4cMCUAbwOn78uAgODhbm5ubCxcVFfPvttzo3k9etW6e8fvHFF8WQIUPuug+EEGLmzJnC3d1dCCF+qu7jLUkPTOXTnAeh8qnM027AgAGie/fuQobJwycvc54AmZmZ5OXl4ejoeMug6E+LgoICLl68SHx8vM49HenhkWHyBEhM/N+vxgcOHEiXLl2quzrVYtCgQcojZRkm1UP2tPYQCSG6AJHVXY/7cfXq1VrFxcWWFhYWOWZmZleruz73YYdKpXq1uivxNJFhIt3VqFGjVqpUqmHAsMjIyG+quz7So0te5kiSpBcyTCRJ0gsZJpIk6YUME0mS9EKGiSRJeiHDRJIkvZBhIkmSXsgwkSRJL2SYSJKkFzJMJEnSCxkmkiTphfzbHEnx6quvCiEEFZ0qKZ8NlUpFxXT43x8srjIwMHg5MjJSfn4khWyZSFX9AQjV/yhDjVIRKJX/DAwMXq7uikqPHhkmUlXv/Z2FhBAIIWQfq5IOGSaSIjIy8pBKpYrRarXibsupVKoyIcTUh1cz6XEgw0TSoVKp3lCpVKLqPZKqhBBotdpiAwODLx565aRHmgwTSUdERMQBYG/FTdjbKVWpVP+NjIy8/pCrJj3iZJhIt1CpVLOpaIVUVfH6WlFR0fxqqpr0CJNhIt0iMjJyh0qlOiyEKK+cVhEkpSqVau7q1auvVWsFpUeSDBPptoQQr1f9fFQ8Fi4FPqvemkmPKhkm0m2tWLHiCPCbEKK84lFwsRBiVmRkZH511016NMkwke5IpVJ9TJVWyZUrVxZVd52kR5cME+mOVqxYsQc4wP8uexZs2LDhRnXXSXp03fVvb7rIDgAAIABJREFUKyIiInqZmJiEPbzqSJL0KBJClJeWlr4/evTo5DstY3SPMprY2dn1cXFx0X/tJEl6bCQmJl4vLi7+DPjHYYKtrS0eHh56r5wkSY+PU6dOlVy9evfRYeU9E0mS9EKGiSRJeiHDRJIkvZBhIkmSXsgwkSRJL2SYSJKkFzJMJEnSCxkmkiTphQwT6Y5efPFFWrRoQUFBgTLt9OnT7Nu3r1rrJT2aZJhIt1VeXk5MTAypqank5uYCsGnTJpo1a8aWLVuqu3rSI+ieP6eXnk6GhoZs3bqVvLw85c8p7vVzaunpJlsmT4i+ffuiVqt1Wg3btm2jU6dOOsu98sorqNVq/vzzT+Lj41Gr1bRp04YxY8ZQr149nJyc2LdvH/b29rRr146ePXuSn5/P+vXrefPNNwH4/PPPUavVBAUFKeVmZ2fzxhtvUL9+fZycnOjYsSM//fSTMv9u65KeDDJMnhB9+/YFYPPmzcq01atXc/ToUeLj4wG4fv06O3bswNHRkbZt2yrLJSUlsWvXLnr06EGnTp1o3bo13bt3x8TERFmmTp06NG3aFAAvLy969+5N165dAcjLy+PZZ5/l22+/xcbGhsDAQJKTkxkxYgSrVq3Sqeft1iU9GeRlzhOiR48emJub89tvv1FaWkpOTg47d+4E4JtvvmHevHn89ttvXLt2jZdffhkDg///HjE0NOSXX37Bx8dHmfbNN9/g5eWl3C9p2bIlQ4cO5ejRo3Tq1InZs2cry86bN48zZ84wfPhw5s2bh0qlIikpiQ4dOvDhhx8yePDgu65LejLIMHlCWFlZ0aVLF37++Wf+/PNP4uLiKCsrQ61Ws2HDBj788EN+/PFHAPr06aPzXh8fn391cm/duhUq7qlMnz5dp065ubmcOXNGb+uSHl0yTJ4gffv25eeff+bXX39l7969uLu7M2XKFF599VW++eYbdu7ciaenp3K5UsnS0vJfrTcrKwuADRs23Ha+ubk5N27c0Mu6pEeXvGfyBOnUqRM2NjasXbuW06dP88orr/DCCy/g6OjIzJkzKS4uvqVV8k9otVqd19bW1gAcOnSI3NzcW/7JnvqeDjJMniCmpqY8//zzlJSUYG5uzuDBgzE2Nmbo0KEUFRXBbS5x7oeVlRX8r9ctqAiVsrIy5SbqJ598QklJCQClpaUcPXpUD1slPS5kmDxhKsOiT58+2NraAjBs2DCMjY0JCAjA29v7H5cdGBiIkZERu3btom3btjRp0oT09HQmTpyIhYUFGzdupHHjxjz77LP4+voyePBgJcSkJ58MkydMu3btcHR0ZOTIkcq02rVr07NnT+Xx8T/l7u7OokWLcHV15eTJk2i1WszMzPDx8WHr1q106dKF69evc+zYMSwtLenXr98tl0TSk+teQ1184Ovr+36jRo0eXo0kSXrk7Ny580pOTk7vsWPH7r7TMrJlIkmSXsgwkSRJL2SYSJKkFzJMJEnSCxkmkiTphQwTSZL0QoaJJEl6IcNEkiS9kGEiSZJeyDB5COLi4vD29sbJyYkmTZowfPhwpfezx93BgwcZPny48lqr1eLs7MyaNWuUadevX6dHjx4675s1axZBQUGUlZXdttyoqCj8/Px0+kJZtWoVH3/88QPZDunfk2HyEBw7dgyVSsVvv/3G/Pnzyc/Pp1OnTuzfv7+6q/avrV27FiOj/+8Wx8DAAA8PD9LT05Vpy5cv59ChQxQXF0NFN48rVqzg3Xff1XkvFb3iU/F3QF26dEGtVivzlixZgpOT0z+uq/w7oQdLhslDEB8fj7+/PwEBAYSGhrJu3ToaNGjAkiVLoOJDvmDBAgICAnB1daV79+6kpKQo7//8888JCgrC0dGRdu3aIYRg06ZNuLq66pwgjRs35rPPPiM+Ph5fX1/mzp1LkyZNcHZ2Zvjw4URGRhIQEICbmxuTJ09W3ldSUsKsWbPw9/fHycmJkJAQNBoNAL1792bu3Ln06tULZ2dnWrRoocwbP3483377LVu2bMHNzY1ffvkFgHr16pGWlgZATk4On376KVqtltTUVACWLl2Ks7Mzffv2ZceOHdSpU4d58+bRvHlz3njjDdavX0+LFi2IjY3FxsYGgFatWnH69GmmTp1KnTp1yM7OBuDIkSP06tULFxcXvLy8mDlzprJdoaGhvPnmm/Tu3Rt3d3cyMjIe4FGWZJg8BHFxcfj7+yuvjY2NadOmjXLCTZkyhZ9//pmNGzeSnJxMzZo1mThxIgCzZ89m4cKFzJo1ixMnTrBixQpUKhUajYZGjRopfbkWFBSQkZGBn58fxsbGXLhwgby8PHbv3s2CBQv4+eefSUtLY+/evYwfP57PP/9cGVxr2LBhbN26lVWrVpGSkoKjoyPLly8HID8/n+3btzNr1ixiY2PRarV8/fXXAMycORNDQ0N+/fVXMjIy6NmzJwCenp6cPXsWgPnz59O2bVusra1JSUkhNzeXFStWMHnyZAwMDEhKSuL69evUqVOHI0eO8N///pd+/frRv39/qv6B6UcffYSlpSVpaWmkp6djb2/P4cOH6dmzJ23btiUhIYHvvvuOhQsXkpGRgVar5cSJEyQnJ/Pll1+i0Whwd3d/SEf86STD5AHTarUkJSXphAkVTf3KEywyMpLly5fj7e2NpaUlPXr0IDExkaysLBYvXszixYvp1q0bNjY2Sv+pGo0GX19fpbzK1oKvry+ZmZmYmpoya9YsatasibOzM4aGhkybNg0bGxuaNm2KgYEBJiYm7Nq1i+3bt7NkyRICAwOVPlsbNmwIFSP4TZo0CT8/PxwcHHB3d1cCLDY2FkNDQ/z8/HS2zcvLi/T0dNLT01m1ahXvv/8+vr6+nDhxgqVLl+Ll5cVzzz2n1Ltbt270798fAAsLC52wrBQdHU1gYKBOR9jTpk2jXbt2TJgwAUtLS2JiYrC1taV27dqcPXuW69evM3/+fNRqNRYWFno/tpIu2QfsA5aamsq1a9d0TvySkhL27NnDiy++SFRUFLVq1dKZn5OTg52dHQcOHMDQ0JAuXbrcUq5GoyEkJER5nZiYiLOzM2q1Go1GQ4MGDZT7EYmJiXh5eWFmZgbAiRMn8PT0xMzMjH379mFpaUmfPn1QqVQYGhoydOhQxo4dS0ZGBgUFBTp1O3XqlHIzNSYmBn9/f50hMahomVy8eJHp06fz0ksv4e3tja+vLwcPHiQmJoaVK1eiUv2v94ukpCSGDBmi8/6ysjJOnjypBFrluqqO01NcXEx0dDR2dna4u7tTWlpKQEAAGzduxMTEhKSkJNRq9S1BJz04MkwesPj4eMzNzfHy8lKmzZgxgytXrjBy5EjWr19P7dq1dd6zefNmOnfuTGFhIWZmZjrfxgDXrl0jPT1d52Q7fPiwcuJoNBqdk+jmVkxiYqLOa39/f37++WeuX7+u9OdauZy1tTWurq5Q5VKqssUQExND48aNb9lmT09PhBDs2rWL6OhoAPz8/Pjiiy9o2bIloaGhUCU0bu4v59SpUxQXF+tMP3r0KAMHDrxlXStWrKBJkyaYmZnphNrNLRvpwZOXOQ9YfHw8bm5upKSk8PvvvxMWFsbKlSuJiIigbt26BAQEcPLkSaKjoykqKmLevHmcO3eOcePG0bRpU/Lz81mwYAHZ2dns3r2bjIwMSkpKEELo9Aq/adMmJUASExN1TqSbw6PqidasWTNiYmLYsWMHWq2W3bt3K10t3lxOQkICgBJi2dnZnDlzhosXL3L+/HllOScnJywtLRk3bhwODg5QcflFxf2hSqmpqRQXF+uEYmX9atWqpYRsWVkZeXl5aDQaLly4QH5+Pqampvj7+/PZZ59RUFBAdnY2R44cUcpISkqSYfKQyTB5wOLj40lJSaF9+/aMHz8etVrNnj17lJuV3bp1Y8yYMQwaNIiGDRsSGxvLli1bcHBwwNfXl08++YSvv/6agIAApk2bhpGREba2towcOZLXX3+doKAgEhMTMTY2xtfXV/m2rzx5K29EVr4WQpCcnKy87tatG+Hh4bz99tv4+fkxZ84cTE1N4Q5h4uLiojxhGTFiBEeOHCEoKEhnJEEqBu0KDw9XXjds2JDQ0FDatGmjTEtKSsLR0VHn8S+3aVUYGRkxatQolixZQqtWrZSnQsuWLSMnJ4fg4GC6du2q3PStLPvmkJIeLNltoyRJ9yS7bZQk6aGRYSJJkl7IMJEkSS9kmEiSpBcyTCRJ0gsZJpIk6YUME0mS9EKGiSRJeiHDRJIkvZBhIkmSXsgwkSRJL2SYSJKkFzJMJEnSCxkmkiTphQwTSZL0QoaJJEl6IcNEkiS9kGEiSZJeyDCRJEkvZJhIkqQXMkwkSdILGSaSJOmFDBNJkvRChokkSXohw0SSJL2QYSJJkl7IMJEkSS9kmEh/y6RJk+jfv391V0N6hMkweYji4uIYMGAAHh4e1K1bl169enH8+PG//f5Vq1bx8ccf60yLiorCz8+PM2fOPIAa/7/jx4/TpEmTO86fO3cuHTp0eKB1qDRx4kQ2b978UNYl/X0yTB6SvXv38uyzz6JWq9mwYQNr1qzB0NCQvn37kpub+7fKWLJkCU5OTjrT3N3d6dKlC2q1+gHVHLRaLYmJiTRu3PiOyzRu3JguXbo8sDpUOn/+PF988QUNGzZ84OuS7o8Mk4fg6tWrjB49mp49e7J8+XKaN29Oq1at+Pzzz8nJyeGvv/4iJSWFhg0b8sknnxAYGIiHhwcjRozg6tWrALRq1YrTp08zdepU6tSpQ3Z2NuvXr6dFixbExsZiY2MDQHJyMn369MHV1ZWGDRsyb948pR69e/dm7ty59OrVC2dnZ1q0aIFGo1Hmr1ixgmbNmuHk5ISvry+zZ88G4OTJk1y9evWOLZM33niDQYMGcePGDQB+//132rdvz9KlS/H19cXNzY3JkycD3HM7x48fT79+/ZSy09PTUavVxMfHk5mZSVBQEAYGBnTs2JGOHTsCsH//fjp27IiLiwtt27bl5MmTAKxevZq6desSHx+v5yMq3Y4Mk4fghx9+ICcnh6lTp+pMt7e3x8TEhMuXL1NeXk5WVhY1atRg9+7drFu3jqioKCIiIgD46KOPsLS0JC0tjfT0dOzt7enXrx/9+/enUaNGAJw9e5bu3bvTqVMnTp48SWRkJB9//DEHDhwAID8/n+3btzNr1ixiY2PRarV8/fXXAMyfP5+lS5eyYsUKzp07R9u2bUlLS4OKyzM7OztcXFxuu32LFi3CxcVFqYdWq0Wj0SCE4MCBA0ydOlUJznttp0ajwc/PTyk7MTERY2NjGjRogIuLC6+99hqhoaFkZGTwxx9/IIRg2LBhdO3alfj4eCZMmICnpycA5ubm2NjYYGJiovdjKt1KhslDsHfvXpo0aYKrq6vO9AsXLlBSUkLt2rXJzMzEwcGB8PBwbGxsCA4OpnXr1qSkpAAQHR1NYGAgBgb/f8hUKhUajUY5iWfNmkXbtm0ZO3Ys5ubmtGvXDmdnZxITEwE4ffo0kyZNws/PDwcHB9zd3TEwMODcuXP897//ZeHChQQGBmJoaMiZM2do2rQpALGxsXe9xCksLCQzM1OpR2pqKv7+/rz++utYW1sTGBgIgIGBwT23Mykp6ZYwqV+/vhII0dHRBAUFKfOFEJSXl5OWloaZmRm9evXC0NAQgL59+xIbG0uDBg3+5RGU/g4ZJg/B5cuXbwkSKi4HjIyMaNGiBUlJSfj6+urMz8vLo1atWgDExMTonEQAZWVlnDx5Url/sHPnTtq3b6/MF0KQm5uLnZ0dGRkZFBQU6Kzj1KlTeHt7s3nzZmrXrk1ISAgAxcXFxMfHK2ESHx9/1zDRaDQYGhoqJ61Go7llPfb29tja2t51O8+dO3dLHRMTE5Vw0Wq1xMbG6uwHAwMDfvzxR06cOEFQUBB//PHHHespPVgyTB6C2rVrk5qaqjOtoKCABQsW0LdvX+zt7dFoNDo3FTMzM4mLiyM0NBSAo0ePEhAQoFPGqVOnKC4uplGjRmi1Wq5du0bt2rWV+VFRUZSXl/PMM8+QmJiItbW1EmoFBQVkZGTQqFEj0tPTqVu3rs77SktLlfUlJCQorY7bSUxMxNPTEzMzM+V11W1JTExU3n+37UxOTsbY2Jj69etDRRhGR0crYXLixAkKCwtvCbbGjRsrQTplypS/cUSkB0GGyUPQv39/4uLi+Oijj4iLi2Pz5s306NEDc3NzZs2aBRUnWVlZGfn5+URHRzNkyBDat29PaGgoZWVl5OXlodFouHDhAvn5+cp7atWqRe3atTEwMMDX15dNmzZx48YNkpOTee+993jrrbdQq9U6JzQVAQHQsGFDXFxcyMjIoKioiEuXLvHBBx9gbGyMqakppaWlFBQUUF5efsftq3qpVV5ezokTJ3RaF1XD6G7beePGDbRaLZcuXaK4uJgpU6aQmZmplJWdnQ0Vj6lTU1MRQrBt2zb27dtHTk4OV65cUe6XFBYW0r59e+bOnav34yndngyThyA0NJRFixbx008/0bVrVz744ANCQ0P57bffUKvVlJeXk5KSwrFjx/D19eXll1+mTZs2rFy5EgAjIyNGjRrFkiVLaNWqldLKqXoSA3z66aekpaXh5eXFkCFDGDVqFBMnToSbWgdUnOAuLi7Y2Njw8ssvU69ePYKCgnjhhRd45plnKC4uJi0tDWNjY958800mTpzI+fPnb7t9VVsbp06doqioSGddlS2Ve21nSEgIzZs3Jzg4WGmRAUqYVM4bOHAgzz//PAB//vknYWFhNG/eHDMzM+bPnw8Vl0Q5OTkUFBTo7ThKd6e628yIiIgPfH19379bE1f691JSUmjVqhXnzp3D3Ny8uqvzwDwt2/kk2rlz55WcnJzeY8eO3X2nZWTL5BGg0Whwc3N74k+wp2U7n1YyTB4BSUlJyk3HJ9nTsp1PK6PqroAE7733XnVX4aF4WrbzaSVbJpIk6YUME0mS9EKGiSRJeiHDRJIkvZBhIkmSXsgwkSRJL2SYSJKkFzJMJEnSCxkmkiTphQwTSZL0QoaJJEl6IcNEkiS9kGEiSZJeyDCRJEkvZJhIkqQXMkwkSdILGSb3MGnSJPr37/9Q1pWfn8/FixcfyroepLy8PNRqNTExMVDRubOzszNqtRq1Ws2lS5ceeB3atm3LkiVLHvh6HpSb96E+rFixQjkGI0aMgIpRIPVFhsk9HD9+XGeM3blz59KhQwe9r+fChQu8/PLLytgzJSUlLFiwgObNm+Pk5ETTpk2ZO3cupaWlf7vMiRMnsnnzZp1pPXv2VMb9fVCOHz+OkZGR0qv86dOnKSoqYsOGDSQnJ+Pg4EBcXBze3t44OTnRpEkThg8frrcxgYuKikhJSdEZX0cf233x4kXCwsLIzMz8W8uXlZXh5+dH7dq1qVOnDq1bt+bTTz/9W++9eR9evnwZPz8/Nm3a9I/rP3DgQJKSknB0dMTHxwcqBndbtGjRPy6zKtlt411otVoSExMZN26cMq1x48Z3HUPmnxBCMGrUKN5++21q1qxJeXk5YWFhJCQk8MEHH+Dj48PRo0eVAabefffde5Z5/vx5vvjiC1599VWd6SEhIdSpU0ev9b9ZXFwcPj4+SjAmJSWhUqkIDg7G0tISgGPHjqFSqfjtt9/Izs5m2bJldOrUiU2bNtG6det/tf7ExETKysp0wkQf2713716OHj16xzGXb3bixAnOnz/P+vXrqVOnDocOHWL8+PHY2dkxcODAu7735n1oZWVF165dqVev3j+uv6WlJUIILl68qAxN0qlTJ5o0aUJ4eDjGxsb/uGyehpZJSkoKDRs25JNPPiEwMBAPDw9GjBjB1atXoSIwFixYQEBAAK6urnTv3l0Z9/bkyZNcvXpVaZm88cYbDBo0iBs3bijlnz59msGDB1OnTh3c3d1Zt24dzZo1Y8GCBcoyhYWFuLu7K4OE32zjxo0UFhYqw3NGRETw559/smnTJvr3709AQADDhg1j4MCB/PLLLwC88847jBgxgpdeegl3d3eaN2/Oli1boGKUvKCgIAwMDOjYsSMdO3YEICgoiA8//BALCwtl3Vu2bFHGJA4ODmb79u1QMXRp+/btWbp0Kb6+vri5uel8s6elpREWFqZsd+fOnZX9Fhsbq9OaS05Oxs3NTQkSKoYc9ff3JyAggNDQUNatW0eDBg2US5Px48fTr18/Zfn09HTUajXx8fGsW7eO0NBQxo8fT/369WnYsKHOYFvHjx/Hw8ODmjVr3nG7P//8c4KCgnB0dKRdu3YIIaBiHJ7OnTvj7OyMl5cXAwYMoLS0lI0bNxIeHk5OTo7OvigpKWHWrFn4+/vj5ORESEgIGo1GqYezszOdOnXC29ubIUOGUKdOHWUAtDvt+5v34fnz53FycmLlypV4eHgAcPXqVSZOnEiDBg1wdnZm/PjxbNiwAScnJ7RarVLO3Llz8fPzo6ysTDkWVAy+BmBjY0NpaaleLqceizBJSUlhxYoVyof1fpSXl5OVlUWNGjXYvXs369atIyoqioiICACmTJnCzz//zMaNG0lOTqZmzZrKwFVxcXHY2dkp30SLFi3CxcVFGWDq4sWLdO/enZo1a7Jnzx5iYmJo164dDRs25NSpU0odvvvuOwwNDe9472Xx4sWEhYVBRStl2bJlDBw48JYBt52dnbl8+TJUjG6XmprKtGnTOHbsGMHBwYwdO5bi4mJcXFx47bXXCA0NJSMjQxl/d/369QBK/X/55Rdef/11Zs6cyZkzZ3jppZcYPXo0169fR6vVotFoEEJw4MABpk6dyueff05OTg7Z2dn06NGDevXqkZSUxM6dO4mJicHIyEjZb1VbBUlJSUqzulJcXBz+/v7Ka2NjY9q0aUNaWhpUDItx8wDmxsbGNGjQgIKCAs6cOUOXLl2IiYnh3XffZe7cuRw6dAgqTuKq6795u2fPns3ChQuZNWsWJ06cYMWKFahUKv766y/CwsIYM2YM6enpTJs2jYSEBIyNjenbty+BgYFMnTqVjIwMZs+eDcCwYcPYunUrq1atIiUlBUdHR5YvX67Uo3Jc5CtXrrBs2TLOnDlDSEjIXff9zfvQ2dmZxYsXU6dOHaytrdFqtQwaNIiYmBjWrVtHcnIyr732Gg0bNqS4uJiMjAyoCLqVK1cycuRI5dgkJydjZmamMxxs5cDv/9YjHyYpKSm0bNmSd999l5YtW953oGRmZuLg4EB4eDg2NjYEBwfTunVrUlJSSElJITIykuXLl+Pt7Y2lpSU9evQgMTERKr4dqn4oCwsLyczMVD6UixYtwtnZmaVLl1K3bl3s7OxwdnbGx8dHCROtVsuKFSt4+eWXqVGjxi31S0xMRKPR0LZtW6gYEe/ChQvKiHVVpaenK2MJZ2ZmMmzYMPz8/FCr1YwcOZKrV68q1/PR0dG3DHSenJyMlZUVbm5ulJeXM3nyZN599106dOiAqakpffr0obCwkPT0dFJTU/H39+f111/H2tqawMBAqBgofM6cObi6ujJjxgwsLCxIT0/H1tYWT09P5US/OUyqji+s1WpJSkrSCRMqbjpaW1sr77k5TOrXr4+JiQmZmZl07NiRrl27Ym1tzbBhw7CyslI+Gzff56q63VlZWSxevJjFixfTrVs3bGxs8PHxQQjBhAkTGDVqFH369MHIyIizZ88qg7eXlpYSHx+vs0937drF9u3bWbJkCYGBgeTm5nLmzBllW48fP87mzZuxt7fH09OTb7/9lhUrVtChQ4e77vs77cPKz92WLVs4duwYa9asoUmTJlhbW1OvXj3q16+PoaGh8tn78ccfKSws5OWXX9bZF5XLUTHmdHFxMSUlJbd83u7XIx8mN99wut8bUElJSTrj3lLxoa1VqxZRUVHUqlVLZ35OTg52dnZQ0RSvekA1Gg2GhoZKi2HPnj08//zzqFS6AyP6+Phw8uRJAHbs2EF6ejqjRo26bf327t2LhYUF3t7eUHGjDVAGGK9UWlrKH3/8QZs2bRBC3DKeb15eHgC2trZotVpiY2NvCZOqw3hqNBrOnz9P+/btlfmV665VqxYajUan/FOnTmFvb0/NmjXZtGkTQ4YMUeZFR0crYRMfH6+Me1xZ79OnT+u0TFJTU7l27ZpO+SUlJezZs4dmzZpx7tw5CgoKdOYnJiYq4XLzMS0pKeHatWuo1WpKSkpITk7WGeS96nYfOHAAQ0NDunTporNvEhISSElJ0TnxoqOjlTCJj4+ntLRU5/Owb98+LC0t6dOnDx4eHoSEhNCtWzfGjh2r3G9bu3YtR48e5ezZsxw4cIAXX3zxnvv+5n3ITUPB7tmzh+DgYJ1B6gFMTU2pW7eu8tmLiIigf//+qNVqZZnk5GSdYK98muPk5MS/9ciHSe/eve/6+l6qfpCo+EaPi4sjNDSUgoKCWw7I5s2b6dy5M9w04DYVH2hPT0/lplhhYeFtR6fz8fEhPz+f7OxsIiIieO655+540+706dO4uLgo3xSV9akcT7jSV199RVZWFiNGjCAtLY2rV6/qnKDbtm2jWbNm2NracuLECQoLC3U++Nz0gawcg9fR0VFn2wMDA7G3t1fGB6667Y0aNSI/P5/8/HydZvK2bduUMElISMDT01PZL6dOnaK0tFSnrvHx8Zibm+Pl5aVMmzFjBleuXGHkyJEkJydjbGysDNglhCA6OloJk5vHWN62bRtmZma0adOGkydPUlJSojO/6vKFhYWYmZlhYKD70U9LS8PIyAg3Nzeo+FI5fPiw0sKJiYnBy8tL574LgL+/P6mpqcTFxZGamsr06dMxMDAgJSWFa9eu4efnh5ubm9Li+jv7/uZ9ePM2XL169Y6jIla2ig8ePMjx48cZPXq0zvzk5GSdY3Ho0CEMDQ2V0Pw3Hvkw8fb25uDBg8ydO5eDBw8q3+B/l0ajoaysjPz8fKKjoxkyZAjt27cnNDSUgIAATp48SXR0NEVFRcyJ2iC/AAAYRUlEQVSbN49z584xbtw4SktLKSgo0Hlyc/OHOCgoiK+++oqkpCTS0tLYtm2bUmdzc3MWLVrEnj17GDNmzB3rV1ZWpvNBq1u3Ls2aNeP999/njz/+ICYmhhkzZjBt2jRmz55N/fr10Wg0WFhYkJWVxYULF1iyZAlr1qxh1qxZUHE/hYpmdmpqqnJzsWr9vb29MTU1Zd26dZSWlrJjxw5WrlzJ9OnTKS8vv6XlUxms1tbWWFlZKU3p5cuXExcXp9xczc3NhYrrcCpaEQYGBjrHLT4+Hjc3N1JSUvj9998JCwtj5cqVREREULduXW7cuIFWq+XSpUsUFxczZcoUMjMz8fX1paCggMzMTK5fv05eXh6bN2/mnXfe4b333qNmzZrk5OTorP/m7W7atCn5+fksWLCA7Oxsdu/eTUZGBi4uLpSVlXH69GlKS0uZMGECpaWlynZdvnyZnJwc0tLSlG/zZs2aERMTw44dO9BqtezevZuioiJl31tZWd32S+Ru+/52+zArK4vLly/rbENUVBQ7d+7k4sWLbNy4USk7ICCAvXv3smDBAjp06KATHFeuXOHChQs6XxIHDhygQ4cOOq2XByIiIuKDv/76S+Tm5j6W/7Kzs4Wpqalo3ry5qFGjhnB0dBTh4eHi/PnzyjJvvPGGsLOzEzY2NqJ79+4iOjpamffWW28JGxsbkZCQIHJzc0WLFi3EpEmTlPnx8fEiJCREWFhYiFq1aolp06Yp88aOHSsA0aRJk7vW8b333hPPPPOMzrT4+HjRrVs3YW1tLaytrUWHDh3EDz/8oMyfPHmy8PDwEG5ubsLMzEwEBweLLVu2KPMzMzNFcHCwMDIyEo6OjiInJ0ecP39eGBoail9//VVZ7osvvhAeHh6iRo0aolmzZso6Dhw4IABx4sQJZVm1Wi2WLFmivM/Z2VnUq1dPdOjQQQQHB4sBAwaI3NxccfDgQdGoUSMxYsQIkZubKyZMmCA8PT11ti8kJEQAwsjISLi6uoqwsDBx6NAhZX5GRoZo2bKlsLS0FI0aNRJjxowRgEhOThZbt24VlpaWIiAgQJiamor69euLhQsXKu89d+6c6Ny5s2jUqJHIzc297XbPmzdPuLq6ClNTU+Hr6ysSExNFbm6uCA8PF/b29sLb21sMHDhQ2Nvbi08//VTk5uaK/fv3C1dXV2FsbCxeeOEFnc+Ig4ODqFGjhmjevLnIyclRjn+zZs3ueNzvtO9vtw9/+OEHYWJiIi5duiRyc3NFVlaWGDZsmFCr1cLS0lJ0795dee/Ro0eFWq0WgPj+++911rl161YBiNjYWOVzYmVlJX7++ed7nkvr16/P++yzz+76AyvV3WZGRER84Ovr+37Vb+PHSUpKCq1ateLcuXMPfbDsnJwc/Pz8WLx48V1/QXvkyBHefvtt9u7d+7fLfuWVV3B3d1e+yR5lQ4YMQQjBt99+q5fyVq5cydq1a9mxY4deynsSTZ06le3bt3PkyBGd+3lff/0106dPJy0tDZVKxZdffsm+ffv46quv7lnmzp07r+Tk5PQeO3bs7jst88hf5vwbGo0GNze3hxokubm5/PTTTwwcOBAPD4973uNp3rw5tra2yg3Uv0Oj0Tw2A4AnJSXh6upKVlaWXn7sp9Fo7vtS92lx5MgR5s2bR2RkJO+++64SJEVFRWRlZREbG0uDBg1QqVSkpaX9X3v3HhRV4fdx/HNYVpDlsiDgHTPzgrfqsSKt4adQmdMFdcRqsowoJcesUaYea3Ls6RH7eakpDQbXFoO0jMY0Lz0zaebYlegGKmYaoCagtlqI3Pk+f8ienwvssuqBvX1eM4xydjn7ZWd5s+ec5Sw+/fRTzV79Cm+PSUlJSbf/0BUWFmLhwoXo1asXNm/e7NSrCjMzM9W9+Z1paGjAsWPHPCImdXV1KCsrw7p16xAbG6u+UPBaeFJIu9uSJUuwefNmvPbaazYv+Fu/fj1iY2ORm5ur7i85cOAA3nvvPZv9ddfKqzdziEgbPr+ZQ0TdhzEhIk0wJkSkCcaEiDTBmBCRJhgTItIEY0JEmmBMiEgTjAkRaYIxISJNMCZEpAnGhIg0wZgQkSYYEyLSBGNCRJpgTIhIE4wJEWmCMSEiTTAmRKQJxoSINOHf2RUOHjzYcujQoZbuGYfckNL6Ia0f5INEJKyz6ziMSUVFxf8OGjTodU2nIo9SUFBgEpFZfn5+c2699dY8V89DrlNeXt7g6HKHb3VBNGfOnA0AZotIislk2uDqech9cZ8JEWmCMSEiTTAmRKQJxoSINMGYkEMiwsPB5BTGhIg0wZgQkSYYE3JIURQBAD8/P74miRxiTIhIE4wJEWmCMSGHrEdzWlpauJlDDjEmRKQJxoSINMGYUGcElzZ3uJlDDjEmRKQJxoQc4utMyFmMCRFpgjEhIk0wJuSQ9XUm3AFLnWFMiEgTjAkRaYIxIYesR3MUReFmDjnU6Ztw+ZLW/QJ3uHoOd2IymfqcP38eMTExN2RnZ9/p6nncSLWiKL+6egh3wt82lxERHYAmV89BHqFQUZRbXT2EO+FmDhFpgjEhIk0wJk6aNWsWRowY4eoxuk1zczO+/vprV4/RoaamJgwbNgzp6enqMkfzFhQUoK6urhsn9E2MCXUoNTUVc+fOdfUYHVIUBeHh4QgKClKX2Zt3w4YNiIuLw4ULF7p5St/DoznUIXf8TS4iUBQFOp0O33//vc1l9uZ1x++DfICI6KTVhx9+KCNGjJCePXvKLbfcIjfffLMMHz7cerFUVFTII488ImFhYRIUFCT33HOPFBcXy+XKy8tl1qxZEhUVJQEBAXLbbbfJ5s2bRUTkjjvukMmTJ9tcf+XKlQJAamtrRUQkLCxMcnNzZcqUKRIQECC9e/eWhQsXyieffCJjxoyRwMBAueWWW6SwsNBmPXv37pW4uDgJDAyUmJgYSUlJkVOnTqmXh4WFyQcffCDJycliMBikX79+8uqrr6qXz549W1rPY6J+lJaWiojIzp07ZfTo0dKzZ08ZOXKkrFmzRpwxZcoUueGGG2yWLVu2TLZt22azLDY2VmbPni0iIqNGjZKHHnpIXnvtNYmKihKDwSBFRUXqTC+//LLDeXNyctotz8nJUW+rtLRUpk2bJsHBwRIVFSWTJ0+WH374wdn76QdXP17JjVljsmnTJgEgkyZNkvXr18vLL78sOp1OjcnFixclNjZWoqOjJTs7W/Ly8mT06NESGRkp586dExGRU6dOSd++fSU6OlpWrFghGzZskNTUVHnjjTeuKCaBgYGSmZkpBQUFMmPGDAEg/fr1k+3bt8vevXslNjZWBg8eLI2NjSIisnv3btHr9fLkk0/K+++/L2+99ZZcf/31MmLECKmpqVHXq9frJSMjQwoLC+WFF14QALJz504RETly5IgkJibK4MGDZf/+/bJ//36pq6uT6upqNa7vv/++vPjii7J48WKnYmI2mwWAHDhwQF02dOhQue+++9TPi4uLBYDs2LFDjYnRaJQHHnhAvv32W/n888+lpqZGPvnkE9Hr9WpM7M1bVVUl6enp6jr3798vVVVVIq2/DPr27Svx8fHy7rvvitlslokTJ0pgYKA6Yyf3E2NC9omIrra2VqKioiQ+Pl6amprUB/pDDz2kxiQ7O1sAyJ49e9TLy8rKxM/PT/3NlZaWJv7+/nL48OEOf7icjcm8efPUy0tLSwWArF27Vl2Wm5srANTbGTlypMyfP99mvYcPHxYAsmXLFnW9aWlp6uVNTU0SEREhzz77rM33O2rUKJv1HD16VABIRkZGh9+TIxaLRfR6vSxbtkxERPbt2ycARKfTyfHjx0VEZMmSJWI0GqW+vl6kNSaRkZFy4cKFdusLCAhQY2JvXhGRrKwsASBnzpyxWT5v3jy56aab1AiLiDQ0NEhMTIwsWLDAmfuJMWmDO2Db+Oqrr3DmzBk8//zz0Ol06nJ////sXvryyy9hNBqRkJCgLhs0aBBGjBiBwsJCAMBnn32GhIQEDB8+/Jrm6dmzp/r/wMBAAEBAQIC6bMCAAQCAs2fPory8HIcOHUJ2djYCAwPVjxtvvBEAcPLkSfXrDAaD+n+dTof+/fvj1KlTDme5/vrrMWHCBCxbtgxr1qxBfX29099HeHg4EhMTsXXrVgCA2WzGxIkTMXToUJjNZgBAfn4+kpKS0KNHD/Xr4uLibGbVyq5du1BcXIzg4GD1fgoJCcGJEyeu+X7yVdwB28bx48cBAIMHD7Z7nb///htRUVHtlkdERODPP/8EAFRVVeGuu+7qwkkvsf7JjIigsrISALB06VJMnz693XX79etndz09evRAU5PjF/8qioLPPvsMixcvRnp6OlatWoW8vDzEx8c7NWtycjKeeuopHD58GB9//DHMZjMqKiqwevVqTJs2DSUlJVi5cqXN1wQHBzu17itVWVmJ+++/H6+//nq7y4xGo92vc+Z+8lWMSRvWSJw+fdrudQYMGIDvvvuu3fKqqirExMQArQ9I6w93R7ri7+bCw8MBABcvXtTkNTGtpzKxERoainfeeQfp6elISkpCUlISTpw44dQP/dSpUzF37lzMnj0bwcHBmDZtGmpqarB48WKkpaXBaDTi7rvv1nRee5eFh4fj7NmzPvXaoa7GzZw2brrpJuh0OmzcuNHudcaPHw+LxWJzeLKoqAi///477rzz0t/CJSQkYM+ePSgrK7P5Wutvtejo6HZPl9te90oNHToUgwYNgtlsRk1Njc1tNjQ0XNG6DAYDKisr0dLSYrPceqh18ODBWLBgAc6fP4/S0lKn1hkREYHExEQUFBQgNTUVer0eRqMRDz/8ML799tt2mzhazGvdTGl7X99111345ptv8OOPP9osv/x+oyvDmLQxcOBApKSkIDc3FzNnzkROTg4yMjKwY8cO9TqzZs3CsGHDkJycDJPJBLPZjKSkJERHR2PevHkAgCVLlkCv12P8+PFYvnw5cnJy8Mgjj+CZZ54BAEyePBnFxcVYvXo1fvrpJyxduhTr16+/ptkVRcGbb76JyspK3H777cjMzMTbb7+t/v9KxMfHw2KxIC0tDbm5udi+fTsaGhowfPhwvPDCC3jvvfeQmZkJo9GIIUOGOL3e5ORk+Pn5Yc6cOeoy632SnJx8RTN2Ni8ATJgwAf7+/njuueeQm5uL7OxsAJc2BcPDw3HPPfcgIyMD69evx4wZM/Doo49e9QxEKuuh4draWpk/f75ERERIWFiY3H///fKvf/3L5nUmZWVlMn36dAkJCZGgoCC59957paSkxOaIQVFRkdx7771iMBgkPDxcxo8fL5s2bRIRkcbGRklPT5fevXtLWFiYpKamyksvvdTuaM6iRYvU9VVUVAgAMZlM6rK9e/cKANm/f7+6bOfOnTJu3Djp0aOHREZGyvTp0+Wnn35SL2+7XhGRcePGSVJSkvp5c3OzzJ8/X0JDQ6VPnz6yePFisVgskpKSIn379pWgoCCJi4uzuV1nnD17VqZOndpueWJionoUx8r6OpOOtD2a09G8VmazWfr06SNGo1ESEhLU5SUlJXLfffdJUFCQBAcHS3x8vOTn5zt7P/FoThs8BcFleAoCugI8BUEb3Myha7Zz504YjUaHHyUlJa4ek7oYn5lchs9Mrs7FixcdHv0CgP79+0Ov13fbTN2Az0zaYEwuIyJ+ADJcPUc36wHgv+xdWFlZOeSff/4ZEBERcSwyMvKknavVA/i560Z0SycVRVnr6iHcCWPi40RkAIAT17iaPxVFGaDRSOShuM+EiDTBmBCRJhgTItIEY0JEmmBMiEgTjAmpJk2ahOeff96p61ZUVGDq1Kk4ceJaDwSRt+ApCEg1efJkXHfddU5d94svvkBBQQEGDhzY5XMRkQcQkQEiIkOGDBEAsn37dhEReeWVV+Sxxx6TlJQUCQ0NlcjISNm4caOIiGzcuFH8/f1Fr9eLwWCQtLS0ald/H0TkYtaYHDlyRABIWVmZiIgsWrRIoqKiZNu2bfLPP/+0O8fq+PHjZcWKFdZP7b0ylnwI95kQAODgwYMIDQ3FoEGDAAC///47Hn/8cTz44IMICQnB2LFj4ed36eHS2NiIn3/+GXFxcS6emtwJY0IAgOLiYowePVr9vKioCGPHjlU/P3LkCGJjYwEAv/zyCxobGzFu3DiXzEruiTEhoDUeY8aMAQBUV1ejvLxc/RwAfv31V/Xz77//HsOHD++Ss8aT52JMCGh9ZmKNRVFREfz8/DBy5Eig9Ryyhw4dUi8/ffo0zpw5g9LSUvzxxx8unZuI3ISIDKitrRWdTif79u0TEZHMzEyJjY1Vd7Za35Lz2LFjIiJy4MABiYmJEb1eL8nJydwBSwBPQUA8BQFphZs5RKQJxoSINMGX09MZAHbfRm/r1q1TysrKFhqNxv974oknVtu5mvNvOkxeizHxcYqi1APYbe/yuXPnDmx9a82KlJQUu9cj4mYOOSQi1vfb5GOFHOIDhByyxqT1zP1EdvEBQg4pitLc+q/O1bOQe2NMyCE+MyFn8QFCneE+E3IKHyDkEHfAkrP4ACGHdDpdCy7tM+FjhRziA4Qc4jMTchYfIOQQd8CSs/gAIYd4aJicxZiQQ3xmQs7i3+ZQZ2z2mTz99NOiKApaWlpq/Pz8DOvWreM5cQjgyZGoraeffroJQIebNIryn4dL6x///WkymXhSJAL4zIQ6cBFAyOXh6IiiKE0AlnfbVOT2uB1MNhRFWe3M+UlEpLq2tnZD90xFnoAxIRu1tbWrFEWp6+Rq9YqiLM3Ly6vpprHIAzAmZCMvL69GRP5bROpa94vYEBGIyN8AslwyILktxoTaOX/+vElRlDN29pvUK4qybN26dY3dPxm5M8aE2snPz28G8G8Raerg2UlTU1NTjmsmI3fGmFCHzp07ZwJw2vrspHXzpl5RlP8xm83Vrp6P3A9jQh3Kz89vALBIRC7fnGk+d+7cGheORW6MMSG7TCbThwCOyqVtnYsA1uTn59e6ei5yT4wJdWapoigCQKmvr1/p6mHIfTEm5NCYMWO+GTt2bC2A1bm5uX+5eh5yX4wJ2WUymXoHBwcfeeCBB3pOmDAh1dXzEJEHMplMvc1m80WLxSIWi0XKy8ubc3JyTrl6LnJf/KthasdkMvXW6XSlU6dO7Xn58urq6pYvvviiKiUlpZ/rpiN3xZiQDXshsWJQyB7GhFSdhcSKQaGOMCYEXEFIrBgUaosxoSsOiRWDQpdjTHzc1YbEikEhK8bEh11rSKwYFAJj4ru0CokVg0KMiQ/SOiRWDIpvY0x8TFeFxIpB8V2MiQ/p6pBYMSi+iX/o5yOysrKiuyMkABASEuKXkJDQ22w2n+zq2yL3wZj4gKysrOiAgIA/uiMkViEhIX6JiYkMig/hZo6XuywkBlfcfnV1ddOePXuqnnzySb6NqJdjTLyYq0NixaD4BsbES7lLSKwYFO/HmHghdwuJFYPi3RgTL+OuIbFiULwXj+Z4ka4Iya5du9CrVy/U1XX2XubOCQkJ8edRHu/EmHiJrgjJqlWroCgKxo4di6+//hpbtmzRZL0MinfiZo4X6IqQNDc34/HHH8fBgwfR3NwMg8GASZMmYfny5VrdBDd5vAxj4uG6ch/Jb7/9hgULFqBfv0uvil+7di0MBm1vhkHxHtzM8WBdvbP16NGjGDhwIN555x0cP34cp05p/04X3OTxHnxm4qG6+6iNiEBRuu7hwmcono8x8UBZWVn9AwMDDyUlJYW6ehYtXbhwoWn37t1/NjY2Dp07d26jq+ehK8PNHA/Uq1evM42NjUGunkNr9fX1UBSlgSHxTHxm4qE++uijHufPn6+ZMWOGv6tn0cJff/3V9NVXX5WmpKQMc/UsdHUYEw/mLUFhSLwDY+LhPD0oDIn3YEy8gKcGhSHxLoyJl/C0oDAk3ocx8SKeEhSGxDsxJl7G3YPCkHgvxsQLuWtQGBLvxph4KXcLCkPi/RgTL+YuQWFIfANj4uVcHRSGxHcwJj7AVUFhSHwL/9DPB8ycObPBaDQaPv744+buuk2LxdLCkPgWPjPxIbt27Qo4efJkzYwZM3RdeTutISl74oknhnTl7ZB7YUx8TFcHhSHxXYyJD+qqoDAkvo0x8VFaB4UhIcbEh2kVFIaEwJjQtQaFISErxoSuOigMCV2OMSHgKoLCkFBbjAmpnA0KQ0IdYUzIRmdBYUjIHsaE2rEXFIaEiK7Yrl27AtatW9dksVjEYrHI0aNHmzds2HDM1XMRkQeyBoUhIaJrlpubG71p06Ytrp6DiIiIiIiIiIiIiIiIiIiIXO7/AT1tEoUg/Kn+AAAAAElFTkSuQmCC",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": []
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "indexing = Pipeline()\n",
    "indexing.add_component(\"cleaner\", DocumentCleaner())\n",
    "indexing.add_component(\"splitter\", DocumentSplitter(split_by='sentence', split_length=2))\n",
    "indexing.add_component(\"writer\", DocumentWriter(document_store=document_store, policy=DuplicatePolicy.OVERWRITE))\n",
    "\n",
    "indexing.connect(\"cleaner\", \"splitter\")\n",
    "indexing.connect(\"splitter\", \"writer\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "3f25b7bc-f03a-40f8-b905-922aa3bbe7ac",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'writer': {'documents_written': 1581}}"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "indexing.run({\"cleaner\":{\"documents\":raw_docs}})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "e14fc0d0-62fc-44fb-b530-0a60373fdf60",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'title': 'Audioslave',\n",
       " 'url': 'https://en.wikipedia.org/wiki/Audioslave',\n",
       " 'source_id': 'e3deff3d39ef107e8b0d69415ea61644b73175086cfbeee03d5f5d6946619fcf'}"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "document_store.filter_documents()[0].meta"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "400576e2-ade7-4954-bb22-55a1451d96f3",
   "metadata": {},
   "source": [
    "### RAG Pipeline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "e1241de2-5c5b-4482-bc7d-38793329e784",
   "metadata": {},
   "outputs": [],
   "source": [
    "from haystack.components.builders import PromptBuilder\n",
    "\n",
    "prompt_template = \"\"\"\n",
    "<bos><|im_start|> user\n",
    "Using the information contained in the context, give a comprehensive answer to the question.\n",
    "If the answer cannot be deduced from the context, do not give an answer.\n",
    "\n",
    "Context:\n",
    "  {% for doc in documents %}\n",
    "  {{ doc.content }}\n",
    "  {% endfor %};\n",
    "Question: {{query}}<|im_end|>\n",
    "<|im_start|>assistant\n",
    "\"\"\"\n",
    "prompt_builder = PromptBuilder(template=prompt_template)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "727818d9-f7b8-4ee0-a0b9-2b320e6ec966",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Gemma's activation function should be approximate GeLU and not exact GeLU.\n",
      "Changing the activation function to `gelu_pytorch_tanh`.if you want to use the legacy `gelu`, edit the `model.config` to set `hidden_activation=gelu`   instead of `hidden_act`. See https://github.com/huggingface/transformers/pull/29402 for more details.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8fbb8663c7f04a15a33809cbba071608",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from haystack.components.generators import HuggingFaceLocalGenerator\n",
    "\n",
    "generator = HuggingFaceLocalGenerator(\n",
    "    model=\"anakin87/gemma-2b-orpo\",\n",
    "    generation_kwargs={\"max_new_tokens\": 350},\n",
    "    huggingface_pipeline_kwargs={\"torch_dtype\":torch.bfloat16, \"device_map\":\"auto\"})\n",
    "\n",
    "generator.warm_up()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "975344c5-47e7-430f-8b97-74ed551e41f6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAVMAAAOPCAYAAAB2KCIJAAAAAXNSR0IArs4c6QAAIABJREFUeJzs3Xl4jPf+//HnZJGQCGLLIohsIgtir6W2WHu0aqmiii+ldeqcHk6UogttKT1arSpKbK0qRalw1L4cJYkly0wSsYQmliSWhJBt7t8fTe6fiSSCiZno+3Fdrsvccy/v+87Maz739rlBCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQogHaUxdgBClWbVq1RFra+smubm5Y19//fWNpq5HCCEqnJUrVx6Ojo7Oun79uvLzzz+nr1mzZoCpaxJCiArl/iAt/CeBKsyZ7OYLs7Ny5crDLVq0CHJ1da1c9L19+/Zdz8rKeuO111772TTVCVE8CVNhVkoL0kISqMIcSZgKs1GWIC0kgSrMjYSpMAuPEqSFJFCFOZEwFSb3OEFaSAJVmAsJU2FSTxKkhSRQhTmQMBUmY4wgLSSBKkzNwtQFiL8mYwYpQJcuXRyrVKmyNDQ09CVjzE+IRyVhKp46YwdpoS5dujg6ODgskUAVpiC7+eKpKq8gvd++ffuuZWRkjBs1atSW8lqGEEVJmIqn5mkEaSEJVPG0SZiKp+JpBmkhCVTxNEmYinJniiAtJIEqnhYJU1GuTBmkhSRQxdMgZ/NFuVm5cuUBUwcpf57lryNn+UV5kzAV5aIgSJubOkgLSaCK8ia7+cLo7gvSqqaupSjZ5RflRcJUGJU5B2khCVRRHmQ3XxhNeQTpe++9R48ePYw1O5BdflFOLE1dgHg2GDtI8/LyePfdd3F3d6dKlSqcO3eOSpUqUbduXWPMHnd3d7vLly937d27d+Ivv/wSZ5SZir80K1MXICq+8miRpqWlER0dzY4dO7C0tMTW1pYaNWoQEBBgrEXQpUuXOvv27VsSGhqK7PKLJyUtU/FEyusYqb29PbVq1SIyMpL69evTq1cvxowZY8xFgLRQhRHJMVPx2Mr7ZNPx48cZMmQIM2bMYPfu3dy7d688FiPHUIVRyNl88Vie9ll7RVHQaMr34ypn+cWTkJapeGTffvvtJ4GBgd5P8/Kn8g5SClqo9vb273/77bcty31h4pkjx0zFI/v111/3tG/fvpVGo3GvWbNmJVPXYyxhYWGZQP9Ro0adMHUtouKRMBWPZfPmzRs7deoU+KwEalhYWKalpeXzr7766klT1yIqJglT8dielUCVIBXGIGEqnkhFD1QJUmEsEqbiiVXUQJUgFcYkYSqMoqIFqgSpMDYJU2E0FSVQJUhFeZAwFUZl7oEqQSrKi4SpMDpzDVQJUlGeJExFubgvUL1q1qxp8t7JJEhFeZN780W5+v777zd6enq+4OXlZWOqGiRIxdMgYSrKnSkDVYJUPC0SpuKpMEWgSpCKp0nCVDw1TzNQJUjF0yZhKp6qpxGoEqTCFCRMxVNXnoEqQSpMRcJUmER5BGpYWNgdS0vLjhKkwhQkTIXJGDNQw8LC7tja2nYeOHBghHGqE+LRSJgKkzJGoEqQCnMgYSpM7kkCVYJUmAsJU2EWHidQJUiFOZEwFWbjUQJVglSYGwlTYVbKEqgSpMIcSZgKs1NaoEqQCnMlYSrMUnGBKkEqhBCP4fvvv9947Nixe9evX1fWrl17e+PGjS1NXZMQJZGWqTBrP/7444rc3NyBNjY2nQYPHnzK1PUIURKT94AuRGn27NkzR6PR2CuK8jwgYSrMloWpCxCiNHq9vjowCBhm6lqEKI2EqTBrVlZWhc8pyzdxKUKUSsJUmDVFUSRMRYUgYSrMml6vLzyun2fiUoQolYSpMGuWlpbSMhUVgoSpMGuymy8qCglTYdY0Gk3hZzTXxKUIUSoJU2HW8vPzCz+jcoOJMGsSpsKsyTFTUVFImAqzdl/LVMJUmDUJU2HW7muZ6k1cihClkjAVZk1apqKikDAVZk1apqKikDAVZk1apqKikDAVZk1apqKikDAVZk1apqKikDAVZk1apqKikDAVZk1apqKikDAVZs3CwsKSP+/RlzAVZk3CVJg7S/7sPUp284VZkzAV5s4CaZmKCkDCVJg7aZmKCkHCVJg7aZmKCkHCVJg7aZmKCkE63BVGpyhKBlDV1HWURqPRyGdfGJW0TIUQwggkTIUQwggkTIUQwggkTIUQwggkTMUzR1EUU5cg/oIkTEW5Wbx4MY0bN6Zy5cq0adOGzz//HCcnJwDy8vLQaDTMmTPHYJoXXniBtm3bqq+zsrJ45513qFu3Lg4ODrRq1Yr169er72/cuBGNRsMvv/xChw4dqFSpEtOmTaNGjRr8+9//Npj3uXPn0Gg0rF69utzXXQghnpiiKBkffvihAih9+vRRVqxYocydO1dxdHRU6tatqyiKouTm5iqA8umnnyr369u3r9KmTRtFURQlPz9f6datm9KoUSNlwYIFyvfff6+MGTNGAZTly5criqIoGzZsUADF1dVVWblypbJ3717ljz/+UN58803F2dlZycvLU+c9Z84cpXLlykpGRoY0XYUQ5u/atWuZNjY2St++fQ2CcsKECY8Upj/99JNSqVIlJTk52WCcIUOGKIGBgQZhOmfOHINxjh8/rgBKWFiYOqxFixbKoEGDFEWOA4hyYGXqAsSz5+DBg5bZ2dmMHz/+ieYTFhZGbm4ujRo1Mhiel5dHtWrVDIZ169bN4HWrVq3w8/Nj1apV9O7dm/PnzxMZGcn06dOfqCYhSiJhKozu+vXrGoB69eo90XyuXLmCk5MTe/fufeC9SpUqGby2t7d/YJxRo0Yxffp0bt68yYYNG6hevTp9+vR5opqEKImEqTA6FxcXPUBKSgrNmjUrdpyy3M1Zo0YNUlNTadiwIba2to9cx2uvvca7777L+vXr2bBhAwMGDHgghIUwFjmbL4yuWbNmemtra5YtW1biOJaWljg6OpKSkqIOUxSFixcvqq+7d+9OXl4eixcvNpj2zp07ZaqjTp069O3bl/nz5xMREcHQoUMfa32EEMIkFEXJePPNNxVAeeGFF5TvvvtOmTdvnuLs7KyegFIURXn11VeV6tWrK5s3b1aOHj2qDBw4ULG2tlZPQGVnZyutW7dWLC0tlbffflsJDQ1V/vnPfyoNGjRQsrKyDE5A6XQ6pTjr169XAMXFxUXJz89Xh5t6GwkhxEMpipJx79495Z///KdSp04dpXLlykrr1q2VDh06GITp1atXlf79+ysODg6Km5ub8sknnyh9+vRRw1RRFOXWrVvK+PHjlVq1aik2NjaKv7+/8umnnyo5OTllCtOkpCQFUN555x2D4abeRkII8VCKomQUF2z3Xxr1tJw+fVoBlPDwcIPhpt5G4tkjx0zFM+nixYu8++67dO/ena5du9KyZUtTlySecRKm4pkUFxfHmjVrGDp0KL/88oupyxF/AdLbuDA6RVGiH7GnfcuSPotZWVk1cnJyqlSuXPmmjY1Naafx8x6lRo1G0/BRxhfiYSRMhckZ6TEn1TQaTYaRShLikcluvhBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqTB7f//739m0aZOpyxBCCPNW0u2niqIof/zxhwIo8fHxJd4yWvBoEgdTr4cQQpiUoigZBw4cUIKCgpTKlSsrAQEBSlxcnHLx4kXFxsZGsbCwUOzs7JSgoCBFURTl119/Vezt7ZVZs2YpXl5eyuuvvy5hKoQQer0+o3bt2srMmTOVtLQ0Zf369eqD8KZOnar06dPHoCU6Z84cxcLCQlmzZo2iKIpy+/ZtCVNhcnLMVJicoijk5+dz/vx5KleuzODBg7G0tATg999/p02bNgbjR0dH069fP4YPHw6AnZ2dSeoW4n4SpsLkLCws+O2339BqtXh4ePDbb7/Bny1WIiIiHgjTmJiYBx6gJ4QQf3mFJ6Dy8/OV4cOHK35+foqiKEp0dLQCKNeuXVN38XNzcxUbGxtl//79Rc9DyW6+MClpmQqT27x5s9WBAwdIS0vjxo0beHp6AnDt2jUAIiMjOXPmDIqicObMGbKzs/H39zdx1UIIYWYmTJiQXb16daVatWrKgAEDlMuXLyuKoihZWVlK+/btFSsrK8XZ2VnR6/XK+vXrFWdn5+KukJKWqTAp6YJPmJx0wSeeBbKbL4QQRiBhKoQQRmBl6gKEAJJK2s3PyMionZubW8Xe3j7VxsYmq5R56MuvPCEeTo6ZCrM2duzYDRqNZqBerx/03XffbTR1PUKURHbzhbnT8OcD8ORZ98KsSZgKs6bRaDT8eZeUhKkwaxKmwqwpiiKHokSFIGEqKgS9Xi8tU2HWJEyFWSvczZdjpsLcSZgKs1a4my8tU2HuJEyFEMIIJEyFuZPdfFEhSJgKsyaXRomKQsJUmDW5NEpUFBKmokKQE1DC3MmvvjAbb7zxhqIoD2amRqOhyPANGo1m0NKlS+XzK8yGtEyF2VAUJZKC8Lz/XzHDBimKcs/U9QpxPwlTYU5maDSa/OJap8W4Xv7lCFF2EqbCbCxbtmynoihnC1ujxVEUBUVRcoGQp1qcEA8hYSrMiaLRaP4F5D9kvBuurq7rnlJNQpSJHMAXZueNN96IVhTFv2gLtWD3P0ej0fxr6dKli0xVnxDFkZapMDuKonys0WhKegxJGrD0KZckxENJmAqzs2zZsh+Bs8VcW5qn0Wg+XLp0aa6JShOiRBKmwiwpivIPjUajLzyzrygKGo3mVk5OzmpT1yZEcSRMhVlatmzZDuC08ieAHOC9lStXyvWlwixJmApzNluj0RTu0mckJCQsN3E9QpRIwlSYrWXLlm0GzhTc9fTx/v3780xdkxAlqZCXRi1btmyElZVVP1PXIYQwLkVR8vR6/ZQxY8YkmbqWR2Vl6gIeh4WFRRdnZ+cBderUMXUpQggjioqKupubm/sZIGH6tDg6OtKwYUNTlyGEMKK4uLic7OxsU5fxWOSYqRBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqRBCGIGEqSh3N27c4Ndff32kaT777DM8PDyIjIwst7qEMCYJU1GukpOTadKkCZ999tkjTRcZGcmNGzeIi4srt9qEMKYKezupqBiys7N5nNsDFy5cyPHjx+nTp0+51CWEsUnLVJRq8eLFODo6MmLECPr160e9evXw9vYmIyMD/uyYgoEDB+Lm5kaDBg0YNGgQUVFRUNAqbdmyJQAxMTE4Ojri6OhIcnIy0dHRODo60r59e8aPH4+HhwfOzs4cOXKE/v374+vry+uvv87OnTvVWlJTU5k4cSJeXl44OzvTpUsXtmzZAsDt27dp0KABNWvW5OLFi+o0Fy9epGbNmvj4+KihvmXLFp5//nmcnZ3x8fFh4sSJpKWlqdMMHz4cR0dHpkyZQrt27XBycmLAgAFPaYuLikrCVJTJr7/+SlpaGv3792fEiBE4ODgQHh5O79692bt3Lz4+PjRq1Ig9e/bQp08fYmJiqFKlCj169ACgWrVq9O/fn/79+1OlShV1vjqdjr1799K3b1+6d+/Oc889R5s2bXB2djZY/o0bN+jVqxdr166lWrVqNG/enLi4OEaPHs3q1auxt7dnyJAhKIrC+vXr1elWr16NoiiMHDkSGxsbvv32W0aPHk1iYiJBQUHY2dmxdu1a+vbty+3btw2WuWzZMlxcXOjduzcjR44s920sKjYJU1EmDRo0YM+ePXz11VdMnz4dgMmTJ3P37l2+++47du/ezb59+1iwYAFZWVnMmTOHGjVq8MknnwDg5ubG8uXLWb58OTVq1FDna2lpydatW1m4cCFr1qxBo9Hw7rvv0qpVK4Plz58/n/PnzzNq1CjCw8MJCwtj7969WFtb89FHH5Gfn8///d//AfDjjz8CkJeXxw8//IC1tTWjRo3i2rVrfPjhh1StWpUDBw6wfft2IiMjGTRoEGfOnGHNmjUGy+zfvz8///wzoaGh/O1vfyv3bSwqNjlmKsqkV69eVK5cWX39xx9/EB0djbW1NSdPnuTkyZMA3Lv35yOaTpw4Uab5Nm7cmMaNGz90vLCwMCjYnZ85c6Y6vGrVqly/fp3z58/j7e3N888/z4EDBzh27BhpaWlcuXKFAQMG4OTkxI8//kh2djZOTk6sWrVKnUdmZmaxNffv379M6yAEEqairOzt7Q1eX7lyBYDc3FwWLVr0wPi2traPNd+SXL16FYANGzYU+35h0I8ZM4YDBw6wbt06UlJSABg3bpzBPJKSkoqt+f4fi0epTQgkTMXjcnBwAMDJyQmtVvvQ8fV6/RMv7969exw7dgwvL68Sx+vVqxf16tVj06ZNZGVl0aJFC/UkWGHNL7/8Mt99990T1SNEUXLMVDwWT09P6taty5UrVwyCKTU1lbNnz6qvq1atCgWHBe7evQtATk7OIy/vueeeA2DevHnq9Lm5uQ/smltaWjJq1Chu376NXq/njTfeeGAeO3bsMJguKiqKrKysR65JiPtJmIrHYmFhwYwZMwAICQmhdevWdO/enaCgIN5//311vNq1a+Pu7k5GRgatW7emQ4cOBmfbyyokJAQ7Ozs2btxI06ZN6dWrF35+fgwbNkw9Tlvotddew8bGhrp16/LSSy+pw318fHj11Ve5e/cuPXv2pEuXLnTo0IFu3boZHEMV4nFImIrHNnToUFauXElQUBCXLl1Cq9XSqFEjunXrZjDesmXLCAwMJDU1lcuXL1OzZs1HXlbjxo0JCwujR48eZGVlcfLkSezt7Rk0aNADhxBq1arFSy+9xMiRI7G2tjZ4b+HChUyfPp0GDRoQGxvLpUuXaN++Pf7+/o+5FYT4U4V81PPy5ctDAwICRnp6epq6FCGEEe3cufNWZmZm13HjxpXtchAzIi1TIYQwAglTIYQwAglTIYQwAglTIYQwAglTIYQwAglTIYQwAglTIYQwAglTIYQwAglTIYQwAglTM6DVanF0dOTMmTNlGj8jI4PmzZsbDLt69SrNmjUrpwqNZ9euXXh4eFCnTh08PDx4+eWX1b5QC/Xq1YuEhAT1taIodO3aVX24XlZWFn//+99p2LAhDRo0YPDgwWp3ewDDhg1TH5FS+O/mzZsADBkyRB3m4eHBkCFDSExMLFPtv//+O6NGjSrTuHPnzqVz585lGlc8GyRMzUB0dDRVqlTBw8OjTONv2bKFpKQkrl+/rg777LPPDF6bysO62ouIiKBOnTpEREQQFhaGg4MD//jHP9T3z549y/Hjxw2eSrplyxZOnTqldmiSmJjI9evX+fnnn9m4cSOJiYl8/PHH6viRkZF8/fXX6HQ6dDodcXFxVK9eHQqeRTVu3DiOHj3KkiVLiI+PN1h+adatW4eVVem9Vubn5wPQtGlT9ZEtT0PhcoXpSJiagejoaJo0aYKFhQVpaWn4+/uzatUq2rVrh4uLC/369ePOnTvq+D/88AMA8fHxUBBAa9aseeApoD/++CPt27fH2dmZZs2aqQ+fW7VqFS+++CLjxo3Dy8uLRo0a8dlnnxESEoK7uzve3t5s3LhRnc/27dvp2LEjLi4utGnTxuAhd926deMf//gH/fv3p0GDBixZsgRnZ2eDUJ07dy7+/v7k5eURFRVF27ZtcXNzw87Ojlu3bhl0MrJu3TqDdcvNzVWDsrDrvcDAQH744QdatGhBq1at8PDwQKP5s5uJCxcucO3aNRYtWkTnzp2ZN28ejo6OAFy/fp2UlBS6dOmCj48P3bt3Jzg4mLy8vIdus0mTJrF27Vq2b9+Om5sbW7duBWDmzJn87W9/480338TX15cff/yRiRMnMnToULXLQYDw8HBeeuklXF1d8fT0ZNasWQAMGjSIqVOnquPdvn0bX19fvvnmm1LruX37NjVr1lRbwK1bt36kz5wwPglTMxATE0NAQAAU9FCfkpLC0aNH2bRpEzt27ODIkSPs3r0bClpl4eHh1KtXT229zZ49mzp16pCbm6uG2KJFi5gyZQpTp04lISGBkSNH8sEHH0DBs5GOHTtGp06dOHHiBC+++CKff/45rVq14vTp07Rq1YqvvvoKgK1bt/L2228za9Yszp8/zyuvvMK4cePIyspCr9cTHx9PXFwcy5cvR6vV0rFjR7Kzs7l06RIUBGBoaChjxozBysqKmJgYVq1aRa1atQgMDATgyy+/hIJW7Y8//oibm5u6bqtWrVJbpEW72gM4duwYhw8fZvz48VAQmO+++y7ffvst48aNY8WKFeqPT3R0NBSEcX5+Pnv27GHz5s2MHj36odts1qxZWFpa8uuvv3Lp0iX69esHBQ8EjIuLY8KECcTGxjJgwAC++OILXF1dadKkCQDHjx+nX79+dOjQgZiYGL7//nsWLFjApUuXCA4OZv/+/er6LFy4kJo1a/LGG2+UWk9cXByKopCamsru3bs5ePCg0T6P4vFImJqB+8P03LlzaDQa5s2bh7OzM4GBgVhbW2Nh8eefat26dbRu3ZrevXsTHx/PiRMn2LlzJ9OmTYOC59TfunWLTz/9lH/961+88MILKIpCTEwMvr6+UPAI5nbt2jFs2DCqVq1KnTp1CAoKYtCgQTg4OODv70/lypXJz89n2rRpTJkyhc6dO2NjY8OAAQPIzMzk4sWLXLhwgaysLD7//HMcHR2xs7PDy8sLS0tL9Tjkpk2byMzMZMSIEaSlpZGSksL+/fv5448/WLFiBf/73/9Yvnw5APv37+fmzZuEhIQQHx/P7du3mT9/Pu+//z4WFhYPdCp9+fJlRo8ezQcffKC2boOCgggJCSEgIIB//vOfuLu7qyEaGxurjuPk5MSkSZOYOXMmr7zyykO32alTp7C0tHygqz6dTsekSZPw9/fHwsICW1tbMjMzSU5OVsN0xowZdOzYkcmTJ2Nvb09kZCQ1atSgbt269OjRg/j4eK5cuUJycjKLFy9m/vz53Llzp9R6dDodtWrV4tNPP8XKygo7O7ty+nSKspIwNbHk5GSuX7+ufkljY2OpX7++2kP9pUuXyMnJwdvbG71ez/r163nttdfw8/MjPj6eDz/8kDfeeEN9lEd2djaRkZFkZWWxePFi3N3d8fX1Ra/Xq63N2NhY9Yte+Pr+kIiPj8fX1xetVktKSgrPP/+8+l7h8+Vr1qyJTqfD0dHRYFobGxvc3d3Vk2lLlixh8ODBODo6EhUVhaWlJT4+PlSuXJmXXnqJzp07c+zYMSg4fPHiiy/Stm1bzp49y1dffYWbmxsDBw7E2traoGV6584dhg4dSteuXdVnPBUnLy9P3ZbR0dF07NiREydO0LNnT1q3bs1rr70GBcdZS9tmkZGRBAQEUKlSJXXet27demD7UHBCsXA9s7OziYiI4PTp0zRo0IAGDRqwdetWNm7cSKVKlWjYsCFeXl4cOHCA2bNnq+v/sHp0Oh3PPffcA/21CtORZ0CZWHR0NBYWFmq4FQ26mJgYbGxs8PDwYN++fWRmZvLiiy+i0+mYPHky1atXZ82aNZw7dw4KwhRAo9Goj+NwcHBQW7YUfNnv74E+NjaW7t27G7weN24cGRkZUPCcp0Lbtm2jefPm1K5dG61Wa1BrocaNG5OYmMjvv//O6dOnWbx4sbouHh4e2NjYQMFZ+itXrhAUFERGRgZhYWH8/PPPuLu7Y2VlxRdffMG2bdvQaDRYW1urLVO9Xs+4ceOws7Pj888/L3Hbnj17luTkZIKCgtTld+nSBScnJ15//XWGDx/Ohx9+iLOz80O3WWRkJE2bNjWYv1arxdramqL96sbGxtKoUSNsbW3Vv8eyZcto1qwZtra2BoEM0L17d5YuXUpSUhK///67Ovxhf8N27dqVuO7i6ZOWqYlFR0fj6elJlSpVoOBL4ufnp74fExODt7c3VlZW/PDDD7z88svY2dmpLZWpU6fi4OCgfkGzs7MJCAjAxsaGBQsWoNfriYuLU8P21q1bJCcnq8so3GUvfJ2VlcX58+fx8/PD29sbGxsb1q9fT25uLrt27SI0NFR91LJOpys2TAMDAzl06BD/+c9/6Ny5s/oo56ioKNzc3EhNTSUiIoKxY8cSHx/PiBEj+Pnnn3Fzc6Ndu3ZYWFjQuHFjXnjhBfXEyv0t0xkzZnD06FFmzJjBhQsXSEhIICcnB71ez+TJk4mKiuL48eOMGTMGLy8vevToQU5ODgkJCerhlK5du1K7dm1WrFgBUOo2o+DZVufPn+fKlSvqZVg6nQ4vL68HWof3/8jY2NgQEBDA4sWLycjIIDU1lfDwcIPxg4ODOXnyJO+99x61atUqUz0lbXthOhKmJlZ0F7u4XfAmTZpw69YtduzYoe6W2tnZ0bt3b0aMGAEFYUPBSZratWvzzTffsGHDBvz8/Bg9erTaqtNqtVhZWeHj4wMFJzIA9VhcXFwcer0ePz8/ateuzaJFi1iyZAnu7u7Mnz+flStXqru1Op1One5+AwcOJD09nd27d6snhij44dizZw/+/v6MHDmS/Px8wsLCaN68OevWrWP48OHquEWfJVWpUiWys7PZv38/ixcv5saNG/Tu3Zu2bdvStm1b7ty5Q0ZGBmfPnqVPnz68+uqreHl5sWnTJipVqkR8fDy5ublqmFpaWjJkyBBWrlz50G0GMHr0aMLDw2nRogXbtm1Tt2Vx6190+KJFi0hPT6dNmzb07NmTCxcuGIz/3HPP0bFjR15//XV1WGn1pKWlkZqaWuyyhenIY0tEuZg+fTo7d+4kPDxcvWxJiIepyI8tkWOmwqjCw8M5cOAAS5cuZdGiRRKk4i9DwlQY1cyZM0lLS2PWrFkMGjTI1OUI8dRImAqj2rFjh6lLEMIk5ASUEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpEEIYgYSpqBA6dOjAwoULTV2GECWSMP0Ba25+AAAgAElEQVQL2bJlC8HBwbi6utKkSRPefPNNrl27VubpV69ezZw5cwyGzZ07l86dO5dDtf/fvXv3SEhIoGnTpiWO8zTqALhy5QrDhw8nOTm53JclKhYJ07+IBQsWMH78eHr16sWOHTuYP38+x44dY8yYMWWex8KFC3F2djYY1rRpU3r06FEOFf9/sbGx5OXllRqmT6MOgEOHDnHixAlcXV3LfVmiYpEw/Qs4ceIEH3/8MfPmzWPSpEkEBgbSp08fZs6cyeHDh7l+/Trr16+nW7duTJo0CS8vL3x9fZk7d646j3bt2nHu3DmmT59O/fr1SU1NZeLEiQwdOpS7d++q48XFxTFgwADq1auHr68v8+fPByAtLQ1/f39WrVpFu3btcHFxoV+/fty5cweAO3fuMG3aNHx8fHB1daVVq1Zs27YNgNOnT9OwYUOqV69e7PoVreO3337j+eef5+uvv8bPzw83NzemTZsGQEJCAr6+vsybN4/mzZvTsGFDRo8eze3btwGYNGkSgwYNUud98eJFHB0diY6OZuPGjUyYMIH09HSDef7vf/+jS5cuuLq60qFDB86cOQPAW2+9RatWrbh3756R/6LCHEmY/gUsXrwYT09Phg0bZjDcxcUFgNTUVDIyMjh//jw9evQgMjKSKVOmMHfuXI4dOwbAxx9/jL29PUlJSVy8eJHatWvzxRdfqIcMAC5cuECfPn3o3r07Z86cYenSpcyZM4ejR49ia2tLSkoKR48eZdOmTezYsYMjR46we/duFEXh9ddfJy4ujv3793P27Flyc3O5efMmFIRpaa3SonXo9Xq0Wi2KonD06FGmT5/Ot99+S3p6Ovn5+Vy9epUqVaqwf/9+1q9fz549e1iyZAkAWq0Wf39/dd6xsbFYW1vj4+PDwIEDad68OdOnT+fSpUt88sknKIrCyJEj6dmzJ9HR0UyePJlGjRoBULVqVapVq4alpaWR/6LCHEmY/gUcPnyYvn37YmFh+Oe+ePEiAHXr1iU5OZkuXbrQs2dPHBwcGDlyJFWrViUhIQGAiIgImjdvbjCPzMxMkpOT1RCbPXs2HTp04M0336Ry5cp07NgRFxcXYmNjOXfuHBqNhnnz5uHs7ExgYCDW1tZYWFiwefNmjh8/zvLly3F2diY/P5/k5GSCgoKgIEybNWtW4voVrePs2bMEBATw9ttv4+DgQPPmzQGwsLAgOTmZOnXqMGHCBKpVq0abNm147rnn1PXU6XQPhKmXlxeVKlUiNzeX6OhoWrRoob6vKAr5+fkkJSVha2vLSy+9pIbn3Llz2b17N9bW1k/8NxTmT8L0LyA1NZV69eo9MHzXrl34+flRvXp1dDodfn5+6ns5OTncuXMHR0dHACIjIw1ChIJWnKWlJT4+PgDs3r2b559/Xn1fURSuX79OrVq1iI2NpX79+lStWhWAS5cukZOTg7e3N5s2beKFF16gRo0aAJw8eRJbW1saN25MTk4OcXFxBAYGlrh+RevQarUG65KYmEjt2rWpUaPGA+sJcOPGDWrWrMkff/xBRkaGwfuxsbFquEZHR5Obm2vQSrawsGDTpk3Ex8fTokUL9u3b99C/h3g2SZj+BTg5OZGYmGgwLCoqis2bNzN+/HgoCKDClh3Ajh07sLW1pX379lBw3LVooMXGxtKoUSNsbW3R6/XcuXOHunXrqu/v2bOH/Px8OnXqRGxsrMH8Y2JisLGxwcPDg6SkJBo2bGiwbH9/fywtLTlz5gw5OTkG0xZ1fx2Fr319fQ3eL5xeq9UavJecnExUVBTdunUjLi4Oa2trvLy8oODHICIiQg3TyMhIPD09sbOzM1h+06ZN1R+S99577yF/DfGskjD9Cxg0aBCrV69m3bp1REdHs2LFCl5++WVefPFFhg0bRkZGBsnJyWRlZXHjxg22bdvGv//9b6ZOnUr16tXJy8vjxo0baLVaLl++zK1bt6BIAFtYWODn58fmzZu5e/cucXFxTJ06lXfeeQdHR8cHWosxMTF4e3tjZWWFq6urGvbh4eGEhoZib28PQHp6OgD5+fklrt/9deTn5xMfH//Asu4P07y8PG7dukVERASvvfYazz//PN26dePu3bvo9XquXbtGdnY27733HsnJyeq80tLSSE9PJykpiQsXLkBB8B85coT09HRu3rypHi89ceIEQUFB7N6926h/S2G+JEz/AqZMmcKIESP46KOP6NWrF2vWrGHatGksXboUCgLG3t6ehQsX0qRJE2bPns17773HhAkTALCysmLs2LEsXLiQdu3acfbsWXW6+1t5X331FUlJSXh6evLaa68xduxYQkJCoEjrsOjrGTNmoNVqadasGSEhIfTs2VM9htmyZUuCg4MZPHhwiet3fx2JiYncu3fvgWX5+vqSn59PQkICJ0+exM/PjxEjRtC+fXtCQ0MB6Nq1K61ataJNmzZ069ZNnb4wTPv374+trS2tW7fmww8/BODgwYMMHz6cVq1aYWtry+effw5AdnY26enp6tUK4tmnMXUBj2P58uWhAQEBIz09PU1dyjMhNDSUdevWsWvXLlOXUq4SEhJo164df/zxB5UrVzZ1OaIYO3fuvJWZmdl13LhxJ0xdy6OSlqlAq9Xi7e1t6jLKnVarxc3NTYJUlAsJU4FWq1VPujzLdDrdX2I9hWlYmboAYXrbt283dQlPxdSpU01dgniGSctUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMJUCCGMQMLUxFJTUxk6dCgNGjRg2bJlxY7ToUMHFi5c+NRrKyouLs7UJRjFtm3bcHNzQ6/XA3D8+HEcHR1xdHSkbdu2T6UGUyyzUGhoKGFhYUaZ17Jly9T1GD16dInDCp/m+iyTMDWxyZMnY2trS1xcHMOGDSMtLQ1/f382b94MwL1790hISKBp06bqNL///jujRo16qnV+9dVXBo8tTk1N5Z133sHX15d69erRqVMnteayuHLlCsOHDyc5OVkdVnTdy0tUVBQBAQFYWPz58dfpdNjZ2aHT6di5cycAK1aswN3dnXr16tG2bVumTZvG1atX1Xns2bMHf39/zp8//9DlrV69mjlz5hgMK26ZjzL948rMzGTu3LlER0cbZX6vvvoqOp0OJycnGjduXOKwyMhIvvjiC6Ms01xJmJrQzZs3CQsLY+LEiVSuXJkqVapQtWpVevbsiYeHBxQ8pjgvL88gTNetW4eV1eM/caa0Z9AXZ//+/ezYsYO33noLgMuXLxMcHExsbCxff/01W7dupVOnTowZM4bDhw+XaZ6HDh3ixIkTuLq6qsOKrnt5OX36NM2aNVNf63Q6fHx8qFu3LtWrVwfg6NGjtGjRgrCwMCZPnsyuXbvo2rUr169fB6BBgwb06NEDR0fHhy5v4cKFODs7GwwrbpmPMv39HuXv+eWXX3Lt2jViYmLKPE1p7O3tqVKlCleuXFEft13csO7du/Pll1+Sm5trlOWaIwlTEzl58iTt27dHURTGjRvHBx98QEpKCs7OzoSGhtKwYUMo+OI3bNhQ/cJNmjSJtWvXsn37dtzc3Ni6dSsAOTk5zJ49m4CAAJydnenatStarRaAXbt2Ub9+febPn0+rVq2YOHEiubm5hISE4Onpibu7Ox999FGxdebn5zNlyhQmTJigtuQmTZqEjY0NW7ZsoVu3bgQFBTF79my8vb3Ztm0bAB07dmTatGl07doVNzc3evXqRXx8PAAbN25kwoQJpKen4+bmxrRp04pd95s3bzJx4kQ8PDxwd3dn7Nix3L59G4BPP/2UN998k7fffpsGDRrg5eXFxo0b1boPHjxIcHAwLi4ueHp6MmTIEPWLHBUVZfDjFBcXp7agCsXExNChQwcCAwMZOHAgv/zyC9evX+eHH37gp59+onXr1pw6dYpq1aoBcPv2bUJCQvDx8cHFxYVJkyYB0K5dO86dO8f06dOpX78+qampxS4zOTmZV155hfr16xMQEMAvv/xS4vS3b9+mZs2azJ07l86dO9O6desyfeaSk5NZvHgx/fv3f6Bl2r9/f+bOnctLL72Ei4sLrVu3RqvVsmHDBpydndVDIgBz587F39+fvLw8dV0ANTiLG1atWjVyc3OJjIwsU60VkYTpE4iKimLZsmVl2tUrqnnz5kyYMAFPT0+OHTvGBx98gIuLC19++SX169fHwcEBCsL0/i/+rFmzsLS05Ndff+XSpUv069cPgJEjRxIWFsbq1atJSEjAycmJb775BgpaQVlZWdSvX5/w8HA+++wzVq5cSVhYGDt27OC3336jR48exdYZFhbGrVu36NWrFwBnzpxh586dhISEUKVKFYNxXVxc1LC4fPkyaWlprF27loMHD5Kdna0+0G7gwIE0b96c6dOnc+nSJT755JMH1j0nJ4cBAwaQnZ1NREQEhw4d4vjx4yxevBiArKws9uzZQ58+fYiJiaFTp0785z//AeDw4cMMHz6c8ePHc/HiRWbMmEFMTAzW1takpKRw7do1g22q0+kMgu3u3bskJiYSEBCgDnN1dcXT05OkpCQGDRrE4MGDadKkCQB6vZ6hQ4cSGRnJ+vXriYuLU1vxH3/8Mfb29iQlJXHx4kVq165d7DLfe+89KDiW+u233xIUFFTi9HFxcSiKQmpqKrt37+bgwYNl+szNmjWL5s2bq9vl1q1b6nu3bt1i586dzJ49m1OnTqHX61m5ciW+vr5kZ2dz6dIlKPjRDg0NZcyYMereUVxcHLa2tri7u6vzK25Yfn4+SUlJZaq1IpKnkz6mw4cPq0Gm0WjQarXUrVv3keYRGxv7QItIp9OpX1IKwrR///7q61OnTmFpaYm/v786bO/evezcuZNdu3bRvHlzkpKSOH/+PO3bt4eCRzn37t2bwYMHA2BnZ0d+fj6ZmZncuHGD1q1b4+npWWyNGzZsoG3btlhaWgJw5MgRLCws6NOnzwPjXrx4keDgYLKysrhx4waTJ0/GxcUFCgK0MAhzc3OJjo7m/fffL3Hdf/jhB5KTk9mxYweVKlWiRo0atG/fXm1tnzt3jldeeYXevXsD4OfnR3x8PIqiMHnyZMaOHcuAAQOg4ORHYTidPn0aOzs7vL29AUhPTyc1NdWgVRUbG0t+fr7BNga4ceMGDg4O6t97yJAhUPB015MnTxIREaF+Bgp/DCMiImjevLnaqi9pmfn5+Vy5coX8/Hz171bS9Dqdjlq1avHpp59iZWVVpkM+p06dYuPGjezcuVP9W8fExKjLOnfuHEuWLFHXuUGDBlhYWODl5YWlpSWJiYk0aNCATZs2kZmZyYgRI9R5x8XFqeOVNCwjI4Ps7GxycnIeWmtFJS3Tx7Rp0yb1/4qiPNbZ0djYWIMvFAXBVxgoOTk5xMXFERgYqL4fGRlJQEAAlSpVUocdOXIEe3t7BgwYQMOGDenatSu9e/fmzTffhIIvX6dOnQyWM3bsWMaNG0f//v0ZO3Ys9+7dK7bGw4cP07x5c/V1amoqtWrVonLlygbjnTlzhvPnz/Pcc88RFxeHjY2NwbHPGzduqMcXo6Ojyc3NNWgdFl333bt3065dO4P1TEtLo1atWuq28/PzU987e/Ys3t7exMTEkJCQYPBlj4iIUMM0KioKPz8/g5NPgMGPWkxMDLVr1zb4cYyNjSUlJYWWLVuSl5fHmTNn1L/dgQMHaNOmTbE/ppGRkbRo0cJgWHHLXLBgAY0aNaJVq1Z89dVXD53+ueeew9ra+oHllWTmzJn07duXli1bUr16dRwdHdVd/UuXLpGRkWGwPRMTE/H29sbGxgZ3d3fOnDkDwJIlSxg8eLDBseK4uLgHPsdFhxWezS/t2G9FJ2H6mF5++WX1/xqNhr59+z7S9Pn5+SQkJODj42Mw/P5AOXPmDDk5OQYt1cjIyAdCCCAgIICzZ88SFRXF2bNnmTlzJhYWFuoX//55AFhaWjJt2jT27t3LL7/8wn//+98H5pmens7NmzepX7++OszJyUkdfr/Zs2fToEEDevbsiVarxcfHR22V6PV6du7cSffu3dV18PT0xM7OrsR1z8jIwMnJSX3v+vXrHDlyhODgYDIzM7l06ZLBOsXExNCkSROSkpKwsrLCzc1NXYfjx4+rJ5xiY2MNptPpdFStWtXgRFjh2f5Cd+/eZdKkSXh7exMcHExiYiLZ2dnqfG7fvv3Aj0uhEydOGPwYlrTMWrVqERoayty5c3n//fdJT08vcXqtVvtAeJUmLCyMI0eOsG/fPho2bEjDhg25deuWehIqNjYWBwcH6tWrp277+7dv48aNSUxM5Pfff+f06dOMGzfOYP7FHXMuOuzYsWNYWlqqP2rPIgnTx9ShQwf279/P3LlziYiIoE6dOo80fWJiIvfu3TP4wF29epW0tDT1Q1z4hbr/bG1qairnz5/nypUrpKSkANCyZUsiIyPZtWsXer2e/fv3qy3Ns2fPkp2dbfDly87OZtGiRVy+fJmUlBT0er3Bsa1ChScYCndZAXr16kWVKlV466231GOZI0aMYP/+/SxduhRra2t0Oh3W1takpaWRmJjIW2+9RUZGBm+//TYUtDDT09NJSkpSWyxF1z0gIIC9e/dy5coV0tPTmThxIi1btiQ4OBitVouFhYX6Q5SXl0d8fDxNmjTB1dWVvLw8zp07R25uLpMnTyY3Nxd7e3t1m96/PQvPqt8vJiaGWrVqERsby4YNGwgODiY5OZk1a9ZgZWWFVqulZs2aaks0KCiIPXv2sHv3bq5cuaKeCMvLy+PGjRtotVouX76sHqMsusz4+Hh++ukn0tPTuXz5MjVr1qRatWqlTn//D0JYWBheXl5qi7fo3/CDDz7g//7v/7h48SIXLlzgwoULDB48WG2ZFv2BKQzZws9MYGAghw4d4j//+Q+dO3c2+MzevHmTy5cvG3y+iht29OhROnfuXKarHyoqCdMnEBgYyNixY4sNoofRarVYW1sb7AprtVoqVaqkHtMqDI/CY50Ao0ePJjw8nBYtWqhnznv37s2ECRP417/+hb+/P59++ik2NjZQ8MVzcnIy+BCfOXOGtWvX0qJFC6ZMmcLXX3/9QOuHgtZSpUqVDE401a5dm59++olr167x4osvMnbsWCpXrsyePXvU3VGtVkt2djZt2rShW7duZGdnExYWRo0aNaDgzLGtrS2tW7fmww8/LHbdJ0+ejLe3N23atKFDhw7Uq1eP77//Ho1GQ2xsLJ6enuo6JiQkqC34whN7ffv2pWPHjlSpUoXatWurVxK88cYb7Nmzh59//hmK2R3V6/VotVp++ukngoOD+eKLL+jTpw+HDh3Cy8tLrfX+8Bk1ahRDhgxh/PjxtG7dmi1btgBgZWXF2LFjWbhwIe3atePs2bPFLvPUqVN89NFHNG3alL1796qXvhU3fVpa2gPHW/39/bl7967BdbCFVqxYwdWrVwkJCTEY3qhRI+Lj48nNzS02TF1dXdUrFQYOHEh6ejq7d+9m/PjxBvMpy5n8u3fvsmfPHiZOnPhAfc8SjakLeBzLly8PDQgIGFnSSZOKYOrUqURERPDbb7+ZupRSDRw4kJEjR/LCCy+UeZrGjRuzaNEiunXrVq61GUOjRo3497//rR5frojLTElJYfjw4fz3v/99pOOoj2L69Ons3LmT8PBwNJr/HxsrV65k5syZJCUlqcOLDlu+fDlHjhxhxYoVD13Ozp07b2VmZnYdN27ciXJZkXIkLVMT2LRpEz/88IN6qZA5mzBhAr///nuZx09LS+PatWvq2XJzlpKSws2bN6lbty5paWkVcpn5+fl8/PHHrFmzplyCNDw8nPnz57N06VKmTJmiBua9e/e4evUqp06dwsfHB41GU+ywpKQktm7d+szf/YRcGmUaVatW5eDBgzRo0MDUpTxUly5dHml8rVZL5cqV1ZMZ5qxwd3TMmDEEBARw4MCBCrdMS0tLFi1aZKTqHjRz5kzS0tKYNWsWgwYNUod/9913zJw5E4Dhw4eXOCwmJoZVq1YZHHd/VsluvhDCbMhuvhBC/MVJmAohhBFImP5F/O9//8PV1RVFUco8za1bt7hy5Uq51vW0FO0TdsCAAWqfm8bq8k+n06nzvP860sfpu0FUPBKmJhYSEqJeL1qe4uPj8fDwMLispTSXL19mxIgR2NraqsO2bNlCcHAwrq6uNGnShDfffJNr166VuYbi1rWw56PyVFyfsDqdjpCQEHQ6nXrZV79+/Zg2bVqZ5llcf6weHh7odDr69etncGH7hAkTyMjIMOo6CfMjYWpCKSkpfPfdd490a+Djio+PVy+IVxSl2Au8CymKwtixY/nHP/6hdv23YMECxo8fT69evdixYwfz58/n2LFjjBkzpkzLL2ldmzZtWmKPVcZStE/YmzdvcuXKFVq0aEHdunXVS4q6du1Ky5YtyzTP4vpjrVSpEnXr1iUpKclgPZs1a8bq1auNvl7CvEiYmkhycjItWrTAwsKCLl26qJcg6fV6/vOf/xAYGEi9evXo06cPCQkJAKxfv55u3boxadIkvLy88PX1Ze7cuWVaXmEvPgAffvghb7zxRonjbty4kczMTLp27QoF94d//PHHzJs3j0mTJhEYGEifPn2YOXMmhw8f5vr166XWVtK6Tpw4kaFDh3L37l112du3b6djx464uLjQpk0btRf6wl74V61aRbt27XBxcaFfv37cuXMHgDt37jBt2jR8fHxwdXWlVatWaiu4aJ+wxXU00qJFCz766CO1v4DS+kstrj/WQnq9noSEBIMwdXJyYs+ePWX6O4mKS8L0CTxJf6aurq689dZbdOvWjUuXLrFv3z4o6Nfyl19+YePGjcTFxVG9enX1VsCMjAzOnz9Pjx49iIyMZMqUKcydO5djx449dHmFLdO5c+eyadOmUq9N/PLLL9XrBAEWL16Mp6cnw4YNMxivsHu91NTUUmsraV2/+OIL9ZABwNatW3n77beZNWsW58+f55VXXmHcuHFkZWVha2tLSkoKR48eZdOmTezYsYMjR46we/duFEXh9ddfJy4ujv3793P27Flyc3PVzliK9gmr0+mwt7c3uBb2p59+AlBrKa2/1OL6Yy104cIF7t69axDUz3o/nuJPEqaP6fDhw3Tu3JkpU6bQsmXLUnebSxIREWHQvVpCQgJLly7lm2++wdvbG3t7e/r27UtsbCwUtPC6dOlCz549cXBwYOTIkVStWlVtuZbk5s2bXL16lY0bN/LDDz+wbdu2Ei+qj42NRavV0qFDB4N17du3r0GfmhT0XwpQt27dh9ZWdF0peB5RcnIyTZo0IT8/n2nTpjFlyhQ6d+6MjY0NAwYMIDMzk4sXL3Lu3Dk0Gg3z5s3D2dmZwMBArK2tsbCwYPPmzRw/fpzly5fj7OxMfn4+ycnJBn2YFn1MSePGjQ2OH8fFxVG1alW1t6n7+0utWrWqQbd9hf2xFl0fSrhXPS0t7Znux1P8ScL0MT1pf6Z6vZ5Tp04ZfCH37NlDzZo1DfqVTE9PV/vw1Ol0Bu/l5ORw586dh/bEU/gF/+233+jZs2epd14dOnTIoPNkClqexYXvrl278PPzo3r16qXWVty6UnC3lKWlJT4+Pmi1WlJSUnj++efV9wtvt6xZsyaxsbHUr1+fqlWrQkEfnDk5OXh7e7Np0yZeeOEFtSOVkydPYmtrS+PGjYvtE7a4LuOKdmtXUn+plNIfa+G8XVxcDO74uXDhwjPdj6f4k4TpY3rS/kzj4+PJzMw0+EJmZGQ80MHwtm3bCA4OhmJ6K9qxYwe2trYGPbOXtKzCXpdCQ0M5cuRIieOeO3cOV1dXg17TnZycSExMNBgvKiqKzZs3q70IlVZbcetKQWA1atQIW1tb9Wz3/X2Ybtu2jebNm1O7du1iezYq7IA6KSlJfW5U4bL9/f2xtLQstk/YksK0cJzS+kullP5YS5r38ePHy/ycJlFxSZg+piftz7TwWUmnT5/m7NmzKIpCYGAgZ86cISIignv37jF//nz++OMP/v73v5ORkUFycrL6SJBt27bx73//m6lTpz706ZZxcXE0a9aM3r17M27cOLV/0eLk5eU9cB/1oEGDWL16NevWrSM6OpoVK1bw8ssv8+KLLzJs2LCH1lbculIkwAp7dV+/fj25ubns2rWL0NBQ9V5vrVZr0FKMiYnB29sbKysrXF1d1bAPDw8nNDTUoP9S7usT9urVq6Snp5faKXdp/aVSQn+shXQ6nUELNz4+nvT0dINHz4hnk4TpE3iS/kxbtWpFmzZtePXVV/nb3/4GBf2Sjh8/nqFDh+Lr68upU6fYvn07derUQavVYm9vz8KFC2nSpAmzZ8/mvffeY8KECQ9dVnx8vPoFnzFjBlWrVi3xekpnZ+cHHpQ3ZcoURowYwUcffUSvXr1Ys2YN06ZNY+nSpVAQPqXVVty6UmTXunbt2ixatIglS5bg7u7O/PnzWblypbrbX7Rlev/rGTNmoNVqadasGSEhIfTs2VM9Vlu0T9jijmneu3ePc+fOqfMrrb9USuiPlYLATkxMNJj3tm3beO6558p8yZWouKSjkwoiNDSUdevWsWvXrnJdTnh4OP/61784dOiQ2dVmDN9++y1z5sx5oEVpDGfOnKFNmzbs3r2boKAgsrOzadeuHatWrTJ4DIooWUXu6ES64KsgtFptiX2ELlq0iO+//77Y90aOHFnqNaVFtWrViho1anDjxg31hM6T1GZudDodjRo14urVqzg4OJT47KZHodfrSU1NVTtOLjw8MGvWLCZNmiRB+hchYVpBaLXaEu8UmjBhQpl298vqm2++IS0t7ZHCtLzvYjKWuLg4Tp06ha+vL2vXri32kdWP6vTp0+pTBRo2bIidnR23bt2ibdu2j/SEAlGxSZhWENu3b39qy/RPMGsAACAASURBVHrUjp2fZm1PqrinsD6p5s2bc/36dYNh1apVkyD9i5ETUEIIYQQSpkIIYQQSps+Id9991+CR0M+awkuaKrpt27bh5uaGXq+Hggv6C/tAbdu2LQCvvvoqH3/8sdGXXfQzMnLkSHXZhU8OLY+rHP4qJEyfEUXvP3+WfPXVV+zevVt9nZqayjvvvIOvry/16tWjU6dOj9TB8++//86oUaMMhhX2SmWsjqJLEhUVRUBAgHqfv06nw87ODp1Op/aQpdPpKI/L/op+RhYsWKAeQy68aysyMvIv8STR8iBh+gzQ6/XExsYWe6+4uSi8A+lR7d+/nx07dvDWW29BQafVwcHBxMbG8vXXX7N161Y6derEmDFjOHz4cJnmuW7dOqysDM+9Vq1alZ49e+Lh4fFYdZZVcZ2u+Pj4ULduXapXr67eymrsOor7jNSoUUO9Q6zwRoPu3bvz5Zdfkpuba9Tl/xVImJpIbm4uISEheHp64u7uzkcffQTA7du3CQkJwcfHBxcXFyZNmqROs2zZMlq2bImzszN+fn5q129nzpzh9u3bBl/S8PBwXnrpJVxdXfH09GTWrFkPrSk5OZlXXnmF+vXrExAQwC+//FJqTaX1vbpr1y7q16/P/PnzadWqFRMnToSCMBw/fjweHh64ubkxfPjwEm9tzc/PZ8qUKUyYMEFtyU2aNAkbGxu2bNlCt27dCAoKYvbs2Xh7e6v9l3bs2JFp06bRtWtX3Nzc6NWrF/Hx8er0a9euZfv27bi5ubF161ZSUlJwdnYmNDRUvcf/5s2bTJw4EQ8PD9zd3Rk7diy3b9+Gh/R1CnDw4EGCg4NxcXHB09OTIUOGqOEUFRVlEGhF7+WPi4tDURS+++473N3dadeuHQcPHlTfL62u0v4exX1GCpfn5OSkXgZXrVo1cnNziYyMfOjnRRiSMH0CT9Kf6cqVKwkLC2PHjh389ttv9OjRA71ez9ChQ4mMjGT9+vXExcWpLbLPP/+cr7/+mmXLlvHHH3/QoUMHtY/MqKgoatWqpfb6fvz4cfr160eHDh2IiYnh+++/Z8GCBVy6dKnUmt577z11+m+//ZagoKBSayqt71WdTkdWVhb169cnPDyczz77jOvXr9OrVy/u3bvHvn37iIyM5OTJkyVeWhUWFsatW7fo1asXFATCzp07CQkJeeCWVxcXF7UPgMuXL5OWlsbatWs5ePAg2dnZTJ06FQoupLe0tOTXX3/l0qVL9OvXDxcXF7788kvq16+Pg4MDOTk5DBgwgOzsbCIiIjh06BDHjx9n8eLF8JC+Tg8fPszw4cMZP348Fy9eZMaMGcTExGBtbU1KSgrXrl17oG/V+8NUp9NhY2PDyy+/TEREBK1bt2bUqFFkZGQ8tK7S/h5FPyMlLR/pf/WxyXWmj+nw4cP069cPCnqN0mq1/4+9Ow+P8Vz/AP6dGdn3QWQREUESWSSIFLGFktIKVd0stVRLc4pT27FvrVO01ZaUIKI41HJo7S3RaKWIaPZJJCF7ZCcJ2TP374+TeX9GFkk7TCL357pcl3nnXe6Zd/Kd513meer0+NSYmpoalJSU4P79++jfvz+6d++O06dPIzw8HGFhYcK6DA0NkZGRgc2bN+Pw4cNwc3MDagdpmzhxIgAgIiJC6Q901apVGDx4MBYtWiS0MkxMTJ5aX01NDbKzs1FTUyP0RNVQTYq+V3/77Tfh109jx47F2rVrgdob+V955RXhgoeenh6++uorPHr0CH5+ftDT00NISAiKiorqdDqicOzYMbz00ktCD1YhISEQi8X13miflpaGl19+WehsZdGiRULn1W+88YYQOBEREZBIJHByclJaPi4uTvjt/aFDh5CZmYnz589DU1MTJiYmGDRoEGQyGfBEX6cA4OjoiNu3b4OIsGjRIsyePVvYNykpKUr9qj7evWFBQQHy8vKUfsuv6EtW8SOI5cuX48CBA0InMQ3V9bT98eRnRCE+Pl6p79ri4mJUVFRw/6t/AbdM/6K/25/p7Nmz8eGHH2LChAmYPXs2ysvLceXKFXh4eNTbDV+nTp2EYUQqKioQHR0t/JFGR0cLfyiKVktkZCSsra1hbW2NU6dO4fjx49DU1Gy0pq1bt6Jbt25wd3fHtm3bAKDBmprS9+qQIUOUlrl69arwc0srKyvMmzcPW7duFV7Hk65evSp8eaD2wlOHDh3q/AQ0MTERycnJGDhwIOLj44Wu+RTu378v9Pl669YtODs713kvHu816tKlSxgwYIDSPPn5+cJra6iv05iYGCQkJGDatGnCc2FhYcLri4qKUupkur7hU2QymVLoKXrYqq6ubrSup+2Pxz8jCnK5HImJiUrbV1zN5/5Xm4/D9C/6u/2ZSiQSLF++HJcvX8ZPP/2En3/+GQ8fPqz3t+JpaWlKPVMFBQWhqqpK6PD48b42FXbv3o3o6GikpKTgwoULSqHUkA4dOiAwMBCbNm3CmjVrUFBQ0GBNjfW9Wl1djcTExDo1AcDMmTORmJiI+Ph43Lp1C5MmTaq3loKCAjx48ABdunQRppmZmQnTH/fpp5/C2toao0ePhkwmg52dndCalcvluHDhAkaOHAnUhml9LbTHw7S4uFipX9XCwkKEhITg5ZdfbrSv09TUVLRr107orb+goAChoaHCecone76Ki4uDgYGBcOhNRIiJiVHqyPrYsWMwMDBAv379Gq3raX3h1vcZSU5ORnl5uVKY3rhxAxKJpMEvONYwDtO/6O/0Z1pRUQE/Pz/cu3cPWVlZkMvlsLGxQZ8+fRAUFIRLly4hOztbuKhhaWmJ9PR0lJeXIzc3F2vXroWGhga0tLRQVVWF4uJi4Wq5lpYWnJ2dsWPHDhQXFwsdcDzN7du3cfToURQUFODevXto3749jIyMGqypsb5X79y5g4qKijojkfbr1w/Hjx9HYmIiysvLERwc3GA91dXVQO0pBQVvb2/o6urio48+Es4ZTps2DcHBwdi1axc0NDQQFxcHDQ0N5OfnIykpSei79eOPPwZqW7fJycnIzs5GVlYWUNvHaX5+vhA2zs7OuHz5MrKzs1FQUIB58+YJXfk11teppaUlqqurcffuXVRVVQmnWR7vW/XxuxoUV/IVkpKS8ODBA6SmpqKoqAgHDhzAv//9b6xfvx4GBgaN1tXY/njyM/L49kUikVKYXrt2DcOGDXvq6A2sLg7Tv+Gv9meamJiIgwcPom/fvli6dCm2b98OFxcXzJgxA2+//TbmzJmD/v3748cffwQATJs2Dba2tujbty98fHwwZMgQVFRUIDU1FRoaGpg/fz6WLFkihIOfnx8KCgrg4eGB0aNHN+lG7IiICKxfvx69e/fG5cuXhduHGqqpsb5X4+LiYGZmVucPcvHixXB2dsa4cePg7u6OixcvNlhPhw4doKmpqXShqWPHjjh69Chyc3Ph4+OD2bNnQ0dHB0FBQcKQKDKZDBUVFfDw8MCIESNQUVGBc+fOCVerZ86ciZs3b6Jv377C1X+ZTAZNTU3h3s5FixahZ8+e8PDwgKenpzBKgUgkarSvUzc3N/j6+mLs2LEYPHgwdHV10bFjR+FOgg8++ABBQUH473//C9Ser3z8C+fy5cvw8fHBlStX4ODgAH9/f3z33Xd47733nlpXY/ujvs+IYvudO3cWhoIpKytDUFCQcOcFax7uz5S1WG+88QamT5/erA5D7O3t4efnJ/Ti1JJ169YNixcvxty5c9Wy/ffffx8lJSU4cuQI8L+/K4SEhAi/hlIH7s+UtQqzZs0SLno86ZtvvoG7u/tzr6kxvr6+CAoKanKY5ufnIzc3t1X0rZqVlYUHDx6gU6dOShe3nofi4mKUlZUpdZ2YmpqKU6dO4cCBA8+tjhcNh2kbEhAQoO4SmmX48OHNml8mk0FHR6fZXQiqg6Kvgffffx/Ozs64cuXKc9v2Bx98IIyKMH/+fKD2AtX3339fZ/wv1nQcpqxFa06gDhkyBJmZmc+0HlXx8vKq0wfq8/LDDz/Umdbcu1FYXXwBijHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVIDDlDHGVKBVDqhHRFXh4eHyiIgIubprYc8WEYlFIhEAUO0/9gIjolY7PKpI3QX8FWvXrm1nbW3dKr8IWPOEhoYeJ6KxYrF4kru7+xl118OevenTp1eIRKJW98XZKsOUtR0ffPDBKQCvEZHP7t27T6m7HsYawq071qLJ5fLDYrH4z5qamtvqroUxxhhjjDHGWj4+Z8patPfff/8dsVhsV11dfXjv3r18qM9aLL7PlLVoYrH4HQBrJBKJnbprYawxHKaMMaYCHKasRaupqVkul8uHV1RUhKi7FsYYY4wxxhhr+fhqPmvRPvjgg8+IaBCA5bt37/5D3fUw1hA+Z8paOmeRSDQUQAd1F8JYYzhMGWNMBfi3+axF49/mM8YYY4wxxlhz8NV81qLx1XzWWvAFKNbS8dV81ipwmDLGmArw1XzWovHVfMYYY4wxxhhrDr6az1o07mmftRYv/DlTIjIB4KjuOthf4+fn51taWjrI3t6+PCAg4Kq662F/WaRIJCpRdxHP0gvfMiUibwDn1V0HY23cAJFIdF3dRTxLfGsUY4ypAIcpYy+Y6urqNr19dWmzYZqUlASRSIQffvhB3aU8N8XFxQgPD1d3GY2aMmUK7O3t1V3GcxUaGory8nKVrCsoKAhbtmxRyboe15wa4+Li8Mknn6i8hpauzYZpW+Ti4oKAgAB1l8Ees2/fPnh4eODhw4d/e125ubmYNm0apk6dqpLaFJpbo7OzMyIjI3H48GGV1tHScZi2Iapq/TDVUeU+2bhxI/r06YPOnTurbJ34izXOmDEDy5cvb7OH/C8kIvImIsrNzaV3332X9PX1qWPHjvTmm28SADp8+DAp3LhxgwYPHkza2trUvn17mjFjBhUWFtLjAgICqHfv3qSlpUWdOnWi2bNnU05ODlVVVREA+ve//600/9ixY8nDw4OIiMLDw8nAwIDOnDlDLi4upKGhQba2trR3717auHEjWVlZkYGBAfn4+FBubq7Ser777jvq3r07aWtrk729Pa1fv57KysqE9ero6FBwcDC99NJLpK2tTXZ2dvTTTz8Jy1tbWxMA4Z+1tTURET169Ijee+89kkqlJJVKycfHh1JSUqi5AgIC6P79+81e7ocffiB7e3vS0dGhfv36kZubG9nZ2QnPV1ZW0rJly8jCwoI0NTWpd+/edPLkSaV1pKam0pQpU6hjx46kpaVF/fv3pyNHjhAR0YoVK0hLS0tp/ps3bxIAOn/+PBER+fj40NKlS+njjz8mQ0NDMjAwoPHjx1NwcDCNHDmSdHR0yMbGhg4cOKC0nuTkZJowYYLwmRo9ejTdvHlTeN7Hx4eWLFlCK1asIFNTUzI2NqZ3332XioqKiIgoMDBQaZ8AoMDAQCIiOnv2LDk5OZGOjg716tWLtm3b1uj7WFlZSSYmJrR9+3al6U/7TPv4+JCtrS1NmjSJjIyMSCqV0pQpUygnJ+epNTYmPz9f6T0mopfUnQXsbyIi7/Lycurduzfp6urS6tWrae/evdSvXz+lMI2NjSVdXV3q378/HT58mL755hsyNjamESNGCB+QNWvWEACaNGkS7du3jzZv3kwjRoyg+/fvNzlMAVCXLl3ozJkzFBQURE5OTgSAPD09KSQkhA4fPkz6+vo0ZcoUYR1r164lAwMDWrFiBR06dIhWr15NBgYGNHXqVKX1mpqa0g8//EDXr1+n0aNHk66uLuXl5RHVBohUKqXXX3+dfv/9d+GPfuXKlSQSiWj9+vW0Z88e8vT0pPz8/Kf+sTzp1VdfJSMjI1qzZg09ePCgScscOnSIANDw4cNpz549tGLFCpJIJEphOn36dGrXrh2tWbOGjh07Rj4+PiQSiei3334jIqKsrCwyNzcnU1NT2rx5M+3bt49mzZpFX331FVEzwhQAffzxx3Tr1i3asGEDASANDQ3avn07hYaG0uuvv04SiYTi4+OJiOjevXtkbm5OQ4YMoYCAANq7dy8NGzaMtLW1KSYmRlivRCKhd999l0JDQ2nfvn2kqalJixcvJiKinJwcWrRoEQGgM2fO0O+//045OTlUUlIifLkcPHiQli5dSsuWLWv0vbxw4QIBoODgYGFaUz7TPj4+pK2tTV988QWFhobSjh07SCqVkqurK1VVVTVYY1OYmprSzJkzFQ85TFs7IvL+8ssvCQBdvHhR2NFxcXFKYfrOO++QgYGBUuvqwIEDBICuXLlCGRkZ1K5dOyHAntScMD169KjwvOKbX/EHSEQ0c+ZMMjMzIyKizMxM0tDQoOPHjyutd+fOnQSACgsLhfX+8MMPwvN//vknAaD//ve/wrROnTqRr6+v0nqmTJlC+vr6VFlZ2ZS/j0adP3+ehg4dSsbGxrRu3bpGQ7WsrIw6duxIQ4YMoerqamH6W2+9JYRpfHw8AaBVq1YJz8vlcurevTsNHz6ciIjmzJlD7dq1E0LuSU0N0169einNY21tTW+88YbwOC0tjQDQzp07iYjoo48+EgJHobKykrp06ULz5s0T1uvg4EByuVyYZ9y4ceTs7Cw83rFjBwEQvvSIiJKSkggAbdy4scH370nLli0jAJSamipMe9pnWlFj3759ldal+JI7depUgzU2xUsvvUTdunUTHqo7C561NnHO9MSJE3BxccHIkSOFae3aKf/4Kzg4GF5eXjA2NhamjR49GgAQFhaGixcvorq6GnPnzv3b9ejo6Aj/19bWBgBoaWkJ0zp37oz8/HwAwMWLF1FVVYXJkydDW1tb+Pfxxx8DADIyMoTl9PT0hP9bW1sDALKyshqtZfLkySgtLcUrr7yC6Ojop9aenZ2NlJQUpKSkoKCgQOk5b29vBAcH48KFCzh58iR69erV4HquXr2KvLw8LFiwABKJRJj++H65cuUKAOD1118XpolEIowaNQphYWEAgPPnz8PLywt2dnZPrb0xj+8T1O6XJ/cJAGG/nDt3DtHR0dDX1xf2iYGBAdLT05X2ia6uLkSi//9tjLW19VP3Sbdu3TBw4EB89tln2LZtGyoqKp5af3p6OgDAwMBAmPa0z3RDvL29AQA3btx46nYbo6+vj4yMDBDR31pPa9EmwjQtLQ02NjaNzlNUVARTU1OlaVKpFACQmZmJnJwcAICVldUzrPR/RCKR8AHMzs4GAJw5cwYRERHCv6ioKMTFxcHBwaHedWhqagJNuOfP29sbZ8+eRXZ2Nnr37o3Zs2ejqqqqwfnffvtt2NjYwMbGBitWrKjzfEhICNavX4+0tDQh8OuTlpYGAI3ul6KiIgCod7+UlJSgpKQEOTk5z22f4H9HOkDtfnn11VeV9klERARkMhn8/PwaXI+mpuZT94lIJML58+fx3nvvYdGiRejZsyd+++23RpdRfLE9/gXwtM90Q4yMjCAWi1FS8vd+/amtrY3KykqV3KnQGrzwv80HgI4dOyI3N7fReTp37lynpaUIUBMTE+HbPTs7u96rpY+3PlTJxMRE+L8q7r+sr5Xg7e2NUaNG4ZtvvsEnn3yCrl271huUAPDpp58KrbPHgzAoKAjr169HREQEFixYgEOHDsHIyKjBOjp27AjU3s7TEMX7XFBQAAsLC2F6Tk4ONDU1oaurC2NjY+ELpz7Pcr/k5+er7J7YJ/eLoaEh/Pz8sGjRIvj4+MDHxwfp6enQ19evd3lFSJaXl0NXVxdowme6IVlZWZDL5XW+pJrbwiwrK4OGhoZSa/lF1iZapn379sXNmzeRkJDQ4DwDBgxAcHAwysrKhGnHjx8HAHh6emL48OEQiUTYs2eP0nKKVoZEIoFUKlU6hCMioQX2V3l5eUEsFmPbtm1K0x89etTsdenp6dU5xFQcQorFYvzzn/+EpaUl/vzzzwbX4enpifHjx2P8+PHo3bu3MH3lypUYNGgQkpOTsW7dukaDFABcXV0hkUjwn//8p8F5+vfvD7FYjHPnzinVe+bMGQwYMAASiQReXl4ICgpCSkqK0rKK/WJqaoqKigoUFhYKzz05718xcuRI/PHHH7h165bS9ObuF8WpmSf3i+J2JBsbG8ybNw8PHjxAcnJyg+vp1KkTAKC0tFSY9rTPdEMU9yIPHDiw0RoBIDo6Gv7+/vUezZSVldVpGb/I2kTL9F//+hf279+PIUOGYMGCBTA3N69zQ/GKFSvwww8/wNvbG3PmzEFqairWrVuH4cOHY+jQoRCJRJg9ezb8/f1RUFAAb29v5OXlwd/fH7/++iu6du2K0aNH48CBA/Dy8oKZmRm+/PJLxMfHo0+fPn+59u7du2PevHn4+uuvMW7cOIwfPx737t3D9u3bce7cObi5uTV5XUOGDMGhQ4fw+eefQyqVYsCAAbhw4QJ++uknTJ06FVlZWcjMzES/fv2aXWdQUJDQImoKKysrzJgxA3v27EFZWRleeeUV3Lt3D2fOnIGZmRkAwNbWFu+99x7WrFmD6upq2NraYteuXcjJycHBgwcBAKtXr8bp06cxYMAAzJs3D2ZmZvjll1+gr6+P3bt3Y+TIkRCLxZg/fz4WLFiAmJgYLF26tNmv70lr167F2bNnMWrUKCxcuBCmpqa4cOECqqur8eOPPzZ5PQMHDkS7du0wf/58zJw5E2VlZZgxYwbs7Ozw1ltvwdHREd999x2MjY1ha2vb4Hr69u0L1AaeokX/tM+0QkxMDJYtW4aePXsiJCQEe/fuxZgxY4Qwra/GDz/8EKg97SOTyaCnp4cpU6Yo1ZSZmQl3d/fmvbGs5VLcZ/rrr79Snz59SEtLi2xtbWnx4sV17jNV3KeppaVF7du3p9mzZwv3BBIR1dTU0MaNG6lr166kqalJNjY29OGHH1JGRgZR7a0uEyZMIENDQ7KysqKNGzfSmDFj6lzNP336tLDOw4cPEwBKTEwUpq1Zs4YkEonwWC6X0xdffEFdu3YlDQ0N6tKlC3300UfCLSr1rbekpIQA0NatW4VpOTk5wi1TXbt2pRMnTtB///tf6tevH+nq6pK5uTnNnz9fJVf2m6KsrIz+8Y9/kFQqJSMjI3r11Vdp6NChSrdGlZWV0YIFC6hTp06kqalJbm5udObMGaX1REVFkbe3N+np6ZGJiQkNGDCADh06JDy/f/9+srW1JR0dHRo1ahTt27evztX8J69o29nZ0eTJk5WmAaANGzYIj+Pi4mjs2LGkq6tL+vr6NGTIEDp27JjwfH3rXbhwIRkZGSlN27t3L5mZmZGxsTF5eXlRYWEhzZgxg8zNzUlXV5c8PDzo999/b/S9zMvLI7FYTAcPHlSa/rTPtI+PD1lZWdHw4cNJX1+fTE1Nac6cOUrz1Fejgq+vL3Xo0IEiIyOV5i8vLyexWEz+/v6KSS/81Xzugo+xF8Rrr70GS0tL7Ny5s8nLjB8/HhkZGY1e3f8rLl++jPHjx+Pu3bvo0KEDuAs+xlir8fnnn+Ps2bNNupXqWTt69CgWLVqkCNI2gcOUsReEo6MjFi5ciO3bt6u1DsV9yEuWLFFrHc9bWzjM7wlgprrraCGsAFiqu4jmyMjIcCotLW1vbm4eY2BgUNCERVqSNACN36H/DISEhBgPGjTowfPeroJMJtMzMzOrkEqlj99Q+51IJPp7t7a0cC98mLL/R0SfA/j7l7JZUy0TiUSfq7sI9nzwYT5jjKkAhyljjKkAhyljjKkAhyljjKkAhylTmY0bN0IkEkEkEqmkq8LW6I033hDegw8//NBD3fWw54fDtA06cOAA9PX1IZfL6zy3du3aJvUlsHv3bqxZs0ZpWkxMDEaOHIl79+7hiy++AABMnToVenp6MDExQZ8+ffD111+/MGNR/eMf/8CJEyeUpu3atQvXrl0DALi5ueWoqTSmBhymbVBERAScnZ0hFtfd/X379sXYsWOfuo7NmzfD0lL5ltWYmBi4ubnBzMxM6GkoKCgICxYswMWLFzF58mSsXr0a48ePV+GrUY/MzEz4+fnByclJabpUKkVeXh7wv56lOEwZexER0edERF5eXjR37tw6nWXMmjWLANDChQuJiCg9PZ3GjBlD+vr6ZGVlJXTi4eDgQABIT0+P9PX1hQEFNTU1ad++fcL6cnJyCABdu3ZNmHbkyBECIIxBFRMTQy+//DLp6uqSmZmZUkciiYmJNG7cONLX1ycDAwPav38/ERHZ29vT559/LswXGBhIxsbGRLVjRk2bNo2GDRtG+vr61KVLF9qzZw+NHTuWtLW1qWfPnhQVFSUse+3aNfLy8iIdHR1q3769MNbS2bNnydXVlbZs2UIWFhakp6dH8+fPJ6odwkRLS4vEYjHp6elRnz59lN7Hf//732Rubk5E9C9173PG2DOgCNP27ds/3puPoKamhqysrIRAnDhxIo0ZM4aysrIoODhYGLX0559/Jn19faqpqRGWlclkSiFJtYO8icVievjwoTCtsLBQGAfrzp07ZGJiQlu3bqXS0lK6fPkyicVi+u233ygrK4s6depE7733HiUlJVFubi5lZGRQeXk5SSSSx0e9pH/+8580ZMgQIiKaNGkSWVhYUEhICOXl5ZGbmxtZWFjQzZs3KTMzk6ysrGjBggVERBQSEkJaWlq0YcMGKigooKtXrxIASklJodOnT5NEIqHNmzfTgwcP6JtvvlEaB2nZsmU0ZsyYOu8hEdHkyZNp5MiRHKZtTJvoz5T9v/T0dBQUFNTbD2pxcTHS09Ph7OwMAKipqUFWVhaqq6uV+r+8fv063N3dlU4TxMTEQCQSKY37FBERgR49eiiNTaXopNnIyAgrVqzAsGHDsGDBAgDA8OHD0blzZ0RFReHYsWPo3LkzAgMDqSDglAAAIABJREFUlXrLDw8PR01NjVLH1FFRUcLj9PR0zJ07V+iLU19fH2PGjBH6aO3atavQ7+qiRYvg5eWFlStXoqqqCqGhoZBKpTA3N8eJEyfg6uqKxYsXA4CwvOI1X79+HcOGDav3PY6NjW3wOfbi4nOmbUxERAQkEokQmI+Ljo6GRCIRAnHXrl3o0aMHevbsiS1btgjz3bhxAx4eyheqY2NjYWNjo9RBdEREhFLoAcDZs2chkUjQr18/nD9/XmmQQyJCfn4+TE1NcenSJUycOLHOsCPR0dHo2LEjzM3Nlab17t0bRISYmBi4uLjUeU4hLi4OTk5OqKiowPXr13Hr1i0YGhrC0NAQx48fx88//wxNTU1ERUUprSchIQGmpqaQSqWQy+UICwur8x4AgFwuR3x8fJ1zqezFx2HaxkRERMDe3l4YFfVxUVFR6N69u/Bcx44dcfToUWzbtg1LliwRxn4KDQ2tc8U/JiYGjo6OStPCw8Ph6uoqPL579y7Wr1+PGTNmwNjYGA8fPlQKxQsXLqCmpgZeXl4oKSmpt+f+2NhYpaBKSkpCbm4uevfujeTkZDx8+FAIz7S0NDx48EAIxaysLOTn5yuF5OHDh5GRkYGioiKEhIQILdCoqCilL5zIyEjhsUwmQ0lJSb13Pdy5cwfl5eV13gv24uMwbWMiIiJgbW2N+Ph44d+dO3eA2lacIjDi4uJw8OBB5OfnIysrCx06dICxsTGqq6tRWFiIqKgoZGVl4cGD/3VO9GSYlpaWIjExEfr6+ggLC8NXX30FDw8PODs745tvvoFYLIaLiwuOHDmCsrIyyGQyzJ8/H8uXL0f79u3Rv39/fPfdd4iJiUFycjJOnToF1I4rVFBQgKqqKuTk5OD999+HRCKBo6MjoqKiYGRkJAxzHRUVBR0dHfTo0UN4rKWlBTs7O2hpacHV1RVbt27FgwcPkJubi+vX/9d3cU1NDWQymVLoPh6mikEAb926hcTERKWB5hSnOzhMGXuBEdHntra2BEDp34ABA4iIaODAgbRu3Tqi2qE+LC0tSVdXlwYOHEjXr18XLrDMmzePNDU1ycjIiEJDQ4WLQo8PmXHt2jVh/QYGBjRo0CDy9/en6upqYZ7w8HByd3cnHR0d6tGjB3377bfCc2lpaTR69GjS09OjDh060MaNG4mIKCIigmxsbEgqlZKnpye99dZbZG9vT0RE69evJ09PT2EdGzdupH79+gmPN2/eTK6ursLjyMhI8vDwIB0dHbK0tBTqV1xMUwwLo7hoFxAQQEREpaWlNGjQIGrXrh2Zm5uTXC4X5tuwYQNZW1srHvIFKMZeRIqr+aoWERFBACg8PPxZrL5Vefvttx+/ys9h2obwYT772xSHtsbGxigqKlJ3OWpRXFyM7OxsREdH88WnNorDlP1tsbGxICLY2Nhg7dq16i5HLd59912Ym5vXuUDG2g7uab8NIaLuALqqu47mOHv27PCioiIrR0fHX3v37p2u7nqaKUkkEqWouwjGGGOMMcZYW8KH+axFmzVrlpNIJOpQWVkZvX///tY2OilrQ/gCFGvRJBLJRrFY/KuWltYgddfCWGM4TBljTAW41yjW0kUTkSGAfHUXwhhjjDHGGGMtH1/NZy0aX81nrQVfgGItGl/NZ60FhyljjKkAX81nLR1fzWetAp8zZS3G7NmzawCInxz3iYiUxoJSPN61axd/flmLwYf5rMUQiUSHRCJRRT3T65td/lyKYqyJOExZS7KCiJpy6omI6OZzqIexJuMwZS3Grl270gAcJaLKhuapPcQnsVj8z+dbHWON4zBlLc1nADQeH/HzCQTgV39//2vPtyzGGsdhylqU3bt3x4pEov8AqHPutDZg5US0QS3FMdYIDlPWEq0FoPlk65SIagDc3L179xV1FcZYQzhMWYuza9euOwB+AlD++HSxWCwCME99lTHWMA5T1iKJxeIVALQUrVMiqiGi67t37+ar+KxF4jBlLZK/v78MQKBIJKqovYIvIqK2OY40axU4TFmLRURriEij9qLTtT179lxUd02MNYTDlLVYe/bsyQDwX5FIJBaLxYvVXQ9jjeHfNrdQ/v7+/wLAtwCxx5FYLLaaPXt2jroLYXVxr1EtFBG1s7e3lzg5OfEXHgMAnDp1qqysrIw/Dy0Uh2kLJhKJIBbzmRj2P9TIz8KY+vFfKmOMqQCHKWOMqQCHKWOMqQCHKWOMqQCHKWOMqQCHKWOMqQCHKWOMqQCHKWu1MjIysG/fPvz555/PZP1hYWFYvnw5rl692uh8MTEx2LZtG/LzeTTqtozDlKlVZWUlfvrpJ5SXlzdhbmVfffUVPvnkEyQlJf3tOnJycuDi4oJZs2YJ0/bv34+dO3ciNze30WU/+ugjrFmzBsXFxX+7DtZ68S+gmFoNHToUt2/fRnJyMrS1tdVWR2ZmJjIyMtS2fdb6cZgytSopKVF3CQCAPn364NixY7CyslJ3KayV4sP8VuyTTz6BVCrF66+/DicnJ1hYWGDw4ME4fPiwME90dDSkUikGDRqEOXPmwNbWFubm5ggJCQEAFBcXY9GiRbC3t4e5uTkGDhyIgwcP1ll+xYoVeO2112BlZQUXFxf861//wnfffYdBgwahc+fOGDp0KK5cudKs2vr27YusrCwAgI2NDaRSKY4ePdrs9yEgIAA9e/ZE586dMW7cONy4caNO/a+88orSMl5eXpBKpUhISMD169chlUoxadIkvP/++41ui4iwfft29O3bV3i/6mvR/vjjjxg6dCjMzc1hZ2eHefPmKZ1TnTJlCqRSKZYuXYoBAwbAzMwMEydObPZrZy0Hh+kLICIiAkOGDMGgQYMQFxcHX19fHDhwQGmeuLg4XL58GWPHjsXIkSMxcOBAVFVVYeLEidi7dy80NTXx0ksvITU1FfPmzcPOnTuVlt+xYweKi4sxbtw4FBQUYNeuXVi5ciUsLCwwYsQIxMTEYOrUqcjOzm5ybaNHj4aOjg4A4LXXXsOECRPQpUuXZr/+qKgodO3aFe3bt8fVq1cxbty4p140epyJiQmGDBnSpHmXL1+O1atXIz09HXZ2dnj48CEePHigNM/OnTsxc+ZMJCUloU+fPtDT08PBgwcxduxYPHz4UGne3bt3w8LCAq+88gqmT5/e5JoZY020c+fOlVeuXJEXFhZSQ/+mT59OAGj79u3CtF27dhEAsrGxocLCQrpy5QoBIIlEQn/88YfS8n5+fgSAXFxcKDMzkwoLC+nChQsEgIyMjOjevXvC8ra2tpSVlUWFhYW0Zs0aAkAjR44U1jV+/HgCQLt27WpybYWFhWRhYUEAKDk5ucHX+bTXv3XrVmHa4sWLCQD17t1b6fV7eHgoLevq6koA6Pr161RYWEghISEEgJycnIR5pkyZQgBoz549VFhYSH/88QcBIB0dHfr111+psLCQ8vLyqHv37gSAwsLCKD4+nrS0tMjAwIBCQ0OpsLCQCgoKaNKkSQSAPvvsMyosLKQxY8YQAJowYUKTX29AQMAjPz8/M3V/Nln9uGX6AmjX7v9PfU+cOBGamppITk5GYWGhMN3e3h729vZKywUHBwO1h5yKFmL//v3Ro0cPFBUVITY2Vpi3Q4cOwgUixXlFM7P//7vu2bMnUHtVvLm1/V2K2lF7ekEikSAyMrJOi/Hvunjxf6OmvP766+jduzcAQCKRKF04u3z5MioqKiCVSvH9999j1apVWL16tXBu+MnbuCZMmKDSGpn68AWoF4xIJIKJiQlycnJQVFQkTNfX168zb0FBAQCgU6dOStPbt2+PxMRE3L9/H6ampk3eLmrPKTa1NqlU2uTX1VRaWlowMjJCYWFhnUPqv0txCsPa2rrBeRRfJqmpqfDz86vz/OPBjwb2C2udOExfMOXl5cKFDiMjo0YDpX379gBQ52ZzRWgonn9WtT1OLperZBsPHz7E/fv30a5dO3To0EH4QlHF+hVfOk+eF36coaEhUNt63bNnz9/eJms9+DD/BVBRUQHUtgq//PJL1NTUwM7O7qktP09PTwDA4cOHhXX88ssvSElJQfv27eHo6PjMazMwMAAA4cb7ysrKZm+jtLRU2MbmzZtBRBg8eDC0tbXRoUMHYf2KQ+2oqCgkJiY2+zU4OzsDAI4dO4a4uDhhm4rnAWDgwIEAgPPnzysd0kdFRQl1shcTt0xfAIsXL8b333+P7OxsZGVlQSQSYeXKlU9dbtKkSdi5cyfCwsLg4eEBKysr3Lx5EwCwYsUKaGhoPPPa3N3dcfv2bbz55puwtbVFr1698O233zZrG8uWLcPBgweRlZWF7Oxs6OjoYM2aNUBta7JXr16QyWR46aWXYGFhgYiICNTU1Dx1vYpD8EuXLuGdd97B8OHD4eHhgRs3bmDo0KGws7NDUVGR0q1RdnZ2eOedd3D48GGMHj0aTk5OqKqqwu3bt7F+/XrMnTu3Wa+NtR7cMn0B2NraIikpCffv30f//v1x5MgRjB079qnLaWtr48cff8S7776Lhw8f4ubNm7C1tcV3332nstt0nlbbqlWrMGrUKFRXVyMhIUFoSTaVo6Mjxo0bhzt37uDhw4fw8vLCuXPn4OLiIsyzZ88eDBw4EMXFxcjJycH8+fPrXIyrz/jx42FsbIzs7Gzhp6IHDhzAW2+9BX19faSlpcHe3h6WlpZKy3377bdYuXIlrK2tERsbi/T0dAwaNAhOTk7Nem2sdeGRDluonTt3rnRwcFjv7Ozc4D765JNPsG/fPuzcuRNvvvnm8y3wKVpyba3VyZMnS8vLy219fX0bPmnL1IYP81mLs3jxYiQnJzc6T//+/bFkyZLnVhNjT8NhylqcGzduICYmptF51NkpCmP14cP8Fqoph/msbeHD/JaNL0AxxpgKcJgyxpgKcJgyxpgKcJgyxpgKcJgyxpgKcJiyNsvT07PRn65u2rQJkydPfq41sdaLw7QN27FjB7p06QJTU1M4ODhg6tSpiI+PV3dZAIDr169jxowZStN++eUX2NrawtTUFLa2tnj99dcRHh7epPUFBQXByclJ+DFAeXk5EhIShH5J6xMfH9+kn50yBg7Ttu3atWsYPHgwfvvtNxw4cADFxcV4++236523KR2DqNLhw4eVOpZG7Tj2pqamCAsLw7lz52BoaIj58+c3aX3W1tYYNWqU0FtVbGwsqqurGw3TuLg4ODg4NLt2VXUnyFoXDtM2LDIyEt7e3rC3t0e/fv0wZcoUpKWlobi4GKtXr8Zrr72GuXPnwsHBAT/88AMA4OzZsxg8eDAsLCzg4eGBCxcuALUD1zk6OmLTpk1wdXWFhYUFZsyYgV27dsHFxQVWVlZYvnw5ACAhIQEODg7YsmUL3Nzc0LVrV8ycOVPoe3XhwoU4ePAgzp49CysrK5w6dQqo7cbupZdegpWVFfT09FBUVCR0HrJw4UJMmjRJeG1paWmQSqWIjo7G0aNH0b9/f0RERAj9qEZGRqJr164wNjYGarvS8/PzQ58+fdClSxcsWrQId+/eFVqmN2/exPjx42FpaYnu3btjw4YNwrZGjBiB+fPnY8KECbC2tkZ6evpz2X+sZeEwbaPu37+P9PR09O3bFzU1NYiMjMR3332Hfv36wdDQEHFxcYiPj4evry9iY2MxceJEnDp1Ch9//DE2bNiA5ORkvPXWW/jwww9RWloKDQ0N3Lt3D/fv30dwcDC++uor/PTTT0hNTcXvv/+OhQsXYufOnSguLkZNTQ1ycnKgq6uL4OBgHDlyBEFBQfD39wcAbNiwARKJBGfOnEF6ejrGjRsHAIiJicH333+PDh06CL1CffPNNwAAmUym1CtTbGwsNDQ0YGdnh0mTJuHNN99Er169hOcjIyOVWqUbNmzA119/jXXr1uHmzZt49OgRiAg9evRAaGgoxo0bB09PT8TExOA///kPtm7divT0dMjlcty+fRvx8fEICAiATCZrtCd+9uLiMG2jIiIiAACDBw9Gp06d4O3tDUdHR2GY57i4OCxcuBBOTk4Qi8XQ0NDA8uXLsXTpUgwbNgxaWlqYOHEiSkpKkJaWhszMTGhpaeHTTz+FsbExLCwsIJFIsGrVKhgZGaFPnz4Qi8XQ1NREZmYmTE1N4evrCyMjI3h4eGDgwIFISEgQapNIJErhmJ+fj6ysLAQHByMjIwN79+7FH3/8gYCAAKHeJ8O0R48e0NTUhEgkgkwmqxOmrq6uAIDMzExs27YNX3/9NV577TV06tQJQ4YMga2tLbS0tLBq1SoMHjwYixYtgr6+Pm7dugUTExN06tQJKSkpKC0txZdffgmpVAo9Pb3ntAdZS8MdnbRRkZGRcHd3x6FDh1BeXg4zMzNIJBIAQFFREbKysjB06FBhfplMVmeaYgiS9u3b4+LFi7CzsxPOc8bGxqJ79+5ChyS3b99Gt27doK2tjbi4uDq9+N+/fx82NjYAgFu3bsHZ2RmamprC81FRUZBIJLCzs4OWlhbGjx+Pw4cP48aNG3j11VdRXFystM7Y2FghXKurq5GYmCic/6ysrER8fLzQuv3tt9/Qrl07vPLKK0rL29vbo6KiAmFhYejQoQOsra1RVVUFFxcXHD9+HJqamoiLi4NUKuW+Shm3TNuqyMhI2NnZoX379rC0tBSCFLXBqaGhge7duwvTFJ0jPz4i6enTp+Hm5oaOHTvWOcyWyWR1wk3xWCaTKV3YyczMRFRUFEaMGAHUhumTF4ZiYmKEliJqz3FmZ2fD2NgY8fHx0NDQQI8ePYTnwsLChHqSkpJQUVEhtEwTExNRWVkpPL5//z4MDQ0hFv/vz0EulyMoKEipxt27dyM6OhopKSm4cOEC3NzchNfyeIuXtV0cpm1UZGRkg7f9xMXFoUePHkrDlvTs2RNaWlo4cuQIqqqq8MsvvyAwMBCrV68GasPy8VB5PDzxROjIZDJUV1ejqKgIYWFhmDp1KoYOHSqEaV5eHpKTk4WhTlDbMrWyskJeXh7CwsIwe/Zs3L59G9OmTUNZWRnkcjlyc3NRUVGBFStWIDMzUym827dvLwyIpxiVVXGHQq9evZCXl4ezZ8/i0aNHWLNmDW7fvi20gp2dnbFjxw4UFxcjLy9PGNpF8V5xmDJwmLZNxcXFSE1NhZ2dXb3PP9lyBICOHTvCz88P/v7+sLGxwRdffIF9+/Zh6NChwmG0IrwUF2UUj4kI8fHxcHR0RE1NDRISEhAeHg5HR0dMmzYNgwYNQmBgoLCtmTNn4ubNm+jbty9Onz4N1N4toLhXdPr06aipqcG5c+fg5uYGLy8vuLu7w8PDQwhk1A5pgnpaj/369cPLL78sjAAwbNgwLFiwAPPmzYOHh4fQSle8B35+figoKICHhwdGjx6NlJQUYV1/9fYp9uLhvjJbqBe1P9OEhAQMGDAAGRkZdcaQZ43j/kxbNm6ZsudKJpPBysqKg5S9cDhM2XOlOB/L2IuGb41iz9WyZcvUXQJjzwS3TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TBljTAU4TFmr4OnpiW+//VbdZTDWIA7TNuTHH3/Eyy+/DEtLS/Tq1Qtz585Fbm5uk5ffv38/Pv/8c6VpmzZtwrBhw55Btf+vvLwcCQkJ6N27d4PzPI86ACA7OxtTpkxBZmbmM98Wa104TNuIrVu3Ys6cOfD29sb58+fxxRdf4MaNG3j//febvI5vv/0W5ubmStN69+6NUaNGPYOK/19sbCyqq6sbDdPnUQcA/P777/jzzz9haWn5zLfFWhcO0zbgzz//xGeffYYtW7Zg4cKFcHFxwZgxY7B69WpcvXoVhYWFOHLkCEaMGIGFCxeiR48ecHBwwKZNm4R1DBgwAHfv3sXKlSvRpUsX5OXlYd68eXj33XdRVlYmzBcfH4+JEyeic+fOcHBwwBdffAEAyM/Ph5OTE77//nsMGDAAFhYWGDduHB49egQAePToEZYvXw47OztYWlrC3d0dp0+fBgBERkaia9euMDY2rvf1PVnHxYsXMXToUGzfvh2Ojo6wsrLC8uXLAQAJCQlwcHDAli1b4Obmhq5du2LmzJl4+PAhAGDhwoWYNGmSsO60tDRIpVJER0fj+PHj8PX1RUFBgdI6//jjDwwfPhyWlpbw9PREYmIiAOCjjz6Cu7s7ysvLVbxHWUvEYdoG7NixA927d8fkyZOVpltYWAAA8vLyUFxcjOTkZIwaNQq3bt3C0qVLsWnTJty4cQMA8Nlnn0FfXx+pqalIS0tDx44d8fXXXwunDAAgJSUFY8aMwciRI5GYmIhdu3bh888/x7Vr16CtrY2srCxcu3YNJ06cwPnz5xESEoJLly6BiPDee+8hPj4ewcHBuHPnDqqqqvDgwQOgNkwba5U+WYdcLodMJgMR4dq1a1i5ciV27tyJgoIC1NTUICcnB7q6uggODsaRI0cQFBQEf39/AIBMJoOTk5Ow7tjYWGhoaMDOzg5vvPEG3NzcsHLlSqSnp2Pjxo0gIkyfPh2jR49GdHQ0Fi1ahG7dugEADAwMYGRkBIlEouI9yloiDtM24OrVqxg7dizEYuXdnZaWBgDo1KkTMjMzMXz4cIwePRqGhoaYPn06DAwMkJCQAAAICwuDm5ub0jpKSkqQmZkphNinn34KT09PzJ07Fzo6Ohg8eDAsLCwQGxuLu3fvQiQSYcuWLTA3N4eLiws0NDQgFotx8uRJhIaGIiAgAObm5qipqUFmZib69OkD1Iapq6trg6/vyTru3LkDZ2dnfPzxxzA0NISbmxsAQCwWIzMzE6ampvD19YWRkRE8PDwwcOBA4XXGxcXVCdMePXpAU1MTVVVViI6ORt++fYXniQg1NTVITU2FtrY2xo8fL4Tnpk2bcOnSJWhoaPztfchaPg7TNiAvLw+dO3euM/2XX36Bo6MjjI2NERcXB0dHR+G5yspKPHr0CFKpFABw69YtpRBBbStOIpHAzs4OAHDp0iUMHTpUeJ6IUFhYiA4dOiA2NhZdunSBgYEBACA9PR2VlZXo2bMnTpw4gVdffRUmJiYAgPDwcGhra8Pe3h6VlZWIj4+Hi4tLg6/vyTpkMpnSa0lKSkLHjh1hYmJS53UCwP3799G+fXtkZGSguLhY6fnY2FghXKOjo1FVVaXUShaLxThx4gRu376Nvn374tdff33q/mAvJg7TNsDMzAxJSUlK06KionDy5EnMmTMHqA0gRcsOAM6fPw9tbW0MGjQIqD3v+mSgxcbGolu3btDW1oZcLsejR4/QqVMn4fmgoCDU1NRgyJAhiI2NVVp/TEwMtLS0YGtri9TUVHTt2lVp205OTpBIJEhMTERlZaXSsk96vA7FYwcHB6XnFcvLZDKl5zIzMxEVFYURI0YgPj4eGhoa6NGjB1D7ZRAWFiaE6a1bt9C9e3fo6ekpbb93797CF8mKFSuesjfYi4rDtA2YNGkS9u/fj8OHDyM6Ohp79+7F66+/Dh8fH0yePBnFxcXIzMxEaWkp7t+/j9OnT2Px4sVYtmwZjI2NUV1djfv370Mmk+HevXsoKioCnghgsVgMR0dHnDx5EmVlZYiPj8eyZcvwz3/+E1KptE5rMSYmBj179kS7du1gaWkphP3NmzcRGBgIfX19AEBBQQEAoKampsHX93gdNTU1uH37dp1tPR6m1dXVKCoqQlhYGKZOnYqhQ4dixIgRKCsrg1wuR25uLioqKrBixQpkZmYK68rPz0dBQQFSU1ORkpIC1AZ/SEgICgoK8ODBA+F86Z9//ok+ffrg0qVLKt2XrOXiMG0Dli5dimnTpmH9+vXw9vbGgQMHsHz5cuzatQuoDRh9fX18++236NWrFz799FOsWLECvr6+AIB27dph9uzZ+PbbbzFgwADcuXNHWO7xVt62bduQmpqK7t27Y+rUqZg9ezaWLFkCPNE6fPLxqlWrIJPJ4OrqiiVLlmD06NHCOcx+/frh5Zdfxptvvtng63u8jqSkJJSXl9fZloODA2pqapCQkIDw8HA4Ojpi2rRpGDRoEAIDAwEAXl5ecHd3h4eHB0aMGCEsrwjTCRMmQFtbG/3798e6desAAL/99humTJkCd3d3aGtr48svvwQAVFRUoKCgQLhbgb34ROougNVv586dKx0cHNY7Ozs/830UGBiIw4cP45dffnnWm1KrhIQEDBgwABkZGdDR0VF3Oc128uTJ0vLycltfX99sddfC6uKWKYNMJkPPnj3VXcYzJ5PJYGVl1SqDlLV8HKYMMplMuOjyIouLi2sTr5OpRzt1F8DU7+zZs+ou4blYtmyZuktgLzBumTLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmDLGmApwmLI2Lz4+vs60wMBAnDt3TiXrz83N5YH12gAOU9ambdu2rc5wzCUlJdi0aROio6NVso3q6mpMnz5dJetiLReHKXshyOXyZi8THByM8+fP46OPPlKa/s033yA3NxcxMTEqqc3CwgI5OTkIDw9XyfpYy8Rhyp6p9PR0zJgxA127dkXPnj3xj3/8A/369QMALFy4EJMmTRLmTUtLg1QqFVqEN2/exPjx42FpaYnu3btjw4YNwrwjRozA/PnzMWHCBFhbW8Pf3x/m5uZKobpp0yY4OTmhurq6Tl01NTVYunQpfH19IRb//59BZmYmduzYgQkTJtRpmU6YMAGbNm3C+PHjYWFhgf79+0Mmk+HYsWNP3baZmRmCgoJU9K6ylojDlDWovLwcs2bNQvfu3TFr1iw8fPiArNfGAAAgAElEQVSwWcvn5ubC29sburq6uHz5Mq5cuYLw8HB4enoCtaOiOjk5CfPHxsZCQ0MDdnZ2CA0Nxbhx4+Dp6YmYmBj85z//wdatW5Geng65XI7bt28jPj4eAQEBkMlkGDx4MCoqKpCeng4AqKysRGBgIN5//320a1d33Mhz586hqKgI3t7eStM3bNgANzc3zJkzB2lpaSgqKhKeKyoqwoULF/Dpp58iIiICcrkc+/btg4ODw1O3LZfLkZaW1qz3j7UuHKasQUFBQTh58iQKCwtx8uRJ/PLLL81afsuWLbCwsMD27dvRrVs3mJubo6qqCq6urkDt0MtPhmmPHj2gqamJVatWYfDgwVi0aBH09fVx69YtmJiYoFOnTkhJSUFpaSm+/PJLSKVS6OnpoUePHpBIJEhKSgIAnDhxAiUlJZg2bVq9tR07dgwvvfQSJBKJMC0iIgLHjx/H2rVrhSGhHz/Uv3v3Lv71r3/ByckJpqamsLa2hlgsbtK28/LyUFFR0az3j7UuHKbsmfn5558xYcIEiEQiAEBpaSnu3r0LBwcHZGRkoLi4GI6OjsL8sbGxcHJyQkVFBcLCwhAZGQlra2tYW1vj1KlTOH78ODQ1NREXFwepVKoUxFpaWrCxsUFiYiIAwN/fH2+++SakUmm9tV29ehVubm5K01avXo2xY8eiX79+MDY2VjrlkJ6eXqfepKQk9OzZ86nbJiKkpaXB3Nxche8ua2nqHv8wVmvEiBGYMGECrly5gqFDh2LUqFHNWv7BgwfQ19cXHstkMsjlcjg4OCA0NBQaGhpCC5CIEBYWhg8//FCYf/fu3XB1dYW2tjY0NTWV1tOrV68627O3t0dSUhKuX7+OyMhI7Nixo966CgoK8ODBA3Tp0kWYdu7cOYSEhEBPTw9du3YFADx69EhomcbGxsLQ0BCdO3cGABQXFyM9PV2oo7Ftx8fHo6ioCP3792/W+8daFw5T1iBtbW0EBAT85eX79++PwMBADBgwACYmJjhx4gQsLCxgaGiIsrIyyOVy5ObmQiqVYt26dcjMzISjoyO0tLTg7OyMHTt2YMuWLSgpKUFWVhbc3d2B2tMD9YWpi4sLjh07hrS0NAwbNgz29vb11qW4KGRoaCg8Xrt2LWbNmoXNmzcL8/n6+got09jYWKVtKkLWwcHhqdu+du0ajI2NMXz48L/8XrKWjw/z2TPz9ddfw9jYGMOGDYO3tzeCgoKEQPLy8oK7uzs8PDwwYsQIYRnFYbSfnx8KCgrg4eGB0aNHIyUlRZgnLi5OCLHHvfHGGygoKMClS5cwZ86cBuvq0KEDNDU1oaurCwDYu3cvcnJysGTJEqX5unXrhtu3b6OqqqreMLW0tISRkdFTt3369Gl88MEH0NHRafZ7yFoPkboLYPXbuXPnSgcHh/XOzs4vzD7y8fGBq6sr1q1b98y2sXLlSly4cAE3b94UztXW54033sD06dPx6quvPtNtx8XFYfLkyfj999+hp6f3t9Z/8uTJ0vLycltfX99sFZXMVIhbpuy5SUhIqLdFqQo3b97EF198gV27dmHp0qWNBilqD+GvX7/+TLddXl6OtWvX4vvvv//bQcpaPj5nyp6L4uJi5OTkPLMwXb16NfLz87FhwwalHwI0RJXnLxvadmxsLNatW9fguVv2YuEwZc+FoaEhCgsLn9n6z58/3+xlVBWoDW27b9++Klk/ax34MJ8xxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAw5QxxlSAx4BqwR4+fIisrCx1l8FaCLlcLlF3DaxhHKYtlEgkup2bm3slNzdX3aWoVWlpaXe5XG6spaWVpKGh8UDd9aiTSCSq1NXVLVd3Hax+jQ8uzpiazZ49+yeRSDROJBKN8/f3P63uehhrCJ8zZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFeAwZYwxFRCpuwD2dES0FkBnddehDpGRkSNLSkqsbW1tL5qbm6epux41mS0SiUjdRbDGcZi2AkQUBcBZ3XUwtZGIRCK5uotgjePDfMYYUwEOU/bMhYaGory8XN1ltBqpqalISUlRdxmsmThM2TO1b98+eHh44OHDh+oupVW4c+cOunXrhrCwMHWXwpqJw/QFRqT+axatrUWq7vesqqoKcjmfHmXsmSCiKCMjI3r55Zdp4MCBpKOjQ1ZWVrRy5UqqqqoiBUdHR3rrrbdow4YN1LFjR9LT06OioiIiItq/fz85ODiQpqYmWVtb06effko1NTVERBQeHk4GBgZ05swZcnFxIQ0NDbK1taW9e/fSxo0bycrKigwMDMjHx4dyc3OF7T2tpsDAQAKg9C8wMJCaKyAggP6PvTuPq7LM/z/+OiyCLLK4seOKIosiKpG7prjkklaTqeU42ai0fBtbxjQn03LLzH2rLFtMM1FJbRJMK3MiMRU4bIoCIiggCqKs5/r9MXD/PAoueQycPs/Hw0dxL9f9Ofd9n/e57uWcu6Cg4I7mGTFihGrdurV67LHHlIODg3J2dlbjxo1T586d06YJDw9XzZs3Vzt37lRt27ZVOp1ORUVFKaWU+uWXX1TPnj2VtbW1aty4sfrrX/+qLly4YPTaN27cqAYPHqysrKxU8+bN1T/+8Q8VERGhAgIClLW1terSpYs6fPjwbdd06tSpG9bX008/rZRS0ukRwhSqw9TT01Nt2bJFHTx4UE2fPl2Zm5ur5557Tnuz+vn5KUdHRzVs2DB16NAhtXfvXqWUUh9//LEC1NixY9XXX3+tXnnlFaXT6dTcuXOVqgpTQHl5ealvvvlGRUdHK39/fwWoHj16qIMHD6pNmzYpOzs7NW7cOKNAuVlN586dUy+//LIC1DfffKN+/PFHozC7XQ8//LBycHBQ//rXv9TFixdvO0ytra3Vu+++q2JiYtTq1auVs7Oz6tSpkxb24eHhytraWgUEBKi9e/eqiIgIZTAYVEJCgrKxsVHdunVTmzZtUkuXLlWOjo6qf//+Rq/d2tparVq1SsXExKhHH31UAcrNzU1FRkaq77//Xvn6+qqWLVtqy7tVTSUlJerzzz9XgJozZ4768ccfVUpKioSpEKZSHabTpk0zCoxnn31WWVpaqvz8fC1MmzRpoi5fvqxNYzAYlLu7u+rZs6fRvH/729+Uvb29Kioq0sJ0y5Yt2vjqXmV8fLw2bOLEicrFxcUoUG5V0+rVqxWgcnNzbysEa7Nnzx7Vu3dv5ejoqGbPnn3LUB0xYoQKDg42GvbFF18oQO3cuVOpqjAF1H/+8x+j6caMGaPs7e2NesOffvqpAtSBAwe01z516lRtfHWvcsWKFdqwjRs3KkAlJSXddk2JiYkKUF999dW1k0mY3gdkI93HBg0aRHl5OUeOHNGGhYSEYGtrq/2dmppKVlYWo0aNMpo3LCyMoqIiUlJStGENGzbU/t/a2hoAKysrbZiHhwd5eXl3XNPtunjxIqdPn+b06dNkZWXd0O7+/fv59ttviYiIoEOHDnfc/qBBgwD45ZdftGG2traEhIQYTbd//3769euHo6OjNiwsLAzA6MLQ7awv4KbrrKaaxP1JwvQ+5uTkBEBRUZE2zM7OzmiaS5cuAdCsWTOj4c7OzgA3hNbN6HS6W16gqamm2/X+++/TsmVLWrZsSf/+/W8Yf/DgQd566y0yMjJ4/vnn77h9BwcHzMzMbrq+qFpnplpf3OKiVk01ifuTRV0XIH6/M2fOAODp6VnrNNW9o/z8fKPh586dg2vC717XdDtXyZ944gk6deoEgL29vTY8Ojqat956i6NHj/J///d/fPHFFzg4ONxxbWfPnsVgMNx0fVG1zv6o9VVbTXV9V4G4cxKm9ymlFBs2bMDJyQlfX99ap3N1daVFixbs3r3bqDe3detWbG1tCQoKIjU19Z7VVH3K4ezZszRt2vSm87dv35727dvfMHzmzJn07duXiIgIrYf4e3z44YcAPPjggzedLjQ0lMjISK5evaodym/duhWAHj16/O7l305N164vcX+RML2PbN68GTc3N2xsbPjqq6/Yt28fCxcuNDpHWpPZs2fz9NNP88wzzxAWFkZ0dDQRERG8+eabt5z3bmt68MEHsbCw4MUXX2TixIlcvXqVv//973e0jOjoaGxsbO64tvj4eKZPn46Pjw8HDx7ko48+YsiQIbcM0xkzZvDll18yaNAgJk+eTHp6OrNnz6Zv37707t37juu4k5o8PDxo1aoVixcvxtbWlgsXLnD16tW7WqYQokr11fyQkBAVGBiorKysVOvWrdWiRYuMrgxX32dak9WrV6u2bdsqS0tL1aJFC7VgwQJlMBiUuubWqMjISG36TZs2KUClpqZqw/71r38pc3Nz7e/bqUkppT766CPl4uKiHB0dVb9+/Wqsz9RGjBihPD09Vd++fZWdnZ1q1qyZmjx5snbfrbrmPtOa7N+/Xz3wwAPKyspKNW7cWE2aNMlo3uvvZMjOzlaAWr9+vTbs+++/V4D68ccfb7smpZSKiYlRfn5+ytbWVrVv31716dNHOj1CmEJtt0bVtfpYU7WabkOqa3dRk1wovg/IRhJCCBOQMBVCCBOQH4e+D8iPQ//pyY9D3wfkxPb94TGg4W1Md79aA9R4A2dBQYFbWVmZnYODQ5a1tXVxLfM/C1y6tyXWHQnS+4P0TEWdU0rlAM3voglXnU6XY8KShLhjcs5UCCFMQMJUCCFMQMJUCCFMQMJUCCFMQMJU1HvPPfcc27Ztq+syhBCiflNK5dT2PcozZ84oQCUnJ9f6XcuMjAy3un4NQghR55RSOQcOHFCdO3dWDRs2VAEBASopKUllZGQoKysrZWZmpmxtbVXnzp2VUkp98803ys7OTs2ZM0e1bdtWNWrUaHNdvwYhhKhzBoMhp2nTpmrWrFkqLy9Pbd68WVVUVCillJo+fboaMmSIUU90/vz5yszMTH366adKKaW2bNnSsq5fgxBC1LnKysocZ2dnNX78eFVcXGwUnH379lWzZ882GjZ27Fg1cuTIawe51PVrEEIuQIk6Z2Zmxt69e9Hr9bRu3Zq9e/fCf3usHD58+IYH3sXHx9f4jCghhPhTq74AVVlZqcaNG6f8/PyUUkrFxcUpQJ0/f17rgpaXlysrKyu1f/9+6ZmKekV6pqLOff3111YHDhwgLy+PgoIC2rRpA8D58+cBiI2NJTU1FaUUqamplJaW4u/vX8dVCyFEPTN58uRiR0dH5eDgoEaPHq2ys7OVUkpduXJFde/eXVlYWChXV1dlMBjU5s2blaur6/V3R0nPVNQ5+dUoUefkV6PE/wI5zBdCCBOQMBVCCBOQMBVCCBOQc6aizimlbGvbF//v//5vs8FgGOLk5PT47Nmz99TSRLFOp1P3tkohbk56pqLO6XS6Yp1Od7mmf1euXKkoLS3l3LlzJbVNI0Eq6gMJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAEJUyGEMAH5oRNRb0yaNOmyTqezVerWX7XX6XSsW7dO9l9Rb0jPVNQni5VSJTqdjlv9U0qV13WxQlxLwlTUGyUlJQuB0tvomV4Flv4xVQlxeyRMRb3x6aefFut0ujeBm/Y6lVIWFRUVy/64yoS4NQlTUd+sAypq650qpUqB5Rs2bMj8wysT4iYkTEW9sm7duis6nW4eUFLLJLqq8ULUKxKmoj5aXNO5U6VUCfDJunXr8uqsMiFqIWEq6p2q3ukMoLw6UKv+a25ubj67rusToiYSpqJesrKy+kCn05VeM6gcWLFmzZqsOixLiFpJmIp6afny5aXA/GsO95WFhcWcuq5LiNpImIp6q6ysbLFOp7ui/pum61avXl1Q1zUJUZubfh1v7dq17YH2f1w5QhjLzs4eVlxc/JSHh8cz1tbWl+q6HvHn1aBBg2//+te/1naXCRa3mP8JGxubf9rZ2dXagBD3UrNmzQCK5RtPoi7l5ubaVFRUtALO1DbNrcKUli1bWnXo0MHK5NUJIcR9YseOHcUVFRU3nUbOmQohhAlImAohhAlImAohhAlImAohhAlImAohhAlImAohhAlImAohhAlImAohhAlImIo6s337dsLDwyko+O9X7ktKSlizZg3Tp0+v69KEuGMSpqLOzJkzh02bNlFWVgZAfn4+r7/+Ovv27avr0oS4YxKmQghhAhKmQghhAhKmol4bN24cgYGBzJ8/H39/f7y9vRk4cCBffvkl48ePx8fHBx8fH/7xj39QXFxc1+WKPzEJU1HvnTlzhqVLl9KzZ09at27N4cOHmTp1KjExMQwePBgbGxs+/vhj5s+fX9elij8xCVNxX1i4cCGrV69m9+7dODg4APDFF1+wdOlSNm/eDMC3335bx1WKPzMJU3Ff8PT0BMDa2rr6B6NxcXEBwMfHB4Bz587VYYXiz07CVNz3dLr/Pn2n+rHQQtQFCVMhhDABCVNR56pv2q9WWlpaZ7UI8XtJmIo6Y2trC8DevXsBsLOzAyAzM5OkpKQ6rU2IOyVhKurME088gb29PXq9HgAHBweGDx+Ok5MTsbGxdV2eEHfklk8nFeJemTp1KlOnTjUa9vHHHxv9/dlnn90w3y+//HLDsAsXLtyDCoW4fdIzFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFX86BQUFODs7y7eshElJmN5DS5YsoWvXrkbDysvLcXNz46uvvrpnyx0+fDivv/76XbVRXFxMkyZNcHZ2NvrXoUMHk9V5rRdeeIHHHnvsnrR9vWPHjmFhYYGfn582rKysjLVr1zJw4EC8vb3x9PRk9OjRf0g9d2rjxo3yVIF6SL5Oeg/FxcXdEKZxcXGUlJQQEBBwx+1dvXqVhg0b3nJcv3798PLy+l01V7ej1+sxGAzs2rWLxo0ba+Otra1/V7u3EhcXR9++fe9J29c7fvw47du3115LYWEhjz76KLm5ubz00kt06tSJoqIikpOT/5B6qlVWVmJubn7L6ZYtW8bzzz//u5djMBgwM5N+lKnJGr2H4uPj6datm9Gww4cPY21tTdu2bYmIiMDDwwODwaCN79ixI6tXr4aq76WHhITg6enJ0KFD6d27N1euXKGkpIRZs2ZpD5h79NFHmThxIgDBwcG89dZb2i8yzZs3jylTpvD888/j7e1N27Zt2bp1K8BN24mLi8Pb25vQ0FDtoXU+Pj5aSK9fv54uXbrg6uqKn58f77zzjvYa1qxZQ3BwMC4uLvTs2VP70eZff/2VkSNH4u7uTps2bZgzZw4AFRUVJCUlERgYeMM6NBgMvPfeewQGBuLh4cGQIUNISUnRxn///fc89NBDuLq64uvrqwVgeno648aNw8vLC29vbwYMGKDNd/ToUTp16qS18X//938UFRXx/fff89RTTxEYGEj37t21dUFVz3Xu3LkEBATg6upKv379tB9oeeSRR1iwYAEjR47Ezc2Nbt26aeMAvvzyS7p3746rqyudOnVi+/btAFy+fJnGjRuzYMEC+vTpo+0rxcXFvP7667Rr1w53d3e6du1KZGQkAKGhoaSlpTFz5ky8vLzIzc0FICkpidGjR+Ph4YGvry/vvvuutvz+/fvz4osv8sgjj+Dt7U1mZuZt7L3iTkmY3iNXrlwhLS2N119/HU9PT+3fG2+8ga+vL+bm5uj1ejp06KD1EgoLC8nMzMTf35/du3czY8YMli9fTmpqKubm5rRv3x4bGxvmzJnDgQMH+Pe//80vv/zCb7/9Rp8+fQDYsmULgHY4fuXKFaKjoxkyZAjx8fH06tWL9957D+Cm7Rw/fpwzZ85odbdq1YqKigoAFi9ezIoVK1i/fj1nzpyhR48epKenA/DOO++wZMkS5s6dS3JyMuvXr0en0xETE8Pw4cPp0aMH8fHxfP755yxZsoTMzExSUlIoLS3F39//hvU4Y8YMduzYwdatW0lKSsLR0ZFXX30VgH379jF27FhGjRrF8ePH+eabb7SAGTp0KK1btyYxMZGoqChiY2OxsLDQXlvHjh0BOHHiBNu3b2fhwoU4OjrWuj0nTJjA7t272bhxIykpKbi4uLBq1SoALl26xLfffsvcuXM5evQoBoNB+8GWlStX8tprrzF9+nRSUlKYMGECb775JlQFoFKK3NxcoqKi+OGHH1BK8fTTT5OUlMT+/fs5efIk5eXlXLx4EYC3334bOzs70tPTycjIoGnTppw+fZohQ4bw0EMPkZqayrp165g/fz6HDh3CYDCQnJxMUlISH374IXq9Hm9v77vev8WN5DD/HklISEApxb59+2jQoIE2fMyYMVpo6PV6o/N21b0ZPz8/XnvtNUaPHq31Vtzc3CgpKQEgIiKCuXPn4u7uDkDDhg21QE5KSsLe3l57ZlJaWhp/+ctfGDx4sNZ2de/tZu3Ex8fz3HPPMX78eAAsLCywsLDgzJkzLFy4kE2bNhEUFATAqVOnGD16NOfOnWPp0qV88sknDBo0CKp+Vg/gjTfeoGfPnrz88suUl5cTGxuLk5MTzZs35+eff8bOzo5WrVoZrcOUlBTWrVvHDz/8oD3naejQoVoYzZo1i4kTJ2q/PNW0aVOoCmAPDw9mz54NQEZGBk5OTrRq1YrCwkJOnTqlhemPP/6Ivb093bt315Y7e/ZsPvjgA3Q6HcePH+fIkSN8++23fPfddwQFBZGens6pU6e0edLS0li7dq22Xb29vTEzM+PSpUvMmzePV155hYcffpjCwkLi4+Px9fUFIDExkSZNmjBv3jxt/W7bto2YmBiOHTuGk5MTxcXFZGVl0blzZ6g6sgkKCjI6TJ87dy49evRgypQpAPTs2RM3NzcSEhJo3rw5V65cYfHixTg7O9/RPizujPRM75Hqw+T27dvTqlUrWrVqRYsWLcjMzNTOl+r1eqPeWEJCAm5ubjg7O2NnZ0deXh4AsbGx7Nixg6FDh0LVjyhXH96tWbOG3NxcBg4cqLVZ/WatbvPawD558qQWTLW1U1lZiV6vJyQkRKu9+vA+MjKS5s2b069fP6j6Vfy4uDg6d+7MoUOHMDc312qpVlpayuHDhzl27Bje3t54e3uzc+dOtm7dSoMGDYiLizPqoVeLjo6mcePGRvXn5+fTpEkTcnNz0ev1jBgxwmgepRQRERHahwDXBFD1djEzM9PazMvLw97e3mjZU6ZMITw8nEaNGuHo6MjBgwexs7Nj9OjRtGjRgn79+jF48GCmTJlCZmYmhYWFRjWeOHECHx8fYmNjuXLlCqtXr6Zly5b4+vpiMBhYvnw5VIXpgw8+iKWlpTbvtm3bePjhh3FycgLgt99+w9ramvbt22v7QnBwsNFrjoqKonfv3kbr4MKFCzRp0oTExEScnZ1r7PUL05Ke6T0SFxenvQGqnTp1Srv4VFxcTEZGhlHwxcTEaDv9zJkzmT59Og888ADZ2dlMmzZNu9q9fv165syZw8qVK6msrOSTTz7RDt2qTx0AFBUVkZmZaXQFPj4+nmHDht20naSkJEpKSm6on6peXsuWLbW/o6OjKS8vJzAwkKSkJKytrWu9uLF+/Xo6deqEtbW1UW89Pj6+xvOlhYWFNG/e3GhYZGQkAwYM4PLly1DVm77WpUuXuHTpklGNe/bsYcCAAdqyWrVqpc3n4uJCTk4O2dnZuLq6AtCsWTPOnz9vFEABAQHs2LGDK1eu0KhRI214QkICjRo1wsPDQ6u5ep1fuXJF691Wz3ftutHr9YSGhhrVn56erm2f6tr9/f21C1NHjhxhzJgx2niDwUBxcbHReoqOjqayspJevXrx4Ycf3rM7MIQx6ZneI/Hx8TeEUVJSEjqdjg4dOlBWVoZSSns88VdffUVERIT2Bm7cuDFt2rQhKyuLDz/8kL///e9aOx07dqS8vBxHR0c++eQTHnroIW3ctWGq1+sxMzOjXbt2UHWhJzk5WRtfWzvHjx/HxsamxjsC3N3dyczMpKSkhPPnz/Pmm29iaWmJlZUVnTt35tKlS7z33nvk5uayf/9+MjMzsbKyIiAggNWrV1NYWEhubi6//vqr0bpq3LgxKSkp2r+cnBwCAwNJTU3l8OHDlJSU8O6773LmzBmee+45PD09adq0KQsXLuTs2bPExcURExNDo0aNsLe358SJEwCsWrWK48ePa49Eqf4R6crKSqi6OGNra8uTTz7Jnj17iIuL48svv9RCDKBLly7Exsby3XffYTAY2L9/v3bKJSEh4YYPKwBfX18CAgKwsrJiyZIlGAwGkpKSSEtL06ZNTEy8Iejc3d212n/99Vc2bNig1V5RUUFBQQF6vZ7s7GwuXbqk9bIjIiK4evUqSUlJTJ8+nZdeeglnZ+calyHuDQnTe8BgMJCYmKiFWLWkpCRatmyJvb09Tk5OPPPMMzz//PMEBweTkJCApaWl0eFinz59CAsL48UXX6Rr164UFRVp45544gnc3NwYNWoUY8eOhaqr82lpadqbJyEhgTZt2mBlZQVV5yDLysqM3lw1tRMXF0fbtm1r7GE+9dRTtG7dmuDgYEaMGEGvXr0oLS0lPT0dPz8/Fi1axMcff0xgYCBvvPGGdtFn5cqV5OfnExISQlhYGKdPnwYgKyuLCxcusGDBAh544AHt3/r16xk8eDCTJ0/mySefxNfXl6NHj7Jr1y6aNWuGhYUFGzZs4PTp0wQHBzNu3COcVc0AACAASURBVDiKioowMzNjyZIlLFy4kK5duxIVFUVISIh2nnj06NFYWlry2muvQdW56K+++gpbW1umTp3KsGHDWL16NZMmTeKFF14AYPDgwYSHh/OPf/wDf39/5s2bp63TmsLU3d0dBwcHmjZtyqpVq/jqq6/w8/Nj4sSJ2sMD8/LyyM3NNToyoercsl6vp1OnTrz66quEhYVpdyFYWFgwadIkli1bRmhoKCdPngRg+fLlpKen06ZNG8aPH8+kSZO0i3SJiYk3LEPcG7qbjVy7du2bfn5+/5JPtrp19uxZ/P39+fnnn2/o7X711VfMmDHD6Hah38NU7Qjxv2jHjh3FFRUV7SdNmnSmtmnknGk9lJSUxPbt2xk5ciSWlpasWbOGdu3a0bZtW7Zv305hYSG9e/emoKCAjRs3ahem7oSp2hFC/Jcc5tdDpaWl/PDDDwwYMIBhw4ZRUVHBjh07MDc3p7KyktWrVxMaGsqkSZPo168fCxcuvONlmKodIcR/Sc+0HurYsSO7d++ucdzo0aNN8p1xU7UjhPgv6ZkKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJiK+0KPHj1YtmxZXZchRK0kTP9Etm/fzoABA3B3d6dDhw5MmTKF8+fP3/b8GzduZP78+UbDFixYQJ8+fe5Btf9fSUkJKSkpdOzYsdZp/og6AHJychg3bhxZWVn3fFni/iJh+iexZMkSJk+ezKBBg9izZw/vvvsuv/zyC88888xtt7Fs2TJcXV2NhnXs2JGBAwfeg4r/v4SEBCoqKm4apn9EHQA//vgjR44cwd3d/Z4vS9xfJEz/BI4cOcLbb7/NokWLmDZtGoGBgQwZMoRZs2bx008/ceHCBTZv3kz//v2ZNm0abdu2xdfXlwULFmhthIaGkpaWxsyZM/Hy8iI3N5cXXniBJ598kqtXr2rTJSUlMXr0aDw8PPD19eXdd98FIC8vD39/fz755BNCQ0Nxc3Nj+PDhFBcXA1BcXMzrr79Ou3btcHd3p2vXrkRGRgJw7NgxWrRogaOjY42v7/o69u7dS+/evVmxYgV+fn54enry+uuvA5CSkoKvry+LFi0iKCiIFi1aMHHiRC5fvgzAtGnTeOyxx7S2MzIycHZ2Ji4ujq1btxIeHk5+fr5Rmz///DN9+/bF3d2dHj16kJqaCsDUqVPp2rUrJSUlJt6ioj6SMP0TWL16NW3atGHs2LFGw93c3ADIzc2lsLCQU6dOMXDgQGJjY3nttddYsGABv/zyCwBvv/02dnZ2pKenk5GRQdOmTXn//fe1UwYAp0+fZsiQITz00EOkpqaybt065s+fz6FDh7C2tubs2bMcOnSIbdu2sWfPHg4ePEhUVBRKKZ5++mmSkpLYv38/J0+epLy8nIsXL0JVmN6sV3p9HQaDAb1ej1KKQ4cOMXPmTNasWUN+fj6VlZWcO3cOGxsb9u/fz+bNm4mOjmbt2rUA6PV6/P39tbYTEhKwtLSkXbt2PProowQFBTFz5kwyMzN55513UEoxYcIEwsLCiIuL4+WXX6ZVq1YA2Nvb4+DggLm5uYm3qKiPJEz/BH766SeGDh2KmZnx5s7IyACgefPmZGVl0bdvX8LCwmjUqBETJkzA3t6elJQUAA4fPkxQUJBRG0VFRWRlZWkhNnfuXHr06MGUKVNo2LAhPXv2xM3NjYSEBNLS0tDpdCxatAhXV1cCAwOxtLTEzMyMiIgIYmJi+PDDD3F1daWyspKsrCw6d+4MVWHaqVOnWl/f9XWcPHmSgIAAnn/+eRo1akRQUBAAZmZmZGVl0axZM8LDw3FwcCAkJIQHH3xQe52JiYk3hGnbtm1p0KAB5eXlxMXFERwcrI1XSlFZWUl6ejrW1taMHDlSC88FCxYQFRWFpaXlXW9DUf9JmP4J5Obm4uHhccPw7777Dj8/PxwdHUlMTMTPz08bV1ZWRnFxMc7OzgDExsYahQhVvThzc3PatWsHQFRUFL1799bGK6W4cOECTZo0ISEhAS8vL+zt7QHIzMykrKwMHx8ftm3bxsMPP4yTkxMAv/32G9bW1rRv356ysjKSkpIIDAys9fVdX4derzd6LSdOnKBp06Y4OTnd8DoBCgoKaNy4MWfOnKGwsNBofEJCghaucXFxlJeXG/WSzczM2LZtG8nJyQQHB/P999/fcnuI/00Spn8CLi4unDhxwmjY8ePHiYiIYPLkyVAVQNU9O4A9e/ZgbW1N9+7doeq86/WBlpCQQKtWrbC2tsZgMFBcXEzz5s218dHR0VRWVtKrVy8SEhKM2o+Pj8fKyorWrVuTnp5OixYtjJbt7++Pubk5qamplJWVGc17vWvrqP7b19fXaHz1/Hq93mhcVlYWx48fp3///iQlJWFpaUnbtm2h6sPg8OHDWpjGxsbSpk0bbG1tjZbfsWNH7YNkxowZt9ga4n+VhOmfwGOPPcbGjRvZtGkTcXFxfPTRR4waNYoRI0YwduxYCgsLycrK4sqVKxQUFBAZGckrr7zC9OnTcXR0pKKigoKCAvR6PdnZ2Vy6dAmuC2AzMzP8/PyIiIjg6tWrJCUlMX36dF566SWcnZ1v6C3Gx8fj4+ODhYUF7u7uWtj/+uuvbNiwATs7OwDy8/MBqKysrPX1XVtHZWUlycnJNyzr2jCtqKjg0qVLHD58mPHjx9O7d2/69+/P1atXMRgMnD9/ntLSUmbMmEFWVpbWVl5eHvn5+aSnp3P69GmoCv6DBw+Sn5/PxYsXtfOlR44coXPnzkRFRZl0W4r6S8L0T+C1117jqaee4q233mLQoEF8+umnvP7666xbtw6qAsbOzo5ly5bRoUMH5s6dy4wZMwgPDwfAwsKCSZMmsWzZMkJDQzl58qQ237W9vOXLl5Oenk6bNm0YP348kyZN4tVXX4XreofX//3GG2+g1+vp1KkTr776KmFhYdo5zC5dujBgwAAef/zxWl/ftXWcOHGCkpKSG5bl6+tLZWUlKSkp/Pbbb/j5+fHUU0/RvXt3NmzYAEC/fv3o2rUrISEh9O/fX5u/OkwfeeQRrK2t6datG7Nnzwbghx9+YNy4cXTt2hVra2sWL14MQGlpKfn5+drdCuJ/n+5mI9euXfumn5/fv252iCXufxs2bGDTpk189913dV3KPZWSkkJoaChnzpyhYcOGdV2OuI/s2LGjuKKiov2kSZPO1DaN9EwFer0eHx+fui7jntPr9Xh6ekqQintCwlSg1+u1iy7/yxITE/8Ur1PUDYu6LkDUvV27dtV1CX+I6dOn13UJ4n+Y9EyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEyFEMIEJEwFP//8M+7u7iil6rqU3yUpKamuSzCJyMhIPD09MRgMAMTExODs7IyzszMPPPDAH1LDe++9py1z2rRpf8gyq23YsIHdu3ebpK3169drr2PixIkATJgwQRv20UcfAWhPmTUFCdN6Iicnh3HjxpGVlWU0fPjw4bz++uv3dNnJycm0bt0ane6mz1esl5YvX270OOXc3FxeeuklfH198fDwoFevXkRERNx2e//5z3/461//ajQsLy8Pf3//O2rn9zh+/DgBAQGYmf33bZmYmIitrS2JiYl8++23AEyePBkPDw9atmxJnz59WL16NSUlJVob0dHR+Pv7c+rUqVsub+PGjcyfP99oWGJiIn369CExMZG33nrrpvO/+uqrREZG/s5Xa6yoqIgFCxYQFxdnkvbGjBlDYmIiLi4utG/fHoAlS5bw73//G0AbFhsby/vvv2+SZf4pw/Tq1at/6PJu9sz3aj/++CNHjhzB3d3daHi/fv3o0qXLPazuv2Hapk0bAJRSnDt37p4tq7Z18Xu2yf79+9mzZw9Tp04FIDs7mwEDBpCQkMCKFSvYuXMnvXr14plnnuGnn366rTY3bdqEhYXx03zs7e0JCwujdevWd1zjnTh27BidOnXS/k5MTKRdu3Y0b94cR0dHqHq09OTJk9m2bRuPPfYY8+fPZ9y4cdo83t7eDBw4EGdn51sub9myZbi6uhoNS0xMJCAggObNm2Nra1vrvGfPnuWDDz4wetT39W5nv6+2dOlSzp8/T3x8/G3PczN2dnbY2NiQk5Oj1ejk5ER+fj6ANuyhhx5i6dKllJeX3/Uy75swTUxM/N3zfvbZZ4SEhODp6cnQoUPp3bs3V65cAeDXX39l5MiRuLu706ZNG+bMmQPA3r176d27NytWrMDPzw9PT0+jHmJZWRlz584lICAAV1dX+vXrh16vB2DWrFkMGzaMKVOm4Ovry5dffglVb4QBAwbg5uZGmzZteOKJJygvL2fr1q2Eh4eTn59vtJzg4GDeeustbac2GAy89957BAYG4uHhwZAhQ7Tny9+q3ptJSkrSHjQ3e/Zsnn32Waj69N6+fbs23fjx48nLy4OqN0pwcDCffvopVB1WdenSBVdXV/z8/HjnnXcA+O677/Dy8uLdd9+la9euvPDCC1B1CDto0CC8vLy059QfOXKErKws/vKXv+Dl5UVAQAA7duyosebKykpee+01wsPDtZ7ctGnTsLKyYvv27fTv35/OnTszd+5cfHx8iIyMJCUlBV9fXxYtWkRQUBAtWrRg4sSJXL58WZv/s88+Y9euXXh6erJz507Onj2Lq6srGzZsoEWLFgBcvHiRF154gdatW9OyZUsmTZqktTFv3jymTJnC888/j7e3N23btmXr1q1a3bXtA1T1TDt27Gi0Xap7UFT1unNycggLCyMoKIjw8HCWLl3Kvn37+O2339iyZQvdunXj6NGjODg4AJCWlsbYsWPx8vLC29ubzZs3AxAaGkpaWhozZ87Ey8uL3NxcKioqOHHihNEya9oeWVlZBAcHY2ZmRt++fenbty8Aly9fpnHjxixYsIA+ffrQrVu329r/srKyWL16NY888ohRz7T6iOCTTz4hNDQUNzc3hg8fTnFxMS+++CKjR482amfYsGE888wzRuuPa4KzepiLiwtOTk4AODg4UF5eTmxs7G3VejP1PkzPnz+Pr68v3bt3x9fXl/Pnz9/R/Lt372bGjBksX76c1NRUzM3Nad++PTY2NsTExDB8+HB69OhBfHw8n3/+OUuWLCEzMxODwYBer0cpxaFDh5g5cyZr1qzRPtkmTJjA7t272bhxIykpKbi4uLBq1SqoCv6kpCTCw8NJSEhg9OjR/PTTT4wbN47JkyeTkZHBG2+8QXx8PJaWljz66KMEBQUxc+ZMMjMztSDasmULAB06dABgxowZ7Nixg61bt5KUlISjoyOvvvoqVAXtzeq9meqe6YIFC9i2bRsrV64EwN/fX/sQi46OZteuXezbtw+AzZs3o9PpGDNmDIsXL2bFihWsX7+eM2fO0KNHD9LT07V1ceXKFby8vPj1119ZuHAhWVlZPPbYYzz++OOcPHmSYcOGkZOTQ+fOnZkxYwZUhe2aNWvo3Llzrdv10qVLDBo0CIDU1FS+/fZbXn31VWxsbIymdXNzIzc3l8rKSs6dO4eNjQ379+9n8+bNREdHs3btWgDmzJmDubk533zzDZmZmQwfPhw3NzeWLl2Kl5cXjRo1oqysjNGjR1NaWsrhw4f58ccfiYmJYfXq1QBcuXKF6OhohgwZQnx8PL169eK9994DuOk+cPbsWc6fP28UpomJiUbBdvz4cczMzLT9AaBPnz4ApKena+u0enxOTg5DhgzB0dGRAwcOEBsbS8+ePQF4++23sbOzIz09nYyMDJo2bcrJkycpKyszWmZN28Pd3Z2pU6fSv39/MjMz+f7776EqqJRS5ObmEhUVxQ8//HDLfa96vQcFBWnr5dKlSwBYW1tz9uxZDh06xLZt29izZw8HDx4kKioKX19fUlNTtTbi4+M5ePAgf//737VhSUlJWFtb07Jly1rXKVUfzNX7692o92G6a9cu7bDz3Llzd/wkzYiICEaPHk23bt2wtrbGzc1N68m88cYb9OzZk5dffhk7OztiY2NxcnKiefPmnDx5koCAAJ5//nkaNWpEUFAQAGZmZuzbt49vv/2WZcuWERQUxIULFzh16pT2CZiYmMi0adPw9/fHzMwMKysrXn75ZSZNmsTo0aOxsLDg9OnTWlCUl5cTFxdHcHCwUe1JSUnY29vj6elJSkoK69atY9WqVfj4+GBnZ8fQoUNJSEgAuGm9N3Px4kXOnTvH1q1b+eKLL4iMjMTDwwMAPz8/9Ho9ZWVl/POf/6R58+ZERUVRWVnJe++9xz//+U9ycnJYuHAhS5YsISgoCHNzc06dOqW9Nr1ez+DBg3n88ccBsLW1JSoqChcXFyZOnIilpSXe3t5anZWVleTk5FBZWUn37t3x9PSsse6vvvqKBx54AHNzcwAOHjyImZkZQ4YMuWHajIwMXFxcyMrKolmzZoSHh+Pg4EBISAgPPvig1rs/evQo5ubm+Pv7G82fmJioBdQXX3xBVlYWy5cvx8nJCQ8PD7p3764dlaSlpfGXv/yFwYMHY29vj5+fH2ZmZiilbroPHDt2DFtbW3x8fADIz88nNzfXqFcVHx9P69atjQ6/CwoKAGjUqBE6nQ69Xq/V+v777+Pm5saKFSto2bIlTZo0wc3NDYDDhw8TFBRktH8kJiai0+lo166dNqy27XH48OEb9tfExESaNGnCvHnzsLCwuOlpgmpHjx5l69atvPnmm9rRUfWhflpaGjqdjkWLFuHq6kpgYCCWlpaYmZnRvn17srKytCPMtWvXEhwcTNeuXbW2q4+4qveR6mHXrtPCwkJKS0spKyu7Za23Uu/D9PrnnN/pc8/t7Oy0Q9PY2Fh27NjB0KFDtZ7FsWPH8Pb2xtvbm507d7J161YaNGiAXq/Hz89Pa+fEiRM0bdoUJycnDh48iJ2dHaNHj6ZFixb069ePwYMHM2XKFC5dusTZs2fp3bu3Nm98fDwpKSk89dRT2rDDhw9rb6S4uDjKy8uNeiVUBVH1ho+OjqZx48ZGNeXn59OkSRNt2trqvZnqQ6G9e/cSFhaGt7e3Ni4gIAC9Xs/KlSuxt7dn/vz57Nu3jy+//BIrKytGjRpFZGQkzZs3p1+/fgCUlpYSFxenvbbExER69ep1wzYpKiqitLSU3NxcVqxYwdChQ6HqIkGrVq3o2rUry5cvr7Xun376SfvAoOoQuEmTJjRs2NBoutTUVE6dOsWDDz5IYmKi0TqiKowaN24MVftHQEAADRo0uGE7VAdUVFQUoaGhRtPk5eVp2yEhIcFoGSdPnsTHx+eW+8Dx48e14OWa01rX9qLi4uJuqP+7777D3NycoKAgKioqSE1N1faZAwcOMGzYsBovLMbGxt4QhsnJyXh7exv17GvaHgaDgaNHj9YYpg8++CCWlpY3LK82s2bNYujQoXTp0gVHR0ecnZ21Q/2EhAS8vLywt7cHIDMzk7KyMnx8fGjfvj1KKdLS0sjLy+Prr79m8uTJRm1fH5wGg4HU1FSjdVp9Nf/6c8e/R70P0x49erB48WKGDx/O4sWL6dGjxx3NP3PmTKytrXnggQcYNWoU06ZN47HHHtPGr1+/nri4OE6fPs23336rvUETEhKMNkRCQoLR4VVAQAAnT57k+PHjnDx5klmzZmFmZoZer8fS0lK7oEPVIZiFhYX2qZ6fn09MTIx2sSE2NpY2bdrc8El+7Zu4sLCQ5s2bG42PjIxkwIABt1VvbZKTk/Hw8ODzzz9nw4YNHDx4UBvn7+/P6dOnef/991myZAn9+/fn8uXLzJgxg+nTp2NmZkZGRobRYVR0dDTl5eUEBgZqb+7r63jkkUcYM2YMAwcOpHPnzvj7+2unNpo0acKGDRtYsGAB//rXv2o8TZGfn8/Fixfx8vLShrm4uGjDrzV37ly8vb0JCwsz+nCi6lzd8ePH6d+/v7Ydrv9Aq2k7uLi4aOMuXLjAwYMHGTBgAEVFRWRmZhq93vj4eDp06HDLfeD67ZWYmIi9vb3RBcm4uDgCAgK0v0+fPs2iRYt48skncXJy4sSJE5SWlmrtFBUV3fDhUu3IkSMEBgYaDavpELim7ZGcnExRUdFNP/xvx+7duzl48CDff/89LVq0oEWLFly6dEnrmV6/TuLj47GysqJ169a4uLjg6OjIiRMn+Pjjj3FycmL48OFG7V9/zvnUqVOUlJQYDfvll18wNzev9XTSnaj3YQrw17/+lY8//viGW1ZuR+PGjWnTpg1ZWVl8+OGH2jkVKysrAgICWL16NYWFheTm5vLrr79C1aFNcnKyUS+g+k0B0KVLF2JjY/nuu+8wGAzs379fuz0lMTGRtm3bGn06u7u7U1FRQVpaGuXl5bz88suUl5djZ2cHVT2b/Px80tPTje57u/ZNHBgYSGpqKocPH6akpIR3332XM2fO8Nxzz92y3ptJSkqiU6dODB48mL///e9MnTqVwsJCqDoKsLKyYty4cXTs2BE7OztCQ0Np1aoVDz/8sPbaMjMzKSkp4fz587z55ptYWlpiZWXFyZMnKS0tveENZmZmRs+ePUlOTmb69Om888472NrakpyczJYtW8jPzyc7O5vGjRtrF1KuVVFRAVWHttUGDRqEjY0NU6dO1c5lPvXUU+zfv59169ZhaWmJXq+noqKCS5cucfjwYcaPH0/v3r21MM3NzeXUqVPk5ORw9uxZqDq1lJeXp63LgIAA9u3bR05ODvn5+bzwwgt06dKFAQMGoNfrMTMz0w6TKyoqSE5OpkOHDrfcB/Lz842ufldfya925coVTp48ia2tLb/99hurVq1iwIABdOjQgXnz5mn7S+PGjbUP3eDgYD766CMSExNJT09nz549Wl0FBQXo9Xqys7O1c5TXh2lt2yM3NxeqTk2cPHlSuz/52tMhVIVl27Zta7x4XFFRwZtvvsnf/vY3MjIyOH36NKdPn+bxxx/XeqbXH23Fx8fj4+Oj3W3RsWNHdu7cyYYNG7RTRtUuXrxIdna20b5XfRrj2td46NAh+vTpc1t3P9zKfRGmd6tPnz6EhYXx4osv0rVrV4qKigBYuXIl+fn5hISEEBYWpgXZiRMnKCkpMdoxru35DR48mPDwcP7xj3/g7+/PvHnzsLKyglo+nauvvA4dOpSePXtiY2ND06ZNSU5OhqqemrW1Nd26dWP27NkAlJSUkJaWptUwePBgJk+ezJNPPomvry9Hjx5l165dNGvW7Jb13kxycrI23RtvvIG9vb12F4C5uTn9+/dn+vTp2vQDBgwwukvgqaeeonXr1gQHBzNixAh69epFaWkp6enp2n1+Ne2oPj4+jB07ls8++4yAgABiYmI4evQob731Fh07dmTfvn013qZEVW+pQYMGRoejTZs2ZcuWLZw/f54RI0YwadIkGjZsSHR0NMHBwVRWVpKSksJvv/2Gn58fTz31FN27d2fDhg1aGxMnTuTXX38lODhYu39Sr9fToEED7Ujj5ZdfxsfHh5CQEHr06KH16nU6HQkJCbRp00bbF1JSUigrK6NDhw633AeeffZZoqOj+frrr6GGQ9SEhAQMBgP//Oc/GTlyJJGRkcycOZOIiAhtPVz74Qvwzjvv4OXlxcCBA3nooYe0UzoWFhZMmjSJZcuWERoaqn3opaWlGS2ztu3RtWtXQkJCGDNmDMOGDYOqDsH153j9/f25evVqjbfaffTRR5w7d067gFqtVatWJCcnU15efkPP9Pq/J0yYwK5duygoKGDChAlG7dR2Jd/Dw0M7bXD16lWio6O1O0zu1k3v0l67du2bfn5+/7qdHs794OzZs/j7+/Pzzz/fcDgj6k7Xrl2ZPHkyf/vb3257nkcffZQJEyZoPeRbSUlJITQ0lDNnztR66FuftGrVildeeYUpU6b8IcurvvPgwIEDRqcS7sbZs2cZN24c//73v+/oPOqd6NevH/7+/ixbtsxo+Mcff8ysWbNIT0/Xzhk/88wzFBUVabeHffjhhxw8eFD7NtTN7Nixo7iioqL9pEmTztQ2zY0f+/9DkpKS2L59OyNHjsTS0pI1a9bQrl27O76IdT9buXIln3/+eY3jJkyYoN1T+kcpKSlhzpw5jBw5Ejc3N/bu3cv58+e1C1i3Kzw8nOjo6NsOU71ej6en530RpGfPnuXixYs0b97c6OLWvVR9COzg4EBhYaHRKZTfo7KykrfffptPP/3U5EFqMBiIjo5m27ZtJCYm8uGHH2rjSkpKuHTpEkePHqVdu3bodDoKCwu5evUqer2egQMHQtV1jJ07d2r3SZvC/3SYlpaW8sMPP2hXo8PCwtixY4fRrRL/68LDwwkPD6/rMjSXL18mJyeHMWPGYDAY6NatGzt37jS6iHU7qm8Uv13V57LvB9WHqM888wwBAQEcOHDgD1mmUopOnToxZcoU3n777btqz9zcXLtf2dSuXr3KxIkTad++PZs2bTLadz744ANmzZoFoH0z7Nlnn+W7774D4MUXX4Sqnvgnn3xy1x8a1/pTHeYLIcTvcTuH+X+KC1BCCHGvSZgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJSJgKIYQJ3PKBehkZGaUFBQWlf0w5QhhTSpkrpXQ6na5Sp9Opuq5H/DlVVFTc8rG2Nw1Tg8Gw9fLly0mXL182aWFC3K6MjIxXKioqOjdqin0axgAADyhJREFU1OjdJk2axNZ1PeLP6/Lly/k3G3/Tp5MKUdeeffbZncAwpdSI9evX76zreoSojZwzFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFUIIE5AwFfWaUsoAYGZmJveYinpNwlTUdzr+e8+z3MYn6jUJUyGEMAEJU1HfKf57uC89U1GvSZgKIYQJSJgKIYQJSJiKeq36l6LMzMzkMF/UaxKmQghhAhKmol5TSskFKHFfkDAVQggTkDAVQggTkDAV9ZpcgBL3CwlTIYQwAQlTIYQwAQlTUa9VX82XHzoR9Z2EqRBCmICEqajv5D5TcV+wqOsCxP1PKWUFmN+Ltl988UVzg8GAjY2NlVLK5l4sQ6fTXbkX7Yo/F/m0F3dNKbUf6F3XddyFBjqdrryuixD3NznMF0IIE5AwFUIIE5AwFfcFf39/nnjiCaNhH330Ec2aNSMjI6PO6hKimoSpuG81bNgQBwcHzM3vybUvIe6IhKm4Z6rut79nxowZQ2pqKu7u7vd0OULcDglTYRLPPfccLi4uREZG4uPjg5mZGfv27QNg//79PPDAAzRs2BBvb28mTpxIdna2Nq+joyMDBw6ke/fu2NjY4OXlxRtvvEFFRUWty5swYQI6nQ6dTmc03a2WtWDBAjw9PbGzs6NHjx5ER0ffs3UihBB3RCm1Pzw8XFlbW6uAgAC1d+9eFRERoQwGg4qKilKWlpZq4sSJ6rPPPlNLly5VrVq1Uu3bt1fFxcVKKaUcHByUp6en2rJlizp48KCaPn26Mjc3V88995yq5ufnp/7yl79of8fGxqrx48crQJWXlyul1C2XFRUVpQA1duxY9emnn6onn3xSbd++XSmlLOt6HQohhBamgPrPf/6jrtWhQwejUFRKqaSkJAWobdu2aWE6bdo0o2meffZZZWlpqfLz82sMU6WUmjdvnlGY3mpZH3zwgQLUzz//rK4jYSrumhzmC5OxtbUlJCRE+zs9PR29Xs/atWuxtrbW/nXs2BGAM2fO1NrWoEGDKC8v58iRI7e17NtZ1tChQ3F2dmbcuHHs2rXrrl+vENeSr5MKk7GzszP6OycnB4A333yTUaNG3TC9m5tbrW05OTkBUFRUdFvLvp1lNWrUiJ9//pmXXnqJhx9+mO7du7N582a5gCVMQsJU3DPVgXjlyhXat29/R/NW91o9PT1Nuqx27dqxe/du9u3bxyOPPMKECRPYu3fvHdUmRE3kMF/cM23btsXb25uPPvqI4uJibXhFRQVlZWW1zqeUYsOGDTg5OeHr6wuAlZUVFy5cuOtllZaWAtCvXz+GDRt226cRhBDinqu+ANW8efPrL+yobdu2KZ1Op/z9/dXKlSvV0qVLVXBwsFqyZIk2jYODg/Lw8FCLFy9Wq1evVv369VOAWrhwoTbN3/72N6XT6dRLL72kSktLa7wAdatlxcTEKG9vb7Vw4UK1atUq5ezsrAYOHCgXoIQQ9cPNwlQppXbt2qWCg4NVgwYNVJMmTdSoUaPUkSNHjMI0JCREBQYGKisrK9W6dWu1aNEiozbOnTunRo0apRwdHdXFixdrDNNbLevYsWNq0KBBysnJSTk6OqoRI0aozMxMCVMhRP2glNpfY4repppujfqDSZiKuybnTIUQwgQkTIUQwgTk1ihhCnnAqd8788WLF2sdV1RU1LSsrMzOxsYmr2HDhrd30+mdu7e/yCL+FCRMhSk0AVrei4bt7e2vXUaTe7EMeXyPMAU5zBdCCBOQMBVCCBOQMBVCCBOQMBVCCBOQMBX13sCBA7Vf1d+8ebNJ2lyxYoXWZrt27ZqZpFEhhLgb1d+Amjhxoho0aFCNXzHq06ePevHFF2/5VaTw8HD19ddfGw1zdXVVs2bNUtnZ2aqsrKzWec+ePatGjBihMjIybrmcoqIilZ2drVxdXVVQUFDTul6H4v4nPVNhMkePHqVTp041jgsLC+OBBx646fxZWVmsXLkSf39/bVhBQQHZ2dmEhITg4uKCpWXt3/zct28fMTExN/3ZvsrKSqj67VVbW1uys7Np3Lhx7T9hJYQQfxSl1P7y8nJlZWWlNm/efEMvsHXr1gpQkZGRSimlDhw4oDp37qwaNmyoAgICVFJSksrIyFBWVlbKzMxM2draqs6dOyullPrhhx8UoE6fPq21V9P8n3/+ubKwsFCWlpbK1tZW6wV/8803ys7OTs2ZM0e1bdtWPf3001o7hw4dUoB66aWXGtb1OhRCCJRS+48fP64AlZycfEOYpqSkaIFoMBhU06ZN1axZs1ReXp7avHmzqqioUEopNX36dDVkyBCjeVetWqXs7OyUwWBQSqmbzh8aGmr0s31KKTV//nxlZmamPv30U6WUUpcvX9bGrV+/XllbWyv5oRNhCnKYL0zi6NGj2NnZ0aZNmxvGJSQk0KhRI7y9vVFKUVlZyalTp2jYsCGPP/445ubmAPznP/8xeoYUQHx8PH5+fuh0//2SUm3zl5eX89tvv90wf1xcHMOHD2fcuHFQ9Zyqa+u60ycACFEbCVNhEkePHiUwMBAzsxt3qbi4OO08qJmZGXv37kWv19O6dWvtkSEGg4HDhw/fEIYJCQn4+flpf9c2/9GjRykvLyc4ONho/vj4ePr3719jzQkJCUbnZ4W4GxKmwiSOHj1KUFBQjeOOHz9OQECA9nfnzp2JiYnhoYce4qWXXgJAr9dTVFRE586djea9Pkxrm/+XX36hXbt2Rj3PiooKkpKSjJZ9q7aF+L0kTIVJHDt2jKZNm5KUlKT9y87OhqqeaXWg7dy5kwMHDpCXl0dBQYF2WuD8+fMAxMbGkpqailKKnJwc8vLyjALvZvPn5uZy6tQp0tLSAEhNTaW0tLTG3mdBQQFnz56VnqkQov44ffr0z1U/Y2f0b/r06erq1avK3NxcHThwQCml1AsvvKAcHR2Vg4ODGj16tMrOzlZKKXXlyhXVvXt3ZWFhoVxdXZXBYFBRUVEKUGfOnNEuGtU2f3x8vPLy8lKWlpbqscceU0optXnzZuXq6lrjfaY//vijAtSpU6fkApQQon6428eW1Ob9999XDg4O96JptWbNmmvvEpAwFXdNDvNFvRUfH0+bNm3Iycnh6tWrJmmzpKSEnJwcYmNj6dChg3aXgBBC1Ll71TMNDQ3VThls377dJG0uWrRIa3PixInVg6VnKu6afCyLu6aUeh34f+3dwWtURxzA8d+wkqbpgixq3aBIFXIpSDHSs2B09S8ICnspqCcvFkpTrNCDtJ5qS4USd7sbSEDMguYgKFTbUz0IiQdpDz1YtNDEINtN05Zos2966D4Qmo3ZzZuZ3zPfD4gSw3u/w/DN7Oz6dPKBzUePHr09Ozu7f8uWLT8NDAxMu7iHiLxnjGk6ujY2CGIK1U6dOnVGRD631l4slUrvh54HaIczU6hmrY1af2StQjUWKLQjpkgFFii0i88yM4HnAFZFTKEdO1OkAgsUqhljotbvrFWoxgKFalEUNeW/N6J4mQ/ViClUy2Qy7EyRCixQqMZHo5AWLFCoFsfUWstahWosUKgW/zNPYwxnplCNmEI1dqZICxYotOPMFKnAg06gysmTJ20Hzxj94/Lly5vdTgSsDT/tocpaQ2qtXRKR884HAtaImEKVKIq+tdau+lh9a62IiH3+/HnJ22DASxBTqGKMOSMir7WC+T+try8ZYz4bGxtr+J4PaIeYQpVSqfSjtXZcRJ61+x5jjFleXv7C72TA6ogp1DHGfCoiPW3+eimKoq8rlcqi57GAVRFTqFMqlX42xkxaa/9+8eutl/gZEbkQbDigDWIKlaIo+miFs9MlEfmyXC4/CTcZsDJiCpXK5fIv1tqv4rPTVlR7ms3mxdCzASshptDsgjEmY60VY8zfIvJNpVL5LfRQwEqIKdQql8tPrLVlEfmntSv9JPRMQDvEFKrl8/lLuVzOWmtr7EqhGTGFanv27Pn+4MGDy0NDQ7+GngUAUqlarc4/fvzY1ut1e+fOnT+vXLnCR6IAoBMvhjT+RVABoAMrhZSgQjueZwpVqtXq/NDQ0LZsNtv2e+7fv//X/Pz8pePHj494HQ5YBTGFGmsJaYygQhtiChU6CWmMoEITYorguglpjKBCC2KKoNYT0hhBhQbEFMEkEdIYQUVomdADYGNKMqQiIv39/T2Li4v7CoVC37Vr175L5KJAB4gpvEs6pLFWUN8pFApZggrfiCm8chXSWH9/fy9BRQjEFN64DmmMoCIEYgovfIU0RlDhGzGFc75DGiOo8ImYwqlKpTJ36NChN32HNEZQ4QsxhTOtkG7LZrNBP89MUOEDMYUTL4RUxf/mQFDhGjFF4rSFNEZQ4RIxRaK0hjRGUOGKygWPdHIR0rNnz0qhUEjqciIiMjg4uDmfz5+emJg4n+iFsaGxM0Uikg7p8vKyjIyMyO7du6Wvr08ePnwoPT09sn379iQuzw4VidsUegCkn4sd6dOnT+XBgwdy8+ZNyWQy0tvbK7lcTvbu3ZvULWRwcHDzzMzM6YmJCSkWix8ndmFsSOxMsS6uzkiz2axs3bpVpqenZdeuXXL06FE5ceJEkrcQYYeKBHFmiq65frPp3r17cuzYMTl37pzcvn1blpaWXNyGM1QkgodDoyu+37W31ooxbpfrzMzMwtzc3CVe8qMb7EzRsdHR0Q8GBgae+fz4k+uQSmuHKiLD1Wr1Lec3wyuHM1N07MaNG3cPHDiwqdFo7Nu5c+cboedJSq1Wi7LZbL5YLP4eehakDzFFV6ampu4ePnzYvipBrdVqUS6X6xkeHm6GngXpREzRtVclqIQUSSCmWJe0B5WQIinEFOuW1qASUiSJmCIRaQsqIUXSiCkSk5agElK4QEyRKO1BJaRwhZgicVqDSkjhEjGFE3FQFxYW3t2xY8froechpHCNmMKZqampu0eOHJFGo7E/ZFAJKXwgpnDq+vXrP4QMKiGFL8QUzoUKKiGFT8QUXvgOKiGFb8QU3vgKKiFFCMQUXrkOKiFFKMQU3rkKKiFFSMQUQSQdVEKK0IgpgkkqqIQUGhBTBLXeoBJSaEFMEVy3QSWk0ISYQoVOg0pIoQ0xhRprDSohhUbEFKq8LKiEFFoRU6jTLqiEFAC6MD4+/uGtW7fq9Xrdjo6ONicnJ/nhDwDduHr1anFsbGzWWmtCzwIAAAAAAAAAAAAAAAAAAAAAnfoXSX6oSwsOvd0AAAAASUVORK5CYII=",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": []
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from haystack.components.retrievers.in_memory import InMemoryBM25Retriever\n",
    "\n",
    "rag = Pipeline()\n",
    "rag.add_component(\"retriever\", InMemoryBM25Retriever(document_store=document_store, top_k=3))\n",
    "rag.add_component(\"prompt_builder\", prompt_builder)\n",
    "rag.add_component(\"llm\", generator)\n",
    "\n",
    "rag.connect(\"retriever.documents\", \"prompt_builder.documents\")\n",
    "rag.connect(\"prompt_builder.prompt\", \"llm.prompt\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "83590e3a-19b9-48f0-8be0-e7b261e108be",
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_generative_answer(query):\n",
    "\n",
    "  results = rag.run({\n",
    "      \"retriever\": {\"query\": query},\n",
    "      \"prompt_builder\": {\"query\": query}\n",
    "    }\n",
    "  )\n",
    "\n",
    "  answer = results[\"llm\"][\"replies\"][0]\n",
    "  rich.print(answer)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "96d5d6cb-4f64-4868-8422-7e1b0de2eeab",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "caedfe02853a45eeaa5653a6bed4456d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Ranking by BM25...:   0%|          | 0/1563 [00:00<?, ? docs/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">\n",
       "The male vocalist featured in Evanescence's <span style=\"color: #008000; text-decoration-color: #008000\">\"Bring Me to Life\"</span> is Paul McCoy of <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span> Stones. His voice complements \n",
       "Amy Lee's in the song by adding a powerful and distinct element to the track. Lee's powerful and emotive vocals are\n",
       "enhanced by McCoy's smooth and melodic delivery, creating a powerful and emotional song that stands the test of \n",
       "time.\n",
       "\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\n",
       "The male vocalist featured in Evanescence's \u001b[32m\"Bring Me to Life\"\u001b[0m is Paul McCoy of \u001b[1;36m12\u001b[0m Stones. His voice complements \n",
       "Amy Lee's in the song by adding a powerful and distinct element to the track. Lee's powerful and emotive vocals are\n",
       "enhanced by McCoy's smooth and melodic delivery, creating a powerful and emotional song that stands the test of \n",
       "time.\n",
       "\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_generative_answer(\"Evanescence's \\\"Bring Me to Life\\\" features a male vocalist. Who is he, and how does his voice complement Amy Lee's in the song?\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "9a59e7f6-83ce-4b6c-9c62-c013c9894512",
   "metadata": {},
   "outputs": [],
   "source": [
    "nice_questions_to_try=\"\"\"What was the original name of Sum 41?\n",
    "What was the title of Nirvana's breakthrough album released in 1991?\n",
    "Green Day's \"American Idiot\" is a rock opera. What's the story it tells?\n",
    "Audioslave was formed by members of two iconic bands. Can you name the bands and discuss the sound of Audioslave in comparison?\n",
    "Evanescence's \"Bring Me to Life\" features a male vocalist. Who is he, and how does his voice complement Amy Lee's in the song?\n",
    "What is Sum 41's debut studio album called?\n",
    "Who was the lead singer of Audioslave?\n",
    "When was Nirvana's first studio album, \"Bleach,\" released?\n",
    "Were the Smiths an influential band?\n",
    "What is the name of Evanescence's debut album?\n",
    "Which band was Morrissey the lead singer of before he formed The Smiths?\n",
    "Dire Straits' hit song \"Money for Nothing\" features a guest vocal by a famous artist. Who is this artist?\n",
    "Who played the song \"Like a stone\"?\"\"\".split('\\n')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "4761d159-ae88-48c2-a0e2-3d2577a715b7",
   "metadata": {},
   "outputs": [],
   "source": [
    "q=random.choice(nice_questions_to_try)\n",
    "print(q)\n",
    "get_generative_answer(q)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "26f1de6b-1287-47f3-8156-7589929a123f",
   "metadata": {},
   "source": [
    "This is a simple demo. We can improve the RAG Pipeline using better retrieval techniques: Embedding Retrieval, Hybrid Retrieval..."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}