@tricoteuses/assemblee 1.10.5 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/README.md +8 -1
  2. package/lib/amendements-79bwpkvR.js +154 -0
  3. package/lib/amendements-CV3s5a0M.js +667 -0
  4. package/lib/cleaners/index.d.ts +9 -9
  5. package/lib/cleaners.js +564 -0
  6. package/lib/datasets.d.ts +3 -3
  7. package/lib/dossiers_legislatifs.d.ts +2 -2
  8. package/lib/index.d.ts +17 -22
  9. package/lib/index.js +1542 -314
  10. package/lib/inserters.d.ts +5 -5
  11. package/lib/loaders-9mHdTl9L.js +4158 -0
  12. package/lib/loaders.d.ts +12 -12
  13. package/lib/loaders.js +29 -1689
  14. package/lib/organes.d.ts +1 -1
  15. package/lib/parse-Ccs6wcUg.js +2512 -0
  16. package/lib/parsers/index.d.ts +2 -3
  17. package/lib/parsers/plf.d.ts +1 -0
  18. package/lib/parsers/recherche_amendements.d.ts +2 -2
  19. package/lib/parsers/textes_lois.d.ts +1 -23
  20. package/lib/parsers.js +398 -0
  21. package/lib/raw_types/debats.d.ts +2 -2
  22. package/lib/raw_types/dossiers_legislatifs.d.ts +1 -1
  23. package/lib/schemas/acteurs_et_organes.json +1166 -0
  24. package/lib/schemas/agendas.json +1745 -0
  25. package/lib/schemas/amendements.json +2085 -0
  26. package/lib/schemas/debats.json +842 -0
  27. package/lib/schemas/dossiers_legislatifs.json +3874 -0
  28. package/lib/schemas/legislatures.json +17 -0
  29. package/lib/schemas/questions.json +704 -0
  30. package/lib/schemas/scrutins.json +701 -0
  31. package/lib/scripts/retrieve_deputes_photos.d.ts +1 -1
  32. package/lib/types/acteurs_et_organes.d.ts +340 -0
  33. package/lib/types/agendas.d.ts +236 -10
  34. package/lib/types/amendements.d.ts +276 -1
  35. package/lib/types/debats.d.ts +52 -2
  36. package/lib/types/dossiers_legislatifs.d.ts +403 -9
  37. package/lib/types/questions.d.ts +99 -2
  38. package/lib/types/scrutins.d.ts +101 -0
  39. package/lib/urls.d.ts +2 -2
  40. package/package.json +32 -94
  41. package/lib/api.js +0 -52
  42. package/lib/api.mjs +0 -45
  43. package/lib/bugs/acteur-00010/plugin.test.js +0 -90
  44. package/lib/bugs/acteur-00010/plugin.test.mjs +0 -33
  45. package/lib/bugs/acteur-00010.d.ts +0 -7
  46. package/lib/bugs/acteur-00010.js +0 -116
  47. package/lib/bugs/acteur-00010.mjs +0 -26
  48. package/lib/bugs/agenda-00002/plugin.test.js +0 -124
  49. package/lib/bugs/agenda-00002/plugin.test.mjs +0 -50
  50. package/lib/bugs/agenda-00002.d.ts +0 -15
  51. package/lib/bugs/agenda-00002.js +0 -406
  52. package/lib/bugs/agenda-00002.mjs +0 -172
  53. package/lib/bugs/agenda-00008/plugin.test.js +0 -92
  54. package/lib/bugs/agenda-00008/plugin.test.mjs +0 -31
  55. package/lib/bugs/agenda-00008.d.ts +0 -7
  56. package/lib/bugs/agenda-00008.js +0 -123
  57. package/lib/bugs/agenda-00008.mjs +0 -26
  58. package/lib/bugs/agenda-00011/plugin.test.d.ts +0 -1
  59. package/lib/bugs/agenda-00011/plugin.test.js +0 -263
  60. package/lib/bugs/agenda-00011/plugin.test.mjs +0 -152
  61. package/lib/bugs/agenda-00011.d.ts +0 -16
  62. package/lib/bugs/agenda-00011.js +0 -333
  63. package/lib/bugs/agenda-00011.mjs +0 -125
  64. package/lib/bugs.d.ts +0 -21
  65. package/lib/bugs.js +0 -452
  66. package/lib/bugs.mjs +0 -70
  67. package/lib/cleaners/actes_legislatifs.js +0 -315
  68. package/lib/cleaners/actes_legislatifs.mjs +0 -253
  69. package/lib/cleaners/acteurs.js +0 -265
  70. package/lib/cleaners/acteurs.mjs +0 -180
  71. package/lib/cleaners/amendements.js +0 -294
  72. package/lib/cleaners/amendements.mjs +0 -227
  73. package/lib/cleaners/debats.js +0 -12
  74. package/lib/cleaners/debats.mjs +0 -5
  75. package/lib/cleaners/documents.js +0 -205
  76. package/lib/cleaners/documents.mjs +0 -133
  77. package/lib/cleaners/dossiers_legislatifs.js +0 -131
  78. package/lib/cleaners/dossiers_legislatifs.mjs +0 -70
  79. package/lib/cleaners/index.js +0 -70
  80. package/lib/cleaners/index.mjs +0 -10
  81. package/lib/cleaners/organes.js +0 -65
  82. package/lib/cleaners/organes.mjs +0 -48
  83. package/lib/cleaners/questions.js +0 -12
  84. package/lib/cleaners/questions.mjs +0 -5
  85. package/lib/cleaners/reunions.js +0 -312
  86. package/lib/cleaners/reunions.mjs +0 -255
  87. package/lib/cleaners/scrutins.js +0 -340
  88. package/lib/cleaners/scrutins.mjs +0 -221
  89. package/lib/cleaners/xml.js +0 -74
  90. package/lib/cleaners/xml.mjs +0 -59
  91. package/lib/datasets.js +0 -837
  92. package/lib/datasets.mjs +0 -755
  93. package/lib/dates.js +0 -124
  94. package/lib/dates.mjs +0 -100
  95. package/lib/dossiers_legislatifs.js +0 -346
  96. package/lib/dossiers_legislatifs.mjs +0 -208
  97. package/lib/file_systems.js +0 -162
  98. package/lib/file_systems.mjs +0 -62
  99. package/lib/git.js +0 -223
  100. package/lib/git.mjs +0 -151
  101. package/lib/index.mjs +0 -17
  102. package/lib/inserters.js +0 -521
  103. package/lib/inserters.mjs +0 -337
  104. package/lib/loaders.mjs +0 -886
  105. package/lib/logger.js +0 -35
  106. package/lib/logger.mjs +0 -26
  107. package/lib/organes.js +0 -22
  108. package/lib/organes.mjs +0 -15
  109. package/lib/parsers/documents.d.ts +0 -62
  110. package/lib/parsers/documents.js +0 -453
  111. package/lib/parsers/documents.mjs +0 -370
  112. package/lib/parsers/index.js +0 -40
  113. package/lib/parsers/index.mjs +0 -4
  114. package/lib/parsers/recherche_amendements.js +0 -403
  115. package/lib/parsers/recherche_amendements.mjs +0 -167
  116. package/lib/parsers/textes_lois.js +0 -307
  117. package/lib/parsers/textes_lois.mjs +0 -264
  118. package/lib/raw_types/acteurs_et_organes.js +0 -1215
  119. package/lib/raw_types/acteurs_et_organes.mjs +0 -1148
  120. package/lib/raw_types/agendas.js +0 -777
  121. package/lib/raw_types/agendas.mjs +0 -724
  122. package/lib/raw_types/amendements.js +0 -1052
  123. package/lib/raw_types/amendements.mjs +0 -993
  124. package/lib/raw_types/debats.js +0 -630
  125. package/lib/raw_types/debats.mjs +0 -573
  126. package/lib/raw_types/dossiers_legislatifs.js +0 -1529
  127. package/lib/raw_types/dossiers_legislatifs.mjs +0 -1471
  128. package/lib/raw_types/questions.js +0 -469
  129. package/lib/raw_types/questions.mjs +0 -416
  130. package/lib/raw_types/scrutins.js +0 -651
  131. package/lib/raw_types/scrutins.mjs +0 -598
  132. package/lib/schemas/acteur/Acteur.json +0 -56
  133. package/lib/schemas/acteur/AdresseElectronique.json +0 -52
  134. package/lib/schemas/acteur/AdressePostale.json +0 -75
  135. package/lib/schemas/acteur/Civ.json +0 -14
  136. package/lib/schemas/acteur/Collaborateur.json +0 -29
  137. package/lib/schemas/acteur/EtatCivil.json +0 -51
  138. package/lib/schemas/acteur/Ident.json +0 -40
  139. package/lib/schemas/acteur/Lieu.json +0 -66
  140. package/lib/schemas/acteur/Mandat.json +0 -192
  141. package/lib/schemas/acteur/Profession.json +0 -46
  142. package/lib/schemas/agenda/Agenda.json +0 -318
  143. package/lib/schemas/agenda/CycleDeVie.json +0 -45
  144. package/lib/schemas/agenda/PointOdj.json +0 -82
  145. package/lib/schemas/amendement/Amendement.json +0 -246
  146. package/lib/schemas/amendement/Diff.json +0 -25
  147. package/lib/schemas/amendement/DispositifAmdtCredit.json +0 -85
  148. package/lib/schemas/amendement/Identifiant.json +0 -62
  149. package/lib/schemas/amendement/PointeurFragmentTexte.json +0 -127
  150. package/lib/schemas/amendement/Representation.json +0 -67
  151. package/lib/schemas/amendement/Total.json +0 -26
  152. package/lib/schemas/converted_from_type/acteurs_et_organes.json +0 -666
  153. package/lib/schemas/converted_from_type/agendas.json +0 -1100
  154. package/lib/schemas/converted_from_type/amendements.json +0 -3191
  155. package/lib/schemas/converted_from_type/debats.json +0 -682
  156. package/lib/schemas/converted_from_type/deputes.json +0 -26
  157. package/lib/schemas/converted_from_type/dossiers_legislatifs.json +0 -2918
  158. package/lib/schemas/converted_from_type/legislatures.json +0 -16
  159. package/lib/schemas/converted_from_type/questions.json +0 -328
  160. package/lib/schemas/converted_from_type/scrutins.json +0 -393
  161. package/lib/schemas/debat/Contenu.json +0 -75
  162. package/lib/schemas/debat/Debat.json +0 -40
  163. package/lib/schemas/debat/Metadonnees.json +0 -75
  164. package/lib/schemas/debat/Orateur.json +0 -60
  165. package/lib/schemas/debat/Point.json +0 -169
  166. package/lib/schemas/debat/Sommaire.json +0 -71
  167. package/lib/schemas/debat/SommaireElement.json +0 -108
  168. package/lib/schemas/debat/Texte.json +0 -34
  169. package/lib/schemas/document/CodeLibelle.json +0 -25
  170. package/lib/schemas/document/Document.json +0 -385
  171. package/lib/schemas/document/Indexation.json +0 -38
  172. package/lib/schemas/dossier/ActeLegislatif.json +0 -211
  173. package/lib/schemas/dossier/ActeLegislatifBase.json +0 -62
  174. package/lib/schemas/dossier/Agenda.json +0 -23
  175. package/lib/schemas/dossier/ConseilConstitutionnel.json +0 -35
  176. package/lib/schemas/dossier/Decision.json +0 -25
  177. package/lib/schemas/dossier/Dossier.json +0 -124
  178. package/lib/schemas/dossier/EtudeImpact.json +0 -29
  179. package/lib/schemas/dossier/EtudePlf.json +0 -105
  180. package/lib/schemas/dossier/Europe.json +0 -42
  181. package/lib/schemas/dossier/FamCodeLibelle.json +0 -25
  182. package/lib/schemas/dossier/InfoJO.json +0 -23
  183. package/lib/schemas/dossier/Initiateur.json +0 -36
  184. package/lib/schemas/dossier/Motion.json +0 -27
  185. package/lib/schemas/dossier/Promulgation.json +0 -62
  186. package/lib/schemas/dossier/Rapporteur.json +0 -36
  187. package/lib/schemas/dossier/Texte.json +0 -47
  188. package/lib/schemas/organe/CodeTypeOrgane.json +0 -43
  189. package/lib/schemas/organe/Organe.json +0 -136
  190. package/lib/schemas/organe/ViMoDe.json +0 -28
  191. package/lib/schemas/question/Auteur.json +0 -58
  192. package/lib/schemas/question/Cloture.json +0 -28
  193. package/lib/schemas/question/InfoJO.json +0 -40
  194. package/lib/schemas/question/MinAttribElement.json +0 -30
  195. package/lib/schemas/question/Question.json +0 -172
  196. package/lib/schemas/question/Renouvellement.json +0 -17
  197. package/lib/schemas/question/Signalement.json +0 -21
  198. package/lib/schemas/question/Texte.json +0 -24
  199. package/lib/schemas/scrutin/DecompteVoix.json +0 -35
  200. package/lib/schemas/scrutin/Dysfonctionnement.json +0 -50
  201. package/lib/schemas/scrutin/MiseAuPoint.json +0 -53
  202. package/lib/schemas/scrutin/OrganeVotant.json +0 -88
  203. package/lib/schemas/scrutin/Scrutin.json +0 -187
  204. package/lib/schemas/scrutin/Votant.json +0 -37
  205. package/lib/scripts/bugs_helper.d.ts +0 -13
  206. package/lib/scripts/bugs_helper.js +0 -595
  207. package/lib/scripts/bugs_helper.mjs +0 -251
  208. package/lib/scripts/clean_reorganized_data.js +0 -613
  209. package/lib/scripts/clean_reorganized_data.mjs +0 -276
  210. package/lib/scripts/diff_amendements.js +0 -249
  211. package/lib/scripts/diff_amendements.mjs +0 -202
  212. package/lib/scripts/document_dossiers_legislatifs.js +0 -655
  213. package/lib/scripts/document_dossiers_legislatifs.mjs +0 -414
  214. package/lib/scripts/get_today_reunions.js +0 -37
  215. package/lib/scripts/get_today_reunions.mjs +0 -31
  216. package/lib/scripts/merge_scrutins.js +0 -97
  217. package/lib/scripts/merge_scrutins.mjs +0 -47
  218. package/lib/scripts/parse_textes_lois.d.ts +0 -1
  219. package/lib/scripts/parse_textes_lois.js +0 -171
  220. package/lib/scripts/parse_textes_lois.mjs +0 -140
  221. package/lib/scripts/process_open_dataset.js +0 -301
  222. package/lib/scripts/process_open_dataset.mjs +0 -134
  223. package/lib/scripts/raw_types_from_amendements.js +0 -135
  224. package/lib/scripts/raw_types_from_amendements.mjs +0 -134
  225. package/lib/scripts/reorganize_data.js +0 -805
  226. package/lib/scripts/reorganize_data.mjs +0 -517
  227. package/lib/scripts/retrieve_deputes_photos.js +0 -310
  228. package/lib/scripts/retrieve_deputes_photos.mjs +0 -158
  229. package/lib/scripts/retrieve_documents.js +0 -547
  230. package/lib/scripts/retrieve_documents.mjs +0 -242
  231. package/lib/scripts/retrieve_open_data.js +0 -107
  232. package/lib/scripts/retrieve_open_data.mjs +0 -26
  233. package/lib/scripts/retrieve_pending_amendments.js +0 -206
  234. package/lib/scripts/retrieve_pending_amendments.mjs +0 -57
  235. package/lib/scripts/retrieve_senateurs_photos.js +0 -234
  236. package/lib/scripts/retrieve_senateurs_photos.mjs +0 -116
  237. package/lib/scripts/retrieve_textes_lois.d.ts +0 -1
  238. package/lib/scripts/retrieve_textes_lois.js +0 -240
  239. package/lib/scripts/retrieve_textes_lois.mjs +0 -85
  240. package/lib/scripts/shared/cli_helpers.js +0 -89
  241. package/lib/scripts/shared/cli_helpers.mjs +0 -81
  242. package/lib/scripts/test_iter_load.js +0 -155
  243. package/lib/scripts/test_iter_load.mjs +0 -72
  244. package/lib/scripts/test_load.js +0 -26
  245. package/lib/scripts/test_load.mjs +0 -16
  246. package/lib/scripts/test_load_big_files.js +0 -26
  247. package/lib/scripts/test_load_big_files.mjs +0 -16
  248. package/lib/scripts/validate_json.js +0 -353
  249. package/lib/scripts/validate_json.mjs +0 -184
  250. package/lib/shared_types/codes_actes.js +0 -231
  251. package/lib/shared_types/codes_actes.mjs +0 -224
  252. package/lib/strings.js +0 -16
  253. package/lib/strings.mjs +0 -7
  254. package/lib/types/acteurs_et_organes.js +0 -965
  255. package/lib/types/acteurs_et_organes.mjs +0 -906
  256. package/lib/types/agendas.js +0 -628
  257. package/lib/types/agendas.mjs +0 -575
  258. package/lib/types/amendements.js +0 -899
  259. package/lib/types/amendements.mjs +0 -842
  260. package/lib/types/debats.js +0 -619
  261. package/lib/types/debats.mjs +0 -562
  262. package/lib/types/dossiers_legislatifs.js +0 -1188
  263. package/lib/types/dossiers_legislatifs.mjs +0 -1130
  264. package/lib/types/legislatures.js +0 -17
  265. package/lib/types/legislatures.mjs +0 -10
  266. package/lib/types/questions.js +0 -454
  267. package/lib/types/questions.mjs +0 -401
  268. package/lib/types/scrutins.js +0 -556
  269. package/lib/types/scrutins.mjs +0 -503
  270. package/lib/urls.js +0 -325
  271. package/lib/urls.mjs +0 -258
  272. /package/lib/{bugs/acteur-00010/plugin.test.d.ts → scripts/add_links_to_documents.d.ts} +0 -0
  273. /package/lib/{bugs/agenda-00002/plugin.test.d.ts → scripts/copy-schemas.d.ts} +0 -0
  274. /package/lib/{bugs/agenda-00008/plugin.test.d.ts → scripts/generate-json-schemas.d.ts} +0 -0
@@ -1,70 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.object.define-property.js");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- Object.defineProperty(exports, "cleanActeur", {
8
- enumerable: true,
9
- get: function get() {
10
- return _acteurs.cleanActeur;
11
- }
12
- });
13
- Object.defineProperty(exports, "cleanAmendement", {
14
- enumerable: true,
15
- get: function get() {
16
- return _amendements.cleanAmendement;
17
- }
18
- });
19
- Object.defineProperty(exports, "cleanCompteRendu", {
20
- enumerable: true,
21
- get: function get() {
22
- return _debats.cleanCompteRendu;
23
- }
24
- });
25
- Object.defineProperty(exports, "cleanDocumentOrDivision", {
26
- enumerable: true,
27
- get: function get() {
28
- return _documents.cleanDocumentOrDivision;
29
- }
30
- });
31
- Object.defineProperty(exports, "cleanDossierParlementaire", {
32
- enumerable: true,
33
- get: function get() {
34
- return _dossiers_legislatifs.cleanDossierParlementaire;
35
- }
36
- });
37
- Object.defineProperty(exports, "cleanOrgane", {
38
- enumerable: true,
39
- get: function get() {
40
- return _organes.cleanOrgane;
41
- }
42
- });
43
- Object.defineProperty(exports, "cleanQuestion", {
44
- enumerable: true,
45
- get: function get() {
46
- return _questions.cleanQuestion;
47
- }
48
- });
49
- Object.defineProperty(exports, "cleanReunion", {
50
- enumerable: true,
51
- get: function get() {
52
- return _reunions.cleanReunion;
53
- }
54
- });
55
- Object.defineProperty(exports, "cleanScrutin", {
56
- enumerable: true,
57
- get: function get() {
58
- return _scrutins.cleanScrutin;
59
- }
60
- });
61
- var _acteurs = require("./acteurs");
62
- var _amendements = require("./amendements");
63
- var _documents = require("./documents");
64
- var _dossiers_legislatifs = require("./dossiers_legislatifs");
65
- var _organes = require("./organes");
66
- var _reunions = require("./reunions");
67
- var _scrutins = require("./scrutins");
68
- var _questions = require("./questions");
69
- var _debats = require("./debats");
70
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYWN0ZXVycyIsInJlcXVpcmUiLCJfYW1lbmRlbWVudHMiLCJfZG9jdW1lbnRzIiwiX2Rvc3NpZXJzX2xlZ2lzbGF0aWZzIiwiX29yZ2FuZXMiLCJfcmV1bmlvbnMiLCJfc2NydXRpbnMiLCJfcXVlc3Rpb25zIiwiX2RlYmF0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBjbGVhbkFjdGV1ciB9IGZyb20gXCIuL2FjdGV1cnNcIlxuZXhwb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4vYW1lbmRlbWVudHNcIlxuZXhwb3J0IHsgY2xlYW5Eb2N1bWVudE9yRGl2aXNpb24gfSBmcm9tIFwiLi9kb2N1bWVudHNcIlxuZXhwb3J0IHsgY2xlYW5Eb3NzaWVyUGFybGVtZW50YWlyZSB9IGZyb20gXCIuL2Rvc3NpZXJzX2xlZ2lzbGF0aWZzXCJcbmV4cG9ydCB7IGNsZWFuT3JnYW5lIH0gZnJvbSBcIi4vb3JnYW5lc1wiXG5leHBvcnQgeyBjbGVhblJldW5pb24gfSBmcm9tIFwiLi9yZXVuaW9uc1wiXG5leHBvcnQgeyBjbGVhblNjcnV0aW4gfSBmcm9tIFwiLi9zY3J1dGluc1wiXG5leHBvcnQgeyBjbGVhblF1ZXN0aW9uIH0gZnJvbSBcIi4vcXVlc3Rpb25zXCJcbmV4cG9ydCB7IGNsZWFuQ29tcHRlUmVuZHUgfSBmcm9tIFwiLi9kZWJhdHNcIlxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxZQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxxQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssU0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sU0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sVUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsT0FBQSxHQUFBUixPQUFBIiwiaWdub3JlTGlzdCI6W119
@@ -1,10 +0,0 @@
1
- export { cleanActeur } from "./acteurs.mjs";
2
- export { cleanAmendement } from "./amendements.mjs";
3
- export { cleanDocumentOrDivision } from "./documents.mjs";
4
- export { cleanDossierParlementaire } from "./dossiers_legislatifs.mjs";
5
- export { cleanOrgane } from "./organes.mjs";
6
- export { cleanReunion } from "./reunions.mjs";
7
- export { cleanScrutin } from "./scrutins.mjs";
8
- export { cleanQuestion } from "./questions.mjs";
9
- export { cleanCompteRendu } from "./debats.mjs";
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbGVhbkFjdGV1ciIsImNsZWFuQW1lbmRlbWVudCIsImNsZWFuRG9jdW1lbnRPckRpdmlzaW9uIiwiY2xlYW5Eb3NzaWVyUGFybGVtZW50YWlyZSIsImNsZWFuT3JnYW5lIiwiY2xlYW5SZXVuaW9uIiwiY2xlYW5TY3J1dGluIiwiY2xlYW5RdWVzdGlvbiIsImNsZWFuQ29tcHRlUmVuZHUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xlYW5lcnMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgY2xlYW5BY3RldXIgfSBmcm9tIFwiLi9hY3RldXJzXCJcbmV4cG9ydCB7IGNsZWFuQW1lbmRlbWVudCB9IGZyb20gXCIuL2FtZW5kZW1lbnRzXCJcbmV4cG9ydCB7IGNsZWFuRG9jdW1lbnRPckRpdmlzaW9uIH0gZnJvbSBcIi4vZG9jdW1lbnRzXCJcbmV4cG9ydCB7IGNsZWFuRG9zc2llclBhcmxlbWVudGFpcmUgfSBmcm9tIFwiLi9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG5leHBvcnQgeyBjbGVhbk9yZ2FuZSB9IGZyb20gXCIuL29yZ2FuZXNcIlxuZXhwb3J0IHsgY2xlYW5SZXVuaW9uIH0gZnJvbSBcIi4vcmV1bmlvbnNcIlxuZXhwb3J0IHsgY2xlYW5TY3J1dGluIH0gZnJvbSBcIi4vc2NydXRpbnNcIlxuZXhwb3J0IHsgY2xlYW5RdWVzdGlvbiB9IGZyb20gXCIuL3F1ZXN0aW9uc1wiXG5leHBvcnQgeyBjbGVhbkNvbXB0ZVJlbmR1IH0gZnJvbSBcIi4vZGViYXRzXCJcbiJdLCJtYXBwaW5ncyI6IlNBQVNBLFdBQVc7QUFBQSxTQUNYQyxlQUFlO0FBQUEsU0FDZkMsdUJBQXVCO0FBQUEsU0FDdkJDLHlCQUF5QjtBQUFBLFNBQ3pCQyxXQUFXO0FBQUEsU0FDWEMsWUFBWTtBQUFBLFNBQ1pDLFlBQVk7QUFBQSxTQUNaQyxhQUFhO0FBQUEsU0FDYkMsZ0JBQWdCIiwiaWdub3JlTGlzdCI6W119
@@ -1,65 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.symbol.js");
4
- require("core-js/modules/es.symbol.description.js");
5
- require("core-js/modules/es.symbol.iterator.js");
6
- require("core-js/modules/es.array.iterator.js");
7
- require("core-js/modules/es.object.define-property.js");
8
- require("core-js/modules/es.object.to-string.js");
9
- require("core-js/modules/es.string.iterator.js");
10
- require("core-js/modules/web.dom-collections.iterator.js");
11
- Object.defineProperty(exports, "__esModule", {
12
- value: true
13
- });
14
- exports.cleanOrgane = cleanOrgane;
15
- require("core-js/modules/es.array.is-array.js");
16
- var _assert = _interopRequireDefault(require("assert"));
17
- var _xml = require("./xml");
18
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
19
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
20
- function cleanOrgane(organe) {
21
- (0, _xml.cleanXmlArtefacts)(organe);
22
- var xsiType = organe["@xsi:type"];
23
- if (xsiType !== undefined) {
24
- organe.xsiType = xsiType;
25
- delete organe["@xsi:type"];
26
- }
27
- var viMoDe = organe.viMoDe;
28
- (0, _xml.cleanXmlArtefacts)(viMoDe);
29
- var organeParentRef = organe.organeParent;
30
- if (organeParentRef !== undefined) {
31
- delete organe.organeParent;
32
- organe.organeParentRef = organeParentRef;
33
- }
34
- _assert["default"].strictEqual(organe.chambre, undefined);
35
- var secretariat = organe.secretariat;
36
- if (secretariat !== undefined) {
37
- (0, _xml.cleanXmlArtefacts)(secretariat);
38
- }
39
- var lieu = organe.lieu;
40
- if (lieu !== undefined) {
41
- (0, _xml.cleanXmlArtefacts)(lieu);
42
- var region = lieu.region;
43
- if (region !== undefined) {
44
- (0, _xml.cleanXmlArtefacts)(region);
45
- }
46
- var departement = lieu.departement;
47
- if (departement !== undefined) {
48
- (0, _xml.cleanXmlArtefacts)(departement);
49
- }
50
- }
51
- var couleurAssociee = organe.couleurAssociee;
52
- if (couleurAssociee === null) {
53
- delete organe.couleurAssociee;
54
- }
55
- var listePays = organe.listePays;
56
- if (listePays !== undefined) {
57
- listePays = listePays.paysRef;
58
- if (!Array.isArray(listePays)) {
59
- _assert["default"].strictEqual(_typeof(listePays), "string");
60
- listePays = [listePays];
61
- }
62
- organe.listePays = listePays;
63
- }
64
- }
65
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYXNzZXJ0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfeG1sIiwiZSIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJjbGVhbk9yZ2FuZSIsIm9yZ2FuZSIsImNsZWFuWG1sQXJ0ZWZhY3RzIiwieHNpVHlwZSIsInVuZGVmaW5lZCIsInZpTW9EZSIsIm9yZ2FuZVBhcmVudFJlZiIsIm9yZ2FuZVBhcmVudCIsImFzc2VydCIsInN0cmljdEVxdWFsIiwiY2hhbWJyZSIsInNlY3JldGFyaWF0IiwibGlldSIsInJlZ2lvbiIsImRlcGFydGVtZW50IiwiY291bGV1ckFzc29jaWVlIiwibGlzdGVQYXlzIiwicGF5c1JlZiIsIkFycmF5IiwiaXNBcnJheSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9vcmdhbmVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuT3JnYW5lKG9yZ2FuZTogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKG9yZ2FuZSlcblxuICBjb25zdCB4c2lUeXBlID0gb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICBvcmdhbmUueHNpVHlwZSA9IHhzaVR5cGVcbiAgICBkZWxldGUgb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIH1cblxuICBjb25zdCB2aU1vRGUgPSBvcmdhbmUudmlNb0RlXG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHZpTW9EZSlcblxuICBjb25zdCBvcmdhbmVQYXJlbnRSZWYgPSBvcmdhbmUub3JnYW5lUGFyZW50XG4gIGlmIChvcmdhbmVQYXJlbnRSZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIGRlbGV0ZSBvcmdhbmUub3JnYW5lUGFyZW50XG4gICAgb3JnYW5lLm9yZ2FuZVBhcmVudFJlZiA9IG9yZ2FuZVBhcmVudFJlZlxuICB9XG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKG9yZ2FuZS5jaGFtYnJlLCB1bmRlZmluZWQpXG5cbiAgY29uc3Qgc2VjcmV0YXJpYXQgPSBvcmdhbmUuc2VjcmV0YXJpYXRcbiAgaWYgKHNlY3JldGFyaWF0ICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhzZWNyZXRhcmlhdClcbiAgfVxuXG4gIGNvbnN0IGxpZXUgPSBvcmdhbmUubGlldVxuICBpZiAobGlldSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMobGlldSlcblxuICAgIGNvbnN0IHJlZ2lvbiA9IGxpZXUucmVnaW9uXG4gICAgaWYgKHJlZ2lvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhyZWdpb24pXG4gICAgfVxuXG4gICAgY29uc3QgZGVwYXJ0ZW1lbnQgPSBsaWV1LmRlcGFydGVtZW50XG4gICAgaWYgKGRlcGFydGVtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlcGFydGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGNvdWxldXJBc3NvY2llZSA9IG9yZ2FuZS5jb3VsZXVyQXNzb2NpZWVcbiAgaWYgKGNvdWxldXJBc3NvY2llZSA9PT0gbnVsbCkge1xuICAgIGRlbGV0ZSBvcmdhbmUuY291bGV1ckFzc29jaWVlXG4gIH1cblxuICBsZXQgbGlzdGVQYXlzID0gb3JnYW5lLmxpc3RlUGF5c1xuICBpZiAobGlzdGVQYXlzICE9PSB1bmRlZmluZWQpIHtcbiAgICBsaXN0ZVBheXMgPSBsaXN0ZVBheXMucGF5c1JlZlxuICAgIGlmICghQXJyYXkuaXNBcnJheShsaXN0ZVBheXMpKSB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGxpc3RlUGF5cywgXCJzdHJpbmdcIilcbiAgICAgIGxpc3RlUGF5cyA9IFtsaXN0ZVBheXNdXG4gICAgfVxuICAgIG9yZ2FuZS5saXN0ZVBheXMgPSBsaXN0ZVBheXNcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxJQUFBLEdBQUFELE9BQUE7QUFBeUMsU0FBQUQsdUJBQUFHLENBQUEsV0FBQUEsQ0FBQSxJQUFBQSxDQUFBLENBQUFDLFVBQUEsR0FBQUQsQ0FBQSxnQkFBQUEsQ0FBQTtBQUFBLFNBQUFFLFFBQUFDLENBQUEsc0NBQUFELE9BQUEsd0JBQUFFLE1BQUEsdUJBQUFBLE1BQUEsQ0FBQUMsUUFBQSxhQUFBRixDQUFBLGtCQUFBQSxDQUFBLGdCQUFBQSxDQUFBLFdBQUFBLENBQUEseUJBQUFDLE1BQUEsSUFBQUQsQ0FBQSxDQUFBRyxXQUFBLEtBQUFGLE1BQUEsSUFBQUQsQ0FBQSxLQUFBQyxNQUFBLENBQUFHLFNBQUEscUJBQUFKLENBQUEsS0FBQUQsT0FBQSxDQUFBQyxDQUFBO0FBRWxDLFNBQVNLLFdBQVdBLENBQUNDLE1BQVcsRUFBUTtFQUM3QyxJQUFBQyxzQkFBaUIsRUFBQ0QsTUFBTSxDQUFDO0VBRXpCLElBQU1FLE9BQU8sR0FBR0YsTUFBTSxDQUFDLFdBQVcsQ0FBQztFQUNuQyxJQUFJRSxPQUFPLEtBQUtDLFNBQVMsRUFBRTtJQUN6QkgsTUFBTSxDQUFDRSxPQUFPLEdBQUdBLE9BQU87SUFDeEIsT0FBT0YsTUFBTSxDQUFDLFdBQVcsQ0FBQztFQUM1QjtFQUVBLElBQU1JLE1BQU0sR0FBR0osTUFBTSxDQUFDSSxNQUFNO0VBQzVCLElBQUFILHNCQUFpQixFQUFDRyxNQUFNLENBQUM7RUFFekIsSUFBTUMsZUFBZSxHQUFHTCxNQUFNLENBQUNNLFlBQVk7RUFDM0MsSUFBSUQsZUFBZSxLQUFLRixTQUFTLEVBQUU7SUFDakMsT0FBT0gsTUFBTSxDQUFDTSxZQUFZO0lBQzFCTixNQUFNLENBQUNLLGVBQWUsR0FBR0EsZUFBZTtFQUMxQztFQUVBRSxrQkFBTSxDQUFDQyxXQUFXLENBQUNSLE1BQU0sQ0FBQ1MsT0FBTyxFQUFFTixTQUFTLENBQUM7RUFFN0MsSUFBTU8sV0FBVyxHQUFHVixNQUFNLENBQUNVLFdBQVc7RUFDdEMsSUFBSUEsV0FBVyxLQUFLUCxTQUFTLEVBQUU7SUFDN0IsSUFBQUYsc0JBQWlCLEVBQUNTLFdBQVcsQ0FBQztFQUNoQztFQUVBLElBQU1DLElBQUksR0FBR1gsTUFBTSxDQUFDVyxJQUFJO0VBQ3hCLElBQUlBLElBQUksS0FBS1IsU0FBUyxFQUFFO0lBQ3RCLElBQUFGLHNCQUFpQixFQUFDVSxJQUFJLENBQUM7SUFFdkIsSUFBTUMsTUFBTSxHQUFHRCxJQUFJLENBQUNDLE1BQU07SUFDMUIsSUFBSUEsTUFBTSxLQUFLVCxTQUFTLEVBQUU7TUFDeEIsSUFBQUYsc0JBQWlCLEVBQUNXLE1BQU0sQ0FBQztJQUMzQjtJQUVBLElBQU1DLFdBQVcsR0FBR0YsSUFBSSxDQUFDRSxXQUFXO0lBQ3BDLElBQUlBLFdBQVcsS0FBS1YsU0FBUyxFQUFFO01BQzdCLElBQUFGLHNCQUFpQixFQUFDWSxXQUFXLENBQUM7SUFDaEM7RUFDRjtFQUVBLElBQU1DLGVBQWUsR0FBR2QsTUFBTSxDQUFDYyxlQUFlO0VBQzlDLElBQUlBLGVBQWUsS0FBSyxJQUFJLEVBQUU7SUFDNUIsT0FBT2QsTUFBTSxDQUFDYyxlQUFlO0VBQy9CO0VBRUEsSUFBSUMsU0FBUyxHQUFHZixNQUFNLENBQUNlLFNBQVM7RUFDaEMsSUFBSUEsU0FBUyxLQUFLWixTQUFTLEVBQUU7SUFDM0JZLFNBQVMsR0FBR0EsU0FBUyxDQUFDQyxPQUFPO0lBQzdCLElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxPQUFPLENBQUNILFNBQVMsQ0FBQyxFQUFFO01BQzdCUixrQkFBTSxDQUFDQyxXQUFXLENBQUFmLE9BQUEsQ0FBUXNCLFNBQVMsR0FBRSxRQUFRLENBQUM7TUFDOUNBLFNBQVMsR0FBRyxDQUFDQSxTQUFTLENBQUM7SUFDekI7SUFDQWYsTUFBTSxDQUFDZSxTQUFTLEdBQUdBLFNBQVM7RUFDOUI7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,48 +0,0 @@
1
- import assert from "assert";
2
- import { cleanXmlArtefacts } from "./xml.mjs";
3
- export function cleanOrgane(organe) {
4
- cleanXmlArtefacts(organe);
5
- const xsiType = organe["@xsi:type"];
6
- if (xsiType !== undefined) {
7
- organe.xsiType = xsiType;
8
- delete organe["@xsi:type"];
9
- }
10
- const viMoDe = organe.viMoDe;
11
- cleanXmlArtefacts(viMoDe);
12
- const organeParentRef = organe.organeParent;
13
- if (organeParentRef !== undefined) {
14
- delete organe.organeParent;
15
- organe.organeParentRef = organeParentRef;
16
- }
17
- assert.strictEqual(organe.chambre, undefined);
18
- const secretariat = organe.secretariat;
19
- if (secretariat !== undefined) {
20
- cleanXmlArtefacts(secretariat);
21
- }
22
- const lieu = organe.lieu;
23
- if (lieu !== undefined) {
24
- cleanXmlArtefacts(lieu);
25
- const region = lieu.region;
26
- if (region !== undefined) {
27
- cleanXmlArtefacts(region);
28
- }
29
- const departement = lieu.departement;
30
- if (departement !== undefined) {
31
- cleanXmlArtefacts(departement);
32
- }
33
- }
34
- const couleurAssociee = organe.couleurAssociee;
35
- if (couleurAssociee === null) {
36
- delete organe.couleurAssociee;
37
- }
38
- let listePays = organe.listePays;
39
- if (listePays !== undefined) {
40
- listePays = listePays.paysRef;
41
- if (!Array.isArray(listePays)) {
42
- assert.strictEqual(typeof listePays, "string");
43
- listePays = [listePays];
44
- }
45
- organe.listePays = listePays;
46
- }
47
- }
48
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjbGVhblhtbEFydGVmYWN0cyIsImNsZWFuT3JnYW5lIiwib3JnYW5lIiwieHNpVHlwZSIsInVuZGVmaW5lZCIsInZpTW9EZSIsIm9yZ2FuZVBhcmVudFJlZiIsIm9yZ2FuZVBhcmVudCIsInN0cmljdEVxdWFsIiwiY2hhbWJyZSIsInNlY3JldGFyaWF0IiwibGlldSIsInJlZ2lvbiIsImRlcGFydGVtZW50IiwiY291bGV1ckFzc29jaWVlIiwibGlzdGVQYXlzIiwicGF5c1JlZiIsIkFycmF5IiwiaXNBcnJheSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9vcmdhbmVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuT3JnYW5lKG9yZ2FuZTogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKG9yZ2FuZSlcblxuICBjb25zdCB4c2lUeXBlID0gb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICBvcmdhbmUueHNpVHlwZSA9IHhzaVR5cGVcbiAgICBkZWxldGUgb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIH1cblxuICBjb25zdCB2aU1vRGUgPSBvcmdhbmUudmlNb0RlXG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHZpTW9EZSlcblxuICBjb25zdCBvcmdhbmVQYXJlbnRSZWYgPSBvcmdhbmUub3JnYW5lUGFyZW50XG4gIGlmIChvcmdhbmVQYXJlbnRSZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIGRlbGV0ZSBvcmdhbmUub3JnYW5lUGFyZW50XG4gICAgb3JnYW5lLm9yZ2FuZVBhcmVudFJlZiA9IG9yZ2FuZVBhcmVudFJlZlxuICB9XG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKG9yZ2FuZS5jaGFtYnJlLCB1bmRlZmluZWQpXG5cbiAgY29uc3Qgc2VjcmV0YXJpYXQgPSBvcmdhbmUuc2VjcmV0YXJpYXRcbiAgaWYgKHNlY3JldGFyaWF0ICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhzZWNyZXRhcmlhdClcbiAgfVxuXG4gIGNvbnN0IGxpZXUgPSBvcmdhbmUubGlldVxuICBpZiAobGlldSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMobGlldSlcblxuICAgIGNvbnN0IHJlZ2lvbiA9IGxpZXUucmVnaW9uXG4gICAgaWYgKHJlZ2lvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhyZWdpb24pXG4gICAgfVxuXG4gICAgY29uc3QgZGVwYXJ0ZW1lbnQgPSBsaWV1LmRlcGFydGVtZW50XG4gICAgaWYgKGRlcGFydGVtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlcGFydGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGNvdWxldXJBc3NvY2llZSA9IG9yZ2FuZS5jb3VsZXVyQXNzb2NpZWVcbiAgaWYgKGNvdWxldXJBc3NvY2llZSA9PT0gbnVsbCkge1xuICAgIGRlbGV0ZSBvcmdhbmUuY291bGV1ckFzc29jaWVlXG4gIH1cblxuICBsZXQgbGlzdGVQYXlzID0gb3JnYW5lLmxpc3RlUGF5c1xuICBpZiAobGlzdGVQYXlzICE9PSB1bmRlZmluZWQpIHtcbiAgICBsaXN0ZVBheXMgPSBsaXN0ZVBheXMucGF5c1JlZlxuICAgIGlmICghQXJyYXkuaXNBcnJheShsaXN0ZVBheXMpKSB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGxpc3RlUGF5cywgXCJzdHJpbmdcIilcbiAgICAgIGxpc3RlUGF5cyA9IFtsaXN0ZVBheXNdXG4gICAgfVxuICAgIG9yZ2FuZS5saXN0ZVBheXMgPSBsaXN0ZVBheXNcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sUUFBUTtBQUFBLFNBRWxCQyxpQkFBaUI7QUFFMUIsT0FBTyxTQUFTQyxXQUFXQSxDQUFDQyxNQUFXLEVBQVE7RUFDN0NGLGlCQUFpQixDQUFDRSxNQUFNLENBQUM7RUFFekIsTUFBTUMsT0FBTyxHQUFHRCxNQUFNLENBQUMsV0FBVyxDQUFDO0VBQ25DLElBQUlDLE9BQU8sS0FBS0MsU0FBUyxFQUFFO0lBQ3pCRixNQUFNLENBQUNDLE9BQU8sR0FBR0EsT0FBTztJQUN4QixPQUFPRCxNQUFNLENBQUMsV0FBVyxDQUFDO0VBQzVCO0VBRUEsTUFBTUcsTUFBTSxHQUFHSCxNQUFNLENBQUNHLE1BQU07RUFDNUJMLGlCQUFpQixDQUFDSyxNQUFNLENBQUM7RUFFekIsTUFBTUMsZUFBZSxHQUFHSixNQUFNLENBQUNLLFlBQVk7RUFDM0MsSUFBSUQsZUFBZSxLQUFLRixTQUFTLEVBQUU7SUFDakMsT0FBT0YsTUFBTSxDQUFDSyxZQUFZO0lBQzFCTCxNQUFNLENBQUNJLGVBQWUsR0FBR0EsZUFBZTtFQUMxQztFQUVBUCxNQUFNLENBQUNTLFdBQVcsQ0FBQ04sTUFBTSxDQUFDTyxPQUFPLEVBQUVMLFNBQVMsQ0FBQztFQUU3QyxNQUFNTSxXQUFXLEdBQUdSLE1BQU0sQ0FBQ1EsV0FBVztFQUN0QyxJQUFJQSxXQUFXLEtBQUtOLFNBQVMsRUFBRTtJQUM3QkosaUJBQWlCLENBQUNVLFdBQVcsQ0FBQztFQUNoQztFQUVBLE1BQU1DLElBQUksR0FBR1QsTUFBTSxDQUFDUyxJQUFJO0VBQ3hCLElBQUlBLElBQUksS0FBS1AsU0FBUyxFQUFFO0lBQ3RCSixpQkFBaUIsQ0FBQ1csSUFBSSxDQUFDO0lBRXZCLE1BQU1DLE1BQU0sR0FBR0QsSUFBSSxDQUFDQyxNQUFNO0lBQzFCLElBQUlBLE1BQU0sS0FBS1IsU0FBUyxFQUFFO01BQ3hCSixpQkFBaUIsQ0FBQ1ksTUFBTSxDQUFDO0lBQzNCO0lBRUEsTUFBTUMsV0FBVyxHQUFHRixJQUFJLENBQUNFLFdBQVc7SUFDcEMsSUFBSUEsV0FBVyxLQUFLVCxTQUFTLEVBQUU7TUFDN0JKLGlCQUFpQixDQUFDYSxXQUFXLENBQUM7SUFDaEM7RUFDRjtFQUVBLE1BQU1DLGVBQWUsR0FBR1osTUFBTSxDQUFDWSxlQUFlO0VBQzlDLElBQUlBLGVBQWUsS0FBSyxJQUFJLEVBQUU7SUFDNUIsT0FBT1osTUFBTSxDQUFDWSxlQUFlO0VBQy9CO0VBRUEsSUFBSUMsU0FBUyxHQUFHYixNQUFNLENBQUNhLFNBQVM7RUFDaEMsSUFBSUEsU0FBUyxLQUFLWCxTQUFTLEVBQUU7SUFDM0JXLFNBQVMsR0FBR0EsU0FBUyxDQUFDQyxPQUFPO0lBQzdCLElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxPQUFPLENBQUNILFNBQVMsQ0FBQyxFQUFFO01BQzdCaEIsTUFBTSxDQUFDUyxXQUFXLENBQUMsT0FBT08sU0FBUyxFQUFFLFFBQVEsQ0FBQztNQUM5Q0EsU0FBUyxHQUFHLENBQUNBLFNBQVMsQ0FBQztJQUN6QjtJQUNBYixNQUFNLENBQUNhLFNBQVMsR0FBR0EsU0FBUztFQUM5QjtBQUNGIiwiaWdub3JlTGlzdCI6W119
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.object.define-property.js");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.cleanQuestion = cleanQuestion;
8
- var _xml = require("./xml");
9
- function cleanQuestion(question) {
10
- (0, _xml.cleanXmlArtefacts)(question);
11
- }
12
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfeG1sIiwicmVxdWlyZSIsImNsZWFuUXVlc3Rpb24iLCJxdWVzdGlvbiIsImNsZWFuWG1sQXJ0ZWZhY3RzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsZWFuZXJzL3F1ZXN0aW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjbGVhblhtbEFydGVmYWN0cyB9IGZyb20gXCIuL3htbFwiXG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblF1ZXN0aW9uKHF1ZXN0aW9uOiBhbnkpOiB2b2lkIHtcbiAgY2xlYW5YbWxBcnRlZmFjdHMocXVlc3Rpb24pXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxJQUFBLEdBQUFDLE9BQUE7QUFFTyxTQUFTQyxhQUFhQSxDQUFDQyxRQUFhLEVBQVE7RUFDakQsSUFBQUMsc0JBQWlCLEVBQUNELFFBQVEsQ0FBQztBQUM3QiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,5 +0,0 @@
1
- import { cleanXmlArtefacts } from "./xml.mjs";
2
- export function cleanQuestion(question) {
3
- cleanXmlArtefacts(question);
4
- }
5
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbGVhblhtbEFydGVmYWN0cyIsImNsZWFuUXVlc3Rpb24iLCJxdWVzdGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9xdWVzdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xlYW5YbWxBcnRlZmFjdHMgfSBmcm9tIFwiLi94bWxcIlxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYW5RdWVzdGlvbihxdWVzdGlvbjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHF1ZXN0aW9uKVxufVxuIl0sIm1hcHBpbmdzIjoiU0FBU0EsaUJBQWlCO0FBRTFCLE9BQU8sU0FBU0MsYUFBYUEsQ0FBQ0MsUUFBYSxFQUFRO0VBQ2pERixpQkFBaUIsQ0FBQ0UsUUFBUSxDQUFDO0FBQzdCIiwiaWdub3JlTGlzdCI6W119
@@ -1,312 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.array.from.js");
4
- require("core-js/modules/es.array.slice.js");
5
- require("core-js/modules/es.function.name.js");
6
- require("core-js/modules/es.object.define-property.js");
7
- require("core-js/modules/es.regexp.to-string.js");
8
- Object.defineProperty(exports, "__esModule", {
9
- value: true
10
- });
11
- exports.cleanReunion = cleanReunion;
12
- require("core-js/modules/es.symbol.js");
13
- require("core-js/modules/es.symbol.description.js");
14
- require("core-js/modules/es.symbol.iterator.js");
15
- require("core-js/modules/es.array.filter.js");
16
- require("core-js/modules/es.array.is-array.js");
17
- require("core-js/modules/es.array.iterator.js");
18
- require("core-js/modules/es.date.to-string.js");
19
- require("core-js/modules/es.object.to-string.js");
20
- require("core-js/modules/es.regexp.exec.js");
21
- require("core-js/modules/es.string.iterator.js");
22
- require("core-js/modules/web.dom-collections.iterator.js");
23
- var _assert = _interopRequireDefault(require("assert"));
24
- var _xml = require("./xml");
25
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
26
- 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; } } }; }
27
- 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; } }
28
- 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; }
29
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
30
- function cleanCycleDeVie(cycleDeVie) {
31
- (0, _xml.cleanXmlArtefacts)(cycleDeVie);
32
- var chrono = cycleDeVie.chrono;
33
- (0, _assert["default"])(chrono);
34
- {
35
- (0, _xml.cleanXmlArtefacts)(chrono);
36
- var creation = chrono.creation;
37
- _assert["default"].strictEqual(_typeof(creation), "string");
38
- creation = new Date(creation);
39
- chrono.creation = creation;
40
- var cloture = chrono.cloture;
41
- if (cloture !== undefined) {
42
- _assert["default"].strictEqual(_typeof(cloture), "string");
43
- cloture = new Date(cloture);
44
- chrono.cloture = cloture;
45
- }
46
- }
47
- }
48
- function cleanReunion(reunion) {
49
- (0, _xml.cleanXmlArtefacts)(reunion);
50
- (0, _xml.cleanBooleanAttribute)(reunion, "captationVideo");
51
- (0, _xml.cleanBooleanAttribute)(reunion, "comiteSecret");
52
- (0, _xml.cleanBooleanAttribute)(reunion, "ouverturePresse");
53
- var xsiType = reunion["@xsi:type"];
54
- if (xsiType !== undefined) {
55
- reunion.xsiType = xsiType;
56
- delete reunion["@xsi:type"];
57
- }
58
- var timestampDebut = reunion.timeStampDebut;
59
- _assert["default"].notStrictEqual(timestampDebut, undefined);
60
- reunion.timestampDebut = timestampDebut;
61
- delete reunion.timeStampDebut;
62
- var timestampFin = reunion.timeStampFin;
63
- if (timestampFin !== undefined) {
64
- _assert["default"].strictEqual(_typeof(timestampFin), "string");
65
- timestampFin = new Date(timestampFin);
66
- reunion.timestampFin = timestampFin;
67
- delete reunion.timeStampFin;
68
- }
69
- var lieu = reunion.lieu;
70
- if (lieu !== undefined) {
71
- (0, _xml.cleanXmlArtefacts)(lieu);
72
- }
73
- var cycleDeVie = reunion.cycleDeVie;
74
- _assert["default"].notStrictEqual(cycleDeVie, undefined);
75
- cleanCycleDeVie(cycleDeVie);
76
- var demandeurs = reunion.demandeurs;
77
- if (demandeurs !== undefined) {
78
- var acteurs = demandeurs.acteur;
79
- if (acteurs !== undefined) {
80
- if (!Array.isArray(acteurs)) {
81
- _assert["default"].notStrictEqual(acteurs, null);
82
- _assert["default"].strictEqual(_typeof(acteurs), "object");
83
- acteurs = [acteurs];
84
- }
85
- demandeurs.acteurs = acteurs;
86
- delete demandeurs.acteur;
87
- var _iterator = _createForOfIteratorHelper(acteurs),
88
- _step;
89
- try {
90
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
91
- var acteur = _step.value;
92
- (0, _xml.cleanXmlArtefacts)(acteur);
93
- }
94
- } catch (err) {
95
- _iterator.e(err);
96
- } finally {
97
- _iterator.f();
98
- }
99
- }
100
- var organe = demandeurs.organe;
101
- if (organe !== undefined) {
102
- (0, _xml.cleanXmlArtefacts)(organe);
103
- }
104
- }
105
- var demandeur = reunion.demandeur;
106
- if (demandeur !== undefined) {
107
- _assert["default"].strictEqual(reunion.demandeurs, undefined);
108
- delete reunion.demandeur;
109
- var _acteur = demandeur.acteur;
110
- if (_acteur !== undefined) {
111
- _assert["default"].notStrictEqual(_acteur, null);
112
- _assert["default"].strictEqual(_typeof(_acteur), "object");
113
- var _acteurs = [_acteur];
114
- demandeur.acteurs = _acteurs;
115
- delete demandeur.acteur;
116
- reunion.demandeurs = demandeur;
117
- for (var _i = 0, _acteurs2 = _acteurs; _i < _acteurs2.length; _i++) {
118
- var _acteur2 = _acteurs2[_i];
119
- (0, _xml.cleanXmlArtefacts)(_acteur2);
120
- }
121
- }
122
- var _organe = demandeur.organe;
123
- if (_organe !== undefined) {
124
- (0, _xml.cleanXmlArtefacts)(_organe);
125
- }
126
- }
127
- var participants = reunion.participants;
128
- if (participants !== undefined) {
129
- (0, _xml.cleanXmlArtefacts)(participants);
130
- var participantsInternes = participants.participantsInternes;
131
- if (participantsInternes !== undefined) {
132
- participantsInternes = participantsInternes.participantInterne;
133
- if (!Array.isArray(participantsInternes)) {
134
- _assert["default"].notStrictEqual(participantsInternes, null);
135
- _assert["default"].strictEqual(_typeof(participantsInternes), "object");
136
- participantsInternes = [participantsInternes];
137
- }
138
- participants.participantsInternes = participantsInternes;
139
- }
140
- var personnesAuditionnees = participants.personnesAuditionnees;
141
- if (personnesAuditionnees !== undefined) {
142
- personnesAuditionnees = personnesAuditionnees.personneAuditionnee;
143
- if (personnesAuditionnees === null) {
144
- delete participants.personnesAuditionnees;
145
- } else {
146
- if (!Array.isArray(personnesAuditionnees)) {
147
- // assert.notStrictEqual(personnesAuditionnees, null)
148
- _assert["default"].strictEqual(_typeof(personnesAuditionnees), "object");
149
- personnesAuditionnees = [personnesAuditionnees];
150
- }
151
- personnesAuditionnees = personnesAuditionnees.filter(function (personneAudionnee) {
152
- return personneAudionnee !== null;
153
- });
154
- if (personnesAuditionnees.length > 0) {
155
- participants.personnesAuditionnees = personnesAuditionnees;
156
- } else {
157
- delete participants.personnesAuditionnees;
158
- }
159
- var _iterator2 = _createForOfIteratorHelper(personnesAuditionnees),
160
- _step2;
161
- try {
162
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
163
- var personneAudionnee = _step2.value;
164
- var _xsiType = personneAudionnee.uid["@xsi:type"];
165
- (0, _assert["default"])(_xsiType);
166
- personneAudionnee.xsiType = _xsiType;
167
- var uid = personneAudionnee.uid["#text"];
168
- (0, _assert["default"])(uid);
169
- personneAudionnee.uid = uid;
170
- var ident = personneAudionnee.ident;
171
- (0, _assert["default"])(ident);
172
- {
173
- (0, _xml.cleanXmlArtefacts)(ident);
174
- }
175
- }
176
- } catch (err) {
177
- _iterator2.e(err);
178
- } finally {
179
- _iterator2.f();
180
- }
181
- }
182
- }
183
- }
184
- if (reunion.ODJ !== undefined) {
185
- var odj = reunion.ODJ;
186
- reunion.odj = odj;
187
- delete reunion.ODJ;
188
- {
189
- (0, _xml.cleanXmlArtefacts)(odj);
190
- var convocationOdj = odj.convocationODJ;
191
- if (convocationOdj !== undefined) {
192
- if (Array.isArray(convocationOdj.item)) {
193
- convocationOdj = convocationOdj.item;
194
- } else {
195
- (0, _assert["default"])(convocationOdj.item);
196
- convocationOdj = [convocationOdj.item];
197
- }
198
- odj.convocationOdj = convocationOdj;
199
- delete odj.convocationODJ;
200
- }
201
- var resumeOdj = odj.resumeODJ;
202
- if (resumeOdj !== undefined) {
203
- if (Array.isArray(resumeOdj.item)) {
204
- resumeOdj = resumeOdj.item;
205
- } else {
206
- (0, _assert["default"])(resumeOdj.item);
207
- resumeOdj = [resumeOdj.item];
208
- }
209
- odj.resumeOdj = resumeOdj;
210
- delete odj.resumeODJ;
211
- }
212
- var pointsOdj = odj.pointsODJ;
213
- if (pointsOdj !== undefined) {
214
- var pointOdj = pointsOdj.pointODJ;
215
- if (Array.isArray(pointOdj)) {
216
- pointsOdj = pointOdj;
217
- } else {
218
- (0, _assert["default"])(pointOdj);
219
- pointsOdj = [pointOdj];
220
- }
221
- odj.pointsOdj = pointsOdj;
222
- var _iterator3 = _createForOfIteratorHelper(pointsOdj),
223
- _step3;
224
- try {
225
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
226
- var _pointOdj = _step3.value;
227
- (0, _xml.cleanXmlArtefacts)(_pointOdj);
228
- (0, _xml.cleanBooleanAttribute)(_pointOdj, "comiteSecret");
229
- var _xsiType2 = _pointOdj["@xsi:type"];
230
- if (_xsiType2 !== undefined) {
231
- _pointOdj.xsiType = _xsiType2;
232
- delete _pointOdj["@xsi:type"];
233
- }
234
- var _cycleDeVie = _pointOdj.cycleDeVie;
235
- _assert["default"].notStrictEqual(_cycleDeVie, undefined);
236
- cleanCycleDeVie(_cycleDeVie);
237
- _assert["default"].strictEqual(_pointOdj.demandeurPoint, undefined);
238
- var dossiersLegislatifsRefs = _pointOdj.dossiersLegislatifsRefs;
239
- if (dossiersLegislatifsRefs !== undefined) {
240
- if (Array.isArray(dossiersLegislatifsRefs.dossierRef)) {
241
- dossiersLegislatifsRefs = dossiersLegislatifsRefs.dossierRef;
242
- } else {
243
- (0, _assert["default"])(dossiersLegislatifsRefs.dossierRef);
244
- dossiersLegislatifsRefs = [dossiersLegislatifsRefs.dossierRef];
245
- }
246
- _pointOdj.dossiersLegislatifsRefs = dossiersLegislatifsRefs;
247
- }
248
- _pointOdj.typePointOdj = _pointOdj.typePointODJ;
249
- delete _pointOdj.typePointODJ;
250
- _assert["default"].strictEqual(_pointOdj.textesAssocies, undefined);
251
- _pointOdj.natureTravauxOdj = _pointOdj.natureTravauxODJ;
252
- delete _pointOdj.natureTravauxODJ;
253
- var dateConfPres = _pointOdj.dateConfPres;
254
- if (dateConfPres !== undefined) {
255
- _assert["default"].strictEqual(_typeof(dateConfPres), "string");
256
- (0, _assert["default"])(/^\d{4}-\d{2}-\d{2}\+\d{2}:00$/.test(dateConfPres));
257
- dateConfPres = new Date(dateConfPres.split("+")[0]);
258
- _pointOdj.dateConfPres = dateConfPres;
259
- }
260
- var dateLettreMinistre = _pointOdj.dateLettreMinistre;
261
- if (dateLettreMinistre !== undefined) {
262
- _assert["default"].strictEqual(_typeof(dateLettreMinistre), "string");
263
- (0, _assert["default"])(/^\d{4}-\d{2}-\d{2}\+\d{2}:00$/.test(dateLettreMinistre));
264
- dateLettreMinistre = new Date(dateLettreMinistre.split("+")[0]);
265
- _pointOdj.dateLettreMinistre = dateLettreMinistre;
266
- }
267
- }
268
- } catch (err) {
269
- _iterator3.e(err);
270
- } finally {
271
- _iterator3.f();
272
- }
273
- delete odj.pointsODJ;
274
- }
275
- }
276
- }
277
- var identifiants = reunion.identifiants;
278
- if (identifiants !== undefined) {
279
- (0, _xml.cleanXmlArtefacts)(identifiants);
280
- var numSeanceJo = identifiants.numSeanceJO;
281
- if (numSeanceJo !== undefined) {
282
- identifiants.numSeanceJo = numSeanceJo;
283
- delete identifiants.numSeanceJO;
284
- }
285
- var idJo = identifiants.idJO;
286
- if (idJo !== undefined) {
287
- identifiants.idJo = idJo;
288
- delete identifiants.idJO;
289
- }
290
- var dateSeance = identifiants.DateSeance;
291
- _assert["default"].strictEqual(_typeof(dateSeance), "string");
292
- (0, _assert["default"])(/^\d{4}-\d{2}-\d{2}\+\d{2}:00$/.test(dateSeance));
293
- dateSeance = new Date(dateSeance.split("+")[0]);
294
- identifiants.dateSeance = dateSeance;
295
- delete identifiants.DateSeance;
296
- }
297
- var infosReunionsInternationale = reunion.infosReunionsInternationale;
298
- if (infosReunionsInternationale !== undefined) {
299
- (0, _xml.cleanXmlArtefacts)(infosReunionsInternationale);
300
- (0, _xml.cleanBooleanAttribute)(infosReunionsInternationale, "estReunionInternationale");
301
- var listePays = infosReunionsInternationale.listePays;
302
- if (listePays !== undefined) {
303
- listePays = listePays.paysRef;
304
- if (!Array.isArray(listePays)) {
305
- _assert["default"].strictEqual(_typeof(listePays), "string");
306
- listePays = [listePays];
307
- }
308
- infosReunionsInternationale.listePays = listePays;
309
- }
310
- }
311
- }
312
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYXNzZXJ0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfeG1sIiwiZSIsIl9fZXNNb2R1bGUiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsInIiLCJ0IiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJBcnJheSIsImlzQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJsZW5ndGgiLCJfbiIsIkYiLCJzIiwibiIsImRvbmUiLCJ2YWx1ZSIsImYiLCJUeXBlRXJyb3IiLCJvIiwiYSIsInUiLCJjYWxsIiwibmV4dCIsIl9hcnJheUxpa2VUb0FycmF5IiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsImZyb20iLCJ0ZXN0IiwiX3R5cGVvZiIsInByb3RvdHlwZSIsImNsZWFuQ3ljbGVEZVZpZSIsImN5Y2xlRGVWaWUiLCJjbGVhblhtbEFydGVmYWN0cyIsImNocm9ubyIsImFzc2VydCIsImNyZWF0aW9uIiwic3RyaWN0RXF1YWwiLCJEYXRlIiwiY2xvdHVyZSIsInVuZGVmaW5lZCIsImNsZWFuUmV1bmlvbiIsInJldW5pb24iLCJjbGVhbkJvb2xlYW5BdHRyaWJ1dGUiLCJ4c2lUeXBlIiwidGltZXN0YW1wRGVidXQiLCJ0aW1lU3RhbXBEZWJ1dCIsIm5vdFN0cmljdEVxdWFsIiwidGltZXN0YW1wRmluIiwidGltZVN0YW1wRmluIiwibGlldSIsImRlbWFuZGV1cnMiLCJhY3RldXJzIiwiYWN0ZXVyIiwiX2l0ZXJhdG9yIiwiX3N0ZXAiLCJlcnIiLCJvcmdhbmUiLCJkZW1hbmRldXIiLCJfaSIsIl9hY3RldXJzMiIsInBhcnRpY2lwYW50cyIsInBhcnRpY2lwYW50c0ludGVybmVzIiwicGFydGljaXBhbnRJbnRlcm5lIiwicGVyc29ubmVzQXVkaXRpb25uZWVzIiwicGVyc29ubmVBdWRpdGlvbm5lZSIsImZpbHRlciIsInBlcnNvbm5lQXVkaW9ubmVlIiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsInVpZCIsImlkZW50IiwiT0RKIiwib2RqIiwiY29udm9jYXRpb25PZGoiLCJjb252b2NhdGlvbk9ESiIsIml0ZW0iLCJyZXN1bWVPZGoiLCJyZXN1bWVPREoiLCJwb2ludHNPZGoiLCJwb2ludHNPREoiLCJwb2ludE9kaiIsInBvaW50T0RKIiwiX2l0ZXJhdG9yMyIsIl9zdGVwMyIsImRlbWFuZGV1clBvaW50IiwiZG9zc2llcnNMZWdpc2xhdGlmc1JlZnMiLCJkb3NzaWVyUmVmIiwidHlwZVBvaW50T2RqIiwidHlwZVBvaW50T0RKIiwidGV4dGVzQXNzb2NpZXMiLCJuYXR1cmVUcmF2YXV4T2RqIiwibmF0dXJlVHJhdmF1eE9ESiIsImRhdGVDb25mUHJlcyIsInNwbGl0IiwiZGF0ZUxldHRyZU1pbmlzdHJlIiwiaWRlbnRpZmlhbnRzIiwibnVtU2VhbmNlSm8iLCJudW1TZWFuY2VKTyIsImlkSm8iLCJpZEpPIiwiZGF0ZVNlYW5jZSIsIkRhdGVTZWFuY2UiLCJpbmZvc1JldW5pb25zSW50ZXJuYXRpb25hbGUiLCJsaXN0ZVBheXMiLCJwYXlzUmVmIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsZWFuZXJzL3JldW5pb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuQm9vbGVhbkF0dHJpYnV0ZSwgY2xlYW5YbWxBcnRlZmFjdHMgfSBmcm9tIFwiLi94bWxcIlxuXG5mdW5jdGlvbiBjbGVhbkN5Y2xlRGVWaWUoY3ljbGVEZVZpZTogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKGN5Y2xlRGVWaWUpXG5cbiAgY29uc3QgY2hyb25vID0gY3ljbGVEZVZpZS5jaHJvbm9cbiAgYXNzZXJ0KGNocm9ubylcbiAge1xuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGNocm9ubylcblxuICAgIGxldCBjcmVhdGlvbiA9IGNocm9uby5jcmVhdGlvblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh0eXBlb2YgY3JlYXRpb24sIFwic3RyaW5nXCIpXG4gICAgY3JlYXRpb24gPSBuZXcgRGF0ZShjcmVhdGlvbilcbiAgICBjaHJvbm8uY3JlYXRpb24gPSBjcmVhdGlvblxuXG4gICAgbGV0IGNsb3R1cmUgPSBjaHJvbm8uY2xvdHVyZVxuICAgIGlmIChjbG90dXJlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbCh0eXBlb2YgY2xvdHVyZSwgXCJzdHJpbmdcIilcbiAgICAgIGNsb3R1cmUgPSBuZXcgRGF0ZShjbG90dXJlKVxuICAgICAgY2hyb25vLmNsb3R1cmUgPSBjbG90dXJlXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblJldW5pb24ocmV1bmlvbjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHJldW5pb24pXG5cbiAgY2xlYW5Cb29sZWFuQXR0cmlidXRlKHJldW5pb24sIFwiY2FwdGF0aW9uVmlkZW9cIilcbiAgY2xlYW5Cb29sZWFuQXR0cmlidXRlKHJldW5pb24sIFwiY29taXRlU2VjcmV0XCIpXG4gIGNsZWFuQm9vbGVhbkF0dHJpYnV0ZShyZXVuaW9uLCBcIm91dmVydHVyZVByZXNzZVwiKVxuXG4gIGNvbnN0IHhzaVR5cGUgPSByZXVuaW9uW1wiQHhzaTp0eXBlXCJdXG4gIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICByZXVuaW9uLnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgZGVsZXRlIHJldW5pb25bXCJAeHNpOnR5cGVcIl1cbiAgfVxuXG4gIGNvbnN0IHRpbWVzdGFtcERlYnV0ID0gcmV1bmlvbi50aW1lU3RhbXBEZWJ1dFxuICBhc3NlcnQubm90U3RyaWN0RXF1YWwodGltZXN0YW1wRGVidXQsIHVuZGVmaW5lZClcbiAgcmV1bmlvbi50aW1lc3RhbXBEZWJ1dCA9IHRpbWVzdGFtcERlYnV0XG4gIGRlbGV0ZSByZXVuaW9uLnRpbWVTdGFtcERlYnV0XG5cbiAgbGV0IHRpbWVzdGFtcEZpbiA9IHJldW5pb24udGltZVN0YW1wRmluXG4gIGlmICh0aW1lc3RhbXBGaW4gIT09IHVuZGVmaW5lZCkge1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh0eXBlb2YgdGltZXN0YW1wRmluLCBcInN0cmluZ1wiKVxuICAgIHRpbWVzdGFtcEZpbiA9IG5ldyBEYXRlKHRpbWVzdGFtcEZpbilcbiAgICByZXVuaW9uLnRpbWVzdGFtcEZpbiA9IHRpbWVzdGFtcEZpblxuICAgIGRlbGV0ZSByZXVuaW9uLnRpbWVTdGFtcEZpblxuICB9XG5cbiAgY29uc3QgbGlldSA9IHJldW5pb24ubGlldVxuICBpZiAobGlldSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMobGlldSlcbiAgfVxuXG4gIGNvbnN0IGN5Y2xlRGVWaWUgPSByZXVuaW9uLmN5Y2xlRGVWaWVcbiAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGN5Y2xlRGVWaWUsIHVuZGVmaW5lZClcbiAgY2xlYW5DeWNsZURlVmllKGN5Y2xlRGVWaWUpXG5cbiAgY29uc3QgZGVtYW5kZXVycyA9IHJldW5pb24uZGVtYW5kZXVyc1xuICBpZiAoZGVtYW5kZXVycyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgbGV0IGFjdGV1cnMgPSBkZW1hbmRldXJzLmFjdGV1clxuICAgIGlmIChhY3RldXJzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheShhY3RldXJzKSkge1xuICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYWN0ZXVycywgbnVsbClcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHR5cGVvZiBhY3RldXJzLCBcIm9iamVjdFwiKVxuICAgICAgICBhY3RldXJzID0gW2FjdGV1cnNdXG4gICAgICB9XG4gICAgICBkZW1hbmRldXJzLmFjdGV1cnMgPSBhY3RldXJzXG4gICAgICBkZWxldGUgZGVtYW5kZXVycy5hY3RldXJcblxuICAgICAgZm9yIChjb25zdCBhY3RldXIgb2YgYWN0ZXVycykge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhhY3RldXIpXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgb3JnYW5lID0gZGVtYW5kZXVycy5vcmdhbmVcbiAgICBpZiAob3JnYW5lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKG9yZ2FuZSlcbiAgICB9XG4gIH1cbiAgY29uc3QgZGVtYW5kZXVyID0gcmV1bmlvbi5kZW1hbmRldXJcbiAgaWYgKGRlbWFuZGV1ciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJldW5pb24uZGVtYW5kZXVycywgdW5kZWZpbmVkKVxuICAgIGRlbGV0ZSByZXVuaW9uLmRlbWFuZGV1clxuXG4gICAgbGV0IGFjdGV1ciA9IGRlbWFuZGV1ci5hY3RldXJcbiAgICBpZiAoYWN0ZXVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhY3RldXIsIG51bGwpXG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGFjdGV1ciwgXCJvYmplY3RcIilcbiAgICAgIGNvbnN0IGFjdGV1cnMgPSBbYWN0ZXVyXVxuICAgICAgZGVtYW5kZXVyLmFjdGV1cnMgPSBhY3RldXJzXG4gICAgICBkZWxldGUgZGVtYW5kZXVyLmFjdGV1clxuICAgICAgcmV1bmlvbi5kZW1hbmRldXJzID0gZGVtYW5kZXVyXG5cbiAgICAgIGZvciAoY29uc3QgYWN0ZXVyIG9mIGFjdGV1cnMpIHtcbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoYWN0ZXVyKVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IG9yZ2FuZSA9IGRlbWFuZGV1ci5vcmdhbmVcbiAgICBpZiAob3JnYW5lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKG9yZ2FuZSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBwYXJ0aWNpcGFudHMgPSByZXVuaW9uLnBhcnRpY2lwYW50c1xuICBpZiAocGFydGljaXBhbnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhwYXJ0aWNpcGFudHMpXG5cbiAgICBsZXQgcGFydGljaXBhbnRzSW50ZXJuZXMgPSBwYXJ0aWNpcGFudHMucGFydGljaXBhbnRzSW50ZXJuZXNcbiAgICBpZiAocGFydGljaXBhbnRzSW50ZXJuZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGFydGljaXBhbnRzSW50ZXJuZXMgPSBwYXJ0aWNpcGFudHNJbnRlcm5lcy5wYXJ0aWNpcGFudEludGVybmVcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheShwYXJ0aWNpcGFudHNJbnRlcm5lcykpIHtcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHBhcnRpY2lwYW50c0ludGVybmVzLCBudWxsKVxuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIHBhcnRpY2lwYW50c0ludGVybmVzLCBcIm9iamVjdFwiKVxuICAgICAgICBwYXJ0aWNpcGFudHNJbnRlcm5lcyA9IFtwYXJ0aWNpcGFudHNJbnRlcm5lc11cbiAgICAgIH1cbiAgICAgIHBhcnRpY2lwYW50cy5wYXJ0aWNpcGFudHNJbnRlcm5lcyA9IHBhcnRpY2lwYW50c0ludGVybmVzXG4gICAgfVxuXG4gICAgbGV0IHBlcnNvbm5lc0F1ZGl0aW9ubmVlcyA9IHBhcnRpY2lwYW50cy5wZXJzb25uZXNBdWRpdGlvbm5lZXNcbiAgICBpZiAocGVyc29ubmVzQXVkaXRpb25uZWVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHBlcnNvbm5lc0F1ZGl0aW9ubmVlcyA9IHBlcnNvbm5lc0F1ZGl0aW9ubmVlcy5wZXJzb25uZUF1ZGl0aW9ubmVlXG4gICAgICBpZiAocGVyc29ubmVzQXVkaXRpb25uZWVzID09PSBudWxsKSB7XG4gICAgICAgIGRlbGV0ZSBwYXJ0aWNpcGFudHMucGVyc29ubmVzQXVkaXRpb25uZWVzXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGVyc29ubmVzQXVkaXRpb25uZWVzKSkge1xuICAgICAgICAgIC8vIGFzc2VydC5ub3RTdHJpY3RFcXVhbChwZXJzb25uZXNBdWRpdGlvbm5lZXMsIG51bGwpXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHR5cGVvZiBwZXJzb25uZXNBdWRpdGlvbm5lZXMsIFwib2JqZWN0XCIpXG4gICAgICAgICAgcGVyc29ubmVzQXVkaXRpb25uZWVzID0gW3BlcnNvbm5lc0F1ZGl0aW9ubmVlc11cbiAgICAgICAgfVxuICAgICAgICBwZXJzb25uZXNBdWRpdGlvbm5lZXMgPSBwZXJzb25uZXNBdWRpdGlvbm5lZXMuZmlsdGVyKFxuICAgICAgICAgIChwZXJzb25uZUF1ZGlvbm5lZTogYW55KSA9PiBwZXJzb25uZUF1ZGlvbm5lZSAhPT0gbnVsbCxcbiAgICAgICAgKVxuICAgICAgICBpZiAocGVyc29ubmVzQXVkaXRpb25uZWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBwYXJ0aWNpcGFudHMucGVyc29ubmVzQXVkaXRpb25uZWVzID0gcGVyc29ubmVzQXVkaXRpb25uZWVzXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZGVsZXRlIHBhcnRpY2lwYW50cy5wZXJzb25uZXNBdWRpdGlvbm5lZXNcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgcGVyc29ubmVBdWRpb25uZWUgb2YgcGVyc29ubmVzQXVkaXRpb25uZWVzKSB7XG4gICAgICAgICAgY29uc3QgeHNpVHlwZSA9IHBlcnNvbm5lQXVkaW9ubmVlLnVpZFtcIkB4c2k6dHlwZVwiXVxuICAgICAgICAgIGFzc2VydCh4c2lUeXBlKVxuICAgICAgICAgIHBlcnNvbm5lQXVkaW9ubmVlLnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgICAgY29uc3QgdWlkID0gcGVyc29ubmVBdWRpb25uZWUudWlkW1wiI3RleHRcIl1cbiAgICAgICAgICBhc3NlcnQodWlkKVxuICAgICAgICAgIHBlcnNvbm5lQXVkaW9ubmVlLnVpZCA9IHVpZFxuXG4gICAgICAgICAgY29uc3QgaWRlbnQgPSBwZXJzb25uZUF1ZGlvbm5lZS5pZGVudFxuICAgICAgICAgIGFzc2VydChpZGVudClcbiAgICAgICAgICB7XG4gICAgICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpZGVudClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAocmV1bmlvbi5PREogIT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG9kaiA9IHJldW5pb24uT0RKXG4gICAgcmV1bmlvbi5vZGogPSBvZGpcbiAgICBkZWxldGUgcmV1bmlvbi5PREpcbiAgICB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhvZGopXG5cbiAgICAgIGxldCBjb252b2NhdGlvbk9kaiA9IG9kai5jb252b2NhdGlvbk9ESlxuICAgICAgaWYgKGNvbnZvY2F0aW9uT2RqICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY29udm9jYXRpb25PZGouaXRlbSkpIHtcbiAgICAgICAgICBjb252b2NhdGlvbk9kaiA9IGNvbnZvY2F0aW9uT2RqLml0ZW1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhc3NlcnQoY29udm9jYXRpb25PZGouaXRlbSlcbiAgICAgICAgICBjb252b2NhdGlvbk9kaiA9IFtjb252b2NhdGlvbk9kai5pdGVtXVxuICAgICAgICB9XG4gICAgICAgIG9kai5jb252b2NhdGlvbk9kaiA9IGNvbnZvY2F0aW9uT2RqXG4gICAgICAgIGRlbGV0ZSBvZGouY29udm9jYXRpb25PREpcbiAgICAgIH1cblxuICAgICAgbGV0IHJlc3VtZU9kaiA9IG9kai5yZXN1bWVPREpcbiAgICAgIGlmIChyZXN1bWVPZGogIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bWVPZGouaXRlbSkpIHtcbiAgICAgICAgICByZXN1bWVPZGogPSByZXN1bWVPZGouaXRlbVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGFzc2VydChyZXN1bWVPZGouaXRlbSlcbiAgICAgICAgICByZXN1bWVPZGogPSBbcmVzdW1lT2RqLml0ZW1dXG4gICAgICAgIH1cbiAgICAgICAgb2RqLnJlc3VtZU9kaiA9IHJlc3VtZU9kalxuICAgICAgICBkZWxldGUgb2RqLnJlc3VtZU9ESlxuICAgICAgfVxuXG4gICAgICBsZXQgcG9pbnRzT2RqID0gb2RqLnBvaW50c09ESlxuICAgICAgaWYgKHBvaW50c09kaiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGxldCBwb2ludE9kaiA9IHBvaW50c09kai5wb2ludE9ESlxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShwb2ludE9kaikpIHtcbiAgICAgICAgICBwb2ludHNPZGogPSBwb2ludE9kalxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGFzc2VydChwb2ludE9kailcbiAgICAgICAgICBwb2ludHNPZGogPSBbcG9pbnRPZGpdXG4gICAgICAgIH1cbiAgICAgICAgb2RqLnBvaW50c09kaiA9IHBvaW50c09kalxuXG4gICAgICAgIGZvciAoY29uc3QgcG9pbnRPZGogb2YgcG9pbnRzT2RqKSB7XG4gICAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMocG9pbnRPZGopXG5cbiAgICAgICAgICBjbGVhbkJvb2xlYW5BdHRyaWJ1dGUocG9pbnRPZGosIFwiY29taXRlU2VjcmV0XCIpXG5cbiAgICAgICAgICBjb25zdCB4c2lUeXBlID0gcG9pbnRPZGpbXCJAeHNpOnR5cGVcIl1cbiAgICAgICAgICBpZiAoeHNpVHlwZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBwb2ludE9kai54c2lUeXBlID0geHNpVHlwZVxuICAgICAgICAgICAgZGVsZXRlIHBvaW50T2RqW1wiQHhzaTp0eXBlXCJdXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgY3ljbGVEZVZpZSA9IHBvaW50T2RqLmN5Y2xlRGVWaWVcbiAgICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoY3ljbGVEZVZpZSwgdW5kZWZpbmVkKVxuICAgICAgICAgIGNsZWFuQ3ljbGVEZVZpZShjeWNsZURlVmllKVxuXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBvaW50T2RqLmRlbWFuZGV1clBvaW50LCB1bmRlZmluZWQpXG5cbiAgICAgICAgICBsZXQgZG9zc2llcnNMZWdpc2xhdGlmc1JlZnMgPSBwb2ludE9kai5kb3NzaWVyc0xlZ2lzbGF0aWZzUmVmc1xuICAgICAgICAgIGlmIChkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcy5kb3NzaWVyUmVmKSkge1xuICAgICAgICAgICAgICBkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcyA9IGRvc3NpZXJzTGVnaXNsYXRpZnNSZWZzLmRvc3NpZXJSZWZcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGFzc2VydChkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcy5kb3NzaWVyUmVmKVxuICAgICAgICAgICAgICBkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcyA9IFtkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcy5kb3NzaWVyUmVmXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcG9pbnRPZGouZG9zc2llcnNMZWdpc2xhdGlmc1JlZnMgPSBkb3NzaWVyc0xlZ2lzbGF0aWZzUmVmc1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHBvaW50T2RqLnR5cGVQb2ludE9kaiA9IHBvaW50T2RqLnR5cGVQb2ludE9ESlxuICAgICAgICAgIGRlbGV0ZSBwb2ludE9kai50eXBlUG9pbnRPREpcblxuICAgICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChwb2ludE9kai50ZXh0ZXNBc3NvY2llcywgdW5kZWZpbmVkKVxuXG4gICAgICAgICAgcG9pbnRPZGoubmF0dXJlVHJhdmF1eE9kaiA9IHBvaW50T2RqLm5hdHVyZVRyYXZhdXhPREpcbiAgICAgICAgICBkZWxldGUgcG9pbnRPZGoubmF0dXJlVHJhdmF1eE9ESlxuXG4gICAgICAgICAgbGV0IGRhdGVDb25mUHJlcyA9IHBvaW50T2RqLmRhdGVDb25mUHJlc1xuICAgICAgICAgIGlmIChkYXRlQ29uZlByZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHR5cGVvZiBkYXRlQ29uZlByZXMsIFwic3RyaW5nXCIpXG4gICAgICAgICAgICBhc3NlcnQoL15cXGR7NH0tXFxkezJ9LVxcZHsyfVxcK1xcZHsyfTowMCQvLnRlc3QoZGF0ZUNvbmZQcmVzKSlcbiAgICAgICAgICAgIGRhdGVDb25mUHJlcyA9IG5ldyBEYXRlKGRhdGVDb25mUHJlcy5zcGxpdChcIitcIilbMF0pXG4gICAgICAgICAgICBwb2ludE9kai5kYXRlQ29uZlByZXMgPSBkYXRlQ29uZlByZXNcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgZGF0ZUxldHRyZU1pbmlzdHJlID0gcG9pbnRPZGouZGF0ZUxldHRyZU1pbmlzdHJlXG4gICAgICAgICAgaWYgKGRhdGVMZXR0cmVNaW5pc3RyZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGRhdGVMZXR0cmVNaW5pc3RyZSwgXCJzdHJpbmdcIilcbiAgICAgICAgICAgIGFzc2VydCgvXlxcZHs0fS1cXGR7Mn0tXFxkezJ9XFwrXFxkezJ9OjAwJC8udGVzdChkYXRlTGV0dHJlTWluaXN0cmUpKVxuICAgICAgICAgICAgZGF0ZUxldHRyZU1pbmlzdHJlID0gbmV3IERhdGUoZGF0ZUxldHRyZU1pbmlzdHJlLnNwbGl0KFwiK1wiKVswXSlcbiAgICAgICAgICAgIHBvaW50T2RqLmRhdGVMZXR0cmVNaW5pc3RyZSA9IGRhdGVMZXR0cmVNaW5pc3RyZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkZWxldGUgb2RqLnBvaW50c09ESlxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGlkZW50aWZpYW50cyA9IHJldW5pb24uaWRlbnRpZmlhbnRzXG4gIGlmIChpZGVudGlmaWFudHMgIT09IHVuZGVmaW5lZCkge1xuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGlkZW50aWZpYW50cylcbiAgICBjb25zdCBudW1TZWFuY2VKbyA9IGlkZW50aWZpYW50cy5udW1TZWFuY2VKT1xuICAgIGlmIChudW1TZWFuY2VKbyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZGVudGlmaWFudHMubnVtU2VhbmNlSm8gPSBudW1TZWFuY2VKb1xuICAgICAgZGVsZXRlIGlkZW50aWZpYW50cy5udW1TZWFuY2VKT1xuICAgIH1cblxuICAgIGNvbnN0IGlkSm8gPSBpZGVudGlmaWFudHMuaWRKT1xuICAgIGlmIChpZEpvICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlkZW50aWZpYW50cy5pZEpvID0gaWRKb1xuICAgICAgZGVsZXRlIGlkZW50aWZpYW50cy5pZEpPXG4gICAgfVxuXG4gICAgbGV0IGRhdGVTZWFuY2UgPSBpZGVudGlmaWFudHMuRGF0ZVNlYW5jZVxuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh0eXBlb2YgZGF0ZVNlYW5jZSwgXCJzdHJpbmdcIilcbiAgICBhc3NlcnQoL15cXGR7NH0tXFxkezJ9LVxcZHsyfVxcK1xcZHsyfTowMCQvLnRlc3QoZGF0ZVNlYW5jZSkpXG4gICAgZGF0ZVNlYW5jZSA9IG5ldyBEYXRlKGRhdGVTZWFuY2Uuc3BsaXQoXCIrXCIpWzBdKVxuICAgIGlkZW50aWZpYW50cy5kYXRlU2VhbmNlID0gZGF0ZVNlYW5jZVxuICAgIGRlbGV0ZSBpZGVudGlmaWFudHMuRGF0ZVNlYW5jZVxuICB9XG5cbiAgY29uc3QgaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlID0gcmV1bmlvbi5pbmZvc1JldW5pb25zSW50ZXJuYXRpb25hbGVcbiAgaWYgKGluZm9zUmV1bmlvbnNJbnRlcm5hdGlvbmFsZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMoaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlKVxuXG4gICAgY2xlYW5Cb29sZWFuQXR0cmlidXRlKFxuICAgICAgaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlLFxuICAgICAgXCJlc3RSZXVuaW9uSW50ZXJuYXRpb25hbGVcIixcbiAgICApXG5cbiAgICBsZXQgbGlzdGVQYXlzID0gaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlLmxpc3RlUGF5c1xuICAgIGlmIChsaXN0ZVBheXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgbGlzdGVQYXlzID0gbGlzdGVQYXlzLnBheXNSZWZcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheShsaXN0ZVBheXMpKSB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbCh0eXBlb2YgbGlzdGVQYXlzLCBcInN0cmluZ1wiKVxuICAgICAgICBsaXN0ZVBheXMgPSBbbGlzdGVQYXlzXVxuICAgICAgfVxuICAgICAgaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlLmxpc3RlUGF5cyA9IGxpc3RlUGF5c1xuICAgIH1cbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsSUFBQSxHQUFBRCxPQUFBO0FBQWdFLFNBQUFELHVCQUFBRyxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsZ0JBQUFBLENBQUE7QUFBQSxTQUFBRSwyQkFBQUMsQ0FBQSxFQUFBSCxDQUFBLFFBQUFJLENBQUEseUJBQUFDLE1BQUEsSUFBQUYsQ0FBQSxDQUFBRSxNQUFBLENBQUFDLFFBQUEsS0FBQUgsQ0FBQSxxQkFBQUMsQ0FBQSxRQUFBRyxLQUFBLENBQUFDLE9BQUEsQ0FBQUwsQ0FBQSxNQUFBQyxDQUFBLEdBQUFLLDJCQUFBLENBQUFOLENBQUEsTUFBQUgsQ0FBQSxJQUFBRyxDQUFBLHVCQUFBQSxDQUFBLENBQUFPLE1BQUEsSUFBQU4sQ0FBQSxLQUFBRCxDQUFBLEdBQUFDLENBQUEsT0FBQU8sRUFBQSxNQUFBQyxDQUFBLFlBQUFBLEVBQUEsZUFBQUMsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsV0FBQUEsRUFBQSxXQUFBSCxFQUFBLElBQUFSLENBQUEsQ0FBQU8sTUFBQSxLQUFBSyxJQUFBLFdBQUFBLElBQUEsTUFBQUMsS0FBQSxFQUFBYixDQUFBLENBQUFRLEVBQUEsVUFBQVgsQ0FBQSxXQUFBQSxFQUFBRyxDQUFBLFVBQUFBLENBQUEsS0FBQWMsQ0FBQSxFQUFBTCxDQUFBLGdCQUFBTSxTQUFBLGlKQUFBQyxDQUFBLEVBQUFDLENBQUEsT0FBQUMsQ0FBQSxnQkFBQVIsQ0FBQSxXQUFBQSxFQUFBLElBQUFULENBQUEsR0FBQUEsQ0FBQSxDQUFBa0IsSUFBQSxDQUFBbkIsQ0FBQSxNQUFBVyxDQUFBLFdBQUFBLEVBQUEsUUFBQVgsQ0FBQSxHQUFBQyxDQUFBLENBQUFtQixJQUFBLFdBQUFILENBQUEsR0FBQWpCLENBQUEsQ0FBQVksSUFBQSxFQUFBWixDQUFBLEtBQUFILENBQUEsV0FBQUEsRUFBQUcsQ0FBQSxJQUFBa0IsQ0FBQSxPQUFBRixDQUFBLEdBQUFoQixDQUFBLEtBQUFjLENBQUEsV0FBQUEsRUFBQSxVQUFBRyxDQUFBLFlBQUFoQixDQUFBLGNBQUFBLENBQUEsOEJBQUFpQixDQUFBLFFBQUFGLENBQUE7QUFBQSxTQUFBViw0QkFBQU4sQ0FBQSxFQUFBaUIsQ0FBQSxRQUFBakIsQ0FBQSwyQkFBQUEsQ0FBQSxTQUFBcUIsaUJBQUEsQ0FBQXJCLENBQUEsRUFBQWlCLENBQUEsT0FBQWhCLENBQUEsTUFBQXFCLFFBQUEsQ0FBQUgsSUFBQSxDQUFBbkIsQ0FBQSxFQUFBdUIsS0FBQSw2QkFBQXRCLENBQUEsSUFBQUQsQ0FBQSxDQUFBd0IsV0FBQSxLQUFBdkIsQ0FBQSxHQUFBRCxDQUFBLENBQUF3QixXQUFBLENBQUFDLElBQUEsYUFBQXhCLENBQUEsY0FBQUEsQ0FBQSxHQUFBRyxLQUFBLENBQUFzQixJQUFBLENBQUExQixDQUFBLG9CQUFBQyxDQUFBLCtDQUFBMEIsSUFBQSxDQUFBMUIsQ0FBQSxJQUFBb0IsaUJBQUEsQ0FBQXJCLENBQUEsRUFBQWlCLENBQUE7QUFBQSxTQUFBSSxrQkFBQXJCLENBQUEsRUFBQWlCLENBQUEsYUFBQUEsQ0FBQSxJQUFBQSxDQUFBLEdBQUFqQixDQUFBLENBQUFPLE1BQUEsTUFBQVUsQ0FBQSxHQUFBakIsQ0FBQSxDQUFBTyxNQUFBLFlBQUFWLENBQUEsTUFBQWMsQ0FBQSxHQUFBUCxLQUFBLENBQUFhLENBQUEsR0FBQXBCLENBQUEsR0FBQW9CLENBQUEsRUFBQXBCLENBQUEsSUFBQWMsQ0FBQSxDQUFBZCxDQUFBLElBQUFHLENBQUEsQ0FBQUgsQ0FBQSxVQUFBYyxDQUFBO0FBQUEsU0FBQWlCLFFBQUFaLENBQUEsc0NBQUFZLE9BQUEsd0JBQUExQixNQUFBLHVCQUFBQSxNQUFBLENBQUFDLFFBQUEsYUFBQWEsQ0FBQSxrQkFBQUEsQ0FBQSxnQkFBQUEsQ0FBQSxXQUFBQSxDQUFBLHlCQUFBZCxNQUFBLElBQUFjLENBQUEsQ0FBQVEsV0FBQSxLQUFBdEIsTUFBQSxJQUFBYyxDQUFBLEtBQUFkLE1BQUEsQ0FBQTJCLFNBQUEscUJBQUFiLENBQUEsS0FBQVksT0FBQSxDQUFBWixDQUFBO0FBRWhFLFNBQVNjLGVBQWVBLENBQUNDLFVBQWUsRUFBUTtFQUM5QyxJQUFBQyxzQkFBaUIsRUFBQ0QsVUFBVSxDQUFDO0VBRTdCLElBQU1FLE1BQU0sR0FBR0YsVUFBVSxDQUFDRSxNQUFNO0VBQ2hDLElBQUFDLGtCQUFNLEVBQUNELE1BQU0sQ0FBQztFQUNkO0lBQ0UsSUFBQUQsc0JBQWlCLEVBQUNDLE1BQU0sQ0FBQztJQUV6QixJQUFJRSxRQUFRLEdBQUdGLE1BQU0sQ0FBQ0UsUUFBUTtJQUM5QkQsa0JBQU0sQ0FBQ0UsV0FBVyxDQUFBUixPQUFBLENBQVFPLFFBQVEsR0FBRSxRQUFRLENBQUM7SUFDN0NBLFFBQVEsR0FBRyxJQUFJRSxJQUFJLENBQUNGLFFBQVEsQ0FBQztJQUM3QkYsTUFBTSxDQUFDRSxRQUFRLEdBQUdBLFFBQVE7SUFFMUIsSUFBSUcsT0FBTyxHQUFHTCxNQUFNLENBQUNLLE9BQU87SUFDNUIsSUFBSUEsT0FBTyxLQUFLQyxTQUFTLEVBQUU7TUFDekJMLGtCQUFNLENBQUNFLFdBQVcsQ0FBQVIsT0FBQSxDQUFRVSxPQUFPLEdBQUUsUUFBUSxDQUFDO01BQzVDQSxPQUFPLEdBQUcsSUFBSUQsSUFBSSxDQUFDQyxPQUFPLENBQUM7TUFDM0JMLE1BQU0sQ0FBQ0ssT0FBTyxHQUFHQSxPQUFPO0lBQzFCO0VBQ0Y7QUFDRjtBQUVPLFNBQVNFLFlBQVlBLENBQUNDLE9BQVksRUFBUTtFQUMvQyxJQUFBVCxzQkFBaUIsRUFBQ1MsT0FBTyxDQUFDO0VBRTFCLElBQUFDLDBCQUFxQixFQUFDRCxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7RUFDaEQsSUFBQUMsMEJBQXFCLEVBQUNELE9BQU8sRUFBRSxjQUFjLENBQUM7RUFDOUMsSUFBQUMsMEJBQXFCLEVBQUNELE9BQU8sRUFBRSxpQkFBaUIsQ0FBQztFQUVqRCxJQUFNRSxPQUFPLEdBQUdGLE9BQU8sQ0FBQyxXQUFXLENBQUM7RUFDcEMsSUFBSUUsT0FBTyxLQUFLSixTQUFTLEVBQUU7SUFDekJFLE9BQU8sQ0FBQ0UsT0FBTyxHQUFHQSxPQUFPO0lBQ3pCLE9BQU9GLE9BQU8sQ0FBQyxXQUFXLENBQUM7RUFDN0I7RUFFQSxJQUFNRyxjQUFjLEdBQUdILE9BQU8sQ0FBQ0ksY0FBYztFQUM3Q1gsa0JBQU0sQ0FBQ1ksY0FBYyxDQUFDRixjQUFjLEVBQUVMLFNBQVMsQ0FBQztFQUNoREUsT0FBTyxDQUFDRyxjQUFjLEdBQUdBLGNBQWM7RUFDdkMsT0FBT0gsT0FBTyxDQUFDSSxjQUFjO0VBRTdCLElBQUlFLFlBQVksR0FBR04sT0FBTyxDQUFDTyxZQUFZO0VBQ3ZDLElBQUlELFlBQVksS0FBS1IsU0FBUyxFQUFFO0lBQzlCTCxrQkFBTSxDQUFDRSxXQUFXLENBQUFSLE9BQUEsQ0FBUW1CLFlBQVksR0FBRSxRQUFRLENBQUM7SUFDakRBLFlBQVksR0FBRyxJQUFJVixJQUFJLENBQUNVLFlBQVksQ0FBQztJQUNyQ04sT0FBTyxDQUFDTSxZQUFZLEdBQUdBLFlBQVk7SUFDbkMsT0FBT04sT0FBTyxDQUFDTyxZQUFZO0VBQzdCO0VBRUEsSUFBTUMsSUFBSSxHQUFHUixPQUFPLENBQUNRLElBQUk7RUFDekIsSUFBSUEsSUFBSSxLQUFLVixTQUFTLEVBQUU7SUFDdEIsSUFBQVAsc0JBQWlCLEVBQUNpQixJQUFJLENBQUM7RUFDekI7RUFFQSxJQUFNbEIsVUFBVSxHQUFHVSxPQUFPLENBQUNWLFVBQVU7RUFDckNHLGtCQUFNLENBQUNZLGNBQWMsQ0FBQ2YsVUFBVSxFQUFFUSxTQUFTLENBQUM7RUFDNUNULGVBQWUsQ0FBQ0MsVUFBVSxDQUFDO0VBRTNCLElBQU1tQixVQUFVLEdBQUdULE9BQU8sQ0FBQ1MsVUFBVTtFQUNyQyxJQUFJQSxVQUFVLEtBQUtYLFNBQVMsRUFBRTtJQUM1QixJQUFJWSxPQUFPLEdBQUdELFVBQVUsQ0FBQ0UsTUFBTTtJQUMvQixJQUFJRCxPQUFPLEtBQUtaLFNBQVMsRUFBRTtNQUN6QixJQUFJLENBQUNuQyxLQUFLLENBQUNDLE9BQU8sQ0FBQzhDLE9BQU8sQ0FBQyxFQUFFO1FBQzNCakIsa0JBQU0sQ0FBQ1ksY0FBYyxDQUFDSyxPQUFPLEVBQUUsSUFBSSxDQUFDO1FBQ3BDakIsa0JBQU0sQ0FBQ0UsV0FBVyxDQUFBUixPQUFBLENBQVF1QixPQUFPLEdBQUUsUUFBUSxDQUFDO1FBQzVDQSxPQUFPLEdBQUcsQ0FBQ0EsT0FBTyxDQUFDO01BQ3JCO01BQ0FELFVBQVUsQ0FBQ0MsT0FBTyxHQUFHQSxPQUFPO01BQzVCLE9BQU9ELFVBQVUsQ0FBQ0UsTUFBTTtNQUFBLElBQUFDLFNBQUEsR0FBQXRELDBCQUFBLENBRUhvRCxPQUFPO1FBQUFHLEtBQUE7TUFBQTtRQUE1QixLQUFBRCxTQUFBLENBQUEzQyxDQUFBLE1BQUE0QyxLQUFBLEdBQUFELFNBQUEsQ0FBQTFDLENBQUEsSUFBQUMsSUFBQSxHQUE4QjtVQUFBLElBQW5Cd0MsTUFBTSxHQUFBRSxLQUFBLENBQUF6QyxLQUFBO1VBQ2YsSUFBQW1CLHNCQUFpQixFQUFDb0IsTUFBTSxDQUFDO1FBQzNCO01BQUMsU0FBQUcsR0FBQTtRQUFBRixTQUFBLENBQUF4RCxDQUFBLENBQUEwRCxHQUFBO01BQUE7UUFBQUYsU0FBQSxDQUFBdkMsQ0FBQTtNQUFBO0lBQ0g7SUFFQSxJQUFNMEMsTUFBTSxHQUFHTixVQUFVLENBQUNNLE1BQU07SUFDaEMsSUFBSUEsTUFBTSxLQUFLakIsU0FBUyxFQUFFO01BQ3hCLElBQUFQLHNCQUFpQixFQUFDd0IsTUFBTSxDQUFDO0lBQzNCO0VBQ0Y7RUFDQSxJQUFNQyxTQUFTLEdBQUdoQixPQUFPLENBQUNnQixTQUFTO0VBQ25DLElBQUlBLFNBQVMsS0FBS2xCLFNBQVMsRUFBRTtJQUMzQkwsa0JBQU0sQ0FBQ0UsV0FBVyxDQUFDSyxPQUFPLENBQUNTLFVBQVUsRUFBRVgsU0FBUyxDQUFDO0lBQ2pELE9BQU9FLE9BQU8sQ0FBQ2dCLFNBQVM7SUFFeEIsSUFBSUwsT0FBTSxHQUFHSyxTQUFTLENBQUNMLE1BQU07SUFDN0IsSUFBSUEsT0FBTSxLQUFLYixTQUFTLEVBQUU7TUFDeEJMLGtCQUFNLENBQUNZLGNBQWMsQ0FBQ00sT0FBTSxFQUFFLElBQUksQ0FBQztNQUNuQ2xCLGtCQUFNLENBQUNFLFdBQVcsQ0FBQVIsT0FBQSxDQUFRd0IsT0FBTSxHQUFFLFFBQVEsQ0FBQztNQUMzQyxJQUFNRCxRQUFPLEdBQUcsQ0FBQ0MsT0FBTSxDQUFDO01BQ3hCSyxTQUFTLENBQUNOLE9BQU8sR0FBR0EsUUFBTztNQUMzQixPQUFPTSxTQUFTLENBQUNMLE1BQU07TUFDdkJYLE9BQU8sQ0FBQ1MsVUFBVSxHQUFHTyxTQUFTO01BRTlCLFNBQUFDLEVBQUEsTUFBQUMsU0FBQSxHQUFxQlIsUUFBTyxFQUFBTyxFQUFBLEdBQUFDLFNBQUEsQ0FBQXBELE1BQUEsRUFBQW1ELEVBQUEsSUFBRTtRQUF6QixJQUFNTixRQUFNLEdBQUFPLFNBQUEsQ0FBQUQsRUFBQTtRQUNmLElBQUExQixzQkFBaUIsRUFBQ29CLFFBQU0sQ0FBQztNQUMzQjtJQUNGO0lBRUEsSUFBTUksT0FBTSxHQUFHQyxTQUFTLENBQUNELE1BQU07SUFDL0IsSUFBSUEsT0FBTSxLQUFLakIsU0FBUyxFQUFFO01BQ3hCLElBQUFQLHNCQUFpQixFQUFDd0IsT0FBTSxDQUFDO0lBQzNCO0VBQ0Y7RUFFQSxJQUFNSSxZQUFZLEdBQUduQixPQUFPLENBQUNtQixZQUFZO0VBQ3pDLElBQUlBLFlBQVksS0FBS3JCLFNBQVMsRUFBRTtJQUM5QixJQUFBUCxzQkFBaUIsRUFBQzRCLFlBQVksQ0FBQztJQUUvQixJQUFJQyxvQkFBb0IsR0FBR0QsWUFBWSxDQUFDQyxvQkFBb0I7SUFDNUQsSUFBSUEsb0JBQW9CLEtBQUt0QixTQUFTLEVBQUU7TUFDdENzQixvQkFBb0IsR0FBR0Esb0JBQW9CLENBQUNDLGtCQUFrQjtNQUM5RCxJQUFJLENBQUMxRCxLQUFLLENBQUNDLE9BQU8sQ0FBQ3dELG9CQUFvQixDQUFDLEVBQUU7UUFDeEMzQixrQkFBTSxDQUFDWSxjQUFjLENBQUNlLG9CQUFvQixFQUFFLElBQUksQ0FBQztRQUNqRDNCLGtCQUFNLENBQUNFLFdBQVcsQ0FBQVIsT0FBQSxDQUFRaUMsb0JBQW9CLEdBQUUsUUFBUSxDQUFDO1FBQ3pEQSxvQkFBb0IsR0FBRyxDQUFDQSxvQkFBb0IsQ0FBQztNQUMvQztNQUNBRCxZQUFZLENBQUNDLG9CQUFvQixHQUFHQSxvQkFBb0I7SUFDMUQ7SUFFQSxJQUFJRSxxQkFBcUIsR0FBR0gsWUFBWSxDQUFDRyxxQkFBcUI7SUFDOUQsSUFBSUEscUJBQXFCLEtBQUt4QixTQUFTLEVBQUU7TUFDdkN3QixxQkFBcUIsR0FBR0EscUJBQXFCLENBQUNDLG1CQUFtQjtNQUNqRSxJQUFJRCxxQkFBcUIsS0FBSyxJQUFJLEVBQUU7UUFDbEMsT0FBT0gsWUFBWSxDQUFDRyxxQkFBcUI7TUFDM0MsQ0FBQyxNQUFNO1FBQ0wsSUFBSSxDQUFDM0QsS0FBSyxDQUFDQyxPQUFPLENBQUMwRCxxQkFBcUIsQ0FBQyxFQUFFO1VBQ3pDO1VBQ0E3QixrQkFBTSxDQUFDRSxXQUFXLENBQUFSLE9BQUEsQ0FBUW1DLHFCQUFxQixHQUFFLFFBQVEsQ0FBQztVQUMxREEscUJBQXFCLEdBQUcsQ0FBQ0EscUJBQXFCLENBQUM7UUFDakQ7UUFDQUEscUJBQXFCLEdBQUdBLHFCQUFxQixDQUFDRSxNQUFNLENBQ2xELFVBQUNDLGlCQUFzQjtVQUFBLE9BQUtBLGlCQUFpQixLQUFLLElBQUk7UUFBQSxDQUN4RCxDQUFDO1FBQ0QsSUFBSUgscUJBQXFCLENBQUN4RCxNQUFNLEdBQUcsQ0FBQyxFQUFFO1VBQ3BDcUQsWUFBWSxDQUFDRyxxQkFBcUIsR0FBR0EscUJBQXFCO1FBQzVELENBQUMsTUFBTTtVQUNMLE9BQU9ILFlBQVksQ0FBQ0cscUJBQXFCO1FBQzNDO1FBQUMsSUFBQUksVUFBQSxHQUFBcEUsMEJBQUEsQ0FFK0JnRSxxQkFBcUI7VUFBQUssTUFBQTtRQUFBO1VBQXJELEtBQUFELFVBQUEsQ0FBQXpELENBQUEsTUFBQTBELE1BQUEsR0FBQUQsVUFBQSxDQUFBeEQsQ0FBQSxJQUFBQyxJQUFBLEdBQXVEO1lBQUEsSUFBNUNzRCxpQkFBaUIsR0FBQUUsTUFBQSxDQUFBdkQsS0FBQTtZQUMxQixJQUFNOEIsUUFBTyxHQUFHdUIsaUJBQWlCLENBQUNHLEdBQUcsQ0FBQyxXQUFXLENBQUM7WUFDbEQsSUFBQW5DLGtCQUFNLEVBQUNTLFFBQU8sQ0FBQztZQUNmdUIsaUJBQWlCLENBQUN2QixPQUFPLEdBQUdBLFFBQU87WUFDbkMsSUFBTTBCLEdBQUcsR0FBR0gsaUJBQWlCLENBQUNHLEdBQUcsQ0FBQyxPQUFPLENBQUM7WUFDMUMsSUFBQW5DLGtCQUFNLEVBQUNtQyxHQUFHLENBQUM7WUFDWEgsaUJBQWlCLENBQUNHLEdBQUcsR0FBR0EsR0FBRztZQUUzQixJQUFNQyxLQUFLLEdBQUdKLGlCQUFpQixDQUFDSSxLQUFLO1lBQ3JDLElBQUFwQyxrQkFBTSxFQUFDb0MsS0FBSyxDQUFDO1lBQ2I7Y0FDRSxJQUFBdEMsc0JBQWlCLEVBQUNzQyxLQUFLLENBQUM7WUFDMUI7VUFDRjtRQUFDLFNBQUFmLEdBQUE7VUFBQVksVUFBQSxDQUFBdEUsQ0FBQSxDQUFBMEQsR0FBQTtRQUFBO1VBQUFZLFVBQUEsQ0FBQXJELENBQUE7UUFBQTtNQUNIO0lBQ0Y7RUFDRjtFQUVBLElBQUkyQixPQUFPLENBQUM4QixHQUFHLEtBQUtoQyxTQUFTLEVBQUU7SUFDN0IsSUFBTWlDLEdBQUcsR0FBRy9CLE9BQU8sQ0FBQzhCLEdBQUc7SUFDdkI5QixPQUFPLENBQUMrQixHQUFHLEdBQUdBLEdBQUc7SUFDakIsT0FBTy9CLE9BQU8sQ0FBQzhCLEdBQUc7SUFDbEI7TUFDRSxJQUFBdkMsc0JBQWlCLEVBQUN3QyxHQUFHLENBQUM7TUFFdEIsSUFBSUMsY0FBYyxHQUFHRCxHQUFHLENBQUNFLGNBQWM7TUFDdkMsSUFBSUQsY0FBYyxLQUFLbEMsU0FBUyxFQUFFO1FBQ2hDLElBQUluQyxLQUFLLENBQUNDLE9BQU8sQ0FBQ29FLGNBQWMsQ0FBQ0UsSUFBSSxDQUFDLEVBQUU7VUFDdENGLGNBQWMsR0FBR0EsY0FBYyxDQUFDRSxJQUFJO1FBQ3RDLENBQUMsTUFBTTtVQUNMLElBQUF6QyxrQkFBTSxFQUFDdUMsY0FBYyxDQUFDRSxJQUFJLENBQUM7VUFDM0JGLGNBQWMsR0FBRyxDQUFDQSxjQUFjLENBQUNFLElBQUksQ0FBQztRQUN4QztRQUNBSCxHQUFHLENBQUNDLGNBQWMsR0FBR0EsY0FBYztRQUNuQyxPQUFPRCxHQUFHLENBQUNFLGNBQWM7TUFDM0I7TUFFQSxJQUFJRSxTQUFTLEdBQUdKLEdBQUcsQ0FBQ0ssU0FBUztNQUM3QixJQUFJRCxTQUFTLEtBQUtyQyxTQUFTLEVBQUU7UUFDM0IsSUFBSW5DLEtBQUssQ0FBQ0MsT0FBTyxDQUFDdUUsU0FBUyxDQUFDRCxJQUFJLENBQUMsRUFBRTtVQUNqQ0MsU0FBUyxHQUFHQSxTQUFTLENBQUNELElBQUk7UUFDNUIsQ0FBQyxNQUFNO1VBQ0wsSUFBQXpDLGtCQUFNLEVBQUMwQyxTQUFTLENBQUNELElBQUksQ0FBQztVQUN0QkMsU0FBUyxHQUFHLENBQUNBLFNBQVMsQ0FBQ0QsSUFBSSxDQUFDO1FBQzlCO1FBQ0FILEdBQUcsQ0FBQ0ksU0FBUyxHQUFHQSxTQUFTO1FBQ3pCLE9BQU9KLEdBQUcsQ0FBQ0ssU0FBUztNQUN0QjtNQUVBLElBQUlDLFNBQVMsR0FBR04sR0FBRyxDQUFDTyxTQUFTO01BQzdCLElBQUlELFNBQVMsS0FBS3ZDLFNBQVMsRUFBRTtRQUMzQixJQUFJeUMsUUFBUSxHQUFHRixTQUFTLENBQUNHLFFBQVE7UUFDakMsSUFBSTdFLEtBQUssQ0FBQ0MsT0FBTyxDQUFDMkUsUUFBUSxDQUFDLEVBQUU7VUFDM0JGLFNBQVMsR0FBR0UsUUFBUTtRQUN0QixDQUFDLE1BQU07VUFDTCxJQUFBOUMsa0JBQU0sRUFBQzhDLFFBQVEsQ0FBQztVQUNoQkYsU0FBUyxHQUFHLENBQUNFLFFBQVEsQ0FBQztRQUN4QjtRQUNBUixHQUFHLENBQUNNLFNBQVMsR0FBR0EsU0FBUztRQUFBLElBQUFJLFVBQUEsR0FBQW5GLDBCQUFBLENBRUYrRSxTQUFTO1VBQUFLLE1BQUE7UUFBQTtVQUFoQyxLQUFBRCxVQUFBLENBQUF4RSxDQUFBLE1BQUF5RSxNQUFBLEdBQUFELFVBQUEsQ0FBQXZFLENBQUEsSUFBQUMsSUFBQSxHQUFrQztZQUFBLElBQXZCb0UsU0FBUSxHQUFBRyxNQUFBLENBQUF0RSxLQUFBO1lBQ2pCLElBQUFtQixzQkFBaUIsRUFBQ2dELFNBQVEsQ0FBQztZQUUzQixJQUFBdEMsMEJBQXFCLEVBQUNzQyxTQUFRLEVBQUUsY0FBYyxDQUFDO1lBRS9DLElBQU1yQyxTQUFPLEdBQUdxQyxTQUFRLENBQUMsV0FBVyxDQUFDO1lBQ3JDLElBQUlyQyxTQUFPLEtBQUtKLFNBQVMsRUFBRTtjQUN6QnlDLFNBQVEsQ0FBQ3JDLE9BQU8sR0FBR0EsU0FBTztjQUMxQixPQUFPcUMsU0FBUSxDQUFDLFdBQVcsQ0FBQztZQUM5QjtZQUVBLElBQU1qRCxXQUFVLEdBQUdpRCxTQUFRLENBQUNqRCxVQUFVO1lBQ3RDRyxrQkFBTSxDQUFDWSxjQUFjLENBQUNmLFdBQVUsRUFBRVEsU0FBUyxDQUFDO1lBQzVDVCxlQUFlLENBQUNDLFdBQVUsQ0FBQztZQUUzQkcsa0JBQU0sQ0FBQ0UsV0FBVyxDQUFDNEMsU0FBUSxDQUFDSSxjQUFjLEVBQUU3QyxTQUFTLENBQUM7WUFFdEQsSUFBSThDLHVCQUF1QixHQUFHTCxTQUFRLENBQUNLLHVCQUF1QjtZQUM5RCxJQUFJQSx1QkFBdUIsS0FBSzlDLFNBQVMsRUFBRTtjQUN6QyxJQUFJbkMsS0FBSyxDQUFDQyxPQUFPLENBQUNnRix1QkFBdUIsQ0FBQ0MsVUFBVSxDQUFDLEVBQUU7Z0JBQ3JERCx1QkFBdUIsR0FBR0EsdUJBQXVCLENBQUNDLFVBQVU7Y0FDOUQsQ0FBQyxNQUFNO2dCQUNMLElBQUFwRCxrQkFBTSxFQUFDbUQsdUJBQXVCLENBQUNDLFVBQVUsQ0FBQztnQkFDMUNELHVCQUF1QixHQUFHLENBQUNBLHVCQUF1QixDQUFDQyxVQUFVLENBQUM7Y0FDaEU7Y0FDQU4sU0FBUSxDQUFDSyx1QkFBdUIsR0FBR0EsdUJBQXVCO1lBQzVEO1lBRUFMLFNBQVEsQ0FBQ08sWUFBWSxHQUFHUCxTQUFRLENBQUNRLFlBQVk7WUFDN0MsT0FBT1IsU0FBUSxDQUFDUSxZQUFZO1lBRTVCdEQsa0JBQU0sQ0FBQ0UsV0FBVyxDQUFDNEMsU0FBUSxDQUFDUyxjQUFjLEVBQUVsRCxTQUFTLENBQUM7WUFFdER5QyxTQUFRLENBQUNVLGdCQUFnQixHQUFHVixTQUFRLENBQUNXLGdCQUFnQjtZQUNyRCxPQUFPWCxTQUFRLENBQUNXLGdCQUFnQjtZQUVoQyxJQUFJQyxZQUFZLEdBQUdaLFNBQVEsQ0FBQ1ksWUFBWTtZQUN4QyxJQUFJQSxZQUFZLEtBQUtyRCxTQUFTLEVBQUU7Y0FDOUJMLGtCQUFNLENBQUNFLFdBQVcsQ0FBQVIsT0FBQSxDQUFRZ0UsWUFBWSxHQUFFLFFBQVEsQ0FBQztjQUNqRCxJQUFBMUQsa0JBQU0sRUFBQywrQkFBK0IsQ0FBQ1AsSUFBSSxDQUFDaUUsWUFBWSxDQUFDLENBQUM7Y0FDMURBLFlBQVksR0FBRyxJQUFJdkQsSUFBSSxDQUFDdUQsWUFBWSxDQUFDQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Y0FDbkRiLFNBQVEsQ0FBQ1ksWUFBWSxHQUFHQSxZQUFZO1lBQ3RDO1lBRUEsSUFBSUUsa0JBQWtCLEdBQUdkLFNBQVEsQ0FBQ2Msa0JBQWtCO1lBQ3BELElBQUlBLGtCQUFrQixLQUFLdkQsU0FBUyxFQUFFO2NBQ3BDTCxrQkFBTSxDQUFDRSxXQUFXLENBQUFSLE9BQUEsQ0FBUWtFLGtCQUFrQixHQUFFLFFBQVEsQ0FBQztjQUN2RCxJQUFBNUQsa0JBQU0sRUFBQywrQkFBK0IsQ0FBQ1AsSUFBSSxDQUFDbUUsa0JBQWtCLENBQUMsQ0FBQztjQUNoRUEsa0JBQWtCLEdBQUcsSUFBSXpELElBQUksQ0FBQ3lELGtCQUFrQixDQUFDRCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Y0FDL0RiLFNBQVEsQ0FBQ2Msa0JBQWtCLEdBQUdBLGtCQUFrQjtZQUNsRDtVQUNGO1FBQUMsU0FBQXZDLEdBQUE7VUFBQTJCLFVBQUEsQ0FBQXJGLENBQUEsQ0FBQTBELEdBQUE7UUFBQTtVQUFBMkIsVUFBQSxDQUFBcEUsQ0FBQTtRQUFBO1FBQ0QsT0FBTzBELEdBQUcsQ0FBQ08sU0FBUztNQUN0QjtJQUNGO0VBQ0Y7RUFFQSxJQUFNZ0IsWUFBWSxHQUFHdEQsT0FBTyxDQUFDc0QsWUFBWTtFQUN6QyxJQUFJQSxZQUFZLEtBQUt4RCxTQUFTLEVBQUU7SUFDOUIsSUFBQVAsc0JBQWlCLEVBQUMrRCxZQUFZLENBQUM7SUFDL0IsSUFBTUMsV0FBVyxHQUFHRCxZQUFZLENBQUNFLFdBQVc7SUFDNUMsSUFBSUQsV0FBVyxLQUFLekQsU0FBUyxFQUFFO01BQzdCd0QsWUFBWSxDQUFDQyxXQUFXLEdBQUdBLFdBQVc7TUFDdEMsT0FBT0QsWUFBWSxDQUFDRSxXQUFXO0lBQ2pDO0lBRUEsSUFBTUMsSUFBSSxHQUFHSCxZQUFZLENBQUNJLElBQUk7SUFDOUIsSUFBSUQsSUFBSSxLQUFLM0QsU0FBUyxFQUFFO01BQ3RCd0QsWUFBWSxDQUFDRyxJQUFJLEdBQUdBLElBQUk7TUFDeEIsT0FBT0gsWUFBWSxDQUFDSSxJQUFJO0lBQzFCO0lBRUEsSUFBSUMsVUFBVSxHQUFHTCxZQUFZLENBQUNNLFVBQVU7SUFDeENuRSxrQkFBTSxDQUFDRSxXQUFXLENBQUFSLE9BQUEsQ0FBUXdFLFVBQVUsR0FBRSxRQUFRLENBQUM7SUFDL0MsSUFBQWxFLGtCQUFNLEVBQUMsK0JBQStCLENBQUNQLElBQUksQ0FBQ3lFLFVBQVUsQ0FBQyxDQUFDO0lBQ3hEQSxVQUFVLEdBQUcsSUFBSS9ELElBQUksQ0FBQytELFVBQVUsQ0FBQ1AsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9DRSxZQUFZLENBQUNLLFVBQVUsR0FBR0EsVUFBVTtJQUNwQyxPQUFPTCxZQUFZLENBQUNNLFVBQVU7RUFDaEM7RUFFQSxJQUFNQywyQkFBMkIsR0FBRzdELE9BQU8sQ0FBQzZELDJCQUEyQjtFQUN2RSxJQUFJQSwyQkFBMkIsS0FBSy9ELFNBQVMsRUFBRTtJQUM3QyxJQUFBUCxzQkFBaUIsRUFBQ3NFLDJCQUEyQixDQUFDO0lBRTlDLElBQUE1RCwwQkFBcUIsRUFDbkI0RCwyQkFBMkIsRUFDM0IsMEJBQ0YsQ0FBQztJQUVELElBQUlDLFNBQVMsR0FBR0QsMkJBQTJCLENBQUNDLFNBQVM7SUFDckQsSUFBSUEsU0FBUyxLQUFLaEUsU0FBUyxFQUFFO01BQzNCZ0UsU0FBUyxHQUFHQSxTQUFTLENBQUNDLE9BQU87TUFDN0IsSUFBSSxDQUFDcEcsS0FBSyxDQUFDQyxPQUFPLENBQUNrRyxTQUFTLENBQUMsRUFBRTtRQUM3QnJFLGtCQUFNLENBQUNFLFdBQVcsQ0FBQVIsT0FBQSxDQUFRMkUsU0FBUyxHQUFFLFFBQVEsQ0FBQztRQUM5Q0EsU0FBUyxHQUFHLENBQUNBLFNBQVMsQ0FBQztNQUN6QjtNQUNBRCwyQkFBMkIsQ0FBQ0MsU0FBUyxHQUFHQSxTQUFTO0lBQ25EO0VBQ0Y7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==