@tricoteuses/assemblee 1.1.5 → 1.1.7

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 (120) hide show
  1. package/lib/api.js +1 -1
  2. package/lib/bugs/acteur-00010/plugin.test.js +1 -1
  3. package/lib/bugs/acteur-00010.js +1 -1
  4. package/lib/bugs/acteur-00010.mjs +1 -1
  5. package/lib/bugs/agenda-00002/plugin.test.js +1 -1
  6. package/lib/bugs/agenda-00002.js +2 -2
  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-00008.js +1 -1
  10. package/lib/bugs/agenda-00008.mjs +1 -1
  11. package/lib/bugs/agenda-00011/plugin.test.js +1 -1
  12. package/lib/bugs/agenda-00011.js +1 -1
  13. package/lib/bugs/agenda-00011.mjs +1 -1
  14. package/lib/bugs.js +1 -1
  15. package/lib/bugs.mjs +1 -1
  16. package/lib/cleaners/actes_legislatifs.js +1 -1
  17. package/lib/cleaners/actes_legislatifs.mjs +1 -1
  18. package/lib/cleaners/acteurs.js +1 -1
  19. package/lib/cleaners/acteurs.mjs +1 -1
  20. package/lib/cleaners/amendements.js +1 -1
  21. package/lib/cleaners/amendements.mjs +1 -1
  22. package/lib/cleaners/documents.js +1 -1
  23. package/lib/cleaners/documents.mjs +1 -1
  24. package/lib/cleaners/dossiers_legislatifs.js +1 -1
  25. package/lib/cleaners/dossiers_legislatifs.mjs +1 -1
  26. package/lib/cleaners/index.js +1 -1
  27. package/lib/cleaners/organes.js +1 -1
  28. package/lib/cleaners/organes.mjs +1 -1
  29. package/lib/cleaners/reunions.js +1 -1
  30. package/lib/cleaners/reunions.mjs +1 -1
  31. package/lib/cleaners/scrutins.js +1 -1
  32. package/lib/cleaners/scrutins.mjs +1 -1
  33. package/lib/cleaners/xml.js +1 -1
  34. package/lib/cleaners/xml.mjs +1 -1
  35. package/lib/datasets.js +1 -1
  36. package/lib/datasets.mjs +1 -1
  37. package/lib/dates.js +16 -7
  38. package/lib/dates.mjs +15 -6
  39. package/lib/dossiers_legislatifs.js +1 -1
  40. package/lib/dossiers_legislatifs.mjs +1 -1
  41. package/lib/file_systems.js +2 -2
  42. package/lib/file_systems.mjs +2 -2
  43. package/lib/git.d.ts +2 -1
  44. package/lib/git.js +77 -44
  45. package/lib/git.mjs +48 -25
  46. package/lib/index.js +1 -1
  47. package/lib/inserters.js +1 -1
  48. package/lib/inserters.mjs +1 -1
  49. package/lib/loaders.d.ts +52 -2
  50. package/lib/loaders.js +961 -187
  51. package/lib/loaders.mjs +285 -3
  52. package/lib/organes.js +1 -1
  53. package/lib/organes.mjs +1 -1
  54. package/lib/parsers/documents.js +1 -1
  55. package/lib/parsers/documents.mjs +1 -1
  56. package/lib/parsers/index.js +1 -1
  57. package/lib/parsers/recherche_amendements.js +39 -32
  58. package/lib/parsers/recherche_amendements.mjs +5 -1
  59. package/lib/raw_types/acteurs_et_organes.js +1 -1
  60. package/lib/raw_types/acteurs_et_organes.mjs +1 -1
  61. package/lib/raw_types/agendas.js +1 -1
  62. package/lib/raw_types/agendas.mjs +1 -1
  63. package/lib/raw_types/amendements.js +1 -1
  64. package/lib/raw_types/amendements.mjs +1 -1
  65. package/lib/raw_types/dossiers_legislatifs.js +1 -1
  66. package/lib/raw_types/dossiers_legislatifs.mjs +1 -1
  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 +3 -3
  70. package/lib/scripts/bugs_helper.mjs +3 -3
  71. package/lib/scripts/clean_data.js +1 -1
  72. package/lib/scripts/clean_data.mjs +1 -1
  73. package/lib/scripts/clean_reorganized_data.js +63 -61
  74. package/lib/scripts/clean_reorganized_data.mjs +55 -48
  75. package/lib/scripts/diff_amendements.js +1 -1
  76. package/lib/scripts/diff_amendements.mjs +1 -1
  77. package/lib/scripts/document_dossiers_legislatifs.js +1 -1
  78. package/lib/scripts/document_dossiers_legislatifs.mjs +1 -1
  79. package/lib/scripts/get_today_reunions.js +1 -1
  80. package/lib/scripts/merge_scrutins.js +1 -1
  81. package/lib/scripts/merge_scrutins.mjs +1 -1
  82. package/lib/scripts/parse_textes_lois.js +5 -48
  83. package/lib/scripts/parse_textes_lois.mjs +5 -49
  84. package/lib/scripts/raw_types_from_amendements.js +1 -1
  85. package/lib/scripts/raw_types_from_amendements.mjs +1 -1
  86. package/lib/scripts/reorganize_data.js +231 -239
  87. package/lib/scripts/reorganize_data.mjs +50 -59
  88. package/lib/scripts/retrieve_deputes_photos.js +86 -107
  89. package/lib/scripts/retrieve_deputes_photos.mjs +21 -42
  90. package/lib/scripts/retrieve_documents.js +3 -3
  91. package/lib/scripts/retrieve_documents.mjs +3 -3
  92. package/lib/scripts/retrieve_open_data.js +29 -22
  93. package/lib/scripts/retrieve_open_data.mjs +9 -4
  94. package/lib/scripts/retrieve_pending_amendments.js +73 -81
  95. package/lib/scripts/retrieve_pending_amendments.mjs +19 -26
  96. package/lib/scripts/retrieve_senateurs_photos.js +65 -87
  97. package/lib/scripts/retrieve_senateurs_photos.mjs +21 -42
  98. package/lib/scripts/retrieve_textes_lois.js +32 -71
  99. package/lib/scripts/retrieve_textes_lois.mjs +6 -44
  100. package/lib/scripts/test_load.js +1 -1
  101. package/lib/scripts/test_load_big_files.js +1 -1
  102. package/lib/scripts/validate_json.js +3 -3
  103. package/lib/scripts/validate_json.mjs +3 -3
  104. package/lib/shared_types/codes_actes.js +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.js +1 -1
  112. package/lib/types/amendements.mjs +1 -1
  113. package/lib/types/dossiers_legislatifs.js +1 -1
  114. package/lib/types/dossiers_legislatifs.mjs +1 -1
  115. package/lib/types/legislatures.js +1 -1
  116. package/lib/types/scrutins.js +1 -1
  117. package/lib/types/scrutins.mjs +1 -1
  118. package/lib/urls.js +1 -1
  119. package/lib/urls.mjs +1 -1
  120. package/package.json +6 -5
@@ -719,4 +719,4 @@ const typeMap = {
719
719
  "Civ": ["M.", "Mme"],
720
720
  "UidXsiType": ["IdActeur_type", "IdPersonneExterne_type"]
721
721
  };
722
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZXVuaW9uWHNpVHlwZSIsIlBvaW50T2RqWHNpVHlwZSIsIkV0YXQiLCJOYXR1cmVUcmF2YXV4T2RqIiwiUHJvY2VkdXJlIiwiVHlwZVBvaW50T2RqIiwiRm9ybWF0UmV1bmlvbiIsIlF1YW50aWVtZSIsIlByZXNlbmNlIiwiVHlwZVJldW5pb24iLCJDaXYiLCJVaWRYc2lUeXBlIiwiQ29udmVydCIsInRvUmV1bmlvbiIsImpzb24iLCJjYXN0IiwiSlNPTiIsInBhcnNlIiwiciIsInJldW5pb25Ub0pzb24iLCJ2YWx1ZSIsInN0cmluZ2lmeSIsInVuY2FzdCIsInRvQWdlbmRhcyIsImFnZW5kYXNUb0pzb24iLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJFcnJvciIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInVuZGVmaW5lZCIsIm1hcCIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImxlbmd0aCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIm8iLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Jhd190eXBlcy9hZ2VuZGFzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIFJldW5pb24sIEFnZW5kYXMgfSBmcm9tIFwiLi9maWxlXCI7XG4vL1xuLy8gICBjb25zdCByZXVuaW9uID0gQ29udmVydC50b1JldW5pb24oanNvbik7XG4vLyAgIGNvbnN0IGFnZW5kYXMgPSBDb252ZXJ0LnRvQWdlbmRhcyhqc29uKTtcbi8vXG4vLyBUaGVzZSBmdW5jdGlvbnMgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgSlNPTiBkb2Vzbid0XG4vLyBtYXRjaCB0aGUgZXhwZWN0ZWQgaW50ZXJmYWNlLCBldmVuIGlmIHRoZSBKU09OIGlzIHZhbGlkLlxuXG5leHBvcnQgaW50ZXJmYWNlIFJldW5pb24ge1xuICAgIHJldW5pb246IFJldW5pb25SZXVuaW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJldW5pb25SZXVuaW9uIHtcbiAgICBcIkB4bWxuc1wiOiAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBcIkB4bWxuczp4c2lcIjogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6dHlwZVwiOiAgICAgICAgICAgICAgICAgIFJldW5pb25Yc2lUeXBlO1xuICAgIHVpZDogICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0aW1lU3RhbXBEZWJ1dDogICAgICAgICAgICAgICBEYXRlO1xuICAgIHRpbWVTdGFtcEZpbj86ICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBsaWV1PzogICAgICAgICAgICAgICAgICAgICAgICBMaWV1O1xuICAgIGN5Y2xlRGVWaWU6ICAgICAgICAgICAgICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgZGVtYW5kZXVycz86ICAgICAgICAgICAgICAgICAgRGVtYW5kZXVycyB8IG51bGw7XG4gICAgb3JnYW5lUmV1bmlSZWY6ICAgICAgICAgICAgICAgbnVsbCB8IHN0cmluZztcbiAgICB0eXBlUmV1bmlvbj86ICAgICAgICAgICAgICAgICBUeXBlUmV1bmlvbjtcbiAgICBkZW1hbmRldXI/OiAgICAgICAgICAgICAgICAgICBEZW1hbmRldXIgfCBudWxsO1xuICAgIHBhcnRpY2lwYW50cz86ICAgICAgICAgICAgICAgIFB1cnBsZVBhcnRpY2lwYW50cyB8IG51bGw7XG4gICAgdmlzaW9Db25mZXJlbmNlPzogICAgICAgICAgICAgbnVsbCB8IHN0cmluZztcbiAgICBPREo/OiAgICAgICAgICAgICAgICAgICAgICAgICBPZGogfCBudWxsO1xuICAgIHNlc3Npb25SZWY/OiAgICAgICAgICAgICAgICAgIG51bGwgfCBzdHJpbmc7XG4gICAgb3V2ZXJ0dXJlUHJlc3NlPzogICAgICAgICAgICAgc3RyaW5nO1xuICAgIGNhcHRhdGlvblZpZGVvPzogICAgICAgICAgICAgIHN0cmluZztcbiAgICBjb21wdGVSZW5kdVJlZj86ICAgICAgICAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIGZvcm1hdFJldW5pb24/OiAgICAgICAgICAgICAgIEZvcm1hdFJldW5pb247XG4gICAgaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlPzogSW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlO1xuICAgIGlkZW50aWZpYW50cz86ICAgICAgICAgICAgICAgIElkZW50aWZpYW50cztcbn1cblxuZXhwb3J0IGVudW0gUmV1bmlvblhzaVR5cGUge1xuICAgIFJldW5pb25Db21taXNzaW9uVHlwZSA9IFwicmV1bmlvbkNvbW1pc3Npb25fdHlwZVwiLFxuICAgIFJldW5pb25Jbml0UGFybGVtZW50YWlyZVR5cGUgPSBcInJldW5pb25Jbml0UGFybGVtZW50YWlyZV90eXBlXCIsXG4gICAgU2VhbmNlVHlwZSA9IFwic2VhbmNlX3R5cGVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPZGoge1xuICAgIGNvbnZvY2F0aW9uT0RKOiBDb252b2NhdGlvbk9kakNsYXNzIHwgbnVsbDtcbiAgICByZXN1bWVPREo6ICAgICAgQ29udm9jYXRpb25PZGpDbGFzcyB8IG51bGw7XG4gICAgcG9pbnRzT0RKPzogICAgIFBvaW50c09kaiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udm9jYXRpb25PZGpDbGFzcyB7XG4gICAgaXRlbTogc3RyaW5nW10gfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRzT2RqIHtcbiAgICBwb2ludE9ESjogUG9pbnRPZGpFbGVtZW50W10gfCBQb2ludE9kakVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRPZGpFbGVtZW50IHtcbiAgICBcIkB4c2k6dHlwZVwiOiAgICAgICAgICAgICBQb2ludE9kalhzaVR5cGU7XG4gICAgdWlkOiAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBjeWNsZURlVmllOiAgICAgICAgICAgICAgQ3ljbGVEZVZpZTtcbiAgICBvYmpldDogICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGRlbWFuZGV1clBvaW50OiAgICAgICAgICBudWxsO1xuICAgIHByb2NlZHVyZTogICAgICAgICAgICAgICBQcm9jZWR1cmUgfCBudWxsO1xuICAgIGRvc3NpZXJzTGVnaXNsYXRpZnNSZWZzOiBEb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcyB8IG51bGw7XG4gICAgdHlwZVBvaW50T0RKOiAgICAgICAgICAgIFR5cGVQb2ludE9kajtcbiAgICBjb21pdGVTZWNyZXQ6ICAgICAgICAgICAgc3RyaW5nO1xuICAgIHRleHRlc0Fzc29jaWVzOiAgICAgICAgICBudWxsO1xuICAgIG5hdHVyZVRyYXZhdXhPREo/OiAgICAgICBOYXR1cmVUcmF2YXV4T2RqO1xuICAgIGRhdGVDb25mUHJlcz86ICAgICAgICAgICBzdHJpbmc7XG4gICAgZGF0ZUxldHRyZU1pbmlzdHJlPzogICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUG9pbnRPZGpYc2lUeXBlIHtcbiAgICBQb2RqUmV1bmlvblR5cGUgPSBcInBvZGpSZXVuaW9uX3R5cGVcIixcbiAgICBQb2RqU2VhbmNlQ29uZlByZXNUeXBlID0gXCJwb2RqU2VhbmNlQ29uZlByZXNfdHlwZVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN5Y2xlRGVWaWUge1xuICAgIGV0YXQ6ICAgRXRhdDtcbiAgICBjaHJvbm86IENocm9ubztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaHJvbm8ge1xuICAgIGNyZWF0aW9uOiBzdHJpbmc7XG4gICAgY2xvdHVyZTogIG51bGwgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEV0YXQge1xuICAgIEFubnVsw6kgPSBcIkFubnVsw6lcIixcbiAgICBDb25maXJtw6kgPSBcIkNvbmZpcm3DqVwiLFxuICAgIEV2ZW50dWVsID0gXCJFdmVudHVlbFwiLFxuICAgIFN1cHByaW3DqSA9IFwiU3VwcHJpbcOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9zc2llcnNMZWdpc2xhdGlmc1JlZnMge1xuICAgIGRvc3NpZXJSZWY6IHN0cmluZ1tdIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBOYXR1cmVUcmF2YXV4T2RqIHtcbiAgICBPZGpwciA9IFwiT0RKUFJcIixcbiAgICBPZGpzbiA9IFwiT0RKU05cIixcbn1cblxuZXhwb3J0IGVudW0gUHJvY2VkdXJlIHtcbiAgICBEaXNjdXNzaW9uR8OpbsOpcmFsZUNvbW11bmUgPSBcImRpc2N1c3Npb24gZ8OpbsOpcmFsZSBjb21tdW5lXCIsXG4gICAgUHJvY8OpZHVyZURFeGFtZW5TaW1wbGlmacOpZUFydGljbGUxMDMgPSBcInByb2PDqWR1cmUgZCdleGFtZW4gc2ltcGxpZmnDqWUtQXJ0aWNsZSAxMDNcIixcbiAgICBQcm9jw6lkdXJlREV4YW1lblNpbXBsaWZpw6llQXJ0aWNsZTEwNiA9IFwicHJvY8OpZHVyZSBkJ2V4YW1lbiBzaW1wbGlmacOpZS1BcnRpY2xlIDEwNlwiLFxuICAgIFByb2PDqWR1cmVEZUzDqWdpc2xhdGlvbkVuQ29tbWlzc2lvbkFydGljbGUxMDcxID0gXCJwcm9jw6lkdXJlIGRlIGzDqWdpc2xhdGlvbiBlbiBjb21taXNzaW9uLUFydGljbGUgMTA3LTFcIixcbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvaW50T2RqIHtcbiAgICBBbWVuZGVtZW50c0FydDg4ID0gXCJBbWVuZGVtZW50cyAoQXJ0LiA4OClcIixcbiAgICBBbWVuZGVtZW50c0FydDkxID0gXCJBbWVuZGVtZW50cyAoQXJ0LiA5MSlcIixcbiAgICBBdWRpdGlvbiA9IFwiQXVkaXRpb25cIixcbiAgICBBdWRpdGlvbk1pbmlzdHJlID0gXCJBdWRpdGlvbiBtaW5pc3RyZVwiLFxuICAgIEF1ZGl0aW9uTWluaXN0cmVPdXZlcnRlw4BMYVByZXNzZSA9IFwiQXVkaXRpb24gbWluaXN0cmUgb3V2ZXJ0ZSDDoCBsYSBwcmVzc2VcIixcbiAgICBBdWRpdGlvbk91dmVydGXDgExhUHJlc3NlID0gXCJBdWRpdGlvbiBvdXZlcnRlIMOgIGxhIHByZXNzZVwiLFxuICAgIENvbW11bmljYXRpb24gPSBcIkNvbW11bmljYXRpb25cIixcbiAgICBDb25zdGl0dXRpb25EZU1pc3Npb25ESW5mb3JtYXRpb24gPSBcIkNvbnN0aXR1dGlvbiBkZSBtaXNzaW9uIGQnaW5mb3JtYXRpb25cIixcbiAgICBEaXNjdXNzaW9uID0gXCJEaXNjdXNzaW9uXCIsXG4gICAgRMOpYmF0REluaXRpYXRpdmVQYXJsZW1lbnRhaXJlID0gXCJEw6liYXQgZCdpbml0aWF0aXZlIHBhcmxlbWVudGFpcmVcIixcbiAgICBEw6ljbGFyYXRpb25EdUdvdXZlcm5lbWVudFN1aXZpZURVbkTDqWJhdCA9IFwiRMOpY2xhcmF0aW9uIGR1IEdvdXZlcm5lbWVudCBzdWl2aWUgZCd1biBkw6liYXRcIixcbiAgICBFY2hhbmdlc0RlVnVlcyA9IFwiRWNoYW5nZXMgZGUgdnVlc1wiLFxuICAgIEV4YW1lbiA9IFwiRXhhbWVuXCIsXG4gICAgRXhwbGljYXRpb25zRGVWb3RlRGVzR3JvdXBlc0V0Vm90ZVBhclNjcnV0aW5QdWJsaWMgPSBcIkV4cGxpY2F0aW9ucyBkZSB2b3RlIGRlcyBncm91cGVzIGV0IHZvdGUgcGFyIHNjcnV0aW4gcHVibGljXCIsXG4gICAgRXhwbGljYXRpb25zRGVWb3RlRXRWb3RlUGFyU2NydXRpblB1YmxpYyA9IFwiRXhwbGljYXRpb25zIGRlIHZvdGUgZXQgdm90ZSBwYXIgc2NydXRpbiBwdWJsaWNcIixcbiAgICBGaXhhdGlvbkRlTE9yZHJlRHVKb3VyID0gXCJGaXhhdGlvbiBkZSBsJ29yZHJlIGR1IGpvdXJcIixcbiAgICBOb21pbmF0aW9uQnVyZWF1ID0gXCJOb21pbmF0aW9uIGJ1cmVhdVwiLFxuICAgIE5vbWluYXRpb25DYW5kaWRhdHNPcmdhbmlzbWVFeHRyYXBhcmxlbWVudGFpcmUgPSBcIk5vbWluYXRpb24gY2FuZGlkYXRzIG9yZ2FuaXNtZSBleHRyYXBhcmxlbWVudGFpcmVcIixcbiAgICBOb21pbmF0aW9uRFVuTWVtYnJlRFVuZU1pc3Npb25ESW5mb3JtYXRpb24gPSBcIk5vbWluYXRpb24gZCd1biBtZW1icmUgZCd1bmUgbWlzc2lvbiBkJ2luZm9ybWF0aW9uXCIsXG4gICAgTm9taW5hdGlvblJhcHBvcnRldXIgPSBcIk5vbWluYXRpb24gcmFwcG9ydGV1clwiLFxuICAgIE5vbWluYXRpb25SYXBwb3J0ZXVyREFwcGxpY2F0aW9uID0gXCJOb21pbmF0aW9uIHJhcHBvcnRldXIgZCdhcHBsaWNhdGlvblwiLFxuICAgIE5vbWluYXRpb25SYXBwb3J0ZXVyREluZm9ybWF0aW9uID0gXCJOb21pbmF0aW9uIHJhcHBvcnRldXIgZCdpbmZvcm1hdGlvblwiLFxuICAgIE5vbWluYXRpb25SYXBwb3J0ZXVyUG91ckF2aXMgPSBcIk5vbWluYXRpb24gcmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgICBPdXZlcnR1cmVFdENsw7R0dXJlRGVTZXNzaW9uID0gXCJPdXZlcnR1cmUgZXQgY2zDtHR1cmUgZGUgc2Vzc2lvblwiLFxuICAgIFF1ZXN0aW9uc0F1R291dmVybmVtZW50ID0gXCJRdWVzdGlvbnMgYXUgR291dmVybmVtZW50XCIsXG4gICAgUXVlc3Rpb25zT3JhbGVzU2Fuc0TDqWJhdCA9IFwiUXVlc3Rpb25zIG9yYWxlcyBzYW5zIGTDqWJhdFwiLFxuICAgIFJhcHBvcnQgPSBcIlJhcHBvcnRcIixcbiAgICBSYXBwb3J0REluZm9ybWF0aW9uID0gXCJSYXBwb3J0IGQnaW5mb3JtYXRpb25cIixcbiAgICBSYXBwb3J0UG91ckF2aXMgPSBcIlJhcHBvcnQgcG91ciBhdmlzXCIsXG4gICAgU3VpdGVEZUxhRGlzY3Vzc2lvbiA9IFwiU3VpdGUgZGUgbGEgZGlzY3Vzc2lvblwiLFxuICAgIFRhYmxlUm9uZGUgPSBcIlRhYmxlIHJvbmRlXCIsXG4gICAgVm90ZVBhclNjcnV0aW5QdWJsaWMgPSBcIlZvdGUgcGFyIHNjcnV0aW4gcHVibGljXCIsXG4gICAgVm90ZVNvbGVubmVsID0gXCJWb3RlIHNvbGVubmVsXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVtYW5kZXVyIHtcbiAgICBhY3RldXI/OiBBY3RldXJFbGVtZW50O1xuICAgIG9yZ2FuZT86IE9yZ2FuZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3RldXJFbGVtZW50IHtcbiAgICBub206ICAgICAgIG51bGwgfCBzdHJpbmc7XG4gICAgYWN0ZXVyUmVmOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JnYW5lIHtcbiAgICBub206ICAgICAgIHN0cmluZztcbiAgICBvcmdhbmVSZWY6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZW1hbmRldXJzIHtcbiAgICBhY3RldXI/OiBBY3RldXJFbGVtZW50W10gfCBBY3RldXJFbGVtZW50O1xuICAgIG9yZ2FuZT86IE9yZ2FuZTtcbn1cblxuZXhwb3J0IGVudW0gRm9ybWF0UmV1bmlvbiB7XG4gICAgQXVkaXRpb25FeHRlcm5lID0gXCJBdWRpdGlvbkV4dGVybmVcIixcbiAgICBBdWRpdGlvblBhclByZXNpZGVudENvbW1pc3Npb24gPSBcIkF1ZGl0aW9uUGFyUHJlc2lkZW50Q29tbWlzc2lvblwiLFxuICAgIEF1ZGl0aW9uUGFyUmFwcG9ydGV1ciA9IFwiQXVkaXRpb25QYXJSYXBwb3J0ZXVyXCIsXG4gICAgT3JkaW5haXJlID0gXCJPcmRpbmFpcmVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJZGVudGlmaWFudHMge1xuICAgIG51bVNlYW5jZUpPOiBudWxsIHwgc3RyaW5nO1xuICAgIGlkSk86ICAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIHF1YW50aWVtZTogICBRdWFudGllbWU7XG4gICAgRGF0ZVNlYW5jZTogIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUXVhbnRpZW1lIHtcbiAgICBEZXV4acOobWUgPSBcIkRldXhpw6htZVwiLFxuICAgIFByZW1pw6hyZSA9IFwiUHJlbWnDqHJlXCIsXG4gICAgVHJvaXNpw6htZSA9IFwiVHJvaXNpw6htZVwiLFxuICAgIFVuaXF1ZSA9IFwiVW5pcXVlXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlIHtcbiAgICBlc3RSZXVuaW9uSW50ZXJuYXRpb25hbGU6ICAgICBzdHJpbmc7XG4gICAgbGlzdGVQYXlzOiAgICAgICAgICAgICAgICAgICAgTGlzdGVQYXlzIHwgbnVsbDtcbiAgICBpbmZvcm1hdGlvbnNDb21wbGVtZW50YWlyZXM/OiBudWxsIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RlUGF5cyB7XG4gICAgcGF5c1JlZjogc3RyaW5nW10gfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlldSB7XG4gICAgY29kZT86ICAgICAgICAgc3RyaW5nIHwgbnVsbDtcbiAgICBsaWJlbGxlQ291cnQ/OiBzdHJpbmcgfCBudWxsO1xuICAgIGxpYmVsbGVMb25nOiAgIG51bGwgfCBzdHJpbmc7XG4gICAgbGlldVJlZj86ICAgICAgc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQYXJ0aWNpcGFudHMge1xuICAgIHBhcnRpY2lwYW50c0ludGVybmVzOiAgUHVycGxlUGFydGljaXBhbnRzSW50ZXJuZXMgfCBudWxsO1xuICAgIHBlcnNvbm5lc0F1ZGl0aW9ubmVlczogUHVycGxlUGVyc29ubmVzQXVkaXRpb25uZWVzIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQYXJ0aWNpcGFudHNJbnRlcm5lcyB7XG4gICAgcGFydGljaXBhbnRJbnRlcm5lOiBQYXJ0aWNpcGFudEludGVybmVFbGVtZW50W10gfCBQYXJ0aWNpcGFudEludGVybmVFbGVtZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnQge1xuICAgIGFjdGV1clJlZjogc3RyaW5nO1xuICAgIHByZXNlbmNlOiAgUHJlc2VuY2U7XG59XG5cbmV4cG9ydCBlbnVtIFByZXNlbmNlIHtcbiAgICBBYnNlbnQgPSBcImFic2VudFwiLFxuICAgIEV4Y3Vzw6kgPSBcImV4Y3Vzw6lcIixcbiAgICBQcsOpc2VudCA9IFwicHLDqXNlbnRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQZXJzb25uZXNBdWRpdGlvbm5lZXMge1xuICAgIHBlcnNvbm5lQXVkaXRpb25uZWU6IG51bGxbXSB8IG51bGw7XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVSZXVuaW9uIHtcbiAgICBEZXAgPSBcIkRFUFwiLFxuICAgIEdhID0gXCJHQVwiLFxuICAgIEdlID0gXCJHRVwiLFxuICAgIEdldmkgPSBcIkdFVklcIixcbiAgICBHcCA9IFwiR1BcIixcbiAgICBIw6lBdXLDqWxpZW4gPSBcIkjDiSBBdXLDqWxpZW5cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZ2VuZGFzIHtcbiAgICByZXVuaW9uczogUmV1bmlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmV1bmlvbnMge1xuICAgIHJldW5pb246IFJldW5pb25FbGVtZW50W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmV1bmlvbkVsZW1lbnQge1xuICAgIHVpZDogICAgICAgICAgICAgIHN0cmluZztcbiAgICB0aW1lU3RhbXBEZWJ1dDogICBEYXRlO1xuICAgIHRpbWVTdGFtcEZpbj86ICAgIHN0cmluZztcbiAgICBsaWV1OiAgICAgICAgICAgICBMaWV1O1xuICAgIGN5Y2xlRGVWaWU6ICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgZGVtYW5kZXVycz86ICAgICAgRGVtYW5kZXVycyB8IG51bGw7XG4gICAgb3JnYW5lUmV1bmlSZWY6ICAgbnVsbCB8IHN0cmluZztcbiAgICB0eXBlUmV1bmlvbj86ICAgICBUeXBlUmV1bmlvbjtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgIHN0cmluZztcbiAgICBkZW1hbmRldXI/OiAgICAgICBudWxsO1xuICAgIHBhcnRpY2lwYW50cz86ICAgIEZsdWZmeVBhcnRpY2lwYW50cyB8IG51bGw7XG4gICAgc2Vzc2lvblJlZj86ICAgICAgbnVsbCB8IHN0cmluZztcbiAgICBvdXZlcnR1cmVQcmVzc2U/OiBzdHJpbmc7XG4gICAgT0RKPzogICAgICAgICAgICAgT2RqO1xuICAgIGNvbXB0ZVJlbmR1UmVmPzogIG51bGwgfCBzdHJpbmc7XG4gICAgaWRlbnRpZmlhbnRzPzogICAgSWRlbnRpZmlhbnRzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZsdWZmeVBhcnRpY2lwYW50cyB7XG4gICAgcGFydGljaXBhbnRzSW50ZXJuZXM6ICBGbHVmZnlQYXJ0aWNpcGFudHNJbnRlcm5lcyB8IG51bGw7XG4gICAgcGVyc29ubmVzQXVkaXRpb25uZWVzOiBGbHVmZnlQZXJzb25uZXNBdWRpdGlvbm5lZXMgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZsdWZmeVBhcnRpY2lwYW50c0ludGVybmVzIHtcbiAgICBwYXJ0aWNpcGFudEludGVybmU6IFBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGbHVmZnlQZXJzb25uZXNBdWRpdGlvbm5lZXMge1xuICAgIHBlcnNvbm5lQXVkaXRpb25uZWU6IFBlcnNvbm5lQXVkaXRpb25uZWVFbGVtZW50W10gfCBQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudCB7XG4gICAgdWlkOiAgICAgIFVpZDtcbiAgICBpZGVudDogICAgSWRlbnQ7XG4gICAgZGF0ZU5haXM6IERhdGUgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50IHtcbiAgICBjaXY6ICAgICAgICBDaXY7XG4gICAgcHJlbm9tOiAgICAgc3RyaW5nO1xuICAgIG5vbTogICAgICAgIHN0cmluZztcbiAgICBhbHBoYT86ICAgICBzdHJpbmc7XG4gICAgdHJpZ3JhbW1lPzogbnVsbCB8IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQ2l2IHtcbiAgICBNID0gXCJNLlwiLFxuICAgIE1tZSA9IFwiTW1lXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVWlkIHtcbiAgICBcIkB4c2k6dHlwZVwiOiBVaWRYc2lUeXBlO1xuICAgIFwiI3RleHRcIjogICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gVWlkWHNpVHlwZSB7XG4gICAgSWRBY3RldXJUeXBlID0gXCJJZEFjdGV1cl90eXBlXCIsXG4gICAgSWRQZXJzb25uZUV4dGVybmVUeXBlID0gXCJJZFBlcnNvbm5lRXh0ZXJuZV90eXBlXCIsXG59XG5cbi8vIENvbnZlcnRzIEpTT04gc3RyaW5ncyB0by9mcm9tIHlvdXIgdHlwZXNcbi8vIGFuZCBhc3NlcnRzIHRoZSByZXN1bHRzIG9mIEpTT04ucGFyc2UgYXQgcnVudGltZVxuZXhwb3J0IGNsYXNzIENvbnZlcnQge1xuICAgIHB1YmxpYyBzdGF0aWMgdG9SZXVuaW9uKGpzb246IHN0cmluZyk6IFJldW5pb24ge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiUmV1bmlvblwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyByZXVuaW9uVG9Kc29uKHZhbHVlOiBSZXVuaW9uKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIlJldW5pb25cIikpLCBudWxsLCAyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvQWdlbmRhcyhqc29uOiBzdHJpbmcpOiBBZ2VuZGFzIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFnZW5kYXNcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYWdlbmRhc1RvSnNvbih2YWx1ZTogQWdlbmRhcyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBZ2VuZGFzXCIpKSwgbnVsbCwgMik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9ICcnKTogbmV2ZXIge1xuICAgIGlmIChrZXkpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWQgdmFsdWUgZm9yIGtleSBcIiR7a2V5fVwiLiBFeHBlY3RlZCB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KHZhbCl9YCk7XG4gICAgfVxuICAgIHRocm93IEVycm9yKGBJbnZhbGlkIHZhbHVlICR7SlNPTi5zdHJpbmdpZnkodmFsKX0gZm9yIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfWAsICk7XG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNvblRvSlMgPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNvblRvSlM7XG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNUb0pTT04gPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNUb0pTT047XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybSh2YWw6IGFueSwgdHlwOiBhbnksIGdldFByb3BzOiBhbnksIGtleTogYW55ID0gJycpOiBhbnkge1xuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgICAgICBjb25zdCBsID0gdHlwcy5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0eXAgPSB0eXBzW2ldO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcyk7XG4gICAgICAgICAgICB9IGNhdGNoIChfKSB7fVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUoXCJhcnJheVwiLCB2YWwpO1xuICAgICAgICByZXR1cm4gdmFsLm1hcChlbCA9PiB0cmFuc2Zvcm0oZWwsIHR5cCwgZ2V0UHJvcHMpKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZCA9IG5ldyBEYXRlKHZhbCk7XG4gICAgICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGQ7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtT2JqZWN0KHByb3BzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSwgYWRkaXRpb25hbDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xuICAgICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV07XG4gICAgICAgICAgICBjb25zdCB2ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwga2V5KSA/IHZhbFtrZXldIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIHByb3Aua2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcHMsIGtleSkpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWw7XG4gICAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbCk7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKSA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKSAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpICAgICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgICAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbCk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbCk7XG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcyk7XG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKTtcbn1cblxuZnVuY3Rpb24gYSh0eXA6IGFueSkge1xuICAgIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9O1xufVxuXG5mdW5jdGlvbiB1KC4uLnR5cHM6IGFueVtdKSB7XG4gICAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH07XG59XG5cbmZ1bmN0aW9uIG8ocHJvcHM6IGFueVtdLCBhZGRpdGlvbmFsOiBhbnkpIHtcbiAgICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9O1xufVxuXG4vLyBmdW5jdGlvbiBtKGFkZGl0aW9uYWw6IGFueSkge1xuLy8gICAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9O1xuLy8gfVxuXG5mdW5jdGlvbiByKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiB7IHJlZjogbmFtZSB9O1xufVxuXG5jb25zdCB0eXBlTWFwOiBhbnkgPSB7XG4gICAgXCJSZXVuaW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicmV1bmlvblwiLCBqczogXCJyZXVuaW9uXCIsIHR5cDogcihcIlJldW5pb25SZXVuaW9uXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmV1bmlvblJldW5pb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnNcIiwganM6IFwiQHhtbG5zXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTp0eXBlXCIsIGpzOiBcIkB4c2k6dHlwZVwiLCB0eXA6IHIoXCJSZXVuaW9uWHNpVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRpbWVTdGFtcERlYnV0XCIsIGpzOiBcInRpbWVTdGFtcERlYnV0XCIsIHR5cDogRGF0ZSB9LFxuICAgICAgICB7IGpzb246IFwidGltZVN0YW1wRmluXCIsIGpzOiBcInRpbWVTdGFtcEZpblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlldVwiLCBqczogXCJsaWV1XCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJMaWV1XCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRlbWFuZGV1cnNcIiwganM6IFwiZGVtYW5kZXVyc1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJEZW1hbmRldXJzXCIpLCBudWxsKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm9yZ2FuZVJldW5pUmVmXCIsIGpzOiBcIm9yZ2FuZVJldW5pUmVmXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHlwZVJldW5pb25cIiwganM6IFwidHlwZVJldW5pb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVSZXVuaW9uXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZGVtYW5kZXVyXCIsIGpzOiBcImRlbWFuZGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJEZW1hbmRldXJcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRzXCIsIGpzOiBcInBhcnRpY2lwYW50c1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJQdXJwbGVQYXJ0aWNpcGFudHNcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwidmlzaW9Db25mZXJlbmNlXCIsIGpzOiBcInZpc2lvQ29uZmVyZW5jZVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiT0RKXCIsIGpzOiBcIk9ESlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJPZGpcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwic2Vzc2lvblJlZlwiLCBqczogXCJzZXNzaW9uUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoXCJcIiwgbnVsbCkpIH0sXG4gICAgICAgIHsganNvbjogXCJvdXZlcnR1cmVQcmVzc2VcIiwganM6IFwib3V2ZXJ0dXJlUHJlc3NlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjYXB0YXRpb25WaWRlb1wiLCBqczogXCJjYXB0YXRpb25WaWRlb1wiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29tcHRlUmVuZHVSZWZcIiwganM6IFwiY29tcHRlUmVuZHVSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShudWxsLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImZvcm1hdFJldW5pb25cIiwganM6IFwiZm9ybWF0UmV1bmlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRm9ybWF0UmV1bmlvblwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImluZm9zUmV1bmlvbnNJbnRlcm5hdGlvbmFsZVwiLCBqczogXCJpbmZvc1JldW5pb25zSW50ZXJuYXRpb25hbGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZm9zUmV1bmlvbnNJbnRlcm5hdGlvbmFsZVwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImlkZW50aWZpYW50c1wiLCBqczogXCJpZGVudGlmaWFudHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIklkZW50aWZpYW50c1wiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJPZGpcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb252b2NhdGlvbk9ESlwiLCBqczogXCJjb252b2NhdGlvbk9ESlwiLCB0eXA6IHUocihcIkNvbnZvY2F0aW9uT2RqQ2xhc3NcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJyZXN1bWVPREpcIiwganM6IFwicmVzdW1lT0RKXCIsIHR5cDogdShyKFwiQ29udm9jYXRpb25PZGpDbGFzc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInBvaW50c09ESlwiLCBqczogXCJwb2ludHNPREpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiUG9pbnRzT2RqXCIpLCBudWxsKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb252b2NhdGlvbk9kakNsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiaXRlbVwiLCBqczogXCJpdGVtXCIsIHR5cDogdShhKFwiXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlBvaW50c09kalwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBvaW50T0RKXCIsIGpzOiBcInBvaW50T0RKXCIsIHR5cDogdShhKHIoXCJQb2ludE9kakVsZW1lbnRcIikpLCByKFwiUG9pbnRPZGpFbGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlBvaW50T2RqRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6dHlwZVwiLCBqczogXCJAeHNpOnR5cGVcIiwgdHlwOiByKFwiUG9pbnRPZGpYc2lUeXBlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIm9iamV0XCIsIGpzOiBcIm9iamV0XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiZGVtYW5kZXVyUG9pbnRcIiwganM6IFwiZGVtYW5kZXVyUG9pbnRcIiwgdHlwOiBudWxsIH0sXG4gICAgICAgIHsganNvbjogXCJwcm9jZWR1cmVcIiwganM6IFwicHJvY2VkdXJlXCIsIHR5cDogdShyKFwiUHJvY2VkdXJlXCIpLCBudWxsKSB9LFxuICAgICAgICB7IGpzb246IFwiZG9zc2llcnNMZWdpc2xhdGlmc1JlZnNcIiwganM6IFwiZG9zc2llcnNMZWdpc2xhdGlmc1JlZnNcIiwgdHlwOiB1KHIoXCJEb3NzaWVyc0xlZ2lzbGF0aWZzUmVmc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVQb2ludE9ESlwiLCBqczogXCJ0eXBlUG9pbnRPREpcIiwgdHlwOiByKFwiVHlwZVBvaW50T2RqXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb21pdGVTZWNyZXRcIiwganM6IFwiY29taXRlU2VjcmV0XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidGV4dGVzQXNzb2NpZXNcIiwganM6IFwidGV4dGVzQXNzb2NpZXNcIiwgdHlwOiBudWxsIH0sXG4gICAgICAgIHsganNvbjogXCJuYXR1cmVUcmF2YXV4T0RKXCIsIGpzOiBcIm5hdHVyZVRyYXZhdXhPREpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk5hdHVyZVRyYXZhdXhPZGpcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlQ29uZlByZXNcIiwganM6IFwiZGF0ZUNvbmZQcmVzXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlTGV0dHJlTWluaXN0cmVcIiwganM6IFwiZGF0ZUxldHRyZU1pbmlzdHJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ3ljbGVEZVZpZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjaHJvbm9cIiwganM6IFwiY2hyb25vXCIsIHR5cDogcihcIkNocm9ub1wiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNocm9ub1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNyZWF0aW9uXCIsIGpzOiBcImNyZWF0aW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2xvdHVyZVwiLCBqczogXCJjbG90dXJlXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRvc3NpZXJzTGVnaXNsYXRpZnNSZWZzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZG9zc2llclJlZlwiLCBqczogXCJkb3NzaWVyUmVmXCIsIHR5cDogdShhKFwiXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRlbWFuZGV1clwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clwiLCBqczogXCJhY3RldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkFjdGV1ckVsZW1lbnRcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJvcmdhbmVcIiwganM6IFwib3JnYW5lXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJPcmdhbmVcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQWN0ZXVyRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIk9yZ2FuZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJvcmdhbmVSZWZcIiwganM6IFwib3JnYW5lUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRlbWFuZGV1cnNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhY3RldXJcIiwganM6IFwiYWN0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiQWN0ZXVyRWxlbWVudFwiKSksIHIoXCJBY3RldXJFbGVtZW50XCIpKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm9yZ2FuZVwiLCBqczogXCJvcmdhbmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk9yZ2FuZVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJJZGVudGlmaWFudHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJudW1TZWFuY2VKT1wiLCBqczogXCJudW1TZWFuY2VKT1wiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImlkSk9cIiwganM6IFwiaWRKT1wiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInF1YW50aWVtZVwiLCBqczogXCJxdWFudGllbWVcIiwgdHlwOiByKFwiUXVhbnRpZW1lXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJEYXRlU2VhbmNlXCIsIGpzOiBcIkRhdGVTZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiSW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZXN0UmV1bmlvbkludGVybmF0aW9uYWxlXCIsIGpzOiBcImVzdFJldW5pb25JbnRlcm5hdGlvbmFsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxpc3RlUGF5c1wiLCBqczogXCJsaXN0ZVBheXNcIiwgdHlwOiB1KHIoXCJMaXN0ZVBheXNcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJpbmZvcm1hdGlvbnNDb21wbGVtZW50YWlyZXNcIiwganM6IFwiaW5mb3JtYXRpb25zQ29tcGxlbWVudGFpcmVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHUobnVsbCwgXCJcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlzdGVQYXlzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGF5c1JlZlwiLCBqczogXCJwYXlzUmVmXCIsIHR5cDogdShhKFwiXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZXVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShcIlwiLCBudWxsKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVDb3VydFwiLCBqczogXCJsaWJlbGxlQ291cnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShcIlwiLCBudWxsKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVMb25nXCIsIGpzOiBcImxpYmVsbGVMb25nXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlldVJlZlwiLCBqczogXCJsaWV1UmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoXCJcIiwgbnVsbCkpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlUGFydGljaXBhbnRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRzSW50ZXJuZXNcIiwganM6IFwicGFydGljaXBhbnRzSW50ZXJuZXNcIiwgdHlwOiB1KHIoXCJQdXJwbGVQYXJ0aWNpcGFudHNJbnRlcm5lc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInBlcnNvbm5lc0F1ZGl0aW9ubmVlc1wiLCBqczogXCJwZXJzb25uZXNBdWRpdGlvbm5lZXNcIiwgdHlwOiB1KHIoXCJQdXJwbGVQZXJzb25uZXNBdWRpdGlvbm5lZXNcIiksIG51bGwpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlUGFydGljaXBhbnRzSW50ZXJuZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwYXJ0aWNpcGFudEludGVybmVcIiwganM6IFwicGFydGljaXBhbnRJbnRlcm5lXCIsIHR5cDogdShhKHIoXCJQYXJ0aWNpcGFudEludGVybmVFbGVtZW50XCIpKSwgcihcIlBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUGFydGljaXBhbnRJbnRlcm5lRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcmVzZW5jZVwiLCBqczogXCJwcmVzZW5jZVwiLCB0eXA6IHIoXCJQcmVzZW5jZVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlB1cnBsZVBlcnNvbm5lc0F1ZGl0aW9ubmVlc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBlcnNvbm5lQXVkaXRpb25uZWVcIiwganM6IFwicGVyc29ubmVBdWRpdGlvbm5lZVwiLCB0eXA6IHUoYShudWxsKSwgbnVsbCkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBZ2VuZGFzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicmV1bmlvbnNcIiwganM6IFwicmV1bmlvbnNcIiwgdHlwOiByKFwiUmV1bmlvbnNcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJSZXVuaW9uc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInJldW5pb25cIiwganM6IFwicmV1bmlvblwiLCB0eXA6IGEocihcIlJldW5pb25FbGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlJldW5pb25FbGVtZW50XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRpbWVTdGFtcERlYnV0XCIsIGpzOiBcInRpbWVTdGFtcERlYnV0XCIsIHR5cDogRGF0ZSB9LFxuICAgICAgICB7IGpzb246IFwidGltZVN0YW1wRmluXCIsIGpzOiBcInRpbWVTdGFtcEZpblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlldVwiLCBqczogXCJsaWV1XCIsIHR5cDogcihcIkxpZXVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkZW1hbmRldXJzXCIsIGpzOiBcImRlbWFuZGV1cnNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiRGVtYW5kZXVyc1wiKSwgbnVsbCkpIH0sXG4gICAgICAgIHsganNvbjogXCJvcmdhbmVSZXVuaVJlZlwiLCBqczogXCJvcmdhbmVSZXVuaVJlZlwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVSZXVuaW9uXCIsIGpzOiBcInR5cGVSZXVuaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlUmV1bmlvblwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGVtYW5kZXVyXCIsIGpzOiBcImRlbWFuZGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBudWxsKSB9LFxuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRzXCIsIGpzOiBcInBhcnRpY2lwYW50c1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJGbHVmZnlQYXJ0aWNpcGFudHNcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwic2Vzc2lvblJlZlwiLCBqczogXCJzZXNzaW9uUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoXCJcIiwgbnVsbCkpIH0sXG4gICAgICAgIHsganNvbjogXCJvdXZlcnR1cmVQcmVzc2VcIiwganM6IFwib3V2ZXJ0dXJlUHJlc3NlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJPREpcIiwganM6IFwiT0RKXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJPZGpcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJjb21wdGVSZW5kdVJlZlwiLCBqczogXCJjb21wdGVSZW5kdVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiaWRlbnRpZmlhbnRzXCIsIGpzOiBcImlkZW50aWZpYW50c1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiSWRlbnRpZmlhbnRzXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkZsdWZmeVBhcnRpY2lwYW50c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBhcnRpY2lwYW50c0ludGVybmVzXCIsIGpzOiBcInBhcnRpY2lwYW50c0ludGVybmVzXCIsIHR5cDogdShyKFwiRmx1ZmZ5UGFydGljaXBhbnRzSW50ZXJuZXNcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJwZXJzb25uZXNBdWRpdGlvbm5lZXNcIiwganM6IFwicGVyc29ubmVzQXVkaXRpb25uZWVzXCIsIHR5cDogdShyKFwiRmx1ZmZ5UGVyc29ubmVzQXVkaXRpb25uZWVzXCIpLCBudWxsKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkZsdWZmeVBhcnRpY2lwYW50c0ludGVybmVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRJbnRlcm5lXCIsIGpzOiBcInBhcnRpY2lwYW50SW50ZXJuZVwiLCB0eXA6IGEocihcIlBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRmx1ZmZ5UGVyc29ubmVzQXVkaXRpb25uZWVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGVyc29ubmVBdWRpdGlvbm5lZVwiLCBqczogXCJwZXJzb25uZUF1ZGl0aW9ubmVlXCIsIHR5cDogdShhKHIoXCJQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudFwiKSksIHIoXCJQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudFwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiByKFwiVWlkXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJpZGVudFwiLCBqczogXCJpZGVudFwiLCB0eXA6IHIoXCJJZGVudFwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZU5haXNcIiwganM6IFwiZGF0ZU5haXNcIiwgdHlwOiB1KERhdGUsIG51bGwpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiSWRlbnRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjaXZcIiwganM6IFwiY2l2XCIsIHR5cDogcihcIkNpdlwiKSB9LFxuICAgICAgICB7IGpzb246IFwicHJlbm9tXCIsIGpzOiBcInByZW5vbVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhbHBoYVwiLCBqczogXCJhbHBoYVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHJpZ3JhbW1lXCIsIGpzOiBcInRyaWdyYW1tZVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KG51bGwsIFwiXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlVpZFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6dHlwZVwiLCBqczogXCJAeHNpOnR5cGVcIiwgdHlwOiByKFwiVWlkWHNpVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiI3RleHRcIiwganM6IFwiI3RleHRcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmV1bmlvblhzaVR5cGVcIjogW1xuICAgICAgICBcInJldW5pb25Db21taXNzaW9uX3R5cGVcIixcbiAgICAgICAgXCJyZXVuaW9uSW5pdFBhcmxlbWVudGFpcmVfdHlwZVwiLFxuICAgICAgICBcInNlYW5jZV90eXBlXCIsXG4gICAgXSxcbiAgICBcIlBvaW50T2RqWHNpVHlwZVwiOiBbXG4gICAgICAgIFwicG9kalJldW5pb25fdHlwZVwiLFxuICAgICAgICBcInBvZGpTZWFuY2VDb25mUHJlc190eXBlXCIsXG4gICAgXSxcbiAgICBcIkV0YXRcIjogW1xuICAgICAgICBcIkFubnVsw6lcIixcbiAgICAgICAgXCJDb25maXJtw6lcIixcbiAgICAgICAgXCJFdmVudHVlbFwiLFxuICAgICAgICBcIlN1cHByaW3DqVwiLFxuICAgIF0sXG4gICAgXCJOYXR1cmVUcmF2YXV4T2RqXCI6IFtcbiAgICAgICAgXCJPREpQUlwiLFxuICAgICAgICBcIk9ESlNOXCIsXG4gICAgXSxcbiAgICBcIlByb2NlZHVyZVwiOiBbXG4gICAgICAgIFwiZGlzY3Vzc2lvbiBnw6luw6lyYWxlIGNvbW11bmVcIixcbiAgICAgICAgXCJwcm9jw6lkdXJlIGQnZXhhbWVuIHNpbXBsaWZpw6llLUFydGljbGUgMTAzXCIsXG4gICAgICAgIFwicHJvY8OpZHVyZSBkJ2V4YW1lbiBzaW1wbGlmacOpZS1BcnRpY2xlIDEwNlwiLFxuICAgICAgICBcInByb2PDqWR1cmUgZGUgbMOpZ2lzbGF0aW9uIGVuIGNvbW1pc3Npb24tQXJ0aWNsZSAxMDctMVwiLFxuICAgIF0sXG4gICAgXCJUeXBlUG9pbnRPZGpcIjogW1xuICAgICAgICBcIkFtZW5kZW1lbnRzIChBcnQuIDg4KVwiLFxuICAgICAgICBcIkFtZW5kZW1lbnRzIChBcnQuIDkxKVwiLFxuICAgICAgICBcIkF1ZGl0aW9uXCIsXG4gICAgICAgIFwiQXVkaXRpb24gbWluaXN0cmVcIixcbiAgICAgICAgXCJBdWRpdGlvbiBtaW5pc3RyZSBvdXZlcnRlIMOgIGxhIHByZXNzZVwiLFxuICAgICAgICBcIkF1ZGl0aW9uIG91dmVydGUgw6AgbGEgcHJlc3NlXCIsXG4gICAgICAgIFwiQ29tbXVuaWNhdGlvblwiLFxuICAgICAgICBcIkNvbnN0aXR1dGlvbiBkZSBtaXNzaW9uIGQnaW5mb3JtYXRpb25cIixcbiAgICAgICAgXCJEaXNjdXNzaW9uXCIsXG4gICAgICAgIFwiRMOpYmF0IGQnaW5pdGlhdGl2ZSBwYXJsZW1lbnRhaXJlXCIsXG4gICAgICAgIFwiRMOpY2xhcmF0aW9uIGR1IEdvdXZlcm5lbWVudCBzdWl2aWUgZCd1biBkw6liYXRcIixcbiAgICAgICAgXCJFY2hhbmdlcyBkZSB2dWVzXCIsXG4gICAgICAgIFwiRXhhbWVuXCIsXG4gICAgICAgIFwiRXhwbGljYXRpb25zIGRlIHZvdGUgZGVzIGdyb3VwZXMgZXQgdm90ZSBwYXIgc2NydXRpbiBwdWJsaWNcIixcbiAgICAgICAgXCJFeHBsaWNhdGlvbnMgZGUgdm90ZSBldCB2b3RlIHBhciBzY3J1dGluIHB1YmxpY1wiLFxuICAgICAgICBcIkZpeGF0aW9uIGRlIGwnb3JkcmUgZHUgam91clwiLFxuICAgICAgICBcIk5vbWluYXRpb24gYnVyZWF1XCIsXG4gICAgICAgIFwiTm9taW5hdGlvbiBjYW5kaWRhdHMgb3JnYW5pc21lIGV4dHJhcGFybGVtZW50YWlyZVwiLFxuICAgICAgICBcIk5vbWluYXRpb24gZCd1biBtZW1icmUgZCd1bmUgbWlzc2lvbiBkJ2luZm9ybWF0aW9uXCIsXG4gICAgICAgIFwiTm9taW5hdGlvbiByYXBwb3J0ZXVyXCIsXG4gICAgICAgIFwiTm9taW5hdGlvbiByYXBwb3J0ZXVyIGQnYXBwbGljYXRpb25cIixcbiAgICAgICAgXCJOb21pbmF0aW9uIHJhcHBvcnRldXIgZCdpbmZvcm1hdGlvblwiLFxuICAgICAgICBcIk5vbWluYXRpb24gcmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgICAgICAgXCJPdXZlcnR1cmUgZXQgY2zDtHR1cmUgZGUgc2Vzc2lvblwiLFxuICAgICAgICBcIlF1ZXN0aW9ucyBhdSBHb3V2ZXJuZW1lbnRcIixcbiAgICAgICAgXCJRdWVzdGlvbnMgb3JhbGVzIHNhbnMgZMOpYmF0XCIsXG4gICAgICAgIFwiUmFwcG9ydFwiLFxuICAgICAgICBcIlJhcHBvcnQgZCdpbmZvcm1hdGlvblwiLFxuICAgICAgICBcIlJhcHBvcnQgcG91ciBhdmlzXCIsXG4gICAgICAgIFwiU3VpdGUgZGUgbGEgZGlzY3Vzc2lvblwiLFxuICAgICAgICBcIlRhYmxlIHJvbmRlXCIsXG4gICAgICAgIFwiVm90ZSBwYXIgc2NydXRpbiBwdWJsaWNcIixcbiAgICAgICAgXCJWb3RlIHNvbGVubmVsXCIsXG4gICAgXSxcbiAgICBcIkZvcm1hdFJldW5pb25cIjogW1xuICAgICAgICBcIkF1ZGl0aW9uRXh0ZXJuZVwiLFxuICAgICAgICBcIkF1ZGl0aW9uUGFyUHJlc2lkZW50Q29tbWlzc2lvblwiLFxuICAgICAgICBcIkF1ZGl0aW9uUGFyUmFwcG9ydGV1clwiLFxuICAgICAgICBcIk9yZGluYWlyZVwiLFxuICAgIF0sXG4gICAgXCJRdWFudGllbWVcIjogW1xuICAgICAgICBcIkRldXhpw6htZVwiLFxuICAgICAgICBcIlByZW1pw6hyZVwiLFxuICAgICAgICBcIlRyb2lzacOobWVcIixcbiAgICAgICAgXCJVbmlxdWVcIixcbiAgICBdLFxuICAgIFwiUHJlc2VuY2VcIjogW1xuICAgICAgICBcImFic2VudFwiLFxuICAgICAgICBcImV4Y3Vzw6lcIixcbiAgICAgICAgXCJwcsOpc2VudFwiLFxuICAgIF0sXG4gICAgXCJUeXBlUmV1bmlvblwiOiBbXG4gICAgICAgIFwiREVQXCIsXG4gICAgICAgIFwiR0FcIixcbiAgICAgICAgXCJHRVwiLFxuICAgICAgICBcIkdFVklcIixcbiAgICAgICAgXCJHUFwiLFxuICAgICAgICBcIkjDiSBBdXLDqWxpZW5cIixcbiAgICBdLFxuICAgIFwiQ2l2XCI6IFtcbiAgICAgICAgXCJNLlwiLFxuICAgICAgICBcIk1tZVwiLFxuICAgIF0sXG4gICAgXCJVaWRYc2lUeXBlXCI6IFtcbiAgICAgICAgXCJJZEFjdGV1cl90eXBlXCIsXG4gICAgICAgIFwiSWRQZXJzb25uZUV4dGVybmVfdHlwZVwiLFxuICAgIF0sXG59O1xuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBK0JBLFdBQVlBLGNBQWM7QUFJekIsV0FKV0EsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztBQUFBLEdBQWRBLGNBQWMsS0FBZEEsY0FBYztBQW9DMUIsV0FBWUMsZUFBZTtBQUcxQixXQUhXQSxlQUFlO0VBQWZBLGVBQWU7RUFBZkEsZUFBZTtBQUFBLEdBQWZBLGVBQWUsS0FBZkEs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
722
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZXVuaW9uWHNpVHlwZSIsIlBvaW50T2RqWHNpVHlwZSIsIkV0YXQiLCJOYXR1cmVUcmF2YXV4T2RqIiwiUHJvY2VkdXJlIiwiVHlwZVBvaW50T2RqIiwiRm9ybWF0UmV1bmlvbiIsIlF1YW50aWVtZSIsIlByZXNlbmNlIiwiVHlwZVJldW5pb24iLCJDaXYiLCJVaWRYc2lUeXBlIiwiQ29udmVydCIsInRvUmV1bmlvbiIsImpzb24iLCJjYXN0IiwiSlNPTiIsInBhcnNlIiwiciIsInJldW5pb25Ub0pzb24iLCJ2YWx1ZSIsInN0cmluZ2lmeSIsInVuY2FzdCIsInRvQWdlbmRhcyIsImFnZW5kYXNUb0pzb24iLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJFcnJvciIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInVuZGVmaW5lZCIsIm1hcCIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImxlbmd0aCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIm8iLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Jhd190eXBlcy9hZ2VuZGFzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIFJldW5pb24sIEFnZW5kYXMgfSBmcm9tIFwiLi9maWxlXCI7XG4vL1xuLy8gICBjb25zdCByZXVuaW9uID0gQ29udmVydC50b1JldW5pb24oanNvbik7XG4vLyAgIGNvbnN0IGFnZW5kYXMgPSBDb252ZXJ0LnRvQWdlbmRhcyhqc29uKTtcbi8vXG4vLyBUaGVzZSBmdW5jdGlvbnMgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgSlNPTiBkb2Vzbid0XG4vLyBtYXRjaCB0aGUgZXhwZWN0ZWQgaW50ZXJmYWNlLCBldmVuIGlmIHRoZSBKU09OIGlzIHZhbGlkLlxuXG5leHBvcnQgaW50ZXJmYWNlIFJldW5pb24ge1xuICAgIHJldW5pb246IFJldW5pb25SZXVuaW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJldW5pb25SZXVuaW9uIHtcbiAgICBcIkB4bWxuc1wiOiAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBcIkB4bWxuczp4c2lcIjogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6dHlwZVwiOiAgICAgICAgICAgICAgICAgIFJldW5pb25Yc2lUeXBlO1xuICAgIHVpZDogICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0aW1lU3RhbXBEZWJ1dDogICAgICAgICAgICAgICBEYXRlO1xuICAgIHRpbWVTdGFtcEZpbj86ICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBsaWV1PzogICAgICAgICAgICAgICAgICAgICAgICBMaWV1O1xuICAgIGN5Y2xlRGVWaWU6ICAgICAgICAgICAgICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgZGVtYW5kZXVycz86ICAgICAgICAgICAgICAgICAgRGVtYW5kZXVycyB8IG51bGw7XG4gICAgb3JnYW5lUmV1bmlSZWY6ICAgICAgICAgICAgICAgbnVsbCB8IHN0cmluZztcbiAgICB0eXBlUmV1bmlvbj86ICAgICAgICAgICAgICAgICBUeXBlUmV1bmlvbjtcbiAgICBkZW1hbmRldXI/OiAgICAgICAgICAgICAgICAgICBEZW1hbmRldXIgfCBudWxsO1xuICAgIHBhcnRpY2lwYW50cz86ICAgICAgICAgICAgICAgIFB1cnBsZVBhcnRpY2lwYW50cyB8IG51bGw7XG4gICAgdmlzaW9Db25mZXJlbmNlPzogICAgICAgICAgICAgbnVsbCB8IHN0cmluZztcbiAgICBPREo/OiAgICAgICAgICAgICAgICAgICAgICAgICBPZGogfCBudWxsO1xuICAgIHNlc3Npb25SZWY/OiAgICAgICAgICAgICAgICAgIG51bGwgfCBzdHJpbmc7XG4gICAgb3V2ZXJ0dXJlUHJlc3NlPzogICAgICAgICAgICAgc3RyaW5nO1xuICAgIGNhcHRhdGlvblZpZGVvPzogICAgICAgICAgICAgIHN0cmluZztcbiAgICBjb21wdGVSZW5kdVJlZj86ICAgICAgICAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIGZvcm1hdFJldW5pb24/OiAgICAgICAgICAgICAgIEZvcm1hdFJldW5pb247XG4gICAgaW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlPzogSW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlO1xuICAgIGlkZW50aWZpYW50cz86ICAgICAgICAgICAgICAgIElkZW50aWZpYW50cztcbn1cblxuZXhwb3J0IGVudW0gUmV1bmlvblhzaVR5cGUge1xuICAgIFJldW5pb25Db21taXNzaW9uVHlwZSA9IFwicmV1bmlvbkNvbW1pc3Npb25fdHlwZVwiLFxuICAgIFJldW5pb25Jbml0UGFybGVtZW50YWlyZVR5cGUgPSBcInJldW5pb25Jbml0UGFybGVtZW50YWlyZV90eXBlXCIsXG4gICAgU2VhbmNlVHlwZSA9IFwic2VhbmNlX3R5cGVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPZGoge1xuICAgIGNvbnZvY2F0aW9uT0RKOiBDb252b2NhdGlvbk9kakNsYXNzIHwgbnVsbDtcbiAgICByZXN1bWVPREo6ICAgICAgQ29udm9jYXRpb25PZGpDbGFzcyB8IG51bGw7XG4gICAgcG9pbnRzT0RKPzogICAgIFBvaW50c09kaiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udm9jYXRpb25PZGpDbGFzcyB7XG4gICAgaXRlbTogc3RyaW5nW10gfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRzT2RqIHtcbiAgICBwb2ludE9ESjogUG9pbnRPZGpFbGVtZW50W10gfCBQb2ludE9kakVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRPZGpFbGVtZW50IHtcbiAgICBcIkB4c2k6dHlwZVwiOiAgICAgICAgICAgICBQb2ludE9kalhzaVR5cGU7XG4gICAgdWlkOiAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBjeWNsZURlVmllOiAgICAgICAgICAgICAgQ3ljbGVEZVZpZTtcbiAgICBvYmpldDogICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGRlbWFuZGV1clBvaW50OiAgICAgICAgICBudWxsO1xuICAgIHByb2NlZHVyZTogICAgICAgICAgICAgICBQcm9jZWR1cmUgfCBudWxsO1xuICAgIGRvc3NpZXJzTGVnaXNsYXRpZnNSZWZzOiBEb3NzaWVyc0xlZ2lzbGF0aWZzUmVmcyB8IG51bGw7XG4gICAgdHlwZVBvaW50T0RKOiAgICAgICAgICAgIFR5cGVQb2ludE9kajtcbiAgICBjb21pdGVTZWNyZXQ6ICAgICAgICAgICAgc3RyaW5nO1xuICAgIHRleHRlc0Fzc29jaWVzOiAgICAgICAgICBudWxsO1xuICAgIG5hdHVyZVRyYXZhdXhPREo/OiAgICAgICBOYXR1cmVUcmF2YXV4T2RqO1xuICAgIGRhdGVDb25mUHJlcz86ICAgICAgICAgICBzdHJpbmc7XG4gICAgZGF0ZUxldHRyZU1pbmlzdHJlPzogICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUG9pbnRPZGpYc2lUeXBlIHtcbiAgICBQb2RqUmV1bmlvblR5cGUgPSBcInBvZGpSZXVuaW9uX3R5cGVcIixcbiAgICBQb2RqU2VhbmNlQ29uZlByZXNUeXBlID0gXCJwb2RqU2VhbmNlQ29uZlByZXNfdHlwZVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN5Y2xlRGVWaWUge1xuICAgIGV0YXQ6ICAgRXRhdDtcbiAgICBjaHJvbm86IENocm9ubztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaHJvbm8ge1xuICAgIGNyZWF0aW9uOiBzdHJpbmc7XG4gICAgY2xvdHVyZTogIG51bGwgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEV0YXQge1xuICAgIEFubnVsw6kgPSBcIkFubnVsw6lcIixcbiAgICBDb25maXJtw6kgPSBcIkNvbmZpcm3DqVwiLFxuICAgIEV2ZW50dWVsID0gXCJFdmVudHVlbFwiLFxuICAgIFN1cHByaW3DqSA9IFwiU3VwcHJpbcOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9zc2llcnNMZWdpc2xhdGlmc1JlZnMge1xuICAgIGRvc3NpZXJSZWY6IHN0cmluZ1tdIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBOYXR1cmVUcmF2YXV4T2RqIHtcbiAgICBPZGpwciA9IFwiT0RKUFJcIixcbiAgICBPZGpzbiA9IFwiT0RKU05cIixcbn1cblxuZXhwb3J0IGVudW0gUHJvY2VkdXJlIHtcbiAgICBEaXNjdXNzaW9uR8OpbsOpcmFsZUNvbW11bmUgPSBcImRpc2N1c3Npb24gZ8OpbsOpcmFsZSBjb21tdW5lXCIsXG4gICAgUHJvY8OpZHVyZURFeGFtZW5TaW1wbGlmacOpZUFydGljbGUxMDMgPSBcInByb2PDqWR1cmUgZCdleGFtZW4gc2ltcGxpZmnDqWUtQXJ0aWNsZSAxMDNcIixcbiAgICBQcm9jw6lkdXJlREV4YW1lblNpbXBsaWZpw6llQXJ0aWNsZTEwNiA9IFwicHJvY8OpZHVyZSBkJ2V4YW1lbiBzaW1wbGlmacOpZS1BcnRpY2xlIDEwNlwiLFxuICAgIFByb2PDqWR1cmVEZUzDqWdpc2xhdGlvbkVuQ29tbWlzc2lvbkFydGljbGUxMDcxID0gXCJwcm9jw6lkdXJlIGRlIGzDqWdpc2xhdGlvbiBlbiBjb21taXNzaW9uLUFydGljbGUgMTA3LTFcIixcbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvaW50T2RqIHtcbiAgICBBbWVuZGVtZW50c0FydDg4ID0gXCJBbWVuZGVtZW50cyAoQXJ0LiA4OClcIixcbiAgICBBbWVuZGVtZW50c0FydDkxID0gXCJBbWVuZGVtZW50cyAoQXJ0LiA5MSlcIixcbiAgICBBdWRpdGlvbiA9IFwiQXVkaXRpb25cIixcbiAgICBBdWRpdGlvbk1pbmlzdHJlID0gXCJBdWRpdGlvbiBtaW5pc3RyZVwiLFxuICAgIEF1ZGl0aW9uTWluaXN0cmVPdXZlcnRlw4BMYVByZXNzZSA9IFwiQXVkaXRpb24gbWluaXN0cmUgb3V2ZXJ0ZSDDoCBsYSBwcmVzc2VcIixcbiAgICBBdWRpdGlvbk91dmVydGXDgExhUHJlc3NlID0gXCJBdWRpdGlvbiBvdXZlcnRlIMOgIGxhIHByZXNzZVwiLFxuICAgIENvbW11bmljYXRpb24gPSBcIkNvbW11bmljYXRpb25cIixcbiAgICBDb25zdGl0dXRpb25EZU1pc3Npb25ESW5mb3JtYXRpb24gPSBcIkNvbnN0aXR1dGlvbiBkZSBtaXNzaW9uIGQnaW5mb3JtYXRpb25cIixcbiAgICBEaXNjdXNzaW9uID0gXCJEaXNjdXNzaW9uXCIsXG4gICAgRMOpYmF0REluaXRpYXRpdmVQYXJsZW1lbnRhaXJlID0gXCJEw6liYXQgZCdpbml0aWF0aXZlIHBhcmxlbWVudGFpcmVcIixcbiAgICBEw6ljbGFyYXRpb25EdUdvdXZlcm5lbWVudFN1aXZpZURVbkTDqWJhdCA9IFwiRMOpY2xhcmF0aW9uIGR1IEdvdXZlcm5lbWVudCBzdWl2aWUgZCd1biBkw6liYXRcIixcbiAgICBFY2hhbmdlc0RlVnVlcyA9IFwiRWNoYW5nZXMgZGUgdnVlc1wiLFxuICAgIEV4YW1lbiA9IFwiRXhhbWVuXCIsXG4gICAgRXhwbGljYXRpb25zRGVWb3RlRGVzR3JvdXBlc0V0Vm90ZVBhclNjcnV0aW5QdWJsaWMgPSBcIkV4cGxpY2F0aW9ucyBkZSB2b3RlIGRlcyBncm91cGVzIGV0IHZvdGUgcGFyIHNjcnV0aW4gcHVibGljXCIsXG4gICAgRXhwbGljYXRpb25zRGVWb3RlRXRWb3RlUGFyU2NydXRpblB1YmxpYyA9IFwiRXhwbGljYXRpb25zIGRlIHZvdGUgZXQgdm90ZSBwYXIgc2NydXRpbiBwdWJsaWNcIixcbiAgICBGaXhhdGlvbkRlTE9yZHJlRHVKb3VyID0gXCJGaXhhdGlvbiBkZSBsJ29yZHJlIGR1IGpvdXJcIixcbiAgICBOb21pbmF0aW9uQnVyZWF1ID0gXCJOb21pbmF0aW9uIGJ1cmVhdVwiLFxuICAgIE5vbWluYXRpb25DYW5kaWRhdHNPcmdhbmlzbWVFeHRyYXBhcmxlbWVudGFpcmUgPSBcIk5vbWluYXRpb24gY2FuZGlkYXRzIG9yZ2FuaXNtZSBleHRyYXBhcmxlbWVudGFpcmVcIixcbiAgICBOb21pbmF0aW9uRFVuTWVtYnJlRFVuZU1pc3Npb25ESW5mb3JtYXRpb24gPSBcIk5vbWluYXRpb24gZCd1biBtZW1icmUgZCd1bmUgbWlzc2lvbiBkJ2luZm9ybWF0aW9uXCIsXG4gICAgTm9taW5hdGlvblJhcHBvcnRldXIgPSBcIk5vbWluYXRpb24gcmFwcG9ydGV1clwiLFxuICAgIE5vbWluYXRpb25SYXBwb3J0ZXVyREFwcGxpY2F0aW9uID0gXCJOb21pbmF0aW9uIHJhcHBvcnRldXIgZCdhcHBsaWNhdGlvblwiLFxuICAgIE5vbWluYXRpb25SYXBwb3J0ZXVyREluZm9ybWF0aW9uID0gXCJOb21pbmF0aW9uIHJhcHBvcnRldXIgZCdpbmZvcm1hdGlvblwiLFxuICAgIE5vbWluYXRpb25SYXBwb3J0ZXVyUG91ckF2aXMgPSBcIk5vbWluYXRpb24gcmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgICBPdXZlcnR1cmVFdENsw7R0dXJlRGVTZXNzaW9uID0gXCJPdXZlcnR1cmUgZXQgY2zDtHR1cmUgZGUgc2Vzc2lvblwiLFxuICAgIFF1ZXN0aW9uc0F1R291dmVybmVtZW50ID0gXCJRdWVzdGlvbnMgYXUgR291dmVybmVtZW50XCIsXG4gICAgUXVlc3Rpb25zT3JhbGVzU2Fuc0TDqWJhdCA9IFwiUXVlc3Rpb25zIG9yYWxlcyBzYW5zIGTDqWJhdFwiLFxuICAgIFJhcHBvcnQgPSBcIlJhcHBvcnRcIixcbiAgICBSYXBwb3J0REluZm9ybWF0aW9uID0gXCJSYXBwb3J0IGQnaW5mb3JtYXRpb25cIixcbiAgICBSYXBwb3J0UG91ckF2aXMgPSBcIlJhcHBvcnQgcG91ciBhdmlzXCIsXG4gICAgU3VpdGVEZUxhRGlzY3Vzc2lvbiA9IFwiU3VpdGUgZGUgbGEgZGlzY3Vzc2lvblwiLFxuICAgIFRhYmxlUm9uZGUgPSBcIlRhYmxlIHJvbmRlXCIsXG4gICAgVm90ZVBhclNjcnV0aW5QdWJsaWMgPSBcIlZvdGUgcGFyIHNjcnV0aW4gcHVibGljXCIsXG4gICAgVm90ZVNvbGVubmVsID0gXCJWb3RlIHNvbGVubmVsXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVtYW5kZXVyIHtcbiAgICBhY3RldXI/OiBBY3RldXJFbGVtZW50O1xuICAgIG9yZ2FuZT86IE9yZ2FuZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3RldXJFbGVtZW50IHtcbiAgICBub206ICAgICAgIG51bGwgfCBzdHJpbmc7XG4gICAgYWN0ZXVyUmVmOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JnYW5lIHtcbiAgICBub206ICAgICAgIHN0cmluZztcbiAgICBvcmdhbmVSZWY6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZW1hbmRldXJzIHtcbiAgICBhY3RldXI/OiBBY3RldXJFbGVtZW50W10gfCBBY3RldXJFbGVtZW50O1xuICAgIG9yZ2FuZT86IE9yZ2FuZTtcbn1cblxuZXhwb3J0IGVudW0gRm9ybWF0UmV1bmlvbiB7XG4gICAgQXVkaXRpb25FeHRlcm5lID0gXCJBdWRpdGlvbkV4dGVybmVcIixcbiAgICBBdWRpdGlvblBhclByZXNpZGVudENvbW1pc3Npb24gPSBcIkF1ZGl0aW9uUGFyUHJlc2lkZW50Q29tbWlzc2lvblwiLFxuICAgIEF1ZGl0aW9uUGFyUmFwcG9ydGV1ciA9IFwiQXVkaXRpb25QYXJSYXBwb3J0ZXVyXCIsXG4gICAgT3JkaW5haXJlID0gXCJPcmRpbmFpcmVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJZGVudGlmaWFudHMge1xuICAgIG51bVNlYW5jZUpPOiBudWxsIHwgc3RyaW5nO1xuICAgIGlkSk86ICAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIHF1YW50aWVtZTogICBRdWFudGllbWU7XG4gICAgRGF0ZVNlYW5jZTogIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUXVhbnRpZW1lIHtcbiAgICBEZXV4acOobWUgPSBcIkRldXhpw6htZVwiLFxuICAgIFByZW1pw6hyZSA9IFwiUHJlbWnDqHJlXCIsXG4gICAgVHJvaXNpw6htZSA9IFwiVHJvaXNpw6htZVwiLFxuICAgIFVuaXF1ZSA9IFwiVW5pcXVlXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlIHtcbiAgICBlc3RSZXVuaW9uSW50ZXJuYXRpb25hbGU6ICAgICBzdHJpbmc7XG4gICAgbGlzdGVQYXlzOiAgICAgICAgICAgICAgICAgICAgTGlzdGVQYXlzIHwgbnVsbDtcbiAgICBpbmZvcm1hdGlvbnNDb21wbGVtZW50YWlyZXM/OiBudWxsIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RlUGF5cyB7XG4gICAgcGF5c1JlZjogc3RyaW5nW10gfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlldSB7XG4gICAgY29kZT86ICAgICAgICAgc3RyaW5nIHwgbnVsbDtcbiAgICBsaWJlbGxlQ291cnQ/OiBzdHJpbmcgfCBudWxsO1xuICAgIGxpYmVsbGVMb25nOiAgIG51bGwgfCBzdHJpbmc7XG4gICAgbGlldVJlZj86ICAgICAgc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQYXJ0aWNpcGFudHMge1xuICAgIHBhcnRpY2lwYW50c0ludGVybmVzOiAgUHVycGxlUGFydGljaXBhbnRzSW50ZXJuZXMgfCBudWxsO1xuICAgIHBlcnNvbm5lc0F1ZGl0aW9ubmVlczogUHVycGxlUGVyc29ubmVzQXVkaXRpb25uZWVzIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQYXJ0aWNpcGFudHNJbnRlcm5lcyB7XG4gICAgcGFydGljaXBhbnRJbnRlcm5lOiBQYXJ0aWNpcGFudEludGVybmVFbGVtZW50W10gfCBQYXJ0aWNpcGFudEludGVybmVFbGVtZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnQge1xuICAgIGFjdGV1clJlZjogc3RyaW5nO1xuICAgIHByZXNlbmNlOiAgUHJlc2VuY2U7XG59XG5cbmV4cG9ydCBlbnVtIFByZXNlbmNlIHtcbiAgICBBYnNlbnQgPSBcImFic2VudFwiLFxuICAgIEV4Y3Vzw6kgPSBcImV4Y3Vzw6lcIixcbiAgICBQcsOpc2VudCA9IFwicHLDqXNlbnRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQZXJzb25uZXNBdWRpdGlvbm5lZXMge1xuICAgIHBlcnNvbm5lQXVkaXRpb25uZWU6IG51bGxbXSB8IG51bGw7XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVSZXVuaW9uIHtcbiAgICBEZXAgPSBcIkRFUFwiLFxuICAgIEdhID0gXCJHQVwiLFxuICAgIEdlID0gXCJHRVwiLFxuICAgIEdldmkgPSBcIkdFVklcIixcbiAgICBHcCA9IFwiR1BcIixcbiAgICBIw6lBdXLDqWxpZW4gPSBcIkjDiSBBdXLDqWxpZW5cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZ2VuZGFzIHtcbiAgICByZXVuaW9uczogUmV1bmlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmV1bmlvbnMge1xuICAgIHJldW5pb246IFJldW5pb25FbGVtZW50W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmV1bmlvbkVsZW1lbnQge1xuICAgIHVpZDogICAgICAgICAgICAgIHN0cmluZztcbiAgICB0aW1lU3RhbXBEZWJ1dDogICBEYXRlO1xuICAgIHRpbWVTdGFtcEZpbj86ICAgIHN0cmluZztcbiAgICBsaWV1OiAgICAgICAgICAgICBMaWV1O1xuICAgIGN5Y2xlRGVWaWU6ICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgZGVtYW5kZXVycz86ICAgICAgRGVtYW5kZXVycyB8IG51bGw7XG4gICAgb3JnYW5lUmV1bmlSZWY6ICAgbnVsbCB8IHN0cmluZztcbiAgICB0eXBlUmV1bmlvbj86ICAgICBUeXBlUmV1bmlvbjtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgIHN0cmluZztcbiAgICBkZW1hbmRldXI/OiAgICAgICBudWxsO1xuICAgIHBhcnRpY2lwYW50cz86ICAgIEZsdWZmeVBhcnRpY2lwYW50cyB8IG51bGw7XG4gICAgc2Vzc2lvblJlZj86ICAgICAgbnVsbCB8IHN0cmluZztcbiAgICBvdXZlcnR1cmVQcmVzc2U/OiBzdHJpbmc7XG4gICAgT0RKPzogICAgICAgICAgICAgT2RqO1xuICAgIGNvbXB0ZVJlbmR1UmVmPzogIG51bGwgfCBzdHJpbmc7XG4gICAgaWRlbnRpZmlhbnRzPzogICAgSWRlbnRpZmlhbnRzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZsdWZmeVBhcnRpY2lwYW50cyB7XG4gICAgcGFydGljaXBhbnRzSW50ZXJuZXM6ICBGbHVmZnlQYXJ0aWNpcGFudHNJbnRlcm5lcyB8IG51bGw7XG4gICAgcGVyc29ubmVzQXVkaXRpb25uZWVzOiBGbHVmZnlQZXJzb25uZXNBdWRpdGlvbm5lZXMgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZsdWZmeVBhcnRpY2lwYW50c0ludGVybmVzIHtcbiAgICBwYXJ0aWNpcGFudEludGVybmU6IFBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGbHVmZnlQZXJzb25uZXNBdWRpdGlvbm5lZXMge1xuICAgIHBlcnNvbm5lQXVkaXRpb25uZWU6IFBlcnNvbm5lQXVkaXRpb25uZWVFbGVtZW50W10gfCBQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudCB7XG4gICAgdWlkOiAgICAgIFVpZDtcbiAgICBpZGVudDogICAgSWRlbnQ7XG4gICAgZGF0ZU5haXM6IERhdGUgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50IHtcbiAgICBjaXY6ICAgICAgICBDaXY7XG4gICAgcHJlbm9tOiAgICAgc3RyaW5nO1xuICAgIG5vbTogICAgICAgIHN0cmluZztcbiAgICBhbHBoYT86ICAgICBzdHJpbmc7XG4gICAgdHJpZ3JhbW1lPzogbnVsbCB8IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQ2l2IHtcbiAgICBNID0gXCJNLlwiLFxuICAgIE1tZSA9IFwiTW1lXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVWlkIHtcbiAgICBcIkB4c2k6dHlwZVwiOiBVaWRYc2lUeXBlO1xuICAgIFwiI3RleHRcIjogICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gVWlkWHNpVHlwZSB7XG4gICAgSWRBY3RldXJUeXBlID0gXCJJZEFjdGV1cl90eXBlXCIsXG4gICAgSWRQZXJzb25uZUV4dGVybmVUeXBlID0gXCJJZFBlcnNvbm5lRXh0ZXJuZV90eXBlXCIsXG59XG5cbi8vIENvbnZlcnRzIEpTT04gc3RyaW5ncyB0by9mcm9tIHlvdXIgdHlwZXNcbi8vIGFuZCBhc3NlcnRzIHRoZSByZXN1bHRzIG9mIEpTT04ucGFyc2UgYXQgcnVudGltZVxuZXhwb3J0IGNsYXNzIENvbnZlcnQge1xuICAgIHB1YmxpYyBzdGF0aWMgdG9SZXVuaW9uKGpzb246IHN0cmluZyk6IFJldW5pb24ge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiUmV1bmlvblwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyByZXVuaW9uVG9Kc29uKHZhbHVlOiBSZXVuaW9uKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIlJldW5pb25cIikpLCBudWxsLCAyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvQWdlbmRhcyhqc29uOiBzdHJpbmcpOiBBZ2VuZGFzIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFnZW5kYXNcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYWdlbmRhc1RvSnNvbih2YWx1ZTogQWdlbmRhcyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBZ2VuZGFzXCIpKSwgbnVsbCwgMik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9ICcnKTogbmV2ZXIge1xuICAgIGlmIChrZXkpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWQgdmFsdWUgZm9yIGtleSBcIiR7a2V5fVwiLiBFeHBlY3RlZCB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KHZhbCl9YCk7XG4gICAgfVxuICAgIHRocm93IEVycm9yKGBJbnZhbGlkIHZhbHVlICR7SlNPTi5zdHJpbmdpZnkodmFsKX0gZm9yIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfWAsICk7XG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNvblRvSlMgPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNvblRvSlM7XG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNUb0pTT04gPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNUb0pTT047XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybSh2YWw6IGFueSwgdHlwOiBhbnksIGdldFByb3BzOiBhbnksIGtleTogYW55ID0gJycpOiBhbnkge1xuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgICAgICBjb25zdCBsID0gdHlwcy5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0eXAgPSB0eXBzW2ldO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcyk7XG4gICAgICAgICAgICB9IGNhdGNoIChfKSB7fVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUoXCJhcnJheVwiLCB2YWwpO1xuICAgICAgICByZXR1cm4gdmFsLm1hcChlbCA9PiB0cmFuc2Zvcm0oZWwsIHR5cCwgZ2V0UHJvcHMpKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZCA9IG5ldyBEYXRlKHZhbCk7XG4gICAgICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGQ7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtT2JqZWN0KHByb3BzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSwgYWRkaXRpb25hbDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xuICAgICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV07XG4gICAgICAgICAgICBjb25zdCB2ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwga2V5KSA/IHZhbFtrZXldIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIHByb3Aua2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcHMsIGtleSkpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWw7XG4gICAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbCk7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKSA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKSAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpICAgICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgICAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbCk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbCk7XG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcyk7XG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKTtcbn1cblxuZnVuY3Rpb24gYSh0eXA6IGFueSkge1xuICAgIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9O1xufVxuXG5mdW5jdGlvbiB1KC4uLnR5cHM6IGFueVtdKSB7XG4gICAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH07XG59XG5cbmZ1bmN0aW9uIG8ocHJvcHM6IGFueVtdLCBhZGRpdGlvbmFsOiBhbnkpIHtcbiAgICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9O1xufVxuXG4vLyBmdW5jdGlvbiBtKGFkZGl0aW9uYWw6IGFueSkge1xuLy8gICAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9O1xuLy8gfVxuXG5mdW5jdGlvbiByKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiB7IHJlZjogbmFtZSB9O1xufVxuXG5jb25zdCB0eXBlTWFwOiBhbnkgPSB7XG4gICAgXCJSZXVuaW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicmV1bmlvblwiLCBqczogXCJyZXVuaW9uXCIsIHR5cDogcihcIlJldW5pb25SZXVuaW9uXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmV1bmlvblJldW5pb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnNcIiwganM6IFwiQHhtbG5zXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTp0eXBlXCIsIGpzOiBcIkB4c2k6dHlwZVwiLCB0eXA6IHIoXCJSZXVuaW9uWHNpVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRpbWVTdGFtcERlYnV0XCIsIGpzOiBcInRpbWVTdGFtcERlYnV0XCIsIHR5cDogRGF0ZSB9LFxuICAgICAgICB7IGpzb246IFwidGltZVN0YW1wRmluXCIsIGpzOiBcInRpbWVTdGFtcEZpblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlldVwiLCBqczogXCJsaWV1XCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJMaWV1XCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRlbWFuZGV1cnNcIiwganM6IFwiZGVtYW5kZXVyc1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJEZW1hbmRldXJzXCIpLCBudWxsKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm9yZ2FuZVJldW5pUmVmXCIsIGpzOiBcIm9yZ2FuZVJldW5pUmVmXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHlwZVJldW5pb25cIiwganM6IFwidHlwZVJldW5pb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVSZXVuaW9uXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZGVtYW5kZXVyXCIsIGpzOiBcImRlbWFuZGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJEZW1hbmRldXJcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRzXCIsIGpzOiBcInBhcnRpY2lwYW50c1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJQdXJwbGVQYXJ0aWNpcGFudHNcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwidmlzaW9Db25mZXJlbmNlXCIsIGpzOiBcInZpc2lvQ29uZmVyZW5jZVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiT0RKXCIsIGpzOiBcIk9ESlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJPZGpcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwic2Vzc2lvblJlZlwiLCBqczogXCJzZXNzaW9uUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoXCJcIiwgbnVsbCkpIH0sXG4gICAgICAgIHsganNvbjogXCJvdXZlcnR1cmVQcmVzc2VcIiwganM6IFwib3V2ZXJ0dXJlUHJlc3NlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjYXB0YXRpb25WaWRlb1wiLCBqczogXCJjYXB0YXRpb25WaWRlb1wiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29tcHRlUmVuZHVSZWZcIiwganM6IFwiY29tcHRlUmVuZHVSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShudWxsLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImZvcm1hdFJldW5pb25cIiwganM6IFwiZm9ybWF0UmV1bmlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRm9ybWF0UmV1bmlvblwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImluZm9zUmV1bmlvbnNJbnRlcm5hdGlvbmFsZVwiLCBqczogXCJpbmZvc1JldW5pb25zSW50ZXJuYXRpb25hbGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZm9zUmV1bmlvbnNJbnRlcm5hdGlvbmFsZVwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImlkZW50aWZpYW50c1wiLCBqczogXCJpZGVudGlmaWFudHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIklkZW50aWZpYW50c1wiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJPZGpcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb252b2NhdGlvbk9ESlwiLCBqczogXCJjb252b2NhdGlvbk9ESlwiLCB0eXA6IHUocihcIkNvbnZvY2F0aW9uT2RqQ2xhc3NcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJyZXN1bWVPREpcIiwganM6IFwicmVzdW1lT0RKXCIsIHR5cDogdShyKFwiQ29udm9jYXRpb25PZGpDbGFzc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInBvaW50c09ESlwiLCBqczogXCJwb2ludHNPREpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiUG9pbnRzT2RqXCIpLCBudWxsKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb252b2NhdGlvbk9kakNsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiaXRlbVwiLCBqczogXCJpdGVtXCIsIHR5cDogdShhKFwiXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlBvaW50c09kalwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBvaW50T0RKXCIsIGpzOiBcInBvaW50T0RKXCIsIHR5cDogdShhKHIoXCJQb2ludE9kakVsZW1lbnRcIikpLCByKFwiUG9pbnRPZGpFbGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlBvaW50T2RqRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6dHlwZVwiLCBqczogXCJAeHNpOnR5cGVcIiwgdHlwOiByKFwiUG9pbnRPZGpYc2lUeXBlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIm9iamV0XCIsIGpzOiBcIm9iamV0XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiZGVtYW5kZXVyUG9pbnRcIiwganM6IFwiZGVtYW5kZXVyUG9pbnRcIiwgdHlwOiBudWxsIH0sXG4gICAgICAgIHsganNvbjogXCJwcm9jZWR1cmVcIiwganM6IFwicHJvY2VkdXJlXCIsIHR5cDogdShyKFwiUHJvY2VkdXJlXCIpLCBudWxsKSB9LFxuICAgICAgICB7IGpzb246IFwiZG9zc2llcnNMZWdpc2xhdGlmc1JlZnNcIiwganM6IFwiZG9zc2llcnNMZWdpc2xhdGlmc1JlZnNcIiwgdHlwOiB1KHIoXCJEb3NzaWVyc0xlZ2lzbGF0aWZzUmVmc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVQb2ludE9ESlwiLCBqczogXCJ0eXBlUG9pbnRPREpcIiwgdHlwOiByKFwiVHlwZVBvaW50T2RqXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb21pdGVTZWNyZXRcIiwganM6IFwiY29taXRlU2VjcmV0XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidGV4dGVzQXNzb2NpZXNcIiwganM6IFwidGV4dGVzQXNzb2NpZXNcIiwgdHlwOiBudWxsIH0sXG4gICAgICAgIHsganNvbjogXCJuYXR1cmVUcmF2YXV4T0RKXCIsIGpzOiBcIm5hdHVyZVRyYXZhdXhPREpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk5hdHVyZVRyYXZhdXhPZGpcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlQ29uZlByZXNcIiwganM6IFwiZGF0ZUNvbmZQcmVzXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlTGV0dHJlTWluaXN0cmVcIiwganM6IFwiZGF0ZUxldHRyZU1pbmlzdHJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ3ljbGVEZVZpZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjaHJvbm9cIiwganM6IFwiY2hyb25vXCIsIHR5cDogcihcIkNocm9ub1wiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNocm9ub1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNyZWF0aW9uXCIsIGpzOiBcImNyZWF0aW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2xvdHVyZVwiLCBqczogXCJjbG90dXJlXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRvc3NpZXJzTGVnaXNsYXRpZnNSZWZzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZG9zc2llclJlZlwiLCBqczogXCJkb3NzaWVyUmVmXCIsIHR5cDogdShhKFwiXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRlbWFuZGV1clwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clwiLCBqczogXCJhY3RldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkFjdGV1ckVsZW1lbnRcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJvcmdhbmVcIiwganM6IFwib3JnYW5lXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJPcmdhbmVcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQWN0ZXVyRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIk9yZ2FuZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJvcmdhbmVSZWZcIiwganM6IFwib3JnYW5lUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRlbWFuZGV1cnNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhY3RldXJcIiwganM6IFwiYWN0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiQWN0ZXVyRWxlbWVudFwiKSksIHIoXCJBY3RldXJFbGVtZW50XCIpKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm9yZ2FuZVwiLCBqczogXCJvcmdhbmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk9yZ2FuZVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJJZGVudGlmaWFudHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJudW1TZWFuY2VKT1wiLCBqczogXCJudW1TZWFuY2VKT1wiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImlkSk9cIiwganM6IFwiaWRKT1wiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInF1YW50aWVtZVwiLCBqczogXCJxdWFudGllbWVcIiwgdHlwOiByKFwiUXVhbnRpZW1lXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJEYXRlU2VhbmNlXCIsIGpzOiBcIkRhdGVTZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiSW5mb3NSZXVuaW9uc0ludGVybmF0aW9uYWxlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZXN0UmV1bmlvbkludGVybmF0aW9uYWxlXCIsIGpzOiBcImVzdFJldW5pb25JbnRlcm5hdGlvbmFsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxpc3RlUGF5c1wiLCBqczogXCJsaXN0ZVBheXNcIiwgdHlwOiB1KHIoXCJMaXN0ZVBheXNcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJpbmZvcm1hdGlvbnNDb21wbGVtZW50YWlyZXNcIiwganM6IFwiaW5mb3JtYXRpb25zQ29tcGxlbWVudGFpcmVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHUobnVsbCwgXCJcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlzdGVQYXlzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGF5c1JlZlwiLCBqczogXCJwYXlzUmVmXCIsIHR5cDogdShhKFwiXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZXVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShcIlwiLCBudWxsKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVDb3VydFwiLCBqczogXCJsaWJlbGxlQ291cnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShcIlwiLCBudWxsKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVMb25nXCIsIGpzOiBcImxpYmVsbGVMb25nXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlldVJlZlwiLCBqczogXCJsaWV1UmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoXCJcIiwgbnVsbCkpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlUGFydGljaXBhbnRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRzSW50ZXJuZXNcIiwganM6IFwicGFydGljaXBhbnRzSW50ZXJuZXNcIiwgdHlwOiB1KHIoXCJQdXJwbGVQYXJ0aWNpcGFudHNJbnRlcm5lc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInBlcnNvbm5lc0F1ZGl0aW9ubmVlc1wiLCBqczogXCJwZXJzb25uZXNBdWRpdGlvbm5lZXNcIiwgdHlwOiB1KHIoXCJQdXJwbGVQZXJzb25uZXNBdWRpdGlvbm5lZXNcIiksIG51bGwpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlUGFydGljaXBhbnRzSW50ZXJuZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwYXJ0aWNpcGFudEludGVybmVcIiwganM6IFwicGFydGljaXBhbnRJbnRlcm5lXCIsIHR5cDogdShhKHIoXCJQYXJ0aWNpcGFudEludGVybmVFbGVtZW50XCIpKSwgcihcIlBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUGFydGljaXBhbnRJbnRlcm5lRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcmVzZW5jZVwiLCBqczogXCJwcmVzZW5jZVwiLCB0eXA6IHIoXCJQcmVzZW5jZVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlB1cnBsZVBlcnNvbm5lc0F1ZGl0aW9ubmVlc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBlcnNvbm5lQXVkaXRpb25uZWVcIiwganM6IFwicGVyc29ubmVBdWRpdGlvbm5lZVwiLCB0eXA6IHUoYShudWxsKSwgbnVsbCkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBZ2VuZGFzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicmV1bmlvbnNcIiwganM6IFwicmV1bmlvbnNcIiwgdHlwOiByKFwiUmV1bmlvbnNcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJSZXVuaW9uc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInJldW5pb25cIiwganM6IFwicmV1bmlvblwiLCB0eXA6IGEocihcIlJldW5pb25FbGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlJldW5pb25FbGVtZW50XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRpbWVTdGFtcERlYnV0XCIsIGpzOiBcInRpbWVTdGFtcERlYnV0XCIsIHR5cDogRGF0ZSB9LFxuICAgICAgICB7IGpzb246IFwidGltZVN0YW1wRmluXCIsIGpzOiBcInRpbWVTdGFtcEZpblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlldVwiLCBqczogXCJsaWV1XCIsIHR5cDogcihcIkxpZXVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkZW1hbmRldXJzXCIsIGpzOiBcImRlbWFuZGV1cnNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiRGVtYW5kZXVyc1wiKSwgbnVsbCkpIH0sXG4gICAgICAgIHsganNvbjogXCJvcmdhbmVSZXVuaVJlZlwiLCBqczogXCJvcmdhbmVSZXVuaVJlZlwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVSZXVuaW9uXCIsIGpzOiBcInR5cGVSZXVuaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlUmV1bmlvblwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGVtYW5kZXVyXCIsIGpzOiBcImRlbWFuZGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBudWxsKSB9LFxuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRzXCIsIGpzOiBcInBhcnRpY2lwYW50c1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJGbHVmZnlQYXJ0aWNpcGFudHNcIiksIG51bGwpKSB9LFxuICAgICAgICB7IGpzb246IFwic2Vzc2lvblJlZlwiLCBqczogXCJzZXNzaW9uUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIHUoXCJcIiwgbnVsbCkpIH0sXG4gICAgICAgIHsganNvbjogXCJvdXZlcnR1cmVQcmVzc2VcIiwganM6IFwib3V2ZXJ0dXJlUHJlc3NlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJPREpcIiwganM6IFwiT0RKXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJPZGpcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJjb21wdGVSZW5kdVJlZlwiLCBqczogXCJjb21wdGVSZW5kdVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiaWRlbnRpZmlhbnRzXCIsIGpzOiBcImlkZW50aWZpYW50c1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiSWRlbnRpZmlhbnRzXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkZsdWZmeVBhcnRpY2lwYW50c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInBhcnRpY2lwYW50c0ludGVybmVzXCIsIGpzOiBcInBhcnRpY2lwYW50c0ludGVybmVzXCIsIHR5cDogdShyKFwiRmx1ZmZ5UGFydGljaXBhbnRzSW50ZXJuZXNcIiksIG51bGwpIH0sXG4gICAgICAgIHsganNvbjogXCJwZXJzb25uZXNBdWRpdGlvbm5lZXNcIiwganM6IFwicGVyc29ubmVzQXVkaXRpb25uZWVzXCIsIHR5cDogdShyKFwiRmx1ZmZ5UGVyc29ubmVzQXVkaXRpb25uZWVzXCIpLCBudWxsKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkZsdWZmeVBhcnRpY2lwYW50c0ludGVybmVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGFydGljaXBhbnRJbnRlcm5lXCIsIGpzOiBcInBhcnRpY2lwYW50SW50ZXJuZVwiLCB0eXA6IGEocihcIlBhcnRpY2lwYW50SW50ZXJuZUVsZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRmx1ZmZ5UGVyc29ubmVzQXVkaXRpb25uZWVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGVyc29ubmVBdWRpdGlvbm5lZVwiLCBqczogXCJwZXJzb25uZUF1ZGl0aW9ubmVlXCIsIHR5cDogdShhKHIoXCJQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudFwiKSksIHIoXCJQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudFwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQZXJzb25uZUF1ZGl0aW9ubmVlRWxlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiByKFwiVWlkXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJpZGVudFwiLCBqczogXCJpZGVudFwiLCB0eXA6IHIoXCJJZGVudFwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZU5haXNcIiwganM6IFwiZGF0ZU5haXNcIiwgdHlwOiB1KERhdGUsIG51bGwpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiSWRlbnRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjaXZcIiwganM6IFwiY2l2XCIsIHR5cDogcihcIkNpdlwiKSB9LFxuICAgICAgICB7IGpzb246IFwicHJlbm9tXCIsIGpzOiBcInByZW5vbVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhbHBoYVwiLCBqczogXCJhbHBoYVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHJpZ3JhbW1lXCIsIGpzOiBcInRyaWdyYW1tZVwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KG51bGwsIFwiXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlVpZFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6dHlwZVwiLCBqczogXCJAeHNpOnR5cGVcIiwgdHlwOiByKFwiVWlkWHNpVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiI3RleHRcIiwganM6IFwiI3RleHRcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmV1bmlvblhzaVR5cGVcIjogW1xuICAgICAgICBcInJldW5pb25Db21taXNzaW9uX3R5cGVcIixcbiAgICAgICAgXCJyZXVuaW9uSW5pdFBhcmxlbWVudGFpcmVfdHlwZVwiLFxuICAgICAgICBcInNlYW5jZV90eXBlXCIsXG4gICAgXSxcbiAgICBcIlBvaW50T2RqWHNpVHlwZVwiOiBbXG4gICAgICAgIFwicG9kalJldW5pb25fdHlwZVwiLFxuICAgICAgICBcInBvZGpTZWFuY2VDb25mUHJlc190eXBlXCIsXG4gICAgXSxcbiAgICBcIkV0YXRcIjogW1xuICAgICAgICBcIkFubnVsw6lcIixcbiAgICAgICAgXCJDb25maXJtw6lcIixcbiAgICAgICAgXCJFdmVudHVlbFwiLFxuICAgICAgICBcIlN1cHByaW3DqVwiLFxuICAgIF0sXG4gICAgXCJOYXR1cmVUcmF2YXV4T2RqXCI6IFtcbiAgICAgICAgXCJPREpQUlwiLFxuICAgICAgICBcIk9ESlNOXCIsXG4gICAgXSxcbiAgICBcIlByb2NlZHVyZVwiOiBbXG4gICAgICAgIFwiZGlzY3Vzc2lvbiBnw6luw6lyYWxlIGNvbW11bmVcIixcbiAgICAgICAgXCJwcm9jw6lkdXJlIGQnZXhhbWVuIHNpbXBsaWZpw6llLUFydGljbGUgMTAzXCIsXG4gICAgICAgIFwicHJvY8OpZHVyZSBkJ2V4YW1lbiBzaW1wbGlmacOpZS1BcnRpY2xlIDEwNlwiLFxuICAgICAgICBcInByb2PDqWR1cmUgZGUgbMOpZ2lzbGF0aW9uIGVuIGNvbW1pc3Npb24tQXJ0aWNsZSAxMDctMVwiLFxuICAgIF0sXG4gICAgXCJUeXBlUG9pbnRPZGpcIjogW1xuICAgICAgICBcIkFtZW5kZW1lbnRzIChBcnQuIDg4KVwiLFxuICAgICAgICBcIkFtZW5kZW1lbnRzIChBcnQuIDkxKVwiLFxuICAgICAgICBcIkF1ZGl0aW9uXCIsXG4gICAgICAgIFwiQXVkaXRpb24gbWluaXN0cmVcIixcbiAgICAgICAgXCJBdWRpdGlvbiBtaW5pc3RyZSBvdXZlcnRlIMOgIGxhIHByZXNzZVwiLFxuICAgICAgICBcIkF1ZGl0aW9uIG91dmVydGUgw6AgbGEgcHJlc3NlXCIsXG4gICAgICAgIFwiQ29tbXVuaWNhdGlvblwiLFxuICAgICAgICBcIkNvbnN0aXR1dGlvbiBkZSBtaXNzaW9uIGQnaW5mb3JtYXRpb25cIixcbiAgICAgICAgXCJEaXNjdXNzaW9uXCIsXG4gICAgICAgIFwiRMOpYmF0IGQnaW5pdGlhdGl2ZSBwYXJsZW1lbnRhaXJlXCIsXG4gICAgICAgIFwiRMOpY2xhcmF0aW9uIGR1IEdvdXZlcm5lbWVudCBzdWl2aWUgZCd1biBkw6liYXRcIixcbiAgICAgICAgXCJFY2hhbmdlcyBkZSB2dWVzXCIsXG4gICAgICAgIFwiRXhhbWVuXCIsXG4gICAgICAgIFwiRXhwbGljYXRpb25zIGRlIHZvdGUgZGVzIGdyb3VwZXMgZXQgdm90ZSBwYXIgc2NydXRpbiBwdWJsaWNcIixcbiAgICAgICAgXCJFeHBsaWNhdGlvbnMgZGUgdm90ZSBldCB2b3RlIHBhciBzY3J1dGluIHB1YmxpY1wiLFxuICAgICAgICBcIkZpeGF0aW9uIGRlIGwnb3JkcmUgZHUgam91clwiLFxuICAgICAgICBcIk5vbWluYXRpb24gYnVyZWF1XCIsXG4gICAgICAgIFwiTm9taW5hdGlvbiBjYW5kaWRhdHMgb3JnYW5pc21lIGV4dHJhcGFybGVtZW50YWlyZVwiLFxuICAgICAgICBcIk5vbWluYXRpb24gZCd1biBtZW1icmUgZCd1bmUgbWlzc2lvbiBkJ2luZm9ybWF0aW9uXCIsXG4gICAgICAgIFwiTm9taW5hdGlvbiByYXBwb3J0ZXVyXCIsXG4gICAgICAgIFwiTm9taW5hdGlvbiByYXBwb3J0ZXVyIGQnYXBwbGljYXRpb25cIixcbiAgICAgICAgXCJOb21pbmF0aW9uIHJhcHBvcnRldXIgZCdpbmZvcm1hdGlvblwiLFxuICAgICAgICBcIk5vbWluYXRpb24gcmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgICAgICAgXCJPdXZlcnR1cmUgZXQgY2zDtHR1cmUgZGUgc2Vzc2lvblwiLFxuICAgICAgICBcIlF1ZXN0aW9ucyBhdSBHb3V2ZXJuZW1lbnRcIixcbiAgICAgICAgXCJRdWVzdGlvbnMgb3JhbGVzIHNhbnMgZMOpYmF0XCIsXG4gICAgICAgIFwiUmFwcG9ydFwiLFxuICAgICAgICBcIlJhcHBvcnQgZCdpbmZvcm1hdGlvblwiLFxuICAgICAgICBcIlJhcHBvcnQgcG91ciBhdmlzXCIsXG4gICAgICAgIFwiU3VpdGUgZGUgbGEgZGlzY3Vzc2lvblwiLFxuICAgICAgICBcIlRhYmxlIHJvbmRlXCIsXG4gICAgICAgIFwiVm90ZSBwYXIgc2NydXRpbiBwdWJsaWNcIixcbiAgICAgICAgXCJWb3RlIHNvbGVubmVsXCIsXG4gICAgXSxcbiAgICBcIkZvcm1hdFJldW5pb25cIjogW1xuICAgICAgICBcIkF1ZGl0aW9uRXh0ZXJuZVwiLFxuICAgICAgICBcIkF1ZGl0aW9uUGFyUHJlc2lkZW50Q29tbWlzc2lvblwiLFxuICAgICAgICBcIkF1ZGl0aW9uUGFyUmFwcG9ydGV1clwiLFxuICAgICAgICBcIk9yZGluYWlyZVwiLFxuICAgIF0sXG4gICAgXCJRdWFudGllbWVcIjogW1xuICAgICAgICBcIkRldXhpw6htZVwiLFxuICAgICAgICBcIlByZW1pw6hyZVwiLFxuICAgICAgICBcIlRyb2lzacOobWVcIixcbiAgICAgICAgXCJVbmlxdWVcIixcbiAgICBdLFxuICAgIFwiUHJlc2VuY2VcIjogW1xuICAgICAgICBcImFic2VudFwiLFxuICAgICAgICBcImV4Y3Vzw6lcIixcbiAgICAgICAgXCJwcsOpc2VudFwiLFxuICAgIF0sXG4gICAgXCJUeXBlUmV1bmlvblwiOiBbXG4gICAgICAgIFwiREVQXCIsXG4gICAgICAgIFwiR0FcIixcbiAgICAgICAgXCJHRVwiLFxuICAgICAgICBcIkdFVklcIixcbiAgICAgICAgXCJHUFwiLFxuICAgICAgICBcIkjDiSBBdXLDqWxpZW5cIixcbiAgICBdLFxuICAgIFwiQ2l2XCI6IFtcbiAgICAgICAgXCJNLlwiLFxuICAgICAgICBcIk1tZVwiLFxuICAgIF0sXG4gICAgXCJVaWRYc2lUeXBlXCI6IFtcbiAgICAgICAgXCJJZEFjdGV1cl90eXBlXCIsXG4gICAgICAgIFwiSWRQZXJzb25uZUV4dGVybmVfdHlwZVwiLFxuICAgIF0sXG59O1xuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBK0JBLFdBQVlBLGNBQWM7QUFJekIsV0FKV0EsY0FBYztFQUFkQSxjQUFjO0VBQWRBLGNBQWM7RUFBZEEsY0FBYztBQUFBLEdBQWRBLGNBQWMsS0FBZEEsY0FBYztBQW9DMUIsV0FBWUMsZUFBZTtBQUcxQixXQUhXQSxlQUFlO0VBQWZBLGVBQWU7RUFBZkEsZUFBZTtBQUFBLEdBQWZBLGVBQWUsS0FBZkEs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