@tricoteuses/assemblee 1.9.13 → 1.10.1
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/README.md +0 -5
- package/lib/api.js +1 -1
- package/lib/api.mjs +1 -1
- package/lib/bugs/acteur-00010/plugin.test.js +5 -5
- package/lib/bugs/acteur-00010/plugin.test.mjs +1 -1
- package/lib/bugs/acteur-00010.js +17 -18
- package/lib/bugs/acteur-00010.mjs +1 -1
- package/lib/bugs/agenda-00002/plugin.test.js +6 -6
- package/lib/bugs/agenda-00002/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00002.js +31 -32
- package/lib/bugs/agenda-00002.mjs +3 -3
- package/lib/bugs/agenda-00008/plugin.test.js +5 -5
- package/lib/bugs/agenda-00008/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00008.js +17 -18
- package/lib/bugs/agenda-00008.mjs +1 -1
- package/lib/bugs/agenda-00011/plugin.test.js +10 -10
- package/lib/bugs/agenda-00011/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00011.js +28 -29
- package/lib/bugs/agenda-00011.mjs +3 -3
- package/lib/bugs.js +27 -29
- package/lib/bugs.mjs +3 -3
- package/lib/cleaners/actes_legislatifs.js +5 -5
- package/lib/cleaners/actes_legislatifs.mjs +1 -1
- package/lib/cleaners/acteurs.js +5 -5
- package/lib/cleaners/acteurs.mjs +1 -1
- package/lib/cleaners/amendements.js +5 -5
- package/lib/cleaners/amendements.mjs +1 -1
- package/lib/cleaners/debats.js +1 -1
- package/lib/cleaners/debats.mjs +1 -1
- package/lib/cleaners/documents.js +5 -5
- package/lib/cleaners/documents.mjs +1 -1
- package/lib/cleaners/dossiers_legislatifs.js +5 -5
- package/lib/cleaners/dossiers_legislatifs.mjs +1 -1
- package/lib/cleaners/index.d.ts +0 -1
- package/lib/cleaners/index.js +1 -8
- package/lib/cleaners/index.mjs +1 -2
- package/lib/cleaners/organes.js +2 -2
- package/lib/cleaners/organes.mjs +1 -1
- package/lib/cleaners/questions.js +1 -1
- package/lib/cleaners/questions.mjs +1 -1
- package/lib/cleaners/reunions.js +5 -5
- package/lib/cleaners/reunions.mjs +1 -1
- package/lib/cleaners/scrutins.js +8 -8
- package/lib/cleaners/scrutins.mjs +1 -1
- package/lib/cleaners/xml.js +8 -8
- package/lib/cleaners/xml.mjs +1 -1
- package/lib/datasets.d.ts +1 -13
- package/lib/datasets.js +10 -29
- package/lib/datasets.mjs +2 -21
- package/lib/dates.js +3 -4
- package/lib/dates.mjs +1 -1
- package/lib/dossiers_legislatifs.js +8 -8
- package/lib/dossiers_legislatifs.mjs +1 -1
- package/lib/file_systems.js +15 -14
- package/lib/file_systems.mjs +3 -3
- package/lib/git.js +5 -5
- package/lib/git.mjs +1 -1
- package/lib/index.d.ts +3 -2
- package/lib/index.js +14 -1
- package/lib/index.mjs +3 -2
- package/lib/inserters.js +4 -4
- package/lib/inserters.mjs +1 -1
- package/lib/loaders.d.ts +0 -5
- package/lib/loaders.js +255 -299
- package/lib/loaders.mjs +1 -13
- package/lib/logger.js +1 -1
- package/lib/logger.mjs +1 -1
- package/lib/organes.js +1 -1
- package/lib/organes.mjs +1 -1
- package/lib/parsers/documents.js +11 -11
- package/lib/parsers/documents.mjs +1 -1
- package/lib/parsers/index.d.ts +1 -0
- package/lib/parsers/index.js +8 -1
- package/lib/parsers/index.mjs +2 -1
- package/lib/parsers/recherche_amendements.js +17 -15
- package/lib/parsers/recherche_amendements.mjs +1 -1
- package/lib/parsers/textes_lois.d.ts +22 -15
- package/lib/parsers/textes_lois.js +264 -752
- package/lib/parsers/textes_lois.mjs +249 -597
- package/lib/raw_types/acteurs_et_organes.js +9 -9
- package/lib/raw_types/acteurs_et_organes.mjs +1 -1
- package/lib/raw_types/agendas.d.ts +1 -0
- package/lib/raw_types/agendas.js +11 -10
- package/lib/raw_types/agendas.mjs +3 -2
- package/lib/raw_types/amendements.js +9 -9
- package/lib/raw_types/amendements.mjs +1 -1
- package/lib/raw_types/debats.js +9 -9
- package/lib/raw_types/debats.mjs +1 -1
- package/lib/raw_types/dossiers_legislatifs.js +9 -9
- package/lib/raw_types/dossiers_legislatifs.mjs +1 -1
- package/lib/raw_types/questions.js +9 -9
- package/lib/raw_types/questions.mjs +1 -1
- package/lib/raw_types/scrutins.js +9 -9
- package/lib/raw_types/scrutins.mjs +1 -1
- package/lib/scripts/bugs_helper.js +25 -26
- package/lib/scripts/bugs_helper.mjs +3 -3
- package/lib/scripts/clean_reorganized_data.js +256 -245
- package/lib/scripts/clean_reorganized_data.mjs +18 -29
- package/lib/scripts/diff_amendements.js +9 -8
- package/lib/scripts/diff_amendements.mjs +1 -1
- package/lib/scripts/document_dossiers_legislatifs.js +24 -27
- package/lib/scripts/document_dossiers_legislatifs.mjs +3 -3
- package/lib/scripts/get_today_reunions.js +3 -2
- package/lib/scripts/get_today_reunions.mjs +1 -1
- package/lib/scripts/merge_scrutins.js +9 -8
- package/lib/scripts/merge_scrutins.mjs +1 -1
- package/lib/scripts/parse_textes_lois.js +6 -5
- package/lib/scripts/parse_textes_lois.mjs +1 -1
- package/lib/scripts/process_open_dataset.d.ts +0 -2
- package/lib/scripts/process_open_dataset.js +19 -19
- package/lib/scripts/process_open_dataset.mjs +3 -5
- package/lib/scripts/raw_types_from_amendements.d.ts +0 -1
- package/lib/scripts/raw_types_from_amendements.js +122 -198
- package/lib/scripts/raw_types_from_amendements.mjs +105 -60
- package/lib/scripts/reorganize_data.js +14 -15
- package/lib/scripts/reorganize_data.mjs +3 -3
- package/lib/scripts/retrieve_deputes_photos.js +40 -31
- package/lib/scripts/retrieve_deputes_photos.mjs +10 -2
- package/lib/scripts/retrieve_documents.d.ts +1 -1
- package/lib/scripts/retrieve_documents.js +230 -138
- package/lib/scripts/retrieve_documents.mjs +87 -38
- package/lib/scripts/retrieve_open_data.js +27 -30
- package/lib/scripts/retrieve_open_data.mjs +5 -8
- package/lib/scripts/retrieve_pending_amendments.js +14 -14
- package/lib/scripts/retrieve_pending_amendments.mjs +1 -1
- package/lib/scripts/retrieve_senateurs_photos.js +10 -10
- package/lib/scripts/retrieve_senateurs_photos.mjs +1 -1
- package/lib/scripts/retrieve_textes_lois.js +17 -15
- package/lib/scripts/retrieve_textes_lois.mjs +1 -1
- package/lib/scripts/shared/cli_helpers.d.ts +11 -0
- package/lib/scripts/shared/cli_helpers.js +13 -2
- package/lib/scripts/shared/cli_helpers.mjs +12 -1
- package/lib/scripts/test_iter_load.js +5 -19
- package/lib/scripts/test_iter_load.mjs +2 -9
- package/lib/scripts/test_load.js +2 -2
- package/lib/scripts/test_load.mjs +1 -1
- package/lib/scripts/test_load_big_files.js +2 -2
- package/lib/scripts/test_load_big_files.mjs +1 -1
- package/lib/scripts/validate_json.js +17 -18
- package/lib/scripts/validate_json.mjs +3 -3
- package/lib/shared_types/codes_actes.js +1 -1
- package/lib/shared_types/codes_actes.mjs +1 -1
- package/lib/strings.js +1 -1
- package/lib/strings.mjs +1 -1
- package/lib/types/acteurs_et_organes.js +9 -9
- package/lib/types/acteurs_et_organes.mjs +1 -1
- package/lib/types/agendas.d.ts +1 -0
- package/lib/types/agendas.js +11 -10
- package/lib/types/agendas.mjs +3 -2
- package/lib/types/amendements.js +9 -9
- package/lib/types/amendements.mjs +1 -1
- package/lib/types/debats.js +9 -9
- package/lib/types/debats.mjs +1 -1
- package/lib/types/dossiers_legislatifs.d.ts +13 -0
- package/lib/types/dossiers_legislatifs.js +47 -9
- package/lib/types/dossiers_legislatifs.mjs +39 -1
- package/lib/types/legislatures.js +1 -1
- package/lib/types/legislatures.mjs +1 -1
- package/lib/types/questions.js +9 -9
- package/lib/types/questions.mjs +1 -1
- package/lib/types/scrutins.js +9 -9
- package/lib/types/scrutins.mjs +1 -1
- package/lib/urls.js +2 -2
- package/lib/urls.mjs +1 -1
- package/package.json +14 -20
- package/lib/cleaners/textes_loi.d.ts +0 -1
- package/lib/cleaners/textes_loi.js +0 -12
- package/lib/cleaners/textes_loi.mjs +0 -5
- package/lib/examples/PIONANR5L15B0020/input.d.ts +0 -2
- package/lib/examples/PIONANR5L15B0020/input.js +0 -10
- package/lib/examples/PIONANR5L15B0020/input.mjs +0 -193
- package/lib/examples/PIONANR5L15B0020/input.ts +0 -193
- package/lib/examples/PIONANR5L15B0020/loi.json +0 -26
- package/lib/examples/PIONANR5L15B0020/loi_populated.json +0 -29
- package/lib/examples/PIONANR5L15B0020/meta.json +0 -28
- package/lib/examples/PIONANR5L15B0020/motifs.json +0 -5
- package/lib/examples/PIONANR5L15B0020/motifs_populated.json +0 -6
- package/lib/examples/PIONANR5L15B0020/sommaire.json +0 -3
- package/lib/examples/PRJLANR5L16B0914/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B0914/input.js +0 -10
- package/lib/examples/PRJLANR5L16B0914/input.mjs +0 -322
- package/lib/examples/PRJLANR5L16B0914/input.ts +0 -322
- package/lib/examples/PRJLANR5L16B0914/loi.json +0 -14
- package/lib/examples/PRJLANR5L16B0914/loi_populated.json +0 -20
- package/lib/examples/PRJLANR5L16B0914/meta.json +0 -35
- package/lib/examples/PRJLANR5L16B0914/motifs.json +0 -4
- package/lib/examples/PRJLANR5L16B0914/motifs_populated.json +0 -5
- package/lib/examples/PRJLANR5L16B0914/sommaire.json +0 -3
- package/lib/examples/PRJLANR5L16B2014/README.md +0 -2
- package/lib/examples/PRJLANR5L16B2014/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B2014/input.js +0 -10
- package/lib/examples/PRJLANR5L16B2014/input.mjs +0 -577
- package/lib/examples/PRJLANR5L16B2014/input.ts +0 -577
- package/lib/examples/PRJLANR5L16B2014/loi.json +0 -369
- package/lib/examples/PRJLANR5L16B2014/meta.json +0 -31
- package/lib/examples/PRJLANR5L16B2014/motifs.json +0 -5
- package/lib/examples/PRJLANR5L16B2014/sommaire.json +0 -51
- package/lib/examples/PRJLANR5L16B2424/alineas.json +0 -44
- package/lib/examples/PRJLANR5L16B2424/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B2424/input.js +0 -10
- package/lib/examples/PRJLANR5L16B2424/input.mjs +0 -322
- package/lib/examples/PRJLANR5L16B2424/input.ts +0 -322
- package/lib/examples/PRJLANR5L16B2424/loi.json +0 -74
- package/lib/examples/PRJLANR5L16B2424/loi_populated.json +0 -87
- package/lib/examples/PRJLANR5L16B2424/meta.json +0 -31
- package/lib/examples/PRJLANR5L16B2424/motifs.json +0 -4
- package/lib/examples/PRJLANR5L16B2424/motifs_populated.json +0 -5
- package/lib/examples/PRJLANR5L16B2424/sommaire.json +0 -3
- package/lib/examples/PRJLANR5L16B2462/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B2462/input.js +0 -10
- package/lib/examples/PRJLANR5L16B2462/input.mjs +0 -1308
- package/lib/examples/PRJLANR5L16B2462/input.ts +0 -1308
- package/lib/examples/PRJLANR5L16B2462/loi.json +0 -74
- package/lib/examples/PRJLANR5L16B2462/loi_populated.json +0 -310
- package/lib/examples/PRJLANR5L16B2462/meta.json +0 -29
- package/lib/examples/PRJLANR5L16B2462/motifs.json +0 -6
- package/lib/examples/PRJLANR5L16B2462/motifs_populated.json +0 -6
- package/lib/examples/PRJLANR5L16B2462/sommaire.json +0 -50
- package/lib/examples/README.md +0 -3
- package/lib/raw_types/textes_loi.d.ts +0 -93
- package/lib/raw_types/textes_loi.js +0 -429
- package/lib/raw_types/textes_loi.mjs +0 -378
- package/lib/schemas/texte_loi/Alinea.json +0 -36
- package/lib/schemas/texte_loi/ExposeMotifs.json +0 -24
- package/lib/schemas/texte_loi/MetaDonnees.json +0 -126
- package/lib/schemas/texte_loi/ProjetLoi.json +0 -64
- package/lib/schemas/texte_loi/Sommaire.json +0 -48
- package/lib/schemas/texte_loi/TexteLoi.json +0 -225
- package/lib/schemas/texte_loi/TexteLoiPartiel.json +0 -237
- package/lib/scripts/process_textes_loi_dataset.d.ts +0 -7
- package/lib/scripts/process_textes_loi_dataset.js +0 -373
- package/lib/scripts/process_textes_loi_dataset.mjs +0 -239
- package/lib/types/textes_loi.d.ts +0 -94
- package/lib/types/textes_loi.js +0 -429
- package/lib/types/textes_loi.mjs +0 -378
|
@@ -7,36 +7,32 @@ import path from "path";
|
|
|
7
7
|
import { walkDocumentAndDivisions } from "../dossiers_legislatifs.mjs";
|
|
8
8
|
import * as git from "../git.mjs";
|
|
9
9
|
import { iterLoadAssembleeDocuments, pathFromDocumentUid } from "../loaders.mjs";
|
|
10
|
+
import { parseTexte } from "../parsers/index.mjs";
|
|
10
11
|
import { DocumentUrlFormat, iterDocumentOrDivisionUrls } from "../urls.mjs";
|
|
11
|
-
import { commitOption, dataDirDefaultOption, legislatureOption, pullOption, remoteOption, silentOption, verboseOption } from "./shared/cli_helpers.mjs";
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
multiple: true,
|
|
36
|
-
name: "document-type",
|
|
37
|
-
type: String
|
|
38
|
-
}];
|
|
39
|
-
const options = commandLineArgs(optionsDefinitions);
|
|
12
|
+
import { commitOption, dataDirDefaultOption, legislatureOption, pullOption, remoteOption, silentOption, verboseOption, documentFormatOption } from "./shared/cli_helpers.mjs";
|
|
13
|
+
function parseArgs(argv) {
|
|
14
|
+
const optionsDefinitions = [commitOption, legislatureOption, remoteOption, silentOption, verboseOption, dataDirDefaultOption, pullOption, {
|
|
15
|
+
alias: "f",
|
|
16
|
+
help: "retrieve all documents, even already retrieved ones",
|
|
17
|
+
name: "full",
|
|
18
|
+
type: Boolean
|
|
19
|
+
}, {
|
|
20
|
+
alias: "n",
|
|
21
|
+
help: "try to also retrieve documents that were previously not found",
|
|
22
|
+
name: "not-found",
|
|
23
|
+
type: Boolean
|
|
24
|
+
}, documentFormatOption, {
|
|
25
|
+
alias: "T",
|
|
26
|
+
help: "type of documents to retrieve (for example: PION)",
|
|
27
|
+
multiple: true,
|
|
28
|
+
name: "document-type",
|
|
29
|
+
type: String
|
|
30
|
+
}];
|
|
31
|
+
const options = commandLineArgs(optionsDefinitions, {
|
|
32
|
+
argv: argv
|
|
33
|
+
});
|
|
34
|
+
return options;
|
|
35
|
+
}
|
|
40
36
|
const today = new Date();
|
|
41
37
|
async function fetchWithRetry(url, retries = 3, backoff = 300) {
|
|
42
38
|
for (let attempt = 0; attempt < retries; attempt++) {
|
|
@@ -53,7 +49,46 @@ async function fetchWithRetry(url, retries = 3, backoff = 300) {
|
|
|
53
49
|
}
|
|
54
50
|
throw new Error(`Failed to fetch ${url} after ${retries} attempts`);
|
|
55
51
|
}
|
|
56
|
-
async function
|
|
52
|
+
export async function downloadAndParse(document, documentsDir, options) {
|
|
53
|
+
if (document.uid.substring(4, 6) === "SN") {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (options.legislature?.toString() !== document.legislature) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
if (options.fetchDocuments) {
|
|
60
|
+
const dataDir = options.dataDir;
|
|
61
|
+
const documentsFilesDir = path.join(dataDir, "Documents");
|
|
62
|
+
const documentDir = pathFromDocumentUid(`${documentsDir}/documents`, document.uid);
|
|
63
|
+
const documentFileDir = pathFromDocumentUid(documentsFilesDir, document.uid);
|
|
64
|
+
fs.ensureDirSync(documentsFilesDir);
|
|
65
|
+
await processDocumentOrDivision(document, documentsFilesDir, options);
|
|
66
|
+
if (options.parseDocuments) {
|
|
67
|
+
const documentPath = `${documentDir}.json`;
|
|
68
|
+
const htmlPath = path.join(documentFileDir, `dyn-opendata.html`);
|
|
69
|
+
if (fs.existsSync(htmlPath)) {
|
|
70
|
+
const html = fs.readFileSync(htmlPath, {
|
|
71
|
+
encoding: "utf-8"
|
|
72
|
+
});
|
|
73
|
+
try {
|
|
74
|
+
const parsedDocument = parseTexte("https://www.assemblee-nationale.fr", html);
|
|
75
|
+
if (parsedDocument && fs.existsSync(documentPath)) {
|
|
76
|
+
const json = fs.readFileSync(documentPath, {
|
|
77
|
+
encoding: "utf-8"
|
|
78
|
+
});
|
|
79
|
+
const documentJson = JSON.parse(json);
|
|
80
|
+
documentJson.subdivisions = parsedDocument?.subdivisions;
|
|
81
|
+
fs.writeFileSync(documentPath, JSON.stringify(documentJson, null, 2));
|
|
82
|
+
}
|
|
83
|
+
} catch (e) {
|
|
84
|
+
console.log(`Unable to parse document ${document.uid}`);
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
async function retrieveDocuments(options) {
|
|
57
92
|
assert(!options.commit || !options.uid, 'Options "commit" & "uid" are incompatible');
|
|
58
93
|
const dataDir = options.dataDir;
|
|
59
94
|
const documentsDir = path.join(dataDir, "Documents");
|
|
@@ -107,8 +142,12 @@ async function processDocumentOrDivision(documentOrDivision, documentsDir, optio
|
|
|
107
142
|
} of iterDocumentOrDivisionUrls(documentOrDivision)) {
|
|
108
143
|
const filename = `${type}.${format === DocumentUrlFormat.Pdf ? "pdf" : "html"}`;
|
|
109
144
|
|
|
110
|
-
// Filter by
|
|
111
|
-
|
|
145
|
+
// Filter by file extension if option is passed
|
|
146
|
+
const fileExtension = url.split(".").pop();
|
|
147
|
+
if (options.format && fileExtension && options.format !== fileExtension) {
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
if (options.legislature && options.legislature.toString() !== documentOrDivision.legislature) {
|
|
112
151
|
continue;
|
|
113
152
|
}
|
|
114
153
|
|
|
@@ -152,7 +191,9 @@ async function processDocumentOrDivision(documentOrDivision, documentsDir, optio
|
|
|
152
191
|
const sha256 = createHash("sha256").update(buffer).digest("hex");
|
|
153
192
|
const existingFilename = filenameBySha256[sha256];
|
|
154
193
|
if (existingFilename === undefined) {
|
|
155
|
-
fs.
|
|
194
|
+
fs.writeFileSync(filePath, buffer, {
|
|
195
|
+
encoding: "utf8"
|
|
196
|
+
});
|
|
156
197
|
fileInfos.filename = filename;
|
|
157
198
|
filenameBySha256[sha256] = filename;
|
|
158
199
|
} else {
|
|
@@ -183,8 +224,16 @@ async function processDocumentOrDivision(documentOrDivision, documentsDir, optio
|
|
|
183
224
|
spaces: 2
|
|
184
225
|
});
|
|
185
226
|
}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
}
|
|
190
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjb21tYW5kTGluZUFyZ3MiLCJjcmVhdGVIYXNoIiwiZGlmZmVyZW5jZUluRGF5cyIsImZzIiwicGF0aCIsIndhbGtEb2N1bWVudEFuZERpdmlzaW9ucyIsImdpdCIsIml0ZXJMb2FkQXNzZW1ibGVlRG9jdW1lbnRzIiwicGF0aEZyb21Eb2N1bWVudFVpZCIsIkRvY3VtZW50VXJsRm9ybWF0IiwiaXRlckRvY3VtZW50T3JEaXZpc2lvblVybHMiLCJjb21taXRPcHRpb24iLCJkYXRhRGlyRGVmYXVsdE9wdGlvbiIsImxlZ2lzbGF0dXJlT3B0aW9uIiwicHVsbE9wdGlvbiIsInJlbW90ZU9wdGlvbiIsInNpbGVudE9wdGlvbiIsInZlcmJvc2VPcHRpb24iLCJvcHRpb25zRGVmaW5pdGlvbnMiLCJhbGlhcyIsImhlbHAiLCJuYW1lIiwidHlwZSIsIkJvb2xlYW4iLCJTdHJpbmciLCJtdWx0aXBsZSIsIm9wdGlvbnMiLCJ0b2RheSIsIkRhdGUiLCJmZXRjaFdpdGhSZXRyeSIsInVybCIsInJldHJpZXMiLCJiYWNrb2ZmIiwiYXR0ZW1wdCIsImZldGNoIiwiZXJyb3IiLCJjb25zb2xlIiwid2FybiIsIlByb21pc2UiLCJyZXNvbHZlIiwic2V0VGltZW91dCIsIkVycm9yIiwicmV0cmlldmVEb2N1bWVudHMiLCJjb21taXQiLCJ1aWQiLCJkYXRhRGlyIiwiZG9jdW1lbnRzRGlyIiwiam9pbiIsInB1bGwiLCJyZXNldEFuZFB1bGwiLCJlbnN1cmVEaXJTeW5jIiwiZnVsbCIsImZpbGVuYW1lIiwicmVhZGRpclN5bmMiLCJyZW1vdmVTeW5jIiwiZmlyc3RVaWQiLCJza2lwIiwiZG9jdW1lbnQiLCJsZWdpc2xhdHVyZSIsImRvY3VtZW50T3JEaXZpc2lvbiIsInN1YnN0cmluZyIsInByb2Nlc3NEb2N1bWVudE9yRGl2aXNpb24iLCJjb21taXRBbmRQdXNoIiwicmVtb3RlIiwiZG9jdW1lbnREaXIiLCJmaWxlbmFtZUJ5U2hhMjU2IiwiaW5kZXhQYXRoIiwiaW5kZXgiLCJwYXRoRXhpc3RzU3luYyIsInJlYWRKc29uU3luYyIsImZvcm1hdCIsIlBkZiIsImRvY3VtZW50VHlwZSIsImNsYXNzaWZpY2F0aW9uIiwiY29kZSIsInVuZGVmaW5lZCIsImluY2x1ZGVzIiwiZm9ybWF0RmlsZXNJbmZvcyIsImZpbGVJbmZvcyIsImZpbmQiLCJmaWxlIiwicHVzaCIsInN0YXR1cyIsInNoYTI1NiIsImN5Y2xlRGVWaWUiLCJjaHJvbm8iLCJkYXRlQ3JlYXRpb24iLCJkYXRlRGVwb3QiLCJzaWxlbnQiLCJsb2ciLCJyZXNwb25zZSIsImZpbGVQYXRoIiwib2siLCJhcnJheUJ1ZmZlciIsImJ1ZmZlciIsIkJ1ZmZlciIsImZyb20iLCJzdWJhcnJheSIsInRvU3RyaW5nIiwic3RhcnRzV2l0aCIsInVwZGF0ZSIsImRpZ2VzdCIsImV4aXN0aW5nRmlsZW5hbWUiLCJjcmVhdGVXcml0ZVN0cmVhbSIsIndyaXRlIiwiSlNPTiIsInN0cmluZ2lmeSIsIm1lc3NhZ2UiLCJzdGF0dXNUZXh0Iiwid3JpdGVKc29uU3luYyIsImVuY29kaW5nIiwic3BhY2VzIiwidGhlbiIsImV4aXRDb2RlIiwicHJvY2VzcyIsImV4aXQiLCJjYXRjaCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL3JldHJpZXZlX2RvY3VtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gXCJhc3NlcnRcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gXCJjcnlwdG9cIlxuaW1wb3J0IHsgZGlmZmVyZW5jZUluRGF5cyB9IGZyb20gXCJkYXRlLWZuc1wiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHtcbiAgRG9jdW1lbnRGaWxlSW5mb3MsXG4gIERvY3VtZW50RmlsZXNJbmRleCxcbiAgd2Fsa0RvY3VtZW50QW5kRGl2aXNpb25zLFxufSBmcm9tIFwiLi4vZG9zc2llcnNfbGVnaXNsYXRpZnNcIlxuaW1wb3J0ICogYXMgZ2l0IGZyb20gXCIuLi9naXRcIlxuaW1wb3J0IHsgaXRlckxvYWRBc3NlbWJsZWVEb2N1bWVudHMsIHBhdGhGcm9tRG9jdW1lbnRVaWQgfSBmcm9tIFwiLi4vbG9hZGVyc1wiXG5pbXBvcnQgeyBEb2N1bWVudFVybEZvcm1hdCwgaXRlckRvY3VtZW50T3JEaXZpc2lvblVybHMgfSBmcm9tIFwiLi4vdXJsc1wiXG5pbXBvcnQge1xuICBjb21taXRPcHRpb24sXG4gIGRhdGFEaXJEZWZhdWx0T3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgcHVsbE9wdGlvbixcbiAgcmVtb3RlT3B0aW9uLFxuICBzaWxlbnRPcHRpb24sXG4gIHZlcmJvc2VPcHRpb24sXG59IGZyb20gXCIuL3NoYXJlZC9jbGlfaGVscGVyc1wiXG5cbmNvbnN0IG9wdGlvbnNEZWZpbml0aW9ucyA9IFtcbiAgY29tbWl0T3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgcmVtb3RlT3B0aW9uLFxuICBzaWxlbnRPcHRpb24sXG4gIHZlcmJvc2VPcHRpb24sXG4gIGRhdGFEaXJEZWZhdWx0T3B0aW9uLFxuICBwdWxsT3B0aW9uLFxuICB7XG4gICAgYWxpYXM6IFwiZlwiLFxuICAgIGhlbHA6IFwicmV0cmlldmUgYWxsIGRvY3VtZW50cywgZXZlbiBhbHJlYWR5IHJldHJpZXZlZCBvbmVzXCIsXG4gICAgbmFtZTogXCJmdWxsXCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcIm5cIixcbiAgICBoZWxwOiBcInRyeSB0byBhbHNvIHJldHJpZXZlIGRvY3VtZW50cyB0aGF0IHdlcmUgcHJldmlvdXNseSBub3QgZm91bmRcIixcbiAgICBuYW1lOiBcIm5vdC1mb3VuZFwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJ1XCIsXG4gICAgaGVscDogXCJVSUQgb2YgZmlyc3QgQXNzZW1ibMOpZSdzIGRvY3VtZW50IG9yIGRpdmlzaW9uIHRvIHJldHJpZXZlXCIsXG4gICAgbmFtZTogXCJ1aWRcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJGXCIsXG4gICAgaGVscDogXCJmb3JtYXQgb2YgZG9jdW1lbnRzIHRvIHJldHJpZXZlXCIsXG4gICAgbmFtZTogXCJmb3JtYXRcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJUXCIsXG4gICAgaGVscDogXCJ0eXBlIG9mIGRvY3VtZW50cyB0byByZXRyaWV2ZSAoZm9yIGV4YW1wbGU6IFBJT04pXCIsXG4gICAgbXVsdGlwbGU6IHRydWUsXG4gICAgbmFtZTogXCJkb2N1bWVudC10eXBlXCIsXG4gICAgdHlwZTogU3RyaW5nLFxuICB9LFxuXVxuY29uc3Qgb3B0aW9ucyA9IGNvbW1hbmRMaW5lQXJncyhvcHRpb25zRGVmaW5pdGlvbnMpXG5jb25zdCB0b2RheSA9IG5ldyBEYXRlKClcblxuYXN5bmMgZnVuY3Rpb24gZmV0Y2hXaXRoUmV0cnkoXG4gIHVybDogc3RyaW5nLFxuICByZXRyaWVzOiBudW1iZXIgPSAzLFxuICBiYWNrb2ZmOiBudW1iZXIgPSAzMDAsXG4pOiBQcm9taXNlPFJlc3BvbnNlPiB7XG4gIGZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgcmV0cmllczsgYXR0ZW1wdCsrKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBmZXRjaCh1cmwpXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGlmIChhdHRlbXB0ID09PSByZXRyaWVzIC0gMSkge1xuICAgICAgICB0aHJvdyBlcnJvclxuICAgICAgfVxuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgRmV0Y2ggYXR0ZW1wdCAke2F0dGVtcHQgKyAxfSBmb3IgJHt1cmx9IGZhaWxlZC4gUmV0cnlpbmcgaW4gJHtiYWNrb2ZmfW1zLi4uYCxcbiAgICAgIClcbiAgICAgIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIGJhY2tvZmYpKVxuICAgICAgYmFja29mZiAqPSAyXG4gICAgfVxuICB9XG4gIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGZldGNoICR7dXJsfSBhZnRlciAke3JldHJpZXN9IGF0dGVtcHRzYClcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmV0cmlldmVEb2N1bWVudHMoKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgYXNzZXJ0KFxuICAgICFvcHRpb25zLmNvbW1pdCB8fCAhb3B0aW9ucy51aWQsXG4gICAgJ09wdGlvbnMgXCJjb21taXRcIiAmIFwidWlkXCIgYXJlIGluY29tcGF0aWJsZScsXG4gIClcblxuICBjb25zdCBkYXRhRGlyID0gb3B0aW9ucy5kYXRhRGlyXG4gIGNvbnN0IGRvY3VtZW50c0RpciA9IHBhdGguam9pbihkYXRhRGlyLCBcIkRvY3VtZW50c1wiKVxuICBpZiAob3B0aW9ucy5wdWxsKSB7XG4gICAgZ2l0LnJlc2V0QW5kUHVsbChkb2N1bWVudHNEaXIpXG4gIH1cbiAgZnMuZW5zdXJlRGlyU3luYyhkb2N1bWVudHNEaXIpXG5cbiAgaWYgKG9wdGlvbnMuZnVsbCAmJiAhb3B0aW9ucy51aWQpIHtcbiAgICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKGRvY3VtZW50c0RpcikpIHtcbiAgICAgIGlmIChmaWxlbmFtZVswXSA9PT0gXCIuXCIpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGZzLnJlbW92ZVN5bmMocGF0aC5qb2luKGRvY3VtZW50c0RpciwgZmlsZW5hbWUpKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGZpcnN0VWlkID0gb3B0aW9ucy51aWRcbiAgbGV0IHNraXAgPSBCb29sZWFuKGZpcnN0VWlkKVxuICBmb3IgKGNvbnN0IHsgZG9jdW1lbnQgfSBvZiBpdGVyTG9hZEFzc2VtYmxlZURvY3VtZW50cyhcbiAgICBkYXRhRGlyLFxuICAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gICkpIHtcbiAgICBmb3IgKGNvbnN0IGRvY3VtZW50T3JEaXZpc2lvbiBvZiB3YWxrRG9jdW1lbnRBbmREaXZpc2lvbnMoZG9jdW1lbnQpKSB7XG4gICAgICAvLyBJZ25vcmUgZG9jdW1lbnRzIGZyb20gU8OpbmF0LlxuICAgICAgaWYgKGRvY3VtZW50T3JEaXZpc2lvbi51aWQuc3Vic3RyaW5nKDQsIDYpID09PSBcIlNOXCIpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgaWYgKHNraXApIHtcbiAgICAgICAgaWYgKGRvY3VtZW50T3JEaXZpc2lvbi51aWQgPT09IGZpcnN0VWlkKSB7XG4gICAgICAgICAgc2tpcCA9IGZhbHNlXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29udGludWVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhd2FpdCBwcm9jZXNzRG9jdW1lbnRPckRpdmlzaW9uKGRvY3VtZW50T3JEaXZpc2lvbiwgZG9jdW1lbnRzRGlyLCBvcHRpb25zKVxuICAgIH1cbiAgfVxuXG4gIGlmIChvcHRpb25zLmNvbW1pdCkge1xuICAgIHJldHVybiBnaXQuY29tbWl0QW5kUHVzaChkb2N1bWVudHNEaXIsIFwiTm91dmVsbGUgbW9pc3NvblwiLCBvcHRpb25zLnJlbW90ZSlcbiAgfVxuICByZXR1cm4gMFxufVxuXG5hc3luYyBmdW5jdGlvbiBwcm9jZXNzRG9jdW1lbnRPckRpdmlzaW9uKFxuICBkb2N1bWVudE9yRGl2aXNpb246IGFueSxcbiAgZG9jdW1lbnRzRGlyOiBzdHJpbmcsXG4gIG9wdGlvbnM6IGFueSxcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBkb2N1bWVudERpciA9IHBhdGhGcm9tRG9jdW1lbnRVaWQoZG9jdW1lbnRzRGlyLCBkb2N1bWVudE9yRGl2aXNpb24udWlkKVxuICBmcy5lbnN1cmVEaXJTeW5jKGRvY3VtZW50RGlyKVxuXG4gIGNvbnN0IGZpbGVuYW1lQnlTaGEyNTY6IHsgW2RpZ2VzdDogc3RyaW5nXTogc3RyaW5nIH0gPSB7fVxuICBjb25zdCBpbmRleFBhdGggPSBwYXRoLmpvaW4oZG9jdW1lbnREaXIsIFwiaW5kZXguanNvblwiKVxuICBjb25zdCBpbmRleCA9IChcbiAgICBmcy5wYXRoRXhpc3RzU3luYyhpbmRleFBhdGgpID8gZnMucmVhZEpzb25TeW5jKGluZGV4UGF0aCkgOiB7fVxuICApIGFzIERvY3VtZW50RmlsZXNJbmRleFxuXG4gIGZvciAoY29uc3QgeyBmb3JtYXQsIHR5cGUsIHVybCB9IG9mIGl0ZXJEb2N1bWVudE9yRGl2aXNpb25VcmxzKFxuICAgIGRvY3VtZW50T3JEaXZpc2lvbixcbiAgKSkge1xuICAgIGNvbnN0IGZpbGVuYW1lID0gYCR7dHlwZX0uJHtcbiAgICAgIGZvcm1hdCA9PT0gRG9jdW1lbnRVcmxGb3JtYXQuUGRmID8gXCJwZGZcIiA6IFwiaHRtbFwiXG4gICAgfWBcblxuICAgIC8vIEZpbHRlciBieSBmb3JtYXQgaWYgb3B0aW9uIGlzIHBhc3NlZFxuICAgIGlmIChvcHRpb25zLmZvcm1hdCAmJiBvcHRpb25zLmZvcm1hdCAhPT0gZm9ybWF0KSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIC8vIEZpbHRlciBieSBkb2N1bWVudCB0eXBlIGlmIG9wdGlvbiBpcyBwYXNzZWRcbiAgICBjb25zdCBkb2N1bWVudFR5cGUgPSBkb2N1bWVudE9yRGl2aXNpb24uY2xhc3NpZmljYXRpb24/LnR5cGU/LmNvZGVcbiAgICBpZiAoXG4gICAgICBvcHRpb25zW1wiZG9jdW1lbnQtdHlwZVwiXSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAhb3B0aW9uc1tcImRvY3VtZW50LXR5cGVcIl0uaW5jbHVkZXMoZG9jdW1lbnRUeXBlKVxuICAgICkge1xuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICBsZXQgZm9ybWF0RmlsZXNJbmZvcyA9IGluZGV4W2Zvcm1hdF0gPz8gKGluZGV4W2Zvcm1hdF0gPSBbXSlcbiAgICBsZXQgZmlsZUluZm9zID1cbiAgICAgIGZvcm1hdEZpbGVzSW5mb3MuZmluZCgoZmlsZSkgPT4gZmlsZS51cmwgPT09IHVybCkgPz9cbiAgICAgICh7fSBhcyBEb2N1bWVudEZpbGVJbmZvcylcbiAgICBpZiAoIWZvcm1hdEZpbGVzSW5mb3MuaW5jbHVkZXMoZmlsZUluZm9zKSkge1xuICAgICAgZm9ybWF0RmlsZXNJbmZvcy5wdXNoKGZpbGVJbmZvcylcbiAgICB9XG4gICAgZmlsZUluZm9zLnVybCA9IHVybFxuXG4gICAgaWYgKGZpbGVJbmZvcy5zdGF0dXMgPT09IDIwMCAmJiAhb3B0aW9ucy5mdWxsKSB7XG4gICAgICBmaWxlbmFtZUJ5U2hhMjU2W2ZpbGVJbmZvcy5zaGEyNTYgYXMgc3RyaW5nXSA9IGZpbGVuYW1lXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAoXG4gICAgICBmaWxlSW5mb3Muc3RhdHVzID09PSA0MDQgJiZcbiAgICAgICFvcHRpb25zW1wibm90LWZvdW5kXCJdICYmXG4gICAgICBkaWZmZXJlbmNlSW5EYXlzKFxuICAgICAgICB0b2RheSxcbiAgICAgICAgZG9jdW1lbnRPckRpdmlzaW9uLmN5Y2xlRGVWaWUuY2hyb25vLmRhdGVDcmVhdGlvbiA/P1xuICAgICAgICAgIChkb2N1bWVudE9yRGl2aXNpb24uY3ljbGVEZVZpZS5jaHJvbm8uZGF0ZURlcG90IGFzIERhdGUgfCBzdHJpbmcpLFxuICAgICAgKSA+IDEwXG4gICAgKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgUmV0cmlldmluZyBkb2N1bWVudCBvciBkaXZpc2lvbiAke2RvY3VtZW50T3JEaXZpc2lvbi51aWR9IGF0ICR7dXJsfeKApmAsXG4gICAgICApXG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaFdpdGhSZXRyeSh1cmwpXG4gICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZG9jdW1lbnREaXIsIGZpbGVuYW1lKVxuXG4gICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICBjb25zdCBhcnJheUJ1ZmZlciA9IGF3YWl0IHJlc3BvbnNlLmFycmF5QnVmZmVyKClcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5mcm9tKGFycmF5QnVmZmVyKVxuICAgICAgaWYgKFxuICAgICAgICBmb3JtYXQgPT09IERvY3VtZW50VXJsRm9ybWF0LlBkZiAmJlxuICAgICAgICAhYnVmZmVyLnN1YmFycmF5KDAsIDQpLnRvU3RyaW5nKCkuc3RhcnRzV2l0aChcIiVQREZcIilcbiAgICAgICkge1xuICAgICAgICAvLyBJbnN0ZWFkIG9mIGEgUERGLCB0aGUgcmVjZWl2ZWQgZGF0YSBtYXkgYmUgYW4gSFRNTCBwYWdlIHdpdGggYSBtZXNzYWdlIGxpa2VcbiAgICAgICAgLy8gXCJEb2N1bWVudCBub24gZW5jb3JlIHB1Ymxpw6lcIi5cbiAgICAgICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgICAgICAgIGNvbnNvbGUud2FybihgICBQREYgXCIke3VybH1cIiBub3QgZm91bmQuYClcbiAgICAgICAgfVxuICAgICAgICBmcy5yZW1vdmVTeW5jKGZpbGVQYXRoKVxuICAgICAgICBkZWxldGUgZmlsZUluZm9zLmZpbGVuYW1lXG4gICAgICAgIGRlbGV0ZSBmaWxlSW5mb3Muc2hhMjU2XG4gICAgICAgIGZpbGVJbmZvcy5zdGF0dXMgPSA0MDRcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNoYTI1NiA9IGNyZWF0ZUhhc2goXCJzaGEyNTZcIikudXBkYXRlKGJ1ZmZlcikuZGlnZXN0KFwiaGV4XCIpXG4gICAgICAgIGNvbnN0IGV4aXN0aW5nRmlsZW5hbWUgPSBmaWxlbmFtZUJ5U2hhMjU2W3NoYTI1Nl1cbiAgICAgICAgaWYgKGV4aXN0aW5nRmlsZW5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGZzLmNyZWF0ZVdyaXRlU3RyZWFtKGZpbGVQYXRoKS53cml0ZShidWZmZXIpXG4gICAgICAgICAgZmlsZUluZm9zLmZpbGVuYW1lID0gZmlsZW5hbWVcbiAgICAgICAgICBmaWxlbmFtZUJ5U2hhMjU2W3NoYTI1Nl0gPSBmaWxlbmFtZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZpbGVJbmZvcy5maWxlbmFtZSA9IGV4aXN0aW5nRmlsZW5hbWVcbiAgICAgICAgfVxuICAgICAgICBmaWxlSW5mb3Muc2hhMjU2ID0gc2hhMjU2XG4gICAgICAgIGZpbGVJbmZvcy5zdGF0dXMgPSByZXNwb25zZS5zdGF0dXNcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYCAgUGFnZSBcIiR7dXJsfVwiIG5vdCBmb3VuZC5gKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgIGAgIEVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgICB7IGNvZGU6IHJlc3BvbnNlLnN0YXR1cywgbWVzc2FnZTogcmVzcG9uc2Uuc3RhdHVzVGV4dCB9LFxuICAgICAgICAgICAgbnVsbCxcbiAgICAgICAgICAgIDIsXG4gICAgICAgICAgKX1gLFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBmcy5yZW1vdmVTeW5jKGZpbGVQYXRoKVxuICAgICAgZGVsZXRlIGZpbGVJbmZvcy5maWxlbmFtZVxuICAgICAgZGVsZXRlIGZpbGVJbmZvcy5zaGEyNTZcbiAgICAgIGZpbGVJbmZvcy5zdGF0dXMgPSByZXNwb25zZS5zdGF0dXNcbiAgICB9XG4gIH1cblxuICBmcy53cml0ZUpzb25TeW5jKGluZGV4UGF0aCwgaW5kZXgsIHsgZW5jb2Rpbmc6IFwidXRmLThcIiwgc3BhY2VzOiAyIH0pXG59XG5cbnJldHJpZXZlRG9jdW1lbnRzKClcbiAgLnRoZW4oKGV4aXRDb2RlKSA9PiBwcm9jZXNzLmV4aXQoZXhpdENvZGUpKVxuICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgY29uc29sZS5sb2coZXJyb3IpXG4gICAgcHJvY2Vzcy5leGl0KDEpXG4gIH0pXG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQU0sTUFBTSxRQUFRO0FBQzNCLE9BQU9DLGVBQWUsTUFBTSxtQkFBbUI7QUFDL0MsU0FBU0MsVUFBVSxRQUFRLFFBQVE7QUFDbkMsU0FBU0MsZ0JBQWdCLFFBQVEsVUFBVTtBQUMzQyxPQUFPQyxFQUFFLE1BQU0sVUFBVTtBQUN6QixPQUFPQyxJQUFJLE1BQU0sTUFBTTtBQUFBLFNBS3JCQyx3QkFBd0I7QUFBQSxPQUVuQixLQUFLQyxHQUFHO0FBQUEsU0FDTkMsMEJBQTBCLEVBQUVDLG1CQUFtQjtBQUFBLFNBQy9DQyxpQkFBaUIsRUFBRUMsMEJBQTBCO0FBQUEsU0FFcERDLFlBQVksRUFDWkMsb0JBQW9CLEVBQ3BCQyxpQkFBaUIsRUFDakJDLFVBQVUsRUFDVkMsWUFBWSxFQUNaQyxZQUFZLEVBQ1pDLGFBQWE7QUFHZixNQUFNQyxrQkFBa0IsR0FBRyxDQUN6QlAsWUFBWSxFQUNaRSxpQkFBaUIsRUFDakJFLFlBQVksRUFDWkMsWUFBWSxFQUNaQyxhQUFhLEVBQ2JMLG9CQUFvQixFQUNwQkUsVUFBVSxFQUNWO0VBQ0VLLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxxREFBcUQ7RUFDM0RDLElBQUksRUFBRSxNQUFNO0VBQ1pDLElBQUksRUFBRUM7QUFDUixDQUFDLEVBQ0Q7RUFDRUosS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLCtEQUErRDtFQUNyRUMsSUFBSSxFQUFFLFdBQVc7RUFDakJDLElBQUksRUFBRUM7QUFDUixDQUFDLEVBQ0Q7RUFDRUosS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLDJEQUEyRDtFQUNqRUMsSUFBSSxFQUFFLEtBQUs7RUFDWEMsSUFBSSxFQUFFRTtBQUNSLENBQUMsRUFD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
|
|
227
|
+
function main(argv) {
|
|
228
|
+
const options = parseArgs(argv);
|
|
229
|
+
return retrieveDocuments(options);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
/* istanbul ignore if */
|
|
233
|
+
if (process.argv[1].endsWith("retrieve_documents.ts")) {
|
|
234
|
+
main(process.argv).then(exitCode => process.exit(exitCode)).catch(error => {
|
|
235
|
+
console.log(error);
|
|
236
|
+
process.exit(1);
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjb21tYW5kTGluZUFyZ3MiLCJjcmVhdGVIYXNoIiwiZGlmZmVyZW5jZUluRGF5cyIsImZzIiwicGF0aCIsIndhbGtEb2N1bWVudEFuZERpdmlzaW9ucyIsImdpdCIsIml0ZXJMb2FkQXNzZW1ibGVlRG9jdW1lbnRzIiwicGF0aEZyb21Eb2N1bWVudFVpZCIsInBhcnNlVGV4dGUiLCJEb2N1bWVudFVybEZvcm1hdCIsIml0ZXJEb2N1bWVudE9yRGl2aXNpb25VcmxzIiwiY29tbWl0T3B0aW9uIiwiZGF0YURpckRlZmF1bHRPcHRpb24iLCJsZWdpc2xhdHVyZU9wdGlvbiIsInB1bGxPcHRpb24iLCJyZW1vdGVPcHRpb24iLCJzaWxlbnRPcHRpb24iLCJ2ZXJib3NlT3B0aW9uIiwiZG9jdW1lbnRGb3JtYXRPcHRpb24iLCJwYXJzZUFyZ3MiLCJhcmd2Iiwib3B0aW9uc0RlZmluaXRpb25zIiwiYWxpYXMiLCJoZWxwIiwibmFtZSIsInR5cGUiLCJCb29sZWFuIiwibXVsdGlwbGUiLCJTdHJpbmciLCJvcHRpb25zIiwidG9kYXkiLCJEYXRlIiwiZmV0Y2hXaXRoUmV0cnkiLCJ1cmwiLCJyZXRyaWVzIiwiYmFja29mZiIsImF0dGVtcHQiLCJmZXRjaCIsImVycm9yIiwiY29uc29sZSIsIndhcm4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInNldFRpbWVvdXQiLCJFcnJvciIsImRvd25sb2FkQW5kUGFyc2UiLCJkb2N1bWVudCIsImRvY3VtZW50c0RpciIsInVpZCIsInN1YnN0cmluZyIsImxlZ2lzbGF0dXJlIiwidG9TdHJpbmciLCJmZXRjaERvY3VtZW50cyIsImRhdGFEaXIiLCJkb2N1bWVudHNGaWxlc0RpciIsImpvaW4iLCJkb2N1bWVudERpciIsImRvY3VtZW50RmlsZURpciIsImVuc3VyZURpclN5bmMiLCJwcm9jZXNzRG9jdW1lbnRPckRpdmlzaW9uIiwicGFyc2VEb2N1bWVudHMiLCJkb2N1bWVudFBhdGgiLCJodG1sUGF0aCIsImV4aXN0c1N5bmMiLCJodG1sIiwicmVhZEZpbGVTeW5jIiwiZW5jb2RpbmciLCJwYXJzZWREb2N1bWVudCIsImpzb24iLCJkb2N1bWVudEpzb24iLCJKU09OIiwicGFyc2UiLCJzdWJkaXZpc2lvbnMiLCJ3cml0ZUZpbGVTeW5jIiwic3RyaW5naWZ5IiwiZSIsImxvZyIsInJldHJpZXZlRG9jdW1lbnRzIiwiY29tbWl0IiwicHVsbCIsInJlc2V0QW5kUHVsbCIsImZ1bGwiLCJmaWxlbmFtZSIsInJlYWRkaXJTeW5jIiwicmVtb3ZlU3luYyIsImZpcnN0VWlkIiwic2tpcCIsImRvY3VtZW50T3JEaXZpc2lvbiIsImNvbW1pdEFuZFB1c2giLCJyZW1vdGUiLCJmaWxlbmFtZUJ5U2hhMjU2IiwiaW5kZXhQYXRoIiwiaW5kZXgiLCJwYXRoRXhpc3RzU3luYyIsInJlYWRKc29uU3luYyIsImZvcm1hdCIsIlBkZiIsImZpbGVFeHRlbnNpb24iLCJzcGxpdCIsInBvcCIsImRvY3VtZW50VHlwZSIsImNsYXNzaWZpY2F0aW9uIiwiY29kZSIsInVuZGVmaW5lZCIsImluY2x1ZGVzIiwiZm9ybWF0RmlsZXNJbmZvcyIsImZpbGVJbmZvcyIsImZpbmQiLCJmaWxlIiwicHVzaCIsInN0YXR1cyIsInNoYTI1NiIsImN5Y2xlRGVWaWUiLCJjaHJvbm8iLCJkYXRlQ3JlYXRpb24iLCJkYXRlRGVwb3QiLCJzaWxlbnQiLCJyZXNwb25zZSIsImZpbGVQYXRoIiwib2siLCJhcnJheUJ1ZmZlciIsImJ1ZmZlciIsIkJ1ZmZlciIsImZyb20iLCJzdWJhcnJheSIsInN0YXJ0c1dpdGgiLCJ1cGRhdGUiLCJkaWdlc3QiLCJleGlzdGluZ0ZpbGVuYW1lIiwibWVzc2FnZSIsInN0YXR1c1RleHQiLCJ3cml0ZUpzb25TeW5jIiwic3BhY2VzIiwibWFpbiIsInByb2Nlc3MiLCJlbmRzV2l0aCIsInRoZW4iLCJleGl0Q29kZSIsImV4aXQiLCJjYXRjaCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL3JldHJpZXZlX2RvY3VtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gXCJhc3NlcnRcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gXCJjcnlwdG9cIlxuaW1wb3J0IHsgZGlmZmVyZW5jZUluRGF5cyB9IGZyb20gXCJkYXRlLWZuc1wiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHtcbiAgRG9jdW1lbnRGaWxlSW5mb3MsXG4gIERvY3VtZW50RmlsZXNJbmRleCxcbiAgd2Fsa0RvY3VtZW50QW5kRGl2aXNpb25zLFxufSBmcm9tIFwiLi4vZG9zc2llcnNfbGVnaXNsYXRpZnNcIlxuaW1wb3J0ICogYXMgZ2l0IGZyb20gXCIuLi9naXRcIlxuaW1wb3J0IHsgaXRlckxvYWRBc3NlbWJsZWVEb2N1bWVudHMsIHBhdGhGcm9tRG9jdW1lbnRVaWQgfSBmcm9tIFwiLi4vbG9hZGVyc1wiXG5pbXBvcnQgeyBwYXJzZVRleHRlIH0gZnJvbSBcIi4uL3BhcnNlcnNcIlxuaW1wb3J0IHsgRG9jdW1lbnRVcmxGb3JtYXQsIGl0ZXJEb2N1bWVudE9yRGl2aXNpb25VcmxzIH0gZnJvbSBcIi4uL3VybHNcIlxuaW1wb3J0IHtcbiAgY29tbWl0T3B0aW9uLFxuICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAgbGVnaXNsYXR1cmVPcHRpb24sXG4gIHB1bGxPcHRpb24sXG4gIHJlbW90ZU9wdGlvbixcbiAgc2lsZW50T3B0aW9uLFxuICB2ZXJib3NlT3B0aW9uLFxuICBkb2N1bWVudEZvcm1hdE9wdGlvbixcbn0gZnJvbSBcIi4vc2hhcmVkL2NsaV9oZWxwZXJzXCJcblxuZnVuY3Rpb24gcGFyc2VBcmdzKGFyZ3Y6IHN0cmluZ1tdKTogYW55IHtcbiAgY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICAgIGNvbW1pdE9wdGlvbixcbiAgICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgICByZW1vdGVPcHRpb24sXG4gICAgc2lsZW50T3B0aW9uLFxuICAgIHZlcmJvc2VPcHRpb24sXG4gICAgZGF0YURpckRlZmF1bHRPcHRpb24sXG4gICAgcHVsbE9wdGlvbixcbiAgICB7XG4gICAgICBhbGlhczogXCJmXCIsXG4gICAgICBoZWxwOiBcInJldHJpZXZlIGFsbCBkb2N1bWVudHMsIGV2ZW4gYWxyZWFkeSByZXRyaWV2ZWQgb25lc1wiLFxuICAgICAgbmFtZTogXCJmdWxsXCIsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgIH0sXG4gICAge1xuICAgICAgYWxpYXM6IFwiblwiLFxuICAgICAgaGVscDogXCJ0cnkgdG8gYWxzbyByZXRyaWV2ZSBkb2N1bWVudHMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgbm90IGZvdW5kXCIsXG4gICAgICBuYW1lOiBcIm5vdC1mb3VuZFwiLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICAgIGRvY3VtZW50Rm9ybWF0T3B0aW9uLFxuICAgIHtcbiAgICAgIGFsaWFzOiBcIlRcIixcbiAgICAgIGhlbHA6IFwidHlwZSBvZiBkb2N1bWVudHMgdG8gcmV0cmlldmUgKGZvciBleGFtcGxlOiBQSU9OKVwiLFxuICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICBuYW1lOiBcImRvY3VtZW50LXR5cGVcIixcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICB9LFxuICBdXG4gIGNvbnN0IG9wdGlvbnMgPSBjb21tYW5kTGluZUFyZ3Mob3B0aW9uc0RlZmluaXRpb25zLCB7XG4gICAgYXJndjogYXJndixcbiAgfSlcbiAgcmV0dXJuIG9wdGlvbnNcbn1cblxuY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpXG5cbmFzeW5jIGZ1bmN0aW9uIGZldGNoV2l0aFJldHJ5KFxuICB1cmw6IHN0cmluZyxcbiAgcmV0cmllczogbnVtYmVyID0gMyxcbiAgYmFja29mZjogbnVtYmVyID0gMzAwLFxuKTogUHJvbWlzZTxSZXNwb25zZT4ge1xuICBmb3IgKGxldCBhdHRlbXB0ID0gMDsgYXR0ZW1wdCA8IHJldHJpZXM7IGF0dGVtcHQrKykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgZmV0Y2godXJsKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBpZiAoYXR0ZW1wdCA9PT0gcmV0cmllcyAtIDEpIHtcbiAgICAgICAgdGhyb3cgZXJyb3JcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYEZldGNoIGF0dGVtcHQgJHthdHRlbXB0ICsgMX0gZm9yICR7dXJsfSBmYWlsZWQuIFJldHJ5aW5nIGluICR7YmFja29mZn1tcy4uLmAsXG4gICAgICApXG4gICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBiYWNrb2ZmKSlcbiAgICAgIGJhY2tvZmYgKj0gMlxuICAgIH1cbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBmZXRjaCAke3VybH0gYWZ0ZXIgJHtyZXRyaWVzfSBhdHRlbXB0c2ApXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkb3dubG9hZEFuZFBhcnNlKFxuICBkb2N1bWVudDogYW55LFxuICBkb2N1bWVudHNEaXI6IHN0cmluZyxcbiAgb3B0aW9uczogYW55LFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmIChkb2N1bWVudC51aWQuc3Vic3RyaW5nKDQsIDYpID09PSBcIlNOXCIpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChvcHRpb25zLmxlZ2lzbGF0dXJlPy50b1N0cmluZygpICE9PSBkb2N1bWVudC5sZWdpc2xhdHVyZSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKG9wdGlvbnMuZmV0Y2hEb2N1bWVudHMpIHtcbiAgICBjb25zdCBkYXRhRGlyID0gb3B0aW9ucy5kYXRhRGlyXG4gICAgY29uc3QgZG9jdW1lbnRzRmlsZXNEaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgXCJEb2N1bWVudHNcIilcbiAgICBjb25zdCBkb2N1bWVudERpciA9IHBhdGhGcm9tRG9jdW1lbnRVaWQoXG4gICAgICBgJHtkb2N1bWVudHNEaXJ9L2RvY3VtZW50c2AsXG4gICAgICBkb2N1bWVudC51aWQsXG4gICAgKVxuICAgIGNvbnN0IGRvY3VtZW50RmlsZURpciA9IHBhdGhGcm9tRG9jdW1lbnRVaWQoZG9jdW1lbnRzRmlsZXNEaXIsIGRvY3VtZW50LnVpZClcblxuICAgIGZzLmVuc3VyZURpclN5bmMoZG9jdW1lbnRzRmlsZXNEaXIpXG4gICAgYXdhaXQgcHJvY2Vzc0RvY3VtZW50T3JEaXZpc2lvbihkb2N1bWVudCwgZG9jdW1lbnRzRmlsZXNEaXIsIG9wdGlvbnMpXG5cbiAgICBpZiAob3B0aW9ucy5wYXJzZURvY3VtZW50cykge1xuICAgICAgY29uc3QgZG9jdW1lbnRQYXRoID0gYCR7ZG9jdW1lbnREaXJ9Lmpzb25gXG4gICAgICBjb25zdCBodG1sUGF0aCA9IHBhdGguam9pbihkb2N1bWVudEZpbGVEaXIsIGBkeW4tb3BlbmRhdGEuaHRtbGApXG5cbiAgICAgIGlmIChmcy5leGlzdHNTeW5jKGh0bWxQYXRoKSkge1xuICAgICAgICBjb25zdCBodG1sID0gZnMucmVhZEZpbGVTeW5jKGh0bWxQYXRoLCB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSlcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBwYXJzZWREb2N1bWVudCA9IHBhcnNlVGV4dGUoXG4gICAgICAgICAgICBcImh0dHBzOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnJcIixcbiAgICAgICAgICAgIGh0bWwsXG4gICAgICAgICAgKVxuICAgICAgICAgIGlmIChwYXJzZWREb2N1bWVudCAmJiBmcy5leGlzdHNTeW5jKGRvY3VtZW50UGF0aCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGpzb24gPSBmcy5yZWFkRmlsZVN5bmMoZG9jdW1lbnRQYXRoLCB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSlcbiAgICAgICAgICAgIGNvbnN0IGRvY3VtZW50SnNvbiA9IEpTT04ucGFyc2UoanNvbilcbiAgICAgICAgICAgIGRvY3VtZW50SnNvbi5zdWJkaXZpc2lvbnMgPSBwYXJzZWREb2N1bWVudD8uc3ViZGl2aXNpb25zXG4gICAgICAgICAgICBmcy53cml0ZUZpbGVTeW5jKFxuICAgICAgICAgICAgICBkb2N1bWVudFBhdGgsXG4gICAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KGRvY3VtZW50SnNvbiwgbnVsbCwgMiksXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coYFVuYWJsZSB0byBwYXJzZSBkb2N1bWVudCAke2RvY3VtZW50LnVpZH1gKVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJldHJpZXZlRG9jdW1lbnRzKG9wdGlvbnM6IGFueSk6IFByb21pc2U8bnVtYmVyPiB7XG4gIGFzc2VydChcbiAgICAhb3B0aW9ucy5jb21taXQgfHwgIW9wdGlvbnMudWlkLFxuICAgICdPcHRpb25zIFwiY29tbWl0XCIgJiBcInVpZFwiIGFyZSBpbmNvbXBhdGlibGUnLFxuICApXG5cbiAgY29uc3QgZGF0YURpciA9IG9wdGlvbnMuZGF0YURpclxuICBjb25zdCBkb2N1bWVudHNEaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgXCJEb2N1bWVudHNcIilcbiAgaWYgKG9wdGlvbnMucHVsbCkge1xuICAgIGdpdC5yZXNldEFuZFB1bGwoZG9jdW1lbnRzRGlyKVxuICB9XG4gIGZzLmVuc3VyZURpclN5bmMoZG9jdW1lbnRzRGlyKVxuXG4gIGlmIChvcHRpb25zLmZ1bGwgJiYgIW9wdGlvbnMudWlkKSB7XG4gICAgZm9yIChjb25zdCBmaWxlbmFtZSBvZiBmcy5yZWFkZGlyU3luYyhkb2N1bWVudHNEaXIpKSB7XG4gICAgICBpZiAoZmlsZW5hbWVbMF0gPT09IFwiLlwiKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBmcy5yZW1vdmVTeW5jKHBhdGguam9pbihkb2N1bWVudHNEaXIsIGZpbGVuYW1lKSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBmaXJzdFVpZCA9IG9wdGlvbnMudWlkXG4gIGxldCBza2lwID0gQm9vbGVhbihmaXJzdFVpZClcbiAgZm9yIChjb25zdCB7IGRvY3VtZW50IH0gb2YgaXRlckxvYWRBc3NlbWJsZWVEb2N1bWVudHMoXG4gICAgZGF0YURpcixcbiAgICBvcHRpb25zLmxlZ2lzbGF0dXJlLFxuICApKSB7XG4gICAgZm9yIChjb25zdCBkb2N1bWVudE9yRGl2aXNpb24gb2Ygd2Fsa0RvY3VtZW50QW5kRGl2aXNpb25zKGRvY3VtZW50KSkge1xuICAgICAgLy8gSWdub3JlIGRvY3VtZW50cyBmcm9tIFPDqW5hdC5cbiAgICAgIGlmIChkb2N1bWVudE9yRGl2aXNpb24udWlkLnN1YnN0cmluZyg0LCA2KSA9PT0gXCJTTlwiKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGlmIChza2lwKSB7XG4gICAgICAgIGlmIChkb2N1bWVudE9yRGl2aXNpb24udWlkID09PSBmaXJzdFVpZCkge1xuICAgICAgICAgIHNraXAgPSBmYWxzZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYXdhaXQgcHJvY2Vzc0RvY3VtZW50T3JEaXZpc2lvbihkb2N1bWVudE9yRGl2aXNpb24sIGRvY3VtZW50c0Rpciwgb3B0aW9ucylcbiAgICB9XG4gIH1cblxuICBpZiAob3B0aW9ucy5jb21taXQpIHtcbiAgICByZXR1cm4gZ2l0LmNvbW1pdEFuZFB1c2goZG9jdW1lbnRzRGlyLCBcIk5vdXZlbGxlIG1vaXNzb25cIiwgb3B0aW9ucy5yZW1vdGUpXG4gIH1cbiAgcmV0dXJuIDBcbn1cblxuYXN5bmMgZnVuY3Rpb24gcHJvY2Vzc0RvY3VtZW50T3JEaXZpc2lvbihcbiAgZG9jdW1lbnRPckRpdmlzaW9uOiBhbnksXG4gIGRvY3VtZW50c0Rpcjogc3RyaW5nLFxuICBvcHRpb25zOiBhbnksXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZG9jdW1lbnREaXIgPSBwYXRoRnJvbURvY3VtZW50VWlkKGRvY3VtZW50c0RpciwgZG9jdW1lbnRPckRpdmlzaW9uLnVpZClcbiAgZnMuZW5zdXJlRGlyU3luYyhkb2N1bWVudERpcilcblxuICBjb25zdCBmaWxlbmFtZUJ5U2hhMjU2OiB7IFtkaWdlc3Q6IHN0cmluZ106IHN0cmluZyB9ID0ge31cbiAgY29uc3QgaW5kZXhQYXRoID0gcGF0aC5qb2luKGRvY3VtZW50RGlyLCBcImluZGV4Lmpzb25cIilcbiAgY29uc3QgaW5kZXggPSAoXG4gICAgZnMucGF0aEV4aXN0c1N5bmMoaW5kZXhQYXRoKSA/IGZzLnJlYWRKc29uU3luYyhpbmRleFBhdGgpIDoge31cbiAgKSBhcyBEb2N1bWVudEZpbGVzSW5kZXhcblxuICBmb3IgKGNvbnN0IHsgZm9ybWF0LCB0eXBlLCB1cmwgfSBvZiBpdGVyRG9jdW1lbnRPckRpdmlzaW9uVXJscyhcbiAgICBkb2N1bWVudE9yRGl2aXNpb24sXG4gICkpIHtcbiAgICBjb25zdCBmaWxlbmFtZSA9IGAke3R5cGV9LiR7Zm9ybWF0ID09PSBEb2N1bWVudFVybEZvcm1hdC5QZGYgPyBcInBkZlwiIDogXCJodG1sXCJ9YFxuXG4gICAgLy8gRmlsdGVyIGJ5IGZpbGUgZXh0ZW5zaW9uIGlmIG9wdGlvbiBpcyBwYXNzZWRcbiAgICBjb25zdCBmaWxlRXh0ZW5zaW9uID0gdXJsLnNwbGl0KFwiLlwiKS5wb3AoKVxuICAgIGlmIChvcHRpb25zLmZvcm1hdCAmJiBmaWxlRXh0ZW5zaW9uICYmIG9wdGlvbnMuZm9ybWF0ICE9PSBmaWxlRXh0ZW5zaW9uKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmIChcbiAgICAgIG9wdGlvbnMubGVnaXNsYXR1cmUgJiZcbiAgICAgIG9wdGlvbnMubGVnaXNsYXR1cmUudG9TdHJpbmcoKSAhPT0gZG9jdW1lbnRPckRpdmlzaW9uLmxlZ2lzbGF0dXJlXG4gICAgKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIC8vIEZpbHRlciBieSBkb2N1bWVudCB0eXBlIGlmIG9wdGlvbiBpcyBwYXNzZWRcbiAgICBjb25zdCBkb2N1bWVudFR5cGUgPSBkb2N1bWVudE9yRGl2aXNpb24uY2xhc3NpZmljYXRpb24/LnR5cGU/LmNvZGVcbiAgICBpZiAoXG4gICAgICBvcHRpb25zW1wiZG9jdW1lbnQtdHlwZVwiXSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAhb3B0aW9uc1tcImRvY3VtZW50LXR5cGVcIl0uaW5jbHVkZXMoZG9jdW1lbnRUeXBlKVxuICAgICkge1xuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICBsZXQgZm9ybWF0RmlsZXNJbmZvcyA9IGluZGV4W2Zvcm1hdF0gPz8gKGluZGV4W2Zvcm1hdF0gPSBbXSlcbiAgICBsZXQgZmlsZUluZm9zID1cbiAgICAgIGZvcm1hdEZpbGVzSW5mb3MuZmluZCgoZmlsZSkgPT4gZmlsZS51cmwgPT09IHVybCkgPz9cbiAgICAgICh7fSBhcyBEb2N1bWVudEZpbGVJbmZvcylcbiAgICBpZiAoIWZvcm1hdEZpbGVzSW5mb3MuaW5jbHVkZXMoZmlsZUluZm9zKSkge1xuICAgICAgZm9ybWF0RmlsZXNJbmZvcy5wdXNoKGZpbGVJbmZvcylcbiAgICB9XG4gICAgZmlsZUluZm9zLnVybCA9IHVybFxuXG4gICAgaWYgKGZpbGVJbmZvcy5zdGF0dXMgPT09IDIwMCAmJiAhb3B0aW9ucy5mdWxsKSB7XG4gICAgICBmaWxlbmFtZUJ5U2hhMjU2W2ZpbGVJbmZvcy5zaGEyNTYgYXMgc3RyaW5nXSA9IGZpbGVuYW1lXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAoXG4gICAgICBmaWxlSW5mb3Muc3RhdHVzID09PSA0MDQgJiZcbiAgICAgICFvcHRpb25zW1wibm90LWZvdW5kXCJdICYmXG4gICAgICBkaWZmZXJlbmNlSW5EYXlzKFxuICAgICAgICB0b2RheSxcbiAgICAgICAgZG9jdW1lbnRPckRpdmlzaW9uLmN5Y2xlRGVWaWUuY2hyb25vLmRhdGVDcmVhdGlvbiA/P1xuICAgICAgICAgIChkb2N1bWVudE9yRGl2aXNpb24uY3ljbGVEZVZpZS5jaHJvbm8uZGF0ZURlcG90IGFzIERhdGUgfCBzdHJpbmcpLFxuICAgICAgKSA+IDEwXG4gICAgKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgUmV0cmlldmluZyBkb2N1bWVudCBvciBkaXZpc2lvbiAke2RvY3VtZW50T3JEaXZpc2lvbi51aWR9IGF0ICR7dXJsfeKApmAsXG4gICAgICApXG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaFdpdGhSZXRyeSh1cmwpXG4gICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZG9jdW1lbnREaXIsIGZpbGVuYW1lKVxuXG4gICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICBjb25zdCBhcnJheUJ1ZmZlciA9IGF3YWl0IHJlc3BvbnNlLmFycmF5QnVmZmVyKClcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5mcm9tKGFycmF5QnVmZmVyKVxuICAgICAgaWYgKFxuICAgICAgICBmb3JtYXQgPT09IERvY3VtZW50VXJsRm9ybWF0LlBkZiAmJlxuICAgICAgICAhYnVmZmVyLnN1YmFycmF5KDAsIDQpLnRvU3RyaW5nKCkuc3RhcnRzV2l0aChcIiVQREZcIilcbiAgICAgICkge1xuICAgICAgICAvLyBJbnN0ZWFkIG9mIGEgUERGLCB0aGUgcmVjZWl2ZWQgZGF0YSBtYXkgYmUgYW4gSFRNTCBwYWdlIHdpdGggYSBtZXNzYWdlIGxpa2VcbiAgICAgICAgLy8gXCJEb2N1bWVudCBub24gZW5jb3JlIHB1Ymxpw6lcIi5cbiAgICAgICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgICAgICAgIGNvbnNvbGUud2FybihgICBQREYgXCIke3VybH1cIiBub3QgZm91bmQuYClcbiAgICAgICAgfVxuICAgICAgICBmcy5yZW1vdmVTeW5jKGZpbGVQYXRoKVxuICAgICAgICBkZWxldGUgZmlsZUluZm9zLmZpbGVuYW1lXG4gICAgICAgIGRlbGV0ZSBmaWxlSW5mb3Muc2hhMjU2XG4gICAgICAgIGZpbGVJbmZvcy5zdGF0dXMgPSA0MDRcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHNoYTI1NiA9IGNyZWF0ZUhhc2goXCJzaGEyNTZcIikudXBkYXRlKGJ1ZmZlcikuZGlnZXN0KFwiaGV4XCIpXG4gICAgICAgIGNvbnN0IGV4aXN0aW5nRmlsZW5hbWUgPSBmaWxlbmFtZUJ5U2hhMjU2W3NoYTI1Nl1cbiAgICAgICAgaWYgKGV4aXN0aW5nRmlsZW5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGZzLndyaXRlRmlsZVN5bmMoZmlsZVBhdGgsIGJ1ZmZlciwge1xuICAgICAgICAgICAgZW5jb2Rpbmc6IFwidXRmOFwiLFxuICAgICAgICAgIH0pXG4gICAgICAgICAgZmlsZUluZm9zLmZpbGVuYW1lID0gZmlsZW5hbWVcbiAgICAgICAgICBmaWxlbmFtZUJ5U2hhMjU2W3NoYTI1Nl0gPSBmaWxlbmFtZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZpbGVJbmZvcy5maWxlbmFtZSA9IGV4aXN0aW5nRmlsZW5hbWVcbiAgICAgICAgfVxuICAgICAgICBmaWxlSW5mb3Muc2hhMjU2ID0gc2hhMjU2XG4gICAgICAgIGZpbGVJbmZvcy5zdGF0dXMgPSByZXNwb25zZS5zdGF0dXNcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYCAgUGFnZSBcIiR7dXJsfVwiIG5vdCBmb3VuZC5gKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgIGAgIEVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgICB7IGNvZGU6IHJlc3BvbnNlLnN0YXR1cywgbWVzc2FnZTogcmVzcG9uc2Uuc3RhdHVzVGV4dCB9LFxuICAgICAgICAgICAgbnVsbCxcbiAgICAgICAgICAgIDIsXG4gICAgICAgICAgKX1gLFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBmcy5yZW1vdmVTeW5jKGZpbGVQYXRoKVxuICAgICAgZGVsZXRlIGZpbGVJbmZvcy5maWxlbmFtZVxuICAgICAgZGVsZXRlIGZpbGVJbmZvcy5zaGEyNTZcbiAgICAgIGZpbGVJbmZvcy5zdGF0dXMgPSByZXNwb25zZS5zdGF0dXNcbiAgICB9XG4gIH1cblxuICBmcy53cml0ZUpzb25TeW5jKGluZGV4UGF0aCwgaW5kZXgsIHsgZW5jb2Rpbmc6IFwidXRmLThcIiwgc3BhY2VzOiAyIH0pXG59XG5cbmZ1bmN0aW9uIG1haW4oYXJndjogYW55KTogUHJvbWlzZTxudW1iZXI+IHtcbiAgY29uc3Qgb3B0aW9ucyA9IHBhcnNlQXJncyhhcmd2KVxuICByZXR1cm4gcmV0cmlldmVEb2N1bWVudHMob3B0aW9ucylcbn1cblxuLyogaXN0YW5idWwgaWdub3JlIGlmICovXG5pZiAocHJvY2Vzcy5hcmd2WzFdLmVuZHNXaXRoKFwicmV0cmlldmVfZG9jdW1lbnRzLnRzXCIpKSB7XG4gIG1haW4ocHJvY2Vzcy5hcmd2KVxuICAgIC50aGVuKChleGl0Q29kZSkgPT4gcHJvY2Vzcy5leGl0KGV4aXRDb2RlKSlcbiAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhlcnJvcilcbiAgICAgIHByb2Nlc3MuZXhpdCgxKVxuICAgIH0pXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQU0sTUFBTSxRQUFRO0FBQzNCLE9BQU9DLGVBQWUsTUFBTSxtQkFBbUI7QUFDL0MsU0FBU0MsVUFBVSxRQUFRLFFBQVE7QUFDbkMsU0FBU0Ms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
|
|
@@ -34,30 +34,30 @@ var _datasets = require("../datasets");
|
|
|
34
34
|
var _legislatures = require("../types/legislatures");
|
|
35
35
|
var _cli_helpers = require("./shared/cli_helpers");
|
|
36
36
|
var _process_open_dataset = require("./process_open_dataset");
|
|
37
|
-
function _interopRequireDefault(
|
|
38
|
-
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw
|
|
39
|
-
function _createForOfIteratorHelper(
|
|
40
|
-
function _toConsumableArray(
|
|
37
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
38
|
+
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
39
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
40
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
41
41
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
42
|
-
function _unsupportedIterableToArray(
|
|
43
|
-
function _iterableToArray(
|
|
44
|
-
function _arrayWithoutHoles(
|
|
45
|
-
function _arrayLikeToArray(
|
|
46
|
-
function asyncGeneratorStep(
|
|
47
|
-
function _asyncToGenerator(
|
|
48
|
-
var optionsDefinitions = [_cli_helpers.categoriesOption, _cli_helpers.legislatureOption, _cli_helpers.silentOption, _cli_helpers.dataDirDefaultOption, _cli_helpers.fetchOption, _cli_helpers.fetchDocumentsOption];
|
|
42
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
43
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
44
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
45
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
46
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
47
|
+
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
48
|
+
var optionsDefinitions = [_cli_helpers.categoriesOption, _cli_helpers.legislatureOption, _cli_helpers.silentOption, _cli_helpers.dataDirDefaultOption, _cli_helpers.fetchOption, _cli_helpers.fetchDocumentsOption, _cli_helpers.parseDocumentsOption, _cli_helpers.documentFormatOption];
|
|
49
49
|
var options = (0, _commandLineArgs["default"])(optionsDefinitions);
|
|
50
50
|
function retrieveOpenData(_x) {
|
|
51
51
|
return _retrieveOpenData.apply(this, arguments);
|
|
52
52
|
}
|
|
53
53
|
function _retrieveOpenData() {
|
|
54
|
-
_retrieveOpenData = _asyncToGenerator(
|
|
54
|
+
_retrieveOpenData = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(dataDir) {
|
|
55
55
|
var enabledDatasets, chosenDatasets, _iterator, _step, dataset;
|
|
56
56
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
57
57
|
while (1) switch (_context.prev = _context.next) {
|
|
58
58
|
case 0:
|
|
59
59
|
enabledDatasets = (0, _datasets.getEnabledDatasets)(options.categories);
|
|
60
|
-
chosenDatasets = [].concat(_toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.ActeursEtOrganes ? _datasets.datasets.acteursEtOrganes : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Agendas ? _datasets.datasets.agendas : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Amendements ? _datasets.datasets.amendements : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.DossiersLegislatifs ? _datasets.datasets.dossiersLegislatifs : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Scrutins ? _datasets.datasets.scrutins : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Questions ? _datasets.datasets.questions : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.
|
|
60
|
+
chosenDatasets = [].concat(_toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.ActeursEtOrganes ? _datasets.datasets.acteursEtOrganes : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Agendas ? _datasets.datasets.agendas : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Amendements ? _datasets.datasets.amendements : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.DossiersLegislatifs ? _datasets.datasets.dossiersLegislatifs : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Scrutins ? _datasets.datasets.scrutins : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.Questions ? _datasets.datasets.questions : []), _toConsumableArray(enabledDatasets & _datasets.EnabledDatasets.ComptesRendusSeances ? _datasets.datasets.comptesRendusSeances : []));
|
|
61
61
|
if (options.legislature !== 0 && options.legislature !== undefined) {
|
|
62
62
|
chosenDatasets = chosenDatasets.filter(function (dataset) {
|
|
63
63
|
return dataset.legislature === _legislatures.Legislature.All || options.legislature === dataset.legislature;
|
|
@@ -68,38 +68,35 @@ function _retrieveOpenData() {
|
|
|
68
68
|
_iterator.s();
|
|
69
69
|
case 6:
|
|
70
70
|
if ((_step = _iterator.n()).done) {
|
|
71
|
-
_context.next =
|
|
71
|
+
_context.next = 12;
|
|
72
72
|
break;
|
|
73
73
|
}
|
|
74
74
|
dataset = _step.value;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
_context.next = 11;
|
|
79
|
-
return dataset.download({
|
|
75
|
+
_context.next = 10;
|
|
76
|
+
return (0, _process_open_dataset.processDataset)({
|
|
80
77
|
dataDir: dataDir,
|
|
81
78
|
dataset: dataset,
|
|
82
79
|
options: options
|
|
83
80
|
});
|
|
84
|
-
case
|
|
81
|
+
case 10:
|
|
85
82
|
_context.next = 6;
|
|
86
83
|
break;
|
|
87
|
-
case
|
|
88
|
-
_context.next =
|
|
84
|
+
case 12:
|
|
85
|
+
_context.next = 17;
|
|
89
86
|
break;
|
|
90
|
-
case
|
|
91
|
-
_context.prev =
|
|
87
|
+
case 14:
|
|
88
|
+
_context.prev = 14;
|
|
92
89
|
_context.t0 = _context["catch"](4);
|
|
93
90
|
_iterator.e(_context.t0);
|
|
94
|
-
case
|
|
95
|
-
_context.prev =
|
|
91
|
+
case 17:
|
|
92
|
+
_context.prev = 17;
|
|
96
93
|
_iterator.f();
|
|
97
|
-
return _context.finish(
|
|
98
|
-
case
|
|
94
|
+
return _context.finish(17);
|
|
95
|
+
case 20:
|
|
99
96
|
case "end":
|
|
100
97
|
return _context.stop();
|
|
101
98
|
}
|
|
102
|
-
}, _callee, null, [[4,
|
|
99
|
+
}, _callee, null, [[4, 14, 17, 20]]);
|
|
103
100
|
}));
|
|
104
101
|
return _retrieveOpenData.apply(this, arguments);
|
|
105
102
|
}
|
|
@@ -107,4 +104,4 @@ retrieveOpenData(options.dataDir)["catch"](function (error) {
|
|
|
107
104
|
console.log(error);
|
|
108
105
|
process.exit(1);
|
|
109
106
|
});
|
|
110
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZExpbmVBcmdzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZGF0YXNldHMiLCJfbGVnaXNsYXR1cmVzIiwiX2NsaV9oZWxwZXJzIiwiX3Byb2Nlc3Nfb3Blbl9kYXRhc2V0Iiwib2JqIiwiX19lc01vZHVsZSIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJlIiwidCIsInIiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJuIiwiaGFzT3duUHJvcGVydHkiLCJvIiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImkiLCJTeW1ib2wiLCJhIiwiaXRlcmF0b3IiLCJjIiwiYXN5bmNJdGVyYXRvciIsInUiLCJ0b1N0cmluZ1RhZyIsImRlZmluZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIndyYXAiLCJHZW5lcmF0b3IiLCJjcmVhdGUiLCJDb250ZXh0IiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwidHlwZSIsImFyZyIsImNhbGwiLCJoIiwibCIsImYiLCJzIiwieSIsIkdlbmVyYXRvckZ1bmN0aW9uIiwiR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUiLCJwIiwiZCIsImdldFByb3RvdHlwZU9mIiwidiIsInZhbHVlcyIsImciLCJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCJmb3JFYWNoIiwiX2ludm9rZSIsIkFzeW5jSXRlcmF0b3IiLCJpbnZva2UiLCJfdHlwZW9mIiwicmVzb2x2ZSIsIl9fYXdhaXQiLCJ0aGVuIiwiY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmciLCJFcnJvciIsImRvbmUiLCJtZXRob2QiLCJkZWxlZ2F0ZSIsIm1heWJlSW52b2tlRGVsZWdhdGUiLCJzZW50IiwiX3NlbnQiLCJkaXNwYXRjaEV4Y2VwdGlvbiIsImFicnVwdCIsIlR5cGVFcnJvciIsInJlc3VsdE5hbWUiLCJuZXh0IiwibmV4dExvYyIsInB1c2hUcnlFbnRyeSIsInRyeUxvYyIsImNhdGNoTG9jIiwiZmluYWxseUxvYyIsImFmdGVyTG9jIiwidHJ5RW50cmllcyIsInB1c2giLCJyZXNldFRyeUVudHJ5IiwiY29tcGxldGlvbiIsInJlc2V0IiwiaXNOYU4iLCJsZW5ndGgiLCJkaXNwbGF5TmFtZSIsImlzR2VuZXJhdG9yRnVuY3Rpb24iLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJtYXJrIiwic2V0UHJvdG90eXBlT2YiLCJfX3Byb3RvX18iLCJhd3JhcCIsImFzeW5jIiwiUHJvbWlzZSIsImtleXMiLCJyZXZlcnNlIiwicG9wIiwicHJldiIsImNoYXJBdCIsInNsaWNlIiwic3RvcCIsInJ2YWwiLCJoYW5kbGUiLCJjb21wbGV0ZSIsImZpbmlzaCIsIl9jYXRjaCIsImRlbGVnYXRlWWllbGQiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsImFsbG93QXJyYXlMaWtlIiwiaXQiLCJBcnJheSIsImlzQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJGIiwiX2UiLCJub3JtYWxDb21wbGV0aW9uIiwiZGlkRXJyIiwiZXJyIiwic3RlcCIsIl9lMiIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJtaW5MZW4iLCJfYXJyYXlMaWtlVG9BcnJheSIsInRvU3RyaW5nIiwiZnJvbSIsInRlc3QiLCJpdGVyIiwibGVuIiwiYXJyMiIsImFzeW5jR2VuZXJhdG9yU3RlcCIsImdlbiIsInJlamVjdCIsIl9uZXh0IiwiX3Rocm93Iiwia2V5IiwiaW5mbyIsImVycm9yIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJmbiIsInNlbGYiLCJhcmdzIiwiYXJndW1lbnRzIiwiYXBwbHkiLCJ1bmRlZmluZWQiLCJvcHRpb25zRGVmaW5pdGlvbnMiLCJjYXRlZ29yaWVzT3B0aW9uIiwibGVnaXNsYXR1cmVPcHRpb24iLCJzaWxlbnRPcHRpb24iLCJkYXRhRGlyRGVmYXVsdE9wdGlvbiIsImZldGNoT3B0aW9uIiwiZmV0Y2hEb2N1bWVudHNPcHRpb24iLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwicmV0cmlldmVPcGVuRGF0YSIsIl94IiwiX3JldHJpZXZlT3BlbkRhdGEiLCJfY2FsbGVlIiwiZGF0YURpciIsImVuYWJsZWREYXRhc2V0cyIsImNob3NlbkRhdGFzZXRzIiwiX2l0ZXJhdG9yIiwiX3N0ZXAiLCJkYXRhc2V0IiwiX2NhbGxlZSQiLCJfY29udGV4dCIsImdldEVuYWJsZWREYXRhc2V0cyIsImNhdGVnb3JpZXMiLCJjb25jYXQiLCJFbmFibGVkRGF0YXNldHMiLCJBY3RldXJzRXRPcmdhbmVzIiwiZGF0YXNldHMiLCJhY3RldXJzRXRPcmdhbmVzIiwiQWdlbmRhcyIsImFnZW5kYXMiLCJBbWVuZGVtZW50cyIsImFtZW5kZW1lbnRzIiwiRG9zc2llcnNMZWdpc2xhdGlmcyIsImRvc3NpZXJzTGVnaXNsYXRpZnMiLCJTY3J1dGlucyIsInNjcnV0aW5zIiwiUXVlc3Rpb25zIiwicXVlc3Rpb25zIiwiVGV4dGVzTG9pIiwidGV4dGVzTG9pIiwiQ29tcHRlc1JlbmR1c1NlYW5jZXMiLCJjb21wdGVzUmVuZHVzU2VhbmNlcyIsImxlZ2lzbGF0dXJlIiwiZmlsdGVyIiwiTGVnaXNsYXR1cmUiLCJBbGwiLCJkb3dubG9hZCIsInByb2Nlc3NEYXRhc2V0IiwidDAiLCJjb25zb2xlIiwibG9nIiwicHJvY2VzcyIsImV4aXQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9yZXRyaWV2ZV9vcGVuX2RhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IHtcbiAgRGF0YXNldCxcbiAgZGF0YXNldHMsXG4gIEVuYWJsZWREYXRhc2V0cyxcbiAgZ2V0RW5hYmxlZERhdGFzZXRzLFxufSBmcm9tIFwiLi4vZGF0YXNldHNcIlxuaW1wb3J0IHsgTGVnaXNsYXR1cmUgfSBmcm9tIFwiLi4vdHlwZXMvbGVnaXNsYXR1cmVzXCJcbmltcG9ydCB7XG4gIGNhdGVnb3JpZXNPcHRpb24sXG4gIGRhdGFEaXJEZWZhdWx0T3B0aW9uLFxuICBmZXRjaE9wdGlvbixcbiAgZmV0Y2hEb2N1bWVudHNPcHRpb24sXG4gIGxlZ2lzbGF0dXJlT3B0aW9uLFxuICBzaWxlbnRPcHRpb24sXG59IGZyb20gXCIuL3NoYXJlZC9jbGlfaGVscGVyc1wiXG5pbXBvcnQgeyBwcm9jZXNzRGF0YXNldCB9IGZyb20gXCIuL3Byb2Nlc3Nfb3Blbl9kYXRhc2V0XCJcblxuY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICBjYXRlZ29yaWVzT3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgc2lsZW50T3B0aW9uLFxuICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAgZmV0Y2hPcHRpb24sXG4gIGZldGNoRG9jdW1lbnRzT3B0aW9uLFxuXVxuY29uc3Qgb3B0aW9ucyA9IGNvbW1hbmRMaW5lQXJncyhvcHRpb25zRGVmaW5pdGlvbnMpXG5cbmFzeW5jIGZ1bmN0aW9uIHJldHJpZXZlT3BlbkRhdGEoZGF0YURpcjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGVuYWJsZWREYXRhc2V0cyA9IGdldEVuYWJsZWREYXRhc2V0cyhvcHRpb25zLmNhdGVnb3JpZXMpXG5cbiAgbGV0IGNob3NlbkRhdGFzZXRzID0gW1xuICAgIC4uLihlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuQWN0ZXVyc0V0T3JnYW5lc1xuICAgICAgPyBkYXRhc2V0cy5hY3RldXJzRXRPcmdhbmVzXG4gICAgICA6IFtdKSxcbiAgICAuLi4oZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLkFnZW5kYXMgPyBkYXRhc2V0cy5hZ2VuZGFzIDogW10pLFxuICAgIC4uLihlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuQW1lbmRlbWVudHNcbiAgICAgID8gZGF0YXNldHMuYW1lbmRlbWVudHNcbiAgICAgIDogW10pLFxuICAgIC4uLihlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuRG9zc2llcnNMZWdpc2xhdGlmc1xuICAgICAgPyBkYXRhc2V0cy5kb3NzaWVyc0xlZ2lzbGF0aWZzXG4gICAgICA6IFtdKSxcbiAgICAuLi4oZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLlNjcnV0aW5zID8gZGF0YXNldHMuc2NydXRpbnMgOiBbXSksXG4gICAgLi4uKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5RdWVzdGlvbnMgPyBkYXRhc2V0cy5xdWVzdGlvbnMgOiBbXSksXG4gICAgLi4uKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5UZXh0ZXNMb2kgPyBkYXRhc2V0cy50ZXh0ZXNMb2kgOiBbXSksXG4gICAgLi4uKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5Db21wdGVzUmVuZHVzU2VhbmNlc1xuICAgICAgPyBkYXRhc2V0cy5jb21wdGVzUmVuZHVzU2VhbmNlc1xuICAgICAgOiBbXSksXG4gIF1cblxuICBpZiAob3B0aW9ucy5sZWdpc2xhdHVyZSAhPT0gMCAmJiBvcHRpb25zLmxlZ2lzbGF0dXJlICE9PSB1bmRlZmluZWQpIHtcbiAgICBjaG9zZW5EYXRhc2V0cyA9IGNob3NlbkRhdGFzZXRzLmZpbHRlcihcbiAgICAgIChkYXRhc2V0OiBEYXRhc2V0KSA9PlxuICAgICAgICBkYXRhc2V0LmxlZ2lzbGF0dXJlID09PSBMZWdpc2xhdHVyZS5BbGwgfHxcbiAgICAgICAgb3B0aW9ucy5sZWdpc2xhdHVyZSA9PT0gZGF0YXNldC5sZWdpc2xhdHVyZSxcbiAgICApXG4gIH1cblxuICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgY2hvc2VuRGF0YXNldHMpIHtcbiAgICBpZiAodHlwZW9mIGRhdGFzZXQuZG93bmxvYWQgIT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgZGF0YXNldC5kb3dubG9hZCA9IHByb2Nlc3NEYXRhc2V0XG4gICAgfVxuXG4gICAgYXdhaXQgZGF0YXNldC5kb3dubG9hZCh7IGRhdGFEaXIsIGRhdGFzZXQsIG9wdGlvbnMgfSlcbiAgfVxufVxuXG5yZXRyaWV2ZU9wZW5EYXRhKG9wdGlvbnMuZGF0YURpcikuY2F0Y2goKGVycm9yKSA9PiB7XG4gIGNvbnNvbGUubG9nKGVycm9yKVxuICBwcm9jZXNzLmV4aXQoMSlcbn0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxnQkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsU0FBQSxHQUFBRCxPQUFBO0FBTUEsSUFBQUUsYUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsWUFBQSxHQUFBSCxPQUFBO0FBUUEsSUFBQUkscUJBQUEsR0FBQUosT0FBQTtBQUF1RCxTQUFBRCx1QkFBQU0sR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLGdCQUFBQSxHQUFBO0FBQUEsU0FBQUUsb0JBQUEsa0JBZnZELHFKQUFBQSxtQkFBQSxZQUFBQSxvQkFBQSxXQUFBQyxDQUFBLFNBQUFDLENBQUEsRUFBQUQsQ0FBQSxPQUFBRSxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsU0FBQSxFQUFBQyxDQUFBLEdBQUFILENBQUEsQ0FBQUksY0FBQSxFQUFBQyxDQUFBLEdBQUFKLE1BQUEsQ0FBQUssY0FBQSxjQUFBUCxDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxJQUFBRCxDQUFBLENBQUFELENBQUEsSUFBQUUsQ0FBQSxDQUFBTyxLQUFBLEtBQUFDLENBQUEsd0JBQUFDLE1BQUEsR0FBQUEsTUFBQSxPQUFBQyxDQUFBLEdBQUFGLENBQUEsQ0FBQUcsUUFBQSxrQkFBQUMsQ0FBQSxHQUFBSixDQUFBLENBQUFLLGFBQUEsdUJBQUFDLENBQUEsR0FBQU4sQ0FBQSxDQUFBTyxXQUFBLDhCQUFBQyxPQUFBakIsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsV0FBQUMsTUFBQSxDQUFBSyxjQUFBLENBQUFQLENBQUEsRUFBQUQsQ0FBQSxJQUFBUyxLQUFBLEVBQUFQLENBQUEsRUFBQWlCLFVBQUEsTUFBQUMsWUFBQSxNQUFBQyxRQUFBLFNBQUFwQixDQUFBLENBQUFELENBQUEsV0FBQWtCLE1BQUEsbUJBQUFqQixDQUFBLElBQUFpQixNQUFBLFlBQUFBLE9BQUFqQixDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxXQUFBRCxDQUFBLENBQUFELENBQUEsSUFBQUUsQ0FBQSxnQkFBQW9CLEtBQUFyQixDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxFQUFBRyxDQUFBLFFBQUFLLENBQUEsR0FBQVYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFNBQUEsWUFBQW1CLFNBQUEsR0FBQXZCLENBQUEsR0FBQXVCLFNBQUEsRUFBQVgsQ0FBQSxHQUFBVCxNQUFBLENBQUFxQixNQUFBLENBQUFkLENBQUEsQ0FBQU4sU0FBQSxHQUFBVSxDQUFBLE9BQUFXLE9BQUEsQ0FBQXBCLENBQUEsZ0JBQUFFLENBQUEsQ0FBQUssQ0FBQSxlQUFBSCxLQUFBLEVBQUFpQixnQkFBQSxDQUFBekIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFZLENBQUEsTUFBQUYsQ0FBQSxhQUFBZSxTQUFBMUIsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsbUJBQUEwQixJQUFBLFlBQUFDLEdBQUEsRUFBQTVCLENBQUEsQ0FBQTZCLElBQUEsQ0FBQTlCLENBQUEsRUFBQUUsQ0FBQSxjQUFBRCxDQUFBLGFBQUEyQixJQUFBLFdBQUFDLEdBQUEsRUFBQTVCLENBQUEsUUFBQUQsQ0FBQSxDQUFBc0IsSUFBQSxHQUFBQSxJQUFBLE1BQUFTLENBQUEscUJBQUFDLENBQUEscUJBQUFDLENBQUEsZ0JBQUFDLENBQUEsZ0JBQUFDLENBQUEsZ0JBQUFaLFVBQUEsY0FBQWEsa0JBQUEsY0FBQUMsMkJBQUEsU0FBQUMsQ0FBQSxPQUFBcEIsTUFBQSxDQUFBb0IsQ0FBQSxFQUFBMUIsQ0FBQSxxQ0FBQTJCLENBQUEsR0FBQXBDLE1BQUEsQ0FBQXFDLGNBQUEsRUFBQUMsQ0FBQSxHQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUEsQ0FBQSxDQUFBRyxNQUFBLFFBQUFELENBQUEsSUFBQUEsQ0FBQSxLQUFBdkMsQ0FBQSxJQUFBRyxDQUFBLENBQUF5QixJQUFBLENBQUFXLENBQUEsRUFBQTdCLENBQUEsTUFBQTBCLENBQUEsR0FBQUcsQ0FBQSxPQUFBRSxDQUFBLEdBQUFOLDBCQUFBLENBQUFqQyxTQUFBLEdBQUFtQixTQUFBLENBQUFuQixTQUFBLEdBQUFELE1BQUEsQ0FBQXFCLE1BQUEsQ0FBQWMsQ0FBQSxZQUFBTSxzQkFBQTNDLENBQUEsZ0NBQUE0QyxPQUFBLFdBQUE3QyxDQUFBLElBQUFrQixNQUFBLENBQUFqQixDQUFBLEVBQUFELENBQUEsWUFBQUMsQ0FBQSxnQkFBQTZDLE9BQUEsQ0FBQTlDLENBQUEsRUFBQUMsQ0FBQSxzQkFBQThDLGNBQUE5QyxDQUFBLEVBQUFELENBQUEsYUFBQWdELE9BQUE5QyxDQUFBLEVBQUFLLENBQUEsRUFBQUcsQ0FBQSxFQUFBRSxDQUFBLFFBQUFFLENBQUEsR0FBQWEsUUFBQSxDQUFBMUIsQ0FBQSxDQUFBQyxDQUFBLEdBQUFELENBQUEsRUFBQU0sQ0FBQSxtQkFBQU8sQ0FBQSxDQUFBYyxJQUFBLFFBQUFaLENBQUEsR0FBQUYsQ0FBQSxDQUFBZSxHQUFBLEVBQUFFLENBQUEsR0FBQWYsQ0FBQSxDQUFBUCxLQUFBLFNBQUFzQixDQUFBLGdCQUFBa0IsT0FBQSxDQUFBbEIsQ0FBQSxLQUFBMUIsQ0FBQSxDQUFBeUIsSUFBQSxDQUFBQyxDQUFBLGVBQUEvQixDQUFBLENBQUFrRCxPQUFBLENBQUFuQixDQUFBLENBQUFvQixPQUFBLEVBQUFDLElBQUEsV0FBQW5ELENBQUEsSUFBQStDLE1BQUEsU0FBQS9DLENBQUEsRUFBQVMsQ0FBQSxFQUFBRSxDQUFBLGdCQUFBWCxDQUFBLElBQUErQyxNQUFBLFVBQUEvQyxDQUFBLEVBQUFTLENBQUEsRUFBQUUsQ0FBQSxRQUFBWixDQUFBLENBQUFrRCxPQUFBLENBQUFuQixDQUFBLEVBQUFxQixJQUFBLFdBQUFuRCxDQUFBLElBQUFlLENBQUEsQ0FBQVAsS0FBQSxHQUFBUixDQUFBLEVBQUFTLENBQUEsQ0FBQU0sQ0FBQSxnQkFBQWYsQ0FBQSxXQUFBK0MsTUFBQSxVQUFBL0MsQ0FBQSxFQUFBUyxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxDQUFBRSxDQUFBLENBQUFlLEdBQUEsU0FBQTNCLENBQUEsRUFBQUssQ0FBQSxvQkFBQUUsS0FBQSxXQUFBQSxNQUFBUixDQUFBLEVBQUFJLENBQUEsYUFBQWdELDJCQUFBLGVBQUFyRCxDQUFBLFdBQUFBLENBQUEsRUFBQUUsQ0FBQSxJQUFBOEMsTUFBQSxDQUFBL0MsQ0FBQSxFQUFBSSxDQUFBLEVBQUFMLENBQUEsRUFBQUUsQ0FBQSxnQkFBQUEsQ0FBQSxHQUFBQSxDQUFBLEdBQUFBLENBQUEsQ0FBQWtELElBQUEsQ0FBQUMsMEJBQUEsRUFBQUEsMEJBQUEsSUFBQUEsMEJBQUEscUJBQUEzQixpQkFBQTFCLENBQUEsRUFBQUUsQ0FBQSxFQUFBRyxDQUFBLFFBQUFFLENBQUEsR0FBQXdCLENBQUEsbUJBQUFyQixDQUFBLEVBQUFFLENBQUEsUUFBQUwsQ0FBQSxLQUFBMEIsQ0FBQSxZQUFBcUIsS0FBQSxzQ0FBQS9DLENBQUEsS0FBQTJCLENBQUEsb0JBQUF4QixDQUFBLFFBQUFFLENBQUEsV0FBQUgsS0FBQSxFQUFBUixDQUFBLEVBQUFzRCxJQUFBLGVBQUFsRCxDQUFBLENBQUFtRCxNQUFBLEdBQUE5QyxDQUFBLEVBQUFMLENBQUEsQ0FBQXdCLEdBQUEsR0FBQWpCLENBQUEsVUFBQUUsQ0FBQSxHQUFBVCxDQUFBLENBQUFvRCxRQUFBLE1BQUEzQyxDQUFBLFFBQUFFLENBQUEsR0FBQTBDLG1CQUFBLENBQUE1QyxDQUFBLEVBQUFULENBQUEsT0FBQVcsQ0FBQSxRQUFBQSxDQUFBLEtBQUFtQixDQUFBLG1CQUFBbkIsQ0FBQSxxQkFBQVgsQ0FBQSxDQUFBbUQsTUFBQSxFQUFBbkQsQ0FBQSxDQUFBc0QsSUFBQSxHQUFBdEQsQ0FBQSxDQUFBdUQsS0FBQSxHQUFBdkQsQ0FBQSxDQUFBd0IsR0FBQSxzQkFBQXhCLENBQUEsQ0FBQW1ELE1BQUEsUUFBQWpELENBQUEsS0FBQXdCLENBQUEsUUFBQXhCLENBQUEsR0FBQTJCLENBQUEsRUFBQTdCLENBQUEsQ0FBQXdCLEdBQUEsRUFBQXhCLENBQUEsQ0FBQXdELGlCQUFBLENBQUF4RCxDQUFBLENBQUF3QixHQUFBLHVCQUFBeEIsQ0FBQSxDQUFBbUQsTUFBQSxJQUFBbkQsQ0FBQSxDQUFBeUQsTUFBQSxXQUFBekQsQ0FBQSxDQUFBd0IsR0FBQSxHQUFBdEIsQ0FBQSxHQUFBMEIsQ0FBQSxNQUFBSyxDQUFBLEdBQUFYLFFBQUEsQ0FBQTNCLENBQUEsRUFBQUUsQ0FBQSxFQUFBRyxDQUFBLG9CQUFBaUMsQ0FBQSxDQUFBVixJQUFBLFFBQUFyQixDQUFBLEdBQUFGLENBQUEsQ0FBQWtELElBQUEsR0FBQXJCLENBQUEsR0FBQUYsQ0FBQSxFQUFBTSxDQUFBLENBQUFULEdBQUEsS0FBQU0sQ0FBQSxxQkFBQTFCLEtBQUEsRUFBQTZCLENBQUEsQ0FBQVQsR0FBQSxFQUFBMEIsSUFBQSxFQUFBbEQsQ0FBQSxDQUFBa0QsSUFBQSxrQkFBQWpCLENBQUEsQ0FBQVYsSUFBQSxLQUFBckIsQ0FBQSxHQUFBMkIsQ0FBQSxFQUFBN0IsQ0FBQSxDQUFBbUQsTUFBQSxZQUFBbkQsQ0FBQSxDQUFBd0IsR0FBQSxHQUFBUyxDQUFBLENBQUFULEdBQUEsbUJBQUE2QixvQkFBQTFELENBQUEsRUFBQUUsQ0FBQSxRQUFBRyxDQUFBLEdBQUFILENBQUEsQ0FBQXNELE1BQUEsRUFBQWpELENBQUEsR0FBQVAsQ0FBQSxDQUFBYSxRQUFBLENBQUFSLENBQUEsT0FBQUUsQ0FBQSxLQUFBTixDQUFBLFNBQUFDLENBQUEsQ0FBQXVELFFBQUEscUJBQUFwRCxDQUFBLElBQUFMLENBQUEsQ0FBQWEsUUFBQSxlQUFBWCxDQUFBLENBQUFzRCxNQUFBLGFBQUF0RCxDQUFBLENBQUEyQixHQUFBLEdBQUE1QixDQUFBLEVBQUF5RCxtQkFBQSxDQUFBMUQsQ0FBQSxFQUFBRSxDQUFBLGVBQUFBLENBQUEsQ0FBQXNELE1BQUEsa0JBQUFuRCxDQUFBLEtBQUFILENBQUEsQ0FBQXNELE1BQUEsWUFBQXRELENBQUEsQ0FBQTJCLEdBQUEsT0FBQWtDLFNBQUEsdUNBQUExRCxDQUFBLGlCQUFBOEIsQ0FBQSxNQUFBekIsQ0FBQSxHQUFBaUIsUUFBQSxDQUFBcEIsQ0FBQSxFQUFBUCxDQUFBLENBQUFhLFFBQUEsRUFBQVgsQ0FBQSxDQUFBMkIsR0FBQSxtQkFBQW5CLENBQUEsQ0FBQWtCLElBQUEsU0FBQTFCLENBQUEsQ0FBQXNELE1BQUEsWUFBQXRELENBQUEsQ0FBQTJCLEdBQUEsR0FBQW5CLENBQUEsQ0FBQW1CLEdBQUEsRUFBQTNCLENBQUEsQ0FBQXVELFFBQUEsU0FBQXRCLENBQUEsTUFBQXZCLENBQUEsR0FBQUYsQ0FBQSxDQUFBbUIsR0FBQSxTQUFBakIsQ0FBQSxHQUFBQSxDQUFBLENBQUEyQyxJQUFBLElBQUFyRCxDQUFBLENBQUFGLENBQUEsQ0FBQWdFLFVBQUEsSUFBQXBELENBQUEsQ0FBQUgsS0FBQSxFQUFBUCxDQUFBLENBQUErRCxJQUFBLEdBQUFqRSxDQUFBLENBQUFrRSxPQUFBLGVBQUFoRSxDQUFBLENBQUFzRCxNQUFBLEtBQUF0RCxDQUFBLENBQUFzRCxNQUFBLFdBQUF0RCxDQUFBLENBQUEyQixHQUFBLEdBQUE1QixDQUFBLEdBQUFDLENBQUEsQ0FBQXVELFFBQUEsU0FBQXRCLENBQUEsSUFBQXZCLENBQUEsSUFBQVYsQ0FBQSxDQUFBc0QsTUFBQSxZQUFBdEQsQ0FBQSxDQUFBMkIsR0FBQSxPQUFBa0MsU0FBQSxzQ0FBQTdELENBQUEsQ0FBQXVELFFBQUEsU0FBQXRCLENBQUEsY0FBQWdDLGFBQUFsRSxDQUFBLFFBQUFELENBQUEsS0FBQW9FLE1BQUEsRUFBQW5FLENBQUEsWUFBQUEsQ0FBQSxLQUFBRCxDQUFBLENBQUFxRSxRQUFBLEdBQUFwRSxDQUFBLFdBQUFBLENBQUEsS0FBQUQsQ0FBQSxDQUFBc0UsVUFBQSxHQUFBckUsQ0FBQSxLQUFBRCxDQUFBLENBQUF1RSxRQUFBLEdBQUF0RSxDQUFBLFdBQUF1RSxVQUFBLENBQUFDLElBQUEsQ0FBQXpFLENBQUEsY0FBQTBFLGNBQUF6RSxDQUFBLFFBQUFELENBQUEsR0FBQUMsQ0FBQSxDQUFBMEUsVUFBQSxRQUFBM0UsQ0FBQSxDQUFBNEIsSUFBQSxvQkFBQTVCLENBQUEsQ0FBQTZCLEdBQUEsRUFBQTVCLENBQUEsQ0FBQTBFLFVBQUEsR0FBQTNFLENBQUEsYUFBQXlCLFFBQUF4QixDQUFBLFNBQUF1RSxVQUFBLE1BQUFKLE1BQUEsYUFBQW5FLENBQUEsQ0FBQTRDLE9BQUEsQ0FBQXNCLFlBQUEsY0FBQVMsS0FBQSxpQkFBQWxDLE9BQUExQyxDQUFBLFFBQUFBLENBQUEsV0FBQUEsQ0FBQSxRQUFBRSxDQUFBLEdBQUFGLENBQUEsQ0FBQVksQ0FBQSxPQUFBVixDQUFBLFNBQUFBLENBQUEsQ0FBQTRCLElBQUEsQ0FBQTlCLENBQUEsNEJBQUFBLENBQUEsQ0FBQWlFLElBQUEsU0FBQWpFLENBQUEsT0FBQTZFLEtBQUEsQ0FBQTdFLENBQUEsQ0FBQThFLE1BQUEsU0FBQXZFLENBQUEsT0FBQUcsQ0FBQSxZQUFBdUQsS0FBQSxhQUFBMUQsQ0FBQSxHQUFBUCxDQUFBLENBQUE4RSxNQUFBLE9BQUF6RSxDQUFBLENBQUF5QixJQUFBLENBQUE5QixDQUFBLEVBQUFPLENBQUEsVUFBQTBELElBQUEsQ0FBQXhELEtBQUEsR0FBQVQsQ0FBQSxDQUFBTyxDQUFBLEdBQUEwRCxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxTQUFBQSxJQUFBLENBQUF4RCxLQUFBLEdBQUFSLENBQUEsRUFBQWdFLElBQUEsQ0FBQVYsSUFBQSxPQUFBVSxJQUFBLFlBQUF2RCxDQUFBLENBQUF1RCxJQUFBLEdBQUF2RCxDQUFBLGdCQUFBcUQsU0FBQSxDQUFBZCxPQUFBLENBQUFqRCxDQUFBLGtDQUFBb0MsaUJBQUEsQ0FBQWhDLFNBQUEsR0FBQWlDLDBCQUFBLEVBQUE5QixDQUFBLENBQUFvQyxDQUFBLG1CQUFBbEMsS0FBQSxFQUFBNEIsMEJBQUEsRUFBQWpCLFlBQUEsU0FBQWIsQ0FBQSxDQUFBOEIsMEJBQUEsbUJBQUE1QixLQUFBLEVBQUEyQixpQkFBQSxFQUFBaEIsWUFBQSxTQUFBZ0IsaUJBQUEsQ0FBQTJDLFdBQUEsR0FBQTdELE1BQUEsQ0FBQW1CLDBCQUFBLEVBQUFyQixDQUFBLHdCQUFBaEIsQ0FBQSxDQUFBZ0YsbUJBQUEsYUFBQS9FLENBQUEsUUFBQUQsQ0FBQSx3QkFBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFnRixXQUFBLFdBQUFqRixDQUFBLEtBQUFBLENBQUEsS0FBQW9DLGlCQUFBLDZCQUFBcEMsQ0FBQSxDQUFBK0UsV0FBQSxJQUFBL0UsQ0FBQSxDQUFBa0YsSUFBQSxPQUFBbEYsQ0FBQSxDQUFBbUYsSUFBQSxhQUFBbEYsQ0FBQSxXQUFBRSxNQUFBLENBQUFpRixjQUFBLEdBQUFqRixNQUFBLENBQUFpRixjQUFBLENBQUFuRixDQUFBLEVBQUFvQywwQkFBQSxLQUFBcEMsQ0FBQSxDQUFBb0YsU0FBQSxHQUFBaEQsMEJBQUEsRUFBQW5CLE1BQUEsQ0FBQWpCLENBQUEsRUFBQWUsQ0FBQSx5QkFBQWYsQ0FBQSxDQUFBRyxTQUFBLEdBQUFELE1BQUEsQ0FBQXFCLE1BQUEsQ0FBQW1CLENBQUEsR0FBQTFDLENBQUEsS0FBQUQsQ0FBQSxDQUFBc0YsS0FBQSxhQUFBckYsQ0FBQSxhQUFBa0QsT0FBQSxFQUFBbEQsQ0FBQSxPQUFBMkMscUJBQUEsQ0FBQUcsYUFBQSxDQUFBM0MsU0FBQSxHQUFBYyxNQUFBLENBQUE2QixhQUFBLENBQUEzQyxTQUFBLEVBQUFVLENBQUEsaUNBQUFkLENBQUEsQ0FBQStDLGFBQUEsR0FBQUEsYUFBQSxFQUFBL0MsQ0FBQSxDQUFBdUYsS0FBQSxhQUFBdEYsQ0FBQSxFQUFBQyxDQUFBLEVBQUFHLENBQUEsRUFBQUUsQ0FBQSxFQUFBRyxDQUFBLGVBQUFBLENBQUEsS0FBQUEsQ0FBQSxHQUFBOEUsT0FBQSxPQUFBNUUsQ0FBQSxPQUFBbUMsYUFBQSxDQUFBekIsSUFBQSxDQUFBckIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFHLENBQUEsRUFBQUUsQ0FBQSxHQUFBRyxDQUFBLFVBQUFWLENBQUEsQ0FBQWdGLG1CQUFBLENBQUE5RSxDQUFBLElBQUFVLENBQUEsR0FBQUEsQ0FBQSxDQUFBcUQsSUFBQSxHQUFBYixJQUFBLFdBQUFuRCxDQUFBLFdBQUFBLENBQUEsQ0FBQXNELElBQUEsR0FBQXRELENBQUEsQ0FBQVEsS0FBQSxHQUFBRyxDQUFBLENBQUFxRCxJQUFBLFdBQUFyQixxQkFBQSxDQUFBRCxDQUFBLEdBQUF6QixNQUFBLENBQUF5QixDQUFBLEVBQUEzQixDQUFBLGdCQUFBRSxNQUFBLENBQUF5QixDQUFBLEVBQUEvQixDQUFBLGlDQUFBTSxNQUFBLENBQUF5QixDQUFBLDZEQUFBM0MsQ0FBQSxDQUFBeUYsSUFBQSxhQUFBeEYsQ0FBQSxRQUFBRCxDQUFBLEdBQUFHLE1BQUEsQ0FBQUYsQ0FBQSxHQUFBQyxDQUFBLGdCQUFBRyxDQUFBLElBQUFMLENBQUEsRUFBQUUsQ0FBQSxDQUFBdUUsSUFBQSxDQUFBcEUsQ0FBQSxVQUFBSCxDQUFBLENBQUF3RixPQUFBLGFBQUF6QixLQUFBLFdBQUEvRCxDQUFBLENBQUE0RSxNQUFBLFNBQUE3RSxDQUFBLEdBQUFDLENBQUEsQ0FBQXlGLEdBQUEsUUFBQTFGLENBQUEsSUFBQUQsQ0FBQSxTQUFBaUUsSUFBQSxDQUFBeEQsS0FBQSxHQUFBUixDQUFBLEVBQUFnRSxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxXQUFBQSxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxRQUFBakUsQ0FBQSxDQUFBMEMsTUFBQSxHQUFBQSxNQUFBLEVBQUFqQixPQUFBLENBQUFyQixTQUFBLEtBQUE2RSxXQUFBLEVBQUF4RCxPQUFBLEVBQUFtRCxLQUFBLFdBQUFBLE1BQUE1RSxDQUFBLGFBQUE0RixJQUFBLFdBQUEzQixJQUFBLFdBQUFOLElBQUEsUUFBQUMsS0FBQSxHQUFBM0QsQ0FBQSxPQUFBc0QsSUFBQSxZQUFBRSxRQUFBLGNBQUFELE1BQUEsZ0JBQUEzQixHQUFBLEdBQUE1QixDQUFBLE9BQUF1RSxVQUFBLENBQUEzQixPQUFBLENBQUE2QixhQUFBLElBQUExRSxDQUFBLFdBQUFFLENBQUEsa0JBQUFBLENBQUEsQ0FBQTJGLE1BQUEsT0FBQXhGLENBQUEsQ0FBQXlCLElBQUEsT0FBQTVCLENBQUEsTUFBQTJFLEtBQUEsRUFBQTNFLENBQUEsQ0FBQTRGLEtBQUEsY0FBQTVGLENBQUEsSUFBQUQsQ0FBQSxNQUFBOEYsSUFBQSxXQUFBQSxLQUFBLFNBQUF4QyxJQUFBLFdBQUF0RCxDQUFBLFFBQUF1RSxVQUFBLElBQUFHLFVBQUEsa0JBQUExRSxDQUFBLENBQUEyQixJQUFBLFFBQUEzQixDQUFBLENBQUE0QixHQUFBLGNBQUFtRSxJQUFBLEtBQUFuQyxpQkFBQSxXQUFBQSxrQkFBQTdELENBQUEsYUFBQXVELElBQUEsUUFBQXZELENBQUEsTUFBQUUsQ0FBQSxrQkFBQStGLE9BQUE1RixDQUFBLEVBQUFFLENBQUEsV0FBQUssQ0FBQSxDQUFBZ0IsSUFBQSxZQUFBaEIsQ0FBQSxDQUFBaUIsR0FBQSxHQUFBN0IsQ0FBQSxFQUFBRSxDQUFBLENBQUErRCxJQUFBLEdBQUE1RCxDQUFBLEVBQUFFLENBQUEsS0FBQUwsQ0FBQSxDQUFBc0QsTUFBQSxXQUFBdEQsQ0FBQSxDQUFBMkIsR0FBQSxHQUFBNUIsQ0FBQSxLQUFBTSxDQUFBLGFBQUFBLENBQUEsUUFBQWlFLFVBQUEsQ0FBQU0sTUFBQSxNQUFBdkUsQ0FBQSxTQUFBQSxDQUFBLFFBQUFHLENBQUEsUUFBQThELFVBQUEsQ0FBQWpFLENBQUEsR0FBQUssQ0FBQSxHQUFBRixDQUFBLENBQUFpRSxVQUFBLGlCQUFBakUsQ0FBQSxDQUFBMEQsTUFBQSxTQUFBNkIsTUFBQSxhQUFBdkYsQ0FBQSxDQUFBMEQsTUFBQSxTQUFBd0IsSUFBQSxRQUFBOUUsQ0FBQSxHQUFBVCxDQUFBLENBQUF5QixJQUFBLENBQUFwQixDQUFBLGVBQUFNLENBQUEsR0FBQVgsQ0FBQSxDQUFBeUIsSUFBQSxDQUFBcEIsQ0FBQSxxQkFBQUksQ0FBQSxJQUFBRSxDQUFBLGFBQUE0RSxJQUFBLEdBQUFsRixDQUFBLENBQUEyRCxRQUFBLFNBQUE0QixNQUFBLENBQUF2RixDQUFBLENBQUEyRCxRQUFBLGdCQUFBdUIsSUFBQSxHQUFBbEYsQ0FBQSxDQUFBNEQsVUFBQSxTQUFBMkIsTUFBQSxDQUFBdkYsQ0FBQSxDQUFBNEQsVUFBQSxjQUFBeEQsQ0FBQSxhQUFBOEUsSUFBQSxHQUFBbEYsQ0FBQSxDQUFBMkQsUUFBQSxTQUFBNEIsTUFBQSxDQUFBdkYsQ0FBQSxDQUFBMkQsUUFBQSxxQkFBQXJELENBQUEsWUFBQXNDLEtBQUEscURBQUFzQyxJQUFBLEdBQUFsRixDQUFBLENBQUE0RCxVQUFBLFNBQUEyQixNQUFBLENBQUF2RixDQUFBLENBQUE0RCxVQUFBLFlBQUFSLE1BQUEsV0FBQUEsT0FBQTdELENBQUEsRUFBQUQsQ0FBQSxhQUFBRSxDQUFBLFFBQUFzRSxVQUFBLENBQUFNLE1BQUEsTUFBQTVFLENBQUEsU0FBQUEsQ0FBQSxRQUFBSyxDQUFBLFFBQUFpRSxVQUFBLENBQUF0RSxDQUFBLE9BQUFLLENBQUEsQ0FBQTZELE1BQUEsU0FBQXdCLElBQUEsSUFBQXZGLENBQUEsQ0FBQXlCLElBQUEsQ0FBQXZCLENBQUEsd0JBQUFxRixJQUFBLEdBQUFyRixDQUFBLENBQUErRCxVQUFBLFFBQUE1RCxDQUFBLEdBQUFILENBQUEsYUFBQUcsQ0FBQSxpQkFBQVQsQ0FBQSxtQkFBQUEsQ0FBQSxLQUFBUyxDQUFBLENBQUEwRCxNQUFBLElBQUFwRSxDQUFBLElBQUFBLENBQUEsSUFBQVUsQ0FBQSxDQUFBNEQsVUFBQSxLQUFBNUQsQ0FBQSxjQUFBRSxDQUFBLEdBQUFGLENBQUEsR0FBQUEsQ0FBQSxDQUFBaUUsVUFBQSxjQUFBL0QsQ0FBQSxDQUFBZ0IsSUFBQSxHQUFBM0IsQ0FBQSxFQUFBVyxDQUFBLENBQUFpQixHQUFBLEdBQUE3QixDQUFBLEVBQUFVLENBQUEsU0FBQThDLE1BQUEsZ0JBQUFTLElBQUEsR0FBQXZELENBQUEsQ0FBQTRELFVBQUEsRUFBQW5DLENBQUEsU0FBQStELFFBQUEsQ0FBQXRGLENBQUEsTUFBQXNGLFFBQUEsV0FBQUEsU0FBQWpHLENBQUEsRUFBQUQsQ0FBQSxvQkFBQUMsQ0FBQSxDQUFBMkIsSUFBQSxRQUFBM0IsQ0FBQSxDQUFBNEIsR0FBQSxxQkFBQTVCLENBQUEsQ0FBQTJCLElBQUEsbUJBQUEzQixDQUFBLENBQUEyQixJQUFBLFFBQUFxQyxJQUFBLEdBQUFoRSxDQUFBLENBQUE0QixHQUFBLGdCQUFBNUIsQ0FBQSxDQUFBMkIsSUFBQSxTQUFBb0UsSUFBQSxRQUFBbkUsR0FBQSxHQUFBNUIsQ0FBQSxDQUFBNEIsR0FBQSxPQUFBMkIsTUFBQSxrQkFBQVMsSUFBQSx5QkFBQWhFLENBQUEsQ0FBQTJCLElBQUEsSUFBQTVCLENBQUEsVUFBQWlFLElBQUEsR0FBQWpFLENBQUEsR0FBQW1DLENBQUEsS0FBQWdFLE1BQUEsV0FBQUEsT0FBQWxHLENBQUEsYUFBQUQsQ0FBQSxRQUFBd0UsVUFBQSxDQUFBTSxNQUFBLE1BQUE5RSxDQUFBLFNBQUFBLENBQUEsUUFBQUUsQ0FBQSxRQUFBc0UsVUFBQSxDQUFBeEUsQ0FBQSxPQUFBRSxDQUFBLENBQUFvRSxVQUFBLEtBQUFyRSxDQUFBLGNBQUFpRyxRQUFBLENBQUFoRyxDQUFBLENBQUF5RSxVQUFBLEVBQUF6RSxDQUFBLENBQUFxRSxRQUFBLEdBQUFHLGFBQUEsQ0FBQXhFLENBQUEsR0FBQWlDLENBQUEseUJBQUFpRSxPQUFBbkcsQ0FBQSxhQUFBRCxDQUFBLFFBQUF3RSxVQUFBLENBQUFNLE1BQUEsTUFBQTlFLENBQUEsU0FBQUEsQ0FBQSxRQUFBRSxDQUFBLFFBQUFzRSxVQUFBLENBQUF4RSxDQUFBLE9BQUFFLENBQUEsQ0FBQWtFLE1BQUEsS0FBQW5FLENBQUEsUUFBQUksQ0FBQSxHQUFBSCxDQUFBLENBQUF5RSxVQUFBLGtCQUFBdEUsQ0FBQSxDQUFBdUIsSUFBQSxRQUFBckIsQ0FBQSxHQUFBRixDQUFBLENBQUF3QixHQUFBLEVBQUE2QyxhQUFBLENBQUF4RSxDQUFBLFlBQUFLLENBQUEsZ0JBQUErQyxLQUFBLDhCQUFBK0MsYUFBQSxXQUFBQSxjQUFBckcsQ0FBQSxFQUFBRSxDQUFBLEVBQUFHLENBQUEsZ0JBQUFvRCxRQUFBLEtBQUE1QyxRQUFBLEVBQUE2QixNQUFBLENBQUExQyxDQUFBLEdBQUFnRSxVQUFBLEVBQUE5RCxDQUFBLEVBQUFnRSxPQUFBLEVBQUE3RCxDQUFBLG9CQUFBbUQsTUFBQSxVQUFBM0IsR0FBQSxHQUFBNUIsQ0FBQSxHQUFBa0MsQ0FBQSxPQUFBbkMsQ0FBQTtBQUFBLFNBQUFzRywyQkFBQS9GLENBQUEsRUFBQWdHLGNBQUEsUUFBQUMsRUFBQSxVQUFBN0YsTUFBQSxvQkFBQUosQ0FBQSxDQUFBSSxNQUFBLENBQUFFLFFBQUEsS0FBQU4sQ0FBQSxxQkFBQWlHLEVBQUEsUUFBQUMsS0FBQSxDQUFBQyxPQUFBLENBQUFuRyxDQUFBLE1BQUFpRyxFQUFBLEdBQUFHLDJCQUFBLENBQUFwRyxDQUFBLE1BQUFnRyxjQUFBLElBQUFoRyxDQUFBLFdBQUFBLENBQUEsQ0FBQXVFLE1BQUEscUJBQUEwQixFQUFBLEVBQUFqRyxDQUFBLEdBQUFpRyxFQUFBLE1BQUE5RixDQUFBLFVBQUFrRyxDQUFBLFlBQUFBLEVBQUEsZUFBQTFFLENBQUEsRUFBQTBFLENBQUEsRUFBQXZHLENBQUEsV0FBQUEsRUFBQSxRQUFBSyxDQUFBLElBQUFILENBQUEsQ0FBQXVFLE1BQUEsV0FBQXZCLElBQUEsbUJBQUFBLElBQUEsU0FBQTlDLEtBQUEsRUFBQUYsQ0FBQSxDQUFBRyxDQUFBLFVBQUFWLENBQUEsV0FBQUEsRUFBQTZHLEVBQUEsVUFBQUEsRUFBQSxLQUFBNUUsQ0FBQSxFQUFBMkUsQ0FBQSxnQkFBQTdDLFNBQUEsaUpBQUErQyxnQkFBQSxTQUFBQyxNQUFBLFVBQUFDLEdBQUEsV0FBQTlFLENBQUEsV0FBQUEsRUFBQSxJQUFBc0UsRUFBQSxHQUFBQSxFQUFBLENBQUExRSxJQUFBLENBQUF2QixDQUFBLE1BQUFGLENBQUEsV0FBQUEsRUFBQSxRQUFBNEcsSUFBQSxHQUFBVCxFQUFBLENBQUF2QyxJQUFBLElBQUE2QyxnQkFBQSxHQUFBRyxJQUFBLENBQUExRCxJQUFBLFNBQUEwRCxJQUFBLEtBQUFqSCxDQUFBLFdBQUFBLEVBQUFrSCxHQUFBLElBQUFILE1BQUEsU0FBQUMsR0FBQSxHQUFBRSxHQUFBLEtBQUFqRixDQUFBLFdBQUFBLEVBQUEsZUFBQTZFLGdCQUFBLElBQUFOLEVBQUEsb0JBQUFBLEVBQUEsOEJBQUFPLE1BQUEsUUFBQUMsR0FBQTtBQUFBLFNBQUFHLG1CQUFBQyxHQUFBLFdBQUFDLGtCQUFBLENBQUFELEdBQUEsS0FBQUUsZ0JBQUEsQ0FBQUYsR0FBQSxLQUFBVCwyQkFBQSxDQUFBUyxHQUFBLEtBQUFHLGtCQUFBO0FBQUEsU0FBQUEsbUJBQUEsY0FBQXhELFNBQUE7QUFBQSxTQUFBNEMsNEJBQUFwRyxDQUFBLEVBQUFpSCxNQUFBLFNBQUFqSCxDQUFBLHFCQUFBQSxDQUFBLHNCQUFBa0gsaUJBQUEsQ0FBQWxILENBQUEsRUFBQWlILE1BQUEsT0FBQW5ILENBQUEsR0FBQUYsTUFBQSxDQUFBQyxTQUFBLENBQUFzSCxRQUFBLENBQUE1RixJQUFBLENBQUF2QixDQUFBLEVBQUF1RixLQUFBLGFBQUF6RixDQUFBLGlCQUFBRSxDQUFBLENBQUEwRSxXQUFBLEVBQUE1RSxDQUFBLEdBQUFFLENBQUEsQ0FBQTBFLFdBQUEsQ0FBQUMsSUFBQSxNQUFBN0UsQ0FBQSxjQUFBQSxDQUFBLG1CQUFBb0csS0FBQSxDQUFBa0IsSUFBQSxDQUFBcEgsQ0FBQSxPQUFBRixDQUFBLCtEQUFBdUgsSUFBQSxDQUFBdkgsQ0FBQSxVQUFBb0gsaUJBQUEsQ0FBQWxILENBQUEsRUFBQWlILE1BQUE7QUFBQSxTQUFBRixpQkFBQU8sSUFBQSxlQUFBbEgsTUFBQSxvQkFBQWtILElBQUEsQ0FBQWxILE1BQUEsQ0FBQUUsUUFBQSxhQUFBZ0gsSUFBQSwrQkFBQXBCLEtBQUEsQ0FBQWtCLElBQUEsQ0FBQUUsSUFBQTtBQUFBLFNBQUFSLG1CQUFBRCxHQUFBLFFBQUFYLEtBQUEsQ0FBQUMsT0FBQSxDQUFBVSxHQUFBLFVBQUFLLGlCQUFBLENBQUFMLEdBQUE7QUFBQSxTQUFBSyxrQkFBQUwsR0FBQSxFQUFBVSxHQUFBLFFBQUFBLEdBQUEsWUFBQUEsR0FBQSxHQUFBVixHQUFBLENBQUF0QyxNQUFBLEVBQUFnRCxHQUFBLEdBQUFWLEdBQUEsQ0FBQXRDLE1BQUEsV0FBQXBFLENBQUEsTUFBQXFILElBQUEsT0FBQXRCLEtBQUEsQ0FBQXFCLEdBQUEsR0FBQXBILENBQUEsR0FBQW9ILEdBQUEsRUFBQXBILENBQUEsSUFBQXFILElBQUEsQ0FBQXJILENBQUEsSUFBQTBHLEdBQUEsQ0FBQTFHLENBQUEsVUFBQXFILElBQUE7QUFBQSxTQUFBQyxtQkFBQUMsR0FBQSxFQUFBL0UsT0FBQSxFQUFBZ0YsTUFBQSxFQUFBQyxLQUFBLEVBQUFDLE1BQUEsRUFBQUMsR0FBQSxFQUFBeEcsR0FBQSxjQUFBeUcsSUFBQSxHQUFBTCxHQUFBLENBQUFJLEdBQUEsRUFBQXhHLEdBQUEsT0FBQXBCLEtBQUEsR0FBQTZILElBQUEsQ0FBQTdILEtBQUEsV0FBQThILEtBQUEsSUFBQUwsTUFBQSxDQUFBSyxLQUFBLGlCQUFBRCxJQUFBLENBQUEvRSxJQUFBLElBQUFMLE9BQUEsQ0FBQXpDLEtBQUEsWUFBQStFLE9BQUEsQ0FBQXRDLE9BQUEsQ0FBQXpDLEtBQUEsRUFBQTJDLElBQUEsQ0FBQStFLEtBQUEsRUFBQUMsTUFBQTtBQUFBLFNBQUFJLGtCQUFBQyxFQUFBLDZCQUFBQyxJQUFBLFNBQUFDLElBQUEsR0FBQUMsU0FBQSxhQUFBcEQsT0FBQSxXQUFBdEMsT0FBQSxFQUFBZ0YsTUFBQSxRQUFBRCxHQUFBLEdBQUFRLEVBQUEsQ0FBQUksS0FBQSxDQUFBSCxJQUFBLEVBQUFDLElBQUEsWUFBQVIsTUFBQTFILEtBQUEsSUFBQXVILGtCQUFBLENBQUFDLEdBQUEsRUFBQS9FLE9BQUEsRUFBQWdGLE1BQUEsRUFBQUMsS0FBQSxFQUFBQyxNQUFBLFVBQUEzSCxLQUFBLGNBQUEySCxPQUFBcEIsR0FBQSxJQUFBZ0Isa0JBQUEsQ0FBQUMsR0FBQSxFQUFBL0UsT0FBQSxFQUFBZ0YsTUFBQSxFQUFBQyxLQUFBLEVBQUFDLE1BQUEsV0FBQXBCLEdBQUEsS0FBQW1CLEtBQUEsQ0FBQVcsU0FBQTtBQWlCQSxJQUFNQyxrQkFBa0IsR0FBRyxDQUN6QkMsNkJBQWdCLEVBQ2hCQyw4QkFBaUIsRUFDakJDLHlCQUFZLEVBQ1pDLGlDQUFvQixFQUNwQkMsd0JBQVcsRUFDWEMsaUNBQW9CLENBQ3JCO0FBQ0QsSUFBTUMsT0FBTyxHQUFHLElBQUFDLDJCQUFlLEVBQUNSLGtCQUFrQixDQUFDO0FBQUEsU0FFcENTLGdCQUFnQkEsQ0FBQUMsRUFBQTtFQUFBLE9BQUFDLGlCQUFBLENBQUFiLEtBQUEsT0FBQUQsU0FBQTtBQUFBO0FBQUEsU0FBQWMsa0JBQUE7RUFBQUEsaUJBQUEsR0FBQWxCLGlCQUFBLGVBQUF6SSxtQkFBQSxHQUFBb0YsSUFBQSxDQUEvQixTQUFBd0UsUUFBZ0NDLE9BQWU7SUFBQSxJQUFBQyxlQUFBLEVBQUFDLGNBQUEsRUFBQUMsU0FBQSxFQUFBQyxLQUFBLEVBQUFDLE9BQUE7SUFBQSxPQUFBbEssbUJBQUEsR0FBQXVCLElBQUEsVUFBQTRJLFNBQUFDLFFBQUE7TUFBQSxrQkFBQUEsUUFBQSxDQUFBdkUsSUFBQSxHQUFBdUUsUUFBQSxDQUFBbEcsSUFBQTtRQUFBO1VBQ3ZDNEYsZUFBZSxHQUFHLElBQUFPLDRCQUFrQixFQUFDZCxPQUFPLENBQUNlLFVBQVUsQ0FBQztVQUUxRFAsY0FBYyxNQUFBUSxNQUFBLENBQUFuRCxrQkFBQSxDQUNaMEMsZUFBZSxHQUFHVSx5QkFBZSxDQUFDQyxnQkFBZ0IsR0FDbERDLGtCQUFRLENBQUNDLGdCQUFnQixHQUN6QixFQUFFLEdBQUF2RCxrQkFBQSxDQUNGMEMsZUFBZSxHQUFHVSx5QkFBZSxDQUFDSSxPQUFPLEdBQUdGLGtCQUFRLENBQUNHLE9BQU8sR0FBRyxFQUFFLEdBQUF6RCxrQkFBQSxDQUNqRTBDLGVBQWUsR0FBR1UseUJBQWUsQ0FBQ00sV0FBVyxHQUM3Q0osa0JBQVEsQ0FBQ0ssV0FBVyxHQUNwQixFQUFFLEdBQUEzRCxrQkFBQSxDQUNGMEMsZUFBZSxHQUFHVSx5QkFBZSxDQUFDUSxtQkFBbUIsR0FDckROLGtCQUFRLENBQUNPLG1CQUFtQixHQUM1QixFQUFFLEdBQUE3RCxrQkFBQSxDQUNGMEMsZUFBZSxHQUFHVSx5QkFBZSxDQUFDVSxRQUFRLEdBQUdSLGtCQUFRLENBQUNTLFFBQVEsR0FBRyxFQUFFLEdBQUEvRCxrQkFBQSxDQUNuRTBDLGVBQWUsR0FBR1UseUJBQWUsQ0FBQ1ksU0FBUyxHQUFHVixrQkFBUSxDQUFDVyxTQUFTLEdBQUcsRUFBRSxHQUFBakUsa0JBQUEsQ0FDckUwQyxlQUFlLEdBQUdVLHlCQUFlLENBQUNjLFNBQVMsR0FBR1osa0JBQVEsQ0FBQ2EsU0FBUyxHQUFHLEVBQUUsR0FBQW5FLGtCQUFBLENBQ3JFMEMsZUFBZSxHQUFHVSx5QkFBZSxDQUFDZ0Isb0JBQW9CLEdBQ3REZCxrQkFBUSxDQUFDZSxvQkFBb0IsR0FDN0IsRUFBRTtVQUdSLElBQUlsQyxPQUFPLENBQUNtQyxXQUFXLEtBQUssQ0FBQyxJQUFJbkMsT0FBTyxDQUFDbUMsV0FBVyxLQUFLM0MsU0FBUyxFQUFFO1lBQ2xFZ0IsY0FBYyxHQUFHQSxjQUFjLENBQUM0QixNQUFNLENBQ3BDLFVBQUN6QixPQUFnQjtjQUFBLE9BQ2ZBLE9BQU8sQ0FBQ3dCLFdBQVcsS0FBS0UseUJBQVcsQ0FBQ0MsR0FBRyxJQUN2Q3RDLE9BQU8sQ0FBQ21DLFdBQVcsS0FBS3hCLE9BQU8sQ0FBQ3dCLFdBQVc7WUFBQSxDQUMvQyxDQUFDO1VBQ0g7VUFBQzFCLFNBQUEsR0FBQXpELDBCQUFBLENBRXFCd0QsY0FBYztVQUFBSyxRQUFBLENBQUF2RSxJQUFBO1VBQUFtRSxTQUFBLENBQUE3SCxDQUFBO1FBQUE7VUFBQSxLQUFBOEgsS0FBQSxHQUFBRCxTQUFBLENBQUExSixDQUFBLElBQUFrRCxJQUFBO1lBQUE0RyxRQUFBLENBQUFsRyxJQUFBO1lBQUE7VUFBQTtVQUF6QmdHLE9BQU8sR0FBQUQsS0FBQSxDQUFBdkosS0FBQTtVQUNoQixJQUFJLE9BQU93SixPQUFPLENBQUM0QixRQUFRLEtBQUssVUFBVSxFQUFFO1lBQzFDNUIsT0FBTyxDQUFDNEIsUUFBUSxHQUFHQyxvQ0FBYztVQUNuQztVQUFDM0IsUUFBQSxDQUFBbEcsSUFBQTtVQUFBLE9BRUtnRyxPQUFPLENBQUM0QixRQUFRLENBQUM7WUFBRWpDLE9BQU8sRUFBUEEsT0FBTztZQUFFSyxPQUFPLEVBQVBBLE9BQU87WUFBRVgsT0FBTyxFQUFQQTtVQUFRLENBQUMsQ0FBQztRQUFBO1VBQUFhLFFBQUEsQ0FBQWxHLElBQUE7VUFBQTtRQUFBO1VBQUFrRyxRQUFBLENBQUFsRyxJQUFBO1VBQUE7UUFBQTtVQUFBa0csUUFBQSxDQUFBdkUsSUFBQTtVQUFBdUUsUUFBQSxDQUFBNEIsRUFBQSxHQUFBNUIsUUFBQTtVQUFBSixTQUFBLENBQUEvSixDQUFBLENBQUFtSyxRQUFBLENBQUE0QixFQUFBO1FBQUE7VUFBQTVCLFFBQUEsQ0FBQXZFLElBQUE7VUFBQW1FLFNBQUEsQ0FBQTlILENBQUE7VUFBQSxPQUFBa0ksUUFBQSxDQUFBaEUsTUFBQTtRQUFBO1FBQUE7VUFBQSxPQUFBZ0UsUUFBQSxDQUFBcEUsSUFBQTtNQUFBO0lBQUEsR0FBQTRELE9BQUE7RUFBQSxDQUV4RDtFQUFBLE9BQUFELGlCQUFBLENBQUFiLEtBQUEsT0FBQUQsU0FBQTtBQUFBO0FBRURZLGdCQUFnQixDQUFDRixPQUFPLENBQUNNLE9BQU8sQ0FBQyxTQUFNLENBQUMsVUFBQ3JCLEtBQUssRUFBSztFQUNqRHlELE9BQU8sQ0FBQ0MsR0FBRyxDQUFDMUQsS0FBSyxDQUFDO0VBQ2xCMkQsT0FBTyxDQUFDQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2pCLENBQUMsQ0FBQyJ9
|
|
107
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZExpbmVBcmdzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZGF0YXNldHMiLCJfbGVnaXNsYXR1cmVzIiwiX2NsaV9oZWxwZXJzIiwiX3Byb2Nlc3Nfb3Blbl9kYXRhc2V0IiwiZSIsIl9fZXNNb2R1bGUiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwidCIsInIiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJuIiwiaGFzT3duUHJvcGVydHkiLCJvIiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImkiLCJTeW1ib2wiLCJhIiwiaXRlcmF0b3IiLCJjIiwiYXN5bmNJdGVyYXRvciIsInUiLCJ0b1N0cmluZ1RhZyIsImRlZmluZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIndyYXAiLCJHZW5lcmF0b3IiLCJjcmVhdGUiLCJDb250ZXh0IiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwidHlwZSIsImFyZyIsImNhbGwiLCJoIiwibCIsImYiLCJzIiwieSIsIkdlbmVyYXRvckZ1bmN0aW9uIiwiR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUiLCJwIiwiZCIsImdldFByb3RvdHlwZU9mIiwidiIsInZhbHVlcyIsImciLCJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCJmb3JFYWNoIiwiX2ludm9rZSIsIkFzeW5jSXRlcmF0b3IiLCJpbnZva2UiLCJfdHlwZW9mIiwicmVzb2x2ZSIsIl9fYXdhaXQiLCJ0aGVuIiwiY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmciLCJFcnJvciIsImRvbmUiLCJtZXRob2QiLCJkZWxlZ2F0ZSIsIm1heWJlSW52b2tlRGVsZWdhdGUiLCJzZW50IiwiX3NlbnQiLCJkaXNwYXRjaEV4Y2VwdGlvbiIsImFicnVwdCIsIlR5cGVFcnJvciIsInJlc3VsdE5hbWUiLCJuZXh0IiwibmV4dExvYyIsInB1c2hUcnlFbnRyeSIsInRyeUxvYyIsImNhdGNoTG9jIiwiZmluYWxseUxvYyIsImFmdGVyTG9jIiwidHJ5RW50cmllcyIsInB1c2giLCJyZXNldFRyeUVudHJ5IiwiY29tcGxldGlvbiIsInJlc2V0IiwiaXNOYU4iLCJsZW5ndGgiLCJkaXNwbGF5TmFtZSIsImlzR2VuZXJhdG9yRnVuY3Rpb24iLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJtYXJrIiwic2V0UHJvdG90eXBlT2YiLCJfX3Byb3RvX18iLCJhd3JhcCIsImFzeW5jIiwiUHJvbWlzZSIsImtleXMiLCJyZXZlcnNlIiwicG9wIiwicHJldiIsImNoYXJBdCIsInNsaWNlIiwic3RvcCIsInJ2YWwiLCJoYW5kbGUiLCJjb21wbGV0ZSIsImZpbmlzaCIsIl9jYXRjaCIsImRlbGVnYXRlWWllbGQiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsIkFycmF5IiwiaXNBcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9uIiwiRiIsIl90b0NvbnN1bWFibGVBcnJheSIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJfYXJyYXlMaWtlVG9BcnJheSIsInRvU3RyaW5nIiwiZnJvbSIsInRlc3QiLCJhc3luY0dlbmVyYXRvclN0ZXAiLCJfYXN5bmNUb0dlbmVyYXRvciIsImFyZ3VtZW50cyIsImFwcGx5IiwiX25leHQiLCJfdGhyb3ciLCJvcHRpb25zRGVmaW5pdGlvbnMiLCJjYXRlZ29yaWVzT3B0aW9uIiwibGVnaXNsYXR1cmVPcHRpb24iLCJzaWxlbnRPcHRpb24iLCJkYXRhRGlyRGVmYXVsdE9wdGlvbiIsImZldGNoT3B0aW9uIiwiZmV0Y2hEb2N1bWVudHNPcHRpb24iLCJwYXJzZURvY3VtZW50c09wdGlvbiIsImRvY3VtZW50Rm9ybWF0T3B0aW9uIiwib3B0aW9ucyIsImNvbW1hbmRMaW5lQXJncyIsInJldHJpZXZlT3BlbkRhdGEiLCJfeCIsIl9yZXRyaWV2ZU9wZW5EYXRhIiwiX2NhbGxlZSIsImRhdGFEaXIiLCJlbmFibGVkRGF0YXNldHMiLCJjaG9zZW5EYXRhc2V0cyIsIl9pdGVyYXRvciIsIl9zdGVwIiwiZGF0YXNldCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJnZXRFbmFibGVkRGF0YXNldHMiLCJjYXRlZ29yaWVzIiwiY29uY2F0IiwiRW5hYmxlZERhdGFzZXRzIiwiQWN0ZXVyc0V0T3JnYW5lcyIsImRhdGFzZXRzIiwiYWN0ZXVyc0V0T3JnYW5lcyIsIkFnZW5kYXMiLCJhZ2VuZGFzIiwiQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50cyIsIkRvc3NpZXJzTGVnaXNsYXRpZnMiLCJkb3NzaWVyc0xlZ2lzbGF0aWZzIiwiU2NydXRpbnMiLCJzY3J1dGlucyIsIlF1ZXN0aW9ucyIsInF1ZXN0aW9ucyIsIkNvbXB0ZXNSZW5kdXNTZWFuY2VzIiwiY29tcHRlc1JlbmR1c1NlYW5jZXMiLCJsZWdpc2xhdHVyZSIsInVuZGVmaW5lZCIsImZpbHRlciIsIkxlZ2lzbGF0dXJlIiwiQWxsIiwicHJvY2Vzc0RhdGFzZXQiLCJ0MCIsImVycm9yIiwiY29uc29sZSIsImxvZyIsInByb2Nlc3MiLCJleGl0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcmV0cmlldmVfb3Blbl9kYXRhLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjb21tYW5kTGluZUFyZ3MgZnJvbSBcImNvbW1hbmQtbGluZS1hcmdzXCJcbmltcG9ydCB7XG4gIERhdGFzZXQsXG4gIGRhdGFzZXRzLFxuICBFbmFibGVkRGF0YXNldHMsXG4gIGdldEVuYWJsZWREYXRhc2V0cyxcbn0gZnJvbSBcIi4uL2RhdGFzZXRzXCJcbmltcG9ydCB7IExlZ2lzbGF0dXJlIH0gZnJvbSBcIi4uL3R5cGVzL2xlZ2lzbGF0dXJlc1wiXG5pbXBvcnQge1xuICBjYXRlZ29yaWVzT3B0aW9uLFxuICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAgZmV0Y2hPcHRpb24sXG4gIGZldGNoRG9jdW1lbnRzT3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgc2lsZW50T3B0aW9uLFxuICBwYXJzZURvY3VtZW50c09wdGlvbixcbiAgZG9jdW1lbnRGb3JtYXRPcHRpb24sXG59IGZyb20gXCIuL3NoYXJlZC9jbGlfaGVscGVyc1wiXG5pbXBvcnQgeyBwcm9jZXNzRGF0YXNldCB9IGZyb20gXCIuL3Byb2Nlc3Nfb3Blbl9kYXRhc2V0XCJcblxuY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICBjYXRlZ29yaWVzT3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgc2lsZW50T3B0aW9uLFxuICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAgZmV0Y2hPcHRpb24sXG4gIGZldGNoRG9jdW1lbnRzT3B0aW9uLFxuICBwYXJzZURvY3VtZW50c09wdGlvbixcbiAgZG9jdW1lbnRGb3JtYXRPcHRpb24sXG5dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuYXN5bmMgZnVuY3Rpb24gcmV0cmlldmVPcGVuRGF0YShkYXRhRGlyOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZW5hYmxlZERhdGFzZXRzID0gZ2V0RW5hYmxlZERhdGFzZXRzKG9wdGlvbnMuY2F0ZWdvcmllcylcblxuICBsZXQgY2hvc2VuRGF0YXNldHMgPSBbXG4gICAgLi4uKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5BY3RldXJzRXRPcmdhbmVzXG4gICAgICA/IGRhdGFzZXRzLmFjdGV1cnNFdE9yZ2FuZXNcbiAgICAgIDogW10pLFxuICAgIC4uLihlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuQWdlbmRhcyA/IGRhdGFzZXRzLmFnZW5kYXMgOiBbXSksXG4gICAgLi4uKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5BbWVuZGVtZW50c1xuICAgICAgPyBkYXRhc2V0cy5hbWVuZGVtZW50c1xuICAgICAgOiBbXSksXG4gICAgLi4uKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5Eb3NzaWVyc0xlZ2lzbGF0aWZzXG4gICAgICA/IGRhdGFzZXRzLmRvc3NpZXJzTGVnaXNsYXRpZnNcbiAgICAgIDogW10pLFxuICAgIC4uLihlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuU2NydXRpbnMgPyBkYXRhc2V0cy5zY3J1dGlucyA6IFtdKSxcbiAgICAuLi4oZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLlF1ZXN0aW9ucyA/IGRhdGFzZXRzLnF1ZXN0aW9ucyA6IFtdKSxcbiAgICAuLi4oZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLkNvbXB0ZXNSZW5kdXNTZWFuY2VzXG4gICAgICA/IGRhdGFzZXRzLmNvbXB0ZXNSZW5kdXNTZWFuY2VzXG4gICAgICA6IFtdKSxcbiAgXVxuXG4gIGlmIChvcHRpb25zLmxlZ2lzbGF0dXJlICE9PSAwICYmIG9wdGlvbnMubGVnaXNsYXR1cmUgIT09IHVuZGVmaW5lZCkge1xuICAgIGNob3NlbkRhdGFzZXRzID0gY2hvc2VuRGF0YXNldHMuZmlsdGVyKFxuICAgICAgKGRhdGFzZXQ6IERhdGFzZXQpID0+XG4gICAgICAgIGRhdGFzZXQubGVnaXNsYXR1cmUgPT09IExlZ2lzbGF0dXJlLkFsbCB8fFxuICAgICAgICBvcHRpb25zLmxlZ2lzbGF0dXJlID09PSBkYXRhc2V0LmxlZ2lzbGF0dXJlLFxuICAgIClcbiAgfVxuXG4gIGZvciAoY29uc3QgZGF0YXNldCBvZiBjaG9zZW5EYXRhc2V0cykge1xuICAgIGF3YWl0IHByb2Nlc3NEYXRhc2V0KHsgZGF0YURpciwgZGF0YXNldCwgb3B0aW9ucyB9KVxuICB9XG59XG5cbnJldHJpZXZlT3BlbkRhdGEob3B0aW9ucy5kYXRhRGlyKS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgY29uc29sZS5sb2coZXJyb3IpXG4gIHByb2Nlc3MuZXhpdCgxKVxufSlcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLGdCQUFBLEdBQUFDLHNC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
|