@query-farm/vgi 0.41.0 → 0.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/vgi-service.d.ts +1315 -0
- package/dist/index.js +1845 -780
- package/dist/index.js.map +16 -15
- package/dist/protocol/dispatch.d.ts +25 -3
- package/dist/protocol/handlers/aggregate.d.ts +3 -2
- package/dist/protocol/handlers/catalog/admin.d.ts +2 -2
- package/dist/protocol/handlers/catalog/index.d.ts +3 -2
- package/dist/protocol/handlers/catalog/index_methods.d.ts +2 -2
- package/dist/protocol/handlers/catalog/macro.d.ts +2 -2
- package/dist/protocol/handlers/catalog/shared.d.ts +7 -14
- package/dist/protocol/handlers/catalog/table.d.ts +2 -2
- package/dist/protocol/handlers/catalog/view.d.ts +2 -2
- package/dist/protocol/handlers/function.d.ts +3 -2
- package/dist/protocol/handlers/shared.d.ts +0 -1
- package/dist/protocol/handlers/table-buffering.d.ts +3 -2
- package/dist/protocol/handlers/unimplemented.d.ts +4 -0
- package/dist/serve-entry.js +1844 -780
- package/dist/serve-entry.js.map +16 -15
- package/dist/worker-cf-entry.js +1845 -780
- package/dist/worker-cf-entry.js.map +16 -15
- package/package.json +1 -1
- package/src/generated/vgi-service.ts +2678 -0
- package/src/protocol/dispatch.ts +51 -24
- package/src/protocol/handlers/aggregate.ts +205 -232
- package/src/protocol/handlers/catalog/admin.ts +228 -299
- package/src/protocol/handlers/catalog/index.ts +17 -16
- package/src/protocol/handlers/catalog/index_methods.ts +26 -36
- package/src/protocol/handlers/catalog/macro.ts +54 -77
- package/src/protocol/handlers/catalog/shared.ts +30 -47
- package/src/protocol/handlers/catalog/table.ts +205 -270
- package/src/protocol/handlers/catalog/view.ts +59 -85
- package/src/protocol/handlers/function.ts +127 -156
- package/src/protocol/handlers/shared.ts +0 -4
- package/src/protocol/handlers/table-buffering.ts +53 -71
- package/src/protocol/handlers/unimplemented.ts +30 -0
package/dist/index.js
CHANGED
|
@@ -11034,8 +11034,1260 @@ function arrowToMetadatas(batch) {
|
|
|
11034
11034
|
}
|
|
11035
11035
|
return results;
|
|
11036
11036
|
}
|
|
11037
|
-
// src/
|
|
11038
|
-
|
|
11037
|
+
// src/generated/vgi-service.ts
|
|
11038
|
+
init_arrow();
|
|
11039
|
+
import {
|
|
11040
|
+
MethodNotImplementedError,
|
|
11041
|
+
Protocol
|
|
11042
|
+
} from "@query-farm/vgi-rpc";
|
|
11043
|
+
var VGI_PROTOCOL_NAME = "vgi.v2";
|
|
11044
|
+
var VGI_PROTOCOL_VERSION = "2.1.0";
|
|
11045
|
+
function exchangeStream(callbacks) {
|
|
11046
|
+
return { kind: "exchange", ...callbacks };
|
|
11047
|
+
}
|
|
11048
|
+
function producerStream(callbacks) {
|
|
11049
|
+
return { kind: "producer", ...callbacks };
|
|
11050
|
+
}
|
|
11051
|
+
var VGI_V2_METHODS = [
|
|
11052
|
+
{
|
|
11053
|
+
name: "aggregate_bind",
|
|
11054
|
+
key: "aggregateBind",
|
|
11055
|
+
type: "unary",
|
|
11056
|
+
params: schema2([
|
|
11057
|
+
field2("request", binary2(), false)
|
|
11058
|
+
]),
|
|
11059
|
+
result: schema2([
|
|
11060
|
+
field2("result", binary2(), false)
|
|
11061
|
+
]),
|
|
11062
|
+
doc: "Bind an aggregate function, return output schema and execution_id."
|
|
11063
|
+
},
|
|
11064
|
+
{
|
|
11065
|
+
name: "aggregate_combine",
|
|
11066
|
+
key: "aggregateCombine",
|
|
11067
|
+
type: "unary",
|
|
11068
|
+
params: schema2([
|
|
11069
|
+
field2("request", binary2(), false)
|
|
11070
|
+
]),
|
|
11071
|
+
result: schema2([
|
|
11072
|
+
field2("result", binary2(), false)
|
|
11073
|
+
]),
|
|
11074
|
+
doc: "Merge source states into target states."
|
|
11075
|
+
},
|
|
11076
|
+
{
|
|
11077
|
+
name: "aggregate_destructor",
|
|
11078
|
+
key: "aggregateDestructor",
|
|
11079
|
+
type: "unary",
|
|
11080
|
+
params: schema2([
|
|
11081
|
+
field2("request", binary2(), false)
|
|
11082
|
+
]),
|
|
11083
|
+
result: schema2([
|
|
11084
|
+
field2("result", binary2(), false)
|
|
11085
|
+
]),
|
|
11086
|
+
doc: "Best-effort cleanup of aggregate states. Must not raise."
|
|
11087
|
+
},
|
|
11088
|
+
{
|
|
11089
|
+
name: "aggregate_finalize",
|
|
11090
|
+
key: "aggregateFinalize",
|
|
11091
|
+
type: "unary",
|
|
11092
|
+
params: schema2([
|
|
11093
|
+
field2("request", binary2(), false)
|
|
11094
|
+
]),
|
|
11095
|
+
result: schema2([
|
|
11096
|
+
field2("result", binary2(), false)
|
|
11097
|
+
]),
|
|
11098
|
+
doc: "Produce results for a chunk of group_ids."
|
|
11099
|
+
},
|
|
11100
|
+
{
|
|
11101
|
+
name: "aggregate_streaming_chunk",
|
|
11102
|
+
key: "aggregateStreamingChunk",
|
|
11103
|
+
type: "unary",
|
|
11104
|
+
params: schema2([
|
|
11105
|
+
field2("request", binary2(), false)
|
|
11106
|
+
]),
|
|
11107
|
+
result: schema2([
|
|
11108
|
+
field2("result", binary2(), false)
|
|
11109
|
+
]),
|
|
11110
|
+
doc: "Process one input chunk; returns one output row per input row."
|
|
11111
|
+
},
|
|
11112
|
+
{
|
|
11113
|
+
name: "aggregate_streaming_close",
|
|
11114
|
+
key: "aggregateStreamingClose",
|
|
11115
|
+
type: "unary",
|
|
11116
|
+
params: schema2([
|
|
11117
|
+
field2("request", binary2(), false)
|
|
11118
|
+
]),
|
|
11119
|
+
result: schema2([
|
|
11120
|
+
field2("result", binary2(), false)
|
|
11121
|
+
]),
|
|
11122
|
+
doc: "End the streaming session, free per-session state."
|
|
11123
|
+
},
|
|
11124
|
+
{
|
|
11125
|
+
name: "aggregate_streaming_open",
|
|
11126
|
+
key: "aggregateStreamingOpen",
|
|
11127
|
+
type: "unary",
|
|
11128
|
+
params: schema2([
|
|
11129
|
+
field2("request", binary2(), false)
|
|
11130
|
+
]),
|
|
11131
|
+
result: schema2([
|
|
11132
|
+
field2("result", binary2(), false)
|
|
11133
|
+
]),
|
|
11134
|
+
doc: "Start a streaming-partitioned aggregate session."
|
|
11135
|
+
},
|
|
11136
|
+
{
|
|
11137
|
+
name: "aggregate_update",
|
|
11138
|
+
key: "aggregateUpdate",
|
|
11139
|
+
type: "unary",
|
|
11140
|
+
params: schema2([
|
|
11141
|
+
field2("request", binary2(), false)
|
|
11142
|
+
]),
|
|
11143
|
+
result: schema2([
|
|
11144
|
+
field2("result", binary2(), false)
|
|
11145
|
+
]),
|
|
11146
|
+
doc: "Accumulate rows from a `DataChunk` into per-group state."
|
|
11147
|
+
},
|
|
11148
|
+
{
|
|
11149
|
+
name: "aggregate_window",
|
|
11150
|
+
key: "aggregateWindow",
|
|
11151
|
+
type: "unary",
|
|
11152
|
+
params: schema2([
|
|
11153
|
+
field2("request", binary2(), false)
|
|
11154
|
+
]),
|
|
11155
|
+
result: schema2([
|
|
11156
|
+
field2("result", binary2(), false)
|
|
11157
|
+
]),
|
|
11158
|
+
doc: "Compute an aggregate value for one output row of the window."
|
|
11159
|
+
},
|
|
11160
|
+
{
|
|
11161
|
+
name: "aggregate_window_batch",
|
|
11162
|
+
key: "aggregateWindowBatch",
|
|
11163
|
+
type: "unary",
|
|
11164
|
+
params: schema2([
|
|
11165
|
+
field2("request", binary2(), false)
|
|
11166
|
+
]),
|
|
11167
|
+
result: schema2([
|
|
11168
|
+
field2("result", binary2(), false)
|
|
11169
|
+
]),
|
|
11170
|
+
doc: "Compute ``count`` window output rows in one batched RPC."
|
|
11171
|
+
},
|
|
11172
|
+
{
|
|
11173
|
+
name: "aggregate_window_destructor",
|
|
11174
|
+
key: "aggregateWindowDestructor",
|
|
11175
|
+
type: "unary",
|
|
11176
|
+
params: schema2([
|
|
11177
|
+
field2("request", binary2(), false)
|
|
11178
|
+
]),
|
|
11179
|
+
result: schema2([
|
|
11180
|
+
field2("result", binary2(), false)
|
|
11181
|
+
]),
|
|
11182
|
+
doc: "Evict a cached partition from storage."
|
|
11183
|
+
},
|
|
11184
|
+
{
|
|
11185
|
+
name: "aggregate_window_init",
|
|
11186
|
+
key: "aggregateWindowInit",
|
|
11187
|
+
type: "unary",
|
|
11188
|
+
params: schema2([
|
|
11189
|
+
field2("request", binary2(), false)
|
|
11190
|
+
]),
|
|
11191
|
+
result: schema2([
|
|
11192
|
+
field2("result", binary2(), false)
|
|
11193
|
+
]),
|
|
11194
|
+
doc: "Ship a partition to the worker for windowed aggregation."
|
|
11195
|
+
},
|
|
11196
|
+
{
|
|
11197
|
+
name: "bind",
|
|
11198
|
+
key: "bind",
|
|
11199
|
+
type: "unary",
|
|
11200
|
+
params: schema2([
|
|
11201
|
+
field2("request", binary2(), false)
|
|
11202
|
+
]),
|
|
11203
|
+
result: schema2([
|
|
11204
|
+
field2("result", binary2(), false)
|
|
11205
|
+
]),
|
|
11206
|
+
doc: "Resolve output schema and validate arguments."
|
|
11207
|
+
},
|
|
11208
|
+
{
|
|
11209
|
+
name: "catalog_attach",
|
|
11210
|
+
key: "catalogAttach",
|
|
11211
|
+
type: "unary",
|
|
11212
|
+
params: schema2([
|
|
11213
|
+
field2("request", binary2(), false)
|
|
11214
|
+
]),
|
|
11215
|
+
result: schema2([
|
|
11216
|
+
field2("result", binary2(), false)
|
|
11217
|
+
]),
|
|
11218
|
+
doc: "Attach to a catalog with options."
|
|
11219
|
+
},
|
|
11220
|
+
{
|
|
11221
|
+
name: "catalog_catalogs",
|
|
11222
|
+
key: "catalogCatalogs",
|
|
11223
|
+
type: "unary",
|
|
11224
|
+
params: schema2([]),
|
|
11225
|
+
result: schema2([
|
|
11226
|
+
field2("result", binary2(), false)
|
|
11227
|
+
]),
|
|
11228
|
+
doc: "List available catalog names."
|
|
11229
|
+
},
|
|
11230
|
+
{
|
|
11231
|
+
name: "catalog_contents",
|
|
11232
|
+
key: "catalogContents",
|
|
11233
|
+
type: "unary",
|
|
11234
|
+
params: schema2([
|
|
11235
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11236
|
+
field2("if_none_match", utf82(), true)
|
|
11237
|
+
]),
|
|
11238
|
+
result: schema2([
|
|
11239
|
+
field2("result", binary2(), false)
|
|
11240
|
+
]),
|
|
11241
|
+
doc: "Return every schema and all of its contents in one result."
|
|
11242
|
+
},
|
|
11243
|
+
{
|
|
11244
|
+
name: "catalog_copy_from_formats",
|
|
11245
|
+
key: "catalogCopyFromFormats",
|
|
11246
|
+
type: "unary",
|
|
11247
|
+
params: schema2([
|
|
11248
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11249
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11250
|
+
]),
|
|
11251
|
+
result: schema2([
|
|
11252
|
+
field2("result", binary2(), false)
|
|
11253
|
+
]),
|
|
11254
|
+
doc: "List custom ``COPY ... FROM`` formats advertised by this catalog."
|
|
11255
|
+
},
|
|
11256
|
+
{
|
|
11257
|
+
name: "catalog_create",
|
|
11258
|
+
key: "catalogCreate",
|
|
11259
|
+
type: "unary",
|
|
11260
|
+
params: schema2([
|
|
11261
|
+
field2("request", binary2(), false)
|
|
11262
|
+
]),
|
|
11263
|
+
result: schema2([]),
|
|
11264
|
+
doc: "Create a new catalog."
|
|
11265
|
+
},
|
|
11266
|
+
{
|
|
11267
|
+
name: "catalog_detach",
|
|
11268
|
+
key: "catalogDetach",
|
|
11269
|
+
type: "unary",
|
|
11270
|
+
params: schema2([
|
|
11271
|
+
field2("attach_opaque_data", binary2(), false)
|
|
11272
|
+
]),
|
|
11273
|
+
result: schema2([]),
|
|
11274
|
+
doc: "Detach from a catalog."
|
|
11275
|
+
},
|
|
11276
|
+
{
|
|
11277
|
+
name: "catalog_drop",
|
|
11278
|
+
key: "catalogDrop",
|
|
11279
|
+
type: "unary",
|
|
11280
|
+
params: schema2([
|
|
11281
|
+
field2("name", utf82(), false)
|
|
11282
|
+
]),
|
|
11283
|
+
result: schema2([]),
|
|
11284
|
+
doc: "Drop a catalog."
|
|
11285
|
+
},
|
|
11286
|
+
{
|
|
11287
|
+
name: "catalog_index_create",
|
|
11288
|
+
key: "catalogIndexCreate",
|
|
11289
|
+
type: "unary",
|
|
11290
|
+
params: schema2([
|
|
11291
|
+
field2("request", binary2(), false)
|
|
11292
|
+
]),
|
|
11293
|
+
result: schema2([]),
|
|
11294
|
+
doc: "Create a new index."
|
|
11295
|
+
},
|
|
11296
|
+
{
|
|
11297
|
+
name: "catalog_index_drop",
|
|
11298
|
+
key: "catalogIndexDrop",
|
|
11299
|
+
type: "unary",
|
|
11300
|
+
params: schema2([
|
|
11301
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11302
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11303
|
+
field2("name", utf82(), false),
|
|
11304
|
+
field2("ignore_not_found", bool2(), false),
|
|
11305
|
+
field2("cascade", bool2(), false),
|
|
11306
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11307
|
+
]),
|
|
11308
|
+
result: schema2([]),
|
|
11309
|
+
doc: "Drop an index."
|
|
11310
|
+
},
|
|
11311
|
+
{
|
|
11312
|
+
name: "catalog_index_get",
|
|
11313
|
+
key: "catalogIndexGet",
|
|
11314
|
+
type: "unary",
|
|
11315
|
+
params: schema2([
|
|
11316
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11317
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11318
|
+
field2("name", utf82(), false),
|
|
11319
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11320
|
+
]),
|
|
11321
|
+
result: schema2([
|
|
11322
|
+
field2("result", binary2(), false)
|
|
11323
|
+
]),
|
|
11324
|
+
doc: "Get information about an index. Returns 0 or 1 items."
|
|
11325
|
+
},
|
|
11326
|
+
{
|
|
11327
|
+
name: "catalog_macro_create",
|
|
11328
|
+
key: "catalogMacroCreate",
|
|
11329
|
+
type: "unary",
|
|
11330
|
+
params: schema2([
|
|
11331
|
+
field2("request", binary2(), false)
|
|
11332
|
+
]),
|
|
11333
|
+
result: schema2([]),
|
|
11334
|
+
doc: "Create a new macro."
|
|
11335
|
+
},
|
|
11336
|
+
{
|
|
11337
|
+
name: "catalog_macro_drop",
|
|
11338
|
+
key: "catalogMacroDrop",
|
|
11339
|
+
type: "unary",
|
|
11340
|
+
params: schema2([
|
|
11341
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11342
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11343
|
+
field2("name", utf82(), false),
|
|
11344
|
+
field2("ignore_not_found", bool2(), false),
|
|
11345
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11346
|
+
]),
|
|
11347
|
+
result: schema2([]),
|
|
11348
|
+
doc: "Drop a macro."
|
|
11349
|
+
},
|
|
11350
|
+
{
|
|
11351
|
+
name: "catalog_macro_get",
|
|
11352
|
+
key: "catalogMacroGet",
|
|
11353
|
+
type: "unary",
|
|
11354
|
+
params: schema2([
|
|
11355
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11356
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11357
|
+
field2("name", utf82(), false),
|
|
11358
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11359
|
+
]),
|
|
11360
|
+
result: schema2([
|
|
11361
|
+
field2("result", binary2(), false)
|
|
11362
|
+
]),
|
|
11363
|
+
doc: "Get information about a macro. Returns 0 or 1 items."
|
|
11364
|
+
},
|
|
11365
|
+
{
|
|
11366
|
+
name: "catalog_schema_contents_functions",
|
|
11367
|
+
key: "catalogSchemaContentsFunctions",
|
|
11368
|
+
type: "unary",
|
|
11369
|
+
params: schema2([
|
|
11370
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11371
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11372
|
+
field2("type", dictionary2(utf82(), int162()), false),
|
|
11373
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11374
|
+
]),
|
|
11375
|
+
result: schema2([
|
|
11376
|
+
field2("result", binary2(), false)
|
|
11377
|
+
]),
|
|
11378
|
+
doc: "List functions in a schema (scalar or table)."
|
|
11379
|
+
},
|
|
11380
|
+
{
|
|
11381
|
+
name: "catalog_schema_contents_indexes",
|
|
11382
|
+
key: "catalogSchemaContentsIndexes",
|
|
11383
|
+
type: "unary",
|
|
11384
|
+
params: schema2([
|
|
11385
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11386
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11387
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11388
|
+
]),
|
|
11389
|
+
result: schema2([
|
|
11390
|
+
field2("result", binary2(), false)
|
|
11391
|
+
]),
|
|
11392
|
+
doc: "List indexes in a schema."
|
|
11393
|
+
},
|
|
11394
|
+
{
|
|
11395
|
+
name: "catalog_schema_contents_macros",
|
|
11396
|
+
key: "catalogSchemaContentsMacros",
|
|
11397
|
+
type: "unary",
|
|
11398
|
+
params: schema2([
|
|
11399
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11400
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11401
|
+
field2("type", dictionary2(utf82(), int162()), false),
|
|
11402
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11403
|
+
]),
|
|
11404
|
+
result: schema2([
|
|
11405
|
+
field2("result", binary2(), false)
|
|
11406
|
+
]),
|
|
11407
|
+
doc: "List macros in a schema (scalar or table)."
|
|
11408
|
+
},
|
|
11409
|
+
{
|
|
11410
|
+
name: "catalog_schema_contents_tables",
|
|
11411
|
+
key: "catalogSchemaContentsTables",
|
|
11412
|
+
type: "unary",
|
|
11413
|
+
params: schema2([
|
|
11414
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11415
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11416
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11417
|
+
]),
|
|
11418
|
+
result: schema2([
|
|
11419
|
+
field2("result", binary2(), false)
|
|
11420
|
+
]),
|
|
11421
|
+
doc: "List tables in a schema."
|
|
11422
|
+
},
|
|
11423
|
+
{
|
|
11424
|
+
name: "catalog_schema_contents_views",
|
|
11425
|
+
key: "catalogSchemaContentsViews",
|
|
11426
|
+
type: "unary",
|
|
11427
|
+
params: schema2([
|
|
11428
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11429
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11430
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11431
|
+
]),
|
|
11432
|
+
result: schema2([
|
|
11433
|
+
field2("result", binary2(), false)
|
|
11434
|
+
]),
|
|
11435
|
+
doc: "List views in a schema."
|
|
11436
|
+
},
|
|
11437
|
+
{
|
|
11438
|
+
name: "catalog_schema_create",
|
|
11439
|
+
key: "catalogSchemaCreate",
|
|
11440
|
+
type: "unary",
|
|
11441
|
+
params: schema2([
|
|
11442
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11443
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11444
|
+
field2("on_conflict", dictionary2(utf82(), int162()), false),
|
|
11445
|
+
field2("comment", utf82(), true),
|
|
11446
|
+
field2("tags", map2(field2("key", utf82(), false), field2("value", utf82(), true), false), true),
|
|
11447
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11448
|
+
]),
|
|
11449
|
+
result: schema2([]),
|
|
11450
|
+
doc: "Create a new schema."
|
|
11451
|
+
},
|
|
11452
|
+
{
|
|
11453
|
+
name: "catalog_schema_drop",
|
|
11454
|
+
key: "catalogSchemaDrop",
|
|
11455
|
+
type: "unary",
|
|
11456
|
+
params: schema2([
|
|
11457
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11458
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11459
|
+
field2("ignore_not_found", bool2(), false),
|
|
11460
|
+
field2("cascade", bool2(), false),
|
|
11461
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11462
|
+
]),
|
|
11463
|
+
result: schema2([]),
|
|
11464
|
+
doc: "Drop a schema."
|
|
11465
|
+
},
|
|
11466
|
+
{
|
|
11467
|
+
name: "catalog_schema_get",
|
|
11468
|
+
key: "catalogSchemaGet",
|
|
11469
|
+
type: "unary",
|
|
11470
|
+
params: schema2([
|
|
11471
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11472
|
+
field2("path", list2(field2("item", utf82(), true)), false),
|
|
11473
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11474
|
+
]),
|
|
11475
|
+
result: schema2([
|
|
11476
|
+
field2("result", binary2(), false)
|
|
11477
|
+
]),
|
|
11478
|
+
doc: "Get information about a schema. Returns 0 or 1 items."
|
|
11479
|
+
},
|
|
11480
|
+
{
|
|
11481
|
+
name: "catalog_schemas",
|
|
11482
|
+
key: "catalogSchemas",
|
|
11483
|
+
type: "unary",
|
|
11484
|
+
params: schema2([
|
|
11485
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11486
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11487
|
+
]),
|
|
11488
|
+
result: schema2([
|
|
11489
|
+
field2("result", binary2(), false)
|
|
11490
|
+
]),
|
|
11491
|
+
doc: "List schemas in the catalog."
|
|
11492
|
+
},
|
|
11493
|
+
{
|
|
11494
|
+
name: "catalog_table_column_add",
|
|
11495
|
+
key: "catalogTableColumnAdd",
|
|
11496
|
+
type: "unary",
|
|
11497
|
+
params: schema2([
|
|
11498
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11499
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11500
|
+
field2("name", utf82(), false),
|
|
11501
|
+
field2("column_definition", binary2(), false),
|
|
11502
|
+
field2("ignore_not_found", bool2(), false),
|
|
11503
|
+
field2("if_column_not_exists", bool2(), false),
|
|
11504
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11505
|
+
]),
|
|
11506
|
+
result: schema2([]),
|
|
11507
|
+
doc: "Add a new column to a table."
|
|
11508
|
+
},
|
|
11509
|
+
{
|
|
11510
|
+
name: "catalog_table_column_comment_set",
|
|
11511
|
+
key: "catalogTableColumnCommentSet",
|
|
11512
|
+
type: "unary",
|
|
11513
|
+
params: schema2([
|
|
11514
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11515
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11516
|
+
field2("name", utf82(), false),
|
|
11517
|
+
field2("column_name", utf82(), false),
|
|
11518
|
+
field2("comment", utf82(), true),
|
|
11519
|
+
field2("ignore_not_found", bool2(), false),
|
|
11520
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11521
|
+
]),
|
|
11522
|
+
result: schema2([]),
|
|
11523
|
+
doc: "Set or clear the comment on a table column."
|
|
11524
|
+
},
|
|
11525
|
+
{
|
|
11526
|
+
name: "catalog_table_column_default_drop",
|
|
11527
|
+
key: "catalogTableColumnDefaultDrop",
|
|
11528
|
+
type: "unary",
|
|
11529
|
+
params: schema2([
|
|
11530
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11531
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11532
|
+
field2("name", utf82(), false),
|
|
11533
|
+
field2("column_name", utf82(), false),
|
|
11534
|
+
field2("ignore_not_found", bool2(), false),
|
|
11535
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11536
|
+
]),
|
|
11537
|
+
result: schema2([]),
|
|
11538
|
+
doc: "Remove the default value from a column."
|
|
11539
|
+
},
|
|
11540
|
+
{
|
|
11541
|
+
name: "catalog_table_column_default_set",
|
|
11542
|
+
key: "catalogTableColumnDefaultSet",
|
|
11543
|
+
type: "unary",
|
|
11544
|
+
params: schema2([
|
|
11545
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11546
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11547
|
+
field2("name", utf82(), false),
|
|
11548
|
+
field2("column_name", utf82(), false),
|
|
11549
|
+
field2("expression", utf82(), false),
|
|
11550
|
+
field2("ignore_not_found", bool2(), false),
|
|
11551
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11552
|
+
]),
|
|
11553
|
+
result: schema2([]),
|
|
11554
|
+
doc: "Set the default value expression for a column."
|
|
11555
|
+
},
|
|
11556
|
+
{
|
|
11557
|
+
name: "catalog_table_column_drop",
|
|
11558
|
+
key: "catalogTableColumnDrop",
|
|
11559
|
+
type: "unary",
|
|
11560
|
+
params: schema2([
|
|
11561
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11562
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11563
|
+
field2("name", utf82(), false),
|
|
11564
|
+
field2("column_name", utf82(), false),
|
|
11565
|
+
field2("ignore_not_found", bool2(), false),
|
|
11566
|
+
field2("if_column_exists", bool2(), false),
|
|
11567
|
+
field2("cascade", bool2(), false),
|
|
11568
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11569
|
+
]),
|
|
11570
|
+
result: schema2([]),
|
|
11571
|
+
doc: "Drop a column from a table."
|
|
11572
|
+
},
|
|
11573
|
+
{
|
|
11574
|
+
name: "catalog_table_column_rename",
|
|
11575
|
+
key: "catalogTableColumnRename",
|
|
11576
|
+
type: "unary",
|
|
11577
|
+
params: schema2([
|
|
11578
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11579
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11580
|
+
field2("name", utf82(), false),
|
|
11581
|
+
field2("column_name", utf82(), false),
|
|
11582
|
+
field2("new_column_name", utf82(), false),
|
|
11583
|
+
field2("ignore_not_found", bool2(), false),
|
|
11584
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11585
|
+
]),
|
|
11586
|
+
result: schema2([]),
|
|
11587
|
+
doc: "Rename a column."
|
|
11588
|
+
},
|
|
11589
|
+
{
|
|
11590
|
+
name: "catalog_table_column_statistics_get",
|
|
11591
|
+
key: "catalogTableColumnStatisticsGet",
|
|
11592
|
+
type: "unary",
|
|
11593
|
+
params: schema2([
|
|
11594
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11595
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11596
|
+
field2("name", utf82(), false),
|
|
11597
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11598
|
+
]),
|
|
11599
|
+
result: schema2([
|
|
11600
|
+
field2("result", binary2(), true)
|
|
11601
|
+
]),
|
|
11602
|
+
doc: "Get column statistics for a table."
|
|
11603
|
+
},
|
|
11604
|
+
{
|
|
11605
|
+
name: "catalog_table_column_type_change",
|
|
11606
|
+
key: "catalogTableColumnTypeChange",
|
|
11607
|
+
type: "unary",
|
|
11608
|
+
params: schema2([
|
|
11609
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11610
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11611
|
+
field2("name", utf82(), false),
|
|
11612
|
+
field2("column_definition", binary2(), false),
|
|
11613
|
+
field2("expression", utf82(), true),
|
|
11614
|
+
field2("ignore_not_found", bool2(), false),
|
|
11615
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11616
|
+
]),
|
|
11617
|
+
result: schema2([]),
|
|
11618
|
+
doc: "Change the type of a column."
|
|
11619
|
+
},
|
|
11620
|
+
{
|
|
11621
|
+
name: "catalog_table_comment_set",
|
|
11622
|
+
key: "catalogTableCommentSet",
|
|
11623
|
+
type: "unary",
|
|
11624
|
+
params: schema2([
|
|
11625
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11626
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11627
|
+
field2("name", utf82(), false),
|
|
11628
|
+
field2("comment", utf82(), true),
|
|
11629
|
+
field2("ignore_not_found", bool2(), false),
|
|
11630
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11631
|
+
]),
|
|
11632
|
+
result: schema2([]),
|
|
11633
|
+
doc: "Set or clear the comment on a table."
|
|
11634
|
+
},
|
|
11635
|
+
{
|
|
11636
|
+
name: "catalog_table_create",
|
|
11637
|
+
key: "catalogTableCreate",
|
|
11638
|
+
type: "unary",
|
|
11639
|
+
params: schema2([
|
|
11640
|
+
field2("request", binary2(), false)
|
|
11641
|
+
]),
|
|
11642
|
+
result: schema2([]),
|
|
11643
|
+
doc: "Create a new table."
|
|
11644
|
+
},
|
|
11645
|
+
{
|
|
11646
|
+
name: "catalog_table_delete_function_get",
|
|
11647
|
+
key: "catalogTableDeleteFunctionGet",
|
|
11648
|
+
type: "unary",
|
|
11649
|
+
params: schema2([
|
|
11650
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11651
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11652
|
+
field2("name", utf82(), false),
|
|
11653
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11654
|
+
]),
|
|
11655
|
+
result: schema2([
|
|
11656
|
+
field2("result", binary2(), false)
|
|
11657
|
+
]),
|
|
11658
|
+
doc: "Get the delete function for a table. Returns `WriteFunctionResult` as IPC bytes."
|
|
11659
|
+
},
|
|
11660
|
+
{
|
|
11661
|
+
name: "catalog_table_drop",
|
|
11662
|
+
key: "catalogTableDrop",
|
|
11663
|
+
type: "unary",
|
|
11664
|
+
params: schema2([
|
|
11665
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11666
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11667
|
+
field2("name", utf82(), false),
|
|
11668
|
+
field2("ignore_not_found", bool2(), false),
|
|
11669
|
+
field2("cascade", bool2(), false),
|
|
11670
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11671
|
+
]),
|
|
11672
|
+
result: schema2([]),
|
|
11673
|
+
doc: "Drop a table."
|
|
11674
|
+
},
|
|
11675
|
+
{
|
|
11676
|
+
name: "catalog_table_get",
|
|
11677
|
+
key: "catalogTableGet",
|
|
11678
|
+
type: "unary",
|
|
11679
|
+
params: schema2([
|
|
11680
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11681
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11682
|
+
field2("name", utf82(), false),
|
|
11683
|
+
field2("at_unit", utf82(), true),
|
|
11684
|
+
field2("at_value", utf82(), true),
|
|
11685
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11686
|
+
]),
|
|
11687
|
+
result: schema2([
|
|
11688
|
+
field2("result", binary2(), false)
|
|
11689
|
+
]),
|
|
11690
|
+
doc: "Get information about a table. Returns 0 or 1 items."
|
|
11691
|
+
},
|
|
11692
|
+
{
|
|
11693
|
+
name: "catalog_table_insert_function_get",
|
|
11694
|
+
key: "catalogTableInsertFunctionGet",
|
|
11695
|
+
type: "unary",
|
|
11696
|
+
params: schema2([
|
|
11697
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11698
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11699
|
+
field2("name", utf82(), false),
|
|
11700
|
+
field2("transaction_opaque_data", binary2(), true),
|
|
11701
|
+
field2("writable_branch_function_name", utf82(), true)
|
|
11702
|
+
]),
|
|
11703
|
+
result: schema2([
|
|
11704
|
+
field2("result", binary2(), false)
|
|
11705
|
+
]),
|
|
11706
|
+
doc: "Get the insert function for a table. Returns `WriteFunctionResult` as IPC bytes."
|
|
11707
|
+
},
|
|
11708
|
+
{
|
|
11709
|
+
name: "catalog_table_not_null_drop",
|
|
11710
|
+
key: "catalogTableNotNullDrop",
|
|
11711
|
+
type: "unary",
|
|
11712
|
+
params: schema2([
|
|
11713
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11714
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11715
|
+
field2("name", utf82(), false),
|
|
11716
|
+
field2("column_name", utf82(), false),
|
|
11717
|
+
field2("ignore_not_found", bool2(), false),
|
|
11718
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11719
|
+
]),
|
|
11720
|
+
result: schema2([]),
|
|
11721
|
+
doc: "Remove NOT NULL constraint from a column."
|
|
11722
|
+
},
|
|
11723
|
+
{
|
|
11724
|
+
name: "catalog_table_not_null_set",
|
|
11725
|
+
key: "catalogTableNotNullSet",
|
|
11726
|
+
type: "unary",
|
|
11727
|
+
params: schema2([
|
|
11728
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11729
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11730
|
+
field2("name", utf82(), false),
|
|
11731
|
+
field2("column_name", utf82(), false),
|
|
11732
|
+
field2("ignore_not_found", bool2(), false),
|
|
11733
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11734
|
+
]),
|
|
11735
|
+
result: schema2([]),
|
|
11736
|
+
doc: "Add NOT NULL constraint to a column."
|
|
11737
|
+
},
|
|
11738
|
+
{
|
|
11739
|
+
name: "catalog_table_rename",
|
|
11740
|
+
key: "catalogTableRename",
|
|
11741
|
+
type: "unary",
|
|
11742
|
+
params: schema2([
|
|
11743
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11744
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11745
|
+
field2("name", utf82(), false),
|
|
11746
|
+
field2("new_name", utf82(), false),
|
|
11747
|
+
field2("ignore_not_found", bool2(), false),
|
|
11748
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11749
|
+
]),
|
|
11750
|
+
result: schema2([]),
|
|
11751
|
+
doc: "Rename a table."
|
|
11752
|
+
},
|
|
11753
|
+
{
|
|
11754
|
+
name: "catalog_table_scan_branches_get",
|
|
11755
|
+
key: "catalogTableScanBranchesGet",
|
|
11756
|
+
type: "unary",
|
|
11757
|
+
params: schema2([
|
|
11758
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11759
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11760
|
+
field2("name", utf82(), false),
|
|
11761
|
+
field2("at_unit", utf82(), true),
|
|
11762
|
+
field2("at_value", utf82(), true),
|
|
11763
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11764
|
+
]),
|
|
11765
|
+
result: schema2([
|
|
11766
|
+
field2("result", binary2(), false)
|
|
11767
|
+
]),
|
|
11768
|
+
doc: "Get the list of scan branches for a multi-branch table. Returns `ScanBranchesResult` as IPC bytes."
|
|
11769
|
+
},
|
|
11770
|
+
{
|
|
11771
|
+
name: "catalog_table_scan_function_get",
|
|
11772
|
+
key: "catalogTableScanFunctionGet",
|
|
11773
|
+
type: "unary",
|
|
11774
|
+
params: schema2([
|
|
11775
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11776
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11777
|
+
field2("name", utf82(), false),
|
|
11778
|
+
field2("at_unit", utf82(), true),
|
|
11779
|
+
field2("at_value", utf82(), true),
|
|
11780
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11781
|
+
]),
|
|
11782
|
+
result: schema2([
|
|
11783
|
+
field2("result", binary2(), false)
|
|
11784
|
+
]),
|
|
11785
|
+
doc: "Get the scan function for a table. Returns `ScanFunctionResult` as IPC bytes."
|
|
11786
|
+
},
|
|
11787
|
+
{
|
|
11788
|
+
name: "catalog_table_update_function_get",
|
|
11789
|
+
key: "catalogTableUpdateFunctionGet",
|
|
11790
|
+
type: "unary",
|
|
11791
|
+
params: schema2([
|
|
11792
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11793
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11794
|
+
field2("name", utf82(), false),
|
|
11795
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11796
|
+
]),
|
|
11797
|
+
result: schema2([
|
|
11798
|
+
field2("result", binary2(), false)
|
|
11799
|
+
]),
|
|
11800
|
+
doc: "Get the update function for a table. Returns `WriteFunctionResult` as IPC bytes."
|
|
11801
|
+
},
|
|
11802
|
+
{
|
|
11803
|
+
name: "catalog_transaction_begin",
|
|
11804
|
+
key: "catalogTransactionBegin",
|
|
11805
|
+
type: "unary",
|
|
11806
|
+
params: schema2([
|
|
11807
|
+
field2("attach_opaque_data", binary2(), false)
|
|
11808
|
+
]),
|
|
11809
|
+
result: schema2([
|
|
11810
|
+
field2("result", binary2(), false)
|
|
11811
|
+
]),
|
|
11812
|
+
doc: "Begin a new transaction."
|
|
11813
|
+
},
|
|
11814
|
+
{
|
|
11815
|
+
name: "catalog_transaction_commit",
|
|
11816
|
+
key: "catalogTransactionCommit",
|
|
11817
|
+
type: "unary",
|
|
11818
|
+
params: schema2([
|
|
11819
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11820
|
+
field2("transaction_opaque_data", binary2(), false)
|
|
11821
|
+
]),
|
|
11822
|
+
result: schema2([]),
|
|
11823
|
+
doc: "Commit a transaction."
|
|
11824
|
+
},
|
|
11825
|
+
{
|
|
11826
|
+
name: "catalog_transaction_rollback",
|
|
11827
|
+
key: "catalogTransactionRollback",
|
|
11828
|
+
type: "unary",
|
|
11829
|
+
params: schema2([
|
|
11830
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11831
|
+
field2("transaction_opaque_data", binary2(), false)
|
|
11832
|
+
]),
|
|
11833
|
+
result: schema2([]),
|
|
11834
|
+
doc: "Rollback a transaction."
|
|
11835
|
+
},
|
|
11836
|
+
{
|
|
11837
|
+
name: "catalog_version",
|
|
11838
|
+
key: "catalogVersion",
|
|
11839
|
+
type: "unary",
|
|
11840
|
+
params: schema2([
|
|
11841
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11842
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11843
|
+
]),
|
|
11844
|
+
result: schema2([
|
|
11845
|
+
field2("result", binary2(), false)
|
|
11846
|
+
]),
|
|
11847
|
+
doc: "Get the current catalog version."
|
|
11848
|
+
},
|
|
11849
|
+
{
|
|
11850
|
+
name: "catalog_view_comment_set",
|
|
11851
|
+
key: "catalogViewCommentSet",
|
|
11852
|
+
type: "unary",
|
|
11853
|
+
params: schema2([
|
|
11854
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11855
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11856
|
+
field2("name", utf82(), false),
|
|
11857
|
+
field2("comment", utf82(), true),
|
|
11858
|
+
field2("ignore_not_found", bool2(), false),
|
|
11859
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11860
|
+
]),
|
|
11861
|
+
result: schema2([]),
|
|
11862
|
+
doc: "Set or clear the comment on a view."
|
|
11863
|
+
},
|
|
11864
|
+
{
|
|
11865
|
+
name: "catalog_view_create",
|
|
11866
|
+
key: "catalogViewCreate",
|
|
11867
|
+
type: "unary",
|
|
11868
|
+
params: schema2([
|
|
11869
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11870
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11871
|
+
field2("name", utf82(), false),
|
|
11872
|
+
field2("definition", utf82(), false),
|
|
11873
|
+
field2("on_conflict", dictionary2(utf82(), int162()), false),
|
|
11874
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11875
|
+
]),
|
|
11876
|
+
result: schema2([]),
|
|
11877
|
+
doc: "Create a new view."
|
|
11878
|
+
},
|
|
11879
|
+
{
|
|
11880
|
+
name: "catalog_view_drop",
|
|
11881
|
+
key: "catalogViewDrop",
|
|
11882
|
+
type: "unary",
|
|
11883
|
+
params: schema2([
|
|
11884
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11885
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11886
|
+
field2("name", utf82(), false),
|
|
11887
|
+
field2("ignore_not_found", bool2(), false),
|
|
11888
|
+
field2("cascade", bool2(), false),
|
|
11889
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11890
|
+
]),
|
|
11891
|
+
result: schema2([]),
|
|
11892
|
+
doc: "Drop a view."
|
|
11893
|
+
},
|
|
11894
|
+
{
|
|
11895
|
+
name: "catalog_view_get",
|
|
11896
|
+
key: "catalogViewGet",
|
|
11897
|
+
type: "unary",
|
|
11898
|
+
params: schema2([
|
|
11899
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11900
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11901
|
+
field2("name", utf82(), false),
|
|
11902
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11903
|
+
]),
|
|
11904
|
+
result: schema2([
|
|
11905
|
+
field2("result", binary2(), false)
|
|
11906
|
+
]),
|
|
11907
|
+
doc: "Get information about a view. Returns 0 or 1 items."
|
|
11908
|
+
},
|
|
11909
|
+
{
|
|
11910
|
+
name: "catalog_view_rename",
|
|
11911
|
+
key: "catalogViewRename",
|
|
11912
|
+
type: "unary",
|
|
11913
|
+
params: schema2([
|
|
11914
|
+
field2("attach_opaque_data", binary2(), false),
|
|
11915
|
+
field2("schema_path", list2(field2("item", utf82(), true)), false),
|
|
11916
|
+
field2("name", utf82(), false),
|
|
11917
|
+
field2("new_name", utf82(), false),
|
|
11918
|
+
field2("ignore_not_found", bool2(), false),
|
|
11919
|
+
field2("transaction_opaque_data", binary2(), true)
|
|
11920
|
+
]),
|
|
11921
|
+
result: schema2([]),
|
|
11922
|
+
doc: "Rename a view."
|
|
11923
|
+
},
|
|
11924
|
+
{
|
|
11925
|
+
name: "init",
|
|
11926
|
+
key: "init",
|
|
11927
|
+
type: "stream",
|
|
11928
|
+
params: schema2([
|
|
11929
|
+
field2("request", binary2(), false)
|
|
11930
|
+
]),
|
|
11931
|
+
header: schema2([
|
|
11932
|
+
field2("execution_id", binary2(), false),
|
|
11933
|
+
field2("opaque_data", binary2(), true),
|
|
11934
|
+
field2("max_workers", int642(), false)
|
|
11935
|
+
]),
|
|
11936
|
+
doc: "Initialize a function execution and return a processing stream."
|
|
11937
|
+
},
|
|
11938
|
+
{
|
|
11939
|
+
name: "table_buffering_combine",
|
|
11940
|
+
key: "tableBufferingCombine",
|
|
11941
|
+
type: "unary",
|
|
11942
|
+
params: schema2([
|
|
11943
|
+
field2("request", binary2(), false)
|
|
11944
|
+
]),
|
|
11945
|
+
result: schema2([
|
|
11946
|
+
field2("result", binary2(), false)
|
|
11947
|
+
]),
|
|
11948
|
+
doc: "Once-per-query end-of-input signal. Returns finalize_state_ids."
|
|
11949
|
+
},
|
|
11950
|
+
{
|
|
11951
|
+
name: "table_buffering_destructor",
|
|
11952
|
+
key: "tableBufferingDestructor",
|
|
11953
|
+
type: "unary",
|
|
11954
|
+
params: schema2([
|
|
11955
|
+
field2("request", binary2(), false)
|
|
11956
|
+
]),
|
|
11957
|
+
result: schema2([
|
|
11958
|
+
field2("result", binary2(), false)
|
|
11959
|
+
]),
|
|
11960
|
+
doc: "Best-effort end-of-query cleanup. Must not raise."
|
|
11961
|
+
},
|
|
11962
|
+
{
|
|
11963
|
+
name: "table_buffering_process",
|
|
11964
|
+
key: "tableBufferingProcess",
|
|
11965
|
+
type: "unary",
|
|
11966
|
+
params: schema2([
|
|
11967
|
+
field2("request", binary2(), false)
|
|
11968
|
+
]),
|
|
11969
|
+
result: schema2([
|
|
11970
|
+
field2("result", binary2(), false)
|
|
11971
|
+
]),
|
|
11972
|
+
doc: "Sink one input batch; return the worker-chosen state_id."
|
|
11973
|
+
},
|
|
11974
|
+
{
|
|
11975
|
+
name: "table_function_cardinality",
|
|
11976
|
+
key: "tableFunctionCardinality",
|
|
11977
|
+
type: "unary",
|
|
11978
|
+
params: schema2([
|
|
11979
|
+
field2("request", binary2(), false)
|
|
11980
|
+
]),
|
|
11981
|
+
result: schema2([
|
|
11982
|
+
field2("result", binary2(), false)
|
|
11983
|
+
]),
|
|
11984
|
+
doc: "Estimate the cardinality of a table function's output."
|
|
11985
|
+
},
|
|
11986
|
+
{
|
|
11987
|
+
name: "table_function_dynamic_to_string",
|
|
11988
|
+
key: "tableFunctionDynamicToString",
|
|
11989
|
+
type: "unary",
|
|
11990
|
+
params: schema2([
|
|
11991
|
+
field2("request", binary2(), false)
|
|
11992
|
+
]),
|
|
11993
|
+
result: schema2([
|
|
11994
|
+
field2("result", binary2(), false)
|
|
11995
|
+
]),
|
|
11996
|
+
doc: "Return user-defined diagnostics for EXPLAIN ANALYZE Extra Info."
|
|
11997
|
+
},
|
|
11998
|
+
{
|
|
11999
|
+
name: "table_function_plan",
|
|
12000
|
+
key: "tableFunctionPlan",
|
|
12001
|
+
type: "unary",
|
|
12002
|
+
params: schema2([
|
|
12003
|
+
field2("request", binary2(), false)
|
|
12004
|
+
]),
|
|
12005
|
+
result: schema2([
|
|
12006
|
+
field2("result", binary2(), false)
|
|
12007
|
+
]),
|
|
12008
|
+
doc: "Plan a table-function scan into named, independently redeemable splits."
|
|
12009
|
+
},
|
|
12010
|
+
{
|
|
12011
|
+
name: "table_function_statistics",
|
|
12012
|
+
key: "tableFunctionStatistics",
|
|
12013
|
+
type: "unary",
|
|
12014
|
+
params: schema2([
|
|
12015
|
+
field2("request", binary2(), false)
|
|
12016
|
+
]),
|
|
12017
|
+
result: schema2([
|
|
12018
|
+
field2("result", binary2(), true)
|
|
12019
|
+
]),
|
|
12020
|
+
doc: "Return per-column statistics for a table function's output."
|
|
12021
|
+
}
|
|
12022
|
+
];
|
|
12023
|
+
var UNIMPLEMENTED_VGI_SERVICE = Object.freeze({
|
|
12024
|
+
aggregateBind: async () => {
|
|
12025
|
+
throw notImplemented("aggregate_bind");
|
|
12026
|
+
},
|
|
12027
|
+
aggregateCombine: async () => {
|
|
12028
|
+
throw notImplemented("aggregate_combine");
|
|
12029
|
+
},
|
|
12030
|
+
aggregateDestructor: async () => {
|
|
12031
|
+
throw notImplemented("aggregate_destructor");
|
|
12032
|
+
},
|
|
12033
|
+
aggregateFinalize: async () => {
|
|
12034
|
+
throw notImplemented("aggregate_finalize");
|
|
12035
|
+
},
|
|
12036
|
+
aggregateStreamingChunk: async () => {
|
|
12037
|
+
throw notImplemented("aggregate_streaming_chunk");
|
|
12038
|
+
},
|
|
12039
|
+
aggregateStreamingClose: async () => {
|
|
12040
|
+
throw notImplemented("aggregate_streaming_close");
|
|
12041
|
+
},
|
|
12042
|
+
aggregateStreamingOpen: async () => {
|
|
12043
|
+
throw notImplemented("aggregate_streaming_open");
|
|
12044
|
+
},
|
|
12045
|
+
aggregateUpdate: async () => {
|
|
12046
|
+
throw notImplemented("aggregate_update");
|
|
12047
|
+
},
|
|
12048
|
+
aggregateWindow: async () => {
|
|
12049
|
+
throw notImplemented("aggregate_window");
|
|
12050
|
+
},
|
|
12051
|
+
aggregateWindowBatch: async () => {
|
|
12052
|
+
throw notImplemented("aggregate_window_batch");
|
|
12053
|
+
},
|
|
12054
|
+
aggregateWindowDestructor: async () => {
|
|
12055
|
+
throw notImplemented("aggregate_window_destructor");
|
|
12056
|
+
},
|
|
12057
|
+
aggregateWindowInit: async () => {
|
|
12058
|
+
throw notImplemented("aggregate_window_init");
|
|
12059
|
+
},
|
|
12060
|
+
bind: async () => {
|
|
12061
|
+
throw notImplemented("bind");
|
|
12062
|
+
},
|
|
12063
|
+
catalogAttach: async () => {
|
|
12064
|
+
throw notImplemented("catalog_attach");
|
|
12065
|
+
},
|
|
12066
|
+
catalogCatalogs: async () => {
|
|
12067
|
+
throw notImplemented("catalog_catalogs");
|
|
12068
|
+
},
|
|
12069
|
+
catalogContents: async () => {
|
|
12070
|
+
throw notImplemented("catalog_contents");
|
|
12071
|
+
},
|
|
12072
|
+
catalogCopyFromFormats: async () => {
|
|
12073
|
+
throw notImplemented("catalog_copy_from_formats");
|
|
12074
|
+
},
|
|
12075
|
+
catalogCreate: async () => {
|
|
12076
|
+
throw notImplemented("catalog_create");
|
|
12077
|
+
},
|
|
12078
|
+
catalogDetach: async () => {
|
|
12079
|
+
throw notImplemented("catalog_detach");
|
|
12080
|
+
},
|
|
12081
|
+
catalogDrop: async () => {
|
|
12082
|
+
throw notImplemented("catalog_drop");
|
|
12083
|
+
},
|
|
12084
|
+
catalogIndexCreate: async () => {
|
|
12085
|
+
throw notImplemented("catalog_index_create");
|
|
12086
|
+
},
|
|
12087
|
+
catalogIndexDrop: async () => {
|
|
12088
|
+
throw notImplemented("catalog_index_drop");
|
|
12089
|
+
},
|
|
12090
|
+
catalogIndexGet: async () => {
|
|
12091
|
+
throw notImplemented("catalog_index_get");
|
|
12092
|
+
},
|
|
12093
|
+
catalogMacroCreate: async () => {
|
|
12094
|
+
throw notImplemented("catalog_macro_create");
|
|
12095
|
+
},
|
|
12096
|
+
catalogMacroDrop: async () => {
|
|
12097
|
+
throw notImplemented("catalog_macro_drop");
|
|
12098
|
+
},
|
|
12099
|
+
catalogMacroGet: async () => {
|
|
12100
|
+
throw notImplemented("catalog_macro_get");
|
|
12101
|
+
},
|
|
12102
|
+
catalogSchemaContentsFunctions: async () => {
|
|
12103
|
+
throw notImplemented("catalog_schema_contents_functions");
|
|
12104
|
+
},
|
|
12105
|
+
catalogSchemaContentsIndexes: async () => {
|
|
12106
|
+
throw notImplemented("catalog_schema_contents_indexes");
|
|
12107
|
+
},
|
|
12108
|
+
catalogSchemaContentsMacros: async () => {
|
|
12109
|
+
throw notImplemented("catalog_schema_contents_macros");
|
|
12110
|
+
},
|
|
12111
|
+
catalogSchemaContentsTables: async () => {
|
|
12112
|
+
throw notImplemented("catalog_schema_contents_tables");
|
|
12113
|
+
},
|
|
12114
|
+
catalogSchemaContentsViews: async () => {
|
|
12115
|
+
throw notImplemented("catalog_schema_contents_views");
|
|
12116
|
+
},
|
|
12117
|
+
catalogSchemaCreate: async () => {
|
|
12118
|
+
throw notImplemented("catalog_schema_create");
|
|
12119
|
+
},
|
|
12120
|
+
catalogSchemaDrop: async () => {
|
|
12121
|
+
throw notImplemented("catalog_schema_drop");
|
|
12122
|
+
},
|
|
12123
|
+
catalogSchemaGet: async () => {
|
|
12124
|
+
throw notImplemented("catalog_schema_get");
|
|
12125
|
+
},
|
|
12126
|
+
catalogSchemas: async () => {
|
|
12127
|
+
throw notImplemented("catalog_schemas");
|
|
12128
|
+
},
|
|
12129
|
+
catalogTableColumnAdd: async () => {
|
|
12130
|
+
throw notImplemented("catalog_table_column_add");
|
|
12131
|
+
},
|
|
12132
|
+
catalogTableColumnCommentSet: async () => {
|
|
12133
|
+
throw notImplemented("catalog_table_column_comment_set");
|
|
12134
|
+
},
|
|
12135
|
+
catalogTableColumnDefaultDrop: async () => {
|
|
12136
|
+
throw notImplemented("catalog_table_column_default_drop");
|
|
12137
|
+
},
|
|
12138
|
+
catalogTableColumnDefaultSet: async () => {
|
|
12139
|
+
throw notImplemented("catalog_table_column_default_set");
|
|
12140
|
+
},
|
|
12141
|
+
catalogTableColumnDrop: async () => {
|
|
12142
|
+
throw notImplemented("catalog_table_column_drop");
|
|
12143
|
+
},
|
|
12144
|
+
catalogTableColumnRename: async () => {
|
|
12145
|
+
throw notImplemented("catalog_table_column_rename");
|
|
12146
|
+
},
|
|
12147
|
+
catalogTableColumnStatisticsGet: async () => {
|
|
12148
|
+
throw notImplemented("catalog_table_column_statistics_get");
|
|
12149
|
+
},
|
|
12150
|
+
catalogTableColumnTypeChange: async () => {
|
|
12151
|
+
throw notImplemented("catalog_table_column_type_change");
|
|
12152
|
+
},
|
|
12153
|
+
catalogTableCommentSet: async () => {
|
|
12154
|
+
throw notImplemented("catalog_table_comment_set");
|
|
12155
|
+
},
|
|
12156
|
+
catalogTableCreate: async () => {
|
|
12157
|
+
throw notImplemented("catalog_table_create");
|
|
12158
|
+
},
|
|
12159
|
+
catalogTableDeleteFunctionGet: async () => {
|
|
12160
|
+
throw notImplemented("catalog_table_delete_function_get");
|
|
12161
|
+
},
|
|
12162
|
+
catalogTableDrop: async () => {
|
|
12163
|
+
throw notImplemented("catalog_table_drop");
|
|
12164
|
+
},
|
|
12165
|
+
catalogTableGet: async () => {
|
|
12166
|
+
throw notImplemented("catalog_table_get");
|
|
12167
|
+
},
|
|
12168
|
+
catalogTableInsertFunctionGet: async () => {
|
|
12169
|
+
throw notImplemented("catalog_table_insert_function_get");
|
|
12170
|
+
},
|
|
12171
|
+
catalogTableNotNullDrop: async () => {
|
|
12172
|
+
throw notImplemented("catalog_table_not_null_drop");
|
|
12173
|
+
},
|
|
12174
|
+
catalogTableNotNullSet: async () => {
|
|
12175
|
+
throw notImplemented("catalog_table_not_null_set");
|
|
12176
|
+
},
|
|
12177
|
+
catalogTableRename: async () => {
|
|
12178
|
+
throw notImplemented("catalog_table_rename");
|
|
12179
|
+
},
|
|
12180
|
+
catalogTableScanBranchesGet: async () => {
|
|
12181
|
+
throw notImplemented("catalog_table_scan_branches_get");
|
|
12182
|
+
},
|
|
12183
|
+
catalogTableScanFunctionGet: async () => {
|
|
12184
|
+
throw notImplemented("catalog_table_scan_function_get");
|
|
12185
|
+
},
|
|
12186
|
+
catalogTableUpdateFunctionGet: async () => {
|
|
12187
|
+
throw notImplemented("catalog_table_update_function_get");
|
|
12188
|
+
},
|
|
12189
|
+
catalogTransactionBegin: async () => {
|
|
12190
|
+
throw notImplemented("catalog_transaction_begin");
|
|
12191
|
+
},
|
|
12192
|
+
catalogTransactionCommit: async () => {
|
|
12193
|
+
throw notImplemented("catalog_transaction_commit");
|
|
12194
|
+
},
|
|
12195
|
+
catalogTransactionRollback: async () => {
|
|
12196
|
+
throw notImplemented("catalog_transaction_rollback");
|
|
12197
|
+
},
|
|
12198
|
+
catalogVersion: async () => {
|
|
12199
|
+
throw notImplemented("catalog_version");
|
|
12200
|
+
},
|
|
12201
|
+
catalogViewCommentSet: async () => {
|
|
12202
|
+
throw notImplemented("catalog_view_comment_set");
|
|
12203
|
+
},
|
|
12204
|
+
catalogViewCreate: async () => {
|
|
12205
|
+
throw notImplemented("catalog_view_create");
|
|
12206
|
+
},
|
|
12207
|
+
catalogViewDrop: async () => {
|
|
12208
|
+
throw notImplemented("catalog_view_drop");
|
|
12209
|
+
},
|
|
12210
|
+
catalogViewGet: async () => {
|
|
12211
|
+
throw notImplemented("catalog_view_get");
|
|
12212
|
+
},
|
|
12213
|
+
catalogViewRename: async () => {
|
|
12214
|
+
throw notImplemented("catalog_view_rename");
|
|
12215
|
+
},
|
|
12216
|
+
init: unimplementedStream("init"),
|
|
12217
|
+
tableBufferingCombine: async () => {
|
|
12218
|
+
throw notImplemented("table_buffering_combine");
|
|
12219
|
+
},
|
|
12220
|
+
tableBufferingDestructor: async () => {
|
|
12221
|
+
throw notImplemented("table_buffering_destructor");
|
|
12222
|
+
},
|
|
12223
|
+
tableBufferingProcess: async () => {
|
|
12224
|
+
throw notImplemented("table_buffering_process");
|
|
12225
|
+
},
|
|
12226
|
+
tableFunctionCardinality: async () => {
|
|
12227
|
+
throw notImplemented("table_function_cardinality");
|
|
12228
|
+
},
|
|
12229
|
+
tableFunctionDynamicToString: async () => {
|
|
12230
|
+
throw notImplemented("table_function_dynamic_to_string");
|
|
12231
|
+
},
|
|
12232
|
+
tableFunctionPlan: async () => {
|
|
12233
|
+
throw notImplemented("table_function_plan");
|
|
12234
|
+
},
|
|
12235
|
+
tableFunctionStatistics: async () => {
|
|
12236
|
+
throw notImplemented("table_function_statistics");
|
|
12237
|
+
}
|
|
12238
|
+
});
|
|
12239
|
+
function unimplementedMessage(method) {
|
|
12240
|
+
return `${method} is not implemented by this worker`;
|
|
12241
|
+
}
|
|
12242
|
+
function notImplemented(method) {
|
|
12243
|
+
return new MethodNotImplementedError(unimplementedMessage(method));
|
|
12244
|
+
}
|
|
12245
|
+
function unimplementedStream(method) {
|
|
12246
|
+
return producerStream({
|
|
12247
|
+
outputSchema: schema2([]),
|
|
12248
|
+
init: () => {
|
|
12249
|
+
throw notImplemented(method);
|
|
12250
|
+
},
|
|
12251
|
+
produce: () => {}
|
|
12252
|
+
});
|
|
12253
|
+
}
|
|
12254
|
+
function registerVgiService(protocol, service) {
|
|
12255
|
+
for (const m of VGI_V2_METHODS) {
|
|
12256
|
+
if (m.type === "unary") {
|
|
12257
|
+
const handler = service[m.key];
|
|
12258
|
+
protocol.unary(m.name, {
|
|
12259
|
+
params: m.params,
|
|
12260
|
+
result: m.result,
|
|
12261
|
+
doc: m.doc,
|
|
12262
|
+
handler: (params, ctx) => handler.call(service, params, ctx)
|
|
12263
|
+
});
|
|
12264
|
+
continue;
|
|
12265
|
+
}
|
|
12266
|
+
const stream = service[m.key];
|
|
12267
|
+
const common = {
|
|
12268
|
+
params: m.params,
|
|
12269
|
+
outputSchema: stream.outputSchema,
|
|
12270
|
+
headerSchema: m.header ?? undefined,
|
|
12271
|
+
headerInit: stream.headerInit,
|
|
12272
|
+
onCancel: stream.onCancel,
|
|
12273
|
+
doc: m.doc
|
|
12274
|
+
};
|
|
12275
|
+
if (stream.kind === "exchange") {
|
|
12276
|
+
protocol.exchange(m.name, {
|
|
12277
|
+
...common,
|
|
12278
|
+
inputSchema: stream.inputSchema,
|
|
12279
|
+
init: stream.init,
|
|
12280
|
+
exchange: stream.exchange
|
|
12281
|
+
});
|
|
12282
|
+
} else {
|
|
12283
|
+
protocol.producer(m.name, { ...common, init: stream.init, produce: stream.produce });
|
|
12284
|
+
}
|
|
12285
|
+
}
|
|
12286
|
+
return protocol;
|
|
12287
|
+
}
|
|
12288
|
+
function createVgiProtocol(service) {
|
|
12289
|
+
return registerVgiService(new Protocol(VGI_PROTOCOL_NAME, { protocolVersion: VGI_PROTOCOL_VERSION }), service);
|
|
12290
|
+
}
|
|
11039
12291
|
|
|
11040
12292
|
// src/protocol/handlers/function.ts
|
|
11041
12293
|
init_arrow();
|
|
@@ -11048,9 +12300,6 @@ var RESULT_BINARY_SCHEMA = schema2([
|
|
|
11048
12300
|
var REQUEST_PARAMS_SCHEMA = schema2([
|
|
11049
12301
|
field2("request", binary2(), false)
|
|
11050
12302
|
]);
|
|
11051
|
-
var RESULT_BINARY_NULLABLE_SCHEMA = schema2([
|
|
11052
|
-
field2("result", binary2(), true)
|
|
11053
|
-
]);
|
|
11054
12303
|
function unwrapRequest(requestBytes) {
|
|
11055
12304
|
const bytes = toUint8Array(requestBytes);
|
|
11056
12305
|
const innerBatch = deserializeBatch(bytes);
|
|
@@ -11131,20 +12380,16 @@ async function unwrapParamsOpaque(params, ctx, signingKey) {
|
|
|
11131
12380
|
}
|
|
11132
12381
|
}
|
|
11133
12382
|
}
|
|
11134
|
-
function
|
|
11135
|
-
|
|
11136
|
-
params
|
|
11137
|
-
|
|
11138
|
-
|
|
11139
|
-
handler: async (params, ctx) => {
|
|
11140
|
-
if (params.request != null && params.attach_opaque_data === undefined && params.name === undefined) {
|
|
11141
|
-
params = unwrapRequest(params.request);
|
|
11142
|
-
}
|
|
11143
|
-
normalizeRequestSchemaPaths(params);
|
|
11144
|
-
await unwrapParamsOpaque(params, ctx, signingKey);
|
|
11145
|
-
return config.handler(params, ctx);
|
|
12383
|
+
function catalogHandler(signingKey, handler) {
|
|
12384
|
+
return async (wire, ctx) => {
|
|
12385
|
+
let params = wire;
|
|
12386
|
+
if (params.request != null && params.attach_opaque_data === undefined && params.name === undefined) {
|
|
12387
|
+
params = unwrapRequest(params.request);
|
|
11146
12388
|
}
|
|
11147
|
-
|
|
12389
|
+
normalizeRequestSchemaPaths(params);
|
|
12390
|
+
await unwrapParamsOpaque(params, ctx, signingKey);
|
|
12391
|
+
return handler(params, ctx);
|
|
12392
|
+
};
|
|
11148
12393
|
}
|
|
11149
12394
|
function makeGetCatalog(catalog) {
|
|
11150
12395
|
return () => {
|
|
@@ -11165,7 +12410,6 @@ function decodeOptionsBatch(bytes) {
|
|
|
11165
12410
|
const row = iterRows(batch).next().value;
|
|
11166
12411
|
return row ?? {};
|
|
11167
12412
|
}
|
|
11168
|
-
var emptyResultSchema = schema2([]);
|
|
11169
12413
|
|
|
11170
12414
|
// src/request-auth.ts
|
|
11171
12415
|
var scope;
|
|
@@ -11392,7 +12636,7 @@ async function resolveSplitPayloads(request, innerParams, opts) {
|
|
|
11392
12636
|
}));
|
|
11393
12637
|
}
|
|
11394
12638
|
}
|
|
11395
|
-
function
|
|
12639
|
+
function functionHandlers(config) {
|
|
11396
12640
|
const { registry, signingKey, catalogInterface } = config;
|
|
11397
12641
|
async function stripAttach(attach, ctx) {
|
|
11398
12642
|
if (attach == null)
|
|
@@ -11411,26 +12655,20 @@ function registerFunctionMethods(protocol, config) {
|
|
|
11411
12655
|
}
|
|
11412
12656
|
return overloadContext({ ...bindCall, attach_opaque_data: attach }, catalogInterface);
|
|
11413
12657
|
}
|
|
11414
|
-
const initHeaderSchema = GLOBAL_INIT_RESPONSE_SCHEMA;
|
|
11415
12658
|
const emptySchema = schema2([]);
|
|
11416
12659
|
const dummyInputSchema = schema2([
|
|
11417
12660
|
field2("_tick", binary2(), true)
|
|
11418
12661
|
]);
|
|
11419
|
-
|
|
11420
|
-
params
|
|
11421
|
-
|
|
11422
|
-
|
|
11423
|
-
|
|
11424
|
-
|
|
11425
|
-
|
|
11426
|
-
|
|
11427
|
-
|
|
11428
|
-
|
|
11429
|
-
return wrapResult(serialized, BindResultSchema);
|
|
11430
|
-
}
|
|
11431
|
-
});
|
|
11432
|
-
protocol.exchange("init", {
|
|
11433
|
-
params: InitParamsSchema,
|
|
12662
|
+
const bind = async (params, ctx) => {
|
|
12663
|
+
const innerParams = unwrapRequest(params.request);
|
|
12664
|
+
const request = deserializeBindRequest(innerParams);
|
|
12665
|
+
request.attach_opaque_data = await stripAttach(request.attach_opaque_data, ctx);
|
|
12666
|
+
const func = registry.get(request.function_name, overloadContext(request, catalogInterface));
|
|
12667
|
+
const response = await func.bind(request);
|
|
12668
|
+
const serialized = serializeBindResponse(response);
|
|
12669
|
+
return wrapResult(serialized, BindResultSchema);
|
|
12670
|
+
};
|
|
12671
|
+
const init = exchangeStream({
|
|
11434
12672
|
inputSchema: dummyInputSchema,
|
|
11435
12673
|
outputSchema: emptySchema,
|
|
11436
12674
|
init: async (params, ctx) => {
|
|
@@ -11523,7 +12761,6 @@ function registerFunctionMethods(protocol, config) {
|
|
|
11523
12761
|
}
|
|
11524
12762
|
state.filterHistory = handlerState?.filterHistory ?? null;
|
|
11525
12763
|
},
|
|
11526
|
-
headerSchema: initHeaderSchema,
|
|
11527
12764
|
headerInit: (params, state, ctx) => {
|
|
11528
12765
|
if (!state._initResponse) {
|
|
11529
12766
|
throw new Error("headerInit called on deserialized state: _initResponse not available");
|
|
@@ -11531,88 +12768,80 @@ function registerFunctionMethods(protocol, config) {
|
|
|
11531
12768
|
return serializeGlobalInitResponse(state._initResponse);
|
|
11532
12769
|
}
|
|
11533
12770
|
});
|
|
11534
|
-
|
|
11535
|
-
params
|
|
11536
|
-
|
|
11537
|
-
|
|
11538
|
-
|
|
11539
|
-
|
|
11540
|
-
|
|
11541
|
-
|
|
11542
|
-
|
|
11543
|
-
cardResult = serializeTableCardinality(await func.cardinality(request));
|
|
11544
|
-
} else {
|
|
11545
|
-
cardResult = { estimate: null, max: null };
|
|
11546
|
-
}
|
|
11547
|
-
return wrapResult(cardResult, TableFunctionCardinalityResultSchema);
|
|
11548
|
-
}
|
|
11549
|
-
});
|
|
11550
|
-
protocol.unary("table_function_plan", {
|
|
11551
|
-
params: TableFunctionPlanParamsSchema,
|
|
11552
|
-
result: RESULT_BINARY_SCHEMA,
|
|
11553
|
-
handler: async (params, ctx) => {
|
|
11554
|
-
const innerParams = unwrapRequest(params.request);
|
|
11555
|
-
const request = deserializePlanRequest(innerParams);
|
|
11556
|
-
const func = registry.get(request.bind_call.function_name, await strippedContext(request.bind_call));
|
|
11557
|
-
const plan = func.plan ? await func.plan(request) : { splits: [{ payload: new Uint8Array(0) }] };
|
|
11558
|
-
const fp = fingerprintInputs(toUint8Array(innerParams.bind_call));
|
|
11559
|
-
const fingerprint = await bindFingerprint(fp.schemaPath, fp.functionName, fp.args, fp.settings, new Uint8Array(0));
|
|
11560
|
-
const anchor = plan.catalogVersion != null ? splitAnchor(plan.catalogVersion) : await liveSplitAnchor(catalogInterface, request.bind_call, ctx?.auth, signingKey) ?? splitAnchor(0);
|
|
11561
|
-
const blobs = [];
|
|
11562
|
-
for (const split of plan.splits) {
|
|
11563
|
-
const token = await buildSplitToken({
|
|
11564
|
-
payload: split.payload,
|
|
11565
|
-
fingerprint,
|
|
11566
|
-
anchor,
|
|
11567
|
-
signingKey,
|
|
11568
|
-
auth: ctx?.auth
|
|
11569
|
-
});
|
|
11570
|
-
blobs.push(serializeBatch(batchFromColumns(Object.fromEntries(SCAN_SPLIT_SCHEMA.fields.map((f) => [
|
|
11571
|
-
f.name,
|
|
11572
|
-
[scanSplitRow(split, token)[f.name] ?? null]
|
|
11573
|
-
])), SCAN_SPLIT_SCHEMA)));
|
|
11574
|
-
}
|
|
11575
|
-
return wrapResult(planResponseRow(plan, blobs), PLAN_RESPONSE_SCHEMA);
|
|
11576
|
-
}
|
|
11577
|
-
});
|
|
11578
|
-
protocol.unary("table_function_statistics", {
|
|
11579
|
-
params: TableFunctionStatisticsParamsSchema,
|
|
11580
|
-
result: RESULT_BINARY_NULLABLE_SCHEMA,
|
|
11581
|
-
handler: async (params) => {
|
|
11582
|
-
const innerParams = unwrapRequest(params.request);
|
|
11583
|
-
const request = deserializeCardinalityRequest(innerParams);
|
|
11584
|
-
const func = registry.get(request.bind_call.function_name, await strippedContext(request.bind_call));
|
|
11585
|
-
if (!func.statistics)
|
|
11586
|
-
return { result: null };
|
|
11587
|
-
const stats = func.statistics(request);
|
|
11588
|
-
if (!stats || stats.length === 0)
|
|
11589
|
-
return { result: null };
|
|
11590
|
-
return { result: serializeColumnStatistics(stats) };
|
|
12771
|
+
const tableFunctionCardinality = async (params) => {
|
|
12772
|
+
const innerParams = unwrapRequest(params.request);
|
|
12773
|
+
const request = deserializeCardinalityRequest(innerParams);
|
|
12774
|
+
const func = registry.get(request.bind_call.function_name, await strippedContext(request.bind_call));
|
|
12775
|
+
let cardResult;
|
|
12776
|
+
if (func.cardinality) {
|
|
12777
|
+
cardResult = serializeTableCardinality(await func.cardinality(request));
|
|
12778
|
+
} else {
|
|
12779
|
+
cardResult = { estimate: null, max: null };
|
|
11591
12780
|
}
|
|
11592
|
-
|
|
11593
|
-
|
|
11594
|
-
|
|
11595
|
-
|
|
11596
|
-
|
|
11597
|
-
|
|
11598
|
-
|
|
11599
|
-
|
|
11600
|
-
|
|
11601
|
-
|
|
11602
|
-
|
|
11603
|
-
|
|
11604
|
-
const
|
|
11605
|
-
|
|
11606
|
-
|
|
11607
|
-
|
|
11608
|
-
|
|
12781
|
+
return wrapResult(cardResult, TableFunctionCardinalityResultSchema);
|
|
12782
|
+
};
|
|
12783
|
+
const tableFunctionPlan = async (params, ctx) => {
|
|
12784
|
+
const innerParams = unwrapRequest(params.request);
|
|
12785
|
+
const request = deserializePlanRequest(innerParams);
|
|
12786
|
+
const func = registry.get(request.bind_call.function_name, await strippedContext(request.bind_call));
|
|
12787
|
+
const plan = func.plan ? await func.plan(request) : { splits: [{ payload: new Uint8Array(0) }] };
|
|
12788
|
+
const fp = fingerprintInputs(toUint8Array(innerParams.bind_call));
|
|
12789
|
+
const fingerprint = await bindFingerprint(fp.schemaPath, fp.functionName, fp.args, fp.settings, new Uint8Array(0));
|
|
12790
|
+
const anchor = plan.catalogVersion != null ? splitAnchor(plan.catalogVersion) : await liveSplitAnchor(catalogInterface, request.bind_call, ctx?.auth, signingKey) ?? splitAnchor(0);
|
|
12791
|
+
const blobs = [];
|
|
12792
|
+
for (const split of plan.splits) {
|
|
12793
|
+
const token = await buildSplitToken({
|
|
12794
|
+
payload: split.payload,
|
|
12795
|
+
fingerprint,
|
|
12796
|
+
anchor,
|
|
12797
|
+
signingKey,
|
|
12798
|
+
auth: ctx?.auth
|
|
12799
|
+
});
|
|
12800
|
+
blobs.push(serializeBatch(batchFromColumns(Object.fromEntries(SCAN_SPLIT_SCHEMA.fields.map((f) => [
|
|
12801
|
+
f.name,
|
|
12802
|
+
[scanSplitRow(split, token)[f.name] ?? null]
|
|
12803
|
+
])), SCAN_SPLIT_SCHEMA)));
|
|
11609
12804
|
}
|
|
11610
|
-
|
|
12805
|
+
return wrapResult(planResponseRow(plan, blobs), PLAN_RESPONSE_SCHEMA);
|
|
12806
|
+
};
|
|
12807
|
+
const tableFunctionStatistics = async (params) => {
|
|
12808
|
+
const innerParams = unwrapRequest(params.request);
|
|
12809
|
+
const request = deserializeCardinalityRequest(innerParams);
|
|
12810
|
+
const func = registry.get(request.bind_call.function_name, await strippedContext(request.bind_call));
|
|
12811
|
+
if (!func.statistics)
|
|
12812
|
+
return { result: null };
|
|
12813
|
+
const stats = func.statistics(request);
|
|
12814
|
+
if (!stats || stats.length === 0)
|
|
12815
|
+
return { result: null };
|
|
12816
|
+
return { result: serializeColumnStatistics(stats) };
|
|
12817
|
+
};
|
|
12818
|
+
const tableFunctionDynamicToString = async (params) => {
|
|
12819
|
+
const innerParams = unwrapRequest(params.request);
|
|
12820
|
+
const bindCallBytes = toUint8Array(innerParams.bind_call);
|
|
12821
|
+
const bindCallBatch = deserializeBatch(bindCallBytes);
|
|
12822
|
+
const bindParams = batchToScalarDict(bindCallBatch);
|
|
12823
|
+
const bindCall = deserializeBindRequest(bindParams);
|
|
12824
|
+
const globalExecutionId = toUint8Array(innerParams.global_execution_id);
|
|
12825
|
+
const bindOpaqueData = innerParams.bind_opaque_data ? toUint8Array(innerParams.bind_opaque_data) : null;
|
|
12826
|
+
const func = registry.get(bindCall.function_name, await strippedContext(bindCall));
|
|
12827
|
+
const map = func.dynamicToString ? await func.dynamicToString({ bindCall, bindOpaqueData, globalExecutionId }) : {};
|
|
12828
|
+
const keys = Object.keys(map);
|
|
12829
|
+
const values = keys.map((k) => map[k] ?? "");
|
|
12830
|
+
return wrapResult({ keys, values }, TableFunctionDynamicToStringResultSchema);
|
|
12831
|
+
};
|
|
12832
|
+
return {
|
|
12833
|
+
bind,
|
|
12834
|
+
init,
|
|
12835
|
+
tableFunctionCardinality,
|
|
12836
|
+
tableFunctionPlan,
|
|
12837
|
+
tableFunctionStatistics,
|
|
12838
|
+
tableFunctionDynamicToString
|
|
12839
|
+
};
|
|
11611
12840
|
}
|
|
11612
12841
|
|
|
11613
12842
|
// src/protocol/handlers/aggregate.ts
|
|
11614
12843
|
init_arrow();
|
|
11615
|
-
function
|
|
12844
|
+
function aggregateHandlers(registry) {
|
|
11616
12845
|
function resolveAggregate(name, schemaPath) {
|
|
11617
12846
|
const func = registry.get(name, {
|
|
11618
12847
|
arguments: new Arguments,
|
|
@@ -11625,199 +12854,180 @@ function registerAggregateMethods(protocol, registry) {
|
|
|
11625
12854
|
}
|
|
11626
12855
|
return func.aggregateConfig;
|
|
11627
12856
|
}
|
|
11628
|
-
|
|
11629
|
-
params
|
|
11630
|
-
|
|
11631
|
-
|
|
11632
|
-
|
|
11633
|
-
|
|
11634
|
-
|
|
11635
|
-
|
|
11636
|
-
|
|
11637
|
-
|
|
11638
|
-
|
|
11639
|
-
|
|
11640
|
-
|
|
11641
|
-
|
|
11642
|
-
|
|
11643
|
-
|
|
11644
|
-
|
|
11645
|
-
|
|
11646
|
-
|
|
11647
|
-
|
|
11648
|
-
|
|
11649
|
-
|
|
11650
|
-
|
|
11651
|
-
|
|
11652
|
-
|
|
11653
|
-
|
|
11654
|
-
|
|
11655
|
-
|
|
11656
|
-
|
|
11657
|
-
|
|
11658
|
-
|
|
11659
|
-
|
|
11660
|
-
|
|
11661
|
-
|
|
11662
|
-
|
|
11663
|
-
|
|
11664
|
-
handler: (params) => {
|
|
11665
|
-
const innerParams = unwrapRequest(params.request);
|
|
11666
|
-
const functionName = innerParams.function_name;
|
|
11667
|
-
const executionId = toUint8Array(innerParams.execution_id);
|
|
11668
|
-
const cfg = resolveAggregate(functionName, innerParams.schema_path ?? null);
|
|
11669
|
-
const batch = readSingleBatch(toUint8Array(innerParams.input_batch));
|
|
11670
|
-
if (!batch || batch.numRows === 0)
|
|
11671
|
-
return wrapResult({}, schema2([]));
|
|
11672
|
-
const gidIdx = batch.schema.fields.findIndex((f) => f.name === GROUP_COLUMN_NAME);
|
|
11673
|
-
if (gidIdx < 0) {
|
|
11674
|
-
throw new Error(`aggregate_update: input batch missing ${GROUP_COLUMN_NAME} column`);
|
|
11675
|
-
}
|
|
11676
|
-
const gidCol = batch.getChildAt(gidIdx);
|
|
11677
|
-
const groupIds = [];
|
|
11678
|
-
const uniqueGids = new Set;
|
|
11679
|
-
for (let i = 0;i < batch.numRows; i++) {
|
|
11680
|
-
const v = gidCol.get(i);
|
|
11681
|
-
const g = typeof v === "bigint" ? v : BigInt(v);
|
|
11682
|
-
groupIds.push(g);
|
|
11683
|
-
uniqueGids.add(g);
|
|
11684
|
-
}
|
|
11685
|
-
const exec = getExecutionState(executionId, uniqueGids);
|
|
11686
|
-
if (!exec) {
|
|
11687
|
-
throw new Error(`aggregate_update: unknown execution_id for '${functionName}' (bind missing or state dropped)`);
|
|
11688
|
-
}
|
|
11689
|
-
const columns = [];
|
|
11690
|
-
for (let i = 0;i < batch.schema.fields.length; i++) {
|
|
11691
|
-
if (i === gidIdx)
|
|
11692
|
-
continue;
|
|
11693
|
-
columns.push(batch.getChildAt(i));
|
|
11694
|
-
}
|
|
11695
|
-
const ensureState = (gid) => {
|
|
11696
|
-
let s = exec.states.get(gid);
|
|
11697
|
-
if (s === undefined) {
|
|
11698
|
-
s = cfg.initialState(exec.bindParams);
|
|
11699
|
-
exec.states.set(gid, s);
|
|
11700
|
-
}
|
|
11701
|
-
return s;
|
|
11702
|
-
};
|
|
11703
|
-
cfg.update({
|
|
11704
|
-
states: exec.states,
|
|
11705
|
-
groupIds,
|
|
11706
|
-
columns,
|
|
11707
|
-
args: exec.bindParams.args,
|
|
11708
|
-
ensureState
|
|
11709
|
-
});
|
|
11710
|
-
persistGroupStates(executionId, uniqueGids);
|
|
12857
|
+
const aggregateBind = async (params) => {
|
|
12858
|
+
const innerParams = unwrapRequest(params.request);
|
|
12859
|
+
const functionName = innerParams.function_name;
|
|
12860
|
+
const cfg = resolveAggregate(functionName, innerParams.schema_path ?? null);
|
|
12861
|
+
const argBytes = toUint8Array(innerParams.arguments);
|
|
12862
|
+
const args = deserializeArguments(argBytes);
|
|
12863
|
+
const inputSchema = innerParams.input_schema ? deserializeSchema(toUint8Array(innerParams.input_schema)) : null;
|
|
12864
|
+
const secretsBytes = innerParams.secrets ? toUint8Array(innerParams.secrets) : null;
|
|
12865
|
+
const secretsBatch = secretsBytes && secretsBytes.length > 0 ? deserializeBatch(secretsBytes) : null;
|
|
12866
|
+
const secrets = secretsBatch ? batchToSecretDict(secretsBatch) : {};
|
|
12867
|
+
const bindParams = {
|
|
12868
|
+
args: extractArgMap(cfg, args),
|
|
12869
|
+
arguments: args,
|
|
12870
|
+
inputSchema,
|
|
12871
|
+
settings: {},
|
|
12872
|
+
secrets,
|
|
12873
|
+
argumentNames: innerParams.argument_names ? (Array.isArray(innerParams.argument_names) ? innerParams.argument_names : [...innerParams.argument_names]).map((value) => value == null ? null : String(value)) : null
|
|
12874
|
+
};
|
|
12875
|
+
const executionId = new Uint8Array(16);
|
|
12876
|
+
crypto.getRandomValues(executionId);
|
|
12877
|
+
setExecutionState(executionId, {
|
|
12878
|
+
states: new Map,
|
|
12879
|
+
bindArgs: args,
|
|
12880
|
+
bindParams
|
|
12881
|
+
});
|
|
12882
|
+
const outType = cfg.onBind ? await cfg.onBind(bindParams) : cfg.outputType;
|
|
12883
|
+
const outSchema = schema2([field2("result", outType, true)]);
|
|
12884
|
+
return wrapResult({ output_schema: serializeSchema(outSchema), execution_id: executionId }, AggregateBindResultSchema);
|
|
12885
|
+
};
|
|
12886
|
+
const aggregateUpdate = (params) => {
|
|
12887
|
+
const innerParams = unwrapRequest(params.request);
|
|
12888
|
+
const functionName = innerParams.function_name;
|
|
12889
|
+
const executionId = toUint8Array(innerParams.execution_id);
|
|
12890
|
+
const cfg = resolveAggregate(functionName, innerParams.schema_path ?? null);
|
|
12891
|
+
const batch = readSingleBatch(toUint8Array(innerParams.input_batch));
|
|
12892
|
+
if (!batch || batch.numRows === 0)
|
|
11711
12893
|
return wrapResult({}, schema2([]));
|
|
12894
|
+
const gidIdx = batch.schema.fields.findIndex((f) => f.name === GROUP_COLUMN_NAME);
|
|
12895
|
+
if (gidIdx < 0) {
|
|
12896
|
+
throw new Error(`aggregate_update: input batch missing ${GROUP_COLUMN_NAME} column`);
|
|
12897
|
+
}
|
|
12898
|
+
const gidCol = batch.getChildAt(gidIdx);
|
|
12899
|
+
const groupIds = [];
|
|
12900
|
+
const uniqueGids = new Set;
|
|
12901
|
+
for (let i = 0;i < batch.numRows; i++) {
|
|
12902
|
+
const v = gidCol.get(i);
|
|
12903
|
+
const g = typeof v === "bigint" ? v : BigInt(v);
|
|
12904
|
+
groupIds.push(g);
|
|
12905
|
+
uniqueGids.add(g);
|
|
12906
|
+
}
|
|
12907
|
+
const exec = getExecutionState(executionId, uniqueGids);
|
|
12908
|
+
if (!exec) {
|
|
12909
|
+
throw new Error(`aggregate_update: unknown execution_id for '${functionName}' (bind missing or state dropped)`);
|
|
12910
|
+
}
|
|
12911
|
+
const columns = [];
|
|
12912
|
+
for (let i = 0;i < batch.schema.fields.length; i++) {
|
|
12913
|
+
if (i === gidIdx)
|
|
12914
|
+
continue;
|
|
12915
|
+
columns.push(batch.getChildAt(i));
|
|
11712
12916
|
}
|
|
11713
|
-
|
|
11714
|
-
|
|
11715
|
-
|
|
11716
|
-
|
|
11717
|
-
|
|
11718
|
-
const innerParams = unwrapRequest(params.request);
|
|
11719
|
-
const functionName = innerParams.function_name;
|
|
11720
|
-
const executionId = toUint8Array(innerParams.execution_id);
|
|
11721
|
-
const cfg = resolveAggregate(functionName, innerParams.schema_path ?? null);
|
|
11722
|
-
const batch = readSingleBatch(toUint8Array(innerParams.merge_batch));
|
|
11723
|
-
if (!batch || batch.numRows === 0)
|
|
11724
|
-
return wrapResult({}, schema2([]));
|
|
11725
|
-
const srcCol = batch.getChild("source_group_id");
|
|
11726
|
-
const tgtCol = batch.getChild("target_group_id");
|
|
11727
|
-
const referencedGids = new Set;
|
|
11728
|
-
const srcIds = [];
|
|
11729
|
-
const tgtIds = [];
|
|
11730
|
-
for (let i = 0;i < batch.numRows; i++) {
|
|
11731
|
-
const src = BigInt(srcCol.get(i));
|
|
11732
|
-
const tgt = BigInt(tgtCol.get(i));
|
|
11733
|
-
srcIds.push(src);
|
|
11734
|
-
tgtIds.push(tgt);
|
|
11735
|
-
referencedGids.add(src);
|
|
11736
|
-
referencedGids.add(tgt);
|
|
11737
|
-
}
|
|
11738
|
-
const exec = getExecutionState(executionId, referencedGids);
|
|
11739
|
-
if (!exec) {
|
|
11740
|
-
throw new Error(`aggregate_combine: unknown execution_id for '${functionName}' ` + `(context missing on disk — bind may have failed or been cleaned up)`);
|
|
11741
|
-
}
|
|
11742
|
-
const touchedTargets = new Set;
|
|
11743
|
-
for (let i = 0;i < batch.numRows; i++) {
|
|
11744
|
-
const src = srcIds[i];
|
|
11745
|
-
const tgt = tgtIds[i];
|
|
11746
|
-
const srcHas = exec.states.has(src);
|
|
11747
|
-
const tgtHas = exec.states.has(tgt);
|
|
11748
|
-
if (!srcHas && !tgtHas)
|
|
11749
|
-
continue;
|
|
11750
|
-
const srcState = srcHas ? exec.states.get(src) : cfg.initialState(exec.bindParams);
|
|
11751
|
-
const tgtState = tgtHas ? exec.states.get(tgt) : cfg.initialState(exec.bindParams);
|
|
11752
|
-
exec.states.set(tgt, cfg.combine(srcState, tgtState, exec.bindParams));
|
|
11753
|
-
touchedTargets.add(tgt);
|
|
12917
|
+
const ensureState = (gid) => {
|
|
12918
|
+
let s = exec.states.get(gid);
|
|
12919
|
+
if (s === undefined) {
|
|
12920
|
+
s = cfg.initialState(exec.bindParams);
|
|
12921
|
+
exec.states.set(gid, s);
|
|
11754
12922
|
}
|
|
11755
|
-
|
|
12923
|
+
return s;
|
|
12924
|
+
};
|
|
12925
|
+
cfg.update({
|
|
12926
|
+
states: exec.states,
|
|
12927
|
+
groupIds,
|
|
12928
|
+
columns,
|
|
12929
|
+
args: exec.bindParams.args,
|
|
12930
|
+
ensureState
|
|
12931
|
+
});
|
|
12932
|
+
persistGroupStates(executionId, uniqueGids);
|
|
12933
|
+
return wrapResult({}, schema2([]));
|
|
12934
|
+
};
|
|
12935
|
+
const aggregateCombine = (params) => {
|
|
12936
|
+
const innerParams = unwrapRequest(params.request);
|
|
12937
|
+
const functionName = innerParams.function_name;
|
|
12938
|
+
const executionId = toUint8Array(innerParams.execution_id);
|
|
12939
|
+
const cfg = resolveAggregate(functionName, innerParams.schema_path ?? null);
|
|
12940
|
+
const batch = readSingleBatch(toUint8Array(innerParams.merge_batch));
|
|
12941
|
+
if (!batch || batch.numRows === 0)
|
|
11756
12942
|
return wrapResult({}, schema2([]));
|
|
12943
|
+
const srcCol = batch.getChild("source_group_id");
|
|
12944
|
+
const tgtCol = batch.getChild("target_group_id");
|
|
12945
|
+
const referencedGids = new Set;
|
|
12946
|
+
const srcIds = [];
|
|
12947
|
+
const tgtIds = [];
|
|
12948
|
+
for (let i = 0;i < batch.numRows; i++) {
|
|
12949
|
+
const src = BigInt(srcCol.get(i));
|
|
12950
|
+
const tgt = BigInt(tgtCol.get(i));
|
|
12951
|
+
srcIds.push(src);
|
|
12952
|
+
tgtIds.push(tgt);
|
|
12953
|
+
referencedGids.add(src);
|
|
12954
|
+
referencedGids.add(tgt);
|
|
12955
|
+
}
|
|
12956
|
+
const exec = getExecutionState(executionId, referencedGids);
|
|
12957
|
+
if (!exec) {
|
|
12958
|
+
throw new Error(`aggregate_combine: unknown execution_id for '${functionName}' ` + `(context missing on disk — bind may have failed or been cleaned up)`);
|
|
12959
|
+
}
|
|
12960
|
+
const touchedTargets = new Set;
|
|
12961
|
+
for (let i = 0;i < batch.numRows; i++) {
|
|
12962
|
+
const src = srcIds[i];
|
|
12963
|
+
const tgt = tgtIds[i];
|
|
12964
|
+
const srcHas = exec.states.has(src);
|
|
12965
|
+
const tgtHas = exec.states.has(tgt);
|
|
12966
|
+
if (!srcHas && !tgtHas)
|
|
12967
|
+
continue;
|
|
12968
|
+
const srcState = srcHas ? exec.states.get(src) : cfg.initialState(exec.bindParams);
|
|
12969
|
+
const tgtState = tgtHas ? exec.states.get(tgt) : cfg.initialState(exec.bindParams);
|
|
12970
|
+
exec.states.set(tgt, cfg.combine(srcState, tgtState, exec.bindParams));
|
|
12971
|
+
touchedTargets.add(tgt);
|
|
11757
12972
|
}
|
|
11758
|
-
|
|
11759
|
-
|
|
11760
|
-
|
|
11761
|
-
|
|
11762
|
-
|
|
11763
|
-
|
|
11764
|
-
|
|
11765
|
-
|
|
11766
|
-
|
|
11767
|
-
|
|
11768
|
-
|
|
11769
|
-
|
|
11770
|
-
|
|
11771
|
-
if (gidBatch) {
|
|
11772
|
-
const col = gidBatch.getChild("group_id");
|
|
11773
|
-
for (let i = 0;i < gidBatch.numRows; i++) {
|
|
11774
|
-
const v = col.get(i);
|
|
11775
|
-
const g = typeof v === "bigint" ? v : BigInt(v);
|
|
11776
|
-
groupIds.push(g);
|
|
11777
|
-
uniqueGids.add(g);
|
|
11778
|
-
}
|
|
11779
|
-
}
|
|
11780
|
-
const exec = getExecutionState(executionId, uniqueGids);
|
|
11781
|
-
if (!exec) {
|
|
11782
|
-
throw new Error(`aggregate_finalize: unknown execution_id for '${functionName}'`);
|
|
11783
|
-
}
|
|
11784
|
-
const states = new Map;
|
|
11785
|
-
for (const gid of groupIds) {
|
|
11786
|
-
states.set(gid, exec.states.has(gid) ? exec.states.get(gid) : null);
|
|
11787
|
-
}
|
|
11788
|
-
const resultBatch = cfg.finalize({
|
|
11789
|
-
groupIds,
|
|
11790
|
-
states,
|
|
11791
|
-
outputSchema,
|
|
11792
|
-
args: exec.bindParams.args
|
|
11793
|
-
});
|
|
11794
|
-
return wrapResult({ result_batch: serializeBatchWithSchema(resultBatch) }, AggregateFinalizeResultSchema);
|
|
11795
|
-
}
|
|
11796
|
-
});
|
|
11797
|
-
protocol.unary("aggregate_destructor", {
|
|
11798
|
-
params: AggregateDestructorParamsSchema,
|
|
11799
|
-
result: RESULT_BINARY_SCHEMA,
|
|
11800
|
-
handler: (params) => {
|
|
11801
|
-
const innerParams = unwrapRequest(params.request);
|
|
11802
|
-
const executionId = toUint8Array(innerParams.execution_id);
|
|
11803
|
-
const exec = getExecutionState(executionId);
|
|
11804
|
-
if (!exec)
|
|
11805
|
-
return wrapResult({}, schema2([]));
|
|
11806
|
-
const gidBatch = readSingleBatch(toUint8Array(innerParams.group_ids_batch));
|
|
11807
|
-
if (!gidBatch || gidBatch.numRows === 0)
|
|
11808
|
-
return wrapResult({}, schema2([]));
|
|
12973
|
+
persistGroupStates(executionId, touchedTargets);
|
|
12974
|
+
return wrapResult({}, schema2([]));
|
|
12975
|
+
};
|
|
12976
|
+
const aggregateFinalize = (params) => {
|
|
12977
|
+
const innerParams = unwrapRequest(params.request);
|
|
12978
|
+
const functionName = innerParams.function_name;
|
|
12979
|
+
const executionId = toUint8Array(innerParams.execution_id);
|
|
12980
|
+
const cfg = resolveAggregate(functionName, innerParams.schema_path ?? null);
|
|
12981
|
+
const outputSchema = deserializeSchema(toUint8Array(innerParams.output_schema));
|
|
12982
|
+
const gidBatch = readSingleBatch(toUint8Array(innerParams.group_ids_batch));
|
|
12983
|
+
const groupIds = [];
|
|
12984
|
+
const uniqueGids = new Set;
|
|
12985
|
+
if (gidBatch) {
|
|
11809
12986
|
const col = gidBatch.getChild("group_id");
|
|
11810
|
-
const toDrop = new Set;
|
|
11811
12987
|
for (let i = 0;i < gidBatch.numRows; i++) {
|
|
11812
12988
|
const v = col.get(i);
|
|
11813
12989
|
const g = typeof v === "bigint" ? v : BigInt(v);
|
|
11814
|
-
|
|
11815
|
-
|
|
12990
|
+
groupIds.push(g);
|
|
12991
|
+
uniqueGids.add(g);
|
|
11816
12992
|
}
|
|
11817
|
-
persistGroupStates(executionId, toDrop);
|
|
11818
|
-
return wrapResult({}, schema2([]));
|
|
11819
12993
|
}
|
|
11820
|
-
|
|
12994
|
+
const exec = getExecutionState(executionId, uniqueGids);
|
|
12995
|
+
if (!exec) {
|
|
12996
|
+
throw new Error(`aggregate_finalize: unknown execution_id for '${functionName}'`);
|
|
12997
|
+
}
|
|
12998
|
+
const states = new Map;
|
|
12999
|
+
for (const gid of groupIds) {
|
|
13000
|
+
states.set(gid, exec.states.has(gid) ? exec.states.get(gid) : null);
|
|
13001
|
+
}
|
|
13002
|
+
const resultBatch = cfg.finalize({
|
|
13003
|
+
groupIds,
|
|
13004
|
+
states,
|
|
13005
|
+
outputSchema,
|
|
13006
|
+
args: exec.bindParams.args
|
|
13007
|
+
});
|
|
13008
|
+
return wrapResult({ result_batch: serializeBatchWithSchema(resultBatch) }, AggregateFinalizeResultSchema);
|
|
13009
|
+
};
|
|
13010
|
+
const aggregateDestructor = (params) => {
|
|
13011
|
+
const innerParams = unwrapRequest(params.request);
|
|
13012
|
+
const executionId = toUint8Array(innerParams.execution_id);
|
|
13013
|
+
const exec = getExecutionState(executionId);
|
|
13014
|
+
if (!exec)
|
|
13015
|
+
return wrapResult({}, schema2([]));
|
|
13016
|
+
const gidBatch = readSingleBatch(toUint8Array(innerParams.group_ids_batch));
|
|
13017
|
+
if (!gidBatch || gidBatch.numRows === 0)
|
|
13018
|
+
return wrapResult({}, schema2([]));
|
|
13019
|
+
const col = gidBatch.getChild("group_id");
|
|
13020
|
+
const toDrop = new Set;
|
|
13021
|
+
for (let i = 0;i < gidBatch.numRows; i++) {
|
|
13022
|
+
const v = col.get(i);
|
|
13023
|
+
const g = typeof v === "bigint" ? v : BigInt(v);
|
|
13024
|
+
exec.states.delete(g);
|
|
13025
|
+
toDrop.add(g);
|
|
13026
|
+
}
|
|
13027
|
+
persistGroupStates(executionId, toDrop);
|
|
13028
|
+
return wrapResult({}, schema2([]));
|
|
13029
|
+
};
|
|
13030
|
+
return { aggregateBind, aggregateUpdate, aggregateCombine, aggregateFinalize, aggregateDestructor };
|
|
11821
13031
|
}
|
|
11822
13032
|
function extractArgMap(cfg, args) {
|
|
11823
13033
|
const out = {};
|
|
@@ -11876,7 +13086,7 @@ function serializeBatchWithSchema(batch) {
|
|
|
11876
13086
|
// src/protocol/handlers/table-buffering.ts
|
|
11877
13087
|
init_arrow();
|
|
11878
13088
|
init_storage();
|
|
11879
|
-
function
|
|
13089
|
+
function tableBufferingHandlers(registry, signingKey) {
|
|
11880
13090
|
function resolveBuffering(name, schemaPath) {
|
|
11881
13091
|
const func = registry.get(name, {
|
|
11882
13092
|
arguments: new Arguments,
|
|
@@ -11921,55 +13131,44 @@ function registerTableBufferingMethods(protocol, registry, signingKey) {
|
|
|
11921
13131
|
};
|
|
11922
13132
|
return { func, params };
|
|
11923
13133
|
}
|
|
11924
|
-
|
|
11925
|
-
|
|
11926
|
-
|
|
11927
|
-
|
|
11928
|
-
|
|
11929
|
-
|
|
11930
|
-
const { func, params } = await loadParams(inner, clientLog, ctx);
|
|
11931
|
-
if (inner.batch_index != null) {
|
|
11932
|
-
params.batchIndex = Number(inner.batch_index);
|
|
11933
|
-
}
|
|
11934
|
-
const batch = deserializeBatch(toUint8Array(inner.input_batch));
|
|
11935
|
-
const stateId = await func.bufferingConfig.process(batch, params);
|
|
11936
|
-
if (!(stateId instanceof Uint8Array)) {
|
|
11937
|
-
throw new Error(`${func.meta.name}.process() must return Uint8Array (the opaque state_id)`);
|
|
11938
|
-
}
|
|
11939
|
-
return wrapResult({ state_id: stateId }, TableBufferingProcessResultSchema);
|
|
11940
|
-
}
|
|
11941
|
-
});
|
|
11942
|
-
protocol.unary("table_buffering_combine", {
|
|
11943
|
-
params: TableBufferingCombineParamsSchema,
|
|
11944
|
-
result: RESULT_BINARY_SCHEMA,
|
|
11945
|
-
handler: async (rpcParams, ctx) => {
|
|
11946
|
-
const inner = unwrapRequest(rpcParams.request);
|
|
11947
|
-
const clientLog = makeClientLog(ctx);
|
|
11948
|
-
const { func, params } = await loadParams(inner, clientLog, ctx);
|
|
11949
|
-
const stateIds = decodeBytesList(inner.state_ids);
|
|
11950
|
-
const finalizeStateIds = await func.bufferingConfig.combine(stateIds, params);
|
|
11951
|
-
const out = finalizeStateIds.map((fid, i) => {
|
|
11952
|
-
if (!(fid instanceof Uint8Array)) {
|
|
11953
|
-
throw new Error(`${func.meta.name}.combine() returned non-Uint8Array finalize_state_id at index ${i}`);
|
|
11954
|
-
}
|
|
11955
|
-
return fid;
|
|
11956
|
-
});
|
|
11957
|
-
return wrapResult({ finalize_state_ids: out }, TableBufferingCombineResultSchema);
|
|
13134
|
+
const tableBufferingProcess = async (rpcParams, ctx) => {
|
|
13135
|
+
const inner = unwrapRequest(rpcParams.request);
|
|
13136
|
+
const clientLog = makeClientLog(ctx);
|
|
13137
|
+
const { func, params } = await loadParams(inner, clientLog, ctx);
|
|
13138
|
+
if (inner.batch_index != null) {
|
|
13139
|
+
params.batchIndex = Number(inner.batch_index);
|
|
11958
13140
|
}
|
|
11959
|
-
|
|
11960
|
-
|
|
11961
|
-
|
|
11962
|
-
|
|
11963
|
-
handler: async (rpcParams) => {
|
|
11964
|
-
try {
|
|
11965
|
-
const inner = unwrapRequest(rpcParams.request);
|
|
11966
|
-
const executionId = toUint8Array(inner.execution_id);
|
|
11967
|
-
const bound = new BoundStorage(storage, executionId);
|
|
11968
|
-
await bound.executionClear();
|
|
11969
|
-
} catch {}
|
|
11970
|
-
return wrapResult({}, TableBufferingDestructorResultSchema);
|
|
13141
|
+
const batch = deserializeBatch(toUint8Array(inner.input_batch));
|
|
13142
|
+
const stateId = await func.bufferingConfig.process(batch, params);
|
|
13143
|
+
if (!(stateId instanceof Uint8Array)) {
|
|
13144
|
+
throw new Error(`${func.meta.name}.process() must return Uint8Array (the opaque state_id)`);
|
|
11971
13145
|
}
|
|
11972
|
-
|
|
13146
|
+
return wrapResult({ state_id: stateId }, TableBufferingProcessResultSchema);
|
|
13147
|
+
};
|
|
13148
|
+
const tableBufferingCombine = async (rpcParams, ctx) => {
|
|
13149
|
+
const inner = unwrapRequest(rpcParams.request);
|
|
13150
|
+
const clientLog = makeClientLog(ctx);
|
|
13151
|
+
const { func, params } = await loadParams(inner, clientLog, ctx);
|
|
13152
|
+
const stateIds = decodeBytesList(inner.state_ids);
|
|
13153
|
+
const finalizeStateIds = await func.bufferingConfig.combine(stateIds, params);
|
|
13154
|
+
const out = finalizeStateIds.map((fid, i) => {
|
|
13155
|
+
if (!(fid instanceof Uint8Array)) {
|
|
13156
|
+
throw new Error(`${func.meta.name}.combine() returned non-Uint8Array finalize_state_id at index ${i}`);
|
|
13157
|
+
}
|
|
13158
|
+
return fid;
|
|
13159
|
+
});
|
|
13160
|
+
return wrapResult({ finalize_state_ids: out }, TableBufferingCombineResultSchema);
|
|
13161
|
+
};
|
|
13162
|
+
const tableBufferingDestructor = async (rpcParams) => {
|
|
13163
|
+
try {
|
|
13164
|
+
const inner = unwrapRequest(rpcParams.request);
|
|
13165
|
+
const executionId = toUint8Array(inner.execution_id);
|
|
13166
|
+
const bound = new BoundStorage(storage, executionId);
|
|
13167
|
+
await bound.executionClear();
|
|
13168
|
+
} catch {}
|
|
13169
|
+
return wrapResult({}, TableBufferingDestructorResultSchema);
|
|
13170
|
+
};
|
|
13171
|
+
return { tableBufferingProcess, tableBufferingCombine, tableBufferingDestructor };
|
|
11973
13172
|
}
|
|
11974
13173
|
function makeClientLog(ctx) {
|
|
11975
13174
|
if (ctx && typeof ctx.clientLog === "function") {
|
|
@@ -12124,7 +13323,7 @@ async function serveCatalogContents(cat, attach, ifNoneMatch) {
|
|
|
12124
13323
|
// src/attach-ticket.ts
|
|
12125
13324
|
init_arrow();
|
|
12126
13325
|
import {
|
|
12127
|
-
Protocol,
|
|
13326
|
+
Protocol as Protocol2,
|
|
12128
13327
|
badRequest,
|
|
12129
13328
|
errorInfo,
|
|
12130
13329
|
preconditionFailure
|
|
@@ -12498,7 +13697,7 @@ async function sealAttach2(config, request, auth) {
|
|
|
12498
13697
|
return { ticket: token, expires_at: expiresAt === 0 ? Number.POSITIVE_INFINITY : expiresAt };
|
|
12499
13698
|
}
|
|
12500
13699
|
function buildAttachTicketsProtocol(config) {
|
|
12501
|
-
const p = new
|
|
13700
|
+
const p = new Protocol2(ATTACH_TICKETS_PROTOCOL_NAME, { protocolVersion: ATTACH_TICKETS_PROTOCOL_VERSION });
|
|
12502
13701
|
p.unary("seal_attach", {
|
|
12503
13702
|
params: REQUEST_PARAMS_SCHEMA,
|
|
12504
13703
|
result: RESULT_BINARY_SCHEMA,
|
|
@@ -12514,503 +13713,369 @@ function buildAttachTicketsProtocol(config) {
|
|
|
12514
13713
|
}
|
|
12515
13714
|
|
|
12516
13715
|
// src/protocol/handlers/catalog/admin.ts
|
|
12517
|
-
function
|
|
12518
|
-
|
|
12519
|
-
|
|
12520
|
-
|
|
12521
|
-
|
|
12522
|
-
|
|
12523
|
-
|
|
12524
|
-
|
|
12525
|
-
|
|
12526
|
-
|
|
12527
|
-
|
|
12528
|
-
|
|
12529
|
-
}));
|
|
12530
|
-
const items = infos.map((info) => encodeCatalogInfo(info));
|
|
12531
|
-
return wrapResult({ items }, CatalogCatalogsResultSchema);
|
|
12532
|
-
}
|
|
12533
|
-
});
|
|
12534
|
-
protocol.unary("catalog_attach", {
|
|
12535
|
-
params: CatalogAttachParamsSchema,
|
|
12536
|
-
result: RESULT_BINARY_SCHEMA,
|
|
12537
|
-
handler: async (params, ctx) => {
|
|
12538
|
-
const innerParams = unwrapRequest(params.request);
|
|
12539
|
-
const cat = getCatalog();
|
|
12540
|
-
let optionsDict = decodeOptionsBatch(innerParams.options);
|
|
12541
|
-
const restored = await redeemAttachTicket(optionsDict, signingKey, ctx?.auth ?? currentRequestAuth());
|
|
12542
|
-
if (restored !== null) {
|
|
12543
|
-
innerParams.name = restored.name;
|
|
12544
|
-
innerParams.options = restored.optionsIpc;
|
|
12545
|
-
innerParams.data_version_spec = restored.dataVersionSpec;
|
|
12546
|
-
innerParams.implementation_version = restored.implementationVersion;
|
|
12547
|
-
optionsDict = restored.options;
|
|
12548
|
-
}
|
|
12549
|
-
const result = await cat.attach(innerParams.name, optionsDict, innerParams.data_version_spec ?? null, innerParams.implementation_version ?? null);
|
|
12550
|
-
const sealedAttach = await sealAttach(toUint8Array(result.attach_opaque_data), ctx?.auth, signingKey);
|
|
12551
|
-
return wrapResult(buildCatalogAttachResult({
|
|
12552
|
-
...result,
|
|
12553
|
-
attach_opaque_data: sealedAttach,
|
|
12554
|
-
supports_column_statistics: result.supports_column_statistics ?? true
|
|
12555
|
-
}), CatalogAttachResultSchema);
|
|
12556
|
-
}
|
|
12557
|
-
});
|
|
12558
|
-
catalogUnary(protocol, signingKey, "catalog_detach", {
|
|
12559
|
-
params: CatalogDetachParamsSchema,
|
|
12560
|
-
result: emptyResultSchema,
|
|
12561
|
-
handler: async (params) => {
|
|
12562
|
-
const cat = getCatalog();
|
|
12563
|
-
await cat.detach(toUint8Array(params.attach_opaque_data));
|
|
12564
|
-
return {};
|
|
12565
|
-
}
|
|
13716
|
+
function catalogAdminHandlers(getCatalog, signingKey) {
|
|
13717
|
+
const catalogCatalogs = catalogHandler(signingKey, async () => {
|
|
13718
|
+
const cat = getCatalog();
|
|
13719
|
+
const infos = cat.catalogsInfo ? await cat.catalogsInfo() : cat.catalogs().map((name) => ({
|
|
13720
|
+
name,
|
|
13721
|
+
implementation_version: null,
|
|
13722
|
+
data_version_spec: null,
|
|
13723
|
+
attach_option_specs: [],
|
|
13724
|
+
releases: []
|
|
13725
|
+
}));
|
|
13726
|
+
const items = infos.map((info) => encodeCatalogInfo(info));
|
|
13727
|
+
return wrapResult({ items }, CatalogCatalogsResultSchema);
|
|
12566
13728
|
});
|
|
12567
|
-
|
|
12568
|
-
params
|
|
12569
|
-
|
|
12570
|
-
|
|
12571
|
-
|
|
12572
|
-
|
|
12573
|
-
|
|
12574
|
-
|
|
13729
|
+
const catalogAttach = async (params, ctx) => {
|
|
13730
|
+
const innerParams = unwrapRequest(params.request);
|
|
13731
|
+
const cat = getCatalog();
|
|
13732
|
+
let optionsDict = decodeOptionsBatch(innerParams.options);
|
|
13733
|
+
const restored = await redeemAttachTicket(optionsDict, signingKey, ctx?.auth ?? currentRequestAuth());
|
|
13734
|
+
if (restored !== null) {
|
|
13735
|
+
innerParams.name = restored.name;
|
|
13736
|
+
innerParams.options = restored.optionsIpc;
|
|
13737
|
+
innerParams.data_version_spec = restored.dataVersionSpec;
|
|
13738
|
+
innerParams.implementation_version = restored.implementationVersion;
|
|
13739
|
+
optionsDict = restored.options;
|
|
13740
|
+
}
|
|
13741
|
+
const result = await cat.attach(innerParams.name, optionsDict, innerParams.data_version_spec ?? null, innerParams.implementation_version ?? null);
|
|
13742
|
+
const sealedAttach = await sealAttach(toUint8Array(result.attach_opaque_data), ctx?.auth, signingKey);
|
|
13743
|
+
return wrapResult(buildCatalogAttachResult({
|
|
13744
|
+
...result,
|
|
13745
|
+
attach_opaque_data: sealedAttach,
|
|
13746
|
+
supports_column_statistics: result.supports_column_statistics ?? true
|
|
13747
|
+
}), CatalogAttachResultSchema);
|
|
13748
|
+
};
|
|
13749
|
+
const catalogDetach = catalogHandler(signingKey, async (params) => {
|
|
13750
|
+
const cat = getCatalog();
|
|
13751
|
+
await cat.detach(toUint8Array(params.attach_opaque_data));
|
|
13752
|
+
return {};
|
|
12575
13753
|
});
|
|
12576
|
-
|
|
12577
|
-
|
|
12578
|
-
|
|
12579
|
-
|
|
12580
|
-
const cat = getCatalog();
|
|
12581
|
-
await cat.drop(params.name);
|
|
12582
|
-
return {};
|
|
12583
|
-
}
|
|
13754
|
+
const catalogCreate = catalogHandler(signingKey, async (params) => {
|
|
13755
|
+
const cat = getCatalog();
|
|
13756
|
+
await cat.create(params.name, params.on_conflict, params.options);
|
|
13757
|
+
return {};
|
|
12584
13758
|
});
|
|
12585
|
-
|
|
12586
|
-
|
|
12587
|
-
|
|
12588
|
-
|
|
12589
|
-
const cat = getCatalog();
|
|
12590
|
-
const version = await cat.version(toUint8Array(params.attach_opaque_data), params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12591
|
-
return wrapResult({ version }, CatalogVersionResultSchema);
|
|
12592
|
-
}
|
|
13759
|
+
const catalogDrop = catalogHandler(signingKey, async (params) => {
|
|
13760
|
+
const cat = getCatalog();
|
|
13761
|
+
await cat.drop(params.name);
|
|
13762
|
+
return {};
|
|
12593
13763
|
});
|
|
12594
|
-
|
|
12595
|
-
|
|
12596
|
-
|
|
12597
|
-
|
|
12598
|
-
const auth = ctx?.auth;
|
|
12599
|
-
const sealedAttach = params.attach_opaque_data != null ? toUint8Array(params.attach_opaque_data) : new Uint8Array(0);
|
|
12600
|
-
const attachPlain = await openAttach(sealedAttach, auth, signingKey);
|
|
12601
|
-
const cat = getCatalog();
|
|
12602
|
-
const txPlain = await cat.transactionBegin(attachPlain);
|
|
12603
|
-
const transaction_opaque_data = txPlain != null ? await sealTransaction(toUint8Array(txPlain), sealedAttach, auth, signingKey) : null;
|
|
12604
|
-
return wrapResult({ transaction_opaque_data }, CatalogTransactionBeginResultSchema);
|
|
12605
|
-
}
|
|
13764
|
+
const catalogVersion = catalogHandler(signingKey, async (params) => {
|
|
13765
|
+
const cat = getCatalog();
|
|
13766
|
+
const version = await cat.version(toUint8Array(params.attach_opaque_data), params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13767
|
+
return wrapResult({ version }, CatalogVersionResultSchema);
|
|
12606
13768
|
});
|
|
12607
|
-
|
|
12608
|
-
|
|
12609
|
-
|
|
12610
|
-
|
|
12611
|
-
|
|
12612
|
-
|
|
12613
|
-
|
|
12614
|
-
}
|
|
13769
|
+
const catalogTransactionBegin = async (params, ctx) => {
|
|
13770
|
+
const auth = ctx?.auth;
|
|
13771
|
+
const sealedAttach = params.attach_opaque_data != null ? toUint8Array(params.attach_opaque_data) : new Uint8Array(0);
|
|
13772
|
+
const attachPlain = await openAttach(sealedAttach, auth, signingKey);
|
|
13773
|
+
const cat = getCatalog();
|
|
13774
|
+
const txPlain = await cat.transactionBegin(attachPlain);
|
|
13775
|
+
const transaction_opaque_data = txPlain != null ? await sealTransaction(toUint8Array(txPlain), sealedAttach, auth, signingKey) : null;
|
|
13776
|
+
return wrapResult({ transaction_opaque_data }, CatalogTransactionBeginResultSchema);
|
|
13777
|
+
};
|
|
13778
|
+
const catalogTransactionCommit = catalogHandler(signingKey, async (params) => {
|
|
13779
|
+
const cat = getCatalog();
|
|
13780
|
+
await cat.transactionCommit(toUint8Array(params.attach_opaque_data), toUint8Array(params.transaction_opaque_data));
|
|
13781
|
+
return {};
|
|
12615
13782
|
});
|
|
12616
|
-
|
|
12617
|
-
|
|
12618
|
-
|
|
12619
|
-
|
|
12620
|
-
const cat = getCatalog();
|
|
12621
|
-
await cat.transactionRollback(toUint8Array(params.attach_opaque_data), toUint8Array(params.transaction_opaque_data));
|
|
12622
|
-
return {};
|
|
12623
|
-
}
|
|
13783
|
+
const catalogTransactionRollback = catalogHandler(signingKey, async (params) => {
|
|
13784
|
+
const cat = getCatalog();
|
|
13785
|
+
await cat.transactionRollback(toUint8Array(params.attach_opaque_data), toUint8Array(params.transaction_opaque_data));
|
|
13786
|
+
return {};
|
|
12624
13787
|
});
|
|
12625
|
-
|
|
12626
|
-
|
|
12627
|
-
|
|
12628
|
-
|
|
12629
|
-
|
|
12630
|
-
|
|
12631
|
-
return wrapResult({
|
|
12632
|
-
items: schemas.map((s) => encodeSchemaInfo(s))
|
|
12633
|
-
}, CatalogSchemasResultSchema);
|
|
12634
|
-
}
|
|
13788
|
+
const catalogSchemas = catalogHandler(signingKey, async (params) => {
|
|
13789
|
+
const cat = getCatalog();
|
|
13790
|
+
const schemas = await cat.schemas(toUint8Array(params.attach_opaque_data), params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13791
|
+
return wrapResult({
|
|
13792
|
+
items: schemas.map((s) => encodeSchemaInfo(s))
|
|
13793
|
+
}, CatalogSchemasResultSchema);
|
|
12635
13794
|
});
|
|
12636
|
-
|
|
12637
|
-
params:
|
|
12638
|
-
|
|
12639
|
-
handler: async (params) => {
|
|
12640
|
-
const ifNoneMatch = params.if_none_match == null ? null : String(params.if_none_match);
|
|
12641
|
-
return serveCatalogContents(getCatalog(), toUint8Array(params.attach_opaque_data), ifNoneMatch);
|
|
12642
|
-
}
|
|
13795
|
+
const catalogContents = catalogHandler(signingKey, async (params) => {
|
|
13796
|
+
const ifNoneMatch = params.if_none_match == null ? null : String(params.if_none_match);
|
|
13797
|
+
return serveCatalogContents(getCatalog(), toUint8Array(params.attach_opaque_data), ifNoneMatch);
|
|
12643
13798
|
});
|
|
12644
|
-
|
|
12645
|
-
|
|
12646
|
-
|
|
12647
|
-
|
|
12648
|
-
|
|
12649
|
-
|
|
12650
|
-
return wrapResult({
|
|
12651
|
-
items: formats.map((f) => encodeCopyFromFormatInfo(f))
|
|
12652
|
-
}, CatalogCopyFromFormatsResultSchema);
|
|
12653
|
-
}
|
|
13799
|
+
const catalogCopyFromFormats = catalogHandler(signingKey, async (params) => {
|
|
13800
|
+
const cat = getCatalog();
|
|
13801
|
+
const formats = await cat.copyFromFormats(toUint8Array(params.attach_opaque_data), params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13802
|
+
return wrapResult({
|
|
13803
|
+
items: formats.map((f) => encodeCopyFromFormatInfo(f))
|
|
13804
|
+
}, CatalogCopyFromFormatsResultSchema);
|
|
12654
13805
|
});
|
|
12655
|
-
|
|
12656
|
-
|
|
12657
|
-
|
|
12658
|
-
|
|
12659
|
-
|
|
12660
|
-
|
|
12661
|
-
return wrapResult({
|
|
12662
|
-
items: info ? [encodeSchemaInfo(info)] : []
|
|
12663
|
-
}, CatalogSchemaGetResultSchema);
|
|
12664
|
-
}
|
|
13806
|
+
const catalogSchemaGet = catalogHandler(signingKey, async (params) => {
|
|
13807
|
+
const cat = getCatalog();
|
|
13808
|
+
const info = await cat.schemaGet(toUint8Array(params.attach_opaque_data), params.path, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13809
|
+
return wrapResult({
|
|
13810
|
+
items: info ? [encodeSchemaInfo(info)] : []
|
|
13811
|
+
}, CatalogSchemaGetResultSchema);
|
|
12665
13812
|
});
|
|
12666
|
-
|
|
12667
|
-
|
|
12668
|
-
|
|
12669
|
-
|
|
12670
|
-
const cat = getCatalog();
|
|
12671
|
-
await cat.schemaCreate(toUint8Array(params.attach_opaque_data), params.path, params.comment, null, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12672
|
-
return {};
|
|
12673
|
-
}
|
|
13813
|
+
const catalogSchemaCreate = catalogHandler(signingKey, async (params) => {
|
|
13814
|
+
const cat = getCatalog();
|
|
13815
|
+
await cat.schemaCreate(toUint8Array(params.attach_opaque_data), params.path, params.comment, null, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13816
|
+
return {};
|
|
12674
13817
|
});
|
|
12675
|
-
|
|
12676
|
-
|
|
12677
|
-
|
|
12678
|
-
|
|
12679
|
-
const cat = getCatalog();
|
|
12680
|
-
await cat.schemaDrop(toUint8Array(params.attach_opaque_data), params.path, params.ignore_not_found, params.cascade, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12681
|
-
return {};
|
|
12682
|
-
}
|
|
13818
|
+
const catalogSchemaDrop = catalogHandler(signingKey, async (params) => {
|
|
13819
|
+
const cat = getCatalog();
|
|
13820
|
+
await cat.schemaDrop(toUint8Array(params.attach_opaque_data), params.path, params.ignore_not_found, params.cascade, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13821
|
+
return {};
|
|
12683
13822
|
});
|
|
12684
|
-
|
|
12685
|
-
|
|
12686
|
-
|
|
12687
|
-
|
|
12688
|
-
|
|
12689
|
-
|
|
12690
|
-
return wrapResult({
|
|
12691
|
-
items: tables.map((t) => encodeTableInfo(t))
|
|
12692
|
-
}, CatalogSchemaContentsTablesResultSchema);
|
|
12693
|
-
}
|
|
13823
|
+
const catalogSchemaContentsTables = catalogHandler(signingKey, async (params) => {
|
|
13824
|
+
const cat = getCatalog();
|
|
13825
|
+
const tables = await cat.schemaContentsTables(toUint8Array(params.attach_opaque_data), params.path, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13826
|
+
return wrapResult({
|
|
13827
|
+
items: tables.map((t) => encodeTableInfo(t))
|
|
13828
|
+
}, CatalogSchemaContentsTablesResultSchema);
|
|
12694
13829
|
});
|
|
12695
|
-
|
|
12696
|
-
|
|
12697
|
-
|
|
12698
|
-
|
|
12699
|
-
|
|
12700
|
-
|
|
12701
|
-
return wrapResult({
|
|
12702
|
-
items: views.map((v) => encodeViewInfo(v))
|
|
12703
|
-
}, CatalogSchemaContentsViewsResultSchema);
|
|
12704
|
-
}
|
|
13830
|
+
const catalogSchemaContentsViews = catalogHandler(signingKey, async (params) => {
|
|
13831
|
+
const cat = getCatalog();
|
|
13832
|
+
const views = await cat.schemaContentsViews(toUint8Array(params.attach_opaque_data), params.path, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13833
|
+
return wrapResult({
|
|
13834
|
+
items: views.map((v) => encodeViewInfo(v))
|
|
13835
|
+
}, CatalogSchemaContentsViewsResultSchema);
|
|
12705
13836
|
});
|
|
12706
|
-
|
|
12707
|
-
|
|
12708
|
-
|
|
12709
|
-
|
|
12710
|
-
|
|
12711
|
-
|
|
12712
|
-
return wrapResult({
|
|
12713
|
-
items: funcs.map((f) => encodeFunctionInfoOnce(f))
|
|
12714
|
-
}, CatalogSchemaContentsFunctionsResultSchema);
|
|
12715
|
-
}
|
|
13837
|
+
const catalogSchemaContentsFunctions = catalogHandler(signingKey, async (params) => {
|
|
13838
|
+
const cat = getCatalog();
|
|
13839
|
+
const funcs = await cat.schemaContentsFunctions(toUint8Array(params.attach_opaque_data), params.path, decodeDictValue(params.type), params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13840
|
+
return wrapResult({
|
|
13841
|
+
items: funcs.map((f) => encodeFunctionInfoOnce(f))
|
|
13842
|
+
}, CatalogSchemaContentsFunctionsResultSchema);
|
|
12716
13843
|
});
|
|
13844
|
+
return {
|
|
13845
|
+
catalogCatalogs,
|
|
13846
|
+
catalogAttach,
|
|
13847
|
+
catalogDetach,
|
|
13848
|
+
catalogCreate,
|
|
13849
|
+
catalogDrop,
|
|
13850
|
+
catalogVersion,
|
|
13851
|
+
catalogTransactionBegin,
|
|
13852
|
+
catalogTransactionCommit,
|
|
13853
|
+
catalogTransactionRollback,
|
|
13854
|
+
catalogSchemas,
|
|
13855
|
+
catalogContents,
|
|
13856
|
+
catalogCopyFromFormats,
|
|
13857
|
+
catalogSchemaGet,
|
|
13858
|
+
catalogSchemaCreate,
|
|
13859
|
+
catalogSchemaDrop,
|
|
13860
|
+
catalogSchemaContentsTables,
|
|
13861
|
+
catalogSchemaContentsViews,
|
|
13862
|
+
catalogSchemaContentsFunctions
|
|
13863
|
+
};
|
|
12717
13864
|
}
|
|
12718
13865
|
|
|
12719
13866
|
// src/protocol/handlers/catalog/table.ts
|
|
12720
|
-
function
|
|
12721
|
-
|
|
12722
|
-
|
|
12723
|
-
|
|
12724
|
-
|
|
12725
|
-
|
|
12726
|
-
|
|
12727
|
-
return wrapResult({
|
|
12728
|
-
items: info ? [encodeTableInfo(info)] : []
|
|
12729
|
-
}, CatalogTableGetResultSchema);
|
|
12730
|
-
}
|
|
13867
|
+
function catalogTableHandlers(getCatalog, signingKey) {
|
|
13868
|
+
const catalogTableGet = catalogHandler(signingKey, async (params) => {
|
|
13869
|
+
const cat = getCatalog();
|
|
13870
|
+
const info = await cat.tableGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.at_unit, params.at_value, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13871
|
+
return wrapResult({
|
|
13872
|
+
items: info ? [encodeTableInfo(info)] : []
|
|
13873
|
+
}, CatalogTableGetResultSchema);
|
|
12731
13874
|
});
|
|
12732
|
-
|
|
12733
|
-
|
|
12734
|
-
|
|
12735
|
-
|
|
12736
|
-
const cat = getCatalog();
|
|
12737
|
-
await cat.tableCreate(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, toUint8Array(params.columns), params.on_conflict, params.not_null_constraints ?? [], params.unique_constraints ?? [], params.check_constraints ?? [], params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12738
|
-
return {};
|
|
12739
|
-
}
|
|
13875
|
+
const catalogTableCreate = catalogHandler(signingKey, async (params) => {
|
|
13876
|
+
const cat = getCatalog();
|
|
13877
|
+
await cat.tableCreate(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, toUint8Array(params.columns), params.on_conflict, params.not_null_constraints ?? [], params.unique_constraints ?? [], params.check_constraints ?? [], params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13878
|
+
return {};
|
|
12740
13879
|
});
|
|
12741
|
-
|
|
12742
|
-
|
|
12743
|
-
|
|
12744
|
-
|
|
12745
|
-
const cat = getCatalog();
|
|
12746
|
-
await cat.tableDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12747
|
-
return {};
|
|
12748
|
-
}
|
|
13880
|
+
const catalogTableDrop = catalogHandler(signingKey, async (params) => {
|
|
13881
|
+
const cat = getCatalog();
|
|
13882
|
+
await cat.tableDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13883
|
+
return {};
|
|
12749
13884
|
});
|
|
12750
|
-
|
|
12751
|
-
|
|
12752
|
-
|
|
12753
|
-
|
|
12754
|
-
const cat = getCatalog();
|
|
12755
|
-
const stats = await cat.tableColumnStatisticsGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12756
|
-
return { result: stats?.bytes ?? null };
|
|
12757
|
-
}
|
|
13885
|
+
const catalogTableColumnStatisticsGet = catalogHandler(signingKey, async (params) => {
|
|
13886
|
+
const cat = getCatalog();
|
|
13887
|
+
const stats = await cat.tableColumnStatisticsGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13888
|
+
return { result: stats?.bytes ?? null };
|
|
12758
13889
|
});
|
|
12759
|
-
|
|
12760
|
-
|
|
12761
|
-
|
|
12762
|
-
|
|
12763
|
-
const cat = getCatalog();
|
|
12764
|
-
const scanResult = await cat.tableScanFunctionGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.at_unit, params.at_value, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12765
|
-
return wrapResult(scanResult, ScanFunctionResultSchema);
|
|
12766
|
-
}
|
|
13890
|
+
const catalogTableScanFunctionGet = catalogHandler(signingKey, async (params) => {
|
|
13891
|
+
const cat = getCatalog();
|
|
13892
|
+
const scanResult = await cat.tableScanFunctionGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.at_unit, params.at_value, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13893
|
+
return wrapResult(scanResult, ScanFunctionResultSchema);
|
|
12767
13894
|
});
|
|
12768
|
-
|
|
12769
|
-
|
|
12770
|
-
|
|
12771
|
-
|
|
12772
|
-
const cat = getCatalog();
|
|
12773
|
-
const branchesResult = await cat.tableScanBranchesGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.at_unit, params.at_value, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12774
|
-
return wrapResult(branchesResult, ScanBranchesResultSchema);
|
|
12775
|
-
}
|
|
13895
|
+
const catalogTableScanBranchesGet = catalogHandler(signingKey, async (params) => {
|
|
13896
|
+
const cat = getCatalog();
|
|
13897
|
+
const branchesResult = await cat.tableScanBranchesGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.at_unit, params.at_value, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13898
|
+
return wrapResult(branchesResult, ScanBranchesResultSchema);
|
|
12776
13899
|
});
|
|
12777
|
-
|
|
12778
|
-
|
|
12779
|
-
|
|
12780
|
-
|
|
12781
|
-
const cat = getCatalog();
|
|
12782
|
-
await cat.tableCommentSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.comment, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12783
|
-
return {};
|
|
12784
|
-
}
|
|
13900
|
+
const catalogTableCommentSet = catalogHandler(signingKey, async (params) => {
|
|
13901
|
+
const cat = getCatalog();
|
|
13902
|
+
await cat.tableCommentSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.comment, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13903
|
+
return {};
|
|
12785
13904
|
});
|
|
12786
|
-
|
|
12787
|
-
|
|
12788
|
-
|
|
12789
|
-
|
|
12790
|
-
const cat = getCatalog();
|
|
12791
|
-
await cat.tableRename(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.new_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12792
|
-
return {};
|
|
12793
|
-
}
|
|
13905
|
+
const catalogTableRename = catalogHandler(signingKey, async (params) => {
|
|
13906
|
+
const cat = getCatalog();
|
|
13907
|
+
await cat.tableRename(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.new_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13908
|
+
return {};
|
|
12794
13909
|
});
|
|
12795
|
-
|
|
12796
|
-
|
|
12797
|
-
|
|
12798
|
-
|
|
12799
|
-
const cat = getCatalog();
|
|
12800
|
-
await cat.tableColumnAdd(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.column_type, params.default_value, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12801
|
-
return {};
|
|
12802
|
-
}
|
|
13910
|
+
const catalogTableColumnAdd = catalogHandler(signingKey, async (params) => {
|
|
13911
|
+
const cat = getCatalog();
|
|
13912
|
+
await cat.tableColumnAdd(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.column_type, params.default_value, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13913
|
+
return {};
|
|
12803
13914
|
});
|
|
12804
|
-
|
|
12805
|
-
|
|
12806
|
-
|
|
12807
|
-
|
|
12808
|
-
const cat = getCatalog();
|
|
12809
|
-
await cat.tableColumnDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12810
|
-
return {};
|
|
12811
|
-
}
|
|
13915
|
+
const catalogTableColumnDrop = catalogHandler(signingKey, async (params) => {
|
|
13916
|
+
const cat = getCatalog();
|
|
13917
|
+
await cat.tableColumnDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13918
|
+
return {};
|
|
12812
13919
|
});
|
|
12813
|
-
|
|
12814
|
-
|
|
12815
|
-
|
|
12816
|
-
|
|
12817
|
-
const cat = getCatalog();
|
|
12818
|
-
await cat.tableColumnRename(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.new_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12819
|
-
return {};
|
|
12820
|
-
}
|
|
13920
|
+
const catalogTableColumnRename = catalogHandler(signingKey, async (params) => {
|
|
13921
|
+
const cat = getCatalog();
|
|
13922
|
+
await cat.tableColumnRename(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.new_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13923
|
+
return {};
|
|
12821
13924
|
});
|
|
12822
|
-
|
|
12823
|
-
|
|
12824
|
-
|
|
12825
|
-
|
|
12826
|
-
const cat = getCatalog();
|
|
12827
|
-
await cat.tableColumnDefaultSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.default_value, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12828
|
-
return {};
|
|
12829
|
-
}
|
|
13925
|
+
const catalogTableColumnDefaultSet = catalogHandler(signingKey, async (params) => {
|
|
13926
|
+
const cat = getCatalog();
|
|
13927
|
+
await cat.tableColumnDefaultSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.default_value, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13928
|
+
return {};
|
|
12830
13929
|
});
|
|
12831
|
-
|
|
12832
|
-
|
|
12833
|
-
|
|
12834
|
-
|
|
12835
|
-
const cat = getCatalog();
|
|
12836
|
-
await cat.tableColumnDefaultDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12837
|
-
return {};
|
|
12838
|
-
}
|
|
13930
|
+
const catalogTableColumnDefaultDrop = catalogHandler(signingKey, async (params) => {
|
|
13931
|
+
const cat = getCatalog();
|
|
13932
|
+
await cat.tableColumnDefaultDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13933
|
+
return {};
|
|
12839
13934
|
});
|
|
12840
|
-
|
|
12841
|
-
|
|
12842
|
-
|
|
12843
|
-
|
|
12844
|
-
const cat = getCatalog();
|
|
12845
|
-
await cat.tableColumnTypeChange(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.new_type, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12846
|
-
return {};
|
|
12847
|
-
}
|
|
13935
|
+
const catalogTableColumnTypeChange = catalogHandler(signingKey, async (params) => {
|
|
13936
|
+
const cat = getCatalog();
|
|
13937
|
+
await cat.tableColumnTypeChange(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.new_type, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13938
|
+
return {};
|
|
12848
13939
|
});
|
|
12849
|
-
|
|
12850
|
-
|
|
12851
|
-
|
|
12852
|
-
|
|
12853
|
-
const cat = getCatalog();
|
|
12854
|
-
await cat.tableNotNullSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12855
|
-
return {};
|
|
12856
|
-
}
|
|
13940
|
+
const catalogTableNotNullSet = catalogHandler(signingKey, async (params) => {
|
|
13941
|
+
const cat = getCatalog();
|
|
13942
|
+
await cat.tableNotNullSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13943
|
+
return {};
|
|
12857
13944
|
});
|
|
12858
|
-
|
|
12859
|
-
|
|
12860
|
-
|
|
12861
|
-
|
|
12862
|
-
const cat = getCatalog();
|
|
12863
|
-
await cat.tableNotNullDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12864
|
-
return {};
|
|
12865
|
-
}
|
|
13945
|
+
const catalogTableNotNullDrop = catalogHandler(signingKey, async (params) => {
|
|
13946
|
+
const cat = getCatalog();
|
|
13947
|
+
await cat.tableNotNullDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.column_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13948
|
+
return {};
|
|
12866
13949
|
});
|
|
13950
|
+
return {
|
|
13951
|
+
catalogTableGet,
|
|
13952
|
+
catalogTableCreate,
|
|
13953
|
+
catalogTableDrop,
|
|
13954
|
+
catalogTableColumnStatisticsGet,
|
|
13955
|
+
catalogTableScanFunctionGet,
|
|
13956
|
+
catalogTableScanBranchesGet,
|
|
13957
|
+
catalogTableCommentSet,
|
|
13958
|
+
catalogTableRename,
|
|
13959
|
+
catalogTableColumnAdd,
|
|
13960
|
+
catalogTableColumnDrop,
|
|
13961
|
+
catalogTableColumnRename,
|
|
13962
|
+
catalogTableColumnDefaultSet,
|
|
13963
|
+
catalogTableColumnDefaultDrop,
|
|
13964
|
+
catalogTableColumnTypeChange,
|
|
13965
|
+
catalogTableNotNullSet,
|
|
13966
|
+
catalogTableNotNullDrop
|
|
13967
|
+
};
|
|
12867
13968
|
}
|
|
12868
13969
|
|
|
12869
13970
|
// src/protocol/handlers/catalog/view.ts
|
|
12870
|
-
function
|
|
12871
|
-
|
|
12872
|
-
|
|
12873
|
-
|
|
12874
|
-
|
|
12875
|
-
|
|
12876
|
-
|
|
12877
|
-
return wrapResult({
|
|
12878
|
-
items: info ? [encodeViewInfo(info)] : []
|
|
12879
|
-
}, CatalogViewGetResultSchema);
|
|
12880
|
-
}
|
|
13971
|
+
function catalogViewHandlers(getCatalog, signingKey) {
|
|
13972
|
+
const catalogViewGet = catalogHandler(signingKey, async (params) => {
|
|
13973
|
+
const cat = getCatalog();
|
|
13974
|
+
const info = await cat.viewGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13975
|
+
return wrapResult({
|
|
13976
|
+
items: info ? [encodeViewInfo(info)] : []
|
|
13977
|
+
}, CatalogViewGetResultSchema);
|
|
12881
13978
|
});
|
|
12882
|
-
|
|
12883
|
-
|
|
12884
|
-
|
|
12885
|
-
|
|
12886
|
-
const cat = getCatalog();
|
|
12887
|
-
await cat.viewCreate(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.definition, params.on_conflict, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12888
|
-
return {};
|
|
12889
|
-
}
|
|
13979
|
+
const catalogViewCreate = catalogHandler(signingKey, async (params) => {
|
|
13980
|
+
const cat = getCatalog();
|
|
13981
|
+
await cat.viewCreate(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.definition, params.on_conflict, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13982
|
+
return {};
|
|
12890
13983
|
});
|
|
12891
|
-
|
|
12892
|
-
|
|
12893
|
-
|
|
12894
|
-
|
|
12895
|
-
const cat = getCatalog();
|
|
12896
|
-
await cat.viewDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12897
|
-
return {};
|
|
12898
|
-
}
|
|
13984
|
+
const catalogViewDrop = catalogHandler(signingKey, async (params) => {
|
|
13985
|
+
const cat = getCatalog();
|
|
13986
|
+
await cat.viewDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13987
|
+
return {};
|
|
12899
13988
|
});
|
|
12900
|
-
|
|
12901
|
-
|
|
12902
|
-
|
|
12903
|
-
|
|
12904
|
-
const cat = getCatalog();
|
|
12905
|
-
await cat.viewRename(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.new_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12906
|
-
return {};
|
|
12907
|
-
}
|
|
13989
|
+
const catalogViewRename = catalogHandler(signingKey, async (params) => {
|
|
13990
|
+
const cat = getCatalog();
|
|
13991
|
+
await cat.viewRename(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.new_name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13992
|
+
return {};
|
|
12908
13993
|
});
|
|
12909
|
-
|
|
12910
|
-
|
|
12911
|
-
|
|
12912
|
-
|
|
12913
|
-
const cat = getCatalog();
|
|
12914
|
-
await cat.viewCommentSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.comment, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12915
|
-
return {};
|
|
12916
|
-
}
|
|
13994
|
+
const catalogViewCommentSet = catalogHandler(signingKey, async (params) => {
|
|
13995
|
+
const cat = getCatalog();
|
|
13996
|
+
await cat.viewCommentSet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.comment, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
13997
|
+
return {};
|
|
12917
13998
|
});
|
|
13999
|
+
return { catalogViewGet, catalogViewCreate, catalogViewDrop, catalogViewRename, catalogViewCommentSet };
|
|
12918
14000
|
}
|
|
12919
14001
|
|
|
12920
14002
|
// src/protocol/handlers/catalog/macro.ts
|
|
12921
|
-
function
|
|
12922
|
-
|
|
12923
|
-
|
|
12924
|
-
|
|
12925
|
-
|
|
12926
|
-
|
|
12927
|
-
|
|
12928
|
-
return wrapResult({
|
|
12929
|
-
items: info ? [encodeMacroInfo(info)] : []
|
|
12930
|
-
}, CatalogMacroGetResultSchema);
|
|
12931
|
-
}
|
|
14003
|
+
function catalogMacroHandlers(getCatalog, signingKey) {
|
|
14004
|
+
const catalogMacroGet = catalogHandler(signingKey, async (params) => {
|
|
14005
|
+
const cat = getCatalog();
|
|
14006
|
+
const info = await cat.macroGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
14007
|
+
return wrapResult({
|
|
14008
|
+
items: info ? [encodeMacroInfo(info)] : []
|
|
14009
|
+
}, CatalogMacroGetResultSchema);
|
|
12932
14010
|
});
|
|
12933
|
-
|
|
12934
|
-
|
|
12935
|
-
|
|
12936
|
-
|
|
12937
|
-
|
|
12938
|
-
const innerParams = params;
|
|
12939
|
-
await cat.macroCreate(toUint8Array(innerParams.attach_opaque_data), innerParams.schema_path, innerParams.name, innerParams.macro_type, innerParams.parameters ? Array.isArray(innerParams.parameters) ? innerParams.parameters : [...innerParams.parameters] : [], innerParams.definition, innerParams.on_conflict, innerParams.parameter_default_values ? toUint8Array(innerParams.parameter_default_values) : null, innerParams.arguments_schema ? toUint8Array(innerParams.arguments_schema) : null, innerParams.transaction_opaque_data ? toUint8Array(innerParams.transaction_opaque_data) : undefined);
|
|
12940
|
-
return {};
|
|
12941
|
-
}
|
|
14011
|
+
const catalogMacroCreate = catalogHandler(signingKey, async (params) => {
|
|
14012
|
+
const cat = getCatalog();
|
|
14013
|
+
const innerParams = params;
|
|
14014
|
+
await cat.macroCreate(toUint8Array(innerParams.attach_opaque_data), innerParams.schema_path, innerParams.name, innerParams.macro_type, innerParams.parameters ? Array.isArray(innerParams.parameters) ? innerParams.parameters : [...innerParams.parameters] : [], innerParams.definition, innerParams.on_conflict, innerParams.parameter_default_values ? toUint8Array(innerParams.parameter_default_values) : null, innerParams.arguments_schema ? toUint8Array(innerParams.arguments_schema) : null, innerParams.transaction_opaque_data ? toUint8Array(innerParams.transaction_opaque_data) : undefined);
|
|
14015
|
+
return {};
|
|
12942
14016
|
});
|
|
12943
|
-
|
|
12944
|
-
|
|
12945
|
-
|
|
12946
|
-
|
|
12947
|
-
const cat = getCatalog();
|
|
12948
|
-
await cat.macroDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
12949
|
-
return {};
|
|
12950
|
-
}
|
|
14017
|
+
const catalogMacroDrop = catalogHandler(signingKey, async (params) => {
|
|
14018
|
+
const cat = getCatalog();
|
|
14019
|
+
await cat.macroDrop(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.ignore_not_found, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
14020
|
+
return {};
|
|
12951
14021
|
});
|
|
12952
|
-
|
|
12953
|
-
|
|
12954
|
-
|
|
12955
|
-
|
|
12956
|
-
|
|
12957
|
-
|
|
12958
|
-
return wrapResult({
|
|
12959
|
-
items: macros.map((m) => encodeMacroInfo(m))
|
|
12960
|
-
}, CatalogSchemaContentsMacrosResultSchema);
|
|
12961
|
-
}
|
|
14022
|
+
const catalogSchemaContentsMacros = catalogHandler(signingKey, async (params) => {
|
|
14023
|
+
const cat = getCatalog();
|
|
14024
|
+
const macros = await cat.schemaContentsMacros(toUint8Array(params.attach_opaque_data), params.path, decodeDictValue(params.type), params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
14025
|
+
return wrapResult({
|
|
14026
|
+
items: macros.map((m) => encodeMacroInfo(m))
|
|
14027
|
+
}, CatalogSchemaContentsMacrosResultSchema);
|
|
12962
14028
|
});
|
|
14029
|
+
return { catalogMacroGet, catalogMacroCreate, catalogMacroDrop, catalogSchemaContentsMacros };
|
|
12963
14030
|
}
|
|
12964
14031
|
|
|
12965
14032
|
// src/protocol/handlers/catalog/index_methods.ts
|
|
12966
|
-
function
|
|
12967
|
-
|
|
12968
|
-
|
|
12969
|
-
|
|
12970
|
-
|
|
12971
|
-
|
|
12972
|
-
|
|
12973
|
-
return wrapResult({
|
|
12974
|
-
items: indexes.map((i) => encodeIndexInfo(i))
|
|
12975
|
-
}, CatalogSchemaContentsIndexesResultSchema);
|
|
12976
|
-
}
|
|
14033
|
+
function catalogIndexHandlers(getCatalog, signingKey) {
|
|
14034
|
+
const catalogSchemaContentsIndexes = catalogHandler(signingKey, async (params) => {
|
|
14035
|
+
const cat = getCatalog();
|
|
14036
|
+
const indexes = await cat.schemaContentsIndexes(toUint8Array(params.attach_opaque_data), params.path, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
14037
|
+
return wrapResult({
|
|
14038
|
+
items: indexes.map((i) => encodeIndexInfo(i))
|
|
14039
|
+
}, CatalogSchemaContentsIndexesResultSchema);
|
|
12977
14040
|
});
|
|
12978
|
-
|
|
12979
|
-
|
|
12980
|
-
|
|
12981
|
-
|
|
12982
|
-
|
|
12983
|
-
|
|
12984
|
-
return wrapResult({
|
|
12985
|
-
items: info ? [encodeIndexInfo(info)] : []
|
|
12986
|
-
}, CatalogIndexGetResultSchema);
|
|
12987
|
-
}
|
|
14041
|
+
const catalogIndexGet = catalogHandler(signingKey, async (params) => {
|
|
14042
|
+
const cat = getCatalog();
|
|
14043
|
+
const info = await cat.indexGet(toUint8Array(params.attach_opaque_data), params.schema_path, params.name, params.transaction_opaque_data ? toUint8Array(params.transaction_opaque_data) : undefined);
|
|
14044
|
+
return wrapResult({
|
|
14045
|
+
items: info ? [encodeIndexInfo(info)] : []
|
|
14046
|
+
}, CatalogIndexGetResultSchema);
|
|
12988
14047
|
});
|
|
14048
|
+
return { catalogSchemaContentsIndexes, catalogIndexGet };
|
|
12989
14049
|
}
|
|
12990
14050
|
|
|
12991
14051
|
// src/protocol/handlers/catalog/index.ts
|
|
12992
|
-
function
|
|
14052
|
+
function catalogHandlers(catalog, signingKey) {
|
|
12993
14053
|
const getCatalog = makeGetCatalog(catalog);
|
|
12994
|
-
|
|
12995
|
-
|
|
12996
|
-
|
|
12997
|
-
|
|
12998
|
-
|
|
14054
|
+
return {
|
|
14055
|
+
...catalogAdminHandlers(getCatalog, signingKey),
|
|
14056
|
+
...catalogTableHandlers(getCatalog, signingKey),
|
|
14057
|
+
...catalogViewHandlers(getCatalog, signingKey),
|
|
14058
|
+
...catalogMacroHandlers(getCatalog, signingKey),
|
|
14059
|
+
...catalogIndexHandlers(getCatalog, signingKey)
|
|
14060
|
+
};
|
|
12999
14061
|
}
|
|
13000
14062
|
|
|
13001
14063
|
// src/protocol/dispatch.ts
|
|
13002
|
-
|
|
14064
|
+
function buildVgiService(config) {
|
|
14065
|
+
return {
|
|
14066
|
+
...UNIMPLEMENTED_VGI_SERVICE,
|
|
14067
|
+
...functionHandlers({
|
|
14068
|
+
registry: config.registry,
|
|
14069
|
+
signingKey: config.signingKey,
|
|
14070
|
+
catalogInterface: config.catalogInterface
|
|
14071
|
+
}),
|
|
14072
|
+
...aggregateHandlers(config.registry),
|
|
14073
|
+
...tableBufferingHandlers(config.registry, config.signingKey),
|
|
14074
|
+
...catalogHandlers(config.catalogInterface, config.signingKey)
|
|
14075
|
+
};
|
|
14076
|
+
}
|
|
13003
14077
|
function buildVgiProtocol(config) {
|
|
13004
|
-
|
|
13005
|
-
registerFunctionMethods(protocol, {
|
|
13006
|
-
registry: config.registry,
|
|
13007
|
-
signingKey: config.signingKey,
|
|
13008
|
-
catalogInterface: config.catalogInterface
|
|
13009
|
-
});
|
|
13010
|
-
registerAggregateMethods(protocol, config.registry);
|
|
13011
|
-
registerTableBufferingMethods(protocol, config.registry, config.signingKey);
|
|
13012
|
-
registerCatalogMethods(protocol, config.catalogInterface, config.catalogName, config.signingKey);
|
|
13013
|
-
return protocol;
|
|
14078
|
+
return createVgiProtocol(buildVgiService(config));
|
|
13014
14079
|
}
|
|
13015
14080
|
// src/http/landing-html.ts
|
|
13016
14081
|
var LANDING_HTML_B64 = "PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KPHRpdGxlPlZHSSBXb3JrZXI8L3RpdGxlPgo8bWV0YSBuYW1lPSJ2Z2ktbGFuZGluZy12ZXJzaW9uIiBjb250ZW50PSIyIj4KPGxpbmsgcmVsPSJpY29uIiBocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVFBQUFBRUFDQVlBQUFCY2NxaG1BQUFBd1hwVVdIUlNZWGNnY0hKdlptbHNaU0IwZVhCbElHVjRhV1lBQUhqYWJWRGJFY01nRFB2M0ZCMEJQeUJtSE5La2Q5Mmc0MWZFcEJmYTZnNVpZQkMyYVg4OUgzVHJFRGF5dkhpcHBTVEFxbFZwRUo0QzdXQk9kdkFKSGp5ZDAwY0tvaUpxSkx5TVYrYzVUemFKRzFTK0dQbDlKTlk1VVMyaStKZVJSTkJlVWRmYk1LckRTQ1VTUEF4YXRKVks5ZVhhd3JxbkdSNkxPcG5QWmYvc0YweHZ5L2hIUlhabFRXQlZqd0swcjBMYUlESVlHMXprUTZNWGNGWWVaaGpJdnptZG9EZlhPVmtOYmFFS2NRQUFBWVZwUTBOUVNVTkRJSEJ5YjJacGJHVUFBSGljZlpHL1M4TkFITVZmVTRzaUZVRTdTRkhJVUIzRUxpcmlXS3RRaEFxbFZtalZ3ZVRTWDlDa0lVbHhjUlJjQ3c3K1dLdzZ1RGpyNnVBcUNJSS9RUHdEeEVuUlJVcjhYbEpvRWVQQmNSL2UzWHZjdlFPRVJvV3BabGNNVURYTFNDZmlZamEzS25hL0lvQXdCakNPRVltWitsd3FsWVRuK0xxSGo2OTNVWjdsZmU3UDBhZmtUUWI0Uk9JWTB3MkxlSU40WnRQU09lOFRoMWhKVW9qUGlTY011aUR4STlkbGw5ODRGeDBXZUdiSXlLVG5pVVBFWXJHRDVRNW1KVU1sbmlhT0tLcEcrVUxXWllYekZtZTFVbU90ZS9JWEJ2UGF5akxYYVE0amdVVXNJUVVSTW1vb293SUxVVm8xVWt5a2FUL3U0UTg3L2hTNVpIS1Z3Y2l4Z0NwVVNJNGYvQTkrZDJzV3BpYmRwR0FjQ0x6WTlzY28wTDBMTk91Mi9YMXMyODBUd1A4TVhHbHRmN1VCekg2U1htOXJrU09nZnh1NHVHNXI4aDV3dVFNTVBlbVNJVG1TbjZaUUtBRHZaL1JOT1dEd0Z1aGRjM3RyN2VQMEFjaFFWOGtiNE9BUUdDdFM5cnJIdTNzNmUvdjNUS3UvSDg2eGNzdFYwdjNNQUFBTmVtbFVXSFJZVFV3NlkyOXRMbUZrYjJKbExuaHRjQUFBQUFBQVBEOTRjR0ZqYTJWMElHSmxaMmx1UFNMdnU3OGlJR2xrUFNKWE5VMHdUWEJEWldocFNIcHlaVk42VGxSamVtdGpPV1FpUHo0S1BIZzZlRzF3YldWMFlTQjRiV3h1Y3pwNFBTSmhaRzlpWlRwdWN6cHRaWFJoTHlJZ2VEcDRiWEIwYXowaVdFMVFJRU52Y21VZ05DNDBMakF0UlhocGRqSWlQZ29nUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0S0lDQThjbVJtT2tSbGMyTnlhWEIwYVc5dUlISmtaanBoWW05MWREMGlJZ29nSUNBZ2VHMXNibk02ZUcxd1RVMDlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl0YlM4aUNpQWdJQ0I0Yld4dWN6cHpkRVYyZEQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wzTlVlWEJsTDFKbGMyOTFjbU5sUlhabGJuUWpJZ29nSUNBZ2VHMXNibk02WkdNOUltaDBkSEE2THk5d2RYSnNMbTl5Wnk5a1l5OWxiR1Z0Wlc1MGN5OHhMakV2SWdvZ0lDQWdlRzFzYm5NNlIwbE5VRDBpYUhSMGNEb3ZMM2QzZHk1bmFXMXdMbTl5Wnk5NGJYQXZJZ29nSUNBZ2VHMXNibk02ZEdsbVpqMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzkwYVdabUx6RXVNQzhpQ2lBZ0lDQjRiV3h1Y3pwNGJYQTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzhpQ2lBZ0lIaHRjRTFOT2tSdlkzVnRaVzUwU1VROUltZHBiWEE2Wkc5amFXUTZaMmx0Y0RvMllXWXpNekEyT1MweE9XSXhMVFExTXpVdFlqbGtZaTB6TWpka01EQXdNVFE0TldRaUNpQWdJSGh0Y0UxTk9rbHVjM1JoYm1ObFNVUTlJbmh0Y0M1cGFXUTZObUkwTlRnMk1EZ3RaV05sTWkwME5UWXdMV0k1T1RRdFpEZzFPR1ppWldFM1pEVXlJZ29nSUNCNGJYQk5UVHBQY21sbmFXNWhiRVJ2WTNWdFpXNTBTVVE5SW5odGNDNWthV1E2WVdVek1qSXlZV1V0TnpSbFpDMDBNV1JrTFdKbU9HRXRNalpqT0RnMU1HVTNObUkwSWdvZ0lDQmtZenBHYjNKdFlYUTlJbWx0WVdkbEwzQnVaeUlLSUNBZ1IwbE5VRHBCVUVrOUlqSXVNQ0lLSUNBZ1IwbE5VRHBRYkdGMFptOXliVDBpVFdGaklFOVRJZ29nSUNCSFNVMVFPbFJwYldWVGRHRnRjRDBpTVRjM09UZ3lNakExTWpVd05EY3pOQ0lLSUNBZ1IwbE5VRHBXWlhKemFXOXVQU0l5TGpFd0xqTTRJZ29nSUNCMGFXWm1Pazl5YVdWdWRHRjBhVzl1UFNJeElnb2dJQ0I0YlhBNlEzSmxZWFJ2Y2xSdmIydzlJa2RKVFZBZ01pNHhNQ0lLSUNBZ2VHMXdPazFsZEdGa1lYUmhSR0YwWlQwaU1qQXlOam93TlRveU5sUXhOVG93TURvMU1TMHdORG93TUNJS0lDQWdlRzF3T2sxdlpHbG1lVVJoZEdVOUlqSXdNalk2TURVNk1qWlVNVFU2TURBNk5URXRNRFE2TURBaVBnb2dJQ0E4ZUcxd1RVMDZTR2x6ZEc5eWVUNEtJQ0FnSUR4eVpHWTZVMlZ4UGdvZ0lDQWdJRHh5WkdZNmJHa0tJQ0FnSUNBZ2MzUkZkblE2WVdOMGFXOXVQU0p6WVhabFpDSUtJQ0FnSUNBZ2MzUkZkblE2WTJoaGJtZGxaRDBpTHlJS0lDQWdJQ0FnYzNSRmRuUTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG93TmpGaU5HTTVNQzB6TURNNUxUUTFOemd0WVRCaFl5MDBNV1E0WlRnd1lUVTRZMllpQ2lBZ0lDQWdJSE4wUlhaME9uTnZablIzWVhKbFFXZGxiblE5SWtkcGJYQWdNaTR4TUNBb1RXRmpJRTlUS1NJS0lDQWdJQ0FnYzNSRmRuUTZkMmhsYmowaU1qQXlOaTB3TlMweU5sUXhOVG93TURvMU1pMHdORG93TUNJdlBnb2dJQ0FnUEM5eVpHWTZVMlZ4UGdvZ0lDQThMM2h0Y0UxTk9raHBjM1J2Y25rK0NpQWdQQzl5WkdZNlJHVnpZM0pwY0hScGIyNCtDaUE4TDNKa1pqcFNSRVkrQ2p3dmVEcDRiWEJ0WlhSaFBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2p3L2VIQmhZMnRsZENCbGJtUTlJbmNpUHo3Y0FaQXRBQUFBQm1KTFIwUUFBQUFBQUFENVE3dC9BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUIzUkpUVVVINmdVYUV3QTBzNXREVXdBQUlBQkpSRUZVZU5xMHZXbXdaZGQxSHZhdHRjKzk5NzErM2EvNzlUdzN1Z0gwQUtBaEFDUUlVQVRCUWFSQWloTGpRSU1sMmJJcEs2WElTVXBPSlZGVktuRXFTbFhLcWtxNU1wVEtrVjJ5TER1eUpVc1JKVkV5SlpIaVBBa3pNUkFEMFJpNmdRYlE4L2pHZTg5Wkt6LzJ0UFk1OTc1K1VKSm1nZDM5K3IxNzd6bG43N1hYK3I1dmZZdisxNmZPS2NQL1VsVUFBQUdBeGorWVg1TytGbjlSL2pzQlVDSkF0ZnN6NW51SjhqLzY5L2Yva0Y0cXZoNFJGT3AvQmdRbEhmLytZMzRwQWY3YnFmdkJ3MXNxRkJTL1VRa1VQb0RTS3RmZXVtZ0Z3SzNQN2I4amZQYjJUMUw1ZGZ0OUNnVk51cUJ4ejBSYjk1OHc1aDB4L2pPb1RuekdwUDR6S2VXWFovakg2bS9xR2o1amZObHh6MHJIL0gwdDY2NTFEV0VCQVVyNWFYUmVjeTF2UmhoLzUvTFBhcmd2NlQyMDlhTTBidTFOZUw5aXYrU3Z4YTJUdjMzdDkzcjhmYVBXaHZKL3JOaDhqMStRR0x0cHV3c3FiQlRORjJwZldNM1ZwZnZTdmlxYTlDQXBiTWp3Q21HRDVuZlc3ak5hWlhPV0Q4RGVFRFUzbk13MlRHdXB1SCtUN3JMbVpaRVd1b1lmSU5Md1l1VTlwTFRKVGFBcEFpaU5XVUIyWTVvcjB2eDg3VjVZVS94UVJYR2oyNDg0TG5KU2lCS1k0cy9RS205UWJxTDQzSW55czAyTGs4WThtdlpucDBtUE9VWWx6UUdVWXVDazRuN2tIellIRGlqRnNQemN0QnRZNHdhSTYxblIzZndUMWdscENCYmMzb2lyWEZ1NEppSkNqRE5RQW9YSXEydmMrUFlnTDRLOCtjWFVQcTdDdFpJNWZ3Z0VTRHRxK1hkUVFycTRJbk9nN3ZVS0pwMUsxRG14NHdJalFzb0l5RDVESXBSZnhDcFJlOXlYdGZ2alpLSWpkVjlhSnoza1lzdmFHNkhRZUNLeDJlVHh2cGxvMERtSld4OEorU1h6ZlcxZEFIV2U0VnBQaXZKRml1c3d3WmNoSUNpSUNYQUVGQm1NcHY4VnA0ekpMRFc4T0pFSnVEUjU4NnkydHlpZCtCcGVpOUp4UTYxZ1dDNmNjVXRCVTBCR08zc29GMGczNmJuaEdyUnBJWFYraHNaZHNEbVF5QVJnWGNQbXQyK2pZWTFvM2s3aDNzZC9WMVJLeGRKTml6bmVNR3JkR3J0ZVlocVVrbFkxSzN0TUdrZlFJdVVmOTZoVDRBMVppQ3FLaHhzM3JxUXo5bS82eXgrdEtaaWJrOEJtdDJPRHRZNDU1OVF1K1BUeTZRUTFCMVVuT0tiRnZJYVAzTjVmMnIyazlOQmpHVEUyR2RBeDBZM0tPQk1PSHJBcXBtUUlMRjVIdmJRSTZ2ZFJyWi9Ec2h0QWljTFpRS0NVVFZBM2VKbXNVVW5ISENiYXVjbXJsVUJxVG5RMU41YUtBRS9GOHlsTHJ2Q3ZSRDdoVlYxVEpOSUo1OHFraENzOTIzSHJ2cFhJcGd5eGVINzVzK2thbGdhWjF5VmJwWXpKREFsQVJUZXFMY0pHWkNLSVRabmpRektaTklXbnJtUHVIekdOVFdVbjV3S3RFOUhzb0hIM2MrMFZVbHhzMmxta2FuYUFycUV5MUJza0hXcExJZ29uazJxUm9ta1orRlBBWGUzamE3ZzNTbTJzSUc4a2l0OW5xaDFlclF3MmJ5dnFUM2wyREc1R29DdG44ZmhmL1JrMjZTSnVPWFFUcmkwczRaWHoxM0huaHorQjZXMjcwQkNoRmtWTkRuQTlxQWkwVVhEcmNFbUhoUVVVTUs3ZWJhK0V5U1dHWFgrMklJdUhpQktsdzE4N2RZYlBTMzJKc3NwOXAxVVdtTGF6SmdzYzJXYzZwcXhBdHlMVm1OSEVZQzdtc0YxbEF4bjRMRmNyN2ZMY0xvWndVNnExN2toTmdCSEEzVndzWFNSTkFHa3l3S1UzS3FvbmdsaVRnQzFhODlIWkJuTldBU2pYVmt4MGY0Ykt6NXNmZ0pZbmZndzRxdVdERzN1OFVBbGl4Y3lGQUNhR3F1U25YdFMwWmFRY3U0YXB1d2lKZlo3SVVvTXZ2NDFIL3VDMzhROSs1bUZzMjc0VkY4K2Z4N3FaRGZqRTFCVCszZS8vSWFyMUd6RVVoZlNuc2VXbXc5aTQvMWFNcW1tL1NMVEVBTFNWOHhKMTA5YTFvMXZsSllncFhlTUpzWlpEUVNjZDZSMDBsRHJBOGRoa1FXbkNQZlkxdkJiUFJMdVBnQTBPTis2anJKSnEyQ29uWnpzbWg2Y3V2a2YveDFQbjlGM2RkeHBmajA2T25sU0FnQnBEMmpnRTI0SVc0Z0UwMVRMTXByUldKNVVURXhEeXRjYUhWYUs5amttMWJnZ2V0KzhEbGFXRVRtSko0cFhxR01pUmN1bmxTREdRSVpxVkpValR3RG1HcTNvUTEwZE5EZzA1Z0Rna1BXcXlISjE0Q2drRHBJS1plaDVmL1RlL2dZYy8va0UwSU13dkx1QUxmLzRYV0Y2Y3gyZCsvalBZc25rTzI3ZHZ4Y3owT3Fnb25uditKWHpsMlJPNDlVTS9pcVgrTklnY1hNcG5WenRkL2VsRzVqaFhVejZ2NVZFV2V6TGt2NTJLbWFqRHNOZ3NNeVZEYWpCaUU1eFhmKzhjZ0ltNlpUT05BNDUwZkxhOWxzT0hicENCS2xwQTRDVDhhbUlBdUZITzJ5cHEwOUt5c0RZUlNyYW9SWWlsK2w0TUF6QUdnVjVyVlo5T21qSHNEOTBva2s2bUxDMUExOG1ZeDlYUzBOYnhyd25vdS9ISk00RWVNOHlFUWdBSVdCV2JhSVJudi9BbmVPSnJYOFROKy9kZ3k1Yk5XQm8xV0VJUDJ3OGR4ZjdiN3dZMmJzV0lxbEFHbU5KcVVxQWpvSklWWFA3ZVk4RGJKN0QvME0wWXFxQVJ3V2hsQmZWd0JiT3pHOER3QjczVUl3eVhsMUZWUGJ6NitodFkyTFFQdDM3b2t4aHhENndLQ0pXMEJZMWhhdFljbzhjdi9YZlBIdVlBa01GQ21semtyL0o0ZEpXS1FRMmRXa1N6Y1ZtUTZwb3p6ODV5YnBFU1dtQ3NrN1B1YWlKdmpqS2xIUHV1Sm1MN2RKTnpnVTQwaG5uUkxwVklrV3ZHR0JSOWJRZDQvQ1dxWTBIbFREK1Y3d3NGbEZ1MHpwaVZvNnM5R0JxWGlsRStQY3dSSHJNV05iQ20zcWowTXZkWXdtMTEybUJRTCtQQ2E5L0hTODg5aVd1blg4Zk8yZlVZTGkxZ3o0NmpPSGp6UWN6TnplR2RkODdncTMvNEw3SG52UTlpNS9IN3NGUk5RUnBOWVpoYXo1TUFTUGk4VTdLQzczNzlTL2praHorQXhaVmxnQjBJQVBjcVREbUhlalRDaGJObjhkenpMMkNGcDdENzRHRnMyYlVINjIrN0g3UFRHM3pXRWM5R1dxM2tLazlnSHB2Z2R5RHlpWnVGeGhCUlpSQ1BuMHJDWndTSU9QeWJyaW1kMHpWc1VKMVVhclZ3RHgzM0dWc0gyVVFRc2JVTzdjSEtCZzlaTFgwWm13RWtQUXpHNnhCVWJjblppdDZVb2VpeE1vc0F6S1FhMVR3eUN3aVRJWllteFhGN01wZGxSa2p4Y2lLQ3RJTWdCVWlwcXgxT055d3Z0RldqVDhnMlVxU25MZ2UveWxrbkFjaGp6ZmpCUUd1c3ZQTWF2dklIL3hmMno2M0QwV1BIME84TjBOUWpYTHB5QlcrZk9RT1JCcHMyenVLKzk3NEhCL2J1eFZlKytqVmNtdHFPdmUvN0VGYXFLWkRFeEVRVHJrTkVJRkl3TXlBMUZrNDhnOU9QL0JWdU8zNG5odEtnQ2dGQW9DQVJEQmV1NDV2ZmZSNFAvdFJuc0c3YkhzRDFVSVBRS0VORE1HYWk4dlMvRVZOR3VYNlBFZFN1czdHVnFLNGRHeXF5Q0ZJb01VaHpTWmtCUERYQXdnMHlBRXZmVGdoTUtETGdjbjJrOWFmYUNUdTZXaXhhYmJIcUdKWUo3eUlBM1BERkk3cEtrOU9MbElKb1RxMnBSVVA0Rzl5U3JyVWtnSHFqbEwrem9hZ2JMSFZNRGExcmh6NG0zaDZkbE8rTkJ6VXpGVlhVQVMwdFlCUTYrWHNzc1hSUVFSODFycjM4TEw3Kys3K0ZqM3pvZ3hpdURISGl4S3RZV1ZrQ2c4R1ZnK3YxdldDRVBDMTMrNUZiOGJFUFA0Zy8vdHgvd1ByYlA0RCtUY2VncnRlcFZPSm5aRktzYTFidzlkLzVQL0hlb3dmUkVQdWdFTzZyUURFN05jQzV0OTVDZGZOZDRBTzNnNm8rT09BVmFtNHRwNHpNRkg1R2RVbHJnSVFMY1ZxNFEyS3lGNTBrcmlOVGVyYkVWV1dzOXZjWkU1K25qdFVseVNycGZydWtKSk9UeFBjckQxZnRuUDVycXYxWG9YTFhvcDVVMVRXd0FHT1IrTUNocXIxT0xZcWFRbjAzQWUwbGJsVi9aRG5MVmNBcXN6Q29EYlJNMkh3cFUyaW5WNnMreEFsZ251cDQ1UDhHYkNwYXN1ZU8rSWRLU1I4bFlNeURjblQxSEw3NmU3K0YyNDdjakNlZWZBcjFhSVNsK1VVc0x5MUNGWmlhbXNiMHpBeW0xazJqMSs4QlJIajJoZTlEcGNGREgvOG9mdlBmZnc3Mzd6dUlwYXJuTnlCSnNZRllGUU1STEx6eENxYnFKVlQ5UHVyaENMVUlXRE9LdlhsdUkwNmRPSUhkbTdaaXBScWdhVDNick5HaTd1bXRSdVc0Q3VTUm1DelZNZERvRFpuU0x1bFRJT0hoZWszcW9HTVhnSTU5ckRkYUs0U1M5V21yRDIzZ0pYdDRyZUZnV3RQbVh3T3JFdThyanoxTmFYS3hreDYwcmZPVGdJRTZyN1VhVWorMnR0WVNJYUcwbWlnRGFkUmRMQlBmUjgxblN5Z3d0YTZYVXIxTmxPVlNSTlI5WFpVMW9UUmtNQkQ3bWJXbExTN3VWWWltRVpOUXpacjdLYTd4N2M5L0ZodW1Lanovd2d0b1JMRjMzMzRNUnlQTWJkMkszWHYzWW03TFpneW1wMEFFakVZampJWkRqRVpEUFBIVXMzanpyWGR3ejlFRHVIVHlGVGdWTUFrWUNnNGJ5a21ONldZSjExNTdEbC81ZzMrTjIyOC9odVdWRlRTcUVCVTAwcUNwR3pSTkE4Y09XN2JNb2FtSFh0eGxONHNDSExOcDdhSStiTzdwdUhXaVk3UVI3VC9INTZrVHM2M0pKYU1WQjRsR2RXcE0rWFhzUTAwWmdsa2JkcTJRbGRlTktXM2lmYUdrUlNqVms2bHNMc3Jvc1A1dVJEdnI2cWM5amJuZlpOWjIxZDE0UmlsbHFSQmFEUjZoUXM1YVVDdXJSYlF4TjgybXlBcWo4VGEwSHhObER0MGlxR3hFR0RkS3g4M0dWSk9hdDJtaGNYZStDMWhPRG00bHV1c2Z0c1RVczdXQ1MyclRVSi9hWVBuOFd6ang2RGV4Zm00elB2MHpQNCtaUVE5Lzh1OS9CenYzN3NiUzRqSVdscFlCRlRnT0tUdXpYMGZpT1lPdmZmMmIrTkZQUFlUUGZ2bWIrTUNSTzdDRUh0aDUwTFluUXl5ODh6cSs5QmQvakUwMHhJODk5RVBZdVdzWCtsTlR1SHoxT2s2OStRWWF5WExKaGNVbEhOaTNIeTllUEkrWjdRY0E3Z0hpcjRRN3NONk5nLzVhUURSOUY2OHo4ZCswMU1MWU1wTVNHNkNkekxPQWoyMG0yU3JseGk4SDA5eFdnTlE1ajFBWUpjME5Tb0JPM3JyR2s3NVlrK1pyMVVReW1DYjBoM1NsVngzTjkvK2JYMFZxYmpHWnRWQm9TcFA1VHNOdWpPTis4L2ZjT0EyakRoQzRSZzFpRkZJRitGZmJRQUtWc0M2RlBWZXA0UFFySjdEdnRydnc4Qy84RWxDdjRGLzkycTlpMjVZdFdKeGZ4R2g1QmN1TGkxQVJVRldoMTZ2UTYvZFJWVDFQK3pGdzd1SmxuRDkvRVhNOHd2RGlXZkRXdlNCcHNHNjBpR2UrK2hkWU9QVThmdnlqSDhWZzNYb3NyYXpnMnZYcm1LNEZCL2J2eDl6c1JqejIxSk1nNXdBVlhMdDJIZnNQSDhMWHYvRTBiamx5RCtxV0JEbWw2aFA2RzFaYm5QOS8vdEtBYkpOMjExbm56TEFiVVRPQVRlMU5UOVE1RnN0U1BBTzZPWEFZZlF1MXNKajI1cjhSNGY5dXJuK01kcVphOVdSdXlSb1RZRkY4UUNyUzNmOVBIbVRxSGlzN0VUU2UvaEdFVk8xSXlTZlZSSnJrQ1ZyUWRWRXdxd1lnV3ZNVkVFcTkrWmg0eEcwc1F5ZXgyQ2hVZkVnYktxRFZNM1A0c2YvMHYwSXpxUENsZi8wYm1KMmV3c0wxNjFoWVdNQzY5UnNnVW9PckN0TlRVeW4vSHRVak1ERklDYTZxOE9oamorUGU5OXlOWi83NmE3ajNSMzRjVjg2L2c4LzkvbS9qdnRzUDQrREhQNGFUYjd5Tks5ZXZBY1RvVlQyNFhvVVhYem1CZTQ0ZngvVnJWekc3Y1E2QVltbDVHWVBCQUZmT253V0pnQ29rb1pPOWVDR2RxQXdkdC9IYkFlUGRQSXZFL2t4NDdYRmMrV29CWGxJUFIwdWMzYXJWTXhHVXNTRzZVZFp1dGJsdE1VbDdMK203MlRaVVpDaGpzNVZWZFFBZFlJSFdscDRsZmxYWENKK3ZMUTlvUDBDMkxablFMdUJUZ0k3VWppY2xEMXVVRU9QYSsvd041QnN0bUJpc3hud2ZHWnBVZ1c0LzlzUkx0elFnTUFKaDl3KzhENWRGTUxoMEFTOC84UWgyYk42TVMxZXU0c0dIZnhwMzMza2N2L0ZQL2tjTStnT01wUGFNQUhsNXNEaUFHZ0pRNDh5NWk3aHc0UktHWjk3RVgzLzIzK0ROVjE3R0xZY080TksxZVZ4NCtqazQ1MEFnY09WTEQxSEZxSzV4N3R4WmpJWkR2NmhFMGRRTnBGRklQVEliU3p1Ni83RnR6TFkxdFpVOWRRRy95WUcxTEptcFRHOFREWDBEVDRVSjYxR0ttS3hGa3hWUU5nNmx3MGt4VVRGWVFHcmgwR0pRWWt5c24wRnVteDlmeGE1SzBJMUw5d21yWnJRTXJLWG4vVzlTdGEyQm1KMzB0UW5vanFpYVRyc1NDY3lvYzdleFl5dzF1MHBySmFXT2NpcisvcTdxemJGM1ppMmxSVnR4U0NCaTFBQkVCV2RQdm9vK0E1ZXVYTUhIZi82WGNOUDlIOFdqVHowTkJqQmNHYUllMVdqcUduVlRRNlNCTk9HL3VvR0s0cThmZXhMT01TNmNlaFg3OXV5R0tLTnVGQ3FBaUNRQmo4ZHlHcEFDWjg2Y1E3L1hMektWNWVVVktQZEE3SEtsckxvS2R0NTlGcVEwbWFwZDdUN3BEWjZCMGxoV2lHNjQ4TEE2ZHFBRkU5NHRXVzBKMUtxU08rQW1sVUZHTlI4Vi9zL2FZVVRXTEl6VnlmZHFiQUI0OTBrN0ZVaGltV2JRUkNLaDdMMGRVNHdWWFcyU085c1NqR3BGUDFyVW5CTFR0bFVDeUxnVWREWDJnTWlnemFBdXNtOVJWdW91cjFqQ2ROdkZkUXkxWWdCZElvK1cyMm9NaEI0VHJwdy9pNlp1Y1B6RG44QzJZL2RpU1FpdnZmUWlJSXFWcFFVc1hMME1FWUdJb0s1ck5LTWFUVk9qcmtkbzZocWo0UWdYTGwzRDNOYnRBQkVhRlRSTkE5V21nRGg5T2wyQlhZVm5uMzBXVTlQVFVQR0xzMWRWT0h2MkxHYTM3WUN3UzZ5RmtBRTlTY2VpenhqREluVzUrZkhJTFpuT1ByU2VZZnUvR3luZzFyS2IycStwTGFhc1lDZTBGZHpXc2xPNS9ibTlLdEhDanJRR3FLbXpobWs4Q3pBaEFPaGtoeDJpTVcyVXlGSEtJUDRkRm9FOHdVSmt0bWphMUswZ1FES0c4RUdTWnlyVW4wN2lGNlpvQTRINHhpSVZLT0ovNkxTMmpxdGtiZ2crR2VVVzBPcXlHa3QzS2xwTVkwanZ0QlA1N1pPa1FCSVJqYzlPeVB5dy80cEFwVUhUbjhMeGozd1NpNmpnd05DNnhtaTRoRzI3ZDZNL05lMVRTVkdJcUtmdm1nYlNDT3FteHZUNkdjeHQzUXBpOWtJakZYOS93L3NJZkNiUXFBSk5qUXRuenFBZWprRGtJSTEvcmRuWkdienc0b3ZZZC9nMk5NVFpuS1FWemRwclF5Mm9GdFpPNFh5RVNTM2psTDVmVzBld1paNVVNM1dxcXA3VzA3OTVlbHUrYm51SGF6ZG5wTFVudnFvdEF3YnpmbVA5UldqdHpJcFM5eG9tc1ZtY3VjWnhiS3ZralJ2SkNocm5CalhHYVVWYjZoZ2FjOG9YZEZjTUNwSmJqQU41bWd4SVdNRU1FRGtRc3dlNDJBdFVpTDJ3QlNGOVVwSll6U1dqQ2lxMzRocVVGbVBvR0JwM2xwTloyRzByR1VyL2kya3ZkZnkvVEtZUVR4dmp3eGROSVZRRVUxUHI4SUZQL2poa1pzN2ZHMlpzM3JVSEM0c3IrTEdmK3dWczNMMFAwdFJvcFBFbGdJZ3ZBYlJCNVNwczNiWWQ3TEs5RkdrTXFvcW04Vm1EcUVEcUdwZlBYOENUano2Ry9RY09vQkgvbXMxb2hFMGJadkhkRjE3RjF2MDMrMmVoQ3FjNXJBblJ4SUtuNjdLa1hZN2FGbUZFbGlUckpIZmFPYTB0bFc1Vm9XWExPdDNReG1kc1hwcURsTmp5TU93TnBYQ0N0NDlocEN5eDBJRm82ZXRtbjMzTVl1SmFvWGRSdXRBWVg4SkoxOFhoRUUwY2pvWkdsdkxyWEp6S3VmTlBjN1JWbUFpc1NhYXBFZ00yK2Y4RVVERy9hM2cvOC80SXAxTDAvbUVJWE56OFVEZ0luQXFJeEZNekNrQWxBQm9TSG9nWWt5ci9nTVNjRHY0LzhlWVZ4aGV2T0Vra1IvNTIxaUNhWDFjTCtrYVRuaURTZkxIR2l6aUdRRE5pYkFVd0ZpQXpwNTJHL3I5YUdkTTc5MlBYbmUvRlVCbU9DQ013YnJuN2ZaalpkUk42T3cvaHlMMFBZRmdQb2MwSUd1cC9iUVFxaWgyN2RtRmhjUUgxcUFFSGllL3k4aEpXVmxiUWlLSnBGREpxb0hXRGQwNmZ4aVBmK2pZT0h6MEsxKytocm12VVRZUHBRUTl2blg0THQ5Ny9JRWFEYVloS3lsVGlkWE9MWmxYS2RXMDZTVXZyRy8vem9zVXpJOUlXcm1CQjMxSWliSitieFNSc2owL0t5TlFLY25Rc1VLUXQzQ0t0NlZBYkp1RFJ2S2UvVGtsQklUMWJBU1FzdnJ6L0phOHZsT3NTQVd6MXN1RUpHVHB1VUc2WVhVL204K2YvZkVDc0Npb3owbUwyQWtuTWlVWEZoOG1OZndRUjAxMFdUblJTeW9hRUZBd3l3VGx0US9DTlVNc2RNMEJlZXVwUEFPUGRSd0p5QUN1SHBKOUM2azlnMjNCQkJNQ2xiQ0IrSnVLaXFpb2dWZDhsNTRzaVRvMUpkaUhIYXc4Um1pbWRualRHT3N3ajFWclV2ZU9hdWlRWXJCUjlNTkNBRWdmZGU5U1F1d3FiRGgzMVhna2M2Q25IMkxqL01EN3drNS9CRlV6aDJBOStCQ2VlZVJJWFgzMEJIQUpNVFl6WjJWa3NENGVZM2JnSmk0dEx1SHp4RWx5dnd1eW1qZWozK3BpL09vK21Ic0lSNGRUSjE3QzB1SWhEaDIvRnBxMmJVVGNOV0gwWnRtbkxIUDc4SzkvQ3AzLzV2OGNTcXNKZEpxNFFDZUJTdHFSaWI5WkpYV1ErWlRta1JUK0laaXNjSUppUkNySW1KRXFLRTJaUm1HQnFXZ2NXV0tQd2JNVmtIUlozc2QwM1JlK0craVlwLzN3MDBZMGNjQVp1TVdFS0xXZ25ZazRaaUZvUFE5Ymt1a3dHZkJYTFZ4SjV0U2JuUFJYVm9XcHA0dzVsYjBSMFVIQXMxVFJMQnhXYW00RW10a0tiQjJ4NzlPT05qTW1haE1qbm94ZkE3T3ZMRW9BSURaOVVOb2trL0ROYVowRkNyN20vS1JWN3hacWxBU1BvWkUvMVJrMFFVWE1DRk8zRkREVkJMUm1NU09uVXduWlRTeVFYc3VkY0trOUVVcm5EMU1MeE5hZC9IUThZOVgzOS9qVno5MkxSVzJFMEQ0Z29SN0N2U2dycEdNMEphQlRva1dMZGNBRlBmK1hQOE5RWC94VE44aEkyYk5tR2ZUY2RCQkhoK3ZYcklHTE16VzN5L1FJS0xDN080OXpaYzdoNDVoeVdGaGV3WVhZamR1L2ZpNjA3ZG9DZFM0Qmtqd2x2bm5vRHQzL3FwekIzNUc2TXdCbkoxMHpQQ1JrS01Mb1dTYzZHSW83U01ZY0pONTBOZm1JMUlWWjhGVldVeWVTR2pkakZmcDVrTG1PNlRoTkl5UkJJZUU4dU5RZ2NmczZVR0tLdFF5MzFiS0RvSHZUdktUNWdrWHFzeDRyUTRtZEorNlRsM0tPbHppVHFpRDNtRmNJZUFSQko3Ni9tUktZUVdlTm5UdmVQMnYwN2hLb1VzOFE2MzBjc2Y2cFQ2cHVQZFU1R2lXMG00QkR0SVdHUTZ4amhrbFE0QzJGYlZrVVovV2I0aU85WXdHQTRVamppZktvUUFHVTBDalNOb0FsZGFreEFFMG9KQ2ZiUVN1RWRRK3RuK01jVThlSURacVlVNndTdEZrL085VjhPYXY1SWl2Y3FibW9oVTcrbFJhRTVWQnJDT0paUkhVcVRqYlZVWVJoQmhVbGt3aDZJUEdpbmlpRUE2YS9IRDM3aXg2QlhMK0RVaVpld2E5OEJYTDEyRFUxVFk4T0dEUmowKzJBaXpGKzdoZ3ZueitQODJiTmdCUWFES1d6YU5JZnR1M2RqM2N3TXBKSFExc3RZV1pqSHFWZGZ4MjBmK3hSMkhMc2JpK3FzVERQTFhVbkR5V2hDb1dUbG85VmZ4STBSbjcxQXc4YVRrTEg1ZWx2YURsSWhNOHpyRWRBbVpHVVU2dlBZaFZlWXpuQ3lQQ3ZNVW9NdlFBSzRVb2tTYzVsSWJGQ0J5NEE1WjY1R2FlaXhHVXF6S0hJMjNWWUNXcm03QlF5MEFKOXp0em1aNWpBazF5TlY5cGxKS0RmQU1TaElXdU1VaENWSzVYdFhWR2lWS1NudGJDbUFrTTRxT0g4NEJsUU5pcTM1aGxCcWN0QUVaS2d4aENSR1FwMDViZ0tUQ2pwU09DWlVZUFNjUTVWY3FCVWNTZ2hSaFFoUXMwTWo2bjNwaU1HTm9BNUJMS1ppTVVVVEFwd1FtRG1yQ0psTVdxOXBrMFU4b2t3clBSQkpLTUUrYXRNdUZza1BSNU4yakJWS24yTnFVWUlGQmFqWjN3MkY2RW9OeEtnUTh0YzJYUy9pRzMvK1Izano1ZTlqeCs2OXVINXRIbE9ES1ZRVlliZzh4UG0zeitMaXhYTVlEb2VZN3ZleGJtb0t2ZjRBTXpNejJMVjNIeVE1L1FMMXlncXVYTHFJdDk1NEEzZC83RC9Dc1E5L0NndnE0SkphemhTV3JUUXlHckdBS2FQYmFwdHJTdVFxbFlOc2JNVGlDV3RQVGtQMVJKekZiK3J3ZHk0YmRpa3QyTEkxMTlmQkhKSzhNV1l5NFdkU0tzMXFNc0RzYnB5TlQ5cTJZSWJLb2RJN2cxaEFRcjdZSTlNTllDMzM0K2tkUzJveXJzcHFQQkROZFJLWEtsNGk4OTRVRHhGakNtcFplMnVOWk1VdkNpdjFMTit3bzl1a01UMzVGSnRmdkR3MEdvc3k1VHFGU0VPcXFYQkU2Qk9qenc0OTlxbW5DNDVLMFdsV1ZORXdNRkpGTFQ3YTFrMDJnMVRWZE9LcjFkYVRvZkxNWi9ZM2wvUEpZYWNhVWQ1eTZiN0VVNzJqT2d3TGk1SDgwM041RTJvNWpYNS9NWURxR0hteG9CQ2lVcWxKakJzcGhnTU83N3V1V2NiM3Z2eW5lUFhSYjJMSG5uMm9HMFhsSEM1ZE9JZXpaODlnWldFSmcvNEFnMEVmVStzM29PcjE0S29LUklTTlc3YkFWUlZVQkN2TGk1aS9laDJYenAvRDFZVUZQUER3MzhXUkQzNE1DOVR6SnpvSW9DYXZnc1RjdER0THcyTGxZRGJJa3FjMFVUNmQxWnBhRmlpL0dQd21hK2o5WnVIMEhQSzZWWURGK1AyYmJJUXpxQnJyNk9MZjQ0d3Nzb2NWcFhRL2JrQTdCME5iUGZnNVpwUjJ3U1prWlFhZXRiVGhOM2dTQWQwWkRTbGpSSEd6Tk9SSUZuU21ZckNGWVp1MENSL1NyNWRxcmJ6bFdLS2NzcTFKVWYwYUhpS2RWK3BCTFJmUXVwak9rL29OSHp6S1FVVG91WEx6OTVqZ1FvTEI0UzVMZU0xZUl4aXhnb1d4UWdFdmIvekdiUlJnY1hsdUFTRnN1bXp5b0JiZklFbW5oTFRRVlcxcDFCTENxeTByYzdReUJBcnpFckpKZHhUNnBzNUFUZ3VkMndMVHNTcEZKUU5LbXV2b284RUxYLzhDdnYxSHY0c2RPM2ZpalFEbWFkT2dDcGxVYjkwMDJGVysvbWNPZ0poaU1EWEErdG4xT0hmbUhWeStmQVhhTkZDdElkVUFmK3VYZnhrYkQ5Mk9sYW9IMURKV2JvMHg5OFdPZVBNSGVET0cweVpqa2Q1dElNbzhmL3c3Si93a1dua1Y1aURJbEZxc216TmkzNVVUcXJYOUllbndhUnJMalFDaXhmVWRVM0E3VFNqUE85RFdlNWhzcU5VbVJCWnNEb2VqRlp5aHk0RzA2SkJBczZXMUl3bWNIS2M1OCtCNFJsL1hiQWpTVW5sN3poMG9MMXlwQURzYWsvSXc1NmpsaUFKdjdDTVZrNi81S3lKVWpsQXhZVUNLSHJQL093REhaRW8wU2hwOWNpN1FUbzIvcFM1c1JKRkVRU0hoTXh4R1hJa1pkRVNwWmszY01EWEdycXd0M3ZJMjNLb1ozQ21sRlNnOC95a0VGbzN2cU4xZ1VWb3phS3Zib1pRV01MSkdJS2R6N0RlRU50aXliZ3JNakl2bno0SmNoWDZ2UXRXdm9LSVkxVU9NR29WVEh6NjRjdDVCdUdtd2FkTWNMcDQ3and0bnpzQ0ZMR1Y1Vk9QaGYvUXJHT3cvZ2hWaFVHM0FVV085bllzbGMwSlRvSGdOVUl5T3ZSZTFRbXNHQnNlMWxsdUpwaTFkbzRjY0dmMkp0MHJuUEZtSzBKRXMrMi9raWE3V1ZCeGk5Z1RPR0lSUWE4emJtSVBTS2hpcG5USnJheW9FdmN2TmFLZG5kV2FoYWRvdmtqUUZ1V1FqckRFQWxPMlJtZlJWNDY1VCt2NUhFWXMzbkhBVVQveXc0Vm5od3FibThHK09HQlVSbkZOVXhPZ1RvMktDWTZTZjVSU1J4ZE5DVVVnWTNvbkR3dUN3QURsdzhZMzY5eE1WMC9wRC91ZkRZa2swVUt1RTBZZ0ZGQlFLQ3ZBSGFrZFRsV2UzZG16VEZIbENEaXlSMWRrVWpPeFJvU0g5RkRJcXdVZ2JRZENuQnJ4d0djODkrUmpXcmZPeVhXa2FhRDFDelF4TWI4RDdIL3JibUpyWmdPV0Y2N2grNlJJdW5uNE5aMCs5aHNIVU9zaW94dmRmZkJIckJ6M3dWQitpd0cwZitBZzJIenFLUmEzQTJ2amdtY0RkakJ0cDJ5eUNjdXVwV0g1TzdlQ1QwcjJaV3dLeFNUMFdoWXV2NFJLMWM5VHhHTjdWak14UkxTUkJPa1lLMjk3NGFtWTNwQklpVUpJUmpDWE5nMGEwY0R3dXFlZmNxZWN6Ukpya2pmRnV1bXZIekJtTHNnc1BpSXIvL0l5VTJhdzlBeWhzc1hQMGtzUnZvbWlzNXJDUm1BQVhhbFMvNFlIS01TcUV1cDdnQTBUSUFEaHMvSW9JRlh2M1ZnOXNhTVJqTTRMUFhsaVQ4MmpDVkFDRG1CZ2o4Vm1JNVB3QWtnV0NBVXV3cnNIU0haSkdHZ2hQTmpSVDE3UWozdTIySmtEUkdJN1pMTTZ3U0lUeTZSbFBUYzlJa0tFamcxUTN1dGFRRnBOditqckV5dWxYOGRsLytldHd5NHZvdXdwTG95V29LcGFIUSt6N2dmZmhvYi96QzNDYmQwSEJjT3dmZkgzdUpIN3JmL3B2UVFCZWZ2VTEvT1RQL3lJKys5di9BcjJldzVMTnBudUpBQUFnQUVsRVFWUXc3djJoSDhGOFkyWExDczVrZlBMbUsxSlZ5aHRMZ3pLT0lENXppb3RjN0ltcHhad01MUVRZdXVvaUwyZWFtdlp3QUxiSE14OU1iSmlCdEZDOUlJZmF5SmEyV3NHMG1EWFk3bG5JU2taT2F5a2VKSVh4ZVV0dlUyWW43NzdSYktLS1hRejdGdCtQYmNEMUdVTzFTcFhST3JQaTdEZHpha1hLSjhaTEE2cjRDNWV3dVFrOVlqZ0dxbERUVndSVXhCNE1CSUhZVTMxRW5wS3JBTi9TR3VXS3Bxa2hBOEt4aFBCNzJqRWhOdkE2S0J3QndqNDlyb1ZSaTJKRTRwMkRKSUlsRnJtWjVQSk9wZ0dJeG1nck5US1RwdWM4OURob3pod2k0NS9FSXNSaE4zanhoMk1PVkk0Rkg4VFlTYm5FQ2dqNUZIZGFoN2owMG5meHgvLzhmOFBzb0k4R1FETWFvWElPbHhlV2NQL2YrbG44d0E5OUNxUEJCcXlJejVLNFlSQTFjTlUwR2dDTEMvUDQwYi8zaTloNzU3M2dQL3kvVVkrdTQ2NEhQNGJlNXExWUVnRFNoTHlxQU5BTFV3dEtPZ0F1a1gzVWFDNmR3MkI2R2pxMURpTzRsQm13U1NvdExraEdPZGt4V0RadXBrb1Q1SzlxZldlMUpmdk5nWllTRm1PelhNdS9hVEZ0T0ovS1lqSVpZNDVySmQ2MG12ZEF5V2lzYVd6Rkd0MFJxRGlYUWdaaHJPK0pHSTRrWmNzVldtQlMwWXBxeFVWa3BLL0d2REtqNnBwVWUxSEFRMkdUKzAzUGFmUDNtVkVGVlJhVEpzVmE1SGVkcWVtS0cxVElaNzAwT05KTEhEVkdvWDNXRWFHbkFnR2gwY2dpUkJPNDBHQkVMZXJGaW5lc3Y0RXlWamRlMHlTSlZiWDBVTnYzbG9xSkRhNWV4T2pxZVZCZCt3WWNDQ1RJZGtrQ2k2RmV6Nzh5YXJEbDRCRU1CK3NSOGlKTTZRam52L2M0L3VpZi9WUE1UZyt3dkx3STU1elhCVXpONEtkLzZiL0dwc04zWVJHVlJ6bzAxc2IrQXd4bTUzRDcreDdBaTQ5OEhadjMzb1FyMVRRZS9zWC9Fbi82Ni84ekZxNWY4OU9BZzhvbVM1dXQvMk43M25rQVBJMGRyNFBnOUV2UDRQVFRqMkRQMFR0eDRQamRtTjY2RXl2a2JjUTEwcVRxMVorNXY1NFN0eDNmV0l1TlpqTUZTVU0rYlVWTzhabUhRTUJKZ05RRkliTThvK1VSMVJvV1kyY0xjSGd0VGU1TnhuTlM4MEdZY0VZYVgyQ004NVJ0ejRpMHR2ZWQ3RUR0dENNdGZBdWl5cFRVS3hKZHlGSzh0SjdnUHZrUC81dGZiVTltVFQxNEFWVVhFNk00aUNnb2JGd09nME1kRXh3SUZURWNGSlZqOU1Ib08wYXZjdWc3d2hRekJoVjdWSjl6NnU4NE5QckV1eFY0LzBqVDI4YU9OTG84UlhFN3V5bjM4VlBBRGpneERua29xSUxRaERwQU5VdnExSWd1VWp1S2FqRk5VUExkTVhWZ1BrRVNwVWRjZEFoR04rWDB5a3hvcmw3RW4vNzZyMkYyL2h5R1owNWovdlRyV0g3bkRZek9uVVp6OFIzUXRRdHc4NWN4V0xtR1RUckVVNDgvaW4yM0hzRUtmRTArZk9kMS9NNnYvV05NT2VEcS9EeHFVVFN1anpzLzhrbDg4aC84NTVqZWZRaERWT1dnalBCNVFRd2hZSGJnOE5JVGoyRGY0ZHN4czJzZk5telppbVo1RVM4OS9oMGN1dTFPOUdjM1E4QnBLaEZNTVZhc0djUHZGNUp6RVd6YnVCN3U0bHY0ek1PZnd1VlhuOGRUMy93S1NCck16bTRFT1pkY2hTblBJMi9aeXZ2N2xRNkVvQWRKdUhQUm1tMDdnWDMyQ1lKcDBzRVl5clhyOCt1RlNWVE93WnlRY25zUVBvQ1QycUxKdFRTRXpSdWZKN2JzMGhpYnNTNHVvTVdCUWdINGhpbllra2FFUExCZU1ZRmRadG42bGRFQnBGU0hETEljRUZrWDZaYklPWWZUMis4NW4ybzdvcFR1eDcwVzM5UUZPcThpaGlQL1owb2JoN0tDTUEzdDhOVTRJMHNXRTBWa3pPQ2piRkxCNldUellxYVFrbGNFRWdXSDNGeEFxSlY4ZVJDbHVNeEJVY2xqWEtIalpPUUlBSEZnSExSSWlUVkpjeW1CSzVKUVdUWXRRaGxMWUNMMDU3YmhvYi85OS9IczUzOGZ1M2J0d1NpQlE2RTBJdWVOT3duWXMzTTdQblQ3SVR6MTdTL2g0QU1QUWJnSDdVM2hSLzcrZndZQ3NIWFBYbkIvZ0EyYnQySnEweFlzU2JpcktuQWN3UTlPeUh3Y0Y3empwbHZRbTVyRytUZGZ4LzU3M285bHJmQytoejZORTA4OWhyLys4ei9GSi82VGY0U3JHdFZuUWFyYkdxMmVZT0JpWVFZZ2t4bTlqVnR4VVh1NGZQVUtIbmp3QVh6b3d3L2c1R3NuOGRWdmZBN1grclBZZmVRT1RHL2VnYm8zd0FqT2x3NWh3SWpYbDVXVEUwaXBITFRSdGgyM3lrUjcyaWRnVHNMekszTmZBdWZ4Uk5Da1V4a0RyUldEMXhtNW1ZNEtnVUNwN3FNSjdVWmFPRk5wU2tjNjVyTnE3ZVF6a0JjMUxtQXZ6NG9CbmxYaG5NK0NLaUpUZ3ZzTXVXTEFmZW9mL3Nxdnh2SGZUUG0wMUlBWStoNEVTZFVyUitDT0EzTFA4S2Q4L04weCtxem9PMHIvMWcvWmdXTUNNK0NRVDBvMmYwYUgvWXd0bEF4dEpVNCtHSVNIS0VnWlFkeHNIRlBlUlAxNFhVQ0QwRE5nREVkVEZoSzJwMjhsb3VSeFhjcFg0MHdFVGEyclNEVmhic3hndVBBZzRvaHFTcFJSekZhVUhMYnMySW1WaFVXY1Bma0tCbE1EUURrMGJ1VFhFeVZjbTcrR3FjRUFjeFZ3Wlg0QmM3djJnbVptc2UzZ1lXdzlkQ3VtdHU1Q2Y4dDIwTlE2Q1BrNjI5OXZEaHkyZjAzL2R3cXNpMkxUb0k5VDMvc3U1aStkeHozMzNZZGVyNGVxNm1HNlVqei9uYTloeDg3ZG1Gay9nNTREWENqakhEUUFpVDdGNzVIQWFZTUtEU3B0NExSR1R3VTlDQ29kb2NlQ0xldW44ZndUajJMenpsMjRjSFVlNnpkdXhQdnZldytPSDlxRCtWTXY0M3VQZkF2TnlqTG1OczZpNnZkOTF1RTRnR3BOT0h6WXNDcEdHYWZqcEdsVUt2b1NlQmRwUEtOVTBlek5rQkQra0huRTVodi8vTElVbmdqcHNPczRVTUZvNzYxcWs4YTBJRWZUR1d0M3J4WmlOS1dqbXJKTHgvaUJHMUNSU2IyQ05tejZ2bk1ZVklRQit3eTg3eGg5UjZCLzlzd1pSZExKWjVWVWJQYUpLTFEzbDVUUVJocHFleUs0dURDUU00RUl6Q0dwOStMZktZQitnUnNtSkFWYndvV3BOQjNKWmd0dGx3K0ZSbFdkVURMOEZER2RZSW9rR0dvVUdJcGdwUkUwUWhoS2d6cFFhRkxNWWFQVVNBVFdWTStsTnBhSUh3Z1ZITDJHRTRzb2lFcUZvQ3daOGJWMFdlVDAxVCtnMldZSlgvdTkzd0xOWDhMVXpBYi92ckdQT2xLV0llaTg5KzY3Y1BiY0Jjd2V2dzh6Ty9haGFRTGFyT0U2UW51MGFvTkdKQmlETktqcitIY0oybnpCQURWZWVmSTdlT0diWDRhRG9KcWR3NEdqdDJQUGdadnc5YzkvRHMyVkMyaklvVm8zaSttNXpUaDgxM3RSOVFjSm41RzZnVFFqYnhSUzE5NnNaTFRpVTlGR3duSHMyN2w1TklTT2x2R3BoMzhDVGNCK2VoV2o3eXBzMzd3SnMrdG04TlpiYitGcjMvcHJuRzBHMkg3a1RrenQzQWR4Z3dDRVppWWxaL1BHK0pJemxxUFc0anUyZUlaR0d1OFRRZVZBRG9QM2x5QmRxZlNLaVllS0I2MWp0a2FxaFlaZk5mNzdPTnVNVmg5SElRaTNnMU5DVzd6cEtVZ25XaEExaWxHQkVXZUttMWw5OWgxS29FSGwwQ09nNXdJV0I0QWQrMHo1TjU0OTYyVTFKcTBtSWpSSlh5Rm0rRU5JRzVoUXNVTkY0U1FnUm84SWxlUEVYNmN1cG9DZk9XTERGa1JhcjJ0M21ERXk3NGJyVDFlVEdzUE10UVA3UlI4ZGdpbFRUQWx0ai8zMEFvd2dHTldoRkpBR1RUU05VWithUjQyMUtMSndKNkhCSGd3VVpHZWFKaUhZak1acUk4S0dOTVJUb2hnbGdLUzVoWlhRSjhIczhCciszZi95cTVpZDZrR0pVRGMxdEduUVJMNDlpQllxNTdCeDR5d3VMeTVqWnRPVzlDSHlpV1JVbGlFUWs1M1pJSkpNTFlpQktwd1F6QXpuSEthbXAwQ2ttSjZhOXNFOHROUXlnT1dWRmR4MjdCaW1aNmJBeElGMWljMXF2c3RTZzZsSW8vN1BDdklCU0FSRFVkUkt2aG94K25jUmhkUTExazhQc0s3ZngxOTg0WXQ0WTRud3NaLy9MNkRyTm9aK0RvWTFoTlVXUTVPVm5XYSsvRmhvMi9Zc1NBbllHYXBPazJkRGJxQ0pucE1LU2MxajdYZXdMYmpXQWs4RE9KMlZpMnJLS0RhRHc2d29TSk5XeGVxT3FUV2owNys2Ui9aZDJBdTlpb093RHBnT3AzNlAvV0hkYytFZzlpVTZsY28wMHlWSFJuR2xrWmJqMUJvSGprSWU0MjJXZTFyQzY0aFBZYlZqbTBXWmRTY1V3enhoVkdIVW12ZmFKTkVzWjVPSjhMQkVTK2VYS0tBUlZUUUFhdlh0dC83azliK3JNZ2lWMzhEaGU5T0pycVhCaC9mUTg1OHhYVlBzd29wcXF4ZzQySUJBeHVJOEwweE5ob3hETUlhREdkeDUzdy9pK2hzbnNHM1hMb2dxNnRxNytrUUZsd0J3bFVQUFZUZ1E3bjNUQ0pxbUxrMVlOSno4UWJFb1llUDc2VDZBU0JPeUFJSUkrVzdLV2xFM0k0eHE3L3h6b2I0Y3ZBSTF0TUg2d1BmNnlaT21VNGtTaGVrVEZzOWlOQ0tvZ3hPUnZ3WWZEQjBwZHUzZUMzSmgwakRuTVhKTjNlRHkxU3ZBdWxuYytlQVA0NTZiajJFZXZXSm9hTm40b2kxVXZSelU0YWxHMDZLdEdhT0pKWnNHck1WcU5oQkt4M3d3UzU0QWxGZ1BocG13R3BTWXNjY2xkVFNGNXJMY1JsNHFvQ2xsd2JDdENLb0ZGY21taFZjMDNETnRZd3lTUzJzb3FvclJaMStXOXh3dzVWeFMyZlpDQ2Mvc2Y2OHF5dkFVTkxTN0p2a21GKzFwN2Q1K0RjdGRGQmlGRk5SU0xYYldRUlFmeEFZV1o1bnhzdSttR0RDcFpBWU9COTF6ZTNCNEV0VnF5NEVuZXQ0RlRFTkFhVEZIdXREcnVxWGw1U2NBT2E5aWk5NUNFWUFKeXdRRW9Ja2lIVEh5MEZ4R09lTTNFTHZOWWlZVWE5SGtmU1FOQnBYREsyKy9nMHVYcnFCdWFveEdJelNqR3FKTmRrTU9IMVFVRVBLWlI5TTBvU1JpTURrUU83QnpYaVpkVmFHbnZ3SlYvdXZzR0k0ck1CejZ2UjZ1bjMwYjh4Zk9ZR1ptQmswajJIWHJNV3k4NllESFhvZzhmZVFxM3pqa1hQaXZncXY4bjRrWXpCN3pJR1p2MThiTzMrOXduOWZKSWo3N3ovOTM3SkFtdEgyekx4MUdRNXc3ZHdIVE8vYmo3ay8vTExZZXZCWEwxTU1TdVNpUndIaGx2R0VGZ250TzdpNE82anFvTVE0cHJiZGdxT1VNTW5PbTFBS2lyK01HOEtna2ZDb0YrUGpKeE5OdHBOa25Jb3UyMUtnRU5UbkNLUG1PUURLcVR6Smdxc2JXOHlqOTUraExJQUdzREwweUFDcEg2RE41MWkxaWNzU29XRkc1TEw2TGgzQlZFYU1KOVpFWWg1N01YMUlDSm1MZ2FVSnJMb1VlYkVuOGYzYytZYnlaRWx4N290c0pHVmtsQ3NNR00waFRZc0JRQTlGa21qa1dFdEhSTmttU05hUHdqV1JLS1BXQ0o3Vk9rNllCSldxRnJIOTc0ZDFjR0Yrb2pWQnRoN2tnY2tuU1Z3cHdwUnFuNEJEMW1BZ2tJeXhkT0kydi90bG5zV3ZyWnBDT0FralRnd1RUamdncU9TYThjL1ljYnYvd0ozSFhoeitPSVVYN2xQZzlER0xQKzBmWFdaK054TTJjVzNPRmdCNFJYdnJxNS9IR0U5L0MvZmUrQjF1M2JjVTdiaE0ySDdrYlEvRTBYbzJzbllpaTNjaURSKzFINGVZVG5tRWROb2ZUR21lLzl5aldUVTloV0Rkd29oaXVMT0hjeGN2WWQ4ZDc4WkVmK3psczJMRVhDM0M0cGw1TXBHSUhWeUswemlwYU1GRnVBVTRLYTM4aVcyWTdLUUhKU3E2NThHSWdhNmlSc2p0cWxST21IMk9zU0RHMzhWcVJFWXpVbDJKWHFFcVNBU1hORGRTMCtPWkdjU0dqVW8zV2RXSHpxL29TbkJRZ0IvVFlsK09ES0xpRG9zZnFkVGVjOTJnTWl0VlU1VkFMWVFSRkEwR2o0UmFKR2t1c1VGTkhXZ3lDT2dCckxPdzU5K1JzVTNZNlpjRUN0eFJRTmhWQ1loMjA0NHVROFFJTnd5cHlseU5CVWlFaFhSdFBSVkF4bUVnc1l2cWl5NTdGT1BnaU5mSGswWkhlMXkzY2VJaytoakdqTVpZMGtYZTFlV1FlVys0ZlhrTUtDblVmUTdCSlYvQUh2L09iMkxOek85Yk5yQThwWmNBd1JFMTdjNE5yVjY1ZzIrRTdjYzhuSHNheTY2TU9nVVZFSVdHaGtSRWpsV1ExUUJKVFU3K2tScXdZQ3NET1ljUEdqZGl6YXdmZVBEdkNpQWpDNW9uR1VpQ1dSeVJKSUVYazFacmtDek1vMUl0OHdwdE95UWhQZk9VTDJMWnhJNVlYRjNIbS9BWGNmUCtEK01SUGZ3UXoyL2RnUlJuWE5BUERFT25ZZnl1UHNmSFdMUGhKbmJwcXhEQ3F4UWxPQ2RrSnVhdmFtcDlhRW1UemU4SjFVTGdVdFcrdXRqc0xpb2t3bkkyMjFYczMyT0xiK2g0UUJROUI1dFR4eDFvR0YwcUs4c2lzQllvdlpBQmViK05RT2M4R1ZKeFAvY2hpZ1JqVlZBVU1HMS9UYU9NM2pMZDFJbjlDcHJiS0RHSTJ4dHloSVFFMStUNnhHRmZib2dHaUthV2pxWCtnSGFrTjloQmRhNzI0dVFnSVFwbXVURHB3bzdsWDJ5TnE5ZWxtVUdPMzM4djhybEtHazZCd0U4MjJUUUtMUEJ0NWNpdzdUSVF2NEt2UVU2NEFwclhHbzMveEozQ0wxOUNmM1lpUndITzNISXdpSXFMWENCYm1GN0hvcHZIRFAvVVpYRU1QRlFoVFd1UGlxVmN4V0RlRDZia2RHS0xLSjcvaGw2TUl4UnVwK3RkMFlOL2trNERTQnFPZ1NrUXlhTTVOVlpycTN5Qkg5bEF4SEFqVGpqQm9sbkhoOUNtc2pHcHMySDhZRFNwQUJNc1h6dURpeVZleHNHNGRidnZneDNELzMvc2czTngyak1EZVZ6QTJ4Y1Q2anFuSUN1MHdtR0trWm16SFRRWStiVitGbHJsRzRMYklyR2NmYjlSTWNOWlUrenR3a3NGblF4dGJmRXBSbW5EU0hXcjdRNFJ0MStRcDE0cEMxVm9Na2RYOEdheHhNR251YUZXVndoL0RNZEFQWUh6ZitkOTdnWVZ6YkROdTQ4UUVSVFZGN1BVREVCQ2M3d1BuYkx3WmpTdklkTEFwT0hNUU5sVW16N0ZiVTBXbENUTUhWRXVwWllFdmlISEJNUnZIKzBQNTJqcUVmWlhJTkdqeWY4dXlaU3FQUDQzR0VyRSt5MllkeWVUQnpuaHFhVGJpYVJ5VmZpTFd0TVBJUXpnTFpxaTRodFk5R0M3aDlBdFA0ZVh2ZkJtN2QyeEhvelZrVkFNMUFWeWxtclpSNzlWLzV1bzhmdUtYL3p2VU01dUNiWm1nbnIrQzE3LzJaemgrK3pGODkydHZZOWV4dTdEOXlISFUxVlFCcXJLaU1NNms0RFdzSElJbGthY082eEVhNFlEVXgvdXFxWTFiVE10dDlOVHJqeFp3OHZGSDhkcFRqK0t1dzRmdytsdG5jUGRQM1FUdFZTQlNYTDQrangvODhiK0x3L2ZjQzUzWmhHV3Rjcm5aTkdPTVduTTluaUpyY3NubC9KbFNRSWdIZ1hWeHN2clZBTTVTay9QVDJNb2NkQ0RTTVdKaEg5NFN5czdtUFhKYnVta1VMMzBuSWgwWkU5K2dkMHdIUWxTdWFwT05SWTFsWG1XY3lkVFlmSEF4UnRETG1XeVBUVCtVQUk0SmprTHFuNEJJNm1nbHFwN3ovbHlxd1grTkdkcElHc01WSmNIWmZqbWJFQ3FhakhnU1pSZW1DTFpGeFpKMmRjOGRrRkRVU0drcG5hcDVWQ05sdDk1QUhTV1BPY2txcnR3MGwydnR5Qlk0c0FmUFdoTjRGVUVsRkpwem9tTlJ4UFE1UGdqaW9LNVRPQTExdFNxYVlyS3IvenhjT043WWpwZHdjb2hpK2NwbC9QbnYveTRHcUhEeTRuVzQzZ0RrSEZ5dmgxNi9oNTRicENtL1V6UHI4Uk0vKzFHNHJYc3dCQ2NncVJtTnNHRjJQUTdzMzRlNzc3d0RiNzl6QnM5ODcwbHNPLzQrQ1BjTVIxMmVWU3FTbml1bklhYVVXSVFtZFIxeVN1d3B0RlUzWVhPSmVpSFF5NDk5R3hlZWVRVGJOczVpODl4R0xLNk1rdnBNMkdINzRlUFllZmdPakVDUVJIa0ZaaUhjNWZqbjFPbXB2bGNqdXpFRnV0ZXMzL3hjMUxSem0rdzg2Zjd0Q2V2Qy9JZ3cvekFhYUJpOUJxQ1pmMWNkMDlNUk03MXNLRU54anhpMklHY2FtZ0ltY2RTUWhxMG9uRjJsRkVIMFpveFVqQUdxR3RiQXo4VlFPSkEvOWNrTGUzb3VaQURzL1RRaTZNbTJGZEJrMjVWem9TSlNoMFlGdmZDd2g4bkhQZ2dTaW9rMm1uWGFVZEdpc1FVN3AwcGltaFNrcGJwR29OSnk4MEtvNU1XNDkxck1seGhOMERxTE5vbFhOVGFlT1hDSUpndHlQKy9PdjBhZGJySnJSYUYyZTY5WDdjVWFzZWFRR2NUSUFQakJHMEVneGJEYWczeWxPcWJEMEtxNzFtM2VocC83eC8vRWM3Y1J1WTkwS25Qd1A0emNObU5GZ0NhS3RvSkhvNHFuNEs3TXorUEsxU3M0dUg4L25uNzdCQ0NTN2N0Tjg0NjBQQTFTOTZaem5xRXdEUzErT0dvd2RqSG9hL1ppOE96RmFHRUIvVUVQeTZNUmxwYUhhQUxOR04yRWZUczJGUWRLWnJjME5WRGx6a3pOV2FMWkFQNmFKV1VKa3JKTEIxSHgzWjlSREVYV1B5Q3E5OWhRUFFZY0pxc3R5SE1HS0dCSUhMTVI0My9CNlRPM09yMmpkYmk1VjdGck5tSmRiTG9TaVEyM3IyTGs1WGw5U2dMRU5lTUFxb0hLOW9HMjc3eWpWbzhBUjVMV1RWdDdGSU5Mek5BclN2U1UxK2hyQkhsWVVhdmtrNTlLTjhBSU5xVnd5NEZENTNBNk02ZXoyNHZxSlBUZVp5TU9vZ1R2bFRiOXNiWVBUNUZENlJGcE5TRUhScmFtS2pZYTJXYnhnTUpTTkFHVmdwYXg4LzQwY0U1a3JjNmlqNUJtN1h1YSt4TDVXSkljenpXYVc1TFJiR3ZITVNjOUZIWm9wbVlEa1JCTkxlUEpZUFpDMURnWVBsenRHUEhJUExnZUt1ZHc3ZXhwN0p5L2hON0c3V2pBYVF5WUZzTkxjakxvaUwzcmNxRHl1SUREd25jNWZ6ckdKaTBIQlkyR1dMeDhCaGZlT0lFTnpPREtvVzc4Y0ZJSjk1NnNPaS95MmgxRnBCWEFTT2pSajlRc0o4ZWY1SURFVVJZcnVhWkdCQ21EbndLU2ViUXhDT1hrOFIveG9lVFJhQzJ6amFkZUZHMzVrazRMcTNFWXVpN05nb2hmQzU0WXRrRGtaQ3BMUm5wZkdVK0FLdHI2K3V5TzhoQVppYUtSa0xFaEJKVmU0UHNyaXIwMlFReEdDbFpxVGZIU3pxekJLdHAxT2ZXZ2dVQWdRY2RMQW5DMDFvbzNKTHdvaHcyZXRtSW9HVVFWd29wR0ZZMkc5RXBEWmNQR3draXAwK1pNb1QyVUtIZVdaY2NmbzdLREVYVVVNOXd0SFdZV01XblNIY2JJbnBJK3BhSS9YRkdZeFdRVVAxbE5jZXJ6OTdkSlREQkJwc21JMDZHUmV1V041b0VUOTR4V0ZrS0ZvVTFXa2VYVEo3MXVxTW1ieHN0OHdjQzE2OWZ3a3ovOElFNmRmaFhQUFBaMXJOOTdDTHR1T1FKTXoySlpBV1dYcEtSRURJY20yV1hIa3FwaXJ5SnJOUHZZRTRBZUNhYXBRVDEvRlcrOThqSk92Zmdzc0RTUHpWTTlOUFVvTUt0ZURDU2lScXVhQlRuV1Z6dVpiZHIyWW1UVXZ3Um9LVVBmUVBsbnhKa1ViRG91QmFYbGZabDk1YkpJVGFsV3puQ3dqVHBKZ0JQeEpyWU1sZWIyc0hBZlhkVFJCRDZUb3dFT015cU5tVUhzTnFRQStQc1NKYWxYbWZ6RUpqRHF4dHZZcFhPUnZMZURwL2RDemM4VWdua1VKR1U0aTlWVTZBYmJxdUx0NE5EYzB3K3BDTmZleWt0Y1ZZeFVjaUdsckNMU0hCRFVKZ3ptRUZVMG9xZ0RpdHZFRzZneDFaTndnWndHWDVReXpiaFpzOU5yS2hFS1QzTzIyRjVoRDVXMTI1Uk1FRElzeUthTEVDMWpobktpYU5SNWtLa2w0L2VtNFJmR21UYVhOcG9HYllZWlJVbFNwYkFUYWFnYy9VeHRXYXY5SHVNaUU0TVkrM3RUMTdXZjZVZkF4Y3RYY083TVdlemFzeHVmL3ZEOVdGcGV3cXN2UFlMdnYzTUpXMisrRFJ2M0h3VDZNd0N4bDRWU2FBbVZLTjFWT01lb2lDRm9RQ3B3MHFDNWZobG5UcjZDVXk4OEExNlp4K3pNTkRaVmpPc1FYTDE4SFJzMmJnQVVxTVZQSTA0TlhFWWdGZWMwd0Z6dlJDdGF4YmdobEJOK2NZRzJ0NjNBaW5jWk8zVXp1MktyZG1jVjVpYXZUQjlyd1VlUWxTVUZud3RPZ1NPMnkvdm1IRW85TTl5V2I2ZlFGVnJXRldpVS9YNEt3VUI4R2dGRmNNdG1SYy9scmxzS2g1THZCalNlU0tSRmtod1B1U3ArZkZZMmhvdU1xdExRejZIQlRzdURJbDVNNEU4SUJKdHJKVUNDVUdNa0FjVDJEdENvaFh3cHdaa0lrOUJqb0dwU3NRSkhNdzlCYy9ZQm85cXlyc1EwWmk1WGNwVXhRYU0wcEVReHdvbTFIRHhKOXJUdEdIbVc4bVJORWw4dWVyVFpESXpRcEhtUVJGY1daLzRZTnh2N2I2UWwveHoxL0ZYVng4V0xsekZhWG9HckdBdE5nKys5OWlhKzg5ejNzYjRDYmpsNEFBZjI3c1dQM3ZjRHVITDFLbDc0MXVkeG1hZXg3OGh4Yk55OUYxT1Z3K0tsOHpoejVoMDg5c2lqMkxaMU02WnZPbzcxV01Hd1hzRTdyNzJNRTA4L2dZV3piMkR6eGczWTBPdGpSUnFjTzNNR1Z4ZFhzT1BBUVF5WVFVME5WeEhPbnoyRE44OWR3VTBjdzU2TWJZRzFqamxqaDRpdXlSMFRwU2crUGpjcTNkcjBYYjNNSkU4c0ErQzJsR0ZzV3RTVGtFY0ZqbjIvUkM4bzhYb2hHRlNoSFRjcThwZ3BpNEdDbWFsS3lBQlVJQXpVamFCbVQ4SEhFV1VjalhOOTc2bWZuUkZLak02a3NMYW1MV2FrM3poOVJUMFNHVnRtdzdEdGNFMWlxQSt2NXc1T0wyemFNOVJ2NWdZQ0VVS3REV29GaHFwWXFRV05BclZrSkZ6TVp0UkFIbkFhejVSVGV3V01EcUIwS01yWkdCbWpqa21QclcyNEpMRE52V1FDZ0l5ZlQxMjh0NFNVaXJSVU1DTFFreVI1R0VOU0RyWW0zRkxuQkpLeDFrNUtwY0ZvY25aVkFUR2ozd3p4MW5OUDRJVkh2bzVOQThLdVhidlEyM0VRdDl6N2ZseTdjQjV2dlBRQ1huenMyMWl2SXh3NHNCdTMzMzRITm0vZWpJWEZSYnp3eXVzNGYzVUJwMS85UGc0ZHZBbEhEeDdBN2NlTzRIT2YvMHNzdUhVNC8vYWIyRFE5NVFHK3BTVmN1bklGVjY4dllNUHVBN2p6L1IvRTNsdVBZZDNzQnJ6ODZMZnc1RjkrRHNJVmR0MXlGRGZmZlI5bURoeUJjczh3cXBKTE9TMVIrd2tlV08vU0ZKT01XYTI1MTNhczJMditSYVhZSjFtQloyclV0NUdKR1E3aXMwd1hPbVo3UVgvZlkwS2ZDSTZkUDYzSm05dkd6bStPemhnYWg2S3lIKzhlMnRjYmtaQVJTTkRoVU9qeDk0ZHhqeGt1QUlGTUVYL2haS3FEdG5OQ1BGQy9lZnFxUnBGRWZBaE5HUFFwaHRwUzQ3R2ViTHhpSlJ0R0RqVUlOWXNJR2lpR0RiQWlpcnBSak1SM3RzV2g0NW4yeVhWTkZIb2cxS1NsMFJFVmpyTGpSTWV3SnRXYWFVSko1MzVvY2paRFRDazE1VkJ1UkNKazR3eWJVU0FEZGF5bDBpdkxrdlBpaUZQSVN2V0lUamhoN0pHb3FVd1k1MVNMQklCeVF1SjdxTEY4NVNLdVhyeUl1VjM3MGQrME9UUmpDcXBtaUt0bjNzTEpGNTdGRzg5L0Z4djd3TUVEKzNEazhHRmNuWi9IdHg1NUFsdTJic0doZlh0dy8zdnV3bC8rNVJkeCtmb1M2cWJHcFl1WGNPSFNKZlEyYmNYUmV4L0Fuc04zWUxCMU8wYUIwcXFZZ0lXcldMNThDWnUyNzRUMHByQllLNXBrQ0txVDl2ZGtVMHVib3hhcXU5WDMvamdIalhZQW9KWnVyM3RjdEUvODBnY2k5clRFOHNUTDBDVmNLNFBRZ01uNTdqdEg2RE84TnA4WUhPaTVLdXJ4Z3k3WHRXZDV4Nm5iZ1dvVkpkL0lGWWZpaGtNNUhzR1Zpd0NncGdPYURadEM0QUFvYXljVnFMVHdWZU9NTXNiVUpqWUZLSWNaYXFGTmtrUFhXVURDWXlydUFvQW42cDJEcXFEczBzQTlTNkhscDBTYnBDMFdzdzVxOTJnRkJXSzYwY1pwUmJ1Sk9RcXBaVGc1S1RzWWs1bnpvNWI2aWFCVjZtalVjbzVnK3JPMVJIZUI2TXIvbnV5N3JkMXRxNHdnTXljeCtycG5HaWlEZndvdERDdGlmenNsUE1KaEdRUnMyb25aalRzaHhGZ2Uxb2sxWVhJWTdMd0pkK3phajNzKy9CRG16NzZKdDEvNEx2N3Q3LzBCK3IwZXBqZk1Ra1FnVFFndkluamo1RWtzajRhNDgvMGZ3Z2VPMzRPcEhYdXhJQTRqSlN5ckMrSk84UmpYMUFZTWRtM0VBZ0hhY0JydFRYR1V2TEhoVHEzY0hhRlZWdmExYTZLc1lxTkV0UnBCSllwUmlaUTlHNmhWU21pQkRkQlk1ejJLb3lQVGFMZFNzTWF3SGE5TllTTlBnWDVrRHFQdGdocXZGM3d6S21QU1VhaGRDNzJJNUs3WkpGSlNVTkFsYW1waHArQzE0Rkd0TkZBMXNmS1NEMVFvcEJIVDlKU3Z1WW96MlhOcWs1ZC9WaDFKYWZ0TWhqOE9pdlpJVjRHakM3RHhFNGdOR21GYVR5R25MYnc0S1ErWE5FQ0xDMzl6RVZtM0dtSnRlZkJiWHdPWXliS0J1MG16NTFES1RHT1BnNXJ4VUtTY0ZoekgwV0hhYXBoU05VMGZtdFl1aDFMQk5nREY5SlExTWhOdEo1a1NDQ2p3NnpUUk5xcmVrZ3Vxai9ya0FHbmdpRkEzL2dTV0tKdFd3RkdEcWdKR3k0dTRmUDRjM243ck5BYlRVM2pyOU51NGRkT21NQW1vUVYyUHNHUEhkcHk3Y0FFSGJ6bU15eXVLcFlYckdOUkRWTlUwUmdKajRLS29GUml3QmdkbnYvcEVjaVFUTHFmN1VndUpzK0trOUgxcWhxT2tUTTV3MkdFT29rc1lnOC9LZHR3QUFDQUFTVVJCVklIbElpdGRLTzBsRHgrMjFHU3E0ZTBRbHF5MTV6eTNPUmpRZGdkMytxZm1BajNwMTZodnlBRUdqakJ3d1FiUHhjM1BZY095Q2VaMmVHN09kd3NTbi9OSU1JRnJ6YWIwYXpCYThtbXlqNCtpUEFsTllEbUlKaW13TjlBT3U1SW9pRDdVaUgzTUNFclMwaGpkaUR1c1VYdmtTUjJNMFNiN0tCVmw1dEZCcHhFSkdRUFNaa3Qxb29Ic0pJM1c0aVMyNlF4cFUzU0djK1JvSjYyV1pydlE4a2ExRm5MUkRwVmo4NDhaOWVRQ054OEhPeUR4L1E3RmNFeTJUU3ZhS2xlVFEyQXVNSXhUY1o1VEVPNkx4azdHVUtZd3dOcGdtZ25ONGpXODllckxPUEhzMDdqMVBlL0gzTUhiUE1wTGdyNE1jZUhrcTNqaXFVZHgvdVRMbU51d0hvTitIMU85QVpnZGhpdERuSG43YlN6T1g4VzY2UjUyN3Q2TEwvelYxM0RvOEZIY2QveG1ESWNyT1BuWWwzQm1XYkg5bHRzd3UzTWZScTZQR2dSR2piZWVleHBYMzNrREIyNDlpbTE3RDBBRzY3R2k3TldZSnRpMytEVlFBYXBHVzNVZklJdUtWYzBrSkRMNWtKYVRpYlA4bkRxY3ZwMEhrQjlEMG5pYkE3QjBoK1lVbEt5VGtHUVFMV1RJSEZEM0t0VDZYcGpqZ2JrcU5PdEUwVmljNnN2SklDUXpVOVQyQkNaa1UxczFEc2twZkVnZ0hNMWdYK01jUmtYdmkyR1RRb0NnTDUyNm9zbU5vQmlzSHVzSm00MGJZMDZiUW9YbUY1Z1RKK1lOb2dqMUM3S2JqdGlSMWo0UnJzTzAzOWdCVjV1MFBDckZNbGJoTmVIZXpDTzd2TVFObFUwOXlobWZZcnJGc25kYnpqZWlrSW1FREEwbnhqTk96RVlPNGlKakFxeXFMY1ZVWmkvRVZGOGN4UzFCdGNiSlVNSW9FNjFXd2RnL3FlRnhtQjBHelRLZSsvSi93Q3VQZnh0ekc5ZWozKzloNjVHN2Nkc1BmZ3lYenB6R3FlZWZ4aXZmZlJRYmVvelo5ZXN4cW10Y3ZIUVpDNDNpam52Zmo5SEtFaDc3NmwraEltRFRoaG5Nckp2Ry9GRHd3VTg5akN2WHJ1SDB5OS9EemszcmNlem9FZXpjdmdVTEN3czRjZW9kckV6UFljZWhJNWpidGhVdlBmSU5ITjJ4QVgxMk9IbjZiY3l2MjRxYjcvOG9WclJuUUdTMW1YN0x5eitYYXcyOHZGV2ljaU9PSUVzTkc1cEJvM0xZenNSYVBrNkJKbTJWSDFvaXZBb3hiRUlNNEJyM2Z0NVFLUnNMRTRkWlVDRmE1SGs5ZnIvaTBKS2JVMzhPREZzS0htWThlbnEySFNnakgxUUN0TXJYTEg2eTN4OUxhZXA2alNjeFhnd0sxVWhETkRBZ21oMURuT2VTeDFlZzdseU1DSTFiRloveHNZdUFSTFRyMW1EQlhRVVpxNFF4WHVLYjNpQXVtekZLNlB3VGJWblJTeXRGUWw0b0hQTnZ6cWMvQmFxRXVEc0ZJZDF3NXFJdDJhc2RPZHVHS3lVQmpTclpBYmZKbUVISjFnZTU5blVGTDVOVFpJNWxUVFNrS0lDd3ZCalluR1lhK3RnZEs1cjVlVHo5MWIvRUxZY09wcXpoOUF0UDQrVDNua0Y5N1JMV3oweGowNkRDNWN1WDhlYVpjOWg3N0U3YzkvQ25zZWVXdzZqV3pZRHJGU3d1THVMeXFSTTRkdmhXN05tOUU2OHRLQTU5NElmUUtIRG5SeDdDdVpPdjR2R25Ic1g4TjcrRHZUdTI0TFpqUjdCMXkxWmN1L1lHM256NVNWeDY0eFN1VHgvRjlQUUFEejV3SDc3OStMUFEwUkRvOVZKeXhtM1UzNWpNcU9sWFlFVUJjS0hGeDJmZTN4ckEyblNyUGJ6VWR0aHBPUllzelEwczV3MFc3WG9TMVlLU05SZ3V5NGxqSDRWakRoWmJRTVdNSGpnTXArR1F0UVQ5QzBsMkVtNDdYS005c0RZeURka3lpQW9HeFFEVk1UZlJjbTZWcUdUOEtPeExPd3F2R2pXU1VwenNoQklFRFZyV3BCeGJHdE9lWXpNVlJoSnJvT2JvallDS25iYVNWRWtVVzVVa2lTSHlGSk13N1FjNVdrcjhqTEUzT2tiQThMT2NsSE5JR3ozMTU5dE9YNEt4SXFlQ3p4VXlZNVlGeWRnRFpnYUJhRGtJdE5QdFI5VGx2WlVtb043ZG1VelVhV20xQkNaU2V6VzBRdFBVWG5BbEh1eHpURmdmekZHdkVPSFVtMjloYnQ5QkhQL2tSN0huMXRzd1BiY1ZEZmV3UW9RVkpVd05wckY5LzBFc25uMERCMjdhaDVzTzdNZkNaV0FSRG8wQTZNMWc5dWJiOE1ETnQ2R1p2NHEzWDNrQlgzbmlFZFJYeitQd3pZZHcvSTQ3OEo0N2orSHEvQUt1emM5allYRWgyS2lMNllkQWE0NTJWMm1ISWdWR3h3QTIxWld0dHQwU3hwTlFOZ1dNb2pRRFNMMEdDV0hpYklhTDJOaG1XUWVTUXFCbUJLYkYzQWtYSkxoRnltL1VzdkVwUzlMbTU0NFJPNEhIYWo2U0FsTkszWXAydkpHbzJHL3hIdG1TZ3VMZWhIY3FzdmUzV2hGdCthM2xRb2twYzkxYWFKU2k0NHFraTVDaS85eVlhaHJ1dWxqTWdlOFhpeVVvU3I4enlwdEhjd04xTk8xTzZxbFNXYUpHQldpcXBhRFRSckJQaXFPcE1yWnB4bFJyYSthdG9mRFdRbWV0eGp0Yldpb0JYR3VrdXNrc0dnMGRtTWxnVEx5RGJGTTNPSC8ySE56c0hHNS84SWZ4MGNPM1kyclRWZ3lwUWdQQ1NnaUdUaWw1K3pBUm5LdVN3MDhqUU4xWVFVMFB5d1RRN0Jic3ZQdjkyUGNEOTJIaDhnVzhmZUlGL01sWHZvWE5VNHk3NzdrSEtvcW1ia0tEa3FSN3o4YldIYTNySjlNMzBRMEtyWUE2NGI0cUpYMm53WU9pMENhTGtaUzRjUDFKdWIyOXcxSGdGaG9Kb2pXKzVmampQV09sWkpOUHhuT3ZGNmx5TWw0U1puNG1XVk96NkZRYzhUUE44bUFSR3h6TjNwSnMrcG9HMitRcG9DMEhwTGhMVXhHUjlUVlFWQ3ROYm0rMGdnR2lQR1F6M3FmQ2JEUFNkMEcxbE9iRmdRcHY4endVTVhxZTVlNDVHK1VqWHBENVQwcjFZN29KTWJXUHAzQmFQR3h1NUJoWnFmRTJMR0pMOGpLUVFuYWFHNUkwcXhYYmFxQWJxc3JHTEdMVnpyOU4ydnlyQlJyVmxzWStLc2N3QWxSeDRNNTc4TUIvL0ROWXBCNkd5bGpXbUhrWkFDazBtc1NKUHNRTWNweEFMVThIeHN6SXQ4OTZZMVhHa0J4b2JnZjIzN2NEeCs1N0FOLzVvOS9GNHVJU1hJL1JoTkZtQlE3U2NZY3lRWGJNMTlaQytYZS9Ka1lWU29sYWhnaUlnMXVTY2VyTms1K0M4bzYwUlJ0bnJUNmJycjVZcXJFcHpUZzBJRldVUjkyVFpjcGlPYTJscDdFOVpwSk1uZFNZNk1ZUTNRRGtjc2NyUlc4S1NpMzZLWHUzbG5ySXJzUHhBSldraGdsQmF5aU5qNWJwdERaQVNJZ2F5UnpVdXB0b1RydWl1VUtTejFKR3E3V3d6UEIrOVZ3NnN5V2hUbXFDME95MGFtZTVxV1k3MFJqcDFPRGthdHlJWTVTMkdJRnFwK3BQUktQWWpLV3RBRE8xQS8xTk5qOHdVY3d5cGxob2hheEp2blBoVk9QY05pM0I3NzgvdXdYejZHTWttY2d5dlNGNWlBcDVDemdSM3lISEZFMUZiVXBPaWY2eTl2UkVqSVlJUTBjWXpHNUNYZGRRZUVaQmpTVzNIZlM1MnYxWnErSlBUZVMwUnArRnU1UG04ZlN4YWFjS3U1S1JHN0ZTanp4UlFVRW1YWDdvdVkrekxwT3pEc2VUT25CUjRYdlMzK1AzYVNrNUYyMXB2Z3lMbExHcXR1QThNMGlheG1DYlRNZG82Qk5ZbnRhcUprQXdlV0lHWiszb1pWR3BKR3VQWEY4bnN3Wi9jemk0bHJRZlVrYlB6V2dzSXBDSXJ3RmpWNkZtRGxNN3kxMkxkdHBvL09EekhFMXRsMUFxSWw1Szg4bUlUZElVWDRNWUZ6SXhMaGdBRFE4UGFwMWtqSk5zYTZ6M2FycnlBc3d5bzUrMTVhSFFYdWU2cWlLT0RHWmhaaEdxRmwyUlRJUlJQY1NWeTVkeGRYNEJoejc0SXhoRmIwTnlXU2hsWjBzRVgzNEpMZC9XSE5QYmtSbi91RkFhSkNkbmlvTTJQSE16dTJVN252ck9YK0hRZ1gzWXNtRVdqVWkyMkZLN1liblZoN0g2eVg0alRYWWN4R0tGUnRGR2pkUGFEY05xQ01sZkljMmtJTnVBRlN6Q05jK2c1R0MxRmIrM0lrN2FHREpXM3hMYTZTbTlwN1NBUEJSekk5V01KeEE3Zmp3UFRFOHJWTzNBa05SZ1pkSjl0ZENsRmxpTGdqUDNyeVhpbEF4QnhGS0FtaWtFYTNmVXRMSmZ1NlFMSGozMnUydG9yNVhDSktkUTdVUmtXQW81VFBuL21vWmlXUHRPTFZSYmRzNER0VnA5dW1kcUJDNGxLL20wTzErdUlGSk5STlpWa3RJVUhLbFZhaGhycHc1TnBUb3h6eTg5NHBBekszTVhGQUtxK3REcE9TendOSTUvN0VIc3Z1VW9wcmZ1UmhNTExjME5zbm5sMmZHZUZCcE1takJMSUdBQ1FXZWdrcDJnbUdENk9Yd0dNUkxDZ2J2dng4NTlCM0h1dGUvamk0OCtnOFZSalljKzZNcDJYNVBXZGhwVFNRdVJqUlc1V0diS0t2N2FwQXFpdGo1Y3E0dkJrZlBJdTRqSVU1eGhHZjBBV3ZoSzVOUVJBa3dNSEd3bVhVa0lxZzZFQmswQXp6VzFmTGVIZDRoMUZsUXlROHV6N0VqVFpBa3BwZzFKbk5TVnN2TXNIQ0poNDBkZ3lna2QzMWltcmRTelVuV2xXQVB0N2pzVTQ3RUtGMDg3b1RUNU9FdVlkSkk5MUZKS3BnSDBDelJXbytPMlBSazFvcVFJYVZ0NGlWcVZzdWJoaTVyTUo5UjZGMlZ4YjFENGVhTUZId3lTdVNlcnQyamlyTWttN2JhVTJTYVZQQWkweFMxRHg2UzJKVWROMVBsS1dpU3BUTEw5QmhwTHJ2Q2RvbWo2Ni9CM2Z1Vi9nT3NOVUFmbk9TRTJaaTJhcUpYMG1aR3R2R085MnFnZjVsRTNOWWg2ZnM2Qm91ekNWSlNtbHVxeGcyVUZhT3N1N05tMkV3ZmU5eUdNUmlzWWNaV1ZvMGpPSENZbktsdTR5V2FDc0c2K0pxeW5HQ0hXVmlBNVFjUTVreFc3TVB6RjAzQWNUbi9IZVFOSDV5VXFsblFvQzhobVdKeUhtQmluSVM1bVdWaVFVczFhRElhcnlnYWY1dlQ4UXNGYkN1c01icUptQnFWU3laWkVJSytjUTJwOENhMCswblk1cXZGTEFGQnBrQnBwR2pUQVJZVFJURUdHK3BwYU9CdVp4Z2hUbzVvc2daUXo0cHU2NWxBTVNPQTRmVVZ0cE0vanV0U2tieWxlU3c1WUpQa21rUzBWcUoyV1o3Y2dDaVVLaDRXY05xdVlkSk5nUUMxYkJ1WEJFMkExR0I5bFZ5RTE1WXRxcDNQRk5FaW5UV0p0bjdMNnBOMDRTNG1IRmlKSWJ4ckRlQUpGbWE0WVZadWZlOVRpeDVFY2VtSkhtb3FmNGhOdldhQy9QVnNUZzJFVXpFUlB4cER1S3doRFZRd0JhRFVJQnBabTgwZUpyV3FMTWtVQnppVnpsVGpoS05UZmFrMDQ0andGamJXODMveCtHclY2bXl3WFcyOHBHV1JRVk9OUk5weUxCWDlpbE5pSUw2SjlsOW5ZUmREaWdLd0xtUkxaYTBlVW1yQSsyWnZxdG1ZVkpqTVk1SkhpbWtBOHlyMHNVV3B1NndiTkhTc3BzeUF6aFVoYjdjMWtXWTVZUVlSR0ludlR6WmJOM1hER0p0bDQ4NWdVbDRxNlE5SzBINnZVSW92VkZNS2RvbTBUZWJvdWtDTzBtbzFBYXFldTVsRmYvdi9DWnVNWUhhbXdDTFBPUG81RDYzRmtGY0lKeTF3S2hOUUtQNUJ2cUlwaysycmtkRkdWdTJtOUVWUWxLeWt6N3pURm04ZzdtejRCVFkrWkM5VWdrOFdQa2J4c05Td3dUaUtYRE5EQ1poeEVZWWlrM3pCYU4xaTRQbytWcFNHa2NTQnBrSDMwdEJobWt0OG40MFdGODQ2aC9TaUtyNVM2SFgreGpFbmo1eW41NmFWc044d3dJTFhETmpVZEh0RVQzNCtnaC9mQ0R5ZHM1Y0lnVE1yTk4yeDhLWmhhVkl3R0tUZGx6N28wemsxYndqTnptSldIakZHRVJyMTJqdGVtSGJxczMrTStGSVNaQ3pGQUk5T1JxcGIxeXYwWWRyMUlzUEtuQUc1YmlsVk1oaFh2ZjBYV1NxOUlzZFYwdlZIcW9VOExxcFF0bWJRbW8va3hNbXRLcFRWSFBpVnJkbDZjcXBTTUdtMkdJZGxPT2JBSmNmdzJNYWVnUkN3SnlBRWJPek9qeFk4S1F5Qkc4UmlZSmZjOWpPSDFyUkNEZ21VVnViSy9YUTN6a1kxTlRHaXRjcWtsUm1mUmFWZzEwNVdUN0poeXVsdFlaUUdvYkI5QkxvWUtKeDV5UGhXdFNOR0RvTDUrQlM4Ly8xMDgvdVV2b2pkY3dLdXZ2WXBubjNzR213OGNSWC9kRExidTJRL3RUV0ZFRHFJdWpWZXpRM1BJMkhKbDlXZjBmdFJFbitYTDQrQUxXRFp1UlIrL2VBL2lSaTEwdVdUbVB3Ui8veWdjaXk0Ny9uZHZ4RkVGcTYyVTdzZW1ManRxMURCYnVmTXlHN2hrUVQ0WkdxL3QzMkNuKzhaZ3g4WHN5TnloNkE4b2lSNkR5VkVxTUY4YWg4WUlsQVJOVU5heXNza1FyR21xNlI1STF0K2Fja3hxRFR5T0hZNWU5aXlvb3NwTnFXMk5ncGFjTXAvK3RqTTZaN3VFTXJrTXRacDJRZHpDZ3FsSXVWSFlRcGN1YmxTaXFyQjFjYWtUVVRLTlNTaUhTbXBZbEdJbTlVUnZ2YnpSTkErQmhKUzhmWUVEb0J6d1dIZ1d0UEVDTGE2L2JKQXhyYi9HaHRwK2I2THlWRHR3cGRyYXV0QzNtOFVDUU9vUitzMHl6cjkrQWk4Ky9paWUrYzQzVUVHd2JtcUF1YzBiY2VUd3JUaHl5ODE0N2JYWDhkS1gveGpQMHdEN2p0MkpuYmNjeGRTV0hSaWlGNERiRmpVc3huNE41R2NOS0NVYVZsdWRhM2JDRG1tbkk3ZzdBTWh3ODdrcjBuK3ZDKy9qd29RY0RvR2dpaVdDWnBOT0pWOE1jU0I5TlkxdE4yYWVCdHltZUZEa1VWRitqWVFUV2x1ekxVUkx3eGV4UnJEdGNYSmhRbFNXNTBiaGhhSDhoSTNFUFh4ZURwb0hpV3N0VG50V0F6b2JwK09veE9XWWNRUmNMUnhhRlJYdFVlM05QbzZjMFJJRExBeEdLQ2tJNDgxU1d3NkRPb1lObERDSWZGWVhtVVh4UHRKcUZTOHhUalU5MjNHamtISTVWVGJoZlMxNU1wa0luOWExckVtU29scGFsblMxQzJVd29FSVZhVHpsMURZR3Q4d3NxZlFyMERHd1lsWi9OUmt4NExpU0crREtPZnpKdi8xTnZQam9kekM3YmdZYlp6ZGdNRDNsK1c3bkFGV3NuNW5DOFR1UDRxNjdqdVBpcGN0NDZhV1g4Y1FmUFlMTmgyN0RiUi84WWRTRDlTQnlSY09Wa2hUWFE0b1VYRHZ0TFVvZDBVNEdyYm9tSFptT2poSno0eGFzMlpiOS8rSHN6Yjh0dTg3eTNHZk8xZXptN05NM1ZYV3FMNmxLS3BWNk9iYU1qWTBGaG9Cam1nQWhEWVNiM0pCQXhzMi9rWnVNT0Z5SW5RU0l3VTV3QnpheE1RNFlETGlURzRGa3lTNDFWVkwxZlhQYTNlKzkxcHJmL1dGMWM2NjlTODZJeG1BTVpFbW56amw3clRtLzVuMmZWOW1IUkY0aEk1VUVLbDNPUlhObWRXYWZUU1czcXRUcFc2RTJvaTNIZDJFT0t4cUpMTFRUWkRrRzVXZHN4UDE1Y2dkc2NWRVpaZTN3eTUyaWFHc0lYS1JMWjNXSHFSQlF4SDJ2Y28xRzdzakxBMGZ5ellJcStCd2V5b0JmN2hRcmd5dDcvMlRiMGx4UHArUExWNWJKUlJ4YnNaNUllSjFZS09iaUZIbFRoWTMxdFhFTUhjWHRLL1phUjFsS3cvSW1LTkZVMWpHVTV5Qlk4QTFWQllWV2ROaktFUXhYQUo4VC82VXRNWFpUN1JXMkhseVYxRi9yOWhSTHFGSUFTeTArc2ppVkdhWEdYUUVtWVhUbk9wLzZqWC9IN28ycnJPL2RTejBNeTVzbGl3RlBramdsME1RUlJzY3NMclQ0b1hlL2c3Y054M3p4UzEvbXBTOTlqc2ZmK3pORTRRdzIzMXhOSU5mSzc5Y1ZqWWwxM0xuTFZWdDlxYXFBbkt5OEZSSkxBWm0zVWFuQzBZaGdqTUxvbEdnbDltNGUxMERvRk8xV1lxKzliWExBbjFaSUxrYUt0Q0RIc1ZWY1FIbVdaTGJTRStNcS81U2xIaERsekw2SzF0aVFaajdhcnNSTTFVZ21VSElxNFdMOVdacmZkQjcwbzBvalV4RkxsNVM4Q2QvNWJVN1RuMVoreUtxSVIwM3N4eXZBaEdKMWRTOXRtNzJlVWxQMGNYbVpaWERTVzVRbGVsQUd4T1BOQVhNNWpydENqN0tDSTB5RjM1LzJmUlUxb1pNZ00zM1g2bFlJYXJvZkh0ZkdhVk9GY3lja3lsMHo1VkpxbDI4c2p2UmE1eUtmeklpaUpTSGF1c01uL3VPL3BYUDdHbXQ3MWxCYVoyYkpzbHMwOXRiQmdoRkc0NGd3OEhqLys5N0xGLzdYbi9QaVgzeVdSMzdrcDVCYWsxSXpKODdTMXA0SlZiMlh5dm9FMUpTS3ltVXNZbTJZTENpY1hiMWxDZExHZ05GQ2xITWFzaWd6c3BtQjNmT0wvYVd6LzE2Sm1zaUZLQU5pU3l1K08vQXM4WEEyTWs4cytiNG9OV245eXAySlVsR0NXdHhNc1lhTkJUVW5mejRTY1YyT25rSmJZUnY1V0UxYlEwWnRQNGRTcGpyNzd0TXIxZzFxVCtUZlJMZG1XMS90bDFYbGJQYnNZYlpGRFBjOGJhb2huZlpRVEU5V0Q2cnlpZHBKYXRhR0lUZFpLR2ZRNklJWHl0Zkhlb2p0MEVCSGludXZTcVZTRWRud0VWM2tpay80S3V6dGkyTXlGRFgxWUhIQUxCaFhCcHRQK0QyTlRpSms1emFmK3MxL1IzL3pObXQ3OTJZT05WV0V0aFE1cUNoSFA1NFMzdzJZdENyd1BKLzMvZGdQOC9rLy9YTmUrT0lmOGZpUC9YM2kraXhhYThURTd1KzdpQm16WmpneTJmNjl1U2JTdm5pTXBSUlZ4UTJzYzI2QU1SaXRpVXcyRE0wR2lMR2xPVUZLMzRyb2N2WlRLRTN0eGJYZ01pUHlpc1VDQTZpOHA3YVVjR0pIemRrWENXWEFhR0diejkyR1lndTBIT2Raa1JLY0M0bDBkdUFwclp3RFVtZE1qUkpuVUpLdUMxeWZ4VURRS3FzbUZOa1E4RTFzS0twNitkc0NqWHlxbi9jdzJ0M3RDaFVqemJSaWVxSzFjT1c3ZHY3YXRIdDJxbkxlWFN4VTZwUksxNndxUGJUelI4ajBCMVZLRkZVWkVqbVplSk0rRUZZYXJid1pCdGNhcWxYMnVPS01XTTFrUGVzd2tkTUh3amN4cXJQSnh6NzRIK2pldnNIZTliMkZNaytrak1ETXN4dTFOYzlQcCtZNnUyQk45bkRIYU9ESDMvc2UvdmgvL1FYZis5TG5lT3hIZjRhbzFpeUNLZ3BZaFMwZUttWXIrUUdYVERvZ2JOQkRVZGtabHh5UzRka0trYjFRcUVoeko2cEtWQnJqbHVBZzFaU3RuTXczMnJZZnBCSkZqM1hibDUrTXNlWXdLUWkzSUJRcGx6QW8xc0VoWXN1N3NDMnYxamtqRlhHYkZKa2I0Z3lSODBNZ2NSRGZ1YXF4NUhaa29CdVJ5VTFibmw2VkgwdS9jL3FPRklNRXU0K3NBaFR0azZDWU1MdnpPR1V0b1l3U1M4ZXVyS1JhVUZNczRpSlNTWWl4ZDc2bENVS1VtaURwVGE1aUtyZE0xa2hwYTZWcGNMWlhxUnZPR0NzVDBLTDd1bzJOODFCaDYvOTFLVTV5QkVtNXFVcnBlMWhkcmIyeERSTVZ1MU1XeTdCaWJIZEJXVTRMZUlHUE5nbTZzOFhIZitQL1plUGFKZGJXVnEwSWNHT0ZEeWxNRWpIcTl5RWVzYlk0ejVOUFBNcUpCeDlrWlcyVnNGWkx4NGxTN3ErUmhQRW80aysrK0NYMDJqRWUrOUdmSmc2YXhlVE4yRHc3UzRzaHhtclhZS0xTczFmTE9ZOUNsTExLWVhkL1hlaFN0RnZTMnZvVFZhM2FuRCt2ckJUdjZjb1VxeWkyTGo0cS8yMytQZHJyM01MQVl3K0RDeENvY1FiWGR0c2praUwzaXdQRDlvTlVXQ1VPMGNxcU9QUHZRWXVyMkMyTlJia3VSS0grMjh0M3hiM3M4aDlPVDZ5MDBwZFVUNlI2RlVNUlM5SnBselhsd0tXeXhwTUt1YVVNTUM5N1lpTnVzVEMxL0xaZm1vckhXOWs2NmF3RXMvaCt4UU5xaVhKMC9wS0pWZTViVWMvaVNJR3JrbjdsQ0tSTU1jRlZoWGpFT2Zrck9YMzV6MjRaQ0t4ZlQvN3dsTCtyOGpaTGZ3dWVFcnpPRnAvNjBIL2c3dVdMckt3dUZ5dEVyUldTeEl3R2ZmcTlQc1BPTHAyZFRZakh0R28rNjBzTEJKNmkwKy9UV3Q3RFE0ODl3WkhqeDFoZjM4L2MvRHllNzZjdnVOTDArMFArOUV0ZnBuSGdBVTQ5OHo0aXYxSEdwNnRTclpqYnlvc3pMaDk2S1ZlaVRUYmhGK1ZsMEFxdjhLOVB6SVdNcGVxME1ocExBMUs2cXF0cUw2dHU3bkwyN1FxVTdVYkdLT1ZJYW0xTFdaSFRvR1NxdmJQcTlDeEJ0YzVxeC9udlM1S3ZyUUxQMnc2cGhIdllRMlJWRGd3TGU0OXkwNDF6WXBiazYxQ0YrdkRMZHlYdlhhcURHOHUxTStXbHEyQ01tTGJ2cCtqSGtGSlZKcFZ5U2RrckR5V3VabHdtYjR1UzFETDVLODdVUUtVbVVTUlQ2NWpLM0YzSzRXNzJKQmhiY3lEaTNzNjJXcXpJTGJEYThQTHFLcWtOdHE2N2tHWEtQY1llcGN4VExEaEV2djRxWncvRzdSV0ZIRm1MbUJpL3Y4T25QL1FCYmx3NHk5NjF0WFJ2SDBkRXd3Rzl6ZzZkclUzR2d5NWFoTGxXay9uWldXWm5tc1NqSWVzcjg3enI3VSt5dmJQTGxadTNPWC9sS3JmdWJHRHcyWFBvUGg1NzhpbU9QM0EvYTN2M01OTnEwUitNK09KZmZwM3c0SEZPdmZQdk12UnJsb2RkckxCbFZTR2p1K3hFVzdxQ3RSOXd4N1hLTFJ1dGpVcXhzL0Z5dGFVNG4wWHhraXJMS0ZOcHJDcVR3ZkxQVnptQzNkcG0yRzJyc3Z4N3VlTXhlMmZjb1hNbGxzZCt2cXdUcXZoNVJGZGVRVzNOMGFwRFJUdUFVcHhudFZSbXlrVHpMQXJVaDErNUk5aVN4S3JkMHA1TEtHdjZyYW84ZGFtWXVNUlZ0VTBGYVZSdXZ5bnVlTEcraGgzMmdUaG5NWFpNVjM2N2E5RkY3MVpreWVQTTZTcjZlcHhFV3pLMnVuTEVSWldRUzZ2cXFQNkl5b0g3bGRWT1FSS2V3RUxnNUJBNGJqajdKelVXbXh4SjQ4NU5qTmZmNW85Lyt6YzUvOUx6TEM4dE1CNE02ZXh1a2d6NzZDU2lYdk1KbEdKcGNZSFpWZ3MvaCtwcjZMVTc3Rm1hNFVmZStSUW1pZFBrWWhFNi9RRWJkM2M1ZS80cWw2N2RJRmFLMXNJS0R6enlDSTg5OFNTTm1YbGVlUGtNQzhjZTRiNGZlSWF4RjZaQWk4TEVNc1ZJNVhUSjlueEFISUNHcXh1Mll1QnNxdENFeDFveFFSOHQxSW02T21EQmdjaGJWWXFMTHJmYjRzcVY1d3czcGJqb1NxS3pUT3FmY3p0T1B1QlU5andxaitwVEZwUTJtelVWZkVJbTgrU3MzMVBPQVZRMlJxMllZN2dQcWE4c2pxS2RwbHBKRmNadTRtMTdaNW0rYTAyelRTWEx5OG9qdGxWZ1ROZzczZVRDUEZmQXFIS0tuMDkweFpiYWluS1BDMlZQajkxWm5uTEdHWklWRXhYUlVYNGFLNG8xMHFSaldGdzlrdGlUYm5IM3hIbExZSEQ5QlBZbXdycFY4Z1JqKzRNVlc5NWJxV1U5RXhNTWQvbjhSLzRMcjN6OXJ6SHhrTjd0cXpSOHhWeXJ5ZExlUmVaYXN3ejZBMnFCb2xFTDA3eEhZK1V3WktHbVJhOGZSM2hLbUs5NXpPOWY1T2orRmM1ZDJzUE0vQkszN3R6bHlwbnY4dG1YL2diUk5XcHpTOHpkdkVFMDd2SElELzBFUFYzSDZPd210cDErK1U2YWN0NlJ3MTNMbjB1WG42bHpScXBLSDIyUFRwVXowQ25zVldJNUt0U1VEQWI3b0JCeGc1dEVLdGVVS3doMEZKN2lpcG1NTW1pVHR0SHBPNWNQODBwbHF0amJHeW0zR21KRjV1VUdXNU43SXdvRG5CUmJDWTIyK0xqNW9GQTc4bU1uSVVsSzhacFNnazlpRGQwSzI2bHlmZmRUTzI1cmFHTVBwY1UxOEpTdFR2bkRwaUVGMXRjdzFzMXJaS0lrMXZZYmJFVjY1YWV2UTE1UktZZkFUbkVWVlE3TTdIMnZzcWFpWmNwUWZ2dW95dW11SE9seHFaa1M1NWJQVDJpeHl3N3JZVk9WdFdRWldtWU5IeXNXV09jRU0zbDVtYUMxUnlBUnlkWk5Qdit4RC9QaVgvd3hBY0x5d2h6enN5dk0xR3NFZmpyTmI3YzcxRUtmUmhoa3ZMN0tlazN5T0d0S3NHc0JtRlJvbFhEa3dCcVhydC9pTFk4ZTQyMlBuNkRUSDNQcjdqWVhMMS9qenJrWCtjNkZsOW05ZVlOMy91d3ZNbXJPRTJWVlJPRjRGYnQ2dzdyeDdlcks3WWNuaG5MT0dleFdBaXFMWTAwdEFtTEpqZFZFbTFybE5pckx3RjhTQnEyRGkybEJZbFVadVBWWlpiTVA4Y3BuWDltR1BrdHVScTVNclJRWGhZa3BQMFFxNDNIdGJJaXNvbEVaaThHSVkrcktaWTdGRVBCM1Q5OFZXd0dsRlc4cWdIVVVaNElUd1hVUHJFVjV5MWx0Z3NNeHNUTG9GWGFNNUwzMnhHLytKNnJ2KzkxOG4zOWZXUkxmcWtiS2lPczdzTjlUcFJ4NUw1Wm9SVlhXZnk0SVU1d1VFeHNXS3RZNlN5eGlqVWhFaTVoenozK0RUMy9vQTR6dTNtVHY4Z0tyeS9QNDJ1TE9HV0ZycDBNOURKbWJhNmJZQ2V2M25hK1IydTAycXdzenZQY0huOFRFNDJ6dWtPazVzdjdUQUwzaG1PczNObmo0NUFOb0w5WGZHOUYwZTJQT3ZIR0IxODVkSmp4d2t2Zjg0cTh5Zit3aCt1STdRK0dpTkhVY0RHSzFTOStmRGxRa1dqdk5yRGd2QUZsVWZaSHhMdmtMTTlsYVZUYmNHV3UvWWpBcDkxRDNnTU80MDdOaWQ1TWZRRlpiVWMweHVMZnNmdkpKTG9va21jeFdGU3owdWFvKzlSb1hvcGNkUmgvKzN0MmlJcCtVNlNpTDcxWmRwOXhMclNzVmM0NnlYcFRLeTJBYlkvSmRxa2c1ZVJVcEZFemxpVnYyTlRaVnR0eGY1enA4NHc2T3NxOXBSTnpKdlZMM2tLVlVhWU5NM0ZCTWlHRExHY1UweHAyeStrZmJUbTBEUU1TdXdDUmwvaFdyUHExVC9ud3lKdHE2eVZjLy9URysrZG1QTVZjUE9ISmdIL1V3U0xtQXFnU25ibTYzOFpWaVlhNkY1NVZSMU1WQm5MbjJkcmQzMmJjOHh6UHZmQUtKUnlWWFVldGlIWm91K1R6YU16UFlod0FBSUFCSlJFRlV2UkhiT3gxTzNIOGtpd1RMRGlaUGMvWG1KdC84bTVkb1J6Nm5mdUlmY2VxWjk4SHNDbEV1NGhHM2hzeEpPblpLazdKWGRwVituQ2tLRUZ0REpaVVdTU3I3WjVYZDcxWWo0cndteHJtSmJSZXBWTkJkNHVnWnkyOVRwZ25kbldkUUprYlk5MDYyVmxWRnFkUDBWTmVhMmIrZDhTbnlvSjFjOERTUmg2SkFmZmg3RzZLVVRJemtwSWhMbWl4M2xNWFJ1N2RGaHFrM29EUDJzejljRzd0dGFhMGR0OWc5R2hKN0ZWSnVWcVFNRTdINTlOamlHdXZ3bVlhaGN2emJybkZENlJMYlBQbDhXcDV0YTZPbnJQMjdXTHRqeWN4STlzMGpscVMzbU9hS29TNWpicnp5QW4vd29ROHd1bm1KbFlVVys5WlcwMW1KS1EvcnhNRFdUZ2RCc2RCcTRxV0pKbmdaS0NNMmh1RjR6S0RYeHlScFFOeUJ2Y3NjT2JoR3A5TmhaV21CeGJrVzlVWXRLNndOV252cDN0bnoyR3IzNlhXN0hEdDZDQ1ZKc2ZJVHJla05JNTcvenF0Y3ZuNlg4TkJEdlBzZi93dGFoeDlrcU1LaWJDMCtTOEc1SFhNa1dkVkVWYjJsUmRMa0txbW9WbTBOU0U2L0ZVZnlMYWczeVNlUTZtREgrWHlWVzdWWVg4bUlYZmtaUzhoRDFwTkw0YUYwenJXczdTeHQxT1ZXSTJkRHBlMmVkbDVpbHg2b2lzcEZLNDNXNWN6Q21ESkV0WnhYVzUvQmgwOXZTajZBY2ZweVIzZXRDa2xpdVZ1ZkZIR0lvMFlxU3luYjRESmhyVlVsc0xEYWk2WGZxTEVNTnJhQzBDMmljcHB4WHE2SzJFSUtNMTIrYTRzazdLL3Y2RWJFMnJmLzc4RXJIZTQvWmJpSWtGakNEVlZsL0ZnUHN5bTgvZmxENnl0QmQ3YjU2bWMveWRjKzgxSHFrbkQ0d0Y3bVd6T1ozaUFwaU1waUZMdnRIbkVpek0zT0ZMdVNLRTRZRGdkRW94RmFLMnIxa0psbWc4QVA2ZlY2TExacXZQdnB4N2g2N1JxZGRvL3VZSVR5Rkdzcnl5d3R6ckV3MTZJVytpazUyUE80ZVdzREVlSEEraHBLVEJhK3FRcm0zWVhMTjNudXBWZm9xZ2FuZnZ3WGVPSkgzcyt3Tm90UmZ2a3EyYVJjd2ZHeGk3RXZuYktDdzM2aFZXbW95ZVc1VW9UU2xtR3l4dDc3VjRRM0ZIWmdYZW9GYlh5NG9tQmFpRDFBRmwxSTNzV0s5YmF6UzRvRExYOEh0Q28xLzg2YTJENmd5dXJJWklPOEFncXUwdm1QV0JvTFZ5MlkwNHJGcVU3eW4xSEVCWkdyRDUvT0t3QTNLQ0ZmL3p1WHRYM25Pdm5vMXQ4N2cxVnhiTGhPSzJEYmMrOVI1WW5USDVjVW1PdzNXWUkyTW5SVFh0N25tNDBjZDIwY3RaV3lpQ3o1R2ozZkhWdTRzeHhvcVpVenhNdS9Wclgxa0luSWE3SG13bEpDSGJIeUZvcDVzRFZ4emc0OWxla050TkxVWk1UZE4wN3pCeC84ajJ5ZWY0WGx1UmtPcmUvQjg2UzBrbG9kWHJ2ZEo0NE56VWFENFdqSWVEZ21pdU5VRGFsaGVXR2VNRXhUaE5MS3c3RGI2VERYcVBHKzk3d1ZFNCtKb29UQmFFeHZPS1RiSGREdWRobU94aXd2TGJHOHZNRFMvRHpOWm92TDEyNm1nYUlyODBCY1RwaXpuT3BPYjh5eno1L205bWFQeHRGSCtPRmYrbGMwRHh4bnJJTkNGVnRjRWlMdTczRkM1bEcrTkU3RlZOQ2V5bzJKQWl2bklxUHRXRmtTbnRhWUpDazhES0lrY3c5bVFiWGlhazB5WlhTbXVYZk5TbHBabmt4N1NGMEVmQmkzZmJibm9DWkYweFd4Y0ZrN1pKQnNscU9MYXNmWUNVbVZiWjNKbytueUZTTkp5Z3dvd2xIS3paWEpISWVpVERvRWRQZWFXQUdET1JMYUZVRm82NU14WWd1eVZLV3NLbGNkK1drR1UwQ0Z2SG1hRGxaMU1lMytkUWk4bFVucHZaRGVSU3VpU2thNkhSMWxSQ2JtR0pOOTZyMy9Na1ZRYWZxbmVVcG5aWjZwMkdGVmRuT3JvbFJJZno4SlBvSS83UEx0TC93UmYvclJEOUVrNGREK1BTd3Z6RG5weWJtamV6UWUwK3VQNkhaNjFHcHB1VjBMZlFJL1FHbVAzWGFINWVVNWZLMGNlSXFJMEc1M21aMnA4ZjVuM29xS2h3VmNWV3NOeXNPZ3VITGpEc1BobU1EWDlIcnBJVE16TzBlbjNlYUJFOGRZbUsyblpONDhXazdyekJIbjhlcTVxN3p3eWh0RTRTdy84QTkraGVQditCRUdYbzFFdkVLaUxkWm13bDYxdVRKeDY2R1hrbWVZMFdhTDI5Q3JRRlhsSGtQZzZ2aXViSWRWaFhaVnBsZFg1WVE1Wk5TT0tIZlNOdk1xd0VxRnRxRTRSdExuQXl1d1hESVBCaGFTVGFaOHo3cUF4S1I4UjVPeEFGU2hValFXRWN1cTBuT3d5a2RlM25EajJ5eGliSTVmc2xzRHNmcDVsUVVWR0VkVFZWVndWZFNEVnFsaVF6N2ZkSDVmb2VDNFFZNldJTTlwTDVRcjdySU9uaHhIbnFQSlJTYVI0cmszVzRwRUZ1dEJuTjc0VDNqKzdSV2xxcTZQTW4rQUZGL2RRM25wZU1wVFFzdURyZk92OHNrUGZvQnJwNTlqc2RuZzBQNjkxRUt2MEwrSkNNUHhpRzV2eUtBL1JDdEZ2VmFqWHZPcEJ3Ris0QlV2MGQzTkhXYm5aZ2dDM3gwdVpRL3JicWZIWERQZ0o1OTVHcEorUVNoS3NWdnAxOUYrd09uWDNtRGZuajNNTmhzTStqMTJlejEyMnozYTdTNklZWEY1Z1Qwckt5ek90Nmo1UGlKeDlwSjZiSGFHZk92NWwya1BZbFllZVFmdi92bGZ4bDg5eE5CNHhBNlp1Z3J5RUNkSk9GOEJpckxGYWZsbnBNc0xTZTd0TloyV0hLRXNjVisrSjA4a3QxamowSnBzUVpvZFFGUE1HeXl5VUE3bG9BallzNDBvbWhJZ3BoeWFiM2tJTXNYL1VtNUJwRHBRTExiU3lqblFWR1h1SlFMcW85WUJrS2YvT2ZEUEFyUWh4WXRlaXBIc21LUHF0Rjg3WVJpMm1yaGFBVXpUL3ptck1tY0lvTDdQSXRBOTZWWHhhN1p4RkdYLzZRUTQ1TDlzeGRTRjRmZlpmNVFIbklWQlYwcWNyWWNvWEptcnN0WTBXb0VaTXlzeDMvM3luL0ZISC9vQTNxakQrcDRWbGhmbkVBTlJZaGdNaDNTN2ZTU0o4WU9BZXIxT1BmQUpmQi9QVTluQXJ6UldiVzd0MEd6T0VBYWVFOU50d3luYjNUNXpEWS8zUC9OV0pCcWlQVC85M3JXWGNmdzBTbXRpQXkrLytob1BQM2lDZXBoQ0owZFJUTDgzWUxmVFpidmRwdE1kRWtjeDgvTno3RmxiWW5saGprYXpsclpCS3VETStjdWNlZU15NC9vaVQvLzgvODNodDd5VE5tR3FhTXpGTEFJbWs5VXFaYkVQckdEWTRpYXpmUG1veVhoSlo2a3M1VkNzVkhCTEdkQ2h5dWRDNHdKVmplVllWQlBQb1V3OGdGSkFWQ2xSUmM0dzBRMEFVeGJXbTRudXg2WnE1OFhpNUNMUWZ0THRxMFpWRmFmNVAvL0l5eHZ5L2JicTVlbVlCMm1VVkJSbCtiNk43WVJDS25NRCtkOHFuU2ZYSUpOMEhIRFIwaTVUZnByRXVISXMyRDNZUFVnMldLNUNldzBrdGozYU9zaktVN1FzRVhNMGxxcTRDY1hxMUNRTHJ3QUlTZWhjUDgvblAvSmJYSGp1eXpRRGowUHIrL0EwZEh0OXV0MCtCcUZlcnhjaUg5L3owOVdlS2oramdteXROTHVkTHA3bk1kTnNrSmg4V0pnRnQyaE5ZaEtHb3hHZGRwZDl5L084OTUyUEl5YW0wYWhuREgzdG9CZVUxZ3lHTVcrODhRWVBuenhCNEJsTVlyS2dWME9jQ1AzQmtHNXZ5RTYzUjY4M29EOGNVRzgwMkwrK2x6M0x5OHpOejdHMTNlVzU1MTlpcXgreDl2aTdlTWZQL0NKcWNTOEQ0MWt2U0o0eFVXNXpiT3VGTGFBcDNYS1o0MUwwcEtPejFDUTVCQ0s3ZmRSVmgwRWhTdE5GK1YrbVhtb0w2UzdPZFZ3S2svS0tNcnZ0RlU0NHA3S2xzS2pxbDVrUXFGSzUzRlFXRTZlcXovS0VPbWo2QmFZK21oMEFFMFg3bElyY0xaY0tSTUdrcmw1Y3I0UTRxMFZ0a2JyTEVaaWF3RUdweWc4cmJ5b0NLclgweHFXK0ZPa3EwMWMvOTBxbHRUY2d5aUt2S2lrcCszWTNJRElkMWFtbkhFTzJHQ1BkZ2NmVWt5Rm52LzBWL3VpM2ZnTjYyOHpVUW1aYkxhSnhPc0R6Z0pXVnhleGwxMFVLVGlHZ3l1S3Y4bS9OVTVydVlFUVN4OHpQdHpER2tJZ21NakdqVVV4L09LTGY3eFBITWJWYURTMndkMldPSng2Nm40c1h6dE5zTlZsWldXSmxjWUhXVERQRlJ5dEpjd1NVWnJmZDU4cTFhNXc4ZmdRbHNZVW9zMWR4aWxFVU1Zb1Nlb014blU2WDNkME92aCt5dHJaTWEyNmVjeGV1Y3YzMkJsRnpoWGYvazE5bHo4TnZvYS9xeFd4SlNkV2hKeTVZTE5QTGxzbzMrd20xQ2lHbWwyOVNkV05ZRVdaaWxlWk10QTFTR0xlVWt4MHBscksrWWttdk1LQW0zMVExd1owUWg0WXRwVk1VVlFHb3lqMmV4VGQvb2RYdm5kNFFKelFETndxcnZMTjA1ZVYzczh5VXBlS2RXUGZsYXhEcmVNdlhMa1V5aW5XaU90K3FzbGVTbGRKSFZZUkxVcUVZU1ZsNkNaWmNWMVZTam0zV3U4aWtVdEN5SjAreGVSU1BtajBCRmtjOWxwZVB4b2t0VndnMUROSGRxL3p4Ui80cnIzL3J5K2hrek9Kc2kvbldETFZheUhnY3NiUGJabjNQQ2xwTHNlOHRQUVZsWUVjeDdFVXpqbUtHd3hFTDg3TkVTY0pnT0tiYkc5RHA5dkFEbjFxdFJxTVdFQVFlUVJEUTZ3NW9OVHgrN0YxdnBkdmVZYnZUWlhlM3k2QS9RQ2xZWGxsbVpYbUpwWVVXelZxSVVuRHR4aDEyZG5aNDROaCtVSEd4dGJEdXAxSk1wQU1TTVl3ajRkekZxeGdEZnMxamUydUhuZDB1L1dIRVdJY2NmZWRQOEpiMy9RTEo3QXFSOGdwSmR3RUhSU2E5RzFUQm5YWUFtYXNxVmZkNk5aUXF0akhLQ3VFb3kvK3luVENTQXplTUt3ZVdjZ0JjRVpBN3JhQlVzTzIyTnI4Y0hPb1M3MWFwZUV2VWprSlhibjVWWGRuaHZoTkszSmc5OWJ1bk55VXZjNFRxUHI3c1pkMU9QM3VZSzFTZjB2ZFBDY1pVS3RXZVoyczd5ZmVuR1RKY1RSa0NpSjJLTWcwUko3YVQzbkVUWmYrYnpxYWZVcjRZWWhWQjFyQ3pDS1Z3aGticHhGYm5Lem1MWTJHS1ZGa3BSRTZTdHljV0ZDWFhEZVNKNW1rL21CUS9aeGg0QlBHSUMzLzdMSi8rNEwvSDdOeGhydFZrei9JeXRkQkRLYUhiN2JQVDJXWGZuajFvS2RlRjlrYWtQS0RTQTlwVFB1TTRabk56bXpBTUdZK0hXYVpjUUJUSExDN09Fbm8rMmxQNHZsZk1abloydXJRYVBqLzV3MCtqSkFhdGlXTVlEa1pzNzNhNWRPVTZ6WmtHdzBHWFpyUEJ3c0k4aXd2ejNOM1lvaGw2SEZ4ZlFhdHMyNUgvSHJSMlY2c29sUFl3K0p4KzVTd0xpNHVzTFM4d0hBeloybWx6L3ZKMXRyc0Q5UEloM3ZWUGZvM1ZCeDVuNk5lSW9sSmZYMEk3ZGZhaGxBVjVhWnNvc3dadHhMcmRob3J6Y21ZN2UrdmlVQmFqME9RVGN5ZGYwYnFKcy9aSEtWVXB4VzBjbHhRT1AyTkpjZ3ZKa3BRVzlmUzY4RW9kb2JhQ1NWUk9JOHE0RlZheWxOamlKRHRpWEpreWtzL1pJU2pVNzcyeUthVkVWaFVuanJKZTVOS1BYbkVINW9tOGR2U1ZOaTVYc0ZMcEZGQUlxK1F2ZHV0WWZEcGJrS1J3dGdkbGNWWldHN21xU215NnE1YU1uMzRQZmJXMVE5ZUY2TWc2d0xTdFdNdGVkbVVOKzRwZnRMR0t1NnhmTkpucEtVbjN2TVVLeVJnQ1NVaTJiL0dYZi9qN1BQK0ZUelBqSy9idFdXR3UxVXpqcUxSaXR6ZWsxK215ZDg5S1lRV1ZnaUZmOXFRS2pSRVlSakhEd1loQnJ3OUFyUlpTQzMzcVlRMC85Tm5lYWJPNE1JL3Y1d0l0NWF3NWQ5c2RXdldBOXovek5wUkV4YlJhbzBIN1hMNStDKzM3ckMzUHM3MjF6Y2JtTm5lM3RobVBJNVNDZ3djUHNHZGxucm1aQm1FWUZKbURFNlEwNWFHVlJ5ekM2VmRlWjJhbXliR0RlNHVzaHNzMzczTDYxWE1NcUhIaW1aL21rUi81S1lhTlJZem5POUhvU3JUYlZCVnV5NUxTTE5hSzJuN0czTEZaRHZQVWJpT3JLdCs0cmx5c3habGtoN0NxTWtYTFdndm1MdHppQ1ZFbDZ0ek9seWhSYzY3ektQMTV5eENVdkEwb3JkV0tRdnVMY3EzNGxpbE5GVzI0VjBTdHFZKzhzaW5WVWtHUkIyamFsbDdKdmdFMUFUY29YdENjUTViOW1hYUk0QzZscndYKzJscXppdGo5RjVoY0FhWXNhN0ZqZ0pBczI2WHMwOHV2VThhR0YrL2pWS2h4UmVHa3lqSlQyVndCS3dpenlBb1VXNVpzK1NVS1BuNjJ4eTEyc2NXL3lRd3hWNzczdDN6c04vNHQvWnVYbUcvVU9iQnZsY0QzQy9sMXV6ZWcxeHR5WU45YUlXWTF4VDQ4dlZYSGNjSndORTZIYklNQldudUVRVUFqOUdrMDZ0UUNIei8wMEdqdWJtd3pOOWNrQ0lNMGIwL3ltNkVzMFR1ZEhyTjFuNTk0NW0wUWo4bytQaGU1ZUQ0dnYvbzZody9zWTdaWkt3Wit2ZjZRN1hhSHJhMWQydDB1MnZOWVdWbGkzOTVWbHVablUveTRTRll1MjRlbklUR0swNjlmWXFaZTQ3N0QrOURLb0R4TmI1anczZE52Y0h1cmpiZnZPTy82aC8rS2hXTVAwUlVQSXlxTGRNOE9lMldaekVTRDVlWERxWk1zNGM3RXpFdXNwa3lLRnJXTTEzWm5VL21GbzdQTXlqeXl2WUNwSW5oWkFLMERoTEg1QmRxMmQrTWc0U2VJR0dvS2pUb1BVSjNhcjBxNW9peTRBbVhRclMyUlZ4KzFEZ0FxSGd5cTlKQjhONTRyN3F5cHFoUGRYQXhJckw4M3lsbWZHTnR2WVNpaW13cFpybUxDTGVpMmdIYmlDbVZXbTAzY01UYTJ6SkljVjlGa3pxaXk5Q0tJczc0cmNVNmxxbEhoL21FVjVsUVJhcW53SkNib2J2RlhuLzQ0My9yY0p3bk1tRDJyUzh6Tk52SHlQMHQ1Ykd6dE1oNk4yYjl2VDVGQWcwclZhYU54Ukw4L3BOZnZreVFKdFRBa0REeHFZUjNQOS9BREh6K0w0c3BCblJ1Yk84dzBHOHpPTkxJTmdPc2tVMXJqZVQ3dGRvZTVlc0NQditldEpGR1V5cGF4RUhCS0VjWHc0dmRlNXRHSGpsUHo3ZGxJT2gySkRQU0hFVnM3dTJ4dWJ6RVlESmx0enJCbmJZV2xwUVZtVzluUG1rVEZRRGdXeFN0bkx6RXowK1Q0a1gxb25VTkRBeTVkdThYcDE5NWdvSnFjZk8vUGMvS0gvaTZEMml6R0M3S0xVcWVGc2lYN0x2WUg0aHF3SnZNYzFEUWt5VVRnbDVGSzFIZlZDZzhPVEtTVThwU1llWGNCbHcweDg3eS9mRjlnazRFbnZwZTBtblZTSll6MTltY1NYKzA2WThwaVgweUJNQ3RUcjdORDRiKy9zaW5HK2hpTkJkWVVOVVhLYXgxUEpSRmVLc1JnS2FPUlZLYkx0c3IycWNZZWU5ZGZUUVd5ZnJHdTJsWWNRRnY1Q3lYandna1R3SmdwR2dkbnhGS3c1RXRFdEZRZmwrSUEwclpQMlBxWVZjR28wd3JxTXVicTZSZjQxRy8rZTRhM0xqTVQrdXpmczBJUWVLbkhBa0I1M05uY0JxVllYVjVFeEJESHFSeTNQK2d6R280SmZKOWFXS05XOHduRGRPL3ZleFlKeVE1WUZjM205ZzYrcjFsZVhIQ29MNklVY1dLSW80VCtZRWcwSGlGeHdzRzlLengrOGhqWGJ0eGdZWEdCcGNVNW1zMEduaVlMQzRXZC9vZ0xGeTd6MkVQMzRTbUQxbjYyRnM0cUNxVlIyaU5CMGUwUDZYUUhiRzFzc3JHMWhSOEVMQzB0c0x3d3o4SmNrMFl0eUdTNEh1Y3ZYNmZacUhQazRKN015NUVBbW5aL3pJdW5YMmRqdDQ5LzRBSGUrUS8rT2EzREp4a1JwdkZqWWdwQ2NLRVV6T2NsOWdPUG01dm5PTCtWS2duRHR0REkyZytxck9wdzBxL0ZOU3JaVkdRcExqSnJkRmZKR3l3d1lvNnRYa3JLZE1XOEpQbHpWcGlDdEhNNUZtdGx5cmtGRTg1VU45MWJmZVRWamRTTFpOdlZjditNcmt6WHErdUxmRTBtUmVLWWxSTW8xbXJJVU0zOHNMOW04VWNiNWZEV3BKQ0ZadTQ2NVlJazNBUVhLOVpjVktZSVN4enlUbDZ1TzY1ektRTkM3ZWl0YWRxRS9Gc3N2MzhiKzV3WlFqTDNuaVpoSnZDUjlqWmYrZXduK1BLbmZvOEdDWHRXRmxtY244MDJBbm44TnR6WjNNRUl6TGFhOVBzRGV2MCtZb1I2TGFUUnFGTVBhOVJEamE4OXRPZWxXbThwVVUrMkdRVThOcmQzUVdCNWFaN2NmeEpGRWYzaGdNRm9UQnduTk1NYTlYcjZmOGxveEVLcndUdmYrakNYcmx4aHA5T24yKzJSSkRGejgvT3NMTTJ6dERESFRMUEJ4bmFiUWEvSHNZTnJhVHZtV2ZGcnl2WTA2T0sxMjlydGNldnVOak90R1RZMjdyRGIzcVZlcTdOM2JZVzlxeXUwNWxyY3ZyTkZFSGlzcnkxaGtoaVJORzhnTVpwekY2NXg5c0pWaGw2VHgzN3luL0xBTzMrTXZ0Y2tjU3dzcVJGTVo3OWJsenhwTFdldEFJMkMxV2hSaEticVVteW9VTjZMWjZZbnI4REJtVUl4bURzQWxYYWw2Z1d6VUZzQk1OWG9jU3FTUmZ1d3FOaVBEZUtBUDdWRm5pNENSN01JZDZWc0hVemFIcWlQdkhhM1hGNVpiaVluRkZRczRKSjkzRkhoRWFJS0hZekNUU2N0aGhXWjhjWk9GYy83bFJJYk5aa01nNGdUanVsSTlLdXlIMFVSKzEzOWhZb3pnRlFWMm95VVNTeXExQlNBcXFpeHhFbGJMZFJpaGRrM29TRXhkOCsrektmKzg2K3plZjRWRmx2cHcxN3pkZkZ6SlFKeG5IQjNZNHR1djA4WSt2aGVRTDNXWURRYXNydzRUeGhvZkM5SUxaNlpqOEJZdjFFUk4xa1BGTnM3WFFiamlPV0ZCZnFEUG9QQmdDaUtDR3MralhxZGVoaFNDd0pDM3l0Q1JQcmRIclBOR2ovNjdyY3c2SGZvRDhZTWhpUDYvUkc5NFpCMnQwOS9NQUNFNWVVVk91MDJ4NDhkWXQvcUlwNlh4MCs1ZkpPaVBETHBKM1RqemhaaFdHZDFhWlk0aVduM0I3VGJYYlozMm96R1E1YVc5aERIRWZjZFBjRDhUQ085MFV5Q3FQU0EyMmtQK082cjU5aG9EMWs0K1ZiZS9yTy9UTEIyaUJHK1U2Y3JteU9aLy9tNnVqNHRuN1B5emxHdW9LZmkxdGVXK2tVc29sbFpiRWc1VEpTcTlaMkNrVmdNcmNWRmRhcDdVR3Vxa25hVkljSW0wcWVxVGx5cHJna25vU1RxbzJjMnhDNTV5aFVjbFlBSEpqMzh0dUJRN2lFMnFITDFLZ0RJMHBpZ1hDYUEzYlVwTzJUQlZuQzVra3dYK0ZrbCt6cXp4RktiTGFYQXh5RWVLZXNsSTJPc1l4OUE3akJVWmIyK1ZvSS82dkNkdi9nVHZ2QjdIOElmajFoZlcyWmhiZ1kwbUVRWWpTTTZ2UjY5L2hCZmE4TEFwMTRQQ1dzaG52TFozdDVsYVdtQndMZlNYNVZ0dUxKc29GblJsd2lNb3BodXI4LzIxZzZlNzZNVTFJS1FXaTBvNWdXQm4wSkY4b00yLzVxRC9wQm0zZWZIM3ZVVXlhaWJFUURTRXo0MlpOOXpuOTFPaitGZ1JCVEhqRVlqZk45ano5b0txNnZMTE13MHkyR21DRUpTU3FPTndZamk0dFZickswdE16OVR6M1FMQ3JSUG5DUnB1N0M5eTliMk5vSmlaV21SNWFWWjVtWm5xUG1wVERnU3hlc1hydkw2K2F2RXpXWGU4dE8velBHbjMwTmJoU1RvZERzZ0NhTGRTWGtWZUl1MS9yUDFycTdqM3czdHFhNmtCU2JBby9ZWFZaWmtub0tHWllmdWxLMnoyR1N0S3B1ZzBqSzdNN0ZKdVh5WnBxeXNkMCtjakk3aUxmbm8yUTFuNjVGVFovT1R6RlF5UWNxZjFkWUVTSmxpVTVnanJOdllhcmdxS3dmWDBPUElLQ3Y5djNOaVYwSXdxMUFScGJoblBXV3AxT3dwcHBJSmNLc3pBTlZTa0tZbVRDVmdVTVpRVjBMNzJuays4enNmNVBwTDM4NzI0M3NCUTdjM29EOFlFa2RqZk0ralhnOXBOQnJwdE41TGY5ZFJiTGk3dWNQeThnS2g1eFdqMGlKMFFxbGluU1JvNHNTa2x0MWVqLzV3aUZLYWVxMUd6ZmNKd3dEUDAvaWVSbXRkck9YRVdvZWxHb1gwNjNaN2ZacTFnQjkvMTVOSTFDOW1RT0xNMVZWSy9FVXhIbzNvOVVkMHNxSGtZTmduaVJKYXJWbFdNMzVBczE1TGUva2t5WjROUTJMZ3dwVWJIRHR5a0diTkorZlVTVGJTUzVOc0ZmM0JtSzJ0Ylc3ZHZVdTMyMk8yTmNPK1BXdXNMaS9RYXJYWTJHenp0eStjcG85bTlkUVA4UFRmL3lXUytUMGtYdWptRTZqSkYwcFZzVnlxbW9ucjh2bmtuZ0xVTWw0YzVkS014RXJ0TFcvOHlvMWVCUXNyNVZLT1ZVVTNLSlVnVmxYUmhGVFg5Y2IxUExqaEpxa29UWDMwekYxUlRsUzk1Vm11L21LY3YxYzRBRkhsWnRvcmExSW9VamtJbUlKZmxpa21BRnlibG5MWWVhN1lZb3BmY2lMVFZFdHUwc1hWajl2VFdsVVpFRGtsL3FTTTB3c0RrdkdRWmpMa3hiLytNejc3Ty84SkJoMUNyWmlmYlRFYURqRkpUTDFXbzlsSSsrMHdDQWc5VFFxTlRYdXhVWnh3Kys0bXl5dkxoTDR1ZVFLaXNnTXQ3UmVqT0dJNEdOTHREMG1Nb1phWDg2RlBHSGg0eFF0djIxTXpxSXQxT0tmaG1YbGJwK24yK3RRQ2o3LzN6TnNnSHFTQ2xTUXVoOURLd2xGNVhqRzRGRkdNeG1PNmd3R2Q3b0J1dDg5Z01LUS9HSUpTckN3dHNiZ3d6OEo4aTNyb0ZXdmFTMWV1Y2Y5OVJ3aTBaTE1hbFVhNXEzS2dhVXdhWHpHTWhaMmRMaHNiVyt6czdsQnYxRmxiWGFNNU04dmxLMWZaMnUwU05aZDQyOC8vYy9ZKzlEWjZ1Z2FCajRsakc4bzFTUXdYeC9HYjNnZTZqSjF3c0hCV05hRXFJVGRpelFiUy9wOXlDOGJrOHpRUlhXUTVERzA2dDdGdmQxV0c0a29WVHlmM3dIR3B5c0JlVFZiMjZyKy90aUZPa3A4UnhGTldnb3VhUExhc25EdVZBU1Z5NTVQTzg4ZXpja3ZqeEM0VzlrbFRBQk9sbUFuWWNzZnFBWkJQU2ozU2RPUE1DV0pWSS9ud3paNkh1cXNVTDZmdzZCSlBiVWRaRmVXYU5lZFFGcUJUb1Vnc1piaFdHbDhiaGpldjhJV1Avalpudi9sWCtKSVFlaDYxTUNBTUE1Sm96UExTQXI2dkMveDJyam5JWVExeFpOalkybUpsWlFXdGxZWG5UbWNFM2NHQVhuOUFOSXFvQlFHTlpvTWtqcGlibXlVTS9NejlOLzFoa09vVFliSkpzZWVobFNJUllUU0syTm50WUpLSXQvK2RSOWkzTk1kTW80NG1CcE5KZlBPZU92dWViYUJwdW9mM01nU1ZZVEJJTGNybkwxMm5WcXRqakdFMEdoS0VQaXZMaTZ5c0xOQnF0TGgxK3paSEQrOUhxYVJJM1UxZHA2YVVyUlpjeEZSWkdDWEN5MmZPc2JLeVJudDNsMTYvejNBNEpFNmdqOGZlSjU3aHFaLzRlZUw1TmFLQ0VpeHBsb0p5TDR4VXM2WXFOV0pWRnE2c3c3K2MyTnVabnNYTG00Mk0wcUZyaVZ3dm5udFVOak9Rb3JXZFhGSmFjN0E4UDhJaUJSV01CQWNQcG9wTmlDNjJZNnAwSkZaZHVkbU8xRU9oL3NlWlRiSExiZ2ZQWmQyS2RtbFNaYmNXL0w1SzN5MTJLU1BWVENDY3ZiNU41ellpVHR5Um03MWcrd0NtTEJUenpBQ3RLdHNHVStDbmNxRlFRYUZoa2hpbXJKbEJBZmtzVmtZR0pURjFpWGoxbTEvbGs3LzU3Nkc3eVZKcmh1V0ZlUnIxRUJCMmQ5c3NMTXhsMzRvNGZZUEs3TktKRWJhMjI2eXRycUFRUmxIRVlCVFI3dlVaRG9Zb29GNFBxZGZTNFYwUWVIUTZYZWJuVzRSQmtIMy9wWE9qWFBtNGEwMmxORWJTdzJVNGl1bjBCclE3WFRyZGJwcUxxQldoN3hONGl2Rm93RnlyeGZIN0QzTm8veHI3bHVkcGhGNjJ6blhaOWtVd2JKSGFtMjJVUk5IdHg3ejQ4bXZjZHpTRmgvYjZmUWFqRWFOeFJCVEZhT1V4TTFQbjZORkR6TTQwOExTQ291b29SMWU2d0R5QjFwcFJZcmh5OVFZblR0eVBHS0UvR0hCM2M1c3JWMit5MHgvRDRuNmUvcmwveHRLSlJ4bm9XaFlQcmtvK3BWaFdYVlZwQVZSRnZTcFNjUlBZbHVUS0paNXhBQzFvVDJaRm1ZeDZjOW9HQzU1VDhqYkU0VDRvUy8xWHpPdDBqc0IzaDN1NWhMbGtHRmd4WnBWblhQMysyUzNKZ3dpcVZqNXR5aUpiWFAraEU1UXdKY2pHT1V6c2NOQmNsYVNySlpJdFg5VGxoMFV4cEhOZHpiYk5xeEJzV0ZWSzBZTlZyTHZWbHp6OXhSZ0xzV0FIY0dybis4Z25xcUZLMEoxTnZ2Q3gzK1dibi9zREdyNWlmYzhxaTNNdFJBeFJGTlBwZHBtZm44dEs1Nm9KS1JYOVJGSE01dFkyQy9NTERFZnBqQ0JKRElIdnAyMUM5c0lIdmtickZBU3l2YlBMek13TXRWQVhJRTVVNVZpMTdNQkN1dk1mREVic2RudTAyejNpSkNISlNreDdkdU43bW5vdFNIOUtJeGlKQ1QyUFJ1aXhmOThheHc3dlozMTFtZmxXQTE4YjRtU0V4SEZLMnRWWjBrMldKNUN2Wm51RG1PKzk4anBQUFg2S1pqMGtTaEw2b3hHOTNwQnV0MGQzTUdBMGpoQkphRGFhckt3c3N6RGZZcVpldzFNS0pDNURaMVVxbWZKOG4zRWlYTHB5bmZ1T0hzTFBxRUNqT09IQzVSdThjZUVTU2REaThBLytQUjc1NFo5azNGd2t4aXZ0YkhhWnFWeVJsNmlLZmRZYWZxc3M4eUpIYytjNWlYWVA3YlFNVW1sNTdUN1h1blZzRG1taFRyRjFDTVdNcW95TUt6UTYrZnRZS1oxTHBiUlVjZ2h0ZzZLZ1B2N2FsaFJTU21XbnFKQ21tMWdyRDhlakw1UHJON0dPVUtVbXcwWHlxV3F4SnBUeWE5bTN0V2k3UXNoc0x1S3UvWnpoVGFHT2N0ZVMweVRkNVljc0U0UWVvZktoNWJPVTdMLzNsVkF6WTY1ODkyLzQ5SC81VGJZdW4yV3gxV1QvM2pWQ1B4MlVqVWN4dzlHUXVibVpJaVBibkJaNkFBQWdBRWxFUVZUUXdqVWltVVYyTUJpeHM5dEdLVVVqckZHcmVkUnJBVUVRb0xWS0NieE9TUW83dXgxbTZrMkN3SFBZcUNvRFFZcFdLRHpHVVV4L09LVGJIYkxUN2pDS2s1THVrMzBmQmtPY0pQaGh3S09QUDhIQkEvc0pmTTNKaHgvbDY4OStnMjk4K2EvUkdCcGhTQmlHK0RvZEp5VnhSQ1AwMmJkM2xTTUg5N0Z2ZFpHRlZnTWtJWXBHU0pKa0c0cTBMZFBhb3pkTWVPWFZNenoxK0NQVVF5OHpKNldnMmRFNFlUQk12ODkydDg5Z09HSTRIdUZwajlXbFJWYVdGcGlmYlJHR0FVcE1TalhXQ3ExRHhrYTRmT1VxaHc3dXd5Y3B2Qnp0M29qVHI1NWp1elBBMjNzL2IvKzVmOGJDc1ZNTWRTMTc1clJEWjVpb1NwMlh0bklBVkY1b2VSTkFqWkpxTkgxbEVDa1ZCdlhFaVZHYXphcTVDZFZudWRvemk3MHZzcXR5cTgxSUQ0QXpXMkxUWVNaMHlKYXBZa0tlbCs4OU0ySERKSUxwSGxpT0tXR3FKVGU5WkxZWERqL2w2aEdxTWVQMmlaNkRTTVNPUzFKcUt1UUVLNHROQ3JDQ0V3Q05hRVhvK1VnOFJ0cWJmUDF6ZjhDWFB2RzcrUEdJZy92V1dGcVlLeVRNZytFSWt5VE16all0bzVOaUhNZjBoaU9HL1JHRGJEaFdEMnMwd29CYVBTRHdQSUpBcHhESVBBYk1Rb3VKQ0RzN2Jab3pMZXBocXJ4TEN0OVJXZ2tNeHhIdFhuckREMFpqRXBPVzRzWklnZmRDR2Z3ZzVOaDl4M24waVlmWnY3N080dUlDWVZpajIrM1M3N1g1bFYvN1ZXSWpiTi9kNE55NVM1dysvVEpmK29zLzU5SWJiNlFFSWsvaktaWG1FeWp3TmN6UE5qbCs3QkRyZTVaWVdwaWxIdm9RanhHVEZDaXhuZDZJczJkZjU2bkhIc2JYVXZ5ei9IbElURUpzb0Q4WTBlc042UFQ3REFZakJvTVJjWkxRYU5aWlcxbGxaWEdXK2JsWmZOOUhLNGlTaEN2WHJuRnc3eDZRdUtnTUJZL0wxMjd6NnV1WEdPb2FKMzc0WjNuMHZUL0Z1TG1JNkpBNEdrOWNEdE5XMllVUXpmSFhXQUd1K2FDMjBnNm9hVmk3Nm0zdWdpc21iNm1xZDBVWm1OakdXOVh5TlBHYVRKbXIyVHFBajUvWkxJMTJ1cEpFVmVVSDVMSks1NkJRcU1uSlU4VTBNMVZnNWQ2NFNqbGtGaW9maG51WVZFaEYxbUxBMGcxTnJsNm0yUUJ5N2JpcWhEV0lGQ1NnaGlUY2Z2MWxQdm1mZjUyN1owOHoyd3c1dUw2SDBDc3JrMTV2Z09kcG1qTU40amhtT0k3cDlRZjBld09NR0lJd3BCYUUxRU9mSVBEeGZTOHRjYlZqWmkydzFmbkF4a2lLOUdvMDZqUWJ0YXpiVnd5am1ONWdSTHZkb2RzYk9scjRBalNhL2R5cmU5ZDUrSkZUSEQ1Mm1IMTcxMW1jbjhlWUNHT1M5S0F3aGs2N1RhL2I1dGYremE5bTh3bWRTYms5b3JIaDFvMGJuRGx6bHVlKy9SemZmdmJyM0xsK2pkRFB4RVJhb1ZSQ0hCdVVHUGF0TFhQaXZvTWNXRnRtY2I2RjU2Zm1xTTJ0WFM1ZnVjcXBreWNJdE1IRWNVRzBLZFY4R1NGWEs2TFlNQnFtQjF1M04yQTBpaGlPUnBtdGVZSFZsVVVXNStmeGc0QmJ0Mit6ZjIwRlJaTCtMblVxVTIvM1JyejA4aG0ydTJPQ2ZTZDQxei8rbDJsR2dlalMrV2wzbGVKdWlCU3VkbUNDSWFWd250di9yY3dxYTdQbHlIU2xZbm1mb3BvdDR1dUtxbjV5Z0s3dXRWR3JpSVlBMU1kZTJ4VDNCcDdpazduSGFhVXJRQTZIcEdQWCtaV3h2bFJVZTZveXJWWVZ4OTJFYWs5VmRPOEt5MHd4S1ZKQ3BvSUhyUkJSeXdZdHBSTlJtekhlc01kemYvWjUvdWR2L1FZMWlkaS9aNW1sYkxDWG1tazh1cjArUmlBUm9kdnJFSTNHS2F1dlZxTVdoSVNCai9ZVmdlZGhCenM2MmdaVnpoOVV6cU1UeFhhN1E3M1JSR3ZvalVaME9nTjIyMTJHVVZ6R2lXZU92clJmU1poYld1U0JreWM1ZGVvaDl1N2J4K0xpRXRyTFhZdFN0RXFwT0NmRmhIVjNkdGx0Ny9Ddi84Mi94dk9EOHVCVlpjeTF5VzZLZnFmTDFlczNlUFhsMS9pcnYveHJudi9XTnhrUFUxR1QxdW5Hd05QcG1yRlI5emw4ZUQ5SEQ2Nnp0cnJFYUJoejYrWTFUdHgvRU0vRTJhekZsTG1FT3NPUWtacVpkTTRRRUlqaWRKRFk2ZlhwZExwMEIwTkd3eEdlNzFOck5KaWJiWEZvM3lyMWVsQXdHL0tiOStMVjI3eHg0U29EM2VDaHYvc0xQUGpPSDJWWW0wdTNGNWxVMXUwQlpOS3JNbTBZcml6cmpsS295c1ZVWGx5bThNSTRGMzAxM2NyYW1GVmhwYzZBUjVnU1ZwalRsS1dZblVtbEo1SHFoZnY3cjZaclFHWG5pMXY3eG9LMzc0Ujc1THg4QzRQc0FCQUJVeW5ETFN1R1BhbTgxMWxaMVdGUERGaXE4Z0dIMzFlMURPU0JDV2xKblByejh3WmZ5ajVLY2dHVW9lVXJPdGN2OE9uZi9pQ3ZmL3NyekRWcTdGdGRTVUdZcE91NTBUaWlQeGd3R0F6eFBVMFlocWtQMzlONGdZL3ZlYTU4VXlianJKMUZVRmErYUM4bDRXeHNiWk1rd21BMHBqdm9rVWdGTXFZVVNaSWdDbzQvZElxVEp4L2s2T0VEcksydEVZU2hreFFreHBRdXpvTHZsMzUvZzM2ZkcxZXZNeHdPK2I5KzVaK3h2TEpLRUlTWkQxMUsvNFFxYnhDVGJUS1NPR0ZyWTR0ejV5N3cvQXN2OGR5M24rTzd6MzJMbVdhRFZyT083L3Q0dWJ2U0pNelB0V2pXQS9hc0xQRGcvWWVwKzZDU2lDUk9za3lIN0hlaHMxeUV6RTlRc0NjeUpGcWNKUFNINlRDeDF4dlE3cVh6Zy9GNFRLMVdZM1YxamRXVkJWck5Hb0d2OEx5QVhqL214WmRmWlhOM1FPUG9ZN3o5WjMrWjV2cFJodUs1c3l6TFNGTThQOVlxU2xWVXE3WkFiWEw5bWdmTldQbVlrK2JiQ3FoVlZlVDRGZHU4S3pNcy9TaVZTSFhsTURSVUtaZkpseElpcU45L2JVT1VUVW1wNnJpbktIT0tYV1MranRmYVFYZW5KNnF1M3ZXV3NVZE5jUDRueGhoVlBKZU44YkowQTlVS292amFlVGtzbEx0KzY5YlBhYXo1eXRGa1MxeHRFdXBSaitmLzhrLzV3bi8vSGVqdnNMNjJ5a0pyaHNGZ1NMZmZwOXZ2b1VVUmhBSDFETHdSaGo2K1VtalBUMEhweGJyR25qSFk0WkcyR1VKakRJekdNZTFCajI2dnozQVFaUWFvMHFlUmlKQWtDY1lZOWgwNHlHT1BQOGFKNC9leHZyNlhXcjJKS0VVVWp6RW1KZlBrVko1VVUyK3lZQkl3VWN4dXU4MnRPM2U1ZlBraXQ2NWZ4OFRwOWdFRkJ3NGY1dkVubitUeHh4L253TUg5TEN6TXBYcC9wVkY0eGJRNmYvQjFSdFZOMjRXSXUzZnZjdWExczd6d3Q4L3o5YTk4bWR2WHIxSVBRMExmVDFkOUNIRWNFeWNSNjN0V09IWmduYlhsZVpibVoyaUVQa2tjZ1VwTGVVL3I4bDdVRmhPQkxOUkQwaFprSENYMEJ5TTZuUjY3M1I3ZGZsb2RDTUxpNGdMNzkrMWxlV21Kc0Y3bnpObnpuRGwzaVZGOWppZmYvNHNjZi9vOURGU2RSSG1XaDZCU3RjcGtVVHdkZE91bURsV3pMNlRxYzNHOExhcXNSaVpvdi9uRlp5bHJIRjJjdUhKaXBTYU1lN2JHd0prQjNLdHJtWmlNQ2xYQS9mZkREdjRmL1NXVjJPZnAxWUJ5SkpNbHFVOU5ZTUZseXZjb2xweFpsQ0x3TktIRWRLNWY1RE8vL1p1Y2UrN3JoTDZtV2ErbHUvSGhNSHRSRTJaYkxWck5lcXE2ODhxTnBKNnlNY25iRTZOc21hWUd2QlNuM1U5dnIzYTNTMnpTQUZESk10NlN4S1NDS1dOb3pEUjUvS21uZVBEQjQremZ2ODdjM0FLZTl0SmJYbFV3NjluRVgydU45anlVS0RyZE5qZHUzdUQ4dVF0Y3ZuQ0owV2hJdmRta1VhOFRCQjVLd05NSzMvY3hDUEU0b3RmcmtZaHc5TDc3ZVBycHQvSFFxVk1jT25xVW1kWXNTaVdZekNLY2wzdXF5UGNyUDU5K2Y4RFY2OWQ1N2RXemZPTXJYK0hacjN3Rm9pZzlwQUtQSUorRmlCQUVpa1ByZXpoeDdEQjdWeGVabTYzakFYRTBUbkZxWWpLZkFZaEtzcGJHTHhwbXlYb2JJNG80Rm5xOUFiM0JnSFp2eVBiMkRwNm5hY3pNc0x5MFFxOC81TXExNjR6eFdYenc3L0RPbi91bjZPV0RqRlJRa0p2U1BidFVBVDFUK2FKT3VlNXNtdFRVZDBTWTVxMnBBRHNyRzhQcWY2K3FiY2s5TVBzbFhsOHFhZDZTSGdCdkFrMmRjaHBVM1JGVHZuUDVQM2pycDdvQXNhb0FOVUZ3VVpPend1LzdBNGdqTXNuVmlJWVpNK0xzdDcvSy8vai8vaDNTM1NId05hMUduVVl0SGR6NVhzRG0xaGF0MlNienN6TUZXY2ZHbzVmNjdXekZranVjQ3hhY1pqQWNaYXkvWHJyL3BveW15dXNGWXd5MVdwMFRENXpnc1NmZndwR2pSNWlmYitGNUhrbGlzajE5ZXFQbkdoT3QzQVRjNFdERXh1WUcxNi9mNE9MNUMzVGF1d1JCbU43QStZcFIwcHM0U1dJOHBRakRBTjlMK2YvYTg0bzBZaFNZeEdDU0dLVjlUcDU2bUVjZmU0UVREeDVuMy9vK2F2VjZWdUs2Q1RuRkprVUVyVlBSMHM3V0R1ZlBYZUE3TDd6RWwvN2lpMXc2K3hvaGFiSndFQVQ0bmtmZ3BackxtVWJBa2NNSE9YcGduWlhGR2NMQXh5UVJTVFJDSkM1LzF6YXRKM3Y3ZE1hZ1ZOb0g1VEVZanJsMDVUb3pzL09FWWNERzNRM2FuUjZkZm85QkRPUDZBdS8raFY5aC9mRzMwL05DREJvdGsweG5aUkZIN2JHQjFUVzR0dWhwajJhMTU2L2tZU0l1OGJKYTZrOTFDdHExdENxdHhrV25NRzM2amNxR2dKWHdpcXFVdEdxYkxkc2hjYXl5RXo5UXhWdGh0dyt1L0hheUFwaEdmclZuTGxWT2daNGk1VlNPM3Q5S25za216elZmbzAzQ2FPc1dYL3o0Ui9qbTUvNlF1Z2ZMaTNNc3pzOFJlT2xEbEppRXUzYzNXVnlZcDlFSU0rR1JzU01FSGZoamprWVRZQndaK3YwQnU5MXVpdWsyYVlxdkVVVmlESjd5TUJpTUpPdy9kSVNISDMyRWt3OCt3UHErTlZxek15U0pMdERrMnZNd2NVS1N4R1ZKTDRMMkZGRVVzYnV6dzQzck4zbjk5VGU0Y2YwbW50YUV0VHFCNTZFOWphZlRGM2t3SEdJUTV1Ym5XTjJ6eHVyS0NvMndoa2tpSG52c0ZIYzM3bkQ5MmswdW5yL001dFlXZ1Jld01EK0xLTUVrZ2xGQ05CelQ2L2VZbVdueDFuZThnOGVlZUp6Nzd6L0c0dElTWVJobUpOM3NjOWE2OUdKSm1iSVVSU051WGIvQitYTVgrZGEzbnVQWnJ6M0xqUXZuYU5RYkJKNkg3MnM4blUrZkV0YldWcmp2NkNIVzE1WllubS9pYTQxSnhwQ2tya1B0WlZKMlRKWm5rQjhRT2F6RTUrTGw2d1Mxa01PSDlwTkVFWVB4bUV2WGJuTDIzQ1g2U2NDUkgvZ3gzdjVUL3hDWjIwT0VYK1Q2MmFsRjdyQ3UwbnFpSnNwVnBlNVIyVlpmU0dzSWIyY0x1ZzVFS3lCRXJLU2ZhWDZZaWRYQ3BBMUJmZXpNcHRpOE1LcnJNK1V5cEZKdHZDNEhmbExkeXl0cmFDSTJHOVVhWHRpUVpTb0dUTmVZcE5RRTlOamFvZHFrV0NsdklVbzBjeFhHYkxLNE5ROUQzWXk1K09KemZQeURIMkJ3NndwTGN5MzJyUzNqNlRMMGRCd2wzTjdZWUcxNWlkRFhFNjFKT2MzWENKb2tTZWlQeHZUNmZicjlQbEdjRkhwdTJ5cytqbU1XVjFZNThlQUpIamp4QVB2MzcyTjJ0b1h2ZTluaG9yTlRMYVZQaUU3bHJDb0x0aHhITWQxT2w5dTM3bkRwOGtVdVhid0lScWlGTlh6UHo0TEhESklZaUdOa1BFYjZmV0tUY09DUlV4eTUveGphODdONWlzSWtFVVFqL3M1Ym55U09SMm13cXZJWkRrZjgrZi84UFAyYk4vRmJzK2laR1ZUZ2syUUhrcGNsOEtiMjRDRjc5dTNqMFNlZTRLR0hUM0hreUdIbUYrYlJ2dStnM1BLQmF6Ni9TUU5MWU5BYmN2UG1IVjU5NVF6ZmVQWlpYbmp1bTNTM05xazM2dmhleWpmMGZCaVBSL2dlM0hma0VNY09yYk4vYlpsV1BZMGhTNklvODJtUXpTd0tMV3VxcHRRK1Y2L2ZaaHhGM0hma0lCQWpRRzhRODlMTDU3aTFzWTFlT2NTNy90Ry9aUFdCeCtnVElIaGx6eThWczdxeXNabVQ5M0VCeGJIU2pLdVMrMnA3bS84anJaV0xyUmZiMENNRk10MG9WL0duS3FWL0ZYU2pMTkdlK3VTWnJXdzVWTEh4V2xGRVVvUnJZVTNLeGVwRDNJVzdxUXovUkhKVGhEaFNZbVAxSTBybFJoWDM3UExzTERWRk1iQlRSanROdmtVR2N6aUF4a2hoNzhwL1BsOWlhRy93VjUvNUJGLzZ4Ty9SME1LaDlUM3BMU2VtYURZR296RmIyN3Vzcml5bTZDMXJ5eUZaQ2syY0NNTlJSTHMvb05QcDB1c1BNS1M5ZERyUlZvVkp4ZzlxbkR4MWlsT25Ubkw0eUJHV1Y1YnhmWjNKYmswNXpCR3JWWkZzeUtxRVhxL1B4cDBOTGw2OHlJV0xGK25zZHFtSFFTcUswV21WNEdYR25XUTBadEJwRTdmYmVJTUJNMFpvS2lHZWFiTCtRei9FL21OSFNaTFVjV2ZFa0l4SEVJOTU2OXVlelBieVFsZ0xVV2orK2xPZm9YYm1OWklvWml0TzJGR0txRFdMdjdCQWMzWU92MUhIb0lpU21DUXhhVnNSUnlSSnpQM0hUL0RJNDQ5ejh1UkpEaHc2eU54Y0t3MXF5ZTNOYWY2UW80Zk53MXAzMjIwdVg3ekk5MTU4aVc4OCt3Mis4Wlcvd3ZNOEFpLzkzZnJaeWxHU2lKV1ZlVTRjUGN5UmcrdnNXVm1rVWZNd1NVdzhHaGVXTUtVVW5xY1JwYm16c2NQdDIzYzRjZndJZ1dkUXlnTVZjT242SGI3M3loc01WTWdENy9sSm52alJuMkhVU0tYRXJ0N0drZ3ZiZ2hjbVZXclZseThIRFphK2ZTbms5dmFscWpJdlRQN09sUmthNWI5ckpsZ0VVNUkyWllySUtGODVmK0tzclFQSXdBUlNZYUdva3Jsbk10elJ2YW9ObWNJcHNTZW5FNGxGTnRTck12R1RLZisrVXgxWUZZT1dFdVJqLzJVeXNvL24reUFHUHhseis4eExmUHcvZllBN3I3L0MwbXlEUSt0N0NUeWQ2K3RBS2ZyOUVZUEJnS1dseFFJeGxkNyttdEU0b3BmWlg5dTlIbkZXVnFRRHUvUmxqK01ZQXh3N2ZvSW5uM2ljSTBjUHM3NitUclBSU0k5VVl3cWFjRzZnU1FHaWFkK3RQWS9oWU1EZDIzZTVmUGtxRnk2ZVQxbi9uazlRcStINVhyNGdRK0tZNFhCQTFPOWp1aDNxd3dnVmpRa2xvWWtRSklJMnFhVzNOOXRnejN2ZXc3NzdqaU54T29OSWpHRTg3RU1TOGZUVFQ2S1M5T2YxdkFEUDgvbnFwejVONi9STEJGRkVMSkJvemNBUHVURWNVV3MyNlhzZW8rWU1lbllXdjlFZ2JOUlJHU1pNQktMeGlHNjNoeCtFM0hmaWZwNTZ5MXQ0NE9TRDdEdHdnR2F6bFQwNFpzSkJLZ1dvUm9qR1krN2UzZUR5NVN1ODhNS0wvUG1mL1RtdnYvSUtvZWN4TzlNazlEMTgzOFBYUXVEQjZ2SWk5eDA5eU1IMU5aWVdaZ2s5VFRUc2s1aW9jRnJ1ZG9hY3UzQ1JVeWZ2WjZZZVpqa0dQdDFCekFzdnZjcnR6VjNDQXcvd3JuLzRMNWc3Y3BKeEppVzJWWnJLcVk0cjdJQkszMjFyL0tlTnJDYWVYM0VWZlVaVjhyZlZaT3J4dEJYajVQZFIwb3pVSjNJZ1NPSHpTaWJCeXNWT1ZHTWt5VTV0Sy80cVJ3OUxxYXhXT1pkTnNJWmgwOXFMQ3F4VDdqRjl6TDYrVVpUUno1VVVuNm80d242SU5BbjBkL2phNS82UUwvNytoL0dqSVlmMzcyVmxJZVB6WmFocWxLTGRIWUFZNXVmblFDQk9FZ2FqRWUxdWoyNTN3RGhPQ2g1Z3ppVXl4cEFZWVc1K25pZmY4aFFQUEhpY2ZmdlhtWjliUUNzaE1TbVIxOHU5L1hsUVNCYi9wQldNeDJQdWJteHk0L3BOenAwN3o4M3JOL0E4VFMyc1pSNzh0TEx3VUVnMEl1b1BTTnBka200YlAwNm9HVVBkSklSS0UyTkFEQTNQUXlXbU9KeDdzM1ZXMy8xRDdEOStuTVFZbEVtcmdORndnSW9qbm43NnFiVG1VcWtmUVd2TjEvN3dqNWo1N25jSnNnd0FyWVNSOXJuYkg3STgwMG9QRmxGME1IU1VabFNyb2VibUNXWm44Um9OUkd2aVRKTWdrcjdNbytHSXhzd3NiM25yMjNqNHNVYzRkdXdvYTN0VC9RTG96RXNnSlRRUlE1S2o1eFZFNDVnN3QrN3cycXRuK2ZhM251UExYL3BMdWpzYmhMNVBzeGJpK3hrTk4wa0lBNTlEQi9aeDlOQitWcGZuYURWRHRJa3hTY0k0TXB4NS9UekhzM2p6dkk4MzRuSHh5blcrYy9vc0kzK1drei82c3p6MnpFOFMxZWNSclIxeW1LNG1VazNabzZtSy90OGRZRTh4OGhma1hsdWRXSjB4dUFlSEtkeXIxVXZmRFQxVlJZU1pvUDdnN0tiWXZ1VnFIeTk1V0pjcWUzWmJHSVRJSk5tbjBzKy82YjVRS3JBQ3BxdWM3SFJVVGRWUVZCQUIzSU5GUVMzMDhPSVJ0ODU4ajA5KzZOZTUrdktMek5ZQ0RoL1lTejNRcGRBcCsxQjNPMTM4SUNUd1BmcURFVHZ0ZHVyU0U1QXMxOUJrQTdqRUdPck5HUjQ0K1JDUFBIcUtnd2NQc0xxeWpPLzVKQ1pPKzJpdE1wV2V6akJkMmE1WEs1SWtZbnQ3bDFzM2IzTCtqUXU4Y2U0Y0F0UXp6TGZLRW0rMVFKS01pWVlqb200UDNlbFFINCtZRVVWZEpLVVVaTTVOTDV1TERMTXBTTU5MMGRsNTNIeTdWV2ZsM2UvbXdMR2poWHZQbUlUUmFJZ2FqM242N1UrUk4zR2VINktCWnoveldacmZmWWw2bkpBdEJSaUp4OTFlbjVWbWt5Q2pKSWpPbkp5ZXp4REZyb0ZOZ1g2dGhzek9VWnVab1RiVFJBZCtaa0hXbU1Rd0hBNFlqeU1XbDVaNTY5dC9nRk9QUHNiaEk0ZVlYMWhBK1RhaVRxeGhYRFppbEpUaDJPc051SFRwSXQ5OTZYdDg5Y3RmNWFXLy9Sdkd3eTVoRUtDVlJ5M3dzMmJTVUsvN0hEOTZpQ01IOTdKdlpZRjZ2YzY1ODFkWm1HK3laM2tlaWtzT2Ruc2ovdmFsMTlqcURnbjNuK1NaZi9JdldUcjZFTEdxTVloSFpUc3V0ckxVYmxrcjNnS3ArSDd5L2IyZGJHd2IyaW95LzJvNDZwUWRPbFZUVDhubVZFNVZBYUErODBiYUFtZ0hsbDI2QU1sRkhwWUNVV1JTSUpUZnRGV1JrQlc0bmpyV01qU1VyVllTUzdTVEN6MmtPTEdrNnA3TTRJeGw4R2NlU2lqaVdvVTloTnE0eC9OZitoUCs4RC8vT240MFpPOXFtbStuaTRHT2tPQVJ4NGJ0M1IzNmd6RlJsTjRPMnROWmI2WXk5MXFDVWg1SGp0M0hRNmRPY2V5K1k2eXNMTkZvMW9uaXFHTHRsSEkvYmRJQmxGSXdHby9adUx2QjVVdVhPZi9HZVRxOUhyVjZuY0FQZ0hUam9JMkFNVVNqQVhHbkM5MHU0VGpDRTBGRkViTW9mREY0U0FwMVVOYWhuTVZxajhSZ2xORHdVdXlKbC9YVjdaa1psbjd3SGV3L2VoOGlDVXJyVkFBa2htUTA1UDAvOWZmWTJMaEZ2OWZIU0Nvbyt0Yi8vRHlONzc1SUkwbUtmY3RZUE81Mit5elBOQWd4S0NWb25TY3NwYUlsWXhRanBlaDdBVmU3UFJyTkpwSHZ3ZHdjL3NJYy9td0xGZFJBNjR4TXBFamloR2cwWWh4SDNQL0FTVTQrY29vVEQ1emd3SUg5ek13MnMzbEkvbXg1RnVJcWc0bUlBanp1M0xuTGhmUG5lZUg1RjNqMmExL2p0UmUvUTcyZUh1eGFhenhQRVhpS1FBc3J5NHNjUFh3RU14Nnl0dEppLzk1Vk5Fa2FhUWVJK0Z5NGRvZXpiMXhpNE5kNDdIMi94TWwzL0FoUmZaWkl5aEd6SSs4dUFudlN6eitQSkM4SlMxU1NwcG00Z08zRUxsdHA2TXFIeS9mTGJrSEtqWU05a0xSRlFOblgvTnk1TFZFNVR0anh3YVcwSEpQWldWTVJUSm02bWl2eThqOGdKd2FuaUhETFJHRTdHeXhHZW83am0xUlNWUkpVN0kyb1V2Y1FLSlhIYXZyL0docktzSDM1RFQ3N3UvK1ZjOS8rS3EyNno1SDk2OVREa01na0RJY2orb01oN1Y2WFRuZEFIR2RyTlpYbTVlVkR0U2lPMmJQL0FJODgrZ2dQbmpqTzN2VzlMQzRzWkhBZFU2d3NwVkRwcFpMWGZMWGE3dy9ZMk56aTJyWHJYTDU0aWR1Mzd4RFdhc3pVR25pZUIxNUdWMG9Tb3VHSVlhZURkSHY0dlFGaEV0TkFDREQ0UUpTazMyTmRlY1UrT2o5MGN3bXRDQmpSREJLRDBVSkRLM3dsZU5ubjJtbTJXSDdtR2U1NytCU3RWb3RXbzQ3bitYUjJkdG5kM3VUWC9wOWZRMmtZamtkMGRqdHMzNzNEbi96VzcxRC9tK2NJeGtPTThraVVacGhvN3ZiVEE2Q0c0R2xqOFFyVE14bVRFbTJHQ3U1MCsreGJtQ1AwWUt3MFBReHROSU93aHN6T28yZGJlRE5ObEI5Z2dOZ2t4RkZDRkVlTUJrT0NJT0NCVXc5eDZ1R0hlZWloayt6WnY0OVdhejVyQ1hUSjdjMjNOQ1l1QmsvRFFUOXRxODY4enJlKzlXMmUvZHJYdVhiNVVqbzc4SFJhcFVHYVRLU0UvZXRySER0OGdMMnJTeXpPTmxOdW94L1NHMFI4NTZYVDNObnQwenIyR0QvNHM3OUU0OEI5REtrNVhENHA2dmFDK09tVzlFN2w3UG9HeXRhMXpDaVdpZy9tWHNNM3VZZitSZUZLakF1a3VJRDZzNHU3S1R0QTJlUlNLZm9UayttK1RYWTdtM3k5SkhrbGtJY1FLSXRIWG1iOWl1TVhuSEFaTVpuSFVvM1AxcW5DeTJMNTNVT0lpT2NweEVUNGcvK2ZzRGVMc1N6THJzUFczdWZlTjhZOFprYk9RMlhXWE5WZDFWME5pa00zUmN1MEtNb2lBWEV3TFJpV2JNaXdiSC80d3dQZ0x4STI0QS83eHdac2dOQ0hUTW1DUVZtVWFabzBtNlI2S25ZMzJYUFgwTlZWbFZXVlEyUm1SR1JrWkVTOGlIakR2V2Y3NDB6NzNCZEpmM1JYVldiRUcrNjk1NXk5MTE3REFOLzkxMytFMy92dC94bDBmSWlMRyt0WVdWcHc4L2lEUSt3ZkRuQXlHcUt5THR3ak1hVXNKclpHcTkzQlp6N3pPcTQ5Y3hVWExsekE4c29TeXFMbHF5RkpDU3dxR05TRmdEQkc0eEgybmp6Qi9idWIrT2pXeDdpM3VZbTZGclJhTFFmY3Nic0pMV0hZZW9KcWVJSjYvd0RtNkFqdHlSaHRDSXJhd2xqMnRtVUM0eXVha1RnT1Fkc1lpUFdXVTM2VForOHdGQ2FzSjNVTks0UTJDVm9BZXFWQnUxWGdxRCtEOWIvMWkzais5VStqcW1vdmFpSU05dlp3c1A4RS85Ri84by9TREo4WnFDYjRKNy81bTdqMjR4L0FuSnhnNzJTRTNZTmpiQjlYZUhBOHhKbTVHWFJaWExaQ0VLQklDa2NsQ0Nac3NITXd3Tm41UGxyUm4wbGdpVkd4d1pnSlJ5QU0yR0RZN1dMYzZ3UGRIcWhWZ2dyalJxSCt5S3pxQ3VQaklYcnpjM2orcFZmeDZkZGV4NFZMbDNEbTdCbTAybDMzeW1JQnN0R01SVUtWV0R1K3hlQmdnTnUzNytIdHQ5N0ZONy94bDNqelMvOGFMQmFkVnVsQ1U3MmxuWUZndHQvR3BYTWJ1SFQrTEZaV2xyQzB1SVJiSDkvQkQ5OTZGOE95ajlmKzdiK0hLMi84TEtyMnJCc0QrK3FXYUhyV1R4a2VKamxOWHloV3ZIS2F4MFptN29HTVhoeGRzT0pvbFRNVVVVaEQ4cEtMbmI5MDkxQ1NaVlVTTmRqWVp3RzFwMWZXMWhGZ0tnbWJRbEE0V1ZnTDFFb1lGTDlNVk8xeG5NZW1ZRUJmMEl0MTNJSlRBNTJuWklPbmlESzlJbzVxMUxzUDhNLyt4LzhlNzc3NUoyZ1hCbWZXMW1DckNvZUhCNmg5VDI1RHFTdzFKbFVGTWdWdTNud1dyNzc2TWk1ZHZZelYxWFcwU2dPUSsxNGlOZXJnRDZjU1hOaGpFZ2Y3aDNqNFlBdTNibjJFVHo3NUJFY25KeWlMbHB0ZGV4S0tNN2VaWUhJeVJEVVl3QndQMEswcWxMVkZZUzFteUJtd3hJY0VLWHMrNUJXTXJVVXQxanNHaDhoeG4xTkhoTkx6OHNHRWtUanZ4UFdaUG5wTTZCUU1ac0ZlMmNiY3ovOENibjc2VlVkeThhZkw0ZDRlOXA4OHhqLzhULzlSQ3Bjd0ROUVYvdWx2L1JadXZQY2Q5Q1pqQUlUS0VoN1pBdDk0N3hhZXVYQUdORHJHNE9RRVk4dW9MV1dmcXlCQ3hZeEhod09zei9aUlVzZzU5QTdIbEI1NkljS1FDM3h5Y0F6cWRuRUNZTlJwZzJibjBacWJRYXZUQlFYNU1UdGZnc21rd25nOFFuOXVBYTk4K2pXODlNb3J1SHoxR2hZV0Y4REdWWU9oelp5MnRpWlVsY1grM2o0Ky9PQURmTy83UDhDZi9QRWY0KzZIN3p0YXRERW9tTkZ0bDI0enFTdjArbDFjdm53SnBTbHcvOTQ5RE1WZy9yblA0Z3UvOFEvQnkrZDhsWnliOEVDTjd6QTFDWENmallXeUFBQkxvcVpvT1dnVzFwT212MnM4emZvMldhZFpSZitDa0dYZ040V2lYU1R4QTBuSVNmY29vZlhsSE56aXIwbGdhNHBwcTVWMWJVSmRTK3hwTEttQWpSZ1d3U3JZdzAwSTRBRzEyZ1pLWjUyQ25vV1ZGbHBTU3dFZGgwenFlN3RQUE5zeStKMy83Ui9qN1RmL0RLWC9tKzJkYlJBY3VhYXVMWVJxa0Ntd3RuNEduM3ZqRFR4ejh4cFcxOWJSNjNTY2JiVTRqdm1rQ3VRUmQwMUs0OEFrc1RXT2pvK3g5WEFiZDI3ZnhvL2ZmeC9IeHlkb3Q5b295eFk2N1M0Nm5SNVFXOVNqRWNiSHh4Z2ZIOEVlSHFBMUdxTXZGaTJ4YUl1Z0VIY2RhN0V3eG8zMVBPOG5WazlpYzljWDhadU95OFJ6SWg4WE4xNWd2dDFDcnl6UUtsdDRQQnJqWURoRXIyQVk4YTJKQUJWYlpZeUtYR2ppclpoQ0tjcis0TFR3WkoyNmpxZDhoeGtkVStQUzBod1d5amxNYkkzRDR6RWVEMDd3YUgrQTQ5SFk2eEVNV0JpMkJpcVFjNW55VXlOVzZVenM1K09tbXFBekh2M2pIQzRBQUNBQVNVUkJWR0s1M1VLTENLUFJNWTZISnpoNkJCekNvSjdwbzdXNGdON0NMRnJkUGxwRkI3MWVHd0R3OW5mL0F0OSs4OHNZMXhhTHEyZncybWMvZzJlZnZZRkxseTloWm00V3hwUTVZWWVBb21Xd3ZMNkk1YlUzOE5tZitCeisvbi93RC9EZy9qMzg2TjEzOGVkZi9UcisvR3R2WW50M0M3MU9HNzFPRzhjVHdUcy92Z1ZZNno0ek1mYS84elc4Yy9VNWZPcHYvUnBHY1lGS0RzSXBQb0JWV0lGVDFWckZkYUVHOFMydnJtTlZIUU5KZFVwMXc4NmNVbnFSS0FLUU13QjJvcTZpWlNoeTFia1J4Q2xlZlZXTEswT3RCU29BaFQ4Rm1NVE53QTNGaEZheXViZWZ6Zno0SmVxOHcwN0duQ1MraGdPdlBZbDBVdHlZTXIvMFZ0bkJUSUw5QlJwWHdFdXZmdzVmL1ZlLzZ6VHB4RjRoTjhIS21UTjQvdmtYOE9LTHoySGozRmtzTEN5NEhuOHk5cU8rQ2xicTNMalRQL2pqMFJnN083dTRkKzhoYnQvNUdOdmIyeWlMTnZxOUxscEZHNjM1dHJ1WmRZM0p5VEhHUjBlUXdURjRjSVJlVmFNbGdzTFdLUHgxWkJVeU9nRmNVQ1JVOUJtRjlvbGd2WjIzRFZ1a3VERm92eUIwaWhLdHd2di9FOE9JZ0dIQlVzRklqWklJaFFMSUpIbzFCSURWVTVhMWpCdEpMMndEbUJyOC9vTGsxR01rSlRrcU5VOXFGSGFNZVdiTXpMUndjVzRGRXhBbVZuQTRtdUQrazJPSEtOVTE2a0R3b3NUbnNFRTlpUlFuVmhMUWtob2RJY3pDb2hLM09jcndHQ2RiSnhoc2JlSEFsTEJ6czJqUHphRTk2MHhTZWFhUGpoV01qZzd4dFQvN0UzenhEMzRmdGJXNDlzeE52UEtwVCtIbXM5ZHg5dHdHZXYwKzJCU1J3ZW53QzBhN1UrRFNsY3U0ZVBreWZ2NXYvaUlPRHc3d3lTZWY0SjIzM3NaWHYvd1Z2UDI5YjZNZWpWQVVqS0l3b0lKUVdjYWxtOCs1KzBPbmxObXhJbkt0czh0elRHUXZJdmZkSURZNzE2RTJFK1lFK3BIM1VBQ1RhaXNFUnRPT1ZEb1gweWtHUGQ0NHhabFZjL3E0bkNYNE9NVFYrSWZIc2tVcERxQmhJckFsTUJnc1FHV3RlMGdpTGRhVno0RWZIK1hHcEJKYmhmM2NVbUtMVHdyb0N4NXMwWHhSS3dGRHpqR3pGNk81c3ZmRm4vNDUvTmYvMDIvalQvL1Z2OEJiZi9ubldPNjM4V3UvK25keDQ4WjF0Tm9kRnpYbHhUUWdRbG0wWVAwSnlUQ0FPQXZyM2QwOTNOOThnRnNmZllTN2QrNkIyTGcrbmhuZFRoK0ZNWkJKRFRzK2hoMk5VQTBHNEtORHRLc0pab1JnSnhPVUFwUldNdkdVbHBKYXdNKzJmYnVscko1REc4WE85dFV2UWxlZHJjM09vR2NJTUlRSk00WUNTQzNvQW1oNUVNcUtnUDJteXBaOHl5WlI0eDluVjFDUlZXRmNGTm1haVEvaUtnaEpFWHhpblV1d1dLQ3VZU3RnVUJUWWt4cUdHSE90QWgwQyt2MHVlak45UEJrTWNHRjVIaklaNFdnNHdyaXEzT0luaHZYT1IrUTNIUnMyUG5iUEZnTm9HUUtMZ0tveFpoaFlZc2JPOFFERHdUNjYrMzBNck1WaDJjWjRaZ1k4TTRPaTJ3T1ZCcjF1RjlZS0h0eTdnM3NmZjRSL01UeEcwV3JqaFpkZXhxdWZmZzNYYnR6QW1ZME50TnV0NkR4TVZFUUVmVzVoQVMrLytncGVmdlVWL01xdi95cDJ0aDdnOS8vbHY4VC84L3QvZ0tvOWd6TlhiK0J6UC9jTFdMMzJISWJpMktiNjlDWlZVYVhEcjBIU2FUcFNCODhIa1ZpNmMrem5mYVJMVXZuNFF5RklzNVBaYnBqaXhLUWluU2JzWDdGdytteE8xa3pCVEZEY3pTQ3ZMUmYvWXRaL0IwTVdKb3p2ck85eklhaUNGWlZRU2xpSVl6NlZOb0trRlloSWFaeFpzakpjQ0R1ZWlqV1NuQW9WS1pRV0dGS0JNeSs5anIvLy9Nc1k3MjdoZi8ydC93b3pNejJBZ1BGbzZQWHh6Z3dqN0xCVlpYRndzSThIbXcveDhVY2Y0YU5QUHNaNFBJRnBPY1pkZjNiT3NSU3RvOHlPVGs0d1BENUJlWEtDYmozR2pEQTZJbUJiK1J0QkdOcktCWGx5R1BlbzNEWmxwUlRNTmF3UDZvQTQ4OUdDQ1oyeVFLY3NRY3lvdU1DajRRaFB4aU1jRmdhUFNYQlNHSFF2WEVKbmZoSDcyenVRMjdkeEVZeVdXSWZiWkFhS1dqdVJRTG9JMmxLaXRjYXdGS1hERUMrMENadXlHMUc1RVpkbHdxT2E4WjJoeGRINk9wNzU5R2Z3eWYzN0dIM3lIaFlERHRDZlFiZlh4bkxaQm50UGdOR294dDd4RVhZSFF4eVBKNmpJQUZ5cXNWcXV0MWZuRkFvQWJSR1VVbUdwSG1IRkF1TjZnb1BqSXh4c2IyTkFoRkczQzVxZlE5bWZRZGxwbzJpWDZIYVhZQXpqL3UzYnVIM3JRNHhHWTh3dExlSDVsMTdHQ3krOWpFdVhyMkJ4Y1FGbFdUcmNpdW8wUml1QXRYTXJ1UG5jTS9qdzd1djR3ci83SDJQUzZXTkNCY1prRkhBZHZ3RnNOSmIzOGJuYVlTeEwxTFp4ekJmY3JZUW9wK2VIU2tMdEdDTEtneWhPRzhSWGtlSFk1OXd5VDVKelVCRldEb045Lys3N2JQYUFsRW1KdXVFRGxtSlFXd0lacDBVM2xrQzFBL1BJMXBoSUlnM1VjRHQzZUcxU2lTdmFIQ0diZFlwMkxwTXNuQ1NLR0NpTVhDaGpYZ0lDVTdSaGl6WmFpeFpVdE1HS0h4WGU5M0IvSHc4ZmJ1SFdyVnU0Yy9zT1RvNGNBYWdvUzhjMWJ3SEdBREllb3pvWm9Ub2NZREk0UkdzOHdSeVJPMjBoWUxFb0FqY3l6TUhWN05adEFDNkFJOU5ueDNSaDkwME5HTDJTMFdtVjZIZzNJVEJqd293VEFQdGk4VkJLRkpjdll1YUY1M0hoNmhXc256MkxtWVU1UExqL0VMZmUvUkcyaVZEZi9qaFdBRllGbVRKWmxlSXd6YjRLbnZHSm5lMU1TbUtWSUFsZGRsd0RHNmRDQXd2ODRNRU9xbGMrZzk2Wk5meWJ2L0gzc0xDNGhLT0RQZHkvZlJzZnZQc3VSbC8vSnI1Lzd5T2NheG1zRklRWldIUmJGbWM3QmRibVp6R3VCVWZqQ2p0SFkydzlyc0cyY21XdkwyclplcXF3MXhBaysyd0xXQUZiUWNzS0Zva3c2LysyT3E0eE9EN0NBUWc3MXFJOVA0L3UwZ0xNN0N6S2JnZEZpMkdvUkgxMGlCOTg0MDM4eFZlL2hMb1dMSyt0Ty8zQzh5L2k0dVVMV0ZpY0F3cmxITTBFNnZRZy9VVlVwdTAyUVZzN29OQW1BbENVd2ttSWw5TlpGVW9aNlAwZlV2cnZ0S3RWUHU3TGFHOEtNN0JwNkNDU1NlMGtaQmtJc2hhbENHaGc3Ukg2Nk0yVzJZTnhGb3hIM3UvTmdVWnVkaW9HSU92Sy8vQndjQXdHVlI1K3A3SjlxYUYxRnZXd3B2R0doY3B0bDlUb2FFRUVFYU8yM2hlTm5KQ0dER0Y0Y29MTnpRZTRjK2NPUHZqZ1E1d2NuNkRWYXFQZEtoM1MyKzFpT0hRa29QNU1INzJ5UUgxeWpNR3RqekJiVldqYkZLbmNZOERFZmtiMWV4S3drS0JPRFA1N0taaENQQWhrQUhUS2xzTWg2aHJMQzNQT0tjY1k3REhqQklRalltQnBHWmRmZmhrdlh6cUhMNnl0b0RjN0N6WUd0ZCtVSitKd0dPdEpKOFpQSjRKdGxUN2RYZlhKVXg0TXFUcVYzT1BPUVkweDhZbGsyZ2VDbVRDcW5QeVd5VzhNSUpqQ1lINXhFYk1MQzNqbWxSZng4Ny95eTNqeWVBLzNQcm1MMisrL2orLzg1VGNnRHpjeEQyQ2xaVEFqTldaYU5WcTlMdTd1UE1JTEY5Y3hHWi9nOEdpSTBmRVFGU3lZQzBmMFlZb2hHdGJyM21PVkpVRHBrZlkyYXZRRW1HZENlVExFYXFjRjJqckd3UU9MN2JLTjR1eFpWNDJSd2Nsb2hMSXMwZTMxVVIwUDhQYTMveExmZnZQTE9KNk1zWDcyUEQ3MTJkZHc0OFlObkR0MzNqMW5YbkZaMTNWUzdOa0FvbnNrUHVobjRxbXNqV3lhb1RSV0tRUXBmcGRtdHBNR3dxa1JJVUxLQ1lnYWhxTWhTcHpKdFlQaElDMG9vb3c1R1NFRUJRU1hsVWdwSmlRVFI0anp2ZU5hT1Jhekx5OGR1aDIrbEtGYzdoUTFBekdHV3dXc29lSDU1eVduUkJaTTVxbUdJeUhnUkZSQ3NPVUMvL3MvLzEyY25CeWoyMnBqWnFhUG9pd3h2ekFQQUJnY0hxRFZLbkh4OGtXc3JXMWdkbjRXaC9zSDJINndpVmxtZlBMK0I1aURFMENkV0VFTjYwOUNTWXNuWENMMm5uYmVnanVNL3dyL2djdkNPK0NVTFdmdVFZeXFxbkZRMTloa2cyTW0wUElTTGovL1BLNWZ1NDZ6R3h1WW1WOEFNVEN4RStmckI2RHlpOStLQldwQmJhdDQvNWdaUlNqVC9TWm9QWEFZZ0ZxSjUwVWQwNWNDQUJmT0ZpSDJZMDZLVVZneDY0RmMva0RvQmRpRGRoTUVMS2lDU0JXZkZjTU1NaTJzbk5uQTZwa0wrTlFibjBQMTY3K09SdyszOE1tSFA4YXR0OTdCKzIrL0JmUG9BV1lFT09wMllXYTZXQzU2T0U4RXFXc01oMk1jbmd4eGNEakEwY2tJRlJsWUVmK2VBcXB0SWdSUjdyTGNBV0dXTE9idEJHMFNMRE5EUmtPY2YrRjVQTnpidzA5KzRXY0FOdGpaMnNIZE8zZng4VWNmb1YyTk1EdlRSOWUyTVRyY3c1Zi84SS93Zi8wZnZ3dVlFak96YytpY3ZlRWk2anlKS0V3MkNDb09UNVhkUWFnZWdkWHNISlk0dUNPa1FCckt3ai9UaGh2L3pMdTFra3c3YVFzYTZjUkUydFU4Wm1RV0RvWFZ4RjJkWG1LVG13ank4RTlCN1UwYnlTVzJTSTJDdllwTTNLNFhTQWd1a2dweDdFRWVPSXliQVp0RURjNVVnNVN4bVVDY01aNlNydG1Wc093M3NqZzdMYnI0OS83ei93YTMzL3NCZnZpdGIrS2pkOTdDOXUxNzZIZmI2TFRiNkhiYklBamUrTndiNkhRNkVDNWM2UnpjY3EwRHpJei94c3ppZWRqSitvcDl1UitxRTFoUGlRV2hZeHdZMWk2Y1pMZUNZRVNNWXlIc1ZSWDJwUUt0cldManhnMWN2WDRkYTJmWE1MZTRpTElvM1JaTGdKVUpiQlhZZms2U3lzSVFXNkdDeHlXcUdyYVdxQzYwY1FQVllpMFYycUxHVkdrV25lS25SSEp3S2hLOC9EOXRFSG9CTGlDVWFtV3hIVmhBdGE4K0dCQjJjbHV3eDVrc1RNRllPNytPOVhPcmVPT24vaHJHd3pGMnRuYnc4WWNmZ24vd1Ezei93L2ZRZWJLRFZVTllMa3IwZXdXV2V4MnNMODZobmt4d09KeGc4dkF4ZGdkSGdIVXNWVksyYTZFaUNyNEFyR2ZsWXNFK2s3SVd4MHZvOXpxNGNPa2NMbDQ2aHl0WEx1S3JYLzR5am82T2NYUjhnc0hKQ01OSkRlck9ZZlg4ZFZ5NCtSSXV2dmlhd3l6Q21lejlHeUhaRTl1WXJJU2FLbmtGc0IvVE5hbCtKdWhlZkJvU05UTExJb2NDbEdqRzJ0aEhDWXJDRGhINUhZb2pVRUNWR2trMktMSGZZUlYrbUxwbzYwK0RCRUFVYkx5MFZHRFlkYldvcldmeGVaMDd1NFZpTWdFUks4TURPZDE5TEVSOXlYU0dnczQ3RStXc1FNU3dUT2lmdTRJWE5pN2k1Yy8vV3hnZVBzSGU5aGEyN3R6R0J6LzhMbTcvNkFlWTVRcTJybEJiN3ljZmpDR2hYVmRKVFM0OGZpcVU0QjF4QzhCNDRLN1g3V0R2K0FpejNSNzZuUmFHUk5nVHdZRllZT1VNMW03ZXdPdFhybUQ1ekNvNjNTNktvdkFGRjZXVDNXZjVpWFZKTzhRR0VNRmtYR0V3T01MOHdveGJaeUlRYnhSYVcxSDVBR0g4UkEzcFdYTXNxL0lkR3dhVUZ1bFpnRmE3QmJROEJyR0lMNGNyVEtvYTFsYWVGc3NZanlkNHRMMkQ1ZVZsdEhzOWh4TzVyU3RoTTRiUTZyZHg3c29Gbkx0OEhqLzljMzhkSnljajdPNDh3dDJQUHNiSDcvd1FQLzdSMjJqdGIyUFZGRmhzRitpVWJTd2RqOUUyQmpmV0ZuRThIT053T0hhQklxTUtCTWU2Wk1Pb0NCNFBVY2FzUW80WDR1bmNFbWh2dFFQOWFrdDRkRGpHeXBVWDhhbG5uc2ZhNWN2b3JaeEZhMllPQW9NS2pLcHBKUzdOVUpGVFBBQzFGZjFwT1hYSUozS3BBa2diYlBSZVRQT3dLWFp0QUhBVFJ5QVg3b1hOb0NBcmlSZE1LZm83Z0JiQmxFQWlMOS9STEsyNDZBanhvMElpUVJGZUlOUkE3TXd1UXVscEk0aVJMZ2szUE04eVozUWg1Y2lhUDhnaDB5NXhUa2tob21tenRFUmcwNEl0MmlpWHVsaGRPb3VWR3kvaFV6LzM4eGpjL1JELytEZi9TOWphL2E1T0E5WWMveEFRRWRnTDdNdFNOb1JXMlhLc3Y2SUVETU1hZ3lNbTdNTmlVQllvNStaeDlzV1hjUDNhTlhmQ3p5L0NsQ1ZxNjByM0tKVVFQNFh4Wmh6TUFqYU04V2lDUjd1UHNiVzFnd2NQTmpFNFBNS2puUjM4Ky8vaFB3QVpUdmx4L3RMWVU5cWlhUWNtUkU2cXRsR2phRjh0L3ZSZ25hNmdOaFBLYmFYZ1FNNXdta0tOckFZSGgvZ2YvcnYvRm91TGkxamIyTUQxYTlkdzZjb0ZuRGw3QnJPenM3REVybm9ET1Y2Q1YwNTIreVhPOTJkeC92SWxmTzRMUDQzaHlRbDJIMjdqN3ExYitPQjczOEg5NzM4YlEycGhwbTl3VUxiUkswdWM3YlZ4Zm1rR285cGlYTlU0R281d2RIeU1vNW9WLzBGUSs0ZS9hZEF0dGdaczdmd0dXeDM4eG4vMlg0Q1hObENEVVlNaFpGRDdIQUZkV1lsUVhrMDFuYXliQ1QrQlNZcGtwNS9PWDIyelo1UGRYWllqSmxNdXc1UTVCYkVxL2FmaitrS0xEcmhrSjFnYmVrUkUvL2VvWmZBSUlxdmtVa3ZzeURyQ3NDd3FLdHd0K3RvcjBheW5kUmp5M0Qzcjl5MTIvQUZCNlArRCs0MzRRQWZLVGNJSUdUMkNsTWU1MWRrbEFhV2xQSTdJU3VWWmpYNG1Sd1pqQXFqVGhSQTVFcEIxOGljeXhrbC80Nkp4QUtnQlVBSW9EV0YxcGdkRGpOb1lWR1F3Rk1FaEFRTVFUam9kbkgzMldieDgvUXJPWDdyb0lyK0xBcFZ2Z1NvUXhwTkp0R0N6ZGUxbjh3Um1ZSGh5Z3YwbmJrSng5KzRtaGlkSDZQYjdtSm1keDl6Y0ltWm5GekFjRG4xaUx2a2dFeVhBMFhiVm9iZW5aRkthaDFONHJPSVUvemdkUFpVczN4TXpqUlJieXZvL2RxVEV3Qjh4SUhMR29vdkx5emgvNFFLcWFvSjMzL29odnY3bVZ6R1pqTEcyZmdiUHZmZ1NybHk5Z2pObjF0SHJ6L2ozcVowb2k5bnpOUVR0WGdjYlZ5L2o3TlVMK096UC9oU09Cd2ZZdkhzUG4zendNZTY4K3k1MjN2bytsdXdRYXlWaDJSak1rOFVhRTJCckhJNEUrei82QUV0ekR1Q3JLNGRoa1MrTDRhZFhKQ0UvQWVCV0I5U2R3d2xhVUU1Z2dOVFRpaFlSWk5oNnlLM1FoMGg4UkNrdkdNVG12cG9lRTVPWTFlRXJPdEtmSVowYXJITUx3dG9JempyZW50OTZ6a3NLekUwVmR4RWlLNkY2ZllFOXRaZUpIQUdyUmpHSnF4cG5tSVlKaFJjTDFiQ3dsc0hlWkNLNW12aWRLdnczazBmVzJYUFVrWjg4bWE5aHdqNkpKWTZuTWdlaVdHbHcxdGFFOHBqOTkyQUVUYndiaGRhMUk5RWJkdXk2cm1Fc3Rkcm9GZ1dPcXdyRHlSZ3pyUUxId3RnVWk4Tk9DMHRYcnVMS3N6ZXhjZUVDRnBlV1VIYmFIblgxTk9xcWpsczBBeWg4djJqSVlGTFhlTFM3aDd2Mzd1R2pXN2R3TkJoZ1puWVc4d3NMV0Z0ZlEyRktERTZHMkgxeWlNZjcyM2g4T0lBOU9YS09TRXB5bXZzd3FBQVdTUk1KRWMxU281Zy9ULzQwQzFXQ2piQjZvcGtTY1d3UldhSFQ0a3E3V0J5UTl6NE1lWVFDeGllYmovRGU1aTVXNW1leHZyU0FsYlVOOUxzZDJIcUNkMzd3QTN6aksxL0RlRExHaFV1WDhOeUxMK0hxTlVmUGJyWGF2aVZ6WTB3YmlFZUcwSnVmeDQyNWVkeDQ4VVhJMy82Yk9Eb2NZUE9UTy9qd1IrL2hCOS81RnNxSGQzSEpUbkNSRFdiS0dsMFdYRG0zaGk2djR0MWJtNURCT0M0NlcxV29KcFVqaWRrS0xFQ24xUWFqU0thYmxDcmpLYVlmcDRVdlNJWVZ1VUc5MVRFai9qYmxWcmFod2t5cXluU0NKMUJRdHdIVU1DbE5CMkZjSWRxckhBcmY4WnROY2JyZE5xVit3UFVDa1dLb2JZbmRSelJ1alZuckJTd0pCS3paYlVaTUZEY045c0tNT0o2U3RDaFRhWTlNTkVUY3pENUZITDlGZ0l2U0RBR1NkbUVydFQ4dGRhQktrRFZiNzNwalhQL2VhMk4rYVJrTHN6TjRzck1GaG1DdUxERlhsbUN4R0lvUFBMR0N1alM0OW9WL0E2Lys1RStBeWdMV2hteGFsMXBEd2M4VDNxZlB1TTJvR2srd3YvOFlEeC91NFA2OWU5aDl0SU4ycDQyRmhVVmNPSDhSdFFBbnd4R2VIQXp3OGVZZDdCeWNZSWpDblVpbUJGcUxLR3Q0UzNCSElkWm1xTXFUeWQvRFFQZjFDcnhrUU9WQkprazJjZHBYUGxFMkk5QXFuaHdFTDV1T3ZJNVlNVkRVNjVNYWkwN0tQZzZrZzRPQjRQYmhBWXpzWXJZVW5GbWN4ZkxDREZiUG5rTzdaY0FBM3ZuZWQvRE5yM3dKNDBtRnkxZXY0L3JOWjNIcHltVXNMeStoYURtR3FSdXJzbytSSjFBQnpDek80N241bC9Ic3E2OUFmdlZYY2ZqNE1iNzAyLzhMSnU5OUQxU1AzZUV5R2NPd2dLd0RBWTF4bi9YNVQ3K09xcDVnNS80bWpnWUhEcWN5QmxaWmFoTlJockF6MklHaGtqditFVFdDT1VMclRNbjVLYkQ5RW4vZkUzN2k0ZzJncHJMYTVlQndMTWh0QUZ6bENPVm9sYXpCMlZQcldYMzJRQ04ycjExa0h6cjYzRGRvakJKT2QzYm92aTVGRkJPUFBJdVB5WUV2eGxvVUhvY0s3RGRMN0ZsUC92ZFpvNWMrOGNWdkxkSHRSd0VoRkJTRmt0QnJJTy9Cb0dPMmtOSjVBdHNSUGg3YlV5Rng5ZW9WekM4dGdBdUdNU1YyNmkzWXVvSVlKeUlTYXoyR1Fka09QTHU0Qkc2MXZkMlhqWUJnakRtM0RyUTcyRC9BOXZZT0hqell3c0grRS9UN2ZYUzdQZlQ2TTNqbXhnMk1Sa084Kys2UHNITm5DenVISXh4TkJOYTBBRk1BNVR6S1RoZjltVDc2L1JsME94MGNiWDRBc1JZc0prOGI4aWU2Uk4ybHZ6NEtlQ0tsaEl1dG0rK05ZWlU1bXgvaGl0NHU0a3hMVldTeHdvQURmRlhtdllXRnRSVmUrZXdiNkp4OUJudDdUN0N6dFlWSGozYng1T2dBK3dkanlPNWpGUFZETE0rVVdKL3ZZYllFbm4zK0JWVFZCQTgzSCtDNzMzZ1QvKzhmL0I1RWdBdVhMK1BhOWV1NCtzeFZySzZ1T2ZrdmgwT0o0MmNqQmhaV2x0RmFYUFJ0bjhlNGdyZEZ1STkrMnRPZlhjRGk2aW91WDM4VzFXU0U5OTUrRzkvOTBWM1VWbElmcmFaTFNWMG5TQjVWT2dsUVZQdm90U3ZpQkZnMmkxbXJGRVhYdjA2czZrNTMwWkxNU1NqY2c3cWhvQ1duTHdrVzdPN0pUWG9MZFVBVzdxYXg2c1YxMElYRXVPMHBMM09WZlI0OXpMMDlGUlBEdUFvZmxSZ1lxdDFwNk8yZlUrbVVocFV4RlRlUVQ3eXJqTHQ1d1lURWE2MjlZMUFjY2xQZ3JTZFhOQXVKWmhtUVpISVNxZ0x4cjIyWTBPdDFVSlJPdXN0TUhzenlIdk1TSXdUaktXK1Zvb3NOK3czQ2JUWGo4UmlQSHozRzFvTXQzTDEvRDRQQk1XYjdNMWhjWHNiS3lpb1dscFp4TURqRzFxTkgrTnhucitQNk05Znc0T0Y5VE1oZzg4aGkwcHFINlhmUTczYlI2WFhSN2MyZ2FMZFErQWdpMXRodllHaEt5b0luWkVFSUdadU1nNjI3NG9WTDlJQ0krc1BJQThzRWc0akZZR2JvcWtHL0FPYWw5M1NiU0t0c1lYVjlEZXNiNS9EODh5OWdOSm5nNE9BQU85c1BjZi9lWGV6dTdPSnhYZUhKMWk1dUxoZjR5Wi85RzFoWVdzYnYvOTcvaWZmZWZnY3JheHRvRll6eDhCamYrNHR2NGl0Zi9HUEFGRGgvNVJxZWUvWW1ybHkrak9YMWRSZVBwZ1Ewc1VPMktjTWhjRFFnSWV6VTAyL0p3RUpRdGpybzltWlNBUng2ZEgrL3lXTklPdXNpc3YxZzAxU0tHaVU1cFdrS0tmVWU2VEJiYjBXZmNpN1ZadzVXUEtlMHdTQ08rSUwrK2FRVTlPcGI3WlhuWDd1b0tVL0lTYVZGMHI5TEdNTkZJSTZER2ozajVETVl0VC9OalhVTHBlQTY1ZmtadGNNcEpEbWs4WkoxbTRaWWlvWWk4RDREdFVYdVR4aFpWS3dtTUp3OWpMa3NBNUVuNE1aanRjY1FLQnJtV2JFdU1OUGpHdUpIblZZSExkcUFkS3NMekVBMUh1TlB2dmluT0R3OFFxZlZ3ZXpjUEZaWHptQmgwY1ZqYlQ1OGpNZUhkM0V3c3FpcFFDRTFQbE1McW5yaURTd1lLTnE0Y08wR3luYlhsNWRoU1NZZ0ozVDNOZ0tjbUVhMEpYek9aTm9TbG9ROWhVREZBR3dBQTBWbjF2a0pDRG1NZ0lWU2NLYllPSUdSaUxaNE1wRm8rNWZFV0xOQk1NWUY1dVlYTURjL2oyZHUzSVFCWWZQT0ovanpMLzdmRHZnVGdJMjdIdCsvZDRDcTJrV0hLeXpQdExBNlA0T2wxVE5vdHd0TWpnN3dyVGUvZ3E5KzhRL1I2dlJ4NmZvTi9KMi8reXVnd3NCWXY0RmJOY1VSZnlvcDFpTXpLVjJLbndMNXRwR0lNaEViVkE0ZjBWUm9YYjc1b2s2NUZwWWJlYi9odWlTd01OSGVjNE5jb29hYmQ4TjlNN0lIUXpSYkhGc0hDajJwWVNHbHNicXZEb3R3T2dhMlY4VGNJZzljSWlNd3ZoeFpzSGVrSVU4UkZXOEl3SkYzN0J4eVRDVHFVdkkrSjhsR1RoeDZIZVA3ZGcrZ0ZlTEdlS1lXVk93MkFuaWtsdVBlMjR4TElyV3dVeUJpMWtyNHlvRDlyaGpiRGY5Z2gzUmFJWWswVFZLYkREc09hbHlFd1Joa01xNXc5ZW8xN0I4Y1lXdDNIOXQ3OS9Ea2VJSXhETGhvQTJVSjRRTGRiZytkRmxDUkluWjRySVNOVjJkYWlxTkJhT0lOSk51Y3cwTkVlbHJpZDlVUVlSNUVrNkpPYUt2TklzVUJvaEprMW1HYkNJRW00WnBHSUl6aUErY0lTaW05S0JLenNrQkxSMUt5TUw2YTlnckh3dlg5WlZGZ1ptNDJaU0NnaHFBQ0ZTVXVQUHN5UHRwOGdNZURBUTVPTE80Y2pjRFZFL1M0eHVwY0cyZVdGN0YrOWp4YVpZRWZ2LzE5MUwvMFN5ZzVaWGRKU0UrSzdnTytxcE9HZGEyNEE4aU4xbXBuRVU5V0FYNCthbHpKdHRNSjd2djJTS2VuakU4Qkw2dEhObG5KTGZHcGFaK25WNzlRZ3doc0ZUR0xZbVVya1c3Y01CenhaSC94ZEZWU0ZXQ1IrZXdwS2FPRVdpOXE5MG5CUjBtTG5QektyRElCb1Rqak5INHNJUnBRaVpwM1g3UnlVak41U0FSV3JEZWljQ2N3VzJEaXB3T1dVdklQeDEzUVJzcHd0S1pxZUJ5RW1DY09EN0N5R3c5eDZPR3pVT0QycW5aSGxPZWJ2NjhPUmJadWRsKzBXaWpiYlh6L3gyL2hVSHFvMElIdDlORHFkREhUbTBXMzMwT24zMFBaYm9OSGcyUkJiZUZwMDdXdlJGUjZLN0VxSGRPREZPZmFVN21KbVpWeVRNbWhoaDBzQllxM05FZ3FxdDdQWXFkVUwrRHlDNHdhRWpRWW04aE5ZVVA3RkJPU3lWSERwWFlKdjFMWEVFL0FxYXJLWHdlTFZydU4xMy9pSi9BcDA4YlJZQitQZC9ld2ZmOGhOdS9keGNIUkFZNG1GdHRiSTZ6dTNNRlB2djZDazJqWE5oc0xhNUpUT0N5c1Z1cFRBa3VGcldKU3NNZktPRzBhMm5MZU95OWxKYm80cmw4NFljbEw0NE1pYjRydzU4VmdhSjd5cENaZmlQUHp5S1FNRzN3Qzh4UHJObzNySlF2elNWY2lKWGM3QXA4SE9penBjRU9iaURpU3pFSEluL29ROWxDZEU1K0Uvb005SWh5eUE4aVB2SWlkZTIyUW9ySWFYM0hENkRQQ0tOWkpqeTBEazlwcHpKa1l0VGpKc1p2V2lSZFpodmRObVhDeHpZaHFPRTlaOXIxaE91VzhQbDZwcFFLTEt1eW9ndVJlREpKNGs4TDhYaEQrSFRCc1VMUzZZSjdGMnRvYWVuM25SRU5xazdWQ29FcVVRWU9IYVlSUVdVRXBrdm1vaXZhZlYwYnhlUnlWTnZiUXZWVk80a2xCa2FScUFVU2ZBQktOWnV2VVlWRTBVbkxWUDVNNkdRV1NrV0JPRTdCSUVrOUpzcE4xUkp2QWFFUlVueHAyOThJVUJSWVhsN0d3c0lMck4yNENWakE2T2NLOU8zZnd2Vy8vSmVxcVRrR2s4SUJzVEZqeXpNMFltS2tXUTJnVEF5aW1UUHRweXJkUzhVd2ttWHdrR2J0Vml6cWxWU1ptWm1pak9hdnJzN3hLS01ZcGtJWGJCWEZ4S0gyenBDM2tSTTNNSW95VU83R29WdFpINUJWUm1oZ2FIWnNIZDRiUkQ5V05OeUdLK0NKYmlXTUZTRkpFdVV4SVY4OHJSWDhFYkVQV1lPeGRWS01qN0hkZlA2NnBBMUJvRFlESzR6aVVFVlFvMG5qMUErWkdLSktOT0czYStiV2VBRUhobURCVk81MThwcGxIMnBWWmdWOE1aa2F2Tnd0VHRoc0c2dTVuYXV2Y2hvS0tMYks5ckNSbVdJUGlHVXZ3T0k0N1JUNnFLNkFwNmFYazVoTlpHRE9uNlhiR3NKU1VzRVFlU1JmT01xeEk1eVRHeVlMT2xXeDYycVVOUnJ3cGluZmdqczlKK0V4azRYUU94cjltN1lsQm5TN1d6cXo3YXNtZDdoS2NpT1AwUTgvdS9ic3hWRHRqRzg0OW5JQzQwS3JHeWxobFl3UlhYU1FiOUZ3dEoxbHdSWmpaa3lieHhEOUwxUlVqWVRaRStlWkpvbGV6TklCQ3lhUGg0M3NvZ3A2azZsdlVsS3pRRmtMNllvV2RublVzTWFoaFJ1a0JIK0traDg0eUFQd29nb1AvRzBlRld2eHFyTW9kU1I4czd1amtuWU84SzhxWWdtT0tlRnZ5Y1BNRElpRHhoQlB0Rk9MOHR4V3R1UkZFb25qWXFVK1VtSUpFbEhiZUxHSGR0eFdKenF0T0VXYUEyWEVmUktrVlJXQ3A5cXd6RzArczZJVWd1UjBrcTQzZW5kS1VvY1NpWEgzMGpOK1JkeVNWZ00wK1ZHOGMyaUdvWVdPcFk2Y2xncmMySm5NQmhBQUFJQUJKUkVGVVZ3YUw1R1lYcEpodm9rSTFmYktQSGsxeWhscXJVV00wdnhFdnZBclh3SEVCeENxeUVxd1hLVWtXamltQnVCYmFSU3Z4bEk0Q0hyOVk0dW51UjJqdUlKT01DUms2NDFENlIvSWVVVzdZb1ZPQUFxVTZhN0VrWTI1b2MxdFNkSGxTVXZwUTBtZGJxU1JMdmFqOVVIMGRleXUvNEtpVkNPMXV6UlFPZEpFY3lkU1pYWktrdjZHa0lwMXdHcERobVBHWWcyOUNYZ0hsRnl1cExIU0t2Ylp5SzdHSzIwNnBtN1MrSkF4R211N2tBRXlRNWdiMFU0c3NLREdmd3NKeDJJWjdJK1pRSG5FbWgwbS9HeFNSSE02dEJKaXFjWTJWWUVVZHp4SC9vSWc2aFpzNWlaUVJyMEpsWWNrcVNiYkc3NU9YWUJ4ckNxZFRTdWtsZ285aVdKUTJxTVVrbFp6UzhKcmxhTmFTR0gzYXJNVXBQalVBNWdNdmxGdFRNclpWRzAzWW1JZzhhMVBpQnNmUjVvZXlRTmRtZ0JURnNsdVJscUp1d2htVlNoMm96eHduUGRIYlFvRjJpY1BBNmQ1SUt1MGtZOFdLZ3ZPYXFUcVVad1RLZExiRmRHQ0lSa3JTcENWelBkS3FTa1ZxZzhyc1BLMUJvU2xDTjAvWjhTZVBnTFNHaXl6TU0rdzhXV3ZCdVFRUm9vNmRCRElsdzBtQ3NEY2FWYWtwUkM2Z01xMTB6ajR5cFdZbElhL2VWQ1JVVmxZSVJTMHhtNjBNNHd6bHV5YUtFRVNrK0FKQk9LRk9vZ2pDcVBrcWtRZDNBckdHZEkydkhYVDFsa0h4ODVJeWdRcUFvK3RwVSs2QzFWbU1VWDdMMldhUldWanJwRmhLcFZ3b1E4R1VKZ0dOYVpOa0lKQ1hMR2VMbkxLMmp0UkpKbzBXbURLamFzOVZUNE5KMWR1VG1tY3JvVkYyS0hDZ2RDbXpERXpaWDhlZU9DSmVxU3ozdFYvOFozejAyVnZOSXhGaG9JRTUxYXBtWll4MnpTUk5tcWFuNU50aDZ1OGwycVZKZGsxbDZuV1VRY2hVdXBka3Mzd2llcXIvQlRWdWR0eEVLYi8yVXoyZlg0Y0ZaUXd4ajVHU2NvMEpwdHlpNmIrQVpabk84WU5qZzdseXhJQ2tuc29wUzEvTVpyOG92dEx3Rko3TWxNaDRrREpRS1FzQVl0eFBHcHMyeWRnRUNMSXhDZUlZVHpFRG9pbWVxSkVRWmNxdWVITnNBbXhpWWkxbEpyNnhLckVoTXlGdTNta3FZcW1oMG92SXNGV2tIaDMySUUrVm1vb2ZFekxTeURBUjBkTmlEMWd3YVRjSTVDZTFvOWVpVWFsSTlnVG95SmNzTUZhMFQzMHlFRkZ0WnFyS2ZINkIrSkkrVHIvOXcycEZldytrQ2NKMEVKMVdVUG9OenRxSTlWdnZqb3hNMHU2OUFjU0N5Q3FRazA2L3pqWlhsVUpWV2syaURXVWlJT1gwZytUYmw5b3l5aGI2VkwwUU4rSG01dEs0LzVtcVB6azJhNlVmTmYrTkd0dVhFd1BsdXZCY1ZOcUFvWHlpcmJEdjR5eEZFQ1MwbStraEpFVTdrUml0RGNVd2hBNFNDV2twZXBSRWdUbkljV1FYdUQ2bUZxOHlUTm5xTmxHY28wRUhLWEVNVTVKakJORUt3QkNtZUtMRjBWdlFTT3ZlTi9UWGxEWWJ0NWVJVjBFcnBKdlQ0azhoTUVyODRmdlBTT0toUkZqSlhab2tZMitGMDlEOWVwcE1USEZHdFRPU2tvM21JblNsTmZlYnQxSUtSMnR5YXBTbDRxbW1nVGNBQlJxbmU1Yy9RY3lVQXZIaXRXWTFzZWFFWGxBS3pLQk1ycHhqSTFaZHA3UU1PRzZrcWF4WG40T0NWNlhOZ0ROa0FoMUtiV08wcGFQTTB6SG5USW4yMGZiUEdpc2RnR1QwYXIzSXhiOUg4TmNRa1ZNNXdNUUtieERKYU1GQlVrd2VkM0lLeXVhWjBhQjErdTlkNEtscDVWUDFueWVrbURnMml6MDFrSUVYL3J4VHJEdFJjUURLa0NMYnpra0JKZjR4VS9hcFFWcHN2ZGdJTENpRklNWTlSR3lkM2lDTEtZdk9YY2t1U2xmWVRLSkVIcExxMUF3bVQvK0xhMDBBSStTanZodTdkRVR5MDJuTGtVS3Fwc3dVcVZHWkEyTG1pWkI1dWVzOVh5S2dXTWZ5TndGZ0pGRHRsOFliL0x3NzNJTDQ4Q0ZTclBPT2tTS0JLMmtKT0RhRzZhRk53VEpUcHd3b2puc2xUOEZ6ekR4U3FUUlJoV2hUaXhqd0E4WFZTTmREMWFRQk93RWFMWnVxOEsxRWZnTk56U3FES00zN1hVUUVuUkxBS21xWjYyaDZ6aWRrVENZQ25Ray9FT1VhcEpIK2xLMEo0SlJ5di9rWk9lZThUUVdLU0JRT1NTUkRrV0l1NWg0RnhUUnF3UTFaYlhJRDhsU3BCRXlSZHJrMXZoYTJVZkxMMGFQTk5Gb1E5U0RxbTBYTllrOGZJKzZoWUVtRUJ5Wlh3bGhXU29uUTZ5bDBtL1NjTHFqSmxNZWQyTWJwU0pJWmtHUXV4b0hrNURVS25xQ2ZUVS9TbVVhTjhadEVHeWc5WHcvOC9DbFNqWXBoejFWbWlPR3RIRXZzTko3U25vcmtlK1ZFalk2c2c0eTZ5cUJNWXFySG5mRTFBOWVBay9rcGhRMU9vY3U1TTUzTE5QREZlZmJNV2thY1M0ZXhyRnNrbkdWRDZBZVd5ZjJlTytTQ1ExT1R1T1NPK3VCL3lHRjJ3NTd5UzVTNTZtYW1JUDZQV05MbnNXRnpDaExQcVlWS3lqVkxHa0JjYm55THhnZzA3SEtNcC9sY3BpbERTZ1hTSndNbEhLWHhtMkhqeW1WQzZYZVFxTUJLWGhBNThJRlY1SGRYejZOdVJneEdxMmcxVDg2QkRac2RxaGx6YWtvNmFZRk01NXc3QlBsSDNuOHVBUnVnOEZaR05SRXFULzZJUlllSU1rSkE0dFdIdVdzVU1EVnJvQ1JwMWVkV2VNQ3Mzd3pKVzIwSE9DR2VyTlo2WFFGRlZ5UlNoQkFpaXRrT1lWd3BIanVBN2xjcEh5ZGxJQ0tGMkRTS20xNG85WVVvcWgwbG1FWmt1dkNrTlkrYUttb1FIcVl3NVVEV2RLYW9SUGxKSEttdUNoQ0YwbWtFdllQdWpxUDJRL0VyRFBIVTZaakVYR25rRmJHSlptdWpyaFZKOHMwREpWYWp4c2dFZXBUWUJQYWE3ZGMwTjBQVU5hREcvMDkxNGtSUFBkdHpVTytVT2x3YW13Sk50K2QweXNZQmthbWZqU05oSnJkK2txMnR1eXVPNSsvN3BERGpoZzcxYUlKWlNMVGJVOUFEWGJoUms3T3ZZUXlpVEs0Wnk1YndNSGttRTBmR25rSHRnY0hhQUVYSU1yU2V1ZWhIUW82TG5iYTUydC8waWs4SFY2TFloUmlaQjdJRW5RR256NmhtdFVJVTJ4VXJnb1U1bHg4L21Vd2E0SmFMTXpOc1ZDcVRtcko0SU5OUXJoZ0xJeVdwYlFSN1l2aURPRy82bEVEVXdGb3lTemFKSTlLSUFvaGt1ZmFSK1VlTmFZWDRUVTI1RHdYaWpZajEzUStweUc3UGV4QkJiYjE5T05LSTBFckM2bGxKYWFXSnNpSXgrWks0Uy9rWVJQQk52TzhrRkpndGF2R3I2WHN3VXlISzBCQ2k1UG9jUUV5clhIcWJhZDF4TjJ1TTBKdFQvbE5QZURxRndUYzFFVUIyQkozeVExUDZZVUlUZE0vWnRxSHlMb2c1azFBR3FRRmx2aWVxSjUzZUNpTzRraGkxMmtCRTk2RFNvSmVvNFExbFl1ZDh0eVRGZXZMZ0Nua3RBamowcU5hWG11RlVJUVUxK0tneS85K0ZQd0hIWVJTb2FQL3VNNXVzMUhiQVVwMllYSkV5cTdabnRmaUQyR1Z1YmhZeml3dW94eE1jSHc5eGRIeU00K0hRWFoxSm1mcGZKSERIRk1hZGxOYmw2QVhna21CZGZyMGRBOVVRUkRWQVJSb0Ztb2E0SmMwUHZSREhYd1BLNWR5QmF5R0JmTU9LR2FuN2RnL1V3aS8wOE42aWZRZUpHaHBrVHh3YkhxS3NUbENVWGRlQUJGR05waVVLZS90d1ZxTTVhdUNXTmtacms2ZFVUK2RscDgwRmFySk1qUVVwdWtXU25Fa1pCb3VrZEM0VTdqRlRUZ25OZmVzd2JWMURDbGluQnEwNFA5bW5sN0NremVocEcwakRTUGV2UXZPbUpndHVvaWFOUFhLYUpJY3BSaGhOOVU4aVRhcHdJRzJRTDkxMWdFWmo3a3Q2QTZCVFpwWTYyY3FkWHF3UVc3ZCtqZHJsSktNcnh4T0YxYWdPQkdPQzA3aFZwNTBGVUNuVVA1Q2hTQVdVcGw0U0tzbUlKTkZ6WGJweURWdlhvTUpnYm40T0N3dnpxR3lONGNrUUI5dGo1NDFJN2tNWVpoQXhabWRtMGU1MU1SbWVvQjZkQUpNSzllZ1lWQTJ4Tk5mQjJmVWwzQmtzcHJHa1pLeGNmd3FxVmtXUVNEUUkyWThKMENUbG9TaGlNKzEvbzhOTkdJaGYrYmFwazFYM016RVRMZGJuQy9RR0Q3RDErQUREbXRHZW0wZG5iaEZGdXc5aldqRFdSYUVadzJDWTJCSG55OXRqUUFHc2s3dzEwN1AyU0tjSTRTaEtZQlV4R2dza20zdVZuMHZhZDE2dkNxMlE1TndrQVVGbXJBODVWa3d1UHJXdG9xY3VhOVdDVHhYMmpaK2tVMnVDaG81Z0d1MElmMURJYWVRR29xZkNFZE1FeGxQNkN3MjNCOUVaczNKRDBReTN0THBKeVI4cEw5d2NVTWVOeXlBMnpCc1NPS2ZBeEVENnN5S1JjaXd4VDVTaTkzcE12TFNBRktvWHBtU3RaWU9FMkwrMUVYWGNlUDUxUE5XUWxGNVY3ZDdiK2h3RklrS3YxMFc1c0FTU1E1RDNnQzhMUnBkcWpKODh4TW51R0VVOXdwbkZXV3ljVzhHWnRmTlltSjl6MlFVQ1RJNE9QYy9DZXhVbzZsRUNGOUl5Q2dJaUp1UDZkekIwVUduY3VLMW1LaUphWWxuTlExZHBOb2tLeTlsclFYUmFrOFhORzlmeDhtdXZBOEk0UGo3RzF2WVc3dHpkeE9iZGo3QTNtS0ExdHdnQm9ZMEtob3FHMmJXeTl0REZKek1NTjNqK1VaaExjVXBGV3ZXWEVZN1RoaGpmanhScEtWS1B3eGlRVmY5c0c0dHNlcjRlcWxqcjNYcUN4YmNvZzVBUUFKSnM3clN0WGFDTjIwYVYwdkRIbEp4ZE85MWlpT2RGcEhaU0l2N0NyZ0pJWWhpS282SDQxWFRjY1lnNmlxNDBpZFYyR2dCaXhYcURoem91VEFHaGlaV0cyWG9JU1FpN2xsVVV6dWcwWTBNUDdvRzRBQXFxSFMrQVRYRXlUQklORWdKcGg0UzlRNDRDanJ4OHMxYWtpYndDWWtkdUVqL0hqMjR3K1J5TVFPNzBsL0JlQWUydkhKR0pDVzFXSWhrQ3F2RUpmdktWcTlpNGNBNnJLMHZvOTN2dXl0UVRqd2NBMXRab2xTMy9RSE04SXpJNmFMTXFEdDZJUU5RZHBCK3lXVEZIS3NHV2xFOEJUWldxbEJoMitvVGh4RkprNWI5ZlZiVTd1NW5RNjdWdytkSUdMbDNlQUlFd0dRdjI5NC93NE1FRG5DMStHaCsvLzU3elJBQkFkWTFTYXVmcTdMYmR0RmtIU2JreTdxQk13SWJUVVhIb0NvZWlQMlZ6N092RVJCelZlMElhak02RlRRS1pPbUlwMHFOWVdkNnI5aVNqM3lrbVpwam5oelNzeUtQZ21HaWRDOUVhbE8ycFJsdThkMlREdU1TZkUwVVVwMHdob0Y0MUYxQmlmVkVwOWQyaGh3NWVlMDFpcENqUlVOcEVLRDRjRkN5TkpJMFlkV1pkNEFmcTZpd1FIVUxwcmNkRzRUNFlQOFlKZVdnQmJaRVF0VXp1NUlYMzhFdm9xdlZnRk1lYmtmZE5sSS9yVkNYb1JvTTFySGgrdWxSQVhjSFVBcElhazVOREhCM3VZM3kwanhtcWNlMkZaMURiR3N2TFMvamxYLzQ3aWNaSzdHK1FNNzQ4T2hyaTBkNWpiRzF2NCs3ZFRkeTlleGV2dlB4Y0lrZFJQc2xnVWZzQUsxNEFxZkFIUWk1ckpabWl4VVpaTkZJNmIwRE5ROUp6SkZ1UllpaElLcmJaR1B6ejMvbW4rTWJYdjRtcnp6eURLNWN2NDh6WmRjd3ZMc0J3QzZiRDZIVDZXRjlmd2F1dnZJaTYvZ1YvYUZRNGQyWUZYLy9XZDNFd0ljd3NybUoyYVJWRmJ3WTFHUkFiTUFIR09EZnBjR3F5Y3RnTlhwUEpEVHBWYmFRbHlsQTJhYVMwQ1Vxd0ErM0EzSFRNVmxzaVpjQ2JlcDBHR0llbnpmMUp1UzQxUnJNT3I1dGFZVmxZNnVsWVFqb0lTTm5DT3kyQTFSYkRBY20zT2Z2TnMvRnNPT2xzbUhtYUpERHdMckZJUGhPK0w1ZW9qNDdlUUY1Z1F5TEtMNGlpN3A2Q3Q0cTNJWU5vSWdabGdRdGlKVHJGeGk1UWJFWVB6dnBrUC82QTczZXRNdnB3K0NJSEk1Z1lSVWI2UVFrT3hLb3lTamJ0dFc4UExOcDJoUHJKRGc1Mk55SERReXoxMjloWVhjTEs5VlVzTDl4QVVSaEFhcGRJRk1hUlRCaFB4aGdNanJDN3U0ZUhXenU0ZTNjVGc1TXhhaGhZTGpDcUJjT2hpMXN6OFdpSHhzOGpnODRxSUJTa3NuOGErUUhwR2FHc2ZadnVHWk9jMkhwTDltajBJcVNFTEtsaUFobnNEUmw3SDI3ajdRL3ZvNUEvZ3lHTHMyZldjUFBaNTNEbDZtVnNuRHVIeGFVRkZJWHhxVXV1SXJ6KzdCVmN2M2tGbytFSWozWWU0Kzc5QjdoMzl4UHNIWTNSbWxrQWxWMzBEY0NWeElWSlV6UmJQV1duekNCTHJUbGxjSXJJSDNDOEFZb2FrVFRwT2NYYjQ2OFk4eEZSQTJGckFvaW45L1UwM1ZoUEEzcXFtdENWVFBhN2NzclkwRGZQUlMyWkVnaTFIcjBKWlcxQUtpbVU1Uk1sSXdyckRRdUNDaXRRZVNsWU0xSFMrRnRLVk15NGtMMGVJUG1aUzVRV0IrS0k2L3M1anJRMDB6QldKYVRSZjhsZFhWbW1mUjZRck1mSkwyNko1cGhKektORFJ3VEoySUFrbEZRV3crRVJMcDFieGNhRkMxZy9NNGZWcFVWMGV6MlBMOVl3YkdDTUFSdUdyZHhuUGg2ZTRJZmZmd3ViRDdid2NHZlhCV29VYlZSbzRhZ2kxTlJEMmVtaVBkUEh3c0lzRHU5Um82UmxOWEZocFZ2WHJFdktEQ3FnWityQlFveForUUdrS0hkUlNUL2h1YUFZZkpEY2NxTDVSaUNKK2RQc21WYytqVkYzQlp1YkQvRm81eEZrTXNTVEIwUGMyZjRPNkV0L0Rxa242SGNMWEw5NkJWZXZYOE5mKzZrMzBKbnB1eEtjZ0U2dmd3dVh6K0g4cFExQURLcXF3dDdlUGg0ODJNSHlUNzJDMngvOENPUGhNQzVZeWdubGFxcWx1UHBlUHQ0RWpYUHVDV1dPUzdFS2xTYjkrcFIrZkdyaG5vN1AwMVQ2Yjg0SEVBV1lOMTBGdWNtdDAybWtXcGhGMHpCaVNBUXRhaFg0U1BHaDBSeEhtNlg2UWlqUE1jOTRHT0hrVWJ1T3BOTVNRcWhSWjRMem5OZXMwRlpWR1ZnZlowVHg5S25WN056cnRhMEtUQlJkRm9rU3FVaWloQUtRV29XZGlwWUFJekxjV0N3WUppbnFZdHdlNWJaY2JoYUhjeHNiK1B6blA0K3FybEhWdnNlMkZkZ1VxQzN3NUdBZmp4NDl4dWI5KzdoKzlUSXVYRGlQaytFSnRoL3Y0ZDI3dXhoeEI2YmRRNmVZd2N6OEFzNHNMR0oycG85ZXArMU1NVkJEOXJkOTVTTU55Z2xGNld4U3Vuby9SNUZjRUJMdDIwN2hpU2V1Y0dib0VjK3hZS0FaTnM0SWcxRHFYU1ZacWl3dEwyUGx1ZGZ3NG1zTW1sUTRIQnpnMGFOZGJHMXVZdXZoZlJ3ZEhLSXpzVGg2L3g0ZTN0L0VwMTU3Q1oyWkdYejlxMS9INDBlN3VIejFLalkyem1KK2ZoWmx1MEJadHJDMnZvNjE5UTI4K3VwTHNKTy9qaTk5OFE5eDk5NDlWWTdYY2Ntd3dtYWdYS3pwRk1lZjZIQ2tERThGVUtHcXViNU5rVzVqRzBSUE9kcXovSTBRdWRlY1BEUzJpdE00QncxckZVK0RKcURwYzZFcU55R1Y1YWphazJLczNXYW5oQ0kyN1lVcWFqaFNRelgxbXZKY1BsTFJScEtCVWFLdEQ2Wk1KVVQ3SWthcHFIb2ROVEVRUHdXSVVWV1N6eXNpT2NPdjBLU1VjdTgrOFRGUUpNaytURXNuZzBGSllGNkZpVVBvSGxrcnNyekhvZUVDdGJXd3RXQjRQTVRqeDQveGNHc2I5KzgveE83ZUFZWVRDeFJ0aUZoc2JKeUxXQVJ4QVduUDQvcHpMMkZtWWNHUmhJZ0RVb3ZhYjhRbWxOcGlHNk1uaWZGcWFicVN6QzVDOGNPcUJ5QmwvMEYwMmxpS0ZNQ28zVDd5RVdoTzlHcTRGRVl6WlFjSUY2MFNpOHNyV0ZwZHcvWG5uc1ZrWE9Gd2NJejdkejdCZTEvL00yeDBDa2NXSXNiK3dSSCs0SXRmUmNGdndwQmdiWGtCVjY5ZHdmWHIxM0hoNGtVc3I2eWgzV241Q1FlcnlsVUQxN1U2VWtSTmQ5VEdKOVRnM1Nydi9sQ0pScjhKYVl6eEpPWnFUbThtdWc2aEpJZk9XckJUQWdCOGhjRkl5ZDFFK3BDVmFFTXFhZ3lkRC9SekdySWVVVEo1K2pzUmlrbnR0M0NmMVpwUmdpZzQ1VFlDRGRWVUlIcWxpejRabmY0NlhYbmoxMkppeTVIU21tVjY1ckM0YmVwclJQS1N5SzFuYlU2aTV1SFVpRWtTOFJKbHdEQkhjMG9Td1NTNVg4VHlQclllUkZQVDJoQ0Y1UytYcTB4aXRKbjczK2FEKy9qNHpqM2N1bjBQQjRkRDM3dVhHQXZEb29XaTE4ZlMwakxtZXkzWVlLd1pxTW1sUVc5bUJxMnk5SWk5eTFLb1BUN0F5a2syQ2hXSnNqNDNqQm9kZTgxTlJOaFhQRFZaZFlKSjFHNEVMWU9WWEtTbFpkV1NtWk9rc1dnRTB6SS9BczQ0R1lMYVBUZFdYSXNwRk4yY2lCbHo4ek9nQytmd2JyUUxNeUFZbUxLTHBldXY0TjdXTGlhREF6eDVWR0h6OEJhKytjUDN3WGFDMlc0SEY4K2R3ZVZMNTdHM3M2V2NyWVA3RkNXalc4MFlWRDI0TkJnSDhjZmNyRGg1SkhwY0tqd0lUUG5ZUFBEOG1WTEZHYlVjbEZ5Y1F5VVptYUVFNTVOQjJyZkJKa3E0YmdXVXBXblNpQ2haZlRSVDR1eStKUzZkeEJZdWVIZ1VWYkM5RW1lbkdGUjBaS0Y4eTVxc1EycU1WNmJOQ1VURkhDVVNSZUNTNjc1S2RXaHFNMGt3djkvTm1uVEo0RHVnWFRERVIxMWxiZ01jTjhEYUp0ekNQWVFKQ1k0VkRxRVJuR0VUaUtRYU1mRzdLS21aTThUbC9YM3ZuZmN4a0Q0cXM0aisvQUpXMXRjeHY3aUUrYmtGek03MlVCUUZxc0VUa0gyYzVMb1dQa2lWa2laRFZVN3dObGhXQzBJYUQzUE81VkJTYUFKWTdIUTlLc2tqTDZiY1VENlhoc29NVEtHanZwUWd5VVpnQVR2UkxyUk5nNDlFVkxMUlJLVFg2V0JTK3BHbWNMTGZLZ3Y4L04vK1JWVFV3dEhoQUk5M0gyRnJld2VibTV0NC9IZ1gyOE5qM0gvL1B0NzkwWS94MmdzM3BuQVB2V2x4b3grWGhxZGpJbzRwOWg0Um1MMG5BWEVrVGlXVFRadnlMU2hSNVpQUFNPQkptR2dTUXFSdDZVa1p6d3FZT1JxSmtNWmlNclpzd3pFb2ZGNnJjTG1RMjZHeVBsbVF4c1pLT1ZoWUtLZzhnQ1lTMkY0SjlVK1JUK0VtaWE2dWsrUXgwbkJGRHhTekhTK05Md1NKcnVaM1J5VTBhV2c1NC9pbWFjRkVUSkduYitOTkZPVHFrRlRpVzJ2QlFtNURFRjIycWhaSGxDb3dqSUJzNGlQUXFkb0ZRcXZWQnBrU0ZYWHd1YzkvQVV1cmErcTBkditzeEhxVFU4cG14TkEzT3JqWWFsbHFjR3RXMUlNazFiVTUzMXNrVDY0bEI1MlNXS0FoYjBxNUFKck5tVHorRXJPV281YVFZaklScVUwS3ltQkRjVC85eURBTWlzTkRiNGhRbG94V1VUUzRwNXpHam5VTjAyWXNMTXhqY1hFZVY1KzVEaEhDOGZBRXQyNTlqSy85NlorZ1IwTzBXbVUwOFVoNGhtUmdIalgwSytuam5TWW9TdVcrOGJ5U2JBZ1h2QnN6SW9XMmNHWjE2b2IwTGNsT1kzMHJTRW5xazRlQWxxTnoycVNGbFRMWkwzSVdUd3lUelBnOFJ2aW9VWEU2T0FsRlNybXh5dUpZb3UxM1ppalpRQkREUERoU1N0bjd4TVgrUFVXS1N5UGpJRnlYT05hVDVFWnNvUXhDRzZZZU9lZENXWDJGVDViYnIyV3FyM1JMR1JXUzl4NHArNkhRUWxwS3Z5SGV2QUxzSFdyalE2Mjk0a0lKNkloSnhoaU1oaVBzN2U2aWJMZFJGQzBZby9MYXJFdTdEZUNybHNJeUcxOTVTRFJ6cEdneVVmbjhRY204RFVTMDg3RWFlUVZXbTRaWEJjcXpJYkVId3lrblBzd3lUNVZONmtKcCt2WUZDUzlSTnRJMWdSbml2MHV6UnphR0hiRkprWHVJVXM1Zk1MZVF1bzVqWWV0NUpZVmhMQzh2UWtOYkpMNHFpendUNVJqVU1FZ1dGYTJ1NzErNmlweitqaExISU55dm9CVmdEUTRqaGMrU1p3Q21WYWN0MHp5UG1wWDVja05vMUp4SDVKOCtQVE9KTCtOdCtwVlZYWmpHY1ZZVjZtdGdsUnBRejNtRmtJY3E1UFpEb2s2L0VFaXBua1RmdzB2bWx4M2pvWlRVUHFqUUxPR1VZVWd1MVEzR0V4ekxWR1hjTGFTWW5KUTU2bERHaDA1NFFiQ2pacUdjelVPcHBMZHhuT1Zwd3BKY2c4TEVJSk00eFN3Vmh2R09PdGJXR0o2Y0FISU1Ka1pSbG1pVkpkaVRyMGhjUlJKODZZTnBackpLejhsOThjOHBOd3dsQ3FyM3dPL1B3Y0Z3MG1tZXAwRG4xS2xEa09QY3hIL25GQWZ2Sk1RcE1TZWxMZWNJZE9pRnJlVDNNa3dSeXBMZHFaM1kxTnBKSDhsZTFZV0toSTArcVNXZENZd2hoKzB3VW5tdW55VnV5R1ZEOURhclBNcU10S1BuS2NFOFJLeTZ6cmxKcUdTbktqVjBnQks1RmFSeU44SW1SV3BreCtMRzNBcUN3blQ0R0RMRGsxUjBoY3BCOFhKSm8vLzZBSlNvYmdTQVFrUnlEemZGL2RLWmM1cHhGSjJBdFdGRzA0eUYxU2FnQ2tMdFBzQVJpSkxjbVpRb0M3bW85UmVtNllwQkd5TWtDeThmMktpU2pTUlRGU0dLVmFReEtIWHBRS0tpcnhPTm1kQllWLzcwc0ZZYVRNRndtanN2KzZDNm0wekdHSTFId1BBUXEzMGJLNXU2dHJEV29pZ1liQUJiSmV1c21PNFRXMitLbFVvY1EvbkFVNG1LelR3dUxRS1l3YVU1b3dwVG1ocm82eW1OR1RmSWoxdlRWcE5POTJTVUdzaGZnUzlpZmY4cGZsTTBodEF1UzBYZFRROTJHcTJLc2pRWHhkYWtGT1NpVmFGWno1dzdRMnRBUUU3eEdNeDBURXB3UnY2VWxFaEI5NUYzMWxXSXdhWXJCbk5tSVIvYW5DVjlWc0NDVEtpVUpTcityQ1NyV0kwSnhIRnZzSnpMeElpY3lFdUtGUnBhQm9uVERHMldvMzBneEVXRFpidU5VQ2J3b2t3b3JMNFpuU1l2bEtuNlc4c1pLWnB4SnAybXpSSTgxSTVNNmNGbEJkeEZseUxrRzQ5SXptak1BQ3ZTQlo0cWhheENkcU1qcHlqMUZ1V0RYeUNMbGRLY2JLRXBrbUtLY0NxQ256eEY3L2tRaWhLK1NTMFdsZFJvdFZxWW5lMWpOQnFqbmxTb2JCMkRtNmxCVXBIbStFbEZWaVdmKzJRMFNrS25jVkZQTjQ0VURZejZjanlZcUdoOUNEVmxzR21TWlp0S05XY2xnRTY3akE0alJNaTFJV29CTVJGcU5Eejc5Q0NYZkphMENyUk54Qi90MFU5VFJxZEsyYTArOVBRb0w3THlqSm95c3JZWjF6eCs2SVR2TkNFTDdiRW93RHNFV0lsSFZUUmJrTktpSnBhWXhLUXp1Nm5oWkJSRGZDbndXTHo0TFBWcFNzQVZuSzhGQlZPYUdXcGdMK2NFVUs3NWE2VGhZT3IwUUl6ajBuaThOTFNJbVNVNU4zdnBuRGhCaXM2S3AybWVrOGVZcDZXcUR5b044b1Z5YVFuZmw3VmlMTko5YzJzVDFzbkFvajMzS0ROc3BNWmNuRVBaUlNuY3NmYUVremlhVklFb1pjdWdMQXVJV05TMXhYZ3lncTBzeUFhT2ZwMnN6VEh0ZjZmcHdaYWNPQ2Vpd2htdExaVEtBc21mcVVSN1ZpRXNFUS9SMVp5V2NtdmxrRUs0d2M3QnFkdHV4WEFWVlVBcEFWa1NUMldJZkVQMGt2WEh3c3EyTHZrV3BPclROb1JSUVdtbmNSTVhTcG9oNjV4OENhT2VoV1JLU1JrcjFpWk5PSkxtUElCSEpyWEVxdnpKRk5VS1MyeWFlQXFhekQ1SnJpZ2ttUWxMVXRlSzBqaW8zZG5mZzBMRGtBd29SNWRUdTQrbnJENXFKSkpTSXg0eTlYNlFhVkdFcHZPZXFwZldrdXlHVlNCUjdoTFQ5RDdSRzd0MklrNjJZZWw5ckFpTVFEMmFyRVprbEtpMkFlMU8wVWJPa1VkeEdiTFdLY0F3bEFJcmJBd084ZVBNT1BaVDZnZ2lFQnNVekdpVkJhUVcxSk1oREp0Y1NoMlJQa285dnZLanp4WGlLZTAyNWlTUUNwSU1oQ3lrcWlVc2JGMkNzbm9mVm1pNmpxTFdwdzhUb2QwcVU3S1M5WGlLMzZRNWdxQ1VKU0ZURm9naGtHYW9DVFVjZXVKNjBKOGpsTmFKS3hHZUIydW5iZENoU0hHaU5TVFVxSFFvQmJaU2MzTlN3TE5HQ2FjOGZVaFhHam9mUTFIZGZTdVl3YWhOaW1BMkx0VGFZalY5Q2M4Vkk5djI0aGUyZ216NXlwU29RaXUwdmNGbFJrNUE5TGZUNWFQR0JqUVhmZHJoRlpoSzZORmZsbFZiUWxPVG0vaGdCb1llcThpeGZMU1llbnhRaWdHbkJ0VTNhUHBaQ1kyY01hcmVoQlRDcWx0dnZ3QUw5c0hVdm44TUhvdWs5T0dPTnlYUnVES2M3Qmtia1FBVWpGYW5nMWEzazVCOENSUXV0ZWlzUk8rRGRDQnpZOU5OVGplYXJKSmFOOVZDZ1JTUWxnZTNrSzRjMUtmUTQ5S1NHWjFXeXlzZHFXbU1NMzA5RzBpNFZiUm1LSk5MMndpQzFRc3h0aWt4aWo1VmtrYlJnRW1ab05BVWpWYW1iYjJrNmM5SDB3NDl6VXdIVmNpSVZxWlJRd0dvMTV6b2lWZHorcFh6Y3VLbXJaS2paY3BlSk1jSXdub29walZLT1ZzNElKbXhENGR6KzdYS3p4NE4xUmsxMjZyc0NkRlpjV21vcUdmcXFaOUQ4dWRuWkgxWFhQQ1MvN2RvZktEaG5wb2xYY2NUa3FadHpySjdSRm5hMEJTUlJ0Zk5RaG1LN05vYXpuSlczSUl4em9SVFdWMkpweEtIREVTcnlFbnhxZ1R6RVdaZHArZEFVSlFxUzJaK29mOUVKSkM4U1dVQ2lxSnBVK2IxT0pWbXE5QjlzZmttcmZVU0VZbG5SNmhKVWVPNTRSd3l4cUVvSnB4QzluVktjd1RxYk1ZckVXVmhaak1XU201enA2bTcwVnNpdTI0NUp5VHlXbVE2ZkZYbmdaNWFNSXRHMEpJV2hUTDBYaE5uVXdBSlUyTXhpejZJRXRrdVlFUXBlRlFCNzVJYmhFckd5eEVVOUJReklUVDE3ODFkTHROV3F5UFRrVkZ5QUFBZ0FFbEVRVlErSHFPUytucHVoRnhRem91T0dtclZ3eWNQZGNrTTU1dVNTMkd0QXhBUDBMQnpLejdOUUwwNXJmQjAyeXdPa3lodnlFTDdJZE8rcUtLanBZTVRiUlNUZU5nKzNFei9NcGExS3BGaSt4VkFIQnNlZU5MeTFUUjNabllDSDZzcG5tR2tHQmlWdXZLaTNETW4vVHdsS25OR1JzcWozNEpwaHFqVExJckdtSUJhZ2UwcXNzZEZzeVhnTnRZUEN0T1RrRnNZU0Y0TnUrdWN1MkN6bGk3THBwU1FycFRDVTBNWFlLa1JtY1c1Q1V3VFpOU250a1RjU0E5V0pJdG9TNWJ2eWRkaTZ2RFg0R1ptOVo2dUl6Y0VRNUpGdFNzV3JpVE1TcVpreFZyVFFva3FINmo4b2YwSnJzREVPVW9mWDFpVWg1dzBBQWhCSTVZNHNkVzBaNTRqTGVtUVJVNXplWThTYTBTZGxJMDBWRTgwN1hzbXVaUVllZitqOXlMUm9GVGpzNGVTS0UwY1VvU3o5clZQTjl5ekhrbUZjRGFhbUV4YkVoNE1EbmJyVGFOejNXK1M2bTBsSnRqWUVQUWdidjV1bUgxTDRtZzJOczcyR1pubVRWSnQ3YVlPTm1vSlJKcDIwekpsYjJIRHd4S3N6RU9sQW5iT1RXR3owVE1YYXVEQVlVUDBjZWsxZ0hyS0hTZm9FTHlQb1V3M0t0SElwUW5naWdlUEtWbWlDVkdlRUt4ZXphSlJpZ1BxK1ozR25nZ05IVUdqSmMxbS84RWtoMGpGdXluYk1FWms4elZkZ1BJTkkzdzNqdG9aVXNrL0FXdmhNRzdRMG1GcUJMdVNORUQ4SmxqaWcwRzB5VkY4dVBWVzNWU0tVZE1BZ1RKeFpHcllrY2dPMVBSTnA4YnJVa05SbHJ1eE5PbkIrWFJPRXZvYkh2cGdCVTZOc3RaZlRNNUVNV21tcmtsTmVUaWtaS1lnRWgrMk5DMFFCVHdHcnJmaHRMR0l0eUlUcFZHUWpLbVlFbTRaRmtJTTQvVUlRdm9lOFJRNGxsYzRhc09pVkFZSU5CRW9wQ3lwKytBWGtwM3krZzlYd1dUVXNNUTJaQlhSVHNrd2hOSXBMTTF1bWZMMFcvRThCalZZejU0dlZndVZVMWNiZDJXSlN0UEdVYUYyR1ZIYys2bHNDdVNUMy9nYzBta3VPMzVEWXFVbENaK3JzWDlSMC96anFVR2ZtUFllMEJrTFRST1FUTEJ4eWhwVml6eTA3cUd0MFAxWllUeDZyZW1UK1FnbkgvRm9lbnhUbXh5UlJqVmFpeFZHRThUSVdIalV5QUlSOWNlS2VxdU1FUG0wZGt1UVd5b3BORFRtc3pWcERKUWp1bENKd0NJNjJGTHlXYlVyNWhNdFUrTVBzWXhsYjJwQjBjbzY5T3lXeVZONy9VMjNEcEcyTmdXTk9tVGMrUThhZndJWWNrSW9VN0FYcXJoSFQyaWFuNkhUa0VQc0ZhbnBRN2loSXRUWUxQVjBnUlJlb2tkaCtaaUtSSmx4UkVOTjhuNTBGb1dCbzVjSDRNNmZ3cldDOWFOYm1lcmxTZkpGbE1oR3ZyVDNtQWxsUFgvVDFWaFJZOUVNM0pRR0Zwa3FYOUgwL3NqTjU2bkZScXIzcHNiMFRtL3lsTTlhY3MyYnFtU1RMa0FyYzFVYytTbjQ0bE0zRlFWNDZsRnArSUVDRW95N1ZCdXNHaFlObjV5cXI0bHRnMXJMeWhwN2lvUTlKYkJ0a2pBdzlVV0RHaTRTZ1o3eVd0bHVLVTEwTnBWek5nT0swdzV1UWRFSnRobFdIZHlScEhIeTVhaXpYOXllNng4RlRPUWswY0dBZzRoQXBYR0xnNUxrV1d5RjJnZElpazhNNXJCd3F3bGtjb0tUNHlNY2JUOEE0K1VvRU5McU42MUJ6OTFpS2JaRDFFeTFKY2xtcnZsSVZkOTBtNFJoQ3F3U3NhNmRVeUNCNi85ZE5mUG8zbTBzcjI5Z1ptRUpyVTRYRXk1UUM2UHk5dXpFQnJXMWZpU2FyanNUT2J3aytqMVFDallqaVdsRjRTa1ZTdnFVcHFPQmpSc2NOMEphOGdXVjlBNUovbTc5aG1ZYnBUZzFSRWM0TFRCYm5rTG5iVEFjd2thV2IzeXFkVzNFSkF2K0tsdHhUSWRyaWNZMDBub3JhT29WRzVuM2lqOHMwd3JQN0VISVZOV0tjM2xhNHA4MFNobzVOWjRKbWNISTZUK1B2N0trb2xOdVNOQ2VaTHh2MHZRd1JPRExFalV1U3lMQmtPUWxwNmdmckwyODJvbzNIeVdKU0RpQlVCaUc0UUxNSElFWkZzRFlDbHlQTURrNXd2ajRFSU85eDlqZjNRYU5CbGhmV2NEWjlYWDhqWjk1QSsxdUo3ckVoazJGa2JJY0lZUmE5Ym1SR3EzVWhpTE4zaDlBQm9jR3hKNGh1WWx4eGlDTURIMUdubXhNd05MS0l2NmRYL3NsM0wvL0VMZHZmUitiRDdZd1FZbjU1WFhNcjY2aHQ3Q0VZbTdCZis4cXZoL0lPTDRER3g4RzR2NnFVczlFRFRUc05yUVZTWU90cW81aUNoN29STk5XWGFMQXZldzA5NXRQMFBZTG5zYlVQOTM4UzZiT3BPelBHYWx5SlhrS0x2L1VFSkduTElCVGZwOGFoMjJSdmFBQ3dHUnFPNkhrejM0cUVhaVJPK2FsL3Fla2laMHl5M3pLREVVanlLUjU0TTM5VDZZdUtEM2x2ZExjdFU0MUdVR3BEaFZ3STlQb0tqUlJ5Qk9CU0NYcFFDSG00amNTQzQ4RmlNQ1FnU0ZCWVF4WUNFVlJ3REJoZkhJSU16ckFyVzk5RlNYVjJGaGJ3dm16NjNqMitoa3NmL1o1dERxbDg1bTNIcVMxNlJvd203UmRxN0JWemJaamNaK1RwRUdyamUyTlRJRmdnYnpGMEtUS0JEaW0zaklwUUxYM0lBRmdBNXc3ZHhZYjV6ZndtVGMrZzdxdU1Udyt3b09IOTNIdnpqM2NmdnZIK082RExWZ1VLRWVIbUF6N3FLc0taT0dkZ1p4czJIcFJrRUppWWx4WGpQck02bUhTT2lnMW5XRkYxQkk4dmFTVVJKOVcweUNPcXNVR1I0WTRQNVJ5SmZtcGl6OWpva0lpMlVwYjVmMy9jZkNBUEY1TUg0N1VNUEtRQnZTU2JRQzZkMjBHRWJJQ2NhVEJJeWVSWE9zdmFKeUkrZ3JrQ3hWTnhSTWhpeW5NNEdybFZKdk45eHNYb0JFbUN6eE5Wa21Kc3BLR3VTcTJPN1o3ZFNLZ0pFZHRqMThrNm11UXNRYlZvZzB0Z0hnREZDc29BYkN0TUJ3Y1lIZjdBUjRkNytIZXJSK2pHby94OHZNMzhmbWZXY1g4L0FMNnZUN0ExZ3RFVWc5dkd5RVFST3p0eEJnY2JjNzlReVJvRlBJMkwxZEoreittSGwrckhKS1RzbTA4aURiUnJjaUNtVkFRWVVMRzBXZkpSSjI2aTFrTFkwZVg0OWp0ZDNIbDJoVmN2WGJGalM1cndXQndoTWU3VDNEdnpsMTg4US8vQ0VWUll1ZnhQaFl2WHNmYytqbDA1K2JCeHNSY1kwc01XRWxxUUdZWU12RW1CZC9IUEpUY09lZ0VOcVo0bzQ4c1Nsek5mQVhTcUllb01kdFAxRnBwUG9pbmdOZDVKYXpjcU1PTWhWVFdJNUpxY0tyV2FBS04yZlE5UWRkVFZUSk4vM2xob1ZORWxlVXptczZ6T1ExUmpjWWpPU2p1ckpLRU1DTFM0RFFyYzg0bTkxd3YrRXdia21QSUxpV0lHaHFBNW9YMUk3NU16cVNaaG9TTW9STkhaSlFpb0ZWK0hpU01xcUMwNzJsS1Q5N05COFFvQ09ESkVEd2NvQjRQY1BCa0Y0ZDdqOEdURXl6TXRIRng0eHh1UG5NT2l3dlBvZHZ2Z05uQVdoc1ZoWUxhMDJjZFRpRFJnSk96MFNnRUdJOVBjTEMzRHlaQ2FZd0NtVHd5TFZvUVJiSDNJUi9YelpSWVQ5TlZVMzVLUm81OTVENzRDZ2cxQ25LTVA4T01yUWYzMGUvMzBPMzNZWXAyVEhhMlNDYWtISk9OTEF3Qjh3dnpXRmhZeE5WcjF3QXdxc2tFK3dkUGNQL0JGbTdmdm9OM3ZuVUwrOGNqdE9lV3NMUytnWVhWZGZDNFJvZmdycmVQVjR2QWFrTHZrcURKeTd4WkVxL0NrMG5jaGtES3Q4QXY4anE0VjBlMVh5N0phYzZkUmZJZzNEU3Z6Mmd1ZWZVVVZiR0pqa1hJaHYrblZNbWtKOVI1dXkzTndYU3FYbTFEMGwra0ZDdzZCVFdrQkhUb2NVamdkMFBSWmlXZnpjZElkVVZuaTB0UGt0ZjZsSkdmS0hlZ1dCTGxZSmJHcnJLQVJVbzBaRkFNaVlyYzhGQWV4WGh2ZGJwU2tCQkgzakRIL0RrV0xSNXdKN0dsUUtWTjJmQ3dOWWJIaDJqTEVKZG4yekRiSDJCdGRRVXJWMWF3OEtucjZQVTZhTFZhY2RRWWR1dTZ0bG5KWnExendoRnIvY2dQcUd0Z05CNWhjRGpBNDkxZGJHL3ZZRzk3QitQQkFGUk5NTmZ0WWZ6NE1ZcW9yYURJTGpNUjI3QlJ0eUJaOWFSdHhsUk9IazdwaFVVZ1ROR2xtY1NpSUlJUndYQjdDOTJaSHY3b2QvNEpiR0hRWDFyQjJzWjVuTDk0Q2VzYlo3Rzhzb2orVEJlbU1ENW4weWMrRTZ2VDAyY0FsUVpMeTh0WVhGbkJDeTgrQzRqRnlmRUFCd2NEM0grNGhjM051OWkrOXhEclBBVHNDSWVIQjlFWGdUSXl1NDNjaDRoVmhNU2ZVRkVHeHpjVmdlYk1VU2l4NVZteFlTVng3MU1WS2cxSmNlSzJ4QWttSXd2OVFCZ2xpbEpkNm1zZFhMaUVzdkRjb0xBVnlybHljUXp1LzRPMStWTVFjR2xwdlpCdkFScTdCNW84QWttekN1MnpsaU9oVU9vYVVxbXg2YlhZejRYVDk2ZElTWlNHTWcrYWl0bEVIeFdTR1RUN3VSZ2tENG1JQUl3b0JGc1VXQ25XZVdNU1FXd29DVzN1RngrWWpWR2Y3Y3RFY1dZZW5WWWJWNjVkeGVMaUVsNzc5S2ZSN1hhai9aaU9wZzRsdXFWZ05SV1lpSENPUVNCVWRZWER3eVBzN2o3R3p2WTJ0cmUzOFAreDltWS90aVQzbmQ4bklqTHo3TFhjV3U2KzlPM2JlemZaVFRZcGNpUlJvbWFrR1Jzd2JGZ3diQTlHc0kxWkxNTWpqUDJmK05IUGZqSWdER3dNQkkxSEdtazRFa21Sb2lTeTJjMWU3bDYzYnQzYXE4NitaV2FFSHlJeU16TFBxZTRtTVAxQ3NKZGJWYWN5STM3TDkvdjU5czk2Sk9PcGpVQk5ZdlJrUWpJWXdXQklFRThaR2tNOVRRbFdWekpmVUM1OE1iNW9oa293cTdPam1zcUZZWVJYQVdVY3Z3elFvaXUyWjIxUTh5bnJoM3VNRHZhWXlvQjV1ODFvZFozejFjOTQyR2dRUzBtTW9iVjZpY3MzcnZQU3ZYdGN2M0dEN2N2YnJLN2FVSkJ5dUd1MlBTa2l6NXVkSnZWV2phMHJXM3oxM1hjUUtPSlpUSy9YNWZCZ242UERJNlJ5L0lkOE9TSzhQRDd5YllpcENvMXlMNFF1YkwvRmRLRnd0YnBEVUM1VEQrS0pnRHdndlRaZUJKMFFIbWtLN3lDbGtJZFhKdVdsOThpMzkxYTNQWlJuQjZhc0E4NmwyMEppdVE0U0F1R0xLcFkwR2RtUUtCT2VHRkh1WmhhR0cwYVVCb3JDdStHTkZ5YVMyM1pMMWs3UFYxMUpZUzU3OHdzTnRxbm9Ta3B5WHJNNExNSHpFbVRoa2RLWForSlBnYjErMjEzTnZnaEdhNGYyTW9ZZ3JQSDJPMitYTE5LcFM3akpFbzZNdGhaZ0lTUXlVRWdwU1hUQ1lEU2szKzF4Zkh6SzBjRWhvMzZQMlhoTU9rL1Fzem56MFpDNFB5UWVER0U2NFZJWTBIVFc1QUNJcEtRWkJ0VHJVWjZSN0xQZmJjV2xjNjlHaVplWFc1UU5DNkVZbVdYV2J5TThqSlpyODFsclI3eDU2ekxqNlp6aFpNcDRPbWMrT0NNWjlwaS9rUFNSSEV6bVJLdXJKR3RyVEo0OTQvbFBmd1pSaUtwSDFEcXJiRisvenAyWFh1YmE5ZXRzYm0yeHVyYml3ajlUdS9oekQyNHg3TFBaaVBWR2pWcGptNjNMVzdrQlNRdnRyVWY5enlORmlLQndDd2l4R0hSZHNxcnJpc1BSNUxMbDBrSHBaa0s2c2pzcmdLR1ZnUjJMaytwY3ZiZ29PUFRtWjJVVnBLK0N6WWZmWWpGOXlCOXQ1d2xLZ2tJSnVMaFhFSVZEVEhnYWZMUEVIVlVkVUdUVWtWek9xeXNyRUxOMFBsOE1HQmZUVXNxaXA2S0ZNTUlzK1hmS3c2MmlOUE1IaDZaZy9YbTVnYm1FV1JRRWxzeUVZd2N5TWsvQzBjWTNyN2hkdUJhZTFkVHErVExOUHNhZ1UyMkhYV2RuN0Ivc2MvamlrSGd5aGlTRzFKREdLZkY0eEt6WFJRekhCSEdNVEJJaURBMERpYllCSDF1aHBDMFZrVklFeWlVQlo4eTZCVk4yMGErS1BDbzhPL0t5WVpmMnVqeXpzRWYxSDBSL3hxUGNMQ0kwS1pkYklicFRCMWJSQmlaSnltU1dNcGpNT0J4TzZJMUhyRXBCY3p3azJYOU9vaVF6cVpqVkcweFgxeGsvZnNLenYva2JaQlNod3dCVnE5dEQ0ZVc3M0x4MWc4dVhyN0N5c29JS0E0UU1jak5UZHExWnoxajIwbXYzdVJ2UXVwZ1RtV0tDTDV6WDN5emsvSGxiSUNGS3VuMmh5OCtxOElSQUl2TmJpa1dIWTJteDVSR3h5LzZKeGQyZThkYU41YmJjbEpTaGhlSlJMODRJQkpRVENNclpIVUZwN2xheUx2c3ZpM2ZpNVh0U0h3ZnRQVE5HbEVJOWpLaklraW9QMkhKZCtxTDB1RlROWUNxQ0pGK29WSUVuR2xHT2NmWU1Gbm4wbFRCZTBXTWdsZDdnU3hRbmVRNEs4Y1E3K2M3WnRnMVp1R2VhcG95R0k4NjY1eHp1NzNQd1lwL3pveE9TNlF5WmF0SmtEdE01eVdDQUdBMXBHbzBDUXBPeUFrUUlsSUFnVW9SU0VRWWg1OU1KMDFuTVdsZ2o4b0NtQnBPWGo3a0ZPcHVYNTdKblVlNXg4MGUyOEoxTDRUditaTzQvOEZGclZUNmhoYnZhbDAzck5LLzZHbExRYUNqVzYwM1cyazFPdWtOZXU3cEpRMmxtOHhtVCtaejVmTTVzT2lPZURVaVBKZE1VdWtLd3J3VXJXNWNaUDl2bHhZY2ZJbXMxVWlscHJxMXkrK1Y3M0hycEx0ZHVYR2RyYTV0YXZZbFUvc0l6TFVKb1V4Y3RsLzI4VXJqWmd5aGRCT1dqc2hCVmFlT3QxRXlWTFZteDJsWjdhUzdlNHZuaW40S0lWSDR2aEJHVVVzdEYrV1VYSHB6VlVLWkZGU0srREpRc2xrcWVyUkNvbEc1WitjWnpBWVlwVzVoTE8wcmhpVStLLy85RmtnWHJGRFFsQjJOMUVaUC9PTm83bVB3NW9LbTBMUDZTVTNvNnNFbzVrUkZ5aFJlZGh4Y1FXYXA4d0FPQmtzOE1CRUZ1bEpwTzV3eUhBM3E5QWIxdWwrT2pRN3JIcCtoWmpOS2FlRG9sR1k2Snozc3duaERwbE1Cb2xERUVPaUdTaHUxR25acVVLQlVST0k2QWNQRmQyV2N4UWpBejVLNi9jaHBPOWorbXBIWlV3dUZJVEFIZUxIcGVRekhPMEc1S1hsQ2dqV1FwU2dzUEwyYTBpeHdYcHV6QXlnYXkyaUJTUTJCUzFtdVNyVVlBTWdLcDBBYm1pV2FheEV4bWM2YmptT05ad3ZUNGhJMDRobjFEREV5QXBObEViMnp3Y0dlSEo4MGZRaGhBR05IZTJHVGo4aFd1WHIvT3RSdFgyZHJlb3RWdUVSV1RQUS9jVXJaLzU2eEhiU3FYRUNVN2RXYm15bEhnZVloTVZTMXFsdWJ3VmJUcXBVcTVHcjJlRC9aRTVSMnFHTytNcUt5L2w2Z1BEWXZGYnpIbzk2R2d4c3NNWHhpNGtSTml5aitrUDB4Yi9wcWJrcjY0ckUyMEpiVzdweXRaQjlyUENmRHRrQ1ZmaFNkdnJWWU9sWFdNVDJZcHVkWk1pVUJBS2YxZCtLWWo2VElDTTVxc1JKaVVoeDkreElObnp6ay9PeU9aelpGYVE1SWdaek5tdlI3QmFFVERDQlNHQnFDTUlSS1NVRnBzdUZJQjR6UmxNcCt5MW1nU2FlMkJDTnhJU2hTeTJFQktaeGt1QkZLNXcwOTRuMTAraXhFNVRCUVBjbUxYaTA0cG1JZUNTcElrb1FBUUZ0ZFAvdEpMdi96TkRGZmF5WmlMeURUL2REYXU5SllZbFBSazNkcHVENEpBMEF4Q1RDMkFGY0ZtSWprKzdmTEcxUTEwUEdVNG1US1p4VXluZmRnZm9RK2VNeE9Da1lGdTFPQmtiWjJUdFRYdTErc2tHSXhTckc5dmMvdm1MUWFQSG5CTjJNOWFaakFNVHo3dDI2TnpiNzRvNWliWkdoVk5HZHBweXN4c1V5cEhxNW9UajhVcmlyQ1hJckhabjZlSkhOWlp2ajVOaWU1UWlqK3Rlai84aTlDclQwcXpDZTl0Q1RLeXFYVmtlZjIzL3lBS0Y0dWcwd0lGbFQ5bnVuRFlDVlVncm9RalFPYkNEVTlGNXc4dkJGNEdueTYrUldtOFhEbTNSVkFGYWRoUTJENExsYURmam1RalZsTWFwSWhLSXE3dk9ETnVaNmExSHdWZEVGUXk1Nm1VZ2tnYnByLzRpTDVRQ0JWaUpqTk1taEFCVFdsb0pnbnRNR0Exc2k5Nm9CUUtVRzU0NkRwVTVxa2JRS2E2aUxNVTNzTW5DdDZQa3NLdCtVeHBkWnZ2K04yYVNidGNCOStNbm1uenRmdTlwbkhDY0RqbS9PeU1vNk1Ebmp4OFNFU0t4SERycFR0Y3ZuYWRyZTB0VmpzdEFGS2wwSVJXTjJDMCt6M0lETW5uckJxdXI5YTZPRXJkM0NpUVZ2T1BNQ1F1VVVtYUlxakZHTWM3VEJXUk1HeldKSTFtRGJuZXdFaEJxaFJKa2pLYkp3eW5NOGF6bEwzQmtPSEJpR2IvbE40c1lhb05zMW9OOCt3cCttYy80VzZnQ1d2S0d0S0U4VVF6dGtTU21YZmJMRkdrQ1ZQQ29TdHZlNUJqMFV3bCt0dFFSblpuYTExanlvSXVzaTJDeUE5SlFYWGQ3c00rZllWcjJlNXRURGtMd2xTYUZFRjVDSi96WDF5QkZQaHJBOTkzbkJGV2ZHdXZsREluamhvaEN5eVZLRUkxeUJKa2hQREtlN2QxbFY2N0lmTk1WU2QyV2ZRMjVWTk5WMGxvWi92TUJuUEtXVmUxTnhiTkNVYkNJTFdzbEZiQ2U2bEZFUWhDeGNVbGRMN3F5ei9ZVEc4djdJc1lwb2JidFRxOXlZejViSXcybWpBS3FBY2hqVkRSSGZSWWE5WllDUUp2cGVSTHA2MUJSV2FyVHlGSWRWWmVheGZ3SUhMN3NSVFdqS3VjZUtNSWp2UU1TTzVoMDBJd0Y0S3BrSXhWU0tvQ1pnSW1RbkF1QkovKzhJZjg2SU1QdUhMMUtsY3VYMlo3YzVQMVRvZnhvTXR2L0lQZll2L3dpRi84NGlPZS9wdEhqSHA5Z3VHQWFkRGtrZ3hwa2RJd210Z0k1b0ZpSGdha0luWkNHbnVRWlRvS2U1d0h5RUFnWmJHYWROdFUrLzJuM3QxbWl0V2xFTWEyUVZJZ2xDU1VCbEVQV0trSGJLMjFiYWUvZDhaZ091TnlwODRvbk5HZnpobk5KMXlLNFZxanhVcWtDS1QxRE9SeDVWNmNmVmtvSjhHa1huVmJET0NrUzk3SkIzNVpGU01LWXBEMEsxbWZ1WkNSc1kxVGNub3Z2NkNzd1pHZVpiaGtWUExublNKci96TEFkclY5RnhVVEYyNG82dWNqRno5ODRHZUtDd0ZheWp6VkpFZHpTVzhZbUxQRmMvWnUzamFZQ3ViSkFrdGxFYldVdjF5VUNiL2E1T2pHYklpWTU2OFlYOGlRNW5iUy9KZFRWVW9KYVlVcWxQc3huN2FpdlQxc3ZoR283SE5MRm1CbmdaVVpoc05ZOVprUUVEVnFlVitsODViRkJYeGs5RVF2ZkJTZEJVaEs1L2FqRUI2SnduK2ZyVGwxSm9iS0FTMFFPaEpzYkxma2FLR0lnVmdLNWtJeXhYQnNETE5XazE2cnhjcjJOdHUzYm5QMzhqYnRGUnM3M21pM0NKUkVweWxwcWprNVBzU1ltTHV2M3VPbDErNWhrR2l0bVU5akJ0MGhaeWNuSE93K1orL3hRODUybmhBUGVnenZDQjVFRFRaRlFnZE5tTVNFSWtXbENVRm1YMVpXR3F6Y1RFTTRINGJFb0ZOdnJHYTgzRU1aMk1HZXNyOERqUzZ5NzR6TE9UUUNkRXBkaFZ4cDF4R3QwTTRVMHBSUUtwUUVLWFFSOHBuZHpMcFFuV2FiQXVPSHBmbzRNdUVGeGhyZm01TGxUV1EraS9KV0lJT2Mrc05CSTNUK0VHWUhkNUJCUDBvOERsOStYeFlFRkJxWExCdXVraTJtUGNpcjhSRnRMbXpHNlFCelhKNDIrZmZncDc5amhDcVk5VklzdUE3OGZicjJUNjVzVTVvUEZqVUwxSVdTR1VrdW1aQzZGOFpOL216bUdibnN0SkR4ZWo1MHNrckVPKzJkMVZSV0JqSzVJQ2tyckdVRkk0VE9WWUlsVFZ6RnppaUUxYUhiaXRpZ0pYbTZzc2ErbkxHRGNjcDhrQ2Nxa2dhcnBjKzJLcElpcmx4blVtZGgrMmNqd0NoRklpU3pJQ1ExbXFFeERJeG1iRFF6SVZIcmwxaTdlbzBydDIvdzF0WVdhOXZicks2dDBXZzBTRk5ORXM5ZGkrYk9YYTF6NGt6eDhFcWtzcDRHS1JXcVU2UGViTEY5NHlwdnZQZXVOU1FsS2NQQmdMT1RZdzVmdk9CZ1o0ZUhqeDdRMzl0QjludXNpSlNWUU5BUmhrNG9NU0lrRFVQU3dJRkQ4bndJU2tUbnJNSUtwVFU0SVZMM3Zka0ZKNDdncTFOQm1xYXVsY3BpRUJLa01TZ3BrRExGS09VNmxDTERJQ3ZYTXdsN2RpTm5oM1Z1Y3M1TVhWS1VuSStsalpPL2t4S0xucFRGTmJmTU16Q0V6NUxLU0ZIRzIrcklDbnZPMXdZWVU3SEZlMnhJdEhzWlpZNHY5MHNSbjRJbGhNRW9Cd1hOU281UzVwdkk5c3Zrd3lpZHU1NDhaSjR6TVZCYXJZaXlxQWQvMk9jRmZIb2JnNnowazc2OVdoUjhOMCtFVlhnSmhNRElERDdoYlE2eWVLMWxqa2poZTk2Tkp6Mm1tQkNickhlekZhb1dXV3B2a21PK01KYW1JNEJFWmtNak8rc3d4dGdTV1VPYWFCVFdDaXlkajg1NHA0b1MwdDFXdUJRWVNTSWcxaGFmbFdnTmdXUnVKS2VrOU9zUnB6cWhjZVVxRzlldmNmUGFOVGEydGxoYlc2WFphaFBVYW1oU1o5KzFqL3RzT3NsZnV1d20xS1pRdkdsL09tck1RZ0NIVk81M1RHcm5NUXBXVnR0MDFqcmN1dmN5Z2w5SGFNMW8yT2Y4OUl5akZ5ODRmUDZjZzUxbmZQYjhHY25aTWVQdEd6d2dZQk5EbUtiVUREU01JVFRDRGdlemVZY0tpSlJBQmRJZHBkcEZhRXRQZ1ptaVUvS2YwZTl6cFJBZzFRTE5KMTk3bXNUT1NYU1JBVWpWeFpvbERPbHNqV1p5Z1pIeDBwcHlkNnlwUk1PNWQ2VDZsOUxDRzhhYXNnYkFNN3ZwUEJtcCt2MWxGa3ZIZnl4UlQweCtrQXRQVnEra3NNNVQ2ZHlWN3NHZWo4Y01lK2NaRW16UlhTdkVvb0JCNUllQXYyNDBsVFdSS08xVEY1MTVvc0p0OVcyc0Jaa251OW1sS1U3WlRFSmJiUG5Oa2hxaUxOaklEcDZ5MEZHNFhQVml5Rm1FaEhyaUJ2ZnphazlIWHZKekNkZmJaaFdwTWFWWlNoWm1LZk9Cb3R1MHVCdE5DR2tGS1VGQUhBVE1wV0tTYXFZWUprSXcwcHEwMldiOXppMjJiOTdpYTlldXNMNXhpVWFuVFJoR2hGS1F1bUFSNlI3NHhDUWwreWVwSmhHSlJaR0pyTjJSM25KWkY2MkttN1JZelh0UWR0RzVLc1pxekVXK29zU2JYRGZiVFJydEZ0ZHYzd1MraFRHUytYekdlRGppNU9pSW8rZlBPWHkydy9HVGg0eWVQcUlSejFpVmdyYlF0SldoRlFaMmRxQUNFcUVJaFB2c3NnQlZwN3JNV3pNQlF1czhwZGlJSXRMYmVBZTg4UWQ0V2x1T2dsYzk1cnlKMGdCTzQ1V2VudDdGTVFFeS9ZWDM4bVR6UkdtS0ZPbGxUc0NzTnMyVG43MERXTHNiTjQrZXoydGw0ODI1S3RMbTdNL1gybTQ3dGNXOUsyQSttVEFjOUJpY25YQitlTUN6eHc5NS91UXhUKzkvU25kL2w4RDIwTExreEJNc0NmQVEzb29wVTVWNWkwdVQ5VG1tWXI2dDVMK0pYRGNndlpQWk9aWDhzdDRUUXhqUGpGT3huWmVXTGJJU0JHSThZWjkvUVBsR2NlRmxzRnNtdHltODdrWVVjVlBHU2t4OGNJbko1Z2w1ZXF6OUhOSzhYUkgydjVIQ1JUUVhLUEpZQk15QTh4RDZZY2l4RU9oMmk4MDd0N2w4NHdicm01dGMycnhFWjIwRkZZWXVNZGgrdnhrb1ZPc0VVaDhmcm5OcWprRGtIUDVVYXc5Mm11WUJMVUxhMjNJNm1kTHQ5VGsvNjNKK2NzN2F4aVl5bEdWQ2tIREpzNjRYMWo0NHcvM2VNMEJuN3JOQVVtdlVxVFVhckc5djhNcmJiNEF4SkxNSjArR1E0Nk1UOW5aMk9YcXh5eWVQSGpGODlvUm1QR2V3ZG9uVkZOWlVTRk1vSXFGUjhSeVphbHRGaVNJSjNMWjB5cTRrczBUZm5OU1VIVkEyMTBzbkNTaVQrd01XWXNOTmtlMXdnY3kxMkNSNFRiOC94OEFzcHdHWkNyeWtGQnhUMGY5bkw3NFNEcWttUUVvLzg4L2tMWHFXdnB3bU1hTmVsMkgzak1QOUYrenRQT0hwd3dmc1B2eU1rK2M3bU5rRUpiRWNqRFJGR3MxcXAwa2d0SEU5cit0ZlBSU3k4TGVCQlpxZlludFNaSkZKUXprcjNsY29aYWtsTWdOY3VzZERaOEdXeGF6QjRLa0hzMGwzN3BNdUJpRlppR00xbE5UNFV1QlM5SklwUkJ4NXlTU0w0WTcwS2ZJeWR6cG1yWURHNnZoVFk5ZUYwa0V4ZkthaXhoSnJOSkpFQ0daU01GQ0tXTUxVd0V4SllnUkpGS0UyTjdqeTBzdThjdTBLblV0cnJEa09nRkNDVkNldVJYYUk4RFNCTlBHWXlwbjZUK2ZiVXA5bVkwdkRGSkxVZWN3VmdWQUlZRGljME8zMU9UMDk1K2pna0NkUEhuTjRjTUI0TkNRQWZ2RDlIM0w1MmpYZWVlOWQzbnp6RFc3ZXVzSG01Z1pibTF2VTZ6V2tVcVNaaDhQb0VoWFhtQ3hHM09SOWFKWUg2VHYwZ2xwRXA3WkJlK01TTDczeGVsNlN6NmN6dXFkZGp2WVBPTjU3em90bk94eDk5akdtZTh4S0tsbkIyR3BCQ2lKcGlGVnNuNUF3Y0lwSFFXYW9sVzQ3bFIzZ2FWNkZ5WHdiSkx6QmtCVXpVYVJBWmVFc1hvU1hFcUpzTWM1NmVDbzVCeFRjL2V5Wkt5dDBzME5BZTNaN1Uwa1FnbFNuYUxlWmtFSVR1ZzNSYkRoZzFEM2w5UENJL2QyblBIbndHVTgrKzVUencxMlM4Y0RPUW9SOTJaV0FqVnJJOXRWTnJsKzl6T1pxaDJhelJxZFpweDRGQkw0Q1J4aVRyK1FLNjNlaEdDdWZlTklSZjRvQXhGenBaSFNaTXBUMTVWcDRRUlhGVkRLRE1raFRFVkRrYWl2aFdXOExHWkQwL0pEWndTRnk2YWJURkFodlNPSmhvWEs2a0N1ZFpaNzk1Z1F2U2hicE50cGlRZUpVRTJlYksvY1NwTml0UXlJa00yQmlZSkJxenFPUVl3SDFWcHVWSzVlNWZPY21HMWV2c0xXOXlhV05UVnJ0Rll5MFh6T081emxMM3hpTk50SnFIa3pab3BudGJ6TjdzOHhxRHN1eHNCY0FBQ0FBU1VSQlZPRlZWKzZoaitjSjNWNlBzMjZYazZNVERsOGM4ZUQrQTg1T2owbTF0aFNoTEpYV1lCTnJsV0k4bmZIdy9uMCsrY1ZIVGhnRVNpazZxNnU4OS9Xdjg3V3ZmNDNiZCs1dzVlcGx0aTl2czdLeVFsQ0wzTVpITzdhZHlsSG0xbTVmcEVxN3NXaUJzTTVXck5MUWFLL1FiRi9pNnUyWDNUT1hrc3duZE05T09EOCs0V2h2bjJlUEh2RFovYytZN3UraHc1VDFwbVEzYU5BeUlRMk1WVmlTV3BlbUJwUG9ITGhLbXVZU2NPVmtrVUw0dVk3dSs1RVZkSTd3MFZFVXljR20zSnNYUWtqdEJYVzQ1MWlZZ2hya1VhOTlWeVVpSmN4MHFtbkNiRGpnL1BTVXM2TkREcDd2OFB6eFl6NzU4R2NjNys3QWZHTEZhUktFU1ltVW9ObXFjMm03elpYdFRiWTMxdGhZN2RCcDFtZzE2b1JLMnVvdlRiMzVRMEpRN1ZheTVDdDg2RUVKWjZ6eFRXVmlpY0RZdHg0VUFmRUZka3NzOEhwU3IzUTBSWWV2UmNsNGtSRnBoYW1zUHJMOWcxbW11UFpQK2VKQWs5bkl6N0g2TWpCRUJ1R1FVbWFWYlQ2NWpvMWdiQXk5MUI0Q3NUUWtRakNZeDR3RFJXMXJtODBidDdoNyt4WmYyMWludGJaS3M5RWlxa1VJaVJYQU9ESFJaRHBhNE5GbHlra3BQZDJrdGdteE9xTWJDRGVkbHhZeU9vOW5qRWNUenMvT09ENCs1dkRnaUwzZDUrenU3RENkemV3YVRLcDhjMlJrRFNOaHJtMmxrdld0cEFrQmhtWnJCV1VNVXFmVWpMSHpEWk9TbUpTZi9QakgvUFVQZjBBYXg1WjRoT0hsMTkva3ZXKzh6OHQzNzNMcjlpMnVYYi9PeHVZbWpXYkRXbnlOTHRBeCtVUy82cnZMZnI5cGllbVBNQVMxa0V0WHQ5bTRzczI5dDkvazIrYTc2RFJsMUI5d2RuTEc4Y0VSeng4L1l1ZnBZeVo3endoSFBWYWtvRzRNSFNRTkE0RlV6SVVpMWJhQ1EyS1pqQ3BBcExHN2dHUytHcGJHZTliOXBNN2NzN3VZLzFEU3B4c0hoM0hQdG0wNU5GSlo3WXFRZ2xBS0lnRnBNbU0rbVhCMmZNRDV5UkdIdTdzOGYvcVlqei80S2Z0UDdrTThkOXZKRkowbUJNS3cwZTZ3ZVdXTDdjMDF0amN1Y1dtbFNhZFpvMVlMcVlVS1lWSW43WFlxR1QwbE1VVTZ0OWRJMjJRZ0lZcnNlRk1sblM2QkdlV2dCYkdjUkdxRVdBSTJyTGdhU2ptQjFyWGxHNUtFZDNMaThjN0srOFNxWk5KM0VjaUsvTmg0RGtLN2l4ZlN5bUl6ZEpXUnhpS3RWRUNnQWtJbG1LdUFuZ3FZR1RnTlFnWTZwUmNHckw5MGo2dTM3bkRseGpYV0xxM1JXVjBoQ2tOa1VFTWJUWnJHZG45dEJLa2JyR1ZRVUZPRkxoaDh2YTZ6RzJnUE9TYlJTY0o0TXFQYlBlZjB0TXZCL2hHSGh3ZnNQbmxDcjN1ZXcwV3pOV1NpSVRFQjJralNGS1FKOGlySmVEdmxmSkl0SkZwbzBvejlMMTBldHNwbWx6by9vQU90TWFuRzZJU2RuVjJlUG5xRXd0aWZXV3VhblhXKytvMXY4UExMZDdsMzcyVnUzYm5CbFN1WFdWbGRvOTZvNStJWS82SXBabWxwb1prdzNnb3ZIeXNJbEFycGJHelF1YlRKN1ZkZjU1dmYvZnVRYXNiaklZUHpjMDRPOXpsNnZzUGVvNGVjUFBpTTlPU0UvcVZ0SGhDd3JTS0c5U2JKZUpRUERQTlEwcHhOa1Jia3BUSlVFS1QwQWs5eTA3Qm4xblZEWmVNR2NXNWRuTXpuVFB0RCt1Zm5IQi91YzdEemxLUG5Peng5ZUorSEgzK0FTT1kwSTh1SHRHejRoSzFXZ3l1M3JyTzl1Y2JHK2lxWFZsdTBHM1dpTUVEWjZaSlRYV2JPRDN2REd4KzFuNzBIdWNmRkp5WkpBcHh5VG9qUGczTXVVL3Q3K0FhUEJsVEcrbGZwSXFJOGFERlVjY0tsT3NLM1Q1WmhRYm9NUVZpb1BUekN1ejNTYzRhZDNiWHJYTEtzdFhid1NjRnNOcWZmN2JQejZDbUgrNGZzVFNiTU45WUpybDNuOG8yYjNMdTh6ZmJsYmRxZEZrRVVJWU13cjBxeStVT2lFL3NZU09sYUZGUFloa1dHV0ZOT3ArOW5Ja2kzK3paTVoxT0d3d0hkOHo3SEp5YzhmZktFRjN2N0hPMGZNSi9OWFVsdFA0OUVRMHFBU1lUendXVWNQcGxIWW9HeG5BQWg4dkFNbWNtL002T015R2pGRU1lWm5Gdm11NXJVZzJ3S0Via0ZjZ1NSUmhwajkvS3AzY1dQNDVTLy9JdS80UHZmKzU3VjBTY3pvbnJFdmRmZjR0WFhYK0hOdDk3azlwM2JYTDk1azgzTkRack5WbEVxWjNiZTBzRXR5djhjNDFTcDJWUXF3U2hCbzlPaTBXNXgrZVoxM25yL1BiU2VFMCtuOU0rNkhCMGVzYmZ6bkJkUG4zTDQ4QUdqMWpGUDkzWWhrRHgvOGdRcG9OTnBJa083Zmt5U2hNUVloTEpxTEptMXZWTGtMWXlWajJ2SElOUW9ZWkJHRTArR3pBWUR6bzRPZWZIOEtZL3ZmOGJPL2Z2c1B2eVV3ZW1SYXk5dG0ycE1RaU5RM0xwK2xadFh0N20wMXVMUzZpcXJyVHExZWtBVUJraVRZa3ppRHNRa0d5MlhMaENmWWloOEYwRCtHZmxKUllYdFYvelpzK0hua01zdllneVh5ZkVWVWxtRlRpSVFGVXhxTGpWZUFJOHZIakFtejdDcmJpb05ZcWtOU2VRWkFBV20zcjJrU1V5SUpwM1BHSFpQT1g3eUdYLzRmLzRmdlA3NnF3d0hRK1p4d3RiV05sZXVYR0YxZlozV1dvZFdvMmFaZlViazJYT0ZjMUI2ZTkyS25takpRTWp1bmxPa2xQa3RQNXRNR2ZRSG5KMzEyWC94Z3NkUEhuTjhkTVJvTUhDZmtjcFhrYW0ybTRoWTI0Y3hKWXRldzdNOU8rVmc3dmN2RGt3cDdBT3Nnc0RCUkFWU1daRG1mREpFbW9RMzNub2RuWUxXcVgwSmtwUTRUb25qT1lsakllVG0yMUxnalZmMW1Xdy80cllqSnNYb0JKUEV0Zy9Ib0hXQ1ZJcnRhOWQ1NWQ0cnZQZnVlMXk1Y1owYk4yK3dzYm5PeW1xSFVNa2lUMDhLUjVUeTA1TkZlWWZ2MDZaTVdyU1NSaFFKeVVhU0pMYUZPRGs1NXVSb24vM2RYUjQ5dUU4Y3o3bHgreGJ0Wm9PZi9md1hmT2UvK3hlMHRtOWdaR2dWQ2JyQXdDa004K21FZnZlTS90a1pSeStlcy8vc0tVL3VmOHJCemhPR0o0ZElIUk1HZG5zQ0dpVUZuWGFMeTVlMzJGeGZZYVhUWVRhYkVNbVV1emV2SVVYcTJsTlpjQnJ5cHFtRTlTZ2xjT01EYWl1S3U1eG5ZVXlPRWl1OUxYKzJPelNsVUVhekRGM3N2NkRHMjRuNmtscktVU2VsUDBndStYdExUb3hLeUdHaHJQcWN5c1NJTDdBZVc4bm5ySGZLRC83NC8rWEZvd2VjdkhoR1lCS3VYdG5pMnRWclhMMTZtYlZMbDZqWG02aEFvZHlEbGhnTHpVd1Rxem9UWk56QVlxR1lEWkdrVW1WU3NiR3FMT0U4dGRQcGlGNS9RUGZzbktQakk1NDgzZUhKb3gwRzNYUFNKQUZwQjNKWkNhK050RzQ5R2JxMlV6cDl2ZkgyeDZLMG1zbWxzaTZSSjFBS3BXeGxJYVVxNHJXOHlaTjJFL3JKZUloU0NXKysvbHFaOUtTTHoxVWJReEpuQjBQQ1BFbUlrOVNKaW1ScGFKYnhFcVFEYjloTlRxYnExT2cwSnA3UEVXbUtNSW1WSk1jeEdFMnQxZWJxdFd1OC84MXY4TW9yOTdqejBpMnVYcnRxL2YrTk9pcUlpdEkySHhJVlNVMjVZTWlUN21hRFBHTmtRWVBPQnIra3BQR0VmditNMDZNVERsNjg0UG51YzU3dVBHZVdDdGF1M21UaitpMGE3VlVPRHc1NDhld1pEejcraUVlZi9vTEI2VEhKZE95NGk0WkFHbXBSeUdxbnhiWHREYTVlMldKemZZM1ZUb3QydlVZWUtmdDlKZ2tIUjZla3lad2JWemVkRmtWNm9Uakd3KzBYejE0bXc5ZGVFbGVKeTJGRUpWL0lhNk9rcUt6cEJVR2VaUzYwNTZPdjRvZzhyendGSFZhWUplUU9EeTVZS0lJTFhieklqVCs2a3RZaEtneCtYUTVROVAzWkZ4cXVxMFdMeWZ2SndkRSszL3ZELzR2Zit5Zi9tUFZmL3hyMWVzMXg2Tnh0S1l2VlMycUtZc3JQYXk4WUFsYWZMbHkvSjZXeVA0S1U2RlF6bmM3cGQ3dWNuSjZ3dDNmQTR3Y1BlTGJ6aFBrOGRidHErNmdtR2pBS0xSV3B5dyt3QjRIL0VvbHlIMnd5NTZWN0JZeTkwYVcwVVdIV1FLTnNrZzNGRFpCSlhzM2kxTkd0bVlvb2FiUXVKU1RuMEZBTVVhU0lRZ2tpeXZrRFdodmlKTFdIUTVveW55ZWsyaG1VVEVHcFNUSlJyRkNJUUJLR05WUTI5YzdnSTJtQ1RsTDI5dmJaKzhOL2pVNFRralJCQ3NuRzFpWnZ2L3N1WDMzM1BWNTYrUjVYcjEzbnl0WEwxQnNOYXJVSWhDSFZxYmQrVEl0b3M0eUdMSW9EMnFRcFFnWWdGRVlFQkxVMmpVNUthMjNPeWppaGVUTGdyLzdrVDNqMjdQOTJ1WHJTcnRlMExjZkRVSEpyczgzRytuVXViMXhpWTdWRnAxV2pXWStvUnlHUnRGVldialFYcVIzbUlYaXhmNEJTaWh0WHQyMjFVb0FBUE5BdVhuQ3RBUkY0VjJvNW5VbUlLbC9mY3hsbUEzQk5IdGFSdlZHQkVMbWZyaENxR0QrYVdKZGViTEdvaXlpbDhGYURPZXpsbFhvR1JWMStnVDJQZEw1Mk5SWElnSjhWV0NVTCtWTmtqM2RtL1NKKzNMZ2dDa011WDc1TVdLKzVveUZYaFdPY1cwdUt3bHRRSnY1UU1rMlpKR1U2bTlIdjlUZzc2M0owZU15TGcwTWVQYnpQNmZFSmdReVFRWkNENDFJRGliWTgrOVNSZGZOZm8vQkthbE5KNm5HQ2pBQ0Jrc3F5QkpWQ1pac0s0VTAvS3RRSGthTzdqU2Z2cmpBU2pTZjk5bHhvd2dPTkZKZzFVZHJxNUZ3aFphc05hcWFRd1RxRVdaSnFramhtbnN4SVlvTk9VODlxN1pKK01veWFrS0FVUWhtQ3FPYUdYSVpJMjZuMmFETGxSOS8vQVgvMUgvK0NKSmtUeitmSU1PRG0zVmQ0NzJ2dmMrdjJEZTYrZkljYk42Nnh2YjFKdTkwaUNLUGM3eUdFUkdzWWo4YjArMzMyOW5ZNVBqN2p3ZjFIUEhuOGlCOTgvL3M4L3VRVEdxMEdVUlRrektSbVBlTGFsUzJ1Ym0yd3Ribk9aRFJpWTMyVjIzZHVFS2tBU1lwSkU2dlgwSzdkMUNsWmdHRldxZG01cnVMcHpoN3RacDNMVzVlc21NdWZpa3RSZHZaNVE3WFNIV21xK010S0crb0pqb1FmMEdGa3JvWUY0N3dBbnRmUUxGblNpR3JBbUNqRUhhWGlPK1BGQzFHZWJGY1dmNlZBVU1yQ29WeDlWazFhRVV0dXJ1b3N3cGdGekpncFNUUkV2dnJ6cVk3WjF3OEM1ZnozSWk5ZnBSVE01d25qMFpqejdobUhSMGZzN2o1ajU4a3o5cDQvWnpxWnVPR2RRZ3M3ZmRkaGk5U1Y4Y2IzVmdSRm01UzZ3MUpxUDZMTTlwZGhFQ0NWUkNuclpSY09TZTFUaWt4SlY4YXlwRWtuRDc0b0hhbHNQeE1sczlMeU5BdFRrV3lYYU5EZXpTcWM3VFlRaGpBTU1IV0ZvT1lzc1lJMFNVaTFKbzVqWnZPWXhMVVJwZmxDVnBrcEF6SndQM3M5cjFRQ05IV2RRcW81UGp6Z2ovL04vMk5iS2EzUlNVeG5iWjIzdnZwVjd0Mjd4OXRmZVFlRTVQSGpKengrL0lSUFAvcVlSNTkraUZDS1doQmdVbzNXQ1NwUWZPV051Mnh2YnJDOXNjNzZhcE5PSTZMZGJ0SnFSQ2dWOFBUWmM5cEJrMWRldW9yUmMwVGlERllhVzNFWVR4NnNyYnJWemxodG5QdWpKMDlaWDcvRTF2b3FtQmlmZ2lrcVNzRHF1MmVNYjN2WFZXaDdQZ3NvWFh5bFFzOGdIWGs2by84RWk2VzdQOW5KVUZNK0dVYm5mMDhJbng3c2tVYTBIOG50amV6eXZxYTYvOWI1ZFdROFNFSUpibmh4bmU5NlZWVmdxVHdZcVAyKzdKb25OU21KVGhHcExqeWVqaDJBa0tSeHpIQThzUy83NlJtblorYzhlZktFdzhORHpzL09TZE0wZHhtbVdwQm9ReXJyRHBZQ1dycmJQUHNaUlZHeUYvMlZYYnNwQklGVXFOQXlCSldMQ0JPZXFjcVVjRkJrVndoSTZmRlNUQ1VwclZCeG1vVnFhZG5PdHF3aUxDU3hvcnozTmtzZVJvb0FtTVhSamloY294NFhXd3FKREJXQlVkU2lrRTY3TVBVa2FZcE9OZkU4Sms0UzB0U0tlSEptaDVHNXAxOEloUllLR1lBS0lsU2tiYnN3SGFPRllqYWU4Tk1mL2hVLy9lRVArZGNPVEtOTmdqQ1dNL0RLcmF0YzJkNWk4OUlLYTUwMks2MDZqVVlkSmEzL1FPdlVWVDBXcnpJWmpmbnM0Uk5XVnpxODh0Sk5qSHZ4Yy9GYmlhZm9odzBaMHRTdVZaOCtmc0xsSzl1c3JiVHRxbEdiTXZaYlpLRTBQbmM5cXhKbENaWmIvSzRvQ2VSSzdXOEdTZldRWUtrRHQyZ05zM2xLa0FFd3lqd2pYZjZseXVXWnBtVU00YUlIMzFBaHJsNlFqUzRRWGhUNXNtdXFqQ2dUQzVYS2txR2krOFZJWnpFVUFoczJhYXg4Tms0U2hxTVJnMzZmazZOamRuZGY4UGp4STA1UFQ0bm5jd3NWa1lyRWxiTGFsZkdXdkdNSGZtbSs5NVVsSUl6VTNvbnVidTVRQlVnVklKUWt5TXAzNzNPVW52OGdyd2R5YVprc3pXS01McXpXeFFCM1NZMVZncnRlZkloYU5vSE1DdkpjRlZsQlNCUW9NanpjdTI4RTgrZzR4dmcxcXloV3pibkJ5NVF3VlFpSmltd3IwR28xeUZ5dkp0V2thVUthcE1SeFREeWRNNTNOaU9PWUpJbnRpNXBrUU5JMHB5TWJORkVnYWJlYlhON2U0dXIyQml1ZEJxMkdWY2JWUTRuTWtwRXlDSkFvakZRNjM5b0l1c01wSDMzOGdHdFhyL0xTN1N1MnZNOHRPcm9rT3pmZXk2L2RpanhPNE1Iamg5eTdjNU5PdSs0cWhTekh6eDM2enNGbVJKclB6N0w0TWg5bG4wMW1wVkRsZkFjTXFRN2N4V2NBTzkrSzA1alJaTXBrbWpBY1R1ajFoNXljblhOKzNtYzZtV1ZTNEVvcDRUVWJSVzU1MlJBdnFzTS9EN05sVTJsMDJjaHpnV2pJYjF5RVlVaytBYmx6U2hpUnkzNFh2K2VVc3FYUGhWNjRyRCtsN0FmeVozLzY1eHdmbmJDejg1VEpaRnI4SW8zZHJ0cEUzeEFqcEQwdC9lVGduRHZ2S0N2RyszbWR3aThReXRrdkxZdE91SmM5ajlVMlJac25URVZrNmVHVlRVYVM4WVk2WlQrbExMOTR4b09YTHQrNUxEa3NoYjlDS0dDWldBaU1NR1dzUTE3TDVUMjc4RFFnb2xKc0ZMOERXUUd5R2xNSmU4by9ET3ZKeUE0UENhVHhuTWxnd0hRMFlqNmRZTFFoVFJPTVRuT3dTRDJNV0ZscHNyMjV6dGIyQmhzckhkWmFkUnIxa0tnV1dmU1lTVW5TbVNzM1lsdjIrNUprSWF6UE9adVdDeENCNU9SMHhNOCsrb1JYWDc3TmpTc2JDSjJTQWRpRmttV2dycWhJbXd4TTV3a1BIdTl3Nys0ZEdvM1FWUTBPVklKWjNIQjVNVDg1Y3Q1TGtjcUt5dFN4RmgyTG10azhZVGFiMGg5TzZQYjduUGVHbko2ZDB4OE9tU2NwUVJCUmkycEVVVWlvQXRiVzFsRnJFT0NkekNWUmM3YUw5SWRFL2pIbisvMTlycjdPREJpeWRHZ1lZMHJFbER3RU5MOHBYQStjZFM1YWxHOFY0M09ScEhmZ1hMQWl6TkpnSExaczQ5cDFmdXUvK1NmOCtNLy9sQWNmL2NMMjZnNWpoY2doMmxhZjc0cWUxR01XV2dXcGNTczJnWlNoWGJFcFJhQUNadzJXaFEzWFZJSlF6U0tyclZ6VytjVFlLaDR0aTdpU0M5NnlIRDlWeFV2am85bkZ4YmQvamw4MDVkN1QrUE1ZVVlTSytLcE1VOWxKR3ovR1RTNmRJZmlwVDBXS3JSZmFrczNDdEtGM2VrTDNZQi9jN2Q1cU5saGRiN0crMW1IajBocHJxMjFXMjAwYXRZaEdFSkM5ajlKRHdtZEROc3V6bEVVK29WR1plOHc1T3AwSEpQditaY1RoU1plUFB2bVVkNy95SnBjNk5RUXBHR1d6R3dHZFpzQVNyekxLV0pWU01adkVQSHEweTZzdjM2RlpEKzN2SW5Xd0UrZkNsZDdRMjNoVGYrMmNqVW9vdExGbXBuaWVNSm5PNkUrbURNY3p1dDBCeDZlbm5KNmRNNXZPTFV1aFZpZXExYWdIQVdFVXNYbHBDeUVOb1JJMGFqV2F6U2FySzIxYXpScnRWZ1B4Wjg5NjVZZ2Y0UXR0WktGMGMzb0FlK3JvaGFtaXY4NFRub2locUE2TWw5MldRUStFeCtNd1hnNTdkaHU1bFVXTzVwSzU2cTU0TUUybG1QRCt2N2VtaUFLRlNPZTgrT1RuL08vLzR6OUdLb3ZBMUdpVUU1Wm9VUWgzSk1MQ09wUjBMM3BnNmJJeXk0MmpFcUhseVowcjhlVStIRk9MNmtqeVM2ZEFsdzRGa1VtSy9RanJUUGdqQkJkMy9xSWtYTTJVNGZQcEdDVVNYbjN0bFpJQlNaUnVJdWMxbDlKckFaem9Sc2lGMlk1L3ErVy9hNiswTkNXeGl2ZjMwNWlURjNza3d5R3YzYjNCNjNkdjBtN1hhZFJyQk1xYVg0emJET1F4M3ZuR1NWUkNPNlhYRDN1dVVZOTduODJKTFBCVklsVEk4NE5USGo3YTRXdnZ2VU83b1NCTnZMYW9zQTRMQ3VDb2pZcTNYM3M4alhuODVCbXYzSHVKV21ES2NWNDVkRWpsN2ErMWUwdG1xV1lTenhtTjV3d0dFODY3WGM1NlBZNVB1d3o3UTR1aHE5V0l3b2dnQ0FoRHEvVUlIQXdsakVJYXRUcXRWbzFPdTBHclhxZlZyQkZGQWFGTG94S2V0eUVRUzRBZ29rTGVFZGxOWmJKNEpPVmVjRm1oN0hrbHVoQ2x1WUFRWmE1NmRxMUtJY3Fxdmh4TWFqdzNsZkJRWGVWSUplRkJFZTJ1MTJQOVpjbEVXSHBLaXJYalN1Vzg4RHFqN2txQ3dQYm5Va21VVkM1cFZoUzllSFh0NmFvakthU2xBTG1Pc0lTUXluTWtEYVVScC9IaHBMLzh5KzhsZFhvMDJld0c5bzFYUzFaL2k3cEpqNEhvNTh1TGhUVXJGQWl4OHA4bkwwaTJxYWcxYzZGS01WUTBPZjdkUGsyejhZakQzV2ZJWk1hdnZQc0c3Ny96Q3NJa0NKT2k5ZHpPb0xXeElKQjhLSzBLRzdtdWVBY3EzaE9UUDAvRjRhZUY0d3dpU1ZFOGZiclAwZkVwMzM3L1hhSVFNSWszbnRZRkY4QUxIODNjcllpQTRYakdzOTA5M25qOUhvSEtVcU95Z2JvazBTbXh0Z0VwNC9HYzg4R1E4MjZmOCs2QWZuL0lkRFpGcUlCYXJVNmpWaU9LSXVyMUprWWJ0amJXQ0tRZ0NnTGE3UWFkZG90T3EwbXpIaExWUW1waFVOamRkZUV3dFFQZHhGR24zTXBYQ0FLUWl4bGtYbnFLOEtmTHdzT2U1Tk5KWFZocFBmSjRQc1QwUUdtaTFQSjc2VHUrZHQ4VC9tUkFSMnVzVU9YQlY0V0JLa1YxRHVqUlhaeVJRenVpak5hYVJqMmlIdGJzeTQ2bzlHOHVQTVFVVEg1anNwRmljV1BJekVmaGhEbCtCWU9mRkdlRVJ3VzZRRHhWMlhLS1VodGdQRFZsMlRCVk9yd3JmM3oyOVdTcGpTKzNUR1Zhc1cvUmNIcjd2UEpiVHNvUW56dmNYZFNIWlNtRlJVaW1lNFlNZEUvUE9EdDRRVTBKL3VGdi9ncXYzTndFUGJmcVNDTkswMnlrOHJaRlB2dlJWR0NkWmtuV01kNS9ZM0lDYzVKS1B2bjBFWW5XdlAvZVc0UXFkYk1lTHovUmdVL3lJWjJYSm15a3BEZWNjTllkOHZaYmJ6T1A1L1JHVTRiRENXZTlBZWY5QWVkblBmcURJZVBaQklNaUNrTnFVWlQzNXBmVzF4MmV3aEFvUWF2VllqQVlNMHRqL3Q2dmZvMlZUcDE2RkJGSWFTOUVveTFkT3NPTDZjUkw1L2JWcWw1bHFDM1ZleG83UzRmUWxZSFFSWkxhN01YT1UyV3MxTlVzR3k1ZE9Qd1RudWludkRJUXBWMno4T1lEc2hTWG5DRzY4MHJEZUdtc3dpdnZjbFJTbG5KamNsVmZFQVNvSU13WEhnVWhwdUN4eVN5Q3lkdkJtOUxkbWFYOXlodzhrYkVSL05LNWhKSDBrNWFvdnVUVkZZOVptTFliVTJLbmVkRmRSWWxwS2krbHZ1RDFORlZiZGg3ODZZdEgvQ0d0S0hNVXY4eGZGVUtPRWY2TDZqd0RTY3JoL2dIRDh6TzIxanY4bzkvOEpoc3JFV2t5OTFaY29nalh5T25KMnN2TTg4ak83bmxJMFhrTFVFSklsVFlXZHRJK1N6VS8rL0JqVmpwdDNuenRKUUtSWm1veS9NMjhFUkNuT2tlWXorT1k4WGpHY0RLbFA1NnhzL09jbGRVMWZ2cnpUNWpOWnJiTVYxYXBpWklFS21CbGRaVTFzWXFRZ2toS0dyV1FkcWZOYXFkRnA5V2kzZ2lKb3BBb0NOazc2dkxCaHgveGo3NzdiWm8xNFd6WUdxUFQwblByLzQ2MUp3WVdwV0JOUjdtU2tzRk04Ky8rL0VjdUdxeWtkRnR5anZ1bUhpOHF2Q1FHb1FJTUVVc0tUbEdCaHJKNDlRaHZoVWRsT0o3ZDVwbitRSWp5NmxKUTlRYVlYRkNTYWNEelY4NnJjR1RldmhmdFN3RXlsWlcwUXVIWmpRdDVjaGErVWFTOUZNbytrMDNMWFZob21URzNvTXlobE9SYWVadUtYN3FyQ2tSNUxyQmtwM09SQW1ESnYyOUtnVENMYTlWbG5JVmxYOHlVTWlKTGJ0R2MwMmIvSjU3TzJYdjZCRE9mODhiTHQvak9OOTZpRVZoNGg2bmMyNkpDei9XVG9ZVHhCckE1ZDY4UUtoa1BZU2FkWHNOU3BoUVRvL25waDUrd3RiSEJuUnVYRVNZaE5kSTVOZ01TYlpqT1lpYVRLZjNobUxQZWtOT3pMcWZuNS9TR0k0eUdNQXBwTmhyVTZ6WEc0ekdOWnBObXEra0dlVlprVnErN3ZyeFJwOW13TTQxR0ZCSUdsZzJaYllpRWxHZ1VqNThkOE1uOUIvejJkNzVCSTdRcjBid2E5T0xmU2dQY3ZOb3NhekxJWURsUzBSMU0rYmYvNGE5UVVUUFRBWmlLN2RmMzdac0x6RHVpM0VNS3MzeTl0OVJkVkYwdFZtM0QvbzFrcXJ6bFNqOWNYbDM2UWFDbXV1NHlvbXp0OWxLT2NqQ280OTFWWWtoemVwRmZ5SllvQ1VLV3pNZ2xwZ0dVY3QwV3pxa3Y2TktyVTMvaEtTejl5YnU1b015djhoeXFJTmVsb1hMVml0K3I2dnpmM1BJelh1Q25PUHZmbjVURjR6b2FERGpjM1lWNHlyZS8rVGJ2dm5ZSFpXSzBMdHE2SWtXbm1MVnAvNU0yYmh2dkxNVENGN0o1ZzFFaGl5b2lkZHhFWkVCcUpKOTg5cEFiTjIreHNiN0MrV0RFZURLak54clI2NDhZOUlkMCsxM1FraUNJa0VwWU9iWlF0RnNkT3AwVlI5K0ZlaTJpMVlqb2RKcDBXaTJhOVloR3JVWXRmOG1keGlDYlh4Z0R4S1FKYnJnY1lOekwvK25EWnp4L3NjOXYvK2F2RUVuUUdleFZsS1hDUlN1bzg0T3ZRS0hoTmRjU1pNRCtTWjkvOTcwZjAycXZFQVFod1VLanhwS0pZT1lyem5ESVpzbExhNVpQZnd0MVlkVUpXSWlOc2gzMm91clA1S0dNcGU5UFZQc0dVVDR3U3VLVkxOaFU1MW9DblZGd2pWazRvb1NoOHBGU3dWWjRyWTB1ME0yRlRiTXkydnV5cGZMbnU1cTh0c2FyQWtURkhGV2FGM3plbkVFVVlTaCt5NlFsd3EyNXhBWGQ0RUllSFN3SjFuUkJIMktaSXRUaTFFK09qdWdlSDlDSkFuN25kMzZERzl1cm9CTjBvbk1xcjgxTEpoL0NadkZjdHQrVnVjOGhiNVd5QThMWnJtMnRwZkw5UGtZUUo1cnBmTTVvUEdVd21YSjRlTUxwV1k5SHV3ZU1oME5TWXdsS1FSaFNDME1hdFlpdHpXMlVsSVJTQVFuTlpwMVdxMEd6RmxGdjFHazBhalRDa0RDVUJjaEVHL3hBRDRHRzFIakQ0ZUw5OEFmZ1JvWjgvR0NIcy9OenZ2dHJYeU1TaGxScmIwaGJxRW54aHFoWjBuUEpFK0twQUxVUVBIaDJ3RjkrLysrNHRMbEZxQ1NwenFYQVpXZlk0b3NzZldaMk9aQkFMSHZHVEdXbHFCZktmckZnQUZqMmduUEJUVVd4MXNrbS9SNXcwZi96c3A1YnVvTkNGeGxFbnVUQmxVMlYrRVgvQzJzL1M0Q0NmRlM5TW9YNHZEbktML1BYc3JsQWVYZSt2RTI0eUI0dHFiSnBzMUpJT0wrOGtCWS9KalFsMjdDdmF6QlV4enZsa05qczI5YkNlR3Jqd3VpbGs0VDkzZWZNaHoxdVhON2t0Ny96VFZiclFEb24xY1hzeE43bXV2QnZaT3MyVjlFcDZjMHhaSkVxbFJoSWtwVEpOR0UwblRNY1Rla05ScHgzZS9RR0l5YVRLY1pvVkJEU3FOZXBoU0hOVmdzcEpPMW1DNTFhQ0dlalVhUFZiTkpwMWVtMFd6VHFFYnZQOW5qbDVYdTBXaldIMm5KclNJZmVzckZvRlIyRnpLaExGaVpyU2N3Nm42SGxQbjJoUUliOC9PUEh6T1p6ZnYyYlgwWG9tQ1RWSHFwZU9zRmJNY2tYd2hlQ1NZZHdzaG9UZ3lDWnAweVNsQS92UCthbkg5NW44OUlXZ2JMYWdwTnVMMnNCTG5wZXpkS0h5MXgwc1MzMUpuNlJHbTJocTJEQnNyYWt2ZkFmZkg5b3RueW81bjJkQlpGTnhSZGpSTWxaNlBQWDg1RE5EQjVxQkRxdkUrU1hYdWg5dVpmZmYzRjE2VGI1VDNhb1pPcy8zenVSRHpBcjRpVC8yNUpGUW8wUUJYdmZ0eitVdm5mM0t4eVBoaHp1UGlQUU1WOS81eFcrK2U1cjFqS3I1emFQSUJmRldMZTdkb3BTTGZLY2Nydkhsb3A1YW9obmMwYnpPWk5wekhBNHB0Y2ZjbnJXWXpRZWs2UzJvWTdDaUNBTUNaU2kwV3pSYnJjSnBBMWpxZFZDVmxzdDJ1MG16V2FEWnIxR1BReHc3Yml0RkZQTkxFNTQrbVNIVisvZG9WbFhkdEp1ZE9XU0szSXpTaXRRN1Vtb3BTbXRyUFBQWE5oWjAwOS85akZoR1BMK2UyOVlSb0x6R2hoVHJHbHRDU1ZSS0l5d0VldHBtakNaelpuTVlvYmpHY1BobUc2dlQ3ZlhaenlaRW12Tk5EWTBteTJpVUtHMTVxemI1eHUvK2gyQ2k4MGkva3RxRnJYN3BncEFMOHdMQzlTUkM1L2FpbkIxV2FzZ3pNWG5VUVZKVmxiVlZaU043dHRWUGp3czU1WXUyVmRqU2hQbzBrOHYvT2p6N0Q5SU1VYitKNm9BL1A4K3ZYQXJzL3pBb0RRUFh2bzVlMzR5TzdSMHJaMHdDL0xlL0N0SVR3UnF5ckxsVWlSbExveHl3b1hHNmdBQUlBQkpSRUZVSUV6M0t6dy9PZVYwZjQ5SUduN25ONzdKcXk5ZGNidDNEVUlobExST1FodU5ZMUZuQnViemxNbDhibS96NFpqQllNaDV0OGRvT0NSMUxaaVVrcWhXSXd5c1dHdGxkZFcxZ2hDR2lrNmpUcWZWb3RhczBhelhhTlJEYXJVYVVhQUl2YXJSSG1xcFJYbHFlNWtOUmxNZVBYN0thNis4UkQxeWtOT1M3RmZrTm5pUjE3dVpEdGFybUROcFBNSUtxYkxlWEVwaW8vangzM3pFeHZvYWI3MTZ4Mm9lakFBWllZeTJROGc0WVRTZE1Kbk9HVThuakFaVCtvTWgvVjZQZURhM1h6TlExTUlhUVdBRFdhTW9KSXdpbTFKMTJxWGRhcEhvbE41Z3hCdnZmcDMvL0QvN0I1WUplRkdmdUFUNyt6bXRBbDh3ZTE1dzZ5elpCSHdlanV6aUY2cFkwWWxGSVV2cHhoY2xpM0ttUWpOKy9iclF0MUl4MzFhK3JzZFpFNEl2L0Y0di9qeVdmQzB2cWJsY0RZaWxCNEFvalQvMTUvNU9GbzFYMGxKNUYzNUh3aXZsUlVWOWNkRnhiZ3FGbXpFYzdMMmdmM3JDOW5xYjMvbk5iN0xlcVpNbXNhVVZHMnVibnM1anhwT1k0V2hFdnova3BOdmorT1NNMFhnR0FzS3dSaGdxUWhVU2hvcTFqUTJrbE1TVE1TdXJIUnIxaUZhalJyUFJvTkdvMDZ4RkJBRU9mK2J5R3pQd0NOWWJZSktVeEFPVUZnSXlPNVVmRGNZOGVQU1UxMTY1UzZzUjJsUWhKOSt0aXF6OCtibjBqWEpDbDZvdGt4RitzUVRxVkV0KzlOT1AyTDU4alJ0WE56Zzg2ek9aelJpTlovUUdRODdPdXZUNmZTYnp4THBHVlVnUUJOVEMwTTRDVk1UNlJ0dTJSQXBDcVlpQ2dIb2pvdDFab2RWYTVTLy8rbTlwTmVzWW94bU9KOXk0OXhyLzFYLzlYNUphSXBDLzdUT1YzbnpKSWZCTDFxRFpuMm44YldydWdGcFF3VjlZSlZRV2cwdmJCUHV5cE42T04xdEpXcmVWRUZtRWx2RlV5cWFVOGxLZC9sOWN5UmdYd1BHNVhMTmZhdEJYVmQ0dGZ0VDZnclZoVmtCVnR5cG1ZWVFwdlYrdFB3Z3NwS3FpR0w2S1lpMmJEeDJOY1ZIWnBzVFNMOThQYm9pYXhPenU3aklmRG5qMTdrMisvZjVYMFBHTXZZTXorcU94TFZXN1BRYURBWEZpR1lGUlZDT01Ja0tsNkhSV2FMVU1TbWdDTjVCck5adTBXazJtc3ptejhZaXZmT050b2xCWm1xNUxFYlpSWXZiRzFUcno2aGNCb0xuMTNNMHFyRlBVeTd4RU1oaE9lZnBzajNmZWVwMUd3TUxHS3FjV2lKSUJ3UUZOS2JJSmhZWENwQnJtU2Nwa05tYzhtVE9aekJnTXg1eWNuWE4wY3M3dWl4UCsraWN4VWdYSVFCRkdFVUdncU1tQTliVkxyR1pxUXF5RU9IVlpqSys5Y3B2TjlRN3RabzBnQ3FrRkVWRWdrWUVnb2NiM3Z2OTNnQ0lNQW9iaktldGJWL2k5Ly9aM0NaU2t2Yjd1YndGTStRR1h4Z3ZWcStZZi94SmRweWgvZEhqR2h3SVlxb3RTMTVTSFQyTHBuU3FXdGduR3o0MHJRRXhGQmtCKzk1bkswbXlaTnVIaUVRY1ZJdXV5eXViTEh3dm1jdzlQdnJCOUtna29MdWo1SzBwTVUzdzIrWlpFZUlHVTNsREVOd1g3Q1pqRlhNQVVlZ2ZYRmtvRTA5R1VGN3M3aUdSR0xWQU0rMzMrNk4vK2U3Uk9rVUZvR2ZaQlNLMFdzSDVwZzBBS0FpV28xVU9hOVFhTldrUzlYaU1NRlBVd1FnYkNSb3dqZWJaL1REd2Q4KzZiZDFIQ29yQjFJaXEyZFYxYSsyYXpuQ3hOMkM2aGl1ZEdhMlB6R0dUSVdYZkVpNE5qM243ck5RSnBMQUpNMjB4QTZ6QzF0akFwTEZjd3l5Sk1OY3dTdzJRV001N2FYcncvbU5EckRSaU1Sa3dtRTFKamlJS0lNQXFKb2dpbEpKdWJsN3pKdmJibGV4alNxamRvTlNJYWpRYTFLS1FXaFFSUlJIK2M4S01mL3kxLzc1dnZjbVd6alRUYWtvS1ZjbUdxZ2trcytOUHYvU1hqYVV4VXF6TWV6Nml2YnZCUC8vbi9oSW9DR3AwTzczemxLOTRXb0Rwd014V25uZmppUXZiQ3pyZEVqREdsOUZLcXBKdlBxVEFXZU1TQ2ttSnRVV0ZIeVpNdlpSWUM0dTJ5elpjLzE3SmJXWnNLVE9PQ0thcjVFcUtjeFUvT0xGUmIxWDlpQ2l4eGFRSnY4bkNWYXB0UUVTMkp5bWNwb01xVW9CejQ3TEFScGxTUGlTclQwZlhSNXlmSEhML1lKNUtHbTljdjA0Z2lwTkFZM1VJSVF4U0ZOSnQxMnEzTW45K2dVYThSaGk2OU5wOTZhM3VEdTlWdHFnV2ZQSHhLb3hieDltdDNMRzBZbThRY0NGa3k2bVJyc2V6N3RNTmJuYW03Q2t0VXZqM1NhRUtPajd1Y2RidTgrZnBMZGpkdklCWEtKa0FCY1dxWVQyS21jY3hzRmpNY2p1Z1BSblI3ZldhVEdmTTR4UWhRTWlDS0ltdkFVWXBtczBtbjNYTDNxQ0VJb0JuVm5XQ29ScjFlb3hIVnFJV1NNQXhjK0l2TExjaUVQVVp3ZEQ3Z2IzN3lkM3puVzEvbjBtb0Q0VEQwQnN1amxESmdPb00vK1k4L1pEU0o2YlJiVE9kelJMM0ovL3o3LzR4NnMwWVExWGpuM1hlSjZqV0M4bWpkTE4xOFYrZGF4cFNWYXRWYk9pLzd6ZUlBVDRpcWFOOTQwZHlWQ3k5WE5KVTkxOElYeFB0ZndGTkE1V0RTUUtHRUlsQ0NxQjV3cHBTN0tmUXZYZEJvdjlPdS9uekxYdXVsMTc1Wm92cXI1TTJYcHhibGVMTk15bU9XNkNsTmRlVW5Tc3E4UXFVb3lnNDhyeW9USmJOUkpqMzJOUDkrYXEzM0M5TmFRNXF5di91Y2NhL0xXclBHMjIrOHhFcXJZU0dadFlBb0NKMGp6Y3RySkl2cVNqRnBtbCtFbWZnbkVKSlVTclNSZlBEUloxemYzdURxMWdvcVYzN2FHejExMFhJRlhjZTJhSklzZEZhNDFDZmNKYUFkNnIxNHh2YVB1Z3dtTSs3ZHU4ZGtPbUU2aXhsTlp3d0dZODY2ZlU3UHp4bU9wcVJhRXdVaEtnd0psU0lLQXdJVjBlN1Vjdml0RklJb1VGYjExMnJRYUlSVytWZXJFVVlCUVNCeis3aXY0alJvcE5ITzdlZ1NpNlJFaUlDajh5Ri8vWk1QK0szZitEYXRtZ1RqOUJwSTEzb29laFBObjN6dkI2UmFzTkp1TTUzUG1hZndMLy9nWDlCc054QkM4dFd2ZjUxNm80YkcrRVBBNWFYcHNybVcrSUk1Z0NqQkNrMUpoN3hzeTVkREVCYTBBcFYvVjFibVVqNUNQRXZNTmVWL0tKSUV6QXl0VTg0R1BaNC9mb2dTS21mTEcybVd6eDR2TEVOMFJTRDV5eHdqb25ManA1NFFTaXgrNXRsZGJySTV2ZmE4NTVveU92M3p4YittSWhrMlBtcE1aQXhFV3gvYjBsamlnMXFLQ3JIczU4alNiZWZUR2ZzN082VFRFYS9jdnM2dnZmOFdyWVlDclYwSXB2Tmt1RERZRXUvVkdHS2hjL2VsWlJPNXFrMG9ZaTM0NlllZjhPcmQyNncyUXFUUXVaczBQNkJFV2Z5Q0MzdkpEeW1IMHRiQVBESE1aZ25qZWN4NFBHVTRuZExyRFRrNE9FWUdBUjk4ZEI4bEJFRVVFb1oyczRDUVJGR1Q5YWp1UUtpS0pFbFo3elJaVzJuUnFOZmRoaUVpRENWQm9JaWtMTlI1T3MxcHY0NDNoRWw5QnFQdzZOTUZWY21nTVRMZzZLVFBULzcyQTc3NzY5K2kxUWpRYVp4ck1xemhTVEtZSlB6Um4vMElLUU5XMmsxbTg1amgzUEF2LzlVZjBGNXAyWmYvL2ZkcE5odDVSRjl3WWJYK0paN3JRbllyeWdJZFdid281ZXZmazZQbXZhZFhraHJQM1ordnBBcnlyUEF0ZjFuYWppMStiT2lGZ2Zsc3pMZy80T3pra0xQREF3NmY3M0t3KzR6UFB2bzVMeDQvUUtBSmxDekxYci9zak40czREWXUvTGZOaFUxQlZYYnJpNGVXLzl1TEtCRXVrQk9iTDlXa21RdnpyN09YUmVVdmRxbGdjeUtoZkJ2aUVuUDd2UzR2bmowajFDbmZldTlOdnZMcUxRS3k2UEpDN2VsRFdvdzNTeERlZ3l5RXdVakxZQkF5WURvemZQRGhKM3oxbmRkbzFpeGExNlNncFNVRzR3NHJleERhb0ZiaDNJTnhuRENkeG95bVV3YkRNY09SM1kvM0JrTm1reGxHS3JzbFVBcWxGR0hkcmdaVnEwRW9CRkdvcUVVQnRVWkV2VjZuV1hQT3ZVYWJnK056UnYwZVgzM3paV3Y1MWNaS2NFUlpzWW5PMmk2VncyZ0wyN3BaZkF5ZDVrSG52eTNGd1ZHWEQzNytNZC85enEvUWloUkd4eVVtUm9Ma2ZCenovLzM1RHpBeW90VnNNSjBubkEvSC9NSC85cSs0dExHT0VmQ1ZyNzFQWjJYRklzbmNMeVVReGwrRGZia2hmNUh1NnltOVBMVmFUbHdReStURkh2akJlQ3o2L0Vvb1FDTGEyTXhBSWF3TFNtb0xsVlJHazh6R3pFY2pldWRuZEkrUDJIMzZoR2NQNy9QMC9tZnNQWDZBU2VlMjFIUGZpd0pXd2dDalFrYnpKTTlZRjJZUiszM1IzUzVFMlg5Z1NodU1KWDZIQytjTHB0UW1pQzh4SXlodGFMSS9RMzl4TlViRkFiRDRsU29IVjJaLzlmK0pUMXB6TEVNTFJURWM3eDl5ZXJoUEl4RDgvVjk3bnh0WDFsQW1kbmtCYmdncmhGZmxGYzJsek9PcUN2MWxEbVVYaXNFbzRmNmpKM3pqdlRjSUE3dW1GRXFocFVTbk1FOFQ0alJsT3BreG1zd1lERWYwaGtNR2d4SGp5WVFrVGxCU0VkWWlJaFc0M2pyZzB0bzZZczE5UFdWTDlWelNHd1hVYTNiZ0ZvVUJVYUNRS21OTnBDQUNQbnR5d0d3MjQ1M1g3NENPbllJUlVyY1J5RkthdFM0Y2p4bDRJUE9NWklkQU5xL0paZW1lMzBJTHhiTVhwOXkvLzVUdi92cTNxRWMyc2NuT05ISUNKV2U5S1gvMDczOUlHRVIwR25YbWNjcFpiOER2LzYrL3ovYmxEWXd4dlA3T1YxaFpXM0dKMk1WakVCaGhGZ2VBWC9nd2xmb0JGam0yU3pCVXBteU1LYnZSM2N0STFxdUJFcUNNWmpvYk1lcDNPVDArNGVSZ243Mm5UM24yNkFGN1R4OXo4T3dSSW9rSmc0QklDa0tIOGQ2b0s0eG9XR0ZFWlBmSHRUQWdDQUltczRTSHV3Y1h2ZUZmdE5QTWQrMCt5bnZaSHliTlJVcG5VVHBJb2FJUEY4dDFBWm1SeElOSVh5QURYandzRnBzTGNhRyt3Z0hJeTNNSlE4a1JLaEdRcHV6dTdERHFuWFA1MGdxLy9XdnYwNmtybEtkYU1INTFJL0ZNcXRwTjAwWEpVcUcxSUhFUlppY25RNDdQK3J6MXhtc01KeE1tMHhtajhZVGhhTUw1WUVDdlAyUTBHak9iMjdWdkVHUysrb0JRS2RiYWJYdXJLMGtZS3BvTnEvU3IxU01hOVJyMVdrQVlSZzRENXJXQk9pMDZTSmtGcG1RSldBRWZmZm9FR2RSNDcrMTdtSFRtWGx4VjNBdE9zYXl6ellxL0tNTGtsNExPZlFBUzRVaFh1RFcxTnFDTjVOSE9JWStlN3ZMZFgzMmZVSmxNUytRa3hSSWhRNTRmbmZQSC8rRkhTRldqMld3UUp3bkg1ejMrK2YveSs3eDA5dzZKMXJ6KzVwdHNiVzhWMjYvOG9wTmVDMUF4MFZ5WUVtakthckhGUVpoWm1NMVpXRUtXN3lZZFZNR1diSUcwZGtrem56SHNubk4yY3N6aDNuTjJIai9rMHc5L3pzSE9FL3FuUitoNGJpZkUycEpjbzBCeGM2M0pwZldyMUFMSnh1b2FxMnVyVEdZeFI4Zkh4S2ttMGU0MmN4a0dKbzFKVTAxaURKSDVmSm1SV0xLR00wSlVodlRlRVdZMEMzbDFDKyt4S1hwM04raXF0bEhtb2svZVVPN2ZQMmMxS01WRnlvSnFxeUM5T1lRcGNRUjh0MTMyZUxnUVhlYmpLWHZQbnBLTWgzemwxYnQ4NjkzWENVV00wWW1WNzJiUGhUQjUySXp0NXdWYUMxQmgxbE9RSkFtekpMWUt0MG5NWURTbTJ4dndmTytBV2hUeDBTZWZJcVZFdVJjOERHelozbTYyYURXYXBLazlnSlV3cks2MmFUYnJOR3MxYWxIZ25IaVJIYmlKeWlqWFlGVi9HUTlSVytrdi9qZ3FqMVFYb0JRZmZ2eUlWcXZHRy9mc3phL3pRWmN1NlNmc255YzlVSkwvWEdSRExKMnpGNHpQN3plQURQanN5UjdQRDQ3NTdxKzlUeWpzUUxERWZwUVJqNStmOE9jLytHc2FEZnR6SjBuSzBWbVgvK0dmL2pOZWUvVVYwalRsN211dmMvbmExZktXT05mR1MzOElLRXVuZmpGTnJkejkvZ3V4SUFmMmhqQVp4VlFZN0JKRlFCS1R6R2YweisyTGZ2VGlPWWU3ejNqNDZTYzh2ZjhwczM0WDBqa0NtNkVoUkVvdERMamFhYkxTMmFEVGF0S28xMm5VSTJwaFFCZ0k0aVJ4Q1RLU3ZmMFhUR2V4KzBXcVhKRmx2Sml0MUhoWkIxWDdlMFdEVUVMWFpvT3l5a3AwRWJobFBtYzFXTFlxYWVPQkpMK01mTGcwUnhXZnEvVmZ3aGxhTGc3S1Z3NWU1TFhRQ0MzS0JETG5hT3VlZGpsNThaeWFNSHozMTcvQnEzZXVRanF6RnQ2ODQzTEJhVUloakNEV0Zwd3htOHdZVHVaTVpqTXJZKzBQNlBWSHpPWXhTRWtZS0lJZ0pBeEQxdGJXQ0FOSkZGcGxXeGpZSElGV3M1SGY0clZhamQyOUE4YmpFYSsrZkl0YUlQTWpOQjgwaWhTaHRhTUQyQmF5ZE1SNTJRblNjU0V6M0p0eEwzU2FHSDd4OFFNMjFsZDU3YzVWVERyUGcweHlzS2hJYzVDTnlRZWxPREVTZVJKMGpzN0Q1eGRrZkVHRFVDR2ZQWDdCMlhtUDMvaVZkeEVteHJqUE1QdTlwVnF6dTd2SGovL201M1JXVnFpSGRWSmpPRG5yOGQvLzN1L3g5dHV2RWFjeHQrNjh4TTNiTjYxT29BTEtRVXAwbkdRSGdBM1FMTXdodXJ6NDloNmxiRCtwblE5ZE9PQ2pGQm9sc1I5MkhCUFBKdlRPVGpnN1BPUjQvd1V2bnUveTlQNW4zUC9GQjB4NzV5aG5JaEd1cDZuWGFtdzFHNnl1WEtiZHFsdDJleTJpVll0UU1sdHphQmVtWUl2dzZXVEszTUI1dDg5a09zOHorb3lQYnhMU2dVd0xYNERKNWFBZTZjcFVWbUo1S212bGxSR2ZMMGV1S3FZWEZjMGk5MUtZWmR2TUwvUUlpZVZTbnhLWnQ5cjNmd21aZHFaY015NGFNR3Q1TW8rRjBlenZIakE2UDJHMUh2SVBmL05iWE4xYXhlaVVWRmxaNmlTZU14aE9HSTBuOUlkaitvTWh3OEdJMFhoTW1tcVVWRVMxR2tIb0FKVkNzcmE2YWx1K1FObVhQYkxyc21halRqT3EwV2hFMUdxS0tJeXNCRmU0Q3NkSWRuWmZJSFRDbS9mdW9KVDF3V1hiRFpVSGJRckhic3p5YXJKbmdyeEN5ZUFEdVkvQnpiRVREWE10K0x1ZmY4TDFxNWU1ZTNNYnJlUHlqRVQ0SzFOL2FLcHpoQnhLSWp3WlpxbTZGQ3EvTElSVTNILzhuSVBqSHUrKzh5Wm4zUUY5Tjd3Y2pNY01oeU9tNHpHemVZS1Jra2F6UTZ0V0o5RndjdGJsdi9qZDMrWDlyMytOT0kyNWR1czJMNy82YXVXeXRtME1TRVNxK2ZSbkg3aG9zTkpKWHlrZTg2aGxON0RSMXArc0FCTW5wTE14dzM2UDNza0p4d2Y3L1ArVm5XdXNadGQ5MW4vcnN2ZDdmOS96bmpObjdtUEhqajIrSkhhY0pqRzlLS2hWQVVFcmNhOG9WVk9hVWxRRUVZVUNMWlFpaElBQWhRcFVKRURBQnhEaUlpRzFTQlVxRXBkS1RkSWtUZXpZVHVKYm5QSFlIbzluUEpkemVTLzd1dGJpdzFwNzc3WFBPR25KbDVtTWJjMDU3OWw3cmYvbGVYN1AxZGRlNGMzWFh1T2JMMytON09ndXFWUW81UThHNFN6ak5PSE0vb0w1ZE1wb1BHQTBIRElNeEZJVjBEeWl5ZWdUQW1tRC9iRjFvZ25xMHBJWFc5WjV3ZkYyUzRQbnRjNTVNa3l6ZXFISko1QklKNml4ZlVSMUw4Rk1kQWp0QmhnaFJLOHFpRldOMzM1VThCNWx2SURXcWhrQ0tUb2dTYng2c2IrckFXeFAyQk16R09NNXpPOWluTnMySGdFczUzcEtRZjkzbWJMaTJwdHZVbVViNXFPVWozL1h4ekRHOE5KcmIzQjR0R2E5MmZoNDlkcUFETm1GeW9OVjA4R1E0V2hFWFpiTUpoTW1veUZwcWhpUFIrMndMZEVDM1dDem1yb2IyOEpvaGJCWVU3WkEwdG9KWG52OUNzUEJrQWZ2djlEbVY3cW01Uk1DYWJ2eXpnVTdkL1AvT2tLdzZLK1ZiWmZzVVR0SGFRUy8vWlVYZWZDQis3bDBabzZ4cHN1bmtIMU92NGhMZkNmYk5zaUVpOFlLVHpjM3hsRVpRMWxVRkdYTnRpalliZ3MyV2NabWxYSDM0QUFwRmYvci83eUxWSm9tY0VJb1ArTWFUK2FrSTh2aGFzMWdNS0MyanR1SHgzemZIL3BEZk0vM2ZDZkdHVTZmdjhEbFJ4L3REcWRvbWl1RXdGbkQ2eSsreEMvOWxiK085Z2dpRlVJM1RMc1JrT0VVbGNKSE9lZWJEZHZqWTk2OThRNDMzbnFUcTkvOEJ0ZGV2OElicjd6RTV1QVdTb1NFWFFkYUNnYXA1bHpndHM5bU04YmpBV21pR0EwR1BzRVdnUW1VRStGaXlxN29lcUVUakgyTFk3VXV5SXVDYlY1UVZGVUhFRVdFdFZCejhuYWV0d1pMM1kyd1hOZnpFcSttT25SMVJ6UVcvOStDSVhGU3loc09Ga0dIRExkQ25CZyt1dC9CWUhOaXlkaWFzcnFwY3Y5d0VOL0NOZmhlOHdYUjdzcmJ6eTA0ODQ2T0Q3aDEvVzJFTVNUQ29TVTg4K3h6REpJRW5UWkJwWUxKYk1aU1NsVHFGWENEUkRFWWpCaVB4bHk1K2lZWExwN2g0dGw5cjJ4cmMvQWFoVnRFeUJFeXNQeGxWeTRiaDVVV29UUjFZWG50bTFmWlA3WExxVDN2K21zMEZLMUFNNlEyaVh1RVVMU3NBaEVPZkJ1a3l3MU5XRXFKZFk2cUV2ejJzOC96MktPUGNucHZpblFtS3FQRFV4UVJqMXdJUmExclEya01lV0Q0YjdLY2JWYXdXbTFZclRkc3R4dXF5cWNCSzZYUmlVWWxta1JyaGxwejZ0U2VCMzdpUXM2QlB4d0h3d0hEMFpoVlZ2SDhWNy9HN3U0ZVRqaHUzVDNpdTc3MysvbDkzLzk5V0Z1eFBMWFBZeC80UUpzZTNPdjU4WW5JMTErN3d0Ly82Wi9GWEgwTGpUTm82NE1EdEhOa20yT09EKzl3KzhaTmJyMTluVmRmK1RwWHYvRXFOOTU2Zy96d0xsSTZWRGp4RkRDU2t0MjlIVTd0TFpsTlBPOXNNQmlnUTdpbGN3N2pETWJVSk1xblk5b1FyM3pTNGlKZCtFSEVGS0VnNDF6bi9wVE1pcHFxOGlJSXFUb3liTGZPYkRESTBZTW1iSGNyQzl1VzRTMWZvdW54MjRxaG1RQVJRa08rZlhkKzc5UTlka3phanRvaStyeWVrNitpN0JsSVhWZVZSUGR4MzJ6ZGhVU0tTUHNleDVvM0w4ZTl1Ry9SVDEwV0huRXVtNUxmR3Q2OWVZdTdOMjhpbmVIUzJWUHM3c3hRQ29ZNllaQnFMM3daRFJrTUVrYXBkNm1KZ0VmMllSYUNGMSsrd2dQM25lSDBjb3B3RmRaMFpiSVVBbWVqM0ljVFdZWE45MkREakdlN0xiaDY1U29YTDUxblBoN2lRa2FCdHgyTHR2K1dyaisvNlVnNTRoNUFxUXNCTUlvdXlydXlrbWRmZUpHblAvSVVzOGtBWnd4V0tPOVlzWmF5cXYxTW96SnNOMXRXbXcxSHg3NUUzMlpiNnJyR1NUL1BHRGFEUzZVWkpBTUdPNmxQaXdvVlphSUY2VEJoUEJ3ekdRd1lqZE1BS3ZITS95WkV4QWpKellNdG4vdnk1NWpORmlncHVIWDNpSTkrOThmNXdSLzRBeGhiTVowdmVQekpKN3pTc3FFQ0I2T1NDeFhPOGJ1MytjZS84UGZZdnZ3S0R5em02SmUvOEJsdVgzK2IxNy94S2xkZWZwRmIxOStpMm01OHoyMXI3NkRETWRTYTAvTXg4L25jRCtOR0huNDRIQ1NjMmR0REs3OGFzaUhNMFFMVzFPUmw0UW04VW5uQVFZdnU2bytzL0duYythaWJ0SmpLT2c0T0Q4aUtrc3JVcllXMzFYZmJUazNTN21yYis5Uy9ITkw1Z1pTU3pnZHdSak82SGs2ejRmZUxXSjMzYlc3NkNQWGRDbWZ1dVcrYkZWSzRONEx1WEo1WXlibDQ4T2dhZTY3clk5T2kwajlhQnZiNlVYY0NoT0xpamNiSld1SUVDbEpJSDFncWJjM1ZxMWZaSEs5WWpBZDgvT21Qc3B3TkdXaS9VbE5DSXF4dEJ2bmRDQ0dNMEowVTFKWGttYTk4blVjZnVwL2xmQlJtT1AwanowWk8wZDVoU2tQNXRmNVpzbzZEb3kydnYvNG1EejF3UDlOUjJsbHlveWw3SXk2VFBTSnltQUhFK296d1cwTURCNVYraHk4a1dWSHk3SE92OFBEREQ1R1ZGVGR1MytYd2FNM2hhc1hoMFJIYklBVkd5SGFPNFhBTTA1VFpiTUx1YUlTS05sNUpFQk9OaHQ3dk1CajZ3ek5OUENmUXR6NjBjSlZtUktpRWFLc2pLeVR2M0RyaWYvN2Z6ek9aemttVGhEdUhLeDcvam8veVIvN3dIOFRhbW1RNDRvTlBQZVZqMnR2Y0RkcllKWWRoYy9lQVQvLzgzK0htRno3UHBmbVVaYW9Rajl4M3ppV0o5MHdySVJpbW12Rm94R1E2Q1QzYWdFRVkwTWdXTTFSeWRIekVmREZuUGhuMUhuUVppS1ZaV2JEWmJKak9aa0dRRTFsUWU2TFlNRXkwQVVnUmZrTFdDZFpaN2xWYlZRWElJT0cxZ2VJcnV6MjZpN3QrMnBBTVp6MHR4VnFIcVExNVdiREtTKzV1U3dhVEhWUTY5QTlIbTRiYmxldS9rM1VuRmdPZDFPODNyWXNRTWRvOGhIQ0s3cmEzelVIVy9ENStJWnhmRmJuM0hPSzdQai9COVRwUXVzU2JxRDkxSjNJWlhLOWdvTXcyakZMSkl3Ky9uMis4OUNMWlpzTjlaL2Y1N3U5NGpIRWlVR0ZJSE5TdFRTb0M3YmNVOXZjb3pTYXZlZUdyTC9IazQ1Y1pEVG9UVHZ4TWlxanphQkczamZyVGR1WWRLeVMzN2h4ejljMXJYSDd3ZmthcFJpbUIwaXF3OGYyOFNBUlhubTJNckwwRnEyeTlBYlcxUHU0OUwxdUt6bWFUc1ZwdldLMVc1R1dKRkFvaDhJZWgxa2dWTmtwU2hFckIvMTFLU3JJc1J5dTg2V21ZaENBUDdXRWNXcE9veGpYb1oya3VyQXhGTDdRa09yU2xyL0prYUttdDFGeS9jY0QvL3N3WEdVNFdKSW5tYUxYbHdVYy93SS84eUEraHRVQ25BNzdqTzcrTDBYQVE3ZnJqZENSQnRsN3h6Lzd1cC9ucXIvNHFFeVY0Y0xFZ3FXcjBFKysvajhsMDdFVVNXclg1NGRhRmFPYmdCYmY0dU9ham8yTXNqdjM5UFJJVmJ1QkFxblZDVUZzNFdoMGpoR0N4MkNIT0YvUzltR3hITWkwcnpub0VwTFFTcENRckNnNk9WMnkyQlZWdFNOTWszRFEyaEk1MWZIcUR3OVRXcDhmV05XVlZVNVVWWlZYNVBEZ3BVV0dGbEtZRFppcmhZRnVlbUl6TFZrQnpUOVMxYzVGd0tacTRmeHZYM3oyL3YwZGhHTXI1R0hQZHFpUHA1ZkIxNFJaZGU5U3pKTk1ZWCtLV3Z0dExkMFBQcm1wdzFyVVZTTU9aeDlhVXVlWFZyNytJcUhLKys4T1Bjdm4raXloWElWdmpqY1VHMFlwdC9zd0tVT0dRa1pyYkIydStlZVVOUHZMVTR3dzBHRnVIR3lnK0FacjlpdTBRNTZLcmVwb2tLQ0VWYjc5emkxdnYzdWJSeSs4bmtSS2tiNm44K3QvNk5sRDQ3VTl0b0tpTlArenprcXdzeWZQU3F3UTN2a1JmYnpiVXhzOFRrc1NETlpUV2FDVVpUU2JNRnp0Qm15TFFXcEtHL2p3SnN3MnRnem93U2JuNjFnMlNCSjcrMEdNa0tseEJ6WGx2blErUnRxYjk4MmJ3MkIzeS9TcXhBWnI2RTlZQ0NXOWN1ODFuZnV0WnBvc2xhWkp5dEZsejZmMFA4Y00vL0NkOFpKMU9lT3BqVHpNYURucVFXaUtOUXAxdCtRLy80bC94NnEvOEtoUGhHQ2tWMXV3T2ZlSDBMa0tKb0tYM2lqd2J1YlNjRkZoaktYUER3ZUZodVBYSHZnUnovbUZyRkNKRldYTG43Z0hMblIyR3d6Umt5WFVTejFaMFFiZi9icThCQjBWdFdhMVhiTEtjOVRaRGFjMWc2RWttUGp2ZVo4aVhsWWNsbGtWQmJYelVjcUsxQjBQb2hPbGtUSklrNFpUMnZaMlMvbGJabEthTmhPNU45cjlWdXMwSjVMWno3cjBGUks0L01CVGkza2gwRVlsZVphOHNiMTdHYnBZZ0xOSFV1bHZKOWplQkovUGlYYy8vN3F4UG9qWFdaOUdYcGc2M2tHdXo3YjBLenJYemg4RW81WHQvNzBjNHR6ZkRocGFyTzVUQ1RDS2s0N1NVV2lFUUt1R05hN2M0T0R6a28wODk3bjMwem5qS2NFaithYzFGN2E4cWFyTnNtSjUzMkt3M3J0MWt1ODE1NU5ITDdVZGNXK0d0dUtXaEt2eExubTB6TnB1TTdUWmptMmZoOC9Bdmh5K3hCVnByZEpLeXV4eUVTa09TYU1GZ2tEQWNlSmZlWkRSa2tDWkJaNUtndFFneDdzMTAzMkl0MUU3eXRWZGVweW9MdnZPcHg5REt0YTQ4SnpvbHByUHVYcjJNaSszVDNhQzVSNU9XQ292aTZyWGIvT2JubjJHeHMyUTRHTERPY25iUDNjY25QdkVqNkVRamxPYXBqM3lVeVdRU0hhTDlTdEZXTmIveUgvOHp2LzF2L2kyblJ5T2NGQmhUa1lTZnA3WmhCZVFkVzgwcVRMWXZxYTBkQjhmSG1OcHcvdHpac090dnRweCs1V0dCdzhORDZ0cXdmM29QSmFSLytFUWJvSVIxalNESHRDV3hNWTZ5cktpcUdtTXQ2MjFPVnRZY0hhOUlkRUs5TGFpcUE4cXFBb1FYaWlpdkJCc09Cc3duSXgvZUtYWDQyajM2MjkzanhRM09NZHZnbWlOOWVrd1AvbDB3Q1ZvVjVEMG0zcTQxNk4zOHhPbkx0RGpuMkdMYkhESE41MFI3UDBiY2cvQjcwL1Q5UWVIb3JHZkdPMnQ5YjlyOEdzck4zbERTK1pXcWRLQ2tJRW04V202WWFoSUpsODZmNGVIN0xqQWRnRE1tT3JSOGJsN2pTKzgyTHNKUDUrV1FsNzd4RmxvS1B2U0J5MGhuZkdWaHV3T3E1Mk1NbVhWaEV1YWZlU25ESWVXb3JlUE5hKzl3NS9ZQmU2ZjIrT29yVnpoZWJkaHVjNHF5d0ZoUXlpdjgwZ0RLU0xWaVBKa3huYzVEeUNjb0pSa2ttc0Znd0dnUU9JQURMeXhLZFlwU29lOFdIZVNVNEZ3VUdGOFloYlUwZ1NOaG5PU1o1MTVDcDVxUFBmVUlxb0hNdTI0ZzI1cWNJalQ2eVJsbGYvaVFBQUFnQUVsRVFWU25jQjFlTFo3UE9PZW9uZURxMnpmNTdCZWVZM2R2ejlOOHNwekJmSmRQZnZMSFNOSUU0eHhQZnZncFpvdFpleWpUYW5uQzUyNGN2L1lydjhhdi9jTi93bG10T1Q4YmMvTjQwNnBGdmVCT3hCTlIyeXFsaEJCa2VjWEJ3UUdMblFXenlkZ3I0Vm9CZzVkUFZ0Ync3cDA3ektZemRoYkRidFVWWlhIVTRXUzNDTXJha09jNTY3VlhnSlZsVFZHV2JEWmJxc3Bqb1FacENzb3hHZzZZejhabzdhTzR3V0tNQ1lPT0pqQTBjaUpZZHhJZEVGREtJVFFpQ2p2dGhYVzBZWjBkaXk5R2ZzZnBjNzZIK3hZZXZGNkNVcGZGWm52Ty96ajVKOHJLQzErUHdudmJteGJING53eXJYVlk0N2NwMWhtdjFyRzJiYi84c2pubzFrTmY3RXRjeFRCTi9iNDk4UzlLMDVzbVdpRnhMR2NqenB4ZU1reVRObXV1YlhPQ3k0NG9aY2UydzBlTHN5a3ZQUDh5Wi9kM3VYUnVEMkVyYkd0Zjd0SnlFZElyMm94djA3S2laSnZuYkxLQzQrTTE2L1dhelNhanJHcVVraDZtb1JLeTY3ZUNYa015bVV5WlRpY0lLVkhDVzI2bDhBYVpTK2ZQTWhuNmpMMDBUZENKUUNrLzFQUlZyUTFPUnR0dW1GckFwNHVTa2lLTWVlTS9iM0lNeXhvKy82WG4yTnRiOHNTakR5Q2N1VmY4YWJ2bjNva1QwbzZtdlFtaUhCR0Y2RFlYaDVPYWI3NTlpOC84MWpNc2QwK2h0V1pUbE5oa3lFLyt1WjlnT0JwUUc4c0hudndRZTd0N0FXY2ZpTU94ODk3VS9NYXYveC8rdzkvNkJjNHB4Wm5GSEdxTGRjWWozY0xYcG1XZi8rRFBNd2VIUjBkWTV6aDc5alJhK2RPL05iZ0VENzIvclkvWVA3V0hVcko5d0oyUW1OcFNWaVZGV2JMTkM3OHVXYThweThxN2tIUkNrcVRvUkpNT0Iwd21ZN1FLOGNXTmJDcjRvUkdDMmxSK054cFdpMTBtU1JSeUZZa2RSR3RHY1QxWmpIWFdmNCt4NWwxMG1RRHhiUjNIWjhXbnRPMlpkMlJrY1BMckx5ZWFDK01FU1M1cUM3eG94ZC9XMXRaWVkzRFcrcGZjK1Fqc2xnTWdQSHUrS2UyVmNHanBiNzgwMGQ3b2xHaC9FeXB2aGxIQlBxMWFoNThOT2djUHhKU3Vaam5aNGV6K2t1RkFoNkJKWDErNDRNQnNFM3hsMExRRlJIVWIzZUVrTDcxeWxRZnV2OGplY282elh1U1NseVY1VlpGbEpWbWVzOXA0VmVCbXZmSFZuSkJlVWFvVld2a2VXeVZEbHJzanJ6MEpyVnVxZk1XWEREUXFTUmlHMVZpUytoSzlyQ3l2WGJuQ1ErKzd5TjVpR3JJQzZTSmR3aEM0T1NSdDc0ZlJqNW4zYWxFUmhZMTQ2Yk1Nei9PMmNIenVDMS9tMG4wWGVmemgrOEJXSFdETzljTjBZOHZXdDB4U2M1MFdvaW5mTFlxcmI5L2hjMTk0anNWaWwwUXJ0bmxCWmdXZit0UlBNcHROcU9xYWh4NTVsTFBuejNaSjlFMjFRWGVZZk80M1BzY3YvOHhmNTR5U25KdFB3VmhxSWZvZ1V5SFIwdmtReFNZT2E1dm5IQjBmczdmY1l6NGVkZVFXMGNFZ25IUGNPVGlrcUdvV2l4Mk9OaHUyV2NsbXV5WExNb3FpYkY5RXJaUy9lUkxGWWpaQkp5bGFKNTdJWWwxa21Zend5ZTI5NlA5SldSWklxZEF5aVNTNzhZY2RCWS9FRVZZdDhscTA3SHBMeHhGd2NUbE5GMFBXajFRSy8xeTZhSS9lOWZJdDdDSzY2cHVNUWE4c3MxaHJRbGtlYm5GYkJhR05hQ3JMSUtuMnY2WlMrQnRhS1liRDFLK01VazJpRWorZzBoSWQ2TFJPZEZIWklsYWtPZE0rSU0xQVVBcGYrdS91TFRtOW5KRXEzY3A4bXdDVk5yR3BEYXp3WUJDRDhNYWRxbVpiVkdSNXhhdXZYV1U0R3BGZHVjYnErSmdzMjJJcUExSzI0cFlrMFNpcFVWb3lueStRd3Nlekt3RktxYmFFSHd4U2hvUGc1a3Y4SWFhbGFxZmEvbUF5dm5WMGNIaTA1dXFiYi9QSTVRZVpUNGVkSzFQNHRXL0Q5WmV0MVZKR2N3OFJXY0NiaDhqN0gzcW1XT0V3U0k3WEpWLzgwdk04OVBEN3VQekErUkFYVG5kcGhJTy9IZlFGakZmbjNZakVGbEdWYUYybndMWkM4L1hYcnZIRlo3L096czR1YWFMSnk0cXNoci93cVQvUHFiMGx4bHJ1Zi8vRDNQKys5N1hWSHlkSEN3NmUvK0tYK0tkLzZXZllxUTJYZHVha3RaLzdJTU5sMVNaODQ4TkJCUXByYSs3Y3VZdlVpbk5uejVLcXhIUFlha05aMTVSbFJWbFVyTGNaNjgyYTlYcUxsQktwYm5oVWNhclJTakdmejBrVFRWbldHRk9USm42dE9FNVRsRlpzOG9Jc3o5dThkTm4yM0tJblFRVkJWUnZxcWlCSkJ5aWxXcUpybkREYk45TjA3VXVmRnVRVEFhcmFlUHVvRTRpZWF1NEU4YWI1T2tROHFyWGhnSWhnSk03Nlc5czZyS245MnNyWWR2TGJ1ZWxNUjM1eGpsVDU2WEo3bzJtUHkwcVYzMWdvSmRGQ3ROUHc3dHlKTzJvVDJIWWkydi9MdHZ1S1o1QUNSNm8xWi9hVzdDMFhTTzBETDBTSXRXNTI2TVk0akFuUldVVkJsaFZzdDFtdzRXNHA4bVlIN3RkaldpZmtSVWxkMXlSSnduQzRpd3FjZnFVbGlVcEl0V1F3SEpDbS9nWlBVMi9MMWxwNnlLY1VyVEpUaGd2QU5SNFRhMEtiRjl4ODBpUEU3OTQ1NUsxcjEzbjhzY3VNUjdvVld3bnJPanQwR3gwbW8rUTZGUVdaeEhyOWFGRVRaZDg2SWJtN3l2bnNGNS9seVE4K3hnTVg5M0hoNW8rSHJiMkV2Qk1nYmRkeUc1ckVhZGtPMTcyM1JtRFJ2UERpNjN6bGE2K3d1N3VMbG9xOHFqamNsdnowVDMrSzA2ZDNNZFp5NGI3N2VlRDlEN1o2aTBoWTJyb3VYMzd1cTN6NkwvNFY1cHN0bDNibURBTWgyWXJPZ045OEd0STV0SkNTTEMrNGZ2TVd3OUVZSVJUWHJyL3JCeTVGVGxXV0tLWFFxV2FRRE5GYU1abU9tYzluYUtsUTJpditrc1FQNGpaYnYyYVpqQVlNaHpQR3d3RktLcklzNTg3aGtROXo2RWt6dzIyRGpTYnRrR1ZicEZJTWg2TStNa21Jd0s4UE42Mk1wdDQ0Yk8xTHZicXVLT3VhcXE2cHk1cXFNdFNtb2hJU0t6cTNWelNEai9iN3JsdUROb00xVTNXUVNtUGFyNlVWbmpoL0N5aUI1dyttUGxzdTFmNno4VXg3alpMK1lmWjhPdEVLbDVyUHc3VUhqWXZvQys2OU9SNjk5azNTV3lxRUVuTSttWEo2YjVmSlpBVFdVVlFsMjNWR1dWUmtXeTlWWFcyMlpIbE9XZVFZNjFCU294TkZrdnBFSGFVVTQ4bWMrV3dlRU5wZXhwcWtQZzl2RUY3c1JDZWsydiszV2lsVXExdTBQWU5TUndReU5HMTBHTHY1ejhSR04yZDdDRXFja055NWU4aTd0Mjd4eEJPWEdTYTZnOHEwWjJOUVhGclQ2ZjFqQjJ2azVteG1HNjRYK05vUlV1OGU1WHp1UzEvaEk5L3hCT2YyNXQ0Q0hBUml4cmtXSlI1UDNac0lkUmUxQUcyOFpaTkxHVm9HSVNSbDVYaitwVmQ1NWJVMzJkOC9qY0JUaFE5WEdaLzZTMytSOHhmMk1iWGwzTVVMUEh6NU1rcllIZzVLeU03Z2R2VzFLL3pEbi9sWkJqZHU4TUQrTHVQR0M5R29RTVAzYXgxWVkxR21Rai83dFZmSWlwTGFPWFN5OXRaTHBkQmFNWjFPU05TY0pOR2tBZU9jYUYvT05ldVZoZ3VYWnlYSDZ6VktLWWFESnBnaElhOHFqbytQcUNvZkJOSFRZN3RJc0JJZUEyTU1XVjR5R3FZb3JYc3ZnWk4rZ2x3Ym43QmFWLzRGcjhxS29pckR5K2tmL0dhWU9FZ1RSck9objJNb3lhcXNXYjl6MjZPZW5jSVppN0ZoaW03cVFLRU50N2pybTJYQ0pZU1N3cGVzb1JkTkU5K1BhKzBoa1ZJNmI0VnRtZzdub3VyR2hvZkVScHVLeU9NdllwR1BqTnhydHZlZytwV1RqSVJQdnAzeTM0ZWxOblhnMlZWODdlVnZzTjV1S2ZMU0UyV1U5OWMzTDNlaUZZT0JEN3hVVXFLMEpra0VxVTRZRHNKS0xQSHd5eVNVOWtxS2lLL2Y5YlAwbk8vbVBlZ0lJcndRL1h6bzJKUXA0dCswSlkzaStzMWJySTVYZk9DeFIxQXF6RVhhbGFMcm1BM0NiNnJvNVVPSWJyZmkrbmIyRTA1OUhIQnduUEdGTHovUDB4OTlpdFBMQ1VLWURpN2ZTTVJkSERNZkkyNGtSZ2hxWS95NnVqUVVWY1VteThseXp5SGNaR3Z5YmM1bXV5VXZheGFMSlltVzVGWE40VGJucC83Q1QzSGZmUmN3MXJKN2FwOUhIbjg4TUEyYUY3bkIwZmc1MmNHTmQvbkZuL3NGekRlK3lmMjdPMHhhS2J6QVNnZkdpNUdNa0JqQU9NdkZVM1AwN3U1T0U1aU9VakxJRTFXd2JBWmVtb2dtbU5GaXgxbW9qV1cxMldDdFF5dEZtcWFrd3lIR0dPN2V2VXRSMXFIUGxVSElJaUw5ZmF4WGx4U0ZYL0dNUm1PTXFTbUxpcnIySzZXeXJDaXFDbE5YV0dmRGRGZVFEbExTTkdVOEdaSm9qWlplS1lZUWJWNXFrK2RuclNVSkw0MHBNK295YTNYa1RVbXZnaDUrTVBEQ2o2Rk8wRnFGSGx6NUFadnN1RUE5OVY3emNsb1hML0hhUFM4OVI1cnJxY0c2a0E3UlEzRzFjRTZaaEhiRFVwb2FVMXVxMm1EcW1xSXFxY3NLYTYyZnVXaUYxcG82U1RCRmhkYUt4V0lIdFJzc05zcXIzTFRTSklrTTVoMnZvMGhTSFE3M3hqRHpIbTVrYTRKL3B4bWdkUUdkTWVHbzd6bDBmWmRtQ05DS1MrNE9GaVRDRGRrZ3RCUnZ2L011ZVo3eHlPVUhTUUp6MG9XYnIxMU5OcTJhN1JTQnJ2ZjNkaE01cit6cnRNRU9HNEk4SlFmSEdjODgvM1UrOXZTSDJaa09ROFVwZWhXRjE5YjdOcldvYThxaXBpZ0xOdHVjOVdiRDBkR0cxV1pOVmRWZUg2c2tRaWtTN1NYQVByMW53bUE4NWVEdUlhTlJTbGxaampZNVAvckpIK2Z5NVllcDY0cnBmTTRUVDM3SSsyK2EyNzhaVW9ZZnlQSGRJejc5YzMrYnpWZWY1K0x1aklYU1NGdjdTaGZaejdzVUVtZEw5aGNEenN4UzlOblRleUdyVEp3b2g3dnBwc01pbWx6M0lOeXh4cEpsT1hWdGdpTU1oc01oU01IUjhUSGJMR3ZsdFRHSXhJWWhrNitzRFZWdHFLcWFzdklUWStNczFqaVVFUDREQ3pITmcwSEtkRHBHUzRsVWl1MTI2MWx1d3lGeFpIYnNySE11L3Z2RG9TQmdxQlU2VVF5Yk1qMU0wYlZTQVN2bVY0N2VXMlREWUtpNTVTeHhTSjZJTlB2aWhBaWowU01JMTYwZ1hTTjVsYm9iZURaREsrdkM5KyszQVVWUU50YVZQd2pyeW05Q3BQSXJzQ1R4VXUzRmRCS0VVSnBVYXc5aGthSVZSeVZKVTY1clVpbVIycS9SUkl4NWo0WUh6V2FsWTNWMVZHYnBSRTlMM0I1c2tlejRub2dVMGIxb1FnVFRscE50YTlQOUtxTDJ4ZjhjTEpLM3I5L0VBcGN2UDRBemRmaDZveVMrYUFMYlp2VzFSMHpYbERzYlVxS1JXTkd0ZHYzM3JiRUlidHc2NE91dlhPR0RIM29TcFNSM2pyWVVSVWxSQm1wUm5yTmFyOW1FalpaRW9IVDRiRU1RcVZLU0pFblpQN1hYeW9CbG9GWXJyUmtOVWtiakNYbGxlZW5sVjVuUDVwU1Y0WENkOHlkKytFL3g1QWNmeFZyRGRMSGd5YWMrUkpMcXJrNTAvU1NvOWNFeC8vaHYvVjF1ZnZhelhKeU0yRXNVc2piWVdIUGFtRnVzcjVyR1NuQnBPVU9hREsyYnRWcXovb2dLelpOQmtRSkJaUXhaV1dCS0V3WXp6WnBYc3M0eThxSUlXQ2lOTlphNjloTGlxcTZwcXBxcXJxaXJtdG9ZdndwU0ltd0pFcFk3Ty83QlZzcHJvbFUzdlc5dUdtc05SMGZIektaajBsVFQwaDVjZjVBWVUzYzdNWTFnT2t4NTVQN3pMYU5PT2h0SmdCMkMyanZVb29kRHVJNlIzM3dTcmhkMElrK3dEMjIzamd6VmpYRW1lQk1NdFRWVWRVVlZWZFNoaGFtcUt1Q3RIRXI2R3p4Sk5JTTBaVHhJU1hTQ1ZqNG9nc0MxSDZRSms5R0k0WEJBVWRhc2oxZElET2ZQbkdJeUhyUTNlTE1XYXpjQ3pYcVY3cUJxTVdKUkVuS3NweERDOHhhYVpKMklwTkk3SzJRRVRlbFJqQ01xallpam1sM0hEblR0eE40aHRSY2dYM3ZuSnNQQmdITm56MkJzRlRsRkk2MkZhRXplY1pLeGJBMWp3bmxTb1JQT28rSktTMVlVYkl1U3FxelpaaGxINnpXYmJjYlI4Um9ML09ablB1K1ZjbUhXb1dVNFRJT0lhTFM3NTlzbEtiREdNSnVOMjBOMmtDZ0dlb0JPRlZwSmtvWjFJRHRaMXQzam5DOCs4eVZtOHpuV3dhMjd4L3p4UC8zRFBQWFVreGhuR0k0blByd2oxY1JCdFM0eVZHU3JEYi84NlYva3JWLy9kYzVOaHB4S0U1VHAwcGxzK1BtYlVOMVlXNU1JeTFCSk5CYUpRN2Q1WTBRV1RSZEJLcHd2ODR1eTlQcDZaNUZhZTBsaHNFY1dlVW1XRjVSWlJWR1g0VVd2d1JnL0xXNTExNXJSeUE4U2xReXVzc0NoZDgyRDJyUUZ6UnFOcHAvMlV1UHRaczF5WjZkRmhEY2FlZit3bWxBZWRjWlpRUnhxMllpZFJDVFlhQkp0Yk1Rbmx5ZFExaUxnbXYxRDVQZmtzaWNQdG1IYWE2M3hQYmkxVkZXTkRSVk9WZnREenpubnAveGhucElraXZITVUzS1U5QnNBR1dpMWtmbTh6UUp3MWpFWkR6bTl2MlE2R2lJRkhCNXRXUjJ2bVl4SG5EbTFKTkVpOFBoRnJBTnMvZmV0cjZLWGNCYmRsQkVncU8yUTQvUmJSMC9JMUppUm1vZk44d003aVhlbk1XbXFRTmRXQTUwejFQWEVNcFZ4dkhQelhXYXpLYWYzbGo1U3pLdi9jWTFKS25qd0haS2lydjNoV2h1S3lsZE9lVkd3elFxeXJHUzd6Y2l5akN6TGNjNjNxMG5ROXJjdGJ6cmc5T2toRXRHYWZWTHRkUWlEMURQL2ZZSlJFclkzS1RkdjNHUTJHN096bUlmSzJYakhlVXhhRDFaY0s4Qll3YlYzRC9uc0Y1NWxzZGpCSWJoKzV5NS85RS8rS1Q3MjlNY3dWWWxPRTU1ODZzTU1Ca2tFWm8xL1BoWmJXdjc5di9wM1BQOWYvaXZueDJQT2pFYW9jRUM2Y0RqTFlLWVNWcUFWN0owN3hkekNuYmZmYmc5ZUxXaXNpNnF6U29hWGNWTVU1TnVDb3F5b2pLR3VMVlZkZWlWWDdsOTBhMnFra3I3ODBacGhtakllajhLZ0tQakxwYVMvczNnUEVLOFFQVTkzMzc0cVdXODNsRVhKY3JrYi9NNGlVZ3JRc2dCNnFUZHh6b0RyYmdaT2dEVTZ3WExvNTJPa2QxQ0JOVE9FMnZoaFlWVWJmM3ZYdmp5dmFyOEd4TG93TTBqUktwaE1SaW1MZE9vVmpjRkoxdW9xZ2d1eVE0NjUxaVJrbTliRytpcGtNaGx4ZW0rUGFST09nZVAyN1dPT1YydG1rd21uZHViZTVOcUx4b3FqM2lUZGlGMUVvRk1iTVFPQ01NclNEdEZrVENBS3Q0b1VvdTlLZEk0NE9NeC9GcjYwa0VFdzFTamZaUFJpTkE2KzdrOFV4c0sxZDI1eTlzeDVack1obGJGVXRmZURaSG5CTnN1OWt5OHZPRjZ0MkdZRm0wMUdrUmQraXlLOS8xNHA3OG5Yb2VmMkx0Y3BXaWkwZ2pSSW9kT0dUSlRvb0NLVVlkYmpLVlVpdkI4aS9HeWFBK3JHT3pmWW1jK1l6MGE0RU5UUkRqOUVQMWV6VVVhK2NlTTJ2L21GNTFndWxtaWx1WDI0NHZmL3dBL3lzWTkrQ0djcWhGSTg4ZFNIR1kyQ3N5OVNzaUo4UExrekZmL3RQLzFYL3RlLy9OZWNTaFBPVE1kZzZuRGppeFBzU1ljVWp1VWs1ZW5MRi9uOHEyK2loV3RuTHJvU0lJekQxaVZGVlZHVS90VDBvcDZjdXZZcExEcEpmQmthYnZURlBDWFJ2clFSelErNW1iVTJMM0NQRUN1K0RVZXZLYmlsSDhTNFJvbm1KK2JIeHl1a2t1d3RkMXB2ZS90cUM5Yy9KVVU4U1pjbmhwZlIxMktETUNKc0k1eVRHQnZhRmVOZmFtZUNCcUt1TUpYZkVJaXdrMWFKdjhGSDZSQTE4ZE4wblhnNmpwSysvS3lOSWR0dW1FNm1ZZDh0V21wcy9NeUxTSFBnblpnTnROUlRleGZUS2FkMlpvd0gzanZ1S3dIQnpUdDN5ZktTL2IwOUpxTzBSYmU1MktVZzZHZCt0ZDJTNkZDd29vdGNhc1ZFSWdvQmpaS0VuWE1uVXA3cEowbkgzTWt3ODNHaTRkbjduNGNVQWllOVROaFlMMzIyTlJSVlNWRWJqbzVXWkhuTjNjMWJyRmFIYkxlNWg4QVlGOXBHWDRwTDdUY1dnM1RFSUIyRjJDOGZKNVltbWlUMUxNRWs5Y0NTSk14K3ZBOGdYSHhoTTlQTUJqejd2eGxNdWpaL3dRbi8yVm9wcVVyRHV6ZHVzOXhiTUowT1c5TlVZMjF0UUxSTnEyUHhwTjgzM3JuTjU3LzhBc3ZkUFZLbE9OeHMrTTZQZjV6dis5N3Z3VGxMVlZWOCtPbmZ3MncyamRLWlhQdVpPK2NCcDcvKzMvOEh2L0tMdjhSZW1uQmhNa2FHMUNIL2Q4b2VrRVk1UnlvTlR6NThrVVJXYVB5Z1d3bC9pT3N2ZitWcktPRlB2Q1RWU09YM3VkNGROVUludWswL3RkYUVsNkRMOFd1bTJjMXFxL1d5dDdhWFNFMTNRaEFaNDdjUTk5cmVqWUdqb3dPbWs2bjNPb3V1TEk4andKdWRkMFArOWRWRWMxQTBlMUtCc1E1anZQR29xdnpMWFZVVlZWbjZ3WnN6U0NIOWhEd01COU1rWVRRYWtpaS8rL1kzdUhlNDBjcG1pUWk3RHVzTVpWbVJaem56K1J3aFZDLzhvZkduYzZKSmlSSHJRc0RPenBUZDJaUmhNK3R3RnB6Q1dNR05kMjlqZ2ZObjlrbFVRRk1MR2V5OUo5MkM3Z1M4T2NvYWtyRlpvVXVCanRlTHplUzdvVHhqNmJuWUd1Q0p3R3NzbXV2RldHOEg5ckp3cnlMMDB2Q0tiWmF6V1cvWlpGdktzbXJQYktVOU1VZHJMd3ZYU2pKSVVtYmpzZGNZQkJhQVgwY25iRGNibHNzZFR1MHRQTlVxY0N1a0NCbVFJWTRNRzJjd3loNTh3enJiOVNkUlZIcXpKclJON3FBUWJGYzVod2VIbkRtOXozQ292S1E3cGl2WndBdTBRVEtQd0FuRjFldTMrZTFudjhydThoUlNTbzdXV3g3OTRKUDg0QTk4djY4TnBPYnhKNTlrdWJQb1ZjdXVwVWY0dHU2M2Z1TTMrVGQvNCtmWmM1SUw4d2tEYS9vLzRUQnJRWUMwamdHR3kyZVhURVNOY01FaEd6RWk5Tm45ZllacFNwcG9sSUpVSjE3SnBmd1UxZ0dyN1piTk51dTdsMXBYbk95VWNZS3VCSTl6NXUvNVg4VFE3eEZoWEx2dnpyS0NJaTlZN3V3Z3ZaY1hHNzVaZjFLSGdZandaV05RMnZvKzBCaE1WWkhYRlhWdHFhdXlYU2MydzVRa3hEeE5oa1AwZE55Sm1xVHFFb1JGWjJHbXJVcGNqNlhmclpGbzdjL3JiUVlXNXJPZFZxQWtYWk9JYWFMUDBVWURSSDlZS1FYTDJZemR4UXl0UW45dFRSaHFTWXF5NXVhdHU2U0RsTE43TzhobTV1RmNCRFkrY1pzNzRiYzRybE9rMGRDZmpZeW0rQkZZSkJMaU5MdHRJY04rS0ZDaGErUENGcWNJRmwzL1ltZFpUcmJOeWJMTTZ6OGNLSjJFS2ttSHo5Z0x5SGJtY3ovMFZMSURmYWdrYkMvOE5IMm9OV21xQWtCVWhmbVA1SzNyN3pJZjczRGgvQm1jOVZablhCME9uOHBicWs4NGNseUF4RGJUZEwvbGtwMHJ2Zlc2TlZ1YlpuZ3BXUjE1YU1qNUMyZElkQ2pIYlo4VjBZYUJOSldsVkZ5NWRwTm5uM3VaM1owOXBGWWNISzI1NytITC9OQVAvYkVnSmhJODh2aGo3SjgrRlhsUkltcUw4T0VoWC9ueXMvenp2L3pYMkhPQ1M3TUpnOTVoMzNFUmJmQ1NKTlE4ZEdhWHBhWkYzU2toQWpIWlAzSDYwbm4vemVoUWtqVlZ1WFdPNC9XR3crT1ZuMDQzKzE3WFY1cHhJZ0ZZZk10QTdMai9seDJIUDU1c2hsL1c2eldKVGxndTV4RUwzV0NkQ3krM0Rac0ZELzd3L1hnRjFpR2xEQ3VaQkoxb1J1TWhXdnVVR0dNZHg4Y3JKdU1SbzhrSUdSR0ZXdU5RdStHelBTeVl2OFZONitacUlzVmNuTGZuNFBoNFJUcElHWTJIQWYybDJwQkhFYkhJWEtDK2VPZWNZWmdvZHBkTFp0T3g3Kzl0SXlIempHb2hCSnVzNE4xYmQxanNMTmhkVEwzMDJMcUlmV2Y3b1NGTnF5VDZyTUN1VHhTZDFrQjRKajVHWUdydlhTanJpcXFzeWNLdFhlUTVlVm15WFcvSmk3QUNGdElidWdJVFVHdHY4a2tTejdiemR1MmdMUWxEenpSTmZGSndFalFMZ1I4cFpTZmpkczFjSWp3MjNxWHFiYzU1Ym5uanpldnM3aTA1ZDNiZk0vdHNSRysyZ1RMam9wQndSL1RwUkw5enRpTW9XUkdvVnpaWWY4UDh3OExoNFlyTlpzUEZDMmQ4RmlCZWs5R2c5T093dUU3dG9YbnR5blZlK1BvMzJOMDdoWktLZzgyYSt5NC93bzk5NGsramxLU3FheDUrNUJIT1hUamZyb29iNEdpbmhSSzgrTUlML0pOUGZZcDV0dUgrK1lKQlRQbzlrZUprcVJtNG12ZWYyV0daQ244NGhuOVhTazkxa29IQnFUM1hyRXNtZFFMeXN1THV3VkdnN2hMdHF2dGNxWmJtMG1QYnVTNzJLMXJQRUNtMXVrMkdESjk5VUUxWncvSFJNVXBwblBQcm1XYXFXOWQrL3l1VkpOVkptRWxvSnVOUkNIalVFZk5QdEpxRDVvYk5pNExqNHcyTCtjSlBWMjFmQ0N5aVBmVTk3cjBZMnhrcjFJSVUwNFVkNjkyREkyYlRHVHBSTk5WMVc5NExUbnhldmxVWXBpbTd5eVdMNlFncDdEMEpQVUw2OHUvb2VNdkIwUkg3KzZkOHZ4L29taUlxVzBYWTVRblgxb0J0emw1REQ2NXE1NGVYVlVWV2xPUkY2WTFjMllZc3l5bXowcTl5cmZYYmlzVGYzR25pM1p2T0dZYWpJYlBaTkd4emZMYWVDaTkzb3psSVZmZHlOeTVQSldRRTUzTTlySnB3SFhra0p2ZzJBMlEvRkJWczFqbFgzbmlMOCtmUGMvYjBIcWF1SXhtM0NQcUNiazl1MjdXdDh5WWgwWm03WFpSdzNEM2F0bVU3YXVFNWxuZnVIRktXSmVjdm5rWEtRTzBSSFQyNUFaazA4eVl2d0VsNDZjcmJmUFdsMTlqZDlUZjcwWHJENlVzUDhHTS8raU9rcWNaWXgvc2VmSkQ3M25lZjMveUVNNzlKQnhaS1lhM2x4dFUzK2FXLytyT2tkMjV4YWJGa0lnS3hxdzBaamQ1Q1p4R3U1SDM3Uy9ZSDJzLzNoTUphMlZxUFpXTjhBM1NqWVFjL3REbzhPbWFiNTBpaG0wQzZUcy9kQzhqc2d5KzdSTlRBZEpQeHlTaW9uWjhoMU1aaWF4TUlQNkVQTDJ0cVU3YzdjS1dObjBsb3pYZzBZRDdUcUZENktSSFhhcTUzbW9zZVdLSGpyaDF2TnVUYmpOM2xEbHJyZUw5M0R6NDc3c083MzlvMnRiWHp0M2ZUaXJxMkhLOVdMSGJtbmx2WUhHNG5RZDBkS1lUUktPWFVjc1owT1BDYkV1ZDZTeExSemprRWQ0L1diTE9jOCtkT2syclovcnhhaGFIenZYOWRXMnh0TVhWTmFReFprVk5XRlhsZWtlYzUyeXluTEV1TThUUmRGU3k1S2tpL0I4TWhzL0hVenptVWFHM0ZXZ20wVnF4V1c1U0E4MmZQb0JMbFhYMVNlays1ZUs5czVKQzIwL2cySWdWaDdLY1VRZ1ZWb093T2hiWUVOKzNQWVowVnZQSEdOZTYvL3lLbmx2Tmd3T3FTaWpzbkptM1ozb0JtdmQwWFpCdkdhZHZabExmK2krWnhhZzhwaStETzNTT3doZ3ZuVGlOVmcxQVRrWWdyMmlZSk1EaXNUUG5tbXpkNTRhWFhXTzdzb0tSZ3N5MVpuci9BSjMvOEUraFVZeTJjT1grTzl6LzBjQ1JqanA0LzRWZStkMi9jNUJmLzVzL2pycjNGaGRrT1V5bTgrN001Y01LaDM1S0lNRnhjTGpnOUdualJsSkJlTGl4bEc5c21vMW1RbGdJcTV6aGUrVlJWWHhhcVB0MUdpQlBsL1ltRW1oREtVVnYvOEZuci9ONjdxcW1xa2lwazhybEFmbWxreGxvcnhzTVJhdUlmUUM5MGtaMk0xd1VTallpejFVVEVrdXQ0YXQzTEtkdHdVdXNreDBkcnJEWHM3ZTc1bFk0N0dkRDFPMlJ4bmVpdlJEdkQ4Ri9YZHB0VFZxWFhKdlFTaG15WEgraTZZM0kyR2JHL3U4Tm9rSVl5dFpIRXVxaWhrS0I4RjNEejlnRmxaVGkxdTB0ZVZSeHRTckxDa0JjRlJWR1NiZjB3TFM4TGFtT0RWMEcxYWtGZmJ2dHR6WFE4UXMzR1h1b2J5bTRQQ1BHck1xVTFxZExvd0ZGVTB1T3JqYlc4OWM0TnhzT1U5MTA2MjU4VHVCTTJ1TWg4MCtydlhUUVhibS80V0U0dGlMMWg3UUVkL3R4YVdLMEx2dm42Nnp4eStVRjJGaE12aTQ3cXQ5N0lPV0l0eWxiMDFEQU40dHlIMkVKOFlpdUQ1TTZ0T3dnbE9IditUQ3VFRXNKck9icVpvcVNKTEJLaG4zL2oraTJlZWU1RmRuYjhxbStiRjZTekhUNzVaejdCYUpSaUhTeDJGeng4K1hKRU1YWmRxTGIwQjh6aDdUdjhnNS83Mjl6NjhqT2NINDFZYUEyMmFzTnBtL2V5K2N5VU01eVpEYmswRzZPRDVaeG9OdFdzc3YyN0xCRklkSmFYSEt4VzFNYmlVQzMwc29WY2hHL2NXWDlxZXJHRmoyV3VxNkRxQ3owajBqOThYc21ucU1xUzJYeEdvalZDZ2xZNnJBeWIwZk1Kb0ZZYjZSWDNzczNOYUx0LzJ4STlRTkFiVzRkN3h4akxyVHQzR1ErSExCYXo5dWx5djZzWC81NTBVMDRZUEJIQzkvdEtLUmJ6ZVcrUVJ3UXRkYzYzSlR1TEticzdDMGFKYm04TXI5TlcxTlpRVnFZRnFCUkZ5WGE3WmJYeUlFdGpIYzVlYVJXWE11eTRmWnFTWmpLZE1wVlRmMk5yU2FJMVpWVXhVSUxGWWs2aVpOUm4rME5XOXJqczNWQzJjYWsxaDFtZVY3eisxalgyejV6aTNQNE96cGsyMmJhTlR1aUJOVTRFcGdmY2VFOEpKT0t4cjR6UGpOWW5UNUFNV3d1SDZ5MnZ2L0VXano5eW1jazQ4UVl1QkZJRVE2L3c1aGFKYktXSVFzUlBRemhJR2taQ21FRzEyYzZ1OFFHR2N0ckFyVnUzbWM0bTdPNHUyckpwZUJNQUFBQjZTVVJCVkdyUVdFdHVhc3E4Smk5cjhyTDByc29pSjhzS1gyVnRjNDQyR2N1ZFBkSWtZYlhad0dESVQvelpIMmM4R1dPdFl6S2Y4WUVQUG9HV1VhS1Q2K3pCNE5nY3IvamxmL1JMdlAyNXozTXFUVmdrR2t6ZFBvdU4wYWR4VitJY2UrT0VCNVl6VWxPaG5MZGllUmVsaCtBMDFHVWJvSzRJK0grNGE5TUF6d0RQMlFBQUFBQkpSVTVFcmtKZ2dnPT0iPgo8c3R5bGU+CiAgOnJvb3QgewogICAgLS1iZzogI2Y3ZjVlZTsgLS1wYW5lbDogI2ZmZmZmZjsgLS1pbms6ICMyYzJjMWU7IC0tbXV0ZWQ6ICM2YjZiNWE7CiAgICAtLWxpbmU6ICNlNmUyZDU7IC0tbGluZS1zdHJvbmc6ICNkOGQzYzI7CiAgICAtLWFjY2VudDogIzhiMDAwMDsgLS1hY2NlbnQtc29mdDogI2YwZTdlMDsgLS1jaGlwOiAjZjJlZmU0OwogICAgLS1hY2NlbnQtMjogI2E1MjEyMTsgLS1vbi1hY2NlbnQ6ICNmZGY2ZWY7IC0tYWk6ICMyNTZiM2M7IC0tYWktc29mdDogI2Q2ZTdkYjsgLS1vbi1haTogI2YyZmFmNDsKICAgIC0tY3VwLXNvZnQ6ICNlNmYxZWE7IC0tY3VwOiAjMmY4ZjRlOyAtLWN1cC0yOiAjMjc3MTNmOyAtLW9uLWN1cDogI2YyZmFmNDsKICAgIC0tY29kZS1iZzogIzFmMWUxODsgLS1jb2RlLWluazogI2YzZWZlMjsgLS1vazogIzNmOTE0MjsgLS1oaXQ6ICNmZmY0YzI7CiAgICAtLWstdGFibGU6IzBlN2M4NjsgLS1rLXZpZXc6IzdhNGZkMDsgLS1rLXNjYWxhcjojMmY4ZjRlOyAtLWstdGFibGVmbjojOWE2NTAwOyAtLWstYWdnOiNjMDVhMmE7IC0tay10aW86I2IwM2E2ZTsgLS1rLW1hY3JvOiMyYjZjYjA7IC0tdHlwZS1jb2xvcjojMGU3Yzg2OwogICAgLS10aW50OjYlOyAtLXRpbnQtaG92ZXI6MTElOyAtLXRpbnQtb3BlbjoxNSU7IC0tZWRnZToyNCU7IC0tZWRnZS1ob3Zlcjo0NiU7IC0tZWRnZS1vcGVuOjU2JTsKICAgIC0tcmFkaXVzOiAxNHB4OyAtLXJvdy1yYWRpdXM6IDlweDsKICAgIC0tbW9ubzogdWktbW9ub3NwYWNlLCAiU0YgTW9ubyIsIE1lbmxvLCBtb25vc3BhY2U7CiAgICAtLXNhbnM6ICJJbnRlciIsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZjsKICB9CiAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgewogICAgOnJvb3QgewogICAgICAtLWJnOiAjMTYxNTBmOyAtLXBhbmVsOiAjMjAxZjE3OyAtLWluazogI2VjZTdkNjsgLS1tdXRlZDogIzlhOTQ4MjsKICAgICAgLS1saW5lOiAjMzIyZjI0OyAtLWxpbmUtc3Ryb25nOiAjNDIzZTJlOwogICAgICAtLWFjY2VudDogI2UyODU3ZjsgLS1hY2NlbnQtc29mdDogIzJjMjExZjsgLS1jaGlwOiAjMmEyODIwOwogICAgICAtLWFjY2VudC0yOiAjZWU5YTk0OyAtLW9uLWFjY2VudDogIzFhMTIwZjsgLS1haTogIzVjYmE3NDsgLS1haS1zb2Z0OiAjMTYyMzFhOyAtLW9uLWFpOiAjMGYxYTEwOwogICAgICAtLWN1cC1zb2Z0OiAjMWIyNzFlOyAtLWN1cDogIzZmY2U4NzsgLS1jdXAtMjogIzgyZDg5NzsgLS1vbi1jdXA6ICMxMDIwMGY7CiAgICAgIC0tY29kZS1iZzogIzEwMGYwYTsgLS1jb2RlLWluazogI2VjZTdkNjsgLS1oaXQ6ICM0YTQyMjI7CiAgICAgIC0tay10YWJsZTojNGZjN2QwOyAtLWstdmlldzojYjM5YWU4OyAtLWstc2NhbGFyOiM2ZmNlODc7IC0tay10YWJsZWZuOiNlMGIwNTU7IC0tay1hZ2c6I2U2OTI2NDsgLS1rLXRpbzojZTA4NGFkOyAtLWstbWFjcm86IzdmYjNlODsgLS10eXBlLWNvbG9yOiM1YmJmYzc7CiAgICAgIC0tdGludDoxMiU7IC0tdGludC1ob3ZlcjoyMCU7IC0tdGludC1vcGVuOjI2JTsgLS1lZGdlOjMyJTsgLS1lZGdlLWhvdmVyOjU2JTsgLS1lZGdlLW9wZW46NjglOwogICAgfQogIH0KICAqIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfQogIGh0bWwsIGJvZHkgeyBtYXJnaW46IDA7IH0KICBib2R5IHsgYmFja2dyb3VuZDogdmFyKC0tYmcpOyBjb2xvcjogdmFyKC0taW5rKTsgZm9udC1mYW1pbHk6IHZhcigtLXNhbnMpOyBsaW5lLWhlaWdodDogMS41OyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgcGFkZGluZzogMCAyMHB4IDgwcHg7IH0KICBhIHsgY29sb3I6IGluaGVyaXQ7IH0KICA6Zm9jdXMtdmlzaWJsZSB7IG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1hY2NlbnQpOyBvdXRsaW5lLW9mZnNldDogMnB4OyBib3JkZXItcmFkaXVzOiA0cHg7IH0KICAuaWMgeyB3aWR0aDogMTZweDsgaGVpZ2h0OiAxNnB4OyBmbGV4OiBub25lOyB9CgogIC5za2lwIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAtOTk5cHg7IHRvcDogOHB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbCk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtc3Ryb25nKTsgYm9yZGVyLXJhZGl1czogOHB4OyBwYWRkaW5nOiA2cHggMTJweDsgei1pbmRleDogMTAwOyB9CiAgLnNraXA6Zm9jdXMgeyBsZWZ0OiAxMnB4OyB9CgogICN2Z2ktdXNlci1pbmZvIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiA5cHg7IHdpZHRoOiBmaXQtY29udGVudDsgbWF4LXdpZHRoOiAxMDAlOyBtYXJnaW46IDE0cHggMCAwIGF1dG87IGJhY2tncm91bmQ6IHZhcigtLXBhbmVsKTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZS1zdHJvbmcpOyBib3JkZXItcmFkaXVzOiAyMnB4OyBwYWRkaW5nOiA1cHggMTRweCA1cHggNnB4OyBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwwLDAsMC4wNyk7IGZvbnQtc2l6ZTogMTMuNXB4OyB9CiAgI3ZnaS11c2VyLWluZm86ZW1wdHkgeyBkaXNwbGF5OiBub25lOyB9CiAgI3ZnaS11c2VyLWluZm8gLmF2YXRhciB7IHdpZHRoOiAyNnB4OyBoZWlnaHQ6IDI2cHg7IGJvcmRlci1yYWRpdXM6IDUwJTsgZmxleDogbm9uZTsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2I3NTIzZiwgIzZiMWQxNSk7IGNvbG9yOiAjZmZmOyBmb250LXdlaWdodDogNjAwOyBmb250LXNpemU6IDExcHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9CiAgI3ZnaS11c2VyLWluZm8gLmVtYWlsIHsgZm9udC13ZWlnaHQ6IDU1MDsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH0KICAjdmdpLXVzZXItaW5mbyBhLmFjdCB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgbWFyZ2luLWxlZnQ6IDNweDsgZmxleDogbm9uZTsgfQogICN2Z2ktdXNlci1pbmZvIGEuYWN0OmhvdmVyIHsgY29sb3I6IHZhcigtLWFjY2VudCk7IH0KICAjdmdpLXVzZXItaW5mby5zaWduaW4gLmF2YXRhciB7IGJhY2tncm91bmQ6IHZhcigtLWNoaXApOyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9CgogIC53cmFwIHsgbWF4LXdpZHRoOiA4MjBweDsgbWFyZ2luOiAwIGF1dG87IH0KICBoZWFkZXIuaGVybyB7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZzogMjZweCAwIDIwcHg7IH0KICAubG9nbyB7IHdpZHRoOiAxNTBweDsgaGVpZ2h0OiBhdXRvOyBkaXNwbGF5OiBibG9jazsgbWFyZ2luOiAycHggYXV0byAxNnB4OyB9CiAgLmxvZ28tbGluayB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbGluZS1oZWlnaHQ6IDA7IH0KICAubG9nby1saW5rOmhvdmVyIHsgb3BhY2l0eTogLjk7IH0KICBoMSB7IGZvbnQtc2l6ZTogMzBweDsgbWFyZ2luOiAwIDAgNnB4OyBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTsgfQogIC5oZXJvIC5kb2MgeyBjb2xvcjogdmFyKC0tbXV0ZWQpOyBmb250LXNpemU6IDE1LjVweDsgbWFyZ2luOiAwIDAgMTJweDsgfQogIC5oZXJvIC5tZXRhIHsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC1zaXplOiAxMi41cHg7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgfQogIC5oZXJvIC5tZXRhIGNvZGUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgcGFkZGluZzogMXB4IDZweDsgYm9yZGVyLXJhZGl1czogNXB4OyB9CgogIC5sYWJlbCB7IGZvbnQtc2l6ZTogMTIuNXB4OyBsZXR0ZXItc3BhY2luZzogMDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtd2VpZ2h0OiA2NTA7IG1hcmdpbjogMCAwIDlweDsgfQogIC5wYW5lbCB7IGJhY2tncm91bmQ6IHZhcigtLXBhbmVsKTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7IGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7IHBhZGRpbmc6IDE4cHg7IH0KCiAgLmNhdGJhciB7IG1hcmdpbjogMjJweCAwIDEycHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMTBweDsgZmxleC13cmFwOiB3cmFwOyB9CiAgLmNhdGJhciAubGFiZWwgeyBtYXJnaW46IDA7IH0KICAuY2F0LXRhYnMgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDdweDsgZmxleC13cmFwOiB3cmFwOyB9CiAgLmNhdC10YWIgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyBnYXA6IDdweDsgcGFkZGluZzogNnB4IDEzcHg7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtc3Ryb25nKTsgYm9yZGVyLXJhZGl1czogMTBweDsgZm9udC1zaXplOiAxMy41cHg7IGN1cnNvcjogcG9pbnRlcjsgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwpOyBjb2xvcjogdmFyKC0taW5rKTsgZm9udC1mYW1pbHk6IHZhcigtLXNhbnMpOyB9CiAgLmNhdC10YWI6aG92ZXIgeyBib3JkZXItY29sb3I6IHZhcigtLWFjY2VudCk7IH0KICAuY2F0LXRhYi5hY3RpdmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1hY2NlbnQtc29mdCk7IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyBib3JkZXItY29sb3I6IHZhcigtLWFjY2VudCk7IGZvbnQtd2VpZ2h0OiA2MDA7IH0KICAuY2F0LXRhYiAuY3YgeyBmb250LXNpemU6IDExcHg7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtczsgfQogIC5jYXQtdGFiLmFjdGl2ZSAuY3YgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgfQoKICAvKiBjYXRhbG9nIG1ldGFkYXRhIGNhcmQgKHZnaS4qIHRhZ3MpICovCiAgLmNhdC1jYXJkIHsgbWFyZ2luLWJvdHRvbTogMThweDsgfQogIC5jYXQtY2FyZCAuY2MtdGl0bGUgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDlweDsgZm9udC1zaXplOiAxOHB4OyBmb250LXdlaWdodDogNjUwOyBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsgfQogIC5jYXQtY2FyZCAuY2MtdGl0bGUgLmljIHsgd2lkdGg6IDE5cHg7IGhlaWdodDogMTlweDsgY29sb3I6IHZhcigtLWFjY2VudCk7IH0KICAuY2F0LWNhcmQgLmNjLWRvYyB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTMuNXB4OyBtYXJnaW4tdG9wOiA1cHg7IH0KICAuY2F0LWNhcmQgLmNjLWRvYyAubWQtaCB7IGZvbnQtc2l6ZTogMTRweDsgZm9udC13ZWlnaHQ6IDY1MDsgY29sb3I6IHZhcigtLWluayk7IG1hcmdpbjogOHB4IDAgNHB4OyB9CiAgLmNhdC1jYXJkIC5jYy1kb2MgLm1kLXAgeyBtYXJnaW46IDRweCAwOyB9CiAgLmNhdC1jYXJkIC5jYy1kb2MgLm1kLXA6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9CiAgLmNhdC1jYXJkIC5jYy1kb2MgLm1kLXVsIHsgbWFyZ2luOiA0cHggMDsgcGFkZGluZy1sZWZ0OiAxOHB4OyB9CiAgLmNhdC1jYXJkIC5jYy1kb2MgY29kZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgYmFja2dyb3VuZDogdmFyKC0tY2hpcCk7IHBhZGRpbmc6IDFweCA1cHg7IGJvcmRlci1yYWRpdXM6IDRweDsgZm9udC1zaXplOiAuOTJlbTsgfQogIC5jYXQtY2FyZCAuY2MtZG9jIGEgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgfQogIC5iYWRnZXMgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDhweDsgZmxleC13cmFwOiB3cmFwOyBtYXJnaW4tdG9wOiAxM3B4OyB9CiAgLmJhZGdlIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogNnB4OyBmb250LXNpemU6IDEyLjVweDsgcGFkZGluZzogNXB4IDExcHg7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtc3Ryb25nKTsgYm9yZGVyLXJhZGl1czogOHB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGNvbG9yOiB2YXIoLS1pbmspOyBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbCk7IH0KICAuYmFkZ2U6aG92ZXIgeyBib3JkZXItY29sb3I6IHZhcigtLWFjY2VudCk7IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyB9CiAgLmJhZGdlIC5pYyB7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IH0KICAuYmFkZ2U6aG92ZXIgLmljIHsgY29sb3I6IHZhcigtLWFjY2VudCk7IH0KICAuYmFkZ2UgYiB7IGZvbnQtd2VpZ2h0OiA2MDA7IH0KICAuYmFkZ2UubGljZW5zZSAuaWMgeyBjb2xvcjogdmFyKC0tb2spOyB9CiAgLmNjLWt3IHsgZGlzcGxheTogZmxleDsgZ2FwOiA2cHg7IGZsZXgtd3JhcDogd3JhcDsgbWFyZ2luLXRvcDogMTFweDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfQogIC5jYy1rdyAuaWMgeyB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4OyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9CiAgLmNjLWt3IC5rIHsgZm9udC1zaXplOiAxMS41cHg7IHBhZGRpbmc6IDJweCAxMHB4OyBib3JkZXItcmFkaXVzOiAyMHB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgY29sb3I6IHZhcigtLW11dGVkKTsgfQogIC5jYy1ieSB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTEuNXB4OyBtYXJnaW4tdG9wOiAxMXB4OyB9CgogIC5zdGFydCB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IG1hcmdpbjogMCAwIDI0cHg7IH0KICAuc3RhcnQgPiBkaXYgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBtYXJnaW4tYm90dG9tOiAxNnB4OyB9CiAgLnN0YXJ0ID4gZGl2Omxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9CiAgLnN0YXJ0ID4gZGl2Om50aC1jaGlsZCgxKSB7IG9yZGVyOiAyOyBtYXJnaW4tYm90dG9tOiAwOyB9ICAgLyogQ29ubmVjdCAqLwogIC5zdGFydCA+IGRpdjpudGgtY2hpbGQoMikgeyBvcmRlcjogMTsgbWFyZ2luLWJvdHRvbTogMTZweDsgfSAvKiBFeHBsb3JlIGZpcnN0ICovCgogIC5hdHRhY2ggeyBwb3NpdGlvbjogcmVsYXRpdmU7IGJhY2tncm91bmQ6IHZhcigtLWNvZGUtYmcpOyBjb2xvcjogdmFyKC0tY29kZS1pbmspOyBib3JkZXItcmFkaXVzOiAxMHB4OyBwYWRkaW5nOiAxNXB4IDE2cHg7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAxMi41cHg7IG92ZXJmbG93LXg6IGF1dG87IHdoaXRlLXNwYWNlOiBwcmU7IH0KICAuY29ubmVjdC10b3AgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGdhcDogMTBweDsgZmxleC13cmFwOiB3cmFwOyBtYXJnaW4tYm90dG9tOiAxMXB4OyB9CiAgLnRhYnMgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDVweDsgZmxleC13cmFwOiB3cmFwOyB9CiAgLnRhYiB7IGRpc3BsYXk6IGlubGluZS1mbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDdweDsgcGFkZGluZzogNXB4IDEzcHg7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtc3Ryb25nKTsgYm9yZGVyLXJhZGl1czogOHB4OyBmb250LXNpemU6IDEyLjVweDsgY3Vyc29yOiBwb2ludGVyOyBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbCk7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtZmFtaWx5OiB2YXIoLS1zYW5zKTsgfQogIC50YWItbG9nbyB7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IGZsZXg6IG5vbmU7IH0KICAudGFiLWxvZ28ucHlsIHsgZmlsbDogIzM3NzZBQjsgfQogIC50YWItbG9nby5uZGwgeyBmaWxsOiAjNUZBMDRFOyB9CiAgLnRhYjpob3ZlciB7IGJvcmRlci1jb2xvcjogdmFyKC0tYWNjZW50KTsgY29sb3I6IHZhcigtLWFjY2VudCk7IH0KICAudGFiLmFjdGl2ZSB7IGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1zb2Z0KTsgY29sb3I6IHZhcigtLWFjY2VudCk7IGJvcmRlci1jb2xvcjogdmFyKC0tYWNjZW50KTsgZm9udC13ZWlnaHQ6IDYwMDsgfQogIGRldGFpbHMuYXR0YWNoLW9wdHMgeyBtYXJnaW4tdG9wOiAxNXB4OyB9CiAgZGV0YWlscy5hdHRhY2gtb3B0cyA+IHN1bW1hcnkgeyBsaXN0LXN0eWxlOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogOHB4OyBwYWRkaW5nOiA0cHggMDsgfQogIGRldGFpbHMuYXR0YWNoLW9wdHMgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHsgZGlzcGxheTogbm9uZTsgfQogIGRldGFpbHMuYXR0YWNoLW9wdHMgLnRyaSB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMTVzOyB9CiAgZGV0YWlscy5hdHRhY2gtb3B0c1tvcGVuXSA+IHN1bW1hcnkgLnRyaSB7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfQogIC5hby1jb3VudCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAxMXB4OyBjb2xvcjogdmFyKC0tbXV0ZWQpOyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgYm9yZGVyLXJhZGl1czogMTBweDsgcGFkZGluZzogMXB4IDdweDsgZm9udC13ZWlnaHQ6IDYwMDsgfQogIHRhYmxlLm9wdHMgeyB3aWR0aDogMTAwJTsgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgZm9udC1zaXplOiAxMi41cHg7IG1hcmdpbi10b3A6IDEwcHg7IH0KICB0YWJsZS5vcHRzIHRoIHsgdGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAxMC41cHg7IGxldHRlci1zcGFjaW5nOiAuMDVlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC13ZWlnaHQ6IDcwMDsgcGFkZGluZzogMCAxMnB4IDZweCAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGluZSk7IH0KICB0YWJsZS5vcHRzIHRkIHsgcGFkZGluZzogN3B4IDEycHggN3B4IDA7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1saW5lKTsgdmVydGljYWwtYWxpZ246IHRvcDsgfQogIHRhYmxlLm9wdHMgdHI6bGFzdC1jaGlsZCB0ZCB7IGJvcmRlci1ib3R0b206IG5vbmU7IH0KICAuby1uYW1lIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXdlaWdodDogNTUwOyB9CiAgLm8tcmVxIHsgZm9udC1mYW1pbHk6IHZhcigtLXNhbnMpOyBmb250LXNpemU6IDEwcHg7IGZvbnQtd2VpZ2h0OiA2MDA7IGxldHRlci1zcGFjaW5nOiAuMDJlbTsKICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBtYXJnaW4tbGVmdDogNnB4OyBwYWRkaW5nOiAxcHggNXB4OyBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2Fybi1iZywgI2ZkZjBlMyk7IGNvbG9yOiB2YXIoLS13YXJuLWZnLCAjOGE0YjA4KTsKICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13YXJuLWJkLCAjZjBkNWI0KTsgdmVydGljYWwtYWxpZ246IDFweDsgfQogIC5vLXR5cGUsIC5vLWRlZiB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgY29sb3I6IHZhcigtLXR5cGUtY29sb3IpOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9CiAgLm8tZGVzYyB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IH0KICAuYXR0YWNoIC5rdyB7IGNvbG9yOiAjZDlhNDQxOyB9IC5hdHRhY2ggLnN0ciB7IGNvbG9yOiAjN2ZiOThhOyB9IC5hdHRhY2ggLm9wdCB7IGNvbG9yOiAjODZiOGQ2OyB9CiAgLmNvcHkgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTBweDsgcmlnaHQ6IDEwcHg7IGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4wOCk7IGNvbG9yOiAjZDhkM2MyOyBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpOyBib3JkZXItcmFkaXVzOiA3cHg7IHBhZGRpbmc6IDRweCAxMHB4OyBmb250LXNpemU6IDExLjVweDsgY3Vyc29yOiBwb2ludGVyOyBmb250LWZhbWlseTogdmFyKC0tc2Fucyk7IH0KICAuY29weTpob3ZlciB7IGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4xNik7IH0KICAuY29ubmVjdC1yb3cgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDEwcHg7IGZsZXgtd3JhcDogd3JhcDsgbWFyZ2luLXRvcDogMTJweDsgZm9udC1zaXplOiAxM3B4OyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9CiAgLmNoaXAtYmFkZ2UgeyBiYWNrZ3JvdW5kOiB2YXIoLS1hY2NlbnQtc29mdCk7IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyBib3JkZXItcmFkaXVzOiA2cHg7IHBhZGRpbmc6IDJweCA5cHg7IGZvbnQtc2l6ZTogMTJweDsgZm9udC13ZWlnaHQ6IDYwMDsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfQoKICAuZHZtZW51IHsgcG9zaXRpb246IHJlbGF0aXZlOyB9CiAgLmR2bWVudSA+IHN1bW1hcnkgeyBsaXN0LXN0eWxlOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IGRpc3BsYXk6IGlubGluZS1mbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDdweDsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZS1zdHJvbmcpOyBib3JkZXItcmFkaXVzOiA4cHg7IHBhZGRpbmc6IDVweCAxMXB4OyBmb250LXNpemU6IDEyLjVweDsgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwpOyBjb2xvcjogdmFyKC0taW5rKTsgfQogIC5kdm1lbnUgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHsgZGlzcGxheTogbm9uZTsgfQogIC5kdm1lbnUgPiBzdW1tYXJ5OmhvdmVyIHsgYm9yZGVyLWNvbG9yOiB2YXIoLS1hY2NlbnQpOyB9CiAgLmR2bWVudSAuZHYtY3VyIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXdlaWdodDogNjAwOyB9CiAgLmR2bWVudSAuY2FyZXQgeyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9CiAgLmR2bGlzdCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogMzA7IHRvcDogY2FsYygxMDAlICsgNXB4KTsgbGVmdDogMDsgbWluLXdpZHRoOiAyOTBweDsgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwpOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lLXN0cm9uZyk7IGJvcmRlci1yYWRpdXM6IDExcHg7IGJveC1zaGFkb3c6IDAgOHB4IDI2cHggcmdiYSgwLDAsMCwwLjE0KTsgcGFkZGluZzogNXB4OyB9CiAgLmR2aXRlbSB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogbGVmdDsgYm9yZGVyOiBub25lOyBiYWNrZ3JvdW5kOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IGJvcmRlci1yYWRpdXM6IDhweDsgcGFkZGluZzogOHB4IDEwcHg7IGNvbG9yOiB2YXIoLS1pbmspOyBmb250LWZhbWlseTogdmFyKC0tc2Fucyk7IGZvbnQtc2l6ZTogMTNweDsgfQogIC5kdml0ZW06aG92ZXIgeyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgfQogIC5kdml0ZW0uc2VsIHsgYmFja2dyb3VuZDogdmFyKC0tYWNjZW50LXNvZnQpOyB9CiAgLmR2aXRlbSAucm93MSB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogOHB4OyB9CiAgLmR2aXRlbSAuc3BlYyB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC13ZWlnaHQ6IDYwMDsgZm9udC1zaXplOiAxMi41cHg7IH0KICAuZHZpdGVtIC50YWcgeyBmb250LXNpemU6IDEwcHg7IGxldHRlci1zcGFjaW5nOiAuMDRlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgYmFja2dyb3VuZDogdmFyKC0tb2spOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogNXB4OyBwYWRkaW5nOiAxcHggNnB4OyB9CiAgLmR2aXRlbSAudGFnLnBpbiB7IGJhY2tncm91bmQ6IHZhcigtLW11dGVkKTsgfQogIC5kdml0ZW0gLmNoZWNrIHsgbWFyZ2luLWxlZnQ6IGF1dG87IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyB9CiAgLmR2aXRlbSAubGJsIHsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTEuNXB4OyBtYXJnaW4tdG9wOiAycHg7IH0KCiAgLyogVHdvLXRpZXIgQ3Vwb2xhIENUQTogdmlzdWFsIHJhaWwgb24gdG9wLCBBSSBzdWItcmFpbCBiZW5lYXRoICovCiAgLmN1cC10aWVyIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTsgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwwLDAsMC4wNik7IHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjE0cywgdHJhbnNmb3JtIC4xMnM7IH0KICAuY3VwLXRpZXI6aG92ZXIgeyBib3gtc2hhZG93OiAwIDhweCAyMnB4IHJnYmEoMCwwLDAsMC4xMik7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTsgfQogIGEuY3VwLXJhaWwgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogcm93OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDE0cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tY3VwLXNvZnQpLCB2YXIoLS1wYW5lbCkpOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lLXN0cm9uZyk7IGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKSAwIDA7IHBhZGRpbmc6IDE1cHggMThweDsgY29sb3I6IHZhcigtLWluayk7IH0KICBhLmN1cC1yYWlsIC5jbG9nbyB7IHdpZHRoOiA0MnB4OyBoZWlnaHQ6IDQycHg7IGJvcmRlci1yYWRpdXM6IDlweDsgZmxleDogbm9uZTsgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwwLDAsMC4xOCk7IG9iamVjdC1maXQ6IGNvdmVyOyB9CiAgYS5jdXAtcmFpbCAuY3VwLXR4dCB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGp1c3RpZnktY29udGVudDogY2VudGVyOyBtaW4td2lkdGg6IDA7IH0KICBhLmN1cC1yYWlsIC5jdXAtdGl0bGUgeyBmb250LXdlaWdodDogNjUwOyBmb250LXNpemU6IDE1LjVweDsgbGV0dGVyLXNwYWNpbmc6IC0uMDFlbTsgfQogIGEuY3VwLXJhaWwgLmN1cC1zdWIgeyBjb2xvcjogdmFyKC0tbXV0ZWQpOyBmb250LXNpemU6IDEyLjVweDsgbWFyZ2luLXRvcDogM3B4OyB9CiAgYS5jdXAtcmFpbCAuY3VwLWdvIHsgbWFyZ2luLWxlZnQ6IGF1dG87IGZsZXg6IG5vbmU7IHdpZHRoOiAzNnB4OyBoZWlnaHQ6IDM2cHg7IGJvcmRlci1yYWRpdXM6IDk5OXB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1jdXApOyBjb2xvcjogdmFyKC0tb24tY3VwKTsgZGlzcGxheTogZ3JpZDsgcGxhY2UtaXRlbXM6IGNlbnRlcjsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xNHMgZWFzZSwgYmFja2dyb3VuZCAuMTJzOyB9CiAgYS5jdXAtcmFpbCAuY3VwLWdvIC5pYyB7IHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7IH0KICBhLmN1cC1yYWlsOmhvdmVyIC5jdXAtZ28geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTsgYmFja2dyb3VuZDogdmFyKC0tY3VwLTIpOyB9CiAgYS5jdXAtYWlyb3cgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDlweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBjb2xvcjogdmFyKC0tYWkpOyBmb250LXNpemU6IDEyLjVweDsgZm9udC13ZWlnaHQ6IDYwMDsgcGFkZGluZzogMTFweCAxOHB4IDExcHggMjJweDsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZS1zdHJvbmcpOyBib3JkZXItdG9wOiAwOyBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpOyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1haS1zb2Z0KSwgdmFyKC0tcGFuZWwpKTsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdzogaGlkZGVuOyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4xMnM7IH0KICBhLmN1cC1haXJvdzo6YmVmb3JlIHsgY29udGVudDogIiI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgdG9wOiAwOyBib3R0b206IDA7IHdpZHRoOiA0cHg7IGJhY2tncm91bmQ6IHZhcigtLWFpKTsgfQogIGEuY3VwLWFpcm93OmhvdmVyIHsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWFpKSAyMiUsIHZhcigtLXBhbmVsKSksIHZhcigtLXBhbmVsKSk7IH0KICBhLmN1cC1haXJvdyAuaWMgeyB3aWR0aDogMTdweDsgaGVpZ2h0OiAxN3B4OyBmbGV4OiBub25lOyB9CiAgYS5jdXAtYWlyb3cgLmFpdGV4dCB7IGZsZXg6IDE7IG1pbi13aWR0aDogMDsgfQogIGEuY3VwLWFpcm93IC5jdXAtYXJyIHsgbWFyZ2luLWxlZnQ6IGF1dG87IG9wYWNpdHk6IC44OyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjE0cyBlYXNlOyB9CiAgYS5jdXAtYWlyb3c6aG92ZXIgLmN1cC1hcnIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTsgfQoKICAuY29udGVudHMtaGVhZCB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMTBweDsgZmxleC13cmFwOiB3cmFwOyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9CiAgLmNvbnRlbnRzLWhlYWQgLmxhYmVsIHsgbWFyZ2luOiAwOyB9CiAgLmZpbHRlciB7IGZsZXg6IDE7IG1pbi13aWR0aDogMTYwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfQogIC5maWx0ZXIgLmljIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAxMHB4OyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4OyB9CiAgLmZpbHRlciBpbnB1dCB7IHdpZHRoOiAxMDAlOyBmb250LXNpemU6IDEzLjVweDsgcGFkZGluZzogN3B4IDExcHggN3B4IDMycHg7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtc3Ryb25nKTsgYm9yZGVyLXJhZGl1czogOXB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbCk7IGNvbG9yOiB2YXIoLS1pbmspOyB9CiAgLmZpbHRlciAuY291bnQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAxMXB4OyBmb250LXNpemU6IDExLjVweDsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zOyB9CiAgLmJ1bGsgeyBmb250LXNpemU6IDEycHg7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGJhY2tncm91bmQ6IG5vbmU7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtc3Ryb25nKTsgYm9yZGVyLXJhZGl1czogOHB4OyBwYWRkaW5nOiA2cHggMTBweDsgY3Vyc29yOiBwb2ludGVyOyB9CiAgLmJ1bGs6aG92ZXIgeyBib3JkZXItY29sb3I6IHZhcigtLWFjY2VudCk7IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyB9CiAgLmNhdC1zdWIgeyBjb2xvcjogdmFyKC0tbXV0ZWQpOyBmb250LXNpemU6IDEyLjVweDsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zOyBwYWRkaW5nOiAwIDJweCAxMnB4OyB9CiAgLmNhdC1zdWIgLmFzb2YgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgfQoKICAvKiBsZXZlbCAxOiBzY2hlbWEgY2FyZCAqLwogIGRldGFpbHMuc2NoZW1hIHsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7IGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7IGJhY2tncm91bmQ6IHZhcigtLXBhbmVsKTsgbWFyZ2luOiAxMHB4IDA7IH0KICBkZXRhaWxzLnNjaGVtYSA+IHN1bW1hcnkgeyBsaXN0LXN0eWxlOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogOXB4OyBwYWRkaW5nOiAxMnB4IDE0cHg7IGxpbmUtaGVpZ2h0OiAxLjM7IH0KICBkZXRhaWxzLnNjaGVtYVtvcGVuXSA+IHN1bW1hcnkgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGluZSk7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1pbmspIDMlLCB2YXIoLS1wYW5lbCkpOyBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMCAwOyB9CiAgc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7IGRpc3BsYXk6IG5vbmU7IH0KICAudHJpIHsgY29sb3I6IHZhcigtLW11dGVkKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xNXM7IGZsZXg6IG5vbmU7IHdpZHRoOiAxMnB4OyBoZWlnaHQ6IDEycHg7IH0KICBkZXRhaWxzW29wZW5dID4gc3VtbWFyeSAudHJpIHsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9CiAgLnNjaGVtYSA+IHN1bW1hcnkgLmljLnR5cGUgeyBjb2xvcjogdmFyKC0tay12aWV3KTsgd2lkdGg6IDE3cHg7IGhlaWdodDogMTdweDsgfQogIC5zY2hlbWEtbmFtZSB7IGZvbnQtd2VpZ2h0OiA2NTA7IGZvbnQtc2l6ZTogMTVweDsgfQogIC5zY2hlbWEtc3ViIHsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC1zaXplOiAxMnB4OyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7IG1hcmdpbi1sZWZ0OiBhdXRvOyB9CgogIC8qIGxldmVsIDI6IHR5cGUgZ3JvdXAgKi8KICAuZ3JwIHsgbWFyZ2luOiA0cHggOHB4IDZweCAxNHB4OyBwYWRkaW5nOiAycHggMTBweCA4cHggMTNweDsgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0ta2MsIHZhcigtLWxpbmUtc3Ryb25nKSkgNDAlLCB0cmFuc3BhcmVudCk7IH0KICAuZ3JwIC5nbGFiZWwgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDdweDsgZm9udC1zaXplOiAxMXB4OyBsZXR0ZXItc3BhY2luZzogLjA2ZW07IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS1rYywgdmFyKC0tbXV0ZWQpKTsgZm9udC13ZWlnaHQ6IDcwMDsgbWFyZ2luOiAxMnB4IDAgN3B4OyB9CiAgLmdycCAuZ2xhYmVsIC5pYyB7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IGNvbG9yOiB2YXIoLS1rYywgdmFyKC0tbXV0ZWQpKTsgfQogIC5ncnAgLmdsYWJlbDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDZweDsgfQogIC5ncnAgLnRyaSB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IH0KICAuay10YWJsZSB7IC0ta2M6IHZhcigtLWstdGFibGUpOyB9IC5rLXZpZXcgeyAtLWtjOiB2YXIoLS1rLXZpZXcpOyB9IC5rLXNjYWxhciB7IC0ta2M6IHZhcigtLWstc2NhbGFyKTsgfQogIC5rLXRhYmxlZm4geyAtLWtjOiB2YXIoLS1rLXRhYmxlZm4pOyB9IC5rLWFnZyB7IC0ta2M6IHZhcigtLWstYWdnKTsgfSAuay10aW8geyAtLWtjOiB2YXIoLS1rLXRpbyk7IH0KICAuay1tYWNybyB7IC0ta2M6IHZhcigtLWstbWFjcm8pOyB9CgogIC8qIGxldmVsIDM6IG9iamVjdCByb3dzIGFzIHRpbnRlZCBjYXJkcyAqLwogIGRldGFpbHMudGJsLCBkZXRhaWxzLmZuIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgdmFyKC0tZWRnZSksIHZhcigtLWxpbmUpKTsKICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJvdy1yYWRpdXMpOwogICAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWtjKSB2YXIoLS10aW50KSwgdmFyKC0tcGFuZWwpKTsKICAgIG1hcmdpbjogNXB4IDA7CiAgfQogIGRldGFpbHMudGJsID4gc3VtbWFyeSwgZGV0YWlscy5mbiA+IHN1bW1hcnkgeyBsaXN0LXN0eWxlOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogOHB4OyBwYWRkaW5nOiA4cHggMTFweDsgbGluZS1oZWlnaHQ6IDEuMzsgfQogIGRldGFpbHMudGJsOmhvdmVyLCBkZXRhaWxzLmZuOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0ta2MpIHZhcigtLWVkZ2UtaG92ZXIpLCB2YXIoLS1saW5lKSk7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgdmFyKC0tdGludC1ob3ZlciksIHZhcigtLXBhbmVsKSk7IH0KICBkZXRhaWxzLnRibFtvcGVuXSwgZGV0YWlscy5mbltvcGVuXSB7IGJvcmRlci1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWtjKSB2YXIoLS1lZGdlLW9wZW4pLCB2YXIoLS1saW5lKSk7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgdmFyKC0tdGludC1vcGVuKSwgdmFyKC0tcGFuZWwpKTsgfQogIGRldGFpbHMudGJsW29wZW5dID4gc3VtbWFyeSwgZGV0YWlscy5mbltvcGVuXSA+IHN1bW1hcnkgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWtjKSAyNSUsIHZhcigtLWxpbmUpKTsgfQogIC5yb3ctaWNvbiB7IHdpZHRoOiAxNnB4OyBoZWlnaHQ6IDE2cHg7IGZsZXg6IG5vbmU7IGNvbG9yOiB2YXIoLS1rYyk7IH0KICAudC1uYW1lLCAuZm4tbmFtZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAxMi41cHg7IGZvbnQtd2VpZ2h0OiA1NTA7IH0KICAudC1tZXRhIHsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC1zaXplOiAxMS41cHg7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtczsgZmxleDogbm9uZTsgfQogIC8qIFRoZSBzaWduYXR1cmUgaXMgdGhlIG9uZSBpdGVtIGhlcmUgdGhhdCBoYXMgbm8gYm91bmRlZCBsZW5ndGg6IGEgZnVuY3Rpb24KICAgICB3aXRoIGEgZG96ZW4gbmFtZWQgYXJndW1lbnRzIHJ1bnMgbWFueSB0aW1lcyB0aGUgY2FyZCdzIHdpZHRoLiBJdCBtdXN0IGJlCiAgICAgdGhlIGl0ZW0gdGhhdCBnaXZlcywgc28gaXQgc2hyaW5rcyAoYDEgMSBhdXRvYCkgcmF0aGVyIHRoYW4gcmVmdXNpbmcgdG8KICAgICAoYGZsZXg6IG5vbmVgLCB3aGljaCBvdmVyZmxvd2VkIHRoZSBjb250YWluZXIpLCBhbmQgYG1pbi13aWR0aDogMGAgaXMgd2hhdAogICAgIGFjdHVhbGx5IGxldHMgYSBmbGV4IGl0ZW0gc2hyaW5rIGJlbG93IGl0cyBjb250ZW50LiBgYW55d2hlcmVgIGJyZWFrcwogICAgIGluc2lkZSBhIGxvbmcgdHlwZSBvciBpZGVudGlmaWVyIGFzIGEgbGFzdCByZXNvcnQsIHNpbmNlIHRoZSB0ZXh0IGlzIGEKICAgICBzaW5nbGUgdW5icm9rZW4gcnVuIG9mIG1vbm8gd2l0aCBmZXcgc3BhY2VzIHRvIHdyYXAgYXQuICovCiAgLmZuLXNpZyB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTJweDsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmbGV4OiAxIDEgYXV0bzsgbWluLXdpZHRoOiAwOyBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTsgfQogIC5mbi1uYW1lIHsgZmxleDogbm9uZTsgfQogIC8qIE9uY2UgdGhlIHNpZ25hdHVyZSB3cmFwcyB0byBzZXZlcmFsIGxpbmVzLCBjZW50cmluZyBwdXNoZXMgdGhlIGNhcmV0IGFuZAogICAgIHRoZSBpY29uIHRvIHRoZSBtaWRkbGUgb2YgdGhhdCBibG9jazsgdG9wLWFsaWduIGtlZXBzIHRoZW0gb24gdGhlIGZpcnN0CiAgICAgbGluZSwgbmV4dCB0byB0aGUgbmFtZS4gKi8KICBkZXRhaWxzLmZuID4gc3VtbWFyeSB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9CiAgLmZuLXNpZyAuc2lnLXR5cGUgeyBjb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWtjKSA1NSUsIHZhcigtLW11dGVkKSk7IH0KCiAgLyogbGV2ZWwgNDogYm9keSBpbnNldCAqLwogIC50LWJvZHksIC5mbi1ib2R5IHsgcGFkZGluZzogOXB4IDEzcHggMTJweDsgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWtjKSA0JSwgdmFyKC0tYmcpKTsgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJvdy1yYWRpdXMpIHZhcigtLXJvdy1yYWRpdXMpOyB9CiAgLnQtZGVzYyB7IGNvbG9yOiB2YXIoLS1pbmspOyBmb250LXNpemU6IDEyLjVweDsgbGluZS1oZWlnaHQ6IDEuNTsgbWFyZ2luOiAwIDAgMTFweDsgfQogIC50LWRlc2MgLm1kLWggeyBmb250LXNpemU6IDEzcHg7IGZvbnQtd2VpZ2h0OiA2NTA7IG1hcmdpbjogOHB4IDAgNHB4OyB9CiAgLnQtZGVzYyAubWQtcCB7IG1hcmdpbjogNHB4IDA7IH0KICAudC1kZXNjIC5tZC1wOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfQogIC50LWRlc2MgLm1kLXVsIHsgbWFyZ2luOiA0cHggMDsgcGFkZGluZy1sZWZ0OiAxOHB4OyB9CiAgLnQtZGVzYyBjb2RlIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgcGFkZGluZzogMXB4IDVweDsgYm9yZGVyLXJhZGl1czogNHB4OyBmb250LXNpemU6IC45MmVtOyB9CiAgLnQtZGVzYyBhIHsgY29sb3I6IHZhcigtLWFjY2VudCk7IH0KICAuc2NoZW1hLWRlc2MgeyBtYXJnaW46IDEzcHggMTRweCAxOHB4OyBwYWRkaW5nOiAxM3B4IDE2cHg7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUpOyBib3JkZXItcmFkaXVzOiA4cHg7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1tdXRlZCkgNCUsIHZhcigtLXBhbmVsKSk7IH0KICAuc2NoZW1hLWRlc2MgLm1kLXA6bGFzdC1jaGlsZCwgLnNjaGVtYS1kZXNjIC5tZC11bDpsYXN0LWNoaWxkLCAuc2NoZW1hLWRlc2MgLm1kLXRhYmxld3JhcDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfQogIC8qIE1hcmtkb3duIHRhYmxlcyAoY2F0YWxvZy90YWJsZS92aWV3L2Z1bmN0aW9uIGRlc2NyaXB0aW9ucykgKi8KICAubWQtdGFibGV3cmFwIHsgb3ZlcmZsb3cteDogYXV0bzsgbWFyZ2luOiA5cHggMDsgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9CiAgLm1kLXRhYmxlIHsgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgZm9udC1zaXplOiAxMnB4OyBsaW5lLWhlaWdodDogMS40NTsgfQogIC5tZC10YWJsZSB0aCwgLm1kLXRhYmxlIHRkIHsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7IHBhZGRpbmc6IDVweCAxMHB4OyB0ZXh0LWFsaWduOiBsZWZ0OyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9CiAgLm1kLXRhYmxlIHRoIHsgYmFja2dyb3VuZDogdmFyKC0tY2hpcCk7IGZvbnQtd2VpZ2h0OiA2NTA7IGNvbG9yOiB2YXIoLS1pbmspOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9CiAgLm1kLXRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB0ZCB7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1tdXRlZCkgNiUsIHRyYW5zcGFyZW50KTsgfQogIC5tZC10YWJsZSBjb2RlIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgcGFkZGluZzogMXB4IDVweDsgYm9yZGVyLXJhZGl1czogNHB4OyBmb250LXNpemU6IC45MmVtOyB9CiAgLm1kLXRhYmxlIGEgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgfQogIC5hcmdzLWxhYmVsIHsgZm9udC1zaXplOiAxMC41cHg7IGxldHRlci1zcGFjaW5nOiAuMDZlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC13ZWlnaHQ6IDcwMDsgbWFyZ2luOiAwIDAgNnB4OyB9CiAgLmNvbHMgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDZweDsgfQogIC5jb2wtaXRlbSB7IGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgMjIlLCB2YXIoLS1saW5lKSk7IGJvcmRlci1yYWRpdXM6IDdweDsgcGFkZGluZzogN3B4IDEwcHg7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgNCUsIHZhcigtLXBhbmVsKSk7IH0KICAuY29sLWl0ZW06aG92ZXIgeyBib3JkZXItY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgNTAlLCB2YXIoLS1saW5lKSk7IGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1rYykgOSUsIHZhcigtLXBhbmVsKSk7IH0KICAuY29sIHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBhbGlnbi1pdGVtczogYmFzZWxpbmU7IGdhcDogMTZweDsgfQogIC5jb2wtbmFtZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAxMi41cHg7IGZvbnQtd2VpZ2h0OiA1NTA7IH0KICAuY29sLXR5cGUgeyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMTJweDsgY29sb3I6IHZhcigtLXR5cGUtY29sb3IpOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9CiAgLmNvbC1jb21tZW50IHsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC1zaXplOiAxMS41cHg7IG1hcmdpbjogNHB4IDAgMDsgfQogIC5hcmcta2luZCB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC13ZWlnaHQ6IDQwMDsgfQogIC5hcmctZGVmIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBjb2xvcjogdmFyKC0tdHlwZS1jb2xvcik7IH0KICAuZm4tbm9hcmdzIHsgY29sb3I6IHZhcigtLW11dGVkKTsgZm9udC1zaXplOiAxMi41cHg7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfQogIC5mbi1yZXR1cm5zIHsgbWFyZ2luLXRvcDogMTFweDsgZm9udC1zaXplOiAxMi41cHg7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgfQogIC5mbi1yZXR1cm5zIGIgeyBjb2xvcjogdmFyKC0taW5rKTsgZm9udC13ZWlnaHQ6IDcwMDsgZm9udC1mYW1pbHk6IHZhcigtLXNhbnMpOyBsZXR0ZXItc3BhY2luZzogLjA2ZW07IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGZvbnQtc2l6ZTogMTAuNXB4OyBtYXJnaW4tcmlnaHQ6IDdweDsgfQogIC5mbi1yZXR1cm5zIC5ydHlwZSB7IGNvbG9yOiB2YXIoLS10eXBlLWNvbG9yKTsgfQogIC52aWV3LXNxbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAxMnB4OyBsaW5lLWhlaWdodDogMS41OyBiYWNrZ3JvdW5kOiB2YXIoLS1jb2RlLWJnKTsgY29sb3I6IHZhcigtLWNvZGUtaW5rKTsgYm9yZGVyLXJhZGl1czogOHB4OyBwYWRkaW5nOiAxMHB4IDEycHg7IG1hcmdpbjogMCAwIDEycHg7IHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsgb3ZlcmZsb3cteDogYXV0bzsgfQogIC52aWV3LXNxbCAua3cgeyBjb2xvcjogI2Q5YTQ0MTsgfQogIC5za2VsZXRvbiB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTIuNXB4OyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IHBhZGRpbmc6IDRweCA2cHg7IH0KCiAgbWFyayB7IGJhY2tncm91bmQ6IHZhcigtLWhpdCk7IGNvbG9yOiBpbmhlcml0OyBib3JkZXItcmFkaXVzOiAzcHg7IH0KICAuaGlkZGVuIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9CiAgLm5vcmVzdWx0cyB7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTMuNXB4OyBwYWRkaW5nOiAxNnB4IDRweDsgfQoKICBmb290ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi10b3A6IDQwcHg7IHBhZGRpbmctdG9wOiAyMHB4OyBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tbGluZSk7IGNvbG9yOiB2YXIoLS1tdXRlZCk7IGZvbnQtc2l6ZTogMTNweDsgfQogIGZvb3RlciBhIHsgY29sb3I6IHZhcigtLW11dGVkKTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9CiAgZm9vdGVyIGE6aG92ZXIgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgfQogIGZvb3RlciAuZG90IHsgbWFyZ2luOiAwIDlweDsgb3BhY2l0eTogLjU7IH0KICBmb290ZXIgLmZvb3QtbWV0YSB7IG1hcmdpbi10b3A6IDhweDsgZm9udC1zaXplOiAxMS41cHg7IG9wYWNpdHk6IC43NTsgfQogIGZvb3RlciBjb2RlIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGlwKTsgcGFkZGluZzogMXB4IDVweDsgYm9yZGVyLXJhZGl1czogNXB4OyBmb250LXNpemU6IC45MmVtOyB9Cjwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CjwhLS0gdmdpLWxhbmRpbmctYXNzZXQgdjUgLS0+Cgo8YSBjbGFzcz0ic2tpcCIgaHJlZj0iI2NvbnRlbnRzIj5Ta2lwIHRvIGNvbnRlbnRzPC9hPgoKPGRpdiBjbGFzcz0id3JhcCI+CiAgPGRpdiBpZD0idmdpLXVzZXItaW5mbyI+PC9kaXY+CiAgPGhlYWRlciBjbGFzcz0iaGVybyI+CiAgICA8YSBjbGFzcz0ibG9nby1saW5rIiBocmVmPSJodHRwczovL3F1ZXJ5LmZhcm0iIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj48aW1nIGNsYXNzPSJsb2dvIiBzcmM9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBU3dBQUFEYUNBTUFBQUFySDQvM0FBQUJmV2xEUTFCcFkyTUFBQ2lSZlpHL1M4TkFITVZmVTdVaUZVRUxpamhrcUU1MlVSSEhXb1VpVkFpMVFxc09KcGYrRUpvMEpDa3Vqb0pyd2NFZmkxVUhGMmRkSFZ3RlFmQUhpSCtBT0NtNlNJbmZTd290WWp3NDdzTzdlNCs3ZDRCUUx6UE42b2dEbW02YjZXUkN6T1pXeE5BcnVpQ2dINE9JeXN3eVppVXBCZC94ZFk4QVgrOWlQTXYvM0oralY4MWJEQWlJeEhGbW1EYnhPdkgwcG0xdzNpZU9zSktzRXA4VGo1dDBRZUpIcmlzZXYzRXV1aXp3eklpWlNjOFJSNGpGWWhzcmJjeEtwa1k4UlJ4Vk5aM3loYXpIS3VjdHpscTV5cHIzNUM4TTUvWGxKYTdUSEVFU0MxaUVCQkVLcXRoQUdUWml0T3FrV0VqVGZzTEhQK3o2SlhJcDVOb0FJOGM4S3RBZ3UzN3dQL2pkclZXWW5QQ1N3Z21nODhWeFBrYUIwQzdRcURuTzk3SGpORTZBNEROd3BiZjhsVG93ODBsNnJhVkZqNEMrYmVEaXVxVXBlOERsRGpEMFpNaW03RXBCbWtLaEFMeWYwVGZsZ0lGYm9HZlY2NjI1ajlNSElFTmRwVzZBZzBOZ3JFalphejd2N203djdkOHp6ZjUrQUhic2NxaDJ6c2l5QUFBQUlHTklVazBBQUhvbUFBQ0FoQUFBK2dBQUFJRG9BQUIxTUFBQTZtQUFBRHFZQUFBWGNKeTZVVHdBQUFFZ1VFeFVSY3JSekx6QnZhcTN0K2JzNlBQeThOTEx3ODZkWk1lYU8vRHc3ODYxbWVuUG1MYkN3YytwVzRxWWpsVjhpMVZ3Y3BPdHNobEhVaGhFVG5TTmpVSnloaGcvU096djdOUGF5N0s1cVdaN2Q3bk16YjNEcnAyOHhHaVpxMXh5WSt2cjNjREx6Wm1kWXJGcFRjWitZMktGVWZMdTBlN2x3ZW5Wc0ptbGxqbGtjakZhWkIxTFZSOVFXaUZPV2ZYa3V4NU9XU0ZSVzcyM21zbktzbG1VczJHaHhsK2d4a2hsWnlKTVZGNmV4S2F1bTlqV3VpcFRXRFZZVytiZ3Yrbmx4L1BxeDJHZnd5cE1VK3pqdm5XcHcvTHF4WEdGZkM5TlRFMU5TM0ZSUjVCWFJYSkRONEEvTUl3OEo2MU5NYmRXTjVROEphWkdLNmRVT1pKR01XTTlOWjg5SkU5eFRtcUhTSE9SVFc2S1FUMWlUWW1wVkdtR1BsMTJPNDZ1VkYrQVBmLy8vNE9jNWZ3QUFBQWxkRkpPVXdBam1xRXdUUDc5Qy8zOTE5NysrLzc5L3YzOTkveGUvZjcrK1A3OSt2UCtwZnI3NWY0Y01wdjhBQUFBQVdKTFIwUmZjOUZSTFFBQUFBZDBTVTFGQitvSEJ4WVJNRGxYdXBNQUFBSERlbFJZZEZKaGR5QndjbTltYVd4bElIUjVjR1VnYVdOakFBQTRqYVZUVzQ3a01Bajg5eW4yQ0pobmZCeTNuVWg3L3dzc05uYS9wbWVsMlVXS2toUUdDaWluMzYybFg4UFVNTUV3cktCTlNic1JNRTlJdTU3R2hvSnNqQWh5U0pHS0FIYlc0UjVSQUhrODVwK2NOQ3NaR1hBV0VPQUcvMkNYVngyTThnWTZZYjh6KzZHbEg1N3Z5aXBHR29WR1o5TVlramNHaGhhRHlib2NwR1krSWRoNE9RTFA3SHdQSDhmQzZ4b0Z0dVRqbkdNTVIzOEV2T0JudStQMmhHOUNqbzlFN0pzSnFwaDVWUUFQK0l4L2N6NE5xb2JhNDUrMmczMFdMb0RWZ3JON3dYbmp0bHZ6OWZ1ZVRQUjlTM3VUVFVWUEVhRWRzTnlld0VjSVhQeHhFaksyTmhyVm9UVHh0enZVRDQwaFkxLy9aNXdaa2hCY0NmQ2RRUG83ZzF3ZkRBUldNWXhpc3doRkVXWlBwTmU0RVA3a0J3TjRYSWtuR3dxR053RzdwcFNJOEZtUUdScEhwUFR6R2tZbzg5L0taSGoxQWhPLzFUemZmVldpM21haTVpdytNZEFyT3FQamlvUlVQakpGTGxjd3VvNjVqWnMyL3BnUWkwMi9IZk9kais2QVpwZk52YzJSYUU4ZTFXM214V294QkNremtFSm1VT1gyb3JzdzJvbWdVcCtCd2lFd2JtMGVMS1hVVlNFU1g5SyswOTBlOXR2YVlkKzVMOEw3ajBTdlFreC9BTEU1SUNCcFF3ZzhBQUFBSlhSRldIUmtZWFJsT21OeVpXRjBaUUF5TURJMkxUQTNMVEEzVkRJeU9qRTNPakkwS3pBd09qQXczYURaZlFBQUFDVjBSVmgwWkdGMFpUcHRiMlJwWm5rQU1qQXlOaTB3Tnkwd04xUXlNam94TnpveU5Dc3dNRG93TUt6OVljRUFBQUFvZEVWWWRHUmhkR1U2ZEdsdFpYTjBZVzF3QURJd01qWXRNRGN0TURkVU1qSTZNVGM2TkRnck1EQTZNREQ2SnlQdEFBQUFHM1JGV0hScFkyTTZZMjl3ZVhKcFoyaDBBRkIxWW14cFl5QkViMjFoYVc2MmtURmJBQUFBSW5SRldIUnBZMk02WkdWelkzSnBjSFJwYjI0QVIwbE5VQ0JpZFdsc2RDMXBiaUJ6VWtkQ1RHZEJFd0FBQUJWMFJWaDBhV05qT20xaGJuVm1ZV04wZFhKbGNnQkhTVTFRVEo2UXlnQUFBQTUwUlZoMGFXTmpPbTF2WkdWc0FITlNSMEpiWUVsREFBQktjMGxFUVZSNDJ1MmREVVBhV1Bid0M0aURkVU5Jb2tPQXRvNWRRVWhNazZLVENBbkJhTUJxZmUrb3RicjcvVC9HYzg2NU4yK0FTanQxWm5mL3o1MU9pOGhMOHN0NXYrZmV2SHIxSjBZdWwyKzJDbi9tRS82dmpJVmlmbk54OFpkZkZ2T2x2L3RRL3ROSHJyRDAraGNnQmFPWis3c1A1bnRHc1ZESTUvT0Z3bDk0aFplWFVLWmV2LzZIVUZoZStMdlBmLzZSVzI2WHhRNE9VYXdVL3hwZXhYOGdxczNsUXZIdlB2dnZHNFdLcHVzU0RGM1h0NHkvQmxmaHd5SklWWEhodjh4V0ZmT2liQnFtb1drZFRUTU1TNUtVNVJjL2hRSVlxOFZsRUtwU2FmbGoreC9kNTlTd0JPUHZCb1dzS3Bwc0dkcktOaHNybW1HdGlpOU5DMW05aG5naDkrc0hkSWEvdkg1S0Y0c0x1WHhWVmF2NTNOK3RzY1dLckJ0YWVYdm5keG83TzlzcmxpV0p5eS9xblVxYm5OWG1Jdk9HSHg3RkFHNm5vcFE3YUNSc3BmTDN4V081QW95S1l4Z2RobW8zd21WWnNwSi9TVllGWWxWYUptL1k2L1p6czNXc1ZNb0xpdGlSVjJVWnJLa3V5WEpIK1Z0d2xRcUNBa053VFJOWU1VNThNRm92S0ZxZ2hJdjVWN2t1NnVMSFI4KytsRk9WamlVREtGY1R4VnBOdEYxVE4vNEc0Y3JsSzVwbHlpRGJZSzRtV0FHdHNtVnA5WmY3OHVWZmZ2bFFlcFZIVnNVY1NuaStNSDFwZmxVVUI5MnpWeFBVN3NBZkR2MStyMlpzeVg4NXJZVXFjNENXQmQ1dml0WHZ2KzkxTEVsNU1XdGFmUDNMYXhBczBNRWxjSUtGNVgrOG5yWlpSYUhzeXJyaml1MnUzMno2VlJ4KzB4ZGN5Nm44dGF4eTFTQnlnR1Z0WldkM2Q0ZEdSaEZOZS9tbHZoMnNlemYzYW4veGw5ZS92Z0w1SWh1ZmdWVmFxSWl1TERtZTBnQkExZnFiZzRNOUdBZVZxaThZdXZqWGloWUVWcFlGRGhESE5oajNYUnJBS1BLSU8zc2R4MTE1b2ZDaDlCcXQrNjhRa3dLeVBObjREOTIwR29JMWRYVGRzWVV1a0hwenNMZk5KWDkzdTFMdGk1SXIvSlY1WkVHUkxUQlV6QU1DcXUyOUF4eDdCQ3p5aUlZc3ZOQVZMQ3orOG8vU3F5NElWb2xZdlM3a01tZGZxTGl5NGRqdGZ0T3ZIK3dBS1JKNmRtWHJ3N1lqdjMzRVFQeTYvQUl1WEhVaVE3VUhRblZRcVZmWkFIRkhqZVI2S0pkZktIb0FWOWg5VmZvSEJQQm92WDdaeEdzUzQwTFBBM0dDSjFTYlZUeWMzNWw5b0Q4N083c1ZYL1VrZS9hQkZWU3QvdE92Yis2ZDRZQ2grbjBIZGUvZ1RkVVBRelNnUGd3OFBqd3FnS1dacnFMbVhrSVQvNEZ4QTBRUHIwc2xFREtLVGZOMUNNL3AyS3BsY0lDdTBrVlVKRlN4ckNPczN3LzhybTNLOVZsNldIampTSTc2NjA4OTFHSys0aG9HajBMM3dHU2lBYTBjSEZRcUlHR0lhNC9NL1Y3SHNFeERlUUdYQ0lBV1g2SCtmU2psUGlDM1VxRXN5cktvZ21kY0VBTFpkRVRWQndVRXFVTGhaNEllL1gxUTdRT3N5Z3hZQlZVMkRFT3EvRVIxV0Nnb21teWFHc0hhUGFqN3pJSnVnNHh0YjVPN3djTWtXS1psV0xMNzg2TWFrS2xOTUZib0FITkw2QkJ6RlZtQ0tOaXRsa3BxQUM2d1BXZ1NxdDg1THFMRWFBRXNsS3daQVRPd2dqakQwK1dmUjJ1aGJrTW1hRmtyMi9ETnV3Y01EZHAza0tzS1FpTjhSQXZDaW81bUdiTHkwOHVCK1Y2KzlLcXdDYUZWN3NQaTY0VlhWZGUwOE1MQWRZRkV0UVlhV05sRFR2RC8zazVFaW1RTER0bnZlb1pVbmpxa1FoM2kvSEpEOVJ4WitGbTA2cTVrV0JoZTBUZS9XZk5CNmZaSS9YeFN4NzNkN1RmVnRUZTdaQ0FBV0FldWVPV25GekZSTG5JTEN5VklhREJmRjB5SWpPRUtkaXI1NVRYVkI3SGE1c0hNTHBuVjJIQ2hnVytxZ2FYYmsrSmVxRHQ2b0xRYnc1OUlLNjlKUmhRem9DOTg4MlliVkJFdFZaVlplRGpPN1lNMzZDaFJFM2QzOWxZc3cvbnRoY3MxZ21QUjBGYzFVV2xVS3dmTTlVU0JEQnpKTHROQkRCMmFnbVNaMnRvTVZpTlZhT3kzVk52NU9VVUFFSEprOVh1YzNhQTNSRlNWZ3gyTWo4bUM3ZkRvRkNVTEpHekYwc1dYQ3VYNXFMcGJxSWE2cHRpQjdtZ2RNSjQ3SE5mdmlSclNmM3RWdjRhd3F0T3NsSThmQWRhZzFSWDFuMEdyVk5Da2JDSUkwbE5IQzhIS2Z1UWIxdzUydVRtRmYxQzJOTU1SWGhaV3NlSWdMS204dGxaLzI3RjBYZXRRZHNHU0NqUmVzWVJWd0dTWms3QUtkVWwzaGU1SHRkME45MXZEZnMzNENTSGlRbjNWNmV6RlNRMWRyZDAzOVFwcVhyMU9FZWxCL1ExMzBpeXVBZGxhY2ZUeUN4Y29pNEpydXBDTVZ0ZnE0R1RLd010RStjS3Jsa25FNEdpSGJkMmFVRU8wN1k2aXFyMjIwbE5oTkhxYUpkbC9kcm9vcDhoR2VTY0ZpNlU3bUhINXcrSFFSeWUwdyt6Vjd6eXpCaE83YlVrdm5ya1dsRldsSGVqS216MnlsY1JMeHp3L2hRdk5POWdNRVdCbERIeXVManVHWWR1ZUIrR2pZVGlPQS85YWpsMmRzclM1NzBrcEFkYU1jZ3lMSUtya0VROWlnZCtKYUVFb1ArMThmdTdJRjliS3NyQW02QkFxYzBzVjhlb2t2UEJJd1JkaW1KRUpIZkt1WkJtR2FjTHpydXNHQWRBQ1p0YXFrb1pWeERuUlN2MDdsRE5YbmdHTHJoZFllTFR2R0dBbFNvZ1N1UHNYd0NwVTdLcXdLcXpWTzdxMkhmbEJqUE9ZUHE2UVBsSUFBVmQxQk9GcnBvcGJxbWdnU2NGNGZIaDQrT25UMGRIUnAwK2ZEZ05EckhDelZucFZYQzY4VXhUUjdzamZZL2huU3haRUVBY0hFSmZ1YlI4Y0pFV0gzM2Vpb3NSTHd5cFVaTGtpeUFwRUxacmUyWXRvSVp6ZGhCZjVaaEFzTU84QUsxV2pLUlh5dGhFY0hoOS9Qams1T1QyamNUU0dBTGVVZzFGVmhiSm9heERZeTFoMGxlejZ2T1kzc2xsUlhwcllMUXkyV0lhUnNJcGVoamJyQldNSFlHVTViVUZhMmNQcllxN0VzQ0w1V29ubGl3bVdnWEZ5eHZxODA4Ykg1ekJPVGk0aVdKSlNFT3FDSWdZNGJ5ekpNcnBicDJhRDExVG5wSldyZ0RmYytYMTZnSmZ4Qi82YkZLdVUvVjh4SFBIbEdoR0FGWVFtZmx2cTRIZVZUYXZNWll0RmdTaGZUQjhOclZ4dnFnNEtsdVhVbjRSMStTa3dYTnRiWFpXQmt1TjY0a2dRRGQxcis5MmFvenVWK1dpVjhqYkdXYjlQK0VNR2F4OWdUWVBFcTIyOVlKeFZySzhhanVMN2d0N1p4aS9yNk5iS3l2Wk9BaXZoWlFoK0gxMGhDSmFZUGQ5M2JoclcwZUU0TUhScEZmSnF6NjZ0dHh0OXZ5cTRrdGhvZHZ1RFVhQkx5bnpOQ1VWRk1qcXpyQllrUHRYNlRocldEbWVGTXhmbGx6TlplVmQzUnI3L1psdW5xVXNzL1RzU21mbmZFMXJFYSs5dEZUTWRnalZSTnpyVWdnVFdwekZvWFFDWWxEYWJFd3FIM1pyc2pQck5uaTEyL2JhblMrWHFYREhFTWx5NXp2WU1BZnA5Tnk1MC83NlRpbHEzVnd6RGZibnBWc0dXbkZyVmg3Q1lGNDMyT2xKWmNKSzV1UVFYcEJyTXVxUEpTc0VxRkFxaUVjTzYvRFNXYmNUVTk0Zk5ZZGhxRFZwK3o1TkJCWDBCcm91dCtxcXR5MXBsSGxxNWltdFlXcG1TTHd3L2syb1JsWTlRbEZneXRrY3gxdllMVlIzNEtCVkVXUmVydnJvTkVrV0FRQkYxdTlwMnlGaWtOSEVYRTUyK3JiTjhXNk9yVjhxVkNtRERJU1p3R2F5VHErUGp3MEIrMXcxRGtLZlcvdjUrcTdVLzdJOENTZXcyVmRFSlhOZnhCTDhyT3JvbnpGTUNCbHF5WldtZEdXT0ZqL2pCU2tlREkzdkJPYzI4SXV0MnQxa25QOGlEbXUyT3BLeTFBNHNGWElsa0hWU2JDbE5DVEdXS3hXSytYbEVBa3dGS3B4dkJKd0QxNmZCdzdFaTFmcmkvVDZCd0RMdWlIQ2dEWHhqTDQrUERzZXNFbzJwVkFSa1Q1dWw4eWRYTHNtNVN4TXVIYmo0eUROUFFaZnZuVHdIRWg3SUNObGh0VmpHNjI5WU1acWhBeG9KZXMrMGEyNWtZQXBTdzdXd3hXS1pXcVNobFRWN0YwTWtCNjZRWjdoaXN1Z05CQW9BSkNSU0pWUWdtU3JaN2ZyOG15NGZINTFmSFl3ZGNlNy9aOWd4NXJxNnFYTEZlMDZ4b2FOcmtnK2dScEE2dVpsY0tMeFkxNUNvYVhHQmt0WU51ME9SV2ZXZEZBbWxyQjBZNWlVOTN0K3QrenpYNUFVTCt0N3FLems2emNXSy83OWNrSGNJcGNIN3dvOTlpckZwTUJTV3BWbTJxdGp6Kzhoa1ZGZFRVQmNNRnp4anlmTUZqcWFBS01CUUYvbHA1SjdEMmtKVjNpb0QvQ2Z3UmplVVhtZHpoWXhrTmx1OVhkcW5JMk5HanZIQmJrMm9EdngyWUs5djRLM29LS3pONmhNcVFKTmVHMkltY0hkanc0UWhDcVpyUVZ2dCtHRWI2QjdqQWxzdXVBSlk5Y0E2UFQ4NXBFQzJ2MXdUREpkdkNkNTVkTWwyWG0zcnFaVWRSa1IydjIzeERybVpuYnlXQ2hXVU9CNXhYMjJWbHJkMjlQV0RWRjZWSThyY2NFWU9DSVRmaVFLZFB6bTg0YkpGUjUzOUNnTFFLUXRTdFNjSGhGWEM2Z1AvT3o2OE94NWJqQ29OK3paRTY3K1l4TWIvbVdkZDVyckM1K1E5eUxRdWJtK3MwNDVhRDNMendWL1FTUUlEc3RNRzQ4eExIaXJRZGVXY0E1M1ZEOFBoZ05TRUpRbGIrQ09VS3A1c2dmQmNHRWFmV1B2c25qTER0NzBmL2hnREpxWFVodUhMR3g4QUtJckR6MDlQekV6UmNydVBVK2xYd2tuTk5YZFhmdmlGWTJQT3orQUZvNVpZdUw4Nlc0RUdwV2xHVXQ1V1haMVVBd2FyeGVTUU1YY3BTT1o1T1JVWDBXME5Wc3d4SXJMSGFwdWl4bGRWSGZpdnhka3pqcGdhODJWNTEyeEM2b3dxZUV5dUFkWFlLd25VRnFnaG12dXNMbmlUUDBSb25LRzhSRm5hejROb0dvUFllOHZYTDlSSTRTK1h0MjcrZ0diRlVsdzFVUXQ2K0ExbWh0SklLaFEyM054dzJOQ3paSUN0Qmo0eTdaWUxRcFVXSXJOTWtxM0FndURLcTREdDVmUGlaczBKWVo2ZmN6RnNPT01uNTVqYVczMVlJMW1zT3E5UzhoQSs3V0NxOHlyMUJXQWN2RHFzZ1NvNHdyRVpLaU1Gb0Fnc1VFVVFMUXUySVZSUTBvR0MxdzZ3TVpRUUxGQkpVMGtjVnhQekdXeVV2ZUhGS3NQNDRRMWhYSnljbm43K01EY2RycjNWRlEzcTJXcitzTUZnZkNCYllxdUlpVUg4dm9HUzlCVmh2WGh3VzVCNWVIejFoRE10TTZpSDRrMWJUSkdMbHAxaVpGampLR1ZwSG1MQXdQdWgzMWJaUTg5QUxnZ29HNUFVdnprNkpFLzExUW9icjVNdll0U0NCcjliQUtUNnphb2pEZWxWY0FsWWZFVnYzL2RuWkVuV3pnTTE2ZVMxY3NIVkphTmFqVWovMm9aaWQzVGlGeHk1TkhWUHJQV0Nsc0xLTXRRWC82YVNFKzJuRmE0RTBEVU9mS0kwZzlZRllWWmRRQlVWbnpMd2d5bE1rV1JjbllMaVExakhTcW1FMHYvcE04eXhYUStyUllBM29PZUYwa2ZXZkZDcEs5Y1c3ODMvcnlGNDNFU3lFQmNsaG5OVmpGUkFUL3IwM2EyRGJFeDJFbUdLWW9SVDZmci9mN1NFbEwzQmtDRlFoQUt1NWtBUDBQTERzbkJXRHhmOGl3NFcwRGwxTGg4UzZwZ2RQVjZDRU5DejIxTkhaWXVrdmcxVVVaRW54NDdDQjFKREI0aDNtTzJXdHZMZjl0dDZzamhJL0NOS20rQk1xcDlSc3o1RWtMRjJKdFpIUTYzMzgyQmpKZHIvTFdaMWVuRWFjdUlHblIxaWhPRDUwSU0yczlnSXBJMW9ZRDZSVnF5UW9LVmpzMFQvUEZuTi9HYXdGUlhiVmxHRHQ4RXc2cVVydWdybUMzTGxieTdDeSs4TVFtNWE3YWs5UVJEc0FsUXNZcFhidlk2UHhrVWJQbG9TaElLRVhCS21DUDVkSFY1OHZZVnhkdm45L2RuVUdCZ2RNUHRENkRFNHg2UG0ycEtVVEh6ai9kRGhRWEQ1UTZqR3N6YjhlVmdrTGw5WHFYakxqdG9jdEtOdThCNWpOVmV4VnFzT2VuV1psZWlxcUhBb1R4MVJUZ0ZMdlkzWW9JRmg5Vy81eWNuS0ZSdXJzL2VHWWpVTStQaDJoelNkYTRERDh0bVNKK1dSQWxMbjJScW44eG43NnJRN2t1TC84ZTJEbEtyS2pRSXlWbXAvYzJVVllWRVVqV0x0N2RjcDRjRm9mKzg5WnRRRlV6bkVDVkRtU3BkbkRsb1ZoV3o3OGZJSnFCN0NPeGk3T3dJNkRJTURpZ0dzRVJ4ZG85Q0dFT0E3QVkxUTlYWHViSHRXMXRiZEs5TU9LOGpaYW1QTTN3UUl0Yks5Vk1yQjJxT3pBNTNWUnJKcjlFYnBCbkMrTnFnMnV4Z3dUMktXUGp3N0JzZnUrTFdQTWNNWmhqZnJnQldCOFZGWDFvNm9FUnl5Z1B6ay9IaHZnbEJYSkVOL0U0MENwck5XVlN2Ump2UnJIWVgrUHpTcVZaVStsQ2QzVXhQZUt3V0h0WVBPbTMxUlJCVm5mRnY1dllqdEkrK1B6QXdXcjU2REYrb05zT2NCU1d2dWJyM0ZzYm01K0NOdXJIQlpZK1VQSHNhdXFCM0g4UWpTV0lYWlNEcEtma3hMVjN5Tlp5elpFcE5XOTNiUVc3cXlZWlFackY3c1BxNEtiTmxjUWpuYUFuUGc4SzhHQm1LUVdISjlmWFB3UlM5YitoNlgzWU56UExpOFhOL2NGRHV1UEM0eTJES2Z0MXlRM01mR2xaYUZTZVRPendmZHZnUVZXd3E3V1o4TUNWR3JWVjBXZHFTQmJNZ09zdHZlMk80WXplaGFXS0krR3FndlJLT1RNRkltZUhxMk85bDl2THVJUHA0dWJyemNCMWdYQk9yMDR1VG8wZE5IdnVYSzZ0SlY3cE9veUY2eUZuMTBzVlJGV1JySjJJWk0yY0RKNjcrQU5CQXlqckZnaEs1d2ExeVN2OTV4Z0JSQ1QxTkJpblRGWUZ3anJ3K0xpQjZUMWZuTnBNUVVMek5aeFlNQWJSRDRIOHZTWWJiUHEyZjZUZXZVbkwvbEcvOU9QcWpOeHM0Nnhza3VHSGFmMlFLeFlueW0zN3VXZDdaWHRuUlhkRlo0VkxNakEzZkhuazR1emxHUjlXTHhjMm54LytuN3o5ZG43RHlsWUZ4UTlLTTIyWTh3eGp6d2JWbVc1Rkk5aTlXMjUvTGI2VTRXcklPb2V4YVM3NlJCZTcxQmp1U3J5WE5CTUJLdUQzU25hM3JaaFBBT3JIUVNxUDFyOWdpMGlGenhzSjFnWDcxKy94aituaXgvYUhCYkU5cWNzZXVoWFBYbU9GclFDZHU1blliMnF2MzBicjArcFZqRW9nNWoycDg2emxoUVpaeXIyZG4vZmk3UndkK2V0MGdOVXZacWJ6Z1V0Y29QR3lzRTIvTDI5YlRqUHdLckpvdDhkajQ4eEhzMUkxdW5wKzllYnI4SEdaMkNCUjd3YVd4Zzl5SzVRS2hhZUhML1N3cEFKV01XNmtocEFibTJ0b3F6OXpNSThCS1VHemhmU3lpcWE2TUxlTUw5WmJZdXVsRVdGYmxEVFZ5QjExSzN0c3ZtTVpMVmRwOWNjclVKQWVucVdsYXpUMDh1bEQwdVhrN0F1enMvQnhMUG9vZnI2bWZITEw1dTVTVml2aXRWSzVTQWFJRmdJcS81VFp6Rndza0xzTnYxNmhaYkJxTlZxcytrM0JOdVprQ3FFVlFaVHBXM3ZsRHZiZXgzZGJUOHZXTjRZelhzc1dXZEhxK3VnaHBkTHJ4YzNnVmtXMXVrNUJxWkF1S2E3RFZ6MitOUlkzSXhNZHdvVzlROUVZNW5VOEdjdWlFSFJXdlowWFJPNmZuTnRiYTBKb1BxcUlIcVNhVTJoQWhYRVpwRU9lc015Wk5KUHN1cDVUcnNweUJBM2tBR1B2ZUY2YS9GaThmWDdDM0NKRjFsWVFQVHEwTkZyVFlnZVJzOEkxb2Q4N09ZeXNGS2pCTFFndC96SjAyTWx4ZEFOUjhQSlBwV3FVYTQraVVxSDZNRVZzVFZEZzRpcnMxS0dxUFFaazFXVDdXcmZ4dmFqMDFpeU1JSVhJSFFBcVlJdzY4UDc5M0hvd0dHZFEvUUErWVF0ZWRYYzB5TTUvTWRndlNwVjNtWmppWjlFUzF1MVRGMm5SZHE0cDh1RVNNbXlKbHFtM1JOMXkwQ0tKc1VSdFdjRVN4YWFnb1BsMFFsWSs2OWZnd2FlblpJdVRzSzZndWhoNUF1NlB2K2M2Nk93WG9Gb1ZlZjlsTytndGF3NGttbFkwOE13ZGNrQlMxa3hkYVVydUphQk1tYVlqbUVGVHd2V1NLTGFETTU4bmNacUNBWWVZRzB1WHJLeHREa0Y2NXhxRDkyNW9vYzVZTDM5R2JESU1hZUMyeEo0M1k1cnlsbjFrMlRKMGtTbFhzd1ZSTmxyZHhYSDBNb3JZTFJXRkloVm44d05lMUZ0NXZ3cUxWbGdzNFR3QXpNN1MwdXZOejlrWVYxY25YOGVHN0xnSzVJanpCdE5IcjBvckZKdVdhblp0bGhPOTY2VVNnVkJGRHN1dG42eXNhcDN4UEs3NVVLcDlDclhCcnVyUW81b1lmT1d2cjM5eHE4OTdRd0ZDVkpvRVRPZDB3bFl0VzYzbjR3SldKQk9mM0VrdTlyd0poc0tYK1c2UW5lV3RCV1dMbDRRRnVoY0lPR0dHNlloWmpzNmM0WDh1NHFpbEVVUlFDcVZkajRTdnB5eTZncU50bWZpbkxRQnNBNThOZENmTWxxMnJEU3hOZ09aVGhiV1dCcDdNR3crUERsT2R4RFdHYXM5OVB5YTFNbE9pdVdXenZpVVYzWVVDKzh2Tmw4TVZtbFpYSFdjOGZYMXRlZElVK3ViU3dzTEMrUnQ4Ti80MmQ5Y3llNTlIRGxHR1RjQ2dPajlBTmVEUFpGSUN3NW14Q0JZT0RPWXRsbVhYM2c1ZVh6SUM4eFhCT3VjLzRVSm9zTnFEeG1udjdCMDhYN3gvZWxTZm5Kc1FoRHkySUxWUHc5cldaUmQ3L29HeHNiMVdNK3VFM2xrNUJRWnpIbVBKcVVCbHJXOXU5MGRxcTZqUENGWU5SU3NLd2hJczdET0xpK3ZyaTR2MzE5ZTBhekYxZEhSNVI5cFdKUWdZdTNCTnJNekY0c1hTMnY5OTJmdko4ZlZ4ZUtqWWVlZmhwV3J5ZTcxeHUxWEhEZlhnV1RQa2VFTEhnb1dwQzhyZTNzNzFKMjdYVy81RUVoTmlWYXYxMjRMZ2xCenNUYUR2YVVYRWF3L292bXZzNHMvb2luRHM0eFFzYit1TUhyUVJ4QjE2T2tqbXczcm4vOWNYSHo5ZUlqK1oySGxWTWU1dTJXc2tCYUkvTE1oN2tKWlJ5R3FPUWJPWXBSMUJpdUVUeElhbkJBQUd1SEdSN2JuQlk0azZZYmI2QVU4ZUU4SXBjelhURmcwZFFIUmcydDQzYjZuMnlrVG54UE9RQTNQbG9xcHNjRCtlZnpBL3h3c3NPMmE0MXhIcklEV25hNDltMm5tUlpRaDFocXlSOGtoZG1tMXFxSmtNMENhNTdvT3JqTkJ0K0U0SGk1MkFtbzhlRTlKMXNYVGtzWDhZbHg3MERLaTFUNDd1MXo4dmxMZW40SUZ0bDNYbmZGTnpPcnI3YlZwdXM5MHYrSzZtWkdxQ3E2K3NyT0hzQ0NMM3EzNCsySGJNY0JGME41anJxZlpPTm1EVTRlcXFnQXMzZUdDTlEzcllocldhUWJXb2F2YmdtaklTbm9QamR6U3hkSjN0bjM4R1ZpbDVZNk1iakFGNit1TjU1aHk1OG5jb21EcnJpM2Ftc0htRWp1MFdPeWd1dC9xMjRZcmpnaFFUNFhnYWVDM3dpR1dkbWlWNGVFVjc4VDZZd0xXNmNVemtvV2lCZG1xSldjMmJza3RuZitWc0padHNPMFpWR1MyeGc0VzJ4NUZKZFFjQzFSTU10Q3c0M1ljQUd1UFlBMFZTVk45Nm5VWWhpRnI0TzRMdHJNS1lVSGdmRG01dUVoZ1JUWDRPZFR3OU9McUVGSlAyWENWTEt5ckg0U1ZXMTZtbHFUbDljTGNleWZpYkdyS1hNVzB5Q2MrMGxtZHk3YzlDUVdyWmhzNGg3RzN0NmVCR3U3dTdsV2IvYmFkYWFRWnRNSnUyOWIxOGVIeDV5OWo1OHZGMldrQzZ6d0Y2L3hwV0dlbjRBOHRVVkN5OHpvL0NxdTB2UDd0MjdwUTdhNS91NzM5dGw3TjUrYnArcTU0am5jN0RRdUZ5OVZyc3pLeFhMRml5enB0UnVNTHRGWEEzdTQyaDFWQkxvNklLK3lqQnJZdUx2NEJWRmNRSzQzbFQ1ZG5GM1BEU3Rzc01PU0hqbHVmM0VwdmZsam9Jbk1NbGxJdHJuKzd4M0Y3Uy85OHZiYkx5aHdWalhkdWNEMkwxZGV2RzNjemw4Y1dCRVdXY09lc1lhczFvTHdRMVZEVFYvWncvMVJIY3NSZVArUTl0NjFXVi9Ca2FVeXRSVGdWTDhXd3ppZlY4RG5KQWxoNk1DWHE4eHI0WXVIait2cDZMOGRnclhXLzN0TTUza2NlRFR6UzgrdWZDb3JzcGV6VnczWDBmdnlFN05vdWRuQUZ4WkIxVCttR0lkb2l6N0JXeXJqZkJFaFd1V09aVWlBaVJkWkdHdnJka1NmTEVTb3NEenNBaTZraCsrdGlic2s2SlZqMXFNQVhWZnJtaEpYenZ6M0ErTHF1NW5NTGEydHJOL2RmNys5VGduSHR1UEx6MVZPQWRaZUNkWjJDOWZYR1haMUk4aGZ5RlZlUzNGcGpTTElERWFoSks0eDRqVXYyYXIxKzFId2IrZzFBNVl5L1FDcDRja0pCTzhMQ2s3ODgvdlRwK0FqR0ZVdHZXSTV6ZVhrR0R5TTZKNU1HSHRYUWFYY2JYVkNtWXFIZisxZ3R6ZzhyLysyZUM5SjZ0OUhydHBFVlU4QUlsdlVqc0c1U3NMd3NyRnhCRU1GWTJUMS95SHJjdzY3b09vNkplN21hdXVtS1FtTXc1RXNEUWw4ZGVWSUFVb1dvcms0dk1NRTdIZ2VmTUVpNEdxK3Vqck1qYnN5Q2NRd3NQMzA1SnBqdkw5OWZRYzU0ZWM1Z1hZTjRySzhYdXQ4ZTd1RUJHTENuWVMzUUhFVStYL2dZbjlVOXZQRnJ6Q3JDTlRlczhVTUtWam8yemNJcTVTcWlMS094Q2x2eGNnRFc0RGVxaWFKZFUvdGhKRlhEdmxwejllRHcwOVhWT2FJaThVaGdIYTJLS3M4WDRiMDFmSGRVbThFeGdaRkFma1pZQnZudCs2L3I3QlR2ZS9rbllZSEhnOUZldjcxZG40aU12cVpnM2VNbkFxelZPU1l4eXE1OG5ZYjFjQlBIWEJsWVJVRnhaTWxUK3NQV2ZtcWxFdXV3cFJGR3kzS0cvWjdvU0FHWXFpdHFjT2U2bElhbE5DRUthOEpmelNGL3R6OFk5Rm1QVmtQRmJWamFBbHZwTmFJck1TWllsa3RXSWxhZWgyN3BpYUMwMUYyZmtKL0l4TnpBZjdlM042bHhyYzhEQy90czA3Q2M2MGdUQWJjYkcvaGlvZUpCK2xKcjhPVnZUNnd5Q1NIU2N1U0E5eUdmUmphSHdYSVlyTEZIYTlyYWJZanlJUkhDTGphcWtBNEkyNUJBc2tGdHZHRnZmRVdTNVZ4bnhRTVUwVjhmTEtPdVRldk04dnA5NXRXM2pNL0ROUjkzcVRGMmpEbGdGVVE1U0k3ZzlzN3hJaE4yZjNNdDhkQ2hoSkVWT0RyVkQ1T203Wm1zd2hqVlp6VHE2ZHB3V3JMR1dLQ0c1SnFHaEYyVnZFd3FpcmhCTTJhVERDVnU4Z01zMjJQc1BTVllXUURyQXJpMmo2UnRXVnlsUXU4MmZpa3IweEdmU0xudjdxNHpZeDdKV3FoQS9IN0RSQlAvdWdOSnYrV0NkVE9XYVUxL2FhRmlTMmlzL0hDV0pLRWlEbW5nSWhQSWF6QUMvY3lrYWdvV2s2ekxLOXhnQmZkWU9SeExhU3NWd01DTkhpUkh4MVFjdDB5WDRTblBUY0hLMExxL1hmL0lsTzNyeHdKV2MyTWhXSCs0NThLRWtDSkNkd1RwQm9MMmI5OG9GT2VQNW9GVmduU1loMW1VSHQ2TWpTVHF1cm5UWGNpYU1BalZKVS9veDRzcVE0NkhMQTJZbVFiYUdMVFZveHBEZFhMQ3A3cFNyajhOSzRxekxrOCtIMHB0ME1GL0hpV0RZZnlFQnNzTklpZDVlSUt3TENlMldTbnZGdG1qWHFQWCt3aWU3eFd1UDl5NC9acmlGSW5SRGNNRWVQQVQ0UEcvOENFRThuUEJxc2VKNGMwWWFGMlA5VlRzY0IzSVFqRVB4c3FDSUhRWTJXQXl3UWhueE55WTU3bHU0R0JWQmpUTDRMSEN4ZWswcklzTUxGb2VnS1YxOWNQbUIreWR5WTdGRHg4KzRNdzFSV0FRT3FCNFl1Z0FDcFZsbEpJeUREdS9yZmNLcFh4amZTTVNwN3ZyRFpTdjZ3ZXc2ZCsrL2V0ZktGRDQ1bHQ4L0EzZVJBODM1b0VseExBZzRyL0RFbW5LS2xBTlVKRWR5eEhCT1NtczZJbFZUMW9YVGtQSHNsNFE4RkJwSExpZjBLeGpyREFYckhPUUxQWEQ0dEp3S1V2cmRISHp3OUpyZ0hXVkNrb1JGamMyS0NHVHFDSkJnN0JUQUU1Z1k3M3JheEFlSVBYdzhHK0M4eThVbzRlSCsxc2l4Ui9UdzNsQ2g1SWl1dzh4R3ZsdUF0YTFFMVJzRTFlSHk3ZzhYRVl5Z0NaSXg1RmZqdU54ZFJ4Z0hmUmtJbkY1SE5iWk9VcFd1UGorOVllbERLdjN3T3I5NWd4WWQ3RzhSTVR1STZXODV3N3YrdG9MWkh6Qnh1MDNSdXBobWhUOGNCLzlBc1RyL3RxWUQ5WjFTcEJjaDZzaENUdkFrZ1JjK015M3ZpSTJDWnlyejdndU1EM0EyMkVMOG5mQkNnRFdLZEJhUEUxZ0Vid3BXSkFiZ3EvbWJoK0F1U2hrVEN1WlV0NkN5N3R6YVVLUDJlMnZHVkkzWE9VeVF2VXZmRGluelJKU3NKQVdoOFVDVTRSVnFWWnMzZjJFWXZQNTZ2UG5reWNId3JxTVNnbjAxeVZOY2owTzY0ckJBclhiVEdnQnE5ZllYWnFHeGRPZHUydm0wRFp1TnphNGtKR00zV0FCN3ZyTzBVSDNObTZaQ1VjVGR2K1Y0QkFkVG9vSkZmK0JQVCtuemFxdnBpcC90emRqQnV1VzVkT29odlcxTlpDKzQvT25HRjNoNExBK3NaTTcrblRNUWdPVzhGMCtack5PQU5ZSDFtbTArYytJMWhLeUFtUXpZVzFzc0hpUzdEWXo0NlIwRUZjNlRrVHFHMm5mdzBNc1I1RkpqNFRxSzhPR2ovSGhONUNzNTNQRHZDMmw4bWd5OERjUWpmTFE2MDdxVkJGV2NNeXBwUEd3ZmRaT2p0bGtNdGIyRWxoSFl3bzNkWlpqbStPanh5UXJnb1h1Yi9QOUtXZEZqMmJDOHBoM3V5RklkeGd3Y1dLT3BEdVlPaElwaHVvbW9RT292aEdlbFA0eENlTldhNjdjc0JnSHBSeVdjdzFITWliVnZOMXdkUVVDWkdVMVFNazZKa0g1Z29TTzJSejdJY0w2NGxBdjJ5Rm16QW1zd0tUMVBLeGZ5WGdLbHNOaGtUeVJJL3pBTkhJbXJJMWJzRW9NMGdiamhRSUdBODI2bzd2Z0FEZHUvdjJRTWVvb1ZRbWRoL1FQM0d5QmdaOG5nczh0YTlJNHNscjNZTFQwNjF0Z2hiVXhMUDY1OWJWSXNxNGdmbllNWTR4QzlpWEFYWVMwOFdkYzRtYVV0N2NQVmc1SnNvSTBMTVBZc2g2RmRUb0ZDMmd0c2FDQi9Ud0RsdVZ1WUxSOUJ5YWN5OVFkYWlaYUxDWmhycTQ3QVJIa1FMZ0Mvb3RKRllPWXNsdkU4K3ZEL1p5Sk5MWnczOUc4UFJxcE8xUjdoenZFYXlaWU1hd08zbm9rWUxDMmQvWU9Pb2NNMXZiT0RzSTZ6OERhTXBJMitma2s2NHhjNHZ2TjVNY3BiMmk0VEk2dTcrUXhSSm1NbCtPNGQxRnNEZ0tHQmlDQU01cXdWY2prSVJJbFp2M3ZHVFpRMG9mYmVRejhLeXBvVVVjSU0xSWdPL29kODRSM3JtNnZaV0FkSEJ4c3g3QjJkam9vVForL09BaHVDcGJKVm9rOUR1dVBDWnZGb3F2RjE3UW01UkhKTWdLVUxNSUZWcDAwOEJ2Z0dyTjVUd3JSZ2RmZFdKZEJYVFl3ZmI2UDdkUER3M1ZpOElIVUE5TkdtckM0bmNzYmNscVd3OUxMRzl5ZjFtUCtCamNwcjJaaDRXTFdSTElZckpORGFuVllHVS9CU3Rvcm56VHdzcHFFV0tDQ1NYUTZ5MmJGc0JDWGZvZldGbm1CT09rY0Y0b1hhcWRFNFJhejhiRUd4dHhpc2VLcy9yVWh6UWNMYjNTQ3U0R0JNRzhBTE1leklhNERKK2FVR1N1RTlZWEIycG1XckpORGk5UncvRG5qRFprYWNtRFB3WXBqQmxERWhOeE1BNDhCS1RmcHFJQjNIQkRhTWRUR0c0eDd2aEd2c1dNNjRCMFRQQ2hXMzFDVVV0ekFYREZzYzhNQ0sxOFdPNXBzdVI1dTRtc1lwbTY1V2sxbHFLclZzb1NFUGg5Mjl2YjIzakpZRGs3b2RNWk1zam9yM05obmJGWnFhWS81bElHWFVyQ1dLS2MrZlFLV2d5SEMrSnJqNHViOWhyUVJZdmNBaGVuK2hzVVAxNTVETCtYaDZRMWFNVzY1SWxaQTZ0OU14T1l6OEd3c0ZQSkNoZTRGZ2QzdHJxS2lGMXlyQzJWUnd6Z0pKUXNzdVFhRFlCMEh0SmswR3ZpVEx5eFIvRElKeTdBaW8yVThLVmtKTEFvYWxtSTluQWtMVGg5REttOGpObDBPVTBhU3BnQi9ldURTUmVJRzJTeFltSDlIZU5LeEtzall2N2xjL1d1dWRDZnRGb3NDMnl2TUVldGMvUnhaMG5HblBKTWs2d3ViT1lDUTYvd3pEMFF4enZyTUVrVVdvRTVLbG9uQzlUUXNKNExGVXA3M3NZV2Y0UTNSVjE4L29EMTFFMXJTbUpzdWxDNVpJbmozdktpSHNvZnF1Y0hFaXFualBZOGt3RnBGck83bm5MQklhYU1xSWl1Rm9WckR1Mit4bGFvbWkrQS80NkM2WGlyVnlmeVF0bG5SV3BXbmJOWXBnMFdLeDRPRzA3Z0NNZFBBODV6Vk5lNFNRMC9HaXRzcWpCeklkakZwSSswRUxiaGpjWHFLRlpvclp0dVIxYzEzdzRMa3B5TlpUb1hMbFVTa3lJWlJCSCtlR2pHcWswelNPQ0ZaSm9ObFBBSHJLb1lWUVFKb3JjWEhZUEZadTl0cjE3bUxMRDBvbStVbHBoMStaUVJrNnJrMmJ0d0Z6TXd4RmJ5UFRmdDlIR245TUN5ZHdhcmo2ZUllQkdZSzFzbmorVFFCbkZSRGl5YXJuNEhWSXpWOHZ4Ukd4bXFSdWNSWmFoaE5jVUxFTGFIR2NWeU9nY3Izd0UwVkJJc3M3a3B3eVJJbTJ6ZjNqN0Q2UVZpNnBRc0VTNUNZNHpjc0Rvc0VpZ3RWbHRuNVNhU2JrNUxGSnZhZmdIVVJ3MW9LTitOaUtjdWtaNVJvOUhnSytJWWx6K000NXRJeFI3dm5oaDJqZUxSazk4a3pFQXBob0IrNXdYK2p3ZUw2U0xDK3o4Qnp5VElneGFtcUZTeVFSaUdsd1d3VzU1VWxkWjUrOW54S0RSK0hkWnFCZFpyVUhPSWFEY0U2ZmdRV1RXOVIyaDhIRVU2c2lsZ2wxakdxK0pyR1JmSVdaemdSS3hiQzM4eFZvcG1BcGVtR1hxNjRNcTdXaVpNVkJpdXlWdWV4TkoyY000Sk1zTTRuWWZGdFo1K0VCV29vOVhDRllicjJ4MmxsWVYxa1lMSFppcHV4NjBZaEt0SzYyK0JtSFRUUDA1bHdmYjJQQVFZSThEWUtSZFBwem85SkZzQXlZa29ScTBpeU9Db3VSK2NSc01UZWMxaW5hVFdrWFhxZmdpV0RaTDJmWUVXMTBzWEhZY1c5TDY2TFVYcHN1SmlkLzhhRnkzSmR3bmNmQWJ5RHhBU2IwZTRwYVBnV0dhd2ZoTFdLc0xJTE1JMDByS3laT3VFRWs2ZFRzQUFSZzRXUytRd3N6SjR2enpJRDRvalh6OE82MllBZ0lvN25YY055Z2RZRG93WEM1YmdXSzliRnVNaDBZWlRQZzRaL3NRRGlSd3g4YnNYU3NRb1ZyOEkwYU9zR0RtdmErVVhSUXl4ZDBmUjhZck5vT3hHQ2RUb3h5WnFDdFptZDI0bHo2dG13c09vUzBVTGJIbGw1TkZ4cHI0aHUwYkpZK3ZqMW5qOTFEVmVSSWx0V09iMk4ra2ErSDFheExsdFVzc3NLVmd3ckhXZEZOcDFGRkZ3bmp3TW5YYUtoUGplRDJTeGNwSHIrQ0t3WmM2eEVLL0tHcUtIVUdLTGZUYlVPM1NaV0hsVVBRdExyaDBpUUlPWXlzQnhCOVNkNkN2QWdVU0FZMWVCUnlHNUlzcDQzOEVYRmU1ZU1qbW1sMTYyaVZEQlloOGR6alVPQWhSMW9SNThJMWhhMUJjSUhqRC9oazBmSG53TG44T2lJTmYyeHZ6NGQ2dTN1eC9kSE04WjZWL1dDVDlUUlJxODhPanJVdmVzTlBoRy9zY0dtTHE2dlhjbmJpQWFhZFRjcFROemFtSG9IOUhJWTlOUUk5L2ZTV1lTMmtUU0d6RFBKV25VeWkza3pyS0lBM3FCYjVzdzFIUDdLd0VCSTVoYVRyUGo5a0gvSFU3UUJHNDdocHB2WGduamd3L1FYQi9qcEJ0N2hLQnJzWmtjMDJCWmxEdnhCdVdFL3dVdHgwMkVjL0dlWGJXYUdOUUREbVJqRzg1SUZzQXo4ajcwM3ZRUDl4TkF6QTZLWTFHUGRZVCt4VDlCcFNtZHFDM3Q4QVFvcVAxQWo5VjE2Sk1HcFk5ZnhTVEF2OE52NHEvaGJUZDZZbVRvY2h6NEN2OWhoMDBuSklUdjBEdHFLQ1o5aWxUcDhnOG02WWVsRmVFRXQrZG5WU2tWUk5nd3YwOWYxazBlMmNjeGpBM2VxaXc2WEZCME9sdi9LaTk5cHMzZGVwejVtUmh2YTllUlhmTWVSMFp2cGdXVkpuV2YzeFZoUVZpMXFUZmtKNC9hRzJxR2k5a1B1b21DOHczT3hiWWFLOUlFVk05ai9CbjlzY1YxaHdJRFVPMjVxTnVDaitLZmQzR2E3R3lmSFYvb3o5ZHl6UjM1dHpYT1Q2YUlLc01hVFB1YWUvb3U3bisrejQrdEVoOVNrZjZMVDRWZWJ3U0c5MGtrekdSenI4Y0gxazZzUXdlT3lROVJ1Wnk5d3VFOGFSS0pBTERyVTFDbnh2bDEyUnFrWFhidnd2ZStlbndrcjJKTGhQTExFWXM0UmRiWGUzR3p3WGtUV3NjV01ocGxpazVnU0tUMmk5aVU5TWpoWmN0ejJJRGVHYllOSnpDUEg4ZmhsbkhIb2hPL21EdElXYlk1dStxSUNSc3ZkZUFMQ1U5OTB6eW5kOElaTmx4bG54b2pqSVRSNHp6UVNGRlF5elk3YVI5TURuK3RvYkVtblEyK1JFV0MwSklFTEhQayszaEg2RUJPajlSTDNzdzc3L3JsVG9IbDR3NUxtdWlQV01xUTR6blN3OTZRUXhaa3NwK1M1Mk42bUo2R0d3YnJkWk5rSlBBK3dqUEJtSExqK1VHMnd4bVIvNEUrT2dWK05PcnVwc1Z2QjlucmJocytXWkNaMkxDM0gzZUFNck1ZSExtdEFpc1RzL25zd3haY2JlK0RCRllwemJYdUU5d2dFUmJ5Wjg0dnUwNWp1bUJUb1hORncweFdKbVJyYzA1WFdyemE2dEQ1em1CNjRIL3lzRWNhdHZGRS9MM1ZscXJRdVFRUnNEcnNHdWhsL24rNUV6SkwreWZtdk9XTVZnQkk2YzI0NGlRN1JjTkxMVUo3K0RpNU5ZMmEwbVpJZ0pkeHBHamRSVmdSY3dNcmIyWWxNR0RXQnR5WnYxakJqWlBiY2ovR0ZQc2hkdDlGckt6VzhGYUxyU0hoREgyWUl1U3ZnL1pQekFvdFo0Y1N5UE9kdDcxNlZsalhKTW9McnB6U1JleEltVHRRSkZibDh3b1E3VGFNY05icE1oc0pZZHZaYno3Q1pmeVE5MHJTdlBHN2Y3T0w4azg2VjAzQllVMGhNYk5aWlRNTEN1UTh3V01yY1M5SkxBcHk3UHI3T2ZPelVZK3Fzd3laRTNURzRDc0NnR3hQMitHMWloc09RMzZkcGxzUThKVXB6RTJQeVJ0L0ZOZ2JIZmIxWTJNNm13SFV1WTQ4M05hZFk0UllXdUpSNGZsYnN4cGhZYzUwbXhWMHJDVlJpbmRCWE9hNkdtRkRmT0tVblRuby91eTRqTXhqa3lTVXVUeFBtaXhYd25TMWt4amJtUjROSnhOQmpKaUwyS0s1NzVnZS9qeFhyRGFFSzliVHNFaWc0RUoySGs3b2s0NjIvNk41TVQ5anFtUXJFSkMrTHlnZnhVTlYrNmpmc3BmeU5jNmtuRXpPVU1pL0FlV0dtbFZ3cFp3Q0xGckUrM0FFclhaclhYaVcwd01nYnFmYlMrMWp6c0tFT3JRSUdUSktPbkhwTTZjS25Ud0FCOFpmMDJUSURHRjAvKzY1UXJXR0k3OWxDUC9xRjM4YUZPNzBCdmJHUDk0SkdmTEVWZkV4OENmRUE3MnNnZXFTV0dHR1lldFM4TldYRTdtbURBVEJYMnJ3M2dKMlFMY09sbWU4RUZONDFqaXdVNlYyYTArUXhSOHQ0R0o5aHY0RXI0RlFrc0QvczJpenBDY0JkanZwcFdtSFBBMEdRVFBqOFdwOC8xOGZGNnBLTnJ4dlVQSnZmb3dCQ2tINml0RE9aNFRQTS9vTmEya0JNWWh2d1lTak1nZkVrNTU2eENqQyswcFovWU9kZ1JvdE5KNUhxQVNqS1ZGRHhBazlVMmcyOFJYcTBVVVAyTUJOZDZPSkorajB4b0hxSnJmcDQrMElQaUtOQlFYTTNHcVIwRU8vRTVuaWk3Y0RsRUpqbURWVVhyNDZyRHZkYmZWR256UVpac2pQeWgrb0lkMnRrZGpLY0tXWXMzZ0Jpb0pXaUZwQVZBNmVOellEWDE3d2V6MUJSeDlEMzNMUjZnaGE2My9IMUF6UG1aQ3J4Ym9SMHp6MC9NaU96RklBN2N3cTQ0U1I5SWRBeCtzRitIUGd4N051NmE5azFzQ2p3bVVGdkdKK2dQNUxwNWlmOW1vTzNkcWZUSHdvNkZwZWs5ckFWOWozSjBhTStMMzAwRElWVnZPbWZUY0ZjdDlWbk43aWJNZGo5UnNBY0NqVTd3T0FDcmI3dVJDWU1XYm1vZ3M0UGIxZGFVQnk4SDMwd1JxZG51WEM2N0c2RTdPWnhFNWR3UHpIRFhZRkYxeVQyYm04WXFxN3VPcUtnZUlhcjIzMDRaMXV5bkI0WUh4V2VrWlNFY3Q4MkxhZmRSQW16REE5bHFSVU9STW5RTkFQdk50WWE5Q0RwUWJFelFJLzFVZE1mU1M1Rjdycmt5TzFtR3k5aml5dG4rQWl3ZmdPQVFReUxFZ2E4WEpyWHY4WjJVRkJCNFlkdlhsU3FsbkhLSHV1bWhvTzNKeVJRWklXbTdFT0l0clRYQTRGckRkc1NLMzB5eXlZTWZVVnlwVnAxQ0FwRk4rRnB3ZmxidWdwZ20vQWJ2UmJyNFZBTjJCMk40QldPeTBRT3VCbVNVdE1OdTA4UXdpWkltbWxqN0s0Ty9acUVoV1ZIbG5YVFVadUNaRW9qdUl4aEYyK0dPMVBDMktwazJvNFc0bGVxY0tQSmQzUlN3UisrbTNRaEx5aWF3NitiUEJZRkpQR1lsSWY5dGdpeUZIaWpiaGlxRHFiTjZCN3dGaC9kSWNpTEVhQ1krQ1BkeFZ2VitRaXJOMFFWQTFoaUFxc25XY3lTdHdCOHIwdmVvQzFaZ1Nyb2h0dGxHMmtNRlhoempjVnlWUkZNbkVJS2IrT2RPeDEyazUrV3NncWVvNFd2ZitTUVVTVjdpdTFLNUs1WUVkdjV3WHRpbFphRmQ0cm95RG9sV281WGEzZjc1UEl5M3E1RkVTQ3g2b3BZSEljTEpkbGRjSFppVGFoaDUyNmZmRHpJQnNnTHdFSVlJQlFoQ0lTbHQ0ZjdBNElGOUtKVEFEQ1M2Tk4yR1pFaTRlMUl0V29QK1BlR0VTelFRTHJ2VWNndVE1T01aSDlBc09BM0xkUm1TUnlFZUEvQUVWZk1yTDhtbFd5Qmk2NTVEdCtrMW5DVXVlNlBPNGtxWHhFMVY1YngzSFZYVkhwOWY0SVVSVEVoaG4wMXNVdGVDdlNWbkJpYW9BRTRwNmJxRWl5OEcyWUQrNXk3UTFRcG5DTldoOE1Sd0JMZ0hFRXlYRW1JSFFXd3czdnFSR0VVd2tMU1VnMC9EZXc1KythUkRGL0N0dHpvNHBlbzRZRGRXbkxZTXdnV2lMYkZCSFlJUGtvZTBjWG9EeVk5RWw1dDBNamV5SFpsdWswSkdCcWw4TDI0aWhYd01kai9Mbm1pb0E2YTA0S01Xay9CbnFTalpSbkNKVFhJaWVtNHN4eTRyZGF3QWVmaG9sMXFoUTI0NEJyQ1FrbHdRVUpJazBiZHJscHpJclZqemxCaHNQcTRhTHlob3RDRzhORmc5bEE0UlNhQmVLY1BEaGlwUkhkdGc2c3k3TGtXeVNsY0M0dGdWVzNEQ2tDRTRadEZqSFZtMkRHNE1NZ3JrRkFWZGYyMzc5MlB1cFRYa0RRcTMyREM3YUYxSEF6Q3RvZzMrNklzUWhZZ05LanB0T2tUT2pFWDlJc2NtNmJqelNIUlJEZkliTE5EQmtscWh4Z05XSzZtdWZBMnNadGNDb0kxQWdseE5jL3pBZ0hOWEkwK0JvSU51QW9rYWlERnJrVGZBUy9VOGNaaHZrOWl1SThPeEVUV3VId1VZUkZNdkJod09TbUtGdWhid3V6VkI1VVArNnBpV3hBNnpGZnh5NHc4YUpVclFDWXluSXczQjJBV2EzMTBPeGljT2xqUlV6SEcxcTJnQWNmazExWmRWMkMyQnA0ekJITCtvQ3dteWh1WENnWFVEYjAvQmFXdTBrMnVSZ1NyTFdNK0plRzcrellvV25kL0FKZkQ3YkdyQUVHYVJBOHBCRE5kckFWQllEcWc4QlZnaFdxQVFnS3c4S2F3RGhveEVER3Nza21ra1FMZWNYaEt2bnhmZ05oaGpodVlUZzRLM3RYcG1CTUVIUVRLNjFNTVlPSGQ2dnNZQllaZGpjTWE5dkE1cmkwNmhvMzd6T3dZRklBejQxeHJOUkdXSzRxaUIwanNSTFJDWnJQQ25tMTdHTUkzSTJFSjBacnBIRDFjQlljZDNKRHUrc3BxZlNMRWJ3ME5ZY0d6anVpaWdjZUxpS1lBN1FRMWVJTFlBZUZWeCtOcFEwckM5akVrMGN2ZnZ5dDhxV3p4RTQxMXIrOHpXS2llVlRRaGNLR2IzT3dUck9qNEkxZU5KOEljSFIyejB5Tlk1UDBHd3piSXBkZ2ZERlN3WWR4WXAyQ0JoMERyaDNEd1V3d1JNa0hGb2FBREUwdVBCeUxzZ2xnMG4wWW1DbzdETUVVZlFsNnZyY2tpWGxQRHNLc3RsRS9kNk5nVy9KTEFNZDFzb1NkS1ZISUFxWlQyN3J0WmdXakJ0OEszOElFZTFrYkJwd3NOc0NqU2huTVo3RE1uekdsa0l4bThVRFpld0JBM0lKUGFFU3dUemdJc3NXSDdJWXFZYTRqVjZIZ2hkRUNKd011RElnaFdIQU1wdk4rWTYxcjhETWx6TUtXR2VBMVEyalViTEJ5UWhFaUNZS21lSkRiZy96NlFoZzhKR1I5SlVYVFQ5dWtjRExKLysyRWJIVmlmSzAzRE03T2I2YzQ3OEJoZGxZdlc4R09nRzNRTy9JdXFJZTdGallkSENVUnJIMm5vd2dRc01MNm14aXdWSkNXeU1tUkdKb0hWWi9BdEwzYUhRekxJZEdQZ0VjRUtLWWsyK1oxOG1FYUJSZUlXc0RWQXU5aHU5akVSN1VHVTBnZDlGMmxIL2FwSDI4enJsdGNZTXNIeUdnaXJqekVoNkFGRXVQREEwMDNKaTJKZEZMZ2ZzTzg0d1pNK2U1SjJraHdPcTBYcVpQZXB3cVkwdUgyS1lrdFdaOEtBZ2FWM2dBZ2lvOXFBd3dLRkdVWkIyQkNzak9YR1JndlYyeUNGcllvbVJnd3RiSkhHbVVYTWNwbDBEdFZZaTFwVkRjdzJma1hJWWlpSUZFeXhDdDVTQlZqaUFKSW51blV1dUVLMENDTWcxaWQ1aE14VURWc0RDSTBwKzRvaUVwQytIMkQxNmxXRkdROHVvWGg5ZGRKM3lId0pGaHp4bHRkdTR4U0JMSkRLbVR3TUNnZjlMdjJMZG8ybmR6M0hNajN5NEN4aUR4c2VhUUplWlJPU21RZ1doaGJ3UmYzUWJ4dGs0UEZuU2FqaTNDRmtTblRuYmhibDk2T0ExWEFiWVZ5ZjltM1RGUEUyWFg0WFlQbUNUQUVONmpJNG1LYkNvNCtROG9jd1JDOGpSWmVZbVJMMWgrNWtVZFZpV1NjOVFpZmZvMENLVENZY3BvazVPODR5UndhYmFWTWZ0OXZIVkpoWEVJYXRxRXJWbzZnSkE4cFdxeHZCb2hmRjFnNWh3c1cyQmNXRkZNUVJtaXl5YllLSGFTSndHNFdSWUEzQ1ZpVG4vU1NQQVZpR0NHbmtDTDhSUkF4aUd3anY0RnBoUkFzV2pQTExmUXhjZEl4enpWaEVXUTV2YWord3RXdXBrRmRBbHB5NDBFUnNVTFJDRG9zMmpXUlRKNjQ5R29ROFhNZHROUU5kOThneERqQUFWWWFSaUp0Mnd4KzBXYnJUNmtmYWh5OXlFbXVIRVNmWUtFbVh4Sm9Cc0RCZ3NDbG5BcG0yMkZ2UVk0NFMzMnhYaDNGaDNnZmwxVHA0SkNoWm1DTFZmS29ZWWlZSzRtOFlaUFY2a05tTTBDeURJWXUrR2gyeDZTcjU3MHAzU3FWZmw5OHBIWnhIa3BRNHc4WGRSMEdud2hnV0ppd1czcmVpMStnUE1DcEZRYUFZM1dZeUNHOWlDVytMaXdEbGp2QVBuU2lZRk4yaEF3ZFJ3eEFwRHFhN05aemlkTVZ1TzNEYmZvMEhESlFSU0FZRzdyNFNYUU9XWlhsOENqY3lydkJ1TUtaOWdLWEF3eDRYTExEc1BzSWl3d3VYVmhjeEpva05GZ3NjREZQcWxOOHQ1MHZ6QWN2bEtvS29HU3l2VEdRVUpVckhBQWtqR2ZUNS9EZ2JVVFdYTER5ZFZaOGlNRFRySVlVSkF4Yk9DdzdlWGNhRXc2SHRYUWQ0YXd5VXYxQVYydTFlS3VNSmZTelc5NnJEZnFQUjkzRWZRRzdSL0JGRXF1c2hiaSt2cnlyTmZSN0E0eDFZcURkQWlEd1JYdVN3RDhlTGg5cHZVZkVNbmhwQzBHazRMRS8wcUFrRHl6bXQ1QVNwY1VXU0RjMVdLcmxuWTlOY0lWOHBzd3FpUVQwZGJpTmxUTUFhUWlqWTE4d2tXQWtpb3dZUkM1TnBNR291K1VCU0VzZTFJdDUrVDNTeExJbVROaWgxMUFqU2l1cXJtVlNOVGY1UjVhR1YvaVh1eTRXdW95Y0lJNHBxUUN4WDR3WW11UVoyZmtqM3IwYVI3ZE81NnlQNGdoNEc3MXBOVU1GbWdXYnZVM2hHck1Ra2hVZnh3MWtCeXFZbHAxekovL29VcjRKUVU3UlYyWUxFblFwWTJkQ0puQVZZTFE2TFJBMWRTb3NWdGlBSE1VRHkrbjUvaEpYakFmT2hnUWtXbFgvRXNBOVNvamFpNmNCa2RuRjZwalg5VFBxWFVkRW1xYlEwMnF5QURZRUZ4SEc0NHpYTzBPRUZRdUhCcXh2dWszN2gxWGR4UDNVR2EwVExSaWkzajJBQlNiM1dvK29Xb2wvVnl1SWpKZVpjcnE3WW1rbTFQc214UjcyK1Q1bFNVcFpqMlpXcitocUd3U0VMVnJBcVNZS0FkUWhNalNHWUJ1ME1tSGNiZGtWeEZNLys3Y2Q3ZGorQ2FJN0IzcE42YTRqdElXeHVwRWJXU0lBTUhFMHRhUnFLVG9zSmxrTUxjQUVXNlMvb2dVR0htUndDaExkNHB6YXFiam1ZNE91eUNmcW9UdXJqUWo1ZkVXbmpGZ05KVWFrUGttTzBnbDVxVHErS29sV0R2d2tXSlczb2o2bXdOZXFIQXdVUFFBZW5HUWgrcERjVE5kME1uaDlvRHlGVTA3TmRZUmpObElTcUFvTFd3L2tqY04rVWVhUGJkc1FlQkRRQnpxTFZLQmZ2VVdEaUp4OUJDU2NHWVNHY1VFK3g4UjVvS0kyT1dNbm5VM2NPTGdpa2ZUako1WGlNMUg2TFQ3UzRLZmdZV1lKb2lRQ0xZdkUyN21FQVZ4UmJDdEM0K1lLTjR1Nkp2Y1JxUGlvZ2swMUUyVGFzZE50V0dLWTdsQjdya0lqM0hvUXJoQk9WY1BTT2c1a01KRllZQXpWRHY5dFFESzRyUGw1b3U1KzBVL0JjeCtjcTRIZDdJMTV0bGxZMWhXK2huc3RYSUVyZzJvZTdJUHVwNmpFWVMxMUpTU3A1UExGam1Ddzd4b291d0tkRkpqSnpNbXE3clU1T3gwOWppa1NCN2FkSSs3YlN6YlViRFRVN0d0Z1R5TFlyUldlUU5FYzgxVlVTVFlGanhSdTlvbzBUa1JDM3RpQ3NOVGtRekwraklqVS90eEVHeTNGVEZNa1g2aU9LcDZ4M3dON25YcTNaZklKV0I0dmV6MDVRNHVSQzJsOWdXTGlGazVzTUZwVWpxZDhCdTBKVWJubW5TdlVwWGVHSUFBKzE3cVg2SG1sUFlPclF6WXpBalRZckZYR2ZVZ1dEREp5MEIzUlpBemliMlJCN0lyb2oyNU1GTmxuYmMxZ1pCSjFUT3NTS2M1MWg5djE5bEMvZXFpQ3V2U3FxMkxVR2lVMjdPeldWeStZNUcyblJHbEg0eFdIaHJBdTZUZXAybUhYWXNaS1JDQTJvUzA5UWNMdEpUYU1aMkxnakdmdG90M0JrT3JycEdUUHExNlhoVUNzaHNhTkd1VDRXbENOc1UwNlZIVFNrK3V5S1l4bUVsQThqZUNQSjVaampaazUwZ3JmZmJidW9PbEtuWG56MXFyaU0ydzhZcnVDSGt3SVJWYUZTejJENkcwdFdLTmkxZGdPclp6UG5mbHRzTGdzWnNXazlrQjJjVGRSNXYvSFVuVW5uR1p3ZEVUYXcxUVo3UkNCK2ozckNabm5aT05LQTVGK1hPd2lMVEZZMS9ScEJjcVdhUDNVYVlWWEJJRTVXK08zSUNvcU0xZjFhZnpoSks1cVhTb1pQVlZ6ZFpzLzFVVzluaVJSaEdyRE9SVGFOSDYyZXladzUzWFU2eGpheGFvRGRTakorQjFzZmFzNEFoeVZsb0JiMXJVNTMxQ1NQK2oxQnhPa1JackxTSjBaeUlVeVYwU0g0d1Rsck9RbTRDaFVESjQ3c3laSTdCZWxtT25nZ1pZZmdMcTVxVEVvOU5XRDVQb1U5U0lsSjBTd1pNazBydStySllDdXdVMFRaMmhTVDFxRFRkaENtWlZxenh4YnY5dFhzR204OWpEem81RVgwSVpIRkpOdkpxZ3dWUWFibUhQd2VicGdpdWVtSjZ0SnY0REVzM1d0UHFPSU1xemNVSUdDZGJpSmdCZE9RUjRlMlJnWnBKaVhxSjR2RUtrdHJpOG1abGNDSzFwK2J6Sk04cTZUWStxdXpIbkpzZFJpRWsyMWpiQ3EyTmNCR2gwWWFGcmRtV1JYMEJWd2lLWXNUZC8wUTBIQ1pEaVNiV2JLMXFXTHhvRCtwZVRTSnozc1NiWSt2cFhqa3hORGdXVnZXSkEyMmZpZTFPSi9yWmZUTExmcGpUcWxxK3BNenlGQTEwNDJiVXdZR29xNzBYRmlvVElZU21KNk5NRTVZTFU5VzVVdkxDa1Q0VzNxdG0zNERaVGpSTkhEOHVWT0tSNXhxT09jYUN4TmI4akFGYXVaSm1za3FKL1BwRjlPblBzN0t5RXFmaVJ1SW9DMURZajY3d3Z1eno0UGxPdTBNckdGRHhHeEVuOVg5a0ZNME5GeGVMeE5wc2NuUjJXRUJlWmxCWHlWT3VoVDFVVy94SFVYb3gwaUltTHh3cWVHYWxWcWtPYm5zYzBJTCtXUENZZEFrb1ptOEFNWFlpSURGTzA4WUtXVFVSTTJhT2NQWlRlWkRYcmVkTmxlYU1MUDBrRnZ1b09IQ0dDSjVTOVhtRmFCSlZDM1dGY0k3Vzgxb0FaUGprR2daUmtxYmtKbUxZUVBOTzhEcDRBL3hza3ZQczl6NFVmVFF3UTJDVWs5Yk9KbnZtaVJhRXQyTnpFSFRGcjhnRVUyaVpXN1JzbVRzNldUa3FEdmZIakdsbkE2YTk1c1RHa1RtQ2xqSjltUExmblBWc293clZrYjlSQnd4VkpCR2swNENZOXNHZG9Yd2ZsWlcxREE4dkkvSjJPVEdKck1LWGVsMklaRHBRZUR1bWRnUG9uaTlMdDE0UWUycVdnMy94V0VIZUZjWVhOUWtRaGFxZEQvU0xRVlVEZSsxM08yMnFWTk1GOVUrQkNVQ0Zvd3BGMUliZUxkY3RudVN5VmZDNHRHTWNiTmRqOEp2Sm9rbWE4YjcySjl1cEdROVBjbHBEdnMxdUJxR1hLNCtXdElxRlJWcStyUVRQOEVTaEg1U1ZxR1dnRzRiTFRrMWwxdTRNNkJtNDRTVTZSMWRYbDRTTGN2SVdHcExiemNoZC9LNlRXdzEwb1ZtcysxVm15elJhMVk5N0R6Q08xTTB4YURSNUJrUnBBbzlmQnBlNEh1bUE4ODNLYnZTYTFVODFYRFlkaVVGWHd4dmEyTExqSlZFSXhpY21lTlBjREJIM2hhdUd1eG9taXpUemw4NjNzMnNKalJRd2hLTm5QVDZ3NFl0WVRPOFVIeXF1bHhVVWZoU2hvdm1LYUs1MW4zZUxZY1ZUMlkxNEFQRnNpRDhWdmdOZE1SMERyTzByQlNzVnF1bmU5M1dJSVJ2RUNCZTluclVUNFFwb2dlNWVwOUxsaHFDVisvMWNYTFlhUE9ud1hoQUhqellwemtQdHhHMjFGb2JmaEpseGVmdkUvVTBMTG9uT21OMTZLRC9XQ244ZHFnb1ltb05sSXZ4VDl3ZWxNeFE4MEhtU25hZWE0WXZWalZNaElUNGZUVHhTTzBZTEZHcVlaOVJBa0dzNUl1RkJWRGhPbVFCVmhEVG9pZ2c4VTFZVU8wNTFDcmFGK0hUdzdZT1dYTjdPR3hEcW96VHpvMHhOc1ViTHFUam8xVkhvSzZjM2pEczBmWUQyRmJUNnZhYmJkMHlhd05zaWdmc29RQ3d3byswMFVDazhRd1dDbFBNS2xwQVg4U1NuUjdiVUNCRzgvWkQzZzJkelZUZ25NR0VWWjl0aGkvV3NkS2Uwa09jaXFvTndQRlN4NnFldlM5NXZPMUJDWmY2d0JzL0piS0ZLWEFpV1dIWW81Nnp3VkNRQ1phRkxhVllSTElJbGtNUzRRRXN4VEZFYkxEQ0NMdEhLNmp4YWczYTNhYnFZV1UyYkxpb01zUDI2cWlGVGRCR0t1TEhQMXU0RzBrc1YzQ0kwZFJXVHBIU3gwNG1US0VtSUdwRlNIVWZVczlYL3ZsdW1sSmRUbWZmck9ISDYvcXFZTHVSN2lVak5kbE50SXdNTFROMjQzb2JwRVIzdThOK0Y3dzB5QzFPeWpqdEZDeGFia0d3UnFzNFZRWnBGUUoyOFhrVDhwQysyQmoyYlFPZXBNNlVtaURVNUZFWU5xaTBrNEpsTWR1ZXlGV1NxZVFTeVlyRENwMTRVVWRRMU5lQmszR2VhVGlWNTJmRDhEWURxUTRnWnZ1TUdxNk9tQkdVcCsreU95MWJaa29OQVpZRXNLbzkzeGNWYW1CSXc0SU10OWRUMnk2bUlHMXgxRzFoTkJ6WkxBRmJLcnJqSGdpQWc3Q3c4b2sxQit3VXBSZTAzZFQrZUxRUk1kNlU3VERJc25wRmJSRlR3U3pXMFVWckl0ZXBTZTdxSExBS1lMT0NkRFpJSlN4ZHQyWU9VNnVuM2lvQXJhMDByUVFxU2dsNFEvQnlZSHBpeVFwRERtdS9oYzZ3cTdsWVBNT1ZBVzJJblFBV3VzYW02b0FJcVRLNkJjUHBvYmhGWWgzdWgrZ01xeDZQWXVsdjVtYU9HS3YwOU15eWE4NE8vMDA5MDR1R2ZVOVlFWDYrQTdDaXU1a2FHRmJhWjF3UC9pMWJWdWFXeEVvaVc2QUVHVmhjc255eDEreUMvWjZFTmNDSXFZZVN0VC9vRDFxREhvTkZ4V1lCUEVGTFdCV3hSVURpc0xBOGpncEFMMUM5MUpXSldKRU9abG9lQmN0NEloVlBSZDdVTFdjNTllZFlvVjdyU3FhNDJuV2piR1FycmlJay9ESjljaVJiQ2EydCtIV1JnUWRZbythZ053V3IxYUJJbkJvUDJuYXRpMU5WRmhwNDZqVUN4ekJvajRRKzVCTXlHVElqdGxtcU40NXRGclgrWjFobHAvM2V4WWV6dFlWL0xGYUZaVG5UUks2RFhUYktjeForMlpaNGwydnFqY21OODFpVlBKWGs2dGtGbjV4V3BBZ3Biemprc0d6dyt2MTlncVduWVFWYnVLcytlVU9aS0xnR2hoczZYQ0JkSE5BS2d2MTlYMEZsQkFQdnRKdE5WVmJ3WlpsTm1NejRRazJ6S3BZbHcrVDVObHRERjkrTURFYW14SW16NzRZa1B0Y0QrQTZTTG0yaUVzMW1YOWo4QzJZakRZZ2hFbmVZMVd4bTVmbmwvVFNlSVZrNERiUWZTVlpzNEZXMk5RakIwblh5aHZEclZwdnFzZ3JFanY1Z2dQUHdFRnZCcjB3SmhMTXRLVU1JY1NXK0RvOVVrTndnWTJWTXNBSWpJVEd1cHFhMFZUWnQxTzNISTV2UHdYZm8yak05Z0doMTlNbEtkRHh2aDBrSkxoQ3FhWkU0NjZ1VGQ3Tk4wMHJNUElQbGRrT0FoZTNDTE02S1lZV3RMdTBWb21GUXFraDZGRG9BRVB3d3lDZDZ0Vm9Oc29DdWEvZjNCelhIN3U1VFVOcnFpcEJWaTFyYXRNTzNFcXZKWlRqNXptb1UrdkQxV3VCVWVBL0JWRmtGZXlHc2QwLzd3Mkpabm1xalpUa2hKSVV0WE54WTAxaE9pQ1ZKN0QrZnlzb0xGZXlXTWVKcnZNVmhnVXE1RFR3SXJ4RU9TR1FTbXdXeEtsNWNYM0ZWYkZQQ3k5VzFkU1paV0NMQ1RFZVhiY2h1UkxEdysvMWVGNXRFSVhSZzd4dTBaWlNaSUdabFd2cjBrcVZDSGZJME9teFd0NEVJdnRmM3c5a3JZTEU3Wi9YcFJacTVaY2N3dk1uNW9IMXFLS0FBM21VUlBDVFBicWVzQ05YQ2pENm1ndUJLUkN0bHVDaVIxc2tiNnFoMVF5WlpUUzVaTEhzT213SkVoajdBd3A2QW1rVHZzV2o1MXdCeWFHemxoZkRmVTMxSW5uSFNCUkpwbXF3Tm13akw1RjhJMG94bG5PbVdqbEt1VktnTGl0aXhWbVhxblllY1dzT1VaeEJPVjIyd2RVR3luNFpWV1oyZUQyTDFtSkdOZGFzdEltV0FRQW41d3FPcEUxWDBJek1QRnhvTWFxM2RWblJEYWJjN3BxbTEyMjNxNXgzQnYxaXdFOXQ4aUJhOFF0Uk5UOEJYd0h2S0NBdHY0RVoySEg1WmMrQ1hQWWhEUlp4c2J3dnNmZUM3SW5QMWljS3J6c3FqdWxQSUs1VnlSNVpSd1EyZHRRdXAvYW5KUE96cmVIb1B1NExJMXJXbHpCVXJNM2dTcmRJQkRkUmRzU0pFdC9WKy9ITXdQT1VtQklTTFpuUjFhMHVpanpFbGJwTHh5UzIyZnBQUHRwcTRRVXIwQ2oxK0dlNjlhNENGNUw4RVIwWlJzaTdML0gyUkNvTGEwd3pEay9Ga3Jsak1vMHJxckJvSEtvbkwzaWJtbURFbmxwOE1IdXJZeThlcjhIdzFIaGdwUStKSEJsSUxxbGVjNDM3d0JXVVZNdHBFTStLeTc0enc5c2xkeGpJdmpCOXZUYzRhc1M4aWMyVVlxM09zdnNubGlsVzhaWUlsazBycUV2YTZOZnF0V0NFcEEzMXFBVUZPMFNNdHhFYVNQaWJQSmlzWnk2c0E2bDFoZWQ1MUxjc1Z1UGFtR2RuY1REZy9PeHRJRDNNK2ZoSEVTS3pJWElGcG4zZU5SRzQ1L3c1czJLck15Nm1RVkpPQTBXdzZ0WlJYbmpoRGJHUVNXQU0rYnlFeGFNV3Y1Q21WL1BkMThSWVVMYU9LWTNQbWlSS2ExTi9zb1JmbEwyYVNqRC9LajdzU3BvS0dyQ20vZnNkaGxncjVmRVh4SkdvdXd1WHk5b2cxZlZDM3FpNCtYdEw2VFROTThFZTB0TE9EelRZdWR0dGdONnI2ZkR2cTFHRlVSTEp6a1NyeUlHTEdpR2RTSXlWejFoK2M5Tysyb2lyaURPQndPY2l5b3dwQ0NpQ0pjeFFMSmdVc3AxYksyUFVvR1dRUk5XeThRajNjMGp1UENpbm1LcnBZeFRZdWk4STNNRk1kUmZsdCtVY1hXWmNOREpNU0pjRlpzcTNIV1psY2ZzekRYOWJIWnZhM2o4RXl4N0VYd2ZsYlIveUJKYzc4NUJYRnRsYkpnT21XVit0MXNUYjFlRnlheDRqVVZpQkdJRktTSkNyMWZPSDdWOS9GWTBGMXNmL2ZpZlVrbUtXTEU3T0ZFRkk4L1BMTGc1NzhOcmxWejJSblNTSldsT0JJN25kdVNKNFp1VUorNVMzclZzT3FvRGZxbUUrczFNUmJDaGdtYjNVRFkxY3Zmci95VGRDcWlsSkd1R2JvWW1wcWRZdk5QQjZ1L3dLaTVUalJCbS9KU3ljME1MRldZNXdubE96NndwODczbEt1V0Zkc2x6ZEN3dGM5dWdZNEorREdNMkNuc0trWmwrei9vRUJudmoxZllYWStPaTF3V0dsYzJZbHBzT3p2SGg3V2dSWFFPbnA0ZUFlaHFCVlg4cU4yaC9pOS9CSXdzWUpZV2NqL2pDTXVMUXRLbVZwc2NVaVB5T3F2WlN5aVM3SlRydnhXK0lGZGZtYVBmRjZVdDFKbmhycVl3V1VtOXg0QVdBUXFHa2NZdDZjQjhZZTByVHhvNEZFU3MwUFFYdjhlTC9qa0tCWitxNVFkR2ZPVjFkbXo5NlZxZ05vblZxckZoWjl3aFpKUkVIQXlQb3BRVVJmVHVOSnROS0QvNDZPRTFjTTQ2bWlZdG5PSnFKSlk2YnBTK0pNcW1JV3hVS3dMSW5hWDJiT05sb0xhQjhyM1UwblJOd3RseW5LY05LNDBMQ09DdFlYM2VZcFpCWmpqVEZlQ2NkcVVmeExKS1ZpcjFUK3gyODZqUjEwcUxLTSt2cG5Gb3loVThqLzE2cVMrbDBlb3FJdXhQSmhic1JvYUtXOW9qcmttSG8zTjJZRW8yUFZJcGFrYUEzNWIrZEdBNFpteFVNaFhac1p0a0J5L3lCZlN5TlhMRG5vWU16blBHSmZCdWdHalFENkdOVFBPUVBsTWZ3U2lzaXZGbDJIRnNMd2NsY2RHcVNoMDBDSEhmakd5WFVaS3ZTd1drYkt4N3BtUG9JcDFHVytDSUd2Q0M2TDYyMGFoNHNwcDI4eHd4ZHViUjBINk5YQzZmZ0R4T3B5Y3E5eEszb3FobFlNejNZYnk4eHozZjlRb0NncmxxeGxjNDRrdzFYeTMvakRXcGZIRCtqdDlTcW95cUtpRjU5My9KcXBYR0NCWFJCMGJmZU1nNmZJSXpqc1RlQm5YMXc2NXp1dnJURGVjRXh5bVVWSEpzUE5TaHYwL1pCVHI0cXFld1VYYW1CS3ZLRlpJM1JrWTlTK0xDbDZ6MmxIK1RONzZYekdLQmRXbXlpdHBWVW9iTStLVnNWUkdrQVk3cGlCVWNwVDgvNndHcGtadXVXTHIzTlJuS1V5dk1kamFNb0xZVWpFWnhGNDdYU3QvOTQ1Zy82MGp0eXlVWlhuU0VoR0tEQzhrbGY0OVZkZ3RjN1VqQ3Y5WFVPRW9GdDZVYVFweWExSzh3TnB2Y2ZWTGtlS1NoNXZOeTlyL0RRVk1qMXhPS0x1U1JMWSt5RUlCYzI4YUdWSW9kRFJ4QWdvby9NK2I5Vm1qdExDc2RHaHB0cGtXTCtLVitwRUxGWGFjeXJLb3pEMi85RDgzOG9XS3lPWmRtY3RMUkNsbHlEZ3BRemFVeWd0bCt2OGxvN2hRVVZ5VDhTTHhpZ1VxSW9XOXJJWWtHWm9pTFB4ZnMxVlRvMVJjZmljYXE5S0VPaDR4NjBXclduRHh1MUtkWXlMOC84SW9GWVMzWUwwb0x1RHloYVRZZHNmNnFxd28rWjllMi9zdkhybGl2bDUyZFpabmczdEVrYUs1Y04yaFdhYS8rL2orMDBZdXB5cGloN2FpZ2hnTGF3cXlvWWxLWmZuUHpzZjlyNDVDL3AyaXJkS2lFZHpVNUYzK2Y3Ulk5Wk1HNkdORlJPZUhLNmordjBnOU8zS1FhZjluS3QvL0E1bXBlbEhuNkFYbUFBQUFBRWxGVGtTdVFtQ0MiIGFsdD0iVmVjdG9yIEdhdGV3YXkgSW50ZXJmYWNlIOKAlCBRdWVyeS5GYXJtIj48L2E+CiAgICA8aDEgaWQ9Indvcmtlci1uYW1lIj7igJQ8L2gxPgogICAgPHAgY2xhc3M9ImRvYyIgaWQ9Indvcmtlci1kb2MiPjwvcD4KICA8L2hlYWRlcj4KCiAgPGRpdiBjbGFzcz0iY2F0YmFyIiBpZD0iY2F0YmFyIj48L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYW5lbCBjYXQtY2FyZCIgaWQ9ImNhdC1jYXJkIj48L2Rpdj4KCiAgPGRpdiBjbGFzcz0ic3RhcnQiPgogICAgPGRpdj4KICAgICAgPHAgY2xhc3M9ImxhYmVsIj5Db25uZWN0PC9wPgogICAgICA8ZGl2IGNsYXNzPSJwYW5lbCIgaWQ9ImNvbm5lY3QiIHN0eWxlPSJmbGV4OjEiPjwvZGl2PgogICAgPC9kaXY+CiAgICA8ZGl2PgogICAgICA8cCBjbGFzcz0ibGFiZWwiPkV4cGxvcmUgLyBBbmFseXplIFZpc3VhbGx5PC9wPgogICAgICA8ZGl2IGNsYXNzPSJjdXAtdGllciI+CiAgICAgICAgPGEgY2xhc3M9ImN1cC1yYWlsIiBpZD0iY3Vwb2xhLWN0YSIgaHJlZj0iIyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPgogICAgICAgICAgPGltZyBjbGFzcz0iY2xvZ28iIHNyYz0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFRQUFBQUVBQ0FZQUFBQmNjcWhtQUFBQXdYcFVXSFJTWVhjZ2NISnZabWxzWlNCMGVYQmxJR1Y0YVdZQUFIamFiVkRiRWNNZ0RQdjNGQjBCUHlCbUhOS2tkOTJnNDFmRXBCZmE2ZzVaWUJDMmFYODlIM1RyRURheXZIaXBwU1RBcWxWcEVKNEM3V0JPZHZBSkhqeWQwMGNLb2lKcUpMeU1WK2M1VHphSkcxUytHUGw5Sk5ZNVVTMmkrSmVSUk5CZVVkZmJNS3JEU0NVU1BBeGF0SlZLOWVYYXdycW5HUjZMT3BuUFpmL3NGMHh2eS9oSFJYWmxUV0JWandLMHIwTGFJRElZRzF6a1E2TVhjRlllWmhqSXZ6bWRvRGZYT1ZrTmJhRUtjUUFBQVlWcFEwTlFTVU5ESUhCeWIyWnBiR1VBQUhpY2ZaRy9TOE5BSE1WZlU0c2lGVUU3U0ZISVVCM0VMaXJpV0t0UWhBcWxWbWpWd2VUU1g5Q2tJVWx4Y1JSY0N3NytXS3c2dURqcjZ1QXFDSUkvUVB3RHhFblJSVXI4WGxKb0VlUEJjUi9lM1h2Y3ZRT0VSb1dwWmxjTVVEWExTQ2ZpWWphM0tuYS9Jb0F3QmpDT0VZbVorbHdxbFlUbitMcUhqNjkzVVo3bGZlN1AwYWZrVFFiNFJPSVkwdzJMZUlONFp0UFNPZThUaDFoSlVvalBpU2NNdWlEeEk5ZGxsOTg0RngwV2VHYkl5S1RuaVVQRVlyR0Q1UTVtSlVNbG5pYU9LS3BHK1VMV1pZWHpGbWUxVW1PdGUvSVhCdlBheWpMWGFRNGpnVVVzSVFVUk1tb29vd0lMVVZvMVVreWthVC91NFE4Ny9oUzVaSEtWd2NpeGdDcFVTSTRmL0E5K2Qyc1dwaWJkcEdBY0NMelk5c2NvMEwwTE5PdTIvWDFzMjgwVHdQOE1YR2x0ZjdVQnpINlNYbTlya1NPZ2Z4dTR1RzVyOGg1d3VRTU1QZW1TSVRtU242WlFLQUR2Wi9STk9XRHdGdWhkYzN0cjdlUDBBY2hRVjhrYjRPQVFHQ3RTOXJySHUzczZlL3YzVEt1L0g4Nnhjc3RWMHYzTUFBQU5lbWxVV0hSWVRVdzZZMjl0TG1Ga2IySmxMbmh0Y0FBQUFBQUFQRDk0Y0dGamEyVjBJR0psWjJsdVBTTHZ1NzhpSUdsa1BTSlhOVTB3VFhCRFpXaHBTSHB5WlZONlRsUmplbXRqT1dRaVB6NEtQSGc2ZUcxd2JXVjBZU0I0Yld4dWN6cDRQU0poWkc5aVpUcHVjenB0WlhSaEx5SWdlRHA0YlhCMGF6MGlXRTFRSUVOdmNtVWdOQzQwTGpBdFJYaHBkaklpUGdvZ1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNEtJQ0E4Y21SbU9rUmxjMk55YVhCMGFXOXVJSEprWmpwaFltOTFkRDBpSWdvZ0lDQWdlRzFzYm5NNmVHMXdUVTA5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5dGJTOGlDaUFnSUNCNGJXeHVjenB6ZEVWMmREMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMM05VZVhCbEwxSmxjMjkxY21ObFJYWmxiblFqSWdvZ0lDQWdlRzFzYm5NNlpHTTlJbWgwZEhBNkx5OXdkWEpzTG05eVp5OWtZeTlsYkdWdFpXNTBjeTh4TGpFdklnb2dJQ0FnZUcxc2JuTTZSMGxOVUQwaWFIUjBjRG92TDNkM2R5NW5hVzF3TG05eVp5OTRiWEF2SWdvZ0lDQWdlRzFzYm5NNmRHbG1aajBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5MGFXWm1MekV1TUM4aUNpQWdJQ0I0Yld4dWN6cDRiWEE5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM4aUNpQWdJSGh0Y0UxTk9rUnZZM1Z0Wlc1MFNVUTlJbWRwYlhBNlpHOWphV1E2WjJsdGNEbzJZV1l6TXpBMk9TMHhPV0l4TFRRMU16VXRZamxrWWkwek1qZGtNREF3TVRRNE5XUWlDaUFnSUhodGNFMU5Pa2x1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2Tm1JME5UZzJNRGd0WldObE1pMDBOVFl3TFdJNU9UUXRaRGcxT0daaVpXRTNaRFV5SWdvZ0lDQjRiWEJOVFRwUGNtbG5hVzVoYkVSdlkzVnRaVzUwU1VROUluaHRjQzVrYVdRNllXVXpNakl5WVdVdE56UmxaQzAwTVdSa0xXSm1PR0V0TWpaak9EZzFNR1UzTm1JMElnb2dJQ0JrWXpwR2IzSnRZWFE5SW1sdFlXZGxMM0J1WnlJS0lDQWdSMGxOVURwQlVFazlJakl1TUNJS0lDQWdSMGxOVURwUWJHRjBabTl5YlQwaVRXRmpJRTlUSWdvZ0lDQkhTVTFRT2xScGJXVlRkR0Z0Y0QwaU1UYzNPVGd5TWpBMU1qVXdORGN6TkNJS0lDQWdSMGxOVURwV1pYSnphVzl1UFNJeUxqRXdMak00SWdvZ0lDQjBhV1ptT2s5eWFXVnVkR0YwYVc5dVBTSXhJZ29nSUNCNGJYQTZRM0psWVhSdmNsUnZiMnc5SWtkSlRWQWdNaTR4TUNJS0lDQWdlRzF3T2sxbGRHRmtZWFJoUkdGMFpUMGlNakF5Tmpvd05Ub3lObFF4TlRvd01EbzFNUzB3TkRvd01DSUtJQ0FnZUcxd09rMXZaR2xtZVVSaGRHVTlJakl3TWpZNk1EVTZNalpVTVRVNk1EQTZOVEV0TURRNk1EQWlQZ29nSUNBOGVHMXdUVTA2U0dsemRHOXllVDRLSUNBZ0lEeHlaR1k2VTJWeFBnb2dJQ0FnSUR4eVpHWTZiR2tLSUNBZ0lDQWdjM1JGZG5RNllXTjBhVzl1UFNKellYWmxaQ0lLSUNBZ0lDQWdjM1JGZG5RNlkyaGhibWRsWkQwaUx5SUtJQ0FnSUNBZ2MzUkZkblE2YVc1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRvd05qRmlOR001TUMwek1ETTVMVFExTnpndFlUQmhZeTAwTVdRNFpUZ3dZVFU0WTJZaUNpQWdJQ0FnSUhOMFJYWjBPbk52Wm5SM1lYSmxRV2RsYm5ROUlrZHBiWEFnTWk0eE1DQW9UV0ZqSUU5VEtTSUtJQ0FnSUNBZ2MzUkZkblE2ZDJobGJqMGlNakF5Tmkwd05TMHlObFF4TlRvd01EbzFNaTB3TkRvd01DSXZQZ29nSUNBZ1BDOXlaR1k2VTJWeFBnb2dJQ0E4TDNodGNFMU5Pa2hwYzNSdmNuaytDaUFnUEM5eVpHWTZSR1Z6WTNKcGNIUnBiMjQrQ2lBOEwzSmtaanBTUkVZK0Nqd3ZlRHA0YlhCdFpYUmhQZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0Nqdy9lSEJoWTJ0bGRDQmxibVE5SW5jaVB6N2NBWkF0QUFBQUJtSkxSMFFBQUFBQUFBRDVRN3QvQUFBQUNYQklXWE1BQUFzVEFBQUxFd0VBbXB3WUFBQUFCM1JKVFVVSDZnVWFFd0EwczV0RFV3QUFJQUJKUkVGVWVOcTB2V213WmRkMUh2YXR0Yys5OTcxKzNhLzc5VHczdWdIMEFLQWhBQ1FJVUFUQlFhUkFpaExqUUlNbDJiSXBLNlhJU1VwT0pWRlZLbkVxU2xYS3FrcTVNcFRLa1YyeUxEdXlKVXNSSlZFeUpaSGlQQWt6TVJBRDBSaTZnUWJROC9qR2U4OVpLei8ydFBZNTk3NStVSkptZ2QzOStyMTc3emxuNzdYWCtyNXZmWXYrMTZmT0tjUC9VbFVBQUFHQXhqK1lYNU8rRm45Ui9qc0JVQ0pBdGZzejVudUo4ai82OS9mL2tGNHF2aDRSRk9wL0JnUWxIZi8rWTM0cEFmN2JxZnZCdzFzcUZCUy9VUWtVUG9EU0t0ZmV1bWdGd0szUDdiOGpmUGIyVDFMNWRmdDlDZ1ZOdXFCeHowUmI5NTh3NWgweC9qT29UbnpHcFA0ektlV1haL2pINm0vcUdqNWpmTmx4ejBySC9IMHQ2NjUxRFdFQkFVcjVhWFJlY3kxdlJoaC81L0xQYXJndjZUMjA5YU0wYnUxTmVMOWl2K1N2eGEyVHYzM3Q5M3I4ZmFQV2h2Si9yTmg4ajErUUdMdHB1d3NxYkJUTkYycGZXTTNWcGZ2U3ZpcWE5Q0FwYk1qd0NtR0Q1bmZXN2pOYVpYT1dEOERlRURVM25NdzJUR3VwdUgrVDdyTG1aWkVXdW9ZZklOTHdZdVU5cExUSlRhQXBBaWlOV1VCMlk1b3Iwdng4N1Y1WVUveFFSWEdqMjQ4NExuSlNpQktZNHMvUUttOVFicUw0M0lueXMwMkxrOFk4bXZabnAwbVBPVVlselFHVVl1Q2s0bjdrSHpZSERpakZzUHpjdEJ0WTR3YUk2MW5SM2Z3VDFnbHBDQmJjM29pclhGdTRKaUpDakROUUFvWElxMnZjK1BZZ0w0SzgrY1hVUHE3Q3RaSTVmd2dFU0R0cStYZFFRcnE0SW5PZzd2VUtKcDFLMURteDR3SWpRc29JeUQ1RElwUmZ4Q3BSZTl5WHRmdmpaS0lqZFY5YUp6M2tZc3ZhRzZIUWVDS3gyZVR4dnBsbzBEbUpXeDhKK1NYemZXMWRBSFdlNFZwUGl2SkZpdXN3d1pjaElDaUlDWEFFRkJtTXB2OFZwNHpKTERXOE9KRUp1RFI1ODZ5MnR5aWQrQnBlaTlKeFE2MWdXQzZjY1V0QlUwQkdPM3NvRjBnMzZibmhHclJwSVhWK2hzWmRzRG1ReUFSZ1hjUG10MitqWVkxbzNrN2gzc2QvVjFSS3hkSk5pem5lTUdyZEdydGVZaHFVa2xZMUszdE1Ha2ZRSXVVZjk2aFQ0QTFaaUNxS2h4czNycVF6OW0vNnl4K3RLWmliazhCbXQyT0R0WTQ1NTlRdStQVHk2UVExQjFVbk9LYkZ2SWFQM041ZjJyMms5TkJqR1RFMkdkQXgwWTNLT0JNT0hyQXFwbVFJTEY1SHZiUUk2dmRSclovRHNodEFpY0xaUUtDVVRWQTNlSm1zVVVuSEhDYmF1Y21ybFVCcVRuUTFONWFLQUUvRjh5bExydkN2UkQ3aFZWMVRKTklKNThxa2hDczkyM0hydnBYSXBneXhlSDc1cytrYWxnYVoxeVZicFl6SkRBbEFSVGVxTGNKR1pDS0lUWm5qUXpLWk5JV25ybVB1SHpHTlRXVW41d0t0RTlIc29ISDNjKzBWVWx4czJsbWthbmFBcnFFeTFCc2tIV3BMSWdvbmsycVJvbWtaK0ZQQVhlM2phN2czU20yc0lHOGtpdDlucWgxZXJRdzJieXZxVDNsMkRHNUdvQ3RuOGZoZi9SazI2U0p1T1hRVHJpMHM0Wlh6MTNIbmh6K0I2VzI3MEJDaEZrVk5EbkE5cUFpMFVYRHJjRW1IaFFVVU1LN2ViYStFeVNXR1hYKzJJSXVIaUJLbHcxODdkWWJQUzMySnNzcDlwMVVXbUxhekpnc2MyV2M2cHF4QXR5TFZtTkhFWUM3bXNGMWxBeG40TEZjcjdmTGNMb1p3VTZxMTdraE5nQkhBM1Z3c1hTUk5BR2t5d0tVM0txb25nbGlUZ0MxYTg5SFpCbk5XQVNqWFZreDBmNGJLejVzZmdKWW5mZ3c0cXVXREczdThVQWxpeGN5RkFDYUdxdVNuWHRTMFphUWN1NGFwdXdpSmZaN0lVb012djQxSC91QzM4UTkrNW1GczI3NFZGOCtmeDdxWkRmakUxQlQrM2UvL0lhcjFHekVVaGZTbnNlV213OWk0LzFhTXFtbS9TTFRFQUxTVjh4SjEwOWExbzF2bEpZZ3BYZU1Kc1paRFFTY2Q2UjAwbERyQThkaGtRV25DUGZZMXZCYlBSTHVQZ0EwT04rNmpySkpxMkNvblp6c21oNmN1dmtmL3gxUG45RjNkZHhwZmowNk9ubFNBZ0JwRDJqZ0UyNElXNGdFMDFUTE1wclJXSjVVVEV4RHl0Y2FIVmFLOWprbTFiZ2dldCs4RGxhV0VUbUpKNHBYcUdNaVJjdW5sU0RHUUlacVZKVWpUd0RtR3Ezb1ExMGRORGcwNWdEZ2tQV3F5SEoxNENna0RwSUtaZWg1Zi9UZS9nWWMvL2tFMElNd3ZMdUFMZi80WFdGNmN4MmQrL2pQWXNua08yN2R2eGN6ME9xZ29ubnYrSlh6bDJSTzQ5VU0vaXFYK05JZ2NYTXBuVnp0ZC9lbEc1amhYVXo2djVWRVdlekxrdjUyS21hakRzTmdzTXlWRGFqQmlFNXhYZis4Y2dJbTZaVE9OQTQ1MGZMYTlsc09IYnBDQktscEE0Q1Q4YW1JQXVGSE8yeXBxMDlLeXNEWVJTcmFvUllpbCtsNE1BekFHZ1Y1clZaOU9takhzRDkwb2trNm1MQzFBMThtWXg5WFMwTmJ4cndub3UvSEpNNEVlTTh5RVFnQUlXQldiYUlSbnYvQW5lT0pyWDhUTisvZGd5NWJOV0JvMVdFSVAydzhkeGY3Yjd3WTJic1dJcWxBR21OSnFVcUFqb0pJVlhQN2VZOERiSjdELzBNMFlxcUFSd1dobEJmVndCYk96RzhEd0I3M1VJd3lYbDFGVlBiejYraHRZMkxRUHQzN29reGh4RDZ3S0NKVzBCWTFoYXRZY284Y3YvWGZQSHVZQWtNRkNtbHprci9KNGRKV0tRUTJkV2tTemNWbVE2cG96ejg1eWJwRVNXbUNzazdQdWFpSnZqaktsSFB1dUptTDdkSk56Z1U0MGhublJMcFZJa1d2R0dCUjliUWQ0L0NXcVkwSGxURCtWN3dzRmxGdTB6cGlWbzZzOUdCcVhpbEUrUGN3UkhyTVdOYkNtM3FqME12ZFl3bTExMm1CUUwrUENhOS9IUzg4OWlXdW5YOGZPMmZVWUxpMWd6NDZqT0hqelFjek56ZUdkZDg3Z3EzLzRMN0hudlE5aTUvSDdzRlJOUVJwTllaaGF6NU1BU1BpOFU3S0M3Mzc5Uy9qa2h6K0F4WlZsZ0IwSUFQY3FURG1IZWpUQ2hiTm44ZHp6TDJDRnA3RDc0R0ZzMmJVSDYyKzdIN1BURzN6V0VjOUdXcTNrS2s5Z0hwdmdkeUR5aVp1RnhoQlJaUkNQbjByQ1p3U0lPUHlicmltZDB6VnNVSjFVYXJWd0R4MzNHVnNIMlVRUXNiVU83Y0hLQmc5WkxYMFptd0VrUFF6RzZ4QlViY25aaXQ2VW9laXhNb3NBektRYTFUd3lDd2lUSVpZbXhYRjdNcGRsUmtqeGNpS0N0SU1nQlVpcHF4MU9OeXd2dEZXalQ4ZzJVcVNuTGdlL3lsa25BY2hqemZqQlFHdXN2UE1hdnZJSC94ZjJ6NjNEMFdQSDBPOE4wTlFqWExweUJXK2ZPUU9SQnBzMnp1Sys5NzRIQi9idXhWZSsralZjbXRxT3ZlLzdFRmFxS1pERXhFUVRya05FSUZJd015QTFGazQ4ZzlPUC9CVnVPMzRuaHRLZ0NnRkFvQ0FSREJldTQ1dmZmUjRQL3RSbnNHN2JIc0QxVUlQUUtFTkRNR2FpOHZTL0VWTkd1WDZQRWRTdXM3R1ZxSzRkR3lxeUNGSW9NVWh6U1prQlBEWEF3ZzB5QUV2ZlRnaE1LRExnY24yazlhZmFDVHU2V2l4YWJiSHFHSllKN3lJQTNQREZJN3BLazlPTGxJSm9UcTJwUlVQNEc5eVNyclVrZ0hxamxMK3pvYWdiTEhWTURhMXJoejRtM2g2ZGxPK05CelV6RlZYVUFTMHRZQlE2K1hzc3NYUlFRUjgxcnIzOExMNysrNytGajN6b2d4aXVESEhpeEt0WVdWa0NnOEdWZyt2MXZXQ0VQQzEzKzVGYjhiRVBQNGcvL3R4L3dQcmJQNEQrVGNlZ3J0ZXBWT0puWkZLc2ExYnc5ZC81UC9IZW93ZlJFUHVnRU82clFERTdOY0M1dDk1Q2RmTmQ0QU8zZzZvK09PQVZhbTR0cDR6TUZINUdkVWxyZ0lRTGNWcTRRMkt5RjUwa3JpTlRlcmJFVldXczl2Y1pFNStuanRVbHlTcnBmcnVrSkpPVHhQY3JEMWZ0blA1cnF2MVhvWExYb3A1VTFUV3dBR09SK01DaHFyMU9MWXFhUW4wM0FlMGxibFYvWkRuTFZjQXFzekNvRGJSTTJId3BVMmluVjZzK3hBbGdudXA0NVA4R2JDcGFzdWVPK0lkS1NSOGxZTXlEY25UMUhMNzZlNytGMjQ3Y2pDZWVmQXIxYUlTbCtVVXNMeTFDRlppYW1zYjB6QXltMWsyajErOEJSSGoyaGU5RHBjRkRILzhvZnZQZmZ3NzM3enVJcGFybk55QkpzWUZZRlFNUkxMenhDcWJxSlZUOVB1cmhDTFVJV0RPS3ZYbHVJMDZkT0lIZG03WmlwUnFnYVQzYnJOR2k3dW10UnVXNEN1U1JtQ3pWTWREb0RablNMdWxUSU9IaGVrM3FvR01YZ0k1OXJEZGFLNFNTOVdtckQyM2dKWHQ0cmVGZ1d0UG1Yd09yRXU4cmp6MU5hWEt4a3g2MHJmT1RnSUU2cjdVYVVqKzJ0dFlTSWFHMG1pZ0RhZFJkTEJQZlI4MW5TeWd3dGE2WFVyMU5sT1ZTUk5SOVhaVTFvVFJrTUJEN21iV2xMUzd1VllpbUVaTlF6WnI3S2E3eDdjOS9GaHVtS2p6L3dndG9STEYzMzM0TVJ5UE1iZDJLM1h2M1ltN0xaZ3ltcDBBRWpFWWpqSVpEakVaRFBQSFVzM2p6clhkd3o5RUR1SFR5RlRnVk1Ba1lDZzRieWttTjZXWUoxMTU3RGwvNWczK04yMjgvaHVXVkZUU3FFQlUwMHFDcEd6Uk5BOGNPVzdiTW9hbUhYdHhsTjRzQ0hMTnA3YUkrYk83cHVIV2lZN1FSN1QvSDU2a1RzNjNKSmFNVkI0bEdkV3BNK1hYc1EwMFpnbGtiZHEyUWxkZU5LVzNpZmFHa1JTalZrNmxzTHNyb3NQNXVSRHZyNnFjOWpibmZaTloyMWQxNFJpbGxxUkJhRFI2aFFzNWFVQ3VyUmJReE44Mm15QXFqOFRhMEh4TmxEdDBpcUd4RUdEZEt4ODNHVkpPYXQybWhjWGUrQzFoT0RtNGx1dXNmdHNUVXM3V0NTMnJUVUovYVlQbjhXemp4NkRleGZtNHpQdjB6UDQrWlFROS84dTkvQnp2MzdzYlM0aklXbHBZQkZUZ09LVHV6WDBmaU9ZT3ZmZjJiK05GUFBZVFBmdm1iK01DUk83Q0VIdGg1MExZblF5eTg4enErOUJkL2pFMDB4STg5OUVQWXVXc1grbE5UdUh6MU9rNjkrUVlheVhMSmhjVWxITmkzSHk5ZVBJK1o3UWNBN2dIaXI0UTdzTjZOZy81YVFEUjlGNjh6OGQrMDFNTFlNcE1TRzZDZHpMT0FqMjBtMlNybHhpOEgwOXhXZ05RNWoxQVlKYzBOU29CTzNyckdrNzVZaytacjFVUXltQ2IwaDNTbFZ4M045LytiWDBWcWJqR1p0VkJvU3BQNVRzTnVqT04rOC9mY09BMmpEaEM0UmcxaUZGSUYrRmZiUUFLVnNDNkZQVmVwNFBRcko3RHZ0cnZ3OEMvOEVsQ3Y0Ri85MnE5aTI1WXRXSnhmeEdoNUJjdUxpMUFSVUZXaDE2dlE2L2RSVlQxUCt6Rnc3dUpsbkQ5L0VYTTh3dkRpV2ZEV3ZTQnBzRzYwaUdlKytoZFlPUFU4ZnZ5akg4VmczWG9zcmF6ZzJ2WHJtSzRGQi9idng5enNSanoyMUpNZzV3QVZYTHQySGZzUEg4TFh2L0UwYmpseUQrcVdCRG1sNmhQNkcxWmJuUDkvL3RLQWJKTjIxMW5uekxBYlVUT0FUZTFOVDlRNUZzdFNQQU82T1hBWWZRdTFzSmoyNXI4UjRmOXVybitNZHFaYTlXUnV5Um9UWUZGOFFDclMzZjlQSG1UcUhpczdFVFNlL2hHRVZPMUl5U2ZWUkpya0NWclFkVkV3cXdZZ1d2TVZFRXE5K1poNHhHMHNReWV4MkNoVWZFZ2JLcURWTTNQNHNmLzB2MEl6cVBDbGYvMGJtSjJld3NMMTYxaFlXTUM2OVJzZ1VvT3JDdE5UVXluL0h0VWpNREZJQ2E2cThPaGpqK1BlOTl5TlovNzZhN2ozUjM0Y1Y4Ni9nOC85L20vanZ0c1A0K0RIUDRhVGI3eU5LOWV2QWNUb1ZUMjRYb1VYWHptQmU0NGZ4L1ZyVnpHN2NRNkFZbWw1R1lQQkFGZk9ud1dKZ0Nva29aTzllQ0dkcUF3ZHQvSGJBZVBkUEl2RS9reDQ3WEZjK1dvQlhsSVBSMHVjM2FyVk14R1VzU0c2VWRadXRibHRNVWw3TCttNzJUWlVaQ2hqczVWVmRRQWRZSUhXbHA0bGZsWFhDSit2TFE5b1AwQzJMWm5RTHVCVGdJN1VqaWNsRDF1VUVPUGErL3dONUJzdG1CaXN4bndmR1pwVWdXNC85c1JMdHpRZ01BSmg5dys4RDVkRk1MaDBBUzgvOFFoMmJONk1TMWV1NHNHSGZ4cDMzM2tjdi9GUC9rY00rZ09NcFBhTUFIbDVzRGlBR2dKUTQ4eTVpN2h3NFJLR1o5N0VYMy8yMytETlYxN0dMWWNPNE5LMWVWeDQrams0NTBBZ2NPVkxEMUhGcUs1eDd0eFpqSVpEdjZoRTBkUU5wRkZJUFRJYlN6dTYvN0Z0ekxZMXRaVTlkUUcveVlHMUxKbXBURzhURFgwRFQ0VUo2MUdLbUt4Rmt4VlFOZzZsdzBreFVURllRR3JoMEdKUVlreXNuMEZ1bXg5ZnhhNUswSTFMOXdtclpyUU1yS1huL1c5U3RhMkJtSjMwdFFub2pxaWFUcnNTQ2N5b2M3ZXhZeXcxdTBwckphV09jaXIrL3E3cXpiRjNaaTJsUlZ0eFNDQmkxQUJFQldkUHZvbytBNWV1WE1ISGYvNlhjTlA5SDhXalR6ME5CakJjR2FJZTFXanFHblZUUTZTQk5PRy91b0dLNHE4ZmV4TE9NUzZjZWhYNzl1eUdLS051RkNxQWlDUUJqOGR5R3BBQ1o4NmNRNy9YTHpLVjVlVVZLUGRBN0hLbHJMb0tkdDU5RnFRMG1hcGQ3VDdwRFo2QjBsaFdpRzY0OExBNmRxQUZFOTR0V1cwSjFLcVNPK0FtbFVGR05SOFYvcy9hWVVUV0xJelZ5ZmRxYkFCNDkwazdGVWhpbVdiUVJDS2g3TDBkVTR3VlhXMlNPOXNTakdwRlAxclVuQkxUdGxVQ3lMZ1VkRFgyZ01pZ3phQXVzbTlSVnVvdXIxakNkTnZGZFF5MVlnQmRJbytXMjJvTWhCNFRycHcvaTZadWNQekRuOEMyWS9kaVNRaXZ2ZlFpSUlxVnBRVXNYTDBNRVlHSW9LNXJOS01hVFZPanJrZG82aHFqNFFnWExsM0QzTmJ0QUJFYUZUUk5BOVdtZ0RoOU9sMkJYWVZubjMwV1U5UFRVUEdMczFkVk9IdjJMR2EzN1lDd1M2eUZrQUU5U2NlaXp4akRJblc1K2ZISUxabk9QclNlWWZ1L0d5bmcxcktiMnErcExhYXNZQ2UwRmR6V3NsTzUvYm05S3RIQ2pyUUdxS216aG1rOEN6QWhBT2hraHgyaU1XMlV5RkhLSVA0ZEZvRTh3VUprdG1qYTFLMGdRREtHOEVHU1p5clVuMDdpRjZab0E0SDR4aUlWS09KLzZMUzJqcXRrYmdnK0dlVVcwT3F5R2t0M0tscE1ZMGp2dEJQNTdaT2tRQklSamM5T3lQeXcvNHBBcFVIVG44THhqM3dTaTZqZ3dOQzZ4bWk0aEcyN2Q2TS9OZTFUU1ZHSXFLZnZtZ2JTQ09xbXh2VDZHY3h0M1FwaTlrSWpGWDkvdy9zSWZDYlFxQUpOalF0bnpxQWVqa0RrSUkxL3JkblpHYnp3NG92WWQvZzJOTVRabktRVnpkcHJReTJvRnRaTzRYeUVTUzNqbEw1ZlcwZXdaWjVVTTNXcXFwN1cwNzk1ZWx1K2JudUhhemRucExVbnZxb3RBd2J6Zm1QOVJXanR6SXBTOXhvbXNWbWN1Y1p4Ykt2a2pSdkpDaHJuQmpYR2FVVmI2aGdhYzhvWGRGY01DcEpiakFONW1neElXTUVNRURrUXN3ZTQyQXRVaUwyd0JTRjlVcEpZelNXakNpcTM0aHFVRm1Qb0dCcDNscE5aMkcwckdVci9pMmt2ZGZ5L1RLWVFUeHZqd3hkTklWUUVVMVByOElGUC9qaGtaczdmRzJaczNyVUhDNHNyK0xHZit3VnMzTDBQMHRSb3BQRWxnSWd2QWJSQjVTcHMzYllkN0xLOUZHa01xb3FtOFZtRHFFRHFHcGZQWDhDVGp6NkcvUWNPb0JIL21zMW9oRTBiWnZIZEYxN0YxdjAzKzJlaENxYzVyQW5SeElLbjY3S2tYWTdhRm1GRWxpVHJKSGZhT2EwdGxXNVZvV1hMT3QzUXhtZHNYcHFEbE5qeU1Pd05wWENDdDQ5aHBDeXgwSUZvNmV0bW4zM01ZdUphb1hkUnV0QVlYOEpKMThYaEVFMGNqb1pHbHZMclhKekt1Zk5QYzdSVm1BaXNTYWFwRWdNMitmOEVVREcvYTNnLzgvNElwMUwwL21FSVhOejhVRGdJbkFxSXhGTXpDa0FsQUJvU0hvZ1lreXIvZ01TY0R2NC84ZVlWeGhldk9Fa2tSLzUyMWlDYVgxY0wra2FUbmlEU2ZMSEdpemlHUUROaWJBVXdGaUF6cDUyRy9yOWFHZE03OTJQWG5lL0ZVQm1PQ0NNd2JybjdmWmpaZFJONk93L2h5TDBQWUZnUG9jMElHdXAvYlFRcWloMjdkbUZoY1FIMXFBRUhpZS95OGhKV1ZsYlFpS0pwRkRKcW9IV0RkMDZmeGlQZitqWU9IejBLMSsraHJtdlVUWVBwUVE5dm5YNEx0OTcvSUVhRGFZaEt5bFRpZFhPTFpsWEtkVzA2U1V2ckcvL3pvc1V6STlJV3JtQkIzMUlpYkorYnhTUnNqMC9LeU5RS2NuUXNVS1F0M0NLdDZWQWJKdURSdktlL1RrbEJJVDFiQVNRc3Zyei9KYTh2bE9zU0FXejFzdUVKR1RwdVVHNllYVS9tOCtmL2ZFQ3NDaW96MG1MMkFrbk1pVVhGaDhtTmZ3UVIwMTBXVG5SU3lvYUVGQXd5d1RsdFEvQ05VTXNkTTBCZWV1cFBBT1BkUndKeUFDdUhwSjlDNms5ZzIzQkJCTUNsYkNCK0p1S2lxaW9nVmQ4bDU0c2lUbzFKZGlISGF3OFJtaW1kbmpUR09zd2oxVnJVdmVPYXVpUVlyQlI5TU5DQUVnZmRlOVNRdXdxYkRoMzFYZ2tjNkNuSDJMai9NRDd3azUvQkZVemgyQTkrQkNlZWVSSVhYMzBCSEFKTVRZeloyVmtzRDRlWTNiZ0ppNHRMdUh6eEVseXZ3dXltamVqMytwaS9PbyttSHNJUjRkVEoxN0MwdUloRGgyL0ZwcTJiVVRjTldIMFp0bW5MSFA3OEs5L0NwMy81djhjU3FzSmRKcTRRQ2VCU3RxUmliOVpKWFdRK1pUbWtSVCtJWmlzY0lKaVJDckltSkVxS0UyWlJtR0JxV2djV1dLUHdiTVZrSFJaM3NkMDNSZStHK2lZcC8zdzAwWTBjY0FadU1XRUtMV2duWWs0WmlGb1BROWJrdWt3R2ZCWExWeEo1dFNiblBSWFZvV3BwNHc1bGIwUjBVSEFzMVRSTEJ4V2FtNEVtdGtLYkIyeDc5T09Oak1tYWhNam5veGZBN092TEVvQUlEWjlVTm9ray9ETmFaMEZDcjdtL0tSVjd4WnFsQVNQb1pFLzFSazBRVVhNQ0ZPM0ZERFZCTFJtTVNPblV3blpUU3lRWHN1ZGNLazlFVXJuRDFNTHhOYWQvSFE4WTlYMzkvalZ6OTJMUlcyRTBENGdvUjdDdlNncnBHTTBKYUJUb2tXTGRjQUZQZitYUDhOUVgveFROOGhJMmJObUdmVGNkQkJIaCt2WHJJR0xNelczeS9RSUtMQzdPNDl6WmM3aDQ1aHlXRmhld1lYWWpkdS9maTYwN2RvQ2RTNEJrandsdm5ub0R0My9xcHpCMzVHNk13Qm5KMTB6UENSa0tNTG9XU2M2R0lvN1NNWWNKTjUwTmZtSTFJVlo4RlZXVXllU0dqZGpGZnA1a0xtTzZUaE5JeVJCSWVFOHVOUWdjZnM2VUdLS3RReTMxYktEb0h2VHZLVDVna1hxc3g0clE0bWRKKzZUbDNLT2x6aVRxaUQzbUZjSWVBUkJKNzYvbVJLWVFXZU5uVHZlUDJ2MDdoS29VczhRNjMwY3NmNnBUNnB1UGRVNUdpVzBtNEJEdElXR1E2eGpoa2xRNEMyRmJWa1VaL1diNGlPOVl3R0E0VWpqaWZLb1FBR1UwQ2pTTm9BbGRha3hBRTBvSkNmYlFTdUVkUSt0bitNY1U4ZUlEWnFZVTZ3U3RGay9POVY4T2F2NUlpdmNxYm1vaFU3K2xSYUU1VkJyQ09KWlJIVXFUamJWVVlSaEJoVWxrd2g2SVBHaW5paUVBNmEvSEQzN2l4NkJYTCtEVWlaZXdhOThCWEwxMkRVMVRZOE9HRFJqMCsyQWl6Ris3aGd2bnorUDgyYk5nQlFhREtXemFOSWZ0dTNkajNjd01wSkhRMXN0WVdaakhxVmRmeDIwZit4UjJITHNiaStxc1REUExYVW5EeVdoQ29XVGxvOVZmeEkwUm43MUF3OGFUa0xINWVsdmFEbEloTTh6ckVkQW1aR1VVNnZQWWhWZVl6bkN5UEN2TVVvTXZRQUs0VW9rU2M1bEliRkNCeTRBNVo2NUdhZWl4R1VxektISTIzVllDV3JtN0JReTBBSjl6dHptWjVqQWsxeU5WOXBsSktEZkFNU2hJV3VNVWhDVks1WHRYVkdpVktTbnRiQ21Ba000cU9IODRCbFFOaXEzNWhsQnFjdEFFWktneGhDUkdRcDA1YmdLVENqcFNPQ1pVWVBTY1E1VmNxQlVjU2doUmhRaFFzME1qNm4zcGlNR05vQTVCTEtaaU1VVVRBcHdRbURtckNKbE1XcTlwazBVOG9rd3JQUkJKS01FK2F0TXVGc2tQUjVOMmpCVktuMk5xVVlJRkJhalozdzJGNkVvTnhLZ1E4dGMyWFMvaUczLytSM2p6NWU5angrNjl1SDV0SGxPREtWUVZZYmc4eFBtM3orTGl4WE1ZRG9lWTd2ZXhibW9LdmY0QU16TXoyTFYzSHlRNS9RTDF5Z3F1WExxSXQ5NTRBM2QvN0QvQ3NROS9DZ3ZxNEpKYXpoU1dyVFF5R3JHQUthUGJhcHRyU3VRcWxZTnNiTVRpQ1d0UFRrUDFSSnpGYityd2R5NGJkaWt0MkxJMTE5ZkJISks4TVdZeTRXZFNLczFxTXNEc2JweU5UOXEyWUliS29kSTdnMWhBUXI3WUk5TU5ZQzMzNCtrZFMyb3lyc3BxUEJETmRSS1hLbDRpODk0VUR4RmpDbXBaZTJ1TlpNVXZDaXYxTE4rd285dWtNVDM1Rkp0ZnZEdzBHb3N5NVRxRlNFT3FxWEJFNkJPanp3NDk5cW1uQzQ1SzBXbFdWTkV3TUZKRkxUN2ExazAyZzFUVmRPS3IxZGFUb2ZMTVovWTNsL1BKWWFjYVVkNXk2YjdFVTcyak9nd0xpNUg4MDNONUUybzVqWDUvTVlEcUdIbXhvQkNpVXFsSmpCc3BoZ01PNzd1dVdjYjN2dnluZVBYUmIyTEhubjJvRzBYbEhDNWRPSWV6Wjg5Z1pXRUpnLzRBZzBFZlUrczNvT3IxNEtvS1JJU05XN2JBVlJWVUJDdkxpNWkvZWgyWHpwL0QxWVVGUFBEdzM4V1JEMzRNQzlUekp6b0lvQ2F2Z3NUY3REdEx3MkxsWURiSWtxYzBVVDZkMVpwYUZpaS9HUHdtYStqOVp1SDBIUEs2VllERitQMmJiSVF6cUJycjZPTGY0NHdzc29jVnBYUS9ia0E3QjBOYlBmZzVacFIyd1Naa1pRYWV0YlRoTjNnU0FkMFpEU2xqUkhHek5PUklGblNtWXJDRlladTBDUi9TcjVkcXJiemxXS0tjc3ExSlVmMGFIaUtkVitwQkxSZlF1cGpPay9vTkh6ektRVVRvdVhMejk1amdRb0xCNFM1TGVNMWVJeGl4Z29XeFFnRXZiL3pHYlJSZ2NYbHVBU0ZzdW16eW9CYmZJRW1uaExUUVZXMXAxQkxDcXkwcmM3UXlCQXJ6RXJKSmR4VDZwczVBVGd1ZDJ3TFRzU3BGSlFOS211dm9vOEVMWC84Q3Z2MUh2NHNkTzNmaWpRRG1hZE9nQ3BsVWI5MDAyRlcrL21jT2dKaGlNRFhBK3RuMU9IZm1IVnkrZkFYYU5GQ3RJZFVBZit1WGZ4a2JEOTJPbGFvSDFESldibzB4OThXT2VQTUhlRE9HMHlaamtkNXRJTW84Zi93N0ovd2tXbmtWNWlESWxGcXNtek5pMzVVVHFyWDlJZW53YVJyTGpRQ2l4ZlVkVTNBN1RTalBPOURXZTVoc3FOVW1SQlpzRG9lakZaeWh5NEcwNkpCQXM2VzFJd21jSEtjNTgrQjRSbC9YYkFqU1VubDd6aDBvTDF5cEFEc2FrL0l3NTZqbGlBSnY3Q01WazYvNUt5SlVqbEF4WVVDS0hyUC9Pd0RIWkVvMFNocDljaTdRVG8yL3BTNXNSSkZFUVNIaE14eEdYSWtaZEVTcFprM2NNRFhHcnF3dDN2STIzS29aM0NtbEZTZzgveWtFRm8zdnFOMWdVVm96YUt2Ym9aUVdNTEpHSUtkejdEZUVOdGl5YmdyTWpJdm56NEpjaFg2dlF0V3ZvS0lZMVVPTUdvVlRIejY0Y3Q1QnVHbXdhZE1jTHA0N2p3dG56c0NGTEdWNVZPUGhmL1FyR093L2doVmhVRzNBVVdPOW5Zc2xjMEpUb0hnTlVJeU92UmUxUW1zR0JzZTFsbHVKcGkxZG80Y2NHZjJKdDByblBGbUswSkVzKzIva2lhN1dWQnhpOWdUT0dJUlFhOHpibUlQU0toaXBuVEpyYXlvRXZjdk5hS2RuZFdhaGFkb3ZralFGdVdRanJERUFsTzJSbWZSVjQ2NVQrdjVIRVlzM25IQVVUL3l3NFZuaHdxYm04RytPR0JVUm5GTlV4T2dUbzJLQ1k2U2Y1UlNSeGROQ1VVZ1kzb25Ed3VDd0FEbHc4WTM2OXhNVjAvcEQvdWZEWWtrMFVLdUUwWWdGRkJRS0N2QUhha2RUbFdlM2RtelRGSGxDRGl5UjFka1VqT3hSb1NIOUZESXF3VWdiUWRDbkJyeHdHYzg5K1JqV3JmT3lYV2thYUQxQ3pReE1iOEQ3SC9yYm1KclpnT1dGNjdoKzZSSXVubjROWjArOWhzSFVPc2lveHZkZmZCSHJCejN3VkIraXdHMGYrQWcySHpxS1JhM0EydmpnbWNEZGpCdHAyeXlDY3V1cFdINU83ZUNUMHIyWld3S3hTVDBXaFl1djRSSzFjOVR4R043VmpNeFJMU1JCT2tZSzI5NzRhbVkzcEJJaVVKSVJqQ1hOZzBhMGNEd3VxZWZjcWVjelJKcmtqZkZ1dW12SHpCbUxzZ3NQaUlyLy9JeVUyYXc5QXloc3NYUDBrc1J2b21pczVyQ1JtQUFYYWxTLzRZSEtNU3FFdXA3Z0EwVElBRGhzL0lvSUZYdjNWZzlzYU1Sak00TFBYbGlUODJqQ1ZBQ0RtQmdqOFZtSTVQd0FrZ1dDQVV1d3JzSFNIWkpHR2doUE5qUlQxN1FqM3UyMkprRFJHSTdaTE02d1NJVHk2UmxQVGM5SWtLRWpnMVEzdXRhUUZwTnYranJFeXVsWDhkbC8rZXR3eTR2b3V3cExveVdvS3BhSFErejdnZmZob2IvekMzQ2JkMEhCY093ZmZIM3VKSDdyZi9wdlFRQmVmdlUxL09UUC95SSsrOXYvQXIyZXc1TE5wbnVKQUFBZ0FFbEVRVlF3N3YyaEg4RjhZMlhMQ3M1a2ZQTG1LMUpWeWh0TGd6S09JRDV6aW90YzdJbXB4WndNTFFUWXV1b2lMMmVhbXZad0FMYkhNeDlNYkppQnRGQzlJSWZheUphMldzRzBtRFhZN2xuSVNrWk9heWtlSklYeGVVdHZVMlluNzc3UmJLS0tYUXo3RnQrUGJjRDFHVU8xU3BYUk9yUGk3RGR6YWtYS0o4WkxBNnI0QzVld3VRazlZamdHcWxEVFZ3UlV4QjRNQklIWVUzMUVucEtyQU4vU0d1V0twcWtoQThLeGhQQjcyakVoTnZBNktCd0J3ajQ5cm9WUmkySkU0cDJESklJbEZybVo1UEpPcGdHSXhtZ3JOVEtUcHVjODlEaG96aHdpNDUvRUlzUmhOM2p4aDJNT1ZJNEZIOFRZU2JuRUNnajVGSGRhaDdqMDBuZnh4Ly84ZjhQc29JOEdRRE1hb1hJT2x4ZVdjUC9mK2xuOHdBOTlDcVBCQnF5SXo1SzRZUkExY05VMEdnQ0xDL1A0MGIvM2k5aDc1NzNnUC95L1VZK3U0NjRIUDRiZTVxMVlFZ0RTaEx5cUFOQUxVd3RLT2dBdWtYM1VhQzZkdzJCNkdqcTFEaU80bEJtd1NTb3RMa2hHT2RreFdEWnVwa29UNUs5cWZXZTFKZnZOZ1pZU0ZtT3pYTXUvYVRGdE9KL0tZaklaWTQ1ckpkNjBtdmRBeVdpc2FXekZHdDBScURpWFFnWmhyTytKR0k0a1pjc1ZXbUJTMFlwcXhVVmtwSy9HdkRLajZwcFVlMUhBUTJHVCswM1BhZlAzbVZFRlZSYVRKc1ZhNUhlZHFlbUtHMVRJWjcwME9OSkxIRFZHb1gzV0VhR25BZ0doMGNnaVJCTzQwR0JFTGVyRmluZXN2NEV5VmpkZTB5U0pWYlgwVU52M2xvcUpEYTVleE9qcWVWQmQrd1ljQ0NUSWRra0NpNkZlejc4eWFyRGw0QkVNQitzUjhpSk02UWpudi9jNC91aWYvVlBNVGcrd3ZMd0k1NXpYQlV6TjRLZC82Yi9HcHNOM1lSR1ZSem8wMXNiK0F3eG01M0Q3K3g3QWk0OThIWnYzM29RcjFUUWUvc1gvRW4vNjYvOHpGcTVmODlPQWc4b21TNXV0LzJONzNua0FQSTBkcjRQZzlFdlA0UFRUajJEUDBUdHg0UGpkbU42NkV5dmtiY1ExMHFUcTFaKzV2NTRTdHgzZldJdU5aak1GU1VNK2JVVk84Wm1IUU1CSmdOUUZJYk04bytVUjFSb1dZMmNMY0hndFRlNU54bk5TODBHWWNFWWFYMkNNODVSdHo0aTB0dmVkN0VEdHRDTXRmQXVpeXBUVUt4SmR5Rks4dEo3Z1B2a1AvNXRmYlU5bVRUMTRBVlVYRTZNNGlDZ29iRndPZzBNZEV4d0lGVEVjRkpWajlNSG9PMGF2Y3VnN3doUXpCaFY3Vko5ejZ1ODROUHJFdXhWNC8walQyOGFPTkxvOFJYRTd1eW4zOFZQQURqZ3hEbmtvcUlMUWhEcEFOVXZxMUlndVVqdUthakZOVVBMZE1YVmdQa0VTcFVkY2RBaEdOK1gweWt4b3JsN0VuLzc2cjJGMi9oeUdaMDVqL3ZUcldIN25EWXpPblVaejhSM1F0UXR3ODVjeFdMbUdUVHJFVTQ4L2luMjNIc0VLZkUwK2ZPZDEvTTZ2L1dOTU9lRHEvRHhxVVRTdWp6cy84a2w4OGgvODU1amVmUWhEVk9XZ2pQQjVRUXdoWUhiZzhOSVRqMkRmNGRzeHMyc2ZObXpaaW1aNUVTODkvaDBjdXUxTzlHYzNROEJwS2hGTU1WYXNHY1B2RjVKekVXemJ1Qjd1NGx2NHpNT2Z3dVZYbjhkVDMvd0tTQnJNem00RU9aZGNoU25QSTIvWnl2djdsUTZFb0FkSnVIUFJtbTA3Z1gzMkNZSnAwc0VZeXJYcjgrdUZTVlRPd1p5UWNuc1FQb0NUMnFMSnRUU0V6UnVmSjdiczBoaWJzUzR1b01XQlFnSDRoaW5Za2thRVBMQmVNWUZkWnRuNmxkRUJwRlNIRExJY0VGa1g2WmJJT1lmVDIrODVuMm83b3BUdXg3MFczOVFGT3E4aWhpUC9aMG9iaDdLQ01BM3Q4TlU0STBzV0UwVmt6T0NqYkZMQjZXVHpZcWFRa2xjRUVnV0gzRnhBcUpWOGVSQ2x1TXhCVWNsalhLSGpaT1FJQUhGZ0hMUklpVFZKY3ltQks1SlFXVFl0UWhsTFlDTDA1N2Job2IvOTkvSHM1MzhmdTNidHdTaUJRNkUwSXVlTk93bllzM003UG5UN0lUejE3Uy9oNEFNUFFiZ0g3VTNoUi83K2Z3WUNzSFhQWG5CL2dBMmJ0MkpxMHhZc1NiaXJLbkFjd1E5T3lId2NGN3pqcGx2UW01ckcrVGRmeC81NzNvOWxyZkMraHo2TkUwODloci8rOHovRkovNlRmNFNyR3RWblFhcmJHcTJlWU9CaVlRWWdreG05alZ0eFVYdTRmUFVLSG5qd0FYem93dy9nNUdzbjhkVnZmQTdYK3JQWWZlUU9URy9lZ2JvM3dBak9sdzVod0lqWGw1V1RFMGlwSExUUnRoMjN5a1I3MmlkZ1RzTHpLM05mQXVmeFJOQ2tVeGtEclJXRDF4bTVtWTRLZ1VDcDdxTUo3VVphT0ZOcFNrYzY1ck5xN2VRemtCYzFMbUF2ejRvQm5sWGhuTStDS2lKVGd2c011V0xBZmVvZi9zcXZ4dkhmVFBtMDFJQVkraDRFU2RVclIrQ09BM0xQOEtkOC9OMHgrcXpvTzByLzFnL1pnV01DTStDUVQwbzJmMGFIL1l3dGxBeHRKVTQrR0lTSEtFZ1pRZHhzSEZQZVJQMTRYVUNEMEROZ0RFZFRGaEsycDI4bG91UnhYY3BYNDB3RVRhMnJTRFZoYnN4Z3VQQWc0b2hxU3BSUnpGYVVITGJzMkltVmhVV2NQZmtLQmxNRFFEazBidVRYRXlWY203K0dxY0VBY3hWd1pYNEJjN3YyZ21abXNlM2dZV3c5ZEN1bXR1NUNmOHQyME5RNkNQazYyOTl2RGh5MmYwMy9kd3FzaTJMVG9JOVQzL3N1NWkrZHh6MzMzWWRlcjRlcTZtRzZVanovbmE5aHg4N2RtRmsvZzU0RFhDampIRFFBaVQ3Rjc1SEFhWU1LRFNwdDRMUkdUd1U5Q0NvZG9jZUNMZXVuOGZ3VGoyTHp6bDI0Y0hVZTZ6ZHV4UHZ2ZXcrT0g5cUQrVk12NDN1UGZBdk55akxtTnM2aTZ2ZDkxdUU0Z0dwTk9IellzQ3BHR2FmanBHbFVLdm9TZUJkcFBLTlUwZXpOa0JEK2tIbkU1aHYvL0xJVW5nanBzT3M0VU1Gbzc2MXFrOGEwSUVmVEdXdDNyeFppTktXam1ySkx4L2lCRzFDUlNiMkNObXo2dm5NWVZJUUIrd3k4N3hoOVI2Qi85c3daUmRMSlo1VlViUGFKS0xRM2w1VFFSaHBxZXlLNHVEQ1FNNEVJekNHcDkrTGZLWUIrZ1JzbUpBVmJ3b1dwTkIzSlpndHRsdytGUmxXZFVETDhGREdkWUlva0dHb1VHSXBncFJFMFFoaEtnenBRYUZMTVlhUFVTQVRXVk0rbE5wYUlId2dWSEwyR0U0c29pRXFGb0N3WjhiVjBXZVQwMVQrZzJXWUpYL3U5M3dMTlg4TFV6QWIvdnJHUE9sS1dJZWk4OSs2N2NQYmNCY3dldnc4ek8vYWhhUUxhck9FNlFudTBhb05HSkJpRE5LanIrSGNKMm56QkFEVmVlZkk3ZU9HYlg0YURvSnFkdzRHanQyUFBnWnZ3OWM5L0RzMlZDMmpJb1ZvM2krbTV6VGg4MTN0UjlRY0puNUc2Z1RRamJ4UlMxOTZzWkxUaVU5Rkd3bkhzMjdsNU5JU09sdkdwaDM4Q1RjQitlaFdqN3lwczM3d0pzK3RtOE5aYmIrRnIzL3BybkcwRzJIN2tUa3p0M0FkeGd3Q0VaaVlsWi9QRytKSXpscVBXNGp1MmVJWkdHdThUUWVWQURvUDNseUJkcWZTS2lZZUtCNjFqdGthcWhZWmZOZjc3T051TVZoOUhJUWkzZzFOQ1c3enBLVWduV2hBMWlsR0JFV2VLbTFsOTloMUtvRUhsMENPZzV3SVdCNEFkKzB6NU41NDk2MlUxSnEwbUlqUkpYeUZtK0VOSUc1aFFzVU5GNFNRZ1JvOElsZVBFWDZjdXBvQ2ZPV0xERmtSYXIydDNtREV5NzRiclQxZVRHc1BNdFFQN1JSOGRnaWxUVEFsdGovMzBBb3dnR05XaEZKQUdUVFNOVVorYVI0MjFLTEp3SjZIQkhnd1VaR2VhSmlIWWpNWnFJOEtHTk1SVG9oZ2xnS1M1aFpYUUo4SHM4QnIrM2YveXE1aWQ2a0dKVURjMXRHblFSTDQ5aUJZcTU3Qng0eXd1THk1alp0T1c5Q0h5aVdSVWxpRVFrNTNaSUpKTUxZaUJLcHdRekF6bkhLYW1wMENrbUo2YTlzRTh0TlF5Z09XVkZkeDI3QmltWjZiQXhJRjFpYzFxdnN0U2c2bElvLzdQQ3ZJQlNBUkRVZFJLdmhveCtuY1JoZFExMWs4UHNLN2Z4MTk4NFl0NFk0bndzWi8vTDZEck5vWitEb1kxaE5VV1E1T1ZuV2ErL0ZobzIvWXNTQW5ZR2FwT2syZERicUNKbnBNS1NjMWo3WGV3TGJqV0FrOERPSjJWaTJyS0tEYUR3NndvU0pOV3hlcU9xVFdqMDcrNlIvWmQyQXU5aW9Pd0RwZ09wMzZQL1dIZGMrRWc5aVU2bGNvMDB5VkhSbkdsa1piajFCb0hqa0llNDIyV2UxckM2NGhQWWJWam0wV1pkU2NVd3p4aFZHSFVtdmZhSk5Fc1o1T0o4TEJFUytlWEtLQVJWVFFBYXZYdHQvN2s5YityTWdpVjM4RGhlOU9KcnFYQmgvZlE4NTh4WFZQc3dvcHFxeGc0MklCQXh1SThMMHhOaG94RE1JYURHZHg1M3cvaStoc25zRzNYTG9ncTZ0cTcra1FGbHdCd2xVUFBWVGdRN24zVENKcW1MazFZTkp6OFFiRW9ZZVA3NlQ2QVNCT3lBSUlJK1c3S1dsRTNJNHhxNy94em9iNGN2QUkxdE1INndQZjZ5Wk9tVTRrU2hla1RGczlpTkNLb2d4T1J2d1lmREIwcGR1M2VDM0poMGpEbk1YSk4zZUR5MVN2QXVsbmMrZUFQNDU2YmoyRWV2V0pvYU5uNG9pMVV2UnpVNGFsRzA2S3RHYU9KSlpzR3JNVnFOaEJLeDN3d1M1NEFsRmdQaHBtd0dwU1lzY2NsZFRTRjVyTGNSbDRxb0NsbHdiQ3RDS29GRmNtbWhWYzAzRE50WXd5U1Myc29xb3JSWjErVzl4d3c1VnhTMmZaQ0NjL3NmNjhxeXZBVU5MUzdKdmttRisxcDdkNStEY3RkRkJpRkZOUlNMWGJXUVJRZnhBWVdaNW54c3UrbUdEQ3BaQVlPQjkxemUzQjRFdFZxeTRFbmV0NEZURU5BYVRGSHV0RHJ1cVhsNVNjQU9hOWlpOTVDRVlBSnl3UUVvSWtpSFRIeTBGeEdPZU0zRUx2TllpWVVhOUhrZlNRTkJwWERLMisvZzB1WHJxQnVhb3hHSXpTakdxSk5ka01PSDFRVUVQS1pSOU0wb1NSaU1Ea1FPN0J6WGlaZFZhR252d0pWL3V2c0dJNHJNQno2dlI2dW4zMGI4eGZPWUdabUJrMGoySFhyTVd5ODZZREhYb2c4ZmVRcTN6amtYUGl2Z3F2OG40a1l6Qjd6SUdadjE4Yk8zKzl3bjlmSklqNzd6LzkzN0pBbXRIMnpMeDFHUTV3N2R3SFRPL2JqN2svL0xMWWV2QlhMMU1NU3VTaVJ3SGhsdkdFRmdudE83aTRPNmpxb01RNHByYmRncU9VTU1uT20xQUtpcitNRzhLZ2tmQ29GK1BqSnhOTnRwTmtuSW91MjFLZ0VOVG5DS1BtT1FES3FUekpncXNiVzh5ajk1K2hMSUFHc0RMMHlBQ3BINkRONTFpMWljc1NvV0ZHNUxMNkxoM0JWRWFNSjlaRVloNTdNWDFJQ0ptTGdhVUpyTG9VZWJFbjhmM2MrWWJ5WkVseDdvdHNKR1ZrbENzTUdNMGhUWXNCUUE5RmttamtXRXRIUk5rbVNOYVB3aldSS0tQV0NKN1ZPazZZQkpXcUZySDk3NGQxY0dGK29qVkJ0aDdrZ2NrblNWd3B3cFJxbjRCRDFtQWdrSXl4ZE9JMnYvdGxuc1d2clpwQ09Ba2pUZ3dUVGpnZ3FPU2E4Yy9ZY2J2L3dKM0hYaHorT0lVWDdsUGc5REdMUCswZlhXWitOeE0yY1czT0ZnQjRSWHZycTUvSEdFOS9DL2ZlK0IxdTNiY1U3YmhNMkg3a2JRL0UwWG8yc25ZaWkzY2lEUisxSDRlWVRubUVkTm9mVEdtZS85eWpXVFU5aFdEZHdvaGl1TE9IY3hjdllkOGQ3OFpFZit6bHMyTEVYQzNDNHBsNU1wR0lIVnlLMHppcGFNRkZ1QVU0S2EzOGlXMlk3S1FISlNxNjU4R0lnYTZpUnNqdHFsUk9tSDJPc1NERzM4VnFSRVl6VWwySlhxRXFTQVNYTkRkUzArT1pHY1NHalVvM1dkV0h6cS9vU25CUWdCL1RZbCtPREtMaURvc2ZxZFRlYzkyZ01pdFZVNVZBTFlRUkZBMEdqNFJhSkdrdXNVRk5IV2d5Q09nQnJMT3c1OStSc1UzWTZaY0VDdHhSUU5oVkNZaDIwNDR1UThRSU53eXB5bHlOQlVpRWhYUnRQUlZBeG1FZ3NZdnFpeTU3Rk9QZ2lOZkhrMFpIZTF5M2NlSWsraGpHak1aWTBrWGUxZVdRZVcrNGZYa01LQ25VZlE3QkpWL0FIdi9PYjJMTnpPOWJOckE4cFpjQXdSRTE3YzROclY2NWcyK0U3Y2M4bkhzYXk2Nk1PZ1VWRUlXR2hrUkVqbFdRMVFCSlRVNytrUnF3WUNzRE9ZY1BHamRpemF3ZmVQRHZDaUFqQzVvbkdVaUNXUnlSSklFWGsxWnJrQ3pNbzFJdDh3cHRPeVFoUGZPVUwyTFp4STVZWEYzSG0vQVhjZlArRCtNUlBmd1F6Mi9kZ1JSblhOQVBERU9uWWZ5dVBzZkhXTFBoSm5icHF4RENxeFFsT0Nka0p1YXZhbXA5YUVtVHplOEoxVUxnVXRXK3V0anNMaW9rd25JMjIxWHMzMk9MYitoNFFCUTlCNXRUeHgxb0dGMHFLOHNpc0JZb3ZaQUJlYitOUU9jOEdWSnhQL2NoaWdSalZWQVVNRzEvVGFPTTNqTGQxSW45Q3ByYktER0kyeHR5aElRRTErVDZ4R0ZmYm9nR2lLYVdqcVgrZ0hha045aEJkYTcyNHVRZ0lRcG11VERwd283bFgyeU5xOWVsbVVHTzMzOHY4cmxLR2s2QndFODIyVFFLTFBCdDVjaXc3VElRdjRLdlFVNjRBcHJYR28zL3hKM0NMMTlDZjNZaVJ3SE8zSEl3aUlxTFhDQmJtRjdIb3B2SERQL1VaWEVNUEZRaFRXdVBpcVZjeFdEZUQ2YmtkR0tMS0o3L2hsNk1JeFJ1cCt0ZDBZTi9razREU0JxT2dTa1F5YU01TlZacnEzeUJIOWxBeEhBalRqakJvbG5IaDlDbXNqR3BzMkg4WURTcEFCTXNYenVEaXlWZXhzRzRkYnZ2Z3gzRC8zL3NnM054MmpNRGVWekEyeGNUNmpxbklDdTB3bUdLa1ptekhUUVkrYlYrRmxybEc0TGJJckdjZmI5Uk1jTlpVK3p0d2tzRm5ReHRiZkVwUm1uRFNIV3I3UTRSdDErUXAxNHBDMVZvTWtkWDhHYXh4TUdudWFGV1Z3aC9ETWRBUFlIemYrZDk3Z1lWemJETnU0OFFFUlRWRjdQVURFQkNjN3dQbmJMd1pqU3ZJZExBcE9ITVFObFVtejdGYlUwV2xDVE1IVkV1cFpZRXZpSEhCTVJ2SCswUDUyanFFZlpYSU5HanlmOHV5WlNxUFA0M0dFckUreTJZZHllVEJ6bmhxYVRiaWFSeVZmaUxXdE1QSVF6Z0xacWk0aHRZOUdDN2g5QXRQNGVYdmZCbTdkMnhIb3pWa1ZBTTFBVnlsbXJaUjc5Vi81dW84ZnVLWC96dlVNNXVDYlptZ25yK0MxNy8yWnpoKyt6Rjg5MnR2WTlleHU3RDl5SEhVMVZRQnFyS2lNTTZrNERXc0hJSWxrYWNPNnhFYTRZRFV4L3VxcVkxYlRNdHQ5TlRyanhadzh2Rkg4ZHBUaitLdXc0ZncrbHRuY1BkUDNRVHRWU0JTWEw0K2p4Lzg4YitMdy9mY0M1M1poR1d0Y3JuWk5HT01Xbk05bmlKcmNzbmwvSmxTUUlnSGdYVnhzdnJWQU01U2svUFQyTW9jZENEU01XSmhIOTRTeXM3bVBYSmJ1bWtVTDMwbkloMFpFOStnZDB3SFFsU3VhcE9OUlkxbFhtV2N5ZFRZZkhBeFJ0RExtV3lQVFQrVUFJNEpqa0xxbjRCSTZtZ2xxcDd6L2x5cXdYK05HZHBJR3NNVkpjSFpmam1iRUNxYWpIZ1NaUmVtQ0xaRnhaSjJkYzhka0ZEVVNHa3BuYXA1VkNObHQ5NUFIU1dQT2NrcXJ0dzBsMnZ0eUJZNHNBZlBXaE40RlVFbEZKcHpvbU5SeFBRNVBnamlvSzVUT0ExMXRTcWFZcktyL3p4Y09ON1lqcGR3Y29oaStjcGwvUG52L3k0R3FIRHk0blc0M2dEa0hGeXZoMTYvaDU0YnBDbS9VelByOFJNLysxRzRyWHN3QkNjZ3FSbU5zR0YyUFE3czM0ZTc3N3dEYjc5ekJzOTg3MGxzTy80K0NQY01SMTJlVlNxU25pdW5JYWFVV0lRbWRSMXlTdXdwdEZVM1lYT0plaUhReTQ5OUd4ZWVlUVRiTnM1aTg5eEdMSzZNa3ZwTTJHSDc0ZVBZZWZnT2pFQ1FSSGtGWmlIYzVmam4xT21wdmxjanV6RUZ1dGVzMy94YzFMUnptK3c4NmY3dENldkMvSWd3L3pBYWFCaTlCcUNaZjFjZDA5TVJNNzFzS0VOeGp4aTJJR2NhbWdJbWNkU1FocTBvbkYybEZFSDBab3hVakFHcUd0YkF6OFZRT0pBLzlja0xlM291WkFEcy9UUWk2TW0yRmRCazI1VnpvU0pTaDBZRnZmQ3doOG5IUGdnU2lvazJtblhhVWRHaXNRVTdwMHBpbWhTa3BicEdvTkp5ODBLbzVNVzQ5MXJNbHhoTjBEcUxOb2xYTlRhZU9YQ0lKZ3R5UCsvT3YwYWRickpyUmFGMmU2OVg3Y1Vhc2VhUUdjVElBUGpCRzBFZ3hiRGFnM3lsT3FiRDBLcTcxbTNlaHAvN3gvL0VjN2NSdVk5MEtuUHdQNHpjTm1ORmdDYUt0b0pIbzRxbjRLN016K1BLMVNzNHVIOC9ubjc3QkNDUzdjdE44NDYwUEExUzk2WnpucUV3RFMxK09Hb3dkakhvYS9aaThPekZhR0VCL1VFUHk2TVJscGFIYUFMTkdOMkVmVHMyRlFkS1pyYzBOVkRsemt6TldhTFpBUDZhSldVSmtySkxCMUh4M1o5UkRFWFdQeUNxOTloUVBRWWNKcXN0eUhNR0tHQklITE1SNDMvQjZUTzNPcjJqZGJpNVY3RnJObUpkYkxvU2lRMjNyMkxrNVhsOVNnTEVOZU1BcW9ISzlvRzI3N3lqVm84QVI1TFdUVnQ3RklOTHpOQXJTdlNVMStockJIbFlVYXZrazU5S044QUlOcVZ3eTRGRDUzQTZNNmV6MjR2cUpQVGVaeU1Pb2dUdmxUYjlzYllQVDVGRDZSRnBOU0VIUnJhbUtqWWEyV2J4Z01KU05BR1ZncGF4OC80MGNFNWtyYzZpajVCbTdYdWEreEw1V0pJY3p6V2FXNUxSYkd2SE1TYzlGSFpvcG1ZRGtSQk5MZVBKWVBaQzFEZ1lQbHp0R1BISVBMZ2VLdWR3N2V4cDdKeS9oTjdHN1dqQWFReVlGc05MY2pMb2lMM3JjcUR5dUlERHduYzVmenJHSmkwSEJZMkdXTHg4QmhmZU9JRU56T0RLb1c3OGNGSUo5NTZzT2kveTJoMUZwQlhBU09qUmo5UXNKOGVmNUlERVVSWXJ1YVpHQkNtRG53S1NlYlF4Q09YazhSL3hvZVRSYUMyemphZGVGRzM1a2s0THEzRVl1aTdOZ29oZkM1NFl0a0RrWkNwTFJucGZHVStBS3RyNit1eU84aEFaaWFLUmtMRWhCSlZlNFBzcmlyMDJRUXhHQ2xacVRmSFN6cXpCS3RwMU9mV2dnVUFnUWNkTEFuQzAxb28zSkx3b2h3MmV0bUlvR1VRVndvcEdGWTJHOUVwRFpjUEd3a2lwMCtaTW9UMlVLSGVXWmNjZm83S0RFWFVVTTl3dEhXWVdNV25TSGNiSW5wSStwYUkvWEZHWXhXUVVQMWxOY2Vyejk3ZEpUREJCcHNtSTA2R1JldVdONW9FVDk0eFdGa0tGb1UxV2tlWFRKNzF1cU1tYnhzdDh3Y0MxNjlmd2t6LzhJRTZkZmhYUFBQWjFyTjk3Q0x0dU9RSk16MkpaQVdXWHBLUkVESWNtMldYSGtxcGlyeUpyTlB2WUU0QWVDYWFwUVQxL0ZXKzk4akpPdmZnc3NEU1B6Vk05TlBVb01LdGVEQ1NpUnF1YUJUbldWenVaYmRyMlltVFV2d1JvS1VQZlFQbG54SmtVYkRvdUJhWGxmWmw5NWJKSVRhbFd6bkN3alRwSmdCUHhKcllNbGViMnNIQWZYZFRSQkQ2VG93RU9NeXFObVVIc05xUUErUHNTSmFsWG1mekVKakRxeHR2WXBYT1J2TGVEcC9kQ3pjOFVnbmtVSkdVNGk5VlU2QWJicXVMdDRORGMwdytwQ05mZXlrdGNWWXhVY2lHbHJDTFNIQkRVSmd6bUVGVTBvcWdEaXR2RUc2Z3gxWk53Z1p3R1g1UXl6YmhaczlOcktoRUtUM08yMkY1aEQ1VzEyNVJNRURJc3lLYUxFQzFqaG5LaWFOUjVrS2tsNC9lbTRSZkdtVGFYTnBvR2JZWVpSVWxTcGJBVGFhZ2MvVXh0V2F2OUh1TWlFNE1ZKzN0VDE3V2Y2VWZBeGN0WGNPN01XZXphc3h1Zi92RDlXRnBld3FzdlBZTHZ2M01KVzIrK0RSdjNId1Q2TXdDeGw0VlNhQW1WS04xVk9NZW9pQ0ZvUUNwdzBxQzVmaGxuVHI2Q1V5ODhBMTZaeCt6TU5EWlZqT3NRWEwxOEhSczJiZ0FVcU1WUEkwNE5YRVlnRmVjMHdGenZSQ3RheGJnaGxCTitjWUcydDYzQWluY1pPM1V6dTJLcmRtY1Y1aWF2VEI5cndVZVFsU1VGbnd0T2dTTzJ5L3ZtSEVvOU05eVdiNmZRRlZyV0ZXaVUvWDRLd1VCOEdnRkZjTXRtUmMvbHJsc0toNUx2QmpTZVNLUkZraHdQdVNwK2ZGWTJob3VNcXRMUXo2SEJUc3VESWw1TTRFOElCSnRySlVDQ1VHTWtBY1QyRHRDb2hYd3B3WmtJazlCam9HcFNzUUpITXc5QmMvWUJvOXF5cnNRMFppNVhjcFV4UWFNMHBFUXh3b20xSER4SjlyVHRHSG1XOG1STkVsOHVlclRaREl6UXBIbVFSRmNXWi80WU54djdiNlFsL3h6MS9GWFZ4OFdMbHpGYVhvR3JHQXROZysrOTlpYSs4OXozc2I0Q2JqbDRBQWYyN3NXUDN2Y0R1SEwxS2w3NDF1ZHhtYWV4NzhoeGJOeTlGMU9WdytLbDh6aHo1aDA4OXNpajJMWjFNNlp2T283MVdNR3dYc0U3cjcyTUUwOC9nWVd6YjJEenhnM1kwT3RqUlJxY08zTUdWeGRYc09QQVFReVlRVTBOVnhIT256MkROODlkd1UwY3c1Nk1iWUcxampsamg0aXV5UjBUcFNnK1BqY3EzZHIwWGIzTUpFOHNBK0MybEdGc1d0U1RrRWNGam4yL1JDOG84WG9oR0ZTaEhUY3E4cGdwaTRHQ21hbEt5QUJVSUF6VWphQm1UOEhIRVdVY2pYTjk3Nm1mblJGS2pNNmtzTGFtTFdhazN6aDlSVDBTR1Z0bXc3RHRjRTFpcUErdjV3NU9MMnphTTlSdjVnWUNFVUt0RFdvRmhxcFlxUVdOQXJWa0pGek1adFJBSG5BYXo1UlRld1dNRHFCMEtNclpHQm1qamttUHJXMjRKTEROdldRQ2dJeWZUMTI4dDRTVWlyUlVNQ0xRa3lSNUdFTlNEclltM0ZMbkJKS3gxazVLcGNGb2NuWlZBVEdqM3d6eDFuTlA0SVZIdm81TkE4S3VYYnZRMjNFUXQ5ejdmbHk3Y0I1dnZQUUNYbnpzMjFpdkl4dzRzQnUzMzM0SE5tL2VqSVhGUmJ6d3l1czRmM1VCcDEvOVBnNGR2QWxIRHg3QTdjZU80SE9mLzBzc3VIVTQvL2FiMkRROTVRRytwU1ZjdW5JRlY2OHZZTVB1QTdqei9SL0UzbHVQWWQzc0Jyejg2TGZ3NUY5K0RzSVZkdDF5RkRmZmZSOW1EaHlCY3M4d3FwSkxPUzFSK3drZVdPL1NGSk9NV2EyNTEzYXMyTHYrUmFYWUoxbUJaMnJVdDVHSkdRN2lzMHdYT21aN1FYL2ZZMEtmQ0k2ZFA2M0ptOXZHem0rT3poZ2FoNkt5SCs4ZTJ0Y2JrWkFSU05EaFVPang5NGR4anhrdUFJRk1FWC9oWktxRHRuTkNQRkMvZWZxcVJwRkVmQWhOR1BRcGh0cFM0N0dlYkx4aUpSdEdEalVJTllzSUdpaUdEYkFpaXJwUmpNUjN0c1doNDVuMnlYVk5GSG9nMUtTbDBSRVZqckxqUk1ld0p0V2FhVUpKNTM1b2NqWkRUQ2sxNVZCdVJDSms0d3liVVNBRGRheWwwaXZMa3ZQaWlGUElTdldJVGpoaDdKR29xVXdZNTFTTEJJQnlRdUo3cUxGODVTS3VYcnlJdVYzNzBkKzBPVFJqQ3FwbWlLdG4zc0xKRjU3Rkc4OS9GeHY3d01FRCszRGs4R0ZjblovSHR4NTVBbHUyYnNHaGZYdHcvM3Z1d2wvKzVSZHgrZm9TNnFiR3BZdVhjT0hTSmZRMmJjWFJleC9BbnNOM1lMQjFPMGFCMHFxWWdJV3JXTDU4Q1p1Mjc0VDBwckJZSzVwa0NLcVQ5dmRrVTB1Ym94YXF1OVgzL2pnSGpYWUFvSlp1cjN0Y3RFLzgwZ2NpOXJURThzVEwwQ1ZjSzRQUWdNbjU3anRINkRPOE5wOFlIT2k1S3VyeGd5N1h0V2Q1eDZuYmdXb1ZKZC9JRllmaWhrTTVIc0dWaXdDZ3BnT2FEWnRDNEFBb2F5Y1ZxTFR3VmVPTU1zYlVKallGS0ljWmFxRk5ra1BYV1VEQ1l5cnVBb0FuNnAyRHFxRHMwc0E5UzZIbHAwU2JwQzBXc3c1cTkyZ0ZCV0s2MGNacFJidUpPUXFwWlRnNUtUc1lrNW56bzViNmlhQlY2bWpVY281ZytyTzFSSGVCNk1yL251eTdyZDF0cTR3Z015Y3grcnBuR2lpRGZ3b3REQ3RpZnpzbFBNSmhHUVJzMm9uWmpUc2h4RmdlMW9rMVlYSVk3THdKZCt6YWozcysvQkRtejc2SnQxLzRMdjd0Ny8wQityMGVwamZNUWtRZ1RRZ3ZJbmpqNUVrc2o0YTQ4LzBmd2dlTzM0T3BIWHV4SUE0akpTeXJDK0pPOFJqWDFBWU1kbTNFQWdIYWNCcnRUWEdVdkxIaFRxM2NIYUZWVnZhMWE2S3NZcU5FdFJwQkpZcFJpWlE5RzZoVlNtaUJEZEJZNXoyS295UFRhTGRTc01hd0hhOU5ZU05QZ1g1a0RxUHRnaHF2RjN3ekttUFNVYWhkQzcySTVLN1pKRkpTVU5BbGFtcGhwK0MxNEZHdE5GQTFzZktTRDFRb3BCSFQ5SlN2dVlvejJYTnFrNWQvVmgxSmFmdE1oajhPaXZaSVY0R2pDN0R4RTRnTkdtRmFUeUduTGJ3NEtRK1hORUNMQzM5ekVWbTNHbUp0ZWZCYlh3T1l5YktCdTBtejUxREtUR09QZzVyeFVLU2NGaHpIMFdIYWFwaFNOVTBmbXRZdWgxTEJOZ0RGOUpRMU1oTnRKNWtTQ0NqdzZ6VFJOcXJla2d1cWovcmtBR25naUZBMy9nU1dLSnRXd0ZHRHFnSkd5NHU0ZlA0YzNuN3JOQWJUVTNqcjlOdTRkZE9tTUFtb1FWMlBzR1BIZHB5N2NBRUhiem1NeXl1S3BZWHJHTlJEVk5VMFJnSmo0S0tvRlJpd0JnZG52L3BFY2lRVExxZjdVZ3VKcytLazlIMXFocU9rVE01dzJHRU9va3NZZzgvS2R0d0FBQ0FBU1VSQlZJSGxJaXRkS08wbER4KzIxR1NxNGUwUWxxeTE1enkzT1JqUWRnZDMrcWZtQWozcDE2aHZ5QUVHampCd3dRYlB4YzNQWWNPeUNlWjJlRzdPZHdzU24vTklNSUZyemFiMGF6QmE4bW15ajQraVBBbE5ZRG1JSmltd045QU91NUlvaUQ3VWlIM01DRXJTMGhqZGlEdXNVWHZrU1IyTTBTYjdLQlZsNXRGQnB4RUpHUVBTWmt0MW9vSHNKSTNXNGlTMjZReHBVM1NHYytSb0o2MldacnZROGthMUZuTFJEcFZqODQ4WjllUUNOeDhIT3lEeC9RN0ZjRXkyVFN2YUtsZVRRMkF1TUl4VGNaNVRFTzZMeGs3R1VLWXd3TnBnbWduTjRqVzg5ZXJMT1BIczA3ajFQZS9IM01IYlBNcExncjRNY2VIa3EzamlxVWR4L3VUTG1OdXdIb04rSDFPOUFaZ2RoaXREbkhuN2JTek9YOFc2NlI1Mjd0NkxML3pWMTNEbzhGSGNkL3htREljck9QbllsM0JtV2JIOWx0c3d1M01mUnE2UEdnUkdqYmVlZXhwWDMza0RCMjQ5aW0xN0QwQUc2N0dpN05XWUp0aTMrRFZRQWFwR1czVWZJSXVLVmMwa0pETDVrSmFUaWJQOG5EcWN2cDBIa0I5RDBuaWJBN0IwaCtZVWxLeVRrR1FRTFdUSUhGRDNLdFQ2WHBqamdia3FOT3RFMFZpYzZzdkpJQ1F6VTlUMkJDWmtVMXMxRHNrcGZFZ2dITTFnWCtNY1JrWHZpMkdUUW9DZ0w1MjZvc21Ob0Jpc0h1c0ptNDBiWTA2YlFvWG1GNWdUSitZTm9najFDN0tianRpUjFqNFJyc08wMzlnQlY1dTBQQ3JGTWxiaE5lSGV6Q083dk1RTmxVMDl5aG1mWXJyRnNuZGJ6amVpa0ltRURBMG54ak5PekVZTzRpSmpBcXlxTGNWVVppL0VWRjhjeFMxQnRjYkpVTUlvRTYxV3dkZy9xZUZ4bUIwR3pUS2UrL0ovd0N1UGZ4dHpHOWVqMys5aDY1RzdjZHNQZmd5WHpwekdxZWVmeGl2ZmZSUWJlb3paOWVzeHFtdGN2SFFaQzQzaWpudmZqOUhLRWg3NzZsK2hJbURUaGhuTXJKdkcvRkR3d1U4OWpDdlhydUgweTkvRHprM3JjZXpvRWV6Y3ZnVUxDd3M0Y2VvZHJFelBZY2VoSTVqYnRoVXZQZklOSE4yeEFYMTJPSG42YmN5djI0cWI3LzhvVnJSblFHUzFtWDdMeXorWGF3Mjh2RldpY2lPT0lFc05HNXBCbzNMWXpzUmFQazZCSm0yVkgxb2l2QW94YkVJTTRCcjNmdDVRS1JzTEU0ZFpVQ0ZhNUhrOWZyL2kwSktiVTM4T0RGc0tIbVk4ZW5xMkhTZ2pIMVFDdE1yWExINnkzeDlMYWVwNmpTY3hYZ3dLMVVoRE5EQWdtaDFEbk9lU3gxZWc3bHlNQ0kxYkZaL3hzWXVBUkxUcjFtREJYUVVacTRReFh1S2IzaUF1bXpGSzZQd1RiVm5SU3l0RlFsNG9IUE52enFjL0JhcUV1RHNGSWQxdzVxSXQyYXNkT2R1R0t5VUJqU3JaQWJmSm1FSEoxZ2U1OW5VRkw1TlRaSTVsVFRTa0tJQ3d2QmpZbkdZYSt0Z2RLNXI1ZVR6OTFiL0VMWWNPcHF6aDlBdFA0K1QzbmtGOTdSTFd6MHhqMDZEQzVjdVg4ZWFaYzloNzdFN2M5L0Nuc2VlV3c2ald6WURyRlN3dUx1THlxUk00ZHZoVzdObTlFNjh0S0E1OTRJZlFLSERuUng3Q3VaT3Y0dkduSHNYOE43K0R2VHUyNExaalI3QjF5MVpjdS9ZRzNuejVTVng2NHhTdVR4L0Y5UFFBRHo1d0g3NzkrTFBRMFJEbzlWSnl4bTNVMzVqTXFPbFhZRVVCY0tIRngyZmUzeHJBMm5TclBielVkdGhwT1JZc3pRMHM1dzBXN1hvUzFZS1NOUmd1eTRsakg0VmpEaFpiUU1XTUhqZ01wK0dRdFFUOUMwbDJFbTQ3WEtNOXNEWXlEZGt5aUFvR3hRRFZNVGZSY202VnFHVDhLT3hMT3dxdkdqV1NVcHpzaEJJRURWcldwQnhiR3RPZVl6TVZSaEpyb09ib2pZQ0tuYmFTVkVrVVc1VWtpU0h5RkpNdzdRYzVXa3I4akxFM09rYkE4TE9jbEhOSUd6MzE1OXRPWDRLeElxZUN6eFV5WTVZRnlkZ0RaZ2FCYURrSXROUHRSOVRsdlpVbW9ON2RtVXpVYVdtMUJDWlNlelcwUXRQVVhuQWxIdXh6VEZnZnpGR3ZFT0hVbTI5aGJ0OUJIUC9rUjdIbjF0c3dQYmNWRGZld1FvUVZKVXdOcHJGOS8wRXNubjBEQjI3YWg1c083TWZDWldBUkRvMEE2TTFnOXViYjhNRE50NkdadjRxM1gza0JYM25pRWRSWHorUHd6WWR3L0k0NzhKNDdqK0hxL0FLdXpjOWpZWEVoMktpTDZZZEFhNDUyVjJtSElnVkd4d0EyMVpXdHR0MFN4cE5RTmdXTW9qUURTTDBHQ1dIaWJJYUwyTmhtV1FlU1FxQm1CS2JGM0FrWEpMaEZ5bS9Vc3ZFcFM5TG01NDRSTzRISGFqNlNBbE5LM1lwMnZKR28yRy94SHRtU2d1TGVoSGNxc3ZlM1doRnQrYTNsUW9rcGM5MWFhSlNpNDRxa2k1Q2kvOXlZYWhydXVsak1nZThYaXlVb1NyOHp5cHRIY3dOMU5PMU82cWxTV2FKR0JXaXFwYURUUnJCUGlxT3BNclpweGxScmErYXRvZkRXUW1ldHhqdGJXaW9CWEd1a3Vza3NHZzBkbU1sZ1RMeURiRk0zT0gvMkhOenNIRzUvOElmeDBjTzNZMnJUVmd5cFFnUENTZ2lHVGlsNSt6QVJuS3VTdzA4alFOMVlRVTBQeXdUUTdCYnN2UHY5MlBjRDkySGg4Z1c4ZmVJRi9NbFh2b1hOVTR5Nzc3a0hLb3FtYmtLRGtxUjd6OGJXSGEzcko5TTMwUTBLcllBNjRiNHFKWDJud1lPaTBDYUxrWlM0Y1AxSnViMjl3MUhnRmhvSm9qVys1ZmpqUFdPbFpKTlB4bk92RjZseU1sNFNabjRtV1ZPejZGUWM4VFBOOG1BUkd4ek4zcEpzK3BvRzIrUXBvQzBIcExoTFV4R1I5VFZRVkN0TmJtKzBnZ0dpUEdRejNxZkNiRFBTZDBHMWxPYkZnUXB2OHp3VU1YcWU1ZTQ1RytValhwRDVUMHIxWTdvSk1iV1BwM0JhUEd4dTVCaFpxZkUyTEdKTDhqS1FRbmFhRzVJMHF4WGJhcUFicXNyR0xHTFZ6cjlOMnZ5ckJSclZsc1krS3Njd0FsUng0TTU3OE1CLy9ETllwQjZHeWxqV21Ia1pBQ2swbXNTSlBzUU1jcHhBTFU4SHhzekl0ODk2WTFYR2tCeG9iZ2YyMzdjRHgrNTdBTi81bzkvRjR1SVNYSS9SaE5GbUJRN1NjWWN5UVhiTTE5WkMrWGUvSmtZVlNvbGFoZ2lJZzF1U2Nlck5rNStDOG82MFJSdG5yVDZicnI1WXFyRXB6VGcwSUZXVVI5MlRaY3BpT2EybHA3RTlacEpNbmRTWTZNWVEzUURrY3NjclJXOEtTaTM2S1h1M2xucklyc1B4QUpXa2hnbEJheWlOajVicHREWkFTSWdheVJ6VXVwdG9UcnVpdVVLU3oxSkdxN1d3elBCKzlWdzZzeVdoVG1xQzBPeTBhbWU1cVdZNzBSanAxT0RrYXR5SVk1UzJHSUZxcCtwUFJLUFlqS1d0QURPMUEvMU5Oajh3VWN3eXBsaG9oYXhKdm5QaFZPUGNOaTNCNzc4L3V3WHo2R01rbWNneXZTRjVpQXA1Q3pnUjN5SEhGRTFGYlVwT2lmNnk5dlJFaklZSVEwY1l6RzVDWGRkUWVFWkJqU1czSGZTNTJ2MVpxK0pQVGVTMFJwK0Z1NVBtOGZTeGFhY0t1NUtSRzdGU2p6eFJRVUVtWFg3b3VZK3pMcE96RHNlVE9uQlI0WHZTMytQM2FTazVGMjFwdmd5TGxMR3F0dUE4TTBpYXhtQ2JUTWRvNkJOWW50YXFKa0F3ZVdJR1orM29aVkdwSkd1UFhGOG5zd1ovY3ppNGxyUWZVa2JQeldnc0lwQ0lyd0ZqVjZGbURsTTd5MTJMZHRwby9PRHpIRTF0bDFBcUlsNUs4OG1JVGRJVVg0TVlGekl4TGhnQURROFBhcDFrakpOc2E2ejNhcnJ5QXN3eW81KzE1YUhRWHVlNnFpS09ER1poWmhHcUZsMlJUSVJSUGNTVnk1ZHhkWDRCaHo3NEl4aEZiME55V1NobFowc0VYMzRKTGQvV0hOUGJrUm4vdUZBYUpDZG5pb00yUEhNenUyVTdudnJPWCtIUWdYM1lzbUVXalVpMjJGSzdZYm5WaDdINnlYNGpUWFljeEdLRlJ0RkdqZFBhRGNOcUNNbGZJYzJrSU51QUZTekNOYytnNUdDMUZiKzNJazdhR0RKVzN4TGE2U205cDdTQVBCUnpJOVdNSnhBN2Zqd1BURThyVk8zQWtOUmdaZEo5dGRDbEZsaUxnalAzcnlYaWxBeEJ4RktBbWlrRWEzZlV0TEpmdTZRTEhqMzJ1MnRvcjVYQ0pLZFE3VVJrV0FvNVRQbi9tb1ppV1B0T0xWUmJkczREdFZwOXVtZHFCQzRsSy9tME8xK3VJRkpOUk5aVmt0SVVIS2xWYWhocnB3NU5wVG94enk4OTRwQXpLM01YRkFLcSt0RHBPU3p3Tkk1LzdFSHN2dVVvcHJmdVJoTUxMYzBOc25ubDJmR2VGQnBNbWpCTElHQUNRV2Vna3AyZ21HRDZPWHdHTVJMQ2didnZ4ODU5QjNIdXRlL2ppNDgrZzhWUmpZYys2TXAyWDVQV2RocFRTUXVSalJXNVdHYktLdjdhcEFxaXRqNWNxNHZCa2ZQSXU0aklVNXhoR2YwQVd2aEs1TlFSQWt3TUhHd21YVWtJcWc2RUJrMEF6elcxZkxlSGQ0aDFGbFF5UTh1ejdFalRaQWtwcGcxSm5OU1Zzdk1zSENKaDQwZGd5Z2tkMzFpbXJkU3pVbldsV0FQdDdqc1U0N0VLRjA4N29UVDVPRXVZZEpJOTFGSktwZ0gwQ3pSV28rTzJQUmsxb3FRSWFWdDRpVnFWc3ViaGk1ck1KOVI2RjJWeGIxRDRlYU1GSHd5U3VTZXJ0Mmppck1rbTdiYVUyU2FWUEFpMHhTMUR4NlMySlVkTjFQbEtXaVNwVExMOUJocExydkNkb21qNjYvQjNmdVYvZ09zTlVBZm5PU0UyWmkyYXFKWDBtWkd0dkdPOTJxZ2Y1bEUzTlloNmZzNkJvdXpDVkpTbWx1cXhnMlVGYU9zdTdObTJFd2ZlOXlHTVJpc1ljWldWbzBqT0hDWW5LbHU0eVdhQ3NHNitKcXluR0NIV1ZpQTVRY1E1a3hXN01QekYwM0FjVG4vSGVRTkg1eVVxbG5Rb0M4aG1XSnlIbUJpbklTNW1XVmlRVXMxYURJYXJ5Z2FmNXZUOFFzRmJDdXNNYnFKbUJxVlN5WlpFSUsrY1EycDhDYTArMG5ZNXF2RkxBRkJwa0JwcEdqVEFSWVRSVEVHRytwcGFPQnVaeGdoVG81b3NnWlF6NHB1NjVsQU1TT0E0ZlVWdHBNL2p1dFNrYnlsZVN3NVlKUGtta1MwVnFKMldaN2NnQ2lVS2g0V2NOcXVZZEpOZ1FDMWJCdVhCRTJBMUdCOWxWeUUxNVl0cXAzUEZORWluVFdKdG43TDZwTjA0UzRtSEZpSklieHJEZUFKRm1hNFlWWnVmZTlUaXg1RWNlbUpIbW9xZjRoTnZXYUMvUFZzVGcyRVV6RVJQeHBEdUt3aERWUXdCYURVSUJwWm04MGVKcldxTE1rVUJ6aVZ6bFRqaEtOVGZhazA0NGp3RmpiVzgzL3grR3JWNm15d1hXMjhwR1dSUVZPTlJOcHlMQlg5aWxOaUlMNko5bDluWVJkRGlnS3dMbVJMWmEwZVVtckErMlp2cXRtWVZKak1ZNUpIaW1rQTh5cjBzVVdwdTZ3Yk5IU3Nwc3lBemhVaGI3YzFrV1k1WVFZUkdJbnZUelpiTjNYREdKdGw0ODVnVWw0cTZROUswSDZ2VUlvdlZGTUtkb20wVGVib3VrQ08wbW8xQWFxZXU1bEZmL3YvQ1p1TVlIYW13Q0xQT1BvNUQ2M0ZrRmNJSnkxd0toTlFLUDVCdnFJcGsrMnJrZEZHVnUybTlFVlFsS3lrejd6VEZtOGc3bXo0QlRZK1pDOVVnazhXUGtieHNOU3d3VGlLWERORENaaHhFWVlpazN6QmFOMWk0UG8rVnBTR2tjU0Jwa0gzMHRCaG1rdDhuNDBXRjg0NmgvU2lLcjVTNkhYK3hqRW5qNXluNTZhVnNOOHd3SUxYRE5qVWRIdEVUMzQrZ2gvZkNEeWRzNWNJZ1RNck5OMng4S1poYVZJd0dLVGRsejdvMHprMWJ3ak56bUpXSGpGR0VScjEyanRlbUhicXMzK00rRklTWkN6RkFJOU9ScXBiMXl2MFlkcjFJc1BLbkFHNWJpbFZNaGhYdmYwWFdTcTlJc2RWMHZWSHFvVThMcXBRdG1iUW1vL2t4TW10S3BUVkhQaVZyZGw2Y3FwU01HbTJHSWRsT09iQUpjZncyTWFlZ1JDd0p5QUViT3pPanhZOEtReUJHOFJpWUpmYzlqT0gxclJDRGdtVVZ1YksvWFEzemtZMU5UR2l0Y3FrbFJtZlJhVmcxMDVXVDdKaHl1bHRZWlFHb2JCOUJMb1lLSng1eVBoV3RTTkdEb0w1K0JTOC8vMTA4L3VVdm9qZGN3S3V2dllwbm4zc0dtdzhjUlgvZERMYnUyUS90VFdGRURxSXVqVmV6UTNQSTJISmw5V2YwZnRSRW4rWEw0K0FMV0RadVJSKy9lQS9pUmkxMHVXVG1Qd1IvL3lnY2l5NDcvbmR2eEZFRnE2MlU3c2VtTGp0cTFEQmJ1Zk15Rzdoa1FUNFpHcS90MzJDbis4Wmd4OFhzeU55aDZBOG9pUjZEeVZFcU1GOGFoOFlJbEFSTlVOYXlzc2tRckdtcTZSNUkxdCthY2t4cURUeU9IWTVlOWl5b29zcE5xVzJOZ3BhY01wLyt0ak02Wjd1RU1ya010WnAyUWR6Q2dxbEl1VkhZUXBjdWJsU2lxckIxY2FrVFVUS05TU2lIU21wWWxHSW05VVJ2dmJ6Uk5BK0JoSlM4ZllFRG9CendXSGdXdFBFQ0xhNi9iSkF4cmIvR2h0cCtiNkx5VkR0d3BkcmF1dEMzbThVQ1FPb1IrczB5enI5K0FpOCsvaWllK2M0M1VFR3dibXFBdWMwYmNlVHdyVGh5eTgxNDdiWFg4ZEtYL3hqUDB3RDdqdDJKbmJjY3hkU1dIUmlpRjREYkZqVXN4bjRONUdjTktDVWFWbHVkYTNiQ0RtbW5JN2c3QU1odzg3a3Iwbit2QysvandvUWNEb0dnaWlXQ1pwTk9KVjhNY1NCOU5ZMXROMmFlQnR5bWVGRGtVVkYrallRVFdsdXpMVVJMd3hleFJyRHRjWEpoUWxTVzUwYmhoYUg4aEkzRVBYeGVEcG9IaVdzdFRudFdBem9icCtPb3hPV1ljUVJjTFJ4YUZSWHRVZTNOUG82YzBSSURMQXhHS0NrSTQ4MVNXdzZET29ZTmxEQ0lmRllYbVVYeFB0SnFGUzh4VGpVOTIzR2prSEk1VlRiaGZTMTVNcGtJbjlhMXJFbVNvbHBhbG5TMUMyVXdvRUlWYVR6bDFEWUd0OHdzcWZRcjBER3dZbFovTlJreDRMaVNHK0RLT2Z6SnYvMU52UGpvZHpDN2JnWWJaemRnTUQzbCtXN25BRldzbjVuQzhUdVA0cTY3anVQaXBjdDQ2YVdYOGNRZlBZTE5oMjdEYlIvOFlkU0Q5U0J5UmNPVmtoVFhRNG9VWER2dExVb2QwVTRHcmJvbUhabU9qaEp6NHhhczJaYjkvK0hzemI4dHU4N3kzR2ZPMWV6bTdOTTNWWFdxTDZsS0twVjZPYmFNalkwRmhvQmptZ0FoRFlTYjNKQkF4czIva1p1TU9GeUluUVNJd1U1d0J6YXhNUTRZRExpVEc0Rmt5UzQxVlZMMWZYUGEzZSs5MXByZi9XRjFjNjY5Uzg2SXhtQU1aRW1uempsN3JUbS81bjJmVjltSFJGNGhJNVVFS2wzT1JYTm1kV2FmVFNXM3F0VHBXNkUyb2kzSGQyRU9LeHFKTExUVFpEa0c1V2RzeFAxNWNnZHNjVkVaWmUzd3k1MmlhR3NJWEtSTFozV0hxUkJReEgydmNvMUc3c2pMQTBmeXpZSXErQndleW9CZjdoUXJneXQ3LzJUYjBseFBwK1BMVjViSlJSeGJzWjVJZUoxWUtPYmlGSGxUaFkzMXRYRU1IY1h0Sy9aYVIxbEt3L0ltS05GVTFqR1U1eUJZOEExVkJZVldkTmpLRVF4WEFKOFQvNlV0TVhaVDdSVzJIbHlWMUYvcjloUkxxRklBU3kwK3NqaVZHYVhHWFFFbVlYVG5PcC82algvSDdvMnJyTy9kU3owTXk1c2xpd0ZQa2pnbDBNUVJSc2NzTHJUNG9YZS9nN2NOeDN6eFMxL21wUzk5anNmZit6TkU0UXcyMzF4TklOZks3OWNWallsMTNMbkxWVnQ5cWFxQW5LeThGUkpMQVptM1VhbkMwWWhnak1Mb2xHZ2w5bTRlMTBEb0ZPMVdZcSs5YlhMQW4xWklMa2FLdENESHNWVmNRSG1XWkxiU0UrTXEvNVNsSGhEbHpMNksxdGlRWmo3YXJzUk0xVWdtVUhJcTRXTDlXWnJmZEI3MG8wb2pVeEZMbDVTOENkLzViVTdUbjFaK3lLcUlSMDNzeHl2QWhHSjFkUzl0bTcyZVVsUDBjWG1aWlhEU1c1UWxlbEFHeE9QTkFYTTVqcnRDajdLQ0kweUYzNS8yZlJVMW9aTWdNMzNYNmxZSWFyb2ZIdGZHYVZPRmN5Y2t5bDB6NVZKcWwyOHNqdlJhNXlLZnpJaWlKU0hhdXNNbi91Ty9wWFA3R210NzFsQmFaMmJKc2xzMDl0YkJnaEZHNDRndzhIai8rOTdMRi83WG4vUGlYM3lXUjM3a3A1QmFrMUl6Sjg3UzFwNEpWYjJYeXZvRTFKU0t5bVVzWW0yWUxDaWNYYjFsQ2RMR2dORkNsSE1hc2lnenNwbUIzZk9ML2FXei8xNkptc2lGS0FOaVN5dStPL0FzOFhBMk1rOHMrYjRvTlduOXlwMkpVbEdDV3R4TXNZYU5CVFVuZno0U2NWMk9ua0piWVJ2NVdFMWJRMFp0UDRkU3Bqcjc3dE1yMWcxcVQrVGZSTGRtVzEvdGwxWGxiUGJzWWJaRkRQYzhiYW9obmZaUVRFOVdENnJ5aWRwSmF0YUdJVGRaS0dmUTZJSVh5dGZIZW9qdDBFQkhpbnV2U3FWU0VkbndFVjNraWsvNEt1enRpMk15RkRYMVlISEFMQmhYQnB0UCtEMk5UaUprNXphZitzMS9SMy96Tm10NzkyWU9OVldFdGhRNXFDaEhQNTRTM3cyWXRDcndQSi8zL2RnUDgvay8vWE5lK09JZjhmaVAvWDNpK2l4YWE4VEU3dSs3aUJtelpqZ3kyZjY5dVNiU3ZuaU1wUlJWeFEyc2MyNkFNUml0aVV3MkRNMEdpTEdsT1VGSzM0cm9jdlpUS0UzdHhiWGdNaVB5aXNVQ0E2aThwN2FVY0dKSHpka1hDV1hBYUdHYno5MkdZZ3UwSE9kWmtSS2NDNGwwZHVBcHJad0RVbWRNalJKblVKS3VDMXlmeFVEUUtxc21GTmtROEUxc0tLcDYrZHNDalh5cW4vY3cydDN0Q2hVanpiUmllcUsxY09XN2R2N2F0SHQycW5MZVhTeFU2cFJLMTZ3cVBiVHpSOGowQjFWS0ZGVVpFam1aZUpNK0VGWWFyYndaQnRjYXFsWDJ1T0tNV00xa1Blc3drZE1Id2pjeHFyUEp4ejc0SCtqZXZzSGU5YjJGTWsra2pNRE1zeHUxTmM5UHArWTZ1MkJOOW5ESGFPREgzL3NlL3ZoLy9RWGYrOUxuZU94SGY0YW8xaXlDS2dwWWhTMGVLbVlyK1FHWFREb2diTkJEVWRrWmx4eVM0ZGtLa2IxUXFFaHpKNnBLVkJyamx1QWcxWlN0bk13MzJyWWZwQkpGajNYYmw1K01zZVl3S1FpM0lCUXBsekFvMXNFaFlzdTdzQzJ2MWprakZYR2JGSmtiNGd5UjgwTWdjUkRmdWFxeDVIWmtvQnVSeVUxYm5sNlZIMHUvYy9xT0ZJTUV1NCtzQWhUdGs2Q1lNTHZ6T0dVdG9Zd1NTOGV1cktSYVVGTXM0aUpTU1lpeGQ3NmxDVUtVbWlEcFRhNWlLcmRNMWtocGE2VnBjTFpYcVJ2T0dDc1QwS0w3dW8yTjgxQmg2LzkxS1U1eUJFbTVxVXJwZTFoZHJiMnhEUk1WdTFNV3k3QmliSGRCV1U0TGVJR1BOZ202czhYSGYrUC9aZVBhSmRiV1ZxMEljR09GRHlsTUVqSHE5eUVlc2JZNHo1TlBQTXFKQng5a1pXMlZzRlpMeDRsUzdxK1JoUEVvNGsrKytDWDAyakVlKzlHZkpnNmF4ZVROMkR3N1M0c2h4bXJYWUtMU3MxZkxPWTlDbExMS1lYZC9YZWhTdEZ2UzJ2b1RWYTNhbkQrdnJCVHY2Y29VcXlpMkxqNHEvMjMrUGRycjNNTEFZdytEQ3hDb2NRYlhkdHNqa2lMM2l3UEQ5b05VV0NVTzBjcXFPUFB2UVl1cjJDMk5SYmt1UktIKzI4dDN4YjNzOGg5T1Q2eTAwcGRVVDZSNkZVTVJTOUpwbHpYbHdLV3l4cE1LdWFVTU1DOTdZaU51c1RDMS9MWmZtb3JIVzlrNjZhd0VzL2greFFOcWlYSjAvcEtKVmU1YlVjL2lTSUdya243bENLUk1NY0ZWaFhqRU9ma3JPWDM1ejI0WkNLeGZULzd3bEwrcjhqWkxmd3VlRXJ6T0ZwLzYwSC9nN3VXTHJLd3VGeXRFclJXU3hJd0dmZnE5UHNQT0xwMmRUWWpIdEdvKzYwc0xCSjZpMCsvVFd0N0RRNDg5d1pIangxaGYzOC9jL0R5ZTc2Y3Z1TkwwKzBQKzlFdGZwbkhnQVU0OTh6NGl2MUhHcDZ0U3JaamJ5b3N6TGg5NktWZWlUVGJoRitWbDBBcXY4SzlQeklXTXBlcTBNaHBMQTFLNnFxdHFMNnR1N25MMjdRcVU3VWJHS09WSWFtMUxXWkhUb0dTcXZiUHE5Q3hCdGM1cXgvbnZTNUt2clFMUDJ3NnBoSHZZUTJSVkRnd0xlNDl5MDQxellwYms2MUNGK3ZETGR5WHZYYXFERzh1MU0rV2xxMkNNbUxidnArakhrRkpWSnBWeVNka3JEeVd1Wmx3bWI0dVMxREw1Szg3VVFLVW1VU1JUNjVqSzNGM0s0VzcySkJoYmN5RGkzczYyV3F6SUxiRGE4UExxS3FrTnRxNjdrR1hLUGNZZXBjeFRMRGhFdnY0cVp3L0c3UldGSEZtTG1CaS92OE9uUC9RQmJsdzR5OTYxdFhSdkgwZEV3d0c5emc2ZHJVM0dneTVhaExsV2svblpXV1pubXNTakllc3I4N3pyN1UreXZiUExsWnUzT1gvbEtyZnViR0R3MlhQb1BoNTc4aW1PUDNBL2EzdjNNTk5xMFIrTStPSmZmcDN3NEhGT3ZmUHZNdlJybG9kZHJMQmxWU0dqdSt4RVc3cUN0Ujl3eDdYS0xSdXRqVXF4cy9GeXRhVTRuMFh4a2lyTEtGTnByQ3FUd2ZMUFZ6bUMzZHBtMkcycnN2eDd1ZU14ZTJmY29YTWxsc2QrdnF3VHF2aDVSRmRlUVczTjBhcERSVHVBVXB4bnRWUm15a1R6TEFyVWgxKzVJOWlTeEtyZDBwNUxLR3Y2cmFvOGRhbVl1TVJWdFUwRmFWUnV2eW51ZUxHK2hoMzJnVGhuTVhaTVYzNjdhOUZGNzFaa3llUE02U3I2ZXB4RVd6SzJ1bkxFUlpXUVM2dnFxUDZJeW9IN2xkVk9RUktld0VMZzVCQTRiamo3SnpVV214eEo0ODVOak5mZjVvOS8remM1LzlMekxDOHRNQjRNNmV4dWtnejc2Q1NpWHZNSmxHSnBjWUhaVmdzL2grcHI2TFU3N0ZtYTRVZmUrUlFtaWRQa1loRTYvUUViZDNjNWUvNHFsNjdkSUZhSzFzSUtEenp5Q0k4OThTU05tWGxlZVBrTUM4Y2U0YjRmZUlheEY2WkFpOExFTXNWSTVYVEo5bnhBSElDR3F4dTJZdUJzcXRDRXgxb3hRUjh0MUltNk9tREJnY2hiVllxTExyZmI0c3FWNXd3M3Biam9TcUt6VE9xZmN6dE9QdUJVOWp3cWorcFRGcFEybXpVVmZFSW04K1NzMzFQT0FWUTJScTJZWTdnUHFhOHNqcUtkcGxwSkZjWnU0bTE3WjVtK2EwMnpUU1hMeThvanRsVmdUTmc3M2VUQ1BGZkFxSEtLbjA5MHhaYmFpbktQQzJWUGo5MVpubkxHR1pJVkV4WFJVWDRhSzRvMTBxUmpXRnc5a3RpVGJuSDN4SGxMWUhEOUJQWW13cnBWOGdSais0TVZXOTVicVdVOUV4TU1kL244Ui80THIzejlyekh4a043dHF6Ujh4VnlyeWRMZVJlWmFzd3o2QTJxQm9sRUwwN3hIWStVd1pLR21SYThmUjNoS21LOTV6TzlmNU9qK0ZjNWQyc1BNL0JLMzd0emx5cG52OHRtWC9nYlJOV3B6Uzh6ZHZFRTA3dkhJRC8wRVBWM0g2T3dtdHAxKytVNmFjdDZSdzEzTG4wdVhuNmx6UnFwS0gyMlBUcFV6MENuc1ZXSTVLdFNVREFiN29CQnhnNXRFS3RlVUt3aDBGSjdpaXBtTU1taVR0dEhwTzVjUDgwcGxxdGpiR3ltM0dtSkY1dVVHVzVON0l3b0RuQlJiQ1kyMitMajVvRkE3OG1NbklVbEs4WnBTZ2s5aURkMEsyNmx5ZmZkVE8yNXJhR01QcGNVMThKU3RUdm5EcGlFRjF0Y3cxczFyWktJazF2WWJiRVY2NWFldlExNVJLWWZBVG5FVlZRN003SDJ2c3FhaVpjcFFmdnVveXVtdUhPbHhxWmtTNTViUFQyaXh5dzdyWVZPVnRXUVpXbVlOSHlzV1dPY0VNM2w1bWFDMVJ5QVJ5ZFpOUHYreEQvUGlYL3d4QWNMeXdoenpzeXZNMUdzRWZqck5iN2M3MUVLZlJoaGt2TDdLZWszeU9HdEtzR3NCbUZSb2xYRGt3QnFYcnQvaUxZOGU0MjJQbjZEVEgzUHI3allYTDEvanpya1grYzZGbDltOWVZTjMvdXd2TW1yT0UyVlZST0Y0RmJ0Nnc3cng3ZXJLN1ljbmhuTE9HZXhXQWlxTFkwMHRBbUxKamRWRW0xcmxOaXJMd0Y4U0JxMkRpMmxCWWxVWnVQVlpaYk1QOGNwblg5bUdQa3R1UnE1TXJSUVhoWWtwUDBRcTQzSHRiSWlzb2xFWmk4R0lZK3JLWlk3RkVQQjNUOThWV3dHbEZXOHFnSFVVWjRJVHdYVVByRVY1eTFsdGdzTXhzVExvRlhhTTVMMzJ4Ry8rSjZydis5MThuMzlmV1JMZnFrYktpT3M3c045VHBSeDVMNVpvUlZYV2Z5NElVNXdVRXhzV0t0WTZTeXhpalVoRWk1aHp6MytEVDMvb0E0enUzbVR2OGdLcnkvUDQydUxPR1dGcnAwTTlESm1iYTZiWUNldjNuYStSMnUwMnF3c3p2UGNIbjhURTQyenVrT2s1c3Y3VEFMM2htT3MzTm5qNDVBTm9MOVhmRzlGMGUyUE92SEdCMTg1ZEpqeHdrdmY4NHE4eWYrd2grdUk3UStHaU5IVWNER0sxUzkrZkRsUWtXanZOckRndkFGbFVmWkh4THZrTE05bGFWVGJjR1d1L1lqQXA5MUQzZ01PNDA3TmlkNU1mUUZaYlVjMHh1TGZzZnZKSkxvb2ttY3hXRlN6MHVhbys5Um9Yb3BjZFJoLyszdDJpSXArVTZTaUw3MVpkcDl4THJTc1ZjNDZ5WHBUS3kyQWJZL0pkcWtnNWVSVXBGRXpsaVZ2Mk5UWlZ0dHhmNXpwODR3Nk9zcTlwUk56SnZWTDNrS1ZVYVlOTTNGQk1pR0RMR2NVMHhwMnkra2ZiVG0wRFFNU3V3Q1JsL2hXclBxMVQvbnd5SnRxNnlWYy8vVEcrK2RtUE1WY1BPSEpnSC9Vd1NMbUFxZ1NuYm02MzhaVmlZYTZGNTVWUjFNVkJuTG4yZHJkMzJiYzh4elB2ZkFLSlJ5VlhVZXRpSFpvdStUemFNelBZaHdBQUlBQkpSRUZVdlJIYk94MU8zSDhraXdUTERpWlBjL1htSnQvOG01ZG9SejZuZnVJZmNlcVo5OEhzQ2xFdTRoRzNoc3hKT25aS2s3SlhkcFYrbkNrS0VGdERKWlVXU1NyN1o1WGQ3MVlqNHJ3bXhybUpiUmVwVk5CZDR1Z1p5MjlUcGduZG5XZFFKa2JZOTA2MlZsVkZxZFAwVk5lYTJiK2Q4U255b0oxYzhEU1JoNkpBZmZoN0c2S1VUSXprcEloTG1peDNsTVhSdTdkRmhxazNvRFAyc3o5Y0c3dHRhYTBkdDlnOUdoSjdGVkp1VnFRTUU3SDU5TmppR3V2d21ZYWhjdnpicm5GRDZSTGJQUGw4V3A1dGE2T25yUDI3V0x0anljeEk5czBqbHFTM21PYUtvUzVqYnJ6eUFuL3dvUTh3dW5tSmxZVVcrOVpXMDFtSktRL3J4TURXVGdkQnNkQnE0cVdKSm5nWktDTTJodUY0ektEWHh5UnBRTnlCdmNzY09iaEdwOU5oWldtQnhia1c5VVl0SzZ3TldudnAzdG56MkdyMzZYVzdIRHQ2Q0NWSnNmSVRyZWtOSTU3L3pxdGN2bjZYOE5CRHZQc2Yvd3RhaHg5a3FNS2liQzArUzhHNUhYTWtXZFZFVmIybFJkTGtLcW1vVm0wTlNFNi9GVWZ5TGFnM3lTZVE2bURIK1h5Vlc3VllYOG1JWGZrWlM4aEQxcE5MNGFGMHpyV3M3U3h0MU9WV0kyZERwZTJlZGw1aWx4Nm9pc3BGSzQzVzVjekNtREpFdFp4WFc1L0JoMDl2U2o2QWNmcHlSM2V0Q2tsaXVWdWZGSEdJbzBZcVN5bmI0REpoclZVbHNMRGFpNlhmcUxFTU5yYUMwQzJpY3BweFhxNksyRUlLTTEyK2E0c2s3Sy92NkViRTJyZi83OEVySGU0L1piaUlrRmpDRFZWbC9GZ1BzeW04L2ZsRDZ5dEJkN2I1Nm1jL3lkYys4MUhxa25ENHdGN21Xek9aM2lBcGlNcGlGTHZ0SG5FaXpNM09GTHVTS0U0WURnZEVveEZhSzJyMWtKbG1nOEFQNmZWNkxMWnF2UHZweDdoNjdScWRkby91WUlUeUZHc3J5eXd0enJFdzE2SVcraWs1MlBPNGVXc0RFZUhBK2hwS1RCYStxUXJtM1lYTE4zbnVwVmZvcWdhbmZ2d1hlT0pIM3Mrd05vdFJmdmtxMmFSY3dmR3hpN0V2bmJLQ3czNmhWV21veWVXNVVvVFNsbUd5eHQ3N1Y0UTNGSFpnWGVvRmJYeTRvbUJhaUQxQUZsMUkzc1dLOWJhelM0b0RMWDhIdENvMS84NmEyRDZneXVySVpJTzhBZ3F1MHZtUFdCb0xWeTJZMDRyRnFVN3luMUhFQlpHckQ1L09Ld0EzS0NGZi96dVh0WDNuT3ZubzF0ODdnMVZ4YkxoT0syRGJjKzlSNVluVEg1Y1VtT3czV1lJMk1uUlRYdDdubTQwY2QyMGN0Wld5aUN6NUdqM2ZIVnU0c3h4b3FaVXp4TXUvVnJYMWtJbklhN0htd2xKQ0hiSHlGb3A1c0RWeHpnNDlsZWtOdE5MVVpNVGROMDd6QngvOGoyeWVmNFhsdVJrT3JlL0I4NlMwa2xvZFhydmRKNDROelVhRDRXakllRGdtaXVOVURhbGhlV0dlTUV4VGhOTEt3N0RiNlREWHFQRys5N3dWRTQrSm9vVEJhRXh2T0tUYkhkRHVkaG1PeGl3dkxiRzh2TURTL0R6TlpvdkwxMjZtZ2FJcjgwQmNUcGl6bk9wT2I4eXp6NS9tOW1hUHh0RkgrT0ZmK2xjMER4eG5ySU5DRlZ0Y0VpTHU3M0ZDNWxHK05FN0ZWTkNleW8ySkFpdm5JcVB0V0ZrU250YVlKQ2s4REtJa2N3OW1RYlhpYWsweVpYU211WGZOU2xwWm5reDdTRjBFZkJpM2ZiYm5vQ1pGMHhXeGNGazdaSkJzbHFPTGFzZllDVW1WYlozSm8rbnlGU05KeWd3b3dsSEt6WlhKSEllaVREb0VkUGVhV0FHRE9STGFGVUZvNjVNeFlndXlWS1dzS2xjZCtXa0dVMENGdkhtYURsWjFNZTMrZFFpOGxVbnB2WkRlUlN1aVNrYTZIUjFsUkNibUdKTjk2cjMvTWtWUWFmcW5lVXBuWlo2cDJHRlZkbk9yb2xSSWZ6OEpQb0kvN1BMdEwvd1JmL3JSRDlFazRkRCtQU3d2ekRucHlibWplelFlMCt1UDZIWjYxR3BwdVYwTGZRSS9RR21QM1hhSDVlVTVmSzBjZUlxSTBHNTNtWjJwOGY1bjNvcUtod1ZjVldzTnlzT2d1SExqRHNQaG1NRFg5SHJwSVRNek8wZW4zZWFCRThkWW1LMm5aTjQ4V2s3cnpCSG44ZXE1cTd6d3lodEU0U3cvOEE5K2hlUHYrQkVHWG8xRXZFS2lMZFptd2w2MXVUSng2NkdYa21lWTBXYUwyOUNyUUZYbEhrUGc2dml1YklkVmhYWlZwbGRYNVlRNVpOU09LSGZTTnZNcXdFcUZ0cUU0UnRMbkF5dXdYRElQQmhhU1RhWjh6N3FBeEtSOFI1T3hBRlNoVWpRV0VjdXEwbk93eWtkZTNuRGoyeXhpYkk1ZnNsc0RzZnA1bFFVVkdFZFRWVlZ3VmRTRFZxbGlRejdmZEg1Zm9lQzRRWTZXSU05cEw1UXI3cklPbmh4SG5xUEpSU2FSNHJrM1c0cEVGdXRCbk43NFQzais3UldscXE2UE1uK0FGRi9kUTNucGVNcFRRc3VEcmZPdjhza1Bmb0JycDU5anNkbmcwUDY5MUVLdjBMK0pDTVB4aUc1dnlLQS9SQ3RGdlZhalh2T3BCd0YrNEJVdjBkM05IV2JuWmdnQzN4MHVaUS9yYnFmSFhEUGdKNTk1R3BKK1FTaEtzVnZwMTlGK3dPblgzbURmbmozTU5oc00rajEyZXoxMjJ6M2E3UzZJWVhGNWdUMHJLeXpPdDZqNVBpSng5cEo2YkhhR2ZPdjVsMmtQWWxZZWVRZnYvdmxmeGw4OXhOQjR4QTZadWdyeUVDZEpPRjhCaXJMRmFmbG5wTXNMU2U3dE5aMldIS0VzY1YrK0owOGt0MWpqMEpwc1Fab2RRRlBNR3l5eVVBN2xvQWpZczQwb21oSWdwaHlhYjNrSU1zWC9VbTVCcERwUUxMYlN5am5RVkdYdUpRTHFvOVlCa0tmL09mRFBBclFoeFl0ZWlwSHNtS1BxdEY4N1lSaTJtcmhhQVV6VC96bXJNbWNJb0w3UEl0QTk2Vlh4YTdaeEZHWC82UVE0NUw5c3hkU0Y0ZmZaZjVRSG5JVkJWMHFjclljb1hKbXJzdFkwV29FWk15c3gzLzN5bi9GSEgvb0EzcWpEK3A0VmxoZm5FQU5SWWhnTWgzUzdmU1NKOFlPQWVyMU9QZkFKZkIvUFU5bkFyelJXYlc3dDBHek9FQWFlRTlOdHd5bmIzVDV6RFkvM1AvTldKQnFpUFQvOTNyV1hjZncwU210aUF5Ky8raG9QUDNpQ2VwaENKMGRSVEw4M1lMZlRaYnZkcHRNZEVrY3g4L056N0ZsYllubGhqa2F6bHJaQkt1RE0rY3VjZWVNeTQvb2lULy84LzgzaHQ3eVRObUdxYU16RkxBSW1rOVVxWmJFUHJHRFk0aWF6ZlBtb3lYaEpaNmtzNVZDc1ZIQkxHZENoeXVkQzR3SlZqZVZZVkJQUG9VdzhnRkpBVkNsUlJjNHcwUTBBVXhiV200bnV4NlpxNThYaTVDTFFmdEx0cTBaVkZhZjVQLy9JeXh2eS9iYnE1ZW1ZQjJtVVZCUmwrYjZON1lSQ0tuTUQrZDhxblNmWElKTjBISERSMGk1VGZwckV1SElzMkQzWVBVZzJXSzVDZXcwa3RqM2FPc2pLVTdRc0VYTTBscXE0Q2NYcTFDUUxyd0FJU2VoY1A4L25QL0piWEhqdXl6UURqMFByKy9BMGRIdDl1dDArQnFGZXJ4Y2lIOS96MDlXZUtqK2pnbXl0Tkx1ZExwN25NZE5za0poOFdKZ0Z0MmhOWWhLR294R2RkcGQ5eS9PODk1MlBJeWFtMGFobkRIM3RvQmVVMWd5R01XKzg4UVlQbnp4QjRCbE1ZcktnVjBPY0NQM0JrRzV2eUU2M1I2ODNvRDhjVUc4MDJMKytsejNMeTh6Tno3RzEzZVc1NTE5aXF4K3g5dmk3ZU1mUC9DSnFjUzhENDFrdlNKNHhVVzV6Yk91RkxhQXAzWEtaNDFMMHBLT3oxQ1E1QkNLN2ZkUlZoMEVoU3RORitWK21YbW9MNlM3T2RWd0trL0tLTXJ2dEZVNDRwN0tsc0tqcWw1a1FxRks1M0ZRV0U2ZXF6L0tFT21qNkJhWSttaDBBRTBYN2xJcmNMWmNLUk1Ha3JsNWNyNFE0cTBWdGtickxFWmlhd0VHcHlnOHJieW9DS3JYMHhxVytGT2txMDFjLzkwcWx0VGNneWlLdktpa3ArM1kzSURJZDFhbW5IRU8yR0NQZGdjZlVreUZudi8wVi91aTNmZ042Mjh6VVFtWmJMYUp4T3NEemdKV1Z4ZXhsMTBVS1RpR2d5dUt2OG0vTlU1cnVZRVFTeDh6UHR6REdrSWdtTWpHalVVeC9PS0xmN3hQSE1iVmFEUzJ3ZDJXT0p4NjZuNHNYenROc05WbFpXV0psY1lIV1REUEZSeXRKY3dTVVpyZmQ1OHExYTV3OGZnUWxzWVVvczFkeGlsRVVNWW9TZW9NeG5VNlgzZDBPdmgreXRyWk1hMjZlY3hldWN2MzJCbEZ6aFhmL2sxOWx6OE52b2EvcXhXeEpTZFdoSnk1WUxOUExsc28zK3dtMUNpR21sMjlTZFdOWUVXWmlsZVpNdEExU0dMZVVreDBwbHJLK1lrbXZNS0FtMzFRMXdaMFFoNFl0cFZNVVZRR295ajJleFRkL29kWHZuZDRRSnpRRE53cXJ2TE4wNWVWM3M4eVVwZUtkV1BmbGF4RHJlTXZYTGtVeWluV2lPdCtxc2xlU2xkSkhWWVJMVXFFWVNWbDZDWlpjVjFWU2ptM1d1OGlrVXRDeUowK3hlUlNQbWowQkZrYzlscGVQeG9rdFZ3ZzFETkhkcS96eFIvNHJyMy9yeStoa3pPSnNpL25XRExWYXlIZ2NzYlBiWm4zUENscExzZTh0UFFWbFlFY3g3RVV6am1LR3d4RUw4N05FU2NKZ09LYmJHOURwOXZBRG4xcXRScU1XRUFRZVFSRFE2dzVvTlR4KzdGMXZwZHZlWWJ2VFpYZTN5NkEvUUNsWVhsbG1aWG1KcFlVV3pWcUlVbkR0eGgxMmRuWjQ0TmgrVUhHeHRiRHVwMUpNcEFNU01Zd2o0ZHpGcXhnRGZzMWplMnVIbmQwdS9XSEVXSWNjZmVkUDhKYjMvUUxKN0FxUjhncEpkd0VIUlNhOUcxVEJuWFlBbWFzcVZmZDZOWlFxdGpIS0N1RW95Lyt5blRDU0F6ZU1Ld2VXY2dCY0VaQTdyYUJVc08yMk5yOGNIT29TNzFhcGVFdlVqa0pYYm41Vlhkbmh2aE5LM0pnOTlidW5OeVV2YzRUcVByN3NaZDFPUDN1WUsxU2YwdmRQQ2NaVUt0V2VaMnM3eWZlbkdUSmNUUmtDaUoyS01nMFJKN2FUM25FVFpmK2J6cWFmVXI0WVloVkIxckN6Q0tWd2hrYnB4RmJuS3ptTFkyR0tWRmtwUkU2U3R5Y1dGQ1hYRGVTSjVtay9tQlEvWnhoNEJQR0lDMy83TEovKzRML0g3TnhocnRWa3ovSXl0ZEJES2FIYjdiUFQyV1hmbmoxb0tkZUY5a2FrUEtEU0E5cFRQdU00Wm5Oem16QU1HWStIV2FaY1FCVEhMQzdPRW5vKzJsUDR2bGZNWm5aMnVyUWFQai81dzArakpBYXRpV01ZRGtaczczYTVkT1U2elprR3cwR1haclBCd3NJOGl3dnozTjNZb2hsNkhGeGZRYXRzMjVIL0hyUjJWNnNvbFBZdytKeCs1U3dMaTR1c0xTOHdIQXpaMm1sei92SjF0cnNEOVBJaDN2VlBmbzNWQng1bjZOZUlvbEpmWDBJN2RmYWhsQVY1YVpzb3N3WnR4THJkaG9yemNtWTdlK3ZpVUJhajBPUVRjeWRmMGJxSnMvWkhLVlVweFcwY2x4UU9QMk5KY2d2SmtwUVc5ZlM2OEVvZG9iYUNTVlJPSThxNEZWYXlsTmppSkR0aVhKa3lrcy9aSVNqVTc3MnlLYVZFVmhVbmpySmU1TktQWG5FSDVvbThkdlNWTmk1WHNGTHBGRkFJcStRdmR1dFlmRHBia0tSd3RnZGxjVlpXRzdtcVNteTZxNWFNbjM0UGZiVzFROWVGNk1nNndMU3RXTXRlZG1VTis0cGZ0TEdLdTZ4Zk5KbnBLVW4zdk1VS3lSZ0NTVWkyYi9HWGYvajdQUCtGVHpQaksvYnRXV0d1MVV6anFMUml0emVrMStteWQ4OUtZUVdWZ2lGZjlxUUtqUkVZUmpIRHdZaEJydzlBclJaU0MzM3FZUTAvOU5uZWFiTzRNSS92NXdJdDVhdzVkOXNkV3ZXQTl6L3pOcFJFeGJSYW8wSDdYTDUrQyszN3JDM1BzNzIxemNibU5uZTN0aG1QSTVTQ2d3Y1BzR2RsbnJtWkJtRVlGSm1ERTZRMDVhR1ZSeXpDNlZkZVoyYW15YkdEZTR1c2hzczM3M0w2MVhNTXFISGltWi9ta1IvNUtZYU5SWXpuTzlIb1NyVGJWQlZ1eTVMU0xOYUsybjdHM0xGWkR2UFViaU9yS3QrNHJseXN4WmxraDdDcU1rWExXZ3ZtTHR6aUNWRWw2dHpPbHloUmM2N3pLUDE1eXhDVXZBMG9yZFdLUXZ1TGNxMzRsaWxORlcyNFYwU3RxWSs4c2luVlVrR1JCMmphbGw3SnZnRTFBVGNvWHRDY1E1YjltYWFJNEM2bHJ3WCsybHF6aXRqOUY1aGNBYVlzYTdGamdKQXMyNlhzMDh1dlU4YUdGKy9qVktoeFJlR2t5akpUMlZ3Qkt3aXp5QW9VVzVacytTVUtQbjYyeHkxMnNjVy95UXd4Vjc3M3QzenNOLzR0L1p1WG1HL1VPYkJ2bGNEM0MvbDF1emVnMXh0eVlOOWFJV1kxeFQ0OHZWWEhjY0p3TkU2SGJJTUJXbnVFUVVBajlHazA2dFFDSHovMDBHanVibXd6Tjlja0NJTTBiMC95bTZFczBUdWRIck4xbjU5NDVtMFFqOG8rUGhlNWVENHZ2L282aHcvc1k3WlpLd1ordmY2UTdYYUhyYTFkMnQwdTJ2TllXVmxpMzk1Vmx1Wm5VL3k0U0ZZdTI0ZW5JVEdLMDY5ZllxWmU0NzdEKzlES29EeE5iNWp3M2ROdmNIdXJqYmZ2T08vNmgvK0toV01QMFJVUEl5cUxkTThPZTJXWnpFU0Q1ZVhEcVpNczRjN0V6RXVzcGt5S0ZyV00xM1puVS9tRm83UE15anl5dllDcEluaFpBSzBEaExINUJkcTJkK01nNFNlSUdHb0tqVG9QVUozYXIwcTVvaXk0QW1YUXJTMlJWeCsxRGdBcUhneXE5SkI4TjU0cjdxeXBxaFBkWEF4SXJMODN5bG1mR050dllTaWltd3Bacm1MQ0xlaTJnSGJpQ21WV20wM2NNVGEyekpJY1Y5Rmt6cWl5OUNLSXM3NHJjVTZscWxIaC9tRVY1bFFSYXFud0pDYm9idkZYbi80NDMvcmNKd25NbUQyclM4ek5Odkh5UDB0NWJHenRNaDZOMmI5dlQ1RkFnMHJWYWFOeFJMOC9wTmZ2a3lRSnRUQWtERHhxWVIzUDkvQURIeitMNHNwQm5SdWJPOHcwRzh6T05MSU5nT3NrVTFyamVUN3Rkb2U1ZXNDUHYrZXRKRkdVeXBheEVIQktFY1h3NHZkZTV0R0hqbFB6N2RsSU9oMkpEUFNIRVZzN3UyeHViekVZREpsdHpyQm5iWVdscFFWbVc5blBta1RGUURnV3hTdG5MekV6MCtUNGtYMW9uVU5EQXk1ZHU4WHAxOTVnb0pxY2ZPL1BjL0tIL2k2RDJpekdDN0tMVXFlRnNpWDdMdllINGhxd0p2TWMxRFFreVVUZ2w1RksxSGZWQ2c4T1RLU1U4cFNZZVhjQmx3MHg4N3kvZkY5Z2s0RW52cGUwbW5WU0pZejE5bWNTWCswNlk4cGlYMHlCTUN0VHI3TkQ0Yisvc2luRytoaU5CZFlVTlVYS2F4MVBKUkZlS3NSZ0thT1JWS2JMdHNyMnFjWWVlOWRmVFFXeWZyR3UybFljUUZ2NUN5WGp3Z2tUd0pncEdnZG54Rkt3NUV0RXRGUWZsK0lBMHJaUDJQcVlWY0dvMHdycU11YnE2UmY0MUcvK2U0YTNMak1UK3V6ZnMwSVFlS25IQWtCNTNObmNCcVZZWFY1RXhCREhxUnkzUCtnekdvNEpmSjlhV0tOVzh3bkRkTy92ZXhZSnlRNVlGYzNtOWc2K3IxbGVYSENvTDZJVWNXS0lvNFQrWUVnMEhpRnh3c0c5S3p4KzhoalhidHhnWVhHQnBjVTVtczBHbmlZTEM0V2Qvb2dMRnk3ejJFUDM0U21EMW42MkZzNHFDcVZSMmlOQjBlMFA2WFFIYkcxc3NyRzFoUjhFTEMwdHNMd3d6OEpjazBZdHlHUzRIdWN2WDZmWnFIUGs0SjdNeTVFQW1uWi96SXVuWDJkanQ0OS80QUhlK1EvK09hM0RKeGtScHZGallncENjS0VVek9jbDlnT1BtNXZuT0wrVktnbkR0dERJMmcrcXJPcHcwcS9GTlNyWlZHUXBMakpyZEZmSkd5d3dZbzZ0WGtyS2RNVzhKUGx6VnBpQ3RITTVGbXRseXJrRkU4NVVOOTFiZmVUVmpkU0xaTnZWY3YrTXJrelhxK3VMZkUwbVJlS1lsUk1vMW1ySVVNMzhzTDltOFVjYjVmRFdwSkNGWnU0NjVZSWszQVFYSzlaY1ZLWUlTeHp5VGw2dU82NXpLUU5DN2VpdGFkcUUvRnNzdjM4Yis1d1pRakwzbmlaaEp2Q1I5alpmK2V3bitQS25mbzhHQ1h0V0ZsbWNuODAyQW5uOE50elozTUVJekxhYTlQc0RldjArWW9SNkxhVFJxRk1QYTlSRGphODl0T2VsV204cFVVKzJHUVU4TnJkM1FXQjVhWjdjZnhKRkVmM2hnTUZvVEJ3bk5NTWE5WHI2Zjhsb3hFS3J3VHZmK2pDWHJseGhwOU9uMisyUkpERno4L09zTE0yenREREhUTFBCeG5hYlFhL0hzWU5yYVR2bVdmRnJ5dlkwNk9LMTI5cnRjZXZ1TmpPdEdUWTI3ckRiM3FWZXE3TjNiWVc5cXl1MDVscmN2ck5GRUhpc3J5MWhraGlSTkc4Z01acHpGNjV4OXNKVmhsNlR4Mzd5bi9MQU8zK012dGNrY1N3c3FSRk1aNzlibHp4cExXZXRBSTJDMVdoUmhLYnFVbXlvVU42TFo2WW5yOERCbVVJeG1Ec0FsWGFsNmdXelVGc0JNTlhvY1NxU1JmdXdxTmlQRGVLQVA3VkZuaTRDUjdNSWQ2VnNIVXphSHFpUHZIYTNYRjVaYmlZbkZGUXM0Sko5M0ZIaEVhSUtIWXpDVFNjdGhoV1o4Y1pPRmMvN2xSSWJOWmtNZzRnVGp1bEk5S3V5SDBVUisxMzloWW96Z0ZRVjJveVVTU3lxMUJTQXFxaXh4RWxiTGRSaWhkazNvU0V4ZDgrK3pLZis4Nit6ZWY0VkZsdnB3MTd6ZGZGekpRSnhuSEIzWTR0dXYwOFkrdmhlUUwzV1lEUWFzcnc0VHhob2ZDOUlMWjZaajhCWXYxRVJOMWtQRk5zN1hRYmppT1dGQmZxRFBvUEJnQ2lLQ0dzK2pYcWRlaGhTQ3dKQzN5dENSUHJkSHJQTkdqLzY3cmN3Nkhmb0Q4WU1oaVA2L1JHOTRaQjJ0MDkvTUFDRTVlVVZPdTAyeDQ4ZFl0L3FJcDZYeDArNWZKT2lQRExwSjNUanpoWmhXR2QxYVpZNGlXbjNCN1RiWGJaMzJvekdRNWFXOWhESEVmY2RQY0Q4VENPOTBVeUNxUFNBMjJrUCtPNnI1OWhvRDFrNCtWYmUvck8vVExCMmlCRytVNmNybXlPWi8vbTZ1ajR0bjdQeXpsR3VvS2ZpMXRlVytrVXNvbGxaYkVnNVRKU3E5WjJDa1ZnTXJjVkZkYXA3VUd1cWtuYVZJY0ltMHFlcVRseXByZ2tub1NUcW8yYzJ4QzU1eWhVY2xZQUhKajM4dHVCUTdpRTJxSEwxS2dESTBwaWdYQ2FBM2JVcE8yVEJWbkM1a2t3WCtGa2wrenF6eEZLYkxhWEF4eUVlS2VzbEkyT3NZeDlBN2pCVVpiMitWb0kvNnZDZHYvZ1R2dkI3SDhJZmoxaGZXMlpoYmdZMG1FUVlqU002dlI2OS9oQmZhOExBcDE0UENXc2hudkxaM3Q1bGFXbUJ3TGZTWDVWdHVMSnNvRm5SbHdpTW9waHVyOC8yMWc2ZTc2TVUxSUtRV2kwbzVnV0JuMEpGOG9NMi81cUQvcEJtM2VmSDN2VVV5YWliRVFEU0V6NDJaTjl6bjkxT2orRmdSQlRIakVZamZOOWp6OW9LcTZ2TExNdzB5MkdtQ0VKU1NxT053WWppNHRWYnJLMHRNejlUejNRTENyUlBuQ1JwdTdDOXk5YjJOb0ppWldtUjVhVlo1bVpucVBtcFREZ1N4ZXNYcnZMNithdkV6V1hlOHRPL3pQR24zME5iaFNUb2REc2dDYUxkU1hrVmVJdTEvclAxcnE3ajN3M3RxYTZrQlNiQW8vWVhWWlprbm9LR1pZZnVsSzJ6MkdTdEtwdWcwaks3TTdGSnVYeVpwcXlzZDArY2pJN2lMZm5vMlExbjY1RlRaL09UekZReVFjcWYxZFlFU0psaVU1Z2pyTnZZYXJncUt3ZlgwT1BJS0N2OXYzTmlWMEl3cTFBUnBiaG5QV1dwMU93cHBwSUpjS3N6QU5WU2tLWW1UQ1ZnVU1aUVYwTDcybmsrOHpzZjVQcEwzODcyNDNzQlE3YzNvRDhZRWtkamZNK2pYZzlwTkJycHRONUxmOWRSYkxpN3VjUHk4Z0toNXhXajBpSjBRcWxpblNSbzRzU2tsdDFlai81d2lGS2FlcTFHemZjSnd3RFAwL2llUm10ZHJPWEVXb2VsR29YMDYzWjdmWnExZ0I5LzE1TkkxQzltUU9MTTFWVksvRVV4SG8zbzlVZDBzcUhrWU5nbmlSSmFyVmxXTTM1QXMxNUxlL2treVo0TlEyTGd3cFViSER0eWtHYk5KK2ZVU1RiU1M1TnNGZjNCbUsydGJXN2R2VXUzMjJPMk5jTytQV3VzTGkvUWFyWFkyR3p6dHkrY3BvOW05ZFFQOFBUZi95V1MrVDBrWHVqbUU2akpGMHBWc1Z5cW1vbnI4dm5rbmdMVU1sNGM1ZEtNeEVydExXLzh5bzFlQlFzcjVWS09WVVUzS0pVZ1ZsWFJoRlRYOWNiMVBMamhKcWtvVFgzMHpGMVJUbFM5NVZtdS9tS2N2MWM0QUZIbFp0b3JhMUlvVWprSW1JSmZsaWttQUZ5YmxuTFllYTdZWW9wZmNpTFRWRXR1MHNYVmo5dlRXbFVaRURrbC9xU00wd3NEa3ZHUVpqTGt4Yi8rTXo3N08vOEpCaDFDclppZmJURWFEakZKVEwxV285bEkrKzB3Q0FnOVRRcU5UWHV4VVp4dysrNG15eXZMaEw0dWVRS2lzZ010N1Jlak9HSTRHTkx0RDBtTW9aYVg4NkZQR0hoNHhRdHYyMU16cUl0MU9LZmhtWGxicCtuMit0UUNqNy8zek5zZ0hxU0NsU1F1aDlES3dsRjVYakc0RkZHTXhtTzZnd0dkN29CdXQ4OWdNS1EvR0lKU3JDd3RzYmd3ejhKOGkzcm9GV3ZhUzFldWNmOTlSd2kwWkxNYWxVYTVxM0tnYVV3YVh6R01oWjJkTGhzYlcrenM3bEJ2MUZsYlhhTTVNOHZsSzFmWjJ1MFNOWmQ0MjgvL2MvWSs5RFo2dWdhQmo0bGpHOG8xU1F3WHgvR2IzZ2U2akoxd3NIQldOYUVxSVRkaXpRYlMvcDl5Qzhiazh6UVJYV1E1REcwNnQ3RnZkMVdHNGtvVlR5ZjN3SEdweXNCZVRWYjI2cisvdGlGT2twOFJ4Rk5XZ291YVBMYXNuRHVWQVNWeTU1UE84OGV6Y2t2anhDNFc5a2xUQUJPbG1Bblljc2ZxQVpCUFNqM1NkT1BNQ1dKVkkvbnd6WjZIdXFzVUw2Znc2QkpQYlVkWkZlV2FOZWRRRnFCVG9VZ3NaYmhXR2w4YmhqZXY4SVdQL2pabnYvbFgrSklRZWg2MU1DQU1BNUpvelBMU0FyNnZDL3gycmpuSVlRMXhaTmpZMm1KbFpRV3RsWVhuVG1jRTNjR0FYbjlBTklxb0JRR05ab01ranBpYm15VU0vTXo5Ti8xaGtPb1RZYkpKc2VlaGxTSVJZVFNLMk5udFlKS0l0LytkUjlpM05NZE1vNDRtQnBOSmZQT2VPdnVlYmFCcHVvZjNNZ1NWWVRCSUxjcm5MMTJuVnF0ampHRTBHaEtFUGl2TGk2eXNMTkJxdExoMSt6WkhEKzlIcWFSSTNVMWRwNmFVclJaY3hGUlpHQ1hDeTJmT3NiS3lSbnQzbDE2L3ozQTRKRTZnajhmZUo1N2hxWi80ZWVMNU5hS0NFaXhwbG9KeUw0eFVzNllxTldKVkZxNnN3NytjMk51Wm5zWExtNDJNMHFGcmlWd3ZubnRVTmpPUW9yV2RYRkphYzdBOFA4SWlCUldNQkFjUHBvcE5pQzYyWTZwMEpGWmR1ZG1PMUVPaC9zZVpUYkhMYmdmUFpkMktkbWxTWmJjVy9MNUszeTEyS1NQVlRDQ2N2YjVONXpZaVR0eVJtNzFnK3dDbUxCVHp6QUN0S3RzR1UrQ25jcUZRUWFGaGtoaW1ySmxCQWZrc1ZrWUdKVEYxaVhqMW0xL2xrNy81NzZHN3lWSnJodVdGZVJyMUVCQjJkOXNzTE14bDM0bzRmWVBLN05LSkViYTIyNnl0cnFBUVJsSEVZQlRSN3ZVWkRvWW9vRjRQcWRmUzRWMFFlSFE2WGViblc0UkJrSDMvcFhPalhQbTRhMDJsTkViU3cyVTRpdW4wQnJRN1hUcmRicHFMcUJXaDd4TjRpdkZvd0Z5cnhmSDdEM05vL3hyN2x1ZHBoRjYyem5YWjlrVXdiSkhhbTIyVVJOSHR4N3o0OG12Y2R6U0ZoL2I2ZlFhakVhTnhSQlRGYU9VeE0xUG42TkZEek00MDhMU0NvdW9vUjFlNndEeUIxcHBSWXJoeTlRWW5UdHlQR0tFL0dIQjNjNXNyVjIreTB4L0Q0bjZlL3JsL3h0S0pSeG5vV2hZUHJrbytwVmhXWFZWcEFWUkZ2U3BTY1JQWWx1VEtKWjV4QUMxb1QyWkZtWXg2YzlvR0M1NVQ4amJFNFQ0b1MvMVh6T3QwanNCM2gzdTVoTGxrR0ZneFpwVm5YUDMrMlMzSmd3aXFWajV0eWlKYlhQK2hFNVF3SmNqR09VenNjTkJjbGFTckpaSXRYOVRsaDBVeHBITmR6YmJOcXhCc1dGVkswWU5Wckx2Vmx6ejl4UmdMc1dBSGNHcm4rOGducXFGSzBKMU52dkN4MytXYm4vc0RHcjVpZmM4cWkzTXRSQXhSRk5QcGRwbWZuOHRLNTZvSktSWDlSRkhNNXRZMkMvTUxERWZwakNCSkRJSHZwMjFDOXNJSHZrYnJGQVN5dmJQTHpNd010VkFYSUU1VTVWaTE3TUJDdXZNZkRFYnNkbnUwMnozaUpDSEpTa3g3ZHVON21ub3RTSDlLSXhpSkNUMlBSdWl4Zjk4YXh3N3ZaMzExbWZsV0ExOGI0bVNFeEhGSzJ0VlowazJXSjVDdlpudURtTys5OGpwUFBYNktaajBrU2hMNm94RzkzcEJ1dDBkM01HQTBqaEJKYURhYXJLd3NzekRmWXFaZXcxTUtKQzVEWjFVcW1mSjhuM0VpWExweW5mdU9Ic0xQcUVDak9PSEM1UnU4Y2VFU1NkRGk4QS8rUFI3NTRaOWszRndreGl2dGJIYVpxVnlSbDZpS2ZkWWFmcXNzOHlKSGMrYzVpWFlQN2JRTVVtbDU3VDdYdW5Wc0RtbWhUckYxQ01XTXFveU1LelE2K2Z0WUtaMUxwYlJVY2dodGc2S2dQdjdhbGhSU1NtV25xSkNtbTFnckQ4ZWpMNVByTjdHT1VLVW13MFh5cVdxeEpwVHlhOW0zdFdpN1FzaHNMdUt1L1p6aFRhR09jdGVTMHlUZDVZY3NFNFFlb2ZLaDViT1U3TC8zbFZBelk2NTg5Mi80OUgvNVRiWXVuMld4MVdULzNqVkNQeDJValVjeHc5R1F1Ym1aSWlQYm5CWjZBQUFnQUVsRVFWVFF3alVpbVVWMk1CaXhzOXRHS1VVanJGR3JlZFJyQVVFUW9MVktDYnhPU1FvN3V4MW02azJDd0hQWXFDb0RRWXBXS0R6R1VVeC9PS1RiSGJMVDdqQ0trNUx1azMwZkJrT2NKUGhod0tPUFA4SEJBL3NKZk0zSmh4L2w2ODkrZzI5OCthL1JHQnBoU0JpRytEb2RKeVZ4UkNQMDJiZDNsU01IOTdGdmRaR0ZWZ01rSVlwR1NKSmtHNHEwTGRQYW96ZE1lT1hWTXp6MStDUFVReTh6SjZXZzJkRTRZVEJNdjg5MnQ4OWdPR0k0SHVGcGo5V2xSVmFXRnBpZmJSR0dBVXBNU2pYV0NxMUR4a2E0Zk9VcWh3N3V3eWNwdkJ6dDNvalRyNTVqdXpQQTIzcy9iLys1ZjhiQ3NWTU1kUzE3NXJSRFo1aW9TcDJYdG5JQVZGNW9lUk5BalpKcU5IMWxFQ2tWQnZYRWlWR2F6YXE1Q2RWbnVkb3ppNzB2c3F0eXE4MUlENEF6VzJMVFlTWjB5SmFwWWtLZWwrODlNMkhESklMcEhsaU9LV0dxSlRlOVpMWVhEai9sNmhHcU1lUDJpWjZEU01TT1MxSnFLdVFFSzR0TkNyQ0NFd0NOYUVYbytVZzhSdHFiZlAxemY4Q1hQdkc3K1BHSWcvdldXRnFZS3lUTWcrRUlreVRNempZdG81TmlITWYwaGlPRy9SR0RiRGhXRDJzMHdvQmFQU0R3UElKQXB4RElQQWJNUW91SkNEczdiWm96TGVwaHFyeExDdDlSV2drTXh4SHRYbnJERDBaakVwT1c0c1pJZ2ZkQ0dmd2c1Tmg5eDNuMGlZZlp2NzdPNHVJQ1lWaWoyKzNTNzdYNWxWLzdWV0lqYk4vZDROeTVTNXcrL1RKZitvcy81OUliYjZRRUlrL2pLWlhtRXlqd05jelBOamwrN0JEcmU1WllXcGlsSHZvUWp4R1RGQ2l4bmQ2SXMyZGY1Nm5ISHNiWFV2eXovSGxJVEVKc29EOFkwZXNONlBUN0RBWWpCb01SY1pMUWFOWlpXMWxsWlhHVytibFpmTjlISzRpU2hDdlhybkZ3N3g2UXVLZ01CWS9MMTI3ejZ1dVhHT29hSjM3NFozbjB2VC9GdUxtSTZKQTRHazljRHROVzJZVVF6ZkhYV0FHdSthQzIwZzZvYVZpNzZtM3VnaXNtYjZtcWQwVVptTmpHVzlYeU5QR2FUSm1yMlRxQWo1L1pMSTEydXBKRVZlVUg1TEpLNTZCUXFNbkpVOFUwTTFWZzVkNjRTamxrRmlvZmhudVlWRWhGMW1MQTBnMU5ybDZtMlFCeTdiaXFoRFdJRkNTZ2hpVGNmdjFsUHZtZmY1MjdaMDh6Mnd3NXVMNkgwQ3NyazE1dmdPZHBtak1ONGpobU9JN3A5UWYwZXdPTUdJSXdwQmFFMUVPZklQRHhmUzh0Y2JWalppMncxZm5BeGtpSzlHbzA2alFidGF6YlZ3eWptTjVnUkx2ZG9kc2JPbHI0QWpTYS9keXJlOWQ1K0pGVEhENTJtSDE3MTFtY244ZVlDR09TOUtBd2hrNjdUYS9iNXRmK3phOW04d21kU2JrOW9ySGgxbzBibkRsemx1ZSsvUnpmZnZicjNMbCtqZERQeEVSYW9WUkNIQnVVR1BhdExYUGl2b01jV0Z0bWNiNkY1NmZtcU0ydFhTNWZ1Y3Fwa3ljSXRNSEVjVUcwS2RWOEdTRlhLNkxZTUJxbUIxdTNOMkEwaWhpT1JwbXRlWUhWbFVVVzUrZnhnNEJidDIremYyMEZSWkwrTG5VcVUyLzNScnowOGhtMnUyT0NmU2Q0MXovK2wybEdnZWpTK1dsM2xlSnVpQlN1ZG1DQ0lhVndudHYvcmN3cWE3UGx5SFNsWW5tZm9wb3Q0dXVLcW41eWdLN3V0VkdyaUlZQTFNZGUyeFQzQnA3aWs3bkhhYVVyUUE2SHBHUFgrWld4dmxSVWU2b3lyVllWeDkyRWFrOVZkTzhLeTB3eEtWSkNwb0lIclJCUnl3WXRwUk5SbXpIZXNNZHpmL1o1L3Vkdi9RWTFpZGkvWjVtbGJMQ1htbWs4dXIwK1JpQVJvZHZyRUkzR0thdXZWcU1XaElTQmovWVZnZWRoQnpzNjJnWlZ6aDlVenFNVHhYYTdRNzNSUkd2b2pVWjBPZ04yMjEyR1VWekdpV2VPdnJSZlNaaGJXdVNCa3ljNWRlb2g5dTdieCtMaUV0ckxYWXRTdEVxcE9DZkZoSFYzZHRsdDcvQ3YvODIveHZPRDh1QlZaY3kxeVc2S2ZxZkwxZXMzZVBYbDEvaXJ2L3hybnYvV054a1BVMUdUMXVuR3dOUHBtckZSOXpsOGVEOUhENjZ6dHJyRWFCaHo2K1kxVHR4L0VNL0UyYXpGbExtRU9zT1FrWnFaZE00UUVJamlkSkRZNmZYcGRMcDBCME5Hd3hHZTcxTnJOSmliYlhGbzN5cjFlbEF3Ry9LYjkrTFYyN3h4NFNvRDNlQ2h2L3NMUFBqT0gyVlltMHUzRjVsVTF1MEJaTktyTW0wWXJpenJqbEtveXNWVVhseW04TUk0RjMwMTNjcmFtRlZocGM2QVI1Z1NWcGpUbEtXWW5VbWxKNUhxaGZ2N3I2WnJRR1huaTF2N3hvSzM3NFI3NUx4OEM0UHNBQkFCVXluRExTdUdQYW04MTFsWjFXRlBERmlxOGdHSDMxZTFET1NCQ1dsSm5Qcno4d1pmeWo1S2NnR1VvZVVyT3RjdjhPbmYvaUN2Zi9zcnpEVnE3RnRkU1VHWXBPdTUwVGlpUHhnd0dBenhQVTBZaHFrUDM5TjRnWS92ZWE1OFV5YmpySjFGVUZhK2FDOGw0V3hzYlpNa3dtQTBwanZva1VnRk1xWVVTWklnQ280L2RJcVRKeC9rNk9FRHJLMnRFWVNoa3hRa3hwUXV6b0x2bDM1L2czNmZHMWV2TXh3TytiOSs1Wit4dkxKS0VJU1pEMTFLLzRRcWJ4Q1RiVEtTT0dGclk0dHo1eTd3L0FzdjhkeTNuK083ejMyTG1XYURWck9PNy90NHVidlNKTXpQdFdqV0EvYXNMUERnL1llcCs2Q1NpQ1JPc2t5SDdIZWhzMXlFekU5UXNDY3lKRnFjSlBTSDZUQ3gxeHZRN3FYemcvRjRUSzFXWTNWMWpkV1ZCVnJOR29HdjhMeUFYai9teFpkZlpYTjNRT1BvWTd6OVozK1o1dnBSaHVLNXN5ekxTRk04UDlZcVNsVlVxN1pBYlhMOW1nZk5XUG1ZaytiYkNxaFZWZVQ0RmR1OEt6TXMvU2lWU0hYbE1EUlVLWmZKbHhJaXFOOS9iVU9VVFVtcDZyaW5LSE9LWFdTK2p0ZmFRWGVuSjZxdTN2V1dzVWROY1A0bnhoaFZQSmVOOGJKMEE5VUtvdmphZVRrc2xMdCs2OWJQYWF6NXl0RmtTMXh0RXVwUmorZi84ay81d24vL0hlanZzTDYyeWtKcmhzRmdTTGZmcDl2dm9VVVJoQUgxREx3UmhqNitVbWpQVDBIcHhickduakhZNFpHMkdVSmpESXpHTWUxQmoyNnZ6M0FRWlFhbzBxZVJpSkFrQ2NZWTloMDR5R09QUDhhSjQvZXh2cjZYV3IySktFVVVqekVtSmZQa1ZKNVVVMit5WUJJd1VjeHV1ODJ0TzNlNWZQa2l0NjVmeDhUcDlnRUZCdzRmNXZFbm4rVHh4eC9ud01IOUxDek1wWHAvcFZGNHhiUTZmL0IxUnRWTjI0V0l1M2Z2Y3VhMXM3end0OC96OWE5OG1kdlhyMUlQUTBMZlQxZDlDSEVjRXljUjYzdFdPSFpnbmJYbGVaYm1aMmlFUGtrY2dVcExlVS9yOGw3VUZoT0JMTlJEMGhaa0hDWDBCeU02blI2NzNSN2RmbG9kQ01MaTRnTDc5KzFsZVdtSnNGN256Tm56bkRsM2lWRjlqaWZmLzRzY2YvbzlERlNkUkhtV2g2QlN0Y3BrVVR3ZGRPdW1EbFd6TDZUcWMzRzhMYXFzUmlab3YvbkZaeWxySEYyY3VISmlwU2FNZTdiR3dKa0IzS3RybVppTUNsWEEvZmZERHY0Zi9TV1YyT2ZwMVlCeUpKTWxxVTlOWU1GbHl2Y29scHhabENMd05LSEVkSzVmNURPLy9adWNlKzdyaEw2bVdhK2x1L0hoTUh0UkUyWmJMVnJOZXFxNjg4cU5wSjZ5TWNuYkU2TnNtYVlHdkJTbjNVOXZyM2EzUzJ6U0FGREpNdDZTeEtTQ0tXTm96RFI1L0ttbmVQREI0K3pmdjg3YzNBS2U5dEpiWGxVdzY5bkVYMnVOOWp5VUtEcmROamR1M3VEOHVRdGN2bkNKMFdoSXZkbWtVYThUQkI1S3dOTUszL2N4Q1BFNG90ZnJrWWh3OUw3N2VQcnB0L0hRcVZNY09ucVVtZFlzU2lXWXpDS2NsM3VxeVBjclA1OStmOERWNjlkNTdkV3pmT01yWCtIWnIzd0ZvaWc5cEFLUElKK0ZpQkFFaWtQcmV6aHg3REI3VnhlWm02M2pBWEUwVG5GcVlqS2ZBWWhLc3BiR0x4cG15WG9iSTRvNEZucTlBYjNCZ0hadnlQYjJEcDZuYWN6TXNMeTBRcTgvNU1xMTY0enhXWHp3Ny9ET24vdW42T1dEakZSUWtKdlNQYnRVQVQxVCthSk91ZTVzbXRUVWQwU1k1cTJwQURzckc4UHFmNitxYmNrOU1Qc2xYbDhxYWQ2U0hnQnZBazJkY2hwVTNSRlR2blA1UDNqcnA3b0FzYW9BTlVGd1VaT3p3dS83QTRnak1zblZpSVlaTStMc3Q3L0svL2ovL2gzUzNTSHdOYTFHblVZdEhkejVYc0RtMWhhdDJTYnpzek1GV2NmR281ZjY3V3pGa2p1Y0N4YWNaakFjWmF5L1hyci9wb3lteXVzRll3eTFXcDBURDV6Z3NTZmZ3cEdqUjVpZmIrRjVIa2xpc2oxOWVxUG5HaE90M0FUYzRXREV4dVlHMTYvZjRPTDVDM1RhdXdSQm1ON0ErWXBSMHBzNFNXSThwUWpEQU45TCtmL2E4NG8wWWhTWXhHQ1NHS1Y5VHA1Nm1FY2ZlNFFURHg1bjMvbythdlY2VnVLNkNUbkZKa1VFclZQUjBzN1dEdWZQWGVBN0w3ekVsLzdpaTF3Nit4b2hhYkp3RUFUNG5rZmdwWnJMbVViQWtjTUhPWHBnblpYRkdjTEF4eVFSU1RSQ0pDNS8xemF0SjN2N2RNYWdWTm9INVRFWWpybDA1VG96cy9PRVljREczUTNhblI2ZGZvOUJET1A2QXUvK2hWOWgvZkczMC9OQ0RCb3RrMHhuWlJGSDdiR0IxVFc0dHVocGoyYTE1Ni9rWVNJdThiSmE2azkxQ3RxMXRDcXR4a1duTUczNmpjcUdnSlh3aXFxVXRHcWJMZHNoY2F5eUV6OVF4VnRodHcrdS9IYXlBcGhHZnJWbkxsVk9nWjRpNVZTTzN0OUtuc2ttenpWZm8wM0NhT3NXWC96NFIvam01LzZRdWdmTGkzTXN6czhSZU9sRGxKaUV1M2MzV1Z5WXA5RUlNK0dSc1NNRUhmaGpqa1lUWUJ3Wit2MEJ1OTF1aXVrMmFZcXZFVVZpREo3eU1CaU1KT3cvZElTSEgzMkVrdzgrd1BxK05WcXpNeVNKTHREazJ2TXdjVUtTeEdWSkw0TDJGRkVVc2J1enc0M3JOM245OVRlNGNmMG1udGFFdFRxQjU2RTlqYWZURjNrd0hHSVE1dWJuV04yenh1cktDbzJ3aGtraUhudnNGSGMzN25EOTJrMHVuci9NNXRZV2dSZXdNRCtMS01Fa2dsRkNOQnpUNi9lWW1XbngxbmU4ZzhlZWVKejc3ei9HNHRJU1lSaG1KTjNzYzlhNjlHSkptYklVUlNOdVhiL0IrWE1YK2RhM251UFpyejNMalF2bmFOUWJCSjZINzJzOG5VK2ZFdGJXVnJqdjZDSFcxNVpZbm0vaWE0MUp4cENrcmtQdFpWSjJUSlpua0I4UU9hekU1K0xsNndTMWtNT0g5cE5FRVlQeG1FdlhibkwyM0NYNlNjQ1JIL2d4M3Y1VC94Q1oyME9FWCtUNjJhbEY3ckN1MG5xaUpzcFZwZTVSMlZaZlNHc0liMmNMdWc1RUt5QkVyS1NmYVg2WWlkWENwQTFCZmV6TXB0aThNS3JyTStVeXBGSnR2QzRIZmxMZHl5dHJhQ0kyRzlVYVh0aVFaU29HVE5lWXBOUUU5Tmphb2Rxa1dDbHZJVW8wY3hYR2JMSzROUTlEM1l5NStPSnpmUHlESDJCdzZ3cExjeTMyclMzajZUTDBkQndsM043WVlHMTVpZERYRTYxSk9jM1hDSm9rU2VpUHh2VDZmYnI5UGxHY0ZIcHUyeXMram1NV1YxWTU4ZUFKSGpqeEFQdjM3Mk4ydG9YdmU5bmhvck5UTGFWUGlFN2xyQ29MdGh4SE1kMU9sOXUzN25EcDhrVXVYYndJUnFpRk5YelB6NExIREpJWWlHTmtQRWI2ZldLVGNPQ1JVeHk1L3hqYTg3TjVpc0lrRVVRai9zNWJueVNPUjJtd3F2SVpEa2Y4K2YvOFBQMmJOL0ZicytpWkdWVGdrMlFIa3BjbDhLYjI0Q0Y3OXUzajBTZWU0S0dIVDNIa3lHSG1GK2JSdnUrZzNQS0JhejYvU1FOTFlOQWJjdlBtSFY1OTVRemZlUFpaWG5qdW0zUzNOcWszNnZoZXlqZjBmQmlQUi9nZTNIZmtFTWNPcmJOL2JabFdQWTBoUzZJbzgybVF6U3dLTFd1cXB0UStWNi9mWmh4RjNIZmtJQkFqUUc4UTg5TEw1N2kxc1kxZU9jUzcvdEcvWlBXQngrZ1RJSGhsenk4VnM3cXlzWm1UOTNFQnhiSFNqS3VTKzJwN20vOGpyWldMclJmYjBDTUZNdDBvVi9HbktxVi9GWFNqTE5HZSt1U1pyV3c1VkxIeFdsRkVVb1JyWVUzS3hlcEQzSVc3cVF6L1JISlRoRGhTWW1QMUkwcmxSaFgzN1BMc0xEVkZNYkJUUmp0TnZrVUdjemlBeGtoaDc4cC9QbDlpYUcvd1Y1LzVCRi82eE8vUjBNS2g5VDNwTFNlbWFEWUdvekZiMjd1c3JpeW02QzFyeXlGWkNrMmNDTU5SUkxzL29OUHAwdXNQTUtTOWREclJWb1ZKeGc5cW5EeDFpbE9uVG5MNHlCR1dWNWJ4ZlozSmJrMDV6QkdyVlpGc3lLcUVYcS9QeHAwTkxsNjh5SVdMRituc2RxbUhRU3FLMFdtVjRHWEduV1EwWnRCcEU3ZmJlSU1CTTBab0tpR2VhYkwrUXovRS9tTkhTWkxVY1dmRWtJeEhFSTk1Njl1ZXpQYnlRbGdMVVdqKytsT2ZvWGJtTlpJb1ppdE8yRkdLcURXTHY3QkFjM1lPdjFISG9JaVNtQ1F4YVZzUlJ5Ukp6UDNIVC9ESTQ0OXo4dVJKRGh3NnlOeGNLdzFxeWUzTmFmNlFvNGZOdzFwMzIyMHVYN3pJOTE1OGlXODgrdzIrOFpXL3d2TThBaS85M2ZyWnlsR1NpSldWZVU0Y1BjeVJnK3ZzV1Zta1VmTXdTVXc4R2hlV01LVVVucWNScGJtenNjUHQyM2M0Y2Z3SWdXZFF5Z01WY09uNkhiNzN5aHNNVk1nRDcvbEpudmpSbjJIVVNLWEVydDdHa2d2YmdoY21WV3JWbHk4SERaYStmU25rOXZhbHFqSXZUUDdPbFJrYTViOXJKbGdFVTVJMlpZcklLRjg1ZitLc3JRUEl3QVJTWWFHb2tybG5NdHpSdmFvTm1jSXBzU2VuRTRsRk50U3JNdkdUS2YrK1V4MVlGWU9XRXVSai8yVXlzby9uK3lBR1B4bHorOHhMZlB3L2ZZQTdyNy9DMG15RFErdDdDVHlkNit0QUtmcjlFWVBCZ0tXbHhRSXhsZDcrbXRFNG9wZlpYOXU5SG5GV1ZxUUR1L1JsaitNWUF4dzdmb0lubjNpY0kwY1BzNzYrVHJQUlNJOVVZd3FhY0c2Z1NRR2lhZCt0UFkvaFlNRGQyM2U1ZlBrcUZ5NmVUMW4vbms5UXErSDVYcjRnUStLWTRYQkExTzlqdWgzcXd3Z1ZqUWtsb1lrUUpJSTJxYVczTjl0Z3ozdmV3Nzc3amlOeE9vTklqR0U4N0VNUzhmVFRUNktTOU9mMXZBRFA4L25xcHo1TjYvUkxCRkZFTEpCb3pjQVB1VEVjVVdzMjZYc2VvK1lNZW5ZV3Y5RWdiTlJSR1NaTUJLTHhpRzYzaHgrRTNIZmlmcDU2eTF0NDRPU0Q3RHR3Z0dhemxUMDRac0pCS2dXb1JvakdZKzdlM2VEeTVTdTg4TUtML1BtZi9UbXZ2L0lLb2VjeE85TWs5RDE4MzhQWFF1REI2dklpOXgwOXlNSDFOWllXWmdrOVRUVHNrNWlvY0ZydWRvYWN1M0NSVXlmdlo2WWVaamtHUHQxQnpBc3Z2Y3J0elYzQ0F3L3dybi80TDVnN2NwSnhKaVcyVlpyS3FZNHI3SUJLMzIxci9LZU5yQ2FlWDNFVmZVWlY4cmZWWk9yeHRCWGo1UGRSMG96VUozSWdTT0h6U2liQnlzVk9WR01reVU1dEsvNHFSdzlMcWF4V09aZE5zSVpoMDlxTENxeFQ3akY5ekw2K1VaVFJ6NVVVbjZvNHduNklOQW4wZC9qYTUvNlFMLzcraC9HaklZZjM3MlZsSWVQelphaHFsS0xkSFlBWTV1Zm5RQ0JPRWdhakVlMXVqMjUzd0RoT0NoNWd6aVV5eHBBWVlXNStuaWZmOGhRUFBIaWNmZnZYbVo5YlFDc2hNU21SMTh1OS9YbFFTQmIvcEJXTXgyUHVibXh5NC9wTnpwMDd6ODNyTi9BOFRTMnNaUjc4dExMd1VFZzBJdW9QU05wZGttNGJQMDZvR1VQZEpJUktFMk5BREEzUFF5V21PSng3czNWVzMvMUQ3RDkrbk1RWWxFbXJnTkZ3Z0lvam5uNzZxYlRtVXFrZlFXdk4xLzd3ajVqNTduY0pzZ3dBcllTUjlybmJIN0k4MDBvUEZsRjBNSFNVWmxTcm9lYm1DV1puOFJvTlJHdmlUSk1na3I3TW8rR0l4c3dzYjNucjIzajRzVWM0ZHV3b2EzdFQvUUxvekVzZ0pUUVJRNUtqNXhWRTQ1Zzd0Kzd3MnF0bitmYTNudVBMWC9wTHVqc2JoTDVQc3hiaSt4a05OMGtJQTU5REIvWng5TkIrVnBmbmFEVkR0SWt4U2NJNE1weDUvVHpIczNqenZJODM0bkh4eW5XK2Mvb3NJMytXa3ovNnN6ejJ6RThTMWVjUnJSMXltSzRtVWszWm82bUsvdDhkWUU4eDhoZmtYbHVkV0oweHVBZUhLZHlyMVV2ZkRUMVZSWVNab1A3ZzdLYll2dVZxSHk5NVdKY3FlM1piR0lUSUpObW4wcysvNmI1UUtyQUNwcXVjN0hSVVRkVlFWQkFCM0lORlFTMzA4T0lSdDg1OGowOSs2TmU1K3ZLTHpOWUNEaC9ZU3ozUXBkQXArMUIzTzEzOElDVHdQZnFERVR2dGR1clNFNUFzMTlCa0E3akVHT3JOR1I0NCtSQ1BQSHFLZ3djUHNMcXlqTy81SkNaTysyaXRNcFdlempCZDJhNVhLNUlrWW50N2wxczNiM0wralF1OGNlNGNBdFF6ekxmS0VtKzFRSktNaVlZam9tNFAzZWxRSDQrWUVVVmRKS1VVWk01Tkw1dUxETE1wU01OTDBkbDUzSHk3VldmbDNlL213TEdqaFh2UG1JVFJhSWdhajNuNjdVK1JOM0dlSDZLQlp6L3pXWnJmZllsNm5KQXRCUmlKeDkxZW41Vm1reUNqSklqT25KeWV6eERGcm9GTmdYNnRoc3pPVVp1Wm9UYlRSQWQrWmtIV21NUXdIQTRZanlNV2w1WjU2OXQvZ0ZPUFBzYmhJNGVZWDFoQStUYWlUcXhoWERaaWxKVGgyT3NOdUhUcEl0OTk2WHQ4OWN0ZjVhVy8vUnZHd3k1aEVLQ1ZSeTN3czJiU1VLLzdIRDk2aUNNSDk3SnZaWUY2dmM2NTgxZFptRyt5WjNrZWlrc09kbnNqL3ZhbDE5anFEZ24zbitTWmYvSXZXVHI2RUxHcU1ZaEhaVHN1dHJMVWJsa3IzZ0twK0g3eS9iMmRiR3diMmlveS8ybzQ2cFFkT2xWVFQ4bm1WRTVWQWFBKzgwYmFBbWdIbGwyNkFNbEZIcFlDVVdSU0lKVGZ0RldSa0JXNG5qcldNalNVclZZU1M3U1RDejJrT0xHazZwN000SXhsOEdjZVNpamlXb1U5aE5xNHgvTmYraFArOEQvL09uNDBaTzlxbW0rbmk0R09rT0FSeDRidDNSMzZnekZSbE40TzJ0TlpiNll5OTFxQ1VoNUhqdDNIUTZkT2NleStZNnlzTE5GbzFvbmlxR0x0bEhJL2JkSUJsRkl3R28vWnVMdkI1VXVYT2YvR2VUcTlIclY2bmNBUGdIVGpvSTJBTVVTakFYR25DOTB1NFRqQ0UwRkZFYk1vZkRGNFNBcDFVTmFobk1WcWo4UmdsTkR3VXV5SmwvWFY3WmtabG43d0hldy9laDhpQ1VyclZBQWtobVEwNVAwLzlmZlkyTGhGdjlmSFNDb28rdGIvL0R5Tjc3NUlJMG1LZmN0WVBPNTIreXpQTkFneEtDVm9uU2NzcGFJbFl4UWpwZWg3QVZlN1BSck5KcEh2d2R3Yy9zSWMvbXdMRmRSQTY0eE1wRWppaEdnMFloeEgzUC9BU1U0K2Nvb1RENXpnd0lIOXpNdzJzM2xJL214NUZ1SXFnNG1JQWp6dTNMbkxoZlBuZWVINUYzajJhMS9qdFJlL1E3MmVIdXhhYXp4UEVYaUtRQXNyeTRzY1BYd0VNeDZ5dHRKaS85NVZORWthYVFlSStGeTRkb2V6YjF4aTROZDQ3SDIveE1sMy9BaFJmWlpJeWhHekkrOHVBbnZTenorUEpDOEpTMVNTcHBtNGdPM0VMbHRwNk1xSHkvZkxia0hLallNOWtMUkZRTm5YL055NUxWRTVUdGp4d2FXMEhKUFpXVk1SVEptNm1pdnk4ajhnSndhbmlIRExSR0U3R3l4R2VvN2ptMVJTVlJKVTdJMm9VdmNRS0pYSGF2ci9HaHJLc0gzNURUNzd1LytWYzkvK0txMjZ6NUg5NjlURGtNZ2tESWNqK29NaDdWNlhUbmRBSEdkck5aWG01ZVZEdFNpTzJiUC9BSTg4K2dnUG5qak8zdlc5TEM0c1pIQWRVNndzcFZEcHBaTFhmTFhhN3cvWTJOemkyclhyWEw1NGlkdTM3eERXYXN6VUduaWVCMTVHVjBvU291R0lZYWVEZEh2NHZRRmhFdE5BQ0RENFFKU2szMk5kZWNVK09qOTBjd210Q0JqUkRCS0QwVUpESzN3bGVObm4ybW0yV0g3bUdlNTcrQlN0Vm90V280N24rWFIyZHRuZDN1VFgvcDlmUTJrWWprZDBkanRzMzczRG4velc3MUQvbStjSXhrT004a2lVWnBobzd2YlRBNkNHNEdsajhRclRNeG1URW0yR0N1NTArK3hibUNQMFlLdzBQUXh0TklPd2hzek9vMmRiZUROTmxCOWdnTmdreEZGQ0ZFZU1Ca09DSU9DQlV3OXg2dUdIZWVpaGsrelp2NDlXYXo1ckNYVEo3YzIzTkNZdUJrL0RRVDl0cTg2OHpyZSs5VzJlL2RyWHVYYjVVam83OEhSYXBVR2FUS1NFL2V0ckhEdDhnTDJyU3l6T05sTnVveC9TRzBSODU2WFQzTm50MHpyMkdELzRzNzlFNDhCOURLazVYRDRwNnZhQytPbVc5RTdsN1BvR3l0YTF6Q2lXaWcvbVhzTTN1WWYrUmVGS2pBdWt1SUQ2czR1N0tUdEEyZVJTS2ZvVGsrbStUWFk3bTN5OUpIa2xrSWNRS0l0SFhtYjlpdU1YbkhBWk1abkhVbzNQMXFuQ3kyTDUzVU9JaU9jcHhFVDRnLytmc0RlTHNTekxyc1BXM3VmZU44WThaa2JPUTJYV1hOVmQxVjBOaWtNM1JjdTBLTW9pQVhFd0xSaVdiTWl3YkgvNHd3UGdMeEkyNEEvN3h3WnNnTkNIVE1tQ1FWbVVhWm8wbTZSNktuWTMyWFBYME5WVmxWV1ZRMlJtUkdSa1pFUzhpSGpEdldmNzQwejczQmRKZjNSWFZXYkVHKzY5NTV5OTExN0RBTi85MTMrRTMvdnQveGwwZklpTEcrdFlXVnB3OC9pRFErd2ZEbkF5R3FLeUx0d2pNYVVzSnJaR3E5M0Jaejd6T3E0OWN4VVhMbHpBOHNvU3lxTGxxeUZKQ1N3cUdOU0ZnREJHNHhIMm5qekIvYnViK09qV3g3aTN1WW02RnJSYUxRZmNzYnNKTFdIWWVvSnFlSUo2L3dEbTZBanR5Umh0Q0lyYXdsajJ0bVVDNHl1YWtUZ09RZHNZaVBXV1UzNlRaKzh3RkNhc0ozVU5LNFEyQ1ZvQWVxVkJ1MVhncUQrRDliLzFpM2orOVUranFtb3ZhaUlNOXZad3NQOEUvOUYvOG8vU0RKOFpxQ2I0SjcvNW03ajI0eC9Bbkp4ZzcyU0UzWU5qYkI5WGVIQTh4Sm01R1hSWlhMWkNFS0JJQ2tjbENDWnNzSE13d05uNVBsclJuMGxnaVZHeHdaZ0pSeUFNMkdEWTdXTGM2d1BkSHFoVmdncmpScUgreUt6cUN1UGpJWHJ6YzNqK3BWZng2ZGRleDRWTGwzRG03Qm0wMmwzM3ltSUJzdEdNUlVLVldEdSt4ZUJnZ051MzcrSHR0OTdGTjcveGwzanpTLzhhTEJhZFZ1bENVNzJsbllGZ3R0L0dwWE1idUhUK0xGWldsckMwdUlSYkg5L0JEOTk2RjhPeWo5Zis3YitISzIvOExLcjJyQnNEKytxV2FIcldUeGtlSmpsTlh5aFd2SEtheDBabTdvR01YaHhkc09Kb2xUTVVVVWhEOHBLTG5iOTA5MUNTWlZVU05kallad0cxcDFmVzFoRmdLZ21iUWxBNFdWZ0wxRW9ZRkw5TVZPMXhuTWVtWUVCZjBJdDEzSUpUQTUyblpJT25pREs5SW81cTFMc1A4TS8reC84ZTc3NzVKMmdYQm1mVzFtQ3JDb2VIQjZoOVQyNURxU3cxSmxVRk1nVnUzbndXcjc3Nk1pNWR2WXpWMVhXMFNnT1ErMTRpTmVyZ0Q2Y1NYTmhqRWdmN2gzajRZQXUzYm4yRVR6NzVCRWNuSnlpTGxwdGRleEtLTTdlWllISXlSRFVZd0J3UDBLMHFsTFZGWVMxbXlCbXd4SWNFS1hzKzVCV01yVVV0MWpzR2g4aHhuMU5IaE5MejhzR0VrVGp2eFBXWlBucE02QlFNWnNGZTJjYmN6LzhDYm43NlZVZHk4YWZMNGQ0ZTlwODh4ai84VC85UkNwY3dETlFWL3Vsdi9SWnV2UGNkOUNaakFJVEtFaDdaQXQ5NDd4YWV1WEFHTkRyRzRPUUVZOHVvTFdXZnF5QkN4WXhIaHdPc3ovWlJVc2c1OUE3SGxCNTZJY0tRQzN4eWNBenFkbkVDWU5ScGcyYm4wWnFiUWF2VEJRWDVNVHRmZ3Nta3duZzhRbjl1QWE5OCtqVzg5TW9ydUh6MUdoWVdGOERHVllPaHpaeTJ0aVpVbGNYKzNqNCsvT0FEZk8vN1A4Q2YvUEVmNCs2SDd6dGF0REVvbU5GdGwyNHpxU3YwK2wxY3Zud0pwU2x3Lzk0OURNVmcvcm5QNGd1LzhRL0J5K2Q4bFp5YjhFQ043ekExQ1hDZmpZV3lBQUJMb3Fab09XZ1cxcE9tdjJzOHpmbzJXYWRaUmYrQ2tHWGdONFdpWFNUeEEwbklTZmNvb2ZYbEhOemlyMGxnYTRwcHE1VjFiVUpkUyt4cExLbUFqUmdXd1NyWXcwMEk0QUcxMmdaS1o1MkNub1dWRmxwU1N3RWRoMHpxZTd0UFBOc3krSjMvN1IvajdUZi9ES1gvbSsyZGJSQWN1YWF1TFlScWtDbXd0bjRHbjN2akRUeHo4eHBXMTliUjYzU2NiYlU0anZta0N1UVJkMDFLNDhBa3NUV09qbyt4OVhBYmQyN2Z4by9mZngvSHh5ZG90OW9veXhZNjdTNDZuUjVRVzlTakVjYkh4eGdmSDhFZUhxQTFHcU12RmkyeGFJdWdFSGNkYTdFd3hvMzFQTzhuVms5aWM5Y1g4WnVPeThSekloOFhOMTVndnQxQ3J5elFLbHQ0UEJyallEaEVyMkFZOGEySkFCVmJaWXlLWEdqaXJaaENLY3IrNExUd1pKMjZqcWQ4aHhrZFUrUFMwaHdXeWpsTWJJM0Q0ekVlRDA3d2FIK0E0OUhZNnhFTVdCaTJCaXFRYzVueVV5Tlc2VXpzNStPbW1xQXpIdjNqSEM0QUFDQUFTVVJCVkdLNTNVS0xDS1BSTVk2SEp6aDZCQnpDb0o3cG83VzRnTjdDTEZyZFBscEZCNzFlR3dEdzluZi9BdDkrODhzWTF4YUxxMmZ3Mm1jL2cyZWZ2WUZMbHk5aFptNFd4cFE1WVllQW9tV3d2TDZJNWJVMzhObWYrQnorL24vd0QvRGcvajM4Nk4xMzhlZGYvVHIrL0d0dlludDNDNzFPRzcxT0c4Y1R3VHMvdmdWWTZ6NHpNZmEvOHpXOGMvVTVmT3B2L1JwR2NZRktEc0lwUG9CVldJRlQxVnJGZGFFRzhTMnZybU5WSFFOSmRVcDF3ODZjVW5xUktBS1FNd0Iyb3E2aVpTaHkxYmtSeENsZWZWV0xLME90QlNvQWhUOEZtTVROd0EzRmhGYXl1YmVmemZ6NEplcTh3MDdHbkNTK2hnT3ZQWWwwVXR5WU1yLzBWdG5CVElMOUJScFh3RXV2Znc1Zi9WZS82elRweEY0aE44SEttVE40L3ZrWDhPS0x6MkhqM0Zrc0xDeTRIbjh5OXFPK0NsYnEzTGpUUC9qajBSZzdPN3U0ZCs4aGJ0LzVHTnZiMnlpTE52cTlMbHBGRzYzNXRydVpkWTNKeVRIR1IwZVF3VEY0Y0lSZVZhTWxnc0xXS1B4MVpCVXlPZ0ZjVUNSVTlCbUY5b2xndloyM0RWdWt1REZvdnlCMGloS3R3dnYvRThPSWdHSEJVc0ZJalpJSWhRTElKSG8xQklEVlU1YTFqQnRKTDJ3RG1Ccjgvb0xrMUdNa0pUa3FOVTlxRkhhTWVXYk16TFJ3Y1c0RkV4QW1WbkE0bXVEK2syT0hLTlUxNmtEd29zVG5zRUU5aVJRblZoTFFraG9kSWN6Q29oSzNPY3J3R0NkYkp4aHNiZUhBbExCenMyalB6YUU5NjB4U2VhYVBqaFdNamc3eHRULzdFM3p4RDM0ZnRiVzQ5c3hOdlBLcFQrSG1zOWR4OXR3R2V2MCsyQlNSd2Vud0MwYTdVK0RTbGN1NGVQa3lmdjV2L2lJT0R3N3d5U2VmNEoyMzNzWlh2L3dWdlAyOWI2TWVqVkFVaktJd29JSlFXY2FsbTgrNSswT25sTm14SW5LdHM4dHpUR1F2SXZmZElEWTcxNkUyRStZRStwSDNVQUNUYWlzRVJ0T09WRG9YMHlrR1BkNDR4WmxWYy9xNG5DWDRPTVRWK0lmSHNrVXBEcUJoSXJBbE1CZ3NRR1d0ZTBnaUxkYVZ6NEVmSCtYR3BCSmJoZjNjVW1LTFR3cm9DeDVzMFh4Ukt3RkR6akd6RjZPNXN2ZkZuLzQ1L05mLzAyL2pULy9WdjhCYmYvbm5XTzYzOFd1LytuZHg0OFoxdE5vZEZ6WGx4VFFnUWxtMFlQMEp5VENBT0F2cjNkMDkzTjk4Z0ZzZmZZUzdkKzZCMkxnK25obmRUaCtGTVpCSkRUcytoaDJOVUEwRzRLTkR0S3NKWm9SZ0p4T1VBcFJXTXZHVWxwSmF3TSsyZmJ1bHJKNURHOFhPOXRVdlFsZWRyYzNPb0djSU1JUUpNNFlDU0Mzb0FtaDVFTXFLZ1AybXlwWjh5eVpSNHg5blYxQ1JWV0ZjRk5tYWlRL2lLZ2hKRVh4aW5VdXdXS0N1WVN0Z1VCVFlreHFHR0hPdEFoMEMrdjB1ZWpOOVBCa01jR0Y1SGpJWjRXZzR3cmlxM09Jbmh2WE9SK1EzSFJzMlBuYlBGZ05vR1FLTGdLb3haaGhZWXNiTzhRRER3VDY2KzMwTXJNVmgyY1o0WmdZOE00T2kyd09WQnIxdUY5WUtIdHk3ZzNzZmY0Ui9NVHhHMFdyamhaZGV4cXVmZmczWGJ0ekFtWTBOdE51dDZEeE1WRVFFZlc1aEFTKy8rZ3BlZnZVVi9NcXYveXAydGg3ZzkvL2x2OFQvOC90L2dLbzlnek5YYitCelAvY0xXTDMySEliaTJLYjY5Q1pWVWFYRHIwSFNhVHBTQjg4SGtWaTZjK3puZmFSTFV2bjRReUZJczVQWmJwaml4S1FpblNic1g3RncrbXhPMWt6QlRGRGN6U0N2TFJmL1l0Wi9CME1XSm96dnJPOXpJYWlDRlpWUVNsaUlZejZWTm9La0ZZaElhWnhac2pKY0NEdWVpaldTbkFvVktaUVdHRktCTXkrOWpyLy8vTXNZNzI3aGYvMnQvd296TXoyQWdQRm82UFh4emd3ajdMQlZaWEZ3c0k4SG13L3g4VWNmNGFOUFBzWjRQSUZwT2NaZGYzYk9zUlN0bzh5T1RrNHdQRDVCZVhLQ2JqM0dqREE2SW1CYitSdEJHTnJLQlhseUdQZW8zRFpscFJUTU5hd1A2b0E0ODlHQ0NaMnlRS2NzUWN5b3VNQ2o0UWhQeGlNY0ZnYVBTWEJTR0hRdlhFSm5maEg3Mnp1UTI3ZHhFWXlXV0lmYlpBYUtXanVSUUxvSTJsS2l0Y2F3RktYREVDKzBDWnV5RzFHNUVaZGx3cU9hOFoyaHhkSDZPcDc1OUdmd3lmMzdHSDN5SGhZRER0Q2ZRYmZYeG5MWkJudFBnTkdveHQ3eEVYWUhReHlQSjZqSUFGeXFzVnF1dDFmbkZBb0FiUkdVVW1HcEhtSEZBdU42Z29Qakl4eHNiMk5BaEZHM0M1cWZROW1mUWRscG8yaVg2SGFYWUF6ai91M2J1SDNyUTR4R1k4d3RMZUg1bDE3R0N5KzlqRXVYcjJCeGNRRmxXVHJjaXVvMFJpdUF0WE1ydVBuY00vanc3dXY0d3IvN0gyUFM2V05DQmNaa0ZIQWR2d0ZzTkpiMzhibmFZU3hMMUxaeHpCZmNyWVFvcCtlSFNrTHRHQ0xLZ3loT0c4UlhrZUhZNTl3eVQ1SnpVQkZXRG9OOS8rNzdiUGFBbEVtSnV1RURsbUpRV3dJWnAwVTNsa0MxQS9QSTFwaElJZzNVY0R0M2VHMVNpU3ZhSENHYmRZcDJMcE1zbkNTS0dDaU1YQ2hqWGdJQ1U3UmhpelphaXhaVXRNR0tIeFhlOTNCL0h3OGZidUhXclZ1NGMvc09UbzRjQWFnb1M4YzFid0hHQURJZW96b1pvVG9jWURJNFJHczh3UnlSTzIwaFlMRW9BamN5ek1IVjdOWnRBQzZBSTlObngzUmg5MDBOR0wyUzBXbVY2SGczSVRCandvd1RBUHRpOFZCS0ZKY3ZZdWFGNTNIaDZoV3NuejJMbVlVNVBMai9FTGZlL1JHMmlWRGYvamhXQUZZRm1USlpsZUl3emI0S252R0puZTFNU21LVklBbGRkbHdERzZkQ0F3djg0TUVPcWxjK2c5NlpOZnlidi9IM3NMQzRoS09EUGR5L2ZSc2Z2UHN1UmwvL0pyNS83eU9jYXhtc0ZJUVpXSFJiRm1jN0JkYm1aekd1QlVmakNqdEhZMnc5cnNHMmNtV3ZMMnJaZXFxdzF4QWsrMndMV0FGYlFjc0tGb2t3Ni8rMk9xNHhPRDdDQVFnNzFxSTlQNC91MGdMTTdDektiZ2RGaTJHb1JIMTBpQjk4NDAzOHhWZS9oTG9XTEsrdE8vM0M4eS9pNHVVTFdGaWNBd3JsSE0wRTZ2UWcvVVZVcHUwMlFWczdvTkFtQWxDVXdrbUlsOU5aRlVvWjZQMGZVdnJ2dEt0VlB1N0xhRzhLTTdCcDZDQ1NTZTBrWkJrSXNoYWxDR2hnN1JINjZNMlcyWU54Rm94SDN1L05nVVp1ZGlvR0lPdksvL0J3Y0F3R1ZSNStwN0o5cWFGMUZ2V3dwdkdHaGNwdGw5VG9hRUVFRWFPMjNoZU5uSkNHREdGNGNvTE56UWU0YytjT1B2amdRNXdjbjZEVmFxUGRLaDNTMisxaU9IUWtvUDVNSDcyeVFIMXlqTUd0anpCYlZXamJGS25jWThERWZrYjFleEt3a0tCT0RQNTdLWmhDUEFoa0FIVEtsc01oNmhyTEMzUE9LY2NZN0RIakJJUWpZbUJwR1pkZmZoa3ZYenFITDZ5dG9EYzdDellHdGQrVUorSndHT3RKSjhaUEo0SnRsVDdkWGZYSlV4NE1xVHFWM09QT1FZMHg4WWxrMmdlQ21UQ3FuUHlXeVc4TUlKakNZSDV4RWJNTEMzam1sUmZ4ODcveXkzanllQS8zUHJtTDIrKy9qKy84NVRjZ0R6Y3hEMkNsWlRBak5XWmFOVnE5THU3dVBNSUxGOWN4R1ovZzhHaUkwZkVRRlN5WUMwZjBZWW9oR3RicjNtT1ZKVURwa2ZZMmF2UUVtR2RDZVRMRWFxY0YyanJHd1FPTDdiS040dXhaVjQyUndjbG9oTElzMGUzMVVSMFA4UGEzL3hMZmZ2UExPSjZNc1g3MlBENzEyZGR3NDhZTm5EdDMzajFuWG5GWjEzVlM3TmtBb25za1B1aG40cW1zald5YW9UUldLUVFwZnBkbXRwTUd3cWtSSVVMS0NZZ2FocU1oU3B6SnRZUGhJQzBvb293NUdTRUVCUVNYbFVncEppUVRSNGp6dmVOYU9SYXpMeThkdWgyK2xLRmM3aFExQXpHR1d3V3NvZUg1NXlXblJCWk01cW1HSXlIZ1JGUkNzT1VDLy9zLy8xMmNuQnlqMjJwalpxYVBvaXd4dnpBUEFCZ2NIcURWS25IeDhrV3NyVzFnZG40V2gvc0gySDZ3aVZsbWZQTCtCNWlERTBDZFdFRU42MDlDU1lzblhDTDJubmJlZ2p1TS93ci9nY3ZDTytDVUxXZnVRWXlxcW5GUTE5aGtnMk1tMFBJU0xqLy9QSzVmdTQ2ekd4dVltVjhBTVRDeEUrZnJCNkR5aTkrS0JXcEJiYXQ0LzVnWlJTalQvU1pvUFhBWWdGcUo1MFVkMDVjQ0FCZk9GaUgyWTA2S1VWZ3g2NEZjL2tEb0JkaURkaE1FTEtpQ1NCV2ZGY01NTWkyc25ObkE2cGtMK05RYm4wUDE2NytPUncrMzhNbUhQOGF0dDk3QisyKy9CZlBvQVdZRU9PcDJZV2E2V0M1Nk9FOEVxV3NNaDJNY25neHhjRGpBMGNrSUZSbFlFZitlQXFwdElnUlI3ckxjQVdHV0xPYnRCRzBTTERORFJrT2NmK0Y1UE56YncwOSs0V2NBTnRqWjJzSGRPM2Z4OFVjZm9WMk5NRHZUUjllMk1UcmN3NWYvOEkvd2YvMGZ2d3VZRWpPemMraWN2ZUVpNmp5SktFdzJDQ29PVDVYZFFhZ2VnZFhzSEpZNHVDT2tRQnJLd2ovVGhodi96THUxa2t3N2FRc2E2Y1JFMnRVOFptUVdEb1hWeEYyZFhtS1Rtd2p5OEU5QjdVMGJ5U1cyU0kyQ3ZZcE0zSzRYU0FndWtncHg3RUVlT0l5YkFadEVEYzVVZzVTeG1VQ2NNWjZTcnRtVnNPdzNzamc3TGJyNDkvN3ovd2EzMy9zQmZ2aXRiK0tqZDk3Qzl1MTc2SGZiNkxUYjZIYmJJQWplK053YjZIUTZFQzVjNlJ6Y2NxMER6SXoveHN6aWVkakorb3A5dVIrcUUxaFBpUVdoWXh3WTFpNmNaTGVDWUVTTVl5SHNWUlgycFFLdHJXTGp4ZzFjdlg0ZGEyZlhNTGU0aUxJbzNSWkxnSlVKYkJYWWZrNlN5c0lRVzZHQ3h5V3FHcmFXcUM2MGNRUFZZaTBWMnFMR1ZHa1duZUtuUkhKd0toSzgvRDl0RUhvQkxpQ1VhbVd4SFZoQXRhOCtHQkIyY2x1d3g1a3NUTUZZTzcrTzlYT3JlT09uL2hyR3d6RjJ0bmJ3OFljZmduL3dRM3ovdy9mUWViS0RWVU5ZTGtyMGV3V1dleDJzTDg2aG5reHdPSnhnOHZBeGRnZEhnSFVzVlZLMmE2RWlDcjRBckdmbFlzRStrN0lXeDB2bzl6cTRjT2tjTGw0Nmh5dFhMdUtyWC80eWpvNk9jWFI4Z3NISkNNTkpEZXJPWWZYOGRWeTQrUkl1dnZpYXd5ekNtZXo5R3lIWkU5dVlySVNhS25rRnNCL1ROYWwrSnVoZWZCb1NOVExMSW9jQ2xHakcydGhIQ1lyQ0RoSDVIWW9qVUVDVkdrazJLTEhmWVJWK21McG82MCtEQkVBVWJMeTBWR0RZZGJXb3JXZnhlWjA3dTRWaU1nRVJLOE1ET2QxOUxFUjl5WFNHZ3M0N0UrV3NRTVN3VE9pZnU0SVhOaTdpNWMvL1d4Z2VQc0hlOWhhMjd0ekdCei84TG03LzZBZVk1UXEycmxCYjd5Y2ZqQ0doWFZkSlRTNDhmaXFVNEIxeEM4QjQ0SzdYN1dEditBaXozUjc2blJhR1JOZ1R3WUZZWU9VTTFtN2V3T3RYcm1ENXpDbzYzUzZLb3ZBRkY2V1QzV2Y1aVhWSk84UUdFTUZrWEdFd09NTDh3b3hiWnlJUWJ4UmFXMUg1QUdIOFJBM3BXWE1zcS9JZEd3YVVGdWxaZ0ZhN0JiUThCckdJTDRjclRLb2ExbGFlRnNzWWp5ZDR0TDJENWVWbHRIczloeE81clN0aE00YlE2cmR4N3NvRm5MdDhIai85YzM4ZEp5Y2o3TzQ4d3QyUFBzYkg3L3dRUC83UjIyanRiMlBWRkZoc0YraVViU3dkajlFMkJqZldGbkU4SE9Od09IYUJJcU1LQk1lNlpNT29DQjRQVWNhc1FvNFg0dW5jRW1odnRRUDlha3Q0ZERqR3lwVVg4YWxubnNmYTVjdm9yWnhGYTJZT0FvTUtqS3BwSlM3TlVKRlRQQUMxRmYxcE9YWElKM0twQWtnYmJQUmVUUE93S1hadEFIQVRSeUFYN29YTm9DQXJpUmRNS2ZvN2dCYkJsRUFpTDkvUkxLMjQ2QWp4bzBJaVFSRmVJTlJBN013dVF1bHBJNGlSTGdrM1BNOHlaM1FoNWNpYVA4Z2gweTV4VGtraG9tbXp0RVJnMDRJdDJpaVh1bGhkT291Vkd5L2hVei8zOHhqYy9SRC8rRGYvUzlqYS9hNU9BOVljL3hBUUVkZ0w3TXRTTm9SVzJYS3N2NklFRE1NYWd5TW03TU5pVUJZbzUrWng5c1dYY1AzYU5YZkN6eS9DbENWcTYwcjNLSlVRUDRYeFpoek1BamFNOFdpQ1I3dVBzYlcxZ3djUE5qRTRQTUtqblIzOCsvL2hQd0FaVHZseC90TFlVOXFpYVFjbVJFNnF0bEdqYUY4dC92UmduYTZnTmhQS2JhWGdRTTV3bWtLTnJBWUhoL2dmL3J2L0ZvdUxpMWpiMk1EMWE5ZHc2Y29GbkRsN0JyT3pzN0RFcm5vRE9WNkNWMDUyK3lYTzkyZHgvdklsZk80TFA0M2h5UWwySDI3ajdxMWIrT0I3MzhIOTczOGJRMnBocG05d1VMYlJLMHVjN2JWeGZta0dvOXBpWE5VNEdvNXdkSHlNbzVvVi8wRlErNGUvYWRBdHRnWnM3ZndHV3gzOHhuLzJYNENYTmxDRFVZTWhaRkQ3SEFGZFdZbFFYazAxbmF5YkNUK0JTWXBrcDUvT1gyMnpaNVBkWFpZakpsTXV3NVE1QmJFcS9hZmora0tMRHJoa0oxZ2Jla1JFLy9lb1pmQUlJcXZrVWt2c3lEckNzQ3dxS3R3dCt0b3IwYXluZFJqeTNEM3I5eTEyL0FGQjZQK0QrNDM0UUFmS1RjSUlHVDJDbE1lNTFka2xBYVdsUEk3SVN1VlpqWDRtUndaakFxalRoUkE1RXBCMThpY3l4a2wvNDZKeEFLZ0JVQUlvRFdGMXBnZERqTm9ZVkdRd0ZNRWhBUU1RVGpvZG5IMzJXYng4L1FyT1g3cm9JcitMQXBWdmdTb1F4cE5KdEdDemRlMW44d1JtWUhoeWd2MG5ia0p4OSs0bWhpZEg2UGI3bUptZHg5emNJbVpuRnpBY0RuMWlMdmtnRXlYQTBYYlZvYmVuWkZLYWgxTjRyT0lVL3pnZFBaVXMzeE16alJSYnl2by9kcVRFd0I4eElITEdvb3ZMeXpoLzRRS3Fhb0ozMy9vaHZ2N21WekdaakxHMmZnYlB2ZmdTcmx5OWdqTm4xdEhyei9qM3FaMG9pOW56TlFUdFhnY2JWeS9qN05VTCtPelAvaFNPQndmWXZIc1BuM3p3TWU2OCt5NTIzdm8rbHV3UWF5VmgyUmpNazhVYUUyQnJISTRFK3ovNkFFdHpEdUNySzRkaGtTK0w0YWRYSkNFL0FlQldCOVNkd3dsYVVFNWdnTlRUaWhZUlpOaDZ5SzNRaDBoOFJDa3ZHTVRtdnBvZUU1T1kxZUVyT3RLZklaMGFySE1Md3RvSXpqcmVudDk2emtzS3pFMFZkeEVpSzZGNmZZRTl0WmVKSEFHclJqR0pxeHBubUlZSmhSY0wxYkN3bHNIZVpDSzVtdmlkS3Z3M2swZlcyWFBVa1o4OG1hOWh3ajZKSlk2bk1nZWlXR2x3MXRhRThwajk5MkFFVGJ3YmhkYTFJOUViZHV5NnJtRXN0ZHJvRmdXT3F3ckR5Umd6clFMSHd0Z1VpOE5PQzB0WHJ1TEtzemV4Y2VFQ0ZwZVdVSGJhSG5YMU5PcXFqbHMwQXloOHYyaklZRkxYZUxTN2g3djM3dUdqVzdkd05CaGdabllXOHdzTFdGdGZRMkZLREU2RzJIMXlpTWY3MjNoOE9JQTlPWEtPU0VweW12c3dxQUFXU1JNSkVjMVNvNWcvVC80MEMxV0NqYkI2b3BrU2NXd1JXYUhUNGtxN1dCeVE5ejRNZVlRQ3hpZWJqL0RlNWk1VzVtZXh2clNBbGJVTjlMc2QySHFDZDM3d0EzempLMS9EZURMR2hVdVg4TnlMTCtIcU5VZlBiclhhdmlWelkwd2JpRWVHMEp1Zng0MjVlZHg0OFVYSTMvNmJPRG9jWVBPVE8vandSKy9oQjkvNUZzcUhkM0hKVG5DUkRXYktHbDBXWERtM2hpNnY0dDFibTVEQk9DNDZXMVdvSnBVamlka0tMRUNuMVFhalNLYWJsQ3JqS2FZZnA0VXZTSVlWdVVHOTFURWovamJsVnJhaHdreXF5blNDSjFCUXR3SFVNQ2xOQjJGY0lkcXJIQXJmOFp0TmNicmROcVYrd1BVQ2tXS29iWW5kUnpSdWpWbnJCU3dKQkt6WmJVWk1GRGNOOXNLTU9KNlN0Q2hUYVk5TU5FVGN6RDVGSEw5RmdJdlNEQUdTZG1FcnRUOHRkYUJLa0RWYjczcGpYUC9lYTJOK2FSa0xzek40c3JNRmhtQ3VMREZYbG1DeEdJb1BQTEdDdWpTNDlvVi9BNi8rNUUrQXlnTFdobXhhbDFwRHdjOFQzcWZQdU0yb0drK3d2LzhZRHgvdTRQNjllOWg5dElOMnA0MkZoVVZjT0g4UnRRQW53eEdlSEF6dzhlWWQ3QnljWUlqQ25VaW1CRnFMS0d0NFMzQkhJZFptcU1xVHlkL0RRUGYxQ3J4a1FPVkJKa2syY2RwWFBsRTJJOUFxbmh3RUw1dU92STVZTVZEVTY1TWFpMDdLUGc2a2c0T0I0UGJoQVl6c1lyWVVuRm1jeGZMQ0RGYlBua083WmNBQTN2bmVkL0ROcjN3SjQwbUZ5MWV2NC9yTlozSHB5bVVzTHkraGFEbUdxUnVyc28rUkoxQUJ6Q3pPNDduNWwvSHNxNjlBZnZWWGNmajRNYjcwMi84TEp1OTlEMVNQM2VFeUdjT3dnS3dEQVkxeG4vWDVUNytPcXA1ZzUvNG1qZ1lIRHFjeUJsWlphaE5SaHJBejJJR2hranYrRVRXQ09VTHJUTW41S2JEOUVuL2ZFMzdpNGcyZ3ByTGE1ZUJ3TE1odEFGemxDT1ZvbGF6QjJWUHJXWDMyUUNOMnIxMWtIenI2M0Rkb2pCSk9kM2Jvdmk1RkZCT1BQSXVQeVlFdnhsb1VIb2NLN0RkTDdGbFAvdmRabzVjKzhjVnZMZEh0UndFaEZCU0ZrdEJySU8vQm9HTzJrTko1QXRzUlBoN2JVeUZ4OWVvVnpDOHRnQXVHTVNWMjZpM1l1b0lZSnlJU2F6MkdRZGtPUEx1NEJHNjF2ZDJYallCZ2pEbTNEclE3MkQvQTl2WU9IanpZd3NIK0UvVDdmWFM3UGZUNk0zam14ZzJNUmtPOCsrNlBzSE5uQ3p1SEl4eE5CTmEwQUZNQTVUektUaGY5bVQ3Ni9SbDBPeDBjYlg0QXNSWXNKazhiOGllNlJOMmx2ejRLZUNLbGhJdXRtKytOWVpVNW14L2hpdDR1NGt4TFZXU3h3b0FEZkZYbXZZV0Z0UlZlK2V3YjZKeDlCbnQ3VDdDenRZVkhqM2J4NU9nQSt3ZGp5TzVqRlBWRExNK1VXSi92WWJZRW5uMytCVlRWQkE4M0grQzczM2dULys4Zi9CNUVnQXVYTCtQYTlldTQrc3hWcks2dU9ma3ZoME9KNDJjakJoWldsdEZhWFBSdG44ZTRncmRGdUk5KzJ0T2ZYY0RpNmlvdVgzOFcxV1NFOTk1K0c5LzkwVjNVVmxJZnJhWkxTVjBuU0I1Vk9nbFFWUHZvdFN2aUJGZzJpMW1yRkVYWHYwNnM2azUzMFpMTVNTamNnN3Fob0NXbkx3a1c3TzdKVFhvTGRVQVc3cWF4NnNWMTBJWEV1TzBwTDNPVmZSNDl6TDA5RlJQRHVBb2ZsUmdZcXQxcDZPMmZVK21VaHBVeEZUZVFUN3lyakx0NXdZVEVhNjI5WTFBY2NsUGdyU2RYTkF1SlpobVFaSElTcWdMeHIyMlkwT3QxVUpST3VzdE1Ic3p5SHZNU0l3VGpLVytWb29zTit3M0NiVFhqOFJpUEh6M0cxb010M0wxL0Q0UEJNV2I3TTFoY1hzYkt5aW9XbHBaeE1EakcxcU5IK054bnIrUDZNOWZ3NE9GOVRNaGc4OGhpMHBxSDZYZlE3M2JSNlhYUjdjMmdhTGRRK0FnaTF0aHZZR2hLeW9JblpFRUlHWnVNZzYyNzRvVkw5SUNJK3NQSUE4c0VnNGpGWUdib3FrRy9BT2FsOTNTYlNLdHNZWFY5RGVzYjUvRDg4eTlnTkpuZzRPQUFPOXNQY2YvZVhlenU3T0p4WGVISjFpNXVMaGY0eVovOUcxaFlXc2J2Lzk3L2lmZmVmZ2NyYXh0b0ZZeng4QmpmKzR0djRpdGYvR1BBRkRoLzVScWVlL1ltcmx5K2pPWDFkUmVQcGdRMHNVTzJLY01oY0RRZ0llelUwMi9Kd0VKUXRqcm85bVpTQVJ4NmRIKy95V05JT3VzaXN2MWcwMVNLR2lVNXBXa0tLZlVlNlRCYmIwV2ZjaTdWWnc1V1BLZTB3U0NPK0lMKythUVU5T3BiN1pYblg3dW9LVS9JU2FWRjByOUxHTU5GSUk2REdqM2o1RE1ZdFQvTmpYVUxwZUE2NWZrWnRjTXBKRG1rOFpKMW00Wllpb1lpOEQ0RHRVWHVUeGhaVkt3bU1KdzlqTGtzQTVFbjRNWmp0Y2NRS0JybVdiRXVNTlBqR3VKSG5WWUhMZHFBZEtzTHpFQTFIdU5QdnZpbk9EdzhRcWZWd2V6Y1BGWlh6bUJoMGNWamJUNThqTWVIZDNFd3NxaXBRQ0UxUGxNTHFucmlEU3dZS05xNGNPMEd5bmJYbDVkaFNTWWdKM1QzTmdLY21FYTBKWHpPWk5vU2xvUTloVURGQUd3QUEwVm4xdmtKQ0RtTWdJVlNjS2JZT0lHUmlMWjRNcEZvKzVmRVdMTkJNTVlGNXVZWE1EYy9qMmR1M0lRQllmUE9KL2p6TC83ZkR2Z1RnSTI3SHQrL2Q0Q3Eya1dIS3l6UHRMQTZQNE9sMVROb3R3dE1qZzd3clRlL2dxOSs4US9SNnZSeDZmb04vSjIvK3l1Z3dzQll2NEZiTmNVUmZ5b3AxaU16S1YyS253TDV0cEdJTWhFYlZBNGYwVlJvWGI3NW9rNjVGcFliZWIvaHVpU3dNTkhlYzROY29vYWJkOE45TTdJSFF6UmJIRnNIQ2oycFlTR2xzYnF2RG90d09nYTJWOFRjSWc5Y0lpTXd2aHhac0hla0lVOFJGVzhJd0pGMzdCeHlUQ1RxVXZJK0o4bEdUaHg2SGVQN2RnK2dGZUxHZUtZV1ZPdzJBbmlrbHVQZTI0eExJcld3VXlCaTFrcjR5b0Q5cmhqYkRmOWdoM1JhSVlrMFRWS2JERHNPYWx5RXdSaGtNcTV3OWVvMTdCOGNZV3QzSDl0NzkvRGtlSUl4RExob0EyVUo0UUxkYmcrZEZsQ1JJblo0cklTTlYyZGFpcU5CYU9JTkpOdWN3ME5FZWxyaWQ5VVFZUjVFazZKT2FLdk5Jc1VCb2hKazFtR2JDSUVtNFpwR0lJemlBK2NJU2ltOUtCS3pza0JMUjFLeU1MNmE5Z3JId3ZYOVpWRmdabTQyWlNDZ2hxQUNGU1V1UFBzeVB0cDhnTWVEQVE1T0xPNGNqY0RWRS9TNHh1cGNHMmVXRjdGKzlqeGFaWUVmdi8xOTFMLzBTeWc1WlhkSlNFK0s3Z08rcXBPR2RhMjRBOGlOMW1wbkVVOVdBWDQrYWx6SnR0TUo3dnYyU0tlbmpFOEJMNnRITmxuSkxmR3BhWituVjc5UWd3aHNGVEdMWW1VcmtXN2NNQnp4WkgveGRGVlNGV0NSK2V3cEthT0VXaTlxOTBuQlIwbUxuUHpLckRJQm9UampOSDRzSVJwUWlacDNYN1J5VWpONVNBUldyRGVpY0Njd1cyRGlwd09XVXZJUHgxM1FSc3B3dEtacWVCeUVtQ2NPRDdDeUd3OXg2T0d6VU9EMnFuWkhsT2VidjY4T1JiWnVkbCswV2lqYmJYei94Mi9oVUhxbzBJSHQ5TkRxZERIVG0wVzMzME9uMzBQWmJvTkhnMlJCYmVGcDA3V3ZSRlI2SzdFcUhkT0RGT2ZhVTdtSm1aVnlUTW1oaGgwc0JZcTNORWdxcXQ3UFlxZFVMK0R5QzR3YUVqUVltOGhOWVVQN0ZCT1N5VkhEcFhZSnYxTFhFRS9BcWFyS1h3ZUxWcnVOMTMvaUovQXAwOGJSWUIrUGQvZXdmZjhoTnUvZHhjSFJBWTRtRnR0Ykk2enUzTUZQdnY2Q2syalhOaHNMYTVKVE9DeXNWdXBUQWt1RnJXSlNzTWZLT0cwYTJuTGVPeTlsSmJvNHJsODRZY2xMNDRNaWI0cnc1OFZnYUo3eXBDWmZpUFB6eUtRTUczd0M4eFByTm8zckpRdnpTVmNpSlhjN0FwOEhPaXpwY0VPYmlEaVN6RUhJbi9vUTlsQ2RFNStFL29NOUloeXlBOGlQdklpZGUyMlFvcklhWDNIRDZEUENLTlpKankwRGs5cHB6SmtZdFRqSnNadldpUmRaaHZkTm1YQ3h6WWhxT0U5WjlyMWhPdVc4UGw2cHBRS0xLdXlvZ3VSZURKSjRrOEw4WGhEK0hUQnNVTFM2WUo3RjJ0b2FlbjNuUkVOcWs3VkNvRXFVUVlPSGFZUlFXVUVwa3Ztb2l2YWZWMGJ4ZVJ5Vk52YlF2VlZPNGtsQmthUnFBVVNmQUJLTlp1dlVZVkUwVW5MVlA1TTZHUVdTa1dCT0U3QklFazlKc3BOMVJKdkFhRVJVbnhwMjk4SVVCUllYbDdHd3NJTHJOMjRDVmpBNk9jSzlPM2Z3dlcvL0plcXFUa0drOElCc1RGanl6TTBZbUtrV1EyZ1RBeWltVFB0cHlyZFM4VXdrbVh3a0didFZpenFsVlNabVptaWpPYXZyczd4S0tNWXBrSVhiQlhGeEtIMnpwQzNrUk0zTUlveVVPN0dvVnRaSDVCVlJtaGdhSFpzSGQ0YlJEOVdOTnlHSytDSmJpV01GU0ZKRXVVeElWODhyUlg4RWJFUFdZT3hkVktNajdIZGZQNjZwQTFCb0RZREs0emlVRVZRbzBuajFBK1pHS0pLTk9HM2ErYldlQUVIaG1EQlZPNTE4cHBsSDJwVlpnVjhNWmthdk53dFR0aHNHNnU1bmF1dmNob0tLTGJLOXJDUm1XSVBpR1V2d09JNDdSVDZxSzZBcDZhWGs1aE5aR0RPbjZYYkdzSlNVc0VRZVNSZk9NcXhJNXlUR3lZTE9sV3g2MnFVTlJyd3BpbmZnanM5SitFeGs0WFFPeHI5bTdZbEJuUzdXenF6N2FzbWQ3aEtjaU9QMFE4L3UvYnN4VkR0akc4NDluSUM0MEtyR3lsaGxZd1JYWFNRYjlGd3RKMWx3UlpqWmt5Ynh4RDlMMVJVallUWkUrZVpKb2xlek5JQkN5YVBoNDNzb2dwNms2bHZVbEt6UUZrTDZZb1dkbm5Vc01haGhSdWtCSCtLa2g4NHlBUHdvZ29QL0cwZUZXdnhxck1vZFNSOHM3dWprbllPOEs4cVlnbU9LZUZ2eWNQTURJaUR4aEJQdEZPTDh0eFd0dVJGRW9uallxVStVbUlKRWxIYmVMR0hkdHhXSnpxdE9FV2FBMlhFZlJLa1ZSV0NwOXF3ekcwK3M2SVVndVIwa3E0M2VuZEtVb2NTaVhIMzBqTitSZHlTVmdNMCtWRzhjMmlHb1lXT3BZNmNsZ3JjMkpuTUJoQUFBSUFCSlJFRlVWd2FMNUdZWHBKaHZva0kxZmJLUEhrMXlobHFyVVdNMHZ4RXZ2QXJYd0hFQnhDcXlFcXdYS1VrV2ppbUJ1QmJhUlN2eGxJNENIcjlZNHVudVIyanVJSk9NQ1JrNjQxRDZSL0llVVc3WW9WT0FBcVU2YTdFa1kyNW9jMXRTZEhsU1V2cFEwbWRicVNSTHZhajlVSDBkZXl1LzRLaVZDTzF1elJRT2RKRWN5ZFNaWFpLa3Y2R2tJcDF3R3BEaG1QR1lnMjlDWGdIbEZ5dXBMSFNLdmJaeUs3R0syMDZwbTdTK0pBeEdtdTdrQUV5UTVnYjBVNHNzS0RHZndzSngySVo3SStaUUhuRW1oMG0vR3hTUkhNNnRCSmlxY1kyVllFVWR6eEgvb0lnNmhaczVpWlFScjBKbFlja3FTYmJHNzVPWFlCeHJDcWRUU3VrbGdvOWlXSlEycU1Va2xaelM4SnJsYU5hU0dIM2FyTVVwUGpVQTVnTXZsRnRUTXJaVkcwM1ltSWc4YTFQaUJzZlI1b2V5UU5kbWdCVEZzbHVSbHFKdXdobVZTaDJvenh3blBkSGJRb0YyaWNQQTZkNUlLdTBrWThXS2d2T2FxVHFVWndUS2RMYkZkR0NJUmtyU3BDVnpQZEtxU2tWcWc4cnNQSzFCb1NsQ04wL1o4U2VQZ0xTR2l5ek1NK3c4V1d2QnVRUVJvbzZkQkRJbHcwbUNzRGNhVmFrcFJDNmdNcTEwemo0eXBXWWxJYS9lVkNSVVZsWUlSUzB4bTYwTTR3emx1eWFLRUVTaytBSkJPS0ZPb2dqQ3FQa3FrUWQzQXJHR2RJMnZIWFQxbGtIeDg1SXlnUXFBbyt0cFUrNkMxVm1NVVg3TDJXYVJXVmpycEZoS3BWd29ROEdVSmdHTmFaTmtJSkNYTEdlTG5MSzJqdFJKSm8wV21ES2phczlWVDROSjFkdVRtbWNyb1ZGMktIQ2dkQ216REV6Wlg4ZWVPQ0plcVN6M3RWLzhaM3owMlZ2Tkl4RmhvSUU1MWFwbVpZeDJ6U1JObXFhbjVOdGg2dThsMnFWSmRrMWw2bldVUWNoVXVwZGtzM3dpZXFyL0JUVnVkdHhFS2IvMlV6MmZYNGNGWlF3eGo1R1NjbzBKcHR5aTZiK0FaWm5POFlOamc3bHl4SUNrbnNvcFMxL01acjhvdnRMd0ZKN01sTWg0a0RKUUtRc0FZdHhQR3BzMnlkZ0VDTEl4Q2VJWVR6RURvaW1lcUpFUVpjcXVlSE5zQW14aVlpMWxKcjZ4S3JFaE15RnUzbWtxWXFtaDBvdklzRldrSGgzMklFK1Ztb29mRXpMU3lEQVIwZE5pRDFnd2FUY0k1Q2UxbzllaVVhbEk5Z1RveUpjc01GYTBUMzB5RUZGdFpxcktmSDZCK0pJK1RyLzl3MnBGZXcra0NjSjBFSjFXVVBvTnp0cUk5VnZ2am94TTB1NjlBY1NDeUNxUWswNi96alpYbFVKVldrMmlEV1VpSU9YMGcrVGJsOW95eWhiNlZMMFFOK0htNXRLNC81bXFQemsyYTZVZk5mK05HdHVYRXdQbHV2QmNWTnFBb1h5aXJiRHY0eXhGRUNTMG0ra2hKRVU3a1JpdERjVXdoQTRTQ1drcGVwUkVnVG5JY1dRWHVENm1GcTh5VE5ucU5sR2NvMEVIS1hFTVU1SmpCTkVLd0JDbWVLTEYwVnZRU092ZU4vVFhsRFlidDVlSVYwRXJwSnZUNGs4aE1Fcjg0ZnZQU09LaFJGakpYWm9rWTIrRjA5RDllcHBNVEhGR3RUT1NrbzNtSW5TbE5mZWJ0MUlLUjJ0eWFwU2w0cW1tZ1RjQUJScW5lNWMvUWN5VUF2SGl0V1kxc2VhRVhsQUt6S0JNcnB4akkxWmRwN1FNT0c2a3FheFhuNE9DVjZYTmdETmtBaDFLYldPMHBhUE0wekhuVEluMjBmYlBHaXNkZ0dUMGFyM0l4YjlIOE5jUWtWTTV3TVFLYnhESmFNRkJVa3dlZDNJS3l1YVowYUIxK3U5ZDRLbHA1VlAxbnlla21EZzJpejAxa0lFWC9yeFRyRHRSY1FES2tDTGJ6a2tCSmY0eFUvYXBRVnBzdmRnSUxDaUZJTVk5Ukd5ZDNpQ0xLWXZPWGNrdVNsZllUS0pFSHBMcTFBd21ULytMYTAwQUkrU2p2aHU3ZEVUeTAybkxrVUtxcHN3VXFWR1pBMkxtaVpCNXVlczlYeUtnV01meU53RmdKRkR0bDhZYi9MdzczSUw0OENGU3JQT09rU0tCSzJrSk9EYUc2YUZOd1RKVHB3d29qbnNsVDhGenpEeFNxVFJSaFdoVGl4andBOFhWU05kRDFhUUJPd0VhTFp1cThLMUVmZ05OelNxREtNMzdYVVFFblJMQUttcVo2Mmg2emlka1RDWUNuUWsvRU9VYXBKSCtsSzBKNEpSeXYva1pPZWU4VFFXS1NCUU9TU1JEa1dJdTVoNEZ4VFJxd1ExWmJYSUQ4bFNwQkV5UmRyazF2aGEyVWZMTDBhUE5ORm9ROVNEcW0wWE5ZazhmSSs2aFlFbUVCeVpYd2xoV1NvblE2eWwwbS9TY0xxakpsTWVkMk1icFNKSVprR1F1eG9IazVEVUtucUNmVFUvU21VYU44WnRFR3lnOVh3LzgvQ2xTallwaHoxVm1pT0d0SEV2c05KN1Nub3JrZStWRWpZNnNnNHk2eXFCTVlxckhuZkUxQTllQWsva3BoUTFPb2N1NU01M0xOUERGZWZiTVdrYWNTNGV4ckZza25HVkQ2QWVXeWYyZU8rU0NRMU9UdU9TTyt1Qi95R0YydzU3eVM1UzU2bWFtSVA2UFdOTG5zV0Z6Q2hMUHFZVkt5alZMR2tCY2JueUx4Z2cwN0hLTXAvbGNwaWxEU2dYU0p3TWxIS1h4bTJIanltVkM2WGVRcU1CS1hoQTU4SUZWNUhkWHo2TnVSZ3hHcTJnMVQ4NkJEWnNkcWhsemFrbzZhWUZNNTV3N0JQbEgzbjh1QVJ1ZzhGWkdOUkVxVC82SVJZZUlNa0pBNHRXSHVXc1VNRFZyb0NScDFlZFdlTUNzM3d6SlcyMEhPQ0dlck5aNlhRRkZWeVJTaEJBaWl0a09ZVndwSGp1QTdsY3BIeWRsSUNLRjJEU0ttMTRvOVlVb3FoMGxtRVprdXZDa05ZK2FLbW9RSHFZdzVVRFdkS2FvUlBsSkhLbXVDaENGMG1rRXZZUHVqcVAyUS9FckRQSFU2WmpFWEdua0ZiR0pabXVqcmhWSjhzMERKVmFqeHNnRWVwVFlCUGFhN2RjME4wUFVOYURHLzA5MTRrUlBQZHR6VU8rVU9sd2Ftd0pOdCtkMHlzWUJrYW1malNOaEpyZCtrcTJ0dXl1TzUrLzdwRERqaGc3MWFJSlpTTFRiVTlBRFhiaFJrN092WVF5aVRLNFp5NWJ3TUhrbUUwZkdua0h0Z2NIYUFFWElNclNldWVoSFFvNkxuYmE1MnQvMGlrOEhWNkxZaFJpWkI3SUVuUUduejZobXRVSVUyeFVyZ29VNWx4OC9tVXdhNEphTE16TnNWQ3FUbXJKNElOTlFyaGdMSXlXcGJRUjdZdmlET0cvNmxFRFV3Rm95U3phSkk5S0lBb2hrdWZhUitVZU5hWVg0VFUyNUR3WGlqWWoxM1ErcHlHN1BleEJCYmIxOU9OS0kwRXJDNmxsSmFhV0pzaUl4K1pLNFMva1lSUEJOdk84a0ZKZ3RhdkdyNlhzd1V5SEswQkNpNVBvY1FFeXJYSHFiYWQxeE4ydU0wSnRUL2xOUGVEcUZ3VGMxRVVCMkJKM3lRMVA2WVVJVGRNL1p0cUh5TG9nNWsxQUdxUUZsdmllcUo1M2VDaU80a2hpMTJrQkU5NkRTb0plbzRRMWxZdWQ4dHlURmV2TGdDbmt0QWpqMHFOYVhtdUZVSVFVMStLZ3kvOStGUHdISFlSU29hUC91TTV1czFIYkFVcDJZWEpFeXE3Wm50ZmlEMkdWdWJoWXppd3VveHhNY0h3OXhkSHlNNCtIUVhaMUptZnBmSkhESEZNYWRsTmJsNkFYZ2ttQmRmcjBkQTlVUVJEVkFSUm9GbW9hNEpjMFB2UkRIWHdQSzVkeUJheUdCZk1PS0dhbjdkZy9Vd2kvMDhONmlmUWVKR2hwa1R4d2JIcUtzVGxDVVhkZUFCRkdOcGlVS2UvdHdWcU01YXVDV05rWnJrNmRVVCtkbHA4MEZhckpNalFVcHVrV1NuRWtaQm91a2RDNFU3akZUVGduTmZlc3diVjFEQ2xpbkJxMDRQOW1ubDdDa3plaHBHMGpEU1BldlF2T21KZ3R1b2lhTlBYS2FKSWNwUmhoTjlVOGlUYXB3SUcyUUw5MTFnRVpqN2t0NkE2QlRacFk2MmNxZFhxd1FXN2QramRybEpLTXJ4eE9GMWFnT0JHT0MwN2hWcDUwRlVDblVQNUNoU0FXVXBsNFNLc21JSk5GelhicHlEVnZYb01KZ2JuNE9Dd3Z6cUd5TjRja1FCOXRqNTQxSTdrTVlaaEF4Wm1kbTBlNTFNUm1lb0I2ZEFKTUs5ZWdZVkEyeE5OZkIyZlVsM0Jrc3ByR2taS3hjZndxcVZrV1FTRFFJMlk4SjBDVGxvU2hpTSsxL284Tk5HSWhmK2JhcGsxWDNNekVUTGRibkMvUUdEN0QxK0FERG10R2VtMGRuYmhGRnV3OWpXakRXUmFFWncyQ1kyQkhueTl0alFBR3NrN3cxMDdQMlNLY0k0U2hLWUJVeEdnc2ttM3VWbjB2YWQxNnZDcTJRNU53a0FVRm1yQTg1Vmt3dVByV3RvcWN1YTlXQ1R4WDJqWitrVTJ1Q2hvNWdHdTBJZjFESWFlUUdvcWZDRWRNRXhsUDZDdzIzQjlFWnMzSkQwUXkzdExwSnlSOHBMOXdjVU1lTnl5QTJ6QnNTT0tmQXhFRDZzeUtSY2l3eFQ1U2k5M3BNdkxTQUZLb1hwbVN0WllPRTJMKzFFWFhjZVA1MVBOV1FsRjVWN2Q3Yitod0ZJa0t2MTBXNXNBU1NRNUQzZ0M4TFJwZHFqSjg4eE1udUdFVTl3cG5GV1d5Y1c4R1p0Zk5ZbUo5ejJRVUNUSTRPUGMvQ2V4VW82bEVDRjlJeUNnSWlKdVA2ZHpCMFVHbmN1SzFtS2lKYVlsbk5RMWRwTm9rS3k5bHJRWFJhazhYTkc5Zng4bXV2QThJNFBqN0cxdllXN3R6ZHhPYmRqN0EzbUtBMXR3Z0JvWTBLaG9xRzJiV3k5dERGSnpNTU4zaitVWmhMY1VwRld2V1hFWTdUaGhqZmp4UnBLVktQd3hpUVZmOXNHNHRzZXI0ZXFsanIzWHFDeGJjb2c1QVFBSkpzN3JTdFhhQ04yMGFWMHZESGxKeGRPOTFpaU9kRnBIWlNJdjdDcmdKSVloaUtvNkg0MVhUY2NZZzZpcTQwaWRWMkdnQml4WHFEaHpvdVRBR2hpWldHMlhvSVNRaTdsbFVVenVnMFkwTVA3b0c0QUFxcUhTK0FUWEV5VEJJTkVnSnBoNFM5UTQ0Q2pyeDhzMWFraWJ3Q1lrZHVFai9IajI0dytSeU1RTzcwbC9CZUFlMnZISkdKQ1cxV0loa0NxdkVKZnZLVnE5aTRjQTZySzB2bzkzdnV5dFFUandjQTF0Wm9sUzMvUUhNOEl6STZhTE1xRHQ2SVFOUWRwQit5V1RGSEtzR1dsRThCVFpXcWxCaDIrb1RoeEZKazViOWZWYlU3dTVuUTY3VncrZElHTGwzZUFJRXdHUXYyOTQvdzRNRURuQzErR2grLy81N3pSQUJBZFkxU2F1ZnE3TGJkdEZrSFNia3k3cUJNd0liVFVYSG9Db2VpUDJWejdPdkVSQnpWZTBJYWpNNkZUUUtaT21JcDBxTllXZDZyOWlTajN5a21acGpuaHpTc3lLUGdtR2lkQzlFYWxPMnBSbHU4ZDJURHVNU2ZFMFVVcDB3aG9GNDFGMUJpZlZFcDlkMmhodzVlZTAxaXBDalJVTnBFS0Q0Y0ZDeU5KSTBZZFdaZDRBZnE2aXdRSFVMcHJjZEc0VDRZUDhZSmVXZ0JiWkVRdFV6dTVJWDM4RXZvcXZWZ0ZNZWJrZmRObEkvclZDWG9Sb00xckhoK3VsUkFYY0hVQXBJYWs1TkRIQjN1WTN5MGp4bXFjZTJGWjFEYkdzdkxTL2psWC80N2ljWks3RytRTTc0OE9ocmkwZDVqYkcxdjQrN2RUZHk5ZXhldnZQeGNJa2RSUHNsZ1Vmc0FLMTRBcWZBSFFpNXJKWm1peFVaWk5GSTZiMEROUTlKekpGdVJZaWhJS3JiWkdQenozL21uK01iWHY0bXJ6enlESzVjdjQ4elpkY3d2THNCd0M2YkQ2SFQ2V0Y5ZndhdXZ2SWk2L2dWL2FGUTRkMllGWC8vV2QzRXdJY3dzcm1KMmFSVkZid1kxR1JBYk1BSEdPRGZwY0dxeWN0Z05YcFBKRFRwVmJhUWx5bEEyYWFTMENVcXdBKzNBM0hUTVZsc2laY0NiZXAwR0dJZW56ZjFKdVM0MVJyTU9yNXRhWVZsWTZ1bFlRam9JU05uQ095MkExUmJEQWNtM09mdk5zL0ZzT09sc21IbWFKRER3THJGSVBoTytMNWVvajQ3ZVFGNWdReUxLTDRpaTdwNkN0NHEzSVlOb0lnWmxnUXRpSlRyRnhpNVFiRVlQenZwa1AvNkE3M2V0TXZwdytDSUhJNWdZUlViNlFRa094S295U2pidHRXOFBMTnAyaFBySkRnNTJOeUhEUXl6MTI5aFlYY0xLOVZVc0w5eEFVUmhBYXBkSUZNYVJUQmhQeGhnTWpyQzd1NGVIV3p1NGUzY1RnNU14YWhoWUxqQ3FCY09oaTFzejhXaUh4czhqZzg0cUlCU2tzbjhhK1FIcEdhR3NmWnZ1R1pPYzJIcEw5bWowSXFTRUxLbGlBaG5zRFJsN0gyN2o3US92bzVBL2d5R0xzMmZXY1BQWjUzRGw2bVZzbkR1SHhhVUZGSVh4cVV1dUlyeis3QlZjdjNrRm8rRUlqM1llNCs3OUI3aDM5eFBzSFkzUm1sa0FsVjMwRGNDVnhJVkpVelJiUFdXbnpDQkxyVGxsY0lySUgzQzhBWW9ha1RUcE9jWGI0NjhZOHhGUkEyRnJBb2luOS9VMDNWaFBBM3FxbXRDVlRQYTdjc3JZMERmUFJTMlpFZ2kxSHIwSlpXMUFLaW1VNVJNbEl3cnJEUXVDQ2l0UWVTbFlNMUhTK0Z0S1ZNeTRrTDBlSVBtWlM1UVdCK0tJNi9zNWpyUTAwekJXSmFUUmY4bGRYVm1tZlI2UXJNZkpMMjZKNXBoSnpLTkRSd1RKMklBa2xGUVd3K0VSTHAxYnhjYUZDMWcvTTRmVnBVVjBlejJQTDlZd2JHQ01BUnVHcmR4blBoNmU0SWZmZnd1YkQ3YndjR2ZYQldvVWJWUm80YWdpMU5SRDJlbWlQZFBId3NJc0R1OVJvNlJsTlhGaHBWdlhyRXZLRENxZ1orckJRb3haK1FHa0tIZFJTVC9odWFBWWZKRGNjcUw1UmlDSitkUHNtVmMralZGM0JadWJEL0ZvNXhGa01zU1RCMFBjMmY0TzZFdC9EcWtuNkhjTFhMOTZCVmV2WDhOZis2azMwSm5wdXhLY2dFNnZnd3VYeitIOHBRMUFES3Fxd3Q3ZVBoNDgyTUh5VDcyQzJ4LzhDT1BoTUM1WXlnbmxhcXFsdVBwZVB0NEVqWFB1Q1dXT1M3RUtsU2I5K3BSK2ZHcmhubzdQMDFUNmI4NEhFQVdZTjEwRnVjbXQwMm1rV3BoRjB6QmlTQVF0YWhYNFNQR2gwUnhIbTZYNlFpalBNYzk0R09Ia1VidU9wTk1TUXFoUlo0THpuTmVzMEZaVkdWZ2ZaMFR4OUtuVjdOenJ0YTBLVEJSZEZva1NxVWlpaEFLUVdvV2RpcFlBSXpMY1dDd1lKaW5xWXR3ZTViWmNiaGFIY3hzYitQem5QNCtxcmxIVnZzZTJGZGdVcUMzdzVHQWZqeDQ5eHViOSs3aCs5VEl1WERpUGsrRUp0aC92NGQyN3V4aHhCNmJkUTZlWXdjejhBczRzTEdKMnBvOWVwKzFNTVZCRDlyZDk1U01OeWdsRjZXeFN1bm8vUjVGY0VCTHQyMDdoaVNldWNHYm9FYyt4WUtBWk5zNElnMURxWFNWWnFpd3RMMlBsdWRmdzRtc01tbFE0SEJ6ZzBhTmRiRzF1WXV2aGZSd2RIS0l6c1RoNi94NGUzdC9FcDE1N0NaMlpHWHo5cTEvSDQwZTd1SHoxS2pZMnptSitmaFpsdTBCWnRyQzJ2bzYxOVEyOCt1cExzSk8vamk5OThROXg5OTQ5Vlk3WGNjbXd3bWFnWEt6cEZNZWY2SENrREU4RlVLR3F1YjVOa1c1akcwUlBPZHF6L0kwUXVkZWNQRFMyaXRNNEJ3MXJGVStESnFEcGM2RXFOeUdWNWFqYWsyS3MzV2FuaENJMjdZVXFhamhTUXpYMW12SmNQbExSUnBLQlVhS3RENlpNSlVUN0lrYXBxSG9kTlRFUVB3V0lVVldTenlzaU9jT3YwS1NVY3U4KzhURlFKTWsrVEVzbmcwRkpZRjZGaVVQb0hsa3JzcnpIb2VFQ3RiV3d0V0I0UE1Uang0L3hjR3NiOSs4L3hPN2VBWVlUQ3hSdGlGaHNiSnlMV0FSeEFXblA0L3B6TDJGbVljR1JoSWdEVW92YWI4UW1sTnBpRzZNbmlmRnFhYnFTekM1QzhjT3FCeUJsLzBGMDJsaUtGTUNvM1Q3eUVXaE85R3E0RkVZelpRY0lGNjBTaThzcldGcGR3L1hubnNWa1hPRndjSXo3ZHo3QmUxLy9NMngwQ2tjV0lzYit3UkgrNEl0ZlJjRnZ3cEJnYlhrQlY2OWR3ZlhyMTNIaDRrVXNyNnloM1duNUNRZXJ5bFVEMTdVNlVrUk5kOVRHSjlUZzNTcnYvbENKUnI4SmFZenhKT1pxVG04bXVnNmhKSWZPV3JCVEFnQjhoY0ZJeWQxRStwQ1ZhRU1xYWd5ZEQvUnpHckllVVRKNStqc1Jpa250dDNDZjFacFJnaWc0NVRZQ0RkVlVJSHFsaXo0Wm5mNDZYWG5qMTJKaXk1SFNtbVY2NXJDNGJlcHJSUEtTeUsxbmJVNmk1dUhVaUVrUzhSSmx3REJIYzBvU3dTUzVYOFR5UHJZZVJGUFQyaENGNVMrWHEweGl0Sm43MythRCsvajR6ajNjdW4wUEI0ZEQzN3VYR0F2RG9vV2kxOGZTMGpMbWV5M1lZS3dacU1tbFFXOW1CcTJ5OUlpOXkxS29QVDdBeWtrMkNoV0pzajQzakJvZGU4MU5STmhYUERWWmRZSkoxRzRFTFlPVlhLU2xaZFdTbVpPa3NXZ0UwekkvQXM0NEdZTGFQVGRXWElzcEZOMmNpQmx6OHpPZ0MrZndiclFMTXlBWW1MS0xwZXV2NE43V0xpYURBeng1VkdIejhCYSsrY1Azd1hhQzJXNEhGOCtkd2VWTDU3RzNzNldjcllQN0ZDV2pXODBZVkQyNE5CZ0g4Y2ZjckRoNUpIcGNLandJVFBuWVBQRDhtVkxGR2JVY2xGeWNReVVabWFFRTU1TkIycmZCSmtxNGJnV1VwV25TaUNoWmZUUlQ0dXkrSlM2ZHhCWXVlSGdVVmJDOUVtZW5HRlIwWktGOHk1cXNRMnFNVjZiTkNVVEZIQ1VTUmVDUzY3NUtkV2hxTTBrd3Y5L05tblRKNER1Z1hUREVSMTFsYmdNY044RGFKdHpDUFlRSkNZNFZEcUVSbkdFVGlLUWFNZkc3S0ttWk04VGwvWDN2bmZjeGtENHFzNGorL0FKVzF0Y3h2N2lFK2JrRnpNNzJVQlFGcXNFVGtIMmM1TG9XUGtpVmtpWkRWVTd3TmxoV0MwSWFEM1BPNVZCU2FBSlk3SFE5S3Nrakw2YmNVRDZYaHNvTVRLR2p2cFFneVVaZ0FUdlJMclJOZzQ5RVZMTFJSS1RYNldCUytwR21jTExmS2d2OC9OLytSVlRVd3RIaEFJOTNIMkZyZXdlYm01dDQvSGdYMjhOajNILy9QdDc5MFkveDJnczNwbkFQdldseG94K1hocWRqSW80cDloNFJtTDBuQVhFa1RpV1RUWnZ5TFNoUjVaUFBTT0JKbUdnU1FxUnQ2VWtaendxWU9ScUprTVppTXJac3d6RW9mRjZyY0xtUTI2R3lQbG1ReHNaS09WaFlLS2c4Z0NZUzJGNEo5VStSVCtFbWlhNnVrK1F4MG5CRkR4U3pIUytOTHdTSnJ1WjNSeVUwYVdnNTQvaW1hY0ZFVEpHbmIrTk5GT1Rxa0ZUaVcydkJRbTVERUYyMnFoWkhsQ293aklCczRpUFFxZG9GUXF2VkJwa1NGWFh3dWM5L0FVdXJhK3EwZHYrc3hIcVRVOHBteE5BM09yallhbGxxY0d0VzFJTWsxYlU1MzFza1Q2NGxCNTJTV0tBaGIwcTVBSnJObVR6K0VyT1dvNWFRWWpJUnFVMEt5bUJEY1QvOXlEQU1pc05EYjRoUWxveFdVVFM0cDV6R2puVU4wMllzTE14amNYRWVWNSs1RGhIQzhmQUV0MjU5aksvOTZaK2dSME8wV21VMDhVaDRobVJnSGpYMEsrbmpuU1lvU3VXKzhieVNiQWdYdkJzeklvVzJjR1oxNm9iMExjbE9ZMzByU0VucWs0ZUFscU56MnFTRmxUTFpMM0lXVHd5VHpQZzhSdmlvVVhFNk9BbEZTcm14eXVKWW91MTNaaWpaUUJERFBEaFNTdG43eE1YK1BVV0tTeVBqSUZ5WE9OYVQ1RVpzb1F4Q0c2WWVPZWRDV1gyRlQ1YmJyMldxcjNSTEdSV1M5eDRwKzZIUVFscEt2eUhldkFMc0hXcmpRNjI5NGtJSjZJaEp4aGlNaGlQczdlNmliTGRSRkMwWW8vTGFyRXU3RGVDcmxzSXlHMTk1U0RSenBHZ3lVZm44UWNtOERVUzA4N0VhZVFWV200WlhCY3F6SWJFSHd5a25Qc3d5VDVWTjZrSnArdllGQ1M5Uk50STFnUm5pdjB1elJ6YUdIYkZKa1h1SVVzNWZNTGVRdW81allldDVKWVZoTEM4dlFrTmJKTDRxaXp3VDVSalVNRWdXRmEydTcxKzZpcHoramhMSElOeXZvQlZnRFE0amhjK1Nad0NtVmFjdDB6eVBtcFg1Y2tObzFKeEg1SjgrUFRPSkwrTnQrcFZWWFpqR2NWWVY2bXRnbFJwUXozbUZrSWNxNVBaRG9rNi9FRWlwbmtUZncwdm1seDNqb1pUVVBxalFMT0dVWVVndTFRM0dFeHpMVkdYY0xhU1luSlE1NmxER2gwNTRRYkNqWnFHY3pVT3BwTGR4bk9WcHdwSmNnOExFSUpNNHhTd1ZodkdPT3RiV0dKNmNBSElNSmtaUmxtaVZKZGlUcjBoY1JSSjg2WU5wWnJKS3o4bDk4YzhwTnd3bENxcjN3Ty9Qd2NGdzBtbWVwMERuMUtsRGtPUGN4SC9uRkFmdkpNUXBNU2VsTGVjSWRPaUZyZVQzTWt3UnlwTGRxWjNZMU5wSkg4bGUxWVdLaEkwK3FTV2RDWXdoaCswd1VubXVueVZ1eUdWRDlEYXJQTXFNdEtQbktjRThSS3k2enJsSnFHU25LalYwZ0JLNUZhUnlOOEltUldwa3grTEczQXFDd25UNEdETERrMVIwaGNwQjhYSkpvLy82QUpTb2JnU0FRa1J5RHpmRi9kS1pjNXB4RkoyQXRXRkcwNHlGMVNhZ0NrTHRQc0FSaUpMY21aUW9DN21vOVJlbTZZcEJHeU1rQ3k4ZjJLaVNqU1JURlNHS1ZhUXhLSFhwUUtLaXJ4T05tZEJZVi83MHNGWWFUTUZ3bWpzdis2QzZtMHpHR0kxSHdQQVFxMzBiSzV1NnRyRFdvaWdZYkFCYkpldXNtTzRUVzIrS2xVb2NRL25BVTRtS3pUd3VMUUtZd2FVNW93cFRtaHJvNnltTkdUZklqMXZUVnBOTzkyU1VHc2hmZ1M5aWZmOHBmbE0waHRBdVMwWGRUUTkyR3EyS3NqUVh4ZGFrRk9TaVZhRlp6NXc3UTJ0QVFFN3hHTXgwVEVwd1J2NlVsRWhCOTVGMzFsV0l3YVlyQm5ObUlSL2FuQ1Y5VnNDQ1RLaVVKU3IrckNTcldJMEp4SEZ2c0p6THhJaWN5RXVLRlJwYUJvblRERzJXbzMwZ3hFV0RaYnVOVUNid29rd29yTDRablNZdmxLbjZXOHNaS1pweEpwMm16Ukk4MUk1TTZjRmxCZHhGbHlMa0c0OUl6bWpNQUN2U0JaNHFoYXhDZHFNanB5ajFGdVdEWHlDTGxkS2NiS0Vwa21LS2NDcUNuenhGNy9rUWloSytTUzBXbGRSb3RWcVluZTFqTkJxam5sU29iQjJEbTZsQlVwSG0rRWxGVmlXZisyUTBTa0tuY1ZGUE40NFVEWXo2Y2p5WXFHaDlDRFZsc0dtU1padEtOV2NsZ0U2N2pBNGpSTWkxSVdvQk1SRnFORHo3OUNDWGZKYTBDclJOeEIvdDBVOVRScWRLMmEwKzlQUW9MN0x5akpveXNyWVoxengrNklUdk5DRUw3YkVvd0RzRVdJbEhWVFJia05LaUpwYVl4S1F6dTZuaFpCUkRmQ253V0x6NExQVnBTc0FWbks4RkJWT2FHV3BnTCtjRVVLNzVhNlRoWU9yMFFJemowbmk4TkxTSW1TVTVOM3ZwbkRoQmlzNktwMm1lazhlWXA2V3FEeW9OOG9WeWFRbmZsN1ZpTE5KOWMyc1Qxc25Bb2ozM0tETnNwTVpjbkVQWlJTbmNzZmFFa3ppYVZJRW9aY3VnTEF1SVdOUzF4WGd5Z3Ewc3lBYU9mcDJzelRIdGY2ZnB3WmFjT0NlaXdobXRMWlRLQXNtZnFVUjdWaUVzRVEvUjFaeVdjbXZsa0VLNHdjN0JxZHR1eFhBVlZVQXBBVmtTVDJXSWZFUDBrdlhId3NxMkx2a1dwT3JUTm9SUlFXbW5jUk1YU3BvaDY1eDhDYU9laFdSS1NSa3IxaVpOT0pMbVBJQkhKclhFcXZ6SkZOVUtTMnlhZUFxYXpENUpyaWdrbVFsTFV0ZUswamlvM2RuZmcwTERrQXdvUjVkVHU0K25yRDVxSkpKU0l4NHk5WDZRYVZHRXB2T2VxcGZXa3V5R1ZTQlI3aExUOUQ3Ukc3dDJJazYyWWVsOXJBaU1RRDJhckVaa2xLaTJBZTFPMFViT2tVZHhHYkxXS2NBd2xBSXJiQXdPOGVQTU9QWlQ2Z2dpRUJzVXpHaVZCYVFXMUpNaERKdGNTaDJSUGtvOXZ2S2p6eFhpS2UwMjVpU1FDcElNaEN5a3FpVXNiRjJDc25vZlZtaTZqcUxXcHc4VG9kMHFVN0tTOVhpSzM2UTVncUNVSlNGVEZvZ2hrR2FvQ1RVY2V1SjYwSjhqbE5hSkt4R2VCMnVuYmRDaFNIR2lOU1RVcUhRb0JiWlNjM05Td0xOR0NhYzhmVWhYR2pvZlExSGRmU3VZd2FoTmltQTJMdFRhWWpWOUNjOFZJOXYyNGhlMmdtejV5cFNvUWl1MHZjRmxSazVBOUxmVDVhUEdCalFYZmRyaEZaaEs2TkZmbGxWYlFsT1RtL2hnQm9ZZXE4aXhmTFNZZW54UWlnR25CdFUzYVBwWkNZMmNNYXJlaEJUQ3FsdHZ2d0FMOXNIVXZuOE1Ib3VrOU9HT055WFJ1REtjN0JrYmtRQVVqRmFuZzFhM2s1QjhDUlF1dGVpc1JPK0RkQ0J6WTlOTlRqZWFySkphTjlWQ2dSU1FsZ2Uza0s0YzFLZlE0OUtTR1oxV3l5c2RxV21NTTMwOUcwaTRWYlJtS0pOTDJ3aUMxUXN4dGlreGlqNVZra2JSZ0VtWm9OQVVqVmFtYmIyazZjOUgwdzQ5elV3SFZjaUlWcVpSUXdHbzE1em9pVmR6K3BYemN1S21yWktqWmNwZUpNY0l3bm9vcGpWS09WczRJSm14RDRkeis3WEt6eDROMVJrMTI2cnNDZEZaY1dtb3FHZnFxWjlEOHVkblpIMVhYUENTLzdkb2ZLRGhucG9sWGNjVGtxWnR6cko3UkZuYTBCU1JSdGZOUWhtSzdOb2F6bkpXM0lJeHpvUlRXVjJKcHhLSERFU3J5RW54cWdUekVXWmRwK2RBVUpRcVMyWitvZjlFSkpDOFNXVUNpcUpwVStiMU9KVm1xOUI5c2ZrbXJmVVNFWWxuUjZoSlVlTzU0Und5eHFFb0pweEM5blZLY3dUcWJNWXJFV1ZoWmpNV1NtNXpwNm03MFZzaXUyNDVKeVR5V21RNmZGWG5nWjVhTUl0RzBKSVdoVEwwWGhOblV3QUpVMk14aXo2SUV0a3VZRVFwZUZRQjc1SWJoRXJHeXhFVTlCUXpJVFQxNzgxZEx0TldxeVBUa1ZGeUFBQWdBRWxFUVZRK0hxT1MrbnB1aEZ4UXpvdU9HbXJWd3ljUGRja001NXVTUzJHdEF4QVAwTEJ6S3o3TlFMMDVyZkIwMnl3T2t5aHZ5RUw3SWRPK3FLS2pwWU1UYlJTVGVOZyszRXovTXBhMUtwRmkreFZBSEJzZWVOTHkxVFIzWm5ZQ0g2c3BubUdrR0JpVnV2S2kzRE1uL1R3bEtuTkdSc3FqMzRKcGhxalRMSXJHbUlCYWdlMHFzc2RGc3lYZ050WVBDdE9Ua0ZzWVNGNE51K3VjdTJDemxpN0xwcFNRcnBUQ1UwTVhZS2tSbWNXNUNVd1RaTlNudGtUY1NBOVdKSXRvUzVidnlkZGk2dkRYNEdabTlaNnVJemNFUTVKRnRTc1dyaVRNU3Faa3hWclRRb2txSDZqOG9mMEpyc0RFT1VvZlgxaVVoNXcwQUFoQkk1WTRzZFcwWjU0akxlbVFSVTV6ZVk4U2EwU2RsSTAwVkU4MDdYc211WlFZZWYrajl5TFJvRlRqczRlU0tFMGNVb1N6OXJWUE45eXpIa21GY0RhYW1FeGJFaDRNRG5iclRhTnozVytTNm0wbEp0allFUFFnYnY1dW1IMUw0bWcyTnM3Mkdabm1UVkp0N2FZT05tb0pSSnAyMHpKbGIySER3eEtzekVPbEFuYk9UV0d6MFRNWGF1REFZVVAwY2VrMWdIcktIU2ZvRUx5UG9VdzNLdEhJcFFuZ2lnZVBLVm1pQ1ZHZUVLeGV6YUpSaWdQcStaM0duZ2dOSFVHakpjMW0vOEVraDBqRnV5bmJNRVprOHpWZGdQSU5JM3czanRvWlVzay9BV3ZoTUc3UTBtRnFCTHVTTkVEOEpsamlnMEcweVZGOHVQVlczVlNLVWRNQWdUSnhaR3JZa2NnTzFQUk5wOGJyVWtOUmxydXhOT25CK1hST0V2b2JIdnBnQlU2TnN0WmZUTTVFTVdtbXJrbE5lVGlrWktZZ0VoKzJOQzBRQlR3R3JyZmh0TEdJdHlJVHBWR1FqS21ZRW00WkZrSU00L1VJUXZvZThSUTRsbGM0YXNPaVZBWUlOQkVvcEN5cCsrQVhrcDN5K2c5WHdXVFVzTVEyWkJYUlRza3doTklwTE0xdW1mTDBXL0U4QmpWWXo1NHZWZ3VWVTFjYmQyV0pTdFBHVWFGMkdWSGMrNmxzQ3VTVDMvZ2MwbWt1TzM1RFlxVWxDWityc1g5UjAvempxVUdmbVBZZTBCa0xUUk9RVExCeHlocFZpenkwN3FHdDBQMVpZVHg2cmVtVCtRZ25IL0ZvZW54VG14eVJSalZhaXhWR0U4VElXSGpVeUFJUjljZUtlcXVNRVBtMGRrdVFXeW9wTkRUbXN6VnBESlFqdWxDSndDSTYyRkx5V2JVcjVoTXRVK01Qc1l4bGIycEIwY282OU95V3lWTjcvVTIzRHBHMk5nV05PbVRjK1E4YWZ3SVlja0lvVTdBWHFyaEhUMmlhbjZIVGtFUHNGYW5wUTdpaEl0VFlMUFYwZ1JSZW9rZGgrWmlLUkpseFJFTk44bjUwRm9XQm81Y0g0TTZmd3JXQzlhTmJtZXJsU2ZKRmxNaEd2clQzbUFsbFBYL1QxVmhSWTlFTTNKUUdGcGtxWDlIMC9zak41Nm5GUnFyM3BzYjBUbS95bE05YWNzMmJxbVNUTGtBcmMxVWMrU240NGxNM0ZRVjQ2bEZwK0lFQ0VveTdWQnVzR2hZTm41eXFyNGx0ZzFyTHlocDdpb1E5SmJCdGtqQXc5VVdER2k0U2daN3lXdGx1S1UxME5wVnpOZ09LMHc1dVFkRUp0aGxXSGR5UnBISHk1YWl6WDl5ZTZ4OEZUT1FrMGNHQWc0aEFwWEdMZzVMa1dXeUYyZ2RJaWs4TTVyQndxd2xrY29LVDR5TWNiVDhBNCtVb0VOTHFONjFCejkxaUtiWkQxRXkxSmNsbXJ2bElWZDkwbTRSaENxd1NzYTZkVXlDQjYvOWROZlBvM20wc3IyOWdabUVKclU0WEV5NVFDNlB5OXV6RUJyVzFmaVNhcmpzVE9id2srajFRQ2pZamlXbEY0U2tWU3ZxVXBxT0JqUnNjTjBKYThnV1Y5QTVKL203OWhtWWJwVGcxUkVjNExUQmJua0xuYlRBY3drYVdiM3lxZFczRUpBditLbHR4VElkcmljWTAwbm9yYU9vVkc1bjNpajhzMHdyUDdFSElWTldLYzNsYTRwODBTaG81Tlo0Sm1jSEk2VCtQdjdLa29sTnVTTkNlWkx4djB2UXdST0RMRWpVdVN5TEJrT1FscDZnZnJMMjgyb28zSHlXSlNEaUJVQmlHNFFMTUhJRVpGc0RZQ2x5UE1EazV3dmo0RUlPOXg5amYzUWFOQmxoZldjRFo5WFg4alo5NUErMXVKN3JFaGsyRmtiSWNJWVJhOWJtUkdxM1VoaUxOM2g5QUJvY0d4SjRodVlseHhpQ01ESDFHbm14TXdOTEtJdjZkWC9zbDNMLy9FTGR2ZlIrYkQ3WXdRWW41NVhYTXI2Nmh0N0NFWW03QmYrOHF2aC9JT0w0REd4OEc0djZxVXM5RURUVHNOclFWU1lPdHFvNWlDaDdvUk5OV1hhTEF2ZXcwOTV0UDBQWUxuc2JVUDkzOFM2Yk9wT3pQR2FseUpYa0tMdi9VRUpHbkxJQlRmcDhhaDIyUnZhQUN3R1JxTzZIa3ozNHFFYWlSTythbC9xZWtpWjB5eTN6S0RFVWp5S1I1NE0zOVQ2WXVLRDNsdmRMY3RVNDFHVUdwRGhWd0k5UG9LalJSeUJPQlNDWHBRQ0htNGpjU0M0OEZpTUNRZ1NGQllReFlDRVZSd0RCaGZISUlNenJBclc5OUZTWFYyRmhid3ZtejYzajIraGtzZi9aNXREcWw4NW0zSHFTMTZSb3dtN1JkcTdCVnpiWmpjWitUcEVHcmplMk5USUZnZ2J6RjBLVEtCRGltM2pJcFFMWDNJQUZnQTV3N2R4WWI1emZ3bVRjK2c3cXVNVHcrd29PSDkzSHZ6ajNjZnZ2SCtPNkRMVmdVS0VlSG1BejdxS3NLWk9HZGdaeHMySHBSa0VKaVlseFhqUHJNNm1IU09pZzFuV0ZGMUJJOHZhU1VSSjlXMHlDT3FzVUdSNFk0UDVSeUpmbXBpejlqb2tJaTJVcGI1ZjMvY2ZDQVBGNU1INDdVTVBLUUJ2U1NiUUM2ZDIwR0ViSUNjYVRCSXllUlhPc3ZhSnlJK2dya0N4Vk54Uk1oaXluTTRHcmxWSnZOOXhzWG9CRW1DenhOVmttSnNwS0d1U3EyTzdaN2RTS2dKRWR0ajE4azZtdVFzUWJWb2cwdGdIZ0RGQ3NvQWJDdE1Cd2NZSGY3QVI0ZDcrSGVyUitqR28veDh2TTM4Zm1mV2NYOC9BTDZ2VDdBMWd0RVVnOXZHeUVRUk96dHhCZ2NiYzc5UXlSb0ZQSTJMMWRKK3orbUhsK3JISktUc20wOGlEYlJyY2lDbVZBUVlVTEcwV2ZKUkoyNmkxa0xZMGVYNDlqdGQzSGwyaFZjdlhiRmpTNXJ3V0J3aE1lN1QzRHZ6bDE4OFEvL0NFVlJZdWZ4UGhZdlhzZmMramwwNStiQnhzUmNZMHNNV0VscVFHWVlNdkVtQmQvSFBKVGNPZWdFTnFaNG80OHNTbHpOZkFYU3FJZW9NZHRQMUZwcFBvaW5nTmQ1SmF6Y3FNT01oVlRXSTVKcWNLcldhQUtOMmZROVFkZFRWVEpOLzNsaG9WTkVsZVV6bXM2ek9RMVJqY1lqT1NqdXJKS0VNQ0xTNERRcmM4NG05MXd2K0V3YmttUElMaVdJR2hxQTVvWDFJNzVNenFTWmhvU01vUk5IWkpRaW9GVitIaVNNcXFDMDcybEtUOTdOQjhRb0NPREpFRHdjb0I0UGNQQmtGNGQ3ajhHVEV5ek10SEZ4NHh4dVBuTU9pd3ZQb2R2dmdObkFXaHNWaFlMYTAyY2RUaURSZ0pPejBTZ0VHSTlQY0xDM0R5WkNhWXdDbVR3eUxWb1FSYkgzSVIvWHpaUllUOU5WVTM1S1JvNTk1RDc0Q2dnMUNuS01QOE9NclFmMzBlLzMwTzMzWVlwMlRIYTJTQ2FrSEpPTkxBd0I4d3Z6V0ZoWXhOVnIxd0F3cXNrRSt3ZFBjUC9CRm03ZnZvTjN2blVMKzhjanRPZVdzTFMrZ1lYVmRmQzRSb2ZncnJlUFY0dkFha0x2a3FESnk3eFpFcS9DazBuY2hrREt0OEF2OGpxNFYwZTFYeTdKYWM2ZFJmSWczRFN2ejJndWVmVVVWYkdKamtYSWh2K25WTW1rSjlSNXV5M053WFNxWG0xRDBsK2tGQ3c2QlRXa0JIVG9jVWpnZDBQUlppV2Z6Y2RJZFVWbmkwdFBrdGY2bEpHZktIZWdXQkxsWUpiR3JyS0FSVW8wWkZBTWlZcmM4RkFleFhodmRicFNrQkJIM2pESC9Ea1dMUjV3SjdHbFFLVk4yZkN3TlliSGgyakxFSmRuMnpEYkgyQnRkUVVyVjFhdzhLbnI2UFU2YUxWYWNkUVlkdXU2dGxuSlpxMXp3aEZyL2NnUHFHdGdOQjVoY0RqQTQ5MWRiRy92WUc5N0IrUEJBRlJOTU5mdFlmejRNWXFvcmFESUxqTVIyN0JSdHlCWjlhUnR4bFJPSGs3cGhVVWdUTkdsbWNTaUlJSVJ3WEI3QzkyWkh2N29kLzRKYkdIUVgxckIyc1o1bkw5NENlc2JaN0c4c29qK1RCZW1NRDVuMHljK0U2dlQwMmNBbFFaTHk4dFlYRm5CQ3k4K0M0akZ5ZkVBQndjRDNIKzRoYzNOdTlpKzl4RHJQQVRzQ0llSEI5RVhnVEl5dTQzY2g0aFZoTVNmVUZFR3h6Y1ZnZWJNVVNpeDVWbXhZU1Z4NzFNVktnMUpjZUsyeEFrbUl3djlRQmdsaWxKZDZtc2RYTGlFc3ZEY29MQVZ5cmx5Y1F6dS80TzErVk1RY0dscHZaQnZBUnE3QjVvOEFrbXpDdTJ6bGlPaFVPb2FVcW14NmJYWXo0WFQ5NmRJU1pTR01nK2FpdGxFSHhXU0dUVDd1UmdrRDRtSUFJd29CRnNVV0NuV2VXTVNRV3dvQ1czdUZ4K1lqVkdmN2N0RWNXWWVuVlliVjY1ZHhlTGlFbDc3OUtmUjdYYWovWmlPcGc0bHVxVmdOUldZaUhDT1FTQlVkWVhEd3lQczdqN0d6dlkydHJlMzhQK3g5bVkvdGlUM25kOG5Jakx6N0xYY1d1Nis5TzNiZXpmWlRUWXBjaVJSb21ha0dSc3diRmd3YkE5R3NJMVpMTU1qalAyZitOSFBmaklnREd3TUJJMUhHbWs0RWttUm9pU3kyYzFlN2w2M2J0M2FxODYrWldhRUh5SXlNekxQcWU0bU1QMUNzSmRiVmFjeUkzN0w5L3Y1OXM5NkpPT3BqVUJOWXZSa1FqSVl3V0JJRUU4WkdrTTlUUWxXVnpKZlVDNThNYjVvaGtvd3E3T2ptc3FGWVlSWEFXVWN2d3pRb2l1MloyMVE4eW5yaDN1TUR2YVl5b0I1dTgxb2RaM3oxYzk0MkdnUVMwbU1vYlY2aWNzM3J2UFN2WHRjdjNHRDdjdmJySzdhVUpCeXVHdTJQU2tpejV1ZEp2VldqYTByVzN6MTNYY1FLT0paVEsvWDVmQmduNlBESTZSeS9JZDhPU0s4UEQ3eWJZaXBDbzF5TDRRdWJML0ZkS0Z3dGJwRFVDNVREK0tKZ0R3Z3ZUWmVCSjBRSG1rSzd5Q2xrSWRYSnVXbDk4aTM5MWEzUFpSbkI2YXNBODZsMjBKaXVRNFNBdUdMS3BZMEdkbVFLQk9lR0ZIdVpoYUdHMGFVQm9yQ3UrR05GeWFTMjNaTDFrN1BWMTFKWVM1Nzh3c050cW5vU2tweVhyTTRMTUh6RW1UaGtkS1haK0pQZ2IxKzIxM052Z2hHYTRmMk1vWWdyUEgyTzIrWExOS3BTN2pKRW82TXRoWmdJU1F5VUVncFNYVENZRFNrMysxeGZIekswY0VobzM2UDJYaE1Pay9Rc3puejBaQzRQeVFlREdFNjRWSVkwSFRXNUFDSXBLUVpCdFRyVVo2UjdMUGZiY1dsYzY5R2laZVhXNVFOQzZFWW1XWFdieU04akpacjgxbHJSN3g1NnpMajZaemhaTXA0T21jK09DTVo5cGkva1BTUkhFem1SS3VySkd0clRKNDk0L2xQZndaUmlLcEgxRHFyYkYrL3pwMlhYdWJhOWV0c2JtMnh1cmJpd2o5VHUvaHpEMjR4N0xQWmlQVkdqVnBqbTYzTFc3a0JTUXZ0clVmOXp5TkZpS0J3Q3dpeEdIUmRzcXJyaXNQUjVMTGwwa0hwWmtLNnNqc3JnS0dWZ1IyTGsrcGN2YmdvT1BUbVoyVVZwSytDellmZllqRjl5Qjl0NXdsS2drSUp1TGhYRUlWRFRIZ2FmTFBFSFZVZFVHVFVrVnpPcXlzckVMTjBQbDhNR0JmVFVzcWlwNktGTU1JcytYZkt3NjJpTlBNSGg2WmcvWG01Z2JtRVdSUUVsc3lFWXdjeU1rL0MwY1kzcjdoZHVCYWUxZFRxK1RMTlBzYWdVMjJIWFdkbjdCL3NjL2ppa0hneWhpU0cxSkRHS2ZGNHhLelhSUXpIQkhHTVRCSWlEQTBEaWJZQkgxdWhwQzBWa1ZJRXlpVUJaOHk2QlZOMjBhK0tQQ284Ty9LeVlaZjJ1anl6c0VmMUgwUi94cVBjTENJMEtaZGJJYnBUQjFiUkJpWkp5bVNXTXBqTU9CeE82STFIckVwQmN6d2syWDlPb2lRenFaalZHMHhYMXhrL2ZzS3p2L2tiWkJTaHd3QlZxOXRENGVXNzNMeDFnOHVYcjdDeXNvSUtBNFFNY2pOVGRxMVp6MWoyMG12M3VSdlF1cGdUbVdLQ0w1elgzeXprL0hsYklDRkt1bjJoeTgrcThJUkFJdk5iaWtXSFkybXg1Ukd4eS82SnhkMmU4ZGFONWJiY2xKU2hoZUpSTDg0SUJKUVRDTXJaSFVGcDdsYXlMdnN2aTNmaTVYdFNId2Z0UFROR2xFSTlqS2pJa2lvUDJISmQrcUwwdUZUTllDcUNKRitvVklFbkdsR09jZllNRm5uMGxUQmUwV01nbGQ3Z1N4UW5lUTRLOGNRNytjN1p0ZzFadUdlYXBveUdJODY2NXh6dTczUHdZcC96b3hPUzZReVphdEprRHRNNXlXQ0FHQTFwR28wQ1FwT3lBa1FJbElBZ1VvUlNFUVloNTlNSjAxbk1XbGdqOG9DbUJwT1hqN2tGT3B1WDU3Sm5VZTV4ODBlMjhKMUw0VHYrWk80LzhGRnJWVDZoaGJ2YWwwM3JOSy82R2xMUWFDalc2MDNXMmsxT3VrTmV1N3BKUTJsbTh4bVQrWno1Zk01c09pT2VEVWlQSmRNVXVrS3dyd1VyVzVjWlA5dmx4WWNmSW1zMVVpbHBycTF5KytWNzNIcnBMdGR1WEdkcmE1dGF2WWxVL3NJekxVSm9VeGN0bC8yOFVyalpneWhkQk9XanNoQlZhZU90MUV5VkxWbXgybFo3YVM3ZTR2bmluNEtJVkg0dmhCR1VVc3RGK1dVWEhwelZVS1pGRlNLK0RKUXNsa3FlclJDb2xHNVorY1p6QVlZcFc1aExPMHJoaVUrSy8vOUZrZ1hyRkRRbEIyTjFFWlAvT05vN21QdzVvS20wTFA2U1UzbzZzRW81a1JGeWhSZWRoeGNRV2FwOHdBT0JrczhNQkVGdWxKcE81d3lIQTNxOUFiMXVsK09qUTdySHAraFpqTkthZURvbEdZNkp6M3N3bmhEcGxNQm9sREVFT2lHU2h1MUduWnFVS0JVUk9JNkFjUEZkMldjeFFqQXo1SzYvY2hwTzlqK21wSFpVd3VGSVRBSGVMSHBlUXpITzBHNUtYbENnaldRcFNnc1BMMmEwaXh3WHB1ekF5Z2F5MmlCU1EyQlMxbXVTclVZQU1nS3AwQWJtaVdhYXhFeG1jNmJqbU9OWnd2VDRoSTA0aG4xRERFeUFwTmxFYjJ6d2NHZUhKODBmUWhoQUdOSGUyR1RqOGhXdVhyL090UnRYMmRyZW90VnVFUldUUFEvY1VyWi81NnhIYlNxWEVDVTdkV2JteWxIZ2VZaE1WUzFxbHVid1ZiVHFwVXE1R3IyZUQvWkU1UjJxR08rTXFLeS9sNmdQRFl2RmJ6SG85NkdneHNzTVh4aTRrUk5peWora1AweGIvcHFia3I2NHJFMjBKYlc3cHl0WkI5clBDZkR0a0NWZmhTZHZyVllPbFhXTVQyWXB1ZFpNaVVCQUtmMWQrS1lqNlRJQ001cXNSSmlVaHg5K3hJTm56emsvT3lPWnpaRmFRNUlnWnpObXZSN0JhRVREQ0JTR0JxQ01JUktTVUZwc3VGSUI0elJsTXAreTFtZ1NhZTJCQ054SVNoU3kyRUJLWnhrdUJGSzV3MDk0bjEwK2l4RTVUQlFQY21MWGkwNHBtSWVDU3BJa29RQVFGdGRQL3RKTHYvek5ERmZheVppTHlEVC9kRGF1OUpZWWxQUmszZHB1RDRKQTBBeENUQzJBRmNGbUlqays3ZkxHMVExMFBHVTRtVEtaeFV5bmZkZ2ZvUStlTXhPQ2tZRnUxT0JrYloyVHRUWHUxK3NrR0l4U3JHOXZjL3ZtTFFhUEhuQk4yTTlhWmpBTVR6N3QyNk56Yjc0bzVpYlpHaFZOR2RwcHlzeHNVeXBIcTVvVGo4VXJpckNYSXJIWm42ZUpITlpadmo1TmllNVFpait0ZWovOGk5Q3JUMHF6Q2U5dENUS3lxWFZrZWYyMy95QUtGNHVnMHdJRmxUOW51bkRZQ1ZVZ3JvUWpRT2JDRFU5RjV3OHZCRjRHbnk2K1JXbThYRG0zUlZBRmFkaFEyRDRMbGFEZmptUWpWbE1hcEloS0lxN3ZPRE51WjZhMUh3VmRFRlF5NTZtVWdrZ2Jwci80aUw1UUNCVmlKak5NbWhBQlRXbG9KZ250TUdBMXNpOTZvQlFLVUc1NDZEcFU1cWtiUUthNmlMTVUzc01uQ3Q2UGtzS3QrVXhwZFp2ditOMmFTYnRjQjkrTW5tbnp0ZnU5cG5IQ2NEam0vT3lNbzZNRG5qeDhTRVNLeEhEcnBUdGN2bmFkcmUwdFZqc3RBRktsMElSV04yQzArejNJRE1ubnJCcXVyOWE2T0VyZDNDaVFWdk9QTUNRdVVVbWFJcWpGR01jN1RCV1JNR3pXSkkxbURibmV3RWhCcWhSSmtqS2JKd3luTThhemxMM0JrT0hCaUdiL2xONHNZYW9OczFvTjgrd3ArbWMvNFc2Z0NXdktHdEtFOFVRenRrU1NtWGZiTEZHa0NWUENvU3R2ZTVCajBVd2wrdHRRUm5abmExMWp5b0l1c2kyQ3lBOUpRWFhkN3NNK2ZZVnIyZTV0VERrTHdsU2FGRUY1Q0ovelgxeUJGUGhyQTk5M25CRldmR3V2bERJbmpob2hDeXlWS0VJMXlCSmtoUERLZTdkMWxWNjdJZk5NVlNkMldmUTI1Vk5OVjBsb1ovdk1CblBLV1ZlMU54Yk5DVWJDSUxXc2xGYkNlNmxGRVFoQ3hjVWxkTDdxeXovWVRHOHY3SXNZcG9iYnRUcTl5WXo1Ykl3Mm1qQUtxQWNoalZEUkhmUllhOVpZQ1FKdnBlUkxwNjFCUldhclR5RklkVlplYXhmd0lITDdzUlRXakt1Y2VLTUlqdlFNU081aDAwSXdGNEtwa0l4VlNLb0NaZ0ltUW5BdUJKLys4SWY4NklNUHVITDFLbGN1WDJaN2M1UDFUb2Z4b010di9JUGZZdi93aUYvODRpT2UvcHRIakhwOWd1R0FhZERra2d4cGtkSXdtdGdJNW9GaUhnYWtJblpDR251UVpUb0tlNXdIeUVBZ1piR2FkTnRVKy8ybjN0MW1pdFdsRU1hMlFWSWdsQ1NVQmxFUFdLa0hiSzIxYmFlL2Q4WmdPdU55cDg0b25OR2Z6aG5OSjF5SzRWcWp4VXFrQ0tUMURPUng1VjZjZlZrb0o4R2tYblZiRE9Da1M5N0pCMzVaRlNNS1lwRDBLMW1mdVpDUnNZMVRjbm92djZDc3daR2VaYmhrVlBMbm5TSnIvekxBZHJWOUZ4VVRGMjRvNnVjakZ6OTg0R2VLQ3dGYXlqelZKRWR6U1c4WW1MUEZjL1p1M2phWUN1YkpBa3RsRWJXVXYxeVVDYi9hNU9qR2JJaVk1NjhZWDhpUTVuYlMvSmRUVlVvSmFZVXFsUHN4bjdhaXZUMXN2aEdvN0hOTEZtQm5nWlVaaHNOWTlaa1FFRFZxZVYrbDg1YkZCWHhrOUVRdmZCU2RCVWhLNS9hakVCNkp3bitmclRsMUpvYktBUzBRT2hKc2JMZmthS0dJZ1ZnSzVrSXl4WEJzRExOV2sxNnJ4Y3IyTnR1M2JuUDM4amJ0RlJzNzNtaTNDSlJFcHlscHFqazVQc1NZbUx1djN1T2wxKzVoa0dpdG1VOWpCdDBoWnljbkhPdytaKy94UTg1Mm5oQVBlZ3p2Q0I1RURUWkZRZ2RObU1TRUlrV2xDVUZtWDFaV0dxemNURU00SDRiRW9GTnZyR2E4M0VNWjJNR2VzcjhEalM2eTc0ekxPVFFDZEVwZGhWeHAxeEd0ME00VTBwUlFLcFFFS1hRUjhwbmR6THBRbldhYkF1T0hwZm80TXVFRnhocmZtNUxsVFdRK2kvSldJSU9jK3NOQkkzVCtFR1lIZDVCQlAwbzhEbDkrWHhZRUZCcVhMQnV1a2kybVBjaXI4UkZ0TG16RzZRQnpYSjQyK2ZmZ3A3OWpoQ3FZOVZJc3VBNzhmYnIyVDY1c1U1b1BGalVMMUlXU0dVa3VtWkM2RjhaTi9tem1HYm5zdEpEeGVqNTBza3JFTysyZDFWUldCaks1SUNrcnJHVUZJNFRPVllJbFRWekZ6aWlFMWFIYml0aWdKWG02c3NhK25MR0RjY3A4a0NjcWtnYXJwYysyS3BJaXJseG5VbWRoKzJjandDaEZJaVN6SUNRMW1xRXhESXhtYkRReklWSHJsMWk3ZW8wcnQyL3cxdFlXYTl2YnJLNnQwV2cwU0ZOTkVzOWRpK2JPWGExejRreng4RXFrc3A0R0tSV3FVNlBlYkxGOTR5cHZ2UGV1TlNRbEtjUEJnTE9UWXc1ZnZPQmdaNGVIang3UTM5dEI5bnVzaUpTVlFOQVJoazRvTVNJa0RVUFN3SUZEOG53SVNrVG5yTUlLcFRVNElWTDN2ZGtGSjQ3Z3ExTkJtcWF1bGNwaUVCS2tNU2dwa0RMRktPVTZsQ0xESUN2WE13bDdkaU5uaDNWdWNzNU1YVktVbkkrbGpaTy9reEtMbnBURk5iZk1NekNFejVMS1NGSEcyK3JJQ252TzF3WVlVN0hGZTJ4SXRIc1paWTR2OTBzUm40SWxoTUVvQndYTlNvNVM1cHZJOXN2a3d5aWR1NTQ4Wko0ek1WQmFyWWl5cUFkLzJPY0ZmSG9iZzZ6MGs3NjlXaFI4TjArRVZYZ0poTURJREQ3aGJRNnllSzFsamtqaGU5Nk5KejJtbUJDYnJIZXpGYW9XV1dwdmttTytNSmFtSTRCRVprTWpPK3N3eHRnU1dVT2FhQlRXQ2l5ZGo4NTRwNG9TMHQxV3VCUVlTU0lnMWhhZmxXZ05nV1J1SktlazlPc1JwenFoY2VVcUc5ZXZjZlBhTlRhMnRsaGJXNlhaYWhQVWFtaFNaOSsxai90c09zbGZ1dXdtMUtaUXZHbC9PbXJNUWdDSFZPNTNUR3JuTVFwV1Z0dDAxanJjdXZjeWdsOUhhTTFvMk9mODlJeWpGeTg0ZlA2Y2c1MW5mUGI4R2NuWk1lUHRHendnWUJORG1LYlVERFNNSVRUQ0RnZXplWWNLaUpSQUJkSWRwZHBGYUV0UGdabWlVL0tmMGU5enBSQWcxUUxOSjE5N21zVE9TWFNSQVVqVnhab2xET2xzaldaeWdaSHgwcHB5ZDZ5cFJNTzVkNlQ2bDlMQ0c4YWFzZ2JBTTd2cFBCbXArdjFsRmt2SGZ5eFJUMHgra0F0UFZxK2tzTTVUNmR5VjdzR2VqOGNNZStjWkVtelJYU3ZFb29CQjVJZUF2MjQwbFRXUktPMVRGNTE1b3NKdDlXMnNCWmtudTltbEtVN1pURUpiYlBuTmtocWlMTmpJRHA2eTBGRzRYUFZpeUZtRWhIcmlCdmZ6YWs5SFh2SnpDZGZiWmhXcE1hVlpTaFptS2ZPQm90dTB1QnROQ0drRktVRkFIQVRNcFdLU2FxWVlKa0l3MHBxMDJXYjl6aTIyYjk3aWE5ZXVzTDV4aVVhblRSaEdoRktRdW1BUjZSNzR4Q1FsK3llcEpoR0pSWkdKck4yUjNuSlpGNjJLbTdSWXpYdFFkdEc1S3NacXpFVytvc1NiWERmYlRScnRGdGR2M3dTK2hUR1MrWHpHZURqaTVPaUlvK2ZQT1h5MncvR1RoNHllUHFJUnoxaVZncmJRdEpXaEZRWjJkcUFDRXFFSWhQdnNzZ0JWcDdyTVd6TUJRdXM4cGRpSUl0TGJlQWU4OFFkNFdsdU9nbGM5NXJ5SjBnQk80NVdlbnQ3Rk1RRXkvWVgzOG1UelJHbUtGT2xsVHNDc05zMlRuNzBEV0xzYk40K2V6MnRsNDgyNUt0TG03TS9YMm00N3RjVzlLMkErbVRBYzlCaWNuWEIrZU1Denh3OTUvdVF4VCs5L1NuZC9sOEQyMExMa3hCTXNDZkFRM29vcFU1VjVpMHVUOVRtbVlyNnQ1TCtKWERjZ3ZaUFpPWlg4c3Q0VFF4alBqRk94blplV0xiSVNCR0k4WVo5L1FQbEdjZUZsc0ZzbXR5bTg3a1lVY1ZQR1NreDhjSW5KNWdsNWVxejlITks4WFJIMnY1SENSVFFYS1BKWUJNeUE4eEQ2WWNpeEVPaDJpODA3dDdsODR3YnJtNXRjMnJ4RVoyMEZGWVl1TWRoK3Z4a29WT3NFVWg4ZnJuTnFqa0RrSFA1VWF3OTJtdVlCTFVMYTIzSTZtZEx0OVRrLzYzSitjczdheGlZeWxHVkNrSERKczY0WDFqNDR3LzNlTTBCbjdyTkFVbXZVcVRVYXJHOXY4TXJiYjRBeEpMTUowK0dRNDZNVDluWjJPWHF4eXllUEhqRjg5b1JtUEdld2RvblZGTlpVU0ZNb0lxRlI4UnlaYWx0RmlTSUozTFoweXE0a3MwVGZuTlNVSFZBMjEwc25DU2lUK3dNV1lzTk5rZTF3Z2N5MTJDUjRUYjgveDhBc3B3R1pDcnlrRkJ4VDBmOW5MNzRTRHFrbVFFby84OC9rTFhxV3Zwd21NYU5lbDJIM2pNUDlGK3p0UE9IcHd3ZnNQdnlNaytjN21Oa0VKYkVjakRSRkdzMXFwMGtndEhFOXIrdGZQUlN5OExlQkJacWZZbnRTWkpGSlF6a3IzbGNvWmFrbE1nTmN1c2REWjhHV3hhekI0S2tIczBsMzdwTXVCaUZaaUdNMWxOVDRVdUJTOUpJcFJCeDV5U1NMNFk3MEtmSXlkenBtcllERzZ2aFRZOWVGMGtFeGZLYWl4aEpyTkpKRUNHWlNNRkNLV01MVXdFeEpZZ1JKRktFMk43ankwc3U4Y3UwS25VdHJyRGtPZ0ZDQ1ZDZXVSWGFJOERTQk5QR1l5cG42VCtmYlVwOW1ZMHZERkpMVWVjd1ZnVkFJWURpYzBPMzFPVDA5NStqZ2tDZFBIbk40Y01CNE5DUUFmdkQ5SDNMNTJqWGVlZTlkM256ekRXN2V1c0htNWdaYm0xdlU2eldrVXFTWmg4UG9FaFhYbUN4RzNPUjlhSllINlR2MGdscEVwN1pCZStNU0w3M3hlbDZTejZjenVxZGRqdllQT041N3pvdG5PeHg5OWpHbWU4eEtLbG5CMkdwQkNpSnBpRlZzbjVBd2NJcEhRV2FvbFc0N2xSM2dhVjZGeVh3YkpMekJrQlV6VWFSQVplRXNYb1NYRXFKc01jNTZlQ281QnhUYy9leVpLeXQwczBOQWUzWjdVMGtRZ2xTbmFMZVprRUlUdWczUmJEaGcxRDNsOVBDSS9kMm5QSG53R1U4Kys1VHp3MTJTOGNET1FvUjkyWldBalZySTl0Vk5ybCs5ek9acWgyYXpScWRacHg0RkJMNENSeGlUcitRSzYzZWhHQ3VmZU5JUmY0b0F4RnpwWkhTWk1wVDE1VnA0UVJYRlZES0RNa2hURVZEa2FpdmhXVzhMR1pEMC9KRFp3U0Z5NmFiVEZBaHZTT0pob1hLNmtDdWRaWjc5NWdRdlNoYnBOdHBpUWVKVUUyZWJLL2NTcE5pdFF5SWtNMkJpWUpCcXpxT1FZd0gxVnB1Vks1ZTVmT2NtRzFldnNMVzl5YVdOVFZydEZZeTBYek9PNXpsTDN4aU5OdEpxSGt6Wm9wbnRiek43czh4cURzdXhzQmNBQUNBQVNVUkJWT0ZWVis2aGorY0ozVjZQczI2WGs2TVREbDhjOGVEK0E4NU9qMG0xdGhTaExKWFdZQk5ybFdJOG5mSHcvbjArK2NWSFRoZ0VTaWs2cTZ1ODkvV3Y4N1d2ZjQzYmQrNXc1ZXBsdGk5dnM3S3lRbENMM01aSE83YWR5bEhtMW01ZnBFcTdzV2lCc001V3JOTFFhSy9RYkYvaTZ1MlgzVE9Ya3N3bmRNOU9PRDgrNFdodm4yZVBIdkRaL2MrWTd1K2h3NVQxcG1RM2FOQXlJUTJNVlZpU1dwZW1CcFBvSExoS211WVNjT1Zra1VMNHVZN3UrNUVWZEk3dzBWRVV5Y0dtM0pzWFFranRCWFc0NTFpWWdocmtVYTk5VnlVaUpjeDBxbW5DYkRqZy9QU1VzNk5ERHA3djhQenhZejc1OEdjYzcrN0FmR0xGYVJLRVNZbVVvTm1xYzJtN3paWHRUYlkzMXRoWTdkQnAxbWcxNm9SSzJ1b3ZUYjM1UTBKUTdWYXk1Q3Q4NkVFSlo2enhUV1ZpaWNEWXR4NFVBZkVGZGtzczhIcFNyM1EwUllldlJjbDRrUkZwaGFtc1ByTDlnMW1tdVBaUCtlSkFrOW5JejdINk1qQkVCdUdRVW1hVmJUNjVqbzFnYkF5OTFCNENzVFFrUWpDWXg0d0RSVzFybTgwYnQ3aDcreFpmMjFpbnRiWktzOUVpcWtVSWlSWEFPREhSWkRwYTRORmx5a2twUGQya3RnbXhPcU1iQ0RlZGx4WXlPbzluakVjVHpzL09PRDQrNXZEZ2lMM2Q1K3p1N0RDZHpld2FUS3A4YzJSa0RTTmhybTJsa3ZXdHBBa0JobVpyQldVTVVxZlVqTEh6RFpPU21KU2YvUGpIL1BVUGYwQWF4NVo0aE9IbDE5L2t2Vys4ejh0MzczTHI5aTJ1WGIvT3h1WW1qV2JEV255Tkx0QXgrVVMvNnJ2TGZyOXBpZW1QTUFTMWtFdFh0OW00c3MyOXQ5L2syK2E3NkRSbDFCOXdkbkxHOGNFUnp4OC9ZdWZwWXlaN3p3aEhQVmFrb0c0TUhTUU5BNEZVeklVaTFiYUNRMktaakNwQXBMRzdnR1MrR3BiR2U5YjlwTTdjczd1WS8xRFNweHNIaDNIUHRtMDVORkpaN1lxUWdsQUtJZ0ZwTW1NK21YQjJmTUQ1eVJHSHU3czhmL3FZanovNEtmdFA3a004ZDl2SkZKMG1CTUt3MGU2d2VXV0w3YzAxdGpjdWNXbWxTYWRabzFZTHFZVUtZVkluN1hZcUdUMGxNVVU2dDlkSTIyUWdJWXJzZUZNbG5TNkJHZVdnQmJHY1JHcUVXQUkyckxnYVNqbUIxclhsRzVLRWQzTGk4YzdLKzhTcVpOSjNFY2lLL05oNERrSzdpeGZTeW1JemRKV1J4aUt0VkVDZ0FrSWxtS3VBbmdxWUdUZ05RZ1k2cFJjR3JMOTBqNnUzN25EbHhqWFdMcTNSV1YwaENrTmtVRU1iVFpyR2RuOXRCS2tickdWUVVGT0ZMaGg4dmE2ekcyZ1BPU2JSU2NKNE1xUGJQZWYwdE12Qi9oR0hod2ZzUG5sQ3IzdWV3MFd6TldTaUlURUIya2pTRktRSjhpckplRHZsZkpJdEpGcG8wb3o5TDEwZXRzcG1sem8vb0FPdE1hbkc2SVNkblYyZVBucUV3dGlmV1d1YW5YVysrbzF2OFBMTGQ3bDM3MlZ1M2JuQmxTdVhXVmxkbzk2bzUrSVkvNklwWm1scG9aa3czZ292SHlzSWxBcnBiR3pRdWJUSjdWZGY1NXZmL2Z1UWFzYmpJWVB6YzA0Tzl6bDZ2c1BlbzRlY1BQaU05T1NFL3FWdEhoQ3dyU0tHOVNiSmVKUVBEUE5RMHB4TmtSYmtwVEpVRUtUMEFrOXkwN0JuMW5WRFplTUdjVzVkbk16blRQdEQrdWZuSEIvdWM3RHpsS1BuT3p4OWVKK0hIMytBU09ZMEk4dUh0R3o0aEsxV2d5dTNyck85dWNiRytpcVhWbHUwRzNXaU1FRFo2WkpUWFdiT0QzdkRHeCsxbjcwSHVjZkZKeVpKQXB4eVRvalBnM011VS90NytBYVBCbFRHK2xmcElxSThhREZVY2NLbE9zSzNUNVpoUWJvTVFWaW9QVHpDdXozU2M0YWQzYlhyWExLc3RYYndTY0ZzTnFmZjdiUHo2Q21IKzRmc1RTYk1OOVlKcmwzbjhvMmIzTHU4emZibGJkcWRGa0VVSVlNd3IwcXkrVU9pRS9zWVNPbGFGRlBZaGtXR1dGTk9wKzluSWtpMyt6Wk1aMU9Hd3dIZDh6N0hKeWM4ZmZLRUYzdjdITzBmTUovTlhVbHRQNDlFUTBxQVNZVHp3V1VjUHBsSFlvR3huQUFoOHZBTW1jbS9NNk9NeUdqRkVNZVpuRnZtdTVyVWcyd0tFYmtGY2dTUlJocGo5L0twM2NXUDQ1Uy8vSXUvNFB2Zis1N1YwU2N6b25yRXZkZmY0dFhYWCtITnQ5N2s5cDNiWEw5NWs4M05EWnJOVmxFcVozYmUwc0V0eXY4YzQxU3AyVlFxd1NoQm85T2kwVzV4K2VaMTNuci9QYlNlRTArbjlNKzZIQjBlc2Jmem5CZFBuM0w0OEFHajFqRlA5M1loa0R4LzhnUXBvTk5wSWtPN2ZreVNoTVFZaExKcUxKbTF2VkxrTFl5VmoydkhJTlFvWVpCR0UwK0d6QVlEem80T2VmSDhLWS92ZjhiTy9mdnNQdnlVd2VtUmF5OXRtMnBNUWlOUTNMcCtsWnRYdDdtMDF1TFM2aXFyclRxMWVrQVVCa2lUWWt6aURzUWtHeTJYTGhDZllpaDhGMEQrR2ZsSlJZWHRWL3pacytIbmtNc3ZZZ3lYeWZFVlVsbUZUaUlRRlV4cUxqVmVBSTh2SGpBbXo3Q3JiaW9OWXFrTlNlUVpBQVdtM3Iya1NVeUlKcDNQR0haUE9YN3lHWC80Zi80ZnZQNzZxd3dIUStaeHd0YldObGV1WEdGMWZaM1dXb2RXbzJhWmZVYmsyWE9GYzFCNmU5MktubWpKUU1qdW5sT2tsUGt0UDV0TUdmUUhuSjMxMlgveGdzZFBIbk44ZE1Sb01IQ2ZrY3BYa2FtMm00aFkyNGN4Sll0ZXc3TTlPK1ZnN3ZjdkRrd3A3QU9zZ3NEQlJBVlNXWkRtZkRKRW1vUTMzbm9kbllMV3FYMEprcFE0VG9uak9ZbGpJZVRtMjFMZ2pWZjFtV3cvNHJZakpzWG9CSlBFdGcvSG9IV0NWSXJ0YTlkNTVkNHJ2UGZ1ZTF5NWNaMGJOMit3c2JuT3ltcUhVTWtpVDA4S1I1VHkwNU5GZVlmdjA2Wk1XclNTUmhRSnlVYVNKTGFGT0RrNTV1Um9uLzNkWFI0OXVFOGN6N2x4K3hidFpvT2YvZndYZk9lLyt4ZTB0bTlnWkdnVkNickF3Q2tNOCttRWZ2ZU0vdGtaUnkrZXMvL3NLVS91ZjhyQnpoT0dKNGRJSFJNR2Ruc0NHaVVGblhhTHk1ZTMyRnhmWWFYVFlUYWJFTW1VdXpldklVWHEybE5aY0JyeXBxbUU5U2dsY09NRGFpdUt1NXhuWVV5T0VpdTlMWCsyT3pTbFVFYXpERjNzdjZERzI0bjZrbHJLVVNlbFAwZ3UrWHRMVG94S3lHR2hyUHFjeXNTSUw3QWVXOG5uckhmS0QvNzQvK1hGb3dlY3ZIaEdZQkt1WHRuaTJ0VnJYTDE2bWJWTGw2alhtNmhBb2R5RGxoZ0x6VXdUcXpvVFpOekFZcUdZRFpHa1VtVlNzYkdxTE9FOHRkUHBpRjUvUVBmc25LUGpJNTQ4M2VISm94MEczWFBTSkFGcEIzSlpDYStOdEc0OUdicTJVenA5dmZIMng2SzBtc21sc2k2UkoxQUtwV3hsSWFVcTRyVzh5Wk4yRS9ySmVJaFNDVysrL2xxWjlLU0x6MVViUXhKbkIwUENQRW1JazlTSmltUnBhSmJ4RXFRRGI5aE5UcWJxMU9nMEpwN1BFV21LTUltVkpNY3hHRTJ0MWVicXRXdTgvODF2OE1vcjk3anowaTJ1WHJ0cS9mK05PaXFJaXRJMkh4SVZTVTI1WU1pVDdtYURQR05rUVlQT0JyK2twUEdFZnYrTTA2TVREbDY4NFBudWM1N3VQR2VXQ3RhdTNtVGoraTBhN1ZVT0R3NTQ4ZXdaRHo3K2lFZWYvb0xCNlRISmRPeTRpNFpBR21wUnlHcW54Ylh0RGE1ZTJXSnpmWTNWVG90MnZVWVlLZnQ5SmdrSFI2ZWt5WndiVnplZEZrVjZvVGpHdyswWHoxNG13OWRlRWxlSnkyRkVKVi9JYTZPa3FLenBCVUdlWlM2MDU2T3Y0b2c4cnp3RkhWYVlKZVFPRHk1WUtJSUxYYnpJalQrNmt0WWhLZ3grWFE1UTlQM1pGeHF1cTBXTHlmdkp3ZEUrMy92RC80dmYreWYvbVBWZi94cjFlczF4Nk54dEtZdlZTMnFLWXNyUGF5OFlBbGFmTGx5L0o2V3lQNEtVNkZRem5jN3BkN3Vjbko2d3QzZkE0d2NQZUxiemhQazhkYnRxKzZnbUdqQUtMUldweXcrd0I0SC9Fb2x5SDJ3eTU2VjdCWXk5MGFXMFVXSFdRS05za2czRkRaQkpYczNpMU5HdG1Zb29hYlF1SlNUbjBGQU1VYVNJUWdraXl2a0RXaHZpSkxXSFE1b3lueWVrMmhtVVRFR3BTVEpSckZDSVFCS0dOVlEyOWM3Z0kybUNUbEwyOXZiWis4Ti9qVTRUa2pSQkNzbkcxaVp2di9zdVgzMzNQVjU2K1I1WHIxM255dFhMMUJzTmFyVUloQ0hWcWJkK1RJdG9zNHlHTElvRDJxUXBRZ1lnRkVZRUJMVTJqVTVLYTIzT3lqaWhlVExnci83a1QzajI3UDkydVhyU3J0ZTBMY2ZEVUhKcnM4M0crblV1YjF4aVk3VkZwMVdqV1krb1J5R1J0RlZXYmpRWHFSM21JWGl4ZjRCU2lodFh0MjIxVW9BQVBOQXVYbkN0QVJGNFYybzVuVW1JS2wvZmN4bG1BM0JOSHRhUnZWR0JFTG1mcmhDcUdEK2FXSmRlYkxHb2l5aWw4RmFET2V6bGxYb0dSVjErZ1QyUGRMNTJOUlhJZ0o4VldDVUwrVk5rajNkbS9TSiszTGdnQ2tNdVg3NU1XSys1b3lGWGhXT2NXMHVLd2x0UUp2NVFNazJaSkdVNm05SHY5VGc3NjNKMGVNeUxnME1lUGJ6UDZmRUpnUXlRUVpDRDQxSURpYlk4KzlTUmRmTmZvL0JLYWxOSjZuR0NqQUNCa3NxeUJKVkNaWnNLNFUwL0t0UUhrYU83alNmdnJqQVNqU2Y5OWx4b3dnT05GSmcxVWRycTVGd2haYXNOYXFhUXdUcUVXWkpxa2pobW5zeElZb05PVTg5cTdaSitNb3lha0tBVVFobUNxT2FHWElaSTI2bjJhRExsUjkvL0FYLzFILytDSkprVHorZklNT0RtM1ZkNDcydnZjK3YyRGU2K2ZJY2JONjZ4dmIxSnU5MGlDS1BjN3lHRVJHc1lqOGIwKzMzMjluWTVQajdqd2YxSFBIbjhpQjk4Ly9zOC91UVRHcTBHVVJUa3pLUm1QZUxhbFMydWJtMnd0Ym5PWkRSaVkzMlYyM2R1RUtrQVNZcEpFNnZYMEs3ZDFDbFpnR0ZXcWRtNXJ1THB6aDd0WnAzTFc1ZXNtTXVmaWt0UmR2WjVRN1hTSFdtcStNdEtHK29Kam9RZjBHRmtyb1lGNDd3QW50ZlFMRm5TaUdyQW1DakVIYVhpTytQRkMxR2ViRmNXZjZWQVVNckNvVng5VmsxYUVVdHVydW9zd3BnRnpKZ3BTVFJFdnZyenFZN1oxdzhDNWZ6M0lpOWZwUlRNNXduajBaano3aG1IUjBmczdqNWo1OGt6OXA0L1p6cVp1T0dkUWdzN2ZkZGhpOVNWOGNiM1ZnUkZtNVM2dzFKcVA2TE05cGRoRUNDVlJDbnJaUmNPU2UxVGlreEpWOGF5cEVrbkQ3NG9IYWxzUHhNbHM5THlOQXRUa1d5WGFORGV6U3FjN1RZUWhqQU1NSFdGb09Zc3NZSTBTVWkxSm81alp2T1l4TFVScGZsQ1Zwa3BBekp3UDNzOXIxUUNOSFdkUXFvNVBqemdqLy9OLzJOYkthM1JTVXhuYloyM3Z2cFY3dDI3eDl0ZmVRZUU1UEhqSnp4Ky9JUlBQL3FZUjU5K2lGQ0tXaEJnVW8zV0NTcFFmT1dOdTJ4dmJyQzlzYzc2YXBOT0k2TGRidEpxUkNnVjhQVFpjOXBCazFkZXVvclJjMFRpREZZYVczRVlUeDZzcmJyVnpsaHRuUHVqSjA5Wlg3L0Uxdm9xbUJpZmdpa3FTc0RxdTJlTWIzdlhWV2g3UGdzb1hYeWxRczhnSFhrNm8vOEVpNlc3UDluSlVGTStHVWJuZjA4SW54N3NrVWEwSDhudGplenl2cWE2LzliNWRXUThTRUlKYm5oeG5lOTZWVlZncVR3WXFQMis3Sm9uTlNtSlRoR3BManllamgyQWtLUnh6SEE4c1MvNzZSbW5aK2M4ZWZLRXc4TkR6cy9PU2RNMGR4bW1XcEJvUXlyckRwWUNXcnJiUFBzWlJWR3lGLzJWWGJzcEJJRlVxTkF5QkpXTENCT2VxY3FVY0ZCa1Z3aEk2ZkZTVENVcHJWQnhtb1ZxYWRuT3Rxd2lMQ1N4b3J6M05rc2VSb29BbU1YUmppaGNveDRYV3dxSkRCV0JVZFNpa0U2N01QVWthWXBPTmZFOEprNFMwdFNLZUhKbWg1RzVwMThJaFJZS0dZQUtJbFNrYmJzd0hhT0ZZamFlOE5NZi9oVS8vZUVQK2RjT1RLTk5nakNXTS9ES3JhdGMyZDVpODlJS2E1MDJLNjA2alVZZEphMy9RT3ZVVlQwV3J6SVpqZm5zNFJOV1Z6cTg4dEpOakh2eGMvRmJpYWZvaHcwWjB0U3VWWjgrZnNMbEs5dXNyYlR0cWxHYk12WmJaS0UwUG5jOXF4SmxDWlpiL0s0b0NlUks3VzhHU2ZXUVlLa0R0MmdOczNsS2tBRXd5andqWGY2bHl1V1pwbVVNNGFJSDMxQWhybDZRalM0UVhoVDVzbXVxakNnVEM1WEtrcUdpKzhWSVp6RVVBaHMyYWF4OE5rNFNocU1SZzM2Zms2TmpkbmRmOFBqeEkwNVBUNG5uY3dzVmtZckVsYkxhbGZHV3ZHTUhmbW0rOTVVbElJelUzb251YnU1UUJVZ1ZJSlFreU1wMzczT1VudjhncndkeWFaa3N6V0tNTHF6V3hRQjNTWTFWZ3J0ZWZJaGFOb0hNQ3ZKY0ZWbEJTQlFvTWp6Y3UyOEU4K2c0eHZnMXF5aFd6Ym5CeTVRd1ZRaUppbXdyMEdvMXlGeXZKdFdrYVVLYXBNUnhURHlkTTUzTmlPT1lKSW50aTVwa1FOSTBweU1iTkZFZ2FiZWJYTjdlNHVyMkJpdWRCcTJHVmNiVlE0bk1rcEV5Q0pBb2pGUTYzOW9JdXNNcEgzMzhnR3RYci9MUzdTdTJ2TTh0T3Jva096ZmV5Ni9kaWp4TzRNSGpoOXk3YzVOT3UrNHFoU3pIengzNnpzRm1SSnJQejdMNE1oOWxuMDFtcFZEbGZBY01xUTdjeFdjQU85K0swNWpSWk1wa21qQWNUdWoxaDV5Y25YTiszbWM2bVdWUzRFb3A0VFViUlc1NTJSQXZxc00vRDdObFUybDAyY2h6Z1dqSWIxeUVZVWsrQWJselNoaVJ5MzRYditlVXNxWFBoVjY0ckQrbDdBZnlaMy82NXh3Zm5iQ3o4NVRKWkZyOElvM2RydHBFM3hBanBEMHQvZVRnbkR2dktDdkcrM21kd2k4UXl0a3ZMWXRPdUpjOWo5VTJSWnNuVEVWazZlR1ZUVWFTOFlZNlpUK2xMTDk0eG9PWEx0KzVMRGtzaGI5Q0tHQ1pXQWlNTUdXc1ExN0w1VDI3OERRZ29sSnNGTDhEV1FHeUdsTUplOG8vRE92SnlBNFBDYVR4bk1sZ3dIUTBZajZkWUxRaFRST01Ubk93U0QyTVdGbHBzcjI1enRiMkJoc3JIZFphZFJyMWtLZ1dXZlNZU1VuU21TczNZbHYyKzVKa0lhelBPWnVXQ3hDQjVPUjB4TTgrK29SWFg3N05qU3NiQ0oyU0FkaUZrbVdncnFoSW13eE01d2tQSHU5dzcrNGRHbzNRVlEwT1ZJSlozSEI1TVQ4NWN0NUxrY3FLeXRTeEZoMkxtdGs4WVRhYjBoOU82UGI3blBlR25KNmQweDhPbVNjcFFSQlJpMnBFVVVpb0F0YlcxbEZyRU9DZHpDVlJjN2FMOUlkRS9qSG4rLzE5cnI3T0RCaXlkR2dZWTByRWxEd0VOTDhwWEErY2RTNWFsRzhWNDNPUnBIZmdYTEFpek5KZ0hMWnM0OXAxZnV1LytTZjgrTS8vbEFjZi9jTDI2ZzVqaGNnaDJsYWY3NHFlMUdNV1dnV3BjU3MyZ1pTaFhiRXBSYUFDWncyV2hRM1hWSUpRelNLcnJWelcrY1RZS2g0dGk3aVNDOTZ5SEQ5VnhVdmpvOW5GeGJkL2psODA1ZDdUK1BNWVVZU0srS3BNVTlsSkd6L0dUUzZkSWZpcFQwV0tyUmZha3MzQ3RLRjNla0wzWUIvYzdkNXFObGhkYjdHKzFtSGowaHBycTIxVzIwMGF0WWhHRUpDOWo5SkR3bWRETnN1emxFVStvVkdaZTh3NU9wMEhKUHYrWmNUaFNaZVBQdm1VZDcveUpwYzZOUVFwR0dXekd3R2Rac0FTcnpMS1dKVlNNWnZFUEhxMHk2c3YzNkZaRCszdkluV3dFK2ZDbGQ3UTIzaFRmKzJjalVvb3RMRm1wbmllTUpuTzZFK21ETWN6dXQwQng2ZW5uSjZkTTV2T0xVdWhWaWVxMWFnSEFXRVVzWGxwQ3lFTm9SSTBhaldhelNhcksyMWF6UnJ0VmdQeFo4OTY1WWdmNFF0dFpLRjBjM29BZStyb2hhbWl2ODRUbm9paHFBNk1sOTJXUVErRXgrTXdYZzU3ZGh1NWxVV081cEs1NnE1NE1FMmxtUEQrdjdlbWlBS0ZTT2U4K09Ubi9PLy80ejlHS292QTFHaVVFNVpvVVFoM0pNTENPcFIwTDNwZzZiSXl5NDJqRXFIbHlaMHI4ZVUrSEZPTDZranlTNmRBbHc0RmtVbUsvUWpyVFBnakJCZDMvcUlrWE0yVTRmUHBHQ1VTWG4zdGxaSUJTWlJ1SXVjMWw5SnJBWnpvUnNpRjJZNS9xK1cvYTYrME5DV3hpdmYzMDVpVEYzc2t3eUd2M2IzQjYzZHYwbTdYYWRSckJNcWFYNHpiRE9ReDN2bkdTVlJDTzZYWEQzdXVVWTk3bjgySkxQQlZJbFRJODROVEhqN2E0V3Z2dlVPN29TQk52TGFvc0E0TEN1Q29qWXEzWDNzOGpYbjg1Qm12M0h1SldtREtjVjQ1ZEVqbDdhKzFlMHRtcVdZU3p4bU41d3dHRTg2N1hjNTZQWTVQdXd6N1E0dWhxOVdJd29nZ0NBaERxL1VJSEF3bGpFSWF0VHF0Vm8xT3UwR3JYcWZWckJGRkFhRkxveEtldHlFUVM0QWdva0xlRWRsTlpiSjRKT1ZlY0ZtaDdIa2x1aENsdVlBUVphNTZkcTFLSWNxcXZoeE1hanczbGZCUVhlVklKZUZCRWUydTEyUDlaY2xFV0hwS2lyWGpTdVc4OERxajdrcUN3UGJuVWttVVZDNXBWaFM5ZUhYdDZhb2pLYVNsQUxtT3NJU1F5bk1rRGFVUnAvSGhwTC84eSs4bGRYbzAyZXdHOW8xWFMxWi9pN3BKajRIbzU4dUxoVFVyRkFpeDhwOG5MMGkycWFnMWM2RktNVlEwT2Y3ZFBrMno4WWpEM1dmSVpNYXZ2UHNHNzcvekNzSWtDSk9pOWR6T29MV3hJSkI4S0swS0c3bXVlQWNxM2hPVFAwL0Y0YWVGNHd3aVNWRThmYnJQMGZFcDMzNy9YYUlRTUlrM250WUZGOEFMSDgzY3JZaUE0WGpHczkwOTNuajlIb0hLVXFPeWdib2swU214dGdFcDQvR2M4OEdRODI2ZjgrNkFmbi9JZERaRnFJQmFyVTZqVmlPS0l1cjFKa1lidGpiV0NLUWdDZ0xhN1FhZGRvdE9xMG16SGhMVlFtcGhVTmpkZGVFd3RRUGR4RkduM01wWENBS1FpeGxrWG5xSzhLZkx3c09lNU5OSlhWaHBQZko0UHNUMFFHbWkxUEo3NlR1K2R0OFQvbVJBUjJ1c1VPWEJWNFdCS2tWMUR1alJYWnlSUXp1aWpOYWFSajJpSHRic3k0Nm85Rzh1UE1RVVRINWpzcEZpY1dQSXpFZmhoRGwrQllPZkZHZUVSd1c2UUR4VjJYS0tVaHRnUERWbDJUQlZPcndyZjN6MjlXU3BqUyszVEdWYXNXL1JjSHI3dlBKYlRzb1FuenZjWGRTSFpTbUZSVWltZTRZTWRFL1BPRHQ0UVUwSi91RnYvZ3F2M053RVBiZnFTQ05LMDJ5azhyWkZQdnZSVkdDZFprbldNZDUvWTNJQ2M1SktQdm4wRVluV3ZQL2VXNFFxZGJNZUx6L1JnVS95SVoyWEpteWtwRGVjY05ZZDh2WmJiek9QNS9SR1U0YkRDV2U5QWVmOUFlZG5QZnFESWVQWkJJTWlDa05xVVpUMzVwZlcxeDJld2hBb1FhdlZZakFZTTB0ai90NnZmbzJWVHAxNkZCRklhUzlFb3kxZE9zT0w2Y1JMNS9iVnFsNWxxQzNWZXhvN1M0ZlFsWUhRUlpMYTdNWE9VMldzMU5Vc0d5NWRPUHdUbnVpbnZESVFwVjJ6OE9ZRHNoU1huQ0c2ODByRGVHbXN3aXZ2Y2xSU2xuSmpjbFZmRUFTb0lNd1hIZ1VocHVDeHlTeUN5ZHZCbTlMZG1hWDl5aHc4a2JFUi9OSzVoSkgwazVhb3Z1VFZGWTlabUxZYlUyS25lZEZkUllscEtpK2x2dUQxTkZWYmRoNzg2WXRIL0NHdEtITVV2OHhmRlVLT0VmNkw2andEU2NyaC9nSEQ4ek8yMWp2OG85LzhKaHNyRVdreTkxWmNvZ2pYeU9uSjJzdk04OGpPN25sSTBYa0xVRUpJbFRZV2R0SStTelUvKy9CalZqcHQzbnp0SlFLUlptb3kvTTI4RVJDbk9rZVl6K09ZOFhqR2NES2xQNTZ4cy9PY2xkVTFmdnJ6VDVqTlpyYk1WMWFwaVpJRUttQmxkWlUxc1lxUWdraEtHcldRZHFmTmFxZEZwOVdpM2dpSm9wQW9DTms3NnZMQmh4L3hqNzc3YlpvMTRXellHcVBUMG5Qci80NjFKd1lXcFdCTlI3bVNrc0ZNOCsvKy9FY3VHcXlrZEZ0eWp2dW1IaThxdkNRR29RSU1FVXNLVGxHQmhySjQ5UWh2aFVkbE9KN2Q1cG4rUUlqeTZsSlE5UWFZWEZDU2FjRHpWODZyY0dUZXZoZnRTd0V5bFpXMFF1SFpqUXQ1Y2hhK1VhUzlGTW8razAzTFhWaG9tVEczb015aGxPUmFlWnVLWDdxckNrUjVMckJrcDNPUkFtREp2MjlLZ1RDTGE5VmxuSVZsWDh5VU1pSkxidEdjMDJiL0o1N08yWHY2QkRPZjg4Ykx0L2pPTjk2aUVWaDRoNm5jMjZKQ3ovV1RvWVR4QnJBNWQ2OFFLaGtQWVNhZFhzTlNwaFFUby9ucGg1K3d0YkhCblJ1WEVTWWhOZEk1TmdNU2Jaak9ZaWFUS2YzaG1MUGVrTk96THFmbjUvU0dJNHlHTUFwcE5oclU2elhHNHpHTlpwTm1xK2tHZVZaa1ZxKzd2cnhScDltd000MUdGQklHbGcyWmJZaUVsR2dVajU4ZDhNbjlCL3oyZDc1Qkk3UXIwYndhOU9MZlNnUGN2Tm9zYXpMSVlEbFMwUjFNK2JmLzRhOVFVVFBUQVppSzdkZjM3WnNMekR1aTNFTUtzM3k5dDlSZFZGMHRWbTNEL28xa3FyemxTajljWGwzNlFhQ211dTR5b216dDlsS09jakNvNDkxVllraHplcEZmeUpZb0NVS1d6TWdscGdHVWN0MFd6cWt2Nk5LclUzL2hLU3o5eWJ1NW9NeXY4aHlxSU5lbG9YTFZpdCtyNnZ6ZjNQSXpYdUNuT1B2Zm41VEY0em9hRERqYzNZVjR5cmUvK1RidnZuWUhaV0swTHRxNklrV25tTFZwLzVNMmJodnZMTVRDRjdKNWcxRWhpeW9pZGR4RVpFQnFKSjk4OXBBYk4yK3hzYjdDK1dERWVES2pOeHJSNjQ4WTlJZDArMTNRa2lDSWtFcFlPYlpRdEZzZE9wMFZSOStGZWkyaTFZam9kSnAwV2kyYTlZaEdyVVl0ZjhtZHhpQ2JYeGdEeEtRSmJyZ2NZTnpMLytuRFp6eC9zYzl2LythdkVFblFHZXhWbEtYQ1JTdW84NE92UUtIaE5kY1NaTUQrU1o5Lzk3MGYwMnF2RUFRaHdVS2p4cEtKWU9ZcnpuRElac2xMYTVaUGZ3dDFZZFVKV0lpTnNoMzJvdXJQNUtHTXBlOVBWUHNHVVQ0d1N1S1ZMTmhVNTFvQ25WRndqVms0b29TaDhwRlN3Vlo0clkwdTBNMkZUYk15MnZ1eXBmTG51NXE4dHNhckFrVEZIRldhRjN6ZW5FRVVZU2greTZRbHdxMjV4QVhkNEVJZUhTd0oxblJCSDJLWkl0VGkxRStPanVnZUg5Q0pBbjduZDM2REc5dXJvQk4wb25NcXI4MUxKaC9DWnZGY3R0K1Z1YzhoYjVXeUE4TFpybTJ0cGZMOVBrWVFKNXJwZk01b1BHVXdtWEo0ZU1McFdZOUh1d2VNaDBOU1l3bEtRUmhTQzBNYXRZaXR6VzJVbElSU0FRbk5acDFXcTBHekZsRnYxR2swYWpUQ2tEQ1VCY2hFRy94QUQ0R0cxSGpENGVMOThBZmdSb1o4L0dDSHMvTnp2dnRyWHlNU2hsUnJiMGhicUVueGhxaFowblBKRStLcEFMVVFQSGgyd0Y5Ky8rKzR0TGxGcUNTcHpxWEFaV2ZZNG9zc2ZXWjJPWkJBTEh2R1RHV2xxQmZLZnJGZ0FGajJnblBCVFVXeDFza20vUjV3MGYvenNwNWJ1b05DRnhsRW51VEJsVTJWK0VYL0Mycy9TNENDZkZTOU1vWDR2RG5LTC9QWHNybEFlWGUrdkUyNHlCNHRxYkpwczFKSU9MKzhrQlkvSmpRbDI3Q3ZhekJVeHp2bGtOanMyOWJDZUdyand1aWxrNFQ5M2VmTWh6MXVYTjdrdDcvelRWYnJRRG9uMWNYc3hON211dkJ2Wk9zMlY5RXA2YzB4WkpFcWxSaElrcFRKTkdFMG5UTWNUZWtOUnB4M2UvUUdJeWFUS2Nab1ZCRFNxTmVwaFNITlZnc3BKTzFtQzUxYUNHZWpVYVBWYk5KcDFlbTBXelRxRWJ2UDluamw1WHUwV2pXSDJuSnJTSWZlc3JGb0ZSMkZ6S2hMRmlaclNjdzZuNkhsUG4yaFFJYjgvT1BIek9aemZ2MmJYMFhvbUNUVkhxcGVPc0ZiTWNrWHdoZUNTWWR3c2hvVGd5Q1pwMHlTbEEvdlArYW5IOTVuODlJV2diTGFncE51TDJzQkxucGV6ZEtIeTF4MHNTMzFKbjZSR20yaHEyREJzcmFrdmZBZmZIOW90bnlvNW4yZEJaRk54UmRqUk1sWjZQUFg4NUROREI1cUJEcXZFK1NYWHVoOXVaZmZmM0YxNlRiNVQzYW9aT3MvM3p1UkR6QXI0aVQvMjVKRlFvMFFCWHZmdHorVXZuZjNLeHlQaGh6dVBpUFFNVjkvNXhXKytlNXIxaktyNXphUElCZkZXTGU3ZG9wU0xmS2NjcnZIbG9wNWFvaG5jMGJ6T1pOcHpIQTRwdGNmY25yV1l6UWVrNlMyb1k3Q2lDQU1DWlNpMFd6UmJyY0pwQTFqcWRWQ1Zsc3QydTBteldhRFpyMUdQUXh3N2JpdEZGUE5MRTU0K21TSFYrL2RvVmxYZHRKdWRPV1NLM0l6U2l0UTdVbW9wU210clBQUFhOaFowMDkvOWpGaEdQTCtlMjlZUm9MekdoaFRyR2x0Q1NWUktJeXdFZXRwbWpDWnpabk1Zb2JqR2NQaG1HNnZUN2ZYWnp5WkVtdk5ORFkwbXkyaVVLRzE1cXpiNXh1LytoMkNpODBpL2t0cUZyWDdwZ3BBTDh3TEM5U1JDNS9haW5CMVdhc2d6TVhuVVFWSlZsYlZWWlNON3R0VlBqd3M1NVl1MlZkalNoUG8wazh2L09qejdEOUlNVWIrSjZvQS9QOCt2WEFycy96QW9EUVBYdm81ZTM0eU83UjByWjB3Qy9MZS9DdElUd1JxeXJMbFVpUmxMb3h5d29YRzZnQUFJQUJKUkVGVUlFejNLencvT2VWMGY0OUlHbjduTjc3SnF5OWRjYnQzRFVJaGxMUk9RaHVOWTFGbkJ1YnpsTWw4Ym0vejRaakJZTWg1dDhkb09DUjFMWmlVa3FoV0l3eXNXR3RsZGRXMWdoQ0dpazZqVHFmVm90YXMwYXpYYU5SRGFyVWFVYUFJdmFyUkhtcXBSWGxxZTVrTlJsTWVQWDdLYTYrOFJEMXlrTk9TN0Zma05uaVIxN3VaRHRhcm1ETnBQTUlLcWJMZVhFcGlvL2p4MzN6RXh2b2FiNzE2eDJvZWpBQVpZWXkyUThnNFlUU2RNSm5PR1U4bmpBWlQrb01oL1Y2UGVEYTNYek5RMU1JYVFXQURXYU1vSkl3aW0xSjEycVhkYXBIb2xONWd4QnZ2ZnAzLy9ELzdCNVlKZUZHZnVBVDcrem10QWw4d2UxNXc2eXpaQkh3ZWp1emlGNnBZMFlsRklVdnB4aGNsaTNLbVFqTisvYnJRdDFJeDMxYStyc2RaRTRJdi9GNHYvanlXZkMwdnFibGNEWWlsQjRBb2pULzE1LzVPRm8xWDBsSjVGMzVId2l2bFJVVjljZEZ4YmdxRm16RWM3TDJnZjNyQzlucWIzL25OYjdMZXFaTW1zYVVWRzJ1Ym5zNWp4cE9ZNFdoRXZ6L2twTnZqK09TTTBYZ0dBc0t3UmhncVFoVVNob3ExalEya2xNU1RNU3VySFJyMWlGYWpSclBSb05HbzA2eEZCQUVPZitieUd6UHdDTlliWUpLVXhBT1VGZ0l5TzVVZkRjWThlUFNVMTE2NVM2c1IybFFoSjkrdGlxejgrYm4walhKQ2w2b3RreEYrc1FUcVZFdCs5Tk9QMkw1OGpSdFhOemc4NnpPWnpSaU5aL1FHUTg3T3V2VDZmU2J6eExwR1ZVZ1FCTlRDME00Q1ZNVDZSdHUyUkFwQ3FZaUNnSG9qb3QxWm9kVmE1Uy8vK205cE5lc1lveG1PSjl5NDl4ci8xWC85WDVKYUlwQy83VE9WM256SklmQkwxcURabjJuOGJXcnVnRnBRd1Y5WUpWUVdnMHZiQlB1eXBONk9OMXRKV3JlVkVGbUVsdkZVeXFhVThsS2QvbDljeVJnWHdQRzVYTE5mYXRCWFZkNHRmdFQ2Z3JWaFZrQlZ0eXBtWVlRcHZWK3RQd2dzcEtxaUdMNktZaTJiRHgyTmNWSFpwc1RTTDk4UGJvaWF4T3p1N2pJZkRuajE3azIrL2Y1WDBQR012WU16K3FPeExWVzdQUWFEQVhGaUdZRlJWQ09NSWtLbDZIUldhTFVNU21nQ041QnJOWnUwV2sybXN6bXo4WWl2Zk9OdG9sQlptcTVMRWJaUll2YkcxVHJ6NmhjQm9MbjEzTTBxckZQVXk3eEVNaGhPZWZwc2ozZmVlcDFHd01MR0txY1dpSklCd1FGTktiSUpoWVhDcEJybVNjcGtObWM4bVRPWnpCZ014NXljblhOMGNzN3VpeFArK2ljeFVnWElRQkZHRVVHZ3FNbUE5YlZMckdacVFxeUVPSFZaaksrOWNwdk45UTd0Wm8wZ0Nxa0ZFVkVna1lFZ29jYjN2djkzZ0NJTUFvYmpLZXRiVi9pOS8vWjNDWlNrdmI3dWJ3Rk0rUUdYeGd2VnErWWYveEpkcHloL2RIakdod0lZcW90UzE1U0hUMkxwblNxV3Rnbkd6NDByUUV4RkJrQis5NW5LMG15Wk51SGlFUWNWSXV1eXl1YkxId3ZtY3c5UHZyQjlLZ2tvTHVqNUswcE1VM3cyK1paRWVJR1UzbERFTndYN0NaakZYTUFVZWdmWEZrb0UwOUdVRjdzN2lHUkdMVkFNKzMzKzZOLytlN1JPa1VGb0dmWkJTSzBXc0g1cGcwQUtBaVdvMVVPYTlRYU5Xa1M5WGlNTUZQVXdRZ2JDUm93amViWi9URHdkOCs2YmQxSENvckIxSWlxMmRWMWErMmF6bkN4TjJDNmhpdWRHYTJQekdHVElXWGZFaTROajNuN3JOUUpwTEFKTTIweEE2ekMxdGpBcExGY3d5eUpNTmN3U3cyUVdNNTdhWHJ3L21ORHJEUmlNUmt3bUUxSmppSUtJTUFxSm9naWxKSnVibDd6SnZiYmxleGpTcWpkb05TSWFqUWExS0tRV2hRUlJSSCtjOEtNZi95MS83NXZ2Y21XempUVGFrb0tWY21HcWdra3MrTlB2L1NYamFVeFVxek1lejZpdmJ2QlAvL24vaElvQ0dwME83M3psSzk0V29EcHdNeFdubmZqaVF2YkN6cmRFakRHbDlGS3FwSnZQcVRBV2VNU0NrbUp0VVdGSHlaTXZaUllDNHUyeXpaYy8xN0piV1pzS1RPT0NLYXI1RXFLY3hVL09MRlJiMVg5aUNpeHhhUUp2OG5DVmFwdFFFUzJKeW1jcG9NcVVvQno0N0xBUnBsU1BpU3JUMGZYUjV5ZkhITC9ZSjVLR205Y3YwNGdpcE5BWTNVSUlReFNGTkp0MTJxM01uOStnVWE4UmhpNjlOcDk2YTN1RHU5VnRxZ1dmUEh4S294Yng5bXQzTEcwWW04UWNDRmt5Nm1ScnNlejd0TU5ibmFtN0NrdFV2ajNTYUVLT2o3dWNkYnU4K2ZwTGRqZHZJQlhLSmtBQmNXcVlUMkttY2N4c0ZqTWNqdWdQUm5SN2ZXYVRHZk00eFFoUU1pQ0tJbXZBVVlwbXMwbW4zWEwzcUNFSW9CblZuV0NvUnIxZW94SFZxSVdTTUF4YytJdkxMY2lFUFVad2REN2diMzd5ZDN6blcxL24wbW9ENFREMEJzdWpsREpnT29NLytZOC9aRFNKNmJSYlRPZHpSTDNKLy96Ny80eDZzMFlRMVhqbjNYZUo2aldDOG1qZExOMThWK2RheHBTVmF0VmJPaS83emVJQVQ0aXFhTjk0MGR5VkN5OVhOSlU5MThJWHhQdGZ3Rk5BNVdEU1FLR0VJbENDcUI1d3BwUzdLZlF2WGRCb3Y5T3UvbnpMWHV1bDE3NVpvdnFyNU0yWHB4YmxlTE5NeW1PVzZDbE5kZVVuU3NxOFFxVW95ZzQ4cnlvVEpiTlJKajMyTlA5K2FxMzNDOU5hUTVxeXYvdWNjYS9MV3JQRzIyKzh4RXFyWVNHWnRZQW9DSjBqemN0ckpJdnFTakZwbWwrRW1mZ25FSkpVU3JTUmZQRFJaMXpmM3VEcTFnb3FWMzdhR3oxMTBYSUZYY2UyYUpJc2RGYTQxQ2ZjSmFBZDZyMTR4dmFQdWd3bU0rN2R1OGRrT21FNml4bE5ad3dHWTg2NmZVN1B6eG1PcHFSYUV3VWhLZ3dKbFNJS0F3SVYwZTdVY3ZpdEZJSW9VRmIxMTJyUWFJUlcrVmVyRVVZQlFTQnorN2l2NGpSb3BOSE83ZWdTaTZSRWlJQ2o4eUYvL1pNUCtLM2YrRGF0bWdUajlCcEkxM29vZWhQTm4zenZCNlJhc05KdU01M1BtYWZ3TC8vZ1g5QnNOeEJDOHRXdmY1MTZvNGJHK0VQQTVhWHBzcm1XK0lJNWdDakJDazFKaDd4c3k1ZERFQmEwQXBWL1YxYm1VajVDUEV2TU5lVi9LSklFekF5dFU4NEdQWjQvZm9nU0ttZkxHMm1Xeng0dkxFTjBSU0Q1eXh3am9uTGpwNTRRU2l4KzV0bGRickk1dmZhODU1b3lPdjN6eGIrbUloazJQbXBNWkF4RVd4L2IwbGppZzFxS0NySHM1OGpTYmVmVEdmczdPNlRURWEvY3ZzNnZ2ZjhXcllZQ3JWMElwdk5rdUREWUV1L1ZHR0toYy9lbFpSTzVxazBvWWkzNDZZZWY4T3JkMjZ3MlFxVFF1WnMwUDZCRVdmeUNDM3ZKRHltSDB0YkFQREhNWmduamVjeDRQR1U0bmRMckRUazRPRVlHQVI5OGRCOGxCRUVVRW9aMnM0Q1FSRkdUOWFqdVFLaUtKRWxaN3pSWlcyblJxTmZkaGlFaURDVkJvSWlrTE5SNU9zMXB2NDQzaEVsOUJxUHc2Tk1GVmNtZ01UTGc2S1RQVC83MkE3Nzc2OStpMVFqUWFaeHJNcXpoU1RLWUpQelJuLzBJS1FOVzJrMW04NWpoM1BBdi85VWYwRjVwMlpmLy9mZHBOaHQ1UkY5d1liWCtKWjdyUW5ZcnlnSWRXYndvNWV2Zms2UG12YWRYa2hyUDNaK3ZwQXJ5clBBdGYxbmFqaTErYk9pRmdmbHN6TGcvNE96a2tMUERBdzZmNzNLdys0elBQdm81THg0L1FLQUpsQ3pMWHIvc2pONHM0RFl1L0xmTmhVMUJWWGJyaTRlVy85dUxLQkV1a0JPYkw5V2ttUXZ6cjdPWFJlVXZkcWxnY3lLaGZCdmlFblA3dlM0dm5qMGoxQ25mZXU5TnZ2THFMUUt5NlBKQzdlbERXb3czU3hEZWd5eUV3VWpMWUJBeVlEb3pmUERoSjN6MW5kZG8xaXhhMTZTZ3BTVUc0dzRyZXhEYW9GYmgzSU54bkRDZHhveW1Vd2JETWNPUjNZLzNCa05ta3hsR0tyc2xVQXFsRkdIZHJnWlZxMEVvQkZHb3FFVUJ0VVpFdlY2bldYUE92VWFiZytOelJ2MGVYMzN6Wld2NTFjWktjRVJac1luTzJpNlZ3MmdMMjdwWmZBeWQ1a0hudnkzRndWR1hEMzcrTWQvOXpxL1FpaFJHeHlVbVJvTGtmQnp6Ly8zNUR6QXlvdFZzTUowbm5BL0gvTUgvOXErNHRMR09FZkNWcjcxUFoyWEZJc25jTHlVUXhsK0RmYmtoZjVIdTZ5bTlQTFZhVGx3UXkrVEZIdmpCZUN6Ni9Fb29RQ0xhMk14QUlhd0xTbW9MbFZSR2s4ekd6RWNqZXVkbmRJK1AySDM2aEdjUDcvUDAvbWZzUFg2QVNlZTIxSFBmaXdKV3dnQ2pRa2J6Sk05WUYyWVIrMzNSM1M1RTJYOWdTaHVNSlg2SEMrY0xwdFFtaUM4eEl5aHRhTEkvUTM5eE5VYkZBYkQ0bFNvSFYyWi85ZitKVDFwekxFTUxSVEVjN3g5eWVyaFBJeEQ4L1Y5N254dFgxbEFtZG5rQmJnZ3JoRmZsRmMybHpPT3FDdjFsRG1VWGlzRW80ZjZqSjN6anZUY0lBN3VtRkVxaHBVU25NRThUNGpSbE9wa3htc3dZREVmMGhrTUdneEhqeVlRa1RsQlNFZFlpSWhXNDNqcmcwdG82WXMxOVBXVkw5VnpTR3dYVWEzYmdGb1VCVWFDUUttTk5wQ0FDUG50eXdHdzI0NTNYNzRDT25ZSVJVcmNSeUZLYXRTNGNqeGw0SVBPTVpJZEFOcS9KWmVtZTMwSUx4Yk1YcDl5Ly81VHYvdnEzcUVjMnNjbk9OSElDSldlOUtYLzA3MzlJR0VSMEduWG1jY3BaYjhEdi82Ky96L2JsRFl3eHZQN09WMWhaVzNHSjJNVmpFQmhoRmdlQVgvZ3dsZm9CRmptMlN6QlVwbXlNS2J2UjNjdEkxcXVCRXFDTVpqb2JNZXAzT1QwKzRlUmduNzJuVDNuMjZBRjdUeDl6OE93Uklva0pnNEJJQ2tLSDhkNm9LNHhvV0dGRVpQZkh0VEFnQ0FJbXM0U0h1d2NYdmVGZnROUE1kKzAreW52Wkh5Yk5SVXBuVVRwSW9hSVBGOHQxQVptUnhJTklYeUFEWGp3c0Zwc0xjYUcrd2dISXkzTUpROGtSS2hHUXB1enU3RERxblhQNTBncS8vV3Z2MDZrcmxLZGFNSDUxSS9GTXF0cE4wMFhKVXFHMUlIRVJaaWNuUTQ3UCtyejF4bXNNSnhNbTB4bWo4WVRoYU1MNVlFQ3ZQMlEwR2pPYjI3VnZFR1MrK29CUUtkYmFiWHVySzBrWUtwb05xL1NyMVNNYTlScjFXa0FZUmc0RDVyV0JPaTA2U0prRnBtUUpXQUVmZmZvRUdkUjQ3KzE3bUhUbVhseFYzQXRPc2F5enpZcS9LTUxrbDRMT2ZRQVM0VWhYdURXMU5xQ041TkhPSVkrZTd2TGRYMzJmVUpsTVMrUWt4UkloUTU0Zm5mUEgvK0ZIU0ZXajJXd1FKd25INXozKytmL3krN3gwOXc2SjFyeis1cHRzYlc4VjI2LzhvcE5lQzFBeDBWeVlFbWpLYXJIRlFaaFptTTFaV0VLVzd5WWRWTUdXYklHMGRra3puekhzbm5OMmNzemgzbk4ySGovazB3OS96c0hPRS9xblIraDRiaWZFMnBKY28wQnhjNjNKcGZXcjFBTEp4dW9hcTJ1clRHWXhSOGZIeEtrbTBlNDJjeGtHSm8xSlUwMWlESkg1ZkptUldMS0dNMEpVaHZUZUVXWTBDM2wxQysreEtYcDNOK2lxdGxIbW9rL2VVTzdmUDJjMUtNVkZ5b0pxcXlDOU9ZUXBjUVI4dDEzMmVMZ1FYZWJqS1h2UG5wS01oM3psMWJ0ODY5M1hDVVdNMFltVjcyYlBoVEI1Mkl6dDV3VmFDMUJoMWxPUUpBbXpKTFlLdDBuTVlEU20yeHZ3Zk8rQVdoVHgwU2VmSXFWRXVSYzhER3paM202MmFEV2FwS2s5Z0pVd3JLNjJhVGJyTkdzMWFsSGduSGlSSGJpSnlpalhZRlYvR1E5Ulcra3YvamdxajFRWG9CUWZmdnlJVnF2R0cvZnN6YS96UVpjdTZTZnNueWM5VUpML1hHUkRMSjJ6RjR6UDd6ZUFEUGpzeVI3UEQ0NzU3cSs5VHlqc1FMREVmcFFSajUrZjhPYy8rR3NhRGZ0ekowbkswVm1YLytHZi9qTmVlL1VWMGpUbDdtdXZjL25hMWZLV09OZkdTMzhJS0V1bmZqRk5yZHo5L2d1eElBZjJoakFaeFZRWTdCSkZRQktUekdmMHorMkxmdlRpT1llN3ozajQ2U2M4dmY4cHMzNFgwamtDbTZFaFJFb3RETGphYWJMUzJhRFRhdEtvMTJuVUkycGhRQmdJNGlSeENUS1N2ZjBYVEdleCswV3FYSkZsdkppdDFIaFpCMVg3ZTBXRFVFTFhab095eWtwMEViaGxQbWMxV0xZcWFlT0JKTCtNZkxnMFJ4V2ZxL1Zmd2hsYUxnN0tWdzVlNUxYUUNDM0tCRExuYU91ZWRqbDU4WnlhTUh6MzE3L0JxM2V1UWpxekZ0Njg0M0xCYVVJaGpDRFdGcHd4bTh3WVR1Wk1aak1yWSswUDZQVkh6T1l4U0VrWUtJSWdKQXhEMXRiV0NBTkpGRnBsV3hqWUhJRldzNUhmNHJWYWpkMjlBOGJqRWErK2ZJdGFJUE1qTkI4MGloU2h0YU1EMkJheWRNUjUyUW5TY1NFejNKdHhMM1NhR0g3eDhRTTIxbGQ1N2M1VlREclBnMHh5c0toSWM1Q055UWVsT0RFU2VSSjBqczdENXhka2ZFR0RVQ0dmUFg3QjJYbVAzL2lWZHhFbXhyalBNUHU5cFZxenU3dkhqLy9tNTNSV1ZxaUhkVkpqT0RucjhkLy8zdS94OXR1dkVhY3h0KzY4eE0zYk42MU9vQUxLUVVwMG5HUUhnQTNRTE13aHVyejQ5aDZsYkQrcG5ROWRPT0NqRkJvbHNSOTJIQlBQSnZUT1RqZzdQT1I0L3dVdm51L3k5UDVuM1AvRkIweDc1eWhuSWhHdXA2blhhbXcxRzZ5dVhLYmRxbHQyZXkyaVZZdFFNbHR6YUJlbVlJdnc2V1RLM01CNXQ4OWtPczh6K295UGJ4TFNnVXdMWDRESjVhQWU2Y3BVVm1KNUttdmxsUkdmTDBldUtxWVhGYzBpOTFLWVpkdk1ML1FJaWVWU254S1p0OXIzZndtWmRxWmNNeTRhTUd0NU1vK0YwZXp2SGpBNlAyRzFIdklQZi9OYlhOMWF4ZWlVVkZsWjZpU2VNeGhPR0kwbjlJZGorb01odzhHSTBYaE1tbXFVVkVTMUdrSG9BSlZDc3JhNmFsdStRTm1YUGJMcnNtYWpUak9xMFdoRTFHcUtLSXlzQkZlNENzZElkblpmSUhUQ20vZnVvSlQxd1dYYkRaVUhiUXJIYnN6eWFySm5ncnhDeWVBRHVZL0J6YkVURFhNdCtMdWZmOEwxcTVlNWUzTWJyZVB5akVUNEsxTi9hS3B6aEJ4S0lqd1pacW02RkNxL0xJUlUzSC84bklQakh1Kys4eVpuM1FGOU43d2NqTWNNaHlPbTR6R3plWUtSa2thelE2dFdKOUZ3Y3RibHYvamQzK1g5cjMrTk9JMjVkdXMyTDcvNmF1V3l0bTBNU0VTcStmUm5IN2hvc05KSlh5a2U4NmhsTjdEUjFwK3NBQk1ucExNeHczNlAzc2tKeHdmNy9QK1ZuV3VzWnRkOTFuL3JzdmQ3Zjkvem5qTm43bVBIamoyK0pIYWNKakc5S0toVkFVRXJjYThvVlZPYVVsUUVFWVVDTFpRaWhJQUFoUXBVSkVEQUJ4RGlJaUcxU0JVcUVwZEtUZElrVGV6WVR1SmJuUEhZSG85blBKZHplUy83dXRiaXcxcDc3N1hQT0duSmw1bU1iYzA1NzlsN3JmL2xlWDdQMWRkZTRjM1hYdU9iTDMrTjdPZ3VxVlFvNVE4RzRTempOT0hNL29MNWRNcG9QR0EwSERJTXhGSVYwRHlpeWVnVEFtbUQvYkYxb2ducTBwSVhXOVo1d2ZGMlM0UG50YzU1TWt5emVxSEpKNUJJSjZpeGZVUjFMOEZNZEFqdEJoZ2hSSzhxaUZXTjMzNVU4QjVsdklEV3Foa0NLVG9nU2J4NnNiK3JBV3hQMkJNekdPTTV6Tzlpbk5zMkhnRXM1M3BLUWY5M21iTGkycHR2VW1VYjVxT1VqMy9YeHpERzhOSnJiM0I0dEdhOTJmaDQ5ZHFBRE5tRnlvTlYwOEdRNFdoRVhaYk1KaE1tb3lGcHFoaVBSKzJ3TGRFQzNXQ3ptcm9iMjhKb2hiQllVN1pBMHRvSlhudjlDc1BCa0FmdnY5RG1WN3FtNVJNQ2Fidnl6Z1U3ZC9QL09rS3c2SytWYlpmc1VUdEhhUVMvL1pVWGVmQ0IrN2wwWm82eHBzdW5rSDFPdjRoTGZDZmJOc2lFaThZS1R6YzN4bEVaUTFsVUZHWE50aWpZYmdzMldjWm1sWEgzNEFBcEZmL3IvN3lMVkpvbWNFSW9QK01hVCtha0k4dmhhczFnTUtDMmp0dUh4M3pmSC9wRGZNLzNmQ2ZHR1U2ZnY4RGxSeC90RHFkb21pdUV3Rm5ENnkrK3hDLzlsYitPOWdnaUZVSTNUTHNSa09FVWxjSkhPZWViRGR2alk5Njk4UTQzM25xVHE5LzhCdGRldjhJYnI3ekU1dUFXU29TRVhRZGFDZ2FwNWx6Z3RzOW1NOGJqQVdtaUdBMEdQc0VXZ1FtVUUrRml5cTdvZXFFVGpIMkxZN1V1eUl1Q2JWNVFWRlVIRUVXRXRWQno4bmFldHdaTDNZMndYTmZ6RXErbU9uUjFSelFXLzkrQ0lYRlN5aHNPRmtHSERMZENuQmcrdXQvQllITml5ZGlhc3JxcGN2OXdFTi9DTmZoZTh3WFI3c3JienkwNDg0Nk9EN2gxL1cyRU1TVENvU1U4OCt4ekRKSUVuVFpCcFlMSmJNWlNTbFRxRlhDRFJERVlqQmlQeGx5NStpWVhMcDdoNHRsOXIyeHJjL0FhaFZ0RXlCRXlzUHhsVnk0Ymg1VVdvVFIxWVhudG0xZlpQN1hMcVQzdittczBGSzFBTTZRMmlYdUVVTFNzQWhFT2ZCdWt5dzFOV0VxSmRZNnFFdnoyczgvejJLT1BjbnB2aW5RbUtxUERVeFFSajF3SVJhMXJRMmtNZVdENGI3S2NiVmF3V20xWXJUZHN0eHVxeXFjQks2WFJpVVlsbWtScmhscHo2dFNlQjM3aVFzNkJQeHdId3dIRDBaaFZWdkg4VjcvRzd1NGVUamh1M1QzaXU3NzMrL2w5My85OVdGdXhQTFhQWXgvNFFKc2UzT3Y1OFluSTExKzd3dC8vNlovRlhIMExqVE5vNjRNRHRITmttMk9PRCs5dys4Wk5icjE5blZkZitUcFh2L0VxTjk1NmcvendMbEk2VkRqeEZEQ1NrdDI5SFU3dExabE5QTzlzTUJpZ1E3aWxjdzdqRE1iVUpNcW5ZOW9RcjN6UzRpSmQrRUhFRktFZzQxem4vcFRNaXBxcThpSUlxVG95YkxmT2JEREkwWU1tYkhjckM5dVc0UzFmb3VueDI0cWhtUUFSUWtPK2ZYZCs3OVE5ZGt6YWp0b2krcnllazYraTdCbElYVmVWUlBkeDMyemRoVVNLU1BzZXg1bzNMOGU5dUcvUlQxMFdIbkV1bTVMZkd0NjllWXU3TjI4aW5lSFMyVlBzN3N4UUNvWTZZWkJxTDN3WkRSa01Fa2FwZDZtSmdFZjJZUmFDRjErK3dnUDNuZUgwY29wd0ZkWjBaYklVQW1lajNJY1RXWVhOOTJERGpHZTdMYmg2NVNvWEw1MW5QaDdpUWthQnR4Mkx0ditXcmorLzZVZzU0aDVBcVFzQk1Jb3V5cnV5a21kZmVKR25QL0lVczhrQVp3eFdLTzlZc1pheXF2MU1vekpzTjF0V213MUh4NzVFMzJaYjZyckdTVC9QR0RhRFM2VVpKQU1HTzZsUGl3b1ZaYUlGNlRCaFBCd3pHUXdZamRNQUt2SE0veVpFeEFqSnpZTXRuL3Z5NTVqTkZpZ3B1SFgzaUk5Kzk4ZjV3Ui80QXhoYk1aMHZlUHpKSjd6U3NxRUNCNk9TQ3hYTzhidTMrY2UvOFBmWXZ2d0tEeXptNkplLzhCbHVYMytiMTcveEtsZGVmcEZiMTkraTJtNTh6MjFyNzZERE1kU2EwL014OC9uY0QrTkdIbjQ0SENTYzJkdERLNzhhc2lITTBRTFcxT1JsNFFtOFVubkFRWXZ1Nm8rcy9HbmMrYWlidEpqS09nNE9EOGlLa3NyVXJZVzMxWGZiVGszUzdtcmIrOVMvSE5MNWdaU1N6Z2R3UmpPNkhrNno0ZmVMV0ozM2JXNzZDUFhkQ21mdXVXK2JGVks0TjRMdVhKNVl5Ymw0OE9nYWU2N3JZOU9pMGo5YUJ2YjZVWGNDaE9MaWpjYkpXdUlFQ2xKSUgxZ3FiYzNWcTFmWkhLOVlqQWQ4L09tUHNwd05HV2kvVWxOQ0lxeHRCdm5kQ0NHTTBKMFUxSlhrbWE5OG5VY2Z1cC9sZkJSbU9QMGp6MFpPMGQ1aFNrUDV0ZjVac282RG95MnZ2LzRtRHoxd1A5TlIybGx5b3lsN0l5NlRQU0p5bUFIRStvendXME1EQjVWK2h5OGtXVkh5N0hPdjhQRERENUdWRlRkdTMrWHdhTTNoYXNYaDBSSGJJQVZHeUhhTzRYQU0wNVRaYk1MdWFJU0tObDVKRUJPTmh0N3ZNQmo2d3pOTlBDZlF0ejYwY0pWbVJLaUVhS3NqS3lUdjNEcmlmLzdmenpPWnprbVRoRHVIS3g3L2pvL3lSLzd3SDhUYW1tUTQ0b05QUGVWajJ0dmNEZHJZSllkaGMvZUFULy84MytIbUZ6N1BwZm1VWmFvUWo5eDN6aVdKOTB3cklSaW1tdkZveEdRNkNUM2FnRUVZME1nV00xUnlkSHpFZkRGblBobjFIblFaaUtWWldiRFpiSmpPWmtHUUUxbFFlNkxZTUV5MEFVZ1Jma0xXQ2RaWjdsVmJWUVhJSU9HMWdlSXJ1ejI2aTd0KzJwQU1aejB0eFZxSHFRMTVXYkRLUys1dVN3YVRIVlE2OUE5SG00YmJsZXUvazNVbkZnT2QxTzgzcllzUU1kbzhoSENLN3JhM3pVSFcvRDUrSVp4ZkZibjNIT0s3UGovQjlUcFF1c1NicUQ5MUozSVpYSzlnb013MmpGTEpJdysvbjIrODlDTFpac045Wi9mNTd1OTRqSEVpVUdGSUhOU3RUU29DN2JjVTl2Y296U2F2ZWVHckwvSGs0NWNaRFRvVFR2eE1pcWp6YUJHM2pmclRkdVlkS3lTMzdoeHo5YzFyWEg3d2ZrYXBSaW1CMGlxdzhmMjhTQVJYbm0yTXJMMEZxMnk5QWJXMVB1NDlMMXVLem1hVHNWcHZXSzFXNUdXSkZBb2g4SWVoMWtnVk5rcFNoRXJCLzExS1NySXNSeXU4NldtWWhDQVA3V0VjV3BPb3hqWG9aMmt1ckF4Rkw3UWtPclNsci9Ka2FLbXQxRnkvY2NELy9zd1hHVTRXSklubWFMWGx3VWMvd0kvOHlBK2h0VUNuQTc3ak83K0wwWEFRN2ZyamRDUkJ0bDd4ei83dXAvbnFyLzRxRXlWNGNMRWdxV3IwRSsrL2o4bDA3RVVTV3JYNTRkYUZhT2JnQmJmNHVPYWpvMk1zanYzOVBSSVZidUJBcW5WQ1VGczRXaDBqaEdDeDJDSE9GL1M5bUd4SE1pMHJ6bm9FcExRU3BDUXJDZzZPVjJ5MkJWVnRTTk1rM0RRMmhJNTFmSHFEdzlUV3A4ZldOV1ZWVTVVVlpWWDVQRGdwVVdHRmxLWURaaXJoWUZ1ZW1JekxWa0J6VDlTMWM1RndLWnE0Znh2WDN6Mi92MGRoR01yNUdIUGRxaVBwNWZCMTRSWmRlOVN6Sk5NWVgrS1d2dHRMZDBQUHJtcHcxclVWU01PWng5YVV1ZVhWcjcrSXFISysrOE9QY3ZuK2l5aFhJVnZqamNVRzBZcHQvc3dLVU9HUWtacmJCMnUrZWVVTlB2TFU0d3cwR0Z1SEd5ZytBWnI5aXUwUTU2S3JlcG9rS0NFVmI3OXppMXZ2M3ViUnkrOG5rUktrYjZuOCt0LzZObEQ0N1U5dG9LaU5QK3p6a3F3c3lmUFNxd1EzdmtSZmJ6YlV4czhUa3NTRE5aVFdhQ1VaVFNiTUZ6dEJteUxRV3BLRy9qd0pzdzJ0Z3pvd1NibjYxZzJTQko3KzBHTWtLbHhCelhsdm5RK1J0cWI5ODJidzJCM3kvU3F4QVpyNkU5WUNDVzljdTgxbmZ1dFpwb3NsYVpKeXRGbHo2ZjBQOGNNLy9DZDhaSjFPZU9walR6TWFEbnFRV2lLTlFwMXQrUS8vNGwveDZxLzhLaFBoR0NrVjF1d09mZUgwTGtLSm9LWDNpandidWJTY0ZGaGpLWFBEd2VGaHVQWEh2Z1J6L21GckZDSkZXWExuN2dITG5SMkd3elJreVhVU3oxWjBRYmYvYnE4QkIwVnRXYTFYYkxLYzlUWkRhYzFnNkVrbVBqdmVaOGlYbFljbGxrVkJiWHpVY3FLMUIwUG9oT2xrVEpJazRaVDJ2WjJTL2xiWmxLYU5oTzVOOXI5VnVzMEo1TFp6N3IwRlJLNC9NQlRpM2toMEVZbGVaYThzYjE3R2JwWWdMTkhVdWx2SjlqZUJKL1BpWGMvLzdxeFBvalhXWjlHWHBnNjNrR3V6N2IwS3pyWHpoOEVvNVh0LzcwYzR0emZEaHBhck81VENUQ0trNDdTVVdpRVFLdUdOYTdjNE9EemtvMDg5N24zMHpuaktjRWorYWMxRjdhOHFhck5zbUo1MzJLdzNydDFrdTgxNTVOSEw3VWRjVytHdHVLV2hLdnhMbm0wek5wdU03VFpqbTJmaDgvQXZoeSt4QlZwcmRKS3l1eHlFU2tPU2FNRmdrREFjZUpmZVpEUmtrQ1pCWjVLZ3RRZ3g3czEwMzJJdDFFN3l0VmRlcHlvTHZ2T3B4OURLdGE0OEp6b2xwclB1WHIyTWkrM1QzYUM1UjVPV0Nvdmk2clhiL09ibm4yR3hzMlE0R0xET2NuYlAzY2NuUHZFajZFUWpsT2FwajN5VXlXUVNIYUw5U3RGV05iL3lILzh6di8xdi9pMm5SeU9jRkJoVGtZU2ZwN1poQmVRZFc4MHFUTFl2cWEwZEI4ZkhtTnB3L3R6WnNPdHZ0cHgrNVdHQnc4TkQ2dHF3ZjNvUEphUi8rRVFib0lSMWpTREh0Q1d4TVk2eXJLaXFHbU10NjIxT1Z0WWNIYTlJZEVLOUxhaXFBOHFxQW9RWGlpaXZCQnNPQnN3bkl4L2VLWFg0MmozNjI5M2p4UTNPTWR2Z21pTjlla3dQL2wwd0NWb1Y1RDBtM3E0MTZOMzh4T25MdERqbjJHTGJIREhONTBSN1AwYmNnL0I3MC9UOVFlSG9yR2ZHTzJ0OWI5cjhHc3JOM2xEUytaV3FkS0NrSUVtOFdtNllhaElKbDg2ZjRlSDdMakFkZ0RNbU9yUjhibDdqUys4MkxzSlA1K1dRbDc3eEZsb0tQdlNCeTBobmZHVmh1d09xNTJNTW1YVmhFdWFmZVNuREllV29yZVBOYSs5dzUvWUJlNmYyK09vclZ6aGViZGh1YzRxeXdGaFF5aXY4MGdES1NMVmlQSmt4bmM1RHlDY29KUmtrbXNGZ3dHZ1FPSUFETHl4S2RZcFNvZThXSGVTVTRGd1VHRjhZaGJVMGdTTmhuT1NaNTE1Q3A1cVBQZlVJcW9ITXUyNGcyNXFjSWpUNnlSbGxmL2lRQUFBZ0FFbEVRVlNuY0IxZUxaN1BPT2VvbmVEcTJ6ZjU3QmVlWTNkdno5TjhzcHpCZkpkUGZ2TEhTTklFNHh4UGZ2Z3Bab3RaZXlqVGFubkM1MjRjdi9ZcnY4YXYvY04vd2xtdE9UOGJjL040MDZwRnZlQk94Qk5SMnlxbGhCQmtlY1hCd1FHTG5RV3p5ZGdyNFZvQmc1ZFBWdGJ3N3AwN3pLWXpkaGJEYnRVVlpYSFU0V1MzQ01yYWtPYzU2N1ZYZ0pWbFRWR1diRFpicXNwam9RWnBDc294R2c2WXo4Wm83YU80d1dLTUNZT09KakEwY2lKWWR4SWRFRkRLSVRRaUNqdnRoWFcwWVowZGl5OUdmc2ZwYzc2SCt4WWV2RjZDVXBmRlpudk8vemo1SjhyS0MxK1B3bnZibXhiSDRud3lyWFZZNDdjcDFobXYxckcyYmIvOHNqbm8xa05mN0V0Y3hUQk4vYjQ5OFM5SzA1c21XaUZ4TEdjanpweGVNa3lUTm11dWJYT0N5NDRvWmNlMncwZUxzeWt2UFA4eVovZDN1WFJ1RDJFcmJHdGY3dEp5RWRJcjJveHYwN0tpWkp2bmJMS0M0K00xNi9XYXpTYWpyR3FVa2g2bW9SS3k2N2VDWGtNeW1VeVpUaWNJS1ZIQ1cyNmw4QWFaUytmUE1objZqTDAwVGRDSlFDay8xUFJWclExT1J0dHVtRnJBcDR1U2tpS01lZU0vYjNJTXl4bysvNlhuMk50YjhzU2pEeUNjdVZmOGFidm4zb2tUMG82bXZRbWlIQkdGNkRZWGg1T2FiNzU5aTgvODFqTXNkMCtodFdaVGxOaGt5RS8rdVo5Z09CcFFHOHNIbnZ3UWU3dDdBV2NmaU1PeDg5N1UvTWF2L3gvK3c5LzZCYzRweFpuRkhHcUxkY1lqM2NMWHBtV2YvK0RQTXdlSFIwZFk1emg3OWpSYStkTy9OYmdFRDcyL3JZL1lQN1dIVXJKOXdKMlFtTnBTVmlWRldiTE5DNzh1V2E4cHk4cTdrSFJDa3FUb1JKTU9CMHdtWTdRSzhjV05iQ3I0b1JHQzJsUitOeHBXaTEwbVNSUnlGWWtkUkd0R2NUMVpqSFhXZjQreDVsMTBtUUR4YlIzSFo4V250TzJaZDJSa2NQTHJMeWVhQytNRVNTNXFDN3hveGQvVzF0WllZM0RXK3BmYytRanNsZ01nUEh1K0tlMlZjR2pwYjc4MDBkN29sR2gvRXlwdmhsSEJQcTFhaDU4Tk9nY1B4SlN1WmpuWjRleitrdUZBaDZCSlgxKzQ0TUJzRTN4bDBMUUZSSFViM2VFa0w3MXlsUWZ1djhqZWNvNnpYdVNTbHlWNVZaRmxKVm1lczlwNFZlQm12ZkhWbkpCZVVhb1ZXdmtlV3lWRGxyc2pyejBKclZ1cWZNV1hERFFxU1JpRzFWaVMraEs5ckN5dlhibkNRKys3eU41aUdySUM2U0pkd2hDNE9TUnQ3NGZSajVuM2FsRVJoWTE0NmJNTXovTzJjSHp1QzEvbTBuMFhlZnpoKzhCV0hXRE85Y04wWTh2V3QweFNjNTBXb2luZkxZcXJiOS9oYzE5NGpzVmlsMFFydG5sQlpnV2YrdFJQTXB0TnFPcWFoeDU1bExQbnozWko5RTIxUVhlWWZPNDNQc2N2Lzh4ZjU0eVNuSnRQd1ZocUlmb2dVeUhSMHZrUXhTWU9hNXZuSEIwZnM3ZmNZejRlZGVRVzBjRWduSFBjT1Rpa3FHb1dpeDJPTmh1MldjbG11eVhMTW9xaWJGOUVyWlMvZVJMRllqWkJKeWxhSjU3SVlsMWttWXp3eWUyOTZQOUpXUlpJcWRBeWlTUzc4WWNkQlkvRUVWWXQ4bHEwN0hwTHh4RndjVGxORjBQV2oxUUsvMXk2YUkvZTlmSXQ3Q0s2NnB1TVFhOHNzMWhyUWxrZWJuRmJCYUdOYUNyTElLbjJ2NlpTK0J0YUtZYkQxSytNVWsyaUVqK2cwaElkNkxST2RGSFpJbGFrT2RNK0lNMUFVQXBmK3UvdUxUbTluSkVxM2NwOG13Q1ZOckdwRGF6d1lCQ0Q4TWFkcW1aYlZHUjV4YXV2WFdVNEdwRmR1Y2JxK0pnczIySXFBMUsyNHBZazBTaXBVVm95bnkrUXdzZXpLd0ZLcWJhRUh3eFNob1BnNWt2OElhYWxhcWZhL21BeXZuVjBjSGkwNXVxYmIvUEk1UWVaVDRlZEsxUDR0Vy9EOVpldDFWSkdjdzhSV2NDYmg4ajdIM3FtV09Fd1NJN1hKVi84MHZNODlQRDd1UHpBK1JBWFRuZHBoSU8vSGZRRmpGZm4zWWpFRmxHVmFGMm53TFpDOC9YWHJ2SEZaNy9PenM0dWFhTEp5NHFzaHIvd3FUL1BxYjBseGxydWYvL0QzUCsrOTdYVkh5ZEhDdzZlLytLWCtLZC82V2ZZcVEyWGR1YWt0Wi83SU1ObDFTWjg0OE5CQlFwcmErN2N1WXZVaW5Obno1S3F4SFBZYWtOWjE1UmxSVmxVckxjWjY4MmE5WHFMbEJLcGJuaFVjYXJSU2pHZnowa1RUVm5XR0ZPVEpuNnRPRTVUbEZaczhvSXN6OXU4ZE5uMjNLSW5RUVZCVlJ2cXFpQkpCeWlsV3FKcm5ERGJOOU4wN1V1ZkZ1UVRBYXJhZVB1b0U0aWVhdTRFOGFiNU9rUThxclhoZ0loZ0pNNzZXOXM2cktuOTJzcllkdkxidWVsTVIzNXhqbFQ1NlhKN28ybVB5MHFWMzFnb0pkRkN0TlB3N3R5Sk8yb1QySFlpMnYvTHR2dUtaNUFDUjZvMVovYVc3QzBYU08wREwwU0l0VzUyNk1ZNGpBblJXVVZCbGhWc3QxbXc0VzRwOG1ZSDd0ZGpXaWZrUlVsZDF5Ukp3bkM0aXdxY2ZxVWxpVXBJdFdRd0hKQ20vZ1pQVTIvTDFscDZ5S2NVclRKVGhndkFOUjRUYTBLYkY5eDgwaVBFNzk0NTVLMXIxM244c2N1TVI3b1ZXd25yT2p0MEd4MG1vK1E2RlFXWnhIcjlhRkVUWmQ4NklibTd5dm5zRjUvbHlROCt4Z01YOTNIaDVvK0hyYjJFdkJNZ2JkZHlHNXJFYWRrTzE3MjNSbURSdlBEaTYzemxhNit3dTd1TGxvcThxampjbHZ6MFQzK0swNmQzTWRaeTRiNzdlZUQ5RDdaNmkwaFkycm91WDM3dXEzejZMLzRWNXBzdGwzYm1EQU1oMllyT2dOOThHdEk1dEpDU0xDKzRmdk1XdzlFWUlSVFhyci9yQnk1RlRsV1dLS1hRcVdhUURORmFNWm1PbWM5bmFLbFEyaXYra3NRUDRqWmJ2MmFaakFZTWh6UEd3d0ZLS3JJczU4N2hrUTl6NkVrencyMkRqU2J0a0dWYnBGSU1oNk0rTWttSXdLOFBONjJNcHQ0NGJPMUx2YnF1S091YXFxNnB5NXFxTXRTbW9oSVNLenEzVnpTRGovYjdybHVETm9NMVUzV1FTbVBhcjZVVm5qaC9DeWlCNXcrbVBsc3UxZjZ6OFV4N2paTCtZZlo4T3RFS2w1clB3N1VIall2b0MrNjlPUjY5OWszU1d5cUVFbk0rbVhKNmI1ZkpaQVRXVVZRbDIzVkdXVlJrV3k5VlhXMjJaSGxPV2VRWTYxQlNveE5Ga3ZwRUhhVVU0OG1jK1d3ZUVOcGV4cHFrUGc5dkVGN3NSQ2VrMnYrM1dpbFVxMXUwUFlOU1J3UXlORzEwR0x2NXo4UkdOMmQ3Q0VxY2tOeTVlOGk3dDI3eHhCT1hHU2E2ZzhxMFoyTlFYRnJUNmYxakIydms1bXhtRzY0WCtOb1JVdThlNVh6dVMxL2hJOS94Qk9mMjV0NENIQVJpeHJrV0pSNVAzWnNJZFJlMUFHMjhaWk5MR1ZvR0lTUmw1WGorcFZkNTViVTMyZDgvamNCVGhROVhHWi82UzMrUjh4ZjJNYlhsM01VTFBIejVNa3JZSGc1S3lNN2dkdlcxSy96RG4vbFpCamR1OE1EK0x1UEdDOUdvUU1QM2F4MVlZMUdtUWovN3RWZklpcExhT1hTeTl0WkxwZEJhTVoxT1NOU2NKTkdrQWVPY2FGL09OZXVWaGd1WFp5WEg2elZLS1lhREpwZ2hJYThxam8rUHFDb2ZCTkhUWTd0SXNCSWVBMk1NV1Y0eUdxWW9yWHN2Z1pOK2dsd2JuN0JhVi80RnI4cUtvaXJEeStrZi9HYVlPRWdUUnJPaG4yTW95YXFzV2I5ejI2T2VuY0laaTdGaGltN3FRS0VOdDdqcm0yWENKWVNTd3Blc29SZE5FOStQYSswaGtWSTZiNFZ0bWc3bm91ckdob2ZFUnB1S3lPTXZZcEdQak54cnR2ZWcrcFdUaklSUHZwM3kzNGVsTm5YZzJWVjg3ZVZ2c041dUtmTFNFMldVOTljM0wzZWlGWU9CRDd4VVVxSzBKa2tFcVU0WURzSktMUEh3eXlTVTlrcUtpSy9mOWJQMG5PL21QZWdJSXJ3US9Yem8ySlFwNHQrMEpZM2krczFickk1WGZPQ3hSMUFxekVYYWxhTHJtQTNDYjZybzVVT0licmZpK25iMkUwNTlISEJ3blBHRkx6L1AweDk5aXRQTENVS1lEaTdmU01SZEhETWZJMjRrUmdocVkveTZ1alFVVmNVbXk4bHl6eUhjWkd2eWJjNW11eVV2YXhhTEpZbVc1RlhONFRibnAvN0NUM0hmZlJjdzFySjdhcDlISG44OE1BMmFGN25CMGZnNTJjR05kL25Gbi9zRnpEZSt5ZjI3TzB4YUtiekFTZ2ZHaTVHTWtCakFPTXZGVTNQMDd1NU9FNWlPVWpMSUUxV3diQVplbW9nbW1ORml4MW1valdXMTJXQ3RReXRGbXFha3d5SEdHTzdldlV0UjFxSFBsVUhJSWlMOWZheFhseFNGWC9HTVJtT01xU21MaXJyMks2V3lyQ2lxQ2xOWFdHZkRkRmVRRGxMU05HVThHWkpvalpaZUtZWVFiVjVxaytkbnJTVUpMNDBwTStveWEzWGtUVW12Z2g1K01QRENqNkZPMEZxRkhsejVBWnZzdUVBOTlWN3pjbG9YTC9IYVBTODlSNXJycWNHNmtBN1JRM0cxY0U2WmhIYkRVcG9hVTF1cTJtRHFtcUlxcWNzS2E2MmZ1V2lGMXBvNlNUQkZoZGFLeFdJSHRSc3NOc3FyM0xUU0pJa001aDJ2bzBoU0hRNzN4akR6SG01a2E0Si9weG1nZFFHZE1lR283emwwZlpkbUNOQ0tTKzRPRmlUQ0Rka2d0QlJ2di9NdWVaN3h5T1VIU1FKejBvV2JyMTFOTnEyYTdSU0JydmYzZGhNNXIrenJ0TUVPRzRJOEpRZkhHYzg4LzNVKzl2U0gyWmtPUThVcGVoV0YxOWI3TnJXb2E4cWlwaWdMTnR1YzlXYkQwZEdHMVdaTlZkVmVINnNrUWlrUzdTWEFQcjFud21BODVlRHVJYU5SU2xsWmpqWTVQL3JKSCtmeTVZZXA2NHJwZk00VFQzN0krMithMjc4WlVvWWZ5UEhkSXo3OWMzK2J6VmVmNStMdWpJWFNTRnY3U2hmWno3c1VFbWRMOWhjRHpzeFM5Tm5UZXlHclRKd29oN3ZwcHNNaW1sejNJTnl4eHBKbE9YVnRnaU1NaHNNaFNNSFI4VEhiTEd2bHRUR0l4SVloazYrc0RWVnRxS3Fhc3ZJVFkrTXMxamlVRVA0REN6SE5nMEhLZERwR1M0bFVpdTEyNjFsdXd5RnhaSGJzckhNdS92dkRvU0JncUJVNlVReWJNajFNMGJWU0FTdm1WNDdlVzJURFlLaTU1U3h4U0o2SU5QdmloQWlqMFNNSTE2MGdYU041bGJvYmVEWkRLK3ZDOSsrM0FVVlFOdGFWUHdqcnltOUNwUElyc0NUeFV1M0ZkQktFVUpwVWF3OWhrYUlWUnlWSlU2NXJVaW1SMnEvUlJJeDVqNFlIeldhbFkzVjFWR2JwUkU5TDNCNXNrZXo0bm9nVTBiMW9RZ1RUbHBOdGE5UDlLcUwyeGY4Y0xKSzNyOS9FQXBjdlA0QXpkZmg2b3lTK2FBTGJadlcxUjB6WGxEc2JVcUtSV05HdGR2MzNyYkVJYnR3NjRPdXZYT0dESDNvU3BTUjNqcllVUlVsUkJtcFJuck5hcjltRWpaWkVvSFQ0YkVNUXFWS1NKRW5aUDdYWHlvQmxvRllyclJrTlVrYmpDWGxsZWVubFY1blA1cFNWNFhDZDh5ZCsrRS94NUFjZnhWckRkTEhneWFjK1JKTHFyazUwL1NTbzljRXgvL2h2L1YxdWZ2YXpYSnlNMkVzVXNqYllXSFBhbUZ1c3I1ckdTbkJwT1VPYURLMmJ0VnF6L29nS3paTkJrUUpCWlF4WldXQktFd1l6elpwWHNzNHk4cUlJV0NpTk5aYTY5aExpcXE2cHFwcXFycWlybXRvWXZ3cFNJbXdKRXBZN08vN0JWc3Byb2xVM3ZXOXVHbXNOUjBmSHpLWmowbFRUMGg1Y2Y1QVlVM2M3TVkxZ09reDU1UDd6TGFOT09odEpnQjJDMmp2VW9vZER1STZSMzN3U3JoZDBJayt3RDIyM2pnelZqWEVtZUJNTXRUVlVkVVZWVmRTaGhhbXFLdUN0SEVyNkd6eEpOSU0wWlR4SVNYU0NWajRvZ3NDMUg2UUprOUdJNFhCQVVkYXNqMWRJRE9mUG5HSXlIclEzZUxNV2F6Y0N6WHFWN3FCcU1XSlJFbktzcHhEQzh4YWFaSjJJcE5JN0syUUVUZWxSakNNcWpZaWptbDNIRG5UdHhONGh0UmNnWDN2bkpzUEJnSE5uejJCc0ZUbEZJNjJGYUV6ZWNaS3hiQTFqd25sU29SUE9vK0pLUzFZVWJJdVNxcXpaWmhsSDZ6V2JiY2JSOFJvTC9PWm5QdStWY21IV29XVTRUSU9JYUxTNzU5c2xLYkRHTUp1TjIwTjJrQ2dHZW9CT0ZWcEprb1oxSUR0WjF0M2puQzgrOHlWbTh6bld3YTI3eC96eFAvM0RQUFhVa3hobkdJNG5QcndqMWNSQnRTNHlWR1NyRGIvODZWL2tyVi8vZGM1TmhweEtFNVRwMHBscytQbWJVTjFZVzVNSXkxQkpOQmFKUTdkNVkwUVdUUmRCS3B3djg0dXk5UHA2WjVGYWUwbGhzRWNXZVVtV0Y1UlpSVkdYNFVXdndSZy9MVzUxMTVyUnlBOFNsUXl1c3NDaGQ4MkQyclFGelJxTnBwLzJVdVB0WnMxeVo2ZEZoRGNhZWYrd21sQWVkY1paUVJ4cTJZaWRSQ1RZYUJKdGJNUW5seWRRMWlMZ212MUQ1UGZrc2ljUHRtSGFhNjN4UGJpMVZGV05EUlZPVmZ0RHp6bm5wL3hobnBJa2l2SE1VM0tVOUJzQUdXaTFrZm04elFKdzFqRVpEem05djJRNkdpSUZIQjV0V1Iydm1ZeEhuRG0xSk5FaThQaEZyQU5zL2ZldHI2S1hjQmJkbEJFZ3FPMlE0L1JiUjAvSTFKaVJtb2ZOOHdNN2lYZW5NV21xUU5kV0E1MHoxUFhFTXBWeHZIUHpYV2F6S2FmM2xqNVN6S3YvY1kxSktuandIWktpcnYzaFdodUt5bGRPZVZHd3pRcXlyR1M3emNpeWpDekxjYzYzcTBuUTlyY3RienJnOU9raEV0R2FmVkx0ZFFpRDFEUC9mWUpSRXJZM0tUZHYzR1EyRzdPem1JZksyWGpIZVV4YUQxWmNLOEJZd2JWM0QvbnNGNTVsc2RqQkliaCs1eTUvOUUvK0tUNzI5TWN3VllsT0U1NTg2c01NQmtrRVpvMS9QaFpiV3Y3OXYvcDNQUDlmL2l2bngyUE9qRWFvY0VDNmNEakxZS1lTVnFBVjdKMDd4ZHpDbmJmZmJnOWVMV2lzaTZxelNvYVhjVk1VNU51Q29xeW9qS0d1TFZWZGVpVlg3bDkwYTJxa2tyNzgwWnBobWpJZWo4S2dLUGpMcGFTL3MzZ1BFSzhRUFU5MzM3NHFXVzgzbEVYSmNya2IvTTRpVWdyUXNnQjZxVGR4em9EcmJnWk9nRFU2d1hMbzUyT2tkMUNCTlRPRTJ2aGhZVlViZjN2WHZqeXZhcjhHeExvd00walJLcGhNUmltTGRPb1ZqY0ZKMXVvcWdndXlRNDY1MWlSa205YkcraXBrTWhseGVtK1BhUk9PZ2VQMjdXT09WMnRta3dtbmR1YmU1TnFMeG9xajNpVGRpRjFFb0ZNYk1RT0NNTXJTRHRGa1RDQUt0NG9Vb3U5S2RJNDRPTXgvRnI2MGtFRXcxU2pmWlBSaU5BNis3azhVeHNLMWQyNXk5c3g1WnJNaGxiRlV0ZmVEWkhuQk5zdTlreTh2T0Y2dDJHWUZtMDFHa1JkK2l5SzkvMTRwNzhuWG9lZjJMdGNwV2lpMGdqUklvZE9HVEpUb29DS1VZZGJqS1ZVaXZCOGkvR3lhQStyR096ZlltYytZejBhNEVOVFJEajlFUDFlelVVYStjZU0ydi9tRjUxZ3VsbWlsdVgyNDR2Zi93QS95c1k5K0NHY3FoRkk4OGRTSEdZMkNzeTlTc2lKOFBMa3pGZi90UC8xWC90ZS8vTmVjU2hQT1RNZGc2bkRqaXhQc1NZY1VqdVVrNWVuTEYvbjhxMitpaFd0bkxyb1NJSXpEMWlWRlZWR1UvdFQwb3A2Y3V2WXBMRHBKZkJrYWJ2VEZQQ1hSdnJRUnpRKzVtYlUyTDNDUEVDdStEVWV2S2JpbEg4UzRSb25tSitiSHh5dWtrdXd0ZDFwdmUvdHFDOWMvSlVVOFNaY25ocGZSMTJLRE1DSnNJNXlUR0J2YUZlTmZhbWVDQnFLdU1KWGZFSWl3azFhSnY4Rkg2UkExOGROMG5YZzZqcEsrL0t5TklkdHVtRTZtWWQ4dFdtcHMvTXlMU0hQZ25aZ050TlJUZXhmVEthZDJab3dIM2p2dUt3SEJ6VHQzeWZLUy9iMDlKcU8wUmJlNTJLVWc2R2QrdGQyUzZGQ3dvb3RjYXNWRUlnb0JqWktFblhNblVwN3BKMG5IM01rdzgzR2k0ZG43bjRjVUFpZTlUTmhZTDMyMk5SUlZTVkViam81V1pIbk4zYzFickZhSGJMZTVoOEFZRjlwR1g0cEw3VGNXZzNURUlCMkYyQzhmSjVZbW1pVDFMTUVrOWNDU0pNeCt2QThnWEh4aE05UE1Cano3dnhsTXVqWi93UW4vMlZvcHFVckR1emR1czl4Yk1KME9XOU5VWTIxdFFMUk5xMlB4cE44MzNybk41Ny84QXN2ZFBWS2xPTnhzK002UGY1enYrOTd2d1RsTFZWVjgrT25mdzJ3MmpkS1pYUHVaTytjQnA3LyszLzhIdi9LTHY4UmVtbkJoTWthRzFDSC9kOG9la0VZNVJ5b05UejU4a1VSV2FQeWdXd2wvaU9zdmYrVnJLT0ZQdkNUVlNPWDN1ZDRkTlVJbnVrMC90ZGFFbDZETDhXdW0yYzFxcS9XeXQ3YVhTRTEzUWhBWjQ3Y1E5OXJlallHam93T21rNm4zT291dUxJOGp3SnVkZDBQKzlkVkVjMUEwZTFLQnNRNWp2UEdvcXZ6TFhWVVZWVm42d1pzelNDSDloRHdNQjlNa1lUUWFraWkvKy9ZM3VIZTQwY3BtaVFpN0R1c01aVm1SWnpueitSd2hWQy84b2ZHbmM2SkppUkhyUXNET3pwVGQyWlJoTSt0d0ZwekNXTUdOZDI5amdmTm45a2xVUUZNTEdleTlKOTJDN2dTOE9jb2FrckZab1V1Qmp0ZUx6ZVM3b1R4ajZibllHdUNKd0dzc211dkZXRzhIOXJKd3J5TDAwdkNLYlpheldXL1paRnZLc21yUGJLVTlNVWRyTHd2WFNqSklVbWJqc2RjWUJCYUFYMGNuYkRjYmxzc2RUdTB0UE5VcWNDdWtDQm1RSVk0TUcyY3d5aDU4d3pyYjlTZFJWSHF6SnJSTjdxQVFiRmM1aHdlSG5EbTl6M0NvdktRN3Bpdlp3QXUwUVRLUHdBbkYxZXUzK2UxbnY4cnU4aFJTU283V1d4Nzk0SlA4NEE5OHY2OE5wT2J4SjU5a3ViUG9WY3V1cFVmNHR1NjNmdU0zK1RkLzQrZlpjNUlMOHdrRGEvby80VEJyUVlDMGpnR0d5MmVYVEVTTmNNRWhHekVpOU5uOWZZWnBTcHBvbElKVUoxN0pwZndVMWdHcjdaYk5OdXU3bDFwWG5PeVVjWUt1Qkk5ejV1LzVYOFRRN3hGaFhMdnZ6cktDSWk5WTd1d2d2WmNYRzc1WmYxS0hnWWp3WldOUTJ2byswQmhNVlpIWEZYVnRxYXV5WFNjMnc1UWt4RHhOaGtQMGROeUptcVRxRW9SRloyR21yVXBjajZYZnJaRm83Yy9yYlFZVzVyT2RWcUFrWFpPSWFhTFAwVVlEUkg5WUtRWEwyWXpkeFF5dFFuOXRUUmhxU1lxeTV1YXR1NlNEbExON084aG01dUZjQkRZK2Naczc0YmM0cmxPazBkQ2ZqWXltK0JGWUpCTGlOTHR0SWNOK0tGQ2hhK1BDRnFjSUZsMy9ZbWRaVHJiTnliTE02ejhjS0oyRUtrbUh6OWdMeUhibWN6LzBWTElEZmFna2JDLzhOSDJvTldtcUFrQlVoZm1QNUszcjd6SWY3M0RoL0JtYzlWWm5YQjBPbjhwYnFrODRjbHlBeERiVGRML2xrcDBydmZXNk5WdWJabmdwV1IxNWFNajVDMmRJZENqSGJaOFYwWWFCTkpXbFZGeTVkcE5ubjN1WjNaMDlwRlljSEsyNTcrSEwvTkFQL2JFZ0poSTg4dmhqN0o4K0ZYbFJJbXFMOE9FaFgvbnlzL3p6di96WDJIT0NTN01KZzk1aDMzRVJiZkNTSk5ROGRHYVhwYVpGM1NraEFqSFpQM0g2MG5uL3plaFFralZWdVhXTzQvV0d3K09WbjA0MysxN1hWNXB4SWdGWWZNdEE3TGovbHgySFA1NXNobC9XNnpXSlRsZ3U1eEVMM1dDZEN5KzNEWnNGRC83dy9YZ0YxaUdsREN1WkJKMW9SdU1oV3Z1VUdHTWR4OGNySnVNUm84a0lHUkdGV3VOUXUrR3pQU3lZdjhWTjYrWnFJc1ZjbkxmbjRQaDRSVHBJR1kySEFmMmwycEJIRWJISVhLQytlT2VjWVpnb2RwZExadE94Nys5dEl5SHpqR29oQkp1czROMWJkMWpzTE5oZFRMMzAyTHFJZldmN29TRk5xeVQ2ck1DdVR4U2Qxa0I0Smo1R1lHcnZYU2pyaXFxc3ljS3RYZVE1ZVZteVhXL0ppN0FDRnRJYnVnSVRVR3R2OGtrU3o3YnpkdTJnTFFsRHp6Uk5mRkp3RWpRTGdSOHBaU2ZqZHMxY0lqdzIzcVhxYmM1NWJubmp6ZXZzN2kwNWQzYmZNL3RzUkcrMmdUTGpvcEJ3Ui9UcFJMOXp0aU1vV1JHb1Z6WllmOFA4dzhMaDRZck5ac1BGQzJkOEZpQmVrOUdnOU9Pd3VFN3RvWG50eW5WZStQbzMyTjA3aFpLS2c4MmEreTQvd285OTRrK2psS1NxYXg1KzVCSE9YVGpmcm9vYjRHaW5oUks4K01JTC9KTlBmWXA1dHVIKytZSkJUUG85a2VKa3FSbTRtdmVmMldHWkNuODRobjlYU2s5MWtvSEJxVDNYckVzbWRRTHlzdUx1d1ZHZzdoTHRxdnRjcVpibTBtUGJ1UzcySzFyUEVDbTF1azJHREo5OVVFMVp3L0hSTVVwcG5QUHJtV2FxVzlkKy95dVZKTlZKbUVsb0p1TlJDSGpVRWZOUHRKcUQ1b2JOaTRMajR3MkwrY0pQVjIxZkNDeWlQZlU5N3IwWTJ4a3IxSUlVMDRVZDY5MkRJMmJUR1RwUk5OVjFXOTRMVG54ZXZsVVlwaW03eXlXTDZRZ3A3RDBKUFVMNjh1L29lTXZCMFJINys2ZDh2eC9vbWlJcVcwWFk1UW5YMW9CdHpsNURENjVxNTRlWFZVVldsT1JGNlkxYzJZWXN5eW16MHE5eXJmWGJpc1RmM0duaTNadk9HWWFqSWJQWk5HeHpmTGFlQ2k5M296bElWZmR5Tnk1UEpXUUU1M005ckpwd0hYa2tKdmcyQTJRL0ZCVnMxamxYM25pTDgrZlBjL2IwSHFhdUl4bTNDUHFDYms5dTI3V3Q4eVloMFptN1haUnczRDNhdG1VN2F1RTVsbmZ1SEZLV0plY3Zua1hLUU8wUkhUMjVBWmswOHlZdndFbDQ2Y3JiZlBXbDE5amQ5VGY3MFhyRDZVc1A4R00vK2lPa3FjWll4L3NlZkpENzNuZWYzL3lFTTc5SkJ4WktZYTNseHRVMythVy8rck9rZDI1eGFiRmtJZ0t4cXcwWmpkNUNaeEd1NUgzN1MvWUgycy8zaE1KYTJWcVBaV044QTNTallRYy90RG84T21hYjUwaWhtMEM2VHMvZEM4anNneSs3Uk5UQWRKUHh5U2lvblo4aDFNWmlheE1JUDZFUEwydHFVN2M3Y0tXTm4wbG96WGcwWUQ3VHFGRDZLUkhYYXE1M21vc2VXS0hqcmgxdk51VGJqTjNsRGxycmVMOTNEejQ3N3NPNzM5bzJ0Ylh6dDNmVGlycTJISzlXTEhibW5sdllIRzRuUWQwZEtZVFJLT1hVY3NaME9QQ2JFdWQ2U3hMUnpqa0VkNC9XYkxPYzgrZE9rMnJaL3J4YWhhSHp2WDlkVzJ4dE1YVk5hUXhaa1ZOV0ZYbGVrZWM1Mnl5bkxFdU04VFJkRlN5NUtraS9COE1ocy9IVXp6bVVhRzNGV2dtMFZxeFdXNVNBODJmUG9CTGxYWDFTZWsrNWVLOXM1SkMyMC9nMklnVmg3S2NVUWdWVm9Pd09oYllFTiszUFlaMFZ2UEhHTmU2Ly95S25sdk5nd09xU2lqc25KbTNaM29CbXZkMFhaQnZHYWR2WmxMZitpK1p4YWc4cGkrRE8zU093aGd2blRpTlZnMUFUa1lncjJpWUpNRGlzVFBubW16ZDU0YVhYV083c29LUmdzeTFabnIvQUozLzhFK2hVWXkyY09YK085ei8wY0NSampwNC80VmUrZDIvYzVCZi81cy9qcnIzRmhka09VeW04KzdNNWNNS2gzNUtJTUZ4Y0xqZzlHbmpSbEpCZUxpeGxHOXNtbzFtUWxnSXE1emhlK1ZSVlh4YXFQdDFHaUJQbC9ZbUVtaERLVVZ2LzhGbnIvTjY3cXFtcWtpcGs4cmxBZm1sa3hsb3J4c01SYXVJZlFDOTBrWjJNMXdVU2pZaXoxVVRFa3V0NGF0M0xLZHR3VXVza3gwZHJyRFhzN2U3NWxZNDdHZEQxTzJSeG5laXZSRHZEOEYvWGRwdFRWcVhYSnZRU2hteVhIK2k2WTNJMkdiRy91OE5va0lZeXRaSEV1cWloa0tCOEYzRHo5Z0ZsWlRpMXUwdGVWUnh0U3JMQ2tCY0ZSVkdTYmYwd0xTOExhbU9EVjBHMWFrRmZidnR0elhROFFzM0dYdW9ieW00UENQR3JNcVUxcWRMb3dGRlUwdU9yamJXODljNE54c09VOTEwNjI1OFR1Qk0ydU1oODArcnZYVFFYYm0vNFdFNHRpTDFoN1FFZC90eGFXSzBMdnZuNjZ6eHkrVUYyRmhNdmk0N3F0OTdJT1dJdHlsYjAxREFONHR5SDJFSjhZaXVENU02dE93Z2xPSHYrVEN1RUVzSnJPYnFab3FTSkxCS2huMy9qK2kyZWVlNUZkbmI4cW0rYkY2U3pIVDc1Wno3QmFKUmlIU3gyRnp4OCtYSkVNWFpkcUxiMEI4emg3VHY4ZzUvNzI5ejY4ak9jSDQxWWFBMjJhc05wbS9leStjeVVNNXlaRGJrMEc2T0Q1WnhvTnRXc3N2MjdMQkZJZEphWEhLeFcxTWJpVUMzMHNvVmNoRy9jV1g5cWVyR0ZqMld1cTZEcUN6MGowajk4WHNtbnFNcVMyWHhHb2pWQ2dsWTZyQXliMGZNSm9GWWI2Ulgzc3MzTmFMdC8yeEk5UU5BYlc0ZDd4eGpMclR0M0dRK0hMQmF6OXVseXY2c1gvNTUwVTA0WVBCSEM5L3RLS1JiemVXK1FSd1F0ZGM2M0pUdUxLYnM3QzBhSmJtOE1yOU5XMU5aUVZxWUZxQlJGeVhhN1piWHlJRXRqSGM1ZWFSV1hNdXk0ZlpxU1pqS2RNcFZUZjJOclNhSTFaVlV4VUlMRllrNmlaTlJuKzBOVzlyanMzVkMyY2FrMWgxbWVWN3orMWpYMno1emkzUDRPenBrMjJiYU5UdWlCTlU0RXBnZmNlRThKSk9LeHI0elBqTlluVDVBTVd3dUg2eTJ2di9FV2p6OXltY2s0OFFZdUJGSUVRNi93NWhhSmJLV0lRc1JQUXpoSUdrWkNtRUcxMmM2dThRR0djdHJBclZ1M21jNG03TzR1MnJKcGVCTUFBQUI2U1VSQlZHclFXRXR1YXNxOEppOXI4ckwwcnNvaUo4c0tYMlZ0YzQ0MkdjdWRQZElrWWJYWndHRElUL3paSDJjOEdXT3RZektmOFlFUFBvR1dVYUtUNit6QjROZ2NyL2psZi9STHZQMjV6M01xVFZna0dremRQb3VOMGFkeFYrSWNlK09FQjVZelVsT2huTGRpZVJlbGgrQTAxR1Vib0s0SStIKzRhOU1BendEUDJRQUFBQUJKUlU1RXJrSmdnZz09IiBhbHQ9IkN1cG9sYSIgd2lkdGg9IjQyIiBoZWlnaHQ9IjQyIj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJjdXAtdHh0Ij4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImN1cC10aXRsZSI+RXhwbG9yZSBpbiBDdXBvbGE8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjdXAtc3ViIj5TUUwgc2hlbGwsIHBpdm90IHRhYmxlcyAmYW1wOyBjaGFydHM8L3NwYW4+CiAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iY3VwLWdvIj48c3ZnIGNsYXNzPSJpYyIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9ImN1cnJlbnRDb2xvciIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0yMjEuNjYsMTMzLjY2bC03Miw3MmE4LDgsMCwwLDEtMTEuMzItMTEuMzJMMTk2LjY5LDEzNkg0MGE4LDgsMCwwLDEsMC0xNkgxOTYuNjlMMTM4LjM0LDYxLjY2YTgsOCwwLDAsMSwxMS4zMi0xMS4zMmw3Miw3MkE4LDgsMCwwLDEsMjIxLjY2LDEzMy42NloiLz48L3N2Zz48L3NwYW4+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjdXAtYWlyb3ciIGlkPSJjdXBvbGEtYWktY3RhIiBocmVmPSIjIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+CiAgICAgICAgICA8c3ZnIGNsYXNzPSJpYyIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9ImN1cnJlbnRDb2xvciIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0yMDgsMTQ0YTE1Ljc4LDE1Ljc4LDAsMCwxLTEwLjQyLDE0Ljk0bC01MS42NSwxOS0xOSw1MS42MWExNS45MiwxNS45MiwwLDAsMS0yOS44OCwwTDc4LDE3OGwtNTEuNjItMTlhMTUuOTIsMTUuOTIsMCwwLDEsMC0yOS44OEw3OCwxMTAuMDVsMTktNTEuNjFhMTUuOTIsMTUuOTIsMCwwLDEsMjkuODgsMGwxOSw1MS42NSw1MS42MSwxOUExNS43OCwxNS43OCwwLDAsMSwyMDgsMTQ0WiIgb3BhY2l0eT0iMC4yIi8+PHBhdGggZD0iTTE5Ny41OCwxMjkuMDYsMTQ2LDExMGwtMTktNTEuNjJhMTUuOTIsMTUuOTIsMCwwLDAtMjkuODgsMEw3OCwxMTAsMjYuNDIsMTI5YTE1LjkyLDE1LjkyLDAsMCwwLDAsMjkuODhMNzgsMTc4bDE5LDUxLjYyYTE1LjkyLDE1LjkyLDAsMCwwLDI5Ljg4LDBMMTQ2LDE3OGw1MS42Mi0xOWExNS45MiwxNS45MiwwLDAsMCwwLTI5Ljg4Wk0xMzcsMTY0YTE1LjksMTUuOSwwLDAsMC05LjQ0LDkuNDVMMTEyLDIxNS42Niw5Ni40OSwxNzMuNEExNS45LDE1LjksMCwwLDAsODcsMTY0TDQ0Ljc5LDE0OC41LDg3LDEzM2ExNS45LDE1LjksMCwwLDAsOS40NS05LjQ0TDExMiw4MS4zNGwxNS41MSw0Mi4yMkExNS45LDE1LjksMCwwLDAsMTM3LDEzM2w0Mi4yMiwxNS41WiIvPjwvc3ZnPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImFpdGV4dCI+UHJlZmVyIHBsYWluIEVuZ2xpc2g/IEFzayBBSSBhYm91dCB0aGlzIGRhdGE8L3NwYW4+CiAgICAgICAgICA8c3ZnIGNsYXNzPSJpYyBjdXAtYXJyIiB2aWV3Qm94PSIwIDAgMjU2IDI1NiIgZmlsbD0iY3VycmVudENvbG9yIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTIyMS42NiwxMzMuNjZsLTcyLDcyYTgsOCwwLDAsMS0xMS4zMi0xMS4zMkwxOTYuNjksMTM2SDQwYTgsOCwwLDAsMSwwLTE2SDE5Ni42OUwxMzguMzQsNjEuNjZhOCw4LDAsMCwxLDExLjMyLTExLjMybDcyLDcyQTgsOCwwLDAsMSwyMjEuNjYsMTMzLjY2WiIvPjwvc3ZnPgogICAgICAgIDwvYT4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KCiAgPHNlY3Rpb24gaWQ9ImNvbnRlbnRzIj4KICAgIDxkaXYgY2xhc3M9ImNvbnRlbnRzLWhlYWQiPgogICAgICA8cCBjbGFzcz0ibGFiZWwiPkNvbnRlbnRzPC9wPgogICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXIiIGlkPSJmaWx0ZXItd3JhcCI+CiAgICAgICAgPGlucHV0IGlkPSJmaWx0ZXIiIHR5cGU9InNlYXJjaCIgcGxhY2Vob2xkZXI9IkZpbHRlciBzY2hlbWFzLCB0YWJsZXMsIGZ1bmN0aW9uc+KApiIgYXJpYS1sYWJlbD0iRmlsdGVyIGNvbnRlbnRzIiBhdXRvY29tcGxldGU9Im9mZiI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImNvdW50IiBpZD0iZmlsdGVyLWNvdW50IiBhcmlhLWxpdmU9InBvbGl0ZSI+PC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgPGJ1dHRvbiBjbGFzcz0iYnVsayIgaWQ9ImV4cGFuZC1hbGwiPkV4cGFuZCBhbGw8L2J1dHRvbj4KICAgICAgPGJ1dHRvbiBjbGFzcz0iYnVsayIgaWQ9ImNvbGxhcHNlLWFsbCI+Q29sbGFwc2UgYWxsPC9idXR0b24+CiAgICA8L2Rpdj4KICAgIDxkaXYgaWQ9ImNhdC1zdWIiIGNsYXNzPSJjYXQtc3ViIj48L2Rpdj4KICAgIDxkaXYgaWQ9ImNhdGFsb2dzIj48L2Rpdj4KICA8L3NlY3Rpb24+CgogIDxmb290ZXIgaWQ9ImZvb3RlciI+PC9mb290ZXI+CjwvZGl2PgoKPHNjcmlwdCB0eXBlPSJtb2R1bGUiPgpjb25zdCBJQ09OUyA9IHsKICAnaW1wbCc6ICc8cGF0aCBkPSJNMjIzLjY4LDY2LjE1LDEzNS42OCwxOGgwYTE1Ljg4LDE1Ljg4LDAsMCwwLTE1LjM2LDBsLTg4LDQ4LjE3YTE2LDE2LDAsMCwwLTguMzIsMTR2OTUuNjRhMTYsMTYsMCwwLDAsOC4zMiwxNGw4OCw0OC4xN2ExNS44OCwxNS44OCwwLDAsMCwxNS4zNiwwbDg4LTQ4LjE3YTE2LDE2LDAsMCwwLDguMzItMTRWODAuMThBMTYsMTYsMCwwLDAsMjIzLjY4LDY2LjE1Wk0xMjgsMzJoMGw4MC4zNCw0NEwxMjgsMTIwLDQ3LjY2LDc2Wk00MCw5MGw4MCw0My43OHY4NS43OUw0MCwxNzUuODJabTk2LDEyOS41N1YxMzMuODJMMjE2LDkwdjg1Ljc4WiIvPicsCiAgJ2NhdGFsb2cnOiAnPHBhdGggZD0iTTIxNiw4MGMwLDI2LjUxLTM5LjQsNDgtODgsNDhTNDAsMTA2LjUxLDQwLDgwczM5LjQtNDgsODgtNDhTMjE2LDUzLjQ5LDIxNiw4MFoiIG9wYWNpdHk9IjAuMiIvPjxwYXRoIGQ9Ik0xMjgsMjRDNzQuMTcsMjQsMzIsNDguNiwzMiw4MHY5NmMwLDMxLjQsNDIuMTcsNTYsOTYsNTZzOTYtMjQuNiw5Ni01NlY4MEMyMjQsNDguNiwxODEuODMsMjQsMTI4LDI0Wm04MCwxMDRjMCw5LjYyLTcuODgsMTkuNDMtMjEuNjEsMjYuOTJDMTcwLjkzLDE2My4zNSwxNTAuMTksMTY4LDEyOCwxNjhzLTQyLjkzLTQuNjUtNTguMzktMTMuMDhDNTUuODgsMTQ3LjQzLDQ4LDEzNy42Miw0OCwxMjhWMTExLjM2YzE3LjA2LDE1LDQ2LjIzLDI0LjY0LDgwLDI0LjY0czYyLjk0LTkuNjgsODAtMjQuNjRaTTY5LjYxLDUzLjA4Qzg1LjA3LDQ0LjY1LDEwNS44MSw0MCwxMjgsNDBzNDIuOTMsNC42NSw1OC4zOSwxMy4wOEMyMDAuMTIsNjAuNTcsMjA4LDcwLjM4LDIwOCw4MHMtNy44OCwxOS40My0yMS42MSwyNi45MkMxNzAuOTMsMTE1LjM1LDE1MC4xOSwxMjAsMTI4LDEyMHMtNDIuOTMtNC42NS01OC4zOS0xMy4wOEM1NS44OCw5OS40Myw0OCw4OS42Miw0OCw4MFM1NS44OCw2MC41Nyw2OS42MSw1My4wOFpNMTg2LjM5LDIwMi45MkMxNzAuOTMsMjExLjM1LDE1MC4xOSwyMTYsMTI4LDIxNnMtNDIuOTMtNC42NS01OC4zOS0xMy4wOEM1NS44OCwxOTUuNDMsNDgsMTg1LjYyLDQ4LDE3NlYxNTkuMzZjMTcuMDYsMTUsNDYuMjMsMjQuNjQsODAsMjQuNjRzNjIuOTQtOS42OCw4MC0yNC42NFYxNzZDMjA4LDE4NS42MiwyMDAuMTIsMTk1LjQzLDE4Ni4zOSwyMDIuOTJaIi8+JywKICAnc2NoZW1hJzogJzxwYXRoIGQ9Ik0xMjgsODBIMzJWNTZhOCw4LDAsMCwxLDgtOEg5Mi42OWE4LDgsMCwwLDEsNS42NSwyLjM0WiIgb3BhY2l0eT0iMC4yIi8+PHBhdGggZD0iTTIxNiw3MkgxMzEuMzFMMTA0LDQ0LjY5QTE1Ljg2LDE1Ljg2LDAsMCwwLDkyLjY5LDQwSDQwQTE2LDE2LDAsMCwwLDI0LDU2VjIwMC42MkExNS40LDE1LjQsMCwwLDAsMzkuMzgsMjE2SDIxNi44OUExNS4xMywxNS4xMywwLDAsMCwyMzIsMjAwLjg5Vjg4QTE2LDE2LDAsMCwwLDIxNiw3MlpNOTIuNjksNTZsMTYsMTZINDBWNTZaTTIxNiwyMDBINDBWODhIMjE2WiIvPicsCiAgJ3RhYmxlJzogJzxwYXRoIGQ9Ik04OCwxMDR2OTZIMzJWMTA0WiIgb3BhY2l0eT0iMC4yIi8+PHBhdGggZD0iTTIyNCw0OEgzMmE4LDgsMCwwLDAtOCw4VjE5MmExNiwxNiwwLDAsMCwxNiwxNkgyMTZhMTYsMTYsMCwwLDAsMTYtMTZWNTZBOCw4LDAsMCwwLDIyNCw0OFpNNDAsMTEySDgwdjMySDQwWm01NiwwSDIxNnYzMkg5NlpNMjE2LDY0Vjk2SDQwVjY0Wk00MCwxNjBIODB2MzJINDBabTE3NiwzMkg5NlYxNjBIMjE2djMyWiIvPicsCiAgJ3ZpZXcnOiAnPHBhdGggZD0iTTEyOCw1NkM0OCw1NiwxNiwxMjgsMTYsMTI4czMyLDcyLDExMiw3MiwxMTItNzIsMTEyLTcyUzIwOCw1NiwxMjgsNTZabTAsMTEyYTQwLDQwLDAsMSwxLDQwLTQwQTQwLDQwLDAsMCwxLDEyOCwxNjhaIiBvcGFjaXR5PSIwLjIiLz48cGF0aCBkPSJNMjQ3LjMxLDEyNC43NmMtLjM1LS43OS04LjgyLTE5LjU4LTI3LjY1LTM4LjQxQzE5NC41Nyw2MS4yNiwxNjIuODgsNDgsMTI4LDQ4UzYxLjQzLDYxLjI2LDM2LjM0LDg2LjM1QzE3LjUxLDEwNS4xOCw5LDEyNCw4LjY5LDEyNC43NmE4LDgsMCwwLDAsMCw2LjVjLjM1Ljc5LDguODIsMTkuNTcsMjcuNjUsMzguNEM2MS40MywxOTQuNzQsOTMuMTIsMjA4LDEyOCwyMDhzNjYuNTctMTMuMjYsOTEuNjYtMzguMzRjMTguODMtMTguODMsMjcuMy0zNy42MSwyNy42NS0zOC40QTgsOCwwLDAsMCwyNDcuMzEsMTI0Ljc2Wk0xMjgsMTkyYy0zMC43OCwwLTU3LjY3LTExLjE5LTc5LjkzLTMzLjI1QTEzMy40NywxMzMuNDcsMCwwLDEsMjUsMTI4LDEzMy4zMywxMzMuMzMsMCwwLDEsNDguMDcsOTcuMjVDNzAuMzMsNzUuMTksOTcuMjIsNjQsMTI4LDY0czU3LjY3LDExLjE5LDc5LjkzLDMzLjI1QTEzMy40NiwxMzMuNDYsMCwwLDEsMjMxLjA1LDEyOEMyMjMuODQsMTQxLjQ2LDE5Mi40MywxOTIsMTI4LDE5MlptMC0xMTJhNDgsNDgsMCwxLDAsNDgsNDhBNDguMDUsNDguMDUsMCwwLDAsMTI4LDgwWm0wLDgwYTMyLDMyLDAsMSwxLDMyLTMyQTMyLDMyLDAsMCwxLDEyOCwxNjBaIi8+JywKICAnZnVuY3Rpb24nOiAnPHBhdGggZD0iTTIwMCw0MFYyMDBhMTYsMTYsMCwwLDEtMTYsMTZINTZWNTZBMTYsMTYsMCwwLDEsNzIsNDBaIiBvcGFjaXR5PSIwLjIiLz48cGF0aCBkPSJNMjA4LDQwYTgsOCwwLDAsMS04LDhIMTcwLjcxYTI0LDI0LDAsMCwwLTIzLjYyLDE5LjcxTDEzNy41OSwxMjBIMTg0YTgsOCwwLDAsMSwwLDE2SDEzNC42OGwtMTAsNTUuMTZBNDAsNDAsMCwwLDEsODUuMjksMjI0SDU2YTgsOCwwLDAsMSwwLTE2SDg1LjI5YTI0LDI0LDAsMCwwLDIzLjYyLTE5LjcxbDkuNS01Mi4yOUg3MmE4LDgsMCwwLDEsMC0xNmg0OS4zMmwxMC01NS4xNkE0MCw0MCwwLDAsMSwxNzAuNzEsMzJIMjAwQTgsOCwwLDAsMSwyMDgsNDBaIi8+JywKICAnYWdncmVnYXRlJzogJzxwYXRoIGQ9Ik0xOTIsNDhWMjA4SDY0bDY0LTgwTDY0LDQ4WiIgb3BhY2l0eT0iMC4yIi8+PHBhdGggZD0iTTE4NCw3MlY1Nkg4MC42NWw1My42LDY3YTgsOCwwLDAsMSwwLDEwbC01My42LDY3SDE4NFYxODRhOCw4LDAsMCwxLDE2LDB2MjRhOCw4LDAsMCwxLTgsOEg2NGE4LDgsMCwwLDEtNi4yNS0xM2w2MC03NS02MC03NUE4LDgsMCwwLDEsNjQsNDBIMTkyYTgsOCwwLDAsMSw4LDhWNzJhOCw4LDAsMCwxLTE2LDBaIi8+JywKICAndGlvJzogJzxwYXRoIGQ9Ik0yMjEuOSw2MS4zOCwxNTIsMTM2djU4LjY1YTgsOCwwLDAsMS0zLjU2LDYuNjZsLTMyLDIxLjMzQTgsOCwwLDAsMSwxMDQsMjE2VjEzNkwzNC4xLDYxLjM4QTgsOCwwLDAsMSw0MCw0OEgyMTZBOCw4LDAsMCwxLDIyMS45LDYxLjM4WiIgb3BhY2l0eT0iMC4yIi8+PHBhdGggZD0iTTIzMC42LDQ5LjUzQTE1LjgxLDE1LjgxLDAsMCwwLDIxNiw0MEg0MEExNiwxNiwwLDAsMCwyOC4xOSw2Ni43NmwuMDguMDlMOTYsMTM5LjE3VjIxNmExNiwxNiwwLDAsMCwyNC44NywxMy4zMmwzMi0yMS4zNEExNiwxNiwwLDAsMCwxNjAsMTk0LjY2VjEzOS4xN2w2Ny43NC03Mi4zMi4wOC0uMDlBMTUuOCwxNS44LDAsMCwwLDIzMC42LDQ5LjUzWk00MCw1NmgwWm0xMDYuMTgsNzQuNThBOCw4LDAsMCwwLDE0NCwxMzZ2NTguNjZMMTEyLDIxNlYxMzZhOCw4LDAsMCwwLTIuMTYtNS40N0w0MCw1NkgyMTZaIi8+JywKICAnY2FyZXQnOiAnPHBhdGggZD0iTTE4MS42NiwxMzMuNjZsLTgwLDgwYTgsOCwwLDAsMS0xMS4zMi0xMS4zMkwxNjQuNjksMTI4LDkwLjM0LDUzLjY2YTgsOCwwLDAsMSwxMS4zMi0xMS4zMmw4MCw4MEE4LDgsMCwwLDEsMTgxLjY2LDEzMy42NloiLz4nLAogICdzZWFyY2gnOiAnPHBhdGggZD0iTTIyOS42NiwyMTguMzRsLTUwLjA3LTUwLjA2YTg4LjExLDg4LjExLDAsMSwwLTExLjMxLDExLjMxbDUwLjA2LDUwLjA3YTgsOCwwLDAsMCwxMS4zMi0xMS4zMlpNNDAsMTEyYTcyLDcyLDAsMSwxLDcyLDcyQTcyLjA4LDcyLjA4LDAsMCwxLDQwLDExMloiLz4nLAogICdyZXBvJzogJzxwYXRoIGQ9Ik0yMzIsNjRhMzIsMzIsMCwxLDAtNDAsMzF2MTdhOCw4LDAsMCwxLTgsOEg5NmEyMy44NCwyMy44NCwwLDAsMC04LDEuMzhWOTVhMzIsMzIsMCwxLDAtMTYsMHY2NmEzMiwzMiwwLDEsMCwxNiwwVjE0NGE4LDgsMCwwLDEsOC04aDg4YTI0LDI0LDAsMCwwLDI0LTI0Vjk1QTMyLjA2LDMyLjA2LDAsMCwwLDIzMiw2NFpNNjQsNjRBMTYsMTYsMCwxLDEsODAsODAsMTYsMTYsMCwwLDEsNjQsNjRaTTk2LDE5MmExNiwxNiwwLDEsMS0xNi0xNkExNiwxNiwwLDAsMSw5NiwxOTJaTTIwMCw4MGExNiwxNiwwLDEsMSwxNi0xNkExNiwxNiwwLDAsMSwyMDAsODBaIi8+JywKICAnbGljZW5zZSc6ICc8cGF0aCBkPSJNMjM5LjQzLDEzM2wtMzItODBoMGE4LDgsMCwwLDAtOS4xNi00Ljg0TDEzNiw2MlY0MGE4LDgsMCwwLDAtMTYsMFY2NS41OEw1NC4yNiw4MC4xOUE4LDgsMCwwLDAsNDguNTcsODVoMHYuMDZMMTYuNTcsMTY1YTcuOTIsNy45MiwwLDAsMC0uNTcsM2MwLDIzLjMxLDI0LjU0LDMyLDQwLDMyczQwLTguNjksNDAtMzJhNy45Miw3LjkyLDAsMCwwLS41Ny0zTDY2LjkyLDkzLjc3LDEyMCw4MlYyMDhIMTA0YTgsOCwwLDAsMCwwLDE2aDQ4YTgsOCwwLDAsMCwwLTE2SDEzNlY3OC40MkwxODcsNjcuMSwxNjAuNTcsMTMzYTcuOTIsNy45MiwwLDAsMC0uNTcsM2MwLDIzLjMxLDI0LjU0LDMyLDQwLDMyczQwLTguNjksNDAtMzJBNy45Miw3LjkyLDAsMCwwLDIzOS40MywxMzNaTTU2LDE4NGMtNy41MywwLTIyLjc2LTMuNjEtMjMuOTMtMTQuNjRMNTYsMTA5LjU0bDIzLjkzLDU5LjgyQzc4Ljc2LDE4MC4zOSw2My41MywxODQsNTYsMTg0Wm0xNDQtMzJjLTcuNTMsMC0yMi43Ni0zLjYxLTIzLjkzLTE0LjY0TDIwMCw3Ny41NGwyMy45Myw1OS44MkMyMjIuNzYsMTQ4LjM5LDIwNy41MywxNTIsMjAwLDE1MloiLz4nLAogICdzdXBwb3J0JzogJzxwYXRoIGQ9Ik0xMjgsMjRBMTA0LDEwNCwwLDEsMCwyMzIsMTI4LDEwNC4xMSwxMDQuMTEsMCwwLDAsMTI4LDI0Wm0zOS4xLDEzMS43OWE0Ny44NCw0Ny44NCwwLDAsMCwwLTU1LjU4bDI4LjUtMjguNDlhODcuODMsODcuODMsMCwwLDEsMCwxMTIuNTZaTTk2LDEyOGEzMiwzMiwwLDEsMSwzMiwzMkEzMiwzMiwwLDAsMSw5NiwxMjhabTg4LjI4LTY3LjZMMTU1Ljc5LDg4LjlhNDcuODQsNDcuODQsMCwwLDAtNTUuNTgsMEw3MS43Miw2MC40YTg3LjgzLDg3LjgzLDAsMCwxLDExMi41NiwwWk02MC40LDcxLjcybDI4LjUsMjguNDlhNDcuODQsNDcuODQsMCwwLDAsMCw1NS41OEw2MC40LDE4NC4yOGE4Ny44Myw4Ny44MywwLDAsMSwwLTExMi41NlpNNzEuNzIsMTk1LjZsMjguNDktMjguNWE0Ny44NCw0Ny44NCwwLDAsMCw1NS41OCwwbDI4LjQ5LDI4LjVhODcuODMsODcuODMsMCwwLDEtMTEyLjU2LDBaIi8+JywKICAncG9saWN5JzogJzxwYXRoIGQ9Ik0yMDgsNDBINDhBMTYsMTYsMCwwLDAsMzIsNTZ2NTZjMCw1Mi43MiwyNS41Miw4NC42Nyw0Ni45MywxMDIuMTksMjMuMDYsMTguODYsNDYsMjUuMjYsNDcsMjUuNTNhOCw4LDAsMCwwLDQuMiwwYzEtLjI3LDIzLjkxLTYuNjcsNDctMjUuNTNDMTk4LjQ4LDE5Ni42NywyMjQsMTY0LjcyLDIyNCwxMTJWNTZBMTYsMTYsMCwwLDAsMjA4LDQwWm0wLDcyYzAsMzcuMDctMTMuNjYsNjcuMTYtNDAuNiw4OS40MkExMjkuMywxMjkuMywwLDAsMSwxMjgsMjIzLjYyYTEyOC4yNSwxMjguMjUsMCwwLDEtMzguOTItMjEuODFDNjEuODIsMTc5LjUxLDQ4LDE0OS4zLDQ4LDExMmwwLTU2LDE2MCwwWk04Mi4zNCwxNDEuNjZhOCw4LDAsMCwxLDExLjMyLTExLjMyTDExMiwxNDguNjlsNTAuMzQtNTAuMzVhOCw4LDAsMCwxLDExLjMyLDExLjMybC01Niw1NmE4LDgsMCwwLDEtMTEuMzIsMFoiLz4nLAogICdrZXl3b3JkJzogJzxwYXRoIGQ9Ik0yNDMuMzEsMTM2LDE0NCwzNi42OUExNS44NiwxNS44NiwwLDAsMCwxMzIuNjksMzJINDBhOCw4LDAsMCwwLTgsOHY5Mi42OUExNS44NiwxNS44NiwwLDAsMCwzNi42OSwxNDRMMTM2LDI0My4zMWExNiwxNiwwLDAsMCwyMi42MywwbDg0LjY4LTg0LjY4YTE2LDE2LDAsMCwwLDAtMjIuNjNabS05Niw5Nkw0OCwxMzIuNjlWNDhoODQuNjlMMjMyLDE0Ny4zMVpNOTYsODRBMTIsMTIsMCwxLDEsODQsNzIsMTIsMTIsMCwwLDEsOTYsODRaIi8+JywKICAnc3BhcmtsZSc6ICc8cGF0aCBkPSJNMjA4LDE0NGExNS43OCwxNS43OCwwLDAsMS0xMC40MiwxNC45NGwtNTEuNjUsMTktMTksNTEuNjFhMTUuOTIsMTUuOTIsMCwwLDEtMjkuODgsMEw3OCwxNzhsLTUxLjYyLTE5YTE1LjkyLDE1LjkyLDAsMCwxLDAtMjkuODhMNzgsMTEwLjA1bDE5LTUxLjYxYTE1LjkyLDE1LjkyLDAsMCwxLDI5Ljg4LDBsMTksNTEuNjUsNTEuNjEsMTlBMTUuNzgsMTUuNzgsMCwwLDEsMjA4LDE0NFoiIG9wYWNpdHk9IjAuMiIvPjxwYXRoIGQ9Ik0xOTcuNTgsMTI5LjA2LDE0NiwxMTBsLTE5LTUxLjYyYTE1LjkyLDE1LjkyLDAsMCwwLTI5Ljg4LDBMNzgsMTEwLDI2LjQyLDEyOWExNS45MiwxNS45MiwwLDAsMCwwLDI5Ljg4TDc4LDE3OGwxOSw1MS42MmExNS45MiwxNS45MiwwLDAsMCwyOS44OCwwTDE0NiwxNzhsNTEuNjItMTlhMTUuOTIsMTUuOTIsMCwwLDAsMC0yOS44OFpNMTM3LDE2NGExNS45LDE1LjksMCwwLDAtOS40NCw5LjQ1TDExMiwyMTUuNjYsOTYuNDksMTczLjRBMTUuOSwxNS45LDAsMCwwLDg3LDE2NEw0NC43OSwxNDguNSw4NywxMzNhMTUuOSwxNS45LDAsMCwwLDkuNDUtOS40NEwxMTIsODEuMzRsMTUuNTEsNDIuMjJBMTUuOSwxNS45LDAsMCwwLDEzNywxMzNsNDIuMjIsMTUuNVoiLz4nLAogICdhcnJvdyc6ICc8cGF0aCBkPSJNMjIxLjY2LDEzMy42NmwtNzIsNzJhOCw4LDAsMCwxLTExLjMyLTExLjMyTDE5Ni42OSwxMzZINDBhOCw4LDAsMCwxLDAtMTZIMTk2LjY5TDEzOC4zNCw2MS42NmE4LDgsMCwwLDEsMTEuMzItMTEuMzJsNzIsNzJBOCw4LDAsMCwxLDIyMS42NiwxMzMuNjZaIi8+Jwp9OwpmdW5jdGlvbiBpY29uKG5hbWUsIGNscyl7IHJldHVybiAnPHN2ZyBjbGFzcz0iaWMgJysoY2xzfHwnJykrJyIgdmlld0JveD0iMCAwIDI1NiAyNTYiIGZpbGw9ImN1cnJlbnRDb2xvciIgYXJpYS1oaWRkZW49InRydWUiPicrKElDT05TW25hbWVdfHwnJykrJzwvc3ZnPic7IH0KCmltcG9ydCB7CiAgVmdpQ2xpZW50LCBodHRwQ29ubmVjdCwgZGVzZXJpYWxpemVBdHRhY2hPcHRpb25TcGVjcywgZGVzZXJpYWxpemVTY2hlbWEsCiAgc2NoZW1hVG9Bcmd1bWVudFNwZWNzLCBUeXBlSWQKfSBmcm9tICcuL3ZnaS1jbGllbnQuanM/dj01JzsKCi8vIOKUgOKUgCBDYXRhbG9nIG1ldGFkYXRhLCByZWFkIHN0cmFpZ2h0IG9mZiB0aGUgVkdJIHdpcmUgcHJvdG9jb2wg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSACi8vIFRoZSBwYWdlIHNwZWFrcyB0aGUgcHJvdG9jb2wgdGhlIER1Y2tEQiBleHRlbnNpb24gc3BlYWtzLCB0aHJvdWdoIHRoZSBKUwovLyBjbGllbnQgdGhlIHdvcmtlciBzZXJ2ZXMgbmV4dCB0byB0aGlzIGZpbGUuIFRoZXJlIGlzIG5vIHdvcmtlci1zaWRlCi8vIGRvY3VtZW50IHRvIGtlZXAgaW4gc3luYyBhbmQgbm8gc2Vjb25kIGNvbnRyYWN0IHRvIHZlcnNpb246IG9uZSBjbGllbnQKLy8gcmVwbGFjZXMgd2hhdCB1c2VkIHRvIGJlIGEgcGVyLWxhbmd1YWdlIGBkZXNjcmliZS5qc29uYCBwcm9kdWNlci4KbGV0IGRlc2NyaWJlID0gbnVsbDsKbGV0IGNsaWVudCA9IG51bGw7CmNvbnN0IENVUE9MQV9CQVNFID0gJ2h0dHBzOi8vY3Vwb2xhLnF1ZXJ5LWZhcm0uc2VydmljZXMnOwoKLy8gQXJyb3cgRGF0YVR5cGUgLT4gdGhlIFNRTCB0eXBlIG5hbWUgYSBEdWNrREIgdXNlciB3b3VsZCByZWNvZ25pemUuIFRoZSBwYWdlJ3MKLy8gd2hvbGUgY2FsbCB0byBhY3Rpb24gaXMgQVRUQUNILWFuZC1xdWVyeSwgc28gU1FMIG5hbWVzIHJlYWQgYmV0dGVyIGhlcmUgdGhhbgovLyBBcnJvdydzIG93biBzcGVsbGluZy4KZnVuY3Rpb24gdHlwZVN0cih0KXsKICBpZiAoIXQpIHJldHVybiAnJzsKICBjb25zdCBhID0gdDsKICBzd2l0Y2ggKHQudHlwZUlkKSB7CiAgICBjYXNlIFR5cGVJZC5OdWxsOiByZXR1cm4gJ05VTEwnOwogICAgY2FzZSBUeXBlSWQuQm9vbDogcmV0dXJuICdCT09MRUFOJzsKICAgIGNhc2UgVHlwZUlkLkludDogewogICAgICBjb25zdCBzaWduZWQgPSBhLnNpZ25lZCA/PyBhLmlzU2lnbmVkID8/IHRydWU7CiAgICAgIGNvbnN0IG5hbWUgPSB7ODonVElOWUlOVCcsMTY6J1NNQUxMSU5UJywzMjonSU5URUdFUicsNjQ6J0JJR0lOVCd9W2EuYml0V2lkdGhdIHx8ICdJTlRFR0VSJzsKICAgICAgcmV0dXJuIHNpZ25lZCA/IG5hbWUgOiAnVScrbmFtZTsKICAgIH0KICAgIGNhc2UgVHlwZUlkLkZsb2F0OiByZXR1cm4gezE6J0ZMT0FUJywyOidET1VCTEUnfVthLnByZWNpc2lvbl0gfHwgJ0RPVUJMRSc7CiAgICBjYXNlIFR5cGVJZC5VdGY4OiBjYXNlIFR5cGVJZC5MYXJnZVV0Zjg6IHJldHVybiAnVkFSQ0hBUic7CiAgICBjYXNlIFR5cGVJZC5CaW5hcnk6IGNhc2UgVHlwZUlkLkxhcmdlQmluYXJ5OiBjYXNlIFR5cGVJZC5GaXhlZFNpemVCaW5hcnk6IHJldHVybiAnQkxPQic7CiAgICBjYXNlIFR5cGVJZC5EZWNpbWFsOiByZXR1cm4gJ0RFQ0lNQUwoJythLnByZWNpc2lvbisnLCcrYS5zY2FsZSsnKSc7CiAgICBjYXNlIFR5cGVJZC5EYXRlOiByZXR1cm4gJ0RBVEUnOwogICAgY2FzZSBUeXBlSWQuVGltZTogcmV0dXJuICdUSU1FJzsKICAgIGNhc2UgVHlwZUlkLlRpbWVzdGFtcDogcmV0dXJuIGEudGltZXpvbmUgPyAnVElNRVNUQU1QIFdJVEggVElNRSBaT05FJyA6ICdUSU1FU1RBTVAnOwogICAgY2FzZSBUeXBlSWQuSW50ZXJ2YWw6IHJldHVybiAnSU5URVJWQUwnOwogICAgY2FzZSBUeXBlSWQuRHVyYXRpb246IHJldHVybiAnSU5URVJWQUwnOwogICAgY2FzZSBUeXBlSWQuTGlzdDogY2FzZSBUeXBlSWQuRml4ZWRTaXplTGlzdDoKICAgICAgcmV0dXJuIHR5cGVTdHIoKGEuY2hpbGRyZW4gJiYgYS5jaGlsZHJlblswXSAmJiBhLmNoaWxkcmVuWzBdLnR5cGUpIHx8IG51bGwpKydbXSc7CiAgICBjYXNlIFR5cGVJZC5TdHJ1Y3Q6CiAgICAgIHJldHVybiAnU1RSVUNUKCcrKGEuY2hpbGRyZW58fFtdKS5tYXAoYz0+Yy5uYW1lKycgJyt0eXBlU3RyKGMudHlwZSkpLmpvaW4oJywgJykrJyknOwogICAgY2FzZSBUeXBlSWQuTWFwOiB7CiAgICAgIGNvbnN0IGtpZHMgPSAoYS5jaGlsZHJlbiAmJiBhLmNoaWxkcmVuWzBdICYmIGEuY2hpbGRyZW5bMF0udHlwZSAmJiBhLmNoaWxkcmVuWzBdLnR5cGUuY2hpbGRyZW4pIHx8IFtdOwogICAgICByZXR1cm4gJ01BUCgnK2tpZHMubWFwKGM9PnR5cGVTdHIoYy50eXBlKSkuam9pbignLCAnKSsnKSc7CiAgICB9CiAgICBkZWZhdWx0OiByZXR1cm4gJ0FOWSc7CiAgfQp9CgpmdW5jdGlvbiByZWFkU2NoZW1hKGJ5dGVzKXsKICBpZiAoIWJ5dGVzIHx8ICFieXRlcy5sZW5ndGgpIHJldHVybiBudWxsOwogIHRyeSB7IHJldHVybiBkZXNlcmlhbGl6ZVNjaGVtYShieXRlcyk7IH0gY2F0Y2ggKGUpIHsgcmV0dXJuIG51bGw7IH0KfQoKLy8gQ29sdW1uIGRldGFpbCBzdGF5cyBsYXp5LCBleGFjdGx5IGFzIGl0IHdhcyB3aGVuIGl0IGNhbWUgZnJvbSBhIHBlci1vYmplY3QKLy8gSlNPTiBlbmRwb2ludCDigJQgdGhlIGRpZmZlcmVuY2UgaXMgd2hlcmUgdGhlIGJ5dGVzIGNvbWUgZnJvbS4KY29uc3QgY29sdW1uQ2FjaGUgPSBuZXcgTWFwKCk7CmFzeW5jIGZ1bmN0aW9uIGZldGNoQ29sdW1ucyhjYXROYW1lLCBzY2hlbWEsIHRhYmxlKXsKICBjb25zdCBrZXkgPSBKU09OLnN0cmluZ2lmeShbY2F0TmFtZSwgc2NoZW1hLCB0YWJsZV0pOwogIGlmIChjb2x1bW5DYWNoZS5oYXMoa2V5KSkgcmV0dXJuIGNvbHVtbkNhY2hlLmdldChrZXkpOwogIGNvbnN0IGNhdCA9IGRlc2NyaWJlLmNhdGFsb2dzLmZpbmQoYz0+Yy5uYW1lPT09Y2F0TmFtZSk7CiAgaWYgKCFjYXQgfHwgIWNhdC5fYW9kKSByZXR1cm4ge2NvbHVtbnM6W119OwogIHRyeSB7CiAgICBjb25zdCB0YWJsZXMgPSBhd2FpdCBjbGllbnQuc2NoZW1hQ29udGVudHNUYWJsZXMoY2F0Ll9hb2QsIHNjaGVtYSk7CiAgICBjb25zdCB0ID0gdGFibGVzLmZpbmQoeD0+eC5uYW1lPT09dGFibGUpOwogICAgaWYgKHQpIHsKICAgICAgY29uc3QgcyA9IHJlYWRTY2hlbWEodC5jb2x1bW5zKTsKICAgICAgY29uc3QgY29scyA9IHMgPyBzLmZpZWxkcy5tYXAoZj0+KHsKICAgICAgICBuYW1lOiBmLm5hbWUsIHR5cGU6IHR5cGVTdHIoZi50eXBlKSwKICAgICAgICBjb21tZW50OiAoZi5tZXRhZGF0YSAmJiAoZi5tZXRhZGF0YS5nZXQoJ2NvbW1lbnQnKSB8fCBmLm1ldGFkYXRhLmdldCgndmdpX2RvYycpKSkgfHwgJycKICAgICAgfSkpIDogW107CiAgICAgIGNvbnN0IG91dCA9IHtjb2x1bW5zOiBjb2xzfTsKICAgICAgY29sdW1uQ2FjaGUuc2V0KGtleSwgb3V0KTsKICAgICAgcmV0dXJuIG91dDsKICAgIH0KICAgIGNvbnN0IHZpZXdzID0gYXdhaXQgY2xpZW50LnNjaGVtYUNvbnRlbnRzVmlld3MoY2F0Ll9hb2QsIHNjaGVtYSk7CiAgICBjb25zdCB2ID0gdmlld3MuZmluZCh4PT54Lm5hbWU9PT10YWJsZSk7CiAgICBpZiAodikgewogICAgICAvLyBBIHZpZXcncyBjb2x1bW4gdHlwZXMgYXJlIG9ubHkga25vd24gb25jZSBpdHMgU1FMIGlzIGJvdW5kLCB3aGljaCB0aGUKICAgICAgLy8gd29ya2VyIGRvZXMgbm90IGRvIGhlcmU7IHRoZSBkZWNsYXJlZCBjb21tZW50cyBhcmUgd2hhdCBleGlzdC4KICAgICAgY29uc3Qgb3V0ID0ge2NvbHVtbnM6IE9iamVjdC5lbnRyaWVzKHYuY29sdW1uX2NvbW1lbnRzfHx7fSkubWFwKChbbixjXSk9Pih7bmFtZTpuLCB0eXBlOicnLCBjb21tZW50OmN9KSl9OwogICAgICBjb2x1bW5DYWNoZS5zZXQoa2V5LCBvdXQpOwogICAgICByZXR1cm4gb3V0OwogICAgfQogIH0gY2F0Y2ggKGUpIHsgLyogZmFsbCB0aHJvdWdoIHRvIGVtcHR5ICovIH0KICByZXR1cm4ge2NvbHVtbnM6W119Owp9CgpmdW5jdGlvbiBmbkRpc3BsYXlUeXBlKGYpewogIGlmIChmLmZ1bmN0aW9uX3R5cGUgPT09ICdTQ0FMQVInIHx8IGYuZnVuY3Rpb25fdHlwZSA9PT0gMCkgcmV0dXJuICdzY2FsYXInOwogIGlmIChmLmZ1bmN0aW9uX3R5cGUgPT09ICdBR0dSRUdBVEUnIHx8IGYuZnVuY3Rpb25fdHlwZSA9PT0gMikgcmV0dXJuICdhZ2dyZWdhdGUnOwogIHJldHVybiBmLmhhc19maW5hbGl6ZSA/ICd0YWJsZV9pbl9vdXQnIDogJ3RhYmxlJzsKfQoKZnVuY3Rpb24gZm5SZXR1cm5zKGYpewogIGNvbnN0IHMgPSByZWFkU2NoZW1hKGYub3V0cHV0X3NjaGVtYSk7CiAgaWYgKCFzIHx8ICFzLmZpZWxkcy5sZW5ndGgpIHJldHVybiBudWxsOwogIGNvbnN0IHQgPSBmbkRpc3BsYXlUeXBlKGYpOwogIGlmICh0ID09PSAnc2NhbGFyJyB8fCB0ID09PSAnYWdncmVnYXRlJykgcmV0dXJuIHR5cGVTdHIocy5maWVsZHNbMF0udHlwZSk7CiAgcmV0dXJuICdUQUJMRSgnK3MuZmllbGRzLm1hcCh4PT54Lm5hbWUrJyAnK3R5cGVTdHIoeC50eXBlKSkuam9pbignLCAnKSsnKSc7Cn0KCmZ1bmN0aW9uIGZuQXJncyhmKXsKICBjb25zdCBzID0gcmVhZFNjaGVtYShmLmFyZ3VtZW50cyk7CiAgaWYgKCFzKSByZXR1cm4gW107CiAgcmV0dXJuIHNjaGVtYVRvQXJndW1lbnRTcGVjcyhzKQogICAgLy8gVGhlIHBpcGVkIGlucHV0IHJlbGF0aW9uIG9mIGEgdGFibGUtaW4tb3V0IGZ1bmN0aW9uIGlzIG5vdCBhCiAgICAvLyB1c2VyLXN1cHBsaWVkIGFyZ3VtZW50LgogICAgLmZpbHRlcihhPT4hYS5pc1RhYmxlSW5wdXQpCiAgICAubWFwKGE9PnsKICAgICAgY29uc3QgYXJnID0ge25hbWU6IGEubmFtZSwgdHlwZTogYS5pc0FueVR5cGUgPyAnQU5ZJyA6IHR5cGVTdHIoYS5hcnJvd1R5cGUpfTsKICAgICAgaWYgKHR5cGVvZiBhLnBvc2l0aW9uID09PSAnc3RyaW5nJykgYXJnLm5hbWVkID0gdHJ1ZTsKICAgICAgaWYgKGEuZG9jKSBhcmcuZGVzYyA9IGEuZG9jOwogICAgICBpZiAoYS5kZWZhdWx0SnNvbiAhPSBudWxsKSBhcmcuZGVmYXVsdCA9IGEuZGVmYXVsdEpzb247CiAgICAgIHJldHVybiBhcmc7CiAgICB9KTsKfQoKYXN5bmMgZnVuY3Rpb24gc2NoZW1hRW50cnkoYW9kLCBzaSl7CiAgLy8gQSBWR0kgd29ya2VyIGNvbW1vbmx5IGV4cG9zZXMgaXRzIGNhbGxhYmxlIHN1cmZhY2UgYXMgZGVjbGFyYXRpdmUgbWFjcm9zLAogIC8vIHNvIHRoZXkgZm9sZCBpbnRvIHRoZSBzYW1lIHNjYWxhci90YWJsZSBidWNrZXRzIGFzIGZ1bmN0aW9ucy4KICBjb25zdCBtYWNyb3MgPSAoa2luZCk9PiBjbGllbnQuc2NoZW1hQ29udGVudHNNYWNyb3MoYW9kLCBzaS5wYXRoLCBraW5kKS5jYXRjaCgoKT0+W10pOwogIGNvbnN0IFt0YWJsZXNSYXcsIHZpZXdzUmF3LCBzY2FsYXJGbnMsIHRhYmxlRm5zLCBhZ2dGbnMsIHNjYWxhck1hY3JvcywgdGFibGVNYWNyb3NdID0gYXdhaXQgUHJvbWlzZS5hbGwoWwogICAgY2xpZW50LnNjaGVtYUNvbnRlbnRzVGFibGVzKGFvZCwgc2kucGF0aCksCiAgICBjbGllbnQuc2NoZW1hQ29udGVudHNWaWV3cyhhb2QsIHNpLnBhdGgpLAogICAgY2xpZW50LnNjaGVtYUNvbnRlbnRzRnVuY3Rpb25zKGFvZCwgc2kucGF0aCwgJ1NDQUxBUl9GVU5DVElPTicpLAogICAgY2xpZW50LnNjaGVtYUNvbnRlbnRzRnVuY3Rpb25zKGFvZCwgc2kucGF0aCwgJ1RBQkxFX0ZVTkNUSU9OJyksCiAgICBjbGllbnQuc2NoZW1hQ29udGVudHNGdW5jdGlvbnMoYW9kLCBzaS5wYXRoLCAnQUdHUkVHQVRFX0ZVTkNUSU9OJyksCiAgICBtYWNyb3MoJ1NDQUxBUl9NQUNSTycpLAogICAgbWFjcm9zKCdUQUJMRV9NQUNSTycpCiAgXSk7CiAgY29uc3QgbWFjcm9zUmF3ID0gW10uY29uY2F0KHNjYWxhck1hY3JvcywgdGFibGVNYWNyb3MpOwogIGNvbnN0IGJ5TmFtZSA9IChhLGIpPT5hLm5hbWU8Yi5uYW1lPy0xOmEubmFtZT5iLm5hbWU/MTowOwogIGNvbnN0IHRhYmxlcyA9IHRhYmxlc1Jhdy5zbGljZSgpLnNvcnQoYnlOYW1lKS5tYXAodD0+ewogICAgY29uc3QgcyA9IHJlYWRTY2hlbWEodC5jb2x1bW5zKTsKICAgIHJldHVybiB7bmFtZTogdC5uYW1lLCBjb2xzOiBzID8gcy5maWVsZHMubGVuZ3RoIDogMCwgY29tbWVudDogdC5jb21tZW50IHx8ICcnfTsKICB9KTsKICBjb25zdCB2aWV3cyA9IHZpZXdzUmF3LnNsaWNlKCkuc29ydChieU5hbWUpLm1hcCh2PT4oewogICAgbmFtZTogdi5uYW1lLCBjb2xzOiBPYmplY3Qua2V5cyh2LmNvbHVtbl9jb21tZW50c3x8e30pLmxlbmd0aCwKICAgIGNvbW1lbnQ6IHYuY29tbWVudCB8fCAnJywgZGVmOiB2LmRlZmluaXRpb24KICB9KSk7CiAgY29uc3QgZnVuY3Rpb25zID0gW10uY29uY2F0KHNjYWxhckZucywgdGFibGVGbnMsIGFnZ0ZucykubWFwKGY9PnsKICAgIGNvbnN0IG91dCA9IHtuYW1lOiBmLm5hbWUsIHR5cGU6IGZuRGlzcGxheVR5cGUoZiksIGRvYzogZi5kZXNjcmlwdGlvbiB8fCAnJywgYXJnczogZm5BcmdzKGYpfTsKICAgIGNvbnN0IHIgPSBmblJldHVybnMoZik7CiAgICBpZiAocikgb3V0LnJldHVybnMgPSByOwogICAgcmV0dXJuIG91dDsKICAvLyBNYWNyb3MgZ2V0IHRoZWlyIG93biBidWNrZXRzIHJhdGhlciB0aGFuIGZvbGRpbmcgaW50byBzY2FsYXIvdGFibGUuIFRoZXkKICAvLyBhcmUgYSBkaWZmZXJlbnQgdGhpbmcgdG8gY2FsbDogRHVja0RCIGV4cGFuZHMgdGhlbSBpbmxpbmUgYXMgU1FMLCBzbyB0aGV5CiAgLy8gY29zdCBubyBSUEMgcm91bmQtdHJpcCBhbmQgcnVuIGlkZW50aWNhbGx5IG9uIGV2ZXJ5IHRyYW5zcG9ydC4gTWVyZ2luZwogIC8vIHRoZW0gYWxzbyBtaXNyZXBvcnRlZCB0aGUgY2F0YWxvZyDigJQgdmdpLW9wZW4tbWV0ZW8gaGFzIHNpeCBzY2FsYXIgbWFjcm9zCiAgLy8gYW5kIHplcm8gc2NhbGFyIGZ1bmN0aW9ucywgYW5kIHRoZSBwYWdlIGxpc3RlZCBhbGwgc2l4IHVuZGVyICJTY2FsYXIKICAvLyBmdW5jdGlvbnMiLgogIC8vCiAgLy8gVGhlaXIgcGFyYW1ldGVycyBjYXJyeSBuYW1lcyBvbmx5LiBBIER1Y2tEQiBtYWNybyBpcyB1bnR5cGVkLCBzbyB0aGUKICAvLyBwcm90b2NvbCBoYXMgbm8gdHlwZSB0byBzZW5kIGFuZCB0aGlzIHVzZWQgdG8gaW52ZW50IGBBTllgIGZvciBlYWNoIG9uZSDigJQKICAvLyB3aGljaCByZWFkcyBhcyAiYWNjZXB0cyBhbnkgdHlwZSIgd2hlbiBpdCBtZWFucyAibm8gdHlwZSBleGlzdHMiLiBMZWF2aW5nCiAgLy8gaXQgdW5zZXQgbGV0cyB0aGUgc2lnbmF0dXJlIGFuZCB0aGUgYXJndW1lbnQgY2FyZCBvbWl0IGl0LCBhbmQga2VlcHMgQU5ZCiAgLy8gbWVhbmluZyB3aGF0IGl0IHNheXMgb24gYSBnZW51aW5lbHkgcG9seW1vcnBoaWMgZnVuY3Rpb24gYXJndW1lbnQuCiAgfSkuY29uY2F0KChtYWNyb3NSYXd8fFtdKS5tYXAobT0+KHsKICAgIG5hbWU6IG0ubmFtZSwgdHlwZTogU3RyaW5nKG0ubWFjcm9fdHlwZSkuc3RhcnRzV2l0aCgnVEFCTEUnKSA/ICd0YWJsZV9tYWNybycgOiAnc2NhbGFyX21hY3JvJywKICAgIGRvYzogbS5jb21tZW50IHx8ICcnLCBhcmdzOiAobS5wYXJhbWV0ZXJzfHxbXSkubWFwKHA9Pih7bmFtZTpwfSkpCiAgfSkpKTsKICBmdW5jdGlvbnMuc29ydCgoYSxiKT0+IGEudHlwZT09PWIudHlwZSA/IGJ5TmFtZShhLGIpIDogKGEudHlwZTxiLnR5cGU/LTE6MSkpOwogIGNvbnN0IGVudHJ5ID0ge25hbWU6IHNpLnBhdGguam9pbignLicpLCBwYXRoOiBzaS5wYXRoLCB0YWJsZXMsIHZpZXdzLCBmdW5jdGlvbnN9OwogIGlmIChzaS5jb21tZW50KSBlbnRyeS5kb2MgPSBzaS5jb21tZW50OwogIHJldHVybiBlbnRyeTsKfQoKYXN5bmMgZnVuY3Rpb24gYnVpbGRDYXRhbG9nKGluZm8pewogIGNvbnN0IGNhdCA9IHsKICAgIG5hbWU6IGluZm8ubmFtZSwKICAgIGltcGxlbWVudGF0aW9uX3ZlcnNpb246IGluZm8uaW1wbGVtZW50YXRpb25fdmVyc2lvbiA/PyBudWxsLAogICAgZGF0YV92ZXJzaW9uX3NwZWM6IGluZm8uZGF0YV92ZXJzaW9uX3NwZWMgPz8gbnVsbCwKICAgIGRhdGFfdmVyc2lvbnM6IChpbmZvLnJlbGVhc2VzfHxbXSkubWFwKHI9Pk9iamVjdC5hc3NpZ24oe3NwZWM6ci52ZXJzaW9ufSwgci5zdW1tYXJ5P3tsYWJlbDpyLnN1bW1hcnl9Ont9KSksCiAgICBhdHRhY2hfb3B0aW9uczogW10sCiAgICB0YWdzOiB7fSwKICAgIGNvdW50czoge3NjaGVtYXM6MCx0YWJsZXM6MCx2aWV3czowLGZ1bmN0aW9uczowLG1hY3JvczowfSwKICAgIHNjaGVtYXM6IFtdLAogICAgX2FvZDogbnVsbAogIH07CiAgdHJ5IHsKICAgIGNhdC5hdHRhY2hfb3B0aW9ucyA9IGRlc2VyaWFsaXplQXR0YWNoT3B0aW9uU3BlY3MoaW5mby5hdHRhY2hfb3B0aW9uX3NwZWNzfHxbXSkubWFwKHM9Pih7CiAgICAgIG5hbWU6IHMubmFtZSwgdHlwZTogdHlwZVN0cihzLnR5cGUpLAogICAgICBkZWZhdWx0OiBzLmRlZmF1bHQgPT0gbnVsbCA/ICcnIDogU3RyaW5nKHMuZGVmYXVsdCksCiAgICAgIGRlc2NyaXB0aW9uOiBzLmRlc2NyaXB0aW9uIHx8ICcnLAogICAgICByZXF1aXJlZDogISFzLnJlcXVpcmVkCiAgICB9KSk7CiAgfSBjYXRjaCAoZSkgeyAvKiBrZWVwIHRoZSBjYXJkOyBkcm9wIHVucmVhZGFibGUgc3BlY3MgKi8gfQoKICBsZXQgYXR0YWNoOwogIHRyeSB7CiAgICBhdHRhY2ggPSBhd2FpdCBjbGllbnQuY2F0YWxvZ0F0dGFjaChpbmZvLm5hbWUpOwogIH0gY2F0Y2ggKGUpIHsKICAgIC8vIFRoZSByZWFsIHJlYXNvbiwgbm90IGFuIGVtcHR5LWxvb2tpbmcgY2F0YWxvZzogYSByZXF1aXJlZCBvcHRpb24gdGhhdAogICAgLy8gd2Fzbid0IHN1cHBsaWVkLCBhbiB1bnN1cHBvcnRlZCB2ZXJzaW9uLCBhbiB1bnJlYWNoYWJsZSBiYWNrZW5kLgogICAgY2F0LmF0dGFjaF9lcnJvciA9IFN0cmluZygoZSAmJiBlLm1lc3NhZ2UpIHx8IGUpOwogICAgcmV0dXJuIGNhdDsKICB9CiAgY2F0Ll9hb2QgPSBhdHRhY2guYXR0YWNoX29wYXF1ZV9kYXRhOwogIGlmIChhdHRhY2gucmVzb2x2ZWRfaW1wbGVtZW50YXRpb25fdmVyc2lvbikgY2F0LmltcGxlbWVudGF0aW9uX3ZlcnNpb24gPSBhdHRhY2gucmVzb2x2ZWRfaW1wbGVtZW50YXRpb25fdmVyc2lvbjsKICBpZiAoYXR0YWNoLnJlc29sdmVkX2RhdGFfdmVyc2lvbikgY2F0LmRhdGFfdmVyc2lvbl9zcGVjID0gYXR0YWNoLnJlc29sdmVkX2RhdGFfdmVyc2lvbjsKICBjYXQudGFncyA9IG1hcFRhZ3MoYXR0YWNoLnRhZ3MgfHwge30pOwoKICBjb25zdCBzY2hlbWFJbmZvcyA9IChhd2FpdCBjbGllbnQuc2NoZW1hcyhjYXQuX2FvZCkpLnNsaWNlKCkKICAgIC5zb3J0KChhLGIpPT5hLnBhdGguam9pbignLicpLmxvY2FsZUNvbXBhcmUoYi5wYXRoLmpvaW4oJy4nKSkpOwogIGNhdC5zY2hlbWFzID0gYXdhaXQgUHJvbWlzZS5hbGwoc2NoZW1hSW5mb3MubWFwKHNpPT5zY2hlbWFFbnRyeShjYXQuX2FvZCwgc2kpKSk7CiAgLy8gYHMuZnVuY3Rpb25zYCBob2xkcyBib3RoLCBzbyBtYWNyb3MgYXJlIGNvdW50ZWQgYXBhcnQgcmF0aGVyIHRoYW4gaW5mbGF0aW5nCiAgLy8gdGhlIGZ1bmN0aW9uIGNvdW50IOKAlCB2Z2ktb3Blbi1tZXRlbyByZWFkcyAiMTMgZnVuY3Rpb25zIMK3IDYgbWFjcm9zIiwgbm90CiAgLy8gIjE5IGZ1bmN0aW9ucyIgd2hlbiBpdCBoYXMgbm8gc2NhbGFyIGZ1bmN0aW9ucyBhdCBhbGwuCiAgY29uc3QgaXNNYWNybyA9IGYgPT4gZi50eXBlID09PSAnc2NhbGFyX21hY3JvJyB8fCBmLnR5cGUgPT09ICd0YWJsZV9tYWNybyc7CiAgY2F0LmNvdW50cyA9IHsKICAgIHNjaGVtYXM6IGNhdC5zY2hlbWFzLmxlbmd0aCwKICAgIHRhYmxlczogY2F0LnNjaGVtYXMucmVkdWNlKChuLHMpPT5uK3MudGFibGVzLmxlbmd0aCwwKSwKICAgIHZpZXdzOiBjYXQuc2NoZW1hcy5yZWR1Y2UoKG4scyk9Pm4rcy52aWV3cy5sZW5ndGgsMCksCiAgICBmdW5jdGlvbnM6IGNhdC5zY2hlbWFzLnJlZHVjZSgobixzKT0+bitzLmZ1bmN0aW9ucy5maWx0ZXIoZj0+IWlzTWFjcm8oZikpLmxlbmd0aCwwKSwKICAgIG1hY3JvczogY2F0LnNjaGVtYXMucmVkdWNlKChuLHMpPT5uK3MuZnVuY3Rpb25zLmZpbHRlcihpc01hY3JvKS5sZW5ndGgsMCkKICB9OwogIHJldHVybiBjYXQ7Cn0KCi8vIFJlc2VydmVkIGB2Z2kuKmAgY2F0YWxvZyB0YWdzIChzZWUgdGhlIGV4dGVuc2lvbidzIFRBR1MubWQpIHN1cmZhY2VkIG9uIHRoZSBjYXJkLgpjb25zdCBTVFJJTkdfVEFHUyA9IHsKICB0aXRsZTondmdpLnRpdGxlJywgZG9jX21kOid2Z2kuZG9jX21kJywgc291cmNlX3VybDondmdpLnNvdXJjZV91cmwnLAogIGxpY2Vuc2U6J3ZnaS5saWNlbnNlJywgYXV0aG9yOid2Z2kuYXV0aG9yJywgY29weXJpZ2h0Oid2Z2kuY29weXJpZ2h0JywKICBzdXBwb3J0X2NvbnRhY3Q6J3ZnaS5zdXBwb3J0X2NvbnRhY3QnLCBzdXBwb3J0X3BvbGljeV91cmw6J3ZnaS5zdXBwb3J0X3BvbGljeV91cmwnCn07CmZ1bmN0aW9uIG1hcFRhZ3ModGFncyl7CiAgY29uc3Qgb3V0ID0ge307CiAgZm9yIChjb25zdCBbaywgdGFnXSBvZiBPYmplY3QuZW50cmllcyhTVFJJTkdfVEFHUykpIGlmICh0YWdzW3RhZ10pIG91dFtrXSA9IHRhZ3NbdGFnXTsKICBpZiAodGFnc1sndmdpLmtleXdvcmRzJ10pIHsKICAgIHRyeSB7IGNvbnN0IGt3ID0gSlNPTi5wYXJzZSh0YWdzWyd2Z2kua2V5d29yZHMnXSk7IGlmIChBcnJheS5pc0FycmF5KGt3KSkgb3V0LmtleXdvcmRzID0ga3cubWFwKFN0cmluZyk7IH0KICAgIGNhdGNoIChlKSB7IC8qIGxlYXZlIGtleXdvcmRzIG9mZiAqLyB9CiAgfQogIHJldHVybiBvdXQ7Cn0KCmNvbnN0IG9yaWdpbiA9IGxvY2F0aW9uLm9yaWdpbjsKY29uc3QgYmFzZVBhdGggPSBsb2NhdGlvbi5wYXRobmFtZS5lbmRzV2l0aCgnLycpID8gbG9jYXRpb24ucGF0aG5hbWUgOiBsb2NhdGlvbi5wYXRobmFtZSArICcvJzsKY29uc3QgcHJlZml4ID0gYmFzZVBhdGgucmVwbGFjZSgvXC8kLywgJycpOwpjb25zdCBzZXJ2aWNlVXJsID0gb3JpZ2luICsgYmFzZVBhdGg7CmNvbnN0IGVzYyA9IHMgPT4gU3RyaW5nKHMpLnJlcGxhY2UoL1smPD4iXS9nLCBjPT4oeycmJzonJmFtcDsnLCc8JzonJmx0OycsJz4nOicmZ3Q7JywnIic6JyZxdW90Oyd9W2NdKSk7CmNvbnN0IHNxbEhpID0gcyA9PiBlc2MocykucmVwbGFjZSgvXGIoU0VMRUNUfEZST018V0hFUkV8R1JPVVAgQll8T1JERVIgQll8SU5URVJWQUx8QU5EfE9SfEFTfEpPSU58T058WUVBUilcYi9nLCBtPT4nPHNwYW4gY2xhc3M9Imt3Ij4nK20rJzwvc3Bhbj4nKTsKCmZ1bmN0aW9uIG1kVG9IdG1sKHNyYyl7CiAgaWYoIXNyYykgcmV0dXJuICcnOwogIHZhciBsaW5lcyA9IFN0cmluZyhzcmMpLnJlcGxhY2UoL1xyXG4/L2csJ1xuJykuc3BsaXQoJ1xuJyksIG91dD1bXSwgaT0wOwogIGZ1bmN0aW9uIGlubCh0KXsKICAgIHQgPSBlc2ModCk7CiAgICB0ID0gdC5yZXBsYWNlKC9gKFteYF0rKWAvZywnPGNvZGU+JDE8L2NvZGU+Jyk7CiAgICB0ID0gdC5yZXBsYWNlKC9cKlwqKFteKl0rKVwqXCovZywnPHN0cm9uZz4kMTwvc3Ryb25nPicpOwogICAgdCA9IHQucmVwbGFjZSgvKF58W14qXSlcKihbXipdKylcKi9nLCckMTxlbT4kMjwvZW0+Jyk7CiAgICB0ID0gdC5yZXBsYWNlKC9cWyhbXlxdXSspXF1cKChodHRwcz86XC9cL1teKVxzXSspXCkvZywnPGEgaHJlZj0iJDIiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj4kMTwvYT4nKTsKICAgIHJldHVybiB0OwogIH0KICAvLyBBIEdGTSB0YWJsZSA9IGEgcm93IGNvbnRhaW5pbmcgJ3wnIGltbWVkaWF0ZWx5IGZvbGxvd2VkIGJ5IGEgZGVsaW1pdGVyIHJvdwogIC8vIChwaXBlcyBvZiBkYXNoZXMgd2l0aCBvcHRpb25hbCBhbGlnbm1lbnQgY29sb25zKS4KICB2YXIgaXNEZWxpbSA9IGZ1bmN0aW9uKHMpeyByZXR1cm4gcyE9bnVsbCAmJiAvXlxzKlx8P1xzKjo/LSs6P1xzKihcfFxzKjo/LSs6P1xzKikqXHw/XHMqJC8udGVzdChzKSAmJiBzLmluZGV4T2YoJy0nKT49MDsgfTsKICB2YXIgaXNUYWJsZVN0YXJ0ID0gZnVuY3Rpb24oaWR4KXsgcmV0dXJuIGlkeDxsaW5lcy5sZW5ndGggJiYgbGluZXNbaWR4XS5pbmRleE9mKCd8Jyk+PTAgJiYgaXNEZWxpbShsaW5lc1tpZHgrMV0pOyB9OwogIHZhciBzcGxpdFJvdyA9IGZ1bmN0aW9uKHIpeyByZXR1cm4gci50cmltKCkucmVwbGFjZSgvXlx8LywnJykucmVwbGFjZSgvXHwkLywnJykuc3BsaXQoJ3wnKS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudHJpbSgpO30pOyB9OwogIHdoaWxlKGk8bGluZXMubGVuZ3RoKXsKICAgIHZhciBsbj1saW5lc1tpXTsKICAgIGlmKC9eXHMqJC8udGVzdChsbikpeyBpKys7IGNvbnRpbnVlOyB9CiAgICB2YXIgaD1sbi5tYXRjaCgvXigjezEsNn0pXHMrKC4qKSQvKTsKICAgIGlmKGgpeyB2YXIgbHY9TWF0aC5taW4oaFsxXS5sZW5ndGgsNik7IG91dC5wdXNoKCc8aCcrbHYrJyBjbGFzcz0ibWQtaCI+JytpbmwoaFsyXSkrJzwvaCcrbHYrJz4nKTsgaSsrOyBjb250aW51ZTsgfQogICAgaWYoaXNUYWJsZVN0YXJ0KGkpKXsKICAgICAgdmFyIGhlYWRzPXNwbGl0Um93KGxuKTsKICAgICAgdmFyIGFsaWducz1zcGxpdFJvdyhsaW5lc1tpKzFdKS5tYXAoZnVuY3Rpb24ocyl7IHZhciBsPXMuY2hhckF0KDApPT09JzonLCByPXMuY2hhckF0KHMubGVuZ3RoLTEpPT09JzonOyByZXR1cm4gKGwmJnIpPydjZW50ZXInOnI/J3JpZ2h0JzpsPydsZWZ0JzonJzsgfSk7CiAgICAgIGkrPTI7CiAgICAgIHZhciByb3dzPVtdOwogICAgICB3aGlsZShpPGxpbmVzLmxlbmd0aCAmJiBsaW5lc1tpXS5pbmRleE9mKCd8Jyk+PTAgJiYgIS9eXHMqJC8udGVzdChsaW5lc1tpXSkpeyByb3dzLnB1c2goc3BsaXRSb3cobGluZXNbaV0pKTsgaSsrOyB9CiAgICAgIHZhciBjZWxsPWZ1bmN0aW9uKHRhZyx0eHQsY2kpeyB2YXIgYT1hbGlnbnNbY2ldPycgc3R5bGU9InRleHQtYWxpZ246JythbGlnbnNbY2ldKyciJzonJzsgcmV0dXJuICc8Jyt0YWcrYSsnPicraW5sKHR4dHx8JycpKyc8LycrdGFnKyc+JzsgfTsKICAgICAgdmFyIHRoZWFkPSc8dHI+JytoZWFkcy5tYXAoZnVuY3Rpb24oYyxjaSl7cmV0dXJuIGNlbGwoJ3RoJyxjLGNpKTt9KS5qb2luKCcnKSsnPC90cj4nOwogICAgICB2YXIgdGJvZHk9cm93cy5tYXAoZnVuY3Rpb24ocm93KXtyZXR1cm4gJzx0cj4nK2hlYWRzLm1hcChmdW5jdGlvbihfLGNpKXtyZXR1cm4gY2VsbCgndGQnLHJvd1tjaV0sY2kpO30pLmpvaW4oJycpKyc8L3RyPic7fSkuam9pbignJyk7CiAgICAgIG91dC5wdXNoKCc8ZGl2IGNsYXNzPSJtZC10YWJsZXdyYXAiPjx0YWJsZSBjbGFzcz0ibWQtdGFibGUiPjx0aGVhZD4nK3RoZWFkKyc8L3RoZWFkPjx0Ym9keT4nK3Rib2R5Kyc8L3Rib2R5PjwvdGFibGU+PC9kaXY+Jyk7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgaWYoL15ccypbLSorXVxzKy8udGVzdChsbikpewogICAgICB2YXIgaXRlbXM9W107CiAgICAgIHdoaWxlKGk8bGluZXMubGVuZ3RoICYmIC9eXHMqWy0qK11ccysvLnRlc3QobGluZXNbaV0pKXsgaXRlbXMucHVzaCgnPGxpPicraW5sKGxpbmVzW2ldLnJlcGxhY2UoL15ccypbLSorXVxzKy8sJycpKSsnPC9saT4nKTsgaSsrOyB9CiAgICAgIG91dC5wdXNoKCc8dWwgY2xhc3M9Im1kLXVsIj4nK2l0ZW1zLmpvaW4oJycpKyc8L3VsPicpOyBjb250aW51ZTsKICAgIH0KICAgIHZhciBwYXJhPVtsbl07IGkrKzsKICAgIHdoaWxlKGk8bGluZXMubGVuZ3RoICYmICEvXlxzKiQvLnRlc3QobGluZXNbaV0pICYmICEvXigjezEsNn1cc3xccypbLSorXVxzKS8udGVzdChsaW5lc1tpXSkgJiYgIWlzVGFibGVTdGFydChpKSl7IHBhcmEucHVzaChsaW5lc1tpXSk7IGkrKzsgfQogICAgb3V0LnB1c2goJzxwIGNsYXNzPSJtZC1wIj4nK2lubChwYXJhLmpvaW4oJyAnKSkrJzwvcD4nKTsKICB9CiAgcmV0dXJuIG91dC5qb2luKCcnKTsKfQp2YXIgX0REQl9UWVBFUyA9IHtpbnQ4OidUSU5ZSU5UJyxpbnQxNjonU01BTExJTlQnLGludDMyOidJTlRFR0VSJyxpbnQ2NDonQklHSU5UJywKICB1aW50ODonVVRJTllJTlQnLHVpbnQxNjonVVNNQUxMSU5UJyx1aW50MzI6J1VJTlRFR0VSJyx1aW50NjQ6J1VCSUdJTlQnLAogIGhhbGZmbG9hdDonRkxPQVQnLGZsb2F0OidGTE9BVCcsZmxvYXQzMjonRkxPQVQnLGRvdWJsZTonRE9VQkxFJyxmbG9hdDY0OidET1VCTEUnLAogIGJvb2w6J0JPT0xFQU4nLGJvb2xlYW46J0JPT0xFQU4nLHN0cmluZzonVkFSQ0hBUicsbGFyZ2Vfc3RyaW5nOidWQVJDSEFSJyx1dGY4OidWQVJDSEFSJyxsYXJnZV91dGY4OidWQVJDSEFSJywKICBiaW5hcnk6J0JMT0InLGxhcmdlX2JpbmFyeTonQkxPQicsZGF0ZTMyOidEQVRFJywnZGF0ZTMyW2RheV0nOidEQVRFJyxkYXRlNjQ6J0RBVEUnLG51bGw6J05VTEwnLAogIG1vbnRoX2RheV9uYW5vX2ludGVydmFsOidJTlRFUlZBTCd9OwpmdW5jdGlvbiBkdWNrZGJUeXBlKHQpewogIGlmKCF0KSByZXR1cm4gdDsgdD1TdHJpbmcodCk7IHZhciBsdD10LnRvTG93ZXJDYXNlKCk7CiAgaWYoX0REQl9UWVBFU1tsdF0pIHJldHVybiBfRERCX1RZUEVTW2x0XTsKICB2YXIgZD10Lm1hdGNoKC9eZGljdGlvbmFyeTx2YWx1ZXM9KFteLD5dKykvaSk7IGlmKGQpIHJldHVybiBkdWNrZGJUeXBlKGRbMV0udHJpbSgpKTsKICB2YXIgbD10Lm1hdGNoKC9eKD86bGFyZ2VfKT9saXN0PCg/Oml0ZW06XHMqKT8oLispPiQvaSk7IGlmKGwpIHJldHVybiBkdWNrZGJUeXBlKGxbMV0udHJpbSgpKSsnW10nOwogIGlmKC9eZml4ZWRfc2l6ZV9iaW5hcnkvaS50ZXN0KHQpKSByZXR1cm4gJ0JMT0InOwogIHZhciB0cz10Lm1hdGNoKC9edGltZXN0YW1wXFsoW14sXF1dKykoPzosXHMqdHo9KFteXF1dKykpP1xdJC9pKTsgaWYodHMpIHJldHVybiB0c1syXT8nVElNRVNUQU1QVFonOidUSU1FU1RBTVAnOwogIGlmKC9edGltZSgzMnw2NClcWy9pLnRlc3QodCkpIHJldHVybiAnVElNRSc7CiAgaWYoL15kdXJhdGlvblxbL2kudGVzdCh0KSkgcmV0dXJuICdJTlRFUlZBTCc7CiAgdmFyIGRlYz10Lm1hdGNoKC9eZGVjaW1hbCg/OjEyOHwyNTYpXCgoXGQrKSxccyooXGQrKVwpJC9pKTsgaWYoZGVjKSByZXR1cm4gJ0RFQ0lNQUwoJytkZWNbMV0rJywnK2RlY1syXSsnKSc7CiAgaWYoL15zdHJ1Y3Q8L2kudGVzdCh0KSkgcmV0dXJuICdTVFJVQ1QnOwogIGlmKC9ebWFwPC9pLnRlc3QodCkpIHJldHVybiAnTUFQJzsKICByZXR1cm4gdDsKfQoKCi8vIOKUgOKUgCBpZGVudGl0eSBwaWxsIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgApmdW5jdGlvbiByZW5kZXJJZGVudGl0eSgpewogIGlmICghZGVzY3JpYmUub2F1dGgpIHJldHVybjsKICBjb25zdCBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2Z2ktdXNlci1pbmZvJyk7CiAgY29uc3QgbSA9IGRvY3VtZW50LmNvb2tpZS5tYXRjaCgnKF58OylcXHMqX3ZnaV9pZGVudGl0eT0oW147XSspJyk7CiAgaWYgKCFtKSB7IGVsLmNsYXNzTGlzdC5hZGQoJ3NpZ25pbicpOyBlbC5pbm5lckhUTUwgPSAnPHNwYW4gY2xhc3M9ImF2YXRhciI+Pzwvc3Bhbj48YSBjbGFzcz0iYWN0IiBocmVmPSInK3ByZWZpeCsnL19vYXV0aC9sb2dpbiI+U2lnbiBpbjwvYT4nOyByZXR1cm47IH0KICBsZXQgcD17fTsgdHJ5IHsgcCA9IEpTT04ucGFyc2UoYXRvYihtWzJdLnJlcGxhY2UoLy0vZywnKycpLnJlcGxhY2UoL18vZywnLycpKSk7IH0gY2F0Y2goZSl7fQogIGNvbnN0IGRpc3BsYXkgPSBwLmVtYWlsIHx8IHAucHJlZmVycmVkX3VzZXJuYW1lIHx8IHAubmFtZSB8fCBwLnN1YiB8fCAnJzsKICBjb25zdCBzcmMgPSAocC5uYW1lIHx8IHAuZW1haWwgfHwgJz8nKS50cmltKCk7CiAgY29uc3QgaW5pdGlhbHMgPSAoc3JjLnNwbGl0KC9bXHNALl8tXSsvKS5maWx0ZXIoQm9vbGVhbikuc2xpY2UoMCwyKS5tYXAodz0+d1swXSkuam9pbignJykgfHwgJz8nKS50b1VwcGVyQ2FzZSgpOwogIGVsLmlubmVySFRNTCA9IChwLnBpY3R1cmUgPyAnPGltZyBjbGFzcz0iYXZhdGFyIiBzcmM9IicrZXNjKHAucGljdHVyZSkrJyIgYWx0PSIiPicgOiAnPHNwYW4gY2xhc3M9ImF2YXRhciI+Jytlc2MoaW5pdGlhbHMpKyc8L3NwYW4+JykgKwogICAgJzxzcGFuIGNsYXNzPSJlbWFpbCIgdGl0bGU9IicrZXNjKGRpc3BsYXkpKyciPicrZXNjKGRpc3BsYXkpKyc8L3NwYW4+PGEgY2xhc3M9ImFjdCIgaHJlZj0iJytwcmVmaXgrJy9fb2F1dGgvbG9nb3V0Ij5TaWduIG91dDwvYT4nOwp9CgovLyDilIDilIAgaGVhZGVyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgApmdW5jdGlvbiByZW5kZXJIZWFkZXIoKXsKICBkb2N1bWVudC50aXRsZSA9IGRlc2NyaWJlLndvcmtlci5uYW1lICsgJyBcdTAwYjcgVkdJJzsKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnd29ya2VyLW5hbWUnKS50ZXh0Q29udGVudCA9IGRlc2NyaWJlLndvcmtlci5uYW1lOwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd3b3JrZXItZG9jJykudGV4dENvbnRlbnQgPSBkZXNjcmliZS53b3JrZXIuZG9jIHx8ICcnOwp9CgovLyDilIDilIAgc3RhdGUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSACmxldCBhY3RpdmUgPSAwOwpjb25zdCBzZWxlY3RlZCA9IHt9Owpjb25zdCBjYXQgPSAoKSA9PiBkZXNjcmliZS5jYXRhbG9nc1thY3RpdmVdOwpjb25zdCBsYXRlc3RTcGVjID0gYyA9PiAoYy5kYXRhX3ZlcnNpb25zICYmIGMuZGF0YV92ZXJzaW9uc1swXSkgPyBjLmRhdGFfdmVyc2lvbnNbMF0uc3BlYyA6IG51bGw7CmNvbnN0IGN1cnJlbnRTcGVjID0gYyA9PiBzZWxlY3RlZFtjLm5hbWVdOwpmdW5jdGlvbiBjdXBvbGFVcmwoaGFzaCl7CiAgY29uc3QgYyA9IGNhdCgpOyBsZXQgdSA9IGRlc2NyaWJlLmN1cG9sYV9iYXNlKyIvP3NlcnZpY2U9IitlbmNvZGVVUklDb21wb25lbnQoc2VydmljZVVybCk7CiAgY29uc3QgdiA9IGN1cnJlbnRTcGVjKGMpOyBpZiAodikgdSArPSAiJmRhdGFfdmVyc2lvbl9zcGVjPSIrZW5jb2RlVVJJQ29tcG9uZW50KHYpOwogIHJldHVybiB1ICsgKGhhc2h8fCIiKTsKfQoKLy8g4pSA4pSAIGNhdGFsb2cgcGlja2VyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgApmdW5jdGlvbiByZW5kZXJDYXRCYXIoKXsKICBjb25zdCBiYXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2F0YmFyJyk7CiAgaWYgKGRlc2NyaWJlLmNhdGFsb2dzLmxlbmd0aCA8IDIpeyBiYXIuc3R5bGUuZGlzcGxheT0nbm9uZSc7IHJldHVybjsgfQogIGJhci5pbm5lckhUTUwgPSAnPHNwYW4gY2xhc3M9ImxhYmVsIj5DYXRhbG9nczwvc3Bhbj48ZGl2IGNsYXNzPSJjYXQtdGFicyI+JyArCiAgICBkZXNjcmliZS5jYXRhbG9ncy5tYXAoKGMsaSk9PnsKICAgICAgY29uc3QgbnYgPSAoYy5kYXRhX3ZlcnNpb25zICYmIGMuZGF0YV92ZXJzaW9ucy5sZW5ndGgpID8gYy5kYXRhX3ZlcnNpb25zLmxlbmd0aCsnIHZlcnNpb25zJyA6ICd1bnZlcnNpb25lZCc7CiAgICAgIHJldHVybiAnPGJ1dHRvbiBjbGFzcz0iY2F0LXRhYicrKGk9PT1hY3RpdmU/JyBhY3RpdmUnOicnKSsnIiBkYXRhLWk9IicraSsnIj4nK2VzYyhjLm5hbWUpKycgPHNwYW4gY2xhc3M9ImN2Ij4nK252Kyc8L3NwYW4+PC9idXR0b24+JzsKICAgIH0pLmpvaW4oJycpICsgJzwvZGl2Pic7CiAgYmFyLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXQtdGFiJykuZm9yRWFjaChiPT5iLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywoKT0+eyBhY3RpdmU9K2IuZGF0YXNldC5pOyByZW5kZXJBbGwoKTsgfSkpOwp9CgovLyDilIDilIAgY2F0YWxvZyBtZXRhZGF0YSBjYXJkICh2Z2kuKiB0YWdzKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAKZnVuY3Rpb24gcmVuZGVyQ2F0Q2FyZCgpewogIGNvbnN0IGMgPSBjYXQoKSwgdCA9IGMudGFncyB8fCB7fTsKICBjb25zdCBiYWRnZSA9IChocmVmLCBpYywgbGFiZWwsIHZhbCkgPT4gewogICAgY29uc3QgaW5uZXIgPSBpY29uKGljKSsnPHNwYW4+JytsYWJlbCsodmFsPycgPGI+Jytlc2ModmFsKSsnPC9iPic6JycpKyc8L3NwYW4+JzsKICAgIHJldHVybiBocmVmID8gJzxhIGNsYXNzPSJiYWRnZScrKGljPT09J2xpY2Vuc2UnPycgbGljZW5zZSc6JycpKyciIGhyZWY9IicrZXNjKGhyZWYpKyciIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj4nK2lubmVyKyc8L2E+JwogICAgICAgICAgICAgICAgOiAnPHNwYW4gY2xhc3M9ImJhZGdlJysoaWM9PT0nbGljZW5zZSc/JyBsaWNlbnNlJzonJykrJyI+Jytpbm5lcisnPC9zcGFuPic7CiAgfTsKICBsZXQgYmFkZ2VzID0gJyc7CiAgaWYgKHQuc291cmNlX3VybCkgYmFkZ2VzICs9IGJhZGdlKHQuc291cmNlX3VybCwgJ3JlcG8nLCAnUmVwb3NpdG9yeScpOwogIGlmICh0LmxpY2Vuc2UpIGJhZGdlcyArPSBiYWRnZShudWxsLCAnbGljZW5zZScsICdMaWNlbnNlJywgdC5saWNlbnNlKTsKICBpZiAodC5zdXBwb3J0X2NvbnRhY3QpIGJhZGdlcyArPSBiYWRnZSh0LnN1cHBvcnRfY29udGFjdCwgJ3N1cHBvcnQnLCAnU3VwcG9ydCcpOwogIGlmICh0LnN1cHBvcnRfcG9saWN5X3VybCkgYmFkZ2VzICs9IGJhZGdlKHQuc3VwcG9ydF9wb2xpY3lfdXJsLCAncG9saWN5JywgJ1N1cHBvcnQgcG9saWN5Jyk7CiAgaWYgKGMuaW1wbGVtZW50YXRpb25fdmVyc2lvbikgYmFkZ2VzICs9ICc8c3BhbiBjbGFzcz0iYmFkZ2UiIHRpdGxlPSJWZXJzaW9uIG9mIHRoZSBjYXRhbG9nIGltcGxlbWVudGF0aW9uIOKAlCB0aGUgd29ya2VyIGNvZGUgc2VydmluZyB0aGlzIGNhdGFsb2csIGluZGVwZW5kZW50IG9mIHRoZSBkYXRhIHZlcnNpb24gYmVsb3cuIj4nK2ljb24oJ2ltcGwnKSsnPHNwYW4+SW1wbGVtZW50YXRpb24gPGI+dicrZXNjKGMuaW1wbGVtZW50YXRpb25fdmVyc2lvbikrJzwvYj48L3NwYW4+PC9zcGFuPic7CiAgY29uc3Qga3cgPSAodC5rZXl3b3JkcyAmJiB0LmtleXdvcmRzLmxlbmd0aCkKICAgID8gJzxkaXYgY2xhc3M9ImNjLWt3Ij4nK2ljb24oJ2tleXdvcmQnKSt0LmtleXdvcmRzLm1hcChrPT4nPHNwYW4gY2xhc3M9ImsiPicrZXNjKGspKyc8L3NwYW4+Jykuam9pbignJykrJzwvZGl2PicgOiAnJzsKICBjb25zdCBieSA9ICh0LmF1dGhvciB8fCB0LmNvcHlyaWdodCkKICAgID8gJzxkaXYgY2xhc3M9ImNjLWJ5Ij4nK1t0LmF1dGhvcj8nYnkgJytlc2ModC5hdXRob3IpOicnLCB0LmNvcHlyaWdodD9lc2ModC5jb3B5cmlnaHQpOicnXS5maWx0ZXIoQm9vbGVhbikuam9pbignIMK3ICcpKyc8L2Rpdj4nIDogJyc7CiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhdC1jYXJkJykuaW5uZXJIVE1MID0KICAgICc8ZGl2IGNsYXNzPSJjYy10aXRsZSI+JytpY29uKCdjYXRhbG9nJykrZXNjKHQudGl0bGUgfHwgYy5uYW1lKSsnPC9kaXY+JyArCiAgICAodC5kb2NfbWQgPyAnPGRpdiBjbGFzcz0iY2MtZG9jIj4nK21kVG9IdG1sKHQuZG9jX21kKSsnPC9kaXY+JyA6ICcnKSArCiAgICAoYmFkZ2VzID8gJzxkaXYgY2xhc3M9ImJhZGdlcyI+JytiYWRnZXMrJzwvZGl2PicgOiAnJykgKyBrdyArIGJ5Owp9CgovLyDilIDilIAgY29ubmVjdDogdGFiYmVkIER1Y2tEQiAvIFB5dGhvbiAvIE5vZGUuanMgKyBkYXRhLXZlcnNpb24gKyBhdHRhY2ggb3B0aW9ucyDilIDilIDilIDilIDilIAKbGV0IGNvbm5lY3RUYWIgPSAwOwpjb25zdCBDT05ORUNUX1RBQlMgPSBbWydzcWwnLCdEdWNrREInLCd0YWJfZHVja2RiJ10sWydweXRob24nLCdQeXRob24nLCd0YWJfcHl0aG9uJ10sWydqcycsJ05vZGUuanMnLCd0YWJfbm9kZSddXTsKY29uc3QgVEFCSUNPTlMgPSB7CiAgdGFiX2R1Y2tkYjogJzxpbWcgY2xhc3M9InRhYi1sb2dvIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaVZWUkdMVGdpUHo0S1BITjJaeUJwWkQwaVJXSmxibVZmTVNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCMlpYSnphVzl1UFNJeExqRWlJSFpwWlhkQ2IzZzlJakFnTUNBMU1EQWdOVEF3SWo0S0lDQThJUzB0SUVkbGJtVnlZWFJ2Y2pvZ1FXUnZZbVVnU1d4c2RYTjBjbUYwYjNJZ01qa3VNQzR3TENCVFZrY2dSWGh3YjNKMElGQnNkV2N0U1c0Z0xpQlRWa2NnVm1WeWMybHZiam9nTWk0eExqQWdRblZwYkdRZ01UZzJLU0FnTFMwK0NpQWdQR1JsWm5NK0NpQWdJQ0E4YzNSNWJHVStDaUFnSUNBZ0lDNXpkREFnZXdvZ0lDQWdJQ0FnSUdacGJHdzZJQ05tWm1ZeE1EQTdDaUFnSUNBZ0lIMEtDaUFnSUNBZ0lDNXpkREVnZXdvZ0lDQWdJQ0FnSUdacGJHdzZJQ014WVRGaE1XRTdDaUFnSUNBZ0lIMEtJQ0FnSUR3dmMzUjViR1UrQ2lBZ1BDOWtaV1p6UGdvZ0lEeHdZWFJvSUdOc1lYTnpQU0p6ZERFaUlHUTlJazB5TkRrdU9UazVOamN6Tnl3MU1EQkRNVEV4TGprek1qQXlOamNzTlRBd0xEQXNNemc0TGpBMk9EUXlOU3d3TERJMU1DNHdNREF3TWpVeExEQXNNVEV4TGprek1UZ3lOVGtzTVRFeExqTTJNemN6TnpJc01Dd3lORGt1T1RrNU5qY3pOeXd3TERNNE9DNDJNelkzTVRRMUxEQXNOVEF3TERFeE1TNDVNekU0TWpVNUxEVXdNQ3d5TlRBdU1EQXdNREkxTVdNd0xERXpPQzR3Tmpnek9UazVMVEV4TVM0NU16RTNOVEEyTERJME9TNDVPVGs1TnpRNUxUSTFNQzR3TURBek1qWXpMREkwT1M0NU9UazVOelE1V2lJdlBnb2dJRHhuUGdvZ0lDQWdQSEJoZEdnZ1kyeGhjM005SW5OME1DSWdaRDBpVFRFNU1DNHdOVFExTURRMUxERTBOaTQxT1RBM056STBZeTAxTmk0NE1UZzBOekkzTERBdE1UQXpMalF3T0RrNE1qa3NORFl1TlRrd09EUXlOeTB4TURNdU5EQTRPVGd5T1N3eE1ETXVOREE1TWpJM05pd3dMRFUzTGpNNE5qZzFNREVzTkRZdU5Ua3dOVEV3TWl3eE1ETXVOREE1TWpRd01Td3hNRE11TkRBNE9UZ3lPU3d4TURNdU5EQTVNalF3TVN3MU5pNDRNVGd6T1RjMExEQXNNVEF6TGpRd09URTFNak10TkRZdU5Ua3dPRFUxTWl3eE1ETXVOREE1TVRVeU15MHhNRE11TkRBNU1qUXdNWE10TkRZdU5Ua3dOelUwT1MweE1ETXVOREE1TWpRd01TMHhNRE11TkRBNU1UVXlNeTB4TURNdU5EQTVNakkzTmxvaUx6NEtJQ0FnSUR4d1lYUm9JR05zWVhOelBTSnpkREFpSUdROUlrMHpOell1TVRNNE1EVTVOeXd5TVRJdU56Z3pOVGczTm1ndE5Ea3VNVFEyTnpjM04zWTNOQzQwTXpJNE56Vm9ORGt1TVRRMk56YzNOMk15TUM0MU5UUXdNVFUxTERBc016Y3VNakUyTkRNM05TMHhOaTQyTmpJek5EWTNMRE0zTGpJeE5qUXpOelV0TXpjdU1qRTJORE0zTlhZdExqQXdNREEzTlROak1DMHlNQzQxTlRRd01UVTFMVEUyTGpZMk1qUXlNaTB6Tnk0eU1UWXpOakl5TFRNM0xqSXhOalF6TnpVdE16Y3VNakUyTXpZeU1sb2lMejRLSUNBOEwyYytDand2YzNablBnPT0iIGFsdD0iIiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiPicsCiAgdGFiX3B5dGhvbjogJzxzdmcgY2xhc3M9InRhYi1sb2dvIHB5bCIgdmlld0JveD0iMCAwIDI0IDI0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHRpdGxlPlB5dGhvbjwvdGl0bGU+PHBhdGggZD0iTTE0LjI1LjE4bC45LjIuNzMuMjYuNTkuMy40NS4zMi4zNC4zNC4yNS4zNC4xNi4zMy4xLjMuMDQuMjYuMDIuMi0uMDEuMTNWOC41bC0uMDUuNjMtLjEzLjU1LS4yMS40Ni0uMjYuMzgtLjMuMzEtLjMzLjI1LS4zNS4xOS0uMzUuMTQtLjMzLjEtLjMuMDctLjI2LjA0LS4yMS4wMkg4Ljc3bC0uNjkuMDUtLjU5LjE0LS41LjIyLS40MS4yNy0uMzMuMzItLjI3LjM1LS4yLjM2LS4xNS4zNy0uMS4zNS0uMDcuMzItLjA0LjI3LS4wMi4yMXYzLjA2SDMuMTdsLS4yMS0uMDMtLjI4LS4wNy0uMzItLjEyLS4zNS0uMTgtLjM2LS4yNi0uMzYtLjM2LS4zNS0uNDYtLjMyLS41OS0uMjgtLjczLS4yMS0uODgtLjE0LTEuMDUtLjA1LTEuMjMuMDYtMS4yMi4xNi0xLjA0LjI0LS44Ny4zMi0uNzEuMzYtLjU3LjQtLjQ0LjQyLS4zMy40Mi0uMjQuNC0uMTYuMzYtLjEuMzItLjA1LjI0LS4wMWguMTZsLjA2LjAxaDguMTZ2LS44M0g2LjE4bC0uMDEtMi43NS0uMDItLjM3LjA1LS4zNC4xMS0uMzEuMTctLjI4LjI1LS4yNi4zMS0uMjMuMzgtLjIuNDQtLjE4LjUxLS4xNS41OC0uMTIuNjQtLjEuNzEtLjA2Ljc3LS4wNC44NC0uMDIgMS4yNy4wNXptLTYuMyAxLjk4bC0uMjMuMzMtLjA4LjQxLjA4LjQxLjIzLjM0LjMzLjIyLjQxLjA5LjQxLS4wOS4zMy0uMjIuMjMtLjM0LjA4LS40MS0uMDgtLjQxLS4yMy0uMzMtLjMzLS4yMi0uNDEtLjA5LS40MS4wOXptMTMuMDkgMy45NWwuMjguMDYuMzIuMTIuMzUuMTguMzYuMjcuMzYuMzUuMzUuNDcuMzIuNTkuMjguNzMuMjEuODguMTQgMS4wNC4wNSAxLjIzLS4wNiAxLjIzLS4xNiAxLjA0LS4yNC44Ni0uMzIuNzEtLjM2LjU3LS40LjQ1LS40Mi4zMy0uNDIuMjQtLjQuMTYtLjM2LjA5LS4zMi4wNS0uMjQuMDItLjE2LS4wMWgtOC4yMnYuODJoNS44NGwuMDEgMi43Ni4wMi4zNi0uMDUuMzQtLjExLjMxLS4xNy4yOS0uMjUuMjUtLjMxLjI0LS4zOC4yLS40NC4xNy0uNTEuMTUtLjU4LjEzLS42NC4wOS0uNzEuMDctLjc3LjA0LS44NC4wMS0xLjI3LS4wNC0xLjA3LS4xNC0uOS0uMi0uNzMtLjI1LS41OS0uMy0uNDUtLjMzLS4zNC0uMzQtLjI1LS4zNC0uMTYtLjMzLS4xLS4zLS4wNC0uMjUtLjAyLS4yLjAxLS4xM3YtNS4zNGwuMDUtLjY0LjEzLS41NC4yMS0uNDYuMjYtLjM4LjMtLjMyLjMzLS4yNC4zNS0uMi4zNS0uMTQuMzMtLjEuMy0uMDYuMjYtLjA0LjIxLS4wMi4xMy0uMDFoNS44NGwuNjktLjA1LjU5LS4xNC41LS4yMS40MS0uMjguMzMtLjMyLjI3LS4zNS4yLS4zNi4xNS0uMzYuMS0uMzUuMDctLjMyLjA0LS4yOC4wMi0uMjFWNi4wN2gyLjA5bC4xNC4wMXptLTYuNDcgMTQuMjVsLS4yMy4zMy0uMDguNDEuMDguNDEuMjMuMzMuMzMuMjMuNDEuMDguNDEtLjA4LjMzLS4yMy4yMy0uMzMuMDgtLjQxLS4wOC0uNDEtLjIzLS4zMy0uMzMtLjIzLS40MS0uMDgtLjQxLjA4eiIvPjwvc3ZnPicsCiAgdGFiX25vZGU6ICc8c3ZnIGNsYXNzPSJ0YWItbG9nbyBuZGwiIHZpZXdCb3g9IjAgMCAyNCAyNCIgYXJpYS1oaWRkZW49InRydWUiPjx0aXRsZT5Ob2RlLmpzPC90aXRsZT48cGF0aCBkPSJNMTEuOTk4LDI0Yy0wLjMyMSwwLTAuNjQxLTAuMDg0LTAuOTIyLTAuMjQ3bC0yLjkzNi0xLjczN2MtMC40MzgtMC4yNDUtMC4yMjQtMC4zMzItMC4wOC0wLjM4MyBjMC41ODUtMC4yMDMsMC43MDMtMC4yNSwxLjMyOC0wLjYwNGMwLjA2NS0wLjAzNywwLjE1MS0wLjAyMywwLjIxOCwwLjAxN2wyLjI1NiwxLjMzOWMwLjA4MiwwLjA0NSwwLjE5NywwLjA0NSwwLjI3MiwwbDguNzk1LTUuMDc2IGMwLjA4Mi0wLjA0NywwLjEzNC0wLjE0MSwwLjEzNC0wLjIzOFY2LjkyMWMwLTAuMDk5LTAuMDUzLTAuMTkyLTAuMTM3LTAuMjQybC04Ljc5MS01LjA3MmMtMC4wODEtMC4wNDctMC4xODktMC4wNDctMC4yNzEsMCBMMy4wNzUsNi42OEMyLjk5LDYuNzI5LDIuOTM2LDYuODI1LDIuOTM2LDYuOTIxdjEwLjE1YzAsMC4wOTcsMC4wNTQsMC4xODksMC4xMzksMC4yMzVsMi40MDksMS4zOTIgYzEuMzA3LDAuNjU0LDIuMTA4LTAuMTE2LDIuMTA4LTAuODlWNy43ODdjMC0wLjE0MiwwLjExNC0wLjI1MywwLjI1Ni0wLjI1M2gxLjExNWMwLjEzOSwwLDAuMjU1LDAuMTEyLDAuMjU1LDAuMjUzdjEwLjAyMSBjMCwxLjc0NS0wLjk1LDIuNzQ1LTIuNjA0LDIuNzQ1Yy0wLjUwOCwwLTAuOTA5LDAtMi4wMjYtMC41NTFMMi4yOCwxOC42NzVjLTAuNTctMC4zMjktMC45MjItMC45NDUtMC45MjItMS42MDRWNi45MjEgYzAtMC42NTksMC4zNTMtMS4yNzUsMC45MjItMS42MDNsOC43OTUtNS4wODJjMC41NTctMC4zMTUsMS4yOTYtMC4zMTUsMS44NDgsMGw4Ljc5NCw1LjA4MmMwLjU3LDAuMzI5LDAuOTI0LDAuOTQ0LDAuOTI0LDEuNjAzIHYxMC4xNWMwLDAuNjU5LTAuMzU0LDEuMjczLTAuOTI0LDEuNjA0bC04Ljc5NCw1LjA3OEMxMi42NDMsMjMuOTE2LDEyLjMyNCwyNCwxMS45OTgsMjR6IE0xOS4wOTksMTMuOTkzIGMwLTEuOS0xLjI4NC0yLjQwNi0zLjk4Ny0yLjc2M2MtMi43MzEtMC4zNjEtMy4wMDktMC41NDgtMy4wMDktMS4xODdjMC0wLjUyOCwwLjIzNS0xLjIzMywyLjI1OC0xLjIzMyBjMS44MDcsMCwyLjQ3MywwLjM4OSwyLjc0NywxLjYwN2MwLjAyNCwwLjExNSwwLjEyOSwwLjE5OSwwLjI0NywwLjE5OWgxLjE0MWMwLjA3MSwwLDAuMTM4LTAuMDMxLDAuMTg2LTAuMDgxIGMwLjA0OC0wLjA1NCwwLjA3NC0wLjEyMywwLjA2Ny0wLjE5NmMtMC4xNzctMi4wOTgtMS41NzEtMy4wNzYtNC4zODgtMy4wNzZjLTIuNTA4LDAtNC4wMDQsMS4wNTgtNC4wMDQsMi44MzMgYzAsMS45MjUsMS40ODgsMi40NTcsMy44OTUsMi42OTVjMi44OCwwLjI4MiwzLjEwMywwLjcwMywzLjEwMywxLjI2OWMwLDAuOTgzLTAuNzg5LDEuNDAyLTIuNjQyLDEuNDAyIGMtMi4zMjcsMC0yLjgzOS0wLjU4NC0zLjAxMS0xLjc0MmMtMC4wMi0wLjEyNC0wLjEyNi0wLjIxNS0wLjI1My0wLjIxNWgtMS4xMzdjLTAuMTQxLDAtMC4yNTQsMC4xMTItMC4yNTQsMC4yNTMgYzAsMS40ODIsMC44MDYsMy4yNDgsNC42NTUsMy4yNDhDMTcuNTAxLDE3LjAwNywxOS4wOTksMTUuOTEsMTkuMDk5LDEzLjk5M3oiLz48L3N2Zz4nCn07CmZ1bmN0aW9uIGF0dGFjaFBhcmVuKGMsIHBpbm5lZCl7CiAgY29uc3QgbG9jID0gIlRZUEUgdmdpLCBMT0NBVElPTiAnIitzZXJ2aWNlVXJsKyInIjsKICByZXR1cm4gcGlubmVkID8gbG9jKyIsIERBVEFfVkVSU0lPTiAnIitwaW5uZWQrIiciIDogbG9jOwp9CmZ1bmN0aW9uIGV4YW1wbGVUYWJsZShjKXsKICAvLyBBIGNhdGFsb2cgdGhhdCBjb3VsZCBub3QgYmUgYXR0YWNoZWQgKGEgcmVxdWlyZWQgb3B0aW9uIHdpdGhoZWxkLCBhbgogIC8vIHVuc3VwcG9ydGVkIHZlcnNpb24pIGhhcyBubyBzY2hlbWFzIHRvIGRyYXcgYW4gZXhhbXBsZSBmcm9tLgogIGNvbnN0IHMgPSBjLnNjaGVtYXNbMF07IGlmICghcykgcmV0dXJuICdtYWluLm15X3RhYmxlJzsKICBjb25zdCB0ID0gKHMudGFibGVzWzBdfHxzLnZpZXdzWzBdfHx7bmFtZTonbXlfdGFibGUnfSk7CiAgcmV0dXJuIHMucGF0aC5jb25jYXQodC5uYW1lKS5tYXAobj0+L15bYS16X11bYS16MC05X10qJC9pLnRlc3QobikgPyBuIDogJyInK24ucmVwbGFjZSgvIi9nLCciIicpKyciJykuam9pbignLicpOwp9CmZ1bmN0aW9uIGNvbm5lY3RDb2RlKGMsIHBpbm5lZCwgbGFuZyl7CiAgY29uc3QgcT1jLm5hbWUsIGV4PWV4YW1wbGVUYWJsZShjKSwgUD1hdHRhY2hQYXJlbihjLHBpbm5lZCk7CiAgaWYgKGxhbmc9PT0nc3FsJykgcmV0dXJuICJJTlNUQUxMIHZnaSBGUk9NIGNvbW11bml0eTtcbkxPQUQgdmdpO1xuIiArCiAgICAiQVRUQUNIICciK3ErIicgQVMgIitxKyJcbiAgKCIrUCsiKTtcblxuIiArCiAgICAiU0VMRUNUICogRlJPTSAiK3ErIi4iK2V4KyIgTElNSVQgMTA7IjsKICBpZiAobGFuZz09PSdweXRob24nKSByZXR1cm4gImltcG9ydCBoYXliYXJuIGFzIGR1Y2tkYlxuXG4iICsKICAgICJjb24gPSBkdWNrZGIuY29ubmVjdCgpXG4iICsKICAgICJjb24uZXhlY3V0ZShcIklOU1RBTEwgdmdpIEZST00gY29tbXVuaXR5XCIpXG4iICsKICAgICJjb24uZXhlY3V0ZShcIkxPQUQgdmdpXCIpXG4iICsKICAgICJjb24uZXhlY3V0ZShcIkFUVEFDSCAnIitxKyInIEFTICIrcSsiICgiK1ArIilcIilcbiIgKwogICAgImNvbi5zcWwoXCJTRUxFQ1QgKiBGUk9NICIrcSsiLiIrZXgrIiBMSU1JVCAxMFwiKS5zaG93KCkiOwogIHJldHVybiAiaW1wb3J0IHsgRHVja0RCSW5zdGFuY2UgfSBmcm9tIFwiQGhheWJhcm4vbm9kZS1hcGlcIjtcblxuIiArCiAgICAiY29uc3QgZGIgPSBhd2FpdCBEdWNrREJJbnN0YW5jZS5jcmVhdGUoKTtcbiIgKwogICAgImNvbnN0IGNvbiA9IGF3YWl0IGRiLmNvbm5lY3QoKTtcbiIgKwogICAgImF3YWl0IGNvbi5ydW4oXCJJTlNUQUxMIHZnaSBGUk9NIGNvbW11bml0eVwiKTtcbiIgKwogICAgImF3YWl0IGNvbi5ydW4oXCJMT0FEIHZnaVwiKTtcbiIgKwogICAgImF3YWl0IGNvbi5ydW4oXCJBVFRBQ0ggJyIrcSsiJyBBUyAiK3ErIiAoIitQKyIpXCIpO1xuIiArCiAgICAiY29uc3QgcmVzdWx0ID0gYXdhaXQgY29uLnJ1bkFuZFJlYWRBbGwoXCJTRUxFQ1QgKiBGUk9NICIrcSsiLiIrZXgrIiBMSU1JVCAxMFwiKTtcbiIgKwogICAgImNvbnNvbGUudGFibGUocmVzdWx0LmdldFJvd3MoKSk7IjsKfQpmdW5jdGlvbiBobENvZGUoY29kZSwgbGFuZyl7CiAgbGV0IGggPSBlc2MoY29kZSk7CiAgaCA9IGgucmVwbGFjZSgvJnF1b3Q7KFteJl0qKSZxdW90Oy9nLCAnPHNwYW4gY2xhc3M9InN0ciI+JnF1b3Q7JDEmcXVvdDs8L3NwYW4+Jyk7CiAgaCA9IGgucmVwbGFjZSgvJyhbXiddKiknL2csICc8c3BhbiBjbGFzcz0ic3RyIj4mIzM5OyQxJiMzOTs8L3NwYW4+Jyk7CiAgY29uc3QgS1cgPSB7IHNxbDpbJ0lOU1RBTEwnLCdMT0FEJywnQVRUQUNIJywnQVMnLCdUWVBFJywnTE9DQVRJT04nLCdEQVRBX1ZFUlNJT04nLCdTRUxFQ1QnLCdGUk9NJywnTElNSVQnXSwgcHl0aG9uOlsnaW1wb3J0J10sIGpzOlsnaW1wb3J0JywnY29uc3QnLCdhd2FpdCcsJ25ldyddIH07CiAgKEtXW2xhbmddfHxbXSkuZm9yRWFjaChrPT4gaCA9IGgucmVwbGFjZShuZXcgUmVnRXhwKCdcXGInK2srJ1xcYicsJ2cnKSwgJzxzcGFuIGNsYXNzPSJrdyI+JytrKyc8L3NwYW4+JykpOwogIHJldHVybiBoOwp9CmZ1bmN0aW9uIGF0dGFjaE9wdGlvbnNIdG1sKGMpewogIGNvbnN0IG9wdHMgPSBjLmF0dGFjaF9vcHRpb25zfHxbXTsKICBpZighb3B0cy5sZW5ndGgpIHJldHVybiAnJzsKICByZXR1cm4gJzxkZXRhaWxzIGNsYXNzPSJhdHRhY2gtb3B0cyI+PHN1bW1hcnkgY2xhc3M9ImFvLXN1bW1hcnkiPicraWNvbignY2FyZXQnLCd0cmknKSsKICAgICc8c3BhbiBjbGFzcz0iYXJncy1sYWJlbCIgc3R5bGU9Im1hcmdpbjowIj5BdHRhY2ggb3B0aW9uczwvc3Bhbj48c3BhbiBjbGFzcz0iYW8tY291bnQiPicrb3B0cy5sZW5ndGgrJzwvc3Bhbj48L3N1bW1hcnk+JysKICAgICc8dGFibGUgY2xhc3M9Im9wdHMiPjx0aGVhZD48dHI+PHRoPk9wdGlvbjwvdGg+PHRoPlR5cGU8L3RoPjx0aD5EZWZhdWx0PC90aD48dGg+RGVzY3JpcHRpb248L3RoPjwvdHI+PC90aGVhZD48dGJvZHk+JysKICAgIG9wdHMubWFwKG89Pic8dHI+PHRkIGNsYXNzPSJvLW5hbWUiPicrZXNjKG8ubmFtZSkrCiAgICAgIChvLnJlcXVpcmVkPyc8c3BhbiBjbGFzcz0iby1yZXEiIHRpdGxlPSJNdXN0IGJlIHN1cHBsaWVkIGF0IEFUVEFDSCB0aW1lIj5yZXF1aXJlZDwvc3Bhbj4nOicnKSsKICAgICAgJzwvdGQ+PHRkIGNsYXNzPSJvLXR5cGUiPicrZXNjKG8udHlwZSkrJzwvdGQ+PHRkIGNsYXNzPSJvLWRlZiI+Jytlc2Moby5kZWZhdWx0fHwn4oCUJykrJzwvdGQ+PHRkIGNsYXNzPSJvLWRlc2MiPicrZXNjKG8uZGVzY3JpcHRpb258fCcnKSsnPC90ZD48L3RyPicpLmpvaW4oJycpKwogICAgJzwvdGJvZHk+PC90YWJsZT48L2RldGFpbHM+JzsKfQpmdW5jdGlvbiByZW5kZXJDb25uZWN0KCl7CiAgY29uc3QgYyA9IGNhdCgpOwogIGNvbnN0IHBpbm5lZCA9IGN1cnJlbnRTcGVjKGMpOwogIGNvbnN0IGxhbmcgPSBDT05ORUNUX1RBQlNbY29ubmVjdFRhYl1bMF07CiAgY29uc3QgY29kZSA9IGNvbm5lY3RDb2RlKGMsIHBpbm5lZCwgbGFuZyk7CiAgY29uc3QgdGFicyA9IENPTk5FQ1RfVEFCUy5tYXAoKFtrLGxibCxpY10saSk9Pic8YnV0dG9uIGNsYXNzPSJ0YWInKyhpPT09Y29ubmVjdFRhYj8nIGFjdGl2ZSc6JycpKyciIGRhdGEtaT0iJytpKyciPicrKFRBQklDT05TW2ljXXx8JycpK2VzYyhsYmwpKyc8L2J1dHRvbj4nKS5qb2luKCcnKTsKICBsZXQgZHYgPSAnJzsKICBpZiAoYy5kYXRhX3ZlcnNpb25zICYmIGMuZGF0YV92ZXJzaW9ucy5sZW5ndGgpewogICAgY29uc3QgY3VyTGFiZWwgPSBwaW5uZWQgPyBwaW5uZWQgOiAnbGF0ZXN0IMK3ICcrbGF0ZXN0U3BlYyhjKTsKICAgIGNvbnN0IGl0ZW1zID0gWyc8YnV0dG9uIGNsYXNzPSJkdml0ZW0nKyghcGlubmVkPycgc2VsJzonJykrJyIgZGF0YS1zcGVjPSIiPicrCiAgICAgICAgJzxzcGFuIGNsYXNzPSJyb3cxIj48c3BhbiBjbGFzcz0ic3BlYyI+bGF0ZXN0PC9zcGFuPjxzcGFuIGNsYXNzPSJ0YWciPnRyYWNraW5nPC9zcGFuPicrKCFwaW5uZWQ/JzxzcGFuIGNsYXNzPSJjaGVjayI+4pyTPC9zcGFuPic6JycpKyc8L3NwYW4+JysKICAgICAgICAnPHNwYW4gY2xhc3M9ImxibCI+QWx3YXlzIHRoZSBuZXdlc3QgdmVyc2lvbiAoJytlc2MobGF0ZXN0U3BlYyhjKSkrJyk8L3NwYW4+PC9idXR0b24+J10KICAgICAgLmNvbmNhdChjLmRhdGFfdmVyc2lvbnMubWFwKCh2LGkpPT4KICAgICAgICAnPGJ1dHRvbiBjbGFzcz0iZHZpdGVtJysocGlubmVkPT09di5zcGVjPycgc2VsJzonJykrJyIgZGF0YS1zcGVjPSInK2VzYyh2LnNwZWMpKyciPicrCiAgICAgICAgICAnPHNwYW4gY2xhc3M9InJvdzEiPjxzcGFuIGNsYXNzPSJzcGVjIj4nK2VzYyh2LnNwZWMpKyc8L3NwYW4+JysKICAgICAgICAgIChpPT09MD8nPHNwYW4gY2xhc3M9InRhZyI+bGF0ZXN0PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJ0YWcgcGluIj5waW5uZWQ8L3NwYW4+JykrCiAgICAgICAgICAocGlubmVkPT09di5zcGVjPyc8c3BhbiBjbGFzcz0iY2hlY2siPuKckzwvc3Bhbj4nOicnKSsnPC9zcGFuPicrCiAgICAgICAgICAodi5sYWJlbD8nPHNwYW4gY2xhc3M9ImxibCI+Jytlc2Modi5sYWJlbCkrJzwvc3Bhbj4nOicnKSsnPC9idXR0b24+JykpLmpvaW4oJycpOwogICAgZHYgPSAnPGRldGFpbHMgY2xhc3M9ImR2bWVudSIgaWQ9ImR2bWVudSI+PHN1bW1hcnk+RGF0YSB2ZXJzaW9uOiA8c3BhbiBjbGFzcz0iZHYtY3VyIj4nK2VzYyhjdXJMYWJlbCkrJzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImNhcmV0Ij7ilr48L3NwYW4+PC9zdW1tYXJ5PicrCiAgICAgICAgICc8ZGl2IGNsYXNzPSJkdmxpc3QiPicraXRlbXMrJzwvZGl2PjwvZGV0YWlscz4nOwogIH0KICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY29ubmVjdCcpLmlubmVySFRNTCA9CiAgICAnPGRpdiBjbGFzcz0iY29ubmVjdC10b3AiPjxkaXYgY2xhc3M9InRhYnMiPicrdGFicysnPC9kaXY+JytkdisnPC9kaXY+JysKICAgICc8ZGl2IGNsYXNzPSJhdHRhY2giPjxidXR0b24gY2xhc3M9ImNvcHkiIGlkPSJjb3B5LWJ0biIgYXJpYS1sYWJlbD0iQ29weSBjb2RlIj5Db3B5PC9idXR0b24+JytobENvZGUoY29kZSwgbGFuZykrJzwvZGl2PicrCiAgICBhdHRhY2hPcHRpb25zSHRtbChjKTsKICBjb25zdCBjcCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb3B5LWJ0bicpOwogIGNwLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCk9PnsKICAgIGNvbnN0IGRvbmU9KCk9PnsgY3AudGV4dENvbnRlbnQ9J0NvcGllZCc7IHNldFRpbWVvdXQoKCk9PmNwLnRleHRDb250ZW50PSdDb3B5JywxNTAwKTsgfTsKICAgIGlmIChuYXZpZ2F0b3IuY2xpcGJvYXJkKSBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChjb2RlKS50aGVuKGRvbmUsZG9uZSk7CiAgICBlbHNlIHsgY29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZXh0YXJlYScpOyB0LnZhbHVlPWNvZGU7IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCk7IHQuc2VsZWN0KCk7IHRyeXtkb2N1bWVudC5leGVjQ29tbWFuZCgnY29weScpO31jYXRjaChlKXt9IHQucmVtb3ZlKCk7IGRvbmUoKTsgfQogIH0pOwogIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyNjb25uZWN0IC50YWInKS5mb3JFYWNoKGI9PmIuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCgpPT57IGNvbm5lY3RUYWI9K2IuZGF0YXNldC5pOyByZW5kZXJDb25uZWN0KCk7IH0pKTsKICBjb25zdCBtZW51ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2R2bWVudScpOwogIGlmIChtZW51KSBtZW51LnF1ZXJ5U2VsZWN0b3JBbGwoJy5kdml0ZW0nKS5mb3JFYWNoKGI9PmIuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCgpPT57CiAgICBjb25zdCBzcGVjPWIuZGF0YXNldC5zcGVjOyBpZihzcGVjKSBzZWxlY3RlZFtjLm5hbWVdPXNwZWM7IGVsc2UgZGVsZXRlIHNlbGVjdGVkW2MubmFtZV07CiAgICByZW5kZXJDb25uZWN0KCk7IHVwZGF0ZUN1cG9sYSgpOyByZW5kZXJDb250ZW50cygpOwogIH0pKTsKfQpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGU9PnsKICBjb25zdCBtZW51ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2R2bWVudScpOwogIGlmIChtZW51ICYmIG1lbnUub3BlbiAmJiAhbWVudS5jb250YWlucyhlLnRhcmdldCkpIG1lbnUub3Blbj1mYWxzZTsKfSk7CmZ1bmN0aW9uIHVwZGF0ZUN1cG9sYSgpeyBjb25zdCB1ID0gY3Vwb2xhVXJsKCIiKTsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2N1cG9sYS1jdGEnKS5ocmVmID0gdTsgY29uc3QgYWkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY3Vwb2xhLWFpLWN0YScpOyBpZiAoYWkpIGFpLmhyZWYgPSB1OyB9CgovLyDilIDilIAgb2JqZWN0IHJvd3Mg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSACmZ1bmN0aW9uIHRhYmxlUm93KGNhdE5hbWUsIHMsIHQsIGtpbmQpeyAgICAgICAvLyBraW5kOiAndGFibGUnIHwgJ3ZpZXcnCiAgY29uc3QgaWNvbk5hbWUgPSBraW5kPT09J3ZpZXcnID8gJ3ZpZXcnIDogJ3RhYmxlJzsKICBjb25zdCBrY2xzID0ga2luZD09PSd2aWV3JyA/ICcgdmlldyBrLXZpZXcnIDogJyc7CiAgcmV0dXJuICc8ZGV0YWlscyBjbGFzcz0idGJsJytrY2xzKyciIGRhdGEtbmFtZT0iJytlc2ModC5uYW1lLnRvTG93ZXJDYXNlKCkpKyciIGRhdGEta2luZD0iJytraW5kKyciIGRhdGEtY2F0YWxvZz0iJytlc2MoY2F0TmFtZSkrJyIgZGF0YS1zY2hlbWE9IicrZXNjKEpTT04uc3RyaW5naWZ5KHMucGF0aCkpKyciIGRhdGEtdGFibGU9IicrZXNjKHQubmFtZSkrJyI+JysKICAgICc8c3VtbWFyeT4nK2ljb24oJ2NhcmV0JywndHJpJykraWNvbihpY29uTmFtZSwncm93LWljb24nKSsKICAgICAgJzxzcGFuIGNsYXNzPSJ0LW5hbWUiPicrZXNjKHQubmFtZSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0idC1tZXRhIj4nK3QuY29scysnIGNvbHM8L3NwYW4+PC9zdW1tYXJ5PicrCiAgICAnPGRpdiBjbGFzcz0idC1ib2R5Ij4nKwogICAgICAodC5jb21tZW50ID8gJzxkaXYgY2xhc3M9InQtZGVzYyI+JyttZFRvSHRtbCh0LmNvbW1lbnQpKyc8L2Rpdj4nIDogJycpKwogICAgICAoa2luZD09PSd2aWV3JyAmJiB0LmRlZiA/ICc8ZGl2IGNsYXNzPSJhcmdzLWxhYmVsIj5EZWZpbml0aW9uPC9kaXY+PHByZSBjbGFzcz0idmlldy1zcWwiPicrc3FsSGkodC5kZWYpKyc8L3ByZT4nIDogJycpKwogICAgICAnPGRpdiBjbGFzcz0iYXJncy1sYWJlbCI+Q29sdW1uczwvZGl2PjxkaXYgY2xhc3M9ImNvbHMiPjxkaXYgY2xhc3M9InNrZWxldG9uIj5Mb2FkaW5nIGNvbHVtbnPigKY8L2Rpdj48L2Rpdj48L2Rpdj48L2RldGFpbHM+JzsKfQoKY29uc3QgRk5fVFlQRVMgPSBbWydzY2FsYXInLCdTY2FsYXIgZnVuY3Rpb25zJywnZnVuY3Rpb24nLCdrLXNjYWxhciddLAogICAgICAgICAgICAgICAgICBbJ3RhYmxlJywnVGFibGUgZnVuY3Rpb25zJywnZnVuY3Rpb24nLCdrLXRhYmxlZm4nXSwKICAgICAgICAgICAgICAgICAgWydhZ2dyZWdhdGUnLCdBZ2dyZWdhdGUgZnVuY3Rpb25zJywnYWdncmVnYXRlJywnay1hZ2cnXSwKICAgICAgICAgICAgICAgICAgWyd0YWJsZV9pbl9vdXQnLCdUYWJsZSBpbi1vdXQgZnVuY3Rpb25zJywndGlvJywnay10aW8nXSwKICAgICAgICAgICAgICAgICAgWydzY2FsYXJfbWFjcm8nLCdTY2FsYXIgbWFjcm9zJywnZnVuY3Rpb24nLCdrLW1hY3JvJ10sCiAgICAgICAgICAgICAgICAgIFsndGFibGVfbWFjcm8nLCdUYWJsZSBtYWNyb3MnLCdmdW5jdGlvbicsJ2stbWFjcm8nXV07CmZ1bmN0aW9uIGFyZ0NhcmQoYSl7CiAgY29uc3QgZGVmID0gKGEuZGVmYXVsdCE9PXVuZGVmaW5lZCAmJiBhLmRlZmF1bHQhPT1udWxsKSA/ICc8c3BhbiBjbGFzcz0iYXJnLWRlZiI+ZGVmYXVsdCAnK2VzYyhhLmRlZmF1bHQpKyc8L3NwYW4+JyA6ICcnOwogIGNvbnN0IGRlc2MgPSBhLmRlc2MgPyBlc2MoYS5kZXNjKSA6ICcnOwogIGNvbnN0IG1ldGEgPSAoZGVzY3x8ZGVmKSA/ICc8ZGl2IGNsYXNzPSJjb2wtY29tbWVudCI+JytkZXNjKyhkZXNjJiZkZWY/JyDCtyAnOicnKStkZWYrJzwvZGl2PicgOiAnJzsKICAvLyBBIG1hY3JvIHBhcmFtZXRlciBoYXMgbm8gdHlwZSBhdCBhbGwsIGFuZCBgZHVja2RiVHlwZSh1bmRlZmluZWQpYCByZXR1cm5zCiAgLy8gdW5kZWZpbmVkIOKAlCBwcmludGVkLCB0aGF0IHJlbmRlcnMgdGhlIGxpdGVyYWwgc3RyaW5nICJ1bmRlZmluZWQiLgogIGNvbnN0IHR5cGUgPSBhLnR5cGUgPyAnPHNwYW4gY2xhc3M9ImNvbC10eXBlIj4nK2VzYyhkdWNrZGJUeXBlKGEudHlwZSkpKyc8L3NwYW4+JyA6ICcnOwogIHJldHVybiAnPGRpdiBjbGFzcz0iY29sLWl0ZW0iPjxkaXYgY2xhc3M9ImNvbCI+PHNwYW4gY2xhc3M9ImNvbC1uYW1lIj4nK2VzYyhhLm5hbWUpKyhhLm5hbWVkPyc8c3BhbiBjbGFzcz0iYXJnLWtpbmQiPiA6PTwvc3Bhbj4nOicnKSsnPC9zcGFuPicrdHlwZSsnPC9kaXY+JyttZXRhKyc8L2Rpdj4nOwp9CmZ1bmN0aW9uIGZuUm93KGYsIGljb25OYW1lKXsKICBjb25zdCBwb3MgPSBmLmFyZ3MuZmlsdGVyKGE9PiFhLm5hbWVkKSwgbmFtZWQgPSBmLmFyZ3MuZmlsdGVyKGE9PmEubmFtZWQpOwogIC8vIFRoZSB0eXBlIGlzIHRoZSB1c2VmdWwgaGFsZiBvZiBhIHNpZ25hdHVyZSDigJQgYGZsb29kX2RhaWx5KGxhdGl0dWRlLAogIC8vIGxvbmdpdHVkZSwgZm9yZWNhc3RfZGF5cyA6PSwgcGFzdF9kYXlzIDo9KWAgc2F5cyBub3RoaW5nIGFib3V0IHdoYXQgdG8KICAvLyBwYXNzLiBgZm5BcmdzYCBoYXMgcmVzb2x2ZWQgaXQgYWxsIGFsb25nOyBvbmx5IHRoaXMgbGluZSBkcm9wcGVkIGl0LCBzbwogIC8vIHJlYWRpbmcgYSB0eXBlIG1lYW50IGV4cGFuZGluZyB0aGUgcm93IHRvIHJlYWNoIHRoZSBhcmd1bWVudCBjYXJkcy4KICAvLyBCdWlsdCBhcyBIVE1MIHJhdGhlciB0aGFuIGEgc3RyaW5nIGJlY2F1c2UgdGhlIHR5cGUgY2FycmllcyBpdHMgb3duIHNwYW4sCiAgLy8gc28gZWFjaCBwYXJ0IGlzIGVzY2FwZWQgaW5kaXZpZHVhbGx5IGluc3RlYWQgb2YgdGhlIHdob2xlIGxpbmUgYXQgcmVuZGVyLgogIGNvbnN0IHNpZ1BhcnQgPSBhID0+IGVzYyhhLm5hbWUpICsgKGEubmFtZWQgPyAnIDo9JyA6ICcnKSArCiAgICAoYS50eXBlID8gJyA8c3BhbiBjbGFzcz0ic2lnLXR5cGUiPicgKyBlc2MoZHVja2RiVHlwZShhLnR5cGUpKSArICc8L3NwYW4+JyA6ICcnKTsKICBjb25zdCBzaWdIdG1sID0gJygnICsgcG9zLmNvbmNhdChuYW1lZCkubWFwKHNpZ1BhcnQpLmpvaW4oJywgJykgKyAnKSc7CiAgbGV0IGFyZ3NHcmlkOwogIGlmICghZi5hcmdzLmxlbmd0aCkgYXJnc0dyaWQgPSAnPGRpdiBjbGFzcz0iZm4tbm9hcmdzIj5ObyBhcmd1bWVudHM8L2Rpdj4nOwogIGVsc2UgaWYgKCFuYW1lZC5sZW5ndGgpIGFyZ3NHcmlkID0gJzxkaXYgY2xhc3M9ImFyZ3MtbGFiZWwiPkFyZ3VtZW50czwvZGl2PjxkaXYgY2xhc3M9ImNvbHMiPicrcG9zLm1hcChhcmdDYXJkKS5qb2luKCcnKSsnPC9kaXY+JzsKICBlbHNlIGFyZ3NHcmlkID0gKHBvcy5sZW5ndGggPyAnPGRpdiBjbGFzcz0iYXJncy1sYWJlbCI+UG9zaXRpb25hbCBhcmd1bWVudHM8L2Rpdj48ZGl2IGNsYXNzPSJjb2xzIj4nK3Bvcy5tYXAoYXJnQ2FyZCkuam9pbignJykrJzwvZGl2PicgOiAnJykrCiAgICAgICAgICAgICAgICAgICc8ZGl2IGNsYXNzPSJhcmdzLWxhYmVsIiBzdHlsZT0ibWFyZ2luLXRvcDoxMnB4Ij5OYW1lZCBhcmd1bWVudHM8L2Rpdj48ZGl2IGNsYXNzPSJjb2xzIj4nK25hbWVkLm1hcChhcmdDYXJkKS5qb2luKCcnKSsnPC9kaXY+JzsKICBjb25zdCByZXQgPSBmLnJldHVybnMgPyAnPGRpdiBjbGFzcz0iZm4tcmV0dXJucyI+PGI+UmV0dXJuczwvYj48c3BhbiBjbGFzcz0icnR5cGUiPicrZXNjKGYucmV0dXJucykrJzwvc3Bhbj48L2Rpdj4nIDogJyc7CiAgcmV0dXJuICc8ZGV0YWlscyBjbGFzcz0iZm4iIGRhdGEtbmFtZT0iJytlc2MoZi5uYW1lLnRvTG93ZXJDYXNlKCkpKyciPicrCiAgICAnPHN1bW1hcnk+JytpY29uKCdjYXJldCcsJ3RyaScpK2ljb24oaWNvbk5hbWUsJ3Jvdy1pY29uJykrJzxzcGFuIGNsYXNzPSJmbi1uYW1lIj4nK2VzYyhmLm5hbWUpKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImZuLXNpZyI+JytzaWdIdG1sKyc8L3NwYW4+PC9zdW1tYXJ5PicrCiAgICAnPGRpdiBjbGFzcz0iZm4tYm9keSI+JysoZi5kb2M/ICc8ZGl2IGNsYXNzPSJ0LWRlc2MiPicrbWRUb0h0bWwoZi5kb2MpKyc8L2Rpdj4nOicnKSthcmdzR3JpZCtyZXQrJzwvZGl2PjwvZGV0YWlscz4nOwp9CmZ1bmN0aW9uIGZuR3JvdXBzKGZucyl7CiAgaWYgKCFmbnMubGVuZ3RoKSByZXR1cm4gJyc7CiAgY29uc3Qga25vd24gPSBGTl9UWVBFUy5tYXAoeD0+eFswXSk7CiAgbGV0IG91dCA9ICcnOwogIEZOX1RZUEVTLmZvckVhY2goKFt0LGxibCxpYyxjbHNdKT0+ewogICAgY29uc3QgZyA9IGZucy5maWx0ZXIoZj0+Zi50eXBlPT09dCk7CiAgICBpZiAoIWcubGVuZ3RoKSByZXR1cm47CiAgICBvdXQgKz0gJzxkaXYgY2xhc3M9ImdycCAnK2NscysnIj48ZGl2IGNsYXNzPSJnbGFiZWwiPicraWNvbihpYykrbGJsKyc8L2Rpdj4nICsgZy5tYXAoZj0+Zm5Sb3coZixpYykpLmpvaW4oJycpICsgJzwvZGl2Pic7CiAgfSk7CiAgY29uc3Qgb3RoZXIgPSBmbnMuZmlsdGVyKGY9PiFrbm93bi5pbmNsdWRlcyhmLnR5cGUpKTsKICBpZiAob3RoZXIubGVuZ3RoKSBvdXQgKz0gJzxkaXYgY2xhc3M9ImdycCI+PGRpdiBjbGFzcz0iZ2xhYmVsIj4nK2ljb24oJ2Z1bmN0aW9uJykrJ090aGVyIGZ1bmN0aW9uczwvZGl2Picrb3RoZXIubWFwKGY9PmZuUm93KGYsJ2Z1bmN0aW9uJykpLmpvaW4oJycpKyc8L2Rpdj4nOwogIHJldHVybiBvdXQ7Cn0KCi8vIOKUgOKUgCBjb250ZW50cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAKZnVuY3Rpb24gcmVuZGVyQ29udGVudHMoKXsKICBjb25zdCBjID0gY2F0KCksIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2F0YWxvZ3MnKSwgY2MgPSBjLmNvdW50czsKICBjb25zdCBhc29mID0gKGMuZGF0YV92ZXJzaW9ucyAmJiBjLmRhdGFfdmVyc2lvbnMubGVuZ3RoKQogICAgPyAnIMK3IDxzcGFuIGNsYXNzPSJhc29mIj5hcyBvZiAnK2VzYyhjdXJyZW50U3BlYyhjKSB8fCAnbGF0ZXN0ICgnK2xhdGVzdFNwZWMoYykrJyknKSsnPC9zcGFuPicgOiAnJzsKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2F0LXN1YicpLmlubmVySFRNTCA9CiAgICBjYy5zY2hlbWFzKycgc2NoZW1hcyDCtyAnK2NjLnRhYmxlcysnIHRhYmxlcyDCtyAnK2NjLnZpZXdzKycgdmlld3MgwrcgJytjYy5mdW5jdGlvbnMrJyBmdW5jdGlvbnMnKwogICAgKGNjLm1hY3Jvcz8nIMK3ICcrY2MubWFjcm9zKycgbWFjcm8nKyhjYy5tYWNyb3MhPT0xPydzJzonJyk6JycpK2Fzb2Y7CgogIGlmIChjLmF0dGFjaF9lcnJvcil7CiAgICAvLyBTYXkgd2h5IHRoZSBjYXRhbG9nIGNvdWxkIG5vdCBiZSBsaXN0ZWQuIEFuIGVtcHR5IHRyZWUgaGVyZSB3b3VsZCByZWFkCiAgICAvLyBhcyAidGhpcyBjYXRhbG9nIGlzIGVtcHR5Iiwgd2hpY2ggaXMgYSBkaWZmZXJlbnQgYW5kIHdyb25nIHN0YXRlbWVudC4KICAgIHJvb3QuaW5uZXJIVE1MID0gJzxkaXYgY2xhc3M9Im5vcmVzdWx0cyI+Q291bGQgbm90IGxpc3QgdGhpcyBjYXRhbG9nOiAnK2VzYyhjLmF0dGFjaF9lcnJvcikrJzwvZGl2Pic7CiAgICByZXR1cm47CiAgfQoKICBjb25zdCBzaW5nbGUgPSBjLnNjaGVtYXMubGVuZ3RoPT09MTsKICByb290LmlubmVySFRNTCA9IGMuc2NoZW1hcy5tYXAocz0+ewogICAgY29uc3Qgc01hY3JvcyA9IHMuZnVuY3Rpb25zLmZpbHRlcihmPT5mLnR5cGU9PT0nc2NhbGFyX21hY3JvJ3x8Zi50eXBlPT09J3RhYmxlX21hY3JvJykubGVuZ3RoOwogICAgY29uc3Qgc0ZucyA9IHMuZnVuY3Rpb25zLmxlbmd0aCAtIHNNYWNyb3M7CiAgICBjb25zdCBzdWIgPSBbIHMudGFibGVzLmxlbmd0aCsnIHRhYmxlJysocy50YWJsZXMubGVuZ3RoIT09MT8ncyc6JycpLAogICAgICAgICAgICAgICAgICBzLnZpZXdzLmxlbmd0aD8gcy52aWV3cy5sZW5ndGgrJyB2aWV3Jysocy52aWV3cy5sZW5ndGghPT0xPydzJzonJyk6bnVsbCwKICAgICAgICAgICAgICAgICAgc0Zucz8gc0ZucysnIGZ1bmN0aW9uJysoc0ZucyE9PTE/J3MnOicnKTpudWxsLAogICAgICAgICAgICAgICAgICBzTWFjcm9zPyBzTWFjcm9zKycgbWFjcm8nKyhzTWFjcm9zIT09MT8ncyc6JycpOm51bGwKICAgICAgICAgICAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyDCtyAnKTsKICAgIGNvbnN0IG9wZW5BdHRyID0gKHNpbmdsZSAmJiBzLnRhYmxlcy5sZW5ndGg8PTgpID8gJyBvcGVuJyA6ICcnOwogICAgY29uc3QgdGJsR3JwID0gcy50YWJsZXMubGVuZ3RoID8gJzxkaXYgY2xhc3M9ImdycCBrLXRhYmxlIj48ZGl2IGNsYXNzPSJnbGFiZWwiPicraWNvbigndGFibGUnKSsnVGFibGVzPC9kaXY+JysKICAgICAgcy50YWJsZXMubWFwKHQ9PnRhYmxlUm93KGMubmFtZSxzLHQsJ3RhYmxlJykpLmpvaW4oJycpKyc8L2Rpdj4nIDogJyc7CiAgICBjb25zdCB2aWV3R3JwID0gcy52aWV3cy5sZW5ndGggPyAnPGRpdiBjbGFzcz0iZ3JwIGstdmlldyI+PGRpdiBjbGFzcz0iZ2xhYmVsIj4nK2ljb24oJ3ZpZXcnKSsnVmlld3M8L2Rpdj4nKwogICAgICBzLnZpZXdzLm1hcCh2PT50YWJsZVJvdyhjLm5hbWUscyx2LCd2aWV3JykpLmpvaW4oJycpKyc8L2Rpdj4nIDogJyc7CiAgICBjb25zdCBmbkdycCA9IGZuR3JvdXBzKHMuZnVuY3Rpb25zKTsKICAgIGNvbnN0IHNkZXNjID0gcy5kb2MgPyAnPGRpdiBjbGFzcz0idC1kZXNjIHNjaGVtYS1kZXNjIj4nK21kVG9IdG1sKHMuZG9jKSsnPC9kaXY+JyA6ICcnOwogICAgcmV0dXJuICc8ZGV0YWlscyBjbGFzcz0ic2NoZW1hIiBkYXRhLW5hbWU9IicrZXNjKHMubmFtZS50b0xvd2VyQ2FzZSgpKSsnIicrb3BlbkF0dHIrJz4nKwogICAgICAnPHN1bW1hcnk+JytpY29uKCdjYXJldCcsJ3RyaScpK2ljb24oJ3NjaGVtYScsJ3R5cGUnKSsKICAgICAgICAnPHNwYW4gY2xhc3M9InNjaGVtYS1uYW1lIj4nK2VzYyhzLm5hbWUpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNjaGVtYS1zdWIiPicrc3ViKyc8L3NwYW4+PC9zdW1tYXJ5PicrCiAgICAgIHNkZXNjK3RibEdycCt2aWV3R3JwK2ZuR3JwKyc8L2RldGFpbHM+JzsKICB9KS5qb2luKCcnKTsKICBjb25zdCBmID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbHRlcicpOyBpZiAoZi52YWx1ZSkgYXBwbHlGaWx0ZXIoKTsKfQoKLy8gbGF6eS1sb2FkIGNvbHVtbnMgb24gZmlyc3QgdGFibGUvdmlldyBleHBhbmQKZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhdGFsb2dzJykuYWRkRXZlbnRMaXN0ZW5lcigndG9nZ2xlJywgZT0+ewogIGNvbnN0IGQgPSBlLnRhcmdldDsKICBpZiAoIWQuY2xhc3NMaXN0IHx8ICFkLmNsYXNzTGlzdC5jb250YWlucygndGJsJykgfHwgIWQub3BlbiB8fCBkLmRhdGFzZXQubG9hZGVkKSByZXR1cm47CiAgZC5kYXRhc2V0LmxvYWRlZCA9ICcxJzsKICBjb25zdCBib2R5ID0gZC5xdWVyeVNlbGVjdG9yKCcuY29scycpOwogIGZldGNoQ29sdW1ucyhkLmRhdGFzZXQuY2F0YWxvZywgSlNPTi5wYXJzZShkLmRhdGFzZXQuc2NoZW1hKSwgZC5kYXRhc2V0LnRhYmxlKS50aGVuKGluZm89PnsKICAgIGJvZHkuaW5uZXJIVE1MID0gaW5mby5jb2x1bW5zLm1hcChjb2w9PgogICAgICAnPGRpdiBjbGFzcz0iY29sLWl0ZW0iPjxkaXYgY2xhc3M9ImNvbCI+PHNwYW4gY2xhc3M9ImNvbC1uYW1lIj4nK2VzYyhjb2wubmFtZSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iY29sLXR5cGUiPicrZXNjKGR1Y2tkYlR5cGUoY29sLnR5cGUpKSsnPC9zcGFuPjwvZGl2PicrCiAgICAgIChjb2wuY29tbWVudD8gJzxkaXYgY2xhc3M9ImNvbC1jb21tZW50Ij4nK2VzYyhjb2wuY29tbWVudCkrJzwvZGl2Pic6JycpKyc8L2Rpdj4nKS5qb2luKCcnKTsKICB9KTsKfSwgdHJ1ZSk7CgovLyDilIDilIAgZmlsdGVyICsgZXhwYW5kL2NvbGxhcHNlIGFsbCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAKZnVuY3Rpb24gYXBwbHlGaWx0ZXIoKXsKICBjb25zdCBxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbHRlcicpLnZhbHVlLnRyaW0oKS50b0xvd2VyQ2FzZSgpOwogIGNvbnN0IHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2F0YWxvZ3MnKTsKICBjb25zdCB0b3RhbCA9IHJvb3QucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscy50YmwsIGRldGFpbHMuZm4nKS5sZW5ndGg7CiAgbGV0IHNob3duID0gMDsKICByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMuc2NoZW1hJykuZm9yRWFjaChzYz0+ewogICAgbGV0IGhpdCA9IGZhbHNlOwogICAgc2MucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscy50YmwsIGRldGFpbHMuZm4nKS5mb3JFYWNoKHJvdz0+ewogICAgICBjb25zdCBtID0gIXEgfHwgcm93LmRhdGFzZXQubmFtZS5pbmNsdWRlcyhxKTsKICAgICAgcm93LmNsYXNzTGlzdC50b2dnbGUoJ2hpZGRlbicsICFtKTsgaWYgKG0peyBzaG93bisrOyBoaXQ9dHJ1ZTsgfQogICAgfSk7CiAgICBzYy5xdWVyeVNlbGVjdG9yQWxsKCcuZ3JwJykuZm9yRWFjaChnPT57CiAgICAgIGNvbnN0IGFueSA9IFsuLi5nLnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMudGJsLCBkZXRhaWxzLmZuJyldLnNvbWUoeD0+IXguY2xhc3NMaXN0LmNvbnRhaW5zKCdoaWRkZW4nKSk7CiAgICAgIGcuY2xhc3NMaXN0LnRvZ2dsZSgnaGlkZGVuJywgcSAmJiAhYW55KTsKICAgIH0pOwogICAgY29uc3QgbmFtZUhpdCA9ICFxIHx8IHNjLmRhdGFzZXQubmFtZS5pbmNsdWRlcyhxKTsKICAgIHNjLmNsYXNzTGlzdC50b2dnbGUoJ2hpZGRlbicsICFoaXQgJiYgIW5hbWVIaXQpOwogICAgaWYgKHEgJiYgKGhpdCB8fCBuYW1lSGl0KSkgc2Mub3BlbiA9IHRydWU7CiAgfSk7CiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbHRlci1jb3VudCcpLnRleHRDb250ZW50ID0gcSA/IHNob3duKycgb2YgJyt0b3RhbCA6ICcnOwogIGxldCBuciA9IHJvb3QucXVlcnlTZWxlY3RvcignLm5vcmVzdWx0cycpOwogIGlmIChxICYmIHNob3duPT09MCl7IGlmKCFucil7IG5yPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOyBuci5jbGFzc05hbWU9J25vcmVzdWx0cyc7IG5yLnRleHRDb250ZW50PSdObyBtYXRjaGluZyBvYmplY3RzLic7IHJvb3QuYXBwZW5kQ2hpbGQobnIpO30gfQogIGVsc2UgaWYgKG5yKSBuci5yZW1vdmUoKTsKfQpkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZmlsdGVyJykuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBhcHBseUZpbHRlcik7CmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdleHBhbmQtYWxsJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKT0+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhdGFsb2dzJykucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscycpLmZvckVhY2goZD0+ZC5vcGVuPXRydWUpKTsKZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbGxhcHNlLWFsbCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCk9PmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjYXRhbG9ncycpLnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMnKS5mb3JFYWNoKGQ9PmQub3Blbj1mYWxzZSkpOwoKLy8g4pSA4pSAIGZvb3RlciArIGZpcnN0IHJlbmRlciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAKZnVuY3Rpb24gcmVuZGVyRm9vdGVyKCl7CmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWx0ZXItd3JhcCcpLmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJiZWdpbicsIGljb24oJ3NlYXJjaCcpKTsKZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Zvb3RlcicpLmlubmVySFRNTCA9CiAgJzxhIGhyZWY9IicrcHJlZml4KycvZGVzY3JpYmUiPlJQQyBBUEk8L2E+JysKICAnPGRpdiBjbGFzcz0iZm9vdC1tZXRhIj52Z2ktcnBjICg8Y29kZT4nK2VzYyhkZXNjcmliZS53b3JrZXIubGFuZykrJzwvY29kZT4pIMK3IHYnK2VzYyhkZXNjcmliZS53b3JrZXIudmVyc2lvbikrJyDCtyA8Y29kZT4nK2VzYyhkZXNjcmliZS5zZXJ2ZXJfaWQpKyc8L2NvZGU+PC9kaXY+JysKICAnPGRpdiBjbGFzcz0iZm9vdC1tZXRhIGZvb3QtY29weSI+JmNvcHk7IDIwMjYgXHVEODNEXHVERTlDIFF1ZXJ5IEZhcm0gTExDIC0gPGEgaHJlZj0iaHR0cHM6Ly9xdWVyeS5mYXJtIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+aHR0cHM6Ly9xdWVyeS5mYXJtPC9hPjwvZGl2Pic7Cn0KCmZ1bmN0aW9uIHJlbmRlckFsbCgpeyByZW5kZXJDYXRCYXIoKTsgcmVuZGVyQ2F0Q2FyZCgpOyByZW5kZXJDb25uZWN0KCk7IHVwZGF0ZUN1cG9sYSgpOyByZW5kZXJDb250ZW50cygpOyB9CmFzeW5jIGZ1bmN0aW9uIGJvb3QoKXsKICB0cnkgewogICAgLy8gV29ya2VyIGlkZW50aXR5IGlzIG5vdCBjYXRhbG9nIGRhdGEsIHNvIGl0IGNvbWVzIGZyb20gdGhlIHdvcmtlcidzIG93bgogICAgLy8gc3RhdHVzIGRvY3VtZW50IHJhdGhlciB0aGFuIHRoZSBwcm90b2NvbC4KICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKCcuLz9mb3JtYXQ9anNvbicsIHtoZWFkZXJzOnsnQWNjZXB0JzonYXBwbGljYXRpb24vanNvbid9fSk7CiAgICBpZiAoIXJlcy5vaykgdGhyb3cgbmV3IEVycm9yKCdIVFRQICcrcmVzLnN0YXR1cyk7CiAgICBjb25zdCBzdGF0dXMgPSBhd2FpdCByZXMuanNvbigpOwoKICAgIC8vIFRyYWlsaW5nIHNsYXNoIHN0cmlwcGVkOiB0aGUgY2xpZW50IGpvaW5zIGBiYXNlICsgIi8iICsgbWV0aG9kYCwgYW5kIGEKICAgIC8vIGJhc2UgdGhhdCBhbHJlYWR5IGVuZHMgaW4gIi8iIHlpZWxkcyAiLy9tZXRob2QiIOKAlCB0b2xlcmF0ZWQgYnkgUHl0aG9uJ3MKICAgIC8vIGFuZCBHbydzIHJvdXRlcnMsIGEgNDA0IGZyb20gYXh1bS4KICAgIGNsaWVudCA9IG5ldyBWZ2lDbGllbnQoaHR0cENvbm5lY3Qoc2VydmljZVVybC5yZXBsYWNlKC9cLyQvLCAnJykpKTsKICAgIGNvbnN0IGluZm9zID0gYXdhaXQgY2xpZW50LmNhdGFsb2dzSW5mbygpOwogICAgY29uc3QgY2F0YWxvZ3MgPSBhd2FpdCBQcm9taXNlLmFsbChpbmZvcy5tYXAoYnVpbGRDYXRhbG9nKSk7CgogICAgZGVzY3JpYmUgPSB7CiAgICAgIHdvcmtlcjogewogICAgICAgIG5hbWU6IHN0YXR1cy53b3JrZXIgfHwgJ1ZHSSBXb3JrZXInLAogICAgICAgIGRvYzogc3RhdHVzLmRvYyB8fCAnJywKICAgICAgICB2ZXJzaW9uOiBzdGF0dXMudmVyc2lvbiB8fCAnJywKICAgICAgICBsYW5nOiBzdGF0dXMubGFuZyB8fCAnJwogICAgICB9LAogICAgICBzZXJ2ZXJfaWQ6IHN0YXR1cy5zZXJ2ZXJfaWQgfHwgJycsCiAgICAgIG9hdXRoOiAhIXN0YXR1cy5vYXV0aCwKICAgICAgY3Vwb2xhX2Jhc2U6IHN0YXR1cy5jdXBvbGFfYmFzZSB8fCBDVVBPTEFfQkFTRSwKICAgICAgY2F0YWxvZ3MKICAgIH07CiAgfSBjYXRjaCAoZSkgewogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhdGFsb2dzJykuaW5uZXJIVE1MID0KICAgICAgJzxkaXYgY2xhc3M9Im5vcmVzdWx0cyI+Q291bGQgbm90IGxvYWQgd29ya2VyIG1ldGFkYXRhICgnICsgZSArICcpLjwvZGl2Pic7CiAgICByZXR1cm47CiAgfQogIHJlbmRlcklkZW50aXR5KCk7IHJlbmRlckhlYWRlcigpOyByZW5kZXJGb290ZXIoKTsgcmVuZGVyQWxsKCk7Cn0KYm9vdCgpOwo8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+Cg==";
|
|
@@ -14767,4 +15832,4 @@ export {
|
|
|
14767
15832
|
utf82 as utf8
|
|
14768
15833
|
};
|
|
14769
15834
|
|
|
14770
|
-
//# debugId=
|
|
15835
|
+
//# debugId=4A48D657E6B1E41464756E2164756E21
|