@serve.zone/interfaces 31.9.0 → 32.0.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/.smartconfig.json +1 -0
- package/changelog.md +467 -0
- package/dist_ts/00_commitinfo_data.js +3 -3
- package/dist_ts/appstore/types.d.ts +4 -6
- package/dist_ts/appstore/types.js +5 -5
- package/dist_ts/data/backup.d.ts +3 -26
- package/dist_ts/data/cluster.d.ts +36 -11
- package/dist_ts/data/cluster.js +33 -22
- package/dist_ts/data/clusteringress.d.ts +8 -0
- package/dist_ts/data/clusteringress.js +13 -8
- package/dist_ts/data/clusternode.d.ts +121 -74
- package/dist_ts/data/clusternode.js +109 -132
- package/dist_ts/data/coremail.d.ts +3 -7
- package/dist_ts/data/coremail.js +2 -2
- package/dist_ts/data/coremail.runtime.d.ts +0 -1
- package/dist_ts/data/coremail.runtime.js +5 -22
- package/dist_ts/data/deploymentadoption.d.ts +0 -2
- package/dist_ts/data/deploymentadoption.js +40 -6
- package/dist_ts/data/deploymentoperation.js +16 -3
- package/dist_ts/data/deploymentpreflight.d.ts +0 -2
- package/dist_ts/data/deploymentpreflight.js +1 -1
- package/dist_ts/data/immutableimage.d.ts +38 -21
- package/dist_ts/data/immutableimage.js +45 -5
- package/dist_ts/data/index.d.ts +1 -1
- package/dist_ts/data/isolatedrestore.d.ts +139 -21
- package/dist_ts/data/isolatedrestore.golden.d.ts +0 -1
- package/dist_ts/data/isolatedrestore.golden.js +6 -9
- package/dist_ts/data/isolatedrestore.js +176 -40
- package/dist_ts/data/mail.d.ts +1 -1
- package/dist_ts/data/networkaddressplan.d.ts +8 -8
- package/dist_ts/data/networkaddressplan.js +4 -4
- package/dist_ts/data/networkauthority.d.ts +20 -22
- package/dist_ts/data/networkauthority.js +26 -28
- package/dist_ts/data/networkcredential.d.ts +10 -10
- package/dist_ts/data/networkcredential.js +16 -16
- package/dist_ts/data/networkdelivery.d.ts +18 -18
- package/dist_ts/data/networkdelivery.js +16 -16
- package/dist_ts/data/networklease.d.ts +18 -7
- package/dist_ts/data/networklease.js +29 -7
- package/dist_ts/data/networknode.d.ts +2 -2
- package/dist_ts/data/networkprojection.d.ts +59 -60
- package/dist_ts/data/networkprojection.js +53 -57
- package/dist_ts/data/networkprotection.d.ts +27 -28
- package/dist_ts/data/networkprotection.js +36 -36
- package/dist_ts/data/networkrouter.d.ts +11 -11
- package/dist_ts/data/networkrouter.js +1 -1
- package/dist_ts/data/networksigning.d.ts +16 -18
- package/dist_ts/data/networksigning.js +20 -21
- package/dist_ts/data/nodecredential.d.ts +4 -6
- package/dist_ts/data/nodeenrollment.d.ts +35 -40
- package/dist_ts/data/nodeenrollment.js +57 -72
- package/dist_ts/data/privatenetwork.d.ts +21 -24
- package/dist_ts/data/privatenetwork.js +39 -54
- package/dist_ts/data/runtimeassignment.d.ts +50 -34
- package/dist_ts/data/runtimeassignment.js +79 -45
- package/dist_ts/data/runtimeconfig.d.ts +21 -22
- package/dist_ts/data/runtimeconfig.js +24 -24
- package/dist_ts/data/runtimesession.d.ts +100 -62
- package/dist_ts/data/runtimesession.js +98 -79
- package/dist_ts/data/runtimeterminalreceipt.d.ts +28 -29
- package/dist_ts/data/runtimeterminalreceipt.js +42 -42
- package/dist_ts/data/secret.d.ts +18 -25
- package/dist_ts/data/secret.js +12 -52
- package/dist_ts/data/servicecredential.d.ts +14 -16
- package/dist_ts/data/servicecredential.js +17 -28
- package/dist_ts/data/serviceruntime.d.ts +7 -7
- package/dist_ts/data/serviceruntime.js +4 -4
- package/dist_ts/data/sparknodereport.d.ts +27 -14
- package/dist_ts/data/sparknodereport.js +35 -28
- package/dist_ts/data/webpush.d.ts +0 -1
- package/dist_ts/index.d.ts +2 -1
- package/dist_ts/index.js +3 -2
- package/dist_ts/platform/objectstorageretention.d.ts +21 -24
- package/dist_ts/platform/objectstorageretention.js +6 -18
- package/dist_ts/platform/storage.d.ts +1 -3
- package/dist_ts/platform/storagemigration.d.ts +0 -7
- package/dist_ts/platform/storagemigration.golden.d.ts +0 -1
- package/dist_ts/platform/storagemigration.golden.js +8 -12
- package/dist_ts/platform/storagemigration.js +6 -51
- package/dist_ts/platform/types.d.ts +2 -2
- package/dist_ts/private/canonicaljson.d.ts +9 -1
- package/dist_ts/private/canonicaljson.js +14 -2
- package/dist_ts/private/dataproperties.d.ts +62 -0
- package/dist_ts/private/dataproperties.js +117 -0
- package/dist_ts/private/networkcontract.d.ts +10 -10
- package/dist_ts/private/networkcontract.js +1 -1
- package/dist_ts/private/releaseversion.d.ts +37 -0
- package/dist_ts/private/releaseversion.js +48 -0
- package/dist_ts/private/runtimepolicy.d.ts +2 -2
- package/dist_ts/private/runtimepolicy.js +1 -1
- package/dist_ts/private/tokenlist.d.ts +9 -0
- package/dist_ts/private/tokenlist.js +23 -0
- package/dist_ts/protocol.d.ts +137 -0
- package/dist_ts/protocol.js +255 -0
- package/dist_ts/requests/admin.d.ts +8 -8
- package/dist_ts/requests/backup.d.ts +102 -112
- package/dist_ts/requests/cluster.d.ts +10 -10
- package/dist_ts/requests/clusteringress.d.ts +9 -0
- package/dist_ts/requests/clusteringress.js +1 -1
- package/dist_ts/requests/config.d.ts +3 -3
- package/dist_ts/requests/corestore.d.ts +0 -3
- package/dist_ts/requests/corestore.js +5 -9
- package/dist_ts/requests/network.d.ts +30 -30
- package/dist_ts/requests/node.d.ts +15 -28
- package/dist_ts/requests/pallet.d.ts +13 -13
- package/dist_ts/requests/runtimesession.d.ts +53 -41
- package/dist_ts/requests/secret.d.ts +4 -5
- package/dist_ts/requests/secret.js +1 -5
- package/dist_ts/runtime.corestore.d.ts +56 -74
- package/dist_ts/runtime.corestore.databaseexportpackage.d.ts +30 -36
- package/dist_ts/runtime.corestore.databaseexportpackage.golden.d.ts +11 -12
- package/dist_ts/runtime.corestore.databaseexportpackage.golden.js +54 -71
- package/dist_ts/runtime.corestore.databaseexportpackage.js +9 -25
- package/dist_ts/runtime.corestore.js +35 -135
- package/dist_ts/runtime.corestore.relay.js +2 -7
- package/dist_ts/runtime.d.ts +38 -48
- package/dist_ts/runtime.js +20 -77
- package/dist_ts/runtime.networkprojection.d.ts +4 -4
- package/dist_ts/runtime.networkprojection.js +18 -18
- package/dist_ts/runtime.workloadinit.d.ts +23 -24
- package/dist_ts/runtime.workloadinit.js +6 -13
- package/package.json +2 -2
- package/readme.md +421 -270
- package/ts/00_commitinfo_data.ts +3 -3
- package/ts/appstore/types.ts +4 -6
- package/ts/data/backup.ts +3 -38
- package/ts/data/cluster.ts +51 -34
- package/ts/data/clusteringress.ts +12 -12
- package/ts/data/clusternode.ts +204 -232
- package/ts/data/coremail.runtime.ts +4 -21
- package/ts/data/coremail.ts +3 -7
- package/ts/data/deploymentadoption.ts +46 -4
- package/ts/data/deploymentoperation.ts +16 -1
- package/ts/data/deploymentpreflight.ts +0 -2
- package/ts/data/immutableimage.ts +71 -24
- package/ts/data/index.ts +1 -1
- package/ts/data/isolatedrestore.golden.ts +5 -9
- package/ts/data/isolatedrestore.ts +339 -54
- package/ts/data/mail.ts +1 -1
- package/ts/data/networkaddressplan.ts +13 -13
- package/ts/data/networkauthority.ts +42 -46
- package/ts/data/networkcredential.ts +24 -24
- package/ts/data/networkdelivery.ts +27 -27
- package/ts/data/networklease.ts +40 -13
- package/ts/data/networknode.ts +2 -2
- package/ts/data/networkprojection.ts +119 -124
- package/ts/data/networkprotection.ts +54 -55
- package/ts/data/networkrouter.ts +14 -14
- package/ts/data/networksigning.ts +29 -32
- package/ts/data/nodecredential.ts +4 -6
- package/ts/data/nodeenrollment.ts +96 -114
- package/ts/data/privatenetwork.ts +58 -74
- package/ts/data/runtimeassignment.ts +143 -94
- package/ts/data/runtimeconfig.ts +45 -46
- package/ts/data/runtimesession.ts +185 -138
- package/ts/data/runtimeterminalreceipt.ts +72 -73
- package/ts/data/secret.ts +28 -76
- package/ts/data/servicecredential.ts +33 -43
- package/ts/data/serviceruntime.ts +11 -11
- package/ts/data/sparknodereport.ts +48 -36
- package/ts/data/webpush.ts +0 -1
- package/ts/index.ts +2 -0
- package/ts/platform/objectstorageretention.ts +36 -55
- package/ts/platform/storage.ts +1 -3
- package/ts/platform/storagemigration.golden.ts +7 -11
- package/ts/platform/storagemigration.ts +5 -55
- package/ts/platform/types.ts +2 -2
- package/ts/private/canonicaljson.ts +13 -1
- package/ts/private/dataproperties.ts +139 -0
- package/ts/private/networkcontract.ts +9 -9
- package/ts/private/releaseversion.ts +70 -0
- package/ts/private/runtimepolicy.ts +2 -2
- package/ts/private/tokenlist.ts +30 -0
- package/ts/protocol.ts +364 -0
- package/ts/requests/admin.ts +11 -11
- package/ts/requests/backup.ts +112 -117
- package/ts/requests/cluster.ts +13 -13
- package/ts/requests/clusteringress.ts +9 -0
- package/ts/requests/config.ts +3 -3
- package/ts/requests/corestore.ts +4 -16
- package/ts/requests/network.ts +40 -40
- package/ts/requests/node.ts +21 -38
- package/ts/requests/pallet.ts +17 -17
- package/ts/requests/runtimesession.ts +63 -51
- package/ts/requests/secret.ts +5 -10
- package/ts/runtime.corestore.databaseexportpackage.golden.ts +77 -95
- package/ts/runtime.corestore.databaseexportpackage.ts +51 -73
- package/ts/runtime.corestore.relay.ts +1 -10
- package/ts/runtime.corestore.ts +118 -268
- package/ts/runtime.networkprojection.ts +30 -30
- package/ts/runtime.ts +83 -158
- package/ts/runtime.workloadinit.ts +36 -48
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.d.ts +0 -902
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.golden.d.ts +0 -35
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.golden.js +0 -315
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.js +0 -3315
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.d.ts +0 -291
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.golden.d.ts +0 -30
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.golden.js +0 -408
- package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.js +0 -1126
- package/ts/runtime.cloudlylegacydeploymentsettlement.golden.ts +0 -421
- package/ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.golden.ts +0 -510
- package/ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.ts +0 -2470
- package/ts/runtime.cloudlylegacydeploymentsettlement.ts +0 -6630
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { canonicalizeStrictJson, createCanonicalJsonSha256Hex, deepFreezeValue, strictCanonicalJsonRules, } from '../private/canonicaljson.js';
|
|
2
2
|
export const storageMigrationContractLimits = Object.freeze({
|
|
3
|
-
version: 2,
|
|
4
3
|
maximumControlJsonBytes: 256 * 1024,
|
|
5
4
|
maximumConfiguredStringBytes: 2048,
|
|
6
5
|
maximumIssueMessageBytes: 4096,
|
|
@@ -89,7 +88,7 @@ const assertKeys = (recordArg, requiredKeysArg, optionalKeysArg, fieldNameArg) =
|
|
|
89
88
|
const allowedKeys = new Set([...requiredKeysArg, ...optionalKeysArg]);
|
|
90
89
|
if (requiredKeysArg.some((keyArg) => !Object.hasOwn(recordArg, keyArg)) ||
|
|
91
90
|
actualKeys.some((keyArg) => !allowedKeys.has(keyArg))) {
|
|
92
|
-
fail(`${fieldNameArg} does not match its exact
|
|
91
|
+
fail(`${fieldNameArg} does not match its exact schema`);
|
|
93
92
|
}
|
|
94
93
|
};
|
|
95
94
|
const assertExactKeys = (recordArg, expectedKeysArg, fieldNameArg) => {
|
|
@@ -152,7 +151,7 @@ const readBoolean = (valueArg, fieldNameArg) => {
|
|
|
152
151
|
const readLiteral = (valueArg, allowedArg, fieldNameArg) => {
|
|
153
152
|
if (typeof valueArg !== 'string' ||
|
|
154
153
|
!allowedArg.includes(valueArg)) {
|
|
155
|
-
return fail(`${fieldNameArg} is outside the supported
|
|
154
|
+
return fail(`${fieldNameArg} is outside the supported values`);
|
|
156
155
|
}
|
|
157
156
|
return valueArg;
|
|
158
157
|
};
|
|
@@ -369,13 +368,13 @@ const normalizeDelivery = (valueArg, fieldNameArg) => {
|
|
|
369
368
|
targetPath.split('/').some((segmentArg) => segmentArg === '.' || segmentArg === '..')) {
|
|
370
369
|
return fail(`${fieldNameArg}.targetPath must be a canonical path below /run/secrets`);
|
|
371
370
|
}
|
|
372
|
-
if (value.format !== 'servezone-object-storage
|
|
371
|
+
if (value.format !== 'servezone-object-storage') {
|
|
373
372
|
return fail(`${fieldNameArg}.format is unsupported`);
|
|
374
373
|
}
|
|
375
374
|
return {
|
|
376
375
|
type: 'file',
|
|
377
376
|
targetPath,
|
|
378
|
-
format: 'servezone-object-storage
|
|
377
|
+
format: 'servezone-object-storage',
|
|
379
378
|
uid: readSafeInteger(value.uid, `${fieldNameArg}.uid`, 0, 2_147_483_647),
|
|
380
379
|
gid: readSafeInteger(value.gid, `${fieldNameArg}.gid`, 0, 2_147_483_647),
|
|
381
380
|
mode: value.mode === 0o400 || value.mode === 0o440
|
|
@@ -485,7 +484,6 @@ const normalizeConnection = (valueArg, fieldNameArg) => {
|
|
|
485
484
|
const normalizeObjectStorageBinding = (valueArg, expectedStatusArg, fieldNameArg) => {
|
|
486
485
|
const value = readRecord(valueArg, fieldNameArg);
|
|
487
486
|
assertKeys(value, [
|
|
488
|
-
'schemaVersion',
|
|
489
487
|
'id',
|
|
490
488
|
'serviceId',
|
|
491
489
|
'requestId',
|
|
@@ -503,9 +501,6 @@ const normalizeObjectStorageBinding = (valueArg, expectedStatusArg, fieldNameArg
|
|
|
503
501
|
'delivery',
|
|
504
502
|
'versioning',
|
|
505
503
|
], ['capacity', 'createdAt', 'updatedAt', 'retentionDays'], fieldNameArg);
|
|
506
|
-
if (value.schemaVersion !== 2) {
|
|
507
|
-
return fail(`${fieldNameArg}.schemaVersion must be 2`);
|
|
508
|
-
}
|
|
509
504
|
if (value.kind !== 'objectStorage') {
|
|
510
505
|
return fail(`${fieldNameArg}.kind must be objectStorage`);
|
|
511
506
|
}
|
|
@@ -527,7 +522,6 @@ const normalizeObjectStorageBinding = (valueArg, expectedStatusArg, fieldNameArg
|
|
|
527
522
|
return fail(`${fieldNameArg}.updatedAt must not precede createdAt`);
|
|
528
523
|
}
|
|
529
524
|
return {
|
|
530
|
-
schemaVersion: 2,
|
|
531
525
|
id: readIdentifier(value.id, `${fieldNameArg}.id`),
|
|
532
526
|
serviceId: readIdentifier(value.serviceId, `${fieldNameArg}.serviceId`),
|
|
533
527
|
requestId: readIdentifier(value.requestId, `${fieldNameArg}.requestId`),
|
|
@@ -582,17 +576,12 @@ export const normalizeStorageBindingMigrationOwner = (valueArg) => {
|
|
|
582
576
|
const normalizeUnfencedSnapshotShape = (valueArg, fieldNameArg) => {
|
|
583
577
|
const value = readRecord(valueArg, fieldNameArg);
|
|
584
578
|
assertExactKeys(value, [
|
|
585
|
-
'schemaVersion',
|
|
586
579
|
'binding',
|
|
587
580
|
'recordRevision',
|
|
588
581
|
'snapshotDigest',
|
|
589
582
|
'capturedAt',
|
|
590
583
|
], fieldNameArg);
|
|
591
|
-
if (value.schemaVersion !== 2) {
|
|
592
|
-
return fail(`${fieldNameArg}.schemaVersion must be 2`);
|
|
593
|
-
}
|
|
594
584
|
return {
|
|
595
|
-
schemaVersion: 2,
|
|
596
585
|
binding: normalizeObjectStorageBinding(value.binding, 'ready', `${fieldNameArg}.binding`),
|
|
597
586
|
recordRevision: readSafeInteger(value.recordRevision, `${fieldNameArg}.recordRevision`, 1),
|
|
598
587
|
snapshotDigest: readSha256(value.snapshotDigest, `${fieldNameArg}.snapshotDigest`),
|
|
@@ -602,18 +591,13 @@ const normalizeUnfencedSnapshotShape = (valueArg, fieldNameArg) => {
|
|
|
602
591
|
const normalizeFencedSnapshotShape = (valueArg, fieldNameArg) => {
|
|
603
592
|
const value = readRecord(valueArg, fieldNameArg);
|
|
604
593
|
assertExactKeys(value, [
|
|
605
|
-
'schemaVersion',
|
|
606
594
|
'binding',
|
|
607
595
|
'recordRevision',
|
|
608
596
|
'snapshotDigest',
|
|
609
597
|
'capturedAt',
|
|
610
598
|
'activeMigration',
|
|
611
599
|
], fieldNameArg);
|
|
612
|
-
if (value.schemaVersion !== 2) {
|
|
613
|
-
return fail(`${fieldNameArg}.schemaVersion must be 2`);
|
|
614
|
-
}
|
|
615
600
|
return {
|
|
616
|
-
schemaVersion: 2,
|
|
617
601
|
binding: normalizeObjectStorageBinding(value.binding, 'ready', `${fieldNameArg}.binding`),
|
|
618
602
|
recordRevision: readSafeInteger(value.recordRevision, `${fieldNameArg}.recordRevision`, 1),
|
|
619
603
|
snapshotDigest: readSha256(value.snapshotDigest, `${fieldNameArg}.snapshotDigest`),
|
|
@@ -622,13 +606,11 @@ const normalizeFencedSnapshotShape = (valueArg, fieldNameArg) => {
|
|
|
622
606
|
};
|
|
623
607
|
};
|
|
624
608
|
const createUnfencedSnapshotDigestPayload = (snapshotArg) => ({
|
|
625
|
-
schemaVersion: 2,
|
|
626
609
|
binding: snapshotArg.binding,
|
|
627
610
|
recordRevision: snapshotArg.recordRevision,
|
|
628
611
|
capturedAt: snapshotArg.capturedAt,
|
|
629
612
|
});
|
|
630
613
|
const createFencedSnapshotDigestPayload = (snapshotArg) => ({
|
|
631
|
-
schemaVersion: 2,
|
|
632
614
|
binding: snapshotArg.binding,
|
|
633
615
|
recordRevision: snapshotArg.recordRevision,
|
|
634
616
|
capturedAt: snapshotArg.capturedAt,
|
|
@@ -636,7 +618,7 @@ const createFencedSnapshotDigestPayload = (snapshotArg) => ({
|
|
|
636
618
|
});
|
|
637
619
|
export const canonicalizeUnfencedObjectStorageBindingControlSnapshotPayload = (valueArg) => {
|
|
638
620
|
const value = readRecord(valueArg, 'unfenced object-storage control snapshot digest payload');
|
|
639
|
-
assertExactKeys(value, ['
|
|
621
|
+
assertExactKeys(value, ['binding', 'recordRevision', 'capturedAt'], 'unfenced object-storage control snapshot digest payload');
|
|
640
622
|
const normalized = normalizeUnfencedSnapshotShape({
|
|
641
623
|
...value,
|
|
642
624
|
snapshotDigest: '0'.repeat(64),
|
|
@@ -646,7 +628,6 @@ export const canonicalizeUnfencedObjectStorageBindingControlSnapshotPayload = (v
|
|
|
646
628
|
export const canonicalizeFencedObjectStorageBindingControlSnapshotPayload = (valueArg) => {
|
|
647
629
|
const value = readRecord(valueArg, 'fenced object-storage control snapshot digest payload');
|
|
648
630
|
assertExactKeys(value, [
|
|
649
|
-
'schemaVersion',
|
|
650
631
|
'binding',
|
|
651
632
|
'recordRevision',
|
|
652
633
|
'capturedAt',
|
|
@@ -718,17 +699,12 @@ const assertTargetIdentity = async (targetArg, sourceBindingArg, fieldNameArg) =
|
|
|
718
699
|
const normalizePrepareRequestShape = (valueArg) => {
|
|
719
700
|
const value = readRecord(valueArg, 'object-storage migration prepare request');
|
|
720
701
|
assertExactKeys(value, [
|
|
721
|
-
'schemaVersion',
|
|
722
702
|
'migrationId',
|
|
723
703
|
'sourceControlSnapshot',
|
|
724
704
|
'workloadGeneration',
|
|
725
705
|
'target',
|
|
726
706
|
], 'object-storage migration prepare request');
|
|
727
|
-
if (value.schemaVersion !== 2) {
|
|
728
|
-
return fail('object-storage migration prepare request.schemaVersion must be 2');
|
|
729
|
-
}
|
|
730
707
|
return {
|
|
731
|
-
schemaVersion: 2,
|
|
732
708
|
migrationId: readIdentifier(value.migrationId, 'object-storage migration prepare request.migrationId'),
|
|
733
709
|
sourceControlSnapshot: normalizeUnfencedSnapshotShape(value.sourceControlSnapshot, 'object-storage migration prepare request.sourceControlSnapshot'),
|
|
734
710
|
workloadGeneration: readSafeInteger(value.workloadGeneration, 'object-storage migration prepare request.workloadGeneration', 1),
|
|
@@ -815,11 +791,7 @@ const normalizeIssue = (valueArg, kindArg, fieldNameArg) => {
|
|
|
815
791
|
};
|
|
816
792
|
};
|
|
817
793
|
const normalizeMutationFence = (valueArg, fieldNameArg) => {
|
|
818
|
-
if (valueArg.schemaVersion !== 2) {
|
|
819
|
-
return fail(`${fieldNameArg}.schemaVersion must be 2`);
|
|
820
|
-
}
|
|
821
794
|
return {
|
|
822
|
-
schemaVersion: 2,
|
|
823
795
|
migrationId: readIdentifier(valueArg.migrationId, `${fieldNameArg}.migrationId`),
|
|
824
796
|
migrationDigest: readSha256(valueArg.migrationDigest, `${fieldNameArg}.migrationDigest`),
|
|
825
797
|
expectedMigrationRevision: readSafeInteger(valueArg.expectedMigrationRevision, `${fieldNameArg}.expectedMigrationRevision`, 1),
|
|
@@ -830,7 +802,6 @@ export const normalizeStorageMigrationMutationFence = (valueArg) => {
|
|
|
830
802
|
const fieldName = 'storage migration mutation fence';
|
|
831
803
|
const value = readRecord(valueArg, fieldName);
|
|
832
804
|
assertExactKeys(value, [
|
|
833
|
-
'schemaVersion',
|
|
834
805
|
'migrationId',
|
|
835
806
|
'migrationDigest',
|
|
836
807
|
'expectedMigrationRevision',
|
|
@@ -842,7 +813,6 @@ const normalizeQuiesceRequestShape = (valueArg) => {
|
|
|
842
813
|
const fieldName = 'object-storage migration consumer quiesce request';
|
|
843
814
|
const value = readRecord(valueArg, fieldName);
|
|
844
815
|
assertExactKeys(value, [
|
|
845
|
-
'schemaVersion',
|
|
846
816
|
'migrationId',
|
|
847
817
|
'migrationDigest',
|
|
848
818
|
'expectedMigrationRevision',
|
|
@@ -867,7 +837,6 @@ const normalizeQuiesceRequestShape = (valueArg) => {
|
|
|
867
837
|
};
|
|
868
838
|
};
|
|
869
839
|
const createPersistedStagingDigestPayload = (requestArg) => ({
|
|
870
|
-
schemaVersion: 2,
|
|
871
840
|
migrationId: requestArg.migrationId,
|
|
872
841
|
migrationDigest: requestArg.migrationDigest,
|
|
873
842
|
expectedMigrationRevision: requestArg.expectedMigrationRevision,
|
|
@@ -882,7 +851,6 @@ const createPersistedStagingDigestPayload = (requestArg) => ({
|
|
|
882
851
|
export const createObjectStorageMigrationPersistedStagingSha256 = async (valueArg) => {
|
|
883
852
|
const value = readRecord(valueArg, 'persisted staging digest payload');
|
|
884
853
|
assertExactKeys(value, [
|
|
885
|
-
'schemaVersion',
|
|
886
854
|
'migrationId',
|
|
887
855
|
'migrationDigest',
|
|
888
856
|
'expectedMigrationRevision',
|
|
@@ -912,7 +880,6 @@ const normalizeActivationRequestShape = (valueArg) => {
|
|
|
912
880
|
const fieldName = 'object-storage migration consumer activation request';
|
|
913
881
|
const value = readRecord(valueArg, fieldName);
|
|
914
882
|
assertExactKeys(value, [
|
|
915
|
-
'schemaVersion',
|
|
916
883
|
'migrationId',
|
|
917
884
|
'migrationDigest',
|
|
918
885
|
'expectedMigrationRevision',
|
|
@@ -935,7 +902,6 @@ const normalizeActivationRequestShape = (valueArg) => {
|
|
|
935
902
|
};
|
|
936
903
|
};
|
|
937
904
|
const createPersistedActivationDigestPayload = (requestArg) => ({
|
|
938
|
-
schemaVersion: 2,
|
|
939
905
|
migrationId: requestArg.migrationId,
|
|
940
906
|
migrationDigest: requestArg.migrationDigest,
|
|
941
907
|
expectedMigrationRevision: requestArg.expectedMigrationRevision,
|
|
@@ -949,7 +915,6 @@ const createPersistedActivationDigestPayload = (requestArg) => ({
|
|
|
949
915
|
export const createObjectStorageMigrationPersistedActivationSha256 = async (valueArg) => {
|
|
950
916
|
const value = readRecord(valueArg, 'persisted activation digest payload');
|
|
951
917
|
assertExactKeys(value, [
|
|
952
|
-
'schemaVersion',
|
|
953
918
|
'migrationId',
|
|
954
919
|
'migrationDigest',
|
|
955
920
|
'expectedMigrationRevision',
|
|
@@ -1006,7 +971,6 @@ export const normalizeObjectStorageMigrationAbortRequest = (valueArg) => {
|
|
|
1006
971
|
const fieldName = 'object-storage migration abort request';
|
|
1007
972
|
const value = readRecord(valueArg, fieldName);
|
|
1008
973
|
assertExactKeys(value, [
|
|
1009
|
-
'schemaVersion',
|
|
1010
974
|
'migrationId',
|
|
1011
975
|
'migrationDigest',
|
|
1012
976
|
'expectedMigrationRevision',
|
|
@@ -1022,7 +986,6 @@ export const normalizeObjectStorageMigrationResumeRequest = (valueArg) => {
|
|
|
1022
986
|
const fieldName = 'object-storage migration resume request';
|
|
1023
987
|
const value = readRecord(valueArg, fieldName);
|
|
1024
988
|
assertExactKeys(value, [
|
|
1025
|
-
'schemaVersion',
|
|
1026
989
|
'migrationId',
|
|
1027
990
|
'migrationDigest',
|
|
1028
991
|
'expectedMigrationRevision',
|
|
@@ -1038,7 +1001,6 @@ export const normalizeObjectStorageMigrationCleanupRequest = (valueArg) => {
|
|
|
1038
1001
|
const fieldName = 'object-storage migration cleanup request';
|
|
1039
1002
|
const value = readRecord(valueArg, fieldName);
|
|
1040
1003
|
assertExactKeys(value, [
|
|
1041
|
-
'schemaVersion',
|
|
1042
1004
|
'migrationId',
|
|
1043
1005
|
'migrationDigest',
|
|
1044
1006
|
'expectedMigrationRevision',
|
|
@@ -1127,7 +1089,6 @@ const assertCandidateIdentity = async (candidateArg, sourceArg, targetArg, field
|
|
|
1127
1089
|
};
|
|
1128
1090
|
const assertActiveMatchesCandidate = (activeArg, candidateArg, fieldNameArg) => {
|
|
1129
1091
|
const immutableKeys = [
|
|
1130
|
-
'schemaVersion',
|
|
1131
1092
|
'id',
|
|
1132
1093
|
'serviceId',
|
|
1133
1094
|
'requestId',
|
|
@@ -1183,7 +1144,6 @@ const assertEvidenceFence = (fenceArg, migrationIdArg, migrationDigestArg, migra
|
|
|
1183
1144
|
}
|
|
1184
1145
|
};
|
|
1185
1146
|
const statusBaseRequiredKeys = [
|
|
1186
|
-
'schemaVersion',
|
|
1187
1147
|
'migrationId',
|
|
1188
1148
|
'migrationDigest',
|
|
1189
1149
|
'migrationRevision',
|
|
@@ -1258,9 +1218,6 @@ export const normalizeObjectStorageMigrationStatus = async (valueArg) => {
|
|
|
1258
1218
|
phaseRequired.push('terminalAt');
|
|
1259
1219
|
}
|
|
1260
1220
|
assertKeys(value, [...statusBaseRequiredKeys, ...phaseRequired], phaseOptional, fieldName);
|
|
1261
|
-
if (value.schemaVersion !== 2) {
|
|
1262
|
-
return fail(`${fieldName}.schemaVersion must be 2`);
|
|
1263
|
-
}
|
|
1264
1221
|
const migrationId = readIdentifier(value.migrationId, `${fieldName}.migrationId`);
|
|
1265
1222
|
const migrationDigest = readSha256(value.migrationDigest, `${fieldName}.migrationDigest`);
|
|
1266
1223
|
const migrationRevision = readSafeInteger(value.migrationRevision, `${fieldName}.migrationRevision`, 1);
|
|
@@ -1279,7 +1236,6 @@ export const normalizeObjectStorageMigrationStatus = async (valueArg) => {
|
|
|
1279
1236
|
}
|
|
1280
1237
|
await assertTargetIdentity(target, sourceBinding, `${fieldName}.target`);
|
|
1281
1238
|
const recomputedMigrationDigest = await createObjectStorageMigrationSha256({
|
|
1282
|
-
schemaVersion: 2,
|
|
1283
1239
|
migrationId,
|
|
1284
1240
|
sourceControlSnapshot: source.preparationSnapshot,
|
|
1285
1241
|
workloadGeneration,
|
|
@@ -1410,7 +1366,6 @@ export const normalizeObjectStorageMigrationStatus = async (valueArg) => {
|
|
|
1410
1366
|
return fail(`${fieldName}.terminalAt must not exceed updatedAt`);
|
|
1411
1367
|
}
|
|
1412
1368
|
const normalized = {
|
|
1413
|
-
schemaVersion: 2,
|
|
1414
1369
|
migrationId,
|
|
1415
1370
|
migrationDigest,
|
|
1416
1371
|
migrationRevision,
|
|
@@ -1539,4 +1494,4 @@ export const normalizeStorageMigrationPostCutoverIssue = (valueArg) => {
|
|
|
1539
1494
|
return assertControlJsonLimit(normalizeIssue(valueArg, 'post', 'storage migration post-cutover issue'), 'storage migration post-cutover issue');
|
|
1540
1495
|
};
|
|
1541
1496
|
export { storageMigrationCanonicalDigestGoldenVectors, } from './storagemigration.golden.js';
|
|
1542
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZW1pZ3JhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL3BsYXRmb3JtL3N0b3JhZ2VtaWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qiw0QkFBNEIsRUFDNUIsZUFBZSxFQUNmLHdCQUF3QixHQUN6QixNQUFNLDZCQUE2QixDQUFDO0FBT3JDLE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDMUQsT0FBTyxFQUFFLENBQVU7SUFDbkIsdUJBQXVCLEVBQUUsR0FBRyxHQUFHLElBQUk7SUFDbkMsNEJBQTRCLEVBQUUsSUFBSTtJQUNsQyx3QkFBd0IsRUFBRSxJQUFJO0lBQzlCLHVCQUF1QixFQUFFLElBQUk7SUFDN0IsMEJBQTBCLEVBQUUsR0FBRztJQUMvQixzQkFBc0IsRUFBRSxJQUFJO0NBQzdCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLHdCQUF3QixDQUFDO0FBRTNFLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxLQUFLO0lBQ3RELFlBQW1CLFNBQWlCO1FBQ2xDLEtBQUssQ0FBQyxxQ0FBcUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsSUFBSSxHQUFHLCtCQUErQixDQUFDO0lBQzlDLENBQUM7Q0FDRjtBQTJYRCxNQUFNLElBQUksR0FBRyxDQUFDLFNBQWlCLEVBQVMsRUFBRTtJQUN4QyxNQUFNLElBQUksNkJBQTZCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxjQUFjLEdBQUcsQ0FBQyxRQUFnQixFQUFVLEVBQUU7SUFDbEQsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxVQUFVLENBQUM7QUFDdkQsQ0FBQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0s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
|
|
1497
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZW1pZ3JhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL3BsYXRmb3JtL3N0b3JhZ2VtaWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qiw0QkFBNEIsRUFDNUIsZUFBZSxFQUNmLHdCQUF3QixHQUN6QixNQUFNLDZCQUE2QixDQUFDO0FBT3JDLE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDMUQsdUJBQXVCLEVBQUUsR0FBRyxHQUFHLElBQUk7SUFDbkMsNEJBQTRCLEVBQUUsSUFBSTtJQUNsQyx3QkFBd0IsRUFBRSxJQUFJO0lBQzlCLHVCQUF1QixFQUFFLElBQUk7SUFDN0IsMEJBQTBCLEVBQUUsR0FBRztJQUMvQixzQkFBc0IsRUFBRSxJQUFJO0NBQzdCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLHdCQUF3QixDQUFDO0FBRTNFLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxLQUFLO0lBQ3RELFlBQW1CLFNBQWlCO1FBQ2xDLEtBQUssQ0FBQyxxQ0FBcUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsSUFBSSxHQUFHLCtCQUErQixDQUFDO0lBQzlDLENBQUM7Q0FDRjtBQXNYRCxNQUFNLElBQUksR0FBRyxDQUFDLFNBQWlCLEVBQVMsRUFBRTtJQUN4QyxNQUFNLElBQUksNkJBQTZCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxjQUFjLEdBQUcsQ0FBQyxRQUFnQixFQUFVLEVBQUU7SUFDbEQsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxVQUFVLENBQUM7QUFDdkQsQ0FBQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sOENBQThDLEdBQUcsQ0FDNUQsUUFBaUIsRUFDVCxFQUFFO0lBQ1YsT0FBTyxlQUFlLENBQ3BCLFFBQVEsRUFDUixtREFBbUQsRUFDbkQsQ0FBQyxFQUNELDhCQUE4QixDQUFDLHVCQUF1QixDQUN2RCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEdBQUcsQ0FDakIsUUFBaUIsRUFDakIsWUFBb0IsRUFDSyxFQUFFO0lBQzNCLElBQUksQ0FBQyxRQUFRLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUN6RSxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVkseUJBQXlCLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsRCxJQUFJLFNBQVMsS0FBSyxNQUFNLENBQUMsU0FBUyxJQUFJLFNBQVMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUN6RCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVkseUJBQXlCLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0QsTUFBTSxNQUFNLEdBQUcsUUFBbUMsQ0FBQztJQUNuRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUN6RCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksK0JBQStCLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBQ0QsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFtQixFQUFFLENBQUM7UUFDdEMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNoRSxJQUNFLENBQUMsVUFBVTtZQUNYLENBQUMsVUFBVSxDQUFDLFVBQVU7WUFDdEIsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUM7WUFDbkMsVUFBVSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQzlCLENBQUM7WUFDRCxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVksb0RBQW9ELENBQ3BFLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUFHLENBQ3JCLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ3BCLGdCQUF3QixFQUN4QixnQkFBd0IsRUFDYixFQUFFO0lBQ2IsSUFDRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ3hCLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEtBQUssS0FBSyxDQUFDLFNBQVMsRUFDbkQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSw4QkFBOEIsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFDRCxJQUNFLFFBQVEsQ0FBQyxNQUFNLEdBQUcsZ0JBQWdCO1FBQ2xDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsZ0JBQWdCLEVBQ2xDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVkseUJBQXlCLGdCQUFnQixRQUFRLGdCQUFnQixVQUFVLENBQzNGLENBQUM7SUFDSixDQUFDO0lBQ0QsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksa0NBQWtDLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBQ0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUM1RSxJQUNFLENBQUMsVUFBVTtZQUNYLENBQUMsVUFBVSxDQUFDLFVBQVU7WUFDdEIsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUM7WUFDbkMsVUFBVSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQzlCLENBQUM7WUFDRCxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVksaURBQWlELENBQ2pFLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUNELEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQzVDLElBQUksR0FBRyxLQUFLLFFBQVE7WUFBRSxTQUFTO1FBQy9CLElBQ0UsT0FBTyxHQUFHLEtBQUssUUFBUTtZQUN2QixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDaEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQzlCLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksb0NBQW9DLENBQUMsQ0FBQztRQUNuRSxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUFHLENBQ2pCLFNBQWtDLEVBQ2xDLGVBQWtDLEVBQ2xDLGVBQWtDLEVBQ2xDLFlBQW9CLEVBQ2QsRUFBRTtJQUNSLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakQsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLGVBQWUsRUFBRSxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUM7SUFDdEUsSUFDRSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25FLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUNyRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsWUFBWSxrQ0FBa0MsQ0FBQyxDQUFDO0lBQzFELENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLGVBQWUsR0FBRyxDQUN0QixTQUFrQyxFQUNsQyxlQUFrQyxFQUNsQyxZQUFvQixFQUNkLEVBQUU7SUFDUixVQUFVLENBQUMsU0FBUyxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFDM0QsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEdBQUcsQ0FDakIsUUFBaUIsRUFDakIsWUFBb0IsRUFDcEIsa0JBQ0UsOEJBQThCLENBQUMsNEJBQTRCLEVBQ3JELEVBQUU7SUFDVixJQUNFLE9BQU8sUUFBUSxLQUFLLFFBQVE7UUFDNUIsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQ3JCLGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRyxlQUFlO1FBQzFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDdkMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSwwQ0FBMEMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDRCxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ3JELE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsSUFBSSxRQUFRLElBQUksTUFBTSxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUM3QyxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNqRCxJQUFJLFNBQVMsR0FBRyxNQUFNLElBQUksU0FBUyxHQUFHLE1BQU0sRUFBRSxDQUFDO2dCQUM3QyxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksd0NBQXdDLENBQUMsQ0FBQztZQUN2RSxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUM7UUFDVixDQUFDO2FBQU0sSUFBSSxRQUFRLElBQUksTUFBTSxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNwRCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksd0NBQXdDLENBQUMsQ0FBQztRQUN2RSxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsc0NBQXNDLENBQUM7QUFDbEUsTUFBTSxxQkFBcUIsR0FBRywwQkFBMEIsQ0FBQztBQUN6RCxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztBQUN2QyxNQUFNLGVBQWUsR0FBRyxrQ0FBa0MsQ0FBQztBQUUzRCxNQUFNLGNBQWMsR0FBRyxDQUFDLFFBQWlCLEVBQUUsWUFBb0IsRUFBVSxFQUFFO0lBQ3pFLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDdkUsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLGlDQUFpQyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsUUFBaUIsRUFBRSxZQUFvQixFQUFVLEVBQUU7SUFDckUsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDbEUsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLGlEQUFpRCxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUFHLENBQ3RCLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ3BCLFVBQWtCLEVBQ2xCLFVBQVUsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLEVBQzVCLEVBQUU7SUFDVixJQUNFLE9BQU8sUUFBUSxLQUFLLFFBQVE7UUFDNUIsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUMvQixNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN2QixRQUFRLEdBQUcsVUFBVTtRQUNyQixRQUFRLEdBQUcsVUFBVSxFQUNyQixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQ1QsR0FBRyxZQUFZLG1DQUFtQyxVQUFVLFFBQVEsVUFBVSxFQUFFLENBQ2pGLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQUcsQ0FBQyxRQUFpQixFQUFFLFlBQW9CLEVBQVcsRUFBRTtJQUN2RSxJQUFJLE9BQU8sUUFBUSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFDRCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDLENBQUM7QUFFRixNQUFNLFdBQVcsR0FBRyxDQUNsQixRQUFpQixFQUNqQixVQUErQixFQUMvQixZQUFvQixFQUNWLEVBQUU7SUFDWixJQUNFLE9BQU8sUUFBUSxLQUFLLFFBQVE7UUFDNUIsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQW9CLENBQUMsRUFDMUMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSxrQ0FBa0MsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxPQUFPLFFBQW9CLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxRQUFpQixFQUFVLEVBQUU7SUFDakQsT0FBTyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDaEQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLEVBQUUsUUFBaUIsRUFBbUIsRUFBRTtJQUN6RSxPQUFPLDRCQUE0QixDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNwRSxDQUFDLENBQUM7QUFFRixNQUFNLHNCQUFzQixHQUFHLENBQUksUUFBVyxFQUFFLFlBQW9CLEVBQUssRUFBRTtJQUN6RSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3RDLElBQ0UsT0FBTyxJQUFJLEtBQUssUUFBUTtRQUN4QixjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsOEJBQThCLENBQUMsdUJBQXVCLEVBQzdFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksc0NBQXNDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBQ0QsT0FBTyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsQ0FDdEIsUUFBaUIsRUFDakIsWUFBb0IsRUFDTyxFQUFFO0lBQzdCLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM5RCxPQUFPO1FBQ0wsT0FBTyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsWUFBWSxVQUFVLENBQUM7UUFDakUsUUFBUSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsWUFBWSxXQUFXLENBQUM7S0FDckUsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sb0JBQW9CLEdBQUcsQ0FDM0IsUUFBaUIsRUFDakIsWUFBb0IsRUFDNEIsRUFBRTtJQUNsRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELFVBQVUsQ0FDUixLQUFLLEVBQ0wsRUFBRSxFQUNGO1FBQ0UsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWixVQUFVO1FBQ1YsV0FBVztRQUNYLFdBQVc7UUFDWCxRQUFRO1FBQ1Isb0JBQW9CO0tBQ3JCLEVBQ0QsWUFBWSxDQUNiLENBQUM7SUFDRixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFDRCxPQUFPO1FBQ0wsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGlCQUFpQixDQUFDO1lBQ3pDLENBQUMsQ0FBQztnQkFDRSxlQUFlLEVBQUUsV0FBVyxDQUMxQixLQUFLLENBQUMsZUFBZSxFQUNyQixDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFVLEVBQzdDLEdBQUcsWUFBWSxrQkFBa0IsQ0FDbEM7YUFDRjtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDO1lBQ3BDLENBQUMsQ0FBQztnQkFDRSxVQUFVLEVBQUUsV0FBVyxDQUNyQixLQUFLLENBQUMsVUFBVSxFQUNoQixDQUFDLFdBQVcsRUFBRSxZQUFZLENBQVUsRUFDcEMsR0FBRyxZQUFZLGFBQWEsQ0FDN0I7YUFDRjtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDO1lBQ2xDLENBQUMsQ0FBQztnQkFDRSxRQUFRLEVBQUUsV0FBVyxDQUNuQixLQUFLLENBQUMsUUFBUSxFQUNkLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBVSxFQUNwQyxHQUFHLFlBQVksV0FBVyxDQUMzQjthQUNGO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNQLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7WUFDbkMsQ0FBQyxDQUFDO2dCQUNFLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUyxLQUFLLElBQUk7b0JBQ2pDLENBQUMsQ0FBQyxJQUFhO29CQUNmLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLHNDQUFzQyxDQUFDO2FBQ2hFO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNQLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7WUFDbkMsQ0FBQyxDQUFDO2dCQUNFLFNBQVMsRUFBRSxXQUFXLENBQ3BCLEtBQUssQ0FBQyxTQUFTLEVBQ2YsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFVLEVBQy9CLEdBQUcsWUFBWSxZQUFZLENBQzVCO2FBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQztZQUNoQyxDQUFDLENBQUM7Z0JBQ0UsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLEtBQUssSUFBSTtvQkFDM0IsQ0FBQyxDQUFDLElBQWE7b0JBQ2YsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksbUNBQW1DLENBQUM7YUFDN0Q7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLG9CQUFvQixDQUFDO1lBQzVDLENBQUMsQ0FBQztnQkFDRSxrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLEtBQUssSUFBSTtvQkFDbkQsQ0FBQyxDQUFDLElBQWE7b0JBQ2YsQ0FBQyxDQUFDLElBQUksQ0FDRixHQUFHLFlBQVksK0NBQStDLENBQy9EO2FBQ047WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ1IsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0scUJBQXFCLEdBQUcsQ0FDNUIsUUFBaUIsRUFDakIsWUFBb0IsRUFDK0IsRUFBRTtJQUNyRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELFVBQVUsQ0FDUixLQUFLLEVBQ0wsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQ25CLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxFQUN6QixZQUFZLENBQ2IsQ0FBQztJQUNGLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUUsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksNkJBQTZCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsT0FBTztRQUNMLElBQUksRUFBRSxlQUFlO1FBQ3JCLE9BQU8sRUFBRSxXQUFXLENBQ2xCLEtBQUssQ0FBQyxPQUFPLEVBQ2IsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQVUsRUFDdEQsR0FBRyxZQUFZLFVBQVUsQ0FDMUI7UUFDRCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDO1lBQ2xDLENBQUMsQ0FBQztnQkFDRSxRQUFRLEVBQUUsb0JBQW9CLENBQzVCLEtBQUssQ0FBQyxRQUFRLEVBQ2QsR0FBRyxZQUFZLFdBQVcsQ0FDM0I7YUFDRjtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDO1lBQ25DLENBQUMsQ0FBQztnQkFDRSxTQUFTLEVBQUUsb0JBQW9CLENBQzdCLEtBQUssQ0FBQyxTQUFTLEVBQ2YsR0FBRyxZQUFZLFlBQVksQ0FDNUI7YUFDRjtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDUixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxvQkFBb0IsR0FBRyxDQUMzQixRQUFpQixFQUNqQixZQUFvQixFQUNaLEVBQUU7SUFDVixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNwRSxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksK0NBQStDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBQ0QsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQy9DLE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSwwQ0FBMEMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDRCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDLENBQUM7QUFFRixNQUFNLHFCQUFxQixHQUFHLENBQUMsUUFBZ0IsRUFBVSxFQUFFO0lBQ3pELE1BQU0sS0FBSyxHQUEyQjtRQUNwQyxHQUFHLEVBQUUsS0FBSztRQUNWLEdBQUcsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNoQixHQUFHLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDaEIsR0FBRyxFQUFFLEtBQUssSUFBSSxFQUFFO0tBQ2pCLENBQUM7SUFDRixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEMsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNyRCxDQUFDLENBQUM7QUFFRixNQUFNLHdCQUF3QixHQUFHLENBQy9CLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ29DLEVBQUU7SUFDMUQsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNqRCxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUN4RCxNQUFNLE9BQU8sR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsWUFBWSxVQUFVLENBQUMsQ0FBQztJQUMvRSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUM7UUFDekMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxZQUFZLFFBQVEsQ0FBQztRQUM1RCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsSUFBSSxLQUFLLElBQUkscUJBQXFCLENBQUMsS0FBSyxDQUFDLEdBQUcscUJBQXFCLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUMzRSxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksaUNBQWlDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBQ0QsT0FBTztRQUNMLE9BQU87UUFDUCxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDNUIsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0seUJBQXlCLEdBQUcsQ0FDaEMsUUFBaUIsRUFDakIsWUFBb0IsRUFDb0MsRUFBRTtJQUMxRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELFVBQVUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUN2RSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7UUFDakQsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsR0FBRyxZQUFZLFlBQVksQ0FBQztRQUNwRSxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsWUFBWSxVQUFVLENBQUM7UUFDaEUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNkLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztRQUN6QyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLFlBQVksUUFBUSxDQUFDO1FBQzVELENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDZCxJQUNFLFNBQVM7UUFDVCxPQUFPO1FBQ1AscUJBQXFCLENBQUMsT0FBTyxDQUFDLEdBQUcscUJBQXFCLENBQUMsU0FBUyxDQUFDLEVBQ2pFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVkscUNBQXFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBQ0QsSUFDRSxTQUFTO1FBQ1QsS0FBSztRQUNMLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxHQUFHLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxFQUMvRCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLG1DQUFtQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUNELElBQ0UsT0FBTztRQUNQLEtBQUs7UUFDTCxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsRUFDN0QsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFDRCxPQUFPO1FBQ0wsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ25DLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMvQixHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDNUIsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsQ0FDekIsUUFBaUIsRUFDakIsWUFBb0IsRUFDWixFQUFFO0lBQ1YsSUFDRSxPQUFPLFFBQVEsS0FBSyxRQUFRO1FBQzVCLGNBQWMsQ0FBQyxRQUFRLENBQUM7WUFDdEIsOEJBQThCLENBQUMsMEJBQTBCO1FBQzNELENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUNyQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLHNDQUFzQyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0saUJBQWlCLEdBQUcsQ0FDeEIsUUFBaUIsRUFDakIsWUFBb0IsRUFDdUIsRUFBRTtJQUM3QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxzQkFBc0IsRUFBRSxDQUFDO1FBQzFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdkQsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsR0FBRyxZQUFZLE9BQU8sQ0FBQyxDQUFDO1FBQzVELFVBQVUsQ0FDUixJQUFJLEVBQ0osQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLENBQUMsRUFDbEUsQ0FBQyxjQUFjLENBQUMsRUFDaEIsR0FBRyxZQUFZLE9BQU8sQ0FDdkIsQ0FBQztRQUNGLE1BQU0sY0FBYyxHQUFHO1lBQ3JCLFFBQVEsRUFBRSxrQkFBa0IsQ0FDMUIsSUFBSSxDQUFDLFFBQVEsRUFDYixHQUFHLFlBQVksZ0JBQWdCLENBQ2hDO1lBQ0QsTUFBTSxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxZQUFZLGNBQWMsQ0FBQztZQUN0RSxNQUFNLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLFlBQVksY0FBYyxDQUFDO1lBQ3RFLFdBQVcsRUFBRSxrQkFBa0IsQ0FDN0IsSUFBSSxDQUFDLFdBQVcsRUFDaEIsR0FBRyxZQUFZLG1CQUFtQixDQUNuQztZQUNELGVBQWUsRUFBRSxrQkFBa0IsQ0FDakMsSUFBSSxDQUFDLGVBQWUsRUFDcEIsR0FBRyxZQUFZLHVCQUF1QixDQUN2QztZQUNELEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxjQUFjLENBQUM7Z0JBQ3JDLENBQUMsQ0FBQztvQkFDRSxZQUFZLEVBQUUsa0JBQWtCLENBQzlCLElBQUksQ0FBQyxZQUFZLEVBQ2pCLEdBQUcsWUFBWSxvQkFBb0IsQ0FDcEM7aUJBQ0Y7Z0JBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNSLENBQUM7UUFDRixJQUNFLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxFQUNsQyxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLCtCQUErQixDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELE9BQU8sRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO0lBQ2hFLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7UUFDMUIsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDN0YsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUMzQixLQUFLLENBQUMsVUFBVSxFQUNoQixHQUFHLFlBQVksYUFBYSxFQUM1Qiw4QkFBOEIsQ0FBQyxzQkFBc0IsQ0FDdEQsQ0FBQztRQUNGLElBQ0UsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQztZQUN2QyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUN6QixVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQ3hDLFVBQVUsS0FBSyxHQUFHLElBQUksVUFBVSxLQUFLLElBQUksQ0FDMUMsRUFDRCxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQ1QsR0FBRyxZQUFZLHlEQUF5RCxDQUN6RSxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSywwQkFBMEIsRUFBRSxDQUFDO1lBQ2hELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSx3QkFBd0IsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFDRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLE1BQU07WUFDWixVQUFVO1lBQ1YsTUFBTSxFQUFFLDBCQUEwQjtZQUNsQyxHQUFHLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxZQUFZLE1BQU0sRUFBRSxDQUFDLEVBQUUsYUFBYSxDQUFDO1lBQ3hFLEdBQUcsRUFBRSxlQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLFlBQVksTUFBTSxFQUFFLENBQUMsRUFBRSxhQUFhLENBQUM7WUFDeEUsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSztnQkFDaEQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJO2dCQUNaLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLDRCQUE0QixDQUFDO1NBQ3RELENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLHNCQUFzQixDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxrQ0FBa0MsR0FBRyxDQUN6QyxRQUFpQixFQUNqQixZQUFvQixFQUN3QyxFQUFFO0lBQzlELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLDZDQUE2QyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQy9ELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSxnREFBZ0QsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFDRCxPQUFPLEtBQW1FLENBQUM7QUFDN0UsQ0FBQyxDQUFDO0FBRUYsTUFBTSxnQ0FBZ0MsR0FBRyxDQUN2QyxRQUFpQixFQUNqQixZQUFvQixFQUNzQyxFQUFFO0lBQzVELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsVUFBVSxDQUNSLEtBQUssRUFDTCxFQUFFLEVBQ0YsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLGVBQWUsQ0FBQyxFQUN6QyxZQUFZLENBQ2IsQ0FBQztJQUNGLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLG9CQUFvQixDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUNELE9BQU87UUFDTCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDO1lBQ2hDLENBQUMsQ0FBQztnQkFDRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sS0FBSyxVQUFVO29CQUNqQyxDQUFDLENBQUMsVUFBbUI7b0JBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLDBCQUEwQixDQUFDO2FBQ3BEO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNQLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUM7WUFDcEMsQ0FBQyxDQUFDO2dCQUNFLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxLQUFLLFVBQVU7b0JBQ3pDLENBQUMsQ0FBQyxVQUFtQjtvQkFDckIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksOEJBQThCLENBQUM7YUFDeEQ7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsQ0FBQztZQUN2QyxDQUFDLENBQUM7Z0JBQ0UsYUFBYSxFQUFFLGVBQWUsQ0FDNUIsS0FBSyxDQUFDLGFBQWEsRUFDbkIsR0FBRyxZQUFZLGdCQUFnQixFQUMvQixDQUFDLEVBQ0QsT0FBTyxDQUNSO2FBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ1IsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sNkJBQTZCLEdBQUcsQ0FDcEMsUUFBaUIsRUFDakIsWUFBb0IsRUFDVyxFQUFFO0lBQ2pDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsVUFBVSxDQUNSLEtBQUssRUFDTDtRQUNFLElBQUk7UUFDSixNQUFNO1FBQ04sY0FBYztRQUNkLFlBQVk7UUFDWixlQUFlO1FBQ2YsVUFBVTtLQUNYLEVBQ0QsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLEVBQzFCLFlBQVksQ0FDYixDQUFDO0lBQ0YsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLGVBQWUsRUFBRSxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSw2QkFBNkIsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFDRCxPQUFPO1FBQ0wsRUFBRSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEdBQUcsWUFBWSxLQUFLLENBQUM7UUFDbEQsSUFBSSxFQUFFLGVBQWU7UUFDckIsWUFBWSxFQUFFLGNBQWMsQ0FDMUIsS0FBSyxDQUFDLFlBQVksRUFDbEIsR0FBRyxZQUFZLGVBQWUsQ0FDL0I7UUFDRCxVQUFVLEVBQUUsV0FBVyxDQUNyQixLQUFLLENBQUMsVUFBVSxFQUNoQixDQUFDLFVBQVUsRUFBRSxXQUFXLENBQVUsRUFDbEMsR0FBRyxZQUFZLGFBQWEsQ0FDN0I7UUFDRCxhQUFhLEVBQUUsV0FBVyxDQUN4QixLQUFLLENBQUMsYUFBYSxFQUNuQixDQUFDLFFBQVEsRUFBRSxRQUFRLENBQVUsRUFDN0IsR0FBRyxZQUFZLGdCQUFnQixDQUNoQztRQUNELFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsWUFBWSxXQUFXLENBQUM7UUFDdkUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQztZQUNsQyxDQUFDLENBQUM7Z0JBQ0UsUUFBUSxFQUFFLHdCQUF3QixDQUNoQyxLQUFLLENBQUMsUUFBUSxFQUNkLEdBQUcsWUFBWSxXQUFXLENBQzNCO2FBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQztZQUNwQyxDQUFDLENBQUM7Z0JBQ0UsVUFBVSxFQUFFLGdDQUFnQyxDQUMxQyxLQUFLLENBQUMsVUFBVSxFQUNoQixHQUFHLFlBQVksYUFBYSxDQUM3QjthQUNGO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUNSLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLHFCQUFxQixHQUFHLENBQzVCLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ1MsRUFBRTtJQUMvQixNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELGVBQWUsQ0FDYixLQUFLLEVBQ0w7UUFDRSxpQkFBaUI7UUFDakIsWUFBWTtRQUNaLFVBQVU7UUFDVixXQUFXO1FBQ1gsV0FBVztRQUNYLFFBQVE7UUFDUixvQkFBb0I7S0FDckIsRUFDRCxZQUFZLENBQ2IsQ0FBQztJQUNGLE9BQU87UUFDTCxlQUFlLEVBQUUsV0FBVyxDQUMxQixLQUFLLENBQUMsZUFBZSxFQUNyQixDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFVLEVBQzdDLEdBQUcsWUFBWSxrQkFBa0IsQ0FDbEM7UUFDRCxVQUFVLEVBQUUsV0FBVyxDQUNyQixLQUFLLENBQUMsVUFBVSxFQUNoQixDQUFDLFdBQVcsRUFBRSxZQUFZLENBQVUsRUFDcEMsR0FBRyxZQUFZLGFBQWEsQ0FDN0I7UUFDRCxRQUFRLEVBQUUsV0FBVyxDQUNuQixLQUFLLENBQUMsUUFBUSxFQUNkLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBVSxFQUNwQyxHQUFHLFlBQVksV0FBVyxDQUMzQjtRQUNELFNBQVMsRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxHQUFHLFlBQVksWUFBWSxDQUFDO1FBQ3BFLFNBQVMsRUFBRSxXQUFXLENBQ3BCLEtBQUssQ0FBQyxTQUFTLEVBQ2YsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsQ0FBVSxFQUN2QyxHQUFHLFlBQVksWUFBWSxDQUM1QjtRQUNELE1BQU0sRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLFlBQVksU0FBUyxDQUFDO1FBQzNELGtCQUFrQixFQUFFLFdBQVcsQ0FDN0IsS0FBSyxDQUFDLGtCQUFrQixFQUN4QixHQUFHLFlBQVkscUJBQXFCLENBQ3JDO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sbUJBQW1CLEdBQUcsQ0FDMUIsUUFBaUIsRUFDakIsWUFBb0IsRUFDeUIsRUFBRTtJQUMvQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3ZFLE9BQU87UUFDTCxRQUFRLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxZQUFZLFdBQVcsQ0FBQztRQUNoRSxNQUFNLEVBQUUsY0FBYyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsR0FBRyxZQUFZLFNBQVMsQ0FBQztRQUM5RCxNQUFNLEVBQUUsY0FBYyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsR0FBRyxZQUFZLFNBQVMsQ0FBQztLQUMvRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSw2QkFBNkIsR0FBRyxDQUNwQyxRQUFpQixFQUNqQixpQkFBMkMsRUFDM0MsWUFBb0IsRUFDdUMsRUFBRTtJQUM3RCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELFVBQVUsQ0FDUixLQUFLLEVBQ0w7UUFDRSxJQUFJO1FBQ0osV0FBVztRQUNYLFdBQVc7UUFDWCxlQUFlO1FBQ2YsTUFBTTtRQUNOLFlBQVk7UUFDWixvQkFBb0I7UUFDcEIsUUFBUTtRQUNSLFFBQVE7UUFDUixjQUFjO1FBQ2QsYUFBYTtRQUNiLFlBQVk7UUFDWixZQUFZO1FBQ1osMkJBQTJCO1FBQzNCLFVBQVU7UUFDVixZQUFZO0tBQ2IsRUFDRCxDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGVBQWUsQ0FBQyxFQUN2RCxZQUFZLENBQ2IsQ0FBQztJQUNGLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUUsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVksNkJBQTZCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLGlCQUFpQixFQUFFLENBQUM7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxZQUFZLG1CQUFtQixpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUNELE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FDaEMsS0FBSyxDQUFDLFVBQVUsRUFDaEIsR0FBRyxZQUFZLGFBQWEsRUFDNUIsQ0FBQyxDQUNGLENBQUM7SUFDRixNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FDeEMsS0FBSyxDQUFDLGtCQUFrQixFQUN4QixHQUFHLFlBQVkscUJBQXFCLEVBQ3BDLENBQUMsRUFDRCxVQUFVLENBQ1gsQ0FBQztJQUNGLElBQUksaUJBQWlCLEtBQUssT0FBTyxJQUFJLGtCQUFrQixLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ3ZFLE9BQU8sSUFBSSxDQUNULEdBQUcsWUFBWSxzREFBc0QsQ0FDdEUsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7UUFDakQsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsWUFBWSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDZCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7UUFDakQsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsWUFBWSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDZCxJQUFJLFNBQVMsSUFBSSxTQUFTLElBQUksU0FBUyxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBQ3BELE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSx1Q0FBdUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFDRCxPQUFPO1FBQ0wsRUFBRSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEdBQUcsWUFBWSxLQUFLLENBQUM7UUFDbEQsU0FBUyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsWUFBWSxZQUFZLENBQUM7UUFDdkUsU0FBUyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsWUFBWSxZQUFZLENBQUM7UUFDdkUsYUFBYSxFQUFFLFVBQVUsQ0FDdkIsS0FBSyxDQUFDLGFBQWEsRUFDbkIsR0FBRyxZQUFZLGdCQUFnQixDQUNoQztRQUNELElBQUksRUFBRSxlQUFlO1FBQ3JCLFVBQVU7UUFDVixrQkFBa0I7UUFDbEIsTUFBTSxFQUFFLGlCQUFpQjtRQUN6QixNQUFNLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsR0FBRyxZQUFZLFNBQVMsQ0FBQztRQUMvRCxZQUFZLEVBQUUscUJBQXFCLENBQ2pDLEtBQUssQ0FBQyxZQUFZLEVBQ2xCLEdBQUcsWUFBWSxlQUFlLENBQy9CO1FBQ0QsV0FBVyxFQUFFLGNBQWMsQ0FDekIsS0FBSyxDQUFDLFdBQVcsRUFDakIsR0FBRyxZQUFZLGNBQWMsQ0FDOUI7UUFDRCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDO1lBQ2xDLENBQUMsQ0FBQztnQkFDRSxRQUFRLEVBQUUseUJBQXlCLENBQ2pDLEtBQUssQ0FBQyxRQUFRLEVBQ2QsR0FBRyxZQUFZLFdBQVcsQ0FDM0I7YUFDRjtZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxVQUFVLEVBQUUsV0FBVyxDQUNyQixLQUFLLENBQUMsVUFBVSxFQUNoQixDQUFDLFVBQVUsRUFBRSxXQUFXLENBQVUsRUFDbEMsR0FBRyxZQUFZLGFBQWEsQ0FDN0I7UUFDRCxVQUFVLEVBQUUsbUJBQW1CLENBQzdCLEtBQUssQ0FBQyxVQUFVLEVBQ2hCLEdBQUcsWUFBWSxhQUFhLENBQzdCO1FBQ0QseUJBQXlCLEVBQUUsa0NBQWtDLENBQzNELEtBQUssQ0FBQyx5QkFBeUIsRUFDL0IsR0FBRyxZQUFZLDRCQUE0QixDQUM1QztRQUNELFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsWUFBWSxXQUFXLENBQUM7UUFDdkUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsWUFBWSxhQUFhLENBQUM7UUFDdkUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsQ0FBQztZQUN2QyxDQUFDLENBQUM7Z0JBQ0UsYUFBYSxFQUFFLGVBQWUsQ0FDNUIsS0FBSyxDQUFDLGFBQWEsRUFDbkIsR0FBRyxZQUFZLGdCQUFnQixFQUMvQixDQUFDLEVBQ0QsT0FBTyxDQUNSO2FBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1AsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ25DLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUN5QixDQUFDO0FBQ2pFLENBQUMsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUFHLENBQ3RCLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ1csRUFBRTtJQUNqQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELGVBQWUsQ0FDYixLQUFLLEVBQ0wsQ0FBQyxRQUFRLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxFQUNsRSxZQUFZLENBQ2IsQ0FBQztJQUNGLE9BQU87UUFDTCxNQUFNLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsR0FBRyxZQUFZLFNBQVMsQ0FBQztRQUMvRCxZQUFZLEVBQUUscUJBQXFCLENBQ2pDLEtBQUssQ0FBQyxZQUFZLEVBQ2xCLEdBQUcsWUFBWSxlQUFlLENBQy9CO1FBQ0QsT0FBTyxFQUFFLDZCQUE2QixDQUNwQyxLQUFLLENBQUMsT0FBTyxFQUNiLEdBQUcsWUFBWSxVQUFVLENBQzFCO1FBQ0QseUJBQXlCLEVBQUUsa0NBQWtDLENBQzNELEtBQUssQ0FBQyx5QkFBeUIsRUFDL0IsR0FBRyxZQUFZLDRCQUE0QixDQUM1QztLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLHVCQUF1QixHQUFHLENBQzlCLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ1csRUFBRTtJQUNqQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUN6RSxPQUFPO1FBQ0wsV0FBVyxFQUFFLGNBQWMsQ0FDekIsS0FBSyxDQUFDLFdBQVcsRUFDakIsR0FBRyxZQUFZLGNBQWMsQ0FDOUI7UUFDRCxlQUFlLEVBQUUsVUFBVSxDQUN6QixLQUFLLENBQUMsZUFBZSxFQUNyQixHQUFHLFlBQVksa0JBQWtCLENBQ2xDO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUFHLENBQ25ELFFBQWlCLEVBQ3dCLEVBQUU7SUFDM0MsT0FBTyxzQkFBc0IsQ0FDM0IsdUJBQXVCLENBQUMsUUFBUSxFQUFFLGlDQUFpQyxDQUFDLEVBQ3BFLGlDQUFpQyxDQUNsQyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSw4QkFBOEIsR0FBRyxDQUNyQyxRQUFpQixFQUNqQixZQUFvQixFQUMwQixFQUFFO0lBQ2hELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsZUFBZSxDQUNiLEtBQUssRUFDTDtRQUNFLFNBQVM7UUFDVCxnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLFlBQVk7S0FDYixFQUNELFlBQVksQ0FDYixDQUFDO0lBQ0YsT0FBTztRQUNMLE9BQU8sRUFBRSw2QkFBNkIsQ0FDcEMsS0FBSyxDQUFDLE9BQU8sRUFDYixPQUFPLEVBQ1AsR0FBRyxZQUFZLFVBQVUsQ0FDSztRQUNoQyxjQUFjLEVBQUUsZUFBZSxDQUM3QixLQUFLLENBQUMsY0FBYyxFQUNwQixHQUFHLFlBQVksaUJBQWlCLEVBQ2hDLENBQUMsQ0FDRjtRQUNELGNBQWMsRUFBRSxVQUFVLENBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQ3BCLEdBQUcsWUFBWSxpQkFBaUIsQ0FDakM7UUFDRCxVQUFVLEVBQUUsZUFBZSxDQUN6QixLQUFLLENBQUMsVUFBVSxFQUNoQixHQUFHLFlBQVksYUFBYSxFQUM1QixDQUFDLENBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSw0QkFBNEIsR0FBRyxDQUNuQyxRQUFpQixFQUNqQixZQUFvQixFQUN3QixFQUFFO0lBQzlDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsZUFBZSxDQUNiLEtBQUssRUFDTDtRQUNFLFNBQVM7UUFDVCxnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWixpQkFBaUI7S0FDbEIsRUFDRCxZQUFZLENBQ2IsQ0FBQztJQUNGLE9BQU87UUFDTCxPQUFPLEVBQUUsNkJBQTZCLENBQ3BDLEtBQUssQ0FBQyxPQUFPLEVBQ2IsT0FBTyxFQUNQLEdBQUcsWUFBWSxVQUFVLENBQ0s7UUFDaEMsY0FBYyxFQUFFLGVBQWUsQ0FDN0IsS0FBSyxDQUFDLGNBQWMsRUFDcEIsR0FBRyxZQUFZLGlCQUFpQixFQUNoQyxDQUFDLENBQ0Y7UUFDRCxjQUFjLEVBQUUsVUFBVSxDQUN4QixLQUFLLENBQUMsY0FBYyxFQUNwQixHQUFHLFlBQVksaUJBQWlCLENBQ2pDO1FBQ0QsVUFBVSxFQUFFLGVBQWUsQ0FDekIsS0FBSyxDQUFDLFVBQVUsRUFDaEIsR0FBRyxZQUFZLGFBQWEsRUFDNUIsQ0FBQyxDQUNGO1FBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUN0QyxLQUFLLENBQUMsZUFBZSxFQUNyQixHQUFHLFlBQVksa0JBQWtCLENBQ2xDO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sbUNBQW1DLEdBQUcsQ0FDMUMsV0FBeUQsRUFDRSxFQUFFLENBQUMsQ0FBQztJQUMvRCxPQUFPLEVBQUUsV0FBVyxDQUFDLE9BQU87SUFDNUIsY0FBYyxFQUFFLFdBQVcsQ0FBQyxjQUFjO0lBQzFDLFVBQVUsRUFBRSxXQUFXLENBQUMsVUFBVTtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLGlDQUFpQyxHQUFHLENBQ3hDLFdBQXVELEVBQ0UsRUFBRSxDQUFDLENBQUM7SUFDN0QsT0FBTyxFQUFFLFdBQVcsQ0FBQyxPQUFPO0lBQzVCLGNBQWMsRUFBRSxXQUFXLENBQUMsY0FBYztJQUMxQyxVQUFVLEVBQUUsV0FBVyxDQUFDLFVBQVU7SUFDbEMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxlQUFlO0NBQzdDLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLDhEQUE4RCxHQUFHLENBQzVFLFFBQWlCLEVBQ1QsRUFBRTtJQUNWLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FDdEIsUUFBUSxFQUNSLHlEQUF5RCxDQUMxRCxDQUFDO0lBQ0YsZUFBZSxDQUNiLEtBQUssRUFDTCxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsRUFDM0MseURBQXlELENBQzFELENBQUM7SUFDRixNQUFNLFVBQVUsR0FBRyw4QkFBOEIsQ0FBQztRQUNoRCxHQUFHLEtBQUs7UUFDUixjQUFjLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7S0FDL0IsRUFBRSx5REFBeUQsQ0FBQyxDQUFDO0lBQzlELE9BQU8sWUFBWSxDQUFDLG1DQUFtQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7QUFDdkUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNERBQTRELEdBQUcsQ0FDMUUsUUFBaUIsRUFDVCxFQUFFO0lBQ1YsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUN0QixRQUFRLEVBQ1IsdURBQXVELENBQ3hELENBQUM7SUFDRixlQUFlLENBQ2IsS0FBSyxFQUNMO1FBQ0UsU0FBUztRQUNULGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osaUJBQWlCO0tBQ2xCLEVBQ0QsdURBQXVELENBQ3hELENBQUM7SUFDRixNQUFNLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQztRQUM5QyxHQUFHLEtBQUs7UUFDUixjQUFjLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7S0FDL0IsRUFBRSx1REFBdUQsQ0FBQyxDQUFDO0lBQzVELE9BQU8sWUFBWSxDQUFDLGlDQUFpQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7QUFDckUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdURBQXVELEdBQUcsS0FBSyxFQUMxRSxRQUFpQixFQUNBLEVBQUU7SUFDbkIsT0FBTyw0QkFBNEIsQ0FDakMsOERBQThELENBQUMsUUFBUSxDQUFDLEVBQ3hFLElBQUksQ0FDTCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scURBQXFELEdBQUcsS0FBSyxFQUN4RSxRQUFpQixFQUNBLEVBQUU7SUFDbkIsT0FBTyw0QkFBNEIsQ0FDakMsNERBQTRELENBQUMsUUFBUSxDQUFDLEVBQ3RFLElBQUksQ0FDTCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sb0RBQW9ELEdBQUcsS0FBSyxFQUN2RSxRQUFpQixFQUNnRCxFQUFFO0lBQ25FLE1BQU0sVUFBVSxHQUFHLDhCQUE4QixDQUMvQyxRQUFRLEVBQ1IsMENBQTBDLENBQzNDLENBQUM7SUFDRixNQUFNLFlBQVksR0FBRyxNQUFNLHFCQUFxQixDQUM5QyxtQ0FBbUMsQ0FBQyxVQUFVLENBQUMsQ0FDaEQsQ0FBQztJQUNGLElBQUksVUFBVSxDQUFDLGNBQWMsS0FBSyxZQUFZLEVBQUUsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FDVCw4RkFBOEYsQ0FDL0YsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLHNCQUFzQixDQUMzQixVQUFVLEVBQ1YsMENBQTBDLENBQzNDLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrREFBa0QsR0FBRyxLQUFLLEVBQ3JFLFFBQWlCLEVBQzhDLEVBQUU7SUFDakUsTUFBTSxVQUFVLEdBQUcsNEJBQTRCLENBQzdDLFFBQVEsRUFDUix3Q0FBd0MsQ0FDekMsQ0FBQztJQUNGLE1BQU0sWUFBWSxHQUFHLE1BQU0scUJBQXFCLENBQzlDLGlDQUFpQyxDQUFDLFVBQVUsQ0FBQyxDQUM5QyxDQUFDO0lBQ0YsSUFBSSxVQUFVLENBQUMsY0FBYyxLQUFLLFlBQVksRUFBRSxDQUFDO1FBQy9DLE9BQU8sSUFBSSxDQUNULDRGQUE0RixDQUM3RixDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sc0JBQXNCLENBQzNCLFVBQVUsRUFDVix3Q0FBd0MsQ0FDekMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUFHLENBQ25ELFFBQWlCLEVBQ3dCLEVBQUU7SUFDM0MsT0FBTyxzQkFBc0IsQ0FDM0IsZUFBZSxDQUFDLFFBQVEsRUFBRSxpQ0FBaUMsQ0FBQyxFQUM1RCxpQ0FBaUMsQ0FDbEMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHLENBQ2pELFFBQWlCLEVBQ3NCLEVBQUU7SUFDekMsT0FBTyxzQkFBc0IsQ0FDM0IsNkJBQTZCLENBQzNCLFFBQVEsRUFDUixjQUFjLEVBQ2QsK0JBQStCLENBQ0QsRUFDaEMsK0JBQStCLENBQ2hDLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxDQUNqRCxRQUFpQixFQUNzQixFQUFFO0lBQ3pDLE9BQU8sc0JBQXNCLENBQzNCLDZCQUE2QixDQUMzQixRQUFRLEVBQ1IsT0FBTyxFQUNQLCtCQUErQixDQUNELEVBQ2hDLCtCQUErQixDQUNoQyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sK0NBQStDLEdBQUcsQ0FDN0QsUUFBaUIsRUFDVCxFQUFFO0lBQ1YsT0FBTyxZQUFZLENBQ2pCLDZCQUE2QixDQUMzQixRQUFRLEVBQ1IseUNBQXlDLENBQzFDLENBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtDQUErQyxHQUFHLEtBQUssRUFDbEUsUUFBaUIsRUFDQSxFQUFFO0lBQ25CLE9BQU8sNEJBQTRCLENBQ2pDLCtDQUErQyxDQUFDLFFBQVEsQ0FBQyxFQUN6RCxJQUFJLENBQ0wsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlDQUF5QyxHQUFHLENBQ3ZELFFBQWlCLEVBQ1QsRUFBRTtJQUNWLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsa0NBQWtDLENBQUMsQ0FBQztJQUN2RSxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQ3hCLEtBQUssQ0FBQyxNQUFNLEVBQ1osQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFVLEVBQ2xDLHlDQUF5QyxDQUMxQyxDQUFDO0lBQ0YsT0FBTyxZQUFZLENBQ2pCLDZCQUE2QixDQUMzQixLQUFLLEVBQ0wsTUFBTSxFQUNOLGtDQUFrQyxDQUNuQyxDQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx5Q0FBeUMsR0FBRyxLQUFLLEVBQzVELFFBQWlCLEVBQ0EsRUFBRTtJQUNuQixPQUFPLDRCQUE0QixDQUNqQyx5Q0FBeUMsQ0FBQyxRQUFRLENBQUMsRUFDbkQsSUFBSSxDQUNMLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDaEMsU0FBd0MsRUFDeEMsZ0JBQTZDLEVBQzdDLFlBQW9CLEVBQ0wsRUFBRTtJQUNqQixJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3hELElBQUksQ0FBQyxHQUFHLFlBQVkscURBQXFELENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDaEQsSUFBSSxDQUFDLEdBQUcsWUFBWSx5Q0FBeUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUNqRCxJQUFJLFFBQVEsRUFBRSxVQUFVLEtBQUssV0FBVyxFQUFFLENBQUM7UUFDekMsSUFBSSxDQUFDLEdBQUcsWUFBWSwwREFBMEQsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLDRCQUE0QixHQUFHLENBQ25DLFFBQWlCLEVBQ3NCLEVBQUU7SUFDekMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO0lBQy9FLGVBQWUsQ0FDYixLQUFLLEVBQ0w7UUFDRSxhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQixRQUFRO0tBQ1QsRUFDRCwwQ0FBMEMsQ0FDM0MsQ0FBQztJQUNGLE9BQU87UUFDTCxXQUFXLEVBQUUsY0FBYyxDQUN6QixLQUFLLENBQUMsV0FBVyxFQUNqQixzREFBc0QsQ0FDdkQ7UUFDRCxxQkFBcUIsRUFBRSw4QkFBOEIsQ0FDbkQsS0FBSyxDQUFDLHFCQUFxQixFQUMzQixnRUFBZ0UsQ0FDakU7UUFDRCxrQkFBa0IsRUFBRSxlQUFlLENBQ2pDLEtBQUssQ0FBQyxrQkFBa0IsRUFDeEIsNkRBQTZELEVBQzdELENBQUMsQ0FDRjtRQUNELE1BQU0sRUFBRSxlQUFlLENBQ3JCLEtBQUssQ0FBQyxNQUFNLEVBQ1osaURBQWlELENBQ2xEO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDZDQUE2QyxHQUFHLEtBQUssRUFDaEUsUUFBaUIsRUFDeUMsRUFBRTtJQUM1RCxNQUFNLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxRCxNQUFNLG9EQUFvRCxDQUN4RCxVQUFVLENBQUMscUJBQXFCLENBQ2pDLENBQUM7SUFDRixNQUFNLG9CQUFvQixDQUN4QixVQUFVLENBQUMsTUFBTSxFQUNqQixVQUFVLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUN4QyxpREFBaUQsQ0FDbEQsQ0FBQztJQUNGLE9BQU8sc0JBQXNCLENBQzNCLFVBQVUsRUFDViwwQ0FBMEMsQ0FDM0MsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdEQUFnRCxHQUFHLEtBQUssRUFDbkUsUUFBaUIsRUFDQSxFQUFFO0lBQ25CLE9BQU8sWUFBWSxDQUNqQixNQUFNLDZDQUE2QyxDQUFDLFFBQVEsQ0FBQyxDQUM5RCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQUcsS0FBSyxFQUNyRCxRQUFpQixFQUNBLEVBQUU7SUFDbkIsT0FBTyw0QkFBNEIsQ0FDakMsTUFBTSxnREFBZ0QsQ0FBQyxRQUFRLENBQUMsRUFDaEUsSUFBSSxDQUNMLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLGlCQUFpQixHQUFHLENBQ3hCLFFBQWlCLEVBQ2pCLFlBQW9CLEVBQ08sRUFBRTtJQUM3QixNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELFVBQVUsQ0FDUixLQUFLLEVBQ0wsQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxDQUFDLEVBQ3BEO1FBQ0UscUJBQXFCO1FBQ3JCLGNBQWM7UUFDZCxtQkFBbUI7UUFDbkIsb0JBQW9CO0tBQ3JCLEVBQ0QsWUFBWSxDQUNiLENBQUM7SUFDRixNQUFNLGFBQWEsR0FBRyxlQUFlLENBQ25DLEtBQUssQ0FBQyxhQUFhLEVBQ25CLEdBQUcsWUFBWSxnQkFBZ0IsRUFDL0IsQ0FBQyxDQUNGLENBQUM7SUFDRixNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FDeEMsS0FBSyxDQUFDLGtCQUFrQixFQUN4QixHQUFHLFlBQVkscUJBQXFCLEVBQ3BDLENBQUMsQ0FDRixDQUFDO0lBQ0YsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQztRQUNyRSxDQUFDLENBQUMsZUFBZSxDQUNiLEtBQUssQ0FBQyxtQkFBbUIsRUFDekIsR0FBRyxZQUFZLHNCQUFzQixFQUNyQyxDQUFDLENBQ0Y7UUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxHQUFHLFlBQVksZUFBZSxFQUFFLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxtQkFBbUIsQ0FBQztRQUNqRSxDQUFDLENBQUMsZUFBZSxDQUNiLEtBQUssQ0FBQyxpQkFBaUIsRUFDdkIsR0FBRyxZQUFZLG9CQUFvQixFQUNuQyxDQUFDLENBQ0Y7UUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxvQkFBb0IsQ0FBQztRQUNuRSxDQUFDLENBQUMsZUFBZSxDQUNiLEtBQUssQ0FBQyxrQkFBa0IsRUFDeEIsR0FBRyxZQUFZLHFCQUFxQixFQUNwQyxDQUFDLENBQ0Y7UUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsSUFBSSxZQUFZLEtBQUssU0FBUyxJQUFJLGFBQWEsR0FBRyxZQUFZLEVBQUUsQ0FBQztRQUMvRCxPQUFPLElBQUksQ0FBQyxHQUFHLFlBQVkscUNBQXFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBQ0QsSUFDRSxpQkFBaUIsS0FBSyxTQUFTO1FBQy9CLGtCQUFrQixHQUFHLGlCQUFpQixFQUN0QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQ1QsR0FBRyxZQUFZLCtDQUErQyxDQUMvRCxDQUFDO0lBQ0osQ0FBQztJQUNELElBQ0Usa0JBQWtCLEtBQUssU0FBUztRQUNoQyxtQkFBbUIsS0FBSyxTQUFTO1FBQ2pDLG1CQUFtQixHQUFHLGtCQUFrQixFQUN4QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQ1QsR0FBRyxZQUFZLGlEQUFpRCxDQUNqRSxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU87UUFDTCxhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLEdBQUcsQ0FBQyxtQkFBbUIsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3JFLEdBQUcsQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkQsR0FBRyxDQUFDLGlCQUFpQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDakUsR0FBRyxDQUFDLGtCQUFrQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkUsU0FBUyxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsWUFBWSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0tBQzVFLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLGNBQWMsR0FBRyxDQUNyQixRQUFpQixFQUNqQixPQUF1QixFQUN2QixZQUFvQixFQUNrRCxFQUFFO0lBQ3hFLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsZUFBZSxDQUNiLEtBQUssRUFDTCxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSx3QkFBd0IsQ0FBQyxFQUN4RSxZQUFZLENBQ2IsQ0FBQztJQUNGLE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FDNUIsS0FBSyxDQUFDLHNCQUFzQixFQUM1QixHQUFHLFlBQVkseUJBQXlCLEVBQ3hDLENBQUMsRUFDRCxDQUFDLENBQ0YsQ0FBQztJQUNGLE1BQU0sT0FBTyxHQUFHLE9BQU8sS0FBSyxLQUFLO1FBQy9CLENBQUMsQ0FBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQVc7UUFDL0IsQ0FBQyxDQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBVyxDQUFDO0lBQ3hDLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FDakQsV0FBVyxDQUNULFFBQVEsRUFDUixPQUFPLEVBQ1AsR0FBRyxZQUFZLDJCQUEyQixRQUFRLEdBQUcsQ0FDdEQsQ0FDRixDQUFDO0lBQ0YsSUFBSSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLEdBQUcsWUFBWSwwQ0FBMEMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxHQUFHLFlBQVksWUFBWSxDQUFDLENBQUM7SUFDNUUsSUFBSSxTQUFTLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUNULEdBQUcsWUFBWSwwREFBMEQsQ0FDMUUsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPO1FBQ0wsSUFBSSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsWUFBWSxPQUFPLENBQUM7UUFDeEQsT0FBTyxFQUFFLFVBQVUsQ0FDakIsS0FBSyxDQUFDLE9BQU8sRUFDYixHQUFHLFlBQVksVUFBVSxFQUN6Qiw4QkFBOEIsQ0FBQyx3QkFBd0IsQ0FDeEQ7UUFDRCxTQUFTO1FBQ1QsVUFBVSxFQUFFLGVBQWUsQ0FDekIsS0FBSyxDQUFDLFVBQVUsRUFDaEIsR0FBRyxZQUFZLGFBQWEsRUFDNUIsQ0FBQyxDQUNGO1FBQ0Qsc0JBQXNCLEVBQUUsT0FBTztLQUN3QyxDQUFDO0FBQzVFLENBQUMsQ0FBQztBQUVGLE1BQU0sc0JBQXNCLEdBQUcsQ0FDN0IsUUFBaUMsRUFDakMsWUFBb0IsRUFDWSxFQUFFO0lBQ2xDLE9BQU87UUFDTCxXQUFXLEVBQUUsY0FBYyxDQUN6QixRQUFRLENBQUMsV0FBVyxFQUNwQixHQUFHLFlBQVksY0FBYyxDQUM5QjtRQUNELGVBQWUsRUFBRSxVQUFVLENBQ3pCLFFBQVEsQ0FBQyxlQUFlLEVBQ3hCLEdBQUcsWUFBWSxrQkFBa0IsQ0FDbEM7UUFDRCx5QkFBeUIsRUFBRSxlQUFlLENBQ3hDLFFBQVEsQ0FBQyx5QkFBeUIsRUFDbEMsR0FBRyxZQUFZLDRCQUE0QixFQUMzQyxDQUFDLENBQ0Y7UUFDRCxVQUFVLEVBQUUsY0FBYyxDQUN4QixRQUFRLENBQUMsVUFBVSxFQUNuQixHQUFHLFlBQVksYUFBYSxDQUM3QjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FBRyxDQUNwRCxRQUFpQixFQUN5QixFQUFFO0lBQzVDLE1BQU0sU0FBUyxHQUFHLGtDQUFrQyxDQUFDO0lBQ3JELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUMsZUFBZSxDQUNiLEtBQUssRUFDTDtRQUNFLGFBQWE7UUFDYixpQkFBaUI7UUFDakIsMkJBQTJCO1FBQzNCLFlBQVk7S0FDYixFQUNELFNBQVMsQ0FDVixDQUFDO0lBQ0YsT0FBTyxzQkFBc0IsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDckYsQ0FBQyxDQUFDO0FBRUYsTUFBTSw0QkFBNEIsR0FBRyxDQUNuQyxRQUFpQixFQUM4QixFQUFFO0lBQ2pELE1BQU0sU0FBUyxHQUFHLG1EQUFtRCxDQUFDO0lBQ3RFLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUMsZUFBZSxDQUNiLEtBQUssRUFDTDtRQUNFLGFBQWE7UUFDYixpQkFBaUI7UUFDakIsMkJBQTJCO1FBQzNCLFlBQVk7UUFDWixzQkFBc0I7UUFDdEIsNkJBQTZCO1FBQzdCLGlCQUFpQjtRQUNqQixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQixtQkFBbUI7S0FDcEIsRUFDRCxTQUFTLENBQ1YsQ0FBQztJQUNGLE9BQU87UUFDTCxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxTQUFTLENBQUM7UUFDM0Msb0JBQW9CLEVBQUUsZUFBZSxDQUNuQyxLQUFLLENBQUMsb0JBQW9CLEVBQzFCLEdBQUcsU0FBUyx1QkFBdUIsRUFDbkMsQ0FBQyxDQUNGO1FBQ0QsMkJBQTJCLEVBQUUsVUFBVSxDQUNyQyxLQUFLLENBQUMsMkJBQTJCLEVBQ2pDLEdBQUcsU0FBUyw4QkFBOEIsQ0FDM0M7UUFDRCxlQUFlLEVBQUUsVUFBVSxDQUN6QixLQUFLLENBQUMsZUFBZSxFQUNyQixHQUFHLFNBQVMsa0JBQWtCLENBQy9CO1FBQ0Qsa0JBQWtCLEVBQUUsZUFBZSxDQUNqQyxLQUFLLENBQUMsa0JBQWtCLEVBQ3hCLEdBQUcsU0FBUyxxQkFBcUIsRUFDakMsQ0FBQyxDQUNGO1FBQ0Qsc0JBQXNCLEVBQUUsVUFBVSxDQUNoQyxLQUFLLENBQUMsc0JBQXNCLEVBQzVCLEdBQUcsU0FBUyx5QkFBeUIsQ0FDdEM7UUFDRCx3QkFBd0IsRUFBRSxlQUFlLENBQ3ZDLEtBQUssQ0FBQyx3QkFBd0IsRUFDOUIsR0FBRyxTQUFTLDJCQUEyQixFQUN2QyxDQUFDLENBQ0Y7UUFDRCxpQkFBaUIsRUFBRSxlQUFlLENBQ2hDLEtBQUssQ0FBQyxpQkFBaUIsRUFDdkIsR0FBRyxTQUFTLG9CQUFvQixFQUNoQyxDQUFDLENBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxtQ0FBbUMsR0FBRyxDQUMxQyxVQUF5RCxFQUNILEVBQUUsQ0FBQyxDQUFDO0lBQzFELFdBQVcsRUFBRSxVQUFVLENBQUMsV0FBVztJQUNuQyxlQUFlLEVBQUUsVUFBVSxDQUFDLGVBQWU7SUFDM0MseUJBQXlCLEVBQUUsVUFBVSxDQUFDLHlCQUF5QjtJQUMvRCxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVU7SUFDakMsb0JBQW9CLEVBQUUsVUFBVSxDQUFDLG9CQUFvQjtJQUNyRCwyQkFBMkIsRUFBRSxVQUFVLENBQUMsMkJBQTJCO0lBQ25FLGVBQWUsRUFBRSxVQUFVLENBQUMsZUFBZTtJQUMzQyxrQkFBa0IsRUFBRSxVQUFVLENBQUMsa0JBQWtCO0lBQ2pELHdCQUF3QixFQUFFLFVBQVUsQ0FBQyx3QkFBd0I7SUFDN0QsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLGlCQUFpQjtDQUNoRCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxrREFBa0QsR0FBRyxLQUFLLEVBQ3JFLFFBQWlCLEVBQ0EsRUFBRTtJQUNuQixNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLGtDQUFrQyxDQUFDLENBQUM7SUFDdkUsZUFBZSxDQUNiLEtBQUssRUFDTDtRQUNFLGFBQWE7UUFDYixpQkFBaUI7UUFDakIsMkJBQTJCO1FBQzNCLFlBQVk7UUFDWixzQkFBc0I7UUFDdEIsNkJBQTZCO1FBQzdCLGlCQUFpQjtRQUNqQixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLG1CQUFtQjtLQUNwQixFQUNELGtDQUFrQyxDQUNuQyxDQUFDO0lBQ0YsTUFBTSxPQUFPLEdBQUcsNEJBQTRCLENBQUM7UUFDM0MsR0FBRyxLQUFLO1FBQ1Isc0JBQXNCLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7S0FDdkMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxxQkFBcUIsQ0FBQyxtQ0FBbUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0FBQzdFLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFEQUFxRCxHQUFHLEtBQUssRUFDeEUsUUFBaUIsRUFDaUQsRUFBRTtJQUNwRSxNQUFNLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxRCxNQUFNLFlBQVksR0FBRyxNQUFNLHFCQUFxQixDQUM5QyxtQ0FBbUMsQ0FBQyxVQUFVLENBQUMsQ0FDaEQsQ0FBQztJQUNGLElBQUksVUFBVSxDQUFDLHNCQUFzQixLQUFLLFlBQVksRUFBRSxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUNULCtHQUErRyxDQUNoSCxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sc0JBQXNCLENBQzNCLFVBQVUsRUFDVixtREFBbUQsQ0FDcEQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sK0JBQStCLEdBQUcsQ0FDdEMsUUFBaUIsRUFDaUMsRUFBRTtJQUNwRCxNQUFNLFNBQVMsR0FBRyxzREFBc0QsQ0FBQztJQUN6RSxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLGVBQWUsQ0FDYixLQUFLLEVBQ0w7UUFDRSxhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLDJCQUEyQjtRQUMzQixZQUFZO1FBQ1osaUJBQWlCO1FBQ2pCLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsMkJBQTJCO1FBQzNCLDZCQUE2QjtRQUM3QixtQkFBbUI7S0FDcEIsRUFDRCxTQUFTLENBQ1YsQ0FBQztJQUNGLE9BQU87UUFDTCxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxTQUFTLENBQUM7UUFDM0MsZUFBZSxFQUFFLFVBQVUsQ0FDekIsS0FBSyxDQUFDLGVBQWUsRUFDckIsR0FBRyxTQUFTLGtCQUFrQixDQUMvQjtRQUNELG1CQUFtQixFQUFFLFVBQVUsQ0FDN0IsS0FBSyxDQUFDLG1CQUFtQixFQUN6QixHQUFHLFNBQVMsc0JBQXNCLENBQ25DO1FBQ0Qsa0JBQWtCLEVBQUUsZUFBZSxDQUNqQyxLQUFLLENBQUMsa0JBQWtCLEVBQ3hCLEdBQUcsU0FBUyxxQkFBcUIsRUFDakMsQ0FBQyxDQUNGO1FBQ0QseUJBQXlCLEVBQUUsVUFBVSxDQUNuQyxLQUFLLENBQUMseUJBQXlCLEVBQy9CLEdBQUcsU0FBUyw0QkFBNEIsQ0FDekM7UUFDRCwyQkFBMkIsRUFBRSxlQUFlLENBQzFDLEtBQUssQ0FBQywyQkFBMkIsRUFDakMsR0FBRyxTQUFTLDhCQUE4QixFQUMxQyxDQUFDLENBQ0Y7UUFDRCxpQkFBaUIsRUFBRSxlQUFlLENBQ2hDLEtBQUssQ0FBQyxpQkFBaUIsRUFDdkIsR0FBRyxTQUFTLG9CQUFvQixFQUNoQyxDQUFDLENBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxzQ0FBc0MsR0FBRyxDQUM3QyxVQUE0RCxFQUNILEVBQUUsQ0FBQyxDQUFDO0lBQzdELFdBQVcsRUFBRSxVQUFVLENBQUMsV0FBVztJQUNuQyxlQUFlLEVBQUUsVUFBVSxDQUFDLGVBQWU7SUFDM0MseUJBQXlCLEVBQUUsVUFBVSxDQUFDLHlCQUF5QjtJQUMvRCxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVU7SUFDakMsZUFBZSxFQUFFLFVBQVUsQ0FBQyxlQUFlO0lBQzNDLG1CQUFtQixFQUFFLFVBQVUsQ0FBQyxtQkFBbUI7SUFDbkQsa0JBQWtCLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtJQUNqRCwyQkFBMkIsRUFBRSxVQUFVLENBQUMsMkJBQTJCO0lBQ25FLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxpQkFBaUI7Q0FDaEQsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0scURBQXFELEdBQUcsS0FBSyxFQUN4RSxRQUFpQixFQUNBLEVBQUU7SUFDbkIsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxxQ0FBcUMsQ0FBQyxDQUFDO0lBQzFFLGVBQWUsQ0FDYixLQUFLLEVBQ0w7UUFDRSxhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLDJCQUEyQjtRQUMzQixZQUFZO1FBQ1osaUJBQWlCO1FBQ2pCLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsNkJBQTZCO1FBQzdCLG1CQUFtQjtLQUNwQixFQUNELHFDQUFxQyxDQUN0QyxDQUFDO0lBQ0YsTUFBTSxPQUFPLEdBQUcsK0JBQStCLENBQUM7UUFDOUMsR0FBRyxLQUFLO1FBQ1IseUJBQXlCLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7S0FDMUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxxQkFBcUIsQ0FBQyxzQ0FBc0MsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0FBQ2hGLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdEQUF3RCxHQUFHLEtBQUssRUFDM0UsUUFBaUIsRUFDb0QsRUFBRTtJQUN2RSxNQUFNLFVBQVUsR0FBRywrQkFBK0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3RCxNQUFNLFlBQVksR0FBRyxNQUFNLHFCQUFxQixDQUM5QyxzQ0FBc0MsQ0FBQyxVQUFVLENBQUMsQ0FDbkQsQ0FBQztJQUNGLElBQUksVUFBVSxDQUFDLHlCQUF5QixLQUFLLFlBQVksRUFBRSxDQUFDO1FBQzFELE9BQU8sSUFBSSxDQUNULHFIQUFxSCxDQUN0SCxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sc0JBQXNCLENBQzNCLFVBQVUsRUFDVixzREFBc0QsQ0FDdkQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sd0JBQXdCLEdBQUcsS0FBSyxFQUNwQyxRQUFpQixFQUNqQixZQUFvQixFQUMrQixFQUFFO0lBQ3JELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsZUFBZSxDQUNiLEtBQUssRUFDTCxDQUFDLFNBQVMsRUFBRSwyQkFBMkIsRUFBRSxZQUFZLENBQUMsRUFDdEQsWUFBWSxDQUNiLENBQUM7SUFDRixNQUFNLE9BQU8sR0FBRyxNQUFNLHFEQUFxRCxDQUN6RSxLQUFLLENBQUMsT0FBTyxDQUNkLENBQUM7SUFDRixNQUFNLHlCQUF5QixHQUFHLGVBQWUsQ0FDL0MsS0FBSyxDQUFDLHlCQUF5QixFQUMvQixHQUFHLFlBQVksNEJBQTRCLEVBQzNDLENBQUMsQ0FDRixDQUFDO0lBQ0YsSUFBSSx5QkFBeUIsSUFBSSxPQUFPLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVksZ0VBQWdFLENBQ2hGLENBQUM7SUFDSixDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUNoQyxLQUFLLENBQUMsVUFBVSxFQUNoQixHQUFHLFlBQVksYUFBYSxFQUM1QixPQUFPLENBQUMsaUJBQWlCLENBQzFCLENBQUM7SUFDRixPQUFPLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLFVBQVUsRUFBRSxDQUFDO0FBQzVELENBQUMsQ0FBQztBQUVGLE1BQU0sMkJBQTJCLEdBQUcsS0FBSyxFQUN2QyxRQUFpQixFQUNqQixZQUFvQixFQUNrQyxFQUFFO0lBQ3hELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakQsZUFBZSxDQUNiLEtBQUssRUFDTCxDQUFDLFNBQVMsRUFBRSwyQkFBMkIsRUFBRSxZQUFZLENBQUMsRUFDdEQsWUFBWSxDQUNiLENBQUM7SUFDRixNQUFNLE9BQU8sR0FDWCxNQUFNLHdEQUF3RCxDQUM1RCxLQUFLLENBQUMsT0FBTyxDQUNkLENBQUM7SUFDSixNQUFNLHlCQUF5QixHQUFHLGVBQWUsQ0FDL0MsS0FBSyxDQUFDLHlCQUF5QixFQUMvQixHQUFHLFlBQVksNEJBQTRCLEVBQzNDLENBQUMsQ0FDRixDQUFDO0lBQ0YsSUFBSSx5QkFBeUIsSUFBSSxPQUFPLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVksZ0VBQWdFLENBQ2hGLENBQUM7SUFDSixDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUNoQyxLQUFLLENBQUMsVUFBVSxFQUNoQixHQUFHLFlBQVksYUFBYSxFQUM1QixPQUFPLENBQUMsaUJBQWlCLENBQzFCLENBQUM7SUFDRixPQUFPLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLFVBQVUsRUFBRSxDQUFDO0FBQzVELENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdEQUFnRCxHQUFHLEtBQUssRUFDbkUsUUFBaUIsRUFDNEMsRUFBRTtJQUMvRCxPQUFPLHNCQUFzQixDQUMzQixNQUFNLHdCQUF3QixDQUM1QixRQUFRLEVBQ1IsNkNBQTZDLENBQzlDLEVBQ0QsNkNBQTZDLENBQzlDLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtREFBbUQsR0FBRyxLQUFLLEVBQ3RFLFFBQWlCLEVBQytDLEVBQUU7SUFDbEUsT0FBTyxzQkFBc0IsQ0FDM0IsTUFBTSwyQkFBMkIsQ0FDL0IsUUFBUSxFQUNSLGdEQUFnRCxDQUNqRCxFQUNELGdEQUFnRCxDQUNqRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkNBQTJDLEdBQUcsQ0FDekQsUUFBaUIsRUFDOEIsRUFBRTtJQUNqRCxNQUFNLFNBQVMsR0FBRyx3Q0FBd0MsQ0FBQztJQUMzRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLGVBQWUsQ0FDYixLQUFLLEVBQ0w7UUFDRSxhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLDJCQUEyQjtRQUMzQixZQUFZO1FBQ1osUUFBUTtLQUNULEVBQ0QsU0FBUyxDQUNWLENBQUM7SUFDRixPQUFPLHNCQUFzQixDQUFDO1FBQzVCLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQztRQUMzQyxNQUFNLEVBQUUsVUFBVSxDQUNoQixLQUFLLENBQUMsTUFBTSxFQUNaLEdBQUcsU0FBUyxTQUFTLEVBQ3JCLDhCQUE4QixDQUFDLHVCQUF1QixDQUN2RDtLQUNGLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDaEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNENBQTRDLEdBQUcsQ0FDMUQsUUFBaUIsRUFDK0IsRUFBRTtJQUNsRCxNQUFNLFNBQVMsR0FBRyx5Q0FBeUMsQ0FBQztJQUM1RCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLGVBQWUsQ0FDYixLQUFLLEVBQ0w7UUFDRSxhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLDJCQUEyQjtRQUMzQixZQUFZO1FBQ1osUUFBUTtLQUNULEVBQ0QsU0FBUyxDQUNWLENBQUM7SUFDRixPQUFPLHNCQUFzQixDQUFDO1FBQzVCLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQztRQUMzQyxNQUFNLEVBQUUsV0FBVyxDQUNqQixLQUFLLENBQUMsTUFBTSxFQUNaLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLENBQVUsRUFDMUMsR0FBRyxTQUFTLFNBQVMsQ0FDdEI7S0FDRixFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDZDQUE2QyxHQUFHLENBQzNELFFBQWlCLEVBQ2dDLEVBQUU7SUFDbkQsTUFBTSxTQUFTLEdBQUcsMENBQTBDLENBQUM7SUFDN0QsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5QyxlQUFlLENBQ2IsS0FBSyxFQUNMO1FBQ0UsYUFBYTtRQUNiLGlCQUFpQjtRQUNqQiwyQkFBMkI7UUFDM0IsWUFBWTtLQUNiLEVBQ0QsU0FBUyxDQUNWLENBQUM7SUFDRixPQUFPLHNCQUFzQixDQUFDLHNCQUFzQixDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUNyRixDQUFDLENBQUM7QUFFRixNQUFNLCtCQUErQixHQUFHLENBQ3RDLFVBQXVDLEVBQ3ZDLFNBQXdDLEVBQ3hDLFlBQW9CLEVBQ2QsRUFBRTtJQUNSLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO0lBQ2pELE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDN0MsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNiLEtBQUssTUFBTSxHQUFHLElBQUk7WUFDaEIsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWixVQUFVO1lBQ1YsV0FBVztTQUNILEVBQUUsQ0FBQztZQUNYLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQyxJQUFJLFdBQVcsS0FBSyxTQUFTLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFdBQVcsRUFBRSxDQUFDO2dCQUNuRSxJQUFJLENBQUMsR0FBRyxZQUFZLGlCQUFpQixHQUFHLHVDQUF1QyxDQUFDLENBQUM7WUFDbkYsQ0FBQztRQUNILENBQUM7UUFDRCxLQUFLLE1BQU0sR0FBRyxJQUFJO1lBQ2hCLFdBQVc7WUFDWCxRQUFRO1lBQ1Isb0JBQW9CO1NBQ1osRUFBRSxDQUFDO1lBQ1gsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxJQUFJLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDekQsSUFBSSxDQUFDLEdBQUcsWUFBWSxpQkFBaUIsR0FBRyx1Q0FBdUMsQ0FBQyxDQUFDO1lBQ25GLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxFQUNuQyxZQUF5QyxFQUN6QyxTQUFzQyxFQUN0QyxTQUF3QyxFQUN4QyxZQUFvQixFQUNMLEVBQUU7SUFDakIsSUFDRSxZQUFZLENBQUMsRUFBRSxLQUFLLFNBQVMsQ0FBQyxFQUFFO1FBQ2hDLFlBQVksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLFNBQVM7UUFDOUMsWUFBWSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsU0FBUyxFQUM5QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsWUFBWSx1REFBdUQsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFDRCxJQUFJLFlBQVksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNwRCxJQUFJLENBQUMsR0FBRyxZQUFZLHlDQUF5QyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUNELE1BQU0sbUJBQW1CLEdBQ3ZCLE1BQU0sK0NBQStDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNFLElBQUksWUFBWSxDQUFDLGFBQWEsS0FBSyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3ZELElBQUksQ0FBQyxHQUFHLFlBQVksOENBQThDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBQ0QsSUFDRSxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFlBQVksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDO1FBQ3BFLFlBQVksQ0FBQyx5QkFBeUIsS0FBSyxTQUFTLENBQUMseUJBQXlCO1FBQzlFLFlBQVksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1lBQ2pDLFlBQVksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUMxQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsWUFBWSx1REFBdUQsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFDRCxJQUFJLFlBQVksQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM3RCxJQUFJLENBQUMsR0FBRyxZQUFZLHNEQUFzRCxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELElBQUksWUFBWSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLEdBQUcsWUFBWSxtREFBbUQsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDRCxJQUFJLFlBQVksQ0FBQyxVQUFVLElBQUksU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxHQUFHLFlBQVksZ0RBQWdELENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQy9CLElBQ0UsWUFBWSxDQUFDLFFBQVEsRUFBRSxTQUFTLEtBQUssU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTztZQUN2RSxZQUFZLENBQUMsUUFBUSxFQUFFLEtBQUssS0FBSyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQ2pFLENBQUM7WUFDRCxJQUFJLENBQUMsR0FBRyxZQUFZLG1EQUFtRCxDQUFDLENBQUM7UUFDM0UsQ0FBQztJQUNILENBQUM7SUFDRCxJQUNFLFNBQVMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE1BQU0sS0FBSyxVQUFVO1FBQ25ELFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxLQUFLLElBQUksRUFDekMsQ0FBQztRQUNELElBQUksQ0FBQyxHQUFHLFlBQVkseURBQXlELENBQUMsQ0FBQztJQUNqRixDQUFDO0lBQ0QsSUFDRSxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxLQUFLLEtBQUssU0FBUztRQUMvQyxZQUFZLENBQUMsWUFBWSxDQUFDLFNBQVMsS0FBSyxJQUFJLEVBQzVDLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxZQUFZLDhEQUE4RCxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUNELElBQ0UsU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxLQUFLLFVBQVU7UUFDdkQsWUFBWSxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQ2hDLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxZQUFZLGdEQUFnRCxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUNELElBQ0UsU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsYUFBYSxLQUFLLFNBQVM7UUFDekQsQ0FBQyxZQUFZLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQztZQUMvQixTQUFTLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQzVDLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxZQUFZLG1EQUFtRCxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUNELCtCQUErQixDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFDekUsQ0FBQyxDQUFDO0FBRUYsTUFBTSw0QkFBNEIsR0FBRyxDQUNuQyxTQUFzQyxFQUN0QyxZQUF5QyxFQUN6QyxZQUFvQixFQUNkLEVBQUU7SUFDUixNQUFNLGFBQWEsR0FBbUQ7UUFDcEUsSUFBSTtRQUNKLFdBQVc7UUFDWCxXQUFXO1FBQ1gsZUFBZTtRQUNmLE1BQU07UUFDTixZQUFZO1FBQ1osUUFBUTtRQUNSLGNBQWM7UUFDZCxhQUFhO1FBQ2IsVUFBVTtRQUNWLFlBQVk7UUFDWixZQUFZO1FBQ1osMkJBQTJCO1FBQzNCLFVBQVU7UUFDVixZQUFZO1FBQ1osZUFBZTtRQUNmLFdBQVc7S0FDWixDQUFDO0lBQ0YsS0FBSyxNQUFNLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNoQyxJQUFJLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssWUFBWSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3JGLElBQUksQ0FBQyxHQUFHLFlBQVksSUFBSSxHQUFHLGtDQUFrQyxDQUFDLENBQUM7UUFDakUsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLHVCQUF1QixHQUFHLEtBQUssRUFDbkMsUUFBaUIsRUFDakIsWUFBb0IsRUFDc0IsRUFBRTtJQUM1QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2pELGVBQWUsQ0FDYixLQUFLLEVBQ0wsQ0FBQyxxQkFBcUIsRUFBRSxnQkFBZ0IsQ0FBQyxFQUN6QyxZQUFZLENBQ2IsQ0FBQztJQUNGLE1BQU0sbUJBQW1CLEdBQ3ZCLE1BQU0sb0RBQW9ELENBQ3hELEtBQUssQ0FBQyxtQkFBbUIsQ0FDMUIsQ0FBQztJQUNKLE1BQU0sY0FBYyxHQUNsQixNQUFNLGtEQUFrRCxDQUN0RCxLQUFLLENBQUMsY0FBYyxDQUNyQixDQUFDO0lBQ0osSUFDRSxjQUFjLENBQUMsY0FBYyxJQUFJLG1CQUFtQixDQUFDLGNBQWM7UUFDbkUsY0FBYyxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLEVBQzFELENBQUM7UUFDRCxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVksNkRBQTZELENBQzdFLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFDRSxZQUFZLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztRQUNwQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLEVBQ3pDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FDVCxHQUFHLFlBQVksMkVBQTJFLENBQzNGLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTztRQUNMLG1CQUFtQjtRQUNuQixjQUFjO0tBQ2YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVDQUF1QyxHQUFHLEtBQUssRUFDMUQsUUFBaUIsRUFDbUMsRUFBRTtJQUN0RCxPQUFPLHNCQUFzQixDQUMzQixNQUFNLHVCQUF1QixDQUFDLFFBQVEsRUFBRSxtQ0FBbUMsQ0FBQyxFQUM1RSxtQ0FBbUMsQ0FDcEMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sbUJBQW1CLEdBQUcsQ0FDMUIsUUFBd0MsRUFDeEMsY0FBc0IsRUFDdEIsa0JBQTBCLEVBQzFCLG9CQUE0QixFQUM1QixZQUFvQixFQUNkLEVBQUU7SUFDUixJQUNFLFFBQVEsQ0FBQyxXQUFXLEtBQUssY0FBYztRQUN2QyxRQUFRLENBQUMsZUFBZSxLQUFLLGtCQUFrQixFQUMvQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsWUFBWSx3Q0FBd0MsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyx5QkFBeUIsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1FBQy9ELElBQUksQ0FBQyxHQUFHLFlBQVkseURBQXlELENBQUMsQ0FBQztJQUNqRixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxzQkFBc0IsR0FBRztJQUM3QixhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixXQUFXO0lBQ1gsV0FBVztJQUNYLFdBQVc7SUFDWCxvQkFBb0I7SUFDcEIsUUFBUTtJQUNSLFFBQVE7SUFDUixXQUFXO0lBQ1gsV0FBVztJQUNYLE9BQU87SUFDUCxvQkFBb0I7SUFDcEIsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJQUNwQixtQ0FBbUM7SUFDbkMsV0FBVztJQUNYLGdCQUFnQjtDQUNSLENBQUM7QUFFWCxNQUFNLGdCQUFnQixHQUFHLENBQ3ZCLFNBQWtDLEVBQ2xDLE1BQWMsRUFDZCxXQUFvQixFQUNwQixZQUFvQixFQUNkLEVBQUU7SUFDUixJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsR0FBRyxZQUFZLElBQUksTUFBTSxZQUFZLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUFHLEtBQUssRUFDeEQsUUFBaUIsRUFDaUMsRUFBRTtJQUNwRCxNQUFNLFNBQVMsR0FBRyxpQ0FBaUMsQ0FBQztJQUNwRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FDdkIsS0FBSyxDQUFDLEtBQUssRUFDWDtRQUNFLFdBQVc7UUFDWCxjQUFjO1FBQ2QseUJBQXlCO1FBQ3pCLFlBQVk7UUFDWixZQUFZO1FBQ1osY0FBYztRQUNkLGdCQUFnQjtRQUNoQixVQUFVO1FBQ1YsVUFBVTtRQUNWLFNBQVM7S0FDRCxFQUNWLEdBQUcsU0FBUyxRQUFRLENBQ3JCLENBQUM7SUFDRixNQUFNLGVBQWUsR0FBRyxXQUFXLENBQ2pDLEtBQUssQ0FBQyxlQUFlLEVBQ3JCLEdBQUcsU0FBUyxrQkFBa0IsQ0FDL0IsQ0FBQztJQUNGLE1BQU0sYUFBYSxHQUFhLEVBQUUsQ0FBQztJQUNuQyxNQUFNLGFBQWEsR0FBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLElBQUksS0FBSyxLQUFLLFVBQVUsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDaEQsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBQ0QsSUFDRSxDQUFDLHlCQUF5QixFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsY0FBYztRQUNwRSxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQy9DLENBQUM7UUFDRCxhQUFhLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFDNUQsQ0FBQztTQUFNLElBQ0wsQ0FBQyxLQUFLLEtBQUssVUFBVSxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUM7UUFDN0MsZUFBZSxFQUNmLENBQUM7UUFDRCxhQUFhLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUNELElBQ0UsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLENBQUM7U0FDdkUsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUNsQixDQUFDO1FBQ0QsYUFBYSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ2hELENBQUM7U0FBTSxJQUNMLENBQUMsS0FBSyxLQUFLLFVBQVUsSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDO1FBQzdDLGVBQWUsRUFDZixDQUFDO1FBQ0QsYUFBYSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDRCxJQUFJLEtBQUssS0FBSyxnQkFBZ0IsSUFBSSxLQUFLLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDdkQsYUFBYSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFDRCxJQUNFLEtBQUssS0FBSyxjQUFjO1FBQ3hCLEtBQUssS0FBSyxnQkFBZ0I7UUFDMUIsS0FBSyxLQUFLLFVBQVU7UUFDcEIsS0FBSyxLQUFLLFNBQVMsRUFDbkIsQ0FBQztRQUNELGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLHFCQUFxQixDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUNELElBQUksS0FBSyxLQUFLLFVBQVUsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDaEQsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsVUFBVSxDQUNSLEtBQUssRUFDTCxDQUFDLEdBQUcsc0JBQXNCLEVBQUUsR0FBRyxhQUFhLENBQUMsRUFDN0MsYUFBYSxFQUNiLFNBQVMsQ0FDVixDQUFDO0lBRUYsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxTQUFTLGNBQWMsQ0FBQyxDQUFDO0lBQ2xGLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FDaEMsS0FBSyxDQUFDLGVBQWUsRUFDckIsR0FBRyxTQUFTLGtCQUFrQixDQUMvQixDQUFDO0lBQ0YsTUFBTSxpQkFBaUIsR0FBRyxlQUFlLENBQ3ZDLEtBQUssQ0FBQyxpQkFBaUIsRUFDdkIsR0FBRyxTQUFTLG9CQUFvQixFQUNoQyxDQUFDLENBQ0YsQ0FBQztJQUNGLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsU0FBUyxZQUFZLENBQUMsQ0FBQztJQUM1RSxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxHQUFHLFNBQVMsWUFBWSxDQUFDLENBQUM7SUFDNUUsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsR0FBRyxTQUFTLFlBQVksQ0FBQyxDQUFDO0lBQzVFLE1BQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUN4QyxLQUFLLENBQUMsa0JBQWtCLEVBQ3hCLEdBQUcsU0FBUyxxQkFBcUIsRUFDakMsQ0FBQyxDQUNGLENBQUM7SUFDRixNQUFNLE1BQU0sR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLFNBQVMsU0FBUyxDQUFDLENBQUM7SUFDcEUsTUFBTSxNQUFNLEdBQUcsTUFBTSx1QkFBdUIsQ0FDMUMsS0FBSyxDQUFDLE1BQU0sRUFDWixHQUFHLFNBQVMsU0FBUyxDQUN0QixDQUFDO0lBQ0YsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQztJQUV6RCxJQUNFLFNBQVMsS0FBSyxhQUFhLENBQUMsRUFBRTtRQUM5QixTQUFTLEtBQUssYUFBYSxDQUFDLFNBQVM7UUFDckMsU0FBUyxLQUFLLGFBQWEsQ0FBQyxTQUFTO1FBQ3JDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLFNBQVMsRUFDL0IsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsU0FBUyxpREFBaUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFDRCxNQUFNLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsR0FBRyxTQUFTLFNBQVMsQ0FBQyxDQUFDO0lBQ3pFLE1BQU0seUJBQXlCLEdBQUcsTUFBTSxrQ0FBa0MsQ0FBQztRQUN6RSxXQUFXO1FBQ1gscUJBQXFCLEVBQUUsTUFBTSxDQUFDLG1CQUFtQjtRQUNqRCxrQkFBa0I7UUFDbEIsTUFBTTtLQUNQLENBQUMsQ0FBQztJQUNILElBQ0UsZUFBZSxLQUFLLHlCQUF5QjtRQUM3QyxNQUFNLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxXQUFXLEtBQUssV0FBVztRQUNqRSxNQUFNLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxlQUFlLEtBQUssZUFBZSxFQUN6RSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQ1QsR0FBRyxTQUFTLHVFQUF1RSxDQUNwRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsU0FBUyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEYsTUFBTSxTQUFTLEdBQUcsZUFBZSxDQUMvQixLQUFLLENBQUMsU0FBUyxFQUNmLEdBQUcsU0FBUyxZQUFZLEVBQ3hCLFNBQVMsQ0FDVixDQUFDO0lBQ0YsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsU0FBUyxXQUFXLENBQUM7UUFDNUQsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNkLElBQUksUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxTQUFTLElBQUksUUFBUSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUMsRUFBRSxDQUFDO1FBQ25GLE9BQU8sSUFBSSxDQUFDLEdBQUcsU0FBUyx1REFBdUQsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxNQUFNLGFBQWEsR0FBRztRQUNwQixXQUFXO1FBQ1gsY0FBYztRQUNkLHlCQUF5QjtRQUN6QixZQUFZO1FBQ1osVUFBVTtLQUNYLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztRQUN6QyxDQUFDLENBQUMsY0FBYyxDQUNaLEtBQUssQ0FBQyxLQUFLLEVBQ1gsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFDOUIsR0FBRyxTQUFTLFFBQVEsQ0FDckI7UUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2QsSUFBSSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDNUUsT0FBTyxJQUFJLENBQUMsR0FBRyxTQUFTLHFEQUFxRCxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELE1BQU0sZUFBZSxHQUFHO1FBQ3RCLFNBQVMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDO1FBQ3hELFlBQVksRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDO1FBQzNELHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsdUJBQXVCO1NBQzVEO1FBQ0QsVUFBVSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUM7UUFDeEQsVUFBVSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLENBQUM7UUFDOUQsWUFBWSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQztRQUN6RSxjQUFjLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUMvRCxRQUFRLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUMxRCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQztRQUNqRSxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGFBQWEsQ0FBQztLQUNoRSxDQUFDO0lBQ1gsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDdEUsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNuRSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsb0JBQW9CLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLGdCQUFnQixDQUNkLEtBQUssRUFDTCxtQ0FBbUMsRUFDbkMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUNYLFNBQVMsQ0FDVixDQUFDO0lBQ0YsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0QsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUVsRSxJQUFJLGdCQUF5RCxDQUFDO0lBQzlELElBQUksZUFBbUMsQ0FBQztJQUN4QyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztRQUM3QyxnQkFBZ0IsR0FBRyw2QkFBNkIsQ0FDOUMsS0FBSyxDQUFDLGdCQUFnQixFQUN0QixjQUFjLEVBQ2QsR0FBRyxTQUFTLG1CQUFtQixDQUNELENBQUM7UUFDakMsZUFBZSxHQUFHLFVBQVUsQ0FDMUIsS0FBSyxDQUFDLGVBQWUsRUFDckIsR0FBRyxTQUFTLGtCQUFrQixDQUMvQixDQUFDO1FBQ0YsTUFBTSx5QkFBeUIsR0FDN0IsTUFBTSx5Q0FBeUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BFLElBQUksZUFBZSxLQUFLLHlCQUF5QixFQUFFLENBQUM7WUFDbEQsT0FBTyxJQUFJLENBQUMsR0FBRyxTQUFTLGtEQUFrRCxDQUFDLENBQUM7UUFDOUUsQ0FBQztRQUNELE1BQU0sdUJBQXVCLENBQzNCLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IsTUFBTSxFQUNOLEdBQUcsU0FBUyxtQkFBbUIsQ0FDaEMsQ0FBQztJQUNKLENBQUM7U0FBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztRQUNuRCxlQUFlLEdBQUcsVUFBVSxDQUMxQixLQUFLLENBQUMsZUFBZSxFQUNyQixHQUFHLFNBQVMsa0JBQWtCLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUseUJBQXlCLENBQUM7UUFDckUsQ0FBQyxDQUFDLE1BQU0sd0JBQXdCLENBQzVCLEtBQUssQ0FBQyx1QkFBdUIsRUFDN0IsR0FBRyxTQUFTLDBCQUEwQixDQUN2QztRQUNILENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDZCxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLG1CQUFtQixDQUNqQixlQUFlLENBQUMsT0FBTyxFQUN2QixXQUFXLEVBQ1gsZUFBZSxFQUNmLGlCQUFpQixFQUNqQixHQUFHLFNBQVMsa0NBQWtDLENBQy9DLENBQUM7UUFDRixJQUNFLGVBQWUsQ0FBQyx5QkFBeUIsR0FBRyxpQkFBaUI7WUFDN0QsZUFBZSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0I7Z0JBQzFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsY0FBYztZQUN0QyxlQUFlLENBQUMsT0FBTyxDQUFDLDJCQUEyQjtnQkFDakQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxjQUFjO1lBQ3RDLGVBQWUsQ0FBQyxPQUFPLENBQUMsZUFBZSxLQUFLLGVBQWU7WUFDM0QsZUFBZSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsS0FBSyxrQkFBa0I7WUFDakUsZUFBZSxDQUFDLFVBQVUsR0FBRyxTQUFTO1lBQ3RDLGVBQWUsQ0FBQyxVQUFVLEdBQUcsU0FBUyxFQUN0QyxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxTQUFTLGdEQUFnRCxDQUFDLENBQUM7UUFDNUUsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLGFBQXNELENBQUM7SUFDM0QsSUFBSSxtQkFBdUMsQ0FBQztJQUM1QyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsQ0FBQyxFQUFFLENBQUM7UUFDMUMsYUFBYSxHQUFHLDZCQUE2QixDQUMzQyxLQUFLLENBQUMsYUFBYSxFQUNuQixPQUFPLEVBQ1AsR0FBRyxTQUFTLGdCQUFnQixDQUNFLENBQUM7UUFDakMsbUJBQW1CLEdBQUcsVUFBVSxDQUM5QixLQUFLLENBQUMsbUJBQW1CLEVBQ3pCLEdBQUcsU0FBUyxzQkFBc0IsQ0FDbkMsQ0FBQztRQUNGLE1BQU0sc0JBQXNCLEdBQzFCLE1BQU0seUNBQXlDLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakUsSUFBSSxtQkFBbUIsS0FBSyxzQkFBc0IsRUFBRSxDQUFDO1lBQ25ELE9BQU8sSUFBSSxDQUFDLEdBQUcsU0FBUyxtREFBbUQsQ0FBQyxDQUFDO1FBQy9FLENBQUM7UUFDRCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QixJQUFJLFlBQVksQ0FBQyxhQUFhLENBQUMsS0FBSyxZQUFZLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDaEUsT0FBTyxJQUFJLENBQ1QsR0FBRyxTQUFTLDZEQUE2RCxDQUMxRSxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RCLE9BQU8sSUFBSSxDQUFDLEdBQUcsU0FBUywwQ0FBMEMsQ0FBQyxDQUFDO1lBQ3RFLENBQUM7WUFDRCw0QkFBNEIsQ0FDMUIsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixHQUFHLFNBQVMsZ0JBQWdCLENBQzdCLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsNEJBQTRCLENBQUM7UUFDM0UsQ0FBQyxDQUFDLE1BQU0sMkJBQTJCLENBQy9CLEtBQUssQ0FBQywwQkFBMEIsRUFDaEMsR0FBRyxTQUFTLDZCQUE2QixDQUMxQztRQUNILENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDZCxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDdkIsbUJBQW1CLENBQ2pCLGtCQUFrQixDQUFDLE9BQU8sRUFDMUIsV0FBVyxFQUNYLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsR0FBRyxTQUFTLHFDQUFxQyxDQUNsRCxDQUFDO1FBQ0YsSUFDRSxrQkFBa0IsQ0FBQyx5QkFBeUIsR0FBRyxpQkFBaUI7WUFDaEUsa0JBQWtCLENBQUMsT0FBTyxDQUFDLGVBQWUsS0FBSyxlQUFlO1lBQzlELGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsS0FBSyxtQkFBbUI7WUFDdEUsa0JBQWtCLENBQUMsT0FBTyxDQUFDLGtCQUFrQixLQUFLLGtCQUFrQjtZQUNwRSxDQUFDLGVBQWU7WUFDaEIsa0JBQWtCLENBQUMsT0FBTyxDQUFDLHlCQUF5QjtnQkFDbEQsZUFBZSxDQUFDLHlCQUF5QjtZQUMzQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsaUJBQWlCO2dCQUMxQyxlQUFlLENBQUMsVUFBVTtZQUM1QixrQkFBa0IsQ0FBQyxVQUFVLEdBQUcsU0FBUztZQUN6QyxrQkFBa0IsQ0FBQyxVQUFVLEdBQUcsU0FBUyxFQUN6QyxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxTQUFTLG1EQUFtRCxDQUFDLENBQUM7UUFDL0UsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUM7UUFDbkQsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsU0FBUyxhQUFhLEVBQUUsU0FBUyxDQUFDO1FBQ3pFLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDZCxJQUFJLFVBQVUsS0FBSyxTQUFTLElBQUksVUFBVSxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLEdBQUcsU0FBUyx1Q0FBdUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRztRQUNqQixXQUFXO1FBQ1gsZUFBZTtRQUNmLGlCQUFpQjtRQUNqQixTQUFTO1FBQ1QsU0FBUztRQUNULFNBQVM7UUFDVCxrQkFBa0I7UUFDbEIsTUFBTTtRQUNOLE1BQU07UUFDTixHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDakMsU0FBUztRQUNULFNBQVM7UUFDVCxLQUFLO1FBQ0wsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMvQixlQUFlLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM1QixHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2pELEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLHVCQUF1QixFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDeEUsR0FBRyxDQUFDLGtCQUFrQjtZQUNwQixDQUFDLENBQUMsRUFBRSwwQkFBMEIsRUFBRSxrQkFBa0IsRUFBRTtZQUNwRCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1Asa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMvQixpQ0FBaUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzlDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLGNBQWMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzNCLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMzQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZELEdBQUcsQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkQsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ2dCLENBQUM7SUFDOUMsT0FBTyxzQkFBc0IsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDdkQsQ0FBQyxDQUFDO0FBRUYsTUFBTSwwQkFBMEIsR0FBRyxDQUNqQyxVQUEwQyxFQUMxQyxTQUF3QyxFQUN4QyxZQUFvQixFQUNkLEVBQUU7SUFDUixJQUNFLFVBQVUsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLFdBQVc7UUFDaEQsVUFBVSxDQUFDLGVBQWUsS0FBSyxTQUFTLENBQUMsZUFBZSxFQUN4RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsWUFBWSw0Q0FBNEMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxJQUFJLFVBQVUsQ0FBQyx5QkFBeUIsS0FBSyxTQUFTLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6RSxJQUFJLENBQUMsR0FBRyxZQUFZLHFDQUFxQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdEQUFnRCxHQUFHLEtBQUssRUFDbkUsVUFBbUIsRUFDbkIsU0FBa0IsRUFDZ0QsRUFBRTtJQUNwRSxNQUFNLE9BQU8sR0FDWCxNQUFNLHFEQUFxRCxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFFLE1BQU0sTUFBTSxHQUFHLE1BQU0scUNBQXFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEUsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLHlCQUF5QixFQUFFLENBQUM7UUFDL0MsT0FBTyxJQUFJLENBQ1QsOEVBQThFLENBQy9FLENBQUM7SUFDSixDQUFDO0lBQ0QsMEJBQTBCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSwwQkFBMEIsQ0FBQyxDQUFDO0lBQ3hFLElBQ0UsT0FBTyxDQUFDLG9CQUFvQixLQUFLLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLGNBQWM7UUFDNUUsT0FBTyxDQUFDLDJCQUEyQjtZQUNqQyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxjQUFjO1FBQzdDLE9BQU8sQ0FBQyxlQUFlLEtBQUssTUFBTSxDQUFDLGVBQWU7UUFDbEQsT0FBTyxDQUFDLGtCQUFrQixLQUFLLE1BQU0sQ0FBQyxrQkFBa0IsRUFDeEQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLDREQUE0RCxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1EQUFtRCxHQUFHLEtBQUssRUFDdEUsVUFBbUIsRUFDbkIsU0FBa0IsRUFDbUQsRUFBRTtJQUN2RSxNQUFNLE9BQU8sR0FDWCxNQUFNLHdEQUF3RCxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdFLE1BQU0sTUFBTSxHQUFHLE1BQU0scUNBQXFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEUsSUFDRSxNQUFNLENBQUMsS0FBSyxLQUFLLGNBQWM7UUFDL0IsTUFBTSxDQUFDLGNBQWMsS0FBSyxrQkFBa0I7UUFDNUMsTUFBTSxDQUFDLGlDQUFpQyxLQUFLLElBQUksRUFDakQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUNULDJGQUEyRixDQUM1RixDQUFDO0lBQ0osQ0FBQztJQUNELDBCQUEwQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztJQUMzRSxJQUNFLE9BQU8sQ0FBQyxlQUFlLEtBQUssTUFBTSxDQUFDLGVBQWU7UUFDbEQsT0FBTyxDQUFDLG1CQUFtQixLQUFLLE1BQU0sQ0FBQyxtQkFBbUI7UUFDMUQsT0FBTyxDQUFDLGtCQUFrQixLQUFLLE1BQU0sQ0FBQyxrQkFBa0I7UUFDeEQsT0FBTyxDQUFDLGlCQUFpQjtZQUN2QixNQUFNLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUMxRCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsK0RBQStELENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQUcsS0FBSyxFQUN6RCxVQUFtQixFQUNuQixTQUFrQixFQUNzQyxFQUFFO0lBQzFELE1BQU0sT0FBTyxHQUFHLDJDQUEyQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sTUFBTSxHQUFHLE1BQU0scUNBQXFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEUsSUFDRSxNQUFNLENBQUMsa0JBQWtCLEtBQUssSUFBSTtRQUNsQyxNQUFNLENBQUMsa0JBQWtCLEtBQUssS0FBSztRQUNuQyxDQUFDO1lBQ0MsV0FBVztZQUNYLGNBQWM7WUFDZCx5QkFBeUI7WUFDekIsWUFBWTtZQUNaLFVBQVU7U0FDWCxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQ3hCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFDRCwwQkFBMEIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzdELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVDQUF1QyxHQUFHLEtBQUssRUFDMUQsVUFBbUIsRUFDbkIsU0FBa0IsRUFDdUMsRUFBRTtJQUMzRCxNQUFNLE9BQU8sR0FBRyw0Q0FBNEMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6RSxNQUFNLE1BQU0sR0FBRyxNQUFNLHFDQUFxQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLElBQUksTUFBTSxDQUFDLGtCQUFrQixLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUNULG9FQUFvRSxDQUNyRSxDQUFDO0lBQ0osQ0FBQztJQUNELDBCQUEwQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUM5RCxNQUFNLEtBQUssR0FBRyxPQUFPLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDM0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1gsT0FBTyxJQUFJLENBQUMsbURBQW1ELENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBQ0QsSUFDRSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQ2hDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLEtBQUssT0FBTyxDQUFDLE1BQU0sQ0FDNUMsRUFDRCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsOERBQThELENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsS0FBSyxFQUMzRCxVQUFtQixFQUNuQixTQUFrQixFQUN3QyxFQUFFO0lBQzVELE1BQU0sT0FBTyxHQUFHLDZDQUE2QyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFFLE1BQU0sTUFBTSxHQUFHLE1BQU0scUNBQXFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEUsSUFDRSxNQUFNLENBQUMsS0FBSyxLQUFLLGdCQUFnQjtRQUNqQyxDQUFDLE1BQU0sQ0FBQywwQkFBMEIsRUFDbEMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUNULCtFQUErRSxDQUNoRixDQUFDO0lBQ0osQ0FBQztJQUNELDBCQUEwQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUMvRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBRyxDQUMvQyxRQUFpQixFQUNvQixFQUFFO0lBQ3ZDLE9BQU8sc0JBQXNCLENBQzNCLGlCQUFpQixDQUFDLFFBQVEsRUFBRSw0QkFBNEIsQ0FBQyxFQUN6RCw0QkFBNEIsQ0FDN0IsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLENBQ3RELFFBQWlCLEVBQzJCLEVBQUU7SUFDOUMsT0FBTyxzQkFBc0IsQ0FDM0IsY0FBYyxDQUNaLFFBQVEsRUFDUixLQUFLLEVBQ0wscUNBQXFDLENBQ0YsRUFDckMscUNBQXFDLENBQ3RDLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx5Q0FBeUMsR0FBRyxDQUN2RCxRQUFpQixFQUM0QixFQUFFO0lBQy9DLE9BQU8sc0JBQXNCLENBQzNCLGNBQWMsQ0FDWixRQUFRLEVBQ1IsTUFBTSxFQUNOLHNDQUFzQyxDQUNGLEVBQ3RDLHNDQUFzQyxDQUN2QyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUNMLDRDQUE0QyxHQUU3QyxNQUFNLDhCQUE4QixDQUFDIn0=
|