@tricoteuses/assemblee 1.1.9 → 1.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/LICENSE.md +5 -1
  2. package/README.md +69 -178
  3. package/lib/bugs/acteur-00010/plugin.test.js +1 -1
  4. package/lib/bugs/agenda-00002/plugin.test.js +1 -1
  5. package/lib/bugs/agenda-00002/plugin.test.mjs +1 -1
  6. package/lib/bugs/agenda-00002.js +3 -3
  7. package/lib/bugs/agenda-00002.mjs +2 -2
  8. package/lib/bugs/agenda-00008/plugin.test.js +1 -1
  9. package/lib/bugs/agenda-00011/plugin.test.js +1 -1
  10. package/lib/bugs/agenda-00011/plugin.test.mjs +1 -1
  11. package/lib/bugs/agenda-00011.js +1 -1
  12. package/lib/bugs/agenda-00011.mjs +1 -1
  13. package/lib/bugs.js +1 -1
  14. package/lib/bugs.mjs +1 -1
  15. package/lib/cleaners/acteurs.js +1 -1
  16. package/lib/cleaners/acteurs.mjs +1 -1
  17. package/lib/cleaners/amendements.js +1 -1
  18. package/lib/cleaners/amendements.mjs +1 -1
  19. package/lib/cleaners/debats.d.ts +1 -0
  20. package/lib/cleaners/debats.js +12 -0
  21. package/lib/cleaners/debats.mjs +5 -0
  22. package/lib/cleaners/index.d.ts +2 -0
  23. package/lib/cleaners/index.js +15 -1
  24. package/lib/cleaners/index.mjs +3 -1
  25. package/lib/cleaners/questions.d.ts +1 -0
  26. package/lib/cleaners/questions.js +12 -0
  27. package/lib/cleaners/questions.mjs +5 -0
  28. package/lib/cleaners/reunions.js +1 -1
  29. package/lib/cleaners/reunions.mjs +1 -1
  30. package/lib/cleaners/xml.js +12 -6
  31. package/lib/cleaners/xml.mjs +12 -6
  32. package/lib/datasets.d.ts +5 -1
  33. package/lib/datasets.js +62 -4
  34. package/lib/datasets.mjs +62 -4
  35. package/lib/dates.js +1 -1
  36. package/lib/dates.mjs +1 -1
  37. package/lib/dossiers_legislatifs.js +1 -1
  38. package/lib/dossiers_legislatifs.mjs +1 -1
  39. package/lib/file_systems.js +4 -4
  40. package/lib/file_systems.mjs +2 -2
  41. package/lib/git.js +1 -1
  42. package/lib/git.mjs +1 -1
  43. package/lib/loaders.d.ts +21 -0
  44. package/lib/loaders.js +608 -202
  45. package/lib/loaders.mjs +200 -3
  46. package/lib/organes.js +1 -1
  47. package/lib/organes.mjs +1 -1
  48. package/lib/parsers/documents.js +1 -1
  49. package/lib/parsers/documents.mjs +1 -1
  50. package/lib/parsers/recherche_amendements.js +3 -2
  51. package/lib/parsers/recherche_amendements.mjs +1 -1
  52. package/lib/raw_types/acteurs_et_organes.js +1 -1
  53. package/lib/raw_types/acteurs_et_organes.mjs +1 -1
  54. package/lib/raw_types/agendas.js +1 -1
  55. package/lib/raw_types/agendas.mjs +1 -1
  56. package/lib/raw_types/amendements.d.ts +2 -0
  57. package/lib/raw_types/amendements.js +5 -3
  58. package/lib/raw_types/amendements.mjs +5 -3
  59. package/lib/raw_types/debats.d.ts +190 -0
  60. package/lib/raw_types/debats.js +816 -0
  61. package/lib/raw_types/debats.mjs +758 -0
  62. package/lib/raw_types/dossiers_legislatifs.js +11 -2
  63. package/lib/raw_types/dossiers_legislatifs.mjs +1 -1
  64. package/lib/raw_types/questions.d.ts +129 -0
  65. package/lib/raw_types/questions.js +497 -0
  66. package/lib/raw_types/questions.mjs +439 -0
  67. package/lib/raw_types/scrutins.js +1 -1
  68. package/lib/raw_types/scrutins.mjs +1 -1
  69. package/lib/scripts/bugs_helper.js +1 -1
  70. package/lib/scripts/bugs_helper.mjs +1 -1
  71. package/lib/scripts/clean_reorganized_data.js +174 -24
  72. package/lib/scripts/clean_reorganized_data.mjs +127 -13
  73. package/lib/scripts/diff_amendements.js +1 -1
  74. package/lib/scripts/diff_amendements.mjs +1 -1
  75. package/lib/scripts/document_dossiers_legislatifs.js +1 -1
  76. package/lib/scripts/document_dossiers_legislatifs.mjs +1 -1
  77. package/lib/scripts/get_today_reunions.js +1 -1
  78. package/lib/scripts/get_today_reunions.mjs +1 -1
  79. package/lib/scripts/merge_scrutins.js +1 -1
  80. package/lib/scripts/merge_scrutins.mjs +1 -1
  81. package/lib/scripts/parse_textes_lois.js +4 -3
  82. package/lib/scripts/parse_textes_lois.mjs +1 -1
  83. package/lib/scripts/raw_types_from_amendements.js +1 -1
  84. package/lib/scripts/raw_types_from_amendements.mjs +1 -1
  85. package/lib/scripts/reorganize_data.js +189 -7
  86. package/lib/scripts/reorganize_data.mjs +136 -8
  87. package/lib/scripts/retrieve_deputes_photos.js +7 -1
  88. package/lib/scripts/retrieve_deputes_photos.mjs +7 -1
  89. package/lib/scripts/retrieve_documents.js +1 -1
  90. package/lib/scripts/retrieve_documents.mjs +1 -1
  91. package/lib/scripts/retrieve_open_data.js +105 -37
  92. package/lib/scripts/retrieve_open_data.mjs +34 -2
  93. package/lib/scripts/retrieve_pending_amendments.js +7 -1
  94. package/lib/scripts/retrieve_pending_amendments.mjs +7 -1
  95. package/lib/scripts/retrieve_senateurs_photos.js +10 -2
  96. package/lib/scripts/retrieve_senateurs_photos.mjs +7 -1
  97. package/lib/scripts/retrieve_textes_lois.js +1 -1
  98. package/lib/scripts/retrieve_textes_lois.mjs +1 -1
  99. package/lib/scripts/test_load.js +1 -1
  100. package/lib/scripts/test_load.mjs +1 -1
  101. package/lib/scripts/test_load_big_files.js +1 -1
  102. package/lib/scripts/test_load_big_files.mjs +1 -1
  103. package/lib/scripts/validate_json.js +1 -1
  104. package/lib/scripts/validate_json.mjs +1 -1
  105. package/lib/strings.js +1 -1
  106. package/lib/strings.mjs +1 -1
  107. package/lib/types/acteurs_et_organes.js +1 -1
  108. package/lib/types/acteurs_et_organes.mjs +1 -1
  109. package/lib/types/agendas.js +1 -1
  110. package/lib/types/agendas.mjs +1 -1
  111. package/lib/types/amendements.d.ts +2 -0
  112. package/lib/types/amendements.js +5 -3
  113. package/lib/types/amendements.mjs +5 -3
  114. package/lib/types/debats.d.ts +184 -0
  115. package/lib/types/debats.js +805 -0
  116. package/lib/types/debats.mjs +747 -0
  117. package/lib/types/dossiers_legislatifs.js +11 -2
  118. package/lib/types/dossiers_legislatifs.mjs +1 -1
  119. package/lib/types/questions.d.ts +122 -0
  120. package/lib/types/questions.js +482 -0
  121. package/lib/types/questions.mjs +424 -0
  122. package/lib/types/scrutins.js +1 -1
  123. package/lib/types/scrutins.mjs +1 -1
  124. package/lib/urls.js +1 -1
  125. package/lib/urls.mjs +1 -1
  126. package/package.json +14 -6
  127. package/lib/scripts/clean_data.d.ts +0 -1
  128. package/lib/scripts/clean_data.js +0 -309
  129. package/lib/scripts/clean_data.mjs +0 -171
@@ -71,6 +71,7 @@ var EtatAmendementCode = /*#__PURE__*/function (EtatAmendementCode) {
71
71
  EtatAmendementCode["Irrai"] = "IRRAI";
72
72
  EtatAmendementCode["Irraif"] = "IRRAIF";
73
73
  EtatAmendementCode["Irrd"] = "IRRD";
74
+ EtatAmendementCode["Irrhc"] = "IRRHC";
74
75
  EtatAmendementCode["Irrhd"] = "IRRHD";
75
76
  EtatAmendementCode["Irrsa"] = "IRRSA";
76
77
  EtatAmendementCode["R"] = "R";
@@ -111,6 +112,7 @@ var SortAmendement = /*#__PURE__*/function (SortAmendement) {
111
112
  SortAmendement["Doublon"] = "Doublon";
112
113
  SortAmendement["Entonnoir45"] = "Entonnoir (45)";
113
114
  SortAmendement["Gage"] = "Gage";
115
+ SortAmendement["HorsChamp"] = "Hors champ";
114
116
  SortAmendement["HorsD\xE9lais"] = "Hors-d\xE9lais";
115
117
  SortAmendement["Injonction20"] = "Injonction (20)";
116
118
  SortAmendement["IrrEnPremi\xE8rePartie"] = "Irr en premi\xE8re partie";
@@ -886,9 +888,9 @@ var typeMap = {
886
888
  }], false),
887
889
  AccordGouvernementDepotHorsDelai: ["Accord", "Sans objet"],
888
890
  Action: ["création", "modification", "suppression"],
889
- EtatAmendementCode: ["AC", "AT", "DI", "effacé", "ER", "ET", "IR", "IRR127", "IRR20", "IRR37", "IRR38", "IRR41", "IRR42", "IRR45", "IRR48", "IRR53", "IRRAI", "IRRAIF", "IRRD", "IRRHD", "IRRSA", "R", "RT", "T"],
891
+ EtatAmendementCode: ["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"],
890
892
  EtatAmendementLibelle: ["A discuter", "A déposer", "Discuté", "effacé", "En recevabilité", "En traitement", "Irrecevable", "Irrecevable 40", "Retiré"],
891
- SortAmendement: ["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-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é"],
893
+ SortAmendement: ["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é"],
892
894
  TypePosition: ["Dernier", "Milieu", "Premier"],
893
895
  AvantAApres: ["A", "Apres", "Avant"],
894
896
  DivisionType: ["ANNEXE", "ARTICLE", "CHAPITRE", "TITRE"],
@@ -897,4 +899,4 @@ var typeMap = {
897
899
  TypeMimeType: ["application"],
898
900
  TypeAuteur: ["Député", "Gouvernement", "Rapporteur"]
899
901
  };
900
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsImV4cG9ydHMiLCJBY3Rpb24iLCJFdGF0QW1lbmRlbWVudENvZGUiLCJFdGF0QW1lbmRlbWVudExpYmVsbGUiLCJTb3J0QW1lbmRlbWVudCIsIlR5cGVQb3NpdGlvbiIsIkF2YW50QUFwcmVzIiwiRGl2aXNpb25UeXBlIiwiQ29kZUV0YXQiLCJOb20iLCJUeXBlTWltZVR5cGUiLCJUeXBlQXV0ZXVyIiwiQ29udmVydCIsIl9jbGFzc0NhbGxDaGVjayIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwidG9BbWVuZGVtZW50IiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwiYW1lbmRlbWVudFRvSnNvbiIsInN0cmluZ2lmeSIsInVuY2FzdCIsInRvQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1RvSnNvbiIsInRvVGV4dGVMZWdpc2xhdGlmIiwidGV4dGVMZWdpc2xhdGlmVG9Kc29uIiwiaW52YWxpZFZhbHVlIiwidHlwIiwidmFsIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiRXJyb3IiLCJjb25jYXQiLCJqc29uVG9KU1Byb3BzIiwianNvblRvSlMiLCJtYXAiLCJwcm9wcyIsImZvckVhY2giLCJwIiwianMiLCJqc1RvSlNPTlByb3BzIiwianNUb0pTT04iLCJ0cmFuc2Zvcm0iLCJnZXRQcm9wcyIsInRyYW5zZm9ybVByaW1pdGl2ZSIsIl90eXBlb2YiLCJ0cmFuc2Zvcm1VbmlvbiIsInR5cHMiLCJsIiwiaSIsIl8iLCJ0cmFuc2Zvcm1FbnVtIiwiY2FzZXMiLCJpbmRleE9mIiwidHJhbnNmb3JtQXJyYXkiLCJBcnJheSIsImlzQXJyYXkiLCJlbCIsInRyYW5zZm9ybURhdGUiLCJkIiwiRGF0ZSIsImlzTmFOIiwidmFsdWVPZiIsInRyYW5zZm9ybU9iamVjdCIsImFkZGl0aW9uYWwiLCJyZXN1bHQiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcCIsInYiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJyZWYiLCJ0eXBlTWFwIiwidW5pb25NZW1iZXJzIiwiYXJyYXlJdGVtcyIsImEiLCJ1IiwiX2xlbiIsIl9rZXkiLCJvIiwibmFtZSIsIkFtZW5kZW1lbnRzIiwiVGV4dGVMZWdpc2xhdGlmIiwiQW1lbmRlbWVudHNDbGFzcyIsIkFtZW5kZW1lbnRXcmFwcGVyIiwiQW1lbmRlbWVudCIsIkNvcnBzIiwiQ29udGVudUF1dGV1ciIsIkF2YW50QXBwZWwiLCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiIsIlByb2dyYW1tZVBsZiIsIkxpZ25lQ3JlZGl0UExGIiwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSIiwiTGlnbmVDcmVkaXRQTEZSIiwiVG90YWwiLCJDeWNsZURlVmllIiwiRXRhdERlc1RyYWl0ZW1lbnRzIiwiRXRhdEFtZW5kZW1lbnQiLCJTb3VzRXRhdEFtZW5kZW1lbnQiLCJEaXNjdXNzaW9uIiwiSWRlbnRpZmljYXRpb24iLCJMb2lSZWZlcmVuY2UiLCJQb2ludGV1ckZyYWdtZW50VGV4dGUiLCJBbGluZWEiLCJEaXZpc2lvbiIsIk1pc3Npb25WaXNlZSIsIlJlcHJlc2VudGF0aW9uIiwiQ29udGVudSIsIlN0YXR1dFJlcHJlc2VudGF0aW9uIiwiVHlwZU1pbWUiLCJTaWduYXRhaXJlcyIsIkF1dGV1ciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9hbWVuZGVtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUbyBwYXJzZSB0aGlzIGRhdGE6XG4vL1xuLy8gICBpbXBvcnQgeyBDb252ZXJ0LCBBbWVuZGVtZW50LCBBbWVuZGVtZW50cyB9IGZyb20gXCIuL2ZpbGVcIjtcbi8vXG4vLyAgIGNvbnN0IGFtZW5kZW1lbnQgPSBDb252ZXJ0LnRvQW1lbmRlbWVudChqc29uKTtcbi8vICAgY29uc3QgYW1lbmRlbWVudHMgPSBDb252ZXJ0LnRvQW1lbmRlbWVudHMoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuaW1wb3J0IHsgQWN0ZXVyLCBPcmdhbmUgfSBmcm9tIFwiLi9hY3RldXJzX2V0X29yZ2FuZXNcIlxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzIHtcbiAgdGV4dGVzTGVnaXNsYXRpZnM6IFRleHRlTGVnaXNsYXRpZltdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dGVMZWdpc2xhdGlmIHtcbiAgcmVmVGV4dGVMZWdpc2xhdGlmOiBzdHJpbmdcbiAgYW1lbmRlbWVudHM6IEFtZW5kZW1lbnRbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnQge1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nXG4gIHVpZDogc3RyaW5nXG4gIGNocm9ub3RhZzogc3RyaW5nXG4gIGxlZ2lzbGF0dXJlOiBzdHJpbmdcbiAgaWRlbnRpZmljYXRpb246IElkZW50aWZpY2F0aW9uXG4gIGV4YW1lblJlZjogc3RyaW5nXG4gIHRleHRlTGVnaXNsYXRpZlJlZjogc3RyaW5nXG4gIHRyaUFtZW5kZW1lbnQ/OiBzdHJpbmdcbiAgY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzPzogc3RyaW5nXG4gIGFtZW5kZW1lbnRQYXJlbnRSZWY/OiBzdHJpbmdcbiAgc2lnbmF0YWlyZXM6IFNpZ25hdGFpcmVzXG4gIHBvaW50ZXVyRnJhZ21lbnRUZXh0ZTogUG9pbnRldXJGcmFnbWVudFRleHRlXG4gIGNvcnBzPzogQ29ycHNcbiAgY3ljbGVEZVZpZTogQ3ljbGVEZVZpZVxuICByZXByZXNlbnRhdGlvbj86IFJlcHJlc2VudGF0aW9uXG4gIHNlYW5jZURpc2N1c3Npb25SZWY/OiBzdHJpbmdcbiAgYXJ0aWNsZTk5OiBzdHJpbmdcbiAgbG9pUmVmZXJlbmNlPzogTG9pUmVmZXJlbmNlXG4gIGRpc2N1c3Npb25Db21tdW5lPzogRGlzY3Vzc2lvblxuICBkaXNjdXNzaW9uSWRlbnRpcXVlPzogRGlzY3Vzc2lvblxuICBhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaTogQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcbn1cblxuZXhwb3J0IGVudW0gQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWkge1xuICBBY2NvcmQgPSBcIkFjY29yZFwiLFxuICBTYW5zT2JqZXQgPSBcIlNhbnMgb2JqZXRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3JwcyB7XG4gIGNhcnRvdWNoZUluZm9ybWF0aWY/OiBzdHJpbmdcbiAgY29udGVudUF1dGV1cj86IENvbnRlbnVBdXRldXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW51QXV0ZXVyIHtcbiAgZGlzcG9zaXRpZj86IHN0cmluZ1xuICBhdmFudEFwcGVsPzogQXZhbnRBcHBlbFxuICBleHBvc2VTb21tYWlyZT86IHN0cmluZ1xuICBkaXNwb3NpdGlmQW1kdENyZWRpdFBMRj86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXG4gIGRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUj86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF2YW50QXBwZWwge1xuICBkaXNwb3NpdGlmOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiB7XG4gIGxpc3RlUHJvZ3JhbW1lcz86IFByb2dyYW1tZVBsZltdXG4gIHNvbGRlQUU/OiBzdHJpbmdcbiAgc29sZGVDUD86IHN0cmluZ1xuICBjcEVnYWxBZTogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZ3JhbW1lUGxmIHtcbiAgbGliZWxsZTogc3RyaW5nXG4gIHByb2dyYW1tZVJlZjogc3RyaW5nXG4gIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnQ6IHN0cmluZ1xuICBjcmVkaXRQYWllbWVudDogc3RyaW5nXG4gIGFjdGlvbjogQWN0aW9uXG4gIGxpZ25lc0NyZWRpdHM/OiBMaWduZUNyZWRpdFBMRltdXG59XG5cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gIENyw6lhdGlvbiA9IFwiY3LDqWF0aW9uXCIsXG4gIE1vZGlmaWNhdGlvbiA9IFwibW9kaWZpY2F0aW9uXCIsXG4gIFN1cHByZXNzaW9uID0gXCJzdXBwcmVzc2lvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0UExGIHtcbiAgaWQ6IHN0cmluZ1xuICBsaWJlbGxlOiBzdHJpbmdcbiAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudDogc3RyaW5nXG4gIGNyZWRpdFBhaWVtZW50OiBzdHJpbmdcbiAgYWN0aW9uOiBBY3Rpb25cbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIge1xuICBsaXN0ZVByb2dyYW1tZXM/OiBMaWduZUNyZWRpdFBMRlJbXVxuICB0b3RhbEFFPzogVG90YWxcbiAgdG90YWxDUD86IFRvdGFsXG4gIGNwRWdhbEFlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWduZUNyZWRpdFBMRlIge1xuICBsaWJlbGxlOiBzdHJpbmdcbiAgcHJvZ3JhbW1lUmVmPzogc3RyaW5nXG4gIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZTogc3RyaW5nXG4gIGNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmU6IHN0cmluZ1xuICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlOiBzdHJpbmdcbiAgY3JlZGl0UGFpZW1lbnRBbm51bGU6IHN0cmluZ1xuICBhY3Rpb246IEFjdGlvblxuICBsaWduZXNDcmVkaXRzPzogTGlnbmVDcmVkaXRQTEZSW11cbiAgaWQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUb3RhbCB7XG4gIHN1cHBsZW1lbnRhaXJlOiBzdHJpbmdcbiAgYW5udWxlOiBzdHJpbmdcbiAgc29sZGU6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN5Y2xlRGVWaWUge1xuICBkYXRlRGVwb3Q/OiBEYXRlXG4gIGRhdGVQdWJsaWNhdGlvbj86IERhdGVcbiAgc291bWlzQXJ0aWNsZTQwOiBzdHJpbmdcbiAgZXRhdERlc1RyYWl0ZW1lbnRzOiBFdGF0RGVzVHJhaXRlbWVudHNcbiAgZGF0ZVNvcnQ/OiBEYXRlXG4gIHNvcnQ/OiBTb3J0QW1lbmRlbWVudFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV0YXREZXNUcmFpdGVtZW50cyB7XG4gIGV0YXQ6IEV0YXRBbWVuZGVtZW50XG4gIHNvdXNFdGF0PzogU291c0V0YXRBbWVuZGVtZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXRhdEFtZW5kZW1lbnQge1xuICBjb2RlOiBFdGF0QW1lbmRlbWVudENvZGVcbiAgbGliZWxsZTogRXRhdEFtZW5kZW1lbnRMaWJlbGxlXG59XG5cbmV4cG9ydCBlbnVtIEV0YXRBbWVuZGVtZW50Q29kZSB7XG4gIEFDID0gXCJBQ1wiLFxuICBBdCA9IFwiQVRcIixcbiAgRGkgPSBcIkRJXCIsXG4gIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgRXIgPSBcIkVSXCIsXG4gIEV0ID0gXCJFVFwiLFxuICBJUiA9IFwiSVJcIixcbiAgSXJyMTI3ID0gXCJJUlIxMjdcIixcbiAgSXJyMjAgPSBcIklSUjIwXCIsXG4gIElycjM3ID0gXCJJUlIzN1wiLFxuICBJcnIzOCA9IFwiSVJSMzhcIixcbiAgSXJyNDEgPSBcIklSUjQxXCIsXG4gIElycjQyID0gXCJJUlI0MlwiLFxuICBJcnI0NSA9IFwiSVJSNDVcIixcbiAgSXJyNDggPSBcIklSUjQ4XCIsXG4gIElycjUzID0gXCJJUlI1M1wiLFxuICBJcnJhaSA9IFwiSVJSQUlcIixcbiAgSXJyYWlmID0gXCJJUlJBSUZcIixcbiAgSXJyZCA9IFwiSVJSRFwiLFxuICBJcnJoZCA9IFwiSVJSSERcIixcbiAgSXJyc2EgPSBcIklSUlNBXCIsXG4gIFIgPSBcIlJcIixcbiAgUnQgPSBcIlJUXCIsXG4gIFQgPSBcIlRcIixcbn1cblxuZXhwb3J0IGVudW0gRXRhdEFtZW5kZW1lbnRMaWJlbGxlIHtcbiAgQURpc2N1dGVyID0gXCJBIGRpc2N1dGVyXCIsXG4gIEFEw6lwb3NlciA9IFwiQSBkw6lwb3NlclwiLFxuICBEaXNjdXTDqSA9IFwiRGlzY3V0w6lcIixcbiAgRWZmYWPDqSA9IFwiZWZmYWPDqVwiLFxuICBFblJlY2V2YWJpbGl0w6kgPSBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgRW5UcmFpdGVtZW50ID0gXCJFbiB0cmFpdGVtZW50XCIsXG4gIElycmVjZXZhYmxlID0gXCJJcnJlY2V2YWJsZVwiLFxuICBJcnJlY2V2YWJsZTQwID0gXCJJcnJlY2V2YWJsZSA0MFwiLFxuICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291c0V0YXRBbWVuZGVtZW50IHtcbiAgY29kZTogRXRhdEFtZW5kZW1lbnRDb2RlXG4gIGxpYmVsbGU6IFNvcnRBbWVuZGVtZW50XG59XG5cbmV4cG9ydCBlbnVtIFNvcnRBbWVuZGVtZW50IHtcbiAgQWRvcHTDqSA9IFwiQWRvcHTDqVwiLFxuICBBdXRyZUlycmVjZXZhYmlsaXTDqSA9IFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gIEF1dHJlSXJyZWNldmFiaWxpdMOpNDAgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqSA0MFwiLFxuICBBdXRyZXNJcnJMT0xGID0gXCJBdXRyZXMgaXJyIExPTEZcIixcbiAgQXV0cmVzSXJyTE9MRlNTID0gXCJBdXRyZXMgaXJyIExPTEZTU1wiLFxuICBDYXZhbGllcjQ1ID0gXCJDYXZhbGllciAoNDUpXCIsXG4gIENhdmFsaWVyQnVkZ8OpdGFpcmUgPSBcIkNhdmFsaWVyIGJ1ZGfDqXRhaXJlXCIsXG4gIENhdmFsaWVyU29jaWFsID0gXCJDYXZhbGllciBzb2NpYWxcIixcbiAgQ2hhbXBEZUxIYWJpbGl0YXRpb24zOCA9IFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICBDaGFyZ2UgPSBcIkNoYXJnZVwiLFxuICBDbXA0NSA9IFwiQ01QICg0NSlcIixcbiAgQ3LDqWRpdHMgPSBcIkNyw6lkaXRzXCIsXG4gIERpc3Bvc2l0aW9uUsOpZ2xlbWVudGFpcmUzNyA9IFwiRGlzcG9zaXRpb24gcsOpZ2xlbWVudGFpcmUgKDM3KVwiLFxuICBEb21haW5lRGVMYUxvaTQxID0gXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gIERvbWFpbmVMb2lPcmdhbmlxdWUxMjcgPSBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICBEb3VibG9uID0gXCJEb3VibG9uXCIsXG4gIEVudG9ubm9pcjQ1ID0gXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICBHYWdlID0gXCJHYWdlXCIsXG4gIEhvcnNEw6lsYWlzID0gXCJIb3JzLWTDqWxhaXNcIixcbiAgSW5qb25jdGlvbjIwID0gXCJJbmpvbmN0aW9uICgyMClcIixcbiAgSXJyRW5QcmVtacOocmVQYXJ0aWUgPSBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gIElyckVuU2Vjb25kZVBhcnRpZSA9IFwiSXJyIGVuIHNlY29uZGUgcGFydGllXCIsXG4gIExvbGYgPSBcIkxPTEZcIixcbiAgTG9sZnNzID0gXCJMT0xGU1NcIixcbiAgTm9uU291dGVudSA9IFwiTm9uIHNvdXRlbnVcIixcbiAgT3JkcmVEdUpvdXI0OCA9IFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gIFIgPSBcIlJcIixcbiAgUmF0aWZpY2F0aW9uVHJhaXTDqTUzID0gXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gIFJlamV0w6kgPSBcIlJlamV0w6lcIixcbiAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxuICBSZXRpcsOpQXByw6hzUHVibGljYXRpb24gPSBcIlJldGlyw6kgYXByw6hzIHB1YmxpY2F0aW9uXCIsXG4gIFJldGlyw6lBdmFudFB1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGF2YW50IHB1YmxpY2F0aW9uXCIsXG4gIFNhdGlzZmFpdE91SW5vcMOpcmFudDQyID0gXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gIFNvdXNBbWVuZGVtZW50OTggPSBcIlNvdXMtYW1lbmRlbWVudCAoOTgpXCIsXG4gIFRvbWLDqSA9IFwiVG9tYsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzY3Vzc2lvbiB7XG4gIGlkRGlzY3Vzc2lvbj86IHN0cmluZ1xuICB0eXBlUG9zaXRpb24/OiBUeXBlUG9zaXRpb25cbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvc2l0aW9uIHtcbiAgRGVybmllciA9IFwiRGVybmllclwiLFxuICBNaWxpZXUgPSBcIk1pbGlldVwiLFxuICBQcmVtaWVyID0gXCJQcmVtaWVyXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpZmljYXRpb24ge1xuICBudW1lcm9Mb25nOiBzdHJpbmdcbiAgbnVtZXJvT3JkcmVEZXBvdDogc3RyaW5nXG4gIHByZWZpeGVPcmdhbmVFeGFtZW46IHN0cmluZ1xuICBudW1lcm9SZWN0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2lSZWZlcmVuY2Uge1xuICBjb2RlTG9pPzogc3RyaW5nXG4gIGRpdmlzaW9uQ29kZUxvaT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZSB7XG4gIGRpdmlzaW9uPzogRGl2aXNpb25cbiAgYWxpbmVhPzogQWxpbmVhXG4gIG1pc3Npb25WaXNlZT86IE1pc3Npb25WaXNlZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsaW5lYSB7XG4gIGF2YW50QUFwcmVzPzogQXZhbnRBQXByZXNcbiAgbnVtZXJvPzogc3RyaW5nXG4gIGFsaW5lYURlc2lnbmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBlbnVtIEF2YW50QUFwcmVzIHtcbiAgQSA9IFwiQVwiLFxuICBBcHJlcyA9IFwiQXByZXNcIixcbiAgQXZhbnQgPSBcIkF2YW50XCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb24ge1xuICB0aXRyZTogc3RyaW5nXG4gIGFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZT86IHN0cmluZ1xuICBhcnRpY2xlRGVzaWduYXRpb24/OiBzdHJpbmdcbiAgdHlwZTogRGl2aXNpb25UeXBlXG4gIGF2YW50QUFwcmVzOiBBdmFudEFBcHJlc1xuICBkaXZpc2lvblJhdHRhY2hlZT86IHN0cmluZ1xuICBhcnRpY2xlQWRkaXRpb25uZWw6IHN0cmluZ1xuICBjaGFwaXRyZUFkZGl0aW9ubmVsOiBzdHJpbmdcbiAgdXJsRGl2aXNpb25UZXh0ZVZpc2U/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gRGl2aXNpb25UeXBlIHtcbiAgQW5uZXhlID0gXCJBTk5FWEVcIixcbiAgQXJ0aWNsZSA9IFwiQVJUSUNMRVwiLFxuICBDaGFwaXRyZSA9IFwiQ0hBUElUUkVcIixcbiAgVGl0cmUgPSBcIlRJVFJFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvblZpc2VlIHtcbiAgY29kZUV0YXQ6IENvZGVFdGF0XG4gIGNvZGVNaXNzaW9uTWluZWZpOiBzdHJpbmdcbiAgbGliZWxsZU1pc3Npb246IHN0cmluZ1xuICBtaXNzaW9uUmVmOiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gQ29kZUV0YXQge1xuICBCID0gXCJCXCIsXG4gIEMgPSBcIkNcIixcbiAgRCA9IFwiRFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9uIHtcbiAgbm9tOiBOb21cbiAgdHlwZU1pbWU6IFR5cGVNaW1lXG4gIHN0YXR1dFJlcHJlc2VudGF0aW9uOiBTdGF0dXRSZXByZXNlbnRhdGlvblxuICBjb250ZW51OiBDb250ZW51XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gIGRvY3VtZW50VVJJOiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gTm9tIHtcbiAgUGRmID0gXCJQREZcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXRSZXByZXNlbnRhdGlvbiB7XG4gIHZlcmJhdGltOiBib29sZWFuXG4gIGNhbm9uaXF1ZTogYm9vbGVhblxuICBvZmZpY2llbGxlOiBib29sZWFuXG4gIHRyYW5zY3JpcHRpb246IGJvb2xlYW5cbiAgZW5yZWdpc3RyZW1lbnQ6IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeXBlTWltZSB7XG4gIHR5cGU6IFR5cGVNaW1lVHlwZVxuICBzdWJUeXBlOiBOb21cbn1cblxuZXhwb3J0IGVudW0gVHlwZU1pbWVUeXBlIHtcbiAgQXBwbGljYXRpb24gPSBcImFwcGxpY2F0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0YWlyZXMge1xuICBhdXRldXI6IEF1dGV1clxuICBjb3NpZ25hdGFpcmVzUmVmcz86IHN0cmluZ1tdXG4gIGNvc2lnbmF0YWlyZXM/OiBBY3RldXJbXSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBzdWZmaXhlPzogc3RyaW5nXG4gIGxpYmVsbGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRldXIge1xuICB0eXBlQXV0ZXVyOiBUeXBlQXV0ZXVyXG4gIGdvdXZlcm5lbWVudFJlZj86IHN0cmluZ1xuICBnb3V2ZXJuZW1lbnQ/OiBPcmdhbmUgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgYWN0ZXVyUmVmPzogc3RyaW5nXG4gIGFjdGV1cj86IEFjdGV1ciAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBncm91cGVQb2xpdGlxdWVSZWY/OiBzdHJpbmdcbiAgZ3JvdXBlUG9saXRpcXVlPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWY/OiBzdHJpbmdcbiAgYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZT86IE9yZ2FuZSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xufVxuXG5leHBvcnQgZW51bSBUeXBlQXV0ZXVyIHtcbiAgRMOpcHV0w6kgPSBcIkTDqXB1dMOpXCIsXG4gIEdvdXZlcm5lbWVudCA9IFwiR291dmVybmVtZW50XCIsXG4gIFJhcHBvcnRldXIgPSBcIlJhcHBvcnRldXJcIixcbn1cblxuLy8gQ29udmVydHMgSlNPTiBzdHJpbmdzIHRvL2Zyb20geW91ciB0eXBlc1xuLy8gYW5kIGFzc2VydHMgdGhlIHJlc3VsdHMgb2YgSlNPTi5wYXJzZSBhdCBydW50aW1lXG5leHBvcnQgY2xhc3MgQ29udmVydCB7XG4gIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50KGpzb246IHN0cmluZyk6IEFtZW5kZW1lbnQge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50VG9Kc29uKHZhbHVlOiBBbWVuZGVtZW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudFwiKSksIG51bGwsIDIpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudHMoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudHMge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50c1wiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudHNUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRzKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudHNcIikpLCBudWxsLCAyKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b1RleHRlTGVnaXNsYXRpZihqc29uOiBzdHJpbmcpOiBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRleHRlTGVnaXNsYXRpZlRvSnNvbih2YWx1ZTogVGV4dGVMZWdpc2xhdGlmKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSwgbnVsbCwgMilcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9IFwiXCIpOiBuZXZlciB7XG4gIGlmIChrZXkpIHtcbiAgICB0aHJvdyBFcnJvcihcbiAgICAgIGBJbnZhbGlkIHZhbHVlIGZvciBrZXkgXCIke2tleX1cIi4gRXhwZWN0ZWQgdHlwZSAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICB0eXAsXG4gICAgICApfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkodmFsKX1gLFxuICAgIClcbiAgfVxuICB0aHJvdyBFcnJvcihcbiAgICBgSW52YWxpZCB2YWx1ZSAke0pTT04uc3RyaW5naWZ5KHZhbCl9IGZvciB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX1gLFxuICApXG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzb25Ub0pTID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzb25dID0geyBrZXk6IHAuanMsIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzb25Ub0pTID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc29uVG9KU1xufVxuXG5mdW5jdGlvbiBqc1RvSlNPTlByb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc1RvSlNPTiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc1RvSlNPTiA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNUb0pTT05cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtKHZhbDogYW55LCB0eXA6IGFueSwgZ2V0UHJvcHM6IGFueSwga2V5OiBhbnkgPSBcIlwiKTogYW55IHtcbiAgZnVuY3Rpb24gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cDogc3RyaW5nLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IHR5cGVvZiB2YWwpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXkpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgY29uc3QgbCA9IHR5cHMubGVuZ3RoXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV1cbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKVxuICAgICAgfSBjYXRjaCAoXykge31cbiAgICB9XG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmIChjYXNlcy5pbmRleE9mKHZhbCkgIT09IC0xKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtQXJyYXkodHlwOiBhbnksIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsKSkgcmV0dXJuIGludmFsaWRWYWx1ZShcImFycmF5XCIsIHZhbClcbiAgICByZXR1cm4gdmFsLm1hcCgoZWwpID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKVxuICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbClcbiAgICB9XG4gICAgcmV0dXJuIGRcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybU9iamVjdChcbiAgICBwcm9wczogeyBbazogc3RyaW5nXTogYW55IH0sXG4gICAgYWRkaXRpb25hbDogYW55LFxuICAgIHZhbDogYW55LFxuICApOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV1cbiAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpXG4gICAgICAgID8gdmFsW2tleV1cbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBwcm9wLmtleSlcbiAgICB9KVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSlcbiAgICAgIH1cbiAgICB9KVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWxcbiAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgIGlmICh2YWwgPT09IG51bGwpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB9XG4gIC8vIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB3aGlsZSAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIiAmJiB0eXAucmVmICE9PSB1bmRlZmluZWQpIHtcbiAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdXG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpXG4gIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIilcbiAgICAgID8gdHJhbnNmb3JtQXJyYXkodHlwLmFycmF5SXRlbXMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIilcbiAgICAgID8gdHJhbnNmb3JtT2JqZWN0KGdldFByb3BzKHR5cCksIHR5cC5hZGRpdGlvbmFsLCB2YWwpXG4gICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgfVxuICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbClcbiAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbClcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcylcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKVxufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH1cbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7IHJlZjogbmFtZSB9XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgQW1lbmRlbWVudHM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogYShyKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGV4dGVMZWdpc2xhdGlmOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwganM6IFwicmVmVGV4dGVMZWdpc2xhdGlmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRzXCIsIGpzOiBcImFtZW5kZW1lbnRzXCIsIHR5cDogcihcIkFtZW5kZW1lbnRzQ2xhc3NcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBBbWVuZGVtZW50c0NsYXNzOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogYShyKFwiQW1lbmRlbWVudFwiKSkgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnRXcmFwcGVyOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogcihcIkFtZW5kZW1lbnRcIikgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY2hyb25vdGFnXCIsIGpzOiBcImNocm9ub3RhZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsZWdpc2xhdHVyZVwiLCBqczogXCJsZWdpc2xhdHVyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpZGVudGlmaWNhdGlvblwiLFxuICAgICAgICBqczogXCJpZGVudGlmaWNhdGlvblwiLFxuICAgICAgICB0eXA6IHIoXCJJZGVudGlmaWNhdGlvblwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZXhhbWVuUmVmXCIsIGpzOiBcImV4YW1lblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwganM6IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInRyaUFtZW5kZW1lbnRcIiwganM6IFwidHJpQW1lbmRlbWVudFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLFxuICAgICAgICBqczogXCJjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIixcbiAgICAgICAganM6IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic2lnbmF0YWlyZXNcIiwganM6IFwic2lnbmF0YWlyZXNcIiwgdHlwOiByKFwiU2lnbmF0YWlyZXNcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIixcbiAgICAgICAganM6IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsXG4gICAgICAgIHR5cDogcihcIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiY29ycHNcIiwganM6IFwiY29ycHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvcnBzXCIpKSB9LFxuICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicmVwcmVzZW50YXRpb25cIixcbiAgICAgICAganM6IFwicmVwcmVzZW50YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlJlcHJlc2VudGF0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLFxuICAgICAgICBqczogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhcnRpY2xlOTlcIiwganM6IFwiYXJ0aWNsZTk5XCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxvaVJlZmVyZW5jZVwiLFxuICAgICAgICBqczogXCJsb2lSZWZlcmVuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkxvaVJlZmVyZW5jZVwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpc2N1c3Npb25Db21tdW5lXCIsXG4gICAgICAgIGpzOiBcImRpc2N1c3Npb25Db21tdW5lXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNjdXNzaW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzY3Vzc2lvbklkZW50aXF1ZVwiLFxuICAgICAgICBqczogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNjdXNzaW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIixcbiAgICAgICAganM6IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIixcbiAgICAgICAgdHlwOiByKFwiQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvcnBzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjYXJ0b3VjaGVJbmZvcm1hdGlmXCIsXG4gICAgICAgIGpzOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvbnRlbnVBdXRldXJcIixcbiAgICAgICAganM6IFwiY29udGVudUF1dGV1clwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29udGVudUF1dGV1clwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvbnRlbnVBdXRldXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF2YW50QXBwZWxcIixcbiAgICAgICAganM6IFwiYXZhbnRBcHBlbFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBcHBlbFwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImV4cG9zZVNvbW1haXJlXCIsIGpzOiBcImV4cG9zZVNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIixcbiAgICAgICAganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsXG4gICAgICAgIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXZhbnRBcHBlbDogbyhbeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLFxuICAgICAgICBqczogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiUHJvZ3JhbW1lUGxmXCIpKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlQUVcIiwganM6IFwic29sZGVBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlQ1BcIiwganM6IFwic29sZGVDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFByb2dyYW1tZVBsZjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInByb2dyYW1tZVJlZlwiLCBqczogXCJwcm9ncmFtbWVSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICBqczogXCJsaWduZXNDcmVkaXRzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIExpZ25lQ3JlZGl0UExGOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGUlwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0b3RhbEFFXCIsIGpzOiBcInRvdGFsQUVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlRvdGFsXCIpKSB9LFxuICAgICAgeyBqc29uOiBcInRvdGFsQ1BcIiwganM6IFwidG90YWxDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICB7IGpzb246IFwiY3BFZ2FsQWVcIiwganM6IFwiY3BFZ2FsQWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTGlnbmVDcmVkaXRQTEZSOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLFxuICAgICAgICBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlXCIsXG4gICAgICAgIGpzOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlXCIsXG4gICAgICAgIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCBqczogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxpZ25lc0NyZWRpdHNcIixcbiAgICAgICAganM6IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJMaWduZUNyZWRpdFBMRlJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUb3RhbDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwic3VwcGxlbWVudGFpcmVcIiwganM6IFwic3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYW5udWxlXCIsIGpzOiBcImFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJzb2xkZVwiLCBqczogXCJzb2xkZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDeWNsZURlVmllOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlRGVwb3RcIiwganM6IFwiZGF0ZURlcG90XCIsIHR5cDogdSh1bmRlZmluZWQsIERhdGUpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGF0ZVB1YmxpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImRhdGVQdWJsaWNhdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBEYXRlKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic291bWlzQXJ0aWNsZTQwXCIsIGpzOiBcInNvdW1pc0FydGljbGU0MFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJldGF0RGVzVHJhaXRlbWVudHNcIixcbiAgICAgICAganM6IFwiZXRhdERlc1RyYWl0ZW1lbnRzXCIsXG4gICAgICAgIHR5cDogcihcIkV0YXREZXNUcmFpdGVtZW50c1wiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGF0ZVNvcnRcIixcbiAgICAgICAganM6IFwiZGF0ZVNvcnRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgRGF0ZSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvcnRcIixcbiAgICAgICAganM6IFwic29ydFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiU29ydEFtZW5kZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBFdGF0RGVzVHJhaXRlbWVudHM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudFwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvdXNFdGF0XCIsXG4gICAgICAgIGpzOiBcInNvdXNFdGF0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3VzRXRhdEFtZW5kZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBFdGF0QW1lbmRlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogcihcIkV0YXRBbWVuZGVtZW50Q29kZVwiKSB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudExpYmVsbGVcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBTb3VzRXRhdEFtZW5kZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudENvZGVcIikgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiByKFwiU29ydEFtZW5kZW1lbnRcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEaXNjdXNzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJpZERpc2N1c3Npb25cIiwganM6IFwiaWREaXNjdXNzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidHlwZVBvc2l0aW9uXCIsXG4gICAgICAgIGpzOiBcInR5cGVQb3NpdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVHlwZVBvc2l0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSWRlbnRpZmljYXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIm51bWVyb0xvbmdcIiwganM6IFwibnVtZXJvTG9uZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJudW1lcm9PcmRyZURlcG90XCIsIGpzOiBcIm51bWVyb09yZHJlRGVwb3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJlZml4ZU9yZ2FuZUV4YW1lblwiLCBqczogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bWVyb1JlY3RcIiwganM6IFwibnVtZXJvUmVjdFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBMb2lSZWZlcmVuY2U6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImNvZGVMb2lcIixcbiAgICAgICAganM6IFwiY29kZUxvaVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGl2aXNpb25Db2RlTG9pXCIsXG4gICAgICAgIGpzOiBcImRpdmlzaW9uQ29kZUxvaVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgUG9pbnRldXJGcmFnbWVudFRleHRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkaXZpc2lvblwiLCBqczogXCJkaXZpc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGl2aXNpb25cIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWxpbmVhXCIsXG4gICAgICAgIGpzOiBcImFsaW5lYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQWxpbmVhXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibWlzc2lvblZpc2VlXCIsXG4gICAgICAgIGpzOiBcIm1pc3Npb25WaXNlZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiTWlzc2lvblZpc2VlXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQWxpbmVhOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICBqczogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBQXByZXNcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJudW1lcm9cIiwganM6IFwibnVtZXJvXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWxpbmVhRGVzaWduYXRpb25cIixcbiAgICAgICAganM6IFwiYWxpbmVhRGVzaWduYXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERpdmlzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVwiLCBqczogXCJ0aXRyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIixcbiAgICAgICAganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25cIixcbiAgICAgICAganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiRGl2aXNpb25UeXBlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYXZhbnRBQXByZXNcIixcbiAgICAgICAganM6IFwiYXZhbnRBQXByZXNcIixcbiAgICAgICAgdHlwOiByKFwiQXZhbnRBQXByZXNcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsXG4gICAgICAgIGpzOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwganM6IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNoYXBpdHJlQWRkaXRpb25uZWxcIiwganM6IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLFxuICAgICAgICBqczogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTWlzc2lvblZpc2VlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJjb2RlRXRhdFwiLCBqczogXCJjb2RlRXRhdFwiLCB0eXA6IHIoXCJDb2RlRXRhdFwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIGpzOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVNaXNzaW9uXCIsIGpzOiBcImxpYmVsbGVNaXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm1pc3Npb25SZWZcIiwganM6IFwibWlzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBSZXByZXNlbnRhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHIoXCJOb21cIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlTWltZVwiLCBqczogXCJ0eXBlTWltZVwiLCB0eXA6IHIoXCJUeXBlTWltZVwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIlN0YXR1dFJlcHJlc2VudGF0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb250ZW51XCIsIGpzOiBcImNvbnRlbnVcIiwgdHlwOiByKFwiQ29udGVudVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvbnRlbnU6IG8oW3sganNvbjogXCJkb2N1bWVudFVSSVwiLCBqczogXCJkb2N1bWVudFVSSVwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgU3RhdHV0UmVwcmVzZW50YXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInZlcmJhdGltXCIsIGpzOiBcInZlcmJhdGltXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJjYW5vbmlxdWVcIiwganM6IFwiY2Fub25pcXVlXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJvZmZpY2llbGxlXCIsIGpzOiBcIm9mZmljaWVsbGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgICAgeyBqc29uOiBcInRyYW5zY3JpcHRpb25cIiwganM6IFwidHJhbnNjcmlwdGlvblwiLCB0eXA6IGZhbHNlIH0sXG4gICAgICB7IGpzb246IFwiZW5yZWdpc3RyZW1lbnRcIiwganM6IFwiZW5yZWdpc3RyZW1lbnRcIiwgdHlwOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFR5cGVNaW1lOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiVHlwZU1pbWVUeXBlXCIpIH0sXG4gICAgICB7IGpzb246IFwic3ViVHlwZVwiLCBqczogXCJzdWJUeXBlXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNpZ25hdGFpcmVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhdXRldXJcIiwganM6IFwiYXV0ZXVyXCIsIHR5cDogcihcIkF1dGV1clwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvc2lnbmF0YWlyZXNSZWZzXCIsXG4gICAgICAgIGpzOiBcImNvc2lnbmF0YWlyZXNSZWZzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEoXCJcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdWZmaXhlXCIsXG4gICAgICAgIGpzOiBcInN1ZmZpeGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEF1dGV1cjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidHlwZUF1dGV1clwiLCBqczogXCJ0eXBlQXV0ZXVyXCIsIHR5cDogcihcIlR5cGVBdXRldXJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJnb3V2ZXJuZW1lbnRSZWZcIixcbiAgICAgICAganM6IFwiZ291dmVybmVtZW50UmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhY3RldXJSZWZcIixcbiAgICAgICAganM6IFwiYWN0ZXVyUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJncm91cGVQb2xpdGlxdWVSZWZcIixcbiAgICAgICAganM6IFwiZ3JvdXBlUG9saXRpcXVlUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmXCIsXG4gICAgICAgIGpzOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpOiBbXCJBY2NvcmRcIiwgXCJTYW5zIG9iamV0XCJdLFxuICBBY3Rpb246IFtcImNyw6lhdGlvblwiLCBcIm1vZGlmaWNhdGlvblwiLCBcInN1cHByZXNzaW9uXCJdLFxuICBFdGF0QW1lbmRlbWVudENvZGU6IFtcbiAgICBcIkFDXCIsXG4gICAgXCJBVFwiLFxuICAgIFwiRElcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVSXCIsXG4gICAgXCJFVFwiLFxuICAgIFwiSVJcIixcbiAgICBcIklSUjEyN1wiLFxuICAgIFwiSVJSMjBcIixcbiAgICBcIklSUjM3XCIsXG4gICAgXCJJUlIzOFwiLFxuICAgIFwiSVJSNDFcIixcbiAgICBcIklSUjQyXCIsXG4gICAgXCJJUlI0NVwiLFxuICAgIFwiSVJSNDhcIixcbiAgICBcIklSUjUzXCIsXG4gICAgXCJJUlJBSVwiLFxuICAgIFwiSVJSQUlGXCIsXG4gICAgXCJJUlJEXCIsXG4gICAgXCJJUlJIRFwiLFxuICAgIFwiSVJSU0FcIixcbiAgICBcIlJcIixcbiAgICBcIlJUXCIsXG4gICAgXCJUXCIsXG4gIF0sXG4gIEV0YXRBbWVuZGVtZW50TGliZWxsZTogW1xuICAgIFwiQSBkaXNjdXRlclwiLFxuICAgIFwiQSBkw6lwb3NlclwiLFxuICAgIFwiRGlzY3V0w6lcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgIFwiUmV0aXLDqVwiLFxuICBdLFxuICBTb3J0QW1lbmRlbWVudDogW1xuICAgIFwiQWRvcHTDqVwiLFxuICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgXCJBdXRyZSBpcnJlY2V2YWJpbGl0w6kgNDBcIixcbiAgICBcIkF1dHJlcyBpcnIgTE9MRlwiLFxuICAgIFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICBcIkNhdmFsaWVyICg0NSlcIixcbiAgICBcIkNhdmFsaWVyIGJ1ZGfDqXRhaXJlXCIsXG4gICAgXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICBcIkNoYW1wIGRlIGwnaGFiaWxpdGF0aW9uICgzOClcIixcbiAgICBcIkNoYXJnZVwiLFxuICAgIFwiQ01QICg0NSlcIixcbiAgICBcIkNyw6lkaXRzXCIsXG4gICAgXCJEaXNwb3NpdGlvbiByw6lnbGVtZW50YWlyZSAoMzcpXCIsXG4gICAgXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgXCJEb21haW5lIGxvaSBvcmdhbmlxdWUgKDEyNylcIixcbiAgICBcIkRvdWJsb25cIixcbiAgICBcIkVudG9ubm9pciAoNDUpXCIsXG4gICAgXCJHYWdlXCIsXG4gICAgXCJIb3JzLWTDqWxhaXNcIixcbiAgICBcIkluam9uY3Rpb24gKDIwKVwiLFxuICAgIFwiSXJyIGVuIHByZW1pw6hyZSBwYXJ0aWVcIixcbiAgICBcIklyciBlbiBzZWNvbmRlIHBhcnRpZVwiLFxuICAgIFwiTE9MRlwiLFxuICAgIFwiTE9MRlNTXCIsXG4gICAgXCJOb24gc291dGVudVwiLFxuICAgIFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gICAgXCJSXCIsXG4gICAgXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gICAgXCJSZWpldMOpXCIsXG4gICAgXCJSZXRpcsOpXCIsXG4gICAgXCJSZXRpcsOpIGFwcsOocyBwdWJsaWNhdGlvblwiLFxuICAgIFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgIFwiU2F0aXNmYWl0IG91IGlub3DDqXJhbnQgKDQyKVwiLFxuICAgIFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICBcIlRvbWLDqVwiLFxuICBdLFxuICBUeXBlUG9zaXRpb246IFtcIkRlcm5pZXJcIiwgXCJNaWxpZXVcIiwgXCJQcmVtaWVyXCJdLFxuICBBdmFudEFBcHJlczogW1wiQVwiLCBcIkFwcmVzXCIsIFwiQXZhbnRcIl0sXG4gIERpdmlzaW9uVHlwZTogW1wiQU5ORVhFXCIsIFwiQVJUSUNMRVwiLCBcIkNIQVBJVFJFXCIsIFwiVElUUkVcIl0sXG4gIENvZGVFdGF0OiBbXCJCXCIsIFwiQ1wiLCBcIkRcIl0sXG4gIE5vbTogW1wiUERGXCJdLFxuICBUeXBlTWltZVR5cGU6IFtcImFwcGxpY2F0aW9uXCJdLFxuICBUeXBlQXV0ZXVyOiBbXCJEw6lwdXTDqVwiLCBcIkdvdXZlcm5lbWVudFwiLCBcIlJhcHBvcnRldXJcIl0sXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQSxJQXFDWUEsZ0NBQWdDLDBCQUFoQ0EsZ0NBQWdDO0VBQWhDQSxnQ0FBZ0M7RUFBaENBLGdDQUFnQztFQUFBLE9BQWhDQSxnQ0FBZ0M7QUFBQTtBQUFBQyxPQUFBLENBQUFELGdDQUFBLEdBQUFBLGdDQUFBO0FBQUEsSUFzQ2hDRSxNQUFNLDBCQUFOQSxNQUFNO0VBQU5BLE1BQU07RUFBTkEsTUFBTTtFQUFOQSxNQUFNO0VBQUEsT0FBTkEsTUFBTTtBQUFBO0FBQUFELE9BQUEsQ0FBQUMsTUFBQSxHQUFBQSxNQUFBO0FBQUEsSUEwRE5DLGtCQUFrQiwwQkFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFsQkEsa0JBQWtCO0VBQWxCQSxrQkFBa0I7RUFBbEJBLGtCQUFrQjtFQUFBLE9BQWxCQSxrQkFBa0I7QUFBQTtBQUFBRixPQUFBLENBQUFFLGtCQUFBLEdBQUFBLGtCQUFBO0FBQUEsSUEyQmxCQyxxQkFBcUIsMEJBQXJCQSxxQkFBcUI7RUFBckJBLHFCQUFxQjtFQUFyQkEscUJBQXFCO0VBQXJCQSxxQkFBcUI7RUFBckJBLHFCQUFxQjtFQUFyQkEscUJBQXFCO0VBQXJCQSxxQkFBcUI7RUFBckJBLHFCQUFxQjtFQUFyQkEscUJBQXFCO0VBQXJCQSxxQkFBcUI7RUFBQSxPQUFyQkEscUJBQXFCO0FBQUE7QUFBQUgsT0FBQSxDQUFBRyxxQkFBQSxHQUFBQSxxQkFBQTtBQUFBLElBaUJyQkMsY0FBYywwQkFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBQSxPQUFkQSxjQUFjO0FBQUE7QUFBQUosT0FBQSxDQUFBSSxjQUFBLEdBQUFBLGNBQUE7QUFBQSxJQTJDZEMsWUFBWSwwQkFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFBLE9BQVpBLFlBQVk7QUFBQTtBQUFBTCxPQUFBLENBQUFLLFlBQUEsR0FBQUEsWUFBQTtBQUFBLElBOEJaQyxXQUFXLDBCQUFYQSxXQUFXO0VBQVhBLFdBQVc7RUFBWEEsV0FBVztFQUFYQSxXQUFXO0VBQUEsT0FBWEEsV0FBVztBQUFBO0FBQUFOLE9BQUEsQ0FBQU0sV0FBQSxHQUFBQSxXQUFBO0FBQUEsSUFrQlhDLFlBQVksMEJBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFBLE9BQVpBLFlBQVk7QUFBQTtBQUFBUCxPQUFBLENBQUFPLFlBQUEsR0FBQUEsWUFBQTtBQUFBLElBY1pDLFFBQVEsMEJBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBQSxPQUFSQSxRQUFRO0FBQUE7QUFBQVIsT0FBQSxDQUFBUSxRQUFBLEdBQUFBLFFBQUE7QUFBQSxJQWlCUkMsR0FBRywwQkFBSEEsR0FBRztFQUFIQSxHQUFHO0VBQUEsT0FBSEEsR0FBRztBQUFBO0FBQUFULE9BQUEsQ0FBQVMsR0FBQSxHQUFBQSxHQUFBO0FBQUEsSUFpQkhDLFlBQVksMEJBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFBLE9BQVpBLFlBQVk7QUFBQTtBQUFBVixPQUFBLENBQUFVLFlBQUEsR0FBQUEsWUFBQTtBQUFBLElBd0JaQyxVQUFVLDBCQUFWQSxVQUFVO0VBQVZBLFVBQVU7RUFBVkEsVUFBVTtFQUFWQSxVQUFVO0VBQUEsT0FBVkEsVUFBVTtBQUFBLE9BTXRCO0FBQ0E7QUFBQVgsT0FBQSxDQUFBVyxVQUFBLEdBQUFBLFVBQUE7QUFBQSxJQUNhQyxPQUFPO0VBQUEsU0FBQUEsUUFBQTtJQUFBQyxlQUFBLE9BQUFELE9BQUE7RUFBQTtFQUFBRSxZQUFBLENBQUFGLE9BQUE7SUFBQUcsR0FBQTtJQUFBQyxLQUFBLEVBQ2xCLFNBQUFDLGFBQTJCQyxJQUFZLEVBQWM7TUFDbkQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRDtFQUFDO0lBQUFQLEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFPLGlCQUErQlAsS0FBaUIsRUFBVTtNQUN4RCxPQUFPSSxJQUFJLENBQUNJLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDVCxLQUFLLEVBQUVNLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEU7RUFBQztJQUFBUCxHQUFBO0lBQUFDLEtBQUEsRUFFRCxTQUFBVSxjQUE0QlIsSUFBWSxFQUFlO01BQ3JELE9BQU9DLElBQUksQ0FBQ0MsSUFBSSxDQUFDQyxLQUFLLENBQUNILElBQUksQ0FBQyxFQUFFSSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDakQ7RUFBQztJQUFBUCxHQUFBO0lBQUFDLEtBQUEsRUFFRCxTQUFBVyxrQkFBZ0NYLEtBQWtCLEVBQVU7TUFDMUQsT0FBT0ksSUFBSSxDQUFDSSxTQUFTLENBQUNDLE1BQU0sQ0FBQ1QsS0FBSyxFQUFFTSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFO0VBQUM7SUFBQVAsR0FBQTtJQUFBQyxLQUFBLEVBRUQsU0FBQVksa0JBQWdDVixJQUFZLEVBQW1CO01BQzdELE9BQU9DLElBQUksQ0FBQ0MsSUFBSSxDQUFDQyxLQUFLLENBQUNILElBQUksQ0FBQyxFQUFFSSxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNyRDtFQUFDO0lBQUFQLEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFhLHNCQUFvQ2IsS0FBc0IsRUFBVTtNQUNsRSxPQUFPSSxJQUFJLENBQUNJLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDVCxLQUFLLEVBQUVNLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNyRTtFQUFDO0VBQUEsT0FBQVYsT0FBQTtBQUFBO0FBQUFaLE9BQUEsQ0FBQVksT0FBQSxHQUFBQSxPQUFBO0FBR0gsU0FBU2tCLFlBQVlBLENBQUNDLEdBQVEsRUFBRUMsR0FBUSxFQUF3QjtFQUFBLElBQXRCakIsR0FBUSxHQUFBa0IsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsRUFBRTtFQUNyRCxJQUFJbEIsR0FBRyxFQUFFO0lBQ1AsTUFBTXFCLEtBQUssNEJBQUFDLE1BQUEsQ0FDaUJ0QixHQUFHLHdCQUFBc0IsTUFBQSxDQUFvQmpCLElBQUksQ0FBQ0ksU0FBUyxDQUM3RE8sR0FBRyxDQUNKLGVBQUFNLE1BQUEsQ0FBWWpCLElBQUksQ0FBQ0ksU0FBUyxDQUFDUSxHQUFHLENBQUMsRUFDakM7RUFDSDtFQUNBLE1BQU1JLEtBQUssa0JBQUFDLE1BQUEsQ0FDUWpCLElBQUksQ0FBQ0ksU0FBUyxDQUFDUSxHQUFHLENBQUMsZ0JBQUFLLE1BQUEsQ0FBYWpCLElBQUksQ0FBQ0ksU0FBUyxDQUFDTyxHQUFHLENBQUMsRUFDckU7QUFDSDtBQUVBLFNBQVNPLGFBQWFBLENBQUNQLEdBQVEsRUFBTztFQUNwQyxJQUFJQSxHQUFHLENBQUNRLFFBQVEsS0FBS0osU0FBUyxFQUFFO0lBQzlCLElBQU1LLEdBQVEsR0FBRyxDQUFDLENBQUM7SUFDbkJULEdBQUcsQ0FBQ1UsS0FBSyxDQUFDQyxPQUFPLENBQUMsVUFBQ0MsQ0FBTTtNQUFBLE9BQU1ILEdBQUcsQ0FBQ0csQ0FBQyxDQUFDekIsSUFBSSxDQUFDLEdBQUc7UUFBRUgsR0FBRyxFQUFFNEIsQ0FBQyxDQUFDQyxFQUFFO1FBQUViLEdBQUcsRUFBRVksQ0FBQyxDQUFDWjtNQUFJLENBQUM7SUFBQSxDQUFDLENBQUM7SUFDeEVBLEdBQUcsQ0FBQ1EsUUFBUSxHQUFHQyxHQUFHO0VBQ3BCO0VBQ0EsT0FBT1QsR0FBRyxDQUFDUSxRQUFRO0FBQ3JCO0FBRUEsU0FBU00sYUFBYUEsQ0FBQ2QsR0FBUSxFQUFPO0VBQ3BDLElBQUlBLEdBQUcsQ0FBQ2UsUUFBUSxLQUFLWCxTQUFTLEVBQUU7SUFDOUIsSUFBTUssR0FBUSxHQUFHLENBQUMsQ0FBQztJQUNuQlQsR0FBRyxDQUFDVSxLQUFLLENBQUNDLE9BQU8sQ0FBQyxVQUFDQyxDQUFNO01BQUEsT0FBTUgsR0FBRyxDQUFDRyxDQUFDLENBQUNDLEVBQUUsQ0FBQyxHQUFHO1FBQUU3QixHQUFHLEVBQUU0QixDQUFDLENBQUN6QixJQUFJO1FBQUVhLEdBQUcsRUFBRVksQ0FBQyxDQUFDWjtNQUFJLENBQUM7SUFBQSxDQUFDLENBQUM7SUFDeEVBLEdBQUcsQ0FBQ2UsUUFBUSxHQUFHTixHQUFHO0VBQ3BCO0VBQ0EsT0FBT1QsR0FBRyxDQUFDZSxRQUFRO0FBQ3JCO0FBRUEsU0FBU0MsU0FBU0EsQ0FBQ2YsR0FBUSxFQUFFRCxHQUFRLEVBQUVpQixRQUFhLEVBQXNCO0VBQUEsSUFBcEJqQyxHQUFRLEdBQUFrQixTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxFQUFFO0VBQ2pFLFNBQVNnQixrQkFBa0JBLENBQUNsQixHQUFXLEVBQUVDLEdBQVEsRUFBTztJQUN0RCxJQUFJa0IsT0FBQSxDQUFPbkIsR0FBRyxNQUFBbUIsT0FBQSxDQUFZbEIsR0FBRyxHQUFFLE9BQU9BLEdBQUc7SUFDekMsT0FBT0YsWUFBWSxDQUFDQyxHQUFHLEVBQUVDLEdBQUcsRUFBRWpCLEdBQUcsQ0FBQztFQUNwQztFQUVBLFNBQVNvQyxjQUFjQSxDQUFDQyxJQUFXLEVBQUVwQixHQUFRLEVBQU87SUFDbEQ7SUFDQSxJQUFNcUIsQ0FBQyxHQUFHRCxJQUFJLENBQUNsQixNQUFNO0lBQ3JCLEtBQUssSUFBSW9CLENBQUMsR0FBRyxDQUFDLEVBQUVBLENBQUMsR0FBR0QsQ0FBQyxFQUFFQyxDQUFDLEVBQUUsRUFBRTtNQUMxQixJQUFNdkIsSUFBRyxHQUFHcUIsSUFBSSxDQUFDRSxDQUFDLENBQUM7TUFDbkIsSUFBSTtRQUNGLE9BQU9QLFNBQVMsQ0FBQ2YsR0FBRyxFQUFFRCxJQUFHLEVBQUVpQixRQUFRLENBQUM7TUFDdEMsQ0FBQyxDQUFDLE9BQU9PLENBQUMsRUFBRSxDQUFDO0lBQ2Y7SUFDQSxPQUFPekIsWUFBWSxDQUFDc0IsSUFBSSxFQUFFcEIsR0FBRyxDQUFDO0VBQ2hDO0VBRUEsU0FBU3dCLGFBQWFBLENBQUNDLEtBQWUsRUFBRXpCLEdBQVEsRUFBTztJQUNyRCxJQUFJeUIsS0FBSyxDQUFDQyxPQUFPLENBQUMxQixHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxPQUFPQSxHQUFHO0lBQ3pDLE9BQU9GLFlBQVksQ0FBQzJCLEtBQUssRUFBRXpCLEdBQUcsQ0FBQztFQUNqQztFQUVBLFNBQVMyQixjQUFjQSxDQUFDNUIsR0FBUSxFQUFFQyxHQUFRLEVBQU87SUFDL0M7SUFDQSxJQUFJLENBQUM0QixLQUFLLENBQUNDLE9BQU8sQ0FBQzdCLEdBQUcsQ0FBQyxFQUFFLE9BQU9GLFlBQVksQ0FBQyxPQUFPLEVBQUVFLEdBQUcsQ0FBQztJQUMxRCxPQUFPQSxHQUFHLENBQUNRLEdBQUcsQ0FBQyxVQUFDc0IsRUFBRTtNQUFBLE9BQUtmLFNBQVMsQ0FBQ2UsRUFBRSxFQUFFL0IsR0FBRyxFQUFFaUIsUUFBUSxDQUFDO0lBQUEsRUFBQztFQUN0RDtFQUVBLFNBQVNlLGFBQWFBLENBQUMvQixHQUFRLEVBQU87SUFDcEMsSUFBSUEsR0FBRyxLQUFLLElBQUksRUFBRTtNQUNoQixPQUFPLElBQUk7SUFDYjtJQUNBLElBQU1nQyxDQUFDLEdBQUcsSUFBSUMsSUFBSSxDQUFDakMsR0FBRyxDQUFDO0lBQ3ZCLElBQUlrQyxLQUFLLENBQUNGLENBQUMsQ0FBQ0csT0FBTyxFQUFFLENBQUMsRUFBRTtNQUN0QixPQUFPckMsWUFBWSxDQUFDLE1BQU0sRUFBRUUsR0FBRyxDQUFDO0lBQ2xDO0lBQ0EsT0FBT2dDLENBQUM7RUFDVjtFQUVBLFNBQVNJLGVBQWVBLENBQ3RCM0IsS0FBMkIsRUFDM0I0QixVQUFlLEVBQ2ZyQyxHQUFRLEVBQ0g7SUFDTCxJQUFJQSxHQUFHLEtBQUssSUFBSSxJQUFJa0IsT0FBQSxDQUFPbEIsR0FBRyxNQUFLLFFBQVEsSUFBSTRCLEtBQUssQ0FBQ0MsT0FBTyxDQUFDN0IsR0FBRyxDQUFDLEVBQUU7TUFDakUsT0FBT0YsWUFBWSxDQUFDLFFBQVEsRUFBRUUsR0FBRyxDQUFDO0lBQ3BDO0lBQ0EsSUFBTXNDLE1BQVcsR0FBRyxDQUFDLENBQUM7SUFDdEJDLE1BQU0sQ0FBQ0MsbUJBQW1CLENBQUMvQixLQUFLLENBQUMsQ0FBQ0MsT0FBTyxDQUFDLFVBQUMzQixHQUFHLEVBQUs7TUFDakQsSUFBTTBELElBQUksR0FBR2hDLEtBQUssQ0FBQzFCLEdBQUcsQ0FBQztNQUN2QixJQUFNMkQsQ0FBQyxHQUFHSCxNQUFNLENBQUNJLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUM3QyxHQUFHLEVBQUVqQixHQUFHLENBQUMsR0FDcERpQixHQUFHLENBQUNqQixHQUFHLENBQUMsR0FDUm9CLFNBQVM7TUFDYm1DLE1BQU0sQ0FBQ0csSUFBSSxDQUFDMUQsR0FBRyxDQUFDLEdBQUdnQyxTQUFTLENBQUMyQixDQUFDLEVBQUVELElBQUksQ0FBQzFDLEdBQUcsRUFBRWlCLFFBQVEsRUFBRXlCLElBQUksQ0FBQzFELEdBQUcsQ0FBQztJQUMvRCxDQUFDLENBQUM7SUFDRndELE1BQU0sQ0FBQ0MsbUJBQW1CLENBQUN4QyxHQUFHLENBQUMsQ0FBQ1UsT0FBTyxDQUFDLFVBQUMzQixHQUFHLEVBQUs7TUFDL0MsSUFBSSxDQUFDd0QsTUFBTSxDQUFDSSxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDcEMsS0FBSyxFQUFFMUIsR0FBRyxDQUFDLEVBQUU7UUFDckR1RCxNQUFNLENBQUN2RCxHQUFHLENBQUMsR0FBR2dDLFNBQVMsQ0FBQ2YsR0FBRyxDQUFDakIsR0FBRyxDQUFDLEVBQUVzRCxVQUFVLEVBQUVyQixRQUFRLEVBQUVqQyxHQUFHLENBQUM7TUFDOUQ7SUFDRixDQUFDLENBQUM7SUFDRixPQUFPdUQsTUFBTTtFQUNmO0VBRUEsSUFBSXZDLEdBQUcsS0FBSyxLQUFLLEVBQUUsT0FBT0MsR0FBRztFQUM3QixJQUFJRCxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQ2hCLElBQUlDLEdBQUcsS0FBSyxJQUFJLEVBQUUsT0FBT0EsR0FBRztJQUM1QixPQUFPRixZQUFZLENBQUNDLEdBQUcsRUFBRUMsR0FBRyxDQUFDO0VBQy9CO0VBQ0E7RUFDQSxPQUFPa0IsT0FBQSxDQUFPbkIsR0FBRyxNQUFLLFFBQVEsSUFBSUEsR0FBRyxDQUFDK0MsR0FBRyxLQUFLM0MsU0FBUyxFQUFFO0lBQ3ZESixHQUFHLEdBQUdnRCxPQUFPLENBQUNoRCxHQUFHLENBQUMrQyxHQUFHLENBQUM7RUFDeEI7RUFDQSxJQUFJbEIsS0FBSyxDQUFDQyxPQUFPLENBQUM5QixHQUFHLENBQUMsRUFBRSxPQUFPeUIsYUFBYSxDQUFDekIsR0FBRyxFQUFFQyxHQUFHLENBQUM7RUFDdEQsSUFBSWtCLE9BQUEsQ0FBT25CLEdBQUcsTUFBSyxRQUFRLEVBQUU7SUFDM0IsT0FBT0EsR0FBRyxDQUFDNkMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxHQUNyQ3pCLGNBQWMsQ0FBQ3BCLEdBQUcsQ0FBQ2lELFlBQVksRUFBRWhELEdBQUcsQ0FBQyxHQUNyQ0QsR0FBRyxDQUFDNkMsY0FBYyxDQUFDLFlBQVksQ0FBQyxHQUNoQ2pCLGNBQWMsQ0FBQzVCLEdBQUcsQ0FBQ2tELFVBQVUsRUFBRWpELEdBQUcsQ0FBQyxHQUNuQ0QsR0FBRyxDQUFDNkMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUMzQlIsZUFBZSxDQUFDcEIsUUFBUSxDQUFDakIsR0FBRyxDQUFDLEVBQUVBLEdBQUcsQ0FBQ3NDLFVBQVUsRUFBRXJDLEdBQUcsQ0FBQyxHQUNuREYsWUFBWSxDQUFDQyxHQUFHLEVBQUVDLEdBQUcsQ0FBQztFQUM1QjtFQUNBO0VBQ0EsSUFBSUQsR0FBRyxLQUFLa0MsSUFBSSxJQUFJLE9BQU9qQyxHQUFHLEtBQUssUUFBUSxFQUFFLE9BQU8rQixhQUFhLENBQUMvQixHQUFHLENBQUM7RUFDdEUsT0FBT2lCLGtCQUFrQixDQUFDbEIsR0FBRyxFQUFFQyxHQUFHLENBQUM7QUFDckM7QUFFQSxTQUFTYixJQUFJQSxDQUFJYSxHQUFRLEVBQUVELEdBQVEsRUFBSztFQUN0QyxPQUFPZ0IsU0FBUyxDQUFDZixHQUFHLEVBQUVELEdBQUcsRUFBRU8sYUFBYSxDQUFDO0FBQzNDO0FBRUEsU0FBU2IsTUFBTUEsQ0FBSU8sR0FBTSxFQUFFRCxHQUFRLEVBQU87RUFDeEMsT0FBT2dCLFNBQVMsQ0FBQ2YsR0FBRyxFQUFFRCxHQUFHLEVBQUVjLGFBQWEsQ0FBQztBQUMzQztBQUVBLFNBQVNxQyxDQUFDQSxDQUFDbkQsR0FBUSxFQUFFO0VBQ25CLE9BQU87SUFBRWtELFVBQVUsRUFBRWxEO0VBQUksQ0FBQztBQUM1QjtBQUVBLFNBQVNvRCxDQUFDQSxDQUFBLEVBQWlCO0VBQUEsU0FBQUMsSUFBQSxHQUFBbkQsU0FBQSxDQUFBQyxNQUFBLEVBQWJrQixJQUFJLE9BQUFRLEtBQUEsQ0FBQXdCLElBQUEsR0FBQUMsSUFBQSxNQUFBQSxJQUFBLEdBQUFELElBQUEsRUFBQUMsSUFBQTtJQUFKakMsSUFBSSxDQUFBaUMsSUFBQSxJQUFBcEQsU0FBQSxDQUFBb0QsSUFBQTtFQUFBO0VBQ2hCLE9BQU87SUFBRUwsWUFBWSxFQUFFNUI7RUFBSyxDQUFDO0FBQy9CO0FBRUEsU0FBU2tDLENBQUNBLENBQUM3QyxLQUFZLEVBQUU0QixVQUFlLEVBQUU7RUFDeEMsT0FBTztJQUFFNUIsS0FBSyxFQUFMQSxLQUFLO0lBQUU0QixVQUFVLEVBQVZBO0VBQVcsQ0FBQztBQUM5Qjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsU0FBUy9DLENBQUNBLENBQUNpRSxJQUFZLEVBQUU7RUFDdkIsT0FBTztJQUFFVCxHQUFHLEVBQUVTO0VBQUssQ0FBQztBQUN0QjtBQUVBLElBQU1SLE9BQVksR0FBRztFQUNuQlMsV0FBVyxFQUFFRixDQUFDLENBQ1osQ0FDRTtJQUNFcEUsSUFBSSxFQUFFLG1CQUFtQjtJQUN6QjBCLEVBQUUsRUFBRSxtQkFBbUI7SUFDdkJiLEdBQUcsRUFBRW1ELENBQUMsQ0FBQzVELENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztFQUM3QixDQUFDLENBQ0YsRUFDRCxLQUFLLENBQ047RUFDRG1FLGVBQWUsRUFBRUgsQ0FBQyxDQUNoQixDQUNFO0lBQUVwRSxJQUFJLEVBQUUsb0JBQW9CO0lBQUUwQixFQUFFLEVBQUUsb0JBQW9CO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDakU7SUFBRWIsSUFBSSxFQUFFLGFBQWE7SUFBRTBCLEVBQUUsRUFBRSxhQUFhO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLGtCQUFrQjtFQUFFLENBQUMsQ0FDdkUsRUFDRCxLQUFLLENBQ047RUFDRG9FLGdCQUFnQixFQUFFSixDQUFDLENBQ2pCLENBQUM7SUFBRXBFLElBQUksRUFBRSxZQUFZO0lBQUUwQixFQUFFLEVBQUUsWUFBWTtJQUFFYixHQUFHLEVBQUVtRCxDQUFDLENBQUM1RCxDQUFDLENBQUMsWUFBWSxDQUFDO0VBQUUsQ0FBQyxDQUFDLEVBQ25FLEtBQUssQ0FDTjtFQUNEcUUsaUJBQWlCLEVBQUVMLENBQUMsQ0FDbEIsQ0FBQztJQUFFcEUsSUFBSSxFQUFFLFlBQVk7SUFBRTBCLEVBQUUsRUFBRSxZQUFZO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLFlBQVk7RUFBRSxDQUFDLENBQUMsRUFDaEUsS0FBSyxDQUNOO0VBQ0RzRSxVQUFVLEVBQUVOLENBQUMsQ0FDWCxDQUNFO0lBQUVwRSxJQUFJLEVBQUUsS0FBSztJQUFFMEIsRUFBRSxFQUFFLEtBQUs7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUNuQztJQUFFYixJQUFJLEVBQUUsV0FBVztJQUFFMEIsRUFBRSxFQUFFLFdBQVc7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUMvQztJQUFFYixJQUFJLEVBQUUsYUFBYTtJQUFFMEIsRUFBRSxFQUFFLGFBQWE7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUNuRDtJQUNFYixJQUFJLEVBQUUsZ0JBQWdCO0lBQ3RCMEIsRUFBRSxFQUFFLGdCQUFnQjtJQUNwQmIsR0FBRyxFQUFFVCxDQUFDLENBQUMsZ0JBQWdCO0VBQ3pCLENBQUMsRUFDRDtJQUFFSixJQUFJLEVBQUUsV0FBVztJQUFFMEIsRUFBRSxFQUFFLFdBQVc7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUMvQztJQUFFYixJQUFJLEVBQUUsb0JBQW9CO0lBQUUwQixFQUFFLEVBQUUsb0JBQW9CO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDakU7SUFBRWIsSUFBSSxFQUFFLGVBQWU7SUFBRTBCLEVBQUUsRUFBRSxlQUFlO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQUUsQ0FBQyxFQUNyRTtJQUNFakIsSUFBSSxFQUFFLDBCQUEwQjtJQUNoQzBCLEVBQUUsRUFBRSwwQkFBMEI7SUFDOUJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsRUFDRDtJQUNFakIsSUFBSSxFQUFFLHFCQUFxQjtJQUMzQjBCLEVBQUUsRUFBRSxxQkFBcUI7SUFDekJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsRUFDRDtJQUFFakIsSUFBSSxFQUFFLGFBQWE7SUFBRTBCLEVBQUUsRUFBRSxhQUFhO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLGFBQWE7RUFBRSxDQUFDLEVBQ2pFO0lBQ0VKLElBQUksRUFBRSx1QkFBdUI7SUFDN0IwQixFQUFFLEVBQUUsdUJBQXVCO0lBQzNCYixHQUFHLEVBQUVULENBQUMsQ0FBQyx1QkFBdUI7RUFDaEMsQ0FBQyxFQUNEO0lBQUVKLElBQUksRUFBRSxPQUFPO0lBQUUwQixFQUFFLEVBQUUsT0FBTztJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUViLENBQUMsQ0FBQyxPQUFPLENBQUM7RUFBRSxDQUFDLEVBQzdEO0lBQUVKLElBQUksRUFBRSxZQUFZO0lBQUUwQixFQUFFLEVBQUUsWUFBWTtJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxZQUFZO0VBQUUsQ0FBQyxFQUM5RDtJQUNFSixJQUFJLEVBQUUsZ0JBQWdCO0lBQ3RCMEIsRUFBRSxFQUFFLGdCQUFnQjtJQUNwQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFYixDQUFDLENBQUMsZ0JBQWdCLENBQUM7RUFDdkMsQ0FBQyxFQUNEO0lBQ0VKLElBQUksRUFBRSxxQkFBcUI7SUFDM0IwQixFQUFFLEVBQUUscUJBQXFCO0lBQ3pCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUN0QixDQUFDLEVBQ0Q7SUFBRWpCLElBQUksRUFBRSxXQUFXO0lBQUUwQixFQUFFLEVBQUUsV0FBVztJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQy9DO0lBQ0ViLElBQUksRUFBRSxjQUFjO0lBQ3BCMEIsRUFBRSxFQUFFLGNBQWM7SUFDbEJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLGNBQWMsQ0FBQztFQUNyQyxDQUFDLEVBQ0Q7SUFDRUosSUFBSSxFQUFFLG1CQUFtQjtJQUN6QjBCLEVBQUUsRUFBRSxtQkFBbUI7SUFDdkJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLFlBQVksQ0FBQztFQUNuQyxDQUFDLEVBQ0Q7SUFDRUosSUFBSSxFQUFFLHFCQUFxQjtJQUMzQjBCLEVBQUUsRUFBRSxxQkFBcUI7SUFDekJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLFlBQVksQ0FBQztFQUNuQyxDQUFDLEVBQ0Q7SUFDRUosSUFBSSxFQUFFLGtDQUFrQztJQUN4QzBCLEVBQUUsRUFBRSxrQ0FBa0M7SUFDdENiLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLGtDQUFrQztFQUMzQyxDQUFDLENBQ0YsRUFDRCxLQUFLLENBQ047RUFDRHVFLEtBQUssRUFBRVAsQ0FBQyxDQUNOLENBQ0U7SUFDRXBFLElBQUksRUFBRSxxQkFBcUI7SUFDM0IwQixFQUFFLEVBQUUscUJBQXFCO0lBQ3pCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUN0QixDQUFDLEVBQ0Q7SUFDRWpCLElBQUksRUFBRSxlQUFlO0lBQ3JCMEIsRUFBRSxFQUFFLGVBQWU7SUFDbkJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLGVBQWUsQ0FBQztFQUN0QyxDQUFDLENBQ0YsRUFDRCxLQUFLLENBQ047RUFDRHdFLGFBQWEsRUFBRVIsQ0FBQyxDQUNkLENBQ0U7SUFBRXBFLElBQUksRUFBRSxZQUFZO0lBQUUwQixFQUFFLEVBQUUsWUFBWTtJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUFFLENBQUMsRUFDL0Q7SUFDRWpCLElBQUksRUFBRSxZQUFZO0lBQ2xCMEIsRUFBRSxFQUFFLFlBQVk7SUFDaEJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLFlBQVksQ0FBQztFQUNuQyxDQUFDLEVBQ0Q7SUFBRUosSUFBSSxFQUFFLGdCQUFnQjtJQUFFMEIsRUFBRSxFQUFFLGdCQUFnQjtJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUFFLENBQUMsRUFDdkU7SUFDRWpCLElBQUksRUFBRSx5QkFBeUI7SUFDL0IwQixFQUFFLEVBQUUseUJBQXlCO0lBQzdCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUViLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQztFQUNoRCxDQUFDLEVBQ0Q7SUFDRUosSUFBSSxFQUFFLDBCQUEwQjtJQUNoQzBCLEVBQUUsRUFBRSwwQkFBMEI7SUFDOUJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLDBCQUEwQixDQUFDO0VBQ2pELENBQUMsQ0FDRixFQUNELEtBQUssQ0FDTjtFQUNEeUUsVUFBVSxFQUFFVCxDQUFDLENBQUMsQ0FBQztJQUFFcEUsSUFBSSxFQUFFLFlBQVk7SUFBRTBCLEVBQUUsRUFBRSxZQUFZO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztFQUN6RWlFLHVCQUF1QixFQUFFVixDQUFDLENBQ3hCLENBQ0U7SUFDRXBFLElBQUksRUFBRSxpQkFBaUI7SUFDdkIwQixFQUFFLEVBQUUsaUJBQWlCO0lBQ3JCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUrQyxDQUFDLENBQUM1RCxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUM7RUFDeEMsQ0FBQyxFQUNEO0lBQUVKLElBQUksRUFBRSxTQUFTO0lBQUUwQixFQUFFLEVBQUUsU0FBUztJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUFFLENBQUMsRUFDekQ7SUFBRWpCLElBQUksRUFBRSxTQUFTO0lBQUUwQixFQUFFLEVBQUUsU0FBUztJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUFFLENBQUMsRUFDekQ7SUFBRWpCLElBQUksRUFBRSxVQUFVO0lBQUUwQixFQUFFLEVBQUUsVUFBVTtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLENBQzlDLEVBQ0QsS0FBSyxDQUNOO0VBQ0RrRSxZQUFZLEVBQUVYLENBQUMsQ0FDYixDQUNFO0lBQUVwRSxJQUFJLEVBQUUsU0FBUztJQUFFMEIsRUFBRSxFQUFFLFNBQVM7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUMzQztJQUFFYixJQUFJLEVBQUUsY0FBYztJQUFFMEIsRUFBRSxFQUFFLGNBQWM7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUNyRDtJQUFFYixJQUFJLEVBQUUsd0JBQXdCO0lBQUUwQixFQUFFLEVBQUUsd0JBQXdCO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDekU7SUFBRWIsSUFBSSxFQUFFLGdCQUFnQjtJQUFFMEIsRUFBRSxFQUFFLGdCQUFnQjtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ3pEO0lBQUViLElBQUksRUFBRSxRQUFRO0lBQUUwQixFQUFFLEVBQUUsUUFBUTtJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxRQUFRO0VBQUUsQ0FBQyxFQUNsRDtJQUNFSixJQUFJLEVBQUUsZUFBZTtJQUNyQjBCLEVBQUUsRUFBRSxlQUFlO0lBQ25CYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUrQyxDQUFDLENBQUM1RCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztFQUMxQyxDQUFDLENBQ0YsRUFDRCxLQUFLLENBQ047RUFDRDRFLGNBQWMsRUFBRVosQ0FBQyxDQUNmLENBQ0U7SUFBRXBFLElBQUksRUFBRSxJQUFJO0lBQUUwQixFQUFFLEVBQUUsSUFBSTtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ2pDO0lBQUViLElBQUksRUFBRSxTQUFTO0lBQUUwQixFQUFFLEVBQUUsU0FBUztJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQzNDO0lBQUViLElBQUksRUFBRSx3QkFBd0I7SUFBRTBCLEVBQUUsRUFBRSx3QkFBd0I7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUN6RTtJQUFFYixJQUFJLEVBQUUsZ0JBQWdCO0lBQUUwQixFQUFFLEVBQUUsZ0JBQWdCO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDekQ7SUFBRWIsSUFBSSxFQUFFLFFBQVE7SUFBRTBCLEVBQUUsRUFBRSxRQUFRO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLFFBQVE7RUFBRSxDQUFDLENBQ25ELEVBQ0QsS0FBSyxDQUNOO0VBQ0Q2RSx3QkFBd0IsRUFBRWIsQ0FBQyxDQUN6QixDQUNFO0lBQ0VwRSxJQUFJLEVBQUUsaUJBQWlCO0lBQ3ZCMEIsRUFBRSxFQUFFLGlCQUFpQjtJQUNyQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFK0MsQ0FBQyxDQUFDNUQsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUM7RUFDM0MsQ0FBQyxFQUNEO0lBQUVKLElBQUksRUFBRSxTQUFTO0lBQUUwQixFQUFFLEVBQUUsU0FBUztJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUViLENBQUMsQ0FBQyxPQUFPLENBQUM7RUFBRSxDQUFDLEVBQ2pFO0lBQUVKLElBQUksRUFBRSxTQUFTO0lBQUUwQixFQUFFLEVBQUUsU0FBUztJQUFFYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUViLENBQUMsQ0FBQyxPQUFPLENBQUM7RUFBRSxDQUFDLEVBQ2pFO0lBQUVKLElBQUksRUFBRSxVQUFVO0lBQUUwQixFQUFFLEVBQUUsVUFBVTtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLENBQzlDLEVBQ0QsS0FBSyxDQUNOO0VBQ0RxRSxlQUFlLEVBQUVkLENBQUMsQ0FDaEIsQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLFNBQVM7SUFBRTBCLEVBQUUsRUFBRSxTQUFTO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDM0M7SUFBRWIsSUFBSSxFQUFFLGNBQWM7SUFBRTBCLEVBQUUsRUFBRSxjQUFjO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQUUsQ0FBQyxFQUNuRTtJQUNFakIsSUFBSSxFQUFFLHNDQUFzQztJQUM1QzBCLEVBQUUsRUFBRSxzQ0FBc0M7SUFDMUNiLEdBQUcsRUFBRTtFQUNQLENBQUMsRUFDRDtJQUNFYixJQUFJLEVBQUUsOEJBQThCO0lBQ3BDMEIsRUFBRSxFQUFFLDhCQUE4QjtJQUNsQ2IsR0FBRyxFQUFFO0VBQ1AsQ0FBQyxFQUNEO0lBQ0ViLElBQUksRUFBRSw4QkFBOEI7SUFDcEMwQixFQUFFLEVBQUUsOEJBQThCO0lBQ2xDYixHQUFHLEVBQUU7RUFDUCxDQUFDLEVBQ0Q7SUFBRWIsSUFBSSxFQUFFLHNCQUFzQjtJQUFFMEIsRUFBRSxFQUFFLHNCQUFzQjtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ3JFO0lBQUViLElBQUksRUFBRSxRQUFRO0lBQUUwQixFQUFFLEVBQUUsUUFBUTtJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxRQUFRO0VBQUUsQ0FBQyxFQUNsRDtJQUNFSixJQUFJLEVBQUUsZUFBZTtJQUNyQjBCLEVBQUUsRUFBRSxlQUFlO0lBQ25CYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUrQyxDQUFDLENBQUM1RCxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQztFQUMzQyxDQUFDLEVBQ0Q7SUFBRUosSUFBSSxFQUFFLElBQUk7SUFBRTBCLEVBQUUsRUFBRSxJQUFJO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQUUsQ0FBQyxDQUNoRCxFQUNELEtBQUssQ0FDTjtFQUNEa0UsS0FBSyxFQUFFZixDQUFDLENBQ04sQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLGdCQUFnQjtJQUFFMEIsRUFBRSxFQUFFLGdCQUFnQjtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ3pEO0lBQUViLElBQUksRUFBRSxRQUFRO0lBQUUwQixFQUFFLEVBQUUsUUFBUTtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ3pDO0lBQUViLElBQUksRUFBRSxPQUFPO0lBQUUwQixFQUFFLEVBQUUsT0FBTztJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLENBQ3hDLEVBQ0QsS0FBSyxDQUNOO0VBQ0R1RSxVQUFVLEVBQUVoQixDQUFDLENBQ1gsQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLFdBQVc7SUFBRTBCLEVBQUUsRUFBRSxXQUFXO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRThCLElBQUk7RUFBRSxDQUFDLEVBQy9EO0lBQ0UvQyxJQUFJLEVBQUUsaUJBQWlCO0lBQ3ZCMEIsRUFBRSxFQUFFLGlCQUFpQjtJQUNyQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFOEIsSUFBSTtFQUN4QixDQUFDLEVBQ0Q7SUFBRS9DLElBQUksRUFBRSxpQkFBaUI7SUFBRTBCLEVBQUUsRUFBRSxpQkFBaUI7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUMzRDtJQUNFYixJQUFJLEVBQUUsb0JBQW9CO0lBQzFCMEIsRUFBRSxFQUFFLG9CQUFvQjtJQUN4QmIsR0FBRyxFQUFFVCxDQUFDLENBQUMsb0JBQW9CO0VBQzdCLENBQUMsRUFDRDtJQUNFSixJQUFJLEVBQUUsVUFBVTtJQUNoQjBCLEVBQUUsRUFBRSxVQUFVO0lBQ2RiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRThCLElBQUk7RUFDeEIsQ0FBQyxFQUNEO0lBQ0UvQyxJQUFJLEVBQUUsTUFBTTtJQUNaMEIsRUFBRSxFQUFFLE1BQU07SUFDVmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFYixDQUFDLENBQUMsZ0JBQWdCLENBQUM7RUFDdkMsQ0FBQyxDQUNGLEVBQ0QsS0FBSyxDQUNOO0VBQ0RpRixrQkFBa0IsRUFBRWpCLENBQUMsQ0FDbkIsQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLE1BQU07SUFBRTBCLEVBQUUsRUFBRSxNQUFNO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLGdCQUFnQjtFQUFFLENBQUMsRUFDdEQ7SUFDRUosSUFBSSxFQUFFLFVBQVU7SUFDaEIwQixFQUFFLEVBQUUsVUFBVTtJQUNkYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUViLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztFQUMzQyxDQUFDLENBQ0YsRUFDRCxLQUFLLENBQ047RUFDRGtGLGNBQWMsRUFBRWxCLENBQUMsQ0FDZixDQUNFO0lBQUVwRSxJQUFJLEVBQUUsTUFBTTtJQUFFMEIsRUFBRSxFQUFFLE1BQU07SUFBRWIsR0FBRyxFQUFFVCxDQUFDLENBQUMsb0JBQW9CO0VBQUUsQ0FBQyxFQUMxRDtJQUFFSixJQUFJLEVBQUUsU0FBUztJQUFFMEIsRUFBRSxFQUFFLFNBQVM7SUFBRWIsR0FBRyxFQUFFVCxDQUFDLENBQUMsdUJBQXVCO0VBQUUsQ0FBQyxDQUNwRSxFQUNELEtBQUssQ0FDTjtFQUNEbUYsa0JBQWtCLEVBQUVuQixDQUFDLENBQ25CLENBQ0U7SUFBRXBFLElBQUksRUFBRSxNQUFNO0lBQUUwQixFQUFFLEVBQUUsTUFBTTtJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxvQkFBb0I7RUFBRSxDQUFDLEVBQzFEO0lBQUVKLElBQUksRUFBRSxTQUFTO0lBQUUwQixFQUFFLEVBQUUsU0FBUztJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxnQkFBZ0I7RUFBRSxDQUFDLENBQzdELEVBQ0QsS0FBSyxDQUNOO0VBQ0RvRixVQUFVLEVBQUVwQixDQUFDLENBQ1gsQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLGNBQWM7SUFBRTBCLEVBQUUsRUFBRSxjQUFjO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQUUsQ0FBQyxFQUNuRTtJQUNFakIsSUFBSSxFQUFFLGNBQWM7SUFDcEIwQixFQUFFLEVBQUUsY0FBYztJQUNsQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFYixDQUFDLENBQUMsY0FBYyxDQUFDO0VBQ3JDLENBQUMsQ0FDRixFQUNELEtBQUssQ0FDTjtFQUNEcUYsY0FBYyxFQUFFckIsQ0FBQyxDQUNmLENBQ0U7SUFBRXBFLElBQUksRUFBRSxZQUFZO0lBQUUwQixFQUFFLEVBQUUsWUFBWTtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ2pEO0lBQUViLElBQUksRUFBRSxrQkFBa0I7SUFBRTBCLEVBQUUsRUFBRSxrQkFBa0I7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUM3RDtJQUFFYixJQUFJLEVBQUUscUJBQXFCO0lBQUUwQixFQUFFLEVBQUUscUJBQXFCO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDbkU7SUFBRWIsSUFBSSxFQUFFLFlBQVk7SUFBRTBCLEVBQUUsRUFBRSxZQUFZO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsQ0FDbEQsRUFDRCxLQUFLLENBQ047RUFDRDZFLFlBQVksRUFBRXRCLENBQUMsQ0FDYixDQUNFO0lBQ0VwRSxJQUFJLEVBQUUsU0FBUztJQUNmMEIsRUFBRSxFQUFFLFNBQVM7SUFDYmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFLEVBQUU7RUFDdEIsQ0FBQyxFQUNEO0lBQ0VqQixJQUFJLEVBQUUsaUJBQWlCO0lBQ3ZCMEIsRUFBRSxFQUFFLGlCQUFpQjtJQUNyQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFLEVBQUU7RUFDdEIsQ0FBQyxDQUNGLEVBQ0QsS0FBSyxDQUNOO0VBQ0QwRSxxQkFBcUIsRUFBRXZCLENBQUMsQ0FDdEIsQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLFVBQVU7SUFBRTBCLEVBQUUsRUFBRSxVQUFVO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLFVBQVUsQ0FBQztFQUFFLENBQUMsRUFDdEU7SUFDRUosSUFBSSxFQUFFLFFBQVE7SUFDZDBCLEVBQUUsRUFBRSxRQUFRO0lBQ1piLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLFFBQVEsQ0FBQztFQUMvQixDQUFDLEVBQ0Q7SUFDRUosSUFBSSxFQUFFLGNBQWM7SUFDcEIwQixFQUFFLEVBQUUsY0FBYztJQUNsQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFYixDQUFDLENBQUMsY0FBYyxDQUFDO0VBQ3JDLENBQUMsQ0FDRixFQUNELEtBQUssQ0FDTjtFQUNEd0YsTUFBTSxFQUFFeEIsQ0FBQyxDQUNQLENBQ0U7SUFDRXBFLElBQUksRUFBRSxhQUFhO0lBQ25CMEIsRUFBRSxFQUFFLGFBQWE7SUFDakJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRWIsQ0FBQyxDQUFDLGFBQWEsQ0FBQztFQUNwQyxDQUFDLEVBQ0Q7SUFBRUosSUFBSSxFQUFFLFFBQVE7SUFBRTBCLEVBQUUsRUFBRSxRQUFRO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQUUsQ0FBQyxFQUN2RDtJQUNFakIsSUFBSSxFQUFFLG1CQUFtQjtJQUN6QjBCLEVBQUUsRUFBRSxtQkFBbUI7SUFDdkJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsQ0FDRixFQUNELEtBQUssQ0FDTjtFQUNENEUsUUFBUSxFQUFFekIsQ0FBQyxDQUNULENBQ0U7SUFBRXBFLElBQUksRUFBRSxPQUFPO0lBQUUwQixFQUFFLEVBQUUsT0FBTztJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ3ZDO0lBQ0ViLElBQUksRUFBRSwwQkFBMEI7SUFDaEMwQixFQUFFLEVBQUUsMEJBQTBCO0lBQzlCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUN0QixDQUFDLEVBQ0Q7SUFDRWpCLElBQUksRUFBRSxvQkFBb0I7SUFDMUIwQixFQUFFLEVBQUUsb0JBQW9CO0lBQ3hCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUN0QixDQUFDLEVBQ0Q7SUFBRWpCLElBQUksRUFBRSxNQUFNO0lBQUUwQixFQUFFLEVBQUUsTUFBTTtJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxjQUFjO0VBQUUsQ0FBQyxFQUNwRDtJQUNFSixJQUFJLEVBQUUsYUFBYTtJQUNuQjBCLEVBQUUsRUFBRSxhQUFhO0lBQ2pCYixHQUFHLEVBQUVULENBQUMsQ0FBQyxhQUFhO0VBQ3RCLENBQUMsRUFDRDtJQUNFSixJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCMEIsRUFBRSxFQUFFLG1CQUFtQjtJQUN2QmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFLEVBQUU7RUFDdEIsQ0FBQyxFQUNEO0lBQUVqQixJQUFJLEVBQUUsb0JBQW9CO0lBQUUwQixFQUFFLEVBQUUsb0JBQW9CO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsRUFDakU7SUFBRWIsSUFBSSxFQUFFLHFCQUFxQjtJQUFFMEIsRUFBRSxFQUFFLHFCQUFxQjtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQ25FO0lBQ0ViLElBQUksRUFBRSxzQkFBc0I7SUFDNUIwQixFQUFFLEVBQUUsc0JBQXNCO0lBQzFCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUsRUFBRTtFQUN0QixDQUFDLENBQ0YsRUFDRCxLQUFLLENBQ047RUFDRDZFLFlBQVksRUFBRTFCLENBQUMsQ0FDYixDQUNFO0lBQUVwRSxJQUFJLEVBQUUsVUFBVTtJQUFFMEIsRUFBRSxFQUFFLFVBQVU7SUFBRWIsR0FBRyxFQUFFVCxDQUFDLENBQUMsVUFBVTtFQUFFLENBQUMsRUFDeEQ7SUFBRUosSUFBSSxFQUFFLG1CQUFtQjtJQUFFMEIsRUFBRSxFQUFFLG1CQUFtQjtJQUFFYixHQUFHLEVBQUU7RUFBRyxDQUFDLEVBQy9EO0lBQUViLElBQUksRUFBRSxnQkFBZ0I7SUFBRTBCLEVBQUUsRUFBRSxnQkFBZ0I7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxFQUN6RDtJQUFFYixJQUFJLEVBQUUsWUFBWTtJQUFFMEIsRUFBRSxFQUFFLFlBQVk7SUFBRWIsR0FBRyxFQUFFO0VBQUcsQ0FBQyxDQUNsRCxFQUNELEtBQUssQ0FDTjtFQUNEa0YsY0FBYyxFQUFFM0IsQ0FBQyxDQUNmLENBQ0U7SUFBRXBFLElBQUksRUFBRSxLQUFLO0lBQUUwQixFQUFFLEVBQUUsS0FBSztJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxLQUFLO0VBQUUsQ0FBQyxFQUN6QztJQUFFSixJQUFJLEVBQUUsVUFBVTtJQUFFMEIsRUFBRSxFQUFFLFVBQVU7SUFBRWIsR0FBRyxFQUFFVCxDQUFDLENBQUMsVUFBVTtFQUFFLENBQUMsRUFDeEQ7SUFDRUosSUFBSSxFQUFFLHNCQUFzQjtJQUM1QjBCLEVBQUUsRUFBRSxzQkFBc0I7SUFDMUJiLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLHNCQUFzQjtFQUMvQixDQUFDLEVBQ0Q7SUFBRUosSUFBSSxFQUFFLFNBQVM7SUFBRTBCLEVBQUUsRUFBRSxTQUFTO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLFNBQVM7RUFBRSxDQUFDLENBQ3RELEVBQ0QsS0FBSyxDQUNOO0VBQ0Q0RixPQUFPLEVBQUU1QixDQUFDLENBQUMsQ0FBQztJQUFFcEUsSUFBSSxFQUFFLGFBQWE7SUFBRTBCLEVBQUUsRUFBRSxhQUFhO0lBQUViLEdBQUcsRUFBRTtFQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztFQUN4RW9GLG9CQUFvQixFQUFFN0IsQ0FBQyxDQUNyQixDQUNFO0lBQUVwRSxJQUFJLEVBQUUsVUFBVTtJQUFFMEIsRUFBRSxFQUFFLFVBQVU7SUFBRWIsR0FBRyxFQUFFO0VBQU0sQ0FBQyxFQUNoRDtJQUFFYixJQUFJLEVBQUUsV0FBVztJQUFFMEIsRUFBRSxFQUFFLFdBQVc7SUFBRWIsR0FBRyxFQUFFO0VBQU0sQ0FBQyxFQUNsRDtJQUFFYixJQUFJLEVBQUUsWUFBWTtJQUFFMEIsRUFBRSxFQUFFLFlBQVk7SUFBRWIsR0FBRyxFQUFFO0VBQU0sQ0FBQyxFQUNwRDtJQUFFYixJQUFJLEVBQUUsZUFBZTtJQUFFMEIsRUFBRSxFQUFFLGVBQWU7SUFBRWIsR0FBRyxFQUFFO0VBQU0sQ0FBQyxFQUMxRDtJQUFFYixJQUFJLEVBQUUsZ0JBQWdCO0lBQUUwQixFQUFFLEVBQUUsZ0JBQWdCO0lBQUViLEdBQUcsRUFBRTtFQUFNLENBQUMsQ0FDN0QsRUFDRCxLQUFLLENBQ047RUFDRHFGLFFBQVEsRUFBRTlCLENBQUMsQ0FDVCxDQUNFO0lBQUVwRSxJQUFJLEVBQUUsTUFBTTtJQUFFMEIsRUFBRSxFQUFFLE1BQU07SUFBRWIsR0FBRyxFQUFFVCxDQUFDLENBQUMsY0FBYztFQUFFLENBQUMsRUFDcEQ7SUFBRUosSUFBSSxFQUFFLFNBQVM7SUFBRTBCLEVBQUUsRUFBRSxTQUFTO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLEtBQUs7RUFBRSxDQUFDLENBQ2xELEVBQ0QsS0FBSyxDQUNOO0VBQ0QrRixXQUFXLEVBQUUvQixDQUFDLENBQ1osQ0FDRTtJQUFFcEUsSUFBSSxFQUFFLFFBQVE7SUFBRTBCLEVBQUUsRUFBRSxRQUFRO0lBQUViLEdBQUcsRUFBRVQsQ0FBQyxDQUFDLFFBQVE7RUFBRSxDQUFDLEVBQ2xEO0lBQ0VKLElBQUksRUFBRSxtQkFBbUI7SUFDekIwQixFQUFFLEVBQUUsbUJBQW1CO0lBQ3ZCYixHQUFHLEVBQUVvRCxDQUFDLENBQUNoRCxTQUFTLEVBQUUrQyxDQUFDLENBQUMsRUFBRSxDQUFDO0VBQ3pCLENBQUMsRUFDRDtJQUNFaEUsSUFBSSxFQUFFLFNBQVM7SUFDZjBCLEVBQUUsRUFBRSxTQUFTO0lBQ2JiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsRUFDRDtJQUFFakIsSUFBSSxFQUFFLFNBQVM7SUFBRTBCLEVBQUUsRUFBRSxTQUFTO0lBQUViLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQUUsQ0FBQyxDQUMxRCxFQUNELEtBQUssQ0FDTjtFQUNEbUYsTUFBTSxFQUFFaEMsQ0FBQyxDQUNQLENBQ0U7SUFBRXBFLElBQUksRUFBRSxZQUFZO0lBQUUwQixFQUFFLEVBQUUsWUFBWTtJQUFFYixHQUFHLEVBQUVULENBQUMsQ0FBQyxZQUFZO0VBQUUsQ0FBQyxFQUM5RDtJQUNFSixJQUFJLEVBQUUsaUJBQWlCO0lBQ3ZCMEIsRUFBRSxFQUFFLGlCQUFpQjtJQUNyQmIsR0FBRyxFQUFFb0QsQ0FBQyxDQUFDaEQsU0FBUyxFQUFFLEVBQUU7RUFDdEIsQ0FBQyxFQUNEO0lBQ0VqQixJQUFJLEVBQUUsV0FBVztJQUNqQjBCLEVBQUUsRUFBRSxXQUFXO0lBQ2ZiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsRUFDRDtJQUNFakIsSUFBSSxFQUFFLG9CQUFvQjtJQUMxQjBCLEVBQUUsRUFBRSxvQkFBb0I7SUFDeEJiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsRUFDRDtJQUNFakIsSUFBSSxFQUFFLDJCQUEyQjtJQUNqQzBCLEVBQUUsRUFBRSwyQkFBMkI7SUFDL0JiLEdBQUcsRUFBRW9ELENBQUMsQ0FBQ2hELFNBQVMsRUFBRSxFQUFFO0VBQ3RCLENBQUMsQ0FDRixFQUNELEtBQUssQ0FDTjtFQUNEcEMsZ0NBQWdDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDO0VBQzFERSxNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsY0FBYyxFQUFFLGFBQWEsQ0FBQztFQUNuREMsa0JBQWtCLEVBQUUsQ0FDbEIsSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osUUFBUSxFQUNSLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLFFBQVEsRUFDUixPQUFPLEVBQ1AsT0FBTyxFQUNQLE9BQU8sRUFDUCxPQUFPLEVBQ1AsT0FBTyxFQUNQLE9BQU8sRUFDUCxPQUFPLEVBQ1AsT0FBTyxFQUNQLE9BQU8sRUFDUCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLEVBQ1AsR0FBRyxFQUNILElBQUksRUFDSixHQUFHLENBQ0o7RUFDREMscUJBQXFCLEVBQUUsQ0FDckIsWUFBWSxFQUNaLFdBQVcsRUFDWCxTQUFTLEVBQ1QsUUFBUSxFQUNSLGlCQUFpQixFQUNqQixlQUFlLEVBQ2YsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixRQUFRLENBQ1Q7RUFDREMsY0FBYyxFQUFFLENBQ2QsUUFBUSxFQUNSLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixlQUFlLEVBQ2YscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQiw4QkFBOEIsRUFDOUIsUUFBUSxFQUNSLFVBQVUsRUFDVixTQUFTLEVBQ1QsZ0NBQWdDLEVBQ2hDLHdCQUF3QixFQUN4Qiw2QkFBNkIsRUFDN0IsU0FBUyxFQUNULGdCQUFnQixFQUNoQixNQUFNLEVBQ04sYUFBYSxFQUNiLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3ZCLE1BQU0sRUFDTixRQUFRLEVBQ1IsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsMEJBQTBCLEVBQzFCLFFBQVEsRUFDUixRQUFRLEVBQ1IsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQiw2QkFBNkIsRUFDN0Isc0JBQXNCLEVBQ3RCLE9BQU8sQ0FDUjtFQUNEQyxZQUFZLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQztFQUM5Q0MsV0FBVyxFQUFFLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUM7RUFDcENDLFlBQVksRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQztFQUN4REMsUUFBUSxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7RUFDekJDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztFQUNaQyxZQUFZLEVBQUUsQ0FBQyxhQUFhLENBQUM7RUFDN0JDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsWUFBWTtBQUNyRCxDQUFDIn0=
902
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsImV4cG9ydHMiLCJBY3Rpb24iLCJFdGF0QW1lbmRlbWVudENvZGUiLCJFdGF0QW1lbmRlbWVudExpYmVsbGUiLCJTb3J0QW1lbmRlbWVudCIsIlR5cGVQb3NpdGlvbiIsIkF2YW50QUFwcmVzIiwiRGl2aXNpb25UeXBlIiwiQ29kZUV0YXQiLCJOb20iLCJUeXBlTWltZVR5cGUiLCJUeXBlQXV0ZXVyIiwiQ29udmVydCIsIl9jbGFzc0NhbGxDaGVjayIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwidG9BbWVuZGVtZW50IiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwiYW1lbmRlbWVudFRvSnNvbiIsInN0cmluZ2lmeSIsInVuY2FzdCIsInRvQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1RvSnNvbiIsInRvVGV4dGVMZWdpc2xhdGlmIiwidGV4dGVMZWdpc2xhdGlmVG9Kc29uIiwiaW52YWxpZFZhbHVlIiwidHlwIiwidmFsIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiRXJyb3IiLCJjb25jYXQiLCJqc29uVG9KU1Byb3BzIiwianNvblRvSlMiLCJtYXAiLCJwcm9wcyIsImZvckVhY2giLCJwIiwianMiLCJqc1RvSlNPTlByb3BzIiwianNUb0pTT04iLCJ0cmFuc2Zvcm0iLCJnZXRQcm9wcyIsInRyYW5zZm9ybVByaW1pdGl2ZSIsIl90eXBlb2YiLCJ0cmFuc2Zvcm1VbmlvbiIsInR5cHMiLCJsIiwiaSIsIl8iLCJ0cmFuc2Zvcm1FbnVtIiwiY2FzZXMiLCJpbmRleE9mIiwidHJhbnNmb3JtQXJyYXkiLCJBcnJheSIsImlzQXJyYXkiLCJlbCIsInRyYW5zZm9ybURhdGUiLCJkIiwiRGF0ZSIsImlzTmFOIiwidmFsdWVPZiIsInRyYW5zZm9ybU9iamVjdCIsImFkZGl0aW9uYWwiLCJyZXN1bHQiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcCIsInYiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJyZWYiLCJ0eXBlTWFwIiwidW5pb25NZW1iZXJzIiwiYXJyYXlJdGVtcyIsImEiLCJ1IiwiX2xlbiIsIl9rZXkiLCJvIiwibmFtZSIsIkFtZW5kZW1lbnRzIiwiVGV4dGVMZWdpc2xhdGlmIiwiQW1lbmRlbWVudHNDbGFzcyIsIkFtZW5kZW1lbnRXcmFwcGVyIiwiQW1lbmRlbWVudCIsIkNvcnBzIiwiQ29udGVudUF1dGV1ciIsIkF2YW50QXBwZWwiLCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiIsIlByb2dyYW1tZVBsZiIsIkxpZ25lQ3JlZGl0UExGIiwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSIiwiTGlnbmVDcmVkaXRQTEZSIiwiVG90YWwiLCJDeWNsZURlVmllIiwiRXRhdERlc1RyYWl0ZW1lbnRzIiwiRXRhdEFtZW5kZW1lbnQiLCJTb3VzRXRhdEFtZW5kZW1lbnQiLCJEaXNjdXNzaW9uIiwiSWRlbnRpZmljYXRpb24iLCJMb2lSZWZlcmVuY2UiLCJQb2ludGV1ckZyYWdtZW50VGV4dGUiLCJBbGluZWEiLCJEaXZpc2lvbiIsIk1pc3Npb25WaXNlZSIsIlJlcHJlc2VudGF0aW9uIiwiQ29udGVudSIsIlN0YXR1dFJlcHJlc2VudGF0aW9uIiwiVHlwZU1pbWUiLCJTaWduYXRhaXJlcyIsIkF1dGV1ciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9hbWVuZGVtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUbyBwYXJzZSB0aGlzIGRhdGE6XG4vL1xuLy8gICBpbXBvcnQgeyBDb252ZXJ0LCBBbWVuZGVtZW50LCBBbWVuZGVtZW50cyB9IGZyb20gXCIuL2ZpbGVcIjtcbi8vXG4vLyAgIGNvbnN0IGFtZW5kZW1lbnQgPSBDb252ZXJ0LnRvQW1lbmRlbWVudChqc29uKTtcbi8vICAgY29uc3QgYW1lbmRlbWVudHMgPSBDb252ZXJ0LnRvQW1lbmRlbWVudHMoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuaW1wb3J0IHsgQWN0ZXVyLCBPcmdhbmUgfSBmcm9tIFwiLi9hY3RldXJzX2V0X29yZ2FuZXNcIlxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzIHtcbiAgdGV4dGVzTGVnaXNsYXRpZnM6IFRleHRlTGVnaXNsYXRpZltdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dGVMZWdpc2xhdGlmIHtcbiAgcmVmVGV4dGVMZWdpc2xhdGlmOiBzdHJpbmdcbiAgYW1lbmRlbWVudHM6IEFtZW5kZW1lbnRbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnQge1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nXG4gIHVpZDogc3RyaW5nXG4gIGNocm9ub3RhZzogc3RyaW5nXG4gIGxlZ2lzbGF0dXJlOiBzdHJpbmdcbiAgaWRlbnRpZmljYXRpb246IElkZW50aWZpY2F0aW9uXG4gIGV4YW1lblJlZjogc3RyaW5nXG4gIHRleHRlTGVnaXNsYXRpZlJlZjogc3RyaW5nXG4gIHRyaUFtZW5kZW1lbnQ/OiBzdHJpbmdcbiAgY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzPzogc3RyaW5nXG4gIGFtZW5kZW1lbnRQYXJlbnRSZWY/OiBzdHJpbmdcbiAgc2lnbmF0YWlyZXM6IFNpZ25hdGFpcmVzXG4gIHBvaW50ZXVyRnJhZ21lbnRUZXh0ZTogUG9pbnRldXJGcmFnbWVudFRleHRlXG4gIGNvcnBzPzogQ29ycHNcbiAgY3ljbGVEZVZpZTogQ3ljbGVEZVZpZVxuICByZXByZXNlbnRhdGlvbj86IFJlcHJlc2VudGF0aW9uXG4gIHNlYW5jZURpc2N1c3Npb25SZWY/OiBzdHJpbmdcbiAgYXJ0aWNsZTk5OiBzdHJpbmdcbiAgbG9pUmVmZXJlbmNlPzogTG9pUmVmZXJlbmNlXG4gIGRpc2N1c3Npb25Db21tdW5lPzogRGlzY3Vzc2lvblxuICBkaXNjdXNzaW9uSWRlbnRpcXVlPzogRGlzY3Vzc2lvblxuICBhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaTogQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcbn1cblxuZXhwb3J0IGVudW0gQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWkge1xuICBBY2NvcmQgPSBcIkFjY29yZFwiLFxuICBTYW5zT2JqZXQgPSBcIlNhbnMgb2JqZXRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3JwcyB7XG4gIGNhcnRvdWNoZUluZm9ybWF0aWY/OiBzdHJpbmdcbiAgY29udGVudUF1dGV1cj86IENvbnRlbnVBdXRldXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW51QXV0ZXVyIHtcbiAgZGlzcG9zaXRpZj86IHN0cmluZ1xuICBhdmFudEFwcGVsPzogQXZhbnRBcHBlbFxuICBleHBvc2VTb21tYWlyZT86IHN0cmluZ1xuICBkaXNwb3NpdGlmQW1kdENyZWRpdFBMRj86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXG4gIGRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUj86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF2YW50QXBwZWwge1xuICBkaXNwb3NpdGlmOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiB7XG4gIGxpc3RlUHJvZ3JhbW1lcz86IFByb2dyYW1tZVBsZltdXG4gIHNvbGRlQUU/OiBzdHJpbmdcbiAgc29sZGVDUD86IHN0cmluZ1xuICBjcEVnYWxBZTogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZ3JhbW1lUGxmIHtcbiAgbGliZWxsZTogc3RyaW5nXG4gIHByb2dyYW1tZVJlZjogc3RyaW5nXG4gIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnQ6IHN0cmluZ1xuICBjcmVkaXRQYWllbWVudDogc3RyaW5nXG4gIGFjdGlvbjogQWN0aW9uXG4gIGxpZ25lc0NyZWRpdHM/OiBMaWduZUNyZWRpdFBMRltdXG59XG5cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gIENyw6lhdGlvbiA9IFwiY3LDqWF0aW9uXCIsXG4gIE1vZGlmaWNhdGlvbiA9IFwibW9kaWZpY2F0aW9uXCIsXG4gIFN1cHByZXNzaW9uID0gXCJzdXBwcmVzc2lvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0UExGIHtcbiAgaWQ6IHN0cmluZ1xuICBsaWJlbGxlOiBzdHJpbmdcbiAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudDogc3RyaW5nXG4gIGNyZWRpdFBhaWVtZW50OiBzdHJpbmdcbiAgYWN0aW9uOiBBY3Rpb25cbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIge1xuICBsaXN0ZVByb2dyYW1tZXM/OiBMaWduZUNyZWRpdFBMRlJbXVxuICB0b3RhbEFFPzogVG90YWxcbiAgdG90YWxDUD86IFRvdGFsXG4gIGNwRWdhbEFlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWduZUNyZWRpdFBMRlIge1xuICBsaWJlbGxlOiBzdHJpbmdcbiAgcHJvZ3JhbW1lUmVmPzogc3RyaW5nXG4gIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZTogc3RyaW5nXG4gIGNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmU6IHN0cmluZ1xuICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlOiBzdHJpbmdcbiAgY3JlZGl0UGFpZW1lbnRBbm51bGU6IHN0cmluZ1xuICBhY3Rpb246IEFjdGlvblxuICBsaWduZXNDcmVkaXRzPzogTGlnbmVDcmVkaXRQTEZSW11cbiAgaWQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUb3RhbCB7XG4gIHN1cHBsZW1lbnRhaXJlOiBzdHJpbmdcbiAgYW5udWxlOiBzdHJpbmdcbiAgc29sZGU6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN5Y2xlRGVWaWUge1xuICBkYXRlRGVwb3Q/OiBEYXRlXG4gIGRhdGVQdWJsaWNhdGlvbj86IERhdGVcbiAgc291bWlzQXJ0aWNsZTQwOiBzdHJpbmdcbiAgZXRhdERlc1RyYWl0ZW1lbnRzOiBFdGF0RGVzVHJhaXRlbWVudHNcbiAgZGF0ZVNvcnQ/OiBEYXRlXG4gIHNvcnQ/OiBTb3J0QW1lbmRlbWVudFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV0YXREZXNUcmFpdGVtZW50cyB7XG4gIGV0YXQ6IEV0YXRBbWVuZGVtZW50XG4gIHNvdXNFdGF0PzogU291c0V0YXRBbWVuZGVtZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXRhdEFtZW5kZW1lbnQge1xuICBjb2RlOiBFdGF0QW1lbmRlbWVudENvZGVcbiAgbGliZWxsZTogRXRhdEFtZW5kZW1lbnRMaWJlbGxlXG59XG5cbmV4cG9ydCBlbnVtIEV0YXRBbWVuZGVtZW50Q29kZSB7XG4gIEFDID0gXCJBQ1wiLFxuICBBdCA9IFwiQVRcIixcbiAgRGkgPSBcIkRJXCIsXG4gIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgRXIgPSBcIkVSXCIsXG4gIEV0ID0gXCJFVFwiLFxuICBJUiA9IFwiSVJcIixcbiAgSXJyMTI3ID0gXCJJUlIxMjdcIixcbiAgSXJyMjAgPSBcIklSUjIwXCIsXG4gIElycjM3ID0gXCJJUlIzN1wiLFxuICBJcnIzOCA9IFwiSVJSMzhcIixcbiAgSXJyNDEgPSBcIklSUjQxXCIsXG4gIElycjQyID0gXCJJUlI0MlwiLFxuICBJcnI0NSA9IFwiSVJSNDVcIixcbiAgSXJyNDggPSBcIklSUjQ4XCIsXG4gIElycjUzID0gXCJJUlI1M1wiLFxuICBJcnJhaSA9IFwiSVJSQUlcIixcbiAgSXJyYWlmID0gXCJJUlJBSUZcIixcbiAgSXJyZCA9IFwiSVJSRFwiLFxuICBJcnJoYyA9IFwiSVJSSENcIiwgLy8gSXJyZWNldmFibGUsIGhvcnMgY2hhbXBcbiAgSXJyaGQgPSBcIklSUkhEXCIsXG4gIElycnNhID0gXCJJUlJTQVwiLFxuICBSID0gXCJSXCIsXG4gIFJ0ID0gXCJSVFwiLFxuICBUID0gXCJUXCIsXG59XG5cbmV4cG9ydCBlbnVtIEV0YXRBbWVuZGVtZW50TGliZWxsZSB7XG4gIEFEaXNjdXRlciA9IFwiQSBkaXNjdXRlclwiLFxuICBBRMOpcG9zZXIgPSBcIkEgZMOpcG9zZXJcIixcbiAgRGlzY3V0w6kgPSBcIkRpc2N1dMOpXCIsXG4gIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgRW5SZWNldmFiaWxpdMOpID0gXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gIEVuVHJhaXRlbWVudCA9IFwiRW4gdHJhaXRlbWVudFwiLFxuICBJcnJlY2V2YWJsZSA9IFwiSXJyZWNldmFibGVcIixcbiAgSXJyZWNldmFibGU0MCA9IFwiSXJyZWNldmFibGUgNDBcIixcbiAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvdXNFdGF0QW1lbmRlbWVudCB7XG4gIGNvZGU6IEV0YXRBbWVuZGVtZW50Q29kZVxuICBsaWJlbGxlOiBTb3J0QW1lbmRlbWVudFxufVxuXG5leHBvcnQgZW51bSBTb3J0QW1lbmRlbWVudCB7XG4gIEFkb3B0w6kgPSBcIkFkb3B0w6lcIixcbiAgQXV0cmVJcnJlY2V2YWJpbGl0w6kgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICBBdXRyZUlycmVjZXZhYmlsaXTDqTQwID0gXCJBdXRyZSBpcnJlY2V2YWJpbGl0w6kgNDBcIixcbiAgQXV0cmVzSXJyTE9MRiA9IFwiQXV0cmVzIGlyciBMT0xGXCIsXG4gIEF1dHJlc0lyckxPTEZTUyA9IFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgQ2F2YWxpZXI0NSA9IFwiQ2F2YWxpZXIgKDQ1KVwiLFxuICBDYXZhbGllckJ1ZGfDqXRhaXJlID0gXCJDYXZhbGllciBidWRnw6l0YWlyZVwiLFxuICBDYXZhbGllclNvY2lhbCA9IFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gIENoYW1wRGVMSGFiaWxpdGF0aW9uMzggPSBcIkNoYW1wIGRlIGwnaGFiaWxpdGF0aW9uICgzOClcIixcbiAgQ2hhcmdlID0gXCJDaGFyZ2VcIixcbiAgQ21wNDUgPSBcIkNNUCAoNDUpXCIsXG4gIENyw6lkaXRzID0gXCJDcsOpZGl0c1wiLFxuICBEaXNwb3NpdGlvblLDqWdsZW1lbnRhaXJlMzcgPSBcIkRpc3Bvc2l0aW9uIHLDqWdsZW1lbnRhaXJlICgzNylcIixcbiAgRG9tYWluZURlTGFMb2k0MSA9IFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICBEb21haW5lTG9pT3JnYW5pcXVlMTI3ID0gXCJEb21haW5lIGxvaSBvcmdhbmlxdWUgKDEyNylcIixcbiAgRG91YmxvbiA9IFwiRG91YmxvblwiLFxuICBFbnRvbm5vaXI0NSA9IFwiRW50b25ub2lyICg0NSlcIixcbiAgR2FnZSA9IFwiR2FnZVwiLFxuICBIb3JzQ2hhbXAgPSBcIkhvcnMgY2hhbXBcIixcbiAgSG9yc0TDqWxhaXMgPSBcIkhvcnMtZMOpbGFpc1wiLFxuICBJbmpvbmN0aW9uMjAgPSBcIkluam9uY3Rpb24gKDIwKVwiLFxuICBJcnJFblByZW1pw6hyZVBhcnRpZSA9IFwiSXJyIGVuIHByZW1pw6hyZSBwYXJ0aWVcIixcbiAgSXJyRW5TZWNvbmRlUGFydGllID0gXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgTG9sZiA9IFwiTE9MRlwiLFxuICBMb2xmc3MgPSBcIkxPTEZTU1wiLFxuICBOb25Tb3V0ZW51ID0gXCJOb24gc291dGVudVwiLFxuICBPcmRyZUR1Sm91cjQ4ID0gXCJPcmRyZSBkdSBqb3VyICg0OClcIixcbiAgUiA9IFwiUlwiLFxuICBSYXRpZmljYXRpb25UcmFpdMOpNTMgPSBcIlJhdGlmaWNhdGlvbiB0cmFpdMOpICg1MylcIixcbiAgUmVqZXTDqSA9IFwiUmVqZXTDqVwiLFxuICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG4gIFJldGlyw6lBcHLDqHNQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgUmV0aXLDqUF2YW50UHVibGljYXRpb24gPSBcIlJldGlyw6kgYXZhbnQgcHVibGljYXRpb25cIixcbiAgU2F0aXNmYWl0T3VJbm9ww6lyYW50NDIgPSBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgU291c0FtZW5kZW1lbnQ5OCA9IFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgVG9tYsOpID0gXCJUb21iw6lcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNjdXNzaW9uIHtcbiAgaWREaXNjdXNzaW9uPzogc3RyaW5nXG4gIHR5cGVQb3NpdGlvbj86IFR5cGVQb3NpdGlvblxufVxuXG5leHBvcnQgZW51bSBUeXBlUG9zaXRpb24ge1xuICBEZXJuaWVyID0gXCJEZXJuaWVyXCIsXG4gIE1pbGlldSA9IFwiTWlsaWV1XCIsXG4gIFByZW1pZXIgPSBcIlByZW1pZXJcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJZGVudGlmaWNhdGlvbiB7XG4gIG51bWVyb0xvbmc6IHN0cmluZ1xuICBudW1lcm9PcmRyZURlcG90OiBzdHJpbmdcbiAgcHJlZml4ZU9yZ2FuZUV4YW1lbjogc3RyaW5nXG4gIG51bWVyb1JlY3Q6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvaVJlZmVyZW5jZSB7XG4gIGNvZGVMb2k/OiBzdHJpbmdcbiAgZGl2aXNpb25Db2RlTG9pPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRldXJGcmFnbWVudFRleHRlIHtcbiAgZGl2aXNpb24/OiBEaXZpc2lvblxuICBhbGluZWE/OiBBbGluZWFcbiAgbWlzc2lvblZpc2VlPzogTWlzc2lvblZpc2VlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxpbmVhIHtcbiAgYXZhbnRBQXByZXM/OiBBdmFudEFBcHJlc1xuICBudW1lcm8/OiBzdHJpbmdcbiAgYWxpbmVhRGVzaWduYXRpb24/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gQXZhbnRBQXByZXMge1xuICBBID0gXCJBXCIsXG4gIEFwcmVzID0gXCJBcHJlc1wiLFxuICBBdmFudCA9IFwiQXZhbnRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXZpc2lvbiB7XG4gIHRpdHJlOiBzdHJpbmdcbiAgYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlPzogc3RyaW5nXG4gIGFydGljbGVEZXNpZ25hdGlvbj86IHN0cmluZ1xuICB0eXBlOiBEaXZpc2lvblR5cGVcbiAgYXZhbnRBQXByZXM6IEF2YW50QUFwcmVzXG4gIGRpdmlzaW9uUmF0dGFjaGVlPzogc3RyaW5nXG4gIGFydGljbGVBZGRpdGlvbm5lbDogc3RyaW5nXG4gIGNoYXBpdHJlQWRkaXRpb25uZWw6IHN0cmluZ1xuICB1cmxEaXZpc2lvblRleHRlVmlzZT86IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBEaXZpc2lvblR5cGUge1xuICBBbm5leGUgPSBcIkFOTkVYRVwiLFxuICBBcnRpY2xlID0gXCJBUlRJQ0xFXCIsXG4gIENoYXBpdHJlID0gXCJDSEFQSVRSRVwiLFxuICBUaXRyZSA9IFwiVElUUkVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNaXNzaW9uVmlzZWUge1xuICBjb2RlRXRhdDogQ29kZUV0YXRcbiAgY29kZU1pc3Npb25NaW5lZmk6IHN0cmluZ1xuICBsaWJlbGxlTWlzc2lvbjogc3RyaW5nXG4gIG1pc3Npb25SZWY6IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBDb2RlRXRhdCB7XG4gIEIgPSBcIkJcIixcbiAgQyA9IFwiQ1wiLFxuICBEID0gXCJEXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVwcmVzZW50YXRpb24ge1xuICBub206IE5vbVxuICB0eXBlTWltZTogVHlwZU1pbWVcbiAgc3RhdHV0UmVwcmVzZW50YXRpb246IFN0YXR1dFJlcHJlc2VudGF0aW9uXG4gIGNvbnRlbnU6IENvbnRlbnVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW51IHtcbiAgZG9jdW1lbnRVUkk6IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBOb20ge1xuICBQZGYgPSBcIlBERlwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXR1dFJlcHJlc2VudGF0aW9uIHtcbiAgdmVyYmF0aW06IGJvb2xlYW5cbiAgY2Fub25pcXVlOiBib29sZWFuXG4gIG9mZmljaWVsbGU6IGJvb2xlYW5cbiAgdHJhbnNjcmlwdGlvbjogYm9vbGVhblxuICBlbnJlZ2lzdHJlbWVudDogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVNaW1lIHtcbiAgdHlwZTogVHlwZU1pbWVUeXBlXG4gIHN1YlR5cGU6IE5vbVxufVxuXG5leHBvcnQgZW51bSBUeXBlTWltZVR5cGUge1xuICBBcHBsaWNhdGlvbiA9IFwiYXBwbGljYXRpb25cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduYXRhaXJlcyB7XG4gIGF1dGV1cjogQXV0ZXVyXG4gIGNvc2lnbmF0YWlyZXNSZWZzPzogc3RyaW5nW11cbiAgY29zaWduYXRhaXJlcz86IEFjdGV1cltdIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHN1ZmZpeGU/OiBzdHJpbmdcbiAgbGliZWxsZT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGV1ciB7XG4gIHR5cGVBdXRldXI6IFR5cGVBdXRldXJcbiAgZ291dmVybmVtZW50UmVmPzogc3RyaW5nXG4gIGdvdXZlcm5lbWVudD86IE9yZ2FuZSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBhY3RldXJSZWY/OiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGdyb3VwZVBvbGl0aXF1ZVJlZj86IHN0cmluZ1xuICBncm91cGVQb2xpdGlxdWU/OiBPcmdhbmUgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZj86IHN0cmluZ1xuICBhdXRldXJSYXBwb3J0ZXVyT3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBlbnVtIFR5cGVBdXRldXIge1xuICBEw6lwdXTDqSA9IFwiRMOpcHV0w6lcIixcbiAgR291dmVybmVtZW50ID0gXCJHb3V2ZXJuZW1lbnRcIixcbiAgUmFwcG9ydGV1ciA9IFwiUmFwcG9ydGV1clwiLFxufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgcHVibGljIHN0YXRpYyB0b0FtZW5kZW1lbnQoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudCB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFtZW5kZW1lbnRcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGFtZW5kZW1lbnRUb0pzb24odmFsdWU6IEFtZW5kZW1lbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBbWVuZGVtZW50XCIpKSwgbnVsbCwgMilcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50cyhqc29uOiBzdHJpbmcpOiBBbWVuZGVtZW50cyB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFtZW5kZW1lbnRzXCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50c1RvSnNvbih2YWx1ZTogQW1lbmRlbWVudHMpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBbWVuZGVtZW50c1wiKSksIG51bGwsIDIpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvVGV4dGVMZWdpc2xhdGlmKGpzb246IHN0cmluZyk6IFRleHRlTGVnaXNsYXRpZiB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIlRleHRlTGVnaXNsYXRpZlwiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdGV4dGVMZWdpc2xhdGlmVG9Kc29uKHZhbHVlOiBUZXh0ZUxlZ2lzbGF0aWYpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpLCBudWxsLCAyKVxuICB9XG59XG5cbmZ1bmN0aW9uIGludmFsaWRWYWx1ZSh0eXA6IGFueSwgdmFsOiBhbnksIGtleTogYW55ID0gXCJcIik6IG5ldmVyIHtcbiAgaWYgKGtleSkge1xuICAgIHRocm93IEVycm9yKFxuICAgICAgYEludmFsaWQgdmFsdWUgZm9yIGtleSBcIiR7a2V5fVwiLiBFeHBlY3RlZCB0eXBlICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIHR5cCxcbiAgICAgICl9IGJ1dCBnb3QgJHtKU09OLnN0cmluZ2lmeSh2YWwpfWAsXG4gICAgKVxuICB9XG4gIHRocm93IEVycm9yKFxuICAgIGBJbnZhbGlkIHZhbHVlICR7SlNPTi5zdHJpbmdpZnkodmFsKX0gZm9yIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfWAsXG4gIClcbn1cblxuZnVuY3Rpb24ganNvblRvSlNQcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNvbl0gPSB7IGtleTogcC5qcywgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNvblRvSlMgPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzb25Ub0pTXG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzVG9KU09OID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzXSA9IHsga2V5OiBwLmpzb24sIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzVG9KU09OID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc1RvSlNPTlxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm0odmFsOiBhbnksIHR5cDogYW55LCBnZXRQcm9wczogYW55LCBrZXk6IGFueSA9IFwiXCIpOiBhbnkge1xuICBmdW5jdGlvbiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwOiBzdHJpbmcsIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSlcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybVVuaW9uKHR5cHM6IGFueVtdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgLy8gdmFsIG11c3QgdmFsaWRhdGUgYWdhaW5zdCBvbmUgdHlwIGluIHR5cHNcbiAgICBjb25zdCBsID0gdHlwcy5sZW5ndGhcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGw7IGkrKykge1xuICAgICAgY29uc3QgdHlwID0gdHlwc1tpXVxuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwgZ2V0UHJvcHMpXG4gICAgICB9IGNhdGNoIChfKSB7fVxuICAgIH1cbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cHMsIHZhbClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUVudW0oY2FzZXM6IHN0cmluZ1tdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKGNhc2VzLmluZGV4T2YodmFsKSAhPT0gLTEpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKGNhc2VzLCB2YWwpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IGJlIGFuIGFycmF5IHdpdGggbm8gaW52YWxpZCBlbGVtZW50c1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWwpKSByZXR1cm4gaW52YWxpZFZhbHVlKFwiYXJyYXlcIiwgdmFsKVxuICAgIHJldHVybiB2YWwubWFwKChlbCkgPT4gdHJhbnNmb3JtKGVsLCB0eXAsIGdldFByb3BzKSlcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybURhdGUodmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSh2YWwpXG4gICAgaWYgKGlzTmFOKGQudmFsdWVPZigpKSkge1xuICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShcIkRhdGVcIiwgdmFsKVxuICAgIH1cbiAgICByZXR1cm4gZFxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtT2JqZWN0KFxuICAgIHByb3BzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSxcbiAgICBhZGRpdGlvbmFsOiBhbnksXG4gICAgdmFsOiBhbnksXG4gICk6IGFueSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCB8fCB0eXBlb2YgdmFsICE9PSBcIm9iamVjdFwiIHx8IEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShcIm9iamVjdFwiLCB2YWwpXG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge31cbiAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBjb25zdCBwcm9wID0gcHJvcHNba2V5XVxuICAgICAgY29uc3QgdiA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsIGtleSlcbiAgICAgICAgPyB2YWxba2V5XVxuICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIHByb3Aua2V5KVxuICAgIH0pXG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHByb3BzLCBrZXkpKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gdHJhbnNmb3JtKHZhbFtrZXldLCBhZGRpdGlvbmFsLCBnZXRQcm9wcywga2V5KVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgaWYgKHR5cCA9PT0gXCJhbnlcIikgcmV0dXJuIHZhbFxuICBpZiAodHlwID09PSBudWxsKSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpXG4gIH1cbiAgLy8gaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpXG4gIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIHR5cCA9IHR5cGVNYXBbdHlwLnJlZl1cbiAgfVxuICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbClcbiAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICByZXR1cm4gdHlwLmhhc093blByb3BlcnR5KFwidW5pb25NZW1iZXJzXCIpXG4gICAgICA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1BcnJheSh0eXAuYXJyYXlJdGVtcywgdmFsKVxuICAgICAgOiB0eXAuaGFzT3duUHJvcGVydHkoXCJwcm9wc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB9XG4gIC8vIE51bWJlcnMgY2FuIGJlIHBhcnNlZCBieSBEYXRlIGJ1dCBzaG91bGRuJ3QgYmUuXG4gIGlmICh0eXAgPT09IERhdGUgJiYgdHlwZW9mIHZhbCAhPT0gXCJudW1iZXJcIikgcmV0dXJuIHRyYW5zZm9ybURhdGUodmFsKVxuICByZXR1cm4gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cCwgdmFsKVxufVxuXG5mdW5jdGlvbiBjYXN0PFQ+KHZhbDogYW55LCB0eXA6IGFueSk6IFQge1xuICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc29uVG9KU1Byb3BzKVxufVxuXG5mdW5jdGlvbiB1bmNhc3Q8VD4odmFsOiBULCB0eXA6IGFueSk6IGFueSB7XG4gIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzVG9KU09OUHJvcHMpXG59XG5cbmZ1bmN0aW9uIGEodHlwOiBhbnkpIHtcbiAgcmV0dXJuIHsgYXJyYXlJdGVtczogdHlwIH1cbn1cblxuZnVuY3Rpb24gdSguLi50eXBzOiBhbnlbXSkge1xuICByZXR1cm4geyB1bmlvbk1lbWJlcnM6IHR5cHMgfVxufVxuXG5mdW5jdGlvbiBvKHByb3BzOiBhbnlbXSwgYWRkaXRpb25hbDogYW55KSB7XG4gIHJldHVybiB7IHByb3BzLCBhZGRpdGlvbmFsIH1cbn1cblxuLy8gZnVuY3Rpb24gbShhZGRpdGlvbmFsOiBhbnkpIHtcbi8vICAgcmV0dXJuIHsgcHJvcHM6IFtdLCBhZGRpdGlvbmFsIH1cbi8vIH1cblxuZnVuY3Rpb24gcihuYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHsgcmVmOiBuYW1lIH1cbn1cblxuY29uc3QgdHlwZU1hcDogYW55ID0ge1xuICBBbWVuZGVtZW50czogbyhcbiAgICBbXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidGV4dGVzTGVnaXNsYXRpZnNcIixcbiAgICAgICAganM6IFwidGV4dGVzTGVnaXNsYXRpZnNcIixcbiAgICAgICAgdHlwOiBhKHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUZXh0ZUxlZ2lzbGF0aWY6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInJlZlRleHRlTGVnaXNsYXRpZlwiLCBqczogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYW1lbmRlbWVudHNcIiwganM6IFwiYW1lbmRlbWVudHNcIiwgdHlwOiByKFwiQW1lbmRlbWVudHNDbGFzc1wiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnRzQ2xhc3M6IG8oXG4gICAgW3sganNvbjogXCJhbWVuZGVtZW50XCIsIGpzOiBcImFtZW5kZW1lbnRcIiwgdHlwOiBhKHIoXCJBbWVuZGVtZW50XCIpKSB9XSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQW1lbmRlbWVudFdyYXBwZXI6IG8oXG4gICAgW3sganNvbjogXCJhbWVuZGVtZW50XCIsIGpzOiBcImFtZW5kZW1lbnRcIiwgdHlwOiByKFwiQW1lbmRlbWVudFwiKSB9XSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQW1lbmRlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJjaHJvbm90YWdcIiwganM6IFwiY2hyb25vdGFnXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImlkZW50aWZpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImlkZW50aWZpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIklkZW50aWZpY2F0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJleGFtZW5SZWZcIiwganM6IFwiZXhhbWVuUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInRleHRlTGVnaXNsYXRpZlJlZlwiLCBqczogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidHJpQW1lbmRlbWVudFwiLCBqczogXCJ0cmlBbWVuZGVtZW50XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzXCIsXG4gICAgICAgIGpzOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLFxuICAgICAgICBqczogXCJhbWVuZGVtZW50UGFyZW50UmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJzaWduYXRhaXJlc1wiLCBqczogXCJzaWduYXRhaXJlc1wiLCB0eXA6IHIoXCJTaWduYXRhaXJlc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiLFxuICAgICAgICBqczogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIixcbiAgICAgICAgdHlwOiByKFwiUG9pbnRldXJGcmFnbWVudFRleHRlXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb3Jwc1wiLCBqczogXCJjb3Jwc1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29ycHNcIikpIH0sXG4gICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJyZXByZXNlbnRhdGlvblwiLFxuICAgICAgICBqczogXCJyZXByZXNlbnRhdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUmVwcmVzZW50YXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsXG4gICAgICAgIGpzOiBcInNlYW5jZURpc2N1c3Npb25SZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImFydGljbGU5OVwiLCBqczogXCJhcnRpY2xlOTlcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibG9pUmVmZXJlbmNlXCIsXG4gICAgICAgIGpzOiBcImxvaVJlZmVyZW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiTG9pUmVmZXJlbmNlXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzY3Vzc2lvbkNvbW11bmVcIixcbiAgICAgICAganM6IFwiZGlzY3Vzc2lvbkNvbW11bmVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc2N1c3Npb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsXG4gICAgICAgIGpzOiBcImRpc2N1c3Npb25JZGVudGlxdWVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc2N1c3Npb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiLFxuICAgICAgICBqczogXCJhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiLFxuICAgICAgICB0eXA6IHIoXCJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29ycHM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIixcbiAgICAgICAganM6IFwiY2FydG91Y2hlSW5mb3JtYXRpZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29udGVudUF1dGV1clwiLFxuICAgICAgICBqczogXCJjb250ZW51QXV0ZXVyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb250ZW51QXV0ZXVyXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29udGVudUF1dGV1cjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiZGlzcG9zaXRpZlwiLCBqczogXCJkaXNwb3NpdGlmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYXZhbnRBcHBlbFwiLFxuICAgICAgICBqczogXCJhdmFudEFwcGVsXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBdmFudEFwcGVsXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZXhwb3NlU29tbWFpcmVcIiwganM6IFwiZXhwb3NlU29tbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiLFxuICAgICAgICBqczogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIixcbiAgICAgICAganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBBdmFudEFwcGVsOiBvKFt7IGpzb246IFwiZGlzcG9zaXRpZlwiLCBqczogXCJkaXNwb3NpdGlmXCIsIHR5cDogXCJcIiB9XSwgZmFsc2UpLFxuICBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRjogbyhcbiAgICBbXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibGlzdGVQcm9ncmFtbWVzXCIsXG4gICAgICAgIGpzOiBcImxpc3RlUHJvZ3JhbW1lc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJQcm9ncmFtbWVQbGZcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic29sZGVBRVwiLCBqczogXCJzb2xkZUFFXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic29sZGVDUFwiLCBqczogXCJzb2xkZUNQXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiY3BFZ2FsQWVcIiwganM6IFwiY3BFZ2FsQWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgUHJvZ3JhbW1lUGxmOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJsaWduZXNDcmVkaXRzXCIsXG4gICAgICAgIGpzOiBcImxpZ25lc0NyZWRpdHNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiTGlnbmVDcmVkaXRQTEZcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTGlnbmVDcmVkaXRQTEY6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImlkXCIsIGpzOiBcImlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlI6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLFxuICAgICAgICBqczogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiTGlnbmVDcmVkaXRQTEZSXCIpKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInRvdGFsQUVcIiwganM6IFwidG90YWxBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICB7IGpzb246IFwidG90YWxDUFwiLCBqczogXCJ0b3RhbENQXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUb3RhbFwiKSkgfSxcbiAgICAgIHsganNvbjogXCJjcEVnYWxBZVwiLCBqczogXCJjcEVnYWxBZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBMaWduZUNyZWRpdFBMRlI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJwcm9ncmFtbWVSZWZcIiwganM6IFwicHJvZ3JhbW1lUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlXCIsXG4gICAgICAgIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLFxuICAgICAgICB0eXA6IFwiXCIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAganM6IFwiY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZVwiLFxuICAgICAgICB0eXA6IFwiXCIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIixcbiAgICAgICAganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudEFubnVsZVwiLFxuICAgICAgICB0eXA6IFwiXCIsXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50QW5udWxlXCIsIGpzOiBcImNyZWRpdFBhaWVtZW50QW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICBqczogXCJsaWduZXNDcmVkaXRzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGUlwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRvdGFsOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJzdXBwbGVtZW50YWlyZVwiLCBqczogXCJzdXBwbGVtZW50YWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJhbm51bGVcIiwganM6IFwiYW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlXCIsIGpzOiBcInNvbGRlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEN5Y2xlRGVWaWU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRhdGVEZXBvdFwiLCBqczogXCJkYXRlRGVwb3RcIiwgdHlwOiB1KHVuZGVmaW5lZCwgRGF0ZSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkYXRlUHVibGljYXRpb25cIixcbiAgICAgICAganM6IFwiZGF0ZVB1YmxpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIERhdGUpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJzb3VtaXNBcnRpY2xlNDBcIiwganM6IFwic291bWlzQXJ0aWNsZTQwXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImV0YXREZXNUcmFpdGVtZW50c1wiLFxuICAgICAgICBqczogXCJldGF0RGVzVHJhaXRlbWVudHNcIixcbiAgICAgICAgdHlwOiByKFwiRXRhdERlc1RyYWl0ZW1lbnRzXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkYXRlU29ydFwiLFxuICAgICAgICBqczogXCJkYXRlU29ydFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBEYXRlKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29ydFwiLFxuICAgICAgICBqczogXCJzb3J0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3J0QW1lbmRlbWVudFwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEV0YXREZXNUcmFpdGVtZW50czogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiZXRhdFwiLCBqczogXCJldGF0XCIsIHR5cDogcihcIkV0YXRBbWVuZGVtZW50XCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic291c0V0YXRcIixcbiAgICAgICAganM6IFwic291c0V0YXRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlNvdXNFdGF0QW1lbmRlbWVudFwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEV0YXRBbWVuZGVtZW50OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiByKFwiRXRhdEFtZW5kZW1lbnRDb2RlXCIpIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogcihcIkV0YXRBbWVuZGVtZW50TGliZWxsZVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvdXNFdGF0QW1lbmRlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogcihcIkV0YXRBbWVuZGVtZW50Q29kZVwiKSB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHIoXCJTb3J0QW1lbmRlbWVudFwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERpc2N1c3Npb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImlkRGlzY3Vzc2lvblwiLCBqczogXCJpZERpc2N1c3Npb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlUG9zaXRpb25cIixcbiAgICAgICAganM6IFwidHlwZVBvc2l0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlUG9zaXRpb25cIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBJZGVudGlmaWNhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibnVtZXJvTG9uZ1wiLCBqczogXCJudW1lcm9Mb25nXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bWVyb09yZHJlRGVwb3RcIiwganM6IFwibnVtZXJvT3JkcmVEZXBvdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIGpzOiBcInByZWZpeGVPcmdhbmVFeGFtZW5cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtZXJvUmVjdFwiLCBqczogXCJudW1lcm9SZWN0XCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIExvaVJlZmVyZW5jZTogbyhcbiAgICBbXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29kZUxvaVwiLFxuICAgICAgICBqczogXCJjb2RlTG9pXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkaXZpc2lvbkNvZGVMb2lcIixcbiAgICAgICAganM6IFwiZGl2aXNpb25Db2RlTG9pXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBQb2ludGV1ckZyYWdtZW50VGV4dGU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRpdmlzaW9uXCIsIGpzOiBcImRpdmlzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXZpc2lvblwiKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhbGluZWFcIixcbiAgICAgICAganM6IFwiYWxpbmVhXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBbGluZWFcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJtaXNzaW9uVmlzZWVcIixcbiAgICAgICAganM6IFwibWlzc2lvblZpc2VlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJNaXNzaW9uVmlzZWVcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBBbGluZWE6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImF2YW50QUFwcmVzXCIsXG4gICAgICAgIGpzOiBcImF2YW50QUFwcmVzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBdmFudEFBcHJlc1wiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcIm51bWVyb1wiLCBqczogXCJudW1lcm9cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhbGluZWFEZXNpZ25hdGlvblwiLFxuICAgICAgICBqczogXCJhbGluZWFEZXNpZ25hdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRGl2aXNpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInRpdHJlXCIsIGpzOiBcInRpdHJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZVwiLFxuICAgICAgICBqczogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFydGljbGVEZXNpZ25hdGlvblwiLFxuICAgICAgICBqczogXCJhcnRpY2xlRGVzaWduYXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInR5cGVcIiwganM6IFwidHlwZVwiLCB0eXA6IHIoXCJEaXZpc2lvblR5cGVcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICBqczogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICB0eXA6IHIoXCJBdmFudEFBcHJlc1wiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGl2aXNpb25SYXR0YWNoZWVcIixcbiAgICAgICAganM6IFwiZGl2aXNpb25SYXR0YWNoZWVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImFydGljbGVBZGRpdGlvbm5lbFwiLCBqczogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCBqczogXCJjaGFwaXRyZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInVybERpdmlzaW9uVGV4dGVWaXNlXCIsXG4gICAgICAgIGpzOiBcInVybERpdmlzaW9uVGV4dGVWaXNlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBNaXNzaW9uVmlzZWU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNvZGVFdGF0XCIsIGpzOiBcImNvZGVFdGF0XCIsIHR5cDogcihcIkNvZGVFdGF0XCIpIH0sXG4gICAgICB7IGpzb246IFwiY29kZU1pc3Npb25NaW5lZmlcIiwganM6IFwiY29kZU1pc3Npb25NaW5lZmlcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZU1pc3Npb25cIiwganM6IFwibGliZWxsZU1pc3Npb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibWlzc2lvblJlZlwiLCBqczogXCJtaXNzaW9uUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFJlcHJlc2VudGF0aW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJub21cIiwganM6IFwibm9tXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgICAgeyBqc29uOiBcInR5cGVNaW1lXCIsIGpzOiBcInR5cGVNaW1lXCIsIHR5cDogcihcIlR5cGVNaW1lXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic3RhdHV0UmVwcmVzZW50YXRpb25cIixcbiAgICAgICAganM6IFwic3RhdHV0UmVwcmVzZW50YXRpb25cIixcbiAgICAgICAgdHlwOiByKFwiU3RhdHV0UmVwcmVzZW50YXRpb25cIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImNvbnRlbnVcIiwganM6IFwiY29udGVudVwiLCB0eXA6IHIoXCJDb250ZW51XCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29udGVudTogbyhbeyBqc29uOiBcImRvY3VtZW50VVJJXCIsIGpzOiBcImRvY3VtZW50VVJJXCIsIHR5cDogXCJcIiB9XSwgZmFsc2UpLFxuICBTdGF0dXRSZXByZXNlbnRhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidmVyYmF0aW1cIiwganM6IFwidmVyYmF0aW1cIiwgdHlwOiBmYWxzZSB9LFxuICAgICAgeyBqc29uOiBcImNhbm9uaXF1ZVwiLCBqczogXCJjYW5vbmlxdWVcIiwgdHlwOiBmYWxzZSB9LFxuICAgICAgeyBqc29uOiBcIm9mZmljaWVsbGVcIiwganM6IFwib2ZmaWNpZWxsZVwiLCB0eXA6IGZhbHNlIH0sXG4gICAgICB7IGpzb246IFwidHJhbnNjcmlwdGlvblwiLCBqczogXCJ0cmFuc2NyaXB0aW9uXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJlbnJlZ2lzdHJlbWVudFwiLCBqczogXCJlbnJlZ2lzdHJlbWVudFwiLCB0eXA6IGZhbHNlIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVHlwZU1pbWU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVcIiwganM6IFwidHlwZVwiLCB0eXA6IHIoXCJUeXBlTWltZVR5cGVcIikgfSxcbiAgICAgIHsganNvbjogXCJzdWJUeXBlXCIsIGpzOiBcInN1YlR5cGVcIiwgdHlwOiByKFwiTm9tXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgU2lnbmF0YWlyZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImF1dGV1clwiLCBqczogXCJhdXRldXJcIiwgdHlwOiByKFwiQXV0ZXVyXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29zaWduYXRhaXJlc1JlZnNcIixcbiAgICAgICAganM6IFwiY29zaWduYXRhaXJlc1JlZnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShcIlwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInN1ZmZpeGVcIixcbiAgICAgICAganM6IFwic3VmZml4ZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXV0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0eXBlQXV0ZXVyXCIsIGpzOiBcInR5cGVBdXRldXJcIiwgdHlwOiByKFwiVHlwZUF1dGV1clwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImdvdXZlcm5lbWVudFJlZlwiLFxuICAgICAgICBqczogXCJnb3V2ZXJuZW1lbnRSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFjdGV1clJlZlwiLFxuICAgICAgICBqczogXCJhY3RldXJSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImdyb3VwZVBvbGl0aXF1ZVJlZlwiLFxuICAgICAgICBqczogXCJncm91cGVQb2xpdGlxdWVSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIixcbiAgICAgICAganM6IFwiYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWk6IFtcIkFjY29yZFwiLCBcIlNhbnMgb2JqZXRcIl0sXG4gIEFjdGlvbjogW1wiY3LDqWF0aW9uXCIsIFwibW9kaWZpY2F0aW9uXCIsIFwic3VwcHJlc3Npb25cIl0sXG4gIEV0YXRBbWVuZGVtZW50Q29kZTogW1xuICAgIFwiQUNcIixcbiAgICBcIkFUXCIsXG4gICAgXCJESVwiLFxuICAgIFwiZWZmYWPDqVwiLFxuICAgIFwiRVJcIixcbiAgICBcIkVUXCIsXG4gICAgXCJJUlwiLFxuICAgIFwiSVJSMTI3XCIsXG4gICAgXCJJUlIyMFwiLFxuICAgIFwiSVJSMzdcIixcbiAgICBcIklSUjM4XCIsXG4gICAgXCJJUlI0MVwiLFxuICAgIFwiSVJSNDJcIixcbiAgICBcIklSUjQ1XCIsXG4gICAgXCJJUlI0OFwiLFxuICAgIFwiSVJSNTNcIixcbiAgICBcIklSUkFJXCIsXG4gICAgXCJJUlJBSUZcIixcbiAgICBcIklSUkRcIixcbiAgICBcIklSUkhDXCIsXG4gICAgXCJJUlJIRFwiLFxuICAgIFwiSVJSU0FcIixcbiAgICBcIlJcIixcbiAgICBcIlJUXCIsXG4gICAgXCJUXCIsXG4gIF0sXG4gIEV0YXRBbWVuZGVtZW50TGliZWxsZTogW1xuICAgIFwiQSBkaXNjdXRlclwiLFxuICAgIFwiQSBkw6lwb3NlclwiLFxuICAgIFwiRGlzY3V0w6lcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgIFwiUmV0aXLDqVwiLFxuICBdLFxuICBTb3J0QW1lbmRlbWVudDogW1xuICAgIFwiQWRvcHTDqVwiLFxuICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgXCJBdXRyZSBpcnJlY2V2YWJpbGl0w6kgNDBcIixcbiAgICBcIkF1dHJlcyBpcnIgTE9MRlwiLFxuICAgIFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICBcIkNhdmFsaWVyICg0NSlcIixcbiAgICBcIkNhdmFsaWVyIGJ1ZGfDqXRhaXJlXCIsXG4gICAgXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICBcIkNoYW1wIGRlIGwnaGFiaWxpdGF0aW9uICgzOClcIixcbiAgICBcIkNoYXJnZVwiLFxuICAgIFwiQ01QICg0NSlcIixcbiAgICBcIkNyw6lkaXRzXCIsXG4gICAgXCJEaXNwb3NpdGlvbiByw6lnbGVtZW50YWlyZSAoMzcpXCIsXG4gICAgXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgXCJEb21haW5lIGxvaSBvcmdhbmlxdWUgKDEyNylcIixcbiAgICBcIkRvdWJsb25cIixcbiAgICBcIkVudG9ubm9pciAoNDUpXCIsXG4gICAgXCJHYWdlXCIsXG4gICAgXCJIb3JzIGNoYW1wXCIsXG4gICAgXCJIb3JzLWTDqWxhaXNcIixcbiAgICBcIkluam9uY3Rpb24gKDIwKVwiLFxuICAgIFwiSXJyIGVuIHByZW1pw6hyZSBwYXJ0aWVcIixcbiAgICBcIklyciBlbiBzZWNvbmRlIHBhcnRpZVwiLFxuICAgIFwiTE9MRlwiLFxuICAgIFwiTE9MRlNTXCIsXG4gICAgXCJOb24gc291dGVudVwiLFxuICAgIFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gICAgXCJSXCIsXG4gICAgXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gICAgXCJSZWpldMOpXCIsXG4gICAgXCJSZXRpcsOpXCIsXG4gICAgXCJSZXRpcsOpIGFwcsOocyBwdWJsaWNhdGlvblwiLFxuICAgIFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgIFwiU2F0aXNmYWl0IG91IGlub3DDqXJhbnQgKDQyKVwiLFxuICAgIFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICBcIlRvbWLDqVwiLFxuICBdLFxuICBUeXBlUG9zaXRpb246IFtcIkRlcm5pZXJcIiwgXCJNaWxpZXVcIiwgXCJQcmVtaWVyXCJdLFxuICBBdmFudEFBcHJlczogW1wiQVwiLCBcIkFwcmVzXCIsIFwiQXZhbnRcIl0sXG4gIERpdmlzaW9uVHlwZTogW1wiQU5ORVhFXCIsIFwiQVJUSUNMRVwiLCBcIkNIQVBJVFJFXCIsIFwiVElUUkVcIl0sXG4gIENvZGVFdGF0OiBbXCJCXCIsIFwiQ1wiLCBcIkRcIl0sXG4gIE5vbTogW1wiUERGXCJdLFxuICBUeXBlTWltZVR5cGU6IFtcImFwcGxpY2F0aW9uXCJdLFxuICBUeXBlQXV0ZXVyOiBbXCJEw6lwdXTDqVwiLCBcIkdvdXZlcm5lbWVudFwiLCBcIlJhcHBvcnRldXJcIl0sXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQSxJQXFDWUEsZ0NBQWdDLDBCQUFoQ0EsZ0NB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