dmencu 3.3.1 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/ayuda/asignacion.md +16 -0
  2. package/ayuda/circuito-encuesta.md +27 -0
  3. package/ayuda/control.md +13 -0
  4. package/ayuda/dm-cambiar-modo.md +16 -0
  5. package/ayuda/dm-relevamiento.md +20 -0
  6. package/ayuda/dm-sincronizar.md +18 -0
  7. package/ayuda/fin-de-campo.md +14 -0
  8. package/ayuda/metadatos.md +14 -0
  9. package/ayuda/procesar.md +13 -0
  10. package/ayuda/recepcion.md +20 -0
  11. package/ayuda/supervision.md +9 -0
  12. package/ayuda/usuarios.md +12 -0
  13. package/ayuda/varios.md +23 -0
  14. package/dist/client/client/client.js +99 -2
  15. package/dist/client/client/css/menu.styl +29 -0
  16. package/dist/client/unlogged/css/formulario-react.styl +9 -0
  17. package/dist/client/unlogged/render-config.d.ts +5 -1
  18. package/dist/client/unlogged/render-config.js +14 -1
  19. package/dist/client/unlogged/render-formulario.d.ts +1 -0
  20. package/dist/client/unlogged/render-formulario.js +43 -2
  21. package/dist/client/unlogged/render-formulario.tsx +71 -0
  22. package/dist/client/unlogged/render-general.d.ts +2 -0
  23. package/dist/client/unlogged/render-general.js +2 -1
  24. package/dist/client/unlogged/render-general.tsx +1 -0
  25. package/dist/client/unlogged/render-init.d.ts +1 -0
  26. package/dist/client/unlogged/render-init.js +9 -2
  27. package/dist/client/unlogged/tipos.d.ts +19 -1
  28. package/dist/client/unlogged/tipos.js +1 -1
  29. package/dist/server/app-dmencu.d.ts +8 -1
  30. package/dist/server/app-dmencu.js +39 -2
  31. package/dist/server/ayuda.d.ts +19 -0
  32. package/dist/server/ayuda.js +224 -0
  33. package/dist/server/procedures-dmencu.js +20 -2
  34. package/dist/server/server/app-dmencu.d.ts +8 -1
  35. package/dist/server/server/app-dmencu.js +39 -2
  36. package/dist/server/server/ayuda.d.ts +19 -0
  37. package/dist/server/server/ayuda.js +224 -0
  38. package/dist/server/server/procedures-dmencu.js +18 -2
  39. package/dist/server/server/types-dmencu.d.ts +20 -1
  40. package/dist/server/server/types-dmencu.js +1 -1
  41. package/dist/server/types-dmencu.d.ts +20 -1
  42. package/dist/server/types-dmencu.js +1 -1
  43. package/dist/server/unlogged/tipos.d.ts +19 -1
  44. package/dist/server/unlogged/tipos.js +1 -1
  45. package/dist/test/app-para-tests.d.ts +2 -0
  46. package/dist/test/test-ayuda.d.ts +1 -0
  47. package/dist/test/test-ayuda.js +183 -0
  48. package/dist/test/test.d.ts +1 -0
  49. package/dist/test/test.js +3 -2
  50. package/dist/unlogged/tipos.d.ts +19 -1
  51. package/dist/unlogged/tipos.js +1 -1
  52. package/dist/unlogged/unlogged/css/formulario-react.styl +9 -0
  53. package/dist/unlogged/unlogged/render-config.d.ts +5 -1
  54. package/dist/unlogged/unlogged/render-config.js +14 -1
  55. package/dist/unlogged/unlogged/render-formulario.d.ts +1 -0
  56. package/dist/unlogged/unlogged/render-formulario.js +43 -2
  57. package/dist/unlogged/unlogged/render-formulario.tsx +71 -0
  58. package/dist/unlogged/unlogged/render-general.d.ts +2 -0
  59. package/dist/unlogged/unlogged/render-general.js +2 -1
  60. package/dist/unlogged/unlogged/render-general.tsx +1 -0
  61. package/dist/unlogged/unlogged/render-init.d.ts +1 -0
  62. package/dist/unlogged/unlogged/render-init.js +9 -2
  63. package/dist/unlogged/unlogged/tipos.d.ts +19 -1
  64. package/dist/unlogged/unlogged/tipos.js +1 -1
  65. package/dist/unlogged/unlogged/unlogged.js +14 -1
  66. package/package.json +5 -2
@@ -1,5 +1,5 @@
1
1
  import * as bePlus from "backend-plus";
2
- import type { NoRea } from "../unlogged/tipos";
2
+ import type { ModoApp, NoRea } from "../unlogged/tipos";
3
3
  export * from 'procesamiento';
4
4
  export { emergeAppMetaEnc, emergeAppRelEnc } from 'meta-enc';
5
5
  export * from './table-tem';
@@ -36,6 +36,23 @@ export type Permisos = {
36
36
  superuser?: boolean;
37
37
  };
38
38
  export type PermisosRol = Record<string, Permisos>;
39
+ export type AyudaFuente = {
40
+ origen: string;
41
+ carpeta: string;
42
+ };
43
+ export type AyudaTema = {
44
+ id: string;
45
+ titulo: string;
46
+ orden: number;
47
+ permisos: string[];
48
+ roles: string[];
49
+ modo: ModoApp | null;
50
+ menu: string[];
51
+ ocultar: boolean;
52
+ origen: string;
53
+ archivo: string;
54
+ html: string;
55
+ };
39
56
  export type RolFieldTarea = {
40
57
  name: string;
41
58
  prefijo: string;
@@ -66,6 +83,7 @@ declare module "backend-plus" {
66
83
  permisosRolSoloTrue: PermisosRol;
67
84
  permisosSuperuser: Puede;
68
85
  permisosParaNadie: Puede;
86
+ ayuda: AyudaTema[];
69
87
  }
70
88
  interface Context {
71
89
  puede?: Puede;
@@ -75,6 +93,7 @@ declare module "backend-plus" {
75
93
  abrir_encuesta: true;
76
94
  sincronizar_dm: true;
77
95
  cambiar_modo_dm: true;
96
+ ayuda: true;
78
97
  }
79
98
  interface AppConfigClientSetup {
80
99
  skin?: string;
@@ -31,4 +31,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
31
31
  Object.defineProperty(exports, "emergeAppRelEnc", { enumerable: true, get: function () { return meta_enc_1.emergeAppRelEnc; } });
32
32
  __exportStar(require("./table-tem"), exports);
33
33
  });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtZG1lbmN1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90eXBlcy1kbWVuY3UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQSx5Q0FBeUM7SUFDekMsWUFBWSxDQUFDOzs7SUFLYixnREFBOEIsQ0FBQyw0QkFBNEI7SUFDM0QscUNBQTZELENBQUMscUNBQXFDO0lBQTFGLDRHQUFBLGdCQUFnQixPQUFBO0lBQUUsMkdBQUEsZUFBZSxPQUFBO0lBQzFDLDhDQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHR5cGVzPVwiZXhwcmVzcy1zZXNzaW9uXCIgLz5cblwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgKiBhcyBiZVBsdXMgZnJvbSBcImJhY2tlbmQtcGx1c1wiO1xuaW1wb3J0IHR5cGUgeyBOb1JlYSB9IGZyb20gXCIuLi91bmxvZ2dlZC90aXBvc1wiO1xuXG5leHBvcnQgKiBmcm9tICdwcm9jZXNhbWllbnRvJzsgLy9leHBvc2UgUHJvY2VzYW1pZW50byB0eXBlc1xuZXhwb3J0IHsgZW1lcmdlQXBwTWV0YUVuYywgZW1lcmdlQXBwUmVsRW5jIH0gZnJvbSAnbWV0YS1lbmMnOyAvL2V4cG9zZSB0eXBlcyBvbmx5IGluIG1ldGEtZW5jIHN0YWNrXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXRlbSc7XG5cbi8vIGNvcnJlc3BvbmRlIGEgbGEgdGFibGEgcGVybWlzb3MgKHBlcm1pc28gLT4gYWNjacOzbiksIHZlciBpbnN0YWxsL3Blcm1pc29zLnRhYlxuZXhwb3J0IHR5cGUgUHVlZGUgPSB7XG4gICAgZW5jdWVzdGFzPzoge1xuICAgICAgICByZWxldmFyPzogYm9vbGVhbixcbiAgICAgICAganVzdGlmaWNhcj86IGJvb2xlYW4sXG4gICAgICAgIHByb2Nlc2FyPzogYm9vbGVhbixcbiAgICAgICAgaW5ncmVzYXI/OiBib29sZWFuLFxuICAgICAgICBib3JyYXJfdWE/OiBib29sZWFuXG4gICAgfSxcbiAgICBjYXNpbGxlcm9zX3RleHRvPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNhbXBvPzoge1xuICAgICAgICB2ZXI/OiBib29sZWFuXG4gICAgICAgIGVkaXRhcj86IGJvb2xlYW5cbiAgICAgICAgYWRtaW5pc3RyYXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNvbmZpZ3VyYXI/OiB7XG4gICAgICAgIHZlcj86IGJvb2xlYW5cbiAgICAgICAgZWRpdGFyPzogYm9vbGVhblxuICAgIH1cbiAgICBjb25zaXN0ZW5jaWFzPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxufVxuXG4vLyBncnVwbyBkZSBjw7NkaWdvcyBkZSBub19yZWEgKGJlLmNhY2hlcy50YWJsZUNvbnRlbnQubm9fcmVhX2dyb3VwcyB5IG5vX3JlYV9ncm91cHMwLCB2ZXIgcmVmcmVzaENhY2hlcyBlbiBhcHAtZG1lbmN1LnRzKVxuZXhwb3J0IHR5cGUgR3J1cG9Ob1JlYSA9IHsgZ3J1cG86IHN0cmluZywgY29kaWdvczogTm9SZWFbXSB9XG5cbmV4cG9ydCB0eXBlIFBlcm1pc29zID0ge1xuICAgIHB1ZWRlPzogUHVlZGVcbiAgICBzdXBlcnVzZXI/OiBib29sZWFuXG59XG5leHBvcnQgdHlwZSBQZXJtaXNvc1JvbCA9IFJlY29yZDxzdHJpbmcsIFBlcm1pc29zPlxuXG4vLyBjYW1wbyBwb3Igcm9sIHF1ZSBzZSBhZ3JlZ2EgcGFyYSBjYWRhIHRhcmVhIGVuIGFyZWFzX2FzaWduYWNpb25fZ2VuZXJhbFxuZXhwb3J0IHR5cGUgUm9sRmllbGRUYXJlYSA9IHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBwcmVmaWpvOiBzdHJpbmdcbiAgICBlZGl0YWJsZTogYm9vbGVhblxuICAgIHJlZmVyZW5jZXM6IHN0cmluZ1xuICAgIG11ZXN0cmFEaXNwb3NpdGl2bzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBUYWJsZURlZmluaXRpb24gPSBiZVBsdXMuVGFibGVEZWZpbml0aW9uICYge1xuICAgIG11ZXN0cmFBYnJpckVuVG9kYXNMYXNUYXJlYXM/OiBib29sZWFuO1xuICAgIHRhcmVhc0ZpZWxkcz86IFJvbEZpZWxkVGFyZWFbXTtcbn1cblxuZXhwb3J0IHR5cGUgVGFibGVDb250ZXh0ID0gYmVQbHVzLlRhYmxlQ29udGV4dCAmIHtcbiAgICBwdWVkZT86IFB1ZWRlXG59XG5cbmRlY2xhcmUgbW9kdWxlIFwiYmFja2VuZC1wbHVzXCIge1xuICAgIGV4cG9ydCBpbnRlcmZhY2UgUHJvY2VkdXJlRGVmIHtcbiAgICAgICAgZGVmaW5lZEluPzogc3RyaW5nXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBGaWVsZERlZmluaXRpb24ge1xuICAgICAgICBpc1BrPzogbnVtYmVyO1xuICAgICAgICBvcmlnaW5hbE5hbWU/OiBzdHJpbmc7XG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDYWNoZXMge1xuICAgICAgICB0YWJsZUNvbnRlbnQ6IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgICAgICAgbWV0YUVuY0luY2x1aXJDYXNpbGxlcm9zU2FsdG9SRUw6IGJvb2xlYW5cbiAgICAgICAgdGltZXN0YW1wRXN0cnVjdHVyYTogbnVtYmVyXG4gICAgICAgIHBlcm1pc29zUm9sOiBQZXJtaXNvc1JvbFxuICAgICAgICBwZXJtaXNvc1JvbFNvbG9UcnVlOiBQZXJtaXNvc1JvbFxuICAgICAgICBwZXJtaXNvc1N1cGVydXNlcjogUHVlZGVcbiAgICAgICAgcGVybWlzb3NQYXJhTmFkaWU6IFB1ZWRlXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDb250ZXh0IHtcbiAgICAgICAgcHVlZGU/OiBQdWVkZVxuICAgICAgICBzdXBlcnVzZXI/OiB0cnVlXG4gICAgfVxuXG4gICAgLy8gcGFudGFsbGFzIHByb3BpYXMgZGUgZG1lbmN1IHF1ZSBzZSB1c2FuIGNvbW8gbWVudVR5cGUgKGRlZmluaWRhcyBlbiBjbGllbnQudHMgY29tbyBteU93bi53U2NyZWVucy4qKVxuICAgIGV4cG9ydCBpbnRlcmZhY2UgV1NjcmVlbnMge1xuICAgICAgICBhYnJpcl9lbmN1ZXN0YTogdHJ1ZVxuICAgICAgICBzaW5jcm9uaXphcl9kbTogdHJ1ZVxuICAgICAgICBjYW1iaWFyX21vZG9fZG06IHRydWVcbiAgICB9XG5cbiAgICAvLyBiYWNrZW5kLXBsdXMgdXNhIGNvbmZpZ1snY2xpZW50LXNldHVwJ10uc2tpbiBwZXJvIG5vIGxvIGRlY2xhcmFcbiAgICBleHBvcnQgaW50ZXJmYWNlIEFwcENvbmZpZ0NsaWVudFNldHVwIHtcbiAgICAgICAgc2tpbj86IHN0cmluZ1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgT3B0c0NsaWVudFBhZ2Uge1xuICAgICAgICBvZmZsaW5lRmlsZTogYm9vbGVhblxuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50U2V0dXAge1xuICAgICAgICBpZHBlcjogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgfVxufVxuXG5kZWNsYXJlIG1vZHVsZSBcImV4cHJlc3Mtc2Vzc2lvblwiIHtcbiAgICBpbnRlcmZhY2UgU2Vzc2lvbkRhdGEge1xuICAgICAgICBpbnN0YWxsOiBzdHJpbmcgLy8gaWRlbnRpZmljYWRvciBkZSBsYSBpbnN0YWxhY2nDs24gZGVsIGRpc3Bvc2l0aXZvICh2ZXIgYWRkU2NocsO2ZGluZ2VyU2VydmljZXMpXG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBNZW51SW5mb0Jhc2UgPSBiZVBsdXMuTWVudUluZm9CYXNlO1xuXG5leHBvcnQgdHlwZSBTdWZpam9zQW1iaWVudGUgPSAnX3Rlc3QnIHwgJ19jYXBhJyB8ICcnXG4iXX0=
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtZG1lbmN1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90eXBlcy1kbWVuY3UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQSx5Q0FBeUM7SUFDekMsWUFBWSxDQUFDOzs7SUFLYixnREFBOEIsQ0FBQyw0QkFBNEI7SUFDM0QscUNBQTZELENBQUMscUNBQXFDO0lBQTFGLDRHQUFBLGdCQUFnQixPQUFBO0lBQUUsMkdBQUEsZUFBZSxPQUFBO0lBQzFDLDhDQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHR5cGVzPVwiZXhwcmVzcy1zZXNzaW9uXCIgLz5cblwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgKiBhcyBiZVBsdXMgZnJvbSBcImJhY2tlbmQtcGx1c1wiO1xuaW1wb3J0IHR5cGUgeyBNb2RvQXBwLCBOb1JlYSB9IGZyb20gXCIuLi91bmxvZ2dlZC90aXBvc1wiO1xuXG5leHBvcnQgKiBmcm9tICdwcm9jZXNhbWllbnRvJzsgLy9leHBvc2UgUHJvY2VzYW1pZW50byB0eXBlc1xuZXhwb3J0IHsgZW1lcmdlQXBwTWV0YUVuYywgZW1lcmdlQXBwUmVsRW5jIH0gZnJvbSAnbWV0YS1lbmMnOyAvL2V4cG9zZSB0eXBlcyBvbmx5IGluIG1ldGEtZW5jIHN0YWNrXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXRlbSc7XG5cbi8vIGNvcnJlc3BvbmRlIGEgbGEgdGFibGEgcGVybWlzb3MgKHBlcm1pc28gLT4gYWNjacOzbiksIHZlciBpbnN0YWxsL3Blcm1pc29zLnRhYlxuZXhwb3J0IHR5cGUgUHVlZGUgPSB7XG4gICAgZW5jdWVzdGFzPzoge1xuICAgICAgICByZWxldmFyPzogYm9vbGVhbixcbiAgICAgICAganVzdGlmaWNhcj86IGJvb2xlYW4sXG4gICAgICAgIHByb2Nlc2FyPzogYm9vbGVhbixcbiAgICAgICAgaW5ncmVzYXI/OiBib29sZWFuLFxuICAgICAgICBib3JyYXJfdWE/OiBib29sZWFuXG4gICAgfSxcbiAgICBjYXNpbGxlcm9zX3RleHRvPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNhbXBvPzoge1xuICAgICAgICB2ZXI/OiBib29sZWFuXG4gICAgICAgIGVkaXRhcj86IGJvb2xlYW5cbiAgICAgICAgYWRtaW5pc3RyYXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNvbmZpZ3VyYXI/OiB7XG4gICAgICAgIHZlcj86IGJvb2xlYW5cbiAgICAgICAgZWRpdGFyPzogYm9vbGVhblxuICAgIH1cbiAgICBjb25zaXN0ZW5jaWFzPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxufVxuXG4vLyBncnVwbyBkZSBjw7NkaWdvcyBkZSBub19yZWEgKGJlLmNhY2hlcy50YWJsZUNvbnRlbnQubm9fcmVhX2dyb3VwcyB5IG5vX3JlYV9ncm91cHMwLCB2ZXIgcmVmcmVzaENhY2hlcyBlbiBhcHAtZG1lbmN1LnRzKVxuZXhwb3J0IHR5cGUgR3J1cG9Ob1JlYSA9IHsgZ3J1cG86IHN0cmluZywgY29kaWdvczogTm9SZWFbXSB9XG5cbmV4cG9ydCB0eXBlIFBlcm1pc29zID0ge1xuICAgIHB1ZWRlPzogUHVlZGVcbiAgICBzdXBlcnVzZXI/OiBib29sZWFuXG59XG5leHBvcnQgdHlwZSBQZXJtaXNvc1JvbCA9IFJlY29yZDxzdHJpbmcsIFBlcm1pc29zPlxuXG4vLyBheXVkYSBlbiBsw61uZWEgcGFyYSB1c3VhcmlvcyAodmVyIGRvY3MvYXl1ZGEtb25saW5lLm1kKVxuLy8gdW5hIGNhcnBldGEgY29uIGFyY2hpdm9zIC5tZCBkZSBheXVkYTsgbGFzIGFwcHMgZmluYWxlcyBhZ3JlZ2FuIGxhcyBzdXlhcyBlbiBnZXRBeXVkYUZ1ZW50ZXNcbmV4cG9ydCB0eXBlIEF5dWRhRnVlbnRlID0ge1xuICAgIG9yaWdlbjogc3RyaW5nIC8vIG5vbWJyZSBkZSBsYSBhcHAgbyBwYXF1ZXRlLCBwYXJhIGxvcyBtZW5zYWplcyBkZSBlcnJvclxuICAgIGNhcnBldGE6IHN0cmluZ1xufVxuLy8gdW4gYXJjaGl2byBkZSBheXVkYSB5YSBsZcOtZG86IGVuY2FiZXphZG8gKyBjb250ZW5pZG8gY29udmVydGlkbyBhIGh0bWxcbmV4cG9ydCB0eXBlIEF5dWRhVGVtYSA9IHtcbiAgICBpZDogc3RyaW5nXG4gICAgdGl0dWxvOiBzdHJpbmdcbiAgICBvcmRlbjogbnVtYmVyXG4gICAgcGVybWlzb3M6IHN0cmluZ1tdIC8vIFwicGVybWlzby5hY2Npb25cIjsgYWxjYW56YSBjb24gdGVuZXIgYWxndW5vXG4gICAgcm9sZXM6IHN0cmluZ1tdIC8vIGFsY2FuemEgY29uIHRlbmVyIGFsZ3Vub1xuICAgIG1vZG86IE1vZG9BcHAgfCBudWxsIC8vIG51bGw6IGVuIGFtYm9zIG1vZG9zXG4gICAgbWVudTogc3RyaW5nW10gLy8gcnV0YXMgZGUgbGFzIG9wY2lvbmVzIGRlbCBtZW7DuiBxdWUgZXhwbGljYSwgcG9yIGVqZW1wbG8gXCJhc2lnbmFjaW9uL2VuY3Vlc3RhZG9yXCJcbiAgICBvY3VsdGFyOiBib29sZWFuIC8vIHF1aXRhIHVuIHRlbWEgZGUgb3RyYSBmdWVudGUgY29uIGVsIG1pc21vIGlkXG4gICAgb3JpZ2VuOiBzdHJpbmdcbiAgICBhcmNoaXZvOiBzdHJpbmdcbiAgICBodG1sOiBzdHJpbmdcbn1cblxuLy8gY2FtcG8gcG9yIHJvbCBxdWUgc2UgYWdyZWdhIHBhcmEgY2FkYSB0YXJlYSBlbiBhcmVhc19hc2lnbmFjaW9uX2dlbmVyYWxcbmV4cG9ydCB0eXBlIFJvbEZpZWxkVGFyZWEgPSB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgcHJlZmlqbzogc3RyaW5nXG4gICAgZWRpdGFibGU6IGJvb2xlYW5cbiAgICByZWZlcmVuY2VzOiBzdHJpbmdcbiAgICBtdWVzdHJhRGlzcG9zaXRpdm86IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgVGFibGVEZWZpbml0aW9uID0gYmVQbHVzLlRhYmxlRGVmaW5pdGlvbiAmIHtcbiAgICBtdWVzdHJhQWJyaXJFblRvZGFzTGFzVGFyZWFzPzogYm9vbGVhbjtcbiAgICB0YXJlYXNGaWVsZHM/OiBSb2xGaWVsZFRhcmVhW107XG59XG5cbmV4cG9ydCB0eXBlIFRhYmxlQ29udGV4dCA9IGJlUGx1cy5UYWJsZUNvbnRleHQgJiB7XG4gICAgcHVlZGU/OiBQdWVkZVxufVxuXG5kZWNsYXJlIG1vZHVsZSBcImJhY2tlbmQtcGx1c1wiIHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIFByb2NlZHVyZURlZiB7XG4gICAgICAgIGRlZmluZWRJbj86IHN0cmluZ1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgRmllbGREZWZpbml0aW9uIHtcbiAgICAgICAgaXNQaz86IG51bWJlcjtcbiAgICAgICAgb3JpZ2luYWxOYW1lPzogc3RyaW5nO1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVzIHtcbiAgICAgICAgdGFibGVDb250ZW50OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgICAgIG1ldGFFbmNJbmNsdWlyQ2FzaWxsZXJvc1NhbHRvUkVMOiBib29sZWFuXG4gICAgICAgIHRpbWVzdGFtcEVzdHJ1Y3R1cmE6IG51bWJlclxuICAgICAgICBwZXJtaXNvc1JvbDogUGVybWlzb3NSb2xcbiAgICAgICAgcGVybWlzb3NSb2xTb2xvVHJ1ZTogUGVybWlzb3NSb2xcbiAgICAgICAgcGVybWlzb3NTdXBlcnVzZXI6IFB1ZWRlXG4gICAgICAgIHBlcm1pc29zUGFyYU5hZGllOiBQdWVkZVxuICAgICAgICBheXVkYTogQXl1ZGFUZW1hW11cbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHQge1xuICAgICAgICBwdWVkZT86IFB1ZWRlXG4gICAgICAgIHN1cGVydXNlcj86IHRydWVcbiAgICB9XG5cbiAgICAvLyBwYW50YWxsYXMgcHJvcGlhcyBkZSBkbWVuY3UgcXVlIHNlIHVzYW4gY29tbyBtZW51VHlwZSAoZGVmaW5pZGFzIGVuIGNsaWVudC50cyBjb21vIG15T3duLndTY3JlZW5zLiopXG4gICAgZXhwb3J0IGludGVyZmFjZSBXU2NyZWVucyB7XG4gICAgICAgIGFicmlyX2VuY3Vlc3RhOiB0cnVlXG4gICAgICAgIHNpbmNyb25pemFyX2RtOiB0cnVlXG4gICAgICAgIGNhbWJpYXJfbW9kb19kbTogdHJ1ZVxuICAgICAgICBheXVkYTogdHJ1ZVxuICAgIH1cblxuICAgIC8vIGJhY2tlbmQtcGx1cyB1c2EgY29uZmlnWydjbGllbnQtc2V0dXAnXS5za2luIHBlcm8gbm8gbG8gZGVjbGFyYVxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQXBwQ29uZmlnQ2xpZW50U2V0dXAge1xuICAgICAgICBza2luPzogc3RyaW5nXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBPcHRzQ2xpZW50UGFnZSB7XG4gICAgICAgIG9mZmxpbmVGaWxlOiBib29sZWFuXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDbGllbnRTZXR1cCB7XG4gICAgICAgIGlkcGVyOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlIFwiZXhwcmVzcy1zZXNzaW9uXCIge1xuICAgIGludGVyZmFjZSBTZXNzaW9uRGF0YSB7XG4gICAgICAgIGluc3RhbGw6IHN0cmluZyAvLyBpZGVudGlmaWNhZG9yIGRlIGxhIGluc3RhbGFjacOzbiBkZWwgZGlzcG9zaXRpdm8gKHZlciBhZGRTY2hyw7ZkaW5nZXJTZXJ2aWNlcylcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIE1lbnVJbmZvQmFzZSA9IGJlUGx1cy5NZW51SW5mb0Jhc2U7XG5cbmV4cG9ydCB0eXBlIFN1Zmlqb3NBbWJpZW50ZSA9ICdfdGVzdCcgfCAnX2NhcGEnIHwgJydcbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import * as bePlus from "backend-plus";
2
- import type { NoRea } from "../unlogged/tipos";
2
+ import type { ModoApp, NoRea } from "../unlogged/tipos";
3
3
  export * from 'procesamiento';
4
4
  export { emergeAppMetaEnc, emergeAppRelEnc } from 'meta-enc';
5
5
  export * from './table-tem';
@@ -36,6 +36,23 @@ export type Permisos = {
36
36
  superuser?: boolean;
37
37
  };
38
38
  export type PermisosRol = Record<string, Permisos>;
39
+ export type AyudaFuente = {
40
+ origen: string;
41
+ carpeta: string;
42
+ };
43
+ export type AyudaTema = {
44
+ id: string;
45
+ titulo: string;
46
+ orden: number;
47
+ permisos: string[];
48
+ roles: string[];
49
+ modo: ModoApp | null;
50
+ menu: string[];
51
+ ocultar: boolean;
52
+ origen: string;
53
+ archivo: string;
54
+ html: string;
55
+ };
39
56
  export type RolFieldTarea = {
40
57
  name: string;
41
58
  prefijo: string;
@@ -66,6 +83,7 @@ declare module "backend-plus" {
66
83
  permisosRolSoloTrue: PermisosRol;
67
84
  permisosSuperuser: Puede;
68
85
  permisosParaNadie: Puede;
86
+ ayuda: AyudaTema[];
69
87
  }
70
88
  interface Context {
71
89
  puede?: Puede;
@@ -75,6 +93,7 @@ declare module "backend-plus" {
75
93
  abrir_encuesta: true;
76
94
  sincronizar_dm: true;
77
95
  cambiar_modo_dm: true;
96
+ ayuda: true;
78
97
  }
79
98
  interface AppConfigClientSetup {
80
99
  skin?: string;
@@ -31,4 +31,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
31
31
  Object.defineProperty(exports, "emergeAppRelEnc", { enumerable: true, get: function () { return meta_enc_1.emergeAppRelEnc; } });
32
32
  __exportStar(require("./table-tem"), exports);
33
33
  });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtZG1lbmN1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZlci90eXBlcy1kbWVuY3UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQSx5Q0FBeUM7SUFDekMsWUFBWSxDQUFDOzs7SUFLYixnREFBOEIsQ0FBQyw0QkFBNEI7SUFDM0QscUNBQTZELENBQUMscUNBQXFDO0lBQTFGLDRHQUFBLGdCQUFnQixPQUFBO0lBQUUsMkdBQUEsZUFBZSxPQUFBO0lBQzFDLDhDQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHR5cGVzPVwiZXhwcmVzcy1zZXNzaW9uXCIgLz5cblwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgKiBhcyBiZVBsdXMgZnJvbSBcImJhY2tlbmQtcGx1c1wiO1xuaW1wb3J0IHR5cGUgeyBOb1JlYSB9IGZyb20gXCIuLi91bmxvZ2dlZC90aXBvc1wiO1xuXG5leHBvcnQgKiBmcm9tICdwcm9jZXNhbWllbnRvJzsgLy9leHBvc2UgUHJvY2VzYW1pZW50byB0eXBlc1xuZXhwb3J0IHsgZW1lcmdlQXBwTWV0YUVuYywgZW1lcmdlQXBwUmVsRW5jIH0gZnJvbSAnbWV0YS1lbmMnOyAvL2V4cG9zZSB0eXBlcyBvbmx5IGluIG1ldGEtZW5jIHN0YWNrXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXRlbSc7XG5cbi8vIGNvcnJlc3BvbmRlIGEgbGEgdGFibGEgcGVybWlzb3MgKHBlcm1pc28gLT4gYWNjacOzbiksIHZlciBpbnN0YWxsL3Blcm1pc29zLnRhYlxuZXhwb3J0IHR5cGUgUHVlZGUgPSB7XG4gICAgZW5jdWVzdGFzPzoge1xuICAgICAgICByZWxldmFyPzogYm9vbGVhbixcbiAgICAgICAganVzdGlmaWNhcj86IGJvb2xlYW4sXG4gICAgICAgIHByb2Nlc2FyPzogYm9vbGVhbixcbiAgICAgICAgaW5ncmVzYXI/OiBib29sZWFuLFxuICAgICAgICBib3JyYXJfdWE/OiBib29sZWFuXG4gICAgfSxcbiAgICBjYXNpbGxlcm9zX3RleHRvPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNhbXBvPzoge1xuICAgICAgICB2ZXI/OiBib29sZWFuXG4gICAgICAgIGVkaXRhcj86IGJvb2xlYW5cbiAgICAgICAgYWRtaW5pc3RyYXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNvbmZpZ3VyYXI/OiB7XG4gICAgICAgIHZlcj86IGJvb2xlYW5cbiAgICAgICAgZWRpdGFyPzogYm9vbGVhblxuICAgIH1cbiAgICBjb25zaXN0ZW5jaWFzPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxufVxuXG4vLyBncnVwbyBkZSBjw7NkaWdvcyBkZSBub19yZWEgKGJlLmNhY2hlcy50YWJsZUNvbnRlbnQubm9fcmVhX2dyb3VwcyB5IG5vX3JlYV9ncm91cHMwLCB2ZXIgcmVmcmVzaENhY2hlcyBlbiBhcHAtZG1lbmN1LnRzKVxuZXhwb3J0IHR5cGUgR3J1cG9Ob1JlYSA9IHsgZ3J1cG86IHN0cmluZywgY29kaWdvczogTm9SZWFbXSB9XG5cbmV4cG9ydCB0eXBlIFBlcm1pc29zID0ge1xuICAgIHB1ZWRlPzogUHVlZGVcbiAgICBzdXBlcnVzZXI/OiBib29sZWFuXG59XG5leHBvcnQgdHlwZSBQZXJtaXNvc1JvbCA9IFJlY29yZDxzdHJpbmcsIFBlcm1pc29zPlxuXG4vLyBjYW1wbyBwb3Igcm9sIHF1ZSBzZSBhZ3JlZ2EgcGFyYSBjYWRhIHRhcmVhIGVuIGFyZWFzX2FzaWduYWNpb25fZ2VuZXJhbFxuZXhwb3J0IHR5cGUgUm9sRmllbGRUYXJlYSA9IHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBwcmVmaWpvOiBzdHJpbmdcbiAgICBlZGl0YWJsZTogYm9vbGVhblxuICAgIHJlZmVyZW5jZXM6IHN0cmluZ1xuICAgIG11ZXN0cmFEaXNwb3NpdGl2bzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBUYWJsZURlZmluaXRpb24gPSBiZVBsdXMuVGFibGVEZWZpbml0aW9uICYge1xuICAgIG11ZXN0cmFBYnJpckVuVG9kYXNMYXNUYXJlYXM/OiBib29sZWFuO1xuICAgIHRhcmVhc0ZpZWxkcz86IFJvbEZpZWxkVGFyZWFbXTtcbn1cblxuZXhwb3J0IHR5cGUgVGFibGVDb250ZXh0ID0gYmVQbHVzLlRhYmxlQ29udGV4dCAmIHtcbiAgICBwdWVkZT86IFB1ZWRlXG59XG5cbmRlY2xhcmUgbW9kdWxlIFwiYmFja2VuZC1wbHVzXCIge1xuICAgIGV4cG9ydCBpbnRlcmZhY2UgUHJvY2VkdXJlRGVmIHtcbiAgICAgICAgZGVmaW5lZEluPzogc3RyaW5nXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBGaWVsZERlZmluaXRpb24ge1xuICAgICAgICBpc1BrPzogbnVtYmVyO1xuICAgICAgICBvcmlnaW5hbE5hbWU/OiBzdHJpbmc7XG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDYWNoZXMge1xuICAgICAgICB0YWJsZUNvbnRlbnQ6IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgICAgICAgbWV0YUVuY0luY2x1aXJDYXNpbGxlcm9zU2FsdG9SRUw6IGJvb2xlYW5cbiAgICAgICAgdGltZXN0YW1wRXN0cnVjdHVyYTogbnVtYmVyXG4gICAgICAgIHBlcm1pc29zUm9sOiBQZXJtaXNvc1JvbFxuICAgICAgICBwZXJtaXNvc1JvbFNvbG9UcnVlOiBQZXJtaXNvc1JvbFxuICAgICAgICBwZXJtaXNvc1N1cGVydXNlcjogUHVlZGVcbiAgICAgICAgcGVybWlzb3NQYXJhTmFkaWU6IFB1ZWRlXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDb250ZXh0IHtcbiAgICAgICAgcHVlZGU/OiBQdWVkZVxuICAgICAgICBzdXBlcnVzZXI/OiB0cnVlXG4gICAgfVxuXG4gICAgLy8gcGFudGFsbGFzIHByb3BpYXMgZGUgZG1lbmN1IHF1ZSBzZSB1c2FuIGNvbW8gbWVudVR5cGUgKGRlZmluaWRhcyBlbiBjbGllbnQudHMgY29tbyBteU93bi53U2NyZWVucy4qKVxuICAgIGV4cG9ydCBpbnRlcmZhY2UgV1NjcmVlbnMge1xuICAgICAgICBhYnJpcl9lbmN1ZXN0YTogdHJ1ZVxuICAgICAgICBzaW5jcm9uaXphcl9kbTogdHJ1ZVxuICAgICAgICBjYW1iaWFyX21vZG9fZG06IHRydWVcbiAgICB9XG5cbiAgICAvLyBiYWNrZW5kLXBsdXMgdXNhIGNvbmZpZ1snY2xpZW50LXNldHVwJ10uc2tpbiBwZXJvIG5vIGxvIGRlY2xhcmFcbiAgICBleHBvcnQgaW50ZXJmYWNlIEFwcENvbmZpZ0NsaWVudFNldHVwIHtcbiAgICAgICAgc2tpbj86IHN0cmluZ1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgT3B0c0NsaWVudFBhZ2Uge1xuICAgICAgICBvZmZsaW5lRmlsZTogYm9vbGVhblxuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50U2V0dXAge1xuICAgICAgICBpZHBlcjogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgfVxufVxuXG5kZWNsYXJlIG1vZHVsZSBcImV4cHJlc3Mtc2Vzc2lvblwiIHtcbiAgICBpbnRlcmZhY2UgU2Vzc2lvbkRhdGEge1xuICAgICAgICBpbnN0YWxsOiBzdHJpbmcgLy8gaWRlbnRpZmljYWRvciBkZSBsYSBpbnN0YWxhY2nDs24gZGVsIGRpc3Bvc2l0aXZvICh2ZXIgYWRkU2NocsO2ZGluZ2VyU2VydmljZXMpXG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBNZW51SW5mb0Jhc2UgPSBiZVBsdXMuTWVudUluZm9CYXNlO1xuXG5leHBvcnQgdHlwZSBTdWZpam9zQW1iaWVudGUgPSAnX3Rlc3QnIHwgJ19jYXBhJyB8ICcnXG4iXX0=
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtZG1lbmN1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZlci90eXBlcy1kbWVuY3UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQSx5Q0FBeUM7SUFDekMsWUFBWSxDQUFDOzs7SUFLYixnREFBOEIsQ0FBQyw0QkFBNEI7SUFDM0QscUNBQTZELENBQUMscUNBQXFDO0lBQTFGLDRHQUFBLGdCQUFnQixPQUFBO0lBQUUsMkdBQUEsZUFBZSxPQUFBO0lBQzFDLDhDQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHR5cGVzPVwiZXhwcmVzcy1zZXNzaW9uXCIgLz5cblwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgKiBhcyBiZVBsdXMgZnJvbSBcImJhY2tlbmQtcGx1c1wiO1xuaW1wb3J0IHR5cGUgeyBNb2RvQXBwLCBOb1JlYSB9IGZyb20gXCIuLi91bmxvZ2dlZC90aXBvc1wiO1xuXG5leHBvcnQgKiBmcm9tICdwcm9jZXNhbWllbnRvJzsgLy9leHBvc2UgUHJvY2VzYW1pZW50byB0eXBlc1xuZXhwb3J0IHsgZW1lcmdlQXBwTWV0YUVuYywgZW1lcmdlQXBwUmVsRW5jIH0gZnJvbSAnbWV0YS1lbmMnOyAvL2V4cG9zZSB0eXBlcyBvbmx5IGluIG1ldGEtZW5jIHN0YWNrXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXRlbSc7XG5cbi8vIGNvcnJlc3BvbmRlIGEgbGEgdGFibGEgcGVybWlzb3MgKHBlcm1pc28gLT4gYWNjacOzbiksIHZlciBpbnN0YWxsL3Blcm1pc29zLnRhYlxuZXhwb3J0IHR5cGUgUHVlZGUgPSB7XG4gICAgZW5jdWVzdGFzPzoge1xuICAgICAgICByZWxldmFyPzogYm9vbGVhbixcbiAgICAgICAganVzdGlmaWNhcj86IGJvb2xlYW4sXG4gICAgICAgIHByb2Nlc2FyPzogYm9vbGVhbixcbiAgICAgICAgaW5ncmVzYXI/OiBib29sZWFuLFxuICAgICAgICBib3JyYXJfdWE/OiBib29sZWFuXG4gICAgfSxcbiAgICBjYXNpbGxlcm9zX3RleHRvPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNhbXBvPzoge1xuICAgICAgICB2ZXI/OiBib29sZWFuXG4gICAgICAgIGVkaXRhcj86IGJvb2xlYW5cbiAgICAgICAgYWRtaW5pc3RyYXI/OiBib29sZWFuXG4gICAgfVxuICAgIGNvbmZpZ3VyYXI/OiB7XG4gICAgICAgIHZlcj86IGJvb2xlYW5cbiAgICAgICAgZWRpdGFyPzogYm9vbGVhblxuICAgIH1cbiAgICBjb25zaXN0ZW5jaWFzPzoge1xuICAgICAgICBlZGl0YXI/OiBib29sZWFuXG4gICAgfVxufVxuXG4vLyBncnVwbyBkZSBjw7NkaWdvcyBkZSBub19yZWEgKGJlLmNhY2hlcy50YWJsZUNvbnRlbnQubm9fcmVhX2dyb3VwcyB5IG5vX3JlYV9ncm91cHMwLCB2ZXIgcmVmcmVzaENhY2hlcyBlbiBhcHAtZG1lbmN1LnRzKVxuZXhwb3J0IHR5cGUgR3J1cG9Ob1JlYSA9IHsgZ3J1cG86IHN0cmluZywgY29kaWdvczogTm9SZWFbXSB9XG5cbmV4cG9ydCB0eXBlIFBlcm1pc29zID0ge1xuICAgIHB1ZWRlPzogUHVlZGVcbiAgICBzdXBlcnVzZXI/OiBib29sZWFuXG59XG5leHBvcnQgdHlwZSBQZXJtaXNvc1JvbCA9IFJlY29yZDxzdHJpbmcsIFBlcm1pc29zPlxuXG4vLyBheXVkYSBlbiBsw61uZWEgcGFyYSB1c3VhcmlvcyAodmVyIGRvY3MvYXl1ZGEtb25saW5lLm1kKVxuLy8gdW5hIGNhcnBldGEgY29uIGFyY2hpdm9zIC5tZCBkZSBheXVkYTsgbGFzIGFwcHMgZmluYWxlcyBhZ3JlZ2FuIGxhcyBzdXlhcyBlbiBnZXRBeXVkYUZ1ZW50ZXNcbmV4cG9ydCB0eXBlIEF5dWRhRnVlbnRlID0ge1xuICAgIG9yaWdlbjogc3RyaW5nIC8vIG5vbWJyZSBkZSBsYSBhcHAgbyBwYXF1ZXRlLCBwYXJhIGxvcyBtZW5zYWplcyBkZSBlcnJvclxuICAgIGNhcnBldGE6IHN0cmluZ1xufVxuLy8gdW4gYXJjaGl2byBkZSBheXVkYSB5YSBsZcOtZG86IGVuY2FiZXphZG8gKyBjb250ZW5pZG8gY29udmVydGlkbyBhIGh0bWxcbmV4cG9ydCB0eXBlIEF5dWRhVGVtYSA9IHtcbiAgICBpZDogc3RyaW5nXG4gICAgdGl0dWxvOiBzdHJpbmdcbiAgICBvcmRlbjogbnVtYmVyXG4gICAgcGVybWlzb3M6IHN0cmluZ1tdIC8vIFwicGVybWlzby5hY2Npb25cIjsgYWxjYW56YSBjb24gdGVuZXIgYWxndW5vXG4gICAgcm9sZXM6IHN0cmluZ1tdIC8vIGFsY2FuemEgY29uIHRlbmVyIGFsZ3Vub1xuICAgIG1vZG86IE1vZG9BcHAgfCBudWxsIC8vIG51bGw6IGVuIGFtYm9zIG1vZG9zXG4gICAgbWVudTogc3RyaW5nW10gLy8gcnV0YXMgZGUgbGFzIG9wY2lvbmVzIGRlbCBtZW7DuiBxdWUgZXhwbGljYSwgcG9yIGVqZW1wbG8gXCJhc2lnbmFjaW9uL2VuY3Vlc3RhZG9yXCJcbiAgICBvY3VsdGFyOiBib29sZWFuIC8vIHF1aXRhIHVuIHRlbWEgZGUgb3RyYSBmdWVudGUgY29uIGVsIG1pc21vIGlkXG4gICAgb3JpZ2VuOiBzdHJpbmdcbiAgICBhcmNoaXZvOiBzdHJpbmdcbiAgICBodG1sOiBzdHJpbmdcbn1cblxuLy8gY2FtcG8gcG9yIHJvbCBxdWUgc2UgYWdyZWdhIHBhcmEgY2FkYSB0YXJlYSBlbiBhcmVhc19hc2lnbmFjaW9uX2dlbmVyYWxcbmV4cG9ydCB0eXBlIFJvbEZpZWxkVGFyZWEgPSB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgcHJlZmlqbzogc3RyaW5nXG4gICAgZWRpdGFibGU6IGJvb2xlYW5cbiAgICByZWZlcmVuY2VzOiBzdHJpbmdcbiAgICBtdWVzdHJhRGlzcG9zaXRpdm86IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgVGFibGVEZWZpbml0aW9uID0gYmVQbHVzLlRhYmxlRGVmaW5pdGlvbiAmIHtcbiAgICBtdWVzdHJhQWJyaXJFblRvZGFzTGFzVGFyZWFzPzogYm9vbGVhbjtcbiAgICB0YXJlYXNGaWVsZHM/OiBSb2xGaWVsZFRhcmVhW107XG59XG5cbmV4cG9ydCB0eXBlIFRhYmxlQ29udGV4dCA9IGJlUGx1cy5UYWJsZUNvbnRleHQgJiB7XG4gICAgcHVlZGU/OiBQdWVkZVxufVxuXG5kZWNsYXJlIG1vZHVsZSBcImJhY2tlbmQtcGx1c1wiIHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIFByb2NlZHVyZURlZiB7XG4gICAgICAgIGRlZmluZWRJbj86IHN0cmluZ1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgRmllbGREZWZpbml0aW9uIHtcbiAgICAgICAgaXNQaz86IG51bWJlcjtcbiAgICAgICAgb3JpZ2luYWxOYW1lPzogc3RyaW5nO1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVzIHtcbiAgICAgICAgdGFibGVDb250ZW50OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgICAgIG1ldGFFbmNJbmNsdWlyQ2FzaWxsZXJvc1NhbHRvUkVMOiBib29sZWFuXG4gICAgICAgIHRpbWVzdGFtcEVzdHJ1Y3R1cmE6IG51bWJlclxuICAgICAgICBwZXJtaXNvc1JvbDogUGVybWlzb3NSb2xcbiAgICAgICAgcGVybWlzb3NSb2xTb2xvVHJ1ZTogUGVybWlzb3NSb2xcbiAgICAgICAgcGVybWlzb3NTdXBlcnVzZXI6IFB1ZWRlXG4gICAgICAgIHBlcm1pc29zUGFyYU5hZGllOiBQdWVkZVxuICAgICAgICBheXVkYTogQXl1ZGFUZW1hW11cbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHQge1xuICAgICAgICBwdWVkZT86IFB1ZWRlXG4gICAgICAgIHN1cGVydXNlcj86IHRydWVcbiAgICB9XG5cbiAgICAvLyBwYW50YWxsYXMgcHJvcGlhcyBkZSBkbWVuY3UgcXVlIHNlIHVzYW4gY29tbyBtZW51VHlwZSAoZGVmaW5pZGFzIGVuIGNsaWVudC50cyBjb21vIG15T3duLndTY3JlZW5zLiopXG4gICAgZXhwb3J0IGludGVyZmFjZSBXU2NyZWVucyB7XG4gICAgICAgIGFicmlyX2VuY3Vlc3RhOiB0cnVlXG4gICAgICAgIHNpbmNyb25pemFyX2RtOiB0cnVlXG4gICAgICAgIGNhbWJpYXJfbW9kb19kbTogdHJ1ZVxuICAgICAgICBheXVkYTogdHJ1ZVxuICAgIH1cblxuICAgIC8vIGJhY2tlbmQtcGx1cyB1c2EgY29uZmlnWydjbGllbnQtc2V0dXAnXS5za2luIHBlcm8gbm8gbG8gZGVjbGFyYVxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQXBwQ29uZmlnQ2xpZW50U2V0dXAge1xuICAgICAgICBza2luPzogc3RyaW5nXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBPcHRzQ2xpZW50UGFnZSB7XG4gICAgICAgIG9mZmxpbmVGaWxlOiBib29sZWFuXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDbGllbnRTZXR1cCB7XG4gICAgICAgIGlkcGVyOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlIFwiZXhwcmVzcy1zZXNzaW9uXCIge1xuICAgIGludGVyZmFjZSBTZXNzaW9uRGF0YSB7XG4gICAgICAgIGluc3RhbGw6IHN0cmluZyAvLyBpZGVudGlmaWNhZG9yIGRlIGxhIGluc3RhbGFjacOzbiBkZWwgZGlzcG9zaXRpdm8gKHZlciBhZGRTY2hyw7ZkaW5nZXJTZXJ2aWNlcylcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIE1lbnVJbmZvQmFzZSA9IGJlUGx1cy5NZW51SW5mb0Jhc2U7XG5cbmV4cG9ydCB0eXBlIFN1Zmlqb3NBbWJpZW50ZSA9ICdfdGVzdCcgfCAnX2NhcGEnIHwgJydcbiJdfQ==
@@ -299,7 +299,7 @@ export type Cargas = {
299
299
  };
300
300
  export type EstructuraRowValidator = Structure<IdVariable, Valor, IdFin>;
301
301
  export type ModoDespliegue = 'metadatos' | 'relevamiento' | 'PDF';
302
- export type PantallaNavegacion = 'hdr' | 'sincronizacion' | 'sincronizacion_requerida' | 'modo';
302
+ export type PantallaNavegacion = 'hdr' | 'sincronizacion' | 'sincronizacion_requerida' | 'modo' | 'ayuda';
303
303
  export type InfoFormulario = {
304
304
  casilleros: Formulario;
305
305
  estructuraRowValidator: EstructuraRowValidator;
@@ -572,4 +572,22 @@ export type EstadoAccion = {
572
572
  confirma: boolean;
573
573
  };
574
574
  export type ModoDM = 'produc' | 'capa';
575
+ export type ModoApp = 'RELEVAMIENTO' | 'GABINETE';
576
+ export type AyudaTemaParaUsuario = {
577
+ id: string;
578
+ titulo: string;
579
+ html: string;
580
+ };
581
+ export type AyudaOpcionMenu = {
582
+ ruta: string;
583
+ label: string;
584
+ tema: string | null;
585
+ opciones: AyudaOpcionMenu[];
586
+ };
587
+ export type AyudaParaUsuario = {
588
+ rol: string | null;
589
+ modo: ModoApp;
590
+ temas: AyudaTemaParaUsuario[];
591
+ menu: AyudaOpcionMenu[];
592
+ };
575
593
  export {};
@@ -18,4 +18,4 @@
18
18
  exports.iterator = LikeAr.iterator;
19
19
  exports.empty = LikeAr.empty;
20
20
  });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5sb2dnZWQvdGlwb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFxbEJiLG9DQUVDO0lBcmxCRCxrQ0FBa0M7SUFtbEJsQyxTQUFnQixZQUFZLENBQUMsS0FBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFlLENBQUM7SUFDL0MsQ0FBQztJQUVVLFFBQUEsUUFBUSxHQUFtRCxNQUFNLENBQUMsUUFBUSxDQUFBO0lBQzFFLFFBQUEsS0FBSyxHQUFrRSxNQUFNLENBQUMsS0FBSyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcbmltcG9ydCB7IFN0cnVjdHVyZSwgRmVlZGJhY2sgfSBmcm9tIFwicm93LXZhbGlkYXRvclwiO1xyXG5pbXBvcnQgKiBhcyBMaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuXHJcbmV4cG9ydCB0eXBlIE1vZG9BbG1hY2VuYW1pZW50byA9ICdzZXNzaW9uJyB8IC8vIGN1YW5kbyBzZWEgcGFyYSB1bmEgc29sYSBwZXN0YcOxYSwgc2UgdXNhIGVuIG1vZG8gZGlyZWN0byxcclxuICAgICdsb2NhbCcgICAgLy8gcGFyYSB0b2RvIGVsIGRpc3Bvc2l0aXZvLCBzZSB1c2EgYWwgY2FyZ2FyIGhvamFzIGRlIHJ1dGEgZW50cmVzXHJcblxyXG5leHBvcnQgdHlwZSBJZE9wY2lvbiA9IG51bWJlclxyXG5leHBvcnQgdHlwZSBJZE9wZXJhdGl2byA9ICdldG9pMjExJyB8ICdlYWgyMDIyJyB8ICdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkVmFyaWFibGUgPSAndjEnIHwgJ3YyJyB8ICd2MycgfCAnZXRjLi4uJyB8ICd2ZG9taW5pbycgfCAnJHAwJ1xyXG5leHBvcnQgdHlwZSBJZFByZWd1bnRhID0gJ1AxJyB8ICdQMicgfCAnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZEJsb3F1ZSA9ICdCMScgfCAnQjInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRGb3JtdWxhcmlvID0gJ0YxJyB8ICdGMicgfCAnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFVuaWRhZEFuYWxpc2lzID0gJ3ZpdmllbmRhcycgfCAnaG9nYXJlcycgfCAncGVyc29uYXMnXHJcbmV4cG9ydCB0eXBlIElkQm90b25Gb3JtdWxhcmlvID0gJ0JGOkYxJyB8ICdCRjpGMicgfCAnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZENvbnNpc3RlbmNpYSA9ICdDT05TMScgfCAnQ09OUzInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRUZXh0byA9ICdEMzBfUkVGJyB8ICdNRVNfUkVGJyB8ICdTRU1fUkVGJyB8ICdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQ29tb2RpbiA9ICdEMzBfUkVGJyB8ICdNRVNfUkVGJyB8ICdTRU1fUkVGJyB8ICdTRU1fTlVNJyB8ICdyZXNwczEnIHwgJ3BhcmVudHMxJyB8ICdyZXNwaTEnIHwgJ3BhcmVudGkxJyB8ICduamVmZScgfCAnZnJlYWxpeicgfCAnY2FudF9ob2dhcmVzJ1xyXG5leHBvcnQgdHlwZSBJZEZpbHRybyA9ICdGSUxUUk8xJyB8ICdGSUxUUk8yJyB8ICdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQ2FzaWxsZXJvID0gSWRWYXJpYWJsZSB8IElkUHJlZ3VudGEgfCBJZEJsb3F1ZSB8IElkRm9ybXVsYXJpbyB8IElkRmlsdHJvIHwgSWRPcGNpb25cclxuZXhwb3J0IHR5cGUgSWRGaW4gPSAnZmluJzsgLy8gbmV2ZXIgLy8gVE9ETzogcG9kZXIgcG9uZXIgJ0ZJTidcclxuZXhwb3J0IHR5cGUgSWREZXN0aW5vID0gSWRQcmVndW50YSB8IElkQmxvcXVlIHwgSWRGaW4gfCBJZEZpbHRyb1xyXG5leHBvcnQgdHlwZSBWYWxvciA9IHN0cmluZyB8IG51bWJlciB8IG51bGw7XHJcbmV4cG9ydCB0eXBlIFRpcG9jRGVzdGlub3MgPSAnUCcgfCAnQ1AnIHwgJ0InIHwgJ0ZJTFRSTycgfCAnQkYnXHJcbmV4cG9ydCB0eXBlIFRpcG9jID0gVGlwb2NEZXN0aW5vcyB8ICdGJyB8ICdPJyB8ICdPTScgfCAnQ09OUycgfCAnVEVYVE8nIHwgJ0xJQlJFJyB8ICdQTUFUUklaJ1xyXG5cclxuZXhwb3J0IHR5cGUgRXNwZWNpYWwgPSB7XHJcbiAgICBncHM/OiBib29sZWFuXHJcbiAgICBub1Njcm9sbD86IGJvb2xlYW5cclxuICAgIHNjcm9sbFRvPzogSWRWYXJpYWJsZSB8IElkRmluXHJcbiAgICBhdXRvaW5nPzogc3RyaW5nXHJcbiAgICBmbGV4RGlyZWN0aW9uPzogJ3JvdycgfCAnY29sdW1uJyB8ICdyb3ctcmV2ZXJzZScgfCAnY29sdW1uLXJldmVyc2UnXHJcbiAgICBjYW1wb3NSZXN1bWVuPzogc3RyaW5nW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWRUYXJlYSA9ICdlbmN1JyB8ICdyZWN1JyB8ICdzdXBlJyB8ICdpbmdyJztcclxuXHJcbmV4cG9ydCB0eXBlIEZlZWRiYWNrVmFyaWFibGUgPSBGZWVkYmFjazxJZFZhcmlhYmxlLCBJZEZpbj5cclxuXHJcbmV4cG9ydCB0eXBlIFRpcG9WYXJpYWJsZXMgPSAndGV4dG8nIHwgJ251bWVybycgfCAnZmVjaGEnIHwgJ2hvcmFzJyB8ICdob3JhJ1xyXG5cclxuZXhwb3J0IHR5cGUgRGVzcGxpZWd1ZSA9ICdob3Jpem9udGFsJyB8ICdvY3VsdGEnXHJcblxyXG5leHBvcnQgdHlwZSBDYXNpbGxlcm9CYXNlID0ge1xyXG4gICAgaWRfY2FzaWxsZXJvPzogc3RyaW5nXHJcbiAgICB0aXBvYzogVGlwb2NcclxuICAgIGNhc2lsbGVybzogSWRDYXNpbGxlcm9cclxuICAgIG5vbWJyZTogc3RyaW5nXHJcbiAgICBzYWx0bzogSWREZXN0aW5vIHwgSWRGaW4gfCBudWxsXHJcbiAgICBzYWx0b19uc19uYz86IElkRGVzdGlubyB8IElkRmluIHwgbnVsbFxyXG4gICAgdmVyX2lkOiBzdHJpbmcgfCBudWxsXHJcbiAgICBkZXNwbGllZ3VlRW5jYWJlemFkbzogJ2xhdGVyYWwnIHwgJ3N1cGVyaW9yJyB8IG51bGxcclxuICAgIGRlc3BsaWVndWVDb250ZW5pZG86ICd2ZXJ0aWNhbCcgfCAnaG9yaXpvbnRhbCcgfCBudWxsXHJcbiAgICBkZXNwbGllZ3VlVGlwb0lucHV0OiAndGVsJyB8IG51bGxcclxuICAgIGRlc3BsaWVndWVPY3VsdGE6IGJvb2xlYW4gfCBudWxsXHJcbiAgICBsZWVyOiBib29sZWFuIHwgbnVsbFxyXG4gICAgYWNsYXJhY2lvbjogc3RyaW5nIHwgbnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86IElkVmFyaWFibGUgfCBudWxsXHJcbiAgICB2YXJfbmFtZT86IElkVmFyaWFibGUgfCBudWxsXHJcbiAgICB2YXJfbmFtZV9lc3BlY2lhbD86IHN0cmluZyB8IG51bGxcclxuICAgIHRpcG92YXI/OiBUaXBvVmFyaWFibGVzIHwgJ29wY2lvbmVzJyB8ICdzaV9ubycgfCBudWxsXHJcbiAgICBjYXNpbGxlcm9zPzogQ2FzaWxsZXJvc0ltcGxlbWVudGFkb3NbXSB8IG51bGxcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXI/OiBzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXJfanM/OiBzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9hdXRvaW5ncmVzYXI/OiBzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9hdXRvaW5ncmVzYXJfanM/OiBzdHJpbmdcclxuICAgIGVzcGVjaWFsPzogRXNwZWNpYWxcclxuICAgIGNhbGN1bGFkYT86IGJvb2xlYW4gfCBudWxsXHJcbiAgICBvcHRhdGl2bz86IGJvb2xlYW4gfCBudWxsXHJcbiAgICBsaWJyZT86IGJvb2xlYW4gfCBudWxsXHJcbiAgICB2YWxvcl9uc19uYz86IGFueVxyXG4gICAgZGVzcGxpZWd1ZT86IHN0cmluZyB8IG51bGxcclxuICAgIGxvbmdpdHVkPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbiA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ08nXHJcbiAgICBjYXNpbGxlcm86IElkT3BjaW9uXHJcbiAgICBjYXNpbGxlcm9zOiBQcmVndW50YVNpbXBsZVtdXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzogbnVsbFxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvblNpID0gT3BjaW9uICYge1xyXG4gICAgY2FzaWxsZXJvOiAxXHJcbiAgICBub21icmU6ICdTw60nXHJcbiAgICBjYXNpbGxlcm9zOiBQcmVndW50YVNpbXBsZVtdXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbk5vID0gT3BjaW9uICYge1xyXG4gICAgY2FzaWxsZXJvOiAyXHJcbiAgICBub21icmU6ICdObydcclxuICAgIGNhc2lsbGVyb3M6IFByZWd1bnRhU2ltcGxlW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3BjaW9uTXVsdGlwbGUgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6ICdPTSdcclxuICAgIHRpcG92YXI6ICdvcGNpb25lcydcclxuICAgIHZhcl9uYW1lOiBJZFZhcmlhYmxlXHJcbiAgICBjYXNpbGxlcm9zOiBbT3BjaW9uU2ksIE9wY2lvbk5vXVxyXG4gICAgY2FsY3VsYWRhPzogYm9vbGVhblxyXG4gICAgbGlicmU/OiBib29sZWFuXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFCYXNlID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnUCdcclxuICAgIG9wdGF0aXZvOiBib29sZWFuIHwgbnVsbFxyXG4gICAgY2FzaWxsZXJvOiBJZFByZWd1bnRhXHJcbiAgICBjYWxjdWxhZGE6IGJvb2xlYW4gfCBudWxsXHJcbiAgICBsaWJyZTogYm9vbGVhbiB8IG51bGxcclxuICAgIHZhbG9yX25zX25jOiBhbnlcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFTaW1wbGUgPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOiBUaXBvVmFyaWFibGVzXHJcbiAgICB2YXJfbmFtZTogSWRWYXJpYWJsZVxyXG4gICAgbG9uZ2l0dWQ6IHN0cmluZ1xyXG4gICAgc2FsdG9fbnNfbmM6IElkRGVzdGlubyB8IElkRmluIHwgbnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFTaW1wbGVbXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvblNpTm8gPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOiAnc2lfbm8nXHJcbiAgICB2YXJfbmFtZTogSWRWYXJpYWJsZVxyXG4gICAgc2FsdG9fbnNfbmM6IElkRGVzdGlubyB8IElkRmluIHwgbnVsbFxyXG4gICAgY2FzaWxsZXJvczogW09wY2lvblNpLCBPcGNpb25Ob11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFDb25PcGNpb25lcyA9IFByZWd1bnRhQmFzZSAmIHtcclxuICAgIHRpcG92YXI6ICdvcGNpb25lcydcclxuICAgIHZhcl9uYW1lOiBJZFZhcmlhYmxlXHJcbiAgICBzYWx0b19uc19uYzogSWREZXN0aW5vIHwgSWRGaW4gfCBudWxsXHJcbiAgICBjYXNpbGxlcm9zOiBPcGNpb25bXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvbk9wY2lvbmVzTXVsdGlwbGVzID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgY2FzaWxsZXJvczogT3BjaW9uTXVsdGlwbGVbXVxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhID0gUHJlZ3VudGFTaW1wbGUgfCBQcmVndW50YUNvblNpTm8gfCBQcmVndW50YUNvbk9wY2lvbmVzIHwgUHJlZ3VudGFDb25PcGNpb25lc011bHRpcGxlc1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uanVudG9QcmVndW50YXMgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6ICdDUCdcclxuICAgIGNhc2lsbGVybzogSWRQcmVndW50YVxyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFbXVxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbi8qXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUNvbnRlbmlkbyBleHRlbmRzIENhc2lsbGVyb0Jhc2Uge1xyXG4gICAgY2FzaWxsZXJvczpJQ29udGVuaWRvW11cclxufVxyXG4qL1xyXG5cclxuZXhwb3J0IHR5cGUgRmlsdHJvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnRklMVFJPJ1xyXG4gICAgY2FzaWxsZXJvOiBJZEZpbHRyb1xyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86IG51bGxcclxuICAgIGNhbGN1bGFkYT86IG51bGxcclxuICAgIGxpYnJlPzogbnVsbFxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENvbnRlbmlkb0Zvcm11bGFyaW8gPSBCbG9xdWUgfCBQcmVndW50YSB8IENvbmp1bnRvUHJlZ3VudGFzIHwgRmlsdHJvIHwgQm90b25Gb3JtdWxhcmlvIHwgQ29uc2lzdGVuY2lhIHwgVGV4dG9cclxuXHJcbmV4cG9ydCB0eXBlIEJsb3F1ZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ0InXHJcbiAgICBjYXNpbGxlcm86IElkQmxvcXVlXHJcbiAgICBjYXNpbGxlcm9zOiBDb250ZW5pZG9Gb3JtdWxhcmlvW11cclxuICAgIHZhcl9uYW1lPzogbnVsbFxyXG4gICAgdGlwb3Zhcj86IG51bGxcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86IElkVW5pZGFkQW5hbGlzaXNcclxuICAgIHNhbHRvX25zX25jPzogbnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25zaXN0ZW5jaWEgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6ICdDT05TJ1xyXG4gICAgY2FzaWxsZXJvOiBJZENvbnNpc3RlbmNpYVxyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86IG51bGxcclxuICAgIHNhbHRvX25zX25jPzogbnVsbFxyXG59XHJcbmV4cG9ydCB0eXBlIFRleHRvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnVEVYVE8nXHJcbiAgICBjYXNpbGxlcm86IElkVGV4dG9cclxuICAgIHZhcl9uYW1lPzogbnVsbFxyXG4gICAgdGlwb3Zhcj86IG51bGxcclxuICAgIHByaW1lcmFfdmFyaWFibGU/OiBudWxsXHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5leHBvcnQgdHlwZSBMaWJyZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ0xJQlJFJ1xyXG4gICAgY2FzaWxsZXJvOiBJZFRleHRvXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzogbnVsbFxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgQm90b25Gb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnQkYnXHJcbiAgICBjYXNpbGxlcm86IElkQm90b25Gb3JtdWxhcmlvXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzogSWRWYXJpYWJsZSB8IG51bGxcclxuICAgIHZhcl9uYW1lc19CRj86IElkVmFyaWFibGVbXVxyXG4gICAgbG9uZ2l0dWQ/OiBzdHJpbmdcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86IElkVW5pZGFkQW5hbGlzaXNcclxuICAgIHNhbHRvX25zX25jPzogbnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBGb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnRidcclxuICAgIGNhc2lsbGVybzogSWRGb3JtdWxhcmlvXHJcbiAgICBmb3JtdWxhcmlvX3ByaW5jaXBhbDogYm9vbGVhblxyXG4gICAgY2FzaWxsZXJvczogQ29udGVuaWRvRm9ybXVsYXJpb1tdXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBoZXJtYW5vPzogdHJ1ZVxyXG4gICAgdW5pZGFkX2FuYWxpc2lzOiBJZFVuaWRhZEFuYWxpc2lzXHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUE1hdHJpeiA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ1BNQVRSSVonXHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FzaWxsZXJvc0ltcGxlbWVudGFkb3MgPSBGb3JtdWxhcmlvIHwgQmxvcXVlIHwgRmlsdHJvIHwgQ29uanVudG9QcmVndW50YXMgfCBQcmVndW50YSB8IE9wY2lvbk11bHRpcGxlIHwgT3BjaW9uIHwgQm90b25Gb3JtdWxhcmlvIHwgQ29uc2lzdGVuY2lhIHwgVGV4dG8gfCBMaWJyZSB8IFBNYXRyaXpcclxuXHJcbmV4cG9ydCB0eXBlIENhbXBvUGtSYWl6ID0gJ3ZpdmllbmRhJyB8ICdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgVmFsdWVQa1JhaXogPSBJZEVuY1xyXG5cclxuZXhwb3J0IHR5cGUgRm9yUGtSYWl6ID0ge1xyXG4gICAgZm9ybXVsYXJpbzogSWRGb3JtdWxhcmlvXHJcbn0gJiB7XHJcbiAgICBbY2FtcG8gaW4gQ2FtcG9Qa1JhaXpdOiBWYWx1ZVBrUmFpelxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDYW1wb1BrID0gJ3ZpdmllbmRhJyB8ICdob2dhcicgfCAncGVyc29uYScgfCAnZXRjLi4uJztcclxuZXhwb3J0IHR5cGUgRm9yUGsgPSBGb3JQa1JhaXogJiB7XHJcbiAgICBbY2FtcG8gaW4gQ2FtcG9Qa10/OiBudW1iZXJcclxufVxyXG5leHBvcnQgdHlwZSBQbGFpbkZvclBrID0gJ3tcImZvcm11bGFyaW9cIjpcIkY6RjFcIixcInZpdmllbmRhXCI6XCIxMDIwMlwiLFwicGVyc29uYVwiOm51bGx9JyB8ICdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgT2JqZXRvTnVtZXJhZG9PQXJyYXk8VD4gPSBUW10gfCB7IFtuIGluIG51bWJlcl06IFQgfVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3Rhc1VuYVVBID0ge1xyXG4gICAgW3ByZWd1bnRhIGluIElkVmFyaWFibGVdOiBWYWxvclxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFMYXNVQSA9IHtcclxuICAgIFt1YSBpbiBJZFVuaWRhZEFuYWxpc2lzXTogT2JqZXRvTnVtZXJhZG9PQXJyYXk8UmVzcHVlc3Rhcz5cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ29kUmVhTm9SZWEgPSB7XHJcbiAgICBjb2RSZWE6IG51bWJlciB8IG51bGwsXHJcbiAgICBjb2ROb1JlYTogbnVtYmVyIHwgbnVsbCxcclxuICAgIGNvZFJlYVN1cDogbnVtYmVyIHwgbnVsbCxcclxuICAgIGNvZE5vUmVhU3VwOiBudW1iZXIgfCBudWxsLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBSZXN1bHRhZG9SZXN1bWVuID0gQ29kUmVhTm9SZWEgJiB7XHJcbiAgICByZXN1bWVuRXN0YWRvOiBSZXN1bWVuRXN0YWRvLFxyXG4gICAgcmVzdW1lbkVzdGFkb1N1cDogUmVzdW1lbkVzdGFkbyxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3RhcyA9IFJlc3B1ZXN0YXNVbmFVQSAmIFJlc3B1ZXN0YUxhc1VBXHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFzUmFpeiA9IFJlc3B1ZXN0YXMgJiBSZXN1bHRhZG9SZXN1bWVuICYge1xyXG4gICAgJGRpcnR5OiBib29sZWFuXHJcbn1cclxuXHJcbi8qXHJcbiAgICBhY2xhcmFjacOzbjpcclxuICAgIHt2MToneCcsIHYyOid4JywgcGVyc29uYXM6W3twMToxLCBwMjoneH0se3AxOjIsIHAyOnh9XSwgbWFzY290YXM6W10gfVxyXG4gICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4qL1xyXG5cclxuZXhwb3J0IHR5cGUgVW5pZGFkQW5hbGlzaXMgPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBwYWRyZT86IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBwa19hZ3JlZ2FkYTogQ2FtcG9QayxcclxuICAgIHByaW5jaXBhbD86IGJvb2xlYW4sXHJcbiAgICBoaWphczogeyBbayBpbiBJZFVuaWRhZEFuYWxpc2lzXT86IFVuaWRhZEFuYWxpc2lzIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVEVNID0ge1xyXG4gICAgbm9tY2FsbGU6IHN0cmluZ1xyXG4gICAgZG9taW5pbzogbnVtYmVyXHJcbiAgICBzZWN0b3I6IHN0cmluZ1xyXG4gICAgZWRpZmljaW86IHN0cmluZ1xyXG4gICAgZW50cmFkYTogc3RyaW5nXHJcbiAgICBucm9jYXRhc3RyYWw6IHN0cmluZ1xyXG4gICAgcGlzbzogc3RyaW5nXHJcbiAgICBkZXBhcnRhbWVudG86IHN0cmluZ1xyXG4gICAgaGFiaXRhY2lvbjogc3RyaW5nXHJcbiAgICBjYXNhOiBzdHJpbmdcclxuICAgIHByaW9yaWRhZDogMSB8IDIgfCAzXHJcbiAgICBvYnNlcnZhY2lvbmVzOiBzdHJpbmdcclxuICAgIHNlbGVjY2lvbmFkbzogbnVtYmVyLFxyXG4gICAgY2l0YT86IHN0cmluZyxcclxuICAgIGNhcmdhOiBzdHJpbmcsXHJcbiAgICBzZW1hbmE/OiBudW1iZXJcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzdW1lbkVzdGFkbyA9ICd2YWNpbycgfCAnY29uIHByb2JsZW1hcycgfCAnaW5jb21wbGV0bycgfCAnb2snIHwgJ25vIHJlYScgfCAnY2l0YSBwYWN0YWRhJztcclxuXHJcbmV4cG9ydCB0eXBlIEluZm9UYXJlYSA9IHtcclxuICAgIHRhcmVhOiBJZFRhcmVhXHJcbiAgICBub3Rhcz86IHN0cmluZ1xyXG4gICAgZmVjaGFfYXNpZ25hY2lvbj86IERhdGVcclxuICAgIGFzaWduYWRvPzogc3RyaW5nXHJcbiAgICBtYWluX2Zvcm06IElkRm9ybXVsYXJpb1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBWaXNpdGEgPSB7XHJcbiAgICBmZWNoYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaG9yYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaWRwZXI6IHN0cmluZyB8IG51bGxcclxuICAgIG9ic2VydmFjaW9uZXM6IHN0cmluZyB8IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGF0b3NIZHJVYVBwYWwgPSB7XHJcbiAgICB0YXJlYTogSW5mb1RhcmVhXHJcbiAgICB0ZW06IFRFTVxyXG5cclxuICAgIC8qXHJcbiAgICAgICAgYWNsYXJhY2nDs246XHJcbiAgICAgICAge3YxOid4JywgdjI6J3gnLCBwZXJzb25hczpbe3AxOjEsIHAyOid4fSx7cDE6MiwgcDI6eH1dLCBtYXNjb3RhczpbXSB9XHJcbiAgICAgICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4gICAgKi9cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWRDYXJnYSA9IFwiMVwiIHwgXCIyXCIgfCBcImV0Y1wiXHJcblxyXG5leHBvcnQgdHlwZSBFc3RhZG9DYXJnYSA9ICdyZXN1bWVuJyB8ICdyZWxldmFtaWVudG8nIHwgJ3JlY2libydcclxuXHJcbmV4cG9ydCB0eXBlIENhcmdhID0ge1xyXG4gICAgZmVjaGE6IERhdGVcclxuICAgIGVzdGFkb19jYXJnYTogRXN0YWRvQ2FyZ2FcclxuICAgIG5lY2VzYXJpYXM6IG51bWJlclxyXG4gICAgb2JzZXJ2YWNpb25lczogc3RyaW5nXHJcbiAgICByZWNlcGNpb25pc3RhOiBzdHJpbmdcclxuICAgIHB1ZWRlX2F1dG9nZW5lcmFyOiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhcmdhcyA9IHtcclxuICAgIFtpZENhcmdhIGluIElkQ2FyZ2FdOiBDYXJnYVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhUm93VmFsaWRhdG9yID0gU3RydWN0dXJlPElkVmFyaWFibGUsIFZhbG9yLCBJZEZpbj47XHJcblxyXG5leHBvcnQgdHlwZSBNb2RvRGVzcGxpZWd1ZSA9ICdtZXRhZGF0b3MnIHwgJ3JlbGV2YW1pZW50bycgfCAnUERGJ1xyXG5cclxuZXhwb3J0IHR5cGUgUGFudGFsbGFOYXZlZ2FjaW9uID0gJ2hkcicgfCAnc2luY3Jvbml6YWNpb24nIHwgJ3NpbmNyb25pemFjaW9uX3JlcXVlcmlkYScgfCAnbW9kbyc7XHJcblxyXG5leHBvcnQgdHlwZSBJbmZvRm9ybXVsYXJpbyA9IHtcclxuICAgIGNhc2lsbGVyb3M6IEZvcm11bGFyaW8sIC8vIGNhc2lsbGVyb3MgYXBsYW5hZG9zXHJcbiAgICBlc3RydWN0dXJhUm93VmFsaWRhdG9yOiBFc3RydWN0dXJhUm93VmFsaWRhdG9yIC8vIGVzdHJ1Y3R1cmEgZGUgdmFyaWFibGVzIHBhcmEgZWwgUm93VmFsaWRhdG9yXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIElkUmVzdWx0YWRvID0gJ0FWRVJJR1VBUicgfCAnVE9ETyc7XHJcbmV4cG9ydCB0eXBlIElkU2VtYW5hID0gMSB8IDIgfCAnZXRjJ1xyXG5cclxuZXhwb3J0IHR5cGUgU2VtYW5hID0ge1xyXG4gICAgb3BlcmF0aXZvOiBJZE9wZXJhdGl2bztcclxuICAgIHNlbWFuYTogbnVtYmVyO1xyXG4gICAgc2VtYW5hX3JlZmVyZW5jaWFfZGVzZGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc2VtYW5hX3JlZmVyZW5jaWFfaGFzdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgJzMwZGlhc19yZWZlcmVuY2lhX2Rlc2RlJz86IHN0cmluZyB8IG51bGw7XHJcbiAgICAnMzBkaWFzX3JlZmVyZW5jaWFfaGFzdGEnPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG1lc19yZWZlcmVuY2lhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNhcmdhX2VuY19kZXNkZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYXJnYV9lbmNfaGFzdGE/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY2FyZ2FfcmVjdV9kZXNkZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYXJnYV9yZWN1X2hhc3RhPzogc3RyaW5nIHwgbnVsbDtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFRhcmVhc0VzdHJ1Y3R1cmEgPSB7XHJcbiAgICBbaWRUYXJlYSBpbiBJZFRhcmVhXToge1xyXG4gICAgICAgIHJlc3VsdGFkb3M6IHtcclxuICAgICAgICAgICAgW2lkUmVzdWx0YWRvIGluIElkUmVzdWx0YWRvXToge1xyXG4gICAgICAgICAgICAgICAgZGVzY3JpcGNpb246IHN0cmluZ1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBUaXBvQ29uZGljaW9uID0gJ25vX3JlYScgfCAnbm9fcmVhX3N1cCcgfCAncmVhJyB8ICdyZWFfc3VwJztcclxuXHJcbmV4cG9ydCB0eXBlIE5vUmVhID0ge1xyXG4gICAgb3BlcmF0aXZvOiBzdHJpbmdcclxuICAgIG5vX3JlYTogbnVtYmVyO1xyXG4gICAgZGVzY3JpcGNpb246IHN0cmluZztcclxuICAgIGdydXBvOiBzdHJpbmc7XHJcbiAgICB2YXJpYWJsZTogc3RyaW5nO1xyXG4gICAgdmFsb3I6IHN0cmluZztcclxuICAgIGdydXBvMDogc3RyaW5nO1xyXG4gICAgb3JkZW46IG51bWJlcjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIE5vUmVhU3VwID0ge1xyXG4gICAgb3BlcmF0aXZvOiBzdHJpbmdcclxuICAgIG5vX3JlYV9zdXA6IG51bWJlcjtcclxuICAgIGRlc2Nfbm9yZWFfc3VwOiBzdHJpbmc7XHJcbiAgICBncnVwb19zdXA6IHN0cmluZztcclxuICAgIHZhcmlhYmxlX3N1cDogc3RyaW5nO1xyXG4gICAgdmFsb3Jfc3VwOiBzdHJpbmc7XHJcbiAgICBncnVwbzBfc3VwOiBzdHJpbmc7XHJcbiAgICBvcmRlbjogbnVtYmVyO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgUmVhID0ge1xyXG4gICAgb3BlcmF0aXZvOiBzdHJpbmdcclxuICAgIHJlYTogbnVtYmVyO1xyXG4gICAgZGVzY3JpcGNpb246IHN0cmluZztcclxuICAgIGNvbmRpY2lvbjogc3RyaW5nO1xyXG4gICAgY29uZGljaW9uX2pzOiBzdHJpbmc7XHJcbiAgICBvcmRlbjogbnVtYmVyO1xyXG4gICAgZXNfcG9zaXRpdmE6IGJvb2xlYW47XHJcbiAgICB0YXJlYTogc3RyaW5nIHwgbnVsbDtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFJlYVN1cCA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICByZWFfc3VwOiBudW1iZXI7XHJcbiAgICBkZXNjcmlwY2lvbjogc3RyaW5nO1xyXG4gICAgY29uZGljaW9uOiBzdHJpbmc7XHJcbiAgICBjb25kaWNpb25fanM6IHN0cmluZztcclxuICAgIG9yZGVuOiBudW1iZXI7XHJcbiAgICBlc19wb3NpdGl2YTogYm9vbGVhbjtcclxuICAgIHRhcmVhOiBzdHJpbmcgfCBudWxsO1xyXG59O1xyXG5cclxuLy8gTWFwZW8gZGUgdGlwb3MgcGFyYSBhc29jaWFyIGVsIHN0cmluZyBkZSBsYSBjb25kaWNpw7NuIGNvbiBzdSBpbnRlcmZheiBjb3JyZXNwb25kaWVudGVcclxuZXhwb3J0IHR5cGUgTWFwZW9UaXBvSXRlbSA9IHtcclxuICAgICdyZWEnOiBSZWE7XHJcbiAgICAnbm9fcmVhJzogTm9SZWE7XHJcbiAgICAncmVhX3N1cCc6IFJlYVN1cDtcclxuICAgICdub19yZWFfc3VwJzogTm9SZWFTdXA7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhID0ge1xyXG4gICAgZm9ybXVsYXJpb3M6IHtcclxuICAgICAgICBbbm9tYnJlRm9ybXVsYXJpbyBpbiBJZEZvcm11bGFyaW9dOiBJbmZvRm9ybXVsYXJpb1xyXG4gICAgfTtcclxuICAgIHVuaWRhZGVzX2FuYWxpc2lzOiB7XHJcbiAgICAgICAgW2lkVW5pZGFkQW5hbGlzaXMgaW4gSWRVbmlkYWRBbmFsaXNpc106IFVuaWRhZEFuYWxpc2lzXHJcbiAgICB9O1xyXG4gICAgdGFyZWFzOiBUYXJlYXNFc3RydWN0dXJhO1xyXG4gICAgdWFQcGFsOiBJZFVuaWRhZEFuYWxpc2lzO1xyXG4gICAgcGtBZ3JlZ2FkYVVhUHBhbDogQ2FtcG9Qa1JhaXo7XHJcbiAgICB0aW1lc3RhbXA6IG51bWJlcjtcclxuICAgIG9wZXJhdGl2bzogSWRPcGVyYXRpdm87XHJcbiAgICBjb25maWdTb3J0ZW86IENvbmZpZ3VyYWNpb25Tb3J0ZW87XHJcbiAgICBoYWJpbGl0YWNpb25Cb3RvbkZvcm11bGFyaW86IENvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW87XHJcbiAgICBjb25SZWFIb2dhcjogYm9vbGVhbjtcclxuICAgIG5vUmVhczogTm9SZWFbXTtcclxuICAgIG5vUmVhc1N1cDogTm9SZWFTdXBbXTtcclxuICAgIHJlYXM6IFJlYVtdO1xyXG4gICAgcmVhc1N1cDogUmVhU3VwW107XHJcbiAgICBzZW1hbmFzOiB7IFtpZFNlbWFuYSBpbiBJZFNlbWFuYV06IFNlbWFuYSB9O1xyXG4gICAgZGVmYXVsdEluZm9ybWFjaW9uSGRyOiBEYXRvc0hkclVhUHBhbDtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIElkRW5jID0gMTMwMDMxIHwgMTMwMDMyO1xyXG5leHBvcnQgdHlwZSBJbmZvcm1hY2lvbkhkciA9IHsgW2VuYyBpbiBJZEVuY106IERhdG9zSGRyVWFQcGFsIH1cclxuXHJcbmV4cG9ydCB0eXBlIENhc29TdGF0ZSA9IHtcclxuICAgIG9wY2lvbmVzOiB7IC8vIGRhdG9zIGRlIG5hdmVnYWNpw7NuIHF1ZSBlbGlqZSBlbCB1c3VhcmlvXHJcbiAgICAgICAgZm9yUGs6IEZvclBrIHwgbnVsbCAvLyDDrW5kaWNlIGRlbnRybyBkZSBsYXMgdW5pZGFkZXMgZGUgYW7DoWxpc2lzLiBOdWxsID0gZW4gaG9qYSBkZSBydXRhXHJcbiAgICAgICAgcGlsYUZvclBrOiBGb3JQa1tdXHJcbiAgICAgICAgbW9kb0Rlc3BsaWVndWU6IE1vZG9EZXNwbGllZ3VlXHJcbiAgICAgICAgbW9kb0RpcmVjdG86IGJvb2xlYW5cclxuICAgICAgICBtb2RvQm9ycmFyUmVzcHVlc3RhOiBJZFZhcmlhYmxlIHwgbnVsbFxyXG4gICAgICAgIGNvbkNhbXBvT3BjaW9uZXM6IGJvb2xlYW5cclxuICAgICAgICBzYWx0b0F1dG9tYXRpY286IGJvb2xlYW5cclxuICAgICAgICBwYW50YWxsYUFjdHVhbDogUGFudGFsbGFOYXZlZ2FjaW9uXHJcbiAgICAgICAgYXZpc29QZXJzaXN0ZW50ZTogeyB0aXBvOiAnaW5mbycgfCAnc3VjY2VzcycgfCAnZXJyb3InLCBtZW5zYWplOiBzdHJpbmd9IHwgbnVsbFxyXG4gICAgICAgIGNvbW9kaW5lczoge1tpZENvbW9kaW4gaW4gSWRDb21vZGluXT86IHN0cmluZ31cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzdWx0YWRvUmVhTm9SZWE8SyBleHRlbmRzIGtleW9mIENvZFJlYU5vUmVhLCBCIGV4dGVuZHMgc3RyaW5nPiA9IHtcclxuICAgIFtQIGluIEtdOiBDb2RSZWFOb1JlYVtLXTtcclxufSAmIHtcclxuICAgIFtQIGluIEJdOiBib29sZWFuO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgRnVuY2lvbmVzQ2FsY3Vsb1JlYU5vUmVhID0ge1xyXG4gIGVzTm9SZWE6IChyZXNwdWVzdGFzOiBSZXNwdWVzdGFzLCB0YXJlYTogc3RyaW5nKSA9PiBSZXN1bHRhZG9SZWFOb1JlYTwnY29kTm9SZWEnLCAnZXNOb1JlYSc+O1xyXG4gIGVzTm9SZWFTdXA6IChyZXNwdWVzdGFzOiBSZXNwdWVzdGFzLCB0YXJlYTogc3RyaW5nKSA9PiBSZXN1bHRhZG9SZWFOb1JlYTwnY29kTm9SZWFTdXAnLCAnZXNOb1JlYVN1cCc+O1xyXG4gIGVzUmVhbGl6YWRhOiAocmVzcHVlc3RhczogUmVzcHVlc3RhcywgdGFyZWE6IHN0cmluZykgPT4gUmVzdWx0YWRvUmVhTm9SZWE8J2NvZFJlYScsICdlc1JlYSc+O1xyXG4gIGVzUmVhbGl6YWRhU3VwOiAocmVzcHVlc3RhczogUmVzcHVlc3RhcywgdGFyZWE6IHN0cmluZykgPT4gUmVzdWx0YWRvUmVhTm9SZWE8J2NvZFJlYVN1cCcsICdlc1JlYVN1cCc+O1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgRGVmT3BlcmF0aXZvID0gRnVuY2lvbmVzQ2FsY3Vsb1JlYU5vUmVhICYge1xyXG4gICAgVUFwcmluY2lwYWw6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBkZWZVQTogeyBbaSBpbiBJZFVuaWRhZEFuYWxpc2lzXTogeyBwazogSWRWYXJpYWJsZSwgaW5jbHVpZGFzOiBJZFVuaWRhZEFuYWxpc2lzW10sIGlkc0ZvcjogSWRGb3JtdWxhcmlvW10gfSB9LFxyXG4gICAgZGVmRm9yOiB7IFtmIGluIElkRm9ybXVsYXJpb106IHsvKmFyYm9sVUE6SWRVbmlkYWRBbmFsaXNpc1tdLCAqLyBoZXJtYW5vPzogdHJ1ZSB9IH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGF0b3NCeVBhc3NQZXJzaXN0aWJsZXMgPSB7XHJcbiAgICByZXNwdWVzdGFzOiB7IFt1YSBpbiBJZFVuaWRhZEFuYWxpc2lzXTogUmVzcHVlc3Rhc1JhaXpbXSB9XHJcbiAgICBtb2RvQWxtYWNlbmFtaWVudG86IE1vZG9BbG1hY2VuYW1pZW50b1xyXG4gICAgcGVyc29uYTogc3RyaW5nXHJcbiAgICB0YXJlYTogSWRUYXJlYVxyXG4gICAgaWRwZXI6IHN0cmluZ1xyXG4gICAgY2FyZ2FzOiBDYXJnYXNcclxuICAgIGluZm9ybWFjaW9uSGRyOiBJbmZvcm1hY2lvbkhkclxyXG4gICAgc29sb0xlY3R1cmE6IGJvb2xlYW5cclxuICAgIHRva2VuPzogc3RyaW5nXHJcbiAgICBudW1fc2luY3JvPzogbnVtYmVyXHJcbiAgICB0aW1lc3RhbXBFc3RydWN0dXJhPzogbnVtYmVyXHJcbiAgICBwZXJtaXRlQm9ycmFyRWxlbWVudG9zVUE/OiBib29sZWFuXHJcbn1cclxuXHJcbnR5cGUgQ29uZmlndXJhY2lvblNvcnRlb1RhYmxhID0ge1xyXG4gICAgbWV0b2RvOiBcInRhYmxhXCIsXHJcbiAgICBwYXJhbV9tZXRvZG86IHtcclxuICAgICAgICB0YWJsYTogc3RyaW5nW10sXHJcbiAgICAgICAgdmFyX2xldHJhOiBJZFZhcmlhYmxlLFxyXG4gICAgfVxyXG59XHJcblxyXG50eXBlIENvbmZpZ3VyYWNpb25Tb3J0ZW9IYXNoID0ge1xyXG4gICAgbWV0b2RvOiBcImhhc2hcIixcclxuICAgIHBhcmFtX21ldG9kbzoge1xyXG4gICAgICAgIHZhcl9jb2VmOiBbXHJcbiAgICAgICAgICAgIHsgdmFyOiBJZFZhcmlhYmxlLCBjb2VmOiBudW1iZXIgfSxcclxuICAgICAgICAgICAgeyB2YXI6IElkVmFyaWFibGUsIGNvZWY6IG51bWJlciB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgZGl2aXNvcjogbnVtYmVyXHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWNpb25Tb3J0ZW8gPSB7IFtrZXkgaW4gSWRGb3JtdWxhcmlvXTogQ29uZmlndXJhY2lvblNvcnRlb0Zvcm11bGFyaW8gfVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpbyA9IHsgW2tleSBpbiBJZEZvcm11bGFyaW9dOiBDb25maWd1cmFjaW9uSGFiaWxpdGFyQm90b25Gb3JtdWxhcmlvRm9ybSB9XHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uU29ydGVvRm9ybXVsYXJpbyA9IHtcclxuICAgIHVuaWRhZF9hbmFsaXNpczogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIHVuaWRhZF9hbmFsaXNpc19wYWRyZTogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIC8vZXhwcl9pbmNvbXBsZXRpdHVkOiBzdHJpbmcgLy9cIm5vdCAocDEpIG9yIG5vIHQgKHAyKSBvciBub3QocDMpXCJcclxuICAgIGV4cHJfaW5jb21wbGV0aXR1ZDoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTogeyBkb21pbmlvOiBudW1iZXIsIGV4cHI6IHN0cmluZyB9XHJcbiAgICB9XHJcbiAgICAvL2V4cHJfaW5jb21wbGV0aXR1ZF9qczogc3RyaW5nIC8vc2UgY3JlYSBhbCBjb21waWxhclxyXG4gICAgZXhwcl9pbmNvbXBsZXRpdHVkX2pzOiB7XHJcbiAgICAgICAgW2tleSBpbiBudW1iZXJdOiB7IGRvbWluaW86IG51bWJlciwgZXhwcjogc3RyaW5nIH1cclxuICAgIH1cclxuICAgIGRpc3BhcmFkb3I6IElkVmFyaWFibGUgLy9cInA5XCJcclxuICAgIC8vZmlsdHJvOiBzdHJpbmcgLy9cInAzPj0xOFwiXHJcbiAgICBmaWx0cm86IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06IHsgZG9taW5pbzogbnVtYmVyLCBleHByOiBzdHJpbmcgfVxyXG4gICAgfVxyXG4gICAgLy9maWx0cm9fanM6IHN0cmluZyAvL3NlIGNyZWEgYWwgY29tcGlsYXJcclxuICAgIGZpbHRyb19qczoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTogeyBkb21pbmlvOiBudW1iZXIsIGV4cHI6IHN0cmluZyB9XHJcbiAgICB9XHJcbiAgICBvcmRlbjoge1xyXG4gICAgICAgIHZhcmlhYmxlOiBJZFZhcmlhYmxlXHJcbiAgICAgICAgb3JkZW46IDEgfCAtMVxyXG4gICAgfVtdIC8vW1wicDNcIiwgXCJwMlwiLCBcInAxXCIsIFwicDBcIl0sIC8vIHAwIGVzIGNvbnN0cnVpZGEsIG5vIHZhIGVuIHBhcsOhbWV0cm9zLCBzZSBwb25lIHBhcmEgcXVlIGVsIG9yZGVuIHNlYSBkZXRlcm1pbsOtc3RpY29cclxuICAgIHBhcmFtZXRyb3M6IElkVmFyaWFibGVbXS8vIFtcInAxXCIsXCJwMlwiLFwicDNcIiwgXCJwNFwiLCBcInA1XCIsIFwicDZcIl0sIC8vIHZhcmlhYmxlcyBxdWUgYW51bGFuIGFsIGRpc3BhcmFkb3JcclxuICAgIGNhbnRpZGFkX3NvcnRlYWJsZXM6IElkVmFyaWFibGVcclxuICAgIGNhbnRpZGFkX3RvdGFsOiBJZFZhcmlhYmxlXHJcbiAgICByZXN1bHRhZG86IElkVmFyaWFibGUgLy9cInAxMVwiXHJcbiAgICByZXN1bHRhZG9fbWFudWFsOiBJZFZhcmlhYmxlIC8vXCJwMTFcIlxyXG4gICAgc29ydGVhZG9fbW9zdHJhcj86IHsgc291cmNlOiBJZFZhcmlhYmxlLCB0YXJnZXQ6IElkVmFyaWFibGUgfVtdLFxyXG4gICAgaW5jb21wbGV0YXM6IElkVmFyaWFibGVcclxuICAgIHZhcmlhYmxlQm90b25Gb3JtdWxhcmlvVUE6IElkVmFyaWFibGUvLyckQi5GOlMxX1AnXHJcbiAgICB2YXJpYWJsZUJvdG9uRm9ybXVsYXJpb1VBSW5kaXZpZHVhbD86IElkVmFyaWFibGUgLy8nJEIuRjpJMSdcclxuICAgIGlkX2Zvcm11bGFyaW9faW5kaXZpZHVhbD86IElkRm9ybXVsYXJpbyAvLyAnRjpJMSdcclxuICAgIGlkX2Zvcm11bGFyaW9fcGFkcmU/OiBJZEZvcm11bGFyaW8gLy8gJ0Y6UzEnXHJcbn0gJiAoQ29uZmlndXJhY2lvblNvcnRlb0hhc2ggfCBDb25maWd1cmFjaW9uU29ydGVvVGFibGEpXHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uSGFiaWxpdGFyQm90b25Gb3JtdWxhcmlvRm9ybSA9IHtcclxuICAgIHVuaWRhZF9hbmFsaXNpczogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIGV4cHJfaGFiaWxpdGFyX2JvdG9uOiBzdHJpbmcsXHJcbiAgICBleHByX2hhYmlsaXRhcl9ib3Rvbl9qczogc3RyaW5nLFxyXG4gICAgaGFiaWxpdGFyX2FncmVnYXJfbGlzdG86IGJvb2xlYW5cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvUGxhaW5Gb3JQayhmb3JQazogRm9yUGspOiBQbGFpbkZvclBrIHtcclxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShmb3JQaykgYXMgUGxhaW5Gb3JQaztcclxufVxyXG5cclxuZXhwb3J0IHZhciBpdGVyYXRvcjogPFQ+KG86IE9iamV0b051bWVyYWRvT0FycmF5PFQ+KSA9PiBJdGVyYWJsZTxUPiA9IExpa2VBci5pdGVyYXRvclxyXG5leHBvcnQgdmFyIGVtcHR5OiA8VD4obzogT2JqZXRvTnVtZXJhZG9PQXJyYXk8VD4gfCBudWxsIHwgdW5kZWZpbmVkKSA9PiBib29sZWFuID0gTGlrZUFyLmVtcHR5XHJcblxyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgICBuYW1lc3BhY2UgbXlPd24ge1xyXG4gICAgICAgIGludGVyZmFjZSBBZGRyUGFyYW1zIHtcclxuICAgICAgICAgICAgc3RhdGVfZm9yUGs6IHN0cmluZ1xyXG4gICAgICAgICAgICBzdGF0ZV9waWxhRm9yUGs6IHN0cmluZ1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGlyZWNjaW9uQWNjaW9uID0gJ2F2YW5jZScgfCAncmV0cm9jZXNvJyB8ICdibGFucXVlbydcclxuXHJcbmV4cG9ydCB0eXBlIEVzdGFkb0FjY2lvbiA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICBlc3RhZG86IHN0cmluZ1xyXG4gICAgZWFjY2lvbjogc3RyaW5nXHJcbiAgICBjb25kaWNpb246IHN0cmluZ1xyXG4gICAgZXN0YWRvX2Rlc3Rpbm86IHN0cmluZ1xyXG4gICAgZWFjY2lvbl9kaXJlY2Npb246IERpcmVjY2lvbkFjY2lvblxyXG4gICAgcGF0aF9pY29ub19zdmc6IHN0cmluZ1xyXG4gICAgbm9tYnJlX3Byb2NlZHVyZTogc3RyaW5nXHJcbiAgICBub21icmVfd3NjcmVlbjogc3RyaW5nXHJcbiAgICBkZXNhY3RpdmFfYm90b246IGJvb2xlYW5cclxuICAgIGNvbmZpcm1hOiBib29sZWFuXHJcbn1cclxuZXhwb3J0IHR5cGUgTW9kb0RNID0gJ3Byb2R1YycgfCAnY2FwYSc7Il19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5sb2dnZWQvdGlwb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFxbEJiLG9DQUVDO0lBcmxCRCxrQ0FBa0M7SUFtbEJsQyxTQUFnQixZQUFZLENBQUMsS0FBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFlLENBQUM7SUFDL0MsQ0FBQztJQUVVLFFBQUEsUUFBUSxHQUFtRCxNQUFNLENBQUMsUUFBUSxDQUFBO0lBQzFFLFFBQUEsS0FBSyxHQUFrRSxNQUFNLENBQUMsS0FBSyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcbmltcG9ydCB7IFN0cnVjdHVyZSwgRmVlZGJhY2sgfSBmcm9tIFwicm93LXZhbGlkYXRvclwiO1xyXG5pbXBvcnQgKiBhcyBMaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuXHJcbmV4cG9ydCB0eXBlIE1vZG9BbG1hY2VuYW1pZW50byA9ICdzZXNzaW9uJyB8IC8vIGN1YW5kbyBzZWEgcGFyYSB1bmEgc29sYSBwZXN0YcOxYSwgc2UgdXNhIGVuIG1vZG8gZGlyZWN0byxcclxuICAgICdsb2NhbCcgICAgLy8gcGFyYSB0b2RvIGVsIGRpc3Bvc2l0aXZvLCBzZSB1c2EgYWwgY2FyZ2FyIGhvamFzIGRlIHJ1dGEgZW50cmVzXHJcblxyXG5leHBvcnQgdHlwZSBJZE9wY2lvbiA9IG51bWJlclxyXG5leHBvcnQgdHlwZSBJZE9wZXJhdGl2byA9ICdldG9pMjExJyB8ICdlYWgyMDIyJyB8ICdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkVmFyaWFibGUgPSAndjEnIHwgJ3YyJyB8ICd2MycgfCAnZXRjLi4uJyB8ICd2ZG9taW5pbycgfCAnJHAwJ1xyXG5leHBvcnQgdHlwZSBJZFByZWd1bnRhID0gJ1AxJyB8ICdQMicgfCAnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZEJsb3F1ZSA9ICdCMScgfCAnQjInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRGb3JtdWxhcmlvID0gJ0YxJyB8ICdGMicgfCAnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFVuaWRhZEFuYWxpc2lzID0gJ3ZpdmllbmRhcycgfCAnaG9nYXJlcycgfCAncGVyc29uYXMnXHJcbmV4cG9ydCB0eXBlIElkQm90b25Gb3JtdWxhcmlvID0gJ0JGOkYxJyB8ICdCRjpGMicgfCAnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZENvbnNpc3RlbmNpYSA9ICdDT05TMScgfCAnQ09OUzInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRUZXh0byA9ICdEMzBfUkVGJyB8ICdNRVNfUkVGJyB8ICdTRU1fUkVGJyB8ICdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQ29tb2RpbiA9ICdEMzBfUkVGJyB8ICdNRVNfUkVGJyB8ICdTRU1fUkVGJyB8ICdTRU1fTlVNJyB8ICdyZXNwczEnIHwgJ3BhcmVudHMxJyB8ICdyZXNwaTEnIHwgJ3BhcmVudGkxJyB8ICduamVmZScgfCAnZnJlYWxpeicgfCAnY2FudF9ob2dhcmVzJ1xyXG5leHBvcnQgdHlwZSBJZEZpbHRybyA9ICdGSUxUUk8xJyB8ICdGSUxUUk8yJyB8ICdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQ2FzaWxsZXJvID0gSWRWYXJpYWJsZSB8IElkUHJlZ3VudGEgfCBJZEJsb3F1ZSB8IElkRm9ybXVsYXJpbyB8IElkRmlsdHJvIHwgSWRPcGNpb25cclxuZXhwb3J0IHR5cGUgSWRGaW4gPSAnZmluJzsgLy8gbmV2ZXIgLy8gVE9ETzogcG9kZXIgcG9uZXIgJ0ZJTidcclxuZXhwb3J0IHR5cGUgSWREZXN0aW5vID0gSWRQcmVndW50YSB8IElkQmxvcXVlIHwgSWRGaW4gfCBJZEZpbHRyb1xyXG5leHBvcnQgdHlwZSBWYWxvciA9IHN0cmluZyB8IG51bWJlciB8IG51bGw7XHJcbmV4cG9ydCB0eXBlIFRpcG9jRGVzdGlub3MgPSAnUCcgfCAnQ1AnIHwgJ0InIHwgJ0ZJTFRSTycgfCAnQkYnXHJcbmV4cG9ydCB0eXBlIFRpcG9jID0gVGlwb2NEZXN0aW5vcyB8ICdGJyB8ICdPJyB8ICdPTScgfCAnQ09OUycgfCAnVEVYVE8nIHwgJ0xJQlJFJyB8ICdQTUFUUklaJ1xyXG5cclxuZXhwb3J0IHR5cGUgRXNwZWNpYWwgPSB7XHJcbiAgICBncHM/OiBib29sZWFuXHJcbiAgICBub1Njcm9sbD86IGJvb2xlYW5cclxuICAgIHNjcm9sbFRvPzogSWRWYXJpYWJsZSB8IElkRmluXHJcbiAgICBhdXRvaW5nPzogc3RyaW5nXHJcbiAgICBmbGV4RGlyZWN0aW9uPzogJ3JvdycgfCAnY29sdW1uJyB8ICdyb3ctcmV2ZXJzZScgfCAnY29sdW1uLXJldmVyc2UnXHJcbiAgICBjYW1wb3NSZXN1bWVuPzogc3RyaW5nW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWRUYXJlYSA9ICdlbmN1JyB8ICdyZWN1JyB8ICdzdXBlJyB8ICdpbmdyJztcclxuXHJcbmV4cG9ydCB0eXBlIEZlZWRiYWNrVmFyaWFibGUgPSBGZWVkYmFjazxJZFZhcmlhYmxlLCBJZEZpbj5cclxuXHJcbmV4cG9ydCB0eXBlIFRpcG9WYXJpYWJsZXMgPSAndGV4dG8nIHwgJ251bWVybycgfCAnZmVjaGEnIHwgJ2hvcmFzJyB8ICdob3JhJ1xyXG5cclxuZXhwb3J0IHR5cGUgRGVzcGxpZWd1ZSA9ICdob3Jpem9udGFsJyB8ICdvY3VsdGEnXHJcblxyXG5leHBvcnQgdHlwZSBDYXNpbGxlcm9CYXNlID0ge1xyXG4gICAgaWRfY2FzaWxsZXJvPzogc3RyaW5nXHJcbiAgICB0aXBvYzogVGlwb2NcclxuICAgIGNhc2lsbGVybzogSWRDYXNpbGxlcm9cclxuICAgIG5vbWJyZTogc3RyaW5nXHJcbiAgICBzYWx0bzogSWREZXN0aW5vIHwgSWRGaW4gfCBudWxsXHJcbiAgICBzYWx0b19uc19uYz86IElkRGVzdGlubyB8IElkRmluIHwgbnVsbFxyXG4gICAgdmVyX2lkOiBzdHJpbmcgfCBudWxsXHJcbiAgICBkZXNwbGllZ3VlRW5jYWJlemFkbzogJ2xhdGVyYWwnIHwgJ3N1cGVyaW9yJyB8IG51bGxcclxuICAgIGRlc3BsaWVndWVDb250ZW5pZG86ICd2ZXJ0aWNhbCcgfCAnaG9yaXpvbnRhbCcgfCBudWxsXHJcbiAgICBkZXNwbGllZ3VlVGlwb0lucHV0OiAndGVsJyB8IG51bGxcclxuICAgIGRlc3BsaWVndWVPY3VsdGE6IGJvb2xlYW4gfCBudWxsXHJcbiAgICBsZWVyOiBib29sZWFuIHwgbnVsbFxyXG4gICAgYWNsYXJhY2lvbjogc3RyaW5nIHwgbnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86IElkVmFyaWFibGUgfCBudWxsXHJcbiAgICB2YXJfbmFtZT86IElkVmFyaWFibGUgfCBudWxsXHJcbiAgICB2YXJfbmFtZV9lc3BlY2lhbD86IHN0cmluZyB8IG51bGxcclxuICAgIHRpcG92YXI/OiBUaXBvVmFyaWFibGVzIHwgJ29wY2lvbmVzJyB8ICdzaV9ubycgfCBudWxsXHJcbiAgICBjYXNpbGxlcm9zPzogQ2FzaWxsZXJvc0ltcGxlbWVudGFkb3NbXSB8IG51bGxcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXI/OiBzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXJfanM/OiBzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9hdXRvaW5ncmVzYXI/OiBzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9hdXRvaW5ncmVzYXJfanM/OiBzdHJpbmdcclxuICAgIGVzcGVjaWFsPzogRXNwZWNpYWxcclxuICAgIGNhbGN1bGFkYT86IGJvb2xlYW4gfCBudWxsXHJcbiAgICBvcHRhdGl2bz86IGJvb2xlYW4gfCBudWxsXHJcbiAgICBsaWJyZT86IGJvb2xlYW4gfCBudWxsXHJcbiAgICB2YWxvcl9uc19uYz86IGFueVxyXG4gICAgZGVzcGxpZWd1ZT86IHN0cmluZyB8IG51bGxcclxuICAgIGxvbmdpdHVkPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbiA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ08nXHJcbiAgICBjYXNpbGxlcm86IElkT3BjaW9uXHJcbiAgICBjYXNpbGxlcm9zOiBQcmVndW50YVNpbXBsZVtdXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzogbnVsbFxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvblNpID0gT3BjaW9uICYge1xyXG4gICAgY2FzaWxsZXJvOiAxXHJcbiAgICBub21icmU6ICdTw60nXHJcbiAgICBjYXNpbGxlcm9zOiBQcmVndW50YVNpbXBsZVtdXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbk5vID0gT3BjaW9uICYge1xyXG4gICAgY2FzaWxsZXJvOiAyXHJcbiAgICBub21icmU6ICdObydcclxuICAgIGNhc2lsbGVyb3M6IFByZWd1bnRhU2ltcGxlW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3BjaW9uTXVsdGlwbGUgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6ICdPTSdcclxuICAgIHRpcG92YXI6ICdvcGNpb25lcydcclxuICAgIHZhcl9uYW1lOiBJZFZhcmlhYmxlXHJcbiAgICBjYXNpbGxlcm9zOiBbT3BjaW9uU2ksIE9wY2lvbk5vXVxyXG4gICAgY2FsY3VsYWRhPzogYm9vbGVhblxyXG4gICAgbGlicmU/OiBib29sZWFuXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFCYXNlID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnUCdcclxuICAgIG9wdGF0aXZvOiBib29sZWFuIHwgbnVsbFxyXG4gICAgY2FzaWxsZXJvOiBJZFByZWd1bnRhXHJcbiAgICBjYWxjdWxhZGE6IGJvb2xlYW4gfCBudWxsXHJcbiAgICBsaWJyZTogYm9vbGVhbiB8IG51bGxcclxuICAgIHZhbG9yX25zX25jOiBhbnlcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFTaW1wbGUgPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOiBUaXBvVmFyaWFibGVzXHJcbiAgICB2YXJfbmFtZTogSWRWYXJpYWJsZVxyXG4gICAgbG9uZ2l0dWQ6IHN0cmluZ1xyXG4gICAgc2FsdG9fbnNfbmM6IElkRGVzdGlubyB8IElkRmluIHwgbnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFTaW1wbGVbXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvblNpTm8gPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOiAnc2lfbm8nXHJcbiAgICB2YXJfbmFtZTogSWRWYXJpYWJsZVxyXG4gICAgc2FsdG9fbnNfbmM6IElkRGVzdGlubyB8IElkRmluIHwgbnVsbFxyXG4gICAgY2FzaWxsZXJvczogW09wY2lvblNpLCBPcGNpb25Ob11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFDb25PcGNpb25lcyA9IFByZWd1bnRhQmFzZSAmIHtcclxuICAgIHRpcG92YXI6ICdvcGNpb25lcydcclxuICAgIHZhcl9uYW1lOiBJZFZhcmlhYmxlXHJcbiAgICBzYWx0b19uc19uYzogSWREZXN0aW5vIHwgSWRGaW4gfCBudWxsXHJcbiAgICBjYXNpbGxlcm9zOiBPcGNpb25bXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvbk9wY2lvbmVzTXVsdGlwbGVzID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgY2FzaWxsZXJvczogT3BjaW9uTXVsdGlwbGVbXVxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhID0gUHJlZ3VudGFTaW1wbGUgfCBQcmVndW50YUNvblNpTm8gfCBQcmVndW50YUNvbk9wY2lvbmVzIHwgUHJlZ3VudGFDb25PcGNpb25lc011bHRpcGxlc1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uanVudG9QcmVndW50YXMgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6ICdDUCdcclxuICAgIGNhc2lsbGVybzogSWRQcmVndW50YVxyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFbXVxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbi8qXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUNvbnRlbmlkbyBleHRlbmRzIENhc2lsbGVyb0Jhc2Uge1xyXG4gICAgY2FzaWxsZXJvczpJQ29udGVuaWRvW11cclxufVxyXG4qL1xyXG5cclxuZXhwb3J0IHR5cGUgRmlsdHJvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnRklMVFJPJ1xyXG4gICAgY2FzaWxsZXJvOiBJZEZpbHRyb1xyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86IG51bGxcclxuICAgIGNhbGN1bGFkYT86IG51bGxcclxuICAgIGxpYnJlPzogbnVsbFxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENvbnRlbmlkb0Zvcm11bGFyaW8gPSBCbG9xdWUgfCBQcmVndW50YSB8IENvbmp1bnRvUHJlZ3VudGFzIHwgRmlsdHJvIHwgQm90b25Gb3JtdWxhcmlvIHwgQ29uc2lzdGVuY2lhIHwgVGV4dG9cclxuXHJcbmV4cG9ydCB0eXBlIEJsb3F1ZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ0InXHJcbiAgICBjYXNpbGxlcm86IElkQmxvcXVlXHJcbiAgICBjYXNpbGxlcm9zOiBDb250ZW5pZG9Gb3JtdWxhcmlvW11cclxuICAgIHZhcl9uYW1lPzogbnVsbFxyXG4gICAgdGlwb3Zhcj86IG51bGxcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86IElkVW5pZGFkQW5hbGlzaXNcclxuICAgIHNhbHRvX25zX25jPzogbnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25zaXN0ZW5jaWEgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6ICdDT05TJ1xyXG4gICAgY2FzaWxsZXJvOiBJZENvbnNpc3RlbmNpYVxyXG4gICAgdmFyX25hbWU/OiBudWxsXHJcbiAgICB0aXBvdmFyPzogbnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86IG51bGxcclxuICAgIHNhbHRvX25zX25jPzogbnVsbFxyXG59XHJcbmV4cG9ydCB0eXBlIFRleHRvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnVEVYVE8nXHJcbiAgICBjYXNpbGxlcm86IElkVGV4dG9cclxuICAgIHZhcl9uYW1lPzogbnVsbFxyXG4gICAgdGlwb3Zhcj86IG51bGxcclxuICAgIHByaW1lcmFfdmFyaWFibGU/OiBudWxsXHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5leHBvcnQgdHlwZSBMaWJyZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ0xJQlJFJ1xyXG4gICAgY2FzaWxsZXJvOiBJZFRleHRvXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzogbnVsbFxyXG4gICAgc2FsdG9fbnNfbmM/OiBudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgQm90b25Gb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnQkYnXHJcbiAgICBjYXNpbGxlcm86IElkQm90b25Gb3JtdWxhcmlvXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzogSWRWYXJpYWJsZSB8IG51bGxcclxuICAgIHZhcl9uYW1lc19CRj86IElkVmFyaWFibGVbXVxyXG4gICAgbG9uZ2l0dWQ/OiBzdHJpbmdcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86IElkVW5pZGFkQW5hbGlzaXNcclxuICAgIHNhbHRvX25zX25jPzogbnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBGb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOiAnRidcclxuICAgIGNhc2lsbGVybzogSWRGb3JtdWxhcmlvXHJcbiAgICBmb3JtdWxhcmlvX3ByaW5jaXBhbDogYm9vbGVhblxyXG4gICAgY2FzaWxsZXJvczogQ29udGVuaWRvRm9ybXVsYXJpb1tdXHJcbiAgICB2YXJfbmFtZT86IG51bGxcclxuICAgIHRpcG92YXI/OiBudWxsXHJcbiAgICBoZXJtYW5vPzogdHJ1ZVxyXG4gICAgdW5pZGFkX2FuYWxpc2lzOiBJZFVuaWRhZEFuYWxpc2lzXHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUE1hdHJpeiA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzogJ1BNQVRSSVonXHJcbiAgICBzYWx0b19uc19uYz86IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FzaWxsZXJvc0ltcGxlbWVudGFkb3MgPSBGb3JtdWxhcmlvIHwgQmxvcXVlIHwgRmlsdHJvIHwgQ29uanVudG9QcmVndW50YXMgfCBQcmVndW50YSB8IE9wY2lvbk11bHRpcGxlIHwgT3BjaW9uIHwgQm90b25Gb3JtdWxhcmlvIHwgQ29uc2lzdGVuY2lhIHwgVGV4dG8gfCBMaWJyZSB8IFBNYXRyaXpcclxuXHJcbmV4cG9ydCB0eXBlIENhbXBvUGtSYWl6ID0gJ3ZpdmllbmRhJyB8ICdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgVmFsdWVQa1JhaXogPSBJZEVuY1xyXG5cclxuZXhwb3J0IHR5cGUgRm9yUGtSYWl6ID0ge1xyXG4gICAgZm9ybXVsYXJpbzogSWRGb3JtdWxhcmlvXHJcbn0gJiB7XHJcbiAgICBbY2FtcG8gaW4gQ2FtcG9Qa1JhaXpdOiBWYWx1ZVBrUmFpelxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDYW1wb1BrID0gJ3ZpdmllbmRhJyB8ICdob2dhcicgfCAncGVyc29uYScgfCAnZXRjLi4uJztcclxuZXhwb3J0IHR5cGUgRm9yUGsgPSBGb3JQa1JhaXogJiB7XHJcbiAgICBbY2FtcG8gaW4gQ2FtcG9Qa10/OiBudW1iZXJcclxufVxyXG5leHBvcnQgdHlwZSBQbGFpbkZvclBrID0gJ3tcImZvcm11bGFyaW9cIjpcIkY6RjFcIixcInZpdmllbmRhXCI6XCIxMDIwMlwiLFwicGVyc29uYVwiOm51bGx9JyB8ICdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgT2JqZXRvTnVtZXJhZG9PQXJyYXk8VD4gPSBUW10gfCB7IFtuIGluIG51bWJlcl06IFQgfVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3Rhc1VuYVVBID0ge1xyXG4gICAgW3ByZWd1bnRhIGluIElkVmFyaWFibGVdOiBWYWxvclxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFMYXNVQSA9IHtcclxuICAgIFt1YSBpbiBJZFVuaWRhZEFuYWxpc2lzXTogT2JqZXRvTnVtZXJhZG9PQXJyYXk8UmVzcHVlc3Rhcz5cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ29kUmVhTm9SZWEgPSB7XHJcbiAgICBjb2RSZWE6IG51bWJlciB8IG51bGwsXHJcbiAgICBjb2ROb1JlYTogbnVtYmVyIHwgbnVsbCxcclxuICAgIGNvZFJlYVN1cDogbnVtYmVyIHwgbnVsbCxcclxuICAgIGNvZE5vUmVhU3VwOiBudW1iZXIgfCBudWxsLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBSZXN1bHRhZG9SZXN1bWVuID0gQ29kUmVhTm9SZWEgJiB7XHJcbiAgICByZXN1bWVuRXN0YWRvOiBSZXN1bWVuRXN0YWRvLFxyXG4gICAgcmVzdW1lbkVzdGFkb1N1cDogUmVzdW1lbkVzdGFkbyxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3RhcyA9IFJlc3B1ZXN0YXNVbmFVQSAmIFJlc3B1ZXN0YUxhc1VBXHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFzUmFpeiA9IFJlc3B1ZXN0YXMgJiBSZXN1bHRhZG9SZXN1bWVuICYge1xyXG4gICAgJGRpcnR5OiBib29sZWFuXHJcbn1cclxuXHJcbi8qXHJcbiAgICBhY2xhcmFjacOzbjpcclxuICAgIHt2MToneCcsIHYyOid4JywgcGVyc29uYXM6W3twMToxLCBwMjoneH0se3AxOjIsIHAyOnh9XSwgbWFzY290YXM6W10gfVxyXG4gICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4qL1xyXG5cclxuZXhwb3J0IHR5cGUgVW5pZGFkQW5hbGlzaXMgPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBwYWRyZT86IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBwa19hZ3JlZ2FkYTogQ2FtcG9QayxcclxuICAgIHByaW5jaXBhbD86IGJvb2xlYW4sXHJcbiAgICBoaWphczogeyBbayBpbiBJZFVuaWRhZEFuYWxpc2lzXT86IFVuaWRhZEFuYWxpc2lzIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVEVNID0ge1xyXG4gICAgbm9tY2FsbGU6IHN0cmluZ1xyXG4gICAgZG9taW5pbzogbnVtYmVyXHJcbiAgICBzZWN0b3I6IHN0cmluZ1xyXG4gICAgZWRpZmljaW86IHN0cmluZ1xyXG4gICAgZW50cmFkYTogc3RyaW5nXHJcbiAgICBucm9jYXRhc3RyYWw6IHN0cmluZ1xyXG4gICAgcGlzbzogc3RyaW5nXHJcbiAgICBkZXBhcnRhbWVudG86IHN0cmluZ1xyXG4gICAgaGFiaXRhY2lvbjogc3RyaW5nXHJcbiAgICBjYXNhOiBzdHJpbmdcclxuICAgIHByaW9yaWRhZDogMSB8IDIgfCAzXHJcbiAgICBvYnNlcnZhY2lvbmVzOiBzdHJpbmdcclxuICAgIHNlbGVjY2lvbmFkbzogbnVtYmVyLFxyXG4gICAgY2l0YT86IHN0cmluZyxcclxuICAgIGNhcmdhOiBzdHJpbmcsXHJcbiAgICBzZW1hbmE/OiBudW1iZXJcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzdW1lbkVzdGFkbyA9ICd2YWNpbycgfCAnY29uIHByb2JsZW1hcycgfCAnaW5jb21wbGV0bycgfCAnb2snIHwgJ25vIHJlYScgfCAnY2l0YSBwYWN0YWRhJztcclxuXHJcbmV4cG9ydCB0eXBlIEluZm9UYXJlYSA9IHtcclxuICAgIHRhcmVhOiBJZFRhcmVhXHJcbiAgICBub3Rhcz86IHN0cmluZ1xyXG4gICAgZmVjaGFfYXNpZ25hY2lvbj86IERhdGVcclxuICAgIGFzaWduYWRvPzogc3RyaW5nXHJcbiAgICBtYWluX2Zvcm06IElkRm9ybXVsYXJpb1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBWaXNpdGEgPSB7XHJcbiAgICBmZWNoYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaG9yYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaWRwZXI6IHN0cmluZyB8IG51bGxcclxuICAgIG9ic2VydmFjaW9uZXM6IHN0cmluZyB8IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGF0b3NIZHJVYVBwYWwgPSB7XHJcbiAgICB0YXJlYTogSW5mb1RhcmVhXHJcbiAgICB0ZW06IFRFTVxyXG5cclxuICAgIC8qXHJcbiAgICAgICAgYWNsYXJhY2nDs246XHJcbiAgICAgICAge3YxOid4JywgdjI6J3gnLCBwZXJzb25hczpbe3AxOjEsIHAyOid4fSx7cDE6MiwgcDI6eH1dLCBtYXNjb3RhczpbXSB9XHJcbiAgICAgICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4gICAgKi9cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWRDYXJnYSA9IFwiMVwiIHwgXCIyXCIgfCBcImV0Y1wiXHJcblxyXG5leHBvcnQgdHlwZSBFc3RhZG9DYXJnYSA9ICdyZXN1bWVuJyB8ICdyZWxldmFtaWVudG8nIHwgJ3JlY2libydcclxuXHJcbmV4cG9ydCB0eXBlIENhcmdhID0ge1xyXG4gICAgZmVjaGE6IERhdGVcclxuICAgIGVzdGFkb19jYXJnYTogRXN0YWRvQ2FyZ2FcclxuICAgIG5lY2VzYXJpYXM6IG51bWJlclxyXG4gICAgb2JzZXJ2YWNpb25lczogc3RyaW5nXHJcbiAgICByZWNlcGNpb25pc3RhOiBzdHJpbmdcclxuICAgIHB1ZWRlX2F1dG9nZW5lcmFyOiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhcmdhcyA9IHtcclxuICAgIFtpZENhcmdhIGluIElkQ2FyZ2FdOiBDYXJnYVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhUm93VmFsaWRhdG9yID0gU3RydWN0dXJlPElkVmFyaWFibGUsIFZhbG9yLCBJZEZpbj47XHJcblxyXG5leHBvcnQgdHlwZSBNb2RvRGVzcGxpZWd1ZSA9ICdtZXRhZGF0b3MnIHwgJ3JlbGV2YW1pZW50bycgfCAnUERGJ1xyXG5cclxuZXhwb3J0IHR5cGUgUGFudGFsbGFOYXZlZ2FjaW9uID0gJ2hkcicgfCAnc2luY3Jvbml6YWNpb24nIHwgJ3NpbmNyb25pemFjaW9uX3JlcXVlcmlkYScgfCAnbW9kbycgfCAnYXl1ZGEnO1xyXG5cclxuZXhwb3J0IHR5cGUgSW5mb0Zvcm11bGFyaW8gPSB7XHJcbiAgICBjYXNpbGxlcm9zOiBGb3JtdWxhcmlvLCAvLyBjYXNpbGxlcm9zIGFwbGFuYWRvc1xyXG4gICAgZXN0cnVjdHVyYVJvd1ZhbGlkYXRvcjogRXN0cnVjdHVyYVJvd1ZhbGlkYXRvciAvLyBlc3RydWN0dXJhIGRlIHZhcmlhYmxlcyBwYXJhIGVsIFJvd1ZhbGlkYXRvclxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZFJlc3VsdGFkbyA9ICdBVkVSSUdVQVInIHwgJ1RPRE8nO1xyXG5leHBvcnQgdHlwZSBJZFNlbWFuYSA9IDEgfCAyIHwgJ2V0YydcclxuXHJcbmV4cG9ydCB0eXBlIFNlbWFuYSA9IHtcclxuICAgIG9wZXJhdGl2bzogSWRPcGVyYXRpdm87XHJcbiAgICBzZW1hbmE6IG51bWJlcjtcclxuICAgIHNlbWFuYV9yZWZlcmVuY2lhX2Rlc2RlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHNlbWFuYV9yZWZlcmVuY2lhX2hhc3RhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgICczMGRpYXNfcmVmZXJlbmNpYV9kZXNkZSc/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgJzMwZGlhc19yZWZlcmVuY2lhX2hhc3RhJz86IHN0cmluZyB8IG51bGw7XHJcbiAgICBtZXNfcmVmZXJlbmNpYT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYXJnYV9lbmNfZGVzZGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY2FyZ2FfZW5jX2hhc3RhPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNhcmdhX3JlY3VfZGVzZGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY2FyZ2FfcmVjdV9oYXN0YT86IHN0cmluZyB8IG51bGw7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBUYXJlYXNFc3RydWN0dXJhID0ge1xyXG4gICAgW2lkVGFyZWEgaW4gSWRUYXJlYV06IHtcclxuICAgICAgICByZXN1bHRhZG9zOiB7XHJcbiAgICAgICAgICAgIFtpZFJlc3VsdGFkbyBpbiBJZFJlc3VsdGFkb106IHtcclxuICAgICAgICAgICAgICAgIGRlc2NyaXBjaW9uOiBzdHJpbmdcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVGlwb0NvbmRpY2lvbiA9ICdub19yZWEnIHwgJ25vX3JlYV9zdXAnIHwgJ3JlYScgfCAncmVhX3N1cCc7XHJcblxyXG5leHBvcnQgdHlwZSBOb1JlYSA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICBub19yZWE6IG51bWJlcjtcclxuICAgIGRlc2NyaXBjaW9uOiBzdHJpbmc7XHJcbiAgICBncnVwbzogc3RyaW5nO1xyXG4gICAgdmFyaWFibGU6IHN0cmluZztcclxuICAgIHZhbG9yOiBzdHJpbmc7XHJcbiAgICBncnVwbzA6IHN0cmluZztcclxuICAgIG9yZGVuOiBudW1iZXI7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBOb1JlYVN1cCA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICBub19yZWFfc3VwOiBudW1iZXI7XHJcbiAgICBkZXNjX25vcmVhX3N1cDogc3RyaW5nO1xyXG4gICAgZ3J1cG9fc3VwOiBzdHJpbmc7XHJcbiAgICB2YXJpYWJsZV9zdXA6IHN0cmluZztcclxuICAgIHZhbG9yX3N1cDogc3RyaW5nO1xyXG4gICAgZ3J1cG8wX3N1cDogc3RyaW5nO1xyXG4gICAgb3JkZW46IG51bWJlcjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFJlYSA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICByZWE6IG51bWJlcjtcclxuICAgIGRlc2NyaXBjaW9uOiBzdHJpbmc7XHJcbiAgICBjb25kaWNpb246IHN0cmluZztcclxuICAgIGNvbmRpY2lvbl9qczogc3RyaW5nO1xyXG4gICAgb3JkZW46IG51bWJlcjtcclxuICAgIGVzX3Bvc2l0aXZhOiBib29sZWFuO1xyXG4gICAgdGFyZWE6IHN0cmluZyB8IG51bGw7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBSZWFTdXAgPSB7XHJcbiAgICBvcGVyYXRpdm86IHN0cmluZ1xyXG4gICAgcmVhX3N1cDogbnVtYmVyO1xyXG4gICAgZGVzY3JpcGNpb246IHN0cmluZztcclxuICAgIGNvbmRpY2lvbjogc3RyaW5nO1xyXG4gICAgY29uZGljaW9uX2pzOiBzdHJpbmc7XHJcbiAgICBvcmRlbjogbnVtYmVyO1xyXG4gICAgZXNfcG9zaXRpdmE6IGJvb2xlYW47XHJcbiAgICB0YXJlYTogc3RyaW5nIHwgbnVsbDtcclxufTtcclxuXHJcbi8vIE1hcGVvIGRlIHRpcG9zIHBhcmEgYXNvY2lhciBlbCBzdHJpbmcgZGUgbGEgY29uZGljacOzbiBjb24gc3UgaW50ZXJmYXogY29ycmVzcG9uZGllbnRlXHJcbmV4cG9ydCB0eXBlIE1hcGVvVGlwb0l0ZW0gPSB7XHJcbiAgICAncmVhJzogUmVhO1xyXG4gICAgJ25vX3JlYSc6IE5vUmVhO1xyXG4gICAgJ3JlYV9zdXAnOiBSZWFTdXA7XHJcbiAgICAnbm9fcmVhX3N1cCc6IE5vUmVhU3VwO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgRXN0cnVjdHVyYSA9IHtcclxuICAgIGZvcm11bGFyaW9zOiB7XHJcbiAgICAgICAgW25vbWJyZUZvcm11bGFyaW8gaW4gSWRGb3JtdWxhcmlvXTogSW5mb0Zvcm11bGFyaW9cclxuICAgIH07XHJcbiAgICB1bmlkYWRlc19hbmFsaXNpczoge1xyXG4gICAgICAgIFtpZFVuaWRhZEFuYWxpc2lzIGluIElkVW5pZGFkQW5hbGlzaXNdOiBVbmlkYWRBbmFsaXNpc1xyXG4gICAgfTtcclxuICAgIHRhcmVhczogVGFyZWFzRXN0cnVjdHVyYTtcclxuICAgIHVhUHBhbDogSWRVbmlkYWRBbmFsaXNpcztcclxuICAgIHBrQWdyZWdhZGFVYVBwYWw6IENhbXBvUGtSYWl6O1xyXG4gICAgdGltZXN0YW1wOiBudW1iZXI7XHJcbiAgICBvcGVyYXRpdm86IElkT3BlcmF0aXZvO1xyXG4gICAgY29uZmlnU29ydGVvOiBDb25maWd1cmFjaW9uU29ydGVvO1xyXG4gICAgaGFiaWxpdGFjaW9uQm90b25Gb3JtdWxhcmlvOiBDb25maWd1cmFjaW9uSGFiaWxpdGFyQm90b25Gb3JtdWxhcmlvO1xyXG4gICAgY29uUmVhSG9nYXI6IGJvb2xlYW47XHJcbiAgICBub1JlYXM6IE5vUmVhW107XHJcbiAgICBub1JlYXNTdXA6IE5vUmVhU3VwW107XHJcbiAgICByZWFzOiBSZWFbXTtcclxuICAgIHJlYXNTdXA6IFJlYVN1cFtdO1xyXG4gICAgc2VtYW5hczogeyBbaWRTZW1hbmEgaW4gSWRTZW1hbmFdOiBTZW1hbmEgfTtcclxuICAgIGRlZmF1bHRJbmZvcm1hY2lvbkhkcjogRGF0b3NIZHJVYVBwYWw7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBJZEVuYyA9IDEzMDAzMSB8IDEzMDAzMjtcclxuZXhwb3J0IHR5cGUgSW5mb3JtYWNpb25IZHIgPSB7IFtlbmMgaW4gSWRFbmNdOiBEYXRvc0hkclVhUHBhbCB9XHJcblxyXG5leHBvcnQgdHlwZSBDYXNvU3RhdGUgPSB7XHJcbiAgICBvcGNpb25lczogeyAvLyBkYXRvcyBkZSBuYXZlZ2FjacOzbiBxdWUgZWxpamUgZWwgdXN1YXJpb1xyXG4gICAgICAgIGZvclBrOiBGb3JQayB8IG51bGwgLy8gw61uZGljZSBkZW50cm8gZGUgbGFzIHVuaWRhZGVzIGRlIGFuw6FsaXNpcy4gTnVsbCA9IGVuIGhvamEgZGUgcnV0YVxyXG4gICAgICAgIHBpbGFGb3JQazogRm9yUGtbXVxyXG4gICAgICAgIG1vZG9EZXNwbGllZ3VlOiBNb2RvRGVzcGxpZWd1ZVxyXG4gICAgICAgIG1vZG9EaXJlY3RvOiBib29sZWFuXHJcbiAgICAgICAgbW9kb0JvcnJhclJlc3B1ZXN0YTogSWRWYXJpYWJsZSB8IG51bGxcclxuICAgICAgICBjb25DYW1wb09wY2lvbmVzOiBib29sZWFuXHJcbiAgICAgICAgc2FsdG9BdXRvbWF0aWNvOiBib29sZWFuXHJcbiAgICAgICAgcGFudGFsbGFBY3R1YWw6IFBhbnRhbGxhTmF2ZWdhY2lvblxyXG4gICAgICAgIGF2aXNvUGVyc2lzdGVudGU6IHsgdGlwbzogJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ2Vycm9yJywgbWVuc2FqZTogc3RyaW5nfSB8IG51bGxcclxuICAgICAgICBjb21vZGluZXM6IHtbaWRDb21vZGluIGluIElkQ29tb2Rpbl0/OiBzdHJpbmd9XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFJlc3VsdGFkb1JlYU5vUmVhPEsgZXh0ZW5kcyBrZXlvZiBDb2RSZWFOb1JlYSwgQiBleHRlbmRzIHN0cmluZz4gPSB7XHJcbiAgICBbUCBpbiBLXTogQ29kUmVhTm9SZWFbS107XHJcbn0gJiB7XHJcbiAgICBbUCBpbiBCXTogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIEZ1bmNpb25lc0NhbGN1bG9SZWFOb1JlYSA9IHtcclxuICBlc05vUmVhOiAocmVzcHVlc3RhczogUmVzcHVlc3RhcywgdGFyZWE6IHN0cmluZykgPT4gUmVzdWx0YWRvUmVhTm9SZWE8J2NvZE5vUmVhJywgJ2VzTm9SZWEnPjtcclxuICBlc05vUmVhU3VwOiAocmVzcHVlc3RhczogUmVzcHVlc3RhcywgdGFyZWE6IHN0cmluZykgPT4gUmVzdWx0YWRvUmVhTm9SZWE8J2NvZE5vUmVhU3VwJywgJ2VzTm9SZWFTdXAnPjtcclxuICBlc1JlYWxpemFkYTogKHJlc3B1ZXN0YXM6IFJlc3B1ZXN0YXMsIHRhcmVhOiBzdHJpbmcpID0+IFJlc3VsdGFkb1JlYU5vUmVhPCdjb2RSZWEnLCAnZXNSZWEnPjtcclxuICBlc1JlYWxpemFkYVN1cDogKHJlc3B1ZXN0YXM6IFJlc3B1ZXN0YXMsIHRhcmVhOiBzdHJpbmcpID0+IFJlc3VsdGFkb1JlYU5vUmVhPCdjb2RSZWFTdXAnLCAnZXNSZWFTdXAnPjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIERlZk9wZXJhdGl2byA9IEZ1bmNpb25lc0NhbGN1bG9SZWFOb1JlYSAmIHtcclxuICAgIFVBcHJpbmNpcGFsOiBJZFVuaWRhZEFuYWxpc2lzLFxyXG4gICAgZGVmVUE6IHsgW2kgaW4gSWRVbmlkYWRBbmFsaXNpc106IHsgcGs6IElkVmFyaWFibGUsIGluY2x1aWRhczogSWRVbmlkYWRBbmFsaXNpc1tdLCBpZHNGb3I6IElkRm9ybXVsYXJpb1tdIH0gfSxcclxuICAgIGRlZkZvcjogeyBbZiBpbiBJZEZvcm11bGFyaW9dOiB7LyphcmJvbFVBOklkVW5pZGFkQW5hbGlzaXNbXSwgKi8gaGVybWFubz86IHRydWUgfSB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERhdG9zQnlQYXNzUGVyc2lzdGlibGVzID0ge1xyXG4gICAgcmVzcHVlc3RhczogeyBbdWEgaW4gSWRVbmlkYWRBbmFsaXNpc106IFJlc3B1ZXN0YXNSYWl6W10gfVxyXG4gICAgbW9kb0FsbWFjZW5hbWllbnRvOiBNb2RvQWxtYWNlbmFtaWVudG9cclxuICAgIHBlcnNvbmE6IHN0cmluZ1xyXG4gICAgdGFyZWE6IElkVGFyZWFcclxuICAgIGlkcGVyOiBzdHJpbmdcclxuICAgIGNhcmdhczogQ2FyZ2FzXHJcbiAgICBpbmZvcm1hY2lvbkhkcjogSW5mb3JtYWNpb25IZHJcclxuICAgIHNvbG9MZWN0dXJhOiBib29sZWFuXHJcbiAgICB0b2tlbj86IHN0cmluZ1xyXG4gICAgbnVtX3NpbmNybz86IG51bWJlclxyXG4gICAgdGltZXN0YW1wRXN0cnVjdHVyYT86IG51bWJlclxyXG4gICAgcGVybWl0ZUJvcnJhckVsZW1lbnRvc1VBPzogYm9vbGVhblxyXG59XHJcblxyXG50eXBlIENvbmZpZ3VyYWNpb25Tb3J0ZW9UYWJsYSA9IHtcclxuICAgIG1ldG9kbzogXCJ0YWJsYVwiLFxyXG4gICAgcGFyYW1fbWV0b2RvOiB7XHJcbiAgICAgICAgdGFibGE6IHN0cmluZ1tdLFxyXG4gICAgICAgIHZhcl9sZXRyYTogSWRWYXJpYWJsZSxcclxuICAgIH1cclxufVxyXG5cclxudHlwZSBDb25maWd1cmFjaW9uU29ydGVvSGFzaCA9IHtcclxuICAgIG1ldG9kbzogXCJoYXNoXCIsXHJcbiAgICBwYXJhbV9tZXRvZG86IHtcclxuICAgICAgICB2YXJfY29lZjogW1xyXG4gICAgICAgICAgICB7IHZhcjogSWRWYXJpYWJsZSwgY29lZjogbnVtYmVyIH0sXHJcbiAgICAgICAgICAgIHsgdmFyOiBJZFZhcmlhYmxlLCBjb2VmOiBudW1iZXIgfSxcclxuICAgICAgICBdLFxyXG4gICAgICAgIGRpdmlzb3I6IG51bWJlclxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uU29ydGVvID0geyBba2V5IGluIElkRm9ybXVsYXJpb106IENvbmZpZ3VyYWNpb25Tb3J0ZW9Gb3JtdWxhcmlvIH1cclxuXHJcbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW8gPSB7IFtrZXkgaW4gSWRGb3JtdWxhcmlvXTogQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb0Zvcm0gfVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvblNvcnRlb0Zvcm11bGFyaW8gPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICB1bmlkYWRfYW5hbGlzaXNfcGFkcmU6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICAvL2V4cHJfaW5jb21wbGV0aXR1ZDogc3RyaW5nIC8vXCJub3QgKHAxKSBvciBubyB0IChwMikgb3Igbm90KHAzKVwiXHJcbiAgICBleHByX2luY29tcGxldGl0dWQ6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06IHsgZG9taW5pbzogbnVtYmVyLCBleHByOiBzdHJpbmcgfVxyXG4gICAgfVxyXG4gICAgLy9leHByX2luY29tcGxldGl0dWRfanM6IHN0cmluZyAvL3NlIGNyZWEgYWwgY29tcGlsYXJcclxuICAgIGV4cHJfaW5jb21wbGV0aXR1ZF9qczoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTogeyBkb21pbmlvOiBudW1iZXIsIGV4cHI6IHN0cmluZyB9XHJcbiAgICB9XHJcbiAgICBkaXNwYXJhZG9yOiBJZFZhcmlhYmxlIC8vXCJwOVwiXHJcbiAgICAvL2ZpbHRybzogc3RyaW5nIC8vXCJwMz49MThcIlxyXG4gICAgZmlsdHJvOiB7XHJcbiAgICAgICAgW2tleSBpbiBudW1iZXJdOiB7IGRvbWluaW86IG51bWJlciwgZXhwcjogc3RyaW5nIH1cclxuICAgIH1cclxuICAgIC8vZmlsdHJvX2pzOiBzdHJpbmcgLy9zZSBjcmVhIGFsIGNvbXBpbGFyXHJcbiAgICBmaWx0cm9fanM6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06IHsgZG9taW5pbzogbnVtYmVyLCBleHByOiBzdHJpbmcgfVxyXG4gICAgfVxyXG4gICAgb3JkZW46IHtcclxuICAgICAgICB2YXJpYWJsZTogSWRWYXJpYWJsZVxyXG4gICAgICAgIG9yZGVuOiAxIHwgLTFcclxuICAgIH1bXSAvL1tcInAzXCIsIFwicDJcIiwgXCJwMVwiLCBcInAwXCJdLCAvLyBwMCBlcyBjb25zdHJ1aWRhLCBubyB2YSBlbiBwYXLDoW1ldHJvcywgc2UgcG9uZSBwYXJhIHF1ZSBlbCBvcmRlbiBzZWEgZGV0ZXJtaW7DrXN0aWNvXHJcbiAgICBwYXJhbWV0cm9zOiBJZFZhcmlhYmxlW10vLyBbXCJwMVwiLFwicDJcIixcInAzXCIsIFwicDRcIiwgXCJwNVwiLCBcInA2XCJdLCAvLyB2YXJpYWJsZXMgcXVlIGFudWxhbiBhbCBkaXNwYXJhZG9yXHJcbiAgICBjYW50aWRhZF9zb3J0ZWFibGVzOiBJZFZhcmlhYmxlXHJcbiAgICBjYW50aWRhZF90b3RhbDogSWRWYXJpYWJsZVxyXG4gICAgcmVzdWx0YWRvOiBJZFZhcmlhYmxlIC8vXCJwMTFcIlxyXG4gICAgcmVzdWx0YWRvX21hbnVhbDogSWRWYXJpYWJsZSAvL1wicDExXCJcclxuICAgIHNvcnRlYWRvX21vc3RyYXI/OiB7IHNvdXJjZTogSWRWYXJpYWJsZSwgdGFyZ2V0OiBJZFZhcmlhYmxlIH1bXSxcclxuICAgIGluY29tcGxldGFzOiBJZFZhcmlhYmxlXHJcbiAgICB2YXJpYWJsZUJvdG9uRm9ybXVsYXJpb1VBOiBJZFZhcmlhYmxlLy8nJEIuRjpTMV9QJ1xyXG4gICAgdmFyaWFibGVCb3RvbkZvcm11bGFyaW9VQUluZGl2aWR1YWw/OiBJZFZhcmlhYmxlIC8vJyRCLkY6STEnXHJcbiAgICBpZF9mb3JtdWxhcmlvX2luZGl2aWR1YWw/OiBJZEZvcm11bGFyaW8gLy8gJ0Y6STEnXHJcbiAgICBpZF9mb3JtdWxhcmlvX3BhZHJlPzogSWRGb3JtdWxhcmlvIC8vICdGOlMxJ1xyXG59ICYgKENvbmZpZ3VyYWNpb25Tb3J0ZW9IYXNoIHwgQ29uZmlndXJhY2lvblNvcnRlb1RhYmxhKVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb0Zvcm0gPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBleHByX2hhYmlsaXRhcl9ib3Rvbjogc3RyaW5nLFxyXG4gICAgZXhwcl9oYWJpbGl0YXJfYm90b25fanM6IHN0cmluZyxcclxuICAgIGhhYmlsaXRhcl9hZ3JlZ2FyX2xpc3RvOiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB0b1BsYWluRm9yUGsoZm9yUGs6IEZvclBrKTogUGxhaW5Gb3JQayB7XHJcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZm9yUGspIGFzIFBsYWluRm9yUGs7XHJcbn1cclxuXHJcbmV4cG9ydCB2YXIgaXRlcmF0b3I6IDxUPihvOiBPYmpldG9OdW1lcmFkb09BcnJheTxUPikgPT4gSXRlcmFibGU8VD4gPSBMaWtlQXIuaXRlcmF0b3JcclxuZXhwb3J0IHZhciBlbXB0eTogPFQ+KG86IE9iamV0b051bWVyYWRvT0FycmF5PFQ+IHwgbnVsbCB8IHVuZGVmaW5lZCkgPT4gYm9vbGVhbiA9IExpa2VBci5lbXB0eVxyXG5cclxuZGVjbGFyZSBnbG9iYWwge1xyXG4gICAgbmFtZXNwYWNlIG15T3duIHtcclxuICAgICAgICBpbnRlcmZhY2UgQWRkclBhcmFtcyB7XHJcbiAgICAgICAgICAgIHN0YXRlX2ZvclBrOiBzdHJpbmdcclxuICAgICAgICAgICAgc3RhdGVfcGlsYUZvclBrOiBzdHJpbmdcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERpcmVjY2lvbkFjY2lvbiA9ICdhdmFuY2UnIHwgJ3JldHJvY2VzbycgfCAnYmxhbnF1ZW8nXHJcblxyXG5leHBvcnQgdHlwZSBFc3RhZG9BY2Npb24gPSB7XHJcbiAgICBvcGVyYXRpdm86IHN0cmluZ1xyXG4gICAgZXN0YWRvOiBzdHJpbmdcclxuICAgIGVhY2Npb246IHN0cmluZ1xyXG4gICAgY29uZGljaW9uOiBzdHJpbmdcclxuICAgIGVzdGFkb19kZXN0aW5vOiBzdHJpbmdcclxuICAgIGVhY2Npb25fZGlyZWNjaW9uOiBEaXJlY2Npb25BY2Npb25cclxuICAgIHBhdGhfaWNvbm9fc3ZnOiBzdHJpbmdcclxuICAgIG5vbWJyZV9wcm9jZWR1cmU6IHN0cmluZ1xyXG4gICAgbm9tYnJlX3dzY3JlZW46IHN0cmluZ1xyXG4gICAgZGVzYWN0aXZhX2JvdG9uOiBib29sZWFuXHJcbiAgICBjb25maXJtYTogYm9vbGVhblxyXG59XHJcbmV4cG9ydCB0eXBlIE1vZG9ETSA9ICdwcm9kdWMnIHwgJ2NhcGEnO1xyXG4vLyBheXVkYSBlbiBsw61uZWEgcGFyYSB1c3VhcmlvczogbG8gcXVlIGRldnVlbHZlIGVsIHByb2NlZGltaWVudG8gYXl1ZGFfdHJhZXIgKHZlciBkb2NzL2F5dWRhLW9ubGluZS5tZClcclxuZXhwb3J0IHR5cGUgTW9kb0FwcCA9ICdSRUxFVkFNSUVOVE8nIHwgJ0dBQklORVRFJ1xyXG5leHBvcnQgdHlwZSBBeXVkYVRlbWFQYXJhVXN1YXJpbyA9IHtcclxuICAgIGlkOiBzdHJpbmdcclxuICAgIHRpdHVsbzogc3RyaW5nXHJcbiAgICBodG1sOiBzdHJpbmdcclxufVxyXG4vLyB1bmEgb3BjacOzbiBkZWwgbWVuw7ogZGVsIHVzdWFyaW8sIGNvbiBlbCB0ZW1hIGRlIGF5dWRhIHF1ZSBsYSBleHBsaWNhIChzaSBoYXkgYWxndW5vKVxyXG5leHBvcnQgdHlwZSBBeXVkYU9wY2lvbk1lbnUgPSB7XHJcbiAgICBydXRhOiBzdHJpbmcgLy8gbm9tYnJlcyBkZSBsYXMgb3BjaW9uZXMgc2VwYXJhZG9zIHBvciBcIi9cIiwgcG9yIGVqZW1wbG8gXCJhc2lnbmFjaW9uL2VuY3Vlc3RhZG9yXCJcclxuICAgIGxhYmVsOiBzdHJpbmdcclxuICAgIHRlbWE6IHN0cmluZyB8IG51bGxcclxuICAgIG9wY2lvbmVzOiBBeXVkYU9wY2lvbk1lbnVbXVxyXG59XHJcbmV4cG9ydCB0eXBlIEF5dWRhUGFyYVVzdWFyaW8gPSB7XHJcbiAgICByb2w6IHN0cmluZyB8IG51bGxcclxuICAgIG1vZG86IE1vZG9BcHBcclxuICAgIHRlbWFzOiBBeXVkYVRlbWFQYXJhVXN1YXJpb1tdXHJcbiAgICBtZW51OiBBeXVkYU9wY2lvbk1lbnVbXVxyXG59Il19
@@ -16,6 +16,8 @@ export declare const AppDmEncuParaTests: {
16
16
  };
17
17
  addLoggedServices(): void;
18
18
  postConfig(): Promise<void>;
19
+ getAyudaFuentes(): import("../server/types-dmencu").AyudaFuente[];
20
+ problemasDeAyuda(): string[];
19
21
  configStaticConfig(): void;
20
22
  clientIncludes(req: import("backend-plus").Request, opts: import("backend-plus").OptsClientPage): import("backend-plus").ClientModuleDefinition[];
21
23
  refreshCaches(client?: import("../server/app-dmencu").ClienteDb | null): Promise<void>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,183 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "mocha", "node:assert", "node:fs", "node:os", "node:path", "../server/app-dmencu", "../server/ayuda", "./app-para-tests"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const mocha_1 = require("mocha");
13
+ const assert = require("node:assert");
14
+ const fs = require("node:fs");
15
+ const os = require("node:os");
16
+ const path = require("node:path");
17
+ const app_dmencu_1 = require("../server/app-dmencu");
18
+ const ayuda_1 = require("../server/ayuda");
19
+ const app_para_tests_1 = require("./app-para-tests");
20
+ const GABINETE = '';
21
+ const RELEVAMIENTO = 'web';
22
+ function appConAyuda(policy) {
23
+ var be = (0, app_para_tests_1.crearAppParaTests)(policy);
24
+ be.caches.ayuda = (0, ayuda_1.cargarAyuda)(be.getAyudaFuentes());
25
+ return be;
26
+ }
27
+ function idsVisibles(be, rol) {
28
+ return (0, ayuda_1.temasVisibles)(be.caches.ayuda, (0, app_dmencu_1.quienConsultaAyuda)((0, app_para_tests_1.contextoDelRol)(be, rol))).map(tema => tema.id);
29
+ }
30
+ function tema(contenido, origen = 'test') {
31
+ return (0, ayuda_1.parsearTemaDeAyuda)(contenido, 'tema.md', origen);
32
+ }
33
+ (0, mocha_1.describe)('dmencu - ayuda en línea', () => {
34
+ (0, mocha_1.describe)('formato de los archivos', () => {
35
+ (0, mocha_1.it)('lee el encabezado y convierte el markdown a html', () => {
36
+ var leido = tema('---\nid: uno\ntitulo: Uno\npermisos: [campo.editar]\nmenu: asignacion\n---\nTexto **fuerte** y [otro](ayuda:dos)\n');
37
+ assert.strictEqual(leido.id, 'uno');
38
+ assert.strictEqual(leido.titulo, 'Uno');
39
+ assert.deepStrictEqual(leido.permisos, ['campo.editar']);
40
+ assert.deepStrictEqual(leido.menu, ['asignacion']);
41
+ assert.deepStrictEqual(leido.roles, []);
42
+ assert.strictEqual(leido.modo, null);
43
+ assert.strictEqual(leido.html, '<p>Texto <strong>fuerte</strong> y <a href="ayuda:dos">otro</a></p>\n');
44
+ });
45
+ (0, mocha_1.it)('no deja pasar html crudo', () => {
46
+ assert.ok(!tema('---\nid: uno\ntitulo: Uno\n---\n<script>alert(1)</script>\n').html.includes('<script>'));
47
+ });
48
+ (0, mocha_1.it)('acepta archivos con BOM y fin de línea de Windows', () => {
49
+ assert.strictEqual(tema('---\r\nid: uno\r\ntitulo: Uno\r\n---\r\nhola\r\n').html, '<p>hola</p>\n');
50
+ });
51
+ (0, mocha_1.it)('rechaza un archivo sin encabezado', () => {
52
+ assert.throws(() => tema('# Hola\n'), /falta el encabezado/);
53
+ });
54
+ (0, mocha_1.it)('rechaza campos desconocidos (para detectar errores de tipeo)', () => {
55
+ assert.throws(() => tema('---\nid: uno\ntitulo: Uno\npermiso: campo.editar\n---\n'), /campo desconocido "permiso"/);
56
+ });
57
+ (0, mocha_1.it)('rechaza un modo que no existe', () => {
58
+ assert.throws(() => tema('---\nid: uno\ntitulo: Uno\nmodo: OFICINA\n---\n'), /modo debe ser/);
59
+ });
60
+ (0, mocha_1.it)('rechaza permisos sin acción', () => {
61
+ assert.throws(() => tema('---\nid: uno\ntitulo: Uno\npermisos: [campo]\n---\n'), /permiso.accion/);
62
+ });
63
+ (0, mocha_1.it)('exige título salvo para ocultar', () => {
64
+ assert.throws(() => tema('---\nid: uno\n---\n'), /titulo/);
65
+ assert.strictEqual(tema('---\nid: uno\nocultar: true\n---\n').ocultar, true);
66
+ });
67
+ });
68
+ (0, mocha_1.describe)('fuentes: cómo las apps finales agregan, reemplazan y ocultan temas', () => {
69
+ var dmencu = [
70
+ tema('---\nid: a\ntitulo: A de dmencu\norden: 1\n---\n', 'dmencu'),
71
+ tema('---\nid: b\ntitulo: B\norden: 2\n---\n', 'dmencu'),
72
+ tema('---\nid: c\ntitulo: C\norden: 3\n---\n', 'dmencu'),
73
+ ];
74
+ var app = [
75
+ tema('---\nid: a\ntitulo: A de la app\norden: 1\n---\n', 'app'),
76
+ tema('---\nid: b\nocultar: true\n---\n', 'app'),
77
+ tema('---\nid: d\ntitulo: D\norden: 0\n---\n', 'app'),
78
+ ];
79
+ (0, mocha_1.it)('un id repetido reemplaza al anterior, ocultar lo quita y los nuevos se agregan según orden', () => {
80
+ var combinados = (0, ayuda_1.combinarTemasDeAyuda)([dmencu, app]);
81
+ assert.deepStrictEqual(combinados.map(t => [t.id, t.origen]), [['d', 'app'], ['a', 'app'], ['c', 'dmencu']]);
82
+ });
83
+ (0, mocha_1.it)('rechaza ids repetidos dentro de una misma carpeta', () => {
84
+ var carpeta = fs.mkdtempSync(path.join(os.tmpdir(), 'ayuda-'));
85
+ try {
86
+ fs.writeFileSync(path.join(carpeta, '1.md'), '---\nid: a\ntitulo: A\n---\n');
87
+ fs.writeFileSync(path.join(carpeta, '2.md'), '---\nid: a\ntitulo: Otra A\n---\n');
88
+ assert.throws(() => (0, ayuda_1.leerFuenteDeAyuda)({ origen: 'test', carpeta }), /ya está en/);
89
+ }
90
+ finally {
91
+ fs.rmSync(carpeta, { recursive: true });
92
+ }
93
+ });
94
+ (0, mocha_1.it)('avisa si la carpeta no existe', () => {
95
+ assert.throws(() => (0, ayuda_1.leerFuenteDeAyuda)({ origen: 'test', carpeta: path.join(os.tmpdir(), 'no-existe-ayuda') }), /no existe la carpeta/);
96
+ });
97
+ (0, mocha_1.it)('la carpeta de dmencu se encuentra desde el js compilado', () => {
98
+ assert.ok(fs.existsSync(path.join((0, ayuda_1.carpetaDelPaquete)(__dirname), 'ayuda')));
99
+ });
100
+ });
101
+ (0, mocha_1.describe)('los temas de dmencu', () => {
102
+ (0, mocha_1.it)('no tienen problemas en GABINETE (permisos, roles y opciones de menú existen)', () => {
103
+ assert.deepStrictEqual(appConAyuda(GABINETE).problemasDeAyuda(), []);
104
+ });
105
+ (0, mocha_1.it)('no tienen problemas en RELEVAMIENTO', () => {
106
+ assert.deepStrictEqual(appConAyuda(RELEVAMIENTO).problemasDeAyuda(), []);
107
+ });
108
+ (0, mocha_1.it)('cada opción del menú de admin en GABINETE tiene un tema que la explica, directa o a través de su menú padre', () => {
109
+ var be = appConAyuda(GABINETE);
110
+ var context = (0, app_para_tests_1.contextoDelRol)(be, 'admin');
111
+ var opciones = (0, ayuda_1.menuConAyuda)(be.getMenu(context).menu, be.caches.ayuda);
112
+ var sinAyuda = opciones.filter(opcion => opcion.tema == null && opcion.ruta != 'configurar' && opcion.ruta != 'carto').map(opcion => opcion.ruta);
113
+ assert.deepStrictEqual(sinAyuda, []);
114
+ });
115
+ });
116
+ (0, mocha_1.describe)('qué ve cada perfil', () => {
117
+ (0, mocha_1.it)('en RELEVAMIENTO quien releva ve la ayuda del dispositivo', () => {
118
+ var be = appConAyuda(RELEVAMIENTO);
119
+ assert.deepStrictEqual(idsVisibles(be, 'encuestador'), ['dm-relevamiento', 'dm-sincronizar', 'dm-cambiar-modo']);
120
+ assert.deepStrictEqual(idsVisibles(be, 'supervisor'), ['dm-relevamiento', 'dm-sincronizar', 'dm-cambiar-modo']);
121
+ });
122
+ (0, mocha_1.it)('en RELEVAMIENTO quien no releva no ve ayuda ni la opción del menú', () => {
123
+ var be = appConAyuda(RELEVAMIENTO);
124
+ assert.deepStrictEqual(idsVisibles(be, 'coor_campo'), []);
125
+ assert.deepStrictEqual(be.getMenu((0, app_para_tests_1.contextoDelRol)(be, 'coor_campo')).menu, []);
126
+ });
127
+ (0, mocha_1.it)('en GABINETE el encuestador no ve la ayuda del dispositivo', () => {
128
+ var be = appConAyuda(GABINETE);
129
+ assert.deepStrictEqual(idsVisibles(be, 'encuestador'), []);
130
+ assert.deepStrictEqual(be.getMenu((0, app_para_tests_1.contextoDelRol)(be, 'encuestador')).menu, []);
131
+ });
132
+ (0, mocha_1.it)('en GABINETE el ingresador ve lo de campo pero no lo de administración ni procesamiento', () => {
133
+ var ids = idsVisibles(appConAyuda(GABINETE), 'ingresador');
134
+ assert.deepStrictEqual(ids, ['circuito-encuesta', 'asignacion', 'recepcion', 'supervision', 'varios']);
135
+ });
136
+ (0, mocha_1.it)('diseño conceptual ve la ayuda de metadatos', () => {
137
+ var ids = idsVisibles(appConAyuda(GABINETE), 'dis_conceptual');
138
+ assert.deepStrictEqual(ids, ['circuito-encuesta', 'metadatos']);
139
+ });
140
+ (0, mocha_1.it)('admin (superuser) ve todos los temas del modo', () => {
141
+ var be = appConAyuda(GABINETE);
142
+ var deGabinete = be.caches.ayuda.filter(t => t.modo != 'RELEVAMIENTO').map(t => t.id);
143
+ assert.deepStrictEqual(idsVisibles(be, 'admin'), deGabinete);
144
+ });
145
+ (0, mocha_1.it)('un tema por rol se muestra a ese rol aunque no tenga el permiso', () => {
146
+ var porRol = tema('---\nid: x\ntitulo: X\nroles: [auxiliar]\n---\n');
147
+ var be = (0, app_para_tests_1.crearAppParaTests)(GABINETE);
148
+ assert.deepStrictEqual((0, ayuda_1.temasVisibles)([porRol], (0, app_dmencu_1.quienConsultaAyuda)((0, app_para_tests_1.contextoDelRol)(be, 'auxiliar'))).map(t => t.id), ['x']);
149
+ assert.deepStrictEqual((0, ayuda_1.temasVisibles)([porRol], (0, app_dmencu_1.quienConsultaAyuda)((0, app_para_tests_1.contextoDelRol)(be, 'ingresador'))), []);
150
+ });
151
+ (0, mocha_1.it)('la opción ayuda va al final del menú de quien tiene temas', () => {
152
+ var be = appConAyuda(RELEVAMIENTO);
153
+ var menu = be.getMenu((0, app_para_tests_1.contextoDelRol)(be, 'encuestador')).menu;
154
+ assert.deepStrictEqual(menu.map(opcion => opcion.name), ['relevamiento', 'sincronizar', 'cambiar_modo', 'ayuda']);
155
+ });
156
+ });
157
+ (0, mocha_1.describe)('menú con ayuda (lo que muestra "Qué puedo hacer")', () => {
158
+ (0, mocha_1.it)('liga cada opción del menú del usuario con su tema y no incluye la opción ayuda', () => {
159
+ var be = appConAyuda(RELEVAMIENTO);
160
+ var context = (0, app_para_tests_1.contextoDelRol)(be, 'encuestador');
161
+ var temas = (0, ayuda_1.temasVisibles)(be.caches.ayuda, (0, app_dmencu_1.quienConsultaAyuda)(context));
162
+ assert.deepStrictEqual((0, ayuda_1.menuConAyuda)(be.getMenu(context).menu, temas), [
163
+ { ruta: 'relevamiento', label: 'relevamiento', tema: 'dm-relevamiento', opciones: [] },
164
+ { ruta: 'sincronizar', label: 'sincronizar', tema: 'dm-sincronizar', opciones: [] },
165
+ { ruta: 'cambiar_modo', label: 'cambiar modo', tema: 'dm-cambiar-modo', opciones: [] },
166
+ ]);
167
+ });
168
+ (0, mocha_1.it)('recorre los submenús con rutas separadas por /', () => {
169
+ var be = appConAyuda(GABINETE);
170
+ var context = (0, app_para_tests_1.contextoDelRol)(be, 'ingresador');
171
+ var temas = (0, ayuda_1.temasVisibles)(be.caches.ayuda, (0, app_dmencu_1.quienConsultaAyuda)(context));
172
+ var asignacion = (0, ayuda_1.menuConAyuda)(be.getMenu(context).menu, temas).find(opcion => opcion.ruta == 'asignacion');
173
+ assert.ok(asignacion);
174
+ assert.deepStrictEqual(asignacion.opciones.map(opcion => [opcion.ruta, opcion.tema]), [
175
+ ['asignacion/encuestador', 'asignacion'],
176
+ ['asignacion/ingresador', 'asignacion'],
177
+ ['asignacion/recuperador', 'asignacion'],
178
+ ]);
179
+ });
180
+ });
181
+ });
182
+ });
183
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1heXVkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3Rlc3QtYXl1ZGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFBQSxpQ0FBcUM7SUFFckMsc0NBQXVDO0lBQ3ZDLDhCQUE4QjtJQUM5Qiw4QkFBOEI7SUFDOUIsa0NBQWtDO0lBRWxDLHFEQUEwRDtJQUMxRCwyQ0FFeUI7SUFFekIscURBQW1GO0lBRW5GLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNwQixNQUFNLFlBQVksR0FBRyxLQUFLLENBQUM7SUFFM0IsU0FBUyxXQUFXLENBQUMsTUFBYztRQUMvQixJQUFJLEVBQUUsR0FBRyxJQUFBLGtDQUFpQixFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUEsbUJBQVcsRUFBQyxFQUFFLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztRQUNwRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxTQUFTLFdBQVcsQ0FBQyxFQUFnQixFQUFFLEdBQVc7UUFDOUMsT0FBTyxJQUFBLHFCQUFhLEVBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBQSwrQkFBa0IsRUFBQyxJQUFBLCtCQUFjLEVBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDNUcsQ0FBQztJQUVELFNBQVMsSUFBSSxDQUFDLFNBQWlCLEVBQUUsU0FBaUIsTUFBTTtRQUNwRCxPQUFPLElBQUEsMEJBQWtCLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBQSxnQkFBUSxFQUFDLHlCQUF5QixFQUFFLEdBQUcsRUFBRTtRQUVyQyxJQUFBLGdCQUFRLEVBQUMseUJBQXlC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QUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxDQUFDO2dCQUMzRyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN0QixNQUFNLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO29CQUNsRixDQUFDLHdCQUF3QixFQUFFLFlBQVksQ0FBQztvQkFDeEMsQ0FBQyx1QkFBdUIsRUFBRSxZQUFZLENBQUM7b0JBQ3ZDLENBQUMsd0JBQXdCLEVBQUUsWUFBWSxDQUFDO2lCQUMzQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkZXNjcmliZSwgaXQgfSBmcm9tICdtb2NoYSc7XG5cbmltcG9ydCBhc3NlcnQgPSByZXF1aXJlKCdub2RlOmFzc2VydCcpO1xuaW1wb3J0ICogYXMgZnMgZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdub2RlOm9zJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAnbm9kZTpwYXRoJztcblxuaW1wb3J0IHsgcXVpZW5Db25zdWx0YUF5dWRhIH0gZnJvbSAnLi4vc2VydmVyL2FwcC1kbWVuY3UnO1xuaW1wb3J0IHtcbiAgICBjYXJnYXJBeXVkYSwgY2FycGV0YURlbFBhcXVldGUsIGNvbWJpbmFyVGVtYXNEZUF5dWRhLCBsZWVyRnVlbnRlRGVBeXVkYSwgbWVudUNvbkF5dWRhLCBwYXJzZWFyVGVtYURlQXl1ZGEsIHRlbWFzVmlzaWJsZXNcbn0gZnJvbSAnLi4vc2VydmVyL2F5dWRhJztcbmltcG9ydCB0eXBlIHsgQXl1ZGFUZW1hLCBNZW51SW5mb0Jhc2UgfSBmcm9tICcuLi9zZXJ2ZXIvdHlwZXMtZG1lbmN1JztcbmltcG9ydCB7IEFwcFBhcmFUZXN0cywgY29udGV4dG9EZWxSb2wsIGNyZWFyQXBwUGFyYVRlc3RzIH0gZnJvbSAnLi9hcHAtcGFyYS10ZXN0cyc7XG5cbmNvbnN0IEdBQklORVRFID0gJyc7XG5jb25zdCBSRUxFVkFNSUVOVE8gPSAnd2ViJztcblxuZnVuY3Rpb24gYXBwQ29uQXl1ZGEocG9saWN5OiBzdHJpbmcpOiBBcHBQYXJhVGVzdHMge1xuICAgIHZhciBiZSA9IGNyZWFyQXBwUGFyYVRlc3RzKHBvbGljeSk7XG4gICAgYmUuY2FjaGVzLmF5dWRhID0gY2FyZ2FyQXl1ZGEoYmUuZ2V0QXl1ZGFGdWVudGVzKCkpO1xuICAgIHJldHVybiBiZTtcbn1cblxuZnVuY3Rpb24gaWRzVmlzaWJsZXMoYmU6IEFwcFBhcmFUZXN0cywgcm9sOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRlbWFzVmlzaWJsZXMoYmUuY2FjaGVzLmF5dWRhLCBxdWllbkNvbnN1bHRhQXl1ZGEoY29udGV4dG9EZWxSb2woYmUsIHJvbCkpKS5tYXAodGVtYSA9PiB0ZW1hLmlkKTtcbn1cblxuZnVuY3Rpb24gdGVtYShjb250ZW5pZG86IHN0cmluZywgb3JpZ2VuOiBzdHJpbmcgPSAndGVzdCcpOiBBeXVkYVRlbWEge1xuICAgIHJldHVybiBwYXJzZWFyVGVtYURlQXl1ZGEoY29udGVuaWRvLCAndGVtYS5tZCcsIG9yaWdlbik7XG59XG5cbmRlc2NyaWJlKCdkbWVuY3UgLSBheXVkYSBlbiBsw61uZWEnLCAoKSA9PiB7XG5cbiAgICBkZXNjcmliZSgnZm9ybWF0byBkZSBsb3MgYXJjaGl2b3MnLCAoKSA9PiB7XG4gICAgICAgIGl0KCdsZWUgZWwgZW5jYWJlemFkbyB5IGNvbnZpZXJ0ZSBlbCBtYXJrZG93biBhIGh0bWwnLCAoKSA9PiB7XG4gICAgICAgICAgICB2YXIgbGVpZG8gPSB0ZW1hKCctLS1cXG5pZDogdW5vXFxudGl0dWxvOiBVbm9cXG5wZXJtaXNvczogW2NhbXBvLmVkaXRhcl1cXG5tZW51OiBhc2lnbmFjaW9uXFxuLS0tXFxuVGV4dG8gKipmdWVydGUqKiB5IFtvdHJvXShheXVkYTpkb3MpXFxuJyk7XG4gICAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwobGVpZG8uaWQsICd1bm8nKTtcbiAgICAgICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChsZWlkby50aXR1bG8sICdVbm8nKTtcbiAgICAgICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwobGVpZG8ucGVybWlzb3MsIFsnY2FtcG8uZWRpdGFyJ10pO1xuICAgICAgICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChsZWlkby5tZW51LCBbJ2FzaWduYWNpb24nXSk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGxlaWRvLnJvbGVzLCBbXSk7XG4gICAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwobGVpZG8ubW9kbywgbnVsbCk7XG4gICAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwobGVpZG8uaHRtbCwgJzxwPlRleHRvIDxzdHJvbmc+ZnVlcnRlPC9zdHJvbmc+IHkgPGEgaHJlZj1cImF5dWRhOmRvc1wiPm90cm88L2E+PC9wPlxcbicpO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ25vIGRlamEgcGFzYXIgaHRtbCBjcnVkbycsICgpID0+IHtcbiAgICAgICAgICAgIGFzc2VydC5vayghdGVtYSgnLS0tXFxuaWQ6IHVub1xcbnRpdHVsbzogVW5vXFxuLS0tXFxuPHNjcmlwdD5hbGVydCgxKTwvc2NyaXB0PlxcbicpLmh0bWwuaW5jbHVkZXMoJzxzY3JpcHQ+JykpO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ2FjZXB0YSBhcmNoaXZvcyBjb24gQk9NIHkgZmluIGRlIGzDrW5lYSBkZSBXaW5kb3dzJywgKCkgPT4ge1xuICAgICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHRlbWEoJ++7vy0tLVxcclxcbmlkOiB1bm9cXHJcXG50aXR1bG86IFVub1xcclxcbi0tLVxcclxcbmhvbGFcXHJcXG4nKS5odG1sLCAnPHA+aG9sYTwvcD5cXG4nKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGl0KCdyZWNoYXphIHVuIGFyY2hpdm8gc2luIGVuY2FiZXphZG8nLCAoKSA9PiB7XG4gICAgICAgICAgICBhc3NlcnQudGhyb3dzKCgpID0+IHRlbWEoJyMgSG9sYVxcbicpLCAvZmFsdGEgZWwgZW5jYWJlemFkby8pO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ3JlY2hhemEgY2FtcG9zIGRlc2Nvbm9jaWRvcyAocGFyYSBkZXRlY3RhciBlcnJvcmVzIGRlIHRpcGVvKScsICgpID0+IHtcbiAgICAgICAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gdGVtYSgnLS0tXFxuaWQ6IHVub1xcbnRpdHVsbzogVW5vXFxucGVybWlzbzogY2FtcG8uZWRpdGFyXFxuLS0tXFxuJyksIC9jYW1wbyBkZXNjb25vY2lkbyBcInBlcm1pc29cIi8pO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ3JlY2hhemEgdW4gbW9kbyBxdWUgbm8gZXhpc3RlJywgKCkgPT4ge1xuICAgICAgICAgICAgYXNzZXJ0LnRocm93cygoKSA9PiB0ZW1hKCctLS1cXG5pZDogdW5vXFxudGl0dWxvOiBVbm9cXG5tb2RvOiBPRklDSU5BXFxuLS0tXFxuJyksIC9tb2RvIGRlYmUgc2VyLyk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgncmVjaGF6YSBwZXJtaXNvcyBzaW4gYWNjacOzbicsICgpID0+IHtcbiAgICAgICAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gdGVtYSgnLS0tXFxuaWQ6IHVub1xcbnRpdHVsbzogVW5vXFxucGVybWlzb3M6IFtjYW1wb11cXG4tLS1cXG4nKSwgL3Blcm1pc28uYWNjaW9uLyk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgnZXhpZ2UgdMOtdHVsbyBzYWx2byBwYXJhIG9jdWx0YXInLCAoKSA9PiB7XG4gICAgICAgICAgICBhc3NlcnQudGhyb3dzKCgpID0+IHRlbWEoJy0tLVxcbmlkOiB1bm9cXG4tLS1cXG4nKSwgL3RpdHVsby8pO1xuICAgICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHRlbWEoJy0tLVxcbmlkOiB1bm9cXG5vY3VsdGFyOiB0cnVlXFxuLS0tXFxuJykub2N1bHRhciwgdHJ1ZSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgZGVzY3JpYmUoJ2Z1ZW50ZXM6IGPDs21vIGxhcyBhcHBzIGZpbmFsZXMgYWdyZWdhbiwgcmVlbXBsYXphbiB5IG9jdWx0YW4gdGVtYXMnLCAoKSA9PiB7XG4gICAgICAgIHZhciBkbWVuY3UgPSBbXG4gICAgICAgICAgICB0ZW1hKCctLS1cXG5pZDogYVxcbnRpdHVsbzogQSBkZSBkbWVuY3VcXG5vcmRlbjogMVxcbi0tLVxcbicsICdkbWVuY3UnKSxcbiAgICAgICAgICAgIHRlbWEoJy0tLVxcbmlkOiBiXFxudGl0dWxvOiBCXFxub3JkZW46IDJcXG4tLS1cXG4nLCAnZG1lbmN1JyksXG4gICAgICAgICAgICB0ZW1hKCctLS1cXG5pZDogY1xcbnRpdHVsbzogQ1xcbm9yZGVuOiAzXFxuLS0tXFxuJywgJ2RtZW5jdScpLFxuICAgICAgICBdO1xuICAgICAgICB2YXIgYXBwID0gW1xuICAgICAgICAgICAgdGVtYSgnLS0tXFxuaWQ6IGFcXG50aXR1bG86IEEgZGUgbGEgYXBwXFxub3JkZW46IDFcXG4tLS1cXG4nLCAnYXBwJyksXG4gICAgICAgICAgICB0ZW1hKCctLS1cXG5pZDogYlxcbm9jdWx0YXI6IHRydWVcXG4tLS1cXG4nLCAnYXBwJyksXG4gICAgICAgICAgICB0ZW1hKCctLS1cXG5pZDogZFxcbnRpdHVsbzogRFxcbm9yZGVuOiAwXFxuLS0tXFxuJywgJ2FwcCcpLFxuICAgICAgICBdO1xuICAgICAgICBpdCgndW4gaWQgcmVwZXRpZG8gcmVlbXBsYXphIGFsIGFudGVyaW9yLCBvY3VsdGFyIGxvIHF1aXRhIHkgbG9zIG51ZXZvcyBzZSBhZ3JlZ2FuIHNlZ8O6biBvcmRlbicsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBjb21iaW5hZG9zID0gY29tYmluYXJUZW1hc0RlQXl1ZGEoW2RtZW5jdSwgYXBwXSk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGNvbWJpbmFkb3MubWFwKHQgPT4gW3QuaWQsIHQub3JpZ2VuXSksIFtbJ2QnLCAnYXBwJ10sIFsnYScsICdhcHAnXSwgWydjJywgJ2RtZW5jdSddXSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgncmVjaGF6YSBpZHMgcmVwZXRpZG9zIGRlbnRybyBkZSB1bmEgbWlzbWEgY2FycGV0YScsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBjYXJwZXRhID0gZnMubWtkdGVtcFN5bmMocGF0aC5qb2luKG9zLnRtcGRpcigpLCAnYXl1ZGEtJykpO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihjYXJwZXRhLCAnMS5tZCcpLCAnLS0tXFxuaWQ6IGFcXG50aXR1bG86IEFcXG4tLS1cXG4nKTtcbiAgICAgICAgICAgICAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihjYXJwZXRhLCAnMi5tZCcpLCAnLS0tXFxuaWQ6IGFcXG50aXR1bG86IE90cmEgQVxcbi0tLVxcbicpO1xuICAgICAgICAgICAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gbGVlckZ1ZW50ZURlQXl1ZGEoeyBvcmlnZW46ICd0ZXN0JywgY2FycGV0YSB9KSwgL3lhIGVzdMOhIGVuLyk7XG4gICAgICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgICAgIGZzLnJtU3luYyhjYXJwZXRhLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGl0KCdhdmlzYSBzaSBsYSBjYXJwZXRhIG5vIGV4aXN0ZScsICgpID0+IHtcbiAgICAgICAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gbGVlckZ1ZW50ZURlQXl1ZGEoeyBvcmlnZW46ICd0ZXN0JywgY2FycGV0YTogcGF0aC5qb2luKG9zLnRtcGRpcigpLCAnbm8tZXhpc3RlLWF5dWRhJykgfSksIC9ubyBleGlzdGUgbGEgY2FycGV0YS8pO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ2xhIGNhcnBldGEgZGUgZG1lbmN1IHNlIGVuY3VlbnRyYSBkZXNkZSBlbCBqcyBjb21waWxhZG8nLCAoKSA9PiB7XG4gICAgICAgICAgICBhc3NlcnQub2soZnMuZXhpc3RzU3luYyhwYXRoLmpvaW4oY2FycGV0YURlbFBhcXVldGUoX19kaXJuYW1lKSwgJ2F5dWRhJykpKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgnbG9zIHRlbWFzIGRlIGRtZW5jdScsICgpID0+IHtcbiAgICAgICAgaXQoJ25vIHRpZW5lbiBwcm9ibGVtYXMgZW4gR0FCSU5FVEUgKHBlcm1pc29zLCByb2xlcyB5IG9wY2lvbmVzIGRlIG1lbsO6IGV4aXN0ZW4pJywgKCkgPT4ge1xuICAgICAgICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChhcHBDb25BeXVkYShHQUJJTkVURSkucHJvYmxlbWFzRGVBeXVkYSgpLCBbXSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgnbm8gdGllbmVuIHByb2JsZW1hcyBlbiBSRUxFVkFNSUVOVE8nLCAoKSA9PiB7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGFwcENvbkF5dWRhKFJFTEVWQU1JRU5UTykucHJvYmxlbWFzRGVBeXVkYSgpLCBbXSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgnY2FkYSBvcGNpw7NuIGRlbCBtZW7DuiBkZSBhZG1pbiBlbiBHQUJJTkVURSB0aWVuZSB1biB0ZW1hIHF1ZSBsYSBleHBsaWNhLCBkaXJlY3RhIG8gYSB0cmF2w6lzIGRlIHN1IG1lbsO6IHBhZHJlJywgKCkgPT4ge1xuICAgICAgICAgICAgdmFyIGJlID0gYXBwQ29uQXl1ZGEoR0FCSU5FVEUpO1xuICAgICAgICAgICAgdmFyIGNvbnRleHQgPSBjb250ZXh0b0RlbFJvbChiZSwgJ2FkbWluJyk7XG4gICAgICAgICAgICB2YXIgb3BjaW9uZXMgPSBtZW51Q29uQXl1ZGEoYmUuZ2V0TWVudShjb250ZXh0KS5tZW51LCBiZS5jYWNoZXMuYXl1ZGEpO1xuICAgICAgICAgICAgdmFyIHNpbkF5dWRhID0gb3BjaW9uZXMuZmlsdGVyKG9wY2lvbiA9PiBvcGNpb24udGVtYSA9PSBudWxsICYmIG9wY2lvbi5ydXRhICE9ICdjb25maWd1cmFyJyAmJiBvcGNpb24ucnV0YSAhPSAnY2FydG8nKS5tYXAob3BjaW9uID0+IG9wY2lvbi5ydXRhKTtcbiAgICAgICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoc2luQXl1ZGEsIFtdKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgncXXDqSB2ZSBjYWRhIHBlcmZpbCcsICgpID0+IHtcbiAgICAgICAgaXQoJ2VuIFJFTEVWQU1JRU5UTyBxdWllbiByZWxldmEgdmUgbGEgYXl1ZGEgZGVsIGRpc3Bvc2l0aXZvJywgKCkgPT4ge1xuICAgICAgICAgICAgdmFyIGJlID0gYXBwQ29uQXl1ZGEoUkVMRVZBTUlFTlRPKTtcbiAgICAgICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoaWRzVmlzaWJsZXMoYmUsICdlbmN1ZXN0YWRvcicpLCBbJ2RtLXJlbGV2YW1pZW50bycsICdkbS1zaW5jcm9uaXphcicsICdkbS1jYW1iaWFyLW1vZG8nXSk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGlkc1Zpc2libGVzKGJlLCAnc3VwZXJ2aXNvcicpLCBbJ2RtLXJlbGV2YW1pZW50bycsICdkbS1zaW5jcm9uaXphcicsICdkbS1jYW1iaWFyLW1vZG8nXSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgnZW4gUkVMRVZBTUlFTlRPIHF1aWVuIG5vIHJlbGV2YSBubyB2ZSBheXVkYSBuaSBsYSBvcGNpw7NuIGRlbCBtZW7DuicsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBiZSA9IGFwcENvbkF5dWRhKFJFTEVWQU1JRU5UTyk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGlkc1Zpc2libGVzKGJlLCAnY29vcl9jYW1wbycpLCBbXSk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGJlLmdldE1lbnUoY29udGV4dG9EZWxSb2woYmUsICdjb29yX2NhbXBvJykpLm1lbnUsIFtdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGl0KCdlbiBHQUJJTkVURSBlbCBlbmN1ZXN0YWRvciBubyB2ZSBsYSBheXVkYSBkZWwgZGlzcG9zaXRpdm8nLCAoKSA9PiB7XG4gICAgICAgICAgICB2YXIgYmUgPSBhcHBDb25BeXVkYShHQUJJTkVURSk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGlkc1Zpc2libGVzKGJlLCAnZW5jdWVzdGFkb3InKSwgW10pO1xuICAgICAgICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChiZS5nZXRNZW51KGNvbnRleHRvRGVsUm9sKGJlLCAnZW5jdWVzdGFkb3InKSkubWVudSwgW10pO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ2VuIEdBQklORVRFIGVsIGluZ3Jlc2Fkb3IgdmUgbG8gZGUgY2FtcG8gcGVybyBubyBsbyBkZSBhZG1pbmlzdHJhY2nDs24gbmkgcHJvY2VzYW1pZW50bycsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBpZHMgPSBpZHNWaXNpYmxlcyhhcHBDb25BeXVkYShHQUJJTkVURSksICdpbmdyZXNhZG9yJyk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGlkcywgWydjaXJjdWl0by1lbmN1ZXN0YScsICdhc2lnbmFjaW9uJywgJ3JlY2VwY2lvbicsICdzdXBlcnZpc2lvbicsICd2YXJpb3MnXSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgnZGlzZcOxbyBjb25jZXB0dWFsIHZlIGxhIGF5dWRhIGRlIG1ldGFkYXRvcycsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBpZHMgPSBpZHNWaXNpYmxlcyhhcHBDb25BeXVkYShHQUJJTkVURSksICdkaXNfY29uY2VwdHVhbCcpO1xuICAgICAgICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChpZHMsIFsnY2lyY3VpdG8tZW5jdWVzdGEnLCAnbWV0YWRhdG9zJ10pO1xuICAgICAgICB9KTtcbiAgICAgICAgaXQoJ2FkbWluIChzdXBlcnVzZXIpIHZlIHRvZG9zIGxvcyB0ZW1hcyBkZWwgbW9kbycsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBiZSA9IGFwcENvbkF5dWRhKEdBQklORVRFKTtcbiAgICAgICAgICAgIHZhciBkZUdhYmluZXRlID0gYmUuY2FjaGVzLmF5dWRhLmZpbHRlcih0ID0+IHQubW9kbyAhPSAnUkVMRVZBTUlFTlRPJykubWFwKHQgPT4gdC5pZCk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGlkc1Zpc2libGVzKGJlLCAnYWRtaW4nKSwgZGVHYWJpbmV0ZSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgndW4gdGVtYSBwb3Igcm9sIHNlIG11ZXN0cmEgYSBlc2Ugcm9sIGF1bnF1ZSBubyB0ZW5nYSBlbCBwZXJtaXNvJywgKCkgPT4ge1xuICAgICAgICAgICAgdmFyIHBvclJvbCA9IHRlbWEoJy0tLVxcbmlkOiB4XFxudGl0dWxvOiBYXFxucm9sZXM6IFthdXhpbGlhcl1cXG4tLS1cXG4nKTtcbiAgICAgICAgICAgIHZhciBiZSA9IGNyZWFyQXBwUGFyYVRlc3RzKEdBQklORVRFKTtcbiAgICAgICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwodGVtYXNWaXNpYmxlcyhbcG9yUm9sXSwgcXVpZW5Db25zdWx0YUF5dWRhKGNvbnRleHRvRGVsUm9sKGJlLCAnYXV4aWxpYXInKSkpLm1hcCh0ID0+IHQuaWQpLCBbJ3gnXSk7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKHRlbWFzVmlzaWJsZXMoW3BvclJvbF0sIHF1aWVuQ29uc3VsdGFBeXVkYShjb250ZXh0b0RlbFJvbChiZSwgJ2luZ3Jlc2Fkb3InKSkpLCBbXSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpdCgnbGEgb3BjacOzbiBheXVkYSB2YSBhbCBmaW5hbCBkZWwgbWVuw7ogZGUgcXVpZW4gdGllbmUgdGVtYXMnLCAoKSA9PiB7XG4gICAgICAgICAgICB2YXIgYmUgPSBhcHBDb25BeXVkYShSRUxFVkFNSUVOVE8pO1xuICAgICAgICAgICAgdmFyIG1lbnU6IE1lbnVJbmZvQmFzZVtdID0gYmUuZ2V0TWVudShjb250ZXh0b0RlbFJvbChiZSwgJ2VuY3Vlc3RhZG9yJykpLm1lbnU7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKG1lbnUubWFwKG9wY2lvbiA9PiBvcGNpb24ubmFtZSksIFsncmVsZXZhbWllbnRvJywgJ3NpbmNyb25pemFyJywgJ2NhbWJpYXJfbW9kbycsICdheXVkYSddKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgnbWVuw7ogY29uIGF5dWRhIChsbyBxdWUgbXVlc3RyYSBcIlF1w6kgcHVlZG8gaGFjZXJcIiknLCAoKSA9PiB7XG4gICAgICAgIGl0KCdsaWdhIGNhZGEgb3BjacOzbiBkZWwgbWVuw7ogZGVsIHVzdWFyaW8gY29uIHN1IHRlbWEgeSBubyBpbmNsdXllIGxhIG9wY2nDs24gYXl1ZGEnLCAoKSA9PiB7XG4gICAgICAgICAgICB2YXIgYmUgPSBhcHBDb25BeXVkYShSRUxFVkFNSUVOVE8pO1xuICAgICAgICAgICAgdmFyIGNvbnRleHQgPSBjb250ZXh0b0RlbFJvbChiZSwgJ2VuY3Vlc3RhZG9yJyk7XG4gICAgICAgICAgICB2YXIgdGVtYXMgPSB0ZW1hc1Zpc2libGVzKGJlLmNhY2hlcy5heXVkYSwgcXVpZW5Db25zdWx0YUF5dWRhKGNvbnRleHQpKTtcbiAgICAgICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwobWVudUNvbkF5dWRhKGJlLmdldE1lbnUoY29udGV4dCkubWVudSwgdGVtYXMpLCBbXG4gICAgICAgICAgICAgICAgeyBydXRhOiAncmVsZXZhbWllbnRvJywgbGFiZWw6ICdyZWxldmFtaWVudG8nLCB0ZW1hOiAnZG0tcmVsZXZhbWllbnRvJywgb3BjaW9uZXM6IFtdIH0sXG4gICAgICAgICAgICAgICAgeyBydXRhOiAnc2luY3Jvbml6YXInLCBsYWJlbDogJ3NpbmNyb25pemFyJywgdGVtYTogJ2RtLXNpbmNyb25pemFyJywgb3BjaW9uZXM6IFtdIH0sXG4gICAgICAgICAgICAgICAgeyBydXRhOiAnY2FtYmlhcl9tb2RvJywgbGFiZWw6ICdjYW1iaWFyIG1vZG8nLCB0ZW1hOiAnZG0tY2FtYmlhci1tb2RvJywgb3BjaW9uZXM6IFtdIH0sXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGl0KCdyZWNvcnJlIGxvcyBzdWJtZW7DunMgY29uIHJ1dGFzIHNlcGFyYWRhcyBwb3IgLycsICgpID0+IHtcbiAgICAgICAgICAgIHZhciBiZSA9IGFwcENvbkF5dWRhKEdBQklORVRFKTtcbiAgICAgICAgICAgIHZhciBjb250ZXh0ID0gY29udGV4dG9EZWxSb2woYmUsICdpbmdyZXNhZG9yJyk7XG4gICAgICAgICAgICB2YXIgdGVtYXMgPSB0ZW1hc1Zpc2libGVzKGJlLmNhY2hlcy5heXVkYSwgcXVpZW5Db25zdWx0YUF5dWRhKGNvbnRleHQpKTtcbiAgICAgICAgICAgIHZhciBhc2lnbmFjaW9uID0gbWVudUNvbkF5dWRhKGJlLmdldE1lbnUoY29udGV4dCkubWVudSwgdGVtYXMpLmZpbmQob3BjaW9uID0+IG9wY2lvbi5ydXRhID09ICdhc2lnbmFjaW9uJyk7XG4gICAgICAgICAgICBhc3NlcnQub2soYXNpZ25hY2lvbik7XG4gICAgICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGFzaWduYWNpb24ub3BjaW9uZXMubWFwKG9wY2lvbiA9PiBbb3BjaW9uLnJ1dGEsIG9wY2lvbi50ZW1hXSksIFtcbiAgICAgICAgICAgICAgICBbJ2FzaWduYWNpb24vZW5jdWVzdGFkb3InLCAnYXNpZ25hY2lvbiddLFxuICAgICAgICAgICAgICAgIFsnYXNpZ25hY2lvbi9pbmdyZXNhZG9yJywgJ2FzaWduYWNpb24nXSxcbiAgICAgICAgICAgICAgICBbJ2FzaWduYWNpb24vcmVjdXBlcmFkb3InLCAnYXNpZ25hY2lvbiddLFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xufSk7XG4iXX0=
@@ -6,3 +6,4 @@ import './test-menu-segun-rol';
6
6
  import './test-caches-rea';
7
7
  import './test-impacto-rea-no-rea-en-bd';
8
8
  import './test-ejemplo';
9
+ import './test-ayuda';
package/dist/test/test.js CHANGED
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./test-rea-no-rea", "./test-helpers-casilleros", "./test-helpers-formulario", "./test-setters-rea-no-rea", "./test-menu-segun-rol", "./test-caches-rea", "./test-impacto-rea-no-rea-en-bd", "./test-ejemplo"], factory);
7
+ define(["require", "exports", "./test-rea-no-rea", "./test-helpers-casilleros", "./test-helpers-formulario", "./test-setters-rea-no-rea", "./test-menu-segun-rol", "./test-caches-rea", "./test-impacto-rea-no-rea-en-bd", "./test-ejemplo", "./test-ayuda"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -17,5 +17,6 @@
17
17
  require("./test-caches-rea");
18
18
  require("./test-impacto-rea-no-rea-en-bd");
19
19
  require("./test-ejemplo");
20
+ require("./test-ayuda");
20
21
  });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOztJQUViLDZCQUEyQjtJQUMzQixxQ0FBbUM7SUFDbkMscUNBQW1DO0lBQ25DLHFDQUFtQztJQUNuQyxpQ0FBK0I7SUFDL0IsNkJBQTJCO0lBQzNCLDJDQUF5QztJQUN6QywwQkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0ICcuL3Rlc3QtcmVhLW5vLXJlYSc7XG5pbXBvcnQgJy4vdGVzdC1oZWxwZXJzLWNhc2lsbGVyb3MnO1xuaW1wb3J0ICcuL3Rlc3QtaGVscGVycy1mb3JtdWxhcmlvJztcbmltcG9ydCAnLi90ZXN0LXNldHRlcnMtcmVhLW5vLXJlYSc7XG5pbXBvcnQgJy4vdGVzdC1tZW51LXNlZ3VuLXJvbCc7XG5pbXBvcnQgJy4vdGVzdC1jYWNoZXMtcmVhJztcbmltcG9ydCAnLi90ZXN0LWltcGFjdG8tcmVhLW5vLXJlYS1lbi1iZCc7XG5pbXBvcnQgJy4vdGVzdC1lamVtcGxvJzsiXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOztJQUViLDZCQUEyQjtJQUMzQixxQ0FBbUM7SUFDbkMscUNBQW1DO0lBQ25DLHFDQUFtQztJQUNuQyxpQ0FBK0I7SUFDL0IsNkJBQTJCO0lBQzNCLDJDQUF5QztJQUN6QywwQkFBd0I7SUFDeEIsd0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCAnLi90ZXN0LXJlYS1uby1yZWEnO1xuaW1wb3J0ICcuL3Rlc3QtaGVscGVycy1jYXNpbGxlcm9zJztcbmltcG9ydCAnLi90ZXN0LWhlbHBlcnMtZm9ybXVsYXJpbyc7XG5pbXBvcnQgJy4vdGVzdC1zZXR0ZXJzLXJlYS1uby1yZWEnO1xuaW1wb3J0ICcuL3Rlc3QtbWVudS1zZWd1bi1yb2wnO1xuaW1wb3J0ICcuL3Rlc3QtY2FjaGVzLXJlYSc7XG5pbXBvcnQgJy4vdGVzdC1pbXBhY3RvLXJlYS1uby1yZWEtZW4tYmQnO1xuaW1wb3J0ICcuL3Rlc3QtZWplbXBsbyc7XG5pbXBvcnQgJy4vdGVzdC1heXVkYSc7Il19