@tricoteuses/assemblee 1.10.5 → 2.0.2

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 (400) hide show
  1. package/README.md +8 -1
  2. package/lib/amendements-CN7bRFdP.js +259 -0
  3. package/lib/amendements-CN7bRFdP.js.map +1 -0
  4. package/lib/amendements-Cg1lyCBp.js +735 -0
  5. package/lib/amendements-Cg1lyCBp.js.map +1 -0
  6. package/lib/api.d.ts +1 -0
  7. package/lib/api.d.ts.map +1 -0
  8. package/lib/cleaners/actes_legislatifs.d.ts +1 -0
  9. package/lib/cleaners/actes_legislatifs.d.ts.map +1 -0
  10. package/lib/cleaners/acteurs.d.ts +1 -0
  11. package/lib/cleaners/acteurs.d.ts.map +1 -0
  12. package/lib/cleaners/amendements.d.ts +1 -0
  13. package/lib/cleaners/amendements.d.ts.map +1 -0
  14. package/lib/cleaners/debats.d.ts +1 -0
  15. package/lib/cleaners/debats.d.ts.map +1 -0
  16. package/lib/cleaners/documents.d.ts +1 -0
  17. package/lib/cleaners/documents.d.ts.map +1 -0
  18. package/lib/cleaners/dossiers_legislatifs.d.ts +1 -0
  19. package/lib/cleaners/dossiers_legislatifs.d.ts.map +1 -0
  20. package/lib/cleaners/index.d.ts +10 -9
  21. package/lib/cleaners/index.d.ts.map +1 -0
  22. package/lib/cleaners/organes.d.ts +1 -0
  23. package/lib/cleaners/organes.d.ts.map +1 -0
  24. package/lib/cleaners/questions.d.ts +1 -0
  25. package/lib/cleaners/questions.d.ts.map +1 -0
  26. package/lib/cleaners/reunions.d.ts +1 -0
  27. package/lib/cleaners/reunions.d.ts.map +1 -0
  28. package/lib/cleaners/scrutins.d.ts +1 -0
  29. package/lib/cleaners/scrutins.d.ts.map +1 -0
  30. package/lib/cleaners/xml.d.ts +1 -0
  31. package/lib/cleaners/xml.d.ts.map +1 -0
  32. package/lib/cleaners.js +1138 -0
  33. package/lib/cleaners.js.map +1 -0
  34. package/lib/datasets.d.ts +4 -3
  35. package/lib/datasets.d.ts.map +1 -0
  36. package/lib/dates.d.ts +1 -0
  37. package/lib/dates.d.ts.map +1 -0
  38. package/lib/debats-BwZYgzXe.js +3978 -0
  39. package/lib/debats-BwZYgzXe.js.map +1 -0
  40. package/lib/dossiers_legislatifs.d.ts +3 -2
  41. package/lib/dossiers_legislatifs.d.ts.map +1 -0
  42. package/lib/file_systems.d.ts +1 -0
  43. package/lib/file_systems.d.ts.map +1 -0
  44. package/lib/git.d.ts +1 -0
  45. package/lib/git.d.ts.map +1 -0
  46. package/lib/index.d.ts +18 -22
  47. package/lib/index.d.ts.map +1 -0
  48. package/lib/index.js +1916 -285
  49. package/lib/index.js.map +1 -0
  50. package/lib/inserters.d.ts +6 -5
  51. package/lib/inserters.d.ts.map +1 -0
  52. package/lib/loaders.d.ts +13 -12
  53. package/lib/loaders.d.ts.map +1 -0
  54. package/lib/loaders.js +812 -1516
  55. package/lib/loaders.js.map +1 -0
  56. package/lib/logger.d.ts +1 -0
  57. package/lib/logger.d.ts.map +1 -0
  58. package/lib/organes.d.ts +2 -1
  59. package/lib/organes.d.ts.map +1 -0
  60. package/lib/parse-CzW8NHW5.js +2850 -0
  61. package/lib/parse-CzW8NHW5.js.map +1 -0
  62. package/lib/parsers/index.d.ts +3 -3
  63. package/lib/parsers/index.d.ts.map +1 -0
  64. package/lib/parsers/plf.d.ts +2 -0
  65. package/lib/parsers/plf.d.ts.map +1 -0
  66. package/lib/parsers/recherche_amendements.d.ts +3 -2
  67. package/lib/parsers/recherche_amendements.d.ts.map +1 -0
  68. package/lib/parsers/textes_lois.d.ts +2 -23
  69. package/lib/parsers/textes_lois.d.ts.map +1 -0
  70. package/lib/parsers.js +393 -0
  71. package/lib/parsers.js.map +1 -0
  72. package/lib/raw_types/acteurs_et_organes.d.ts +1 -0
  73. package/lib/raw_types/acteurs_et_organes.d.ts.map +1 -0
  74. package/lib/raw_types/agendas.d.ts +1 -0
  75. package/lib/raw_types/agendas.d.ts.map +1 -0
  76. package/lib/raw_types/amendements.d.ts +1 -0
  77. package/lib/raw_types/amendements.d.ts.map +1 -0
  78. package/lib/raw_types/debats.d.ts +3 -2
  79. package/lib/raw_types/debats.d.ts.map +1 -0
  80. package/lib/raw_types/dossiers_legislatifs.d.ts +2 -1
  81. package/lib/raw_types/dossiers_legislatifs.d.ts.map +1 -0
  82. package/lib/raw_types/questions.d.ts +1 -0
  83. package/lib/raw_types/questions.d.ts.map +1 -0
  84. package/lib/raw_types/scrutins.d.ts +1 -0
  85. package/lib/raw_types/scrutins.d.ts.map +1 -0
  86. package/lib/schemas/acteurs_et_organes.d.json +982 -0
  87. package/lib/schemas/acteurs_et_organes.json +1166 -0
  88. package/lib/schemas/agendas.d.json +1561 -0
  89. package/lib/schemas/agendas.json +1745 -0
  90. package/lib/schemas/amendements.d.json +1901 -0
  91. package/lib/schemas/amendements.json +2085 -0
  92. package/lib/schemas/debats.d.json +623 -0
  93. package/lib/schemas/debats.json +842 -0
  94. package/lib/schemas/dossiers_legislatifs.d.json +3690 -0
  95. package/lib/schemas/dossiers_legislatifs.json +3874 -0
  96. package/lib/schemas/legislatures.d.json +17 -0
  97. package/lib/schemas/legislatures.json +17 -0
  98. package/lib/schemas/questions.d.json +520 -0
  99. package/lib/schemas/questions.json +704 -0
  100. package/lib/schemas/scrutins.d.json +517 -0
  101. package/lib/schemas/scrutins.json +701 -0
  102. package/lib/scripts/add_links_to_documents.d.ts +2 -0
  103. package/lib/scripts/add_links_to_documents.d.ts.map +1 -0
  104. package/lib/scripts/clean_reorganized_data.d.ts +1 -0
  105. package/lib/scripts/clean_reorganized_data.d.ts.map +1 -0
  106. package/lib/scripts/copy-schemas.d.ts +2 -0
  107. package/lib/scripts/copy-schemas.d.ts.map +1 -0
  108. package/lib/scripts/diff_amendements.d.ts +1 -0
  109. package/lib/scripts/diff_amendements.d.ts.map +1 -0
  110. package/lib/scripts/document_dossiers_legislatifs.d.ts +1 -0
  111. package/lib/scripts/document_dossiers_legislatifs.d.ts.map +1 -0
  112. package/lib/scripts/generate-json-schemas.d.ts +2 -0
  113. package/lib/scripts/generate-json-schemas.d.ts.map +1 -0
  114. package/lib/scripts/get_today_reunions.d.ts +1 -0
  115. package/lib/scripts/get_today_reunions.d.ts.map +1 -0
  116. package/lib/scripts/merge_scrutins.d.ts +1 -0
  117. package/lib/scripts/merge_scrutins.d.ts.map +1 -0
  118. package/lib/scripts/process_open_dataset.d.ts +1 -0
  119. package/lib/scripts/process_open_dataset.d.ts.map +1 -0
  120. package/lib/scripts/raw_types_from_amendements.d.ts +1 -0
  121. package/lib/scripts/raw_types_from_amendements.d.ts.map +1 -0
  122. package/lib/scripts/reorganize_data.d.ts +1 -0
  123. package/lib/scripts/reorganize_data.d.ts.map +1 -0
  124. package/lib/scripts/retrieve_deputes_photos.d.ts +2 -1
  125. package/lib/scripts/retrieve_deputes_photos.d.ts.map +1 -0
  126. package/lib/scripts/retrieve_documents.d.ts +1 -0
  127. package/lib/scripts/retrieve_documents.d.ts.map +1 -0
  128. package/lib/scripts/retrieve_open_data.d.ts +1 -0
  129. package/lib/scripts/retrieve_open_data.d.ts.map +1 -0
  130. package/lib/scripts/retrieve_pending_amendments.d.ts +1 -0
  131. package/lib/scripts/retrieve_pending_amendments.d.ts.map +1 -0
  132. package/lib/scripts/retrieve_senateurs_photos.d.ts +1 -0
  133. package/lib/scripts/retrieve_senateurs_photos.d.ts.map +1 -0
  134. package/lib/scripts/shared/cli_helpers.d.ts +1 -0
  135. package/lib/scripts/shared/cli_helpers.d.ts.map +1 -0
  136. package/lib/scripts/test_iter_load.d.ts +1 -0
  137. package/lib/scripts/test_iter_load.d.ts.map +1 -0
  138. package/lib/scripts/test_load.d.ts +1 -0
  139. package/lib/scripts/test_load.d.ts.map +1 -0
  140. package/lib/scripts/test_load_big_files.d.ts +1 -0
  141. package/lib/scripts/test_load_big_files.d.ts.map +1 -0
  142. package/lib/scripts/validate_json.d.ts +1 -0
  143. package/lib/scripts/validate_json.d.ts.map +1 -0
  144. package/lib/shared_types/codes_actes.d.ts +1 -0
  145. package/lib/shared_types/codes_actes.d.ts.map +1 -0
  146. package/lib/strings.d.ts +1 -0
  147. package/lib/strings.d.ts.map +1 -0
  148. package/lib/types/acteurs_et_organes.d.ts +341 -0
  149. package/lib/types/acteurs_et_organes.d.ts.map +1 -0
  150. package/lib/types/agendas.d.ts +237 -10
  151. package/lib/types/agendas.d.ts.map +1 -0
  152. package/lib/types/amendements.d.ts +277 -1
  153. package/lib/types/amendements.d.ts.map +1 -0
  154. package/lib/types/debats.d.ts +53 -2
  155. package/lib/types/debats.d.ts.map +1 -0
  156. package/lib/types/dossiers_legislatifs.d.ts +404 -9
  157. package/lib/types/dossiers_legislatifs.d.ts.map +1 -0
  158. package/lib/types/legislatures.d.ts +1 -0
  159. package/lib/types/legislatures.d.ts.map +1 -0
  160. package/lib/types/questions.d.ts +100 -2
  161. package/lib/types/questions.d.ts.map +1 -0
  162. package/lib/types/scrutins.d.ts +102 -0
  163. package/lib/types/scrutins.d.ts.map +1 -0
  164. package/lib/urls.d.ts +3 -2
  165. package/lib/urls.d.ts.map +1 -0
  166. package/package.json +31 -95
  167. package/lib/api.js +0 -52
  168. package/lib/api.mjs +0 -45
  169. package/lib/bugs/acteur-00010/plugin.test.d.ts +0 -1
  170. package/lib/bugs/acteur-00010/plugin.test.js +0 -90
  171. package/lib/bugs/acteur-00010/plugin.test.mjs +0 -33
  172. package/lib/bugs/acteur-00010.d.ts +0 -7
  173. package/lib/bugs/acteur-00010.js +0 -116
  174. package/lib/bugs/acteur-00010.mjs +0 -26
  175. package/lib/bugs/agenda-00002/plugin.test.d.ts +0 -1
  176. package/lib/bugs/agenda-00002/plugin.test.js +0 -124
  177. package/lib/bugs/agenda-00002/plugin.test.mjs +0 -50
  178. package/lib/bugs/agenda-00002.d.ts +0 -15
  179. package/lib/bugs/agenda-00002.js +0 -406
  180. package/lib/bugs/agenda-00002.mjs +0 -172
  181. package/lib/bugs/agenda-00008/plugin.test.d.ts +0 -1
  182. package/lib/bugs/agenda-00008/plugin.test.js +0 -92
  183. package/lib/bugs/agenda-00008/plugin.test.mjs +0 -31
  184. package/lib/bugs/agenda-00008.d.ts +0 -7
  185. package/lib/bugs/agenda-00008.js +0 -123
  186. package/lib/bugs/agenda-00008.mjs +0 -26
  187. package/lib/bugs/agenda-00011/plugin.test.d.ts +0 -1
  188. package/lib/bugs/agenda-00011/plugin.test.js +0 -263
  189. package/lib/bugs/agenda-00011/plugin.test.mjs +0 -152
  190. package/lib/bugs/agenda-00011.d.ts +0 -16
  191. package/lib/bugs/agenda-00011.js +0 -333
  192. package/lib/bugs/agenda-00011.mjs +0 -125
  193. package/lib/bugs.d.ts +0 -21
  194. package/lib/bugs.js +0 -452
  195. package/lib/bugs.mjs +0 -70
  196. package/lib/cleaners/actes_legislatifs.js +0 -315
  197. package/lib/cleaners/actes_legislatifs.mjs +0 -253
  198. package/lib/cleaners/acteurs.js +0 -265
  199. package/lib/cleaners/acteurs.mjs +0 -180
  200. package/lib/cleaners/amendements.js +0 -294
  201. package/lib/cleaners/amendements.mjs +0 -227
  202. package/lib/cleaners/debats.js +0 -12
  203. package/lib/cleaners/debats.mjs +0 -5
  204. package/lib/cleaners/documents.js +0 -205
  205. package/lib/cleaners/documents.mjs +0 -133
  206. package/lib/cleaners/dossiers_legislatifs.js +0 -131
  207. package/lib/cleaners/dossiers_legislatifs.mjs +0 -70
  208. package/lib/cleaners/index.js +0 -70
  209. package/lib/cleaners/index.mjs +0 -10
  210. package/lib/cleaners/organes.js +0 -65
  211. package/lib/cleaners/organes.mjs +0 -48
  212. package/lib/cleaners/questions.js +0 -12
  213. package/lib/cleaners/questions.mjs +0 -5
  214. package/lib/cleaners/reunions.js +0 -312
  215. package/lib/cleaners/reunions.mjs +0 -255
  216. package/lib/cleaners/scrutins.js +0 -340
  217. package/lib/cleaners/scrutins.mjs +0 -221
  218. package/lib/cleaners/xml.js +0 -74
  219. package/lib/cleaners/xml.mjs +0 -59
  220. package/lib/datasets.js +0 -837
  221. package/lib/datasets.mjs +0 -755
  222. package/lib/dates.js +0 -124
  223. package/lib/dates.mjs +0 -100
  224. package/lib/dossiers_legislatifs.js +0 -346
  225. package/lib/dossiers_legislatifs.mjs +0 -208
  226. package/lib/file_systems.js +0 -162
  227. package/lib/file_systems.mjs +0 -62
  228. package/lib/git.js +0 -223
  229. package/lib/git.mjs +0 -151
  230. package/lib/index.mjs +0 -17
  231. package/lib/inserters.js +0 -521
  232. package/lib/inserters.mjs +0 -337
  233. package/lib/loaders.mjs +0 -886
  234. package/lib/logger.js +0 -35
  235. package/lib/logger.mjs +0 -26
  236. package/lib/organes.js +0 -22
  237. package/lib/organes.mjs +0 -15
  238. package/lib/parsers/documents.d.ts +0 -62
  239. package/lib/parsers/documents.js +0 -453
  240. package/lib/parsers/documents.mjs +0 -370
  241. package/lib/parsers/index.js +0 -40
  242. package/lib/parsers/index.mjs +0 -4
  243. package/lib/parsers/recherche_amendements.js +0 -403
  244. package/lib/parsers/recherche_amendements.mjs +0 -167
  245. package/lib/parsers/textes_lois.js +0 -307
  246. package/lib/parsers/textes_lois.mjs +0 -264
  247. package/lib/raw_types/acteurs_et_organes.js +0 -1215
  248. package/lib/raw_types/acteurs_et_organes.mjs +0 -1148
  249. package/lib/raw_types/agendas.js +0 -777
  250. package/lib/raw_types/agendas.mjs +0 -724
  251. package/lib/raw_types/amendements.js +0 -1052
  252. package/lib/raw_types/amendements.mjs +0 -993
  253. package/lib/raw_types/debats.js +0 -630
  254. package/lib/raw_types/debats.mjs +0 -573
  255. package/lib/raw_types/dossiers_legislatifs.js +0 -1529
  256. package/lib/raw_types/dossiers_legislatifs.mjs +0 -1471
  257. package/lib/raw_types/questions.js +0 -469
  258. package/lib/raw_types/questions.mjs +0 -416
  259. package/lib/raw_types/scrutins.js +0 -651
  260. package/lib/raw_types/scrutins.mjs +0 -598
  261. package/lib/schemas/acteur/Acteur.json +0 -56
  262. package/lib/schemas/acteur/AdresseElectronique.json +0 -52
  263. package/lib/schemas/acteur/AdressePostale.json +0 -75
  264. package/lib/schemas/acteur/Civ.json +0 -14
  265. package/lib/schemas/acteur/Collaborateur.json +0 -29
  266. package/lib/schemas/acteur/EtatCivil.json +0 -51
  267. package/lib/schemas/acteur/Ident.json +0 -40
  268. package/lib/schemas/acteur/Lieu.json +0 -66
  269. package/lib/schemas/acteur/Mandat.json +0 -192
  270. package/lib/schemas/acteur/Profession.json +0 -46
  271. package/lib/schemas/agenda/Agenda.json +0 -318
  272. package/lib/schemas/agenda/CycleDeVie.json +0 -45
  273. package/lib/schemas/agenda/PointOdj.json +0 -82
  274. package/lib/schemas/amendement/Amendement.json +0 -246
  275. package/lib/schemas/amendement/Diff.json +0 -25
  276. package/lib/schemas/amendement/DispositifAmdtCredit.json +0 -85
  277. package/lib/schemas/amendement/Identifiant.json +0 -62
  278. package/lib/schemas/amendement/PointeurFragmentTexte.json +0 -127
  279. package/lib/schemas/amendement/Representation.json +0 -67
  280. package/lib/schemas/amendement/Total.json +0 -26
  281. package/lib/schemas/converted_from_type/acteurs_et_organes.json +0 -666
  282. package/lib/schemas/converted_from_type/agendas.json +0 -1100
  283. package/lib/schemas/converted_from_type/amendements.json +0 -3191
  284. package/lib/schemas/converted_from_type/debats.json +0 -682
  285. package/lib/schemas/converted_from_type/deputes.json +0 -26
  286. package/lib/schemas/converted_from_type/dossiers_legislatifs.json +0 -2918
  287. package/lib/schemas/converted_from_type/legislatures.json +0 -16
  288. package/lib/schemas/converted_from_type/questions.json +0 -328
  289. package/lib/schemas/converted_from_type/scrutins.json +0 -393
  290. package/lib/schemas/debat/Contenu.json +0 -75
  291. package/lib/schemas/debat/Debat.json +0 -40
  292. package/lib/schemas/debat/Metadonnees.json +0 -75
  293. package/lib/schemas/debat/Orateur.json +0 -60
  294. package/lib/schemas/debat/Point.json +0 -169
  295. package/lib/schemas/debat/Sommaire.json +0 -71
  296. package/lib/schemas/debat/SommaireElement.json +0 -108
  297. package/lib/schemas/debat/Texte.json +0 -34
  298. package/lib/schemas/document/CodeLibelle.json +0 -25
  299. package/lib/schemas/document/Document.json +0 -385
  300. package/lib/schemas/document/Indexation.json +0 -38
  301. package/lib/schemas/dossier/ActeLegislatif.json +0 -211
  302. package/lib/schemas/dossier/ActeLegislatifBase.json +0 -62
  303. package/lib/schemas/dossier/Agenda.json +0 -23
  304. package/lib/schemas/dossier/ConseilConstitutionnel.json +0 -35
  305. package/lib/schemas/dossier/Decision.json +0 -25
  306. package/lib/schemas/dossier/Dossier.json +0 -124
  307. package/lib/schemas/dossier/EtudeImpact.json +0 -29
  308. package/lib/schemas/dossier/EtudePlf.json +0 -105
  309. package/lib/schemas/dossier/Europe.json +0 -42
  310. package/lib/schemas/dossier/FamCodeLibelle.json +0 -25
  311. package/lib/schemas/dossier/InfoJO.json +0 -23
  312. package/lib/schemas/dossier/Initiateur.json +0 -36
  313. package/lib/schemas/dossier/Motion.json +0 -27
  314. package/lib/schemas/dossier/Promulgation.json +0 -62
  315. package/lib/schemas/dossier/Rapporteur.json +0 -36
  316. package/lib/schemas/dossier/Texte.json +0 -47
  317. package/lib/schemas/organe/CodeTypeOrgane.json +0 -43
  318. package/lib/schemas/organe/Organe.json +0 -136
  319. package/lib/schemas/organe/ViMoDe.json +0 -28
  320. package/lib/schemas/question/Auteur.json +0 -58
  321. package/lib/schemas/question/Cloture.json +0 -28
  322. package/lib/schemas/question/InfoJO.json +0 -40
  323. package/lib/schemas/question/MinAttribElement.json +0 -30
  324. package/lib/schemas/question/Question.json +0 -172
  325. package/lib/schemas/question/Renouvellement.json +0 -17
  326. package/lib/schemas/question/Signalement.json +0 -21
  327. package/lib/schemas/question/Texte.json +0 -24
  328. package/lib/schemas/scrutin/DecompteVoix.json +0 -35
  329. package/lib/schemas/scrutin/Dysfonctionnement.json +0 -50
  330. package/lib/schemas/scrutin/MiseAuPoint.json +0 -53
  331. package/lib/schemas/scrutin/OrganeVotant.json +0 -88
  332. package/lib/schemas/scrutin/Scrutin.json +0 -187
  333. package/lib/schemas/scrutin/Votant.json +0 -37
  334. package/lib/scripts/bugs_helper.d.ts +0 -13
  335. package/lib/scripts/bugs_helper.js +0 -595
  336. package/lib/scripts/bugs_helper.mjs +0 -251
  337. package/lib/scripts/clean_reorganized_data.js +0 -613
  338. package/lib/scripts/clean_reorganized_data.mjs +0 -276
  339. package/lib/scripts/diff_amendements.js +0 -249
  340. package/lib/scripts/diff_amendements.mjs +0 -202
  341. package/lib/scripts/document_dossiers_legislatifs.js +0 -655
  342. package/lib/scripts/document_dossiers_legislatifs.mjs +0 -414
  343. package/lib/scripts/get_today_reunions.js +0 -37
  344. package/lib/scripts/get_today_reunions.mjs +0 -31
  345. package/lib/scripts/merge_scrutins.js +0 -97
  346. package/lib/scripts/merge_scrutins.mjs +0 -47
  347. package/lib/scripts/parse_textes_lois.d.ts +0 -1
  348. package/lib/scripts/parse_textes_lois.js +0 -171
  349. package/lib/scripts/parse_textes_lois.mjs +0 -140
  350. package/lib/scripts/process_open_dataset.js +0 -301
  351. package/lib/scripts/process_open_dataset.mjs +0 -134
  352. package/lib/scripts/raw_types_from_amendements.js +0 -135
  353. package/lib/scripts/raw_types_from_amendements.mjs +0 -134
  354. package/lib/scripts/reorganize_data.js +0 -805
  355. package/lib/scripts/reorganize_data.mjs +0 -517
  356. package/lib/scripts/retrieve_deputes_photos.js +0 -310
  357. package/lib/scripts/retrieve_deputes_photos.mjs +0 -158
  358. package/lib/scripts/retrieve_documents.js +0 -547
  359. package/lib/scripts/retrieve_documents.mjs +0 -242
  360. package/lib/scripts/retrieve_open_data.js +0 -107
  361. package/lib/scripts/retrieve_open_data.mjs +0 -26
  362. package/lib/scripts/retrieve_pending_amendments.js +0 -206
  363. package/lib/scripts/retrieve_pending_amendments.mjs +0 -57
  364. package/lib/scripts/retrieve_senateurs_photos.js +0 -234
  365. package/lib/scripts/retrieve_senateurs_photos.mjs +0 -116
  366. package/lib/scripts/retrieve_textes_lois.d.ts +0 -1
  367. package/lib/scripts/retrieve_textes_lois.js +0 -240
  368. package/lib/scripts/retrieve_textes_lois.mjs +0 -85
  369. package/lib/scripts/shared/cli_helpers.js +0 -89
  370. package/lib/scripts/shared/cli_helpers.mjs +0 -81
  371. package/lib/scripts/test_iter_load.js +0 -155
  372. package/lib/scripts/test_iter_load.mjs +0 -72
  373. package/lib/scripts/test_load.js +0 -26
  374. package/lib/scripts/test_load.mjs +0 -16
  375. package/lib/scripts/test_load_big_files.js +0 -26
  376. package/lib/scripts/test_load_big_files.mjs +0 -16
  377. package/lib/scripts/validate_json.js +0 -353
  378. package/lib/scripts/validate_json.mjs +0 -184
  379. package/lib/shared_types/codes_actes.js +0 -231
  380. package/lib/shared_types/codes_actes.mjs +0 -224
  381. package/lib/strings.js +0 -16
  382. package/lib/strings.mjs +0 -7
  383. package/lib/types/acteurs_et_organes.js +0 -965
  384. package/lib/types/acteurs_et_organes.mjs +0 -906
  385. package/lib/types/agendas.js +0 -628
  386. package/lib/types/agendas.mjs +0 -575
  387. package/lib/types/amendements.js +0 -899
  388. package/lib/types/amendements.mjs +0 -842
  389. package/lib/types/debats.js +0 -619
  390. package/lib/types/debats.mjs +0 -562
  391. package/lib/types/dossiers_legislatifs.js +0 -1188
  392. package/lib/types/dossiers_legislatifs.mjs +0 -1130
  393. package/lib/types/legislatures.js +0 -17
  394. package/lib/types/legislatures.mjs +0 -10
  395. package/lib/types/questions.js +0 -454
  396. package/lib/types/questions.mjs +0 -401
  397. package/lib/types/scrutins.js +0 -556
  398. package/lib/types/scrutins.mjs +0 -503
  399. package/lib/urls.js +0 -325
  400. package/lib/urls.mjs +0 -258
@@ -1,1052 +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.string.iterator.js");
9
- require("core-js/modules/web.dom-collections.iterator.js");
10
- Object.defineProperty(exports, "__esModule", {
11
- value: true
12
- });
13
- exports.TypePosition = exports.TypeMIMEType = exports.TypeAuteur = exports.SortEnum = exports.Nom = exports.Libelle = exports.DivisionType = exports.Convert = exports.CodeEtat = exports.Code = exports.AvantAApres = exports.Action = exports.AccordGouvernementDepotHorsDelai = void 0;
14
- require("core-js/modules/es.symbol.to-primitive.js");
15
- require("core-js/modules/es.array.concat.js");
16
- require("core-js/modules/es.array.for-each.js");
17
- require("core-js/modules/es.array.index-of.js");
18
- require("core-js/modules/es.array.is-array.js");
19
- require("core-js/modules/es.array.map.js");
20
- require("core-js/modules/es.date.to-json.js");
21
- require("core-js/modules/es.date.to-primitive.js");
22
- require("core-js/modules/es.date.to-string.js");
23
- require("core-js/modules/es.number.constructor.js");
24
- require("core-js/modules/es.object.get-own-property-names.js");
25
- require("core-js/modules/es.object.keys.js");
26
- require("core-js/modules/es.object.to-string.js");
27
- require("core-js/modules/web.dom-collections.for-each.js");
28
- 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); }
29
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
30
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
31
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
32
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
33
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
34
- // To parse this data:
35
- //
36
- // import { Amendements, AmendementWrapper, Convert, TexteLegislatif } from "./file";
37
- //
38
- // const amendements = Convert.toAmendements(json);
39
- // const amendementWrapper = Convert.toAmendementWrapper(json);
40
- // const texteLegislatif = Convert.toTexteLegislatif(json);
41
- //
42
- // These functions will throw an error if the JSON doesn't
43
- // match the expected interface, even if the JSON is valid.
44
- var AccordGouvernementDepotHorsDelai = exports.AccordGouvernementDepotHorsDelai = /*#__PURE__*/function (AccordGouvernementDepotHorsDelai) {
45
- AccordGouvernementDepotHorsDelai["Accord"] = "Accord";
46
- AccordGouvernementDepotHorsDelai["SansObjet"] = "Sans objet";
47
- return AccordGouvernementDepotHorsDelai;
48
- }({});
49
- var Action = exports.Action = /*#__PURE__*/function (Action) {
50
- Action["Cr\xE9ation"] = "cr\xE9ation";
51
- Action["Modification"] = "modification";
52
- Action["Suppression"] = "suppression";
53
- return Action;
54
- }({});
55
- var Code = exports.Code = /*#__PURE__*/function (Code) {
56
- Code["AC"] = "AC";
57
- Code["At"] = "AT";
58
- Code["Di"] = "DI";
59
- Code["Effac\xE9"] = "effac\xE9";
60
- Code["Er"] = "ER";
61
- Code["Et"] = "ET";
62
- Code["IR"] = "IR";
63
- Code["Irr127"] = "IRR127";
64
- Code["Irr20"] = "IRR20";
65
- Code["Irr37"] = "IRR37";
66
- Code["Irr38"] = "IRR38";
67
- Code["Irr41"] = "IRR41";
68
- Code["Irr42"] = "IRR42";
69
- Code["Irr45"] = "IRR45";
70
- Code["Irr48"] = "IRR48";
71
- Code["Irr53"] = "IRR53";
72
- Code["Irrai"] = "IRRAI";
73
- Code["Irraif"] = "IRRAIF";
74
- Code["Irrd"] = "IRRD";
75
- Code["Irrhc"] = "IRRHC";
76
- Code["Irrhd"] = "IRRHD";
77
- Code["Irrsa"] = "IRRSA";
78
- Code["R"] = "R";
79
- Code["Rt"] = "RT";
80
- Code["T"] = "T";
81
- return Code;
82
- }({});
83
- var Libelle = exports.Libelle = /*#__PURE__*/function (Libelle) {
84
- Libelle["ADiscuter"] = "A discuter";
85
- Libelle["AD\xE9poser"] = "A d\xE9poser";
86
- Libelle["Discut\xE9"] = "Discut\xE9";
87
- Libelle["Effac\xE9"] = "effac\xE9";
88
- Libelle["EnRecevabilit\xE9"] = "En recevabilit\xE9";
89
- Libelle["EnTraitement"] = "En traitement";
90
- Libelle["Irrecevable"] = "Irrecevable";
91
- Libelle["Irrecevable40"] = "Irrecevable 40";
92
- Libelle["Retir\xE9"] = "Retir\xE9";
93
- return Libelle;
94
- }({});
95
- var SortEnum = exports.SortEnum = /*#__PURE__*/function (SortEnum) {
96
- SortEnum["Adopt\xE9"] = "Adopt\xE9";
97
- SortEnum["AutreIrrecevabilit\xE9"] = "Autre irrecevabilit\xE9";
98
- SortEnum["AutreIrrecevabilit\xE940"] = "Autre irrecevabilit\xE9 40";
99
- SortEnum["AutresIrrLOLF"] = "Autres irr LOLF";
100
- SortEnum["AutresIrrLOLFSS"] = "Autres irr LOLFSS";
101
- SortEnum["Cavalier45"] = "Cavalier (45)";
102
- SortEnum["CavalierBudg\xE9taire"] = "Cavalier budg\xE9taire";
103
- SortEnum["CavalierSocial"] = "Cavalier social";
104
- SortEnum["ChampDeLHabilitation38"] = "Champ de l'habilitation (38)";
105
- SortEnum["Charge"] = "Charge";
106
- SortEnum["Cmp45"] = "CMP (45)";
107
- SortEnum["Cr\xE9dits"] = "Cr\xE9dits";
108
- SortEnum["DispositionR\xE9glementaire37"] = "Disposition r\xE9glementaire (37)";
109
- SortEnum["DomaineDeLaLoi41"] = "Domaine de la loi (41)";
110
- SortEnum["DomaineLoiOrganique127"] = "Domaine loi organique (127)";
111
- SortEnum["Doublon"] = "Doublon";
112
- SortEnum["Entonnoir45"] = "Entonnoir (45)";
113
- SortEnum["Gage"] = "Gage";
114
- SortEnum["HorsChamp"] = "Hors champ";
115
- SortEnum["HorsD\xE9lais"] = "Hors-d\xE9lais";
116
- SortEnum["Injonction20"] = "Injonction (20)";
117
- SortEnum["IrrEnPremi\xE8rePartie"] = "Irr en premi\xE8re partie";
118
- SortEnum["IrrEnSecondePartie"] = "Irr en seconde partie";
119
- SortEnum["Lolf"] = "LOLF";
120
- SortEnum["Lolfss"] = "LOLFSS";
121
- SortEnum["NonSoutenu"] = "Non soutenu";
122
- SortEnum["OrdreDuJour48"] = "Ordre du jour (48)";
123
- SortEnum["R"] = "R";
124
- SortEnum["RatificationTrait\xE953"] = "Ratification trait\xE9 (53)";
125
- SortEnum["Rejet\xE9"] = "Rejet\xE9";
126
- SortEnum["Retir\xE9"] = "Retir\xE9";
127
- SortEnum["Retir\xE9Apr\xE8sPublication"] = "Retir\xE9 apr\xE8s publication";
128
- SortEnum["Retir\xE9AvantPublication"] = "Retir\xE9 avant publication";
129
- SortEnum["SatisfaitOuInop\xE9rant42"] = "Satisfait ou inop\xE9rant (42)";
130
- SortEnum["SousAmendement98"] = "Sous-amendement (98)";
131
- SortEnum["Tomb\xE9"] = "Tomb\xE9";
132
- return SortEnum;
133
- }({});
134
- var TypePosition = exports.TypePosition = /*#__PURE__*/function (TypePosition) {
135
- TypePosition["Dernier"] = "Dernier";
136
- TypePosition["Milieu"] = "Milieu";
137
- TypePosition["Premier"] = "Premier";
138
- return TypePosition;
139
- }({});
140
- var AvantAApres = exports.AvantAApres = /*#__PURE__*/function (AvantAApres) {
141
- AvantAApres["A"] = "A";
142
- AvantAApres["Apr\xE8s"] = "Apr\xE8s";
143
- AvantAApres["Avant"] = "Avant";
144
- return AvantAApres;
145
- }({});
146
- var DivisionType = exports.DivisionType = /*#__PURE__*/function (DivisionType) {
147
- DivisionType["Annexe"] = "ANNEXE";
148
- DivisionType["Article"] = "ARTICLE";
149
- DivisionType["Chapitre"] = "CHAPITRE";
150
- DivisionType["Titre"] = "TITRE";
151
- return DivisionType;
152
- }({});
153
- var CodeEtat = exports.CodeEtat = /*#__PURE__*/function (CodeEtat) {
154
- CodeEtat["B"] = "B";
155
- CodeEtat["C"] = "C";
156
- CodeEtat["D"] = "D";
157
- return CodeEtat;
158
- }({});
159
- var Nom = exports.Nom = /*#__PURE__*/function (Nom) {
160
- Nom["PDF"] = "PDF";
161
- return Nom;
162
- }({});
163
- var TypeMIMEType = exports.TypeMIMEType = /*#__PURE__*/function (TypeMIMEType) {
164
- TypeMIMEType["Application"] = "application";
165
- return TypeMIMEType;
166
- }({});
167
- var TypeAuteur = exports.TypeAuteur = /*#__PURE__*/function (TypeAuteur) {
168
- TypeAuteur["D\xE9put\xE9"] = "D\xE9put\xE9";
169
- TypeAuteur["Gouvernement"] = "Gouvernement";
170
- TypeAuteur["Rapporteur"] = "Rapporteur";
171
- return TypeAuteur;
172
- }({});
173
- // Converts JSON strings to/from your types
174
- // and asserts the results of JSON.parse at runtime
175
- var Convert = exports.Convert = /*#__PURE__*/function () {
176
- function Convert() {
177
- _classCallCheck(this, Convert);
178
- }
179
- return _createClass(Convert, null, [{
180
- key: "toAmendements",
181
- value: function toAmendements(json) {
182
- return cast(JSON.parse(json), r("Amendements"));
183
- }
184
- }, {
185
- key: "amendementsToJson",
186
- value: function amendementsToJson(value) {
187
- return JSON.stringify(uncast(value, r("Amendements")), null, 2);
188
- }
189
- }, {
190
- key: "toTexteLegislatif",
191
- value: function toTexteLegislatif(json) {
192
- return cast(JSON.parse(json), r("TexteLegislatif"));
193
- }
194
- }, {
195
- key: "texteLegislatifToJson",
196
- value: function texteLegislatifToJson(value) {
197
- return JSON.stringify(uncast(value, r("TexteLegislatif")), null, 2);
198
- }
199
- }, {
200
- key: "toAmendementWrapper",
201
- value: function toAmendementWrapper(json) {
202
- return cast(JSON.parse(json), r("AmendementWrapper"));
203
- }
204
- }, {
205
- key: "amendementWrapperToJson",
206
- value: function amendementWrapperToJson(value) {
207
- return JSON.stringify(uncast(value, r("AmendementWrapper")), null, 2);
208
- }
209
- }]);
210
- }();
211
- function invalidValue(typ, val) {
212
- var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
213
- if (key) {
214
- throw Error("Invalid value for key \"".concat(key, "\". Expected type ").concat(JSON.stringify(typ), " but got ").concat(JSON.stringify(val)));
215
- }
216
- throw Error("Invalid value ".concat(JSON.stringify(val), " for type ").concat(JSON.stringify(typ)));
217
- }
218
- function jsonToJSProps(typ) {
219
- if (typ.jsonToJS === undefined) {
220
- var map = {};
221
- typ.props.forEach(function (p) {
222
- return map[p.json] = {
223
- key: p.js,
224
- typ: p.typ
225
- };
226
- });
227
- typ.jsonToJS = map;
228
- }
229
- return typ.jsonToJS;
230
- }
231
- function jsToJSONProps(typ) {
232
- if (typ.jsToJSON === undefined) {
233
- var map = {};
234
- typ.props.forEach(function (p) {
235
- return map[p.js] = {
236
- key: p.json,
237
- typ: p.typ
238
- };
239
- });
240
- typ.jsToJSON = map;
241
- }
242
- return typ.jsToJSON;
243
- }
244
- function transform(val, typ, getProps) {
245
- var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
246
- function transformPrimitive(typ, val) {
247
- if (_typeof(typ) === _typeof(val)) return val;
248
- return invalidValue(typ, val, key);
249
- }
250
- function transformUnion(typs, val) {
251
- // val must validate against one typ in typs
252
- var l = typs.length;
253
- for (var i = 0; i < l; i++) {
254
- var _typ = typs[i];
255
- try {
256
- return transform(val, _typ, getProps);
257
- } catch (_) {}
258
- }
259
- return invalidValue(typs, val);
260
- }
261
- function transformEnum(cases, val) {
262
- if (cases.indexOf(val) !== -1) return val;
263
- return invalidValue(cases, val);
264
- }
265
- function transformArray(typ, val) {
266
- // val must be an array with no invalid elements
267
- if (!Array.isArray(val)) return invalidValue("array", val);
268
- return val.map(function (el) {
269
- return transform(el, typ, getProps);
270
- });
271
- }
272
- function transformDate(val) {
273
- if (val === null) {
274
- return null;
275
- }
276
- var d = new Date(val);
277
- if (isNaN(d.valueOf())) {
278
- return invalidValue("Date", val);
279
- }
280
- return d;
281
- }
282
- function transformObject(props, additional, val) {
283
- if (val === null || _typeof(val) !== "object" || Array.isArray(val)) {
284
- return invalidValue("object", val);
285
- }
286
- var result = {};
287
- Object.getOwnPropertyNames(props).forEach(function (key) {
288
- var prop = props[key];
289
- var v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
290
- result[prop.key] = transform(v, prop.typ, getProps, prop.key);
291
- });
292
- Object.getOwnPropertyNames(val).forEach(function (key) {
293
- if (!Object.prototype.hasOwnProperty.call(props, key)) {
294
- result[key] = transform(val[key], additional, getProps, key);
295
- }
296
- });
297
- return result;
298
- }
299
- if (typ === "any") return val;
300
- if (typ === null) {
301
- if (val === null) return val;
302
- return invalidValue(typ, val);
303
- }
304
- if (typ === false) return invalidValue(typ, val);
305
- while (_typeof(typ) === "object" && typ.ref !== undefined) {
306
- typ = typeMap[typ.ref];
307
- }
308
- if (Array.isArray(typ)) return transformEnum(typ, val);
309
- if (_typeof(typ) === "object") {
310
- 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);
311
- }
312
- // Numbers can be parsed by Date but shouldn't be.
313
- if (typ === Date && typeof val !== "number") return transformDate(val);
314
- return transformPrimitive(typ, val);
315
- }
316
- function cast(val, typ) {
317
- return transform(val, typ, jsonToJSProps);
318
- }
319
- function uncast(val, typ) {
320
- return transform(val, typ, jsToJSONProps);
321
- }
322
- function a(typ) {
323
- return {
324
- arrayItems: typ
325
- };
326
- }
327
- function u() {
328
- for (var _len = arguments.length, typs = new Array(_len), _key = 0; _key < _len; _key++) {
329
- typs[_key] = arguments[_key];
330
- }
331
- return {
332
- unionMembers: typs
333
- };
334
- }
335
- function o(props, additional) {
336
- return {
337
- props: props,
338
- additional: additional
339
- };
340
- }
341
-
342
- // function m(additional: any) {
343
- // return { props: [], additional };
344
- // }
345
-
346
- function r(name) {
347
- return {
348
- ref: name
349
- };
350
- }
351
- var typeMap = {
352
- "Amendements": o([{
353
- json: "textesLegislatifs",
354
- js: "textesLegislatifs",
355
- typ: a(r("TexteLegislatif"))
356
- }], false),
357
- "TexteLegislatif": o([{
358
- json: "@xmlns:xsi",
359
- js: "@xmlns:xsi",
360
- typ: ""
361
- }, {
362
- json: "refTexteLegislatif",
363
- js: "refTexteLegislatif",
364
- typ: ""
365
- }, {
366
- json: "amendements",
367
- js: "amendements",
368
- typ: r("AmendementsClass")
369
- }], false),
370
- "AmendementsClass": o([{
371
- json: "amendement",
372
- js: "amendement",
373
- typ: a(r("Amendement"))
374
- }], false),
375
- "AmendementWrapper": o([{
376
- json: "amendement",
377
- js: "amendement",
378
- typ: r("Amendement")
379
- }], false),
380
- "Amendement": o([{
381
- json: "@xmlns",
382
- js: "@xmlns",
383
- typ: ""
384
- }, {
385
- json: "uid",
386
- js: "uid",
387
- typ: ""
388
- }, {
389
- json: "chronotag",
390
- js: "chronotag",
391
- typ: ""
392
- }, {
393
- json: "legislature",
394
- js: "legislature",
395
- typ: ""
396
- }, {
397
- json: "identification",
398
- js: "identification",
399
- typ: r("Identification")
400
- }, {
401
- json: "examenRef",
402
- js: "examenRef",
403
- typ: ""
404
- }, {
405
- json: "texteLegislatifRef",
406
- js: "texteLegislatifRef",
407
- typ: ""
408
- }, {
409
- json: "triAmendement",
410
- js: "triAmendement",
411
- typ: u(r("AmendementParentRefClass"), "")
412
- }, {
413
- json: "cardinaliteAmdtMultiples",
414
- js: "cardinaliteAmdtMultiples",
415
- typ: u(r("AmendementParentRefClass"), "")
416
- }, {
417
- json: "amendementParentRef",
418
- js: "amendementParentRef",
419
- typ: u(r("AmendementParentRefClass"), "")
420
- }, {
421
- json: "signataires",
422
- js: "signataires",
423
- typ: r("Signataires")
424
- }, {
425
- json: "pointeurFragmentTexte",
426
- js: "pointeurFragmentTexte",
427
- typ: r("PointeurFragmentTexte")
428
- }, {
429
- json: "corps",
430
- js: "corps",
431
- typ: r("Corps")
432
- }, {
433
- json: "cycleDeVie",
434
- js: "cycleDeVie",
435
- typ: r("CycleDeVie")
436
- }, {
437
- json: "representations",
438
- js: "representations",
439
- typ: u(r("Representations"), null)
440
- }, {
441
- json: "seanceDiscussionRef",
442
- js: "seanceDiscussionRef",
443
- typ: u(r("AmendementParentRefClass"), "")
444
- }, {
445
- json: "article99",
446
- js: "article99",
447
- typ: ""
448
- }, {
449
- json: "loiReference",
450
- js: "loiReference",
451
- typ: r("LoiReference")
452
- }, {
453
- json: "discussionCommune",
454
- js: "discussionCommune",
455
- typ: r("Discussion")
456
- }, {
457
- json: "discussionIdentique",
458
- js: "discussionIdentique",
459
- typ: r("Discussion")
460
- }, {
461
- json: "accordGouvernementDepotHorsDelai",
462
- js: "accordGouvernementDepotHorsDelai",
463
- typ: r("AccordGouvernementDepotHorsDelai")
464
- }], false),
465
- "AmendementParentRefClass": o([{
466
- json: "@xmlns:xsi",
467
- js: "@xmlns:xsi",
468
- typ: ""
469
- }, {
470
- json: "@xsi:nil",
471
- js: "@xsi:nil",
472
- typ: ""
473
- }], false),
474
- "Corps": o([{
475
- json: "cartoucheInformatif",
476
- js: "cartoucheInformatif",
477
- typ: u(undefined, u(r("AmendementParentRefClass"), ""))
478
- }, {
479
- json: "contenuAuteur",
480
- js: "contenuAuteur",
481
- typ: u(undefined, r("ContenuAuteur"))
482
- }, {
483
- json: "@xmlns:xsi",
484
- js: "@xmlns:xsi",
485
- typ: u(undefined, "")
486
- }, {
487
- json: "@xsi:nil",
488
- js: "@xsi:nil",
489
- typ: u(undefined, "")
490
- }], false),
491
- "ContenuAuteur": o([{
492
- json: "dispositif",
493
- js: "dispositif",
494
- typ: u(undefined, "")
495
- }, {
496
- json: "avantAppel",
497
- js: "avantAppel",
498
- typ: u(undefined, r("AvantAppel"))
499
- }, {
500
- json: "exposeSommaire",
501
- js: "exposeSommaire",
502
- typ: u(undefined, "")
503
- }, {
504
- json: "annexeExposeSommaire",
505
- js: "annexeExposeSommaire",
506
- typ: u(undefined, r("AmendementParentRefClass"))
507
- }, {
508
- json: "@xmlns:xsi",
509
- js: "@xmlns:xsi",
510
- typ: u(undefined, "")
511
- }, {
512
- json: "@xsi:nil",
513
- js: "@xsi:nil",
514
- typ: u(undefined, "")
515
- }, {
516
- json: "dispositifAmdtCreditPLF",
517
- js: "dispositifAmdtCreditPLF",
518
- typ: u(undefined, r("DispositifAmdtCreditPLF"))
519
- }, {
520
- json: "dispositifAmdtCreditPLFR",
521
- js: "dispositifAmdtCreditPLFR",
522
- typ: u(undefined, r("DispositifAmdtCreditPLFR"))
523
- }], false),
524
- "AvantAppel": o([{
525
- json: "@xmlns:xsi",
526
- js: "@xmlns:xsi",
527
- typ: u(undefined, "")
528
- }, {
529
- json: "@xsi:nil",
530
- js: "@xsi:nil",
531
- typ: u(undefined, "")
532
- }, {
533
- json: "dispositif",
534
- js: "dispositif",
535
- typ: u(undefined, "")
536
- }, {
537
- json: "dispositifAmdtCreditPLF",
538
- js: "dispositifAmdtCreditPLF",
539
- typ: u(undefined, r("DispositifAmdtCreditPLF"))
540
- }, {
541
- json: "dispositifAmdtCreditPLFR",
542
- js: "dispositifAmdtCreditPLFR",
543
- typ: u(undefined, r("DispositifAmdtCreditPLFR"))
544
- }], false),
545
- "DispositifAmdtCreditPLF": o([{
546
- json: "listeProgrammes",
547
- js: "listeProgrammes",
548
- typ: u(undefined, r("DispositifAmdtCreditPLFListeProgrammes"))
549
- }, {
550
- json: "soldeAE",
551
- js: "soldeAE",
552
- typ: u(undefined, "")
553
- }, {
554
- json: "soldeCP",
555
- js: "soldeCP",
556
- typ: u(undefined, "")
557
- }, {
558
- json: "cpEgalAe",
559
- js: "cpEgalAe",
560
- typ: ""
561
- }], false),
562
- "DispositifAmdtCreditPLFListeProgrammes": o([{
563
- json: "programme",
564
- js: "programme",
565
- typ: a(r("PurpleProgramme"))
566
- }], false),
567
- "PurpleProgramme": o([{
568
- json: "libelle",
569
- js: "libelle",
570
- typ: ""
571
- }, {
572
- json: "programmeRef",
573
- js: "programmeRef",
574
- typ: ""
575
- }, {
576
- json: "autorisationEngagement",
577
- js: "autorisationEngagement",
578
- typ: ""
579
- }, {
580
- json: "creditPaiement",
581
- js: "creditPaiement",
582
- typ: ""
583
- }, {
584
- json: "action",
585
- js: "action",
586
- typ: r("Action")
587
- }, {
588
- json: "lignesCredits",
589
- js: "lignesCredits",
590
- typ: r("PurpleLignesCredits")
591
- }], false),
592
- "PurpleLignesCredits": o([{
593
- json: "@xmlns:xsi",
594
- js: "@xmlns:xsi",
595
- typ: u(undefined, "")
596
- }, {
597
- json: "@xsi:nil",
598
- js: "@xsi:nil",
599
- typ: u(undefined, "")
600
- }, {
601
- json: "ligneCredit",
602
- js: "ligneCredit",
603
- typ: u(undefined, u(a(r("LigneCreditClass")), r("LigneCreditClass")))
604
- }], false),
605
- "LigneCreditClass": o([{
606
- json: "id",
607
- js: "id",
608
- typ: ""
609
- }, {
610
- json: "libelle",
611
- js: "libelle",
612
- typ: ""
613
- }, {
614
- json: "autorisationEngagement",
615
- js: "autorisationEngagement",
616
- typ: ""
617
- }, {
618
- json: "creditPaiement",
619
- js: "creditPaiement",
620
- typ: ""
621
- }, {
622
- json: "action",
623
- js: "action",
624
- typ: r("Action")
625
- }], false),
626
- "DispositifAmdtCreditPLFR": o([{
627
- json: "listeProgrammes",
628
- js: "listeProgrammes",
629
- typ: u(undefined, r("DispositifAmdtCreditPLFRListeProgrammes"))
630
- }, {
631
- json: "totalAE",
632
- js: "totalAE",
633
- typ: u(undefined, r("Total"))
634
- }, {
635
- json: "totalCP",
636
- js: "totalCP",
637
- typ: u(undefined, r("Total"))
638
- }, {
639
- json: "cpEgalAe",
640
- js: "cpEgalAe",
641
- typ: ""
642
- }], false),
643
- "DispositifAmdtCreditPLFRListeProgrammes": o([{
644
- json: "programme",
645
- js: "programme",
646
- typ: a(r("LigneCreditElement"))
647
- }], false),
648
- "LigneCreditLignesCredits": o([{
649
- json: "@xmlns:xsi",
650
- js: "@xmlns:xsi",
651
- typ: u(undefined, "")
652
- }, {
653
- json: "@xsi:nil",
654
- js: "@xsi:nil",
655
- typ: u(undefined, "")
656
- }, {
657
- json: "ligneCredit",
658
- js: "ligneCredit",
659
- typ: u(undefined, u(a(r("LigneCreditElement")), r("LigneCreditElement")))
660
- }], false),
661
- "LigneCreditElement": o([{
662
- json: "libelle",
663
- js: "libelle",
664
- typ: ""
665
- }, {
666
- json: "programmeRef",
667
- js: "programmeRef",
668
- typ: u(undefined, "")
669
- }, {
670
- json: "autorisationEngagementSupplementaire",
671
- js: "autorisationEngagementSupplementaire",
672
- typ: ""
673
- }, {
674
- json: "creditPaiementSupplementaire",
675
- js: "creditPaiementSupplementaire",
676
- typ: ""
677
- }, {
678
- json: "autorisationEngagementAnnule",
679
- js: "autorisationEngagementAnnule",
680
- typ: ""
681
- }, {
682
- json: "creditPaiementAnnule",
683
- js: "creditPaiementAnnule",
684
- typ: ""
685
- }, {
686
- json: "action",
687
- js: "action",
688
- typ: r("Action")
689
- }, {
690
- json: "lignesCredits",
691
- js: "lignesCredits",
692
- typ: u(undefined, r("LigneCreditLignesCredits"))
693
- }, {
694
- json: "id",
695
- js: "id",
696
- typ: u(undefined, "")
697
- }], false),
698
- "Total": o([{
699
- json: "supplementaire",
700
- js: "supplementaire",
701
- typ: ""
702
- }, {
703
- json: "annule",
704
- js: "annule",
705
- typ: ""
706
- }, {
707
- json: "solde",
708
- js: "solde",
709
- typ: ""
710
- }], false),
711
- "CycleDeVie": o([{
712
- json: "dateDepot",
713
- js: "dateDepot",
714
- typ: u(r("AmendementParentRefClass"), Date)
715
- }, {
716
- json: "datePublication",
717
- js: "datePublication",
718
- typ: u(r("AmendementParentRefClass"), Date)
719
- }, {
720
- json: "soumisArticle40",
721
- js: "soumisArticle40",
722
- typ: ""
723
- }, {
724
- json: "etatDesTraitements",
725
- js: "etatDesTraitements",
726
- typ: r("EtatDESTraitements")
727
- }, {
728
- json: "dateSort",
729
- js: "dateSort",
730
- typ: u(r("AmendementParentRefClass"), Date)
731
- }, {
732
- json: "sort",
733
- js: "sort",
734
- typ: u(r("AmendementParentRefClass"), r("SortEnum"))
735
- }], false),
736
- "EtatDESTraitements": o([{
737
- json: "etat",
738
- js: "etat",
739
- typ: r("Etat")
740
- }, {
741
- json: "sousEtat",
742
- js: "sousEtat",
743
- typ: r("SousEtat")
744
- }], false),
745
- "Etat": o([{
746
- json: "code",
747
- js: "code",
748
- typ: r("Code")
749
- }, {
750
- json: "libelle",
751
- js: "libelle",
752
- typ: r("Libelle")
753
- }], false),
754
- "SousEtat": o([{
755
- json: "code",
756
- js: "code",
757
- typ: u(undefined, r("Code"))
758
- }, {
759
- json: "libelle",
760
- js: "libelle",
761
- typ: u(undefined, r("SortEnum"))
762
- }, {
763
- json: "@xmlns:xsi",
764
- js: "@xmlns:xsi",
765
- typ: u(undefined, "")
766
- }, {
767
- json: "@xsi:nil",
768
- js: "@xsi:nil",
769
- typ: u(undefined, "")
770
- }], false),
771
- "Discussion": o([{
772
- json: "@xmlns:xsi",
773
- js: "@xmlns:xsi",
774
- typ: u(undefined, "")
775
- }, {
776
- json: "@xsi:nil",
777
- js: "@xsi:nil",
778
- typ: u(undefined, "")
779
- }, {
780
- json: "idDiscussion",
781
- js: "idDiscussion",
782
- typ: u(undefined, "")
783
- }, {
784
- json: "typePosition",
785
- js: "typePosition",
786
- typ: u(undefined, r("TypePosition"))
787
- }], false),
788
- "Identification": o([{
789
- json: "numeroLong",
790
- js: "numeroLong",
791
- typ: ""
792
- }, {
793
- json: "numeroOrdreDepot",
794
- js: "numeroOrdreDepot",
795
- typ: ""
796
- }, {
797
- json: "prefixeOrganeExamen",
798
- js: "prefixeOrganeExamen",
799
- typ: ""
800
- }, {
801
- json: "numeroRect",
802
- js: "numeroRect",
803
- typ: ""
804
- }], false),
805
- "LoiReference": o([{
806
- json: "@xmlns:xsi",
807
- js: "@xmlns:xsi",
808
- typ: u(undefined, "")
809
- }, {
810
- json: "@xsi:nil",
811
- js: "@xsi:nil",
812
- typ: u(undefined, "")
813
- }, {
814
- json: "codeLoi",
815
- js: "codeLoi",
816
- typ: u(undefined, u(r("AmendementParentRefClass"), null, ""))
817
- }, {
818
- json: "divisionCodeLoi",
819
- js: "divisionCodeLoi",
820
- typ: u(undefined, u(r("AmendementParentRefClass"), null, ""))
821
- }], false),
822
- "PointeurFragmentTexte": o([{
823
- json: "partieAmendableRef",
824
- js: "partieAmendableRef",
825
- typ: r("AmendementParentRefClass")
826
- }, {
827
- json: "division",
828
- js: "division",
829
- typ: u(undefined, r("Division"))
830
- }, {
831
- json: "amendementStandard",
832
- js: "amendementStandard",
833
- typ: u(undefined, r("AmendementStandard"))
834
- }, {
835
- json: "missionVisee",
836
- js: "missionVisee",
837
- typ: u(undefined, r("MissionVisee"))
838
- }], false),
839
- "AmendementStandard": o([{
840
- json: "alinea",
841
- js: "alinea",
842
- typ: r("Alinea")
843
- }], false),
844
- "Alinea": o([{
845
- json: "@xmlns:xsi",
846
- js: "@xmlns:xsi",
847
- typ: u(undefined, "")
848
- }, {
849
- json: "@xsi:nil",
850
- js: "@xsi:nil",
851
- typ: u(undefined, "")
852
- }, {
853
- json: "avant_A_Apres",
854
- js: "avant_A_Apres",
855
- typ: u(undefined, u(r("AmendementParentRefClass"), null, ""))
856
- }, {
857
- json: "numero",
858
- js: "numero",
859
- typ: u(undefined, u(r("AmendementParentRefClass"), ""))
860
- }, {
861
- json: "alineaDesignation",
862
- js: "alineaDesignation",
863
- typ: u(undefined, "")
864
- }], false),
865
- "Division": o([{
866
- json: "titre",
867
- js: "titre",
868
- typ: u(null, "")
869
- }, {
870
- json: "articleDesignationCourte",
871
- js: "articleDesignationCourte",
872
- typ: u(null, "")
873
- }, {
874
- json: "articleDesignation",
875
- js: "articleDesignation",
876
- typ: u(null, "")
877
- }, {
878
- json: "type",
879
- js: "type",
880
- typ: r("DivisionType")
881
- }, {
882
- json: "avant_A_Apres",
883
- js: "avant_A_Apres",
884
- typ: r("AvantAApres")
885
- }, {
886
- json: "divisionRattachee",
887
- js: "divisionRattachee",
888
- typ: u(r("AmendementParentRefClass"), "")
889
- }, {
890
- json: "articleAdditionnel",
891
- js: "articleAdditionnel",
892
- typ: ""
893
- }, {
894
- json: "chapitreAdditionnel",
895
- js: "chapitreAdditionnel",
896
- typ: ""
897
- }, {
898
- json: "urlDivisionTexteVise",
899
- js: "urlDivisionTexteVise",
900
- typ: u(r("AmendementParentRefClass"), "")
901
- }], false),
902
- "MissionVisee": o([{
903
- json: "codeEtat",
904
- js: "codeEtat",
905
- typ: r("CodeEtat")
906
- }, {
907
- json: "codeMissionMinefi",
908
- js: "codeMissionMinefi",
909
- typ: ""
910
- }, {
911
- json: "libelleMission",
912
- js: "libelleMission",
913
- typ: ""
914
- }, {
915
- json: "missionRef",
916
- js: "missionRef",
917
- typ: ""
918
- }], false),
919
- "Representations": o([{
920
- json: "representation",
921
- js: "representation",
922
- typ: r("Representation")
923
- }], false),
924
- "Representation": o([{
925
- json: "nom",
926
- js: "nom",
927
- typ: r("Nom")
928
- }, {
929
- json: "typeMime",
930
- js: "typeMime",
931
- typ: r("TypeMIME")
932
- }, {
933
- json: "statutRepresentation",
934
- js: "statutRepresentation",
935
- typ: r("StatutRepresentation")
936
- }, {
937
- json: "repSource",
938
- js: "repSource",
939
- typ: r("AmendementParentRefClass")
940
- }, {
941
- json: "offset",
942
- js: "offset",
943
- typ: r("AmendementParentRefClass")
944
- }, {
945
- json: "contenu",
946
- js: "contenu",
947
- typ: r("Contenu")
948
- }, {
949
- json: "dateDispoRepresentation",
950
- js: "dateDispoRepresentation",
951
- typ: r("AmendementParentRefClass")
952
- }], false),
953
- "Contenu": o([{
954
- json: "documentURI",
955
- js: "documentURI",
956
- typ: ""
957
- }], false),
958
- "StatutRepresentation": o([{
959
- json: "verbatim",
960
- js: "verbatim",
961
- typ: ""
962
- }, {
963
- json: "canonique",
964
- js: "canonique",
965
- typ: ""
966
- }, {
967
- json: "officielle",
968
- js: "officielle",
969
- typ: ""
970
- }, {
971
- json: "transcription",
972
- js: "transcription",
973
- typ: ""
974
- }, {
975
- json: "enregistrement",
976
- js: "enregistrement",
977
- typ: ""
978
- }], false),
979
- "TypeMIME": o([{
980
- json: "type",
981
- js: "type",
982
- typ: r("TypeMIMEType")
983
- }, {
984
- json: "subType",
985
- js: "subType",
986
- typ: r("Nom")
987
- }], false),
988
- "Signataires": o([{
989
- json: "auteur",
990
- js: "auteur",
991
- typ: r("Auteur")
992
- }, {
993
- json: "cosignataires",
994
- js: "cosignataires",
995
- typ: r("Cosignataires")
996
- }, {
997
- json: "suffixe",
998
- js: "suffixe",
999
- typ: u(r("AmendementParentRefClass"), "")
1000
- }, {
1001
- json: "libelle",
1002
- js: "libelle",
1003
- typ: u(null, "")
1004
- }], false),
1005
- "Auteur": o([{
1006
- json: "typeAuteur",
1007
- js: "typeAuteur",
1008
- typ: r("TypeAuteur")
1009
- }, {
1010
- json: "gouvernementRef",
1011
- js: "gouvernementRef",
1012
- typ: u(r("AmendementParentRefClass"), "")
1013
- }, {
1014
- json: "acteurRef",
1015
- js: "acteurRef",
1016
- typ: u(r("AmendementParentRefClass"), "")
1017
- }, {
1018
- json: "groupePolitiqueRef",
1019
- js: "groupePolitiqueRef",
1020
- typ: u(r("AmendementParentRefClass"), "")
1021
- }, {
1022
- json: "auteurRapporteurOrganeRef",
1023
- js: "auteurRapporteurOrganeRef",
1024
- typ: u(r("AmendementParentRefClass"), "")
1025
- }], false),
1026
- "Cosignataires": o([{
1027
- json: "@xmlns:xsi",
1028
- js: "@xmlns:xsi",
1029
- typ: u(undefined, "")
1030
- }, {
1031
- json: "@xsi:nil",
1032
- js: "@xsi:nil",
1033
- typ: u(undefined, "")
1034
- }, {
1035
- json: "acteurRef",
1036
- js: "acteurRef",
1037
- typ: u(undefined, u(a(""), ""))
1038
- }], false),
1039
- "AccordGouvernementDepotHorsDelai": ["Accord", "Sans objet"],
1040
- "Action": ["création", "modification", "suppression"],
1041
- "Code": ["AC", "AT", "DI", "effacé", "ER", "ET", "IR", "IRR127", "IRR20", "IRR37", "IRR38", "IRR41", "IRR42", "IRR45", "IRR48", "IRR53", "IRRAI", "IRRAIF", "IRRD", "IRRHC", "IRRHD", "IRRSA", "R", "RT", "T"],
1042
- "Libelle": ["A discuter", "A déposer", "Discuté", "effacé", "En recevabilité", "En traitement", "Irrecevable", "Irrecevable 40", "Retiré"],
1043
- "SortEnum": ["Adopté", "Autre irrecevabilité", "Autre irrecevabilité 40", "Autres irr LOLF", "Autres irr LOLFSS", "Cavalier (45)", "Cavalier budgétaire", "Cavalier social", "Champ de l'habilitation (38)", "Charge", "CMP (45)", "Crédits", "Disposition réglementaire (37)", "Domaine de la loi (41)", "Domaine loi organique (127)", "Doublon", "Entonnoir (45)", "Gage", "Hors champ", "Hors-délais", "Injonction (20)", "Irr en première partie", "Irr en seconde partie", "LOLF", "LOLFSS", "Non soutenu", "Ordre du jour (48)", "R", "Ratification traité (53)", "Rejeté", "Retiré", "Retiré après publication", "Retiré avant publication", "Satisfait ou inopérant (42)", "Sous-amendement (98)", "Tombé"],
1044
- "TypePosition": ["Dernier", "Milieu", "Premier"],
1045
- "AvantAApres": ["A", "Après", "Avant"],
1046
- "DivisionType": ["ANNEXE", "ARTICLE", "CHAPITRE", "TITRE"],
1047
- "CodeEtat": ["B", "C", "D"],
1048
- "Nom": ["PDF"],
1049
- "TypeMIMEType": ["application"],
1050
- "TypeAuteur": ["Député", "Gouvernement", "Rapporteur"]
1051
- };
1052
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsImV4cG9ydHMiLCJBY3Rpb24iLCJDb2RlIiwiTGliZWxsZSIsIlNvcnRFbnVtIiwiVHlwZVBvc2l0aW9uIiwiQXZhbnRBQXByZXMiLCJEaXZpc2lvblR5cGUiLCJDb2RlRXRhdCIsIk5vbSIsIlR5cGVNSU1FVHlwZSIsIlR5cGVBdXRldXIiLCJDb252ZXJ0IiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NyZWF0ZUNsYXNzIiwia2V5IiwidmFsdWUiLCJ0b0FtZW5kZW1lbnRzIiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwiYW1lbmRlbWVudHNUb0pzb24iLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJ0b1RleHRlTGVnaXNsYXRpZiIsInRleHRlTGVnaXNsYXRpZlRvSnNvbiIsInRvQW1lbmRlbWVudFdyYXBwZXIiLCJhbWVuZGVtZW50V3JhcHBlclRvSnNvbiIsImludmFsaWRWYWx1ZSIsInR5cCIsInZhbCIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIkVycm9yIiwiY29uY2F0IiwianNvblRvSlNQcm9wcyIsImpzb25Ub0pTIiwibWFwIiwicHJvcHMiLCJmb3JFYWNoIiwicCIsImpzIiwianNUb0pTT05Qcm9wcyIsImpzVG9KU09OIiwidHJhbnNmb3JtIiwiZ2V0UHJvcHMiLCJ0cmFuc2Zvcm1QcmltaXRpdmUiLCJfdHlwZW9mIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIl9sZW4iLCJfa2V5IiwibyIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcmF3X3R5cGVzL2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IEFtZW5kZW1lbnRzLCBBbWVuZGVtZW50V3JhcHBlciwgQ29udmVydCwgVGV4dGVMZWdpc2xhdGlmIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgYW1lbmRlbWVudHMgPSBDb252ZXJ0LnRvQW1lbmRlbWVudHMoanNvbik7XG4vLyAgIGNvbnN0IGFtZW5kZW1lbnRXcmFwcGVyID0gQ29udmVydC50b0FtZW5kZW1lbnRXcmFwcGVyKGpzb24pO1xuLy8gICBjb25zdCB0ZXh0ZUxlZ2lzbGF0aWYgPSBDb252ZXJ0LnRvVGV4dGVMZWdpc2xhdGlmKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogVGV4dGVMZWdpc2xhdGlmW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIFwiQHhtbG5zOnhzaVwiOiAgICAgICBzdHJpbmc7XG4gICAgcmVmVGV4dGVMZWdpc2xhdGlmOiBzdHJpbmc7XG4gICAgYW1lbmRlbWVudHM6ICAgICAgICBBbWVuZGVtZW50c0NsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzQ2xhc3Mge1xuICAgIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50V3JhcHBlciB7XG4gIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50IHtcbiAgICBcIkB4bWxuc1wiOiAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdWlkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBjaHJvbm90YWc6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxlZ2lzbGF0dXJlOiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgaWRlbnRpZmljYXRpb246ICAgICAgICAgICAgICAgICAgIElkZW50aWZpY2F0aW9uO1xuICAgIGV4YW1lblJlZjogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdGV4dGVMZWdpc2xhdGlmUmVmOiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0cmlBbWVuZGVtZW50OiAgICAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGNhcmRpbmFsaXRlQW1kdE11bHRpcGxlczogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYW1lbmRlbWVudFBhcmVudFJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBzaWduYXRhaXJlczogICAgICAgICAgICAgICAgICAgICAgU2lnbmF0YWlyZXM7XG4gICAgcG9pbnRldXJGcmFnbWVudFRleHRlOiAgICAgICAgICAgIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZTtcbiAgICBjb3JwczogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ycHM7XG4gICAgY3ljbGVEZVZpZTogICAgICAgICAgICAgICAgICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgcmVwcmVzZW50YXRpb25zOiAgICAgICAgICAgICAgICAgIFJlcHJlc2VudGF0aW9ucyB8IG51bGw7XG4gICAgc2VhbmNlRGlzY3Vzc2lvblJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhcnRpY2xlOTk6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxvaVJlZmVyZW5jZTogICAgICAgICAgICAgICAgICAgICBMb2lSZWZlcmVuY2U7XG4gICAgZGlzY3Vzc2lvbkNvbW11bmU6ICAgICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgZGlzY3Vzc2lvbklkZW50aXF1ZTogICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWk6IEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpO1xufVxuXG5leHBvcnQgZW51bSBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSB7XG4gICAgQWNjb3JkID0gXCJBY2NvcmRcIixcbiAgICBTYW5zT2JqZXQgPSBcIlNhbnMgb2JqZXRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3Mge1xuICAgIFwiQHhtbG5zOnhzaVwiOiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiOiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3JwcyB7XG4gICAgY2FydG91Y2hlSW5mb3JtYXRpZj86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBjb250ZW51QXV0ZXVyPzogICAgICAgQ29udGVudUF1dGV1cjtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnVBdXRldXIge1xuICAgIGRpc3Bvc2l0aWY/OiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdmFudEFwcGVsPzogICAgICAgICAgICAgICBBdmFudEFwcGVsO1xuICAgIGV4cG9zZVNvbW1haXJlPzogICAgICAgICAgIHN0cmluZztcbiAgICBhbm5leGVFeHBvc2VTb21tYWlyZT86ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY/OiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF2YW50QXBwZWwge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGRpc3Bvc2l0aWY/OiAgIHN0cmluZztcbiAgICBkaXNwb3NpdGlmQW1kdENyZWRpdFBMRj86ICBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRjtcbiAgICBkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlI/OiBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEYge1xuICAgIGxpc3RlUHJvZ3JhbW1lcz86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGTGlzdGVQcm9ncmFtbWVzO1xuICAgIHNvbGRlQUU/OiAgICAgICAgIHN0cmluZztcbiAgICBzb2xkZUNQPzogICAgICAgICBzdHJpbmc7XG4gICAgY3BFZ2FsQWU6ICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGTGlzdGVQcm9ncmFtbWVzIHtcbiAgICBwcm9ncmFtbWU6IFB1cnBsZVByb2dyYW1tZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cnBsZVByb2dyYW1tZSB7XG4gICAgbGliZWxsZTogICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIHByb2dyYW1tZVJlZjogICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50OiBzdHJpbmc7XG4gICAgY3JlZGl0UGFpZW1lbnQ6ICAgICAgICAgc3RyaW5nO1xuICAgIGFjdGlvbjogICAgICAgICAgICAgICAgIEFjdGlvbjtcbiAgICBsaWduZXNDcmVkaXRzOiAgICAgICAgICBQdXJwbGVMaWduZXNDcmVkaXRzO1xufVxuXG5leHBvcnQgZW51bSBBY3Rpb24ge1xuICAgIENyw6lhdGlvbiA9IFwiY3LDqWF0aW9uXCIsXG4gICAgTW9kaWZpY2F0aW9uID0gXCJtb2RpZmljYXRpb25cIixcbiAgICBTdXBwcmVzc2lvbiA9IFwic3VwcHJlc3Npb25cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVMaWduZXNDcmVkaXRzIHtcbiAgICBcIkB4bWxuczp4c2lcIj86IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgIHN0cmluZztcbiAgICBsaWduZUNyZWRpdD86ICBMaWduZUNyZWRpdENsYXNzW10gfCBMaWduZUNyZWRpdENsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0Q2xhc3Mge1xuICAgIGlkOiAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudDogc3RyaW5nO1xuICAgIGNyZWRpdFBhaWVtZW50OiAgICAgICAgIHN0cmluZztcbiAgICBhY3Rpb246ICAgICAgICAgICAgICAgICBBY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSIHtcbiAgICBsaXN0ZVByb2dyYW1tZXM/OiBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJMaXN0ZVByb2dyYW1tZXM7XG4gICAgdG90YWxBRT86ICAgICAgICAgVG90YWw7XG4gICAgdG90YWxDUD86ICAgICAgICAgVG90YWw7XG4gICAgY3BFZ2FsQWU6ICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lcyB7XG4gICAgcHJvZ3JhbW1lOiBMaWduZUNyZWRpdEVsZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWduZUNyZWRpdExpZ25lc0NyZWRpdHMge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGxpZ25lQ3JlZGl0PzogIExpZ25lQ3JlZGl0RWxlbWVudFtdIHwgTGlnbmVDcmVkaXRFbGVtZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0RWxlbWVudCB7XG4gICAgbGliZWxsZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgcHJvZ3JhbW1lUmVmPzogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlOiBzdHJpbmc7XG4gICAgY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZTogICAgICAgICBzdHJpbmc7XG4gICAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudEFubnVsZTogICAgICAgICBzdHJpbmc7XG4gICAgY3JlZGl0UGFpZW1lbnRBbm51bGU6ICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgYWN0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBY3Rpb247XG4gICAgbGlnbmVzQ3JlZGl0cz86ICAgICAgICAgICAgICAgICAgICAgICBMaWduZUNyZWRpdExpZ25lc0NyZWRpdHM7XG4gICAgaWQ/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG90YWwge1xuICAgIHN1cHBsZW1lbnRhaXJlOiBzdHJpbmc7XG4gICAgYW5udWxlOiAgICAgICAgIHN0cmluZztcbiAgICBzb2xkZTogICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN5Y2xlRGVWaWUge1xuICAgIGRhdGVEZXBvdDogICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgRGF0ZTtcbiAgICBkYXRlUHVibGljYXRpb246ICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IERhdGU7XG4gICAgc291bWlzQXJ0aWNsZTQwOiAgICBzdHJpbmc7XG4gICAgZXRhdERlc1RyYWl0ZW1lbnRzOiBFdGF0REVTVHJhaXRlbWVudHM7XG4gICAgZGF0ZVNvcnQ6ICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBEYXRlO1xuICAgIHNvcnQ6ICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgU29ydEVudW07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXRhdERFU1RyYWl0ZW1lbnRzIHtcbiAgICBldGF0OiAgICAgRXRhdDtcbiAgICBzb3VzRXRhdDogU291c0V0YXQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXRhdCB7XG4gICAgY29kZTogICAgQ29kZTtcbiAgICBsaWJlbGxlOiBMaWJlbGxlO1xufVxuXG5leHBvcnQgZW51bSBDb2RlIHtcbiAgICBBQyA9IFwiQUNcIixcbiAgICBBdCA9IFwiQVRcIixcbiAgICBEaSA9IFwiRElcIixcbiAgICBFZmZhY8OpID0gXCJlZmZhY8OpXCIsXG4gICAgRXIgPSBcIkVSXCIsXG4gICAgRXQgPSBcIkVUXCIsXG4gICAgSVIgPSBcIklSXCIsXG4gICAgSXJyMTI3ID0gXCJJUlIxMjdcIixcbiAgICBJcnIyMCA9IFwiSVJSMjBcIixcbiAgICBJcnIzNyA9IFwiSVJSMzdcIixcbiAgICBJcnIzOCA9IFwiSVJSMzhcIixcbiAgICBJcnI0MSA9IFwiSVJSNDFcIixcbiAgICBJcnI0MiA9IFwiSVJSNDJcIixcbiAgICBJcnI0NSA9IFwiSVJSNDVcIixcbiAgICBJcnI0OCA9IFwiSVJSNDhcIixcbiAgICBJcnI1MyA9IFwiSVJSNTNcIixcbiAgICBJcnJhaSA9IFwiSVJSQUlcIixcbiAgICBJcnJhaWYgPSBcIklSUkFJRlwiLFxuICAgIElycmQgPSBcIklSUkRcIixcbiAgICBJcnJoYyA9IFwiSVJSSENcIixcbiAgICBJcnJoZCA9IFwiSVJSSERcIixcbiAgICBJcnJzYSA9IFwiSVJSU0FcIixcbiAgICBSID0gXCJSXCIsXG4gICAgUnQgPSBcIlJUXCIsXG4gICAgVCA9IFwiVFwiLFxufVxuXG5leHBvcnQgZW51bSBMaWJlbGxlIHtcbiAgICBBRGlzY3V0ZXIgPSBcIkEgZGlzY3V0ZXJcIixcbiAgICBBRMOpcG9zZXIgPSBcIkEgZMOpcG9zZXJcIixcbiAgICBEaXNjdXTDqSA9IFwiRGlzY3V0w6lcIixcbiAgICBFZmZhY8OpID0gXCJlZmZhY8OpXCIsXG4gICAgRW5SZWNldmFiaWxpdMOpID0gXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gICAgRW5UcmFpdGVtZW50ID0gXCJFbiB0cmFpdGVtZW50XCIsXG4gICAgSXJyZWNldmFibGUgPSBcIklycmVjZXZhYmxlXCIsXG4gICAgSXJyZWNldmFibGU0MCA9IFwiSXJyZWNldmFibGUgNDBcIixcbiAgICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291c0V0YXQge1xuICAgIGNvZGU/OiAgICAgICAgIENvZGU7XG4gICAgbGliZWxsZT86ICAgICAgU29ydEVudW07XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFNvcnRFbnVtIHtcbiAgICBBZG9wdMOpID0gXCJBZG9wdMOpXCIsXG4gICAgQXV0cmVJcnJlY2V2YWJpbGl0w6kgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICAgIEF1dHJlSXJyZWNldmFiaWxpdMOpNDAgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqSA0MFwiLFxuICAgIEF1dHJlc0lyckxPTEYgPSBcIkF1dHJlcyBpcnIgTE9MRlwiLFxuICAgIEF1dHJlc0lyckxPTEZTUyA9IFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICBDYXZhbGllcjQ1ID0gXCJDYXZhbGllciAoNDUpXCIsXG4gICAgQ2F2YWxpZXJCdWRnw6l0YWlyZSA9IFwiQ2F2YWxpZXIgYnVkZ8OpdGFpcmVcIixcbiAgICBDYXZhbGllclNvY2lhbCA9IFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gICAgQ2hhbXBEZUxIYWJpbGl0YXRpb24zOCA9IFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICAgIENoYXJnZSA9IFwiQ2hhcmdlXCIsXG4gICAgQ21wNDUgPSBcIkNNUCAoNDUpXCIsXG4gICAgQ3LDqWRpdHMgPSBcIkNyw6lkaXRzXCIsXG4gICAgRGlzcG9zaXRpb25Sw6lnbGVtZW50YWlyZTM3ID0gXCJEaXNwb3NpdGlvbiByw6lnbGVtZW50YWlyZSAoMzcpXCIsXG4gICAgRG9tYWluZURlTGFMb2k0MSA9IFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICAgIERvbWFpbmVMb2lPcmdhbmlxdWUxMjcgPSBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICAgIERvdWJsb24gPSBcIkRvdWJsb25cIixcbiAgICBFbnRvbm5vaXI0NSA9IFwiRW50b25ub2lyICg0NSlcIixcbiAgICBHYWdlID0gXCJHYWdlXCIsXG4gICAgSG9yc0NoYW1wID0gXCJIb3JzIGNoYW1wXCIsXG4gICAgSG9yc0TDqWxhaXMgPSBcIkhvcnMtZMOpbGFpc1wiLFxuICAgIEluam9uY3Rpb24yMCA9IFwiSW5qb25jdGlvbiAoMjApXCIsXG4gICAgSXJyRW5QcmVtacOocmVQYXJ0aWUgPSBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgSXJyRW5TZWNvbmRlUGFydGllID0gXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgICBMb2xmID0gXCJMT0xGXCIsXG4gICAgTG9sZnNzID0gXCJMT0xGU1NcIixcbiAgICBOb25Tb3V0ZW51ID0gXCJOb24gc291dGVudVwiLFxuICAgIE9yZHJlRHVKb3VyNDggPSBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgIFIgPSBcIlJcIixcbiAgICBSYXRpZmljYXRpb25UcmFpdMOpNTMgPSBcIlJhdGlmaWNhdGlvbiB0cmFpdMOpICg1MylcIixcbiAgICBSZWpldMOpID0gXCJSZWpldMOpXCIsXG4gICAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxuICAgIFJldGlyw6lBcHLDqHNQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgICBSZXRpcsOpQXZhbnRQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgIFNhdGlzZmFpdE91SW5vcMOpcmFudDQyID0gXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gICAgU291c0FtZW5kZW1lbnQ5OCA9IFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICBUb21iw6kgPSBcIlRvbWLDqVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc2N1c3Npb24ge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGlkRGlzY3Vzc2lvbj86IHN0cmluZztcbiAgICB0eXBlUG9zaXRpb24/OiBUeXBlUG9zaXRpb247XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVQb3NpdGlvbiB7XG4gICAgRGVybmllciA9IFwiRGVybmllclwiLFxuICAgIE1pbGlldSA9IFwiTWlsaWV1XCIsXG4gICAgUHJlbWllciA9IFwiUHJlbWllclwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aWZpY2F0aW9uIHtcbiAgICBudW1lcm9Mb25nOiAgICAgICAgICBzdHJpbmc7XG4gICAgbnVtZXJvT3JkcmVEZXBvdDogICAgc3RyaW5nO1xuICAgIHByZWZpeGVPcmdhbmVFeGFtZW46IHN0cmluZztcbiAgICBudW1lcm9SZWN0OiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9pUmVmZXJlbmNlIHtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgIHN0cmluZztcbiAgICBjb2RlTG9pPzogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBudWxsIHwgc3RyaW5nO1xuICAgIGRpdmlzaW9uQ29kZUxvaT86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IG51bGwgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRldXJGcmFnbWVudFRleHRlIHtcbiAgICBwYXJ0aWVBbWVuZGFibGVSZWY6ICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgZGl2aXNpb24/OiAgICAgICAgICAgRGl2aXNpb247XG4gICAgYW1lbmRlbWVudFN0YW5kYXJkPzogQW1lbmRlbWVudFN0YW5kYXJkO1xuICAgIG1pc3Npb25WaXNlZT86ICAgICAgIE1pc3Npb25WaXNlZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50U3RhbmRhcmQge1xuICAgIGFsaW5lYTogQWxpbmVhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsaW5lYSB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgICAgc3RyaW5nO1xuICAgIGF2YW50X0FfQXByZXM/OiAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgbnVsbCB8IHN0cmluZztcbiAgICBudW1lcm8/OiAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhbGluZWFEZXNpZ25hdGlvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXZpc2lvbiB7XG4gICAgdGl0cmU6ICAgICAgICAgICAgICAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIGFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZTogbnVsbCB8IHN0cmluZztcbiAgICBhcnRpY2xlRGVzaWduYXRpb246ICAgICAgIG51bGwgfCBzdHJpbmc7XG4gICAgdHlwZTogICAgICAgICAgICAgICAgICAgICBEaXZpc2lvblR5cGU7XG4gICAgYXZhbnRfQV9BcHJlczogICAgICAgICAgICBBdmFudEFBcHJlcztcbiAgICBkaXZpc2lvblJhdHRhY2hlZTogICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhcnRpY2xlQWRkaXRpb25uZWw6ICAgICAgIHN0cmluZztcbiAgICBjaGFwaXRyZUFkZGl0aW9ubmVsOiAgICAgIHN0cmluZztcbiAgICB1cmxEaXZpc2lvblRleHRlVmlzZTogICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQXZhbnRBQXByZXMge1xuICAgIEEgPSBcIkFcIixcbiAgICBBcHLDqHMgPSBcIkFwcsOoc1wiLFxuICAgIEF2YW50ID0gXCJBdmFudFwiLFxufVxuXG5leHBvcnQgZW51bSBEaXZpc2lvblR5cGUge1xuICAgIEFubmV4ZSA9IFwiQU5ORVhFXCIsXG4gICAgQXJ0aWNsZSA9IFwiQVJUSUNMRVwiLFxuICAgIENoYXBpdHJlID0gXCJDSEFQSVRSRVwiLFxuICAgIFRpdHJlID0gXCJUSVRSRVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1pc3Npb25WaXNlZSB7XG4gICAgY29kZUV0YXQ6ICAgICAgICAgIENvZGVFdGF0O1xuICAgIGNvZGVNaXNzaW9uTWluZWZpOiBzdHJpbmc7XG4gICAgbGliZWxsZU1pc3Npb246ICAgIHN0cmluZztcbiAgICBtaXNzaW9uUmVmOiAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBDb2RlRXRhdCB7XG4gICAgQiA9IFwiQlwiLFxuICAgIEMgPSBcIkNcIixcbiAgICBEID0gXCJEXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVwcmVzZW50YXRpb25zIHtcbiAgICByZXByZXNlbnRhdGlvbjogUmVwcmVzZW50YXRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVwcmVzZW50YXRpb24ge1xuICAgIG5vbTogICAgICAgICAgICAgICAgICAgICBOb207XG4gICAgdHlwZU1pbWU6ICAgICAgICAgICAgICAgIFR5cGVNSU1FO1xuICAgIHN0YXR1dFJlcHJlc2VudGF0aW9uOiAgICBTdGF0dXRSZXByZXNlbnRhdGlvbjtcbiAgICByZXBTb3VyY2U6ICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzO1xuICAgIG9mZnNldDogICAgICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgY29udGVudTogICAgICAgICAgICAgICAgIENvbnRlbnU7XG4gICAgZGF0ZURpc3BvUmVwcmVzZW50YXRpb246IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW51IHtcbiAgICBkb2N1bWVudFVSSTogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBOb20ge1xuICAgIFBERiA9IFwiUERGXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdHV0UmVwcmVzZW50YXRpb24ge1xuICAgIHZlcmJhdGltOiAgICAgICBzdHJpbmc7XG4gICAgY2Fub25pcXVlOiAgICAgIHN0cmluZztcbiAgICBvZmZpY2llbGxlOiAgICAgc3RyaW5nO1xuICAgIHRyYW5zY3JpcHRpb246ICBzdHJpbmc7XG4gICAgZW5yZWdpc3RyZW1lbnQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeXBlTUlNRSB7XG4gICAgdHlwZTogICAgVHlwZU1JTUVUeXBlO1xuICAgIHN1YlR5cGU6IE5vbTtcbn1cblxuZXhwb3J0IGVudW0gVHlwZU1JTUVUeXBlIHtcbiAgICBBcHBsaWNhdGlvbiA9IFwiYXBwbGljYXRpb25cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduYXRhaXJlcyB7XG4gICAgYXV0ZXVyOiAgICAgICAgQXV0ZXVyO1xuICAgIGNvc2lnbmF0YWlyZXM6IENvc2lnbmF0YWlyZXM7XG4gICAgc3VmZml4ZTogICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGxpYmVsbGU6ICAgICAgIG51bGwgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0ZXVyIHtcbiAgICB0eXBlQXV0ZXVyOiAgICAgICAgICAgICAgICBUeXBlQXV0ZXVyO1xuICAgIGdvdXZlcm5lbWVudFJlZjogICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhY3RldXJSZWY6ICAgICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgZ3JvdXBlUG9saXRpcXVlUmVmOiAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWY6IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gVHlwZUF1dGV1ciB7XG4gICAgRMOpcHV0w6kgPSBcIkTDqXB1dMOpXCIsXG4gICAgR291dmVybmVtZW50ID0gXCJHb3V2ZXJuZW1lbnRcIixcbiAgICBSYXBwb3J0ZXVyID0gXCJSYXBwb3J0ZXVyXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29zaWduYXRhaXJlcyB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgYWN0ZXVyUmVmPzogICAgc3RyaW5nW10gfCBzdHJpbmc7XG59XG5cbi8vIENvbnZlcnRzIEpTT04gc3RyaW5ncyB0by9mcm9tIHlvdXIgdHlwZXNcbi8vIGFuZCBhc3NlcnRzIHRoZSByZXN1bHRzIG9mIEpTT04ucGFyc2UgYXQgcnVudGltZVxuZXhwb3J0IGNsYXNzIENvbnZlcnQge1xuICAgIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50cyhqc29uOiBzdHJpbmcpOiBBbWVuZGVtZW50cyB7XG4gICAgICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50c1wiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50c1RvSnNvbih2YWx1ZTogQW1lbmRlbWVudHMpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudHNcIikpLCBudWxsLCAyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvVGV4dGVMZWdpc2xhdGlmKGpzb246IHN0cmluZyk6IFRleHRlTGVnaXNsYXRpZiB7XG4gICAgICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdGV4dGVMZWdpc2xhdGlmVG9Kc29uKHZhbHVlOiBUZXh0ZUxlZ2lzbGF0aWYpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSwgbnVsbCwgMik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyB0b0FtZW5kZW1lbnRXcmFwcGVyKGpzb246IHN0cmluZyk6IEFtZW5kZW1lbnRXcmFwcGVyIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFtZW5kZW1lbnRXcmFwcGVyXCIpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFtZW5kZW1lbnRXcmFwcGVyVG9Kc29uKHZhbHVlOiBBbWVuZGVtZW50V3JhcHBlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBbWVuZGVtZW50V3JhcHBlclwiKSksIG51bGwsIDIpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gaW52YWxpZFZhbHVlKHR5cDogYW55LCB2YWw6IGFueSwga2V5OiBhbnkgPSAnJyk6IG5ldmVyIHtcbiAgICBpZiAoa2V5KSB7XG4gICAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkIHZhbHVlIGZvciBrZXkgXCIke2tleX1cIi4gRXhwZWN0ZWQgdHlwZSAke0pTT04uc3RyaW5naWZ5KHR5cCl9IGJ1dCBnb3QgJHtKU09OLnN0cmluZ2lmeSh2YWwpfWApO1xuICAgIH1cbiAgICB0aHJvdyBFcnJvcihgSW52YWxpZCB2YWx1ZSAke0pTT04uc3RyaW5naWZ5KHZhbCl9IGZvciB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX1gLCApO1xufVxuXG5mdW5jdGlvbiBqc29uVG9KU1Byb3BzKHR5cDogYW55KTogYW55IHtcbiAgICBpZiAodHlwLmpzb25Ub0pTID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgbWFwOiBhbnkgPSB7fTtcbiAgICAgICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gbWFwW3AuanNvbl0gPSB7IGtleTogcC5qcywgdHlwOiBwLnR5cCB9KTtcbiAgICAgICAgdHlwLmpzb25Ub0pTID0gbWFwO1xuICAgIH1cbiAgICByZXR1cm4gdHlwLmpzb25Ub0pTO1xufVxuXG5mdW5jdGlvbiBqc1RvSlNPTlByb3BzKHR5cDogYW55KTogYW55IHtcbiAgICBpZiAodHlwLmpzVG9KU09OID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgbWFwOiBhbnkgPSB7fTtcbiAgICAgICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gbWFwW3AuanNdID0geyBrZXk6IHAuanNvbiwgdHlwOiBwLnR5cCB9KTtcbiAgICAgICAgdHlwLmpzVG9KU09OID0gbWFwO1xuICAgIH1cbiAgICByZXR1cm4gdHlwLmpzVG9KU09OO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm0odmFsOiBhbnksIHR5cDogYW55LCBnZXRQcm9wczogYW55LCBrZXk6IGFueSA9ICcnKTogYW55IHtcbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwOiBzdHJpbmcsIHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHR5cGVvZiB0eXAgPT09IHR5cGVvZiB2YWwpIHJldHVybiB2YWw7XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtVW5pb24odHlwczogYW55W10sIHZhbDogYW55KTogYW55IHtcbiAgICAgICAgLy8gdmFsIG11c3QgdmFsaWRhdGUgYWdhaW5zdCBvbmUgdHlwIGluIHR5cHNcbiAgICAgICAgY29uc3QgbCA9IHR5cHMubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgdHlwID0gdHlwc1tpXTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwgZ2V0UHJvcHMpO1xuICAgICAgICAgICAgfSBjYXRjaCAoXykge31cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cHMsIHZhbCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtRW51bShjYXNlczogc3RyaW5nW10sIHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKGNhc2VzLmluZGV4T2YodmFsKSAhPT0gLTEpIHJldHVybiB2YWw7XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoY2FzZXMsIHZhbCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtQXJyYXkodHlwOiBhbnksIHZhbDogYW55KTogYW55IHtcbiAgICAgICAgLy8gdmFsIG11c3QgYmUgYW4gYXJyYXkgd2l0aCBubyBpbnZhbGlkIGVsZW1lbnRzXG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWwpKSByZXR1cm4gaW52YWxpZFZhbHVlKFwiYXJyYXlcIiwgdmFsKTtcbiAgICAgICAgcmV0dXJuIHZhbC5tYXAoZWwgPT4gdHJhbnNmb3JtKGVsLCB0eXAsIGdldFByb3BzKSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtRGF0ZSh2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSh2YWwpO1xuICAgICAgICBpZiAoaXNOYU4oZC52YWx1ZU9mKCkpKSB7XG4gICAgICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKFwiRGF0ZVwiLCB2YWwpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybU9iamVjdChwcm9wczogeyBbazogc3RyaW5nXTogYW55IH0sIGFkZGl0aW9uYWw6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKFwib2JqZWN0XCIsIHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVzdWx0OiBhbnkgPSB7fTtcbiAgICAgICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHByb3AgPSBwcm9wc1trZXldO1xuICAgICAgICAgICAgY29uc3QgdiA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsIGtleSkgPyB2YWxba2V5XSA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBwcm9wLmtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWwpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHByb3BzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0W2tleV0gPSB0cmFuc2Zvcm0odmFsW2tleV0sIGFkZGl0aW9uYWwsIGdldFByb3BzLCBrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBpZiAodHlwID09PSBcImFueVwiKSByZXR1cm4gdmFsO1xuICAgIGlmICh0eXAgPT09IG51bGwpIHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCk7XG4gICAgfVxuICAgIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB3aGlsZSAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIiAmJiB0eXAucmVmICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdHlwID0gdHlwZU1hcFt0eXAucmVmXTtcbiAgICB9XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpO1xuICAgIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgICAgIHJldHVybiB0eXAuaGFzT3duUHJvcGVydHkoXCJ1bmlvbk1lbWJlcnNcIikgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIikgICAgPyB0cmFuc2Zvcm1BcnJheSh0eXAuYXJyYXlJdGVtcywgdmFsKVxuICAgICAgICAgICAgOiB0eXAuaGFzT3duUHJvcGVydHkoXCJwcm9wc1wiKSAgICAgICAgID8gdHJhbnNmb3JtT2JqZWN0KGdldFByb3BzKHR5cCksIHR5cC5hZGRpdGlvbmFsLCB2YWwpXG4gICAgICAgICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbCk7XG4gICAgfVxuICAgIC8vIE51bWJlcnMgY2FuIGJlIHBhcnNlZCBieSBEYXRlIGJ1dCBzaG91bGRuJ3QgYmUuXG4gICAgaWYgKHR5cCA9PT0gRGF0ZSAmJiB0eXBlb2YgdmFsICE9PSBcIm51bWJlclwiKSByZXR1cm4gdHJhbnNmb3JtRGF0ZSh2YWwpO1xuICAgIHJldHVybiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwLCB2YWwpO1xufVxuXG5mdW5jdGlvbiBjYXN0PFQ+KHZhbDogYW55LCB0eXA6IGFueSk6IFQge1xuICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzb25Ub0pTUHJvcHMpO1xufVxuXG5mdW5jdGlvbiB1bmNhc3Q8VD4odmFsOiBULCB0eXA6IGFueSk6IGFueSB7XG4gICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNUb0pTT05Qcm9wcyk7XG59XG5cbmZ1bmN0aW9uIGEodHlwOiBhbnkpIHtcbiAgICByZXR1cm4geyBhcnJheUl0ZW1zOiB0eXAgfTtcbn1cblxuZnVuY3Rpb24gdSguLi50eXBzOiBhbnlbXSkge1xuICAgIHJldHVybiB7IHVuaW9uTWVtYmVyczogdHlwcyB9O1xufVxuXG5mdW5jdGlvbiBvKHByb3BzOiBhbnlbXSwgYWRkaXRpb25hbDogYW55KSB7XG4gICAgcmV0dXJuIHsgcHJvcHMsIGFkZGl0aW9uYWwgfTtcbn1cblxuLy8gZnVuY3Rpb24gbShhZGRpdGlvbmFsOiBhbnkpIHtcbi8vICAgICByZXR1cm4geyBwcm9wczogW10sIGFkZGl0aW9uYWwgfTtcbi8vIH1cblxuZnVuY3Rpb24gcihuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4geyByZWY6IG5hbWUgfTtcbn1cblxuY29uc3QgdHlwZU1hcDogYW55ID0ge1xuICAgIFwiQW1lbmRlbWVudHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJ0ZXh0ZXNMZWdpc2xhdGlmc1wiLCBqczogXCJ0ZXh0ZXNMZWdpc2xhdGlmc1wiLCB0eXA6IGEocihcIlRleHRlTGVnaXNsYXRpZlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJUZXh0ZUxlZ2lzbGF0aWZcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwganM6IFwicmVmVGV4dGVMZWdpc2xhdGlmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudHNcIiwganM6IFwiYW1lbmRlbWVudHNcIiwgdHlwOiByKFwiQW1lbmRlbWVudHNDbGFzc1wiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRzQ2xhc3NcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50XCIsIGpzOiBcImFtZW5kZW1lbnRcIiwgdHlwOiBhKHIoXCJBbWVuZGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRXcmFwcGVyXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogcihcIkFtZW5kZW1lbnRcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zXCIsIGpzOiBcIkB4bWxuc1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjaHJvbm90YWdcIiwganM6IFwiY2hyb25vdGFnXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJpZGVudGlmaWNhdGlvblwiLCBqczogXCJpZGVudGlmaWNhdGlvblwiLCB0eXA6IHIoXCJJZGVudGlmaWNhdGlvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZXhhbWVuUmVmXCIsIGpzOiBcImV4YW1lblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRleHRlTGVnaXNsYXRpZlJlZlwiLCBqczogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ0cmlBbWVuZGVtZW50XCIsIGpzOiBcInRyaUFtZW5kZW1lbnRcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXNcIiwganM6IFwiY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLCBqczogXCJhbWVuZGVtZW50UGFyZW50UmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwic2lnbmF0YWlyZXNcIiwganM6IFwic2lnbmF0YWlyZXNcIiwgdHlwOiByKFwiU2lnbmF0YWlyZXNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiLCBqczogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIiwgdHlwOiByKFwiUG9pbnRldXJGcmFnbWVudFRleHRlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb3Jwc1wiLCBqczogXCJjb3Jwc1wiLCB0eXA6IHIoXCJDb3Jwc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInJlcHJlc2VudGF0aW9uc1wiLCBqczogXCJyZXByZXNlbnRhdGlvbnNcIiwgdHlwOiB1KHIoXCJSZXByZXNlbnRhdGlvbnNcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsIGpzOiBcInNlYW5jZURpc2N1c3Npb25SZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhcnRpY2xlOTlcIiwganM6IFwiYXJ0aWNsZTk5XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibG9pUmVmZXJlbmNlXCIsIGpzOiBcImxvaVJlZmVyZW5jZVwiLCB0eXA6IHIoXCJMb2lSZWZlcmVuY2VcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc2N1c3Npb25Db21tdW5lXCIsIGpzOiBcImRpc2N1c3Npb25Db21tdW5lXCIsIHR5cDogcihcIkRpc2N1c3Npb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc2N1c3Npb25JZGVudGlxdWVcIiwganM6IFwiZGlzY3Vzc2lvbklkZW50aXF1ZVwiLCB0eXA6IHIoXCJEaXNjdXNzaW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiLCBqczogXCJhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiLCB0eXA6IHIoXCJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNvcnBzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiY2FydG91Y2hlSW5mb3JtYXRpZlwiLCBqczogXCJjYXJ0b3VjaGVJbmZvcm1hdGlmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJjb250ZW51QXV0ZXVyXCIsIGpzOiBcImNvbnRlbnVBdXRldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvbnRlbnVBdXRldXJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ29udGVudUF1dGV1clwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXZhbnRBcHBlbFwiLCBqczogXCJhdmFudEFwcGVsXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBdmFudEFwcGVsXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZXhwb3NlU29tbWFpcmVcIiwganM6IFwiZXhwb3NlU29tbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFubmV4ZUV4cG9zZVNvbW1haXJlXCIsIGpzOiBcImFubmV4ZUV4cG9zZVNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiLCBqczogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIiwganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQXZhbnRBcHBlbFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIiwganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGlzdGVQcm9ncmFtbWVzXCIsIGpzOiBcImxpc3RlUHJvZ3JhbW1lc1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXNcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJzb2xkZUFFXCIsIGpzOiBcInNvbGRlQUVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInNvbGRlQ1BcIiwganM6IFwic29sZGVDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY3BFZ2FsQWVcIiwganM6IFwiY3BFZ2FsQWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVcIiwganM6IFwicHJvZ3JhbW1lXCIsIHR5cDogYShyKFwiUHVycGxlUHJvZ3JhbW1lXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlB1cnBsZVByb2dyYW1tZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInByb2dyYW1tZVJlZlwiLCBqczogXCJwcm9ncmFtbWVSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudFwiLCBqczogXCJjcmVkaXRQYWllbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWduZXNDcmVkaXRzXCIsIGpzOiBcImxpZ25lc0NyZWRpdHNcIiwgdHlwOiByKFwiUHVycGxlTGlnbmVzQ3JlZGl0c1wiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlB1cnBsZUxpZ25lc0NyZWRpdHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWduZUNyZWRpdFwiLCBqczogXCJsaWduZUNyZWRpdFwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIkxpZ25lQ3JlZGl0Q2xhc3NcIikpLCByKFwiTGlnbmVDcmVkaXRDbGFzc1wiKSkpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlnbmVDcmVkaXRDbGFzc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImlkXCIsIGpzOiBcImlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLCBqczogXCJsaXN0ZVByb2dyYW1tZXNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lc1wiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcInRvdGFsQUVcIiwganM6IFwidG90YWxBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJ0b3RhbENQXCIsIGpzOiBcInRvdGFsQ1BcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlRvdGFsXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiY3BFZ2FsQWVcIiwganM6IFwiY3BFZ2FsQWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lXCIsIGpzOiBcInByb2dyYW1tZVwiLCB0eXA6IGEocihcIkxpZ25lQ3JlZGl0RWxlbWVudFwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMaWduZUNyZWRpdExpZ25lc0NyZWRpdHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWduZUNyZWRpdFwiLCBqczogXCJsaWduZUNyZWRpdFwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIkxpZ25lQ3JlZGl0RWxlbWVudFwiKSksIHIoXCJMaWduZUNyZWRpdEVsZW1lbnRcIikpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZ25lQ3JlZGl0RWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInByb2dyYW1tZVJlZlwiLCBqczogXCJwcm9ncmFtbWVSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlXCIsIGpzOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlXCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCBqczogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWduZXNDcmVkaXRzXCIsIGpzOiBcImxpZ25lc0NyZWRpdHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkxpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0c1wiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImlkXCIsIGpzOiBcImlkXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiVG90YWxcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJzdXBwbGVtZW50YWlyZVwiLCBqczogXCJzdXBwbGVtZW50YWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFubnVsZVwiLCBqczogXCJhbm51bGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJzb2xkZVwiLCBqczogXCJzb2xkZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDeWNsZURlVmllXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZGF0ZURlcG90XCIsIGpzOiBcImRhdGVEZXBvdFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgRGF0ZSkgfSxcbiAgICAgICAgeyBqc29uOiBcImRhdGVQdWJsaWNhdGlvblwiLCBqczogXCJkYXRlUHVibGljYXRpb25cIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIERhdGUpIH0sXG4gICAgICAgIHsganNvbjogXCJzb3VtaXNBcnRpY2xlNDBcIiwganM6IFwic291bWlzQXJ0aWNsZTQwXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiZXRhdERlc1RyYWl0ZW1lbnRzXCIsIGpzOiBcImV0YXREZXNUcmFpdGVtZW50c1wiLCB0eXA6IHIoXCJFdGF0REVTVHJhaXRlbWVudHNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRhdGVTb3J0XCIsIGpzOiBcImRhdGVTb3J0XCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBEYXRlKSB9LFxuICAgICAgICB7IGpzb246IFwic29ydFwiLCBqczogXCJzb3J0XCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCByKFwiU29ydEVudW1cIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRXRhdERFU1RyYWl0ZW1lbnRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZXRhdFwiLCBqczogXCJldGF0XCIsIHR5cDogcihcIkV0YXRcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInNvdXNFdGF0XCIsIGpzOiBcInNvdXNFdGF0XCIsIHR5cDogcihcIlNvdXNFdGF0XCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRXRhdFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IHIoXCJDb2RlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiByKFwiTGliZWxsZVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlNvdXNFdGF0XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb2RlXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3J0RW51bVwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNjdXNzaW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiaWREaXNjdXNzaW9uXCIsIGpzOiBcImlkRGlzY3Vzc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHlwZVBvc2l0aW9uXCIsIGpzOiBcInR5cGVQb3NpdGlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVHlwZVBvc2l0aW9uXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIklkZW50aWZpY2F0aW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibnVtZXJvTG9uZ1wiLCBqczogXCJudW1lcm9Mb25nXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibnVtZXJvT3JkcmVEZXBvdFwiLCBqczogXCJudW1lcm9PcmRyZURlcG90XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicHJlZml4ZU9yZ2FuZUV4YW1lblwiLCBqczogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibnVtZXJvUmVjdFwiLCBqczogXCJudW1lcm9SZWN0XCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxvaVJlZmVyZW5jZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvZGVMb2lcIiwganM6IFwiY29kZUxvaVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZGl2aXNpb25Db2RlTG9pXCIsIGpzOiBcImRpdmlzaW9uQ29kZUxvaVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIG51bGwsIFwiXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBhcnRpZUFtZW5kYWJsZVJlZlwiLCBqczogXCJwYXJ0aWVBbWVuZGFibGVSZWZcIiwgdHlwOiByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXZpc2lvblwiLCBqczogXCJkaXZpc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGl2aXNpb25cIikpIH0sXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50U3RhbmRhcmRcIiwganM6IFwiYW1lbmRlbWVudFN0YW5kYXJkXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBbWVuZGVtZW50U3RhbmRhcmRcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJtaXNzaW9uVmlzZWVcIiwganM6IFwibWlzc2lvblZpc2VlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJNaXNzaW9uVmlzZWVcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFN0YW5kYXJkXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiYWxpbmVhXCIsIGpzOiBcImFsaW5lYVwiLCB0eXA6IHIoXCJBbGluZWFcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbGluZWFcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdmFudF9BX0FwcmVzXCIsIGpzOiBcImF2YW50X0FfQXByZXNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBudWxsLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb1wiLCBqczogXCJudW1lcm9cIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImFsaW5lYURlc2lnbmF0aW9uXCIsIGpzOiBcImFsaW5lYURlc2lnbmF0aW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGl2aXNpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJ0aXRyZVwiLCBqczogXCJ0aXRyZVwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZVwiLCBqczogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25cIiwganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHlwZVwiLCBqczogXCJ0eXBlXCIsIHR5cDogcihcIkRpdmlzaW9uVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXZhbnRfQV9BcHJlc1wiLCBqczogXCJhdmFudF9BX0FwcmVzXCIsIHR5cDogcihcIkF2YW50QUFwcmVzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXZpc2lvblJhdHRhY2hlZVwiLCBqczogXCJkaXZpc2lvblJhdHRhY2hlZVwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFydGljbGVBZGRpdGlvbm5lbFwiLCBqczogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjaGFwaXRyZUFkZGl0aW9ubmVsXCIsIGpzOiBcImNoYXBpdHJlQWRkaXRpb25uZWxcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLCBqczogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJNaXNzaW9uVmlzZWVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlRXRhdFwiLCBqczogXCJjb2RlRXRhdFwiLCB0eXA6IHIoXCJDb2RlRXRhdFwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29kZU1pc3Npb25NaW5lZmlcIiwganM6IFwiY29kZU1pc3Npb25NaW5lZmlcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlTWlzc2lvblwiLCBqczogXCJsaWJlbGxlTWlzc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm1pc3Npb25SZWZcIiwganM6IFwibWlzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJSZXByZXNlbnRhdGlvbnNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJyZXByZXNlbnRhdGlvblwiLCBqczogXCJyZXByZXNlbnRhdGlvblwiLCB0eXA6IHIoXCJSZXByZXNlbnRhdGlvblwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlJlcHJlc2VudGF0aW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHIoXCJOb21cIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVNaW1lXCIsIGpzOiBcInR5cGVNaW1lXCIsIHR5cDogcihcIlR5cGVNSU1FXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzdGF0dXRSZXByZXNlbnRhdGlvblwiLCBqczogXCJzdGF0dXRSZXByZXNlbnRhdGlvblwiLCB0eXA6IHIoXCJTdGF0dXRSZXByZXNlbnRhdGlvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwicmVwU291cmNlXCIsIGpzOiBcInJlcFNvdXJjZVwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIm9mZnNldFwiLCBqczogXCJvZmZzZXRcIiwgdHlwOiByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb250ZW51XCIsIGpzOiBcImNvbnRlbnVcIiwgdHlwOiByKFwiQ29udGVudVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZURpc3BvUmVwcmVzZW50YXRpb25cIiwganM6IFwiZGF0ZURpc3BvUmVwcmVzZW50YXRpb25cIiwgdHlwOiByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ29udGVudVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImRvY3VtZW50VVJJXCIsIGpzOiBcImRvY3VtZW50VVJJXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlN0YXR1dFJlcHJlc2VudGF0aW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidmVyYmF0aW1cIiwganM6IFwidmVyYmF0aW1cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjYW5vbmlxdWVcIiwganM6IFwiY2Fub25pcXVlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwib2ZmaWNpZWxsZVwiLCBqczogXCJvZmZpY2llbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidHJhbnNjcmlwdGlvblwiLCBqczogXCJ0cmFuc2NyaXB0aW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiZW5yZWdpc3RyZW1lbnRcIiwganM6IFwiZW5yZWdpc3RyZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiVHlwZU1JTUVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiVHlwZU1JTUVUeXBlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzdWJUeXBlXCIsIGpzOiBcInN1YlR5cGVcIiwgdHlwOiByKFwiTm9tXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiU2lnbmF0YWlyZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhdXRldXJcIiwganM6IFwiYXV0ZXVyXCIsIHR5cDogcihcIkF1dGV1clwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29zaWduYXRhaXJlc1wiLCBqczogXCJjb3NpZ25hdGFpcmVzXCIsIHR5cDogcihcIkNvc2lnbmF0YWlyZXNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInN1ZmZpeGVcIiwganM6IFwic3VmZml4ZVwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBdXRldXJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJ0eXBlQXV0ZXVyXCIsIGpzOiBcInR5cGVBdXRldXJcIiwgdHlwOiByKFwiVHlwZUF1dGV1clwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZ291dmVybmVtZW50UmVmXCIsIGpzOiBcImdvdXZlcm5lbWVudFJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJncm91cGVQb2xpdGlxdWVSZWZcIiwganM6IFwiZ3JvdXBlUG9saXRpcXVlUmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZlwiLCBqczogXCJhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNvc2lnbmF0YWlyZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShcIlwiKSwgXCJcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIjogW1xuICAgICAgICBcIkFjY29yZFwiLFxuICAgICAgICBcIlNhbnMgb2JqZXRcIixcbiAgICBdLFxuICAgIFwiQWN0aW9uXCI6IFtcbiAgICAgICAgXCJjcsOpYXRpb25cIixcbiAgICAgICAgXCJtb2RpZmljYXRpb25cIixcbiAgICAgICAgXCJzdXBwcmVzc2lvblwiLFxuICAgIF0sXG4gICAgXCJDb2RlXCI6IFtcbiAgICAgICAgXCJBQ1wiLFxuICAgICAgICBcIkFUXCIsXG4gICAgICAgIFwiRElcIixcbiAgICAgICAgXCJlZmZhY8OpXCIsXG4gICAgICAgIFwiRVJcIixcbiAgICAgICAgXCJFVFwiLFxuICAgICAgICBcIklSXCIsXG4gICAgICAgIFwiSVJSMTI3XCIsXG4gICAgICAgIFwiSVJSMjBcIixcbiAgICAgICAgXCJJUlIzN1wiLFxuICAgICAgICBcIklSUjM4XCIsXG4gICAgICAgIFwiSVJSNDFcIixcbiAgICAgICAgXCJJUlI0MlwiLFxuICAgICAgICBcIklSUjQ1XCIsXG4gICAgICAgIFwiSVJSNDhcIixcbiAgICAgICAgXCJJUlI1M1wiLFxuICAgICAgICBcIklSUkFJXCIsXG4gICAgICAgIFwiSVJSQUlGXCIsXG4gICAgICAgIFwiSVJSRFwiLFxuICAgICAgICBcIklSUkhDXCIsXG4gICAgICAgIFwiSVJSSERcIixcbiAgICAgICAgXCJJUlJTQVwiLFxuICAgICAgICBcIlJcIixcbiAgICAgICAgXCJSVFwiLFxuICAgICAgICBcIlRcIixcbiAgICBdLFxuICAgIFwiTGliZWxsZVwiOiBbXG4gICAgICAgIFwiQSBkaXNjdXRlclwiLFxuICAgICAgICBcIkEgZMOpcG9zZXJcIixcbiAgICAgICAgXCJEaXNjdXTDqVwiLFxuICAgICAgICBcImVmZmFjw6lcIixcbiAgICAgICAgXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gICAgICAgIFwiRW4gdHJhaXRlbWVudFwiLFxuICAgICAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgICAgIFwiSXJyZWNldmFibGUgNDBcIixcbiAgICAgICAgXCJSZXRpcsOpXCIsXG4gICAgXSxcbiAgICBcIlNvcnRFbnVtXCI6IFtcbiAgICAgICAgXCJBZG9wdMOpXCIsXG4gICAgICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpIDQwXCIsXG4gICAgICAgIFwiQXV0cmVzIGlyciBMT0xGXCIsXG4gICAgICAgIFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICAgICAgXCJDYXZhbGllciAoNDUpXCIsXG4gICAgICAgIFwiQ2F2YWxpZXIgYnVkZ8OpdGFpcmVcIixcbiAgICAgICAgXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICAgICAgXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgICAgIFwiQ2hhcmdlXCIsXG4gICAgICAgIFwiQ01QICg0NSlcIixcbiAgICAgICAgXCJDcsOpZGl0c1wiLFxuICAgICAgICBcIkRpc3Bvc2l0aW9uIHLDqWdsZW1lbnRhaXJlICgzNylcIixcbiAgICAgICAgXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgICAgIFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgICAgIFwiRG91YmxvblwiLFxuICAgICAgICBcIkVudG9ubm9pciAoNDUpXCIsXG4gICAgICAgIFwiR2FnZVwiLFxuICAgICAgICBcIkhvcnMgY2hhbXBcIixcbiAgICAgICAgXCJIb3JzLWTDqWxhaXNcIixcbiAgICAgICAgXCJJbmpvbmN0aW9uICgyMClcIixcbiAgICAgICAgXCJJcnIgZW4gcHJlbWnDqHJlIHBhcnRpZVwiLFxuICAgICAgICBcIklyciBlbiBzZWNvbmRlIHBhcnRpZVwiLFxuICAgICAgICBcIkxPTEZcIixcbiAgICAgICAgXCJMT0xGU1NcIixcbiAgICAgICAgXCJOb24gc291dGVudVwiLFxuICAgICAgICBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgICAgICBcIlJcIixcbiAgICAgICAgXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gICAgICAgIFwiUmVqZXTDqVwiLFxuICAgICAgICBcIlJldGlyw6lcIixcbiAgICAgICAgXCJSZXRpcsOpIGFwcsOocyBwdWJsaWNhdGlvblwiLFxuICAgICAgICBcIlJldGlyw6kgYXZhbnQgcHVibGljYXRpb25cIixcbiAgICAgICAgXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gICAgICAgIFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICAgICAgXCJUb21iw6lcIixcbiAgICBdLFxuICAgIFwiVHlwZVBvc2l0aW9uXCI6IFtcbiAgICAgICAgXCJEZXJuaWVyXCIsXG4gICAgICAgIFwiTWlsaWV1XCIsXG4gICAgICAgIFwiUHJlbWllclwiLFxuICAgIF0sXG4gICAgXCJBdmFudEFBcHJlc1wiOiBbXG4gICAgICAgIFwiQVwiLFxuICAgICAgICBcIkFwcsOoc1wiLFxuICAgICAgICBcIkF2YW50XCIsXG4gICAgXSxcbiAgICBcIkRpdmlzaW9uVHlwZVwiOiBbXG4gICAgICAgIFwiQU5ORVhFXCIsXG4gICAgICAgIFwiQVJUSUNMRVwiLFxuICAgICAgICBcIkNIQVBJVFJFXCIsXG4gICAgICAgIFwiVElUUkVcIixcbiAgICBdLFxuICAgIFwiQ29kZUV0YXRcIjogW1xuICAgICAgICBcIkJcIixcbiAgICAgICAgXCJDXCIsXG4gICAgICAgIFwiRFwiLFxuICAgIF0sXG4gICAgXCJOb21cIjogW1xuICAgICAgICBcIlBERlwiLFxuICAgIF0sXG4gICAgXCJUeXBlTUlNRVR5cGVcIjogW1xuICAgICAgICBcImFwcGxpY2F0aW9uXCIsXG4gICAgXSxcbiAgICBcIlR5cGVBdXRldXJcIjogW1xuICAgICAgICBcIkTDqXB1dMOpXCIsXG4gICAgICAgIFwiR291dmVybmVtZW50XCIsXG4gICAgICAgIFwiUmFwcG9ydGV1clwiLFxuICAgIF0sXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBLElBNENZQSxnQ0FBZ0MsR0FBQUMsT0FBQSxDQUFBRCxnQ0FBQSwwQkFBaENBLGdDQUFnQztFQUFoQ0EsZ0NBQWdDO0VBQWhDQSxnQ0FBZ0M7RUFBQSxPQUFoQ0EsZ0NBQWdDO0FBQUE7QUFBQSxJQXdEaENFLE1BQU0sR0FBQUQsT0FBQSxDQUFBQyxNQUFBLDBCQUFOQSxNQUFNO0VBQU5BLE1BQU07RUFBTkEsTUFBTTtFQUFOQSxNQUFNO0VBQUEsT0FBTkEsTUFBTTtBQUFBO0FBQUEsSUEwRU5DLElBQUksR0FBQUYsT0FBQSxDQUFBRSxJQUFBLDBCQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBSkEsSUFBSTtFQUFKQSxJQUFJO0VBQUpBLElBQUk7RUFBQSxPQUFKQSxJQUFJO0FBQUE7QUFBQSxJQTRCSkMsT0FBTyxHQUFBSCxPQUFBLENBQUFHLE9BQUEsMEJBQVBBLE9BQU87RUFBUEEsT0FBTztFQUFQQSxPQUFPO0VBQVBBLE9BQU87RUFBUEEsT0FBTztFQUFQQSxPQUFPO0VBQVBBLE9BQU87RUFBUEEsT0FBTztFQUFQQSxPQUFPO0VBQVBBLE9BQU87RUFBQSxPQUFQQSxPQUFPO0FBQUE7QUFBQSxJQW1CUEMsUUFBUSxHQUFBSixPQUFBLENBQUFJLFFBQUEsMEJBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFS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