@tricoteuses/assemblee 1.1.9 → 1.1.11

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.
Files changed (129) hide show
  1. package/LICENSE.md +5 -1
  2. package/README.md +69 -178
  3. package/lib/bugs/acteur-00010/plugin.test.js +1 -1
  4. package/lib/bugs/agenda-00002/plugin.test.js +1 -1
  5. package/lib/bugs/agenda-00002/plugin.test.mjs +1 -1
  6. package/lib/bugs/agenda-00002.js +3 -3
  7. package/lib/bugs/agenda-00002.mjs +2 -2
  8. package/lib/bugs/agenda-00008/plugin.test.js +1 -1
  9. package/lib/bugs/agenda-00011/plugin.test.js +1 -1
  10. package/lib/bugs/agenda-00011/plugin.test.mjs +1 -1
  11. package/lib/bugs/agenda-00011.js +1 -1
  12. package/lib/bugs/agenda-00011.mjs +1 -1
  13. package/lib/bugs.js +1 -1
  14. package/lib/bugs.mjs +1 -1
  15. package/lib/cleaners/acteurs.js +1 -1
  16. package/lib/cleaners/acteurs.mjs +1 -1
  17. package/lib/cleaners/amendements.js +1 -1
  18. package/lib/cleaners/amendements.mjs +1 -1
  19. package/lib/cleaners/debats.d.ts +1 -0
  20. package/lib/cleaners/debats.js +12 -0
  21. package/lib/cleaners/debats.mjs +5 -0
  22. package/lib/cleaners/index.d.ts +2 -0
  23. package/lib/cleaners/index.js +15 -1
  24. package/lib/cleaners/index.mjs +3 -1
  25. package/lib/cleaners/questions.d.ts +1 -0
  26. package/lib/cleaners/questions.js +12 -0
  27. package/lib/cleaners/questions.mjs +5 -0
  28. package/lib/cleaners/reunions.js +1 -1
  29. package/lib/cleaners/reunions.mjs +1 -1
  30. package/lib/cleaners/xml.js +12 -6
  31. package/lib/cleaners/xml.mjs +12 -6
  32. package/lib/datasets.d.ts +5 -1
  33. package/lib/datasets.js +62 -4
  34. package/lib/datasets.mjs +62 -4
  35. package/lib/dates.js +1 -1
  36. package/lib/dates.mjs +1 -1
  37. package/lib/dossiers_legislatifs.js +1 -1
  38. package/lib/dossiers_legislatifs.mjs +1 -1
  39. package/lib/file_systems.js +4 -4
  40. package/lib/file_systems.mjs +2 -2
  41. package/lib/git.js +1 -1
  42. package/lib/git.mjs +1 -1
  43. package/lib/loaders.d.ts +21 -0
  44. package/lib/loaders.js +608 -202
  45. package/lib/loaders.mjs +200 -3
  46. package/lib/organes.js +1 -1
  47. package/lib/organes.mjs +1 -1
  48. package/lib/parsers/documents.js +1 -1
  49. package/lib/parsers/documents.mjs +1 -1
  50. package/lib/parsers/recherche_amendements.js +3 -2
  51. package/lib/parsers/recherche_amendements.mjs +1 -1
  52. package/lib/raw_types/acteurs_et_organes.js +1 -1
  53. package/lib/raw_types/acteurs_et_organes.mjs +1 -1
  54. package/lib/raw_types/agendas.js +1 -1
  55. package/lib/raw_types/agendas.mjs +1 -1
  56. package/lib/raw_types/amendements.d.ts +2 -0
  57. package/lib/raw_types/amendements.js +5 -3
  58. package/lib/raw_types/amendements.mjs +5 -3
  59. package/lib/raw_types/debats.d.ts +190 -0
  60. package/lib/raw_types/debats.js +816 -0
  61. package/lib/raw_types/debats.mjs +758 -0
  62. package/lib/raw_types/dossiers_legislatifs.js +11 -2
  63. package/lib/raw_types/dossiers_legislatifs.mjs +1 -1
  64. package/lib/raw_types/questions.d.ts +129 -0
  65. package/lib/raw_types/questions.js +497 -0
  66. package/lib/raw_types/questions.mjs +439 -0
  67. package/lib/raw_types/scrutins.js +1 -1
  68. package/lib/raw_types/scrutins.mjs +1 -1
  69. package/lib/scripts/bugs_helper.js +1 -1
  70. package/lib/scripts/bugs_helper.mjs +1 -1
  71. package/lib/scripts/clean_reorganized_data.js +174 -24
  72. package/lib/scripts/clean_reorganized_data.mjs +127 -13
  73. package/lib/scripts/diff_amendements.js +1 -1
  74. package/lib/scripts/diff_amendements.mjs +1 -1
  75. package/lib/scripts/document_dossiers_legislatifs.js +1 -1
  76. package/lib/scripts/document_dossiers_legislatifs.mjs +1 -1
  77. package/lib/scripts/get_today_reunions.js +1 -1
  78. package/lib/scripts/get_today_reunions.mjs +1 -1
  79. package/lib/scripts/merge_scrutins.js +1 -1
  80. package/lib/scripts/merge_scrutins.mjs +1 -1
  81. package/lib/scripts/parse_textes_lois.js +4 -3
  82. package/lib/scripts/parse_textes_lois.mjs +1 -1
  83. package/lib/scripts/raw_types_from_amendements.js +1 -1
  84. package/lib/scripts/raw_types_from_amendements.mjs +1 -1
  85. package/lib/scripts/reorganize_data.js +189 -7
  86. package/lib/scripts/reorganize_data.mjs +136 -8
  87. package/lib/scripts/retrieve_deputes_photos.js +7 -1
  88. package/lib/scripts/retrieve_deputes_photos.mjs +7 -1
  89. package/lib/scripts/retrieve_documents.js +1 -1
  90. package/lib/scripts/retrieve_documents.mjs +1 -1
  91. package/lib/scripts/retrieve_open_data.js +105 -37
  92. package/lib/scripts/retrieve_open_data.mjs +34 -2
  93. package/lib/scripts/retrieve_pending_amendments.js +7 -1
  94. package/lib/scripts/retrieve_pending_amendments.mjs +7 -1
  95. package/lib/scripts/retrieve_senateurs_photos.js +10 -2
  96. package/lib/scripts/retrieve_senateurs_photos.mjs +7 -1
  97. package/lib/scripts/retrieve_textes_lois.js +1 -1
  98. package/lib/scripts/retrieve_textes_lois.mjs +1 -1
  99. package/lib/scripts/test_load.js +1 -1
  100. package/lib/scripts/test_load.mjs +1 -1
  101. package/lib/scripts/test_load_big_files.js +1 -1
  102. package/lib/scripts/test_load_big_files.mjs +1 -1
  103. package/lib/scripts/validate_json.js +1 -1
  104. package/lib/scripts/validate_json.mjs +1 -1
  105. package/lib/strings.js +1 -1
  106. package/lib/strings.mjs +1 -1
  107. package/lib/types/acteurs_et_organes.js +1 -1
  108. package/lib/types/acteurs_et_organes.mjs +1 -1
  109. package/lib/types/agendas.js +1 -1
  110. package/lib/types/agendas.mjs +1 -1
  111. package/lib/types/amendements.d.ts +2 -0
  112. package/lib/types/amendements.js +5 -3
  113. package/lib/types/amendements.mjs +5 -3
  114. package/lib/types/debats.d.ts +184 -0
  115. package/lib/types/debats.js +805 -0
  116. package/lib/types/debats.mjs +747 -0
  117. package/lib/types/dossiers_legislatifs.js +11 -2
  118. package/lib/types/dossiers_legislatifs.mjs +1 -1
  119. package/lib/types/questions.d.ts +122 -0
  120. package/lib/types/questions.js +482 -0
  121. package/lib/types/questions.mjs +424 -0
  122. package/lib/types/scrutins.js +1 -1
  123. package/lib/types/scrutins.mjs +1 -1
  124. package/lib/urls.js +1 -1
  125. package/lib/urls.mjs +1 -1
  126. package/package.json +14 -6
  127. package/lib/scripts/clean_data.d.ts +0 -1
  128. package/lib/scripts/clean_data.js +0 -309
  129. package/lib/scripts/clean_data.mjs +0 -171
@@ -0,0 +1,747 @@
1
+ // To parse this data:
2
+ //
3
+ // import { Convert, ComptesRendus } from "./file";
4
+ //
5
+ // const compteRendu = Convert.toComptesRendus(json);
6
+ //
7
+ // These functions will throw an error if the JSON doesn't
8
+ // match the expected interface, even if the JSON is valid.
9
+
10
+ export let Decision = /*#__PURE__*/function (Decision) {
11
+ Decision["AdoptionAmendementMainLev\xE9eAdt"] = "ADOPTION amendement (main lev\xE9e) adt";
12
+ Decision["AdoptionDUnArticleVote\xC0MainLev\xE9e"] = "ADOPTION d\u2019un article (vote \xE0 main lev\xE9e)";
13
+ Decision["AdoptionDUnSousAmendementMainLev\xE9eSsAdt"] = "ADOPTION d\u2019un sous-amendement (main lev\xE9e) ss-adt";
14
+ Decision["AdoptionDePlusieursAmendementsMainLev\xE9eAdts"] = "ADOPTION de plusieurs amendements (main lev\xE9e) adts";
15
+ Decision["AdoptionDePlusieursSousAmendementsMainLev\xE9eSsAdts"] = "ADOPTION de plusieurs sous-amendements (main lev\xE9e) ss-adts";
16
+ Decision["Empty"] = "";
17
+ Decision["RejetDUnAmendementMainLev\xE9eAdt"] = "REJET d\u2019un amendement (main lev\xE9e) adt";
18
+ Decision["RejetDUnArticleVote\xC0MainLev\xE9e"] = "REJET d\u2019un article (vote \xE0 main lev\xE9e)";
19
+ Decision["RejetDUnSousAmendementMainLev\xE9eSsAdt"] = "REJET d\u2019un sous-amendement (main lev\xE9e) ss-adt";
20
+ Decision["RejetDePlusieursAmendementsMainLev\xE9eAdts"] = "REJET de plusieurs amendements (main lev\xE9e) adts";
21
+ Decision["RejetDePlusieursSousAmendementsMainLev\xE9eSsAdts"] = "REJET de plusieurs sous-amendements (main lev\xE9e) ss-adts";
22
+ Decision["RejetMotionDeRejetPr\xE9alableMainLev\xE9e"] = "REJET motion de rejet pr\xE9alable (main lev\xE9e)";
23
+ return Decision;
24
+ }({});
25
+ // Converts JSON strings to/from your types
26
+ // and asserts the results of JSON.parse at runtime
27
+ export class Convert {
28
+ static toComptesRendus(json) {
29
+ return cast(JSON.parse(json), r("ComptesRendus"));
30
+ }
31
+ static comptesRendusToJson(value) {
32
+ return JSON.stringify(uncast(value, r("ComptesRendus")), null, 2);
33
+ }
34
+ static toCompteRendu(json) {
35
+ return cast(JSON.parse(json), r("CompteRendu"));
36
+ }
37
+ static compteRenduToJson(value) {
38
+ return JSON.stringify(uncast(value, r("CompteRendu")), null, 2);
39
+ }
40
+ }
41
+ function invalidValue(typ, val, key, parent = "") {
42
+ const prettyTyp = prettyTypeName(typ);
43
+ const parentText = parent ? ` on ${parent}` : "";
44
+ const keyText = key ? ` for key "${key}"` : "";
45
+ throw Error(`Invalid value${keyText}${parentText}. Expected ${prettyTyp} but got ${JSON.stringify(val)}`);
46
+ }
47
+ function prettyTypeName(typ) {
48
+ if (Array.isArray(typ)) {
49
+ if (typ.length === 2 && typ[0] === undefined) {
50
+ return `an optional ${prettyTypeName(typ[1])}`;
51
+ } else {
52
+ return `one of [${typ.map(a => {
53
+ return prettyTypeName(a);
54
+ }).join(", ")}]`;
55
+ }
56
+ } else if (typeof typ === "object" && typ.literal !== undefined) {
57
+ return typ.literal;
58
+ } else {
59
+ return typeof typ;
60
+ }
61
+ }
62
+ function jsonToJSProps(typ) {
63
+ if (typ.jsonToJS === undefined) {
64
+ const map = {};
65
+ typ.props.forEach(p => map[p.json] = {
66
+ key: p.js,
67
+ typ: p.typ
68
+ });
69
+ typ.jsonToJS = map;
70
+ }
71
+ return typ.jsonToJS;
72
+ }
73
+ function jsToJSONProps(typ) {
74
+ if (typ.jsToJSON === undefined) {
75
+ const map = {};
76
+ typ.props.forEach(p => map[p.js] = {
77
+ key: p.json,
78
+ typ: p.typ
79
+ });
80
+ typ.jsToJSON = map;
81
+ }
82
+ return typ.jsToJSON;
83
+ }
84
+ function transform(val, typ, getProps, key = "", parent = "") {
85
+ function transformPrimitive(typ, val) {
86
+ if (typeof typ === typeof val) return val;
87
+ return invalidValue(typ, val, key, parent);
88
+ }
89
+ function transformUnion(typs, val) {
90
+ // val must validate against one typ in typs
91
+ const l = typs.length;
92
+ for (let i = 0; i < l; i++) {
93
+ const typ = typs[i];
94
+ try {
95
+ return transform(val, typ, getProps);
96
+ } catch (_) {}
97
+ }
98
+ return invalidValue(typs, val, key, parent);
99
+ }
100
+ function transformEnum(cases, val) {
101
+ if (cases.indexOf(val) !== -1) return val;
102
+ return invalidValue(cases.map(a => {
103
+ return l(a);
104
+ }), val, key, parent);
105
+ }
106
+ function transformArray(typ, val) {
107
+ // val must be an array with no invalid elements
108
+ if (!Array.isArray(val)) return invalidValue(l("array"), val, key, parent);
109
+ return val.map(el => transform(el, typ, getProps));
110
+ }
111
+ function transformDate(val) {
112
+ if (val === null) {
113
+ return null;
114
+ }
115
+ const d = new Date(val);
116
+ if (isNaN(d.valueOf())) {
117
+ return invalidValue(l("Date"), val, key, parent);
118
+ }
119
+ return d;
120
+ }
121
+ function transformObject(props, additional, val) {
122
+ if (val === null || typeof val !== "object" || Array.isArray(val)) {
123
+ return invalidValue(l(ref || "object"), val, key, parent);
124
+ }
125
+ const result = {};
126
+ Object.getOwnPropertyNames(props).forEach(key => {
127
+ const prop = props[key];
128
+ const v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
129
+ result[prop.key] = transform(v, prop.typ, getProps, key, ref);
130
+ });
131
+ Object.getOwnPropertyNames(val).forEach(key => {
132
+ if (!Object.prototype.hasOwnProperty.call(props, key)) {
133
+ result[key] = transform(val[key], additional, getProps, key, ref);
134
+ }
135
+ });
136
+ return result;
137
+ }
138
+ if (typ === "any") return val;
139
+ if (typ === null) {
140
+ if (val === null) return val;
141
+ return invalidValue(typ, val, key, parent);
142
+ }
143
+ if (typ === false) return invalidValue(typ, val, key, parent);
144
+ let ref = undefined;
145
+ while (typeof typ === "object" && typ.ref !== undefined) {
146
+ ref = typ.ref;
147
+ typ = typeMap[typ.ref];
148
+ }
149
+ if (Array.isArray(typ)) return transformEnum(typ, val);
150
+ if (typeof typ === "object") {
151
+ return typ.hasOwnProperty("unionMembers") ? transformUnion(typ.unionMembers, val) : typ.hasOwnProperty("arrayItems") ? transformArray(typ.arrayItems, val) : typ.hasOwnProperty("props") ? transformObject(getProps(typ), typ.additional, val) : invalidValue(typ, val, key, parent);
152
+ }
153
+ // Numbers can be parsed by Date but shouldn't be.
154
+ if (typ === Date && typeof val !== "number") return transformDate(val);
155
+ return transformPrimitive(typ, val);
156
+ }
157
+ function cast(val, typ) {
158
+ return transform(val, typ, jsonToJSProps);
159
+ }
160
+ function uncast(val, typ) {
161
+ return transform(val, typ, jsToJSONProps);
162
+ }
163
+ function l(typ) {
164
+ return {
165
+ literal: typ
166
+ };
167
+ }
168
+ function a(typ) {
169
+ return {
170
+ arrayItems: typ
171
+ };
172
+ }
173
+ function u(...typs) {
174
+ return {
175
+ unionMembers: typs
176
+ };
177
+ }
178
+ function o(props, additional) {
179
+ return {
180
+ props,
181
+ additional
182
+ };
183
+ }
184
+
185
+ // function m(additional: any) {
186
+ // return { props: [], additional };
187
+ // }
188
+
189
+ function r(name) {
190
+ return {
191
+ ref: name
192
+ };
193
+ }
194
+ const typeMap = {
195
+ ComptesRendus: o([{
196
+ json: "comptesRendus",
197
+ js: "comptesRendus",
198
+ typ: a(r("CompteRendu"))
199
+ }], false),
200
+ CompteRendu: o([{
201
+ json: "schemaVersion",
202
+ js: "schemaVersion",
203
+ typ: u(undefined, "")
204
+ }, {
205
+ json: "uid",
206
+ js: "uid",
207
+ typ: u(undefined, "")
208
+ }, {
209
+ json: "seanceRef",
210
+ js: "seanceRef",
211
+ typ: ""
212
+ }, {
213
+ json: "sessionRef",
214
+ js: "sessionRef",
215
+ typ: ""
216
+ }, {
217
+ json: "metadonnees",
218
+ js: "metadonnees",
219
+ typ: r("Metadonnees")
220
+ }, {
221
+ json: "contenu",
222
+ js: "contenu",
223
+ typ: r("Contenu")
224
+ }], false),
225
+ Contenu: o([{
226
+ json: "quantiemes",
227
+ js: "quantiemes",
228
+ typ: r("Quantiemes")
229
+ }, {
230
+ json: "ouvertureSeance",
231
+ js: "ouvertureSeance",
232
+ typ: r("OuvertureSeance")
233
+ }, {
234
+ json: "point",
235
+ js: "point",
236
+ typ: u(a(r("Point")), r("Point"))
237
+ }, {
238
+ json: "finSeance",
239
+ js: "finSeance",
240
+ typ: u(undefined, r("FinSeance"))
241
+ }, {
242
+ json: "paragraphe",
243
+ js: "paragraphe",
244
+ typ: u(undefined, a(r("Point")))
245
+ }], false),
246
+ FinSeance: o([{
247
+ json: "point",
248
+ js: "point",
249
+ typ: r("FinSeancePoint")
250
+ }], false),
251
+ FinSeancePoint: o([{
252
+ json: "nivpoint",
253
+ js: "nivpoint",
254
+ typ: ""
255
+ }, {
256
+ json: "valeur_ptsodj",
257
+ js: "valeur_ptsodj",
258
+ typ: ""
259
+ }, {
260
+ json: "ordinal_prise",
261
+ js: "ordinal_prise",
262
+ typ: ""
263
+ }, {
264
+ json: "id_preparation",
265
+ js: "id_preparation",
266
+ typ: ""
267
+ }, {
268
+ json: "ordre_absolu_seance",
269
+ js: "ordre_absolu_seance",
270
+ typ: ""
271
+ }, {
272
+ json: "code_grammaire",
273
+ js: "code_grammaire",
274
+ typ: ""
275
+ }, {
276
+ json: "code_style",
277
+ js: "code_style",
278
+ typ: ""
279
+ }, {
280
+ json: "code_parole",
281
+ js: "code_parole",
282
+ typ: ""
283
+ }, {
284
+ json: "sommaire",
285
+ js: "sommaire",
286
+ typ: ""
287
+ }, {
288
+ json: "id_syceron",
289
+ js: "id_syceron",
290
+ typ: ""
291
+ }, {
292
+ json: "valeur",
293
+ js: "valeur",
294
+ typ: ""
295
+ }, {
296
+ json: "orateurs",
297
+ js: "orateurs",
298
+ typ: ""
299
+ }, {
300
+ json: "texte",
301
+ js: "texte",
302
+ typ: ""
303
+ }, {
304
+ json: "paragraphe",
305
+ js: "paragraphe",
306
+ typ: a(r("Point"))
307
+ }, {
308
+ json: "type_debat",
309
+ js: "type_debat",
310
+ typ: u(undefined, "")
311
+ }], false),
312
+ Orateurs: o([{
313
+ json: "orateur",
314
+ js: "orateur",
315
+ typ: u(a(r("OrateurElement")), r("OrateurElement"))
316
+ }], false),
317
+ OrateurElement: o([{
318
+ json: "nom",
319
+ js: "nom",
320
+ typ: u(undefined, "")
321
+ }, {
322
+ json: "id",
323
+ js: "id",
324
+ typ: u(undefined, "")
325
+ }, {
326
+ json: "qualite",
327
+ js: "qualite",
328
+ typ: u(undefined, "")
329
+ }], false),
330
+ Texte: o([{
331
+ json: "_",
332
+ js: "_",
333
+ typ: u(undefined, "")
334
+ }, {
335
+ json: "stime",
336
+ js: "stime",
337
+ typ: u(undefined, "")
338
+ }, {
339
+ json: "indice",
340
+ js: "indice",
341
+ typ: u(undefined, u(a(""), ""))
342
+ }], false),
343
+ OuvertureSeance: o([{
344
+ json: "nivpoint",
345
+ js: "nivpoint",
346
+ typ: u(undefined, "")
347
+ }, {
348
+ json: "valeur_ptsodj",
349
+ js: "valeur_ptsodj",
350
+ typ: ""
351
+ }, {
352
+ json: "ordinal_prise",
353
+ js: "ordinal_prise",
354
+ typ: ""
355
+ }, {
356
+ json: "id_preparation",
357
+ js: "id_preparation",
358
+ typ: ""
359
+ }, {
360
+ json: "ordre_absolu_seance",
361
+ js: "ordre_absolu_seance",
362
+ typ: ""
363
+ }, {
364
+ json: "id_acteur",
365
+ js: "id_acteur",
366
+ typ: ""
367
+ }, {
368
+ json: "id_mandat",
369
+ js: "id_mandat",
370
+ typ: ""
371
+ }, {
372
+ json: "id_nomination_oe",
373
+ js: "id_nomination_oe",
374
+ typ: ""
375
+ }, {
376
+ json: "id_nomination_op",
377
+ js: "id_nomination_op",
378
+ typ: ""
379
+ }, {
380
+ json: "code_grammaire",
381
+ js: "code_grammaire",
382
+ typ: ""
383
+ }, {
384
+ json: "code_style",
385
+ js: "code_style",
386
+ typ: ""
387
+ }, {
388
+ json: "code_parole",
389
+ js: "code_parole",
390
+ typ: ""
391
+ }, {
392
+ json: "sommaire",
393
+ js: "sommaire",
394
+ typ: ""
395
+ }, {
396
+ json: "id_syceron",
397
+ js: "id_syceron",
398
+ typ: ""
399
+ }, {
400
+ json: "valeur",
401
+ js: "valeur",
402
+ typ: ""
403
+ }, {
404
+ json: "orateurs",
405
+ js: "orateurs",
406
+ typ: u(r("Orateurs"), "")
407
+ }, {
408
+ json: "texte",
409
+ js: "texte",
410
+ typ: u(r("Texte"), "")
411
+ }, {
412
+ json: "paragraphe",
413
+ js: "paragraphe",
414
+ typ: u(undefined, a(r("Point")))
415
+ }, {
416
+ json: "interExtraction",
417
+ js: "interExtraction",
418
+ typ: u(undefined, r("InterExtraction"))
419
+ }, {
420
+ json: "point",
421
+ js: "point",
422
+ typ: u(undefined, r("Point"))
423
+ }], false),
424
+ InterExtraction: o([{
425
+ json: "nom_orateur",
426
+ js: "nom_orateur",
427
+ typ: u(undefined, "")
428
+ }, {
429
+ json: "qualite",
430
+ js: "nom_orateur",
431
+ typ: u(undefined, "")
432
+ }, {
433
+ json: "id_acteur",
434
+ js: "id_acteur",
435
+ typ: ""
436
+ }, {
437
+ json: "id_nomination_oe",
438
+ js: "id_nomination_oe",
439
+ typ: ""
440
+ }, {
441
+ json: "id_nomination_op",
442
+ js: "id_nomination_op",
443
+ typ: ""
444
+ }, {
445
+ json: "id_mandat",
446
+ js: "id_mandat",
447
+ typ: ""
448
+ }, {
449
+ json: "paragraphe",
450
+ js: "paragraphe",
451
+ typ: u(a(r("Point")), r("Point"))
452
+ }, {
453
+ json: "changementPresidence",
454
+ js: "changementPresidence",
455
+ typ: u(undefined, r("Point"))
456
+ }], false),
457
+ Point: o([{
458
+ json: "nivpoint",
459
+ js: "nivpoint",
460
+ typ: u(undefined, "")
461
+ }, {
462
+ json: "valeur_ptsodj",
463
+ js: "valeur_ptsodj",
464
+ typ: ""
465
+ }, {
466
+ json: "ordinal_prise",
467
+ js: "ordinal_prise",
468
+ typ: ""
469
+ }, {
470
+ json: "id_preparation",
471
+ js: "id_preparation",
472
+ typ: ""
473
+ }, {
474
+ json: "ordre_absolu_seance",
475
+ js: "ordre_absolu_seance",
476
+ typ: ""
477
+ }, {
478
+ json: "code_grammaire",
479
+ js: "code_grammaire",
480
+ typ: ""
481
+ }, {
482
+ json: "code_style",
483
+ js: "code_style",
484
+ typ: u(undefined, "")
485
+ }, {
486
+ json: "code_parole",
487
+ js: "code_parole",
488
+ typ: ""
489
+ }, {
490
+ json: "sommaire",
491
+ js: "sommaire",
492
+ typ: ""
493
+ }, {
494
+ json: "id_syceron",
495
+ js: "id_syceron",
496
+ typ: ""
497
+ }, {
498
+ json: "valeur",
499
+ js: "valeur",
500
+ typ: ""
501
+ }, {
502
+ json: "orateurs",
503
+ js: "orateurs",
504
+ typ: u(r("Orateurs"), "", undefined)
505
+ }, {
506
+ json: "texte",
507
+ js: "texte",
508
+ typ: u(r("Texte"), "", undefined)
509
+ }, {
510
+ json: "paragraphe",
511
+ js: "paragraphe",
512
+ typ: u(undefined, u(a(r("Point")), r("Point")))
513
+ }, {
514
+ json: "interExtraction",
515
+ js: "interExtraction",
516
+ typ: u(undefined, a(r("InterExtraction")), r("InterExtraction"))
517
+ }, {
518
+ json: "point",
519
+ js: "point",
520
+ typ: u(undefined, u(a(r("Point")), r("Point")))
521
+ }, {
522
+ json: "structure",
523
+ js: "structure",
524
+ typ: u(undefined, "")
525
+ }, {
526
+ json: "id_acteur",
527
+ js: "id_acteur",
528
+ typ: u(undefined, "")
529
+ }, {
530
+ json: "id_mandat",
531
+ js: "id_mandat",
532
+ typ: u(undefined, "")
533
+ }, {
534
+ json: "id_nomination_oe",
535
+ js: "id_nomination_oe",
536
+ typ: u(undefined, "")
537
+ }, {
538
+ json: "id_nomination_op",
539
+ js: "id_nomination_op",
540
+ typ: u(undefined, "")
541
+ }, {
542
+ json: "orateur",
543
+ js: "orateur",
544
+ typ: u(undefined, "")
545
+ }, {
546
+ json: "bibard",
547
+ js: "bibard",
548
+ typ: u(undefined, "")
549
+ }, {
550
+ json: "art",
551
+ js: "art",
552
+ typ: u(undefined, "")
553
+ }, {
554
+ json: "adt",
555
+ js: "adt",
556
+ typ: u(undefined, "")
557
+ }, {
558
+ json: "ssadt",
559
+ js: "ssadt",
560
+ typ: u(undefined, "")
561
+ }, {
562
+ json: "roledebat",
563
+ js: "roledebat",
564
+ typ: u(undefined, "")
565
+ }, {
566
+ json: "type_debat",
567
+ js: "type_debat",
568
+ typ: u(undefined, "")
569
+ }, {
570
+ json: "changementPresidence",
571
+ js: "changementPresidence",
572
+ typ: u(undefined, r("Point"))
573
+ }, {
574
+ json: "decision",
575
+ js: "decision",
576
+ typ: u(undefined, r("Decision"))
577
+ }], false),
578
+ Quantiemes: o([{
579
+ json: "journee",
580
+ js: "journee",
581
+ typ: ""
582
+ }, {
583
+ json: "session",
584
+ js: "session",
585
+ typ: ""
586
+ }], false),
587
+ Metadonnees: o([{
588
+ json: "dateSeance",
589
+ js: "dateSeance",
590
+ typ: ""
591
+ }, {
592
+ json: "dateSeanceJour",
593
+ js: "dateSeanceJour",
594
+ typ: ""
595
+ }, {
596
+ json: "numSeanceJour",
597
+ js: "numSeanceJour",
598
+ typ: ""
599
+ }, {
600
+ json: "numSeance",
601
+ js: "numSeance",
602
+ typ: ""
603
+ }, {
604
+ json: "typeAssemblee",
605
+ js: "typeAssemblee",
606
+ typ: ""
607
+ }, {
608
+ json: "legislature",
609
+ js: "legislature",
610
+ typ: ""
611
+ }, {
612
+ json: "session",
613
+ js: "session",
614
+ typ: ""
615
+ }, {
616
+ json: "nomFichierJo",
617
+ js: "nomFichierJo",
618
+ typ: ""
619
+ }, {
620
+ json: "validite",
621
+ js: "validite",
622
+ typ: ""
623
+ }, {
624
+ json: "etat",
625
+ js: "etat",
626
+ typ: ""
627
+ }, {
628
+ json: "diffusion",
629
+ js: "diffusion",
630
+ typ: ""
631
+ }, {
632
+ json: "version",
633
+ js: "version",
634
+ typ: ""
635
+ }, {
636
+ json: "environnement",
637
+ js: "environnement",
638
+ typ: ""
639
+ }, {
640
+ json: "heureGeneration",
641
+ js: "heureGeneration",
642
+ typ: Date
643
+ }, {
644
+ json: "sommaire",
645
+ js: "sommaire",
646
+ typ: r("Sommaire")
647
+ }], false),
648
+ Sommaire: o([{
649
+ json: "presidentSeance",
650
+ js: "presidentSeance",
651
+ typ: r("Para")
652
+ }, {
653
+ json: "sommaire1",
654
+ js: "sommaire1",
655
+ typ: u(a(r("SommaireElement")), r("SommaireElement"))
656
+ }, {
657
+ json: "sommaire3",
658
+ js: "sommaire3",
659
+ typ: u(undefined, u(a(r("SommaireElement")), r("SommaireElement")))
660
+ }, {
661
+ json: "sommaire2",
662
+ js: "sommaire2",
663
+ typ: u(undefined, u(a(r("SommaireElement")), r("SommaireElement")))
664
+ }, {
665
+ json: "para",
666
+ js: "para",
667
+ typ: u(undefined, r("Para"))
668
+ }], false),
669
+ SommaireElement: o([{
670
+ json: "valeur_pts_odj",
671
+ js: "valeur_pts_odj",
672
+ typ: u(undefined, "")
673
+ }, {
674
+ json: "titreStruct",
675
+ js: "titreStruct",
676
+ typ: u(undefined, r("TitreStruct"))
677
+ }, {
678
+ json: "para",
679
+ js: "para",
680
+ typ: u(undefined, u(a(u(r("Para"), "")), r("Para")))
681
+ }, {
682
+ json: "sommaire2",
683
+ js: "sommaire2",
684
+ typ: u(undefined, u(a(r("SommaireElement")), r("SommaireElement")))
685
+ }, {
686
+ json: "sommaire3",
687
+ js: "sommaire3",
688
+ typ: u(undefined, u(a(r("SommaireElement")), r("SommaireElement")))
689
+ }, {
690
+ json: "presidentSeance",
691
+ js: "presidentSeance",
692
+ typ: u(undefined, u(a(r("Para")), r("Para")))
693
+ }, {
694
+ json: "type_debat",
695
+ js: "type_debat",
696
+ typ: u(undefined, "")
697
+ }], false),
698
+ Para: o([{
699
+ json: "_",
700
+ js: "_",
701
+ typ: u(undefined, "")
702
+ }, {
703
+ json: "id_syceron",
704
+ js: "id_syceron",
705
+ typ: u(undefined, "")
706
+ }, {
707
+ json: "sup",
708
+ js: "sup",
709
+ typ: u(undefined, "")
710
+ }, {
711
+ json: "lienAdt",
712
+ js: "lienAdt",
713
+ typ: u(undefined, u(a(r("Para")), r("Para")))
714
+ }], false),
715
+ Test: o([{
716
+ json: "_",
717
+ js: "_",
718
+ typ: u(undefined, "")
719
+ }, {
720
+ json: "id_syceron",
721
+ js: "id_syceron",
722
+ typ: u(undefined, "")
723
+ }, {
724
+ json: "sup",
725
+ js: "sup",
726
+ typ: u(undefined, "")
727
+ }], false),
728
+ TitreStruct: o([{
729
+ json: "id_syceron",
730
+ js: "id_syceron",
731
+ typ: ""
732
+ }, {
733
+ json: "intitule",
734
+ js: "intitule",
735
+ typ: u(r("Texte"), "")
736
+ }, {
737
+ json: "sousIntitule",
738
+ js: "sousIntitule",
739
+ typ: u(undefined, "")
740
+ }, {
741
+ json: "type_debat",
742
+ js: "type_debat",
743
+ typ: u(undefined, "")
744
+ }], false),
745
+ Decision: ["ADOPTION amendement (main levée) adt", "ADOPTION d’un article (vote à main levée)", "ADOPTION d’un sous-amendement (main levée) ss-adt", "ADOPTION de plusieurs amendements (main levée) adts", "ADOPTION de plusieurs sous-amendements (main levée) ss-adts", "", "REJET d’un amendement (main levée) adt", "REJET d’un article (vote à main levée)", "REJET d’un sous-amendement (main levée) ss-adt", "REJET de plusieurs amendements (main levée) adts", "REJET de plusieurs sous-amendements (main levée) ss-adts", "REJET motion de rejet préalable (main levée)"]
746
+ };
747
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWNpc2lvbiIsIkNvbnZlcnQiLCJ0b0NvbXB0ZXNSZW5kdXMiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJjb21wdGVzUmVuZHVzVG9Kc29uIiwidmFsdWUiLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJ0b0NvbXB0ZVJlbmR1IiwiY29tcHRlUmVuZHVUb0pzb24iLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJwYXJlbnQiLCJwcmV0dHlUeXAiLCJwcmV0dHlUeXBlTmFtZSIsInBhcmVudFRleHQiLCJrZXlUZXh0IiwiRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJtYXAiLCJhIiwiam9pbiIsImxpdGVyYWwiLCJqc29uVG9KU1Byb3BzIiwianNvblRvSlMiLCJwcm9wcyIsImZvckVhY2giLCJwIiwianMiLCJqc1RvSlNPTlByb3BzIiwianNUb0pTT04iLCJ0cmFuc2Zvcm0iLCJnZXRQcm9wcyIsInRyYW5zZm9ybVByaW1pdGl2ZSIsInRyYW5zZm9ybVVuaW9uIiwidHlwcyIsImwiLCJpIiwiXyIsInRyYW5zZm9ybUVudW0iLCJjYXNlcyIsImluZGV4T2YiLCJ0cmFuc2Zvcm1BcnJheSIsImVsIiwidHJhbnNmb3JtRGF0ZSIsImQiLCJEYXRlIiwiaXNOYU4iLCJ2YWx1ZU9mIiwidHJhbnNmb3JtT2JqZWN0IiwiYWRkaXRpb25hbCIsInJlZiIsInJlc3VsdCIsIk9iamVjdCIsImdldE93blByb3BlcnR5TmFtZXMiLCJwcm9wIiwidiIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInR5cGVNYXAiLCJ1bmlvbk1lbWJlcnMiLCJhcnJheUl0ZW1zIiwidSIsIm8iLCJuYW1lIiwiQ29tcHRlc1JlbmR1cyIsIkNvbXB0ZVJlbmR1IiwiQ29udGVudSIsIkZpblNlYW5jZSIsIkZpblNlYW5jZVBvaW50IiwiT3JhdGV1cnMiLCJPcmF0ZXVyRWxlbWVudCIsIlRleHRlIiwiT3V2ZXJ0dXJlU2VhbmNlIiwiSW50ZXJFeHRyYWN0aW9uIiwiUG9pbnQiLCJRdWFudGllbWVzIiwiTWV0YWRvbm5lZXMiLCJTb21tYWlyZSIsIlNvbW1haXJlRWxlbWVudCIsIlBhcmEiLCJUZXN0IiwiVGl0cmVTdHJ1Y3QiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvZGViYXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIENvbXB0ZXNSZW5kdXMgfSBmcm9tIFwiLi9maWxlXCI7XG4vL1xuLy8gICBjb25zdCBjb21wdGVSZW5kdSA9IENvbnZlcnQudG9Db21wdGVzUmVuZHVzKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcHRlc1JlbmR1cyB7XG4gIGNvbXB0ZXNSZW5kdXM6IENvbXB0ZVJlbmR1W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21wdGVSZW5kdSB7XG4gIHNjaGVtYVZlcnNpb24/OiBzdHJpbmdcbiAgdWlkOiBzdHJpbmdcbiAgc2VhbmNlUmVmOiBzdHJpbmdcbiAgc2Vzc2lvblJlZjogc3RyaW5nXG4gIG1ldGFkb25uZWVzOiBNZXRhZG9ubmVlc1xuICBjb250ZW51OiBDb250ZW51XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gIHF1YW50aWVtZXM6IFF1YW50aWVtZXNcbiAgb3V2ZXJ0dXJlU2VhbmNlOiBPdXZlcnR1cmVTZWFuY2VcbiAgcG9pbnQ6IFBvaW50W10gfCBQb2ludFxuICBmaW5TZWFuY2U/OiBGaW5TZWFuY2VcbiAgcGFyYWdyYXBoZT86IFBvaW50W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaW5TZWFuY2Uge1xuICBwb2ludDogRmluU2VhbmNlUG9pbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaW5TZWFuY2VQb2ludCB7XG4gIG5pdnBvaW50OiBzdHJpbmdcbiAgdmFsZXVyX3B0c29kajogc3RyaW5nXG4gIG9yZGluYWxfcHJpc2U6IHN0cmluZ1xuICBpZF9wcmVwYXJhdGlvbjogc3RyaW5nXG4gIG9yZHJlX2Fic29sdV9zZWFuY2U6IHN0cmluZ1xuICBjb2RlX2dyYW1tYWlyZTogc3RyaW5nXG4gIGNvZGVfc3R5bGU6IHN0cmluZ1xuICBjb2RlX3Bhcm9sZTogc3RyaW5nXG4gIHNvbW1haXJlOiBzdHJpbmdcbiAgaWRfc3ljZXJvbjogc3RyaW5nXG4gIHZhbGV1cjogc3RyaW5nXG4gIG9yYXRldXJzOiBzdHJpbmdcbiAgdGV4dGU6IHN0cmluZ1xuICBwYXJhZ3JhcGhlOiBQb2ludFtdXG4gIHR5cGVfZGViYXQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcmF0ZXVycyB7XG4gIG9yYXRldXI6IE9yYXRldXJFbGVtZW50W10gfCBPcmF0ZXVyRWxlbWVudFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9yYXRldXJFbGVtZW50IHtcbiAgbm9tOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBxdWFsaXRlOiBzdHJpbmcgfCB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZSB7XG4gIF8/OiBzdHJpbmdcbiAgc3RpbWU/OiBzdHJpbmdcbiAgaW5kaWNlPzogc3RyaW5nW10gfCBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdXZlcnR1cmVTZWFuY2Uge1xuICBuaXZwb2ludD86IHN0cmluZ1xuICB2YWxldXJfcHRzb2RqOiBzdHJpbmdcbiAgb3JkaW5hbF9wcmlzZTogc3RyaW5nXG4gIGlkX3ByZXBhcmF0aW9uOiBzdHJpbmdcbiAgb3JkcmVfYWJzb2x1X3NlYW5jZTogc3RyaW5nXG4gIGlkX2FjdGV1cjogc3RyaW5nXG4gIGlkX21hbmRhdDogc3RyaW5nXG4gIGlkX25vbWluYXRpb25fb2U6IHN0cmluZ1xuICBpZF9ub21pbmF0aW9uX29wOiBzdHJpbmdcbiAgY29kZV9ncmFtbWFpcmU6IHN0cmluZ1xuICBjb2RlX3N0eWxlOiBzdHJpbmdcbiAgY29kZV9wYXJvbGU6IHN0cmluZ1xuICBzb21tYWlyZTogc3RyaW5nXG4gIGlkX3N5Y2Vyb246IHN0cmluZ1xuICB2YWxldXI6IHN0cmluZ1xuICBvcmF0ZXVyczogT3JhdGV1cnMgfCBzdHJpbmdcbiAgdGV4dGU6IFRleHRlIHwgc3RyaW5nXG4gIHBhcmFncmFwaGU/OiBQb2ludFtdXG4gIGludGVyRXh0cmFjdGlvbj86IEludGVyRXh0cmFjdGlvblxuICBwb2ludD86IFBvaW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJFeHRyYWN0aW9uIHtcbiAgbm9tX29yYXRldXI6IHN0cmluZ1xuICBxdWFsaXRlOiBzdHJpbmdcbiAgaWRfYWN0ZXVyOiBzdHJpbmdcbiAgaWRfbm9taW5hdGlvbl9vZTogc3RyaW5nXG4gIGlkX25vbWluYXRpb25fb3A6IHN0cmluZ1xuICBpZF9tYW5kYXQ6IHN0cmluZ1xuICBwYXJhZ3JhcGhlOiBQb2ludFtdIHwgUG9pbnRcbiAgY2hhbmdlbWVudFByZXNpZGVuY2U/OiBQb2ludFxufVxuXG5leHBvcnQgZW51bSBEZWNpc2lvbiB7XG4gIEFkb3B0aW9uQW1lbmRlbWVudE1haW5MZXbDqWVBZHQgPSBcIkFET1BUSU9OIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgQWRvcHRpb25EVW5BcnRpY2xlVm90ZcOATWFpbkxldsOpZSA9IFwiQURPUFRJT04gZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gIEFkb3B0aW9uRFVuU291c0FtZW5kZW1lbnRNYWluTGV2w6llU3NBZHQgPSBcIkFET1BUSU9OIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgQWRvcHRpb25EZVBsdXNpZXVyc0FtZW5kZW1lbnRzTWFpbkxldsOpZUFkdHMgPSBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgQWRvcHRpb25EZVBsdXNpZXVyc1NvdXNBbWVuZGVtZW50c01haW5MZXbDqWVTc0FkdHMgPSBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICBFbXB0eSA9IFwiXCIsXG4gIFJlamV0RFVuQW1lbmRlbWVudE1haW5MZXbDqWVBZHQgPSBcIlJFSkVUIGTigJl1biBhbWVuZGVtZW50IChtYWluIGxldsOpZSkgYWR0XCIsXG4gIFJlamV0RFVuQXJ0aWNsZVZvdGXDgE1haW5MZXbDqWUgPSBcIlJFSkVUIGTigJl1biBhcnRpY2xlICh2b3RlIMOgIG1haW4gbGV2w6llKVwiLFxuICBSZWpldERVblNvdXNBbWVuZGVtZW50TWFpbkxldsOpZVNzQWR0ID0gXCJSRUpFVCBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gIFJlamV0RGVQbHVzaWV1cnNBbWVuZGVtZW50c01haW5MZXbDqWVBZHRzID0gXCJSRUpFVCBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gIFJlamV0RGVQbHVzaWV1cnNTb3VzQW1lbmRlbWVudHNNYWluTGV2w6llU3NBZHRzID0gXCJSRUpFVCBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgUmVqZXRNb3Rpb25EZVJlamV0UHLDqWFsYWJsZU1haW5MZXbDqWUgPSBcIlJFSkVUIG1vdGlvbiBkZSByZWpldCBwcsOpYWxhYmxlIChtYWluIGxldsOpZSlcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2ludCB7XG4gIG5pdnBvaW50OiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgdmFsZXVyX3B0c29kajogc3RyaW5nXG4gIG9yZGluYWxfcHJpc2U6IHN0cmluZ1xuICBpZF9wcmVwYXJhdGlvbjogc3RyaW5nXG4gIG9yZHJlX2Fic29sdV9zZWFuY2U6IHN0cmluZ1xuICBjb2RlX2dyYW1tYWlyZTogc3RyaW5nXG4gIGNvZGVfc3R5bGU/OiBzdHJpbmdcbiAgY29kZV9wYXJvbGU6IHN0cmluZ1xuICBzb21tYWlyZTogc3RyaW5nXG4gIGlkX3N5Y2Vyb246IHN0cmluZ1xuICB2YWxldXI6IHN0cmluZ1xuICBvcmF0ZXVycz86IE9yYXRldXJzIHwgc3RyaW5nIHwgdW5kZWZpbmVkXG4gIHRleHRlPzogVGV4dGUgfCBzdHJpbmdcbiAgcGFyYWdyYXBoZT86IFBvaW50W10gfCBQb2ludFxuICBpbnRlckV4dHJhY3Rpb246IEludGVyRXh0cmFjdGlvbltdIHwgSW50ZXJFeHRyYWN0aW9uIHwgdW5kZWZpbmVkXG4gIHBvaW50PzogUG9pbnRbXSB8IFBvaW50XG4gIHN0cnVjdHVyZT86IHN0cmluZ1xuICBpZF9hY3RldXI/OiBzdHJpbmdcbiAgaWRfbWFuZGF0Pzogc3RyaW5nXG4gIGlkX25vbWluYXRpb25fb2U/OiBzdHJpbmdcbiAgaWRfbm9taW5hdGlvbl9vcD86IHN0cmluZ1xuICBvcmF0ZXVyPzogc3RyaW5nXG4gIGJpYmFyZD86IHN0cmluZ1xuICBhcnQ/OiBzdHJpbmdcbiAgYWR0Pzogc3RyaW5nXG4gIHNzYWR0Pzogc3RyaW5nXG4gIHJvbGVkZWJhdD86IHN0cmluZyB8IHVuZGVmaW5lZFxuICBjaGFuZ2VtZW50UHJlc2lkZW5jZT86IFBvaW50XG4gIHR5cGVfZGViYXQ/OiBzdHJpbmdcbiAgZGVjaXNpb24/OiBEZWNpc2lvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1YW50aWVtZXMge1xuICBqb3VybmVlOiBzdHJpbmdcbiAgc2Vzc2lvbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWRvbm5lZXMge1xuICBkYXRlU2VhbmNlOiBzdHJpbmdcbiAgZGF0ZVNlYW5jZUpvdXI6IHN0cmluZ1xuICBudW1TZWFuY2VKb3VyOiBzdHJpbmdcbiAgbnVtU2VhbmNlOiBzdHJpbmdcbiAgdHlwZUFzc2VtYmxlZTogc3RyaW5nXG4gIGxlZ2lzbGF0dXJlOiBzdHJpbmdcbiAgc2Vzc2lvbjogc3RyaW5nXG4gIG5vbUZpY2hpZXJKbzogc3RyaW5nXG4gIHZhbGlkaXRlOiBzdHJpbmdcbiAgZXRhdDogc3RyaW5nXG4gIGRpZmZ1c2lvbjogc3RyaW5nXG4gIHZlcnNpb246IHN0cmluZ1xuICBlbnZpcm9ubmVtZW50OiBzdHJpbmdcbiAgaGV1cmVHZW5lcmF0aW9uOiBEYXRlXG4gIHNvbW1haXJlOiBTb21tYWlyZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvbW1haXJlIHtcbiAgcHJlc2lkZW50U2VhbmNlOiBQYXJhXG4gIHNvbW1haXJlMTogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUzPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUyPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgcGFyYT86IFBhcmFcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTb21tYWlyZUVsZW1lbnQge1xuICB2YWxldXJfcHRzX29kajogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIHRpdHJlU3RydWN0OiBUaXRyZVN0cnVjdFxuICBwYXJhPzogQXJyYXk8UGFyYSB8IHN0cmluZz4gfCBQYXJhXG4gIHNvbW1haXJlMj86IFNvbW1haXJlRWxlbWVudFtdIHwgU29tbWFpcmVFbGVtZW50XG4gIHNvbW1haXJlMz86IFNvbW1haXJlRWxlbWVudFtdIHwgU29tbWFpcmVFbGVtZW50XG4gIHByZXNpZGVudFNlYW5jZT86IFBhcmFbXSB8IFBhcmFcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmEge1xuICBfPzogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIGlkX3N5Y2Vyb24/OiBzdHJpbmdcbiAgc3VwPzogc3RyaW5nXG4gIGxpZW5BZHQ/OiBQYXJhW10gfCBQYXJhXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGl0cmVTdHJ1Y3Qge1xuICBpZF9zeWNlcm9uOiBzdHJpbmdcbiAgaW50aXR1bGU/OiBUZXh0ZSB8IHN0cmluZ1xuICBzb3VzSW50aXR1bGU/OiBzdHJpbmdcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgcHVibGljIHN0YXRpYyB0b0NvbXB0ZXNSZW5kdXMoanNvbjogc3RyaW5nKTogQ29tcHRlc1JlbmR1cyB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkNvbXB0ZXNSZW5kdXNcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNvbXB0ZXNSZW5kdXNUb0pzb24odmFsdWU6IENvbXB0ZXNSZW5kdXMpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJDb21wdGVzUmVuZHVzXCIpKSwgbnVsbCwgMilcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9Db21wdGVSZW5kdShqc29uOiBzdHJpbmcpOiBDb21wdGVSZW5kdSB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkNvbXB0ZVJlbmR1XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjb21wdGVSZW5kdVRvSnNvbih2YWx1ZTogQ29tcHRlUmVuZHUpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJDb21wdGVSZW5kdVwiKSksIG51bGwsIDIpXG4gIH1cbn1cblxuZnVuY3Rpb24gaW52YWxpZFZhbHVlKHR5cDogYW55LCB2YWw6IGFueSwga2V5OiBhbnksIHBhcmVudDogYW55ID0gXCJcIik6IG5ldmVyIHtcbiAgY29uc3QgcHJldHR5VHlwID0gcHJldHR5VHlwZU5hbWUodHlwKVxuICBjb25zdCBwYXJlbnRUZXh0ID0gcGFyZW50ID8gYCBvbiAke3BhcmVudH1gIDogXCJcIlxuICBjb25zdCBrZXlUZXh0ID0ga2V5ID8gYCBmb3Iga2V5IFwiJHtrZXl9XCJgIDogXCJcIlxuICB0aHJvdyBFcnJvcihcbiAgICBgSW52YWxpZCB2YWx1ZSR7a2V5VGV4dH0ke3BhcmVudFRleHR9LiBFeHBlY3RlZCAke3ByZXR0eVR5cH0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgdmFsLFxuICAgICl9YCxcbiAgKVxufVxuXG5mdW5jdGlvbiBwcmV0dHlUeXBlTmFtZSh0eXA6IGFueSk6IHN0cmluZyB7XG4gIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHtcbiAgICBpZiAodHlwLmxlbmd0aCA9PT0gMiAmJiB0eXBbMF0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGBhbiBvcHRpb25hbCAke3ByZXR0eVR5cGVOYW1lKHR5cFsxXSl9YFxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYG9uZSBvZiBbJHt0eXBcbiAgICAgICAgLm1hcCgoYSkgPT4ge1xuICAgICAgICAgIHJldHVybiBwcmV0dHlUeXBlTmFtZShhKVxuICAgICAgICB9KVxuICAgICAgICAuam9pbihcIiwgXCIpfV1gXG4gICAgfVxuICB9IGVsc2UgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLmxpdGVyYWwgIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB0eXAubGl0ZXJhbFxuICB9IGVsc2Uge1xuICAgIHJldHVybiB0eXBlb2YgdHlwXG4gIH1cbn1cblxuZnVuY3Rpb24ganNvblRvSlNQcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNvbl0gPSB7IGtleTogcC5qcywgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNvblRvSlMgPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzb25Ub0pTXG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzVG9KU09OID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzXSA9IHsga2V5OiBwLmpzb24sIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzVG9KU09OID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc1RvSlNPTlxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm0oXG4gIHZhbDogYW55LFxuICB0eXA6IGFueSxcbiAgZ2V0UHJvcHM6IGFueSxcbiAga2V5OiBhbnkgPSBcIlwiLFxuICBwYXJlbnQ6IGFueSA9IFwiXCIsXG4pOiBhbnkge1xuICBmdW5jdGlvbiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwOiBzdHJpbmcsIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtVW5pb24odHlwczogYW55W10sIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB0eXAgPSB0eXBzW2ldXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcylcbiAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgfVxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsLCBrZXksIHBhcmVudClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUVudW0oY2FzZXM6IHN0cmluZ1tdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKGNhc2VzLmluZGV4T2YodmFsKSAhPT0gLTEpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKFxuICAgICAgY2FzZXMubWFwKChhKSA9PiB7XG4gICAgICAgIHJldHVybiBsKGEpXG4gICAgICB9KSxcbiAgICAgIHZhbCxcbiAgICAgIGtleSxcbiAgICAgIHBhcmVudCxcbiAgICApXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IGJlIGFuIGFycmF5IHdpdGggbm8gaW52YWxpZCBlbGVtZW50c1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWwpKSByZXR1cm4gaW52YWxpZFZhbHVlKGwoXCJhcnJheVwiKSwgdmFsLCBrZXksIHBhcmVudClcbiAgICByZXR1cm4gdmFsLm1hcCgoZWwpID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKVxuICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUobChcIkRhdGVcIiksIHZhbCwga2V5LCBwYXJlbnQpXG4gICAgfVxuICAgIHJldHVybiBkXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QoXG4gICAgcHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LFxuICAgIGFkZGl0aW9uYWw6IGFueSxcbiAgICB2YWw6IGFueSxcbiAgKTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKGwocmVmIHx8IFwib2JqZWN0XCIpLCB2YWwsIGtleSwgcGFyZW50KVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV1cbiAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpXG4gICAgICAgID8gdmFsW2tleV1cbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBrZXksIHJlZilcbiAgICB9KVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSwgcmVmKVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgaWYgKHR5cCA9PT0gXCJhbnlcIikgcmV0dXJuIHZhbFxuICBpZiAodHlwID09PSBudWxsKSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG4gIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXksIHBhcmVudClcbiAgbGV0IHJlZjogYW55ID0gdW5kZWZpbmVkXG4gIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIHJlZiA9IHR5cC5yZWZcbiAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdXG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpXG4gIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIilcbiAgICAgID8gdHJhbnNmb3JtQXJyYXkodHlwLmFycmF5SXRlbXMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIilcbiAgICAgID8gdHJhbnNmb3JtT2JqZWN0KGdldFByb3BzKHR5cCksIHR5cC5hZGRpdGlvbmFsLCB2YWwpXG4gICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cbiAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgaWYgKHR5cCA9PT0gRGF0ZSAmJiB0eXBlb2YgdmFsICE9PSBcIm51bWJlclwiKSByZXR1cm4gdHJhbnNmb3JtRGF0ZSh2YWwpXG4gIHJldHVybiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwLCB2YWwpXG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzb25Ub0pTUHJvcHMpXG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNUb0pTT05Qcm9wcylcbn1cblxuZnVuY3Rpb24gbCh0eXA6IGFueSkge1xuICByZXR1cm4geyBsaXRlcmFsOiB0eXAgfVxufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH1cbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgICAgcmV0dXJuIHsgcHJvcHM6IFtdLCBhZGRpdGlvbmFsIH07XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7IHJlZjogbmFtZSB9XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgQ29tcHRlc1JlbmR1czogbyhcbiAgICBbeyBqc29uOiBcImNvbXB0ZXNSZW5kdXNcIiwganM6IFwiY29tcHRlc1JlbmR1c1wiLCB0eXA6IGEocihcIkNvbXB0ZVJlbmR1XCIpKSB9XSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29tcHRlUmVuZHU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInNjaGVtYVZlcnNpb25cIiwganM6IFwic2NoZW1hVmVyc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzZWFuY2VSZWZcIiwganM6IFwic2VhbmNlUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNlc3Npb25SZWZcIiwganM6IFwic2Vzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJtZXRhZG9ubmVlc1wiLCBqczogXCJtZXRhZG9ubmVlc1wiLCB0eXA6IHIoXCJNZXRhZG9ubmVlc1wiKSB9LFxuICAgICAgeyBqc29uOiBcImNvbnRlbnVcIiwganM6IFwiY29udGVudVwiLCB0eXA6IHIoXCJDb250ZW51XCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29udGVudTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwicXVhbnRpZW1lc1wiLCBqczogXCJxdWFudGllbWVzXCIsIHR5cDogcihcIlF1YW50aWVtZXNcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAganM6IFwib3V2ZXJ0dXJlU2VhbmNlXCIsXG4gICAgICAgIHR5cDogcihcIk91dmVydHVyZVNlYW5jZVwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwicG9pbnRcIiwganM6IFwicG9pbnRcIiwgdHlwOiB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSB9LFxuICAgICAgeyBqc29uOiBcImZpblNlYW5jZVwiLCBqczogXCJmaW5TZWFuY2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkZpblNlYW5jZVwiKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIGpzOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiUG9pbnRcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRmluU2VhbmNlOiBvKFxuICAgIFt7IGpzb246IFwicG9pbnRcIiwganM6IFwicG9pbnRcIiwgdHlwOiByKFwiRmluU2VhbmNlUG9pbnRcIikgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEZpblNlYW5jZVBvaW50OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJuaXZwb2ludFwiLCBqczogXCJuaXZwb2ludFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ2YWxldXJfcHRzb2RqXCIsIGpzOiBcInZhbGV1cl9wdHNvZGpcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwib3JkaW5hbF9wcmlzZVwiLCBqczogXCJvcmRpbmFsX3ByaXNlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImlkX3ByZXBhcmF0aW9uXCIsIGpzOiBcImlkX3ByZXBhcmF0aW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm9yZHJlX2Fic29sdV9zZWFuY2VcIiwganM6IFwib3JkcmVfYWJzb2x1X3NlYW5jZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX2dyYW1tYWlyZVwiLCBqczogXCJjb2RlX2dyYW1tYWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX3N0eWxlXCIsIGpzOiBcImNvZGVfc3R5bGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9wYXJvbGVcIiwganM6IFwiY29kZV9wYXJvbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic29tbWFpcmVcIiwganM6IFwic29tbWFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZhbGV1clwiLCBqczogXCJ2YWxldXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwib3JhdGV1cnNcIiwganM6IFwib3JhdGV1cnNcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVcIiwganM6IFwidGV4dGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicGFyYWdyYXBoZVwiLCBqczogXCJwYXJhZ3JhcGhlXCIsIHR5cDogYShyKFwiUG9pbnRcIikpIH0sXG4gICAgICB7IGpzb246IFwidHlwZV9kZWJhdFwiLCBqczogXCJ0eXBlX2RlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgT3JhdGV1cnM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yYXRldXJcIixcbiAgICAgICAganM6IFwib3JhdGV1clwiLFxuICAgICAgICB0eXA6IHUoYShyKFwiT3JhdGV1ckVsZW1lbnRcIikpLCByKFwiT3JhdGV1ckVsZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBPcmF0ZXVyRWxlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkXCIsIGpzOiBcImlkXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwicXVhbGl0ZVwiLCBqczogXCJxdWFsaXRlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGV4dGU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIl9cIiwganM6IFwiX1wiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInN0aW1lXCIsIGpzOiBcInN0aW1lXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaW5kaWNlXCIsIGpzOiBcImluZGljZVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KGEoXCJcIiksIFwiXCIpKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE91dmVydHVyZVNlYW5jZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibml2cG9pbnRcIiwganM6IFwibml2cG9pbnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ2YWxldXJfcHRzb2RqXCIsIGpzOiBcInZhbGV1cl9wdHNvZGpcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwib3JkaW5hbF9wcmlzZVwiLCBqczogXCJvcmRpbmFsX3ByaXNlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImlkX3ByZXBhcmF0aW9uXCIsIGpzOiBcImlkX3ByZXBhcmF0aW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm9yZHJlX2Fic29sdV9zZWFuY2VcIiwganM6IFwib3JkcmVfYWJzb2x1X3NlYW5jZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJpZF9hY3RldXJcIiwganM6IFwiaWRfYWN0ZXVyXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImlkX21hbmRhdFwiLCBqczogXCJpZF9tYW5kYXRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaWRfbm9taW5hdGlvbl9vZVwiLCBqczogXCJpZF9ub21pbmF0aW9uX29lXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImlkX25vbWluYXRpb25fb3BcIiwganM6IFwiaWRfbm9taW5hdGlvbl9vcFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX2dyYW1tYWlyZVwiLCBqczogXCJjb2RlX2dyYW1tYWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX3N0eWxlXCIsIGpzOiBcImNvZGVfc3R5bGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9wYXJvbGVcIiwganM6IFwiY29kZV9wYXJvbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic29tbWFpcmVcIiwganM6IFwic29tbWFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZhbGV1clwiLCBqczogXCJ2YWxldXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwib3JhdGV1cnNcIiwganM6IFwib3JhdGV1cnNcIiwgdHlwOiB1KHIoXCJPcmF0ZXVyc1wiKSwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ0ZXh0ZVwiLCBqczogXCJ0ZXh0ZVwiLCB0eXA6IHUocihcIlRleHRlXCIpLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAganM6IFwicGFyYWdyYXBoZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbnRlckV4dHJhY3Rpb25cIixcbiAgICAgICAganM6IFwiaW50ZXJFeHRyYWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbnRlckV4dHJhY3Rpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJwb2ludFwiLCBqczogXCJwb2ludFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiUG9pbnRcIikpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSW50ZXJFeHRyYWN0aW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJub21fb3JhdGV1clwiLCBqczogXCJub21fb3JhdGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwibm9tX29yYXRldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9hY3RldXJcIiwganM6IFwiaWRfYWN0ZXVyXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImlkX25vbWluYXRpb25fb2VcIiwganM6IFwiaWRfbm9taW5hdGlvbl9vZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJpZF9ub21pbmF0aW9uX29wXCIsIGpzOiBcImlkX25vbWluYXRpb25fb3BcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaWRfbWFuZGF0XCIsIGpzOiBcImlkX21hbmRhdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIGpzOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAgdHlwOiB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY2hhbmdlbWVudFByZXNpZGVuY2VcIixcbiAgICAgICAganM6IFwiY2hhbmdlbWVudFByZXNpZGVuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgUG9pbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIm5pdnBvaW50XCIsIGpzOiBcIm5pdnBvaW50XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidmFsZXVyX3B0c29kalwiLCBqczogXCJ2YWxldXJfcHRzb2RqXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm9yZGluYWxfcHJpc2VcIiwganM6IFwib3JkaW5hbF9wcmlzZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJpZF9wcmVwYXJhdGlvblwiLCBqczogXCJpZF9wcmVwYXJhdGlvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJvcmRyZV9hYnNvbHVfc2VhbmNlXCIsIGpzOiBcIm9yZHJlX2Fic29sdV9zZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9ncmFtbWFpcmVcIiwganM6IFwiY29kZV9ncmFtbWFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9zdHlsZVwiLCBqczogXCJjb2RlX3N0eWxlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9wYXJvbGVcIiwganM6IFwiY29kZV9wYXJvbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic29tbWFpcmVcIiwganM6IFwic29tbWFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZhbGV1clwiLCBqczogXCJ2YWxldXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JhdGV1cnNcIixcbiAgICAgICAganM6IFwib3JhdGV1cnNcIixcbiAgICAgICAgdHlwOiB1KHIoXCJPcmF0ZXVyc1wiKSwgXCJcIiwgdW5kZWZpbmVkKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVcIiwganM6IFwidGV4dGVcIiwgdHlwOiB1KHIoXCJUZXh0ZVwiKSwgXCJcIiwgdW5kZWZpbmVkKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAganM6IFwicGFyYWdyYXBoZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImludGVyRXh0cmFjdGlvblwiLFxuICAgICAgICBqczogXCJpbnRlckV4dHJhY3Rpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiSW50ZXJFeHRyYWN0aW9uXCIpKSwgcihcIkludGVyRXh0cmFjdGlvblwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBvaW50XCIsXG4gICAgICAgIGpzOiBcInBvaW50XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiUG9pbnRcIikpLCByKFwiUG9pbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic3RydWN0dXJlXCIsIGpzOiBcInN0cnVjdHVyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX2FjdGV1clwiLCBqczogXCJpZF9hY3RldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9tYW5kYXRcIiwganM6IFwiaWRfbWFuZGF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaWRfbm9taW5hdGlvbl9vZVwiLFxuICAgICAgICBqczogXCJpZF9ub21pbmF0aW9uX29lXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpZF9ub21pbmF0aW9uX29wXCIsXG4gICAgICAgIGpzOiBcImlkX25vbWluYXRpb25fb3BcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcIm9yYXRldXJcIiwganM6IFwib3JhdGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImJpYmFyZFwiLCBqczogXCJiaWJhcmRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJhcnRcIiwganM6IFwiYXJ0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiYWR0XCIsIGpzOiBcImFkdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNzYWR0XCIsIGpzOiBcInNzYWR0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwicm9sZWRlYmF0XCIsIGpzOiBcInJvbGVkZWJhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInR5cGVfZGViYXRcIiwganM6IFwidHlwZV9kZWJhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNoYW5nZW1lbnRQcmVzaWRlbmNlXCIsXG4gICAgICAgIGpzOiBcImNoYW5nZW1lbnRQcmVzaWRlbmNlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJQb2ludFwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImRlY2lzaW9uXCIsIGpzOiBcImRlY2lzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEZWNpc2lvblwiKSkgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBRdWFudGllbWVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJqb3VybmVlXCIsIGpzOiBcImpvdXJuZWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblwiLCBqczogXCJzZXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE1ldGFkb25uZWVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlU2VhbmNlXCIsIGpzOiBcImRhdGVTZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiZGF0ZVNlYW5jZUpvdXJcIiwganM6IFwiZGF0ZVNlYW5jZUpvdXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtU2VhbmNlSm91clwiLCBqczogXCJudW1TZWFuY2VKb3VyXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bVNlYW5jZVwiLCBqczogXCJudW1TZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidHlwZUFzc2VtYmxlZVwiLCBqczogXCJ0eXBlQXNzZW1ibGVlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNlc3Npb25cIiwganM6IFwic2Vzc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJub21GaWNoaWVySm9cIiwganM6IFwibm9tRmljaGllckpvXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZhbGlkaXRlXCIsIGpzOiBcInZhbGlkaXRlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJkaWZmdXNpb25cIiwganM6IFwiZGlmZnVzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZlcnNpb25cIiwganM6IFwidmVyc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJlbnZpcm9ubmVtZW50XCIsIGpzOiBcImVudmlyb25uZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaGV1cmVHZW5lcmF0aW9uXCIsIGpzOiBcImhldXJlR2VuZXJhdGlvblwiLCB0eXA6IERhdGUgfSxcbiAgICAgIHsganNvbjogXCJzb21tYWlyZVwiLCBqczogXCJzb21tYWlyZVwiLCB0eXA6IHIoXCJTb21tYWlyZVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvbW1haXJlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJwcmVzaWRlbnRTZWFuY2VcIiwganM6IFwicHJlc2lkZW50U2VhbmNlXCIsIHR5cDogcihcIlBhcmFcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTFcIixcbiAgICAgICAganM6IFwic29tbWFpcmUxXCIsXG4gICAgICAgIHR5cDogdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUzXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlM1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUyXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlMlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwicGFyYVwiLCBqczogXCJwYXJhXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJQYXJhXCIpKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvbW1haXJlRWxlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidmFsZXVyX3B0c19vZGpcIiwganM6IFwidmFsZXVyX3B0c19vZGpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0aXRyZVN0cnVjdFwiLFxuICAgICAgICBqczogXCJ0aXRyZVN0cnVjdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVGl0cmVTdHJ1Y3RcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhXCIsXG4gICAgICAgIGpzOiBcInBhcmFcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHUocihcIlBhcmFcIiksIFwiXCIpKSwgcihcIlBhcmFcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUyXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlMlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUzXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlM1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicHJlc2lkZW50U2VhbmNlXCIsXG4gICAgICAgIGpzOiBcInByZXNpZGVudFNlYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlBhcmFcIikpLCByKFwiUGFyYVwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBQYXJhOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJfXCIsIGpzOiBcIl9cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9zeWNlcm9uXCIsIGpzOiBcImlkX3N5Y2Vyb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzdXBcIiwganM6IFwic3VwXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibGllbkFkdFwiLFxuICAgICAgICBqczogXCJsaWVuQWR0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiUGFyYVwiKSksIHIoXCJQYXJhXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRlc3Q6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIl9cIiwganM6IFwiX1wiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX3N5Y2Vyb25cIiwganM6IFwiaWRfc3ljZXJvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInN1cFwiLCBqczogXCJzdXBcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUaXRyZVN0cnVjdDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImludGl0dWxlXCIsIGpzOiBcImludGl0dWxlXCIsIHR5cDogdShyKFwiVGV4dGVcIiksIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic291c0ludGl0dWxlXCIsIGpzOiBcInNvdXNJbnRpdHVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInR5cGVfZGViYXRcIiwganM6IFwidHlwZV9kZWJhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERlY2lzaW9uOiBbXG4gICAgXCJBRE9QVElPTiBhbWVuZGVtZW50IChtYWluIGxldsOpZSkgYWR0XCIsXG4gICAgXCJBRE9QVElPTiBk4oCZdW4gYXJ0aWNsZSAodm90ZSDDoCBtYWluIGxldsOpZSlcIixcbiAgICBcIkFET1BUSU9OIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgICBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgICBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICAgIFwiXCIsXG4gICAgXCJSRUpFVCBk4oCZdW4gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gICAgXCJSRUpFVCBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gICAgXCJSRUpFVCBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gICAgXCJSRUpFVCBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgICBcIlJFSkVUIG1vdGlvbiBkZSByZWpldCBwcsOpYWxhYmxlIChtYWluIGxldsOpZSlcIixcbiAgXSxcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUErRkEsV0FBWUEsUUFBUSwwQkFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFBLE9BQVJBLFFBQVE7QUFBQTtBQXVHcEI7QUFDQTtBQUNBLE9BQU8sTUFBTUMsT0FBTyxDQUFDO0VBQ25CLE9BQWNDLGVBQWVBLENBQUNDLElBQVksRUFBaUI7SUFDekQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQztFQUNuRDtFQUVBLE9BQWNDLG1CQUFtQkEsQ0FBQ0MsS0FBb0IsRUFBVTtJQUM5RCxPQUFPSixJQUFJLENBQUNLLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDRixLQUFLLEVBQUVGLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7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