dmencu 3.3.1 → 3.5.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 (83) 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/muestra.md +14 -0
  10. package/ayuda/procesar.md +13 -0
  11. package/ayuda/recepcion.md +20 -0
  12. package/ayuda/supervision.md +9 -0
  13. package/ayuda/usuarios.md +12 -0
  14. package/ayuda/varios.md +23 -0
  15. package/dist/client/client/client.js +99 -2
  16. package/dist/client/client/css/menu.styl +29 -0
  17. package/dist/client/unlogged/css/formulario-react.styl +9 -0
  18. package/dist/client/unlogged/render-config.d.ts +5 -1
  19. package/dist/client/unlogged/render-config.js +14 -1
  20. package/dist/client/unlogged/render-formulario.d.ts +1 -0
  21. package/dist/client/unlogged/render-formulario.js +43 -2
  22. package/dist/client/unlogged/render-formulario.tsx +71 -0
  23. package/dist/client/unlogged/render-general.d.ts +2 -0
  24. package/dist/client/unlogged/render-general.js +2 -1
  25. package/dist/client/unlogged/render-general.tsx +1 -0
  26. package/dist/client/unlogged/render-init.d.ts +1 -0
  27. package/dist/client/unlogged/render-init.js +9 -2
  28. package/dist/client/unlogged/tipos.d.ts +19 -1
  29. package/dist/client/unlogged/tipos.js +1 -1
  30. package/dist/server/app-dmencu.d.ts +8 -1
  31. package/dist/server/app-dmencu.js +42 -2
  32. package/dist/server/ayuda.d.ts +19 -0
  33. package/dist/server/ayuda.js +224 -0
  34. package/dist/server/def-config.d.ts +1 -1
  35. package/dist/server/def-config.js +2 -1
  36. package/dist/server/procedures-dmencu.js +20 -2
  37. package/dist/server/server/app-dmencu.d.ts +8 -1
  38. package/dist/server/server/app-dmencu.js +42 -2
  39. package/dist/server/server/ayuda.d.ts +19 -0
  40. package/dist/server/server/ayuda.js +224 -0
  41. package/dist/server/server/def-config.d.ts +1 -1
  42. package/dist/server/server/def-config.js +2 -1
  43. package/dist/server/server/procedures-dmencu.js +18 -2
  44. package/dist/server/server/table-tem.d.ts +1 -0
  45. package/dist/server/server/table-tem.js +25 -21
  46. package/dist/server/server/table-tem_edicion.d.ts +2 -0
  47. package/dist/server/server/table-tem_edicion.js +62 -0
  48. package/dist/server/server/types-dmencu.d.ts +20 -1
  49. package/dist/server/server/types-dmencu.js +1 -1
  50. package/dist/server/table-tem.d.ts +1 -0
  51. package/dist/server/table-tem.js +25 -21
  52. package/dist/server/table-tem_edicion.d.ts +2 -0
  53. package/dist/server/table-tem_edicion.js +62 -0
  54. package/dist/server/types-dmencu.d.ts +20 -1
  55. package/dist/server/types-dmencu.js +1 -1
  56. package/dist/server/unlogged/tipos.d.ts +19 -1
  57. package/dist/server/unlogged/tipos.js +1 -1
  58. package/dist/test/app-para-tests.d.ts +11 -8
  59. package/dist/test/app-para-tests.js +8 -2
  60. package/dist/test/test-ayuda.d.ts +1 -0
  61. package/dist/test/test-ayuda.js +183 -0
  62. package/dist/test/test-tem-edicion.d.ts +1 -0
  63. package/dist/test/test-tem-edicion.js +103 -0
  64. package/dist/test/test.d.ts +2 -0
  65. package/dist/test/test.js +4 -2
  66. package/dist/unlogged/tipos.d.ts +19 -1
  67. package/dist/unlogged/tipos.js +1 -1
  68. package/dist/unlogged/unlogged/css/formulario-react.styl +9 -0
  69. package/dist/unlogged/unlogged/render-config.d.ts +5 -1
  70. package/dist/unlogged/unlogged/render-config.js +14 -1
  71. package/dist/unlogged/unlogged/render-formulario.d.ts +1 -0
  72. package/dist/unlogged/unlogged/render-formulario.js +43 -2
  73. package/dist/unlogged/unlogged/render-formulario.tsx +71 -0
  74. package/dist/unlogged/unlogged/render-general.d.ts +2 -0
  75. package/dist/unlogged/unlogged/render-general.js +2 -1
  76. package/dist/unlogged/unlogged/render-general.tsx +1 -0
  77. package/dist/unlogged/unlogged/render-init.d.ts +1 -0
  78. package/dist/unlogged/unlogged/render-init.js +9 -2
  79. package/dist/unlogged/unlogged/tipos.d.ts +19 -1
  80. package/dist/unlogged/unlogged/tipos.js +1 -1
  81. package/dist/unlogged/unlogged/unlogged.js +14 -1
  82. package/install/validar_manzana_casa_tem_trg.sql +25 -0
  83. package/package.json +5 -2
@@ -1,3 +1,4 @@
1
1
  import { TableDefinition, ContextForDump, FieldDefinition } from "./types-dmencu";
2
2
  export declare var getDomicilioFields: () => FieldDefinition[];
3
+ export declare var filtroTemSegunUsuario: (context: ContextForDump) => string;
3
4
  export declare function tem(context: ContextForDump, opts?: any): TableDefinition;
@@ -9,7 +9,7 @@
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getDomicilioFields = void 0;
12
+ exports.filtroTemSegunUsuario = exports.getDomicilioFields = void 0;
13
13
  exports.tem = tem;
14
14
  const procesamiento_1 = require("procesamiento");
15
15
  const sqlTools = require("sql-tools");
@@ -26,6 +26,16 @@
26
26
  { name: 'barrio', typeName: 'text', editable: false },
27
27
  ];
28
28
  exports.getDomicilioFields = getDomicilioFields;
29
+ // muestra las encuestas de producción o de capacitación según lo que tenga habilitado el usuario (tem t)
30
+ var filtroTemSegunUsuario = (context) => `
31
+ join usuarios usu_con on usu_con.usuario = ${sqlTools.quoteLiteral(context.user.usuario)}
32
+ where
33
+ usu_con.muestra_encuestas_prod and t.enc_autogenerado_dm is not null
34
+ or
35
+ usu_con.muestra_encuestas_capa and t.enc_autogenerado_dm_capa is not null
36
+ or
37
+ t.enc_autogenerado_dm is null and t.enc_autogenerado_dm_capa is null`;
38
+ exports.filtroTemSegunUsuario = filtroTemSegunUsuario;
29
39
  function tem(context, opts) {
30
40
  var _a, _b, _c, _d, _e, _f;
31
41
  var opts = opts || {};
@@ -51,7 +61,7 @@
51
61
  },
52
62
  editable: puedeEditarCampo || puedeEditarProc,
53
63
  hiddenColumns: [
54
- 'seleccionado_ant', 'cita', 'notas', 'cluster', 'codviviendaparticular', 'casa', 'obsdatosdomicilio', 'obsconjunto', 'reserva', 'rotacion_etoi', 'rotacion_eah',
64
+ 'seleccionado_ant', 'cita', 'notas', 'cluster', 'codviviendaparticular', 'obsdatosdomicilio', 'obsconjunto', 'reserva', 'rotacion_etoi', 'rotacion_eah',
55
65
  'trimestre', 'procedencia', 'sel_etoi_villa', 'marco', 'semana', 'periodicidad',
56
66
  'cargado_dm', 'estados__permite_editar_encuesta'
57
67
  ],
@@ -69,7 +79,7 @@
69
79
  { name: 'enc_ant', typeName: 'text', editable: false },
70
80
  { name: 'area_ant', typeName: 'integer', editable: false },
71
81
  { name: 'seleccionado_ant', typeName: 'jsonb', editable: false },
72
- { name: 'cita', typeName: 'text', editable: true },
82
+ { name: 'cita', typeName: 'text', editable: false },
73
83
  { name: 'rea', typeName: 'integer', editable: false },
74
84
  { name: 'norea', typeName: 'integer', editable: false },
75
85
  { name: 'cant_h', typeName: 'integer', editable: false },
@@ -84,18 +94,18 @@
84
94
  //{name:'encu_habilitada' , typeName:'boolean' , editable: false , inTable: false },
85
95
  //{name:'encu_cargado' , typeName:'boolean' , editable: false , inTable: false },
86
96
  { name: 'encuestador', typeName: 'text', editable: false, inTable: false },
87
- { name: 'nombre_enc', typeName: 'text', inTable: false },
88
- { name: 'apellido_enc', typeName: 'text', inTable: false },
97
+ { name: 'nombre_enc', typeName: 'text', editable: false, inTable: false },
98
+ { name: 'apellido_enc', typeName: 'text', editable: false, inTable: false },
89
99
  //{name:'recu_habilitada' , typeName:'boolean' , editable: false , inTable: false },
90
100
  //{name:'recu_cargado' , typeName:'boolean' , editable: false , inTable: false },
91
101
  { name: 'recuperador', typeName: 'text', editable: false, inTable: false },
92
- { name: 'nombre_rec', typeName: 'text', inTable: false },
93
- { name: 'apellido_rec', typeName: 'text', inTable: false },
102
+ { name: 'nombre_rec', typeName: 'text', editable: false, inTable: false },
103
+ { name: 'apellido_rec', typeName: 'text', editable: false, inTable: false },
94
104
  //{name:'supe_habilitada' , typeName:'boolean' , editable: false , inTable: false },
95
105
  //{name:'supe_cargado' , typeName:'boolean' , editable: false , inTable: false },
96
106
  { name: 'supervisor', typeName: 'text', editable: false, inTable: false },
97
- { name: 'nombre_sup', typeName: 'text', inTable: false },
98
- { name: 'apellido_sup', typeName: 'text', inTable: false },
107
+ { name: 'nombre_sup', typeName: 'text', editable: false, inTable: false },
108
+ { name: 'apellido_sup', typeName: 'text', editable: false, inTable: false },
99
109
  { name: 'rea_sup', typeName: 'integer', editable: false },
100
110
  { name: 'norea_sup', typeName: 'integer', editable: false },
101
111
  { name: 'resumen_estado_sup', typeName: 'text', editable: false },
@@ -103,9 +113,9 @@
103
113
  { name: 'supervision_aleatoria', typeName: 'integer', editable: false },
104
114
  { name: 'supervision_dirigida', typeName: 'integer', editable: false },
105
115
  { name: 'supervision', typeName: 'integer', editable: false },
106
- { name: 'result_sup', typeName: 'integer', editable: puedeEditarCampo },
107
- { name: 'fin_campo', typeName: 'text', editable: puedeEditarCampo },
108
- { name: 'proie', typeName: 'text', editable: puedeEditarCampo || puedeEditarProc },
116
+ { name: 'result_sup', typeName: 'integer', editable: false },
117
+ { name: 'fin_campo', typeName: 'text', editable: false },
118
+ { name: 'proie', typeName: 'text', editable: false },
109
119
  { name: 'pase_tabla', typeName: 'text', editable: false },
110
120
  ...(0, exports.getDomicilioFields)(),
111
121
  //{name: "verificar" , typeName:'boolean', editable:true, inTable:false, clientSide:'verificarCaso'},
@@ -123,6 +133,7 @@
123
133
  { name: 'nroradio', typeName: 'integer', editable: false },
124
134
  { name: 'nromanzana', typeName: 'integer', editable: false },
125
135
  { name: 'nrolado', typeName: 'integer', editable: false },
136
+ { name: 'casa', typeName: 'text', editable: false },
126
137
  { name: 'usodomicilio', typeName: 'integer', editable: false },
127
138
  { name: 'orden_relevamiento', typeName: 'integer', editable: false },
128
139
  { name: 'mapa', typeName: 'integer', editable: false },
@@ -134,7 +145,6 @@
134
145
  { name: 'panel', typeName: 'integer', editable: false, visible: true },
135
146
  //vacios o poco interesantes
136
147
  { name: 'codviviendaparticular', typeName: 'text', editable: false },
137
- { name: 'casa', typeName: 'text', editable: false },
138
148
  { name: 'obsdatosdomicilio', typeName: 'text', editable: false },
139
149
  { name: 'obsconjunto', typeName: 'text', editable: false },
140
150
  { name: 'reserva', typeName: 'integer', editable: false },
@@ -231,17 +241,11 @@
231
241
  left join usuarios usu_enc on usu_enc.idper = tt.etareas->'encu'->>'asignado'
232
242
  left join usuarios usu_rec on usu_rec.idper = tt.etareas->'recu'->>'asignado'
233
243
  left join usuarios usu_sup on usu_sup.idper = tt.etareas->'supe'->>'asignado'
234
- join usuarios usu_con on usu_con.usuario = ${sqlTools.quoteLiteral(context.user.usuario)}
235
- where
236
- usu_con.muestra_encuestas_prod and t.enc_autogenerado_dm is not null
237
- or
238
- usu_con.muestra_encuestas_capa and t.enc_autogenerado_dm_capa is not null
239
- or
240
- t.enc_autogenerado_dm is null and t.enc_autogenerado_dm_capa is null
244
+ ${(0, exports.filtroTemSegunUsuario)(context)}
241
245
  )
242
246
  `
243
247
  };
244
248
  return def;
245
249
  }
246
250
  });
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90YWJsZS10ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFvQmIsa0JBcU5LO0lBdE9MLGlEQUFrRDtJQUNsRCxzQ0FBc0M7SUFHL0IsSUFBSSxrQkFBa0IsR0FBRyxHQUFxQixFQUFFLENBQUM7UUFDcEQsRUFBQyxJQUFJLEVBQUMsVUFBVSxFQUFlLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxVQUFVLEVBQWUsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLGNBQWMsRUFBVyxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsTUFBTSxFQUFtQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsY0FBYyxFQUFXLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxZQUFZLEVBQWEsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFFBQVEsRUFBaUIsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFVBQVUsRUFBZSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFpQixR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QUFDO0lBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xyXG5cclxuaW1wb3J0IHtUYWJsZURlZmluaXRpb24sIENvbnRleHRGb3JEdW1wLCBGaWVsZERlZmluaXRpb259IGZyb20gXCIuL3R5cGVzLWRtZW5jdVwiO1xyXG5pbXBvcnQge09wZXJhdGl2b0dlbmVyYXRvciB9IGZyb20gXCJwcm9jZXNhbWllbnRvXCI7XHJcbmltcG9ydCAqIGFzIHNxbFRvb2xzIGZyb20gJ3NxbC10b29scyc7XHJcblxyXG5cclxuZXhwb3J0IHZhciBnZXREb21pY2lsaW9GaWVsZHMgPSAoKTpGaWVsZERlZmluaXRpb25bXSA9PiBbXHJcbiAgICB7bmFtZTonY29kY2FsbGUnICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J25vbWNhbGxlJyAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOiducm9jYXRhc3RyYWwnICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZToncGlzbycgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J2RlcGFydGFtZW50bycgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidoYWJpdGFjaW9uJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonc2VjdG9yJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J2VkaWZpY2lvJyAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidlbnRyYWRhJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonYmFycmlvJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG5dXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdGVtKGNvbnRleHQ6Q29udGV4dEZvckR1bXAsIG9wdHM/OmFueSk6VGFibGVEZWZpbml0aW9uIHtcclxuICAgIHZhciBvcHRzPW9wdHN8fHt9O1xyXG4gICAgdmFyIHJlY2VwY2lvbj1vcHRzLnJlY2VwY2lvbj8nX3JlY2VwY2lvbic6Jyc7XHJcbiAgICB2YXIgYmU9Y29udGV4dC5iZTtcclxuICAgIHZhciBwdWVkZUVkaXRhckNhbXBvID0gY29udGV4dC5mb3JEdW1wIHx8IGNvbnRleHQucHVlZGU/LmNhbXBvPy5hZG1pbmlzdHJhcnx8Y29udGV4dC51c2VyLnJvbD09PSdyZWNlcGNpb25pc3RhJztcclxuICAgIHZhciBwdWVkZUVkaXRhclByb2MgPSBjb250ZXh0LmZvckR1bXAgfHwgY29udGV4dC5wdWVkZT8uZW5jdWVzdGFzPy5wcm9jZXNhcjtcclxuXHJcbiAgICB2YXIgY29sdW1uYXNBcmVhc1BhcmFMYVRlbT1bJ29ic19yZWNlcGNpb25pc3RhJywndmVyaWZpY2Fkb19yZWMnLCdyZWNlcGNpb25pc3RhJ107XHJcblxyXG4gICAgdmFyIGNvbHVtbmFzTm9SZWE9W1xyXG4gICAgICAgIHtuYW1lOidncnVfbm9fcmVhJywgZXhwcjogJ2dydXBvJyB9XHJcbiAgICBdO1xyXG4gICAgdmFyIGNvbHVtbmFzU29sb1RlbT1bXHJcbiAgICAgICAgICAnZW5jX29yaWdpbmFsJyAgICwgJ2pzb25fZW5jdWVzdGEnICAgICAgLCAnanNvbl9iYWNrdXAnLCAnZmVjaGFfbW9kaWZfZW5jdWVzdGEnLCAnZmVjaGFfYmFja3VwJ1xyXG4gICAgICAgICwgJ2g0JyAgICAgICAgICAgICAsICd4JyAgICAgICAsICd5JyAgICAgICwgJ2ZleHAnXHJcbiAgICBdO1xyXG4gICAgdmFyIGRlZjogVGFibGVEZWZpbml0aW9uPSB7XHJcbiAgICAgICAgbmFtZTpgdGVtJHtyZWNlcGNpb259YCxcclxuICAgICAgICB0YWJsZU5hbWU6J3RlbScsXHJcbiAgICAgICAgbXVlc3RyYUFicmlyRW5Ub2Rhc0xhc1RhcmVhczp0cnVlLFxyXG4gICAgICAgIGFsbG93OntcclxuICAgICAgICAgICAgaW5zZXJ0OmZhbHNlLFxyXG4gICAgICAgICAgICBkZWxldGU6Y29udGV4dC5mb3JEdW1wLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZWRpdGFibGU6IHB1ZWRlRWRpdGFyQ2FtcG98fHB1ZWRlRWRpdGFyUHJvYyxcclxuICAgICAgICBoaWRkZW5Db2x1bW5zOltcclxuICAgICAgICAgICAgJ3NlbGVjY2lvbmFkb19hbnQnLCdjaXRhJywnbm90YXMnLCAnY2x1c3RlcicsICdjb2R2aXZpZW5kYXBhcnRpY3VsYXInLCAnY2FzYScsICdvYnNkYXRvc2RvbWljaWxpbycsICdvYnNjb25qdW50bycsICdyZXNlcnZhJywgJ3JvdGFjaW9uX2V0b2knLCAncm90YWNpb25fZWFoJ1xyXG4gICAgICAgICAgICAsICd0cmltZXN0cmUnICAgLCAncHJvY2VkZW5jaWEnLCAnc2VsX2V0b2lfdmlsbGEnICAgLCAnbWFyY28nICAgICAgLCAnc2VtYW5hJyAsICdwZXJpb2RpY2lkYWQnIFxyXG4gICAgICAgICAgICAsICdjYXJnYWRvX2RtJywgJ2VzdGFkb3NfX3Blcm1pdGVfZWRpdGFyX2VuY3Vlc3RhJ1xyXG4gICAgICAgIF0sXHJcbiAgICAgICAgXCJmaWVsZHNcIjogW1xyXG4gICAgICAgICAgICB7bmFtZTonb3BlcmF0aXZvJyAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsIG51bGxhYmxlOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnZXRvaTIxMSd9LFxyXG4gICAgICAgICAgICB7bmFtZTonZW5jJyAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsIG51bGxhYmxlOiBmYWxzZSAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge25hbWU6IFwiYWJyaXJcIiAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsIGluVGFibGU6ZmFsc2UsIGNsaWVudFNpZGU6J2FicmlyJ30sXHJcbiAgICAgICAgICAgIHtuYW1lOlwiY29uc2lzdGlyXCIgICAgICAgICAgICAsIHR5cGVOYW1lOiAndGV4dCcgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidjb25zaXN0aXInfSxcclxuICAgICAgICAgICAge25hbWU6IFwiY2x1c3RlclwiICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlLCBpc05hbWU6dHJ1ZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOid0YXJlYV9hY3R1YWwnICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwiaGFiaWxpdGFyXCIgICAgICAgICAgICAsIHR5cGVOYW1lOiBcInRleHRcIiAgICwgZWRpdGFibGU6ZmFsc2UgICAsIGluVGFibGU6ZmFsc2UsIGNsaWVudFNpZGU6J2hhYmlsaXRhcid9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImhhYmlsaXRhZGFcIiAgICAgICAgICAgLCB0eXBlTmFtZTogJ2Jvb2xlYW4nLCBlZGl0YWJsZTpwdWVkZUVkaXRhckNhbXBvLCBudWxsYWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTonYXJlYScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonem9uYScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonZW5jX2FudCcgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonYXJlYV9hbnQnICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonc2VsZWNjaW9uYWRvX2FudCcgICAgICwgdHlwZU5hbWU6J2pzb25iJyAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2l0YScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IHRydWUgICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVhJyAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbm9yZWEnICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FudF9oJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FudF9wJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonc2VsZWNjaW9uYWRvJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4vLyAgICAgICAgICAgIHtuYW1lOidzZXhvX3NlbCcgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbi8vICAgICAgICAgICAge25hbWU6J2VkYWRfc2VsJyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Jlc3VsdGFkbycgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2dydV9ub19yZWEnICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6ZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXN1bWVuX2VzdGFkbycgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidjYXJnYWRvJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy97bmFtZTonZW5jdV9oYWJpbGl0YWRhJyAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J2VuY3VfY2FyZ2FkbycgICAgICAgICAsIHR5cGVOYW1lOidib29sZWFuJyAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonZW5jdWVzdGFkb3InICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidub21icmVfZW5jJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2FwZWxsaWRvX2VuYycgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidyZWN1X2hhYmlsaXRhZGEnICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy97bmFtZToncmVjdV9jYXJnYWRvJyAgICAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZWN1cGVyYWRvcicgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vbWJyZV9yZWMnICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonYXBlbGxpZG9fcmVjJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J3N1cGVfaGFiaWxpdGFkYScgICAgICAsIHR5cGVOYW1lOidib29sZWFuJyAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidzdXBlX2NhcmdhZG8nICAgICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3N1cGVydmlzb3InICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbm9tYnJlX3N1cCcgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidhcGVsbGlkb19zdXAnICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3JlYV9zdXAnICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTonbm9yZWFfc3VwJyAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICAgICAsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXN1bWVuX2VzdGFkb19zdXAnICAgLCB0eXBlTmFtZTondGV4dCcgICAgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J3ByZV9zb3J0ZW8nICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2UsIHZpc2libGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J3N1cGVydmlzaW9uX2FsZWF0b3JpYScsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTonc3VwZXJ2aXNpb25fZGlyaWdpZGEnICwgdHlwZU5hbWU6J2ludGVnZXInICAgICAsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzdXBlcnZpc2lvbicgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J3Jlc3VsdF9zdXAnICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogcHVlZGVFZGl0YXJDYW1wb30sXHJcbiAgICAgICAgICAgIHtuYW1lOidmaW5fY2FtcG8nICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogcHVlZGVFZGl0YXJDYW1wbyAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Byb2llJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBwdWVkZUVkaXRhckNhbXBvfHxwdWVkZUVkaXRhclByb2MgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwYXNlX3RhYmxhJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC4uLmdldERvbWljaWxpb0ZpZWxkcygpLFxyXG4gICAgICAgICAgICAvL3tuYW1lOiBcInZlcmlmaWNhclwiICAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nLCBlZGl0YWJsZTp0cnVlLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOid2ZXJpZmljYXJDYXNvJ30sXHJcbiAgICAgICAgICAgIC8ve25hbWU6IFwiZmluYWxpemFyX2NhbXBvXCIgLCB0eXBlTmFtZTonYm9vbGVhbicsIGVkaXRhYmxlOnRydWUsIGluVGFibGU6ZmFsc2UsIGNsaWVudFNpZGU6J2ZpbmFsaXphckNhbXBvJ30sIC8vZmluX2RlX2NhbXBvXHJcbiAgICAgICAgICAgIC8ve25hbWU6IFwicHJvY2VzYW1pZW50b1wiICAgLCB0eXBlTmFtZTonYm9vbGVhbicsIGVkaXRhYmxlOnRydWUsIGluVGFibGU6ZmFsc2UsIGNsaWVudFNpZGU6J3Bhc2FyQVByb2Nlc2FtaWVudG8nLCBsYWJlbDogJ3Bhc2FyIGEgcHJvY2VzYW1pZW50byd9LCAvL3Byb2Nlc2FtaWVudG9cclxuICAgICAgICAgICAge25hbWU6J2ZleHAnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2FyZWF1cCcgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NvZHBvcycgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2RvbWluaW8nICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2VzdHJhdG9faW5nJyAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2lkX21hcmNvJyAgICAgICAgICAgICAsIHR5cGVOYW1lOidiaWdpbnQnICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J29icycgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25yb2NvbXVuYScgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25yb2ZyYWNjaW9uJyAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25yb3JhZGlvJyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25yb21hbnphbmEnICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25yb2xhZG8nICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Vzb2RvbWljaWxpbycgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J29yZGVuX3JlbGV2YW1pZW50bycgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J21hcGEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6IFwiY29uc2lzdGlkb1wiICAgICAgICAgICwgdHlwZU5hbWU6ICd0aW1lc3RhbXAnLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOmZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FyZ2Fkb19kbScgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwYXJ0aWNpcGFjaW9uJyAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiB0cnVlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncm90YWNpb24nICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogdHJ1ZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NsYXNlJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IHRydWUgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwYW5lbCcgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiB0cnVlICB9LFxyXG4gICAgICAgICAgICAvL3ZhY2lvcyBvIHBvY28gaW50ZXJlc2FudGVzXHJcbiAgICAgICAgICAgIHtuYW1lOidjb2R2aXZpZW5kYXBhcnRpY3VsYXInLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidjYXNhJyAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidvYnNkYXRvc2RvbWljaWxpbycgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidvYnNjb25qdW50bycgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXNlcnZhJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyb3RhY2lvbl9ldG9pJyAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3JvdGFjaW9uX2VhaCcgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTondHJpbWVzdHJlJyAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwcm9jZWRlbmNpYScgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3NlbF9ldG9pX3ZpbGxhJyAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbWFyY28nICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzZW1hbmEnICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3BlcmlvZGljaWRhZCcgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3NvbG8gdGVtIFxyXG4gICAgICAgICAgICB7bmFtZTonZmVjaGFfbW9kaWZfZW5jdWVzdGEnICwgdHlwZU5hbWU6IFwidGltZXN0YW1wXCIsIGVkaXRhYmxlOmZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonanNvbl9lbmN1ZXN0YScgICAgICAgICwgdHlwZU5hbWU6J2pzb25iJyAgICAgLCBlZGl0YWJsZTpmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2ZlY2hhX2JhY2t1cCcgICAgICAgICAsIHR5cGVOYW1lOiBcInRpbWVzdGFtcFwiLCBlZGl0YWJsZTpmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwianNvbl9iYWNrdXBcIiAgICAgICAgICAsIHR5cGVOYW1lOidqc29uYicgICAsIGVkaXRhYmxlOiBmYWxzZSwgdmlzaWJsZTpmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwidG9rZW5fYXV0b2dlbmVyYWRvX2RtXCIsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSwgdmlzaWJsZTpmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwiZW5jX2F1dG9nZW5lcmFkb19kbVwiICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6XCJlbmNfYXV0b2dlbmVyYWRvX2RtX2NhcGFcIiwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImg0XCIgICAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwieFwiICAgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidkZWNpbWFsJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6XCJ5XCIgICAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2RlY2ltYWwnICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbm90YXMnICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlLCBpblRhYmxlOmZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6XCJtb2RpZmljYWRvXCIgICAgICAgICAgICwgdHlwZU5hbWU6ICd0aW1lc3RhbXAnLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTogXCJsaWJyZVwiICwgdHlwZU5hbWU6IFwiYm9vbGVhblwiLCBkZWZhdWx0RGJWYWx1ZTpcInRydWVcIiAgLCB2aXNpYmxlOmZhbHNlLCBlZGl0YWJsZTpmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImZlY2hhX2Jsb3F1ZW9cIiwgdHlwZU5hbWU6IFwidGltZXN0YW1wXCIsIHZpc2libGU6ZmFsc2UsIGVkaXRhYmxlOmZhbHNlfVxyXG4gICAgICAgICAgICAvL3tuYW1lOidvYnNfc3VwJyAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgLCBlZGl0YWJsZTogaXNTdXBlcnZpc29yICAgICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidvYnNfY29vcicgICAgICAgLCB0eXBlTmFtZTondGV4dCcgLCBlZGl0YWJsZTogaXNDb29yZGluYWRvciB8fCBpc1N1YkNvb3JkaW5hZG9yIH0sICBcclxuICAgICAgICBdLFxyXG4gICAgICAgIFwicHJpbWFyeUtleVwiOiBbIFwib3BlcmF0aXZvXCIsIFwiZW5jXCIgXSxcclxuICAgICAgICBmb3JlaWduS2V5czpbXHJcbiAgICAgICAgICAgIHtyZWZlcmVuY2VzOidhcmVhcycgICAsIGZpZWxkczpbJ29wZXJhdGl2bycsICdhcmVhJ119LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICByZWZlcmVuY2VzOid0YXJlYXMnICwgXHJcbiAgICAgICAgICAgICAgICBmaWVsZHM6W1xyXG4gICAgICAgICAgICAgICAgICAgIHtzb3VyY2U6J29wZXJhdGl2bycsIHRhcmdldDonb3BlcmF0aXZvJ30sXHJcbiAgICAgICAgICAgICAgICAgICAge3NvdXJjZTondGFyZWFfYWN0dWFsJywgdGFyZ2V0Oid0YXJlYSd9XHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgYWxpYXM6J3RhcmFjdCdcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge3JlZmVyZW5jZXM6J3NlbWFuYXMnLCBmaWVsZHM6W1wib3BlcmF0aXZvXCIsIFwic2VtYW5hXCJdfVxyXG4gICAgICAgIC8vICAgIHtyZWZlcmVuY2VzOid1c3VhcmlvcycsIGZpZWxkczpbe3NvdXJjZTonY2FyZ2FfcGVyc29uYScsIHRhcmdldDonaWRwZXInfV0sIGRpc3BsYXlGaWVsZHM6WydhcGVsbGlkbycsJ25vbWJyZSddfSxcclxuICAgICAgICBdLCAgICAgICAgXHJcbiAgICAgICAgc29mdEZvcmVpZ25LZXlzOltcclxuICAgICAgICAgICAge3JlZmVyZW5jZXM6J3Rva2VucycsIGZpZWxkczpbe3NvdXJjZTonY2FyZ2Fkb19kbScsIHRhcmdldDondG9rZW4nfV0sIGRpc3BsYXlGaWVsZHM6Wyd1c2VybmFtZSddLCBkaXNwbGF5QWZ0ZXJGaWVsZE5hbWU6J2NhcmdhZG8nfVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgXCJkZXRhaWxUYWJsZXNcIjogW1xyXG4gICAgICAgICAgICB7dGFibGU6IFwiaW5jb25zaXN0ZW5jaWFzXCIsIGFicjogXCJJXCIsIGZpZWxkczogW3tzb3VyY2U6J29wZXJhdGl2bycsIHRhcmdldDonb3BlcmF0aXZvJ30se3NvdXJjZTonZW5jJywgdGFyZ2V0Oid2aXZpZW5kYSd9XX0sXHJcbiAgICAgICAgICAgIHt0YWJsZTogXCJoaXN0b3JpYWxfdGVtXCIsIGFicjogXCJIXCIsIGZpZWxkczogWydvcGVyYXRpdm8nLCdlbmMnXX1cclxuICAgICAgICBdLFxyXG4gICAgICAgIGNvbnN0cmFpbnRzOltcclxuICAgICAgICAgICAge2NvbnN0cmFpbnRUeXBlOidjaGVjaycsIGNvbnNOYW1lOlwidnJlc3VsdF9zdXBfY2tcIiwgZXhwcjpcIihyZXN1bHRfc3VwIGJldHdlZW4gMSBhbmQgOSBvciByZXN1bHRfc3VwIGluICgxMSwxMiwyMSwyMiApIG9yIHJlc3VsdF9zdXAgYmV0d2VlbiA2MCBhbmQgNjgpXCJ9LFxyXG4gICAgICAgICAgICB7Y29uc3RyYWludFR5cGU6J3VuaXF1ZScsIGNvbnNOYW1lOlwiYXV0b2dlbmVyYWRvX2RtX3VrXCIsIGZpZWxkczpbJ3Rva2VuX2F1dG9nZW5lcmFkb19kbScsJ2VuY19hdXRvZ2VuZXJhZG9fZG0nXX0sXHJcbiAgICAgICAgICAgIHtjb25zdHJhaW50VHlwZTondW5pcXVlJywgY29uc05hbWU6XCJhdXRvZ2VuZXJhZG9fZG1fY2FwYV91a1wiLCBmaWVsZHM6Wyd0b2tlbl9hdXRvZ2VuZXJhZG9fZG0nLCdlbmNfYXV0b2dlbmVyYWRvX2RtX2NhcGEnXX1cclxuICAgICAgICBdXHJcbiAgICB9O1xyXG4gICAgaWYgKG9wdHMucmVjZXBjaW9uKSB7XHJcbiAgICAgICAgZGVmLmZpZWxkcz1kZWYuZmllbGRzLmZpbHRlcihmPT4hY29sdW1uYXNTb2xvVGVtLmluY2x1ZGVzKGYubmFtZSkgKVxyXG4gICAgICAgIGRlZi5oaWRkZW5Db2x1bW5zPVsuLi4oZGVmLmhpZGRlbkNvbHVtbnN8fFtdKSwgLi4uY29sdW1uYXNBcmVhc1BhcmFMYVRlbS5tYXAoeD0+YGFyZWFzX18ke3h9YCldXHJcbiAgICAgICAgZGVmLmZvcmVpZ25LZXlzPWRlZi5mb3JlaWduS2V5cz8ubWFwKGZ1bmN0aW9uIChmKSB7aWYgKGYucmVmZXJlbmNlcz09J2FyZWFzJyl7Zi5kaXNwbGF5RmllbGRzPWNvbHVtbmFzQXJlYXNQYXJhTGFUZW19OyByZXR1cm4gZn0pIFxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBkZWYuZGV0YWlsVGFibGVzPy51bnNoaWZ0KHt0YWJsZTogXCJ0YXJlYXNfdGVtXCIsIGFicjogXCJUXCIsIGZpZWxkczogWydvcGVyYXRpdm8nLCAnZW5jJ10sIGxhYmVsOid0YXJlYXMnfSlcclxuICAgICAgICBkZWYuZmllbGRzPWRlZi5maWVsZHMuZmlsdGVyKGY9PiFjb2x1bW5hc05vUmVhLm1hcChmbj0+Zm4ubmFtZSkuaW5jbHVkZXMoZi5uYW1lKSApXHJcbiAgICB9O1xyXG4gICAgY29uc3QgcT1jb250ZXh0LmJlLmRiLnF1b3RlSWRlbnQ7XHJcbiAgICBkZWYuc3FsPSB7XHJcbiAgICAgICAgICAgIGlzVGFibGU6IW9wdHMucmVjZXBjaW9uLCAvL1RPRE86IHJlc29sdmVyIGNvbW8gc2FjYXJsbyBkZWwgZHVtcFxyXG4gICAgICAgICAgICBpc1JlZmVyYWJsZTp0cnVlLFxyXG4gICAgICAgICAgICBmcm9tOmBcclxuICAgICAgICAgICAgICAgIChzZWxlY3RcclxuICAgICAgICAgICAgICAgICAgICAke2RlZi5maWVsZHMuZmlsdGVyKGY9PmYuaW5UYWJsZT09dW5kZWZpbmVkICYmICFmLmNsaWVudFNpZGUpLm1hcChmPT4ndC4nK3EoZi5uYW1lKSkuam9pbignLCcpfVxyXG4gICAgICAgICAgICAgICAgICAgICwgdHQuY2FyZ2FkbywgdHQuY2FyZ2Fkb19kbVxyXG4gICAgICAgICAgICAgICAgICAgICwgdHQuZXRhcmVhcy0+J2VuY3UnLT4+J2FzaWduYWRvJyBhcyBlbmN1ZXN0YWRvclxyXG4gICAgICAgICAgICAgICAgICAgICwgdHQuZXRhcmVhcy0+J3JlY3UnLT4+J2FzaWduYWRvJyBhcyByZWN1cGVyYWRvclxyXG4gICAgICAgICAgICAgICAgICAgICwgdHQuZXRhcmVhcy0+J3N1cGUnLT4+J2FzaWduYWRvJyBhcyBzdXBlcnZpc29yXHJcbiAgICAgICAgICAgICAgICAgICAgLCBudWxsIG5vdGFzXHJcbiAgICAgICAgICAgICAgICAgICAgLCBhdXguY29uc2lzdGlkb1xyXG4gICAgICAgICAgICAgICAgICAgICwgdXN1X2VuYy5ub21icmUgYXMgbm9tYnJlX2VuY1xyXG4gICAgICAgICAgICAgICAgICAgICwgdXN1X2VuYy5hcGVsbGlkbyBhcyBhcGVsbGlkb19lbmNcclxuICAgICAgICAgICAgICAgICAgICAsIHVzdV9yZWMubm9tYnJlIGFzIG5vbWJyZV9yZWNcclxuICAgICAgICAgICAgICAgICAgICAsIHVzdV9yZWMuYXBlbGxpZG8gYXMgYXBlbGxpZG9fcmVjXHJcbiAgICAgICAgICAgICAgICAgICAgLCB1c3Vfc3VwLm5vbWJyZSBhcyBub21icmVfc3VwXHJcbiAgICAgICAgICAgICAgICAgICAgLCB1c3Vfc3VwLmFwZWxsaWRvIGFzIGFwZWxsaWRvX3N1cFxyXG4gICAgICAgICAgICAgICAgICAgICR7b3B0cy5yZWNlcGNpb24/IGNvbHVtbmFzTm9SZWEubWFwKHY9PidcXG4gICAgICwgJysgdi5leHByICsnIGFzICcrIHYubmFtZSkuam9pbignJykgOicnfVxyXG4gICAgICAgICAgICAgICAgICAgIGZyb20gdGVtIHQgbGVmdCBqb2luIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0IHR0Lm9wZXJhdGl2bywgdHQuZW5jLCBib29sX29yKGNhcmdhZG8pIGNhcmdhZG8sIHN0cmluZ19hZ2coY2FyZ2Fkb19kbSwnLCcpIGNhcmdhZG9fZG0sanNvbmJfb2JqZWN0X2FnZyh0YXJlYSxqc29uYl9idWlsZF9vYmplY3QoJ2FzaWduYWRvJyxhc2lnbmFkbywnY2FyZ2FkbycsY2FyZ2FkbywnY2FyZ2Fkb19kbScsY2FyZ2Fkb19kbSkpZXRhcmVhcyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb20gdGFyZWFzX3RlbSB0dCBncm91cCBieSB0dC5vcGVyYXRpdm8sIHR0LmVuYyAgKXR0IG9uIHQub3BlcmF0aXZvPXR0Lm9wZXJhdGl2byBhbmQgdC5lbmM9dHQuZW5jXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGpvaW4gbm9fcmVhIHkgb24geS5ub19yZWE9dC5ub3JlYVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdCBqb2luICR7c3FsVG9vbHMucXVvdGVJZGVudChPcGVyYXRpdm9HZW5lcmF0b3IubWFpblREKX0gYXV4IG9uIGF1eC5vcGVyYXRpdm89dC5vcGVyYXRpdm8gYW5kIGF1eC4ke3NxbFRvb2xzLnF1b3RlSWRlbnQoT3BlcmF0aXZvR2VuZXJhdG9yLm1haW5URFBLKX09dC5lbmMgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGpvaW4gdXN1YXJpb3MgdXN1X2VuYyBvbiB1c3VfZW5jLmlkcGVyID0gdHQuZXRhcmVhcy0+J2VuY3UnLT4+J2FzaWduYWRvJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdCBqb2luIHVzdWFyaW9zIHVzdV9yZWMgb24gdXN1X3JlYy5pZHBlciA9IHR0LmV0YXJlYXMtPidyZWN1Jy0+Pidhc2lnbmFkbydcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgam9pbiB1c3VhcmlvcyB1c3Vfc3VwIG9uIHVzdV9zdXAuaWRwZXIgPSB0dC5ldGFyZWFzLT4nc3VwZSctPj4nYXNpZ25hZG8nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqb2luIHVzdWFyaW9zIHVzdV9jb24gb24gdXN1X2Nvbi51c3VhcmlvID0gJHtzcWxUb29scy5xdW90ZUxpdGVyYWwoY29udGV4dC51c2VyLnVzdWFyaW8pfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hlcmUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXN1X2Nvbi5tdWVzdHJhX2VuY3Vlc3Rhc19wcm9kIGFuZCB0LmVuY19hdXRvZ2VuZXJhZG9fZG0gaXMgbm90IG51bGxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXN1X2Nvbi5tdWVzdHJhX2VuY3Vlc3Rhc19jYXBhIGFuZCB0LmVuY19hdXRvZ2VuZXJhZG9fZG1fY2FwYSBpcyBub3QgbnVsbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0LmVuY19hdXRvZ2VuZXJhZG9fZG0gaXMgbnVsbCBhbmQgdC5lbmNfYXV0b2dlbmVyYWRvX2RtX2NhcGEgaXMgbnVsbFxyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICBgICAgICBcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiBkZWY7XHJcbiAgICB9XHJcbiAgICAiXX0=
251
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90YWJsZS10ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUE4QmIsa0JBK01LO0lBMU9MLGlEQUFrRDtJQUNsRCxzQ0FBc0M7SUFHL0IsSUFBSSxrQkFBa0IsR0FBRyxHQUFxQixFQUFFLENBQUM7UUFDcEQsRUFBQyxJQUFJLEVBQUMsVUFBVSxFQUFlLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxVQUFVLEVBQWUsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLGNBQWMsRUFBVyxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsTUFBTSxFQUFtQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsY0FBYyxFQUFXLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxZQUFZLEVBQWEsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFFBQVEsRUFBaUIsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFVBQVUsRUFBZSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFpQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7S0FDekUsQ0FBQTtJQVhVLFFBQUEsa0JBQWtCLHNCQVc1QjtJQUVELHlHQUF5RztJQUNsRyxJQUFJLHFCQUFxQixHQUFHLENBQUMsT0FBc0IsRUFBUyxFQUFFLENBQUM7eUVBQ0csUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQzs7Ozs7O3FHQU1mLENBQUE7SUFQMUYsUUFBQSxxQkFBcUIseUJBT3FFO0lBRXJHLFNBQWdCLEdBQUcsQ0FBQyxPQUFzQixFQUFFLElBQVM7O1FBQ2pELElBQUksSUFBSSxHQUFDLElBQUksSUFBRSxFQUFFLENBQUM7UUFDbEIsSUFBSSxTQUFTLEdBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUEsWUFBWSxDQUFBLENBQUMsQ0FBQSxFQUFFLENBQUM7UUFDN0MsSUFBSSxFQUFFLEdBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNsQixJQUFJLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxPQUFPLEtBQUksTUFBQSxNQUFBLE9BQU8sQ0FBQyxLQUFLLDBDQUFFLEtBQUssMENBQUUsV0FBVyxDQUFBLElBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUcsZUFBZSxDQUFDO1FBQ2hILElBQUksZUFBZSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEtBQUksTUFBQSxNQUFBLE9BQU8sQ0FBQyxLQUFLLDBDQUFFLFNBQVMsMENBQUUsUUFBUSxDQUFBLENBQUM7UUFFNUUsSUFBSSxzQkFBc0IsR0FBQyxDQUFDLG1CQUFtQixFQUFDLGdCQUFnQixFQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRWxGLElBQUksYUFBYSxHQUFDO1lBQ2QsRUFBQyxJQUFJLEVBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUU7U0FDdEMsQ0FBQztRQUNGLElBQUksZUFBZSxHQUFDO1lBQ2QsY0FBYyxFQUFLLGVBQWUsRUFBUSxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsY0FBYztZQUMvRixJQUFJLEVBQWUsR0FBRyxFQUFTLEdBQUcsRUFBUSxNQUFNO1NBQ3JELENBQUM7UUFDRixJQUFJLEdBQUcsR0FBbUI7WUFDdEIsSUFBSSxFQUFDLE1BQU0sU0FBUyxFQUFFO1lBQ3RCLFNBQVMsRUFBQyxLQUFLO1lBQ2YsNEJBQTRCLEVBQUMsSUFBSTtZQUNqQyxLQUFLLEVBQUM7Z0JBQ0YsTUFBTSxFQUFDLEtBQUs7Z0JBQ1osTUFBTSxFQUFDLE9BQU8sQ0FBQyxPQUFPO2FBQ3pCO1lBQ0QsUUFBUSxFQUFFLGdCQUFnQixJQUFFLGVBQWU7WUFDM0MsYUFBYSxFQUFDO2dCQUNWLGtCQUFrQixFQUFDLE1BQU0sRUFBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLGNBQWM7Z0JBQ25KLFdBQVcsRUFBSyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUssT0FBTyxFQUFRLFFBQVEsRUFBRyxjQUFjO2dCQUM1RixZQUFZLEVBQUUsa0NBQWtDO2FBQ3JEO1lBQ0QsUUFBUSxFQUFFO2dCQUNOLEVBQUMsSUFBSSxFQUFDLFdBQVcsRUFBYyxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUksUUFBUSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFDO2dCQUNoSCxFQUFDLElBQUksRUFBQyxLQUFLLEVBQW9CLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBSSxRQUFRLEVBQUUsS0FBSyxFQUF3QjtnQkFDOUcsRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFpQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUksT0FBTyxFQUFDLEtBQUssRUFBRSxVQUFVLEVBQUMsT0FBTyxFQUFDO2dCQUN6RyxFQUFDLElBQUksRUFBQyxXQUFXLEVBQWMsUUFBUSxFQUFFLE1BQU0sRUFBSyxRQUFRLEVBQUUsS0FBSyxFQUFJLE9BQU8sRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFDLFdBQVcsRUFBQztnQkFDN0csRUFBQyxJQUFJLEVBQUUsU0FBUyxFQUFlLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsSUFBSSxFQUFDO2dCQUNqRixFQUFDLElBQUksRUFBQyxjQUFjLEVBQVcsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxXQUFXLEVBQWMsUUFBUSxFQUFFLE1BQU0sRUFBSyxRQUFRLEVBQUMsS0FBSyxFQUFLLE9BQU8sRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFDLFdBQVcsRUFBQztnQkFDN0csRUFBQyxJQUFJLEVBQUMsWUFBWSxFQUFhLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFDLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQy9GLEVBQUMsSUFBSSxFQUFDLE1BQU0sRUFBbUIsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxNQUFNLEVBQW1CLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFVBQVUsRUFBZSxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLGtCQUFrQixFQUFPLFFBQVEsRUFBQyxPQUFPLEVBQUssUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsTUFBTSxFQUFtQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLEtBQUssRUFBb0IsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxPQUFPLEVBQWtCLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFpQixRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFFBQVEsRUFBaUIsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxjQUFjLEVBQVcsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUNsRixxRkFBcUY7Z0JBQ3JGLHFGQUFxRjtnQkFDekUsRUFBQyxJQUFJLEVBQUMsV0FBVyxFQUFjLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsWUFBWSxFQUFhLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUMsS0FBSyxFQUFHO2dCQUN0RixFQUFDLElBQUksRUFBQyxnQkFBZ0IsRUFBUyxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFNBQVMsRUFBZ0IsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLDBGQUEwRjtnQkFDMUYsMEZBQTBGO2dCQUMxRixFQUFDLElBQUksRUFBQyxhQUFhLEVBQVksUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUcsT0FBTyxFQUFFLEtBQUssRUFBRztnQkFDdkYsRUFBQyxJQUFJLEVBQUMsY0FBYyxFQUFXLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RiwwRkFBMEY7Z0JBQzFGLDBGQUEwRjtnQkFDMUYsRUFBQyxJQUFJLEVBQUMsYUFBYSxFQUFZLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RixFQUFDLElBQUksRUFBQyxZQUFZLEVBQWEsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLEVBQUMsSUFBSSxFQUFDLGNBQWMsRUFBVyxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUcsT0FBTyxFQUFFLEtBQUssRUFBRztnQkFDdkYsMEZBQTBGO2dCQUMxRiwwRkFBMEY7Z0JBQzFGLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUcsT0FBTyxFQUFFLEtBQUssRUFBRztnQkFDdkYsRUFBQyxJQUFJLEVBQUMsWUFBWSxFQUFhLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RixFQUFDLElBQUksRUFBQyxjQUFjLEVBQVcsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLEVBQUMsSUFBSSxFQUFDLFNBQVMsRUFBZ0IsUUFBUSxFQUFDLFNBQVMsRUFBTyxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUN4RSxFQUFDLElBQUksRUFBQyxXQUFXLEVBQWMsUUFBUSxFQUFDLFNBQVMsRUFBTyxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUN4RSxFQUFDLElBQUksRUFBQyxvQkFBb0IsRUFBSyxRQUFRLEVBQUMsTUFBTSxFQUFVLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQ3hFLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsU0FBUyxFQUFPLFFBQVEsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztnQkFDeEYsRUFBQyxJQUFJLEVBQUMsdUJBQXVCLEVBQUUsUUFBUSxFQUFDLFNBQVMsRUFBTyxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUN4RSxFQUFDLElBQUksRUFBQyxzQkFBc0IsRUFBRyxRQUFRLEVBQUMsU0FBUyxFQUFPLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQ3hFLEVBQUMsSUFBSSxFQUFDLGFBQWEsRUFBWSxRQUFRLEVBQUMsU0FBUyxFQUFPLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQ3hFLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsU0FBUyxFQUFPLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQ3hFLEVBQUMsSUFBSSxFQUFDLFdBQVcsRUFBYyxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLE9BQU8sRUFBa0IsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxZQUFZLEVBQWEsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxHQUFHLElBQUEsMEJBQWtCLEdBQUU7Z0JBQ3ZCLDJHQUEyRztnQkFDM0csMkhBQTJIO2dCQUMzSCxpS0FBaUs7Z0JBQ2pLLEVBQUMsSUFBSSxFQUFDLE1BQU0sRUFBbUIsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxRQUFRLEVBQWlCLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFpQixRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFNBQVMsRUFBZ0IsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxhQUFhLEVBQVksUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxVQUFVLEVBQWUsUUFBUSxFQUFDLFFBQVEsRUFBSSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxLQUFLLEVBQW9CLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsV0FBVyxFQUFjLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsYUFBYSxFQUFZLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsVUFBVSxFQUFlLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsWUFBWSxFQUFhLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLE1BQU0sRUFBbUIsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxjQUFjLEVBQVcsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxvQkFBb0IsRUFBSyxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLE1BQU0sRUFBbUIsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBRSxZQUFZLEVBQVksUUFBUSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBQyxLQUFLLEVBQUc7Z0JBQ3hGLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUcsT0FBTyxFQUFFLEtBQUssRUFBRztnQkFDdkYsRUFBQyxJQUFJLEVBQUMsZUFBZSxFQUFVLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsSUFBSSxFQUFHO2dCQUN0RixFQUFDLElBQUksRUFBQyxVQUFVLEVBQWUsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUc7Z0JBQ3RGLEVBQUMsSUFBSSxFQUFDLE9BQU8sRUFBa0IsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUc7Z0JBQ3RGLEVBQUMsSUFBSSxFQUFDLE9BQU8sRUFBa0IsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUc7Z0JBQ3RGLDRCQUE0QjtnQkFDNUIsRUFBQyxJQUFJLEVBQUMsdUJBQXVCLEVBQUUsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxtQkFBbUIsRUFBTSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLGFBQWEsRUFBWSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFNBQVMsRUFBZ0IsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxlQUFlLEVBQVUsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLEVBQUMsSUFBSSxFQUFDLGNBQWMsRUFBVyxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUcsT0FBTyxFQUFFLEtBQUssRUFBRztnQkFDdkYsRUFBQyxJQUFJLEVBQUMsV0FBVyxFQUFjLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RixFQUFDLElBQUksRUFBQyxhQUFhLEVBQVksUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLEVBQUMsSUFBSSxFQUFDLGdCQUFnQixFQUFTLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RixFQUFDLElBQUksRUFBQyxPQUFPLEVBQWtCLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RixFQUFDLElBQUksRUFBQyxRQUFRLEVBQWlCLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRyxPQUFPLEVBQUUsS0FBSyxFQUFHO2dCQUN2RixFQUFDLElBQUksRUFBQyxjQUFjLEVBQVcsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHLE9BQU8sRUFBRSxLQUFLLEVBQUc7Z0JBQ3ZGLFdBQVc7Z0JBQ1gsRUFBQyxJQUFJLEVBQUMsc0JBQXNCLEVBQUcsUUFBUSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUMsS0FBSyxFQUFHO2dCQUN2RSxFQUFDLElBQUksRUFBQyxlQUFlLEVBQVUsUUFBUSxFQUFDLE9BQU8sRUFBTyxRQUFRLEVBQUMsS0FBSyxFQUFHO2dCQUN2RSxFQUFDLElBQUksRUFBQyxjQUFjLEVBQVcsUUFBUSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUMsS0FBSyxFQUFDO2dCQUNyRSxFQUFDLElBQUksRUFBQyxhQUFhLEVBQVksUUFBUSxFQUFDLE9BQU8sRUFBSyxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBQyxLQUFLLEVBQUM7Z0JBQ25GLEVBQUMsSUFBSSxFQUFDLHVCQUF1QixFQUFFLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUMsS0FBSyxFQUFDO2dCQUNuRixFQUFDLElBQUksRUFBQyxxQkFBcUIsRUFBSSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLDBCQUEwQixFQUFFLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDekUsRUFBQyxJQUFJLEVBQUMsSUFBSSxFQUFxQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLEdBQUcsRUFBc0IsUUFBUSxFQUFDLFNBQVMsRUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFHO2dCQUN0RSxFQUFDLElBQUksRUFBQyxHQUFHLEVBQXNCLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsT0FBTyxFQUFrQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFDLEtBQUssRUFBQztnQkFDbkYsRUFBQyxJQUFJLEVBQUMsWUFBWSxFQUFhLFFBQVEsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBQztnQkFDdEUsRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFHLFFBQVEsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFDLE1BQU0sRUFBSSxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBQyxLQUFLLEVBQUM7Z0JBQzdGLEVBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFDLEtBQUssRUFBQztnQkFDN0UsMEVBQTBFO2dCQUMxRSw2RkFBNkY7YUFDaEc7WUFDRCxZQUFZLEVBQUUsQ0FBRSxXQUFXLEVBQUUsS0FBSyxDQUFFO1lBQ3BDLFdBQVcsRUFBQztnQkFDUixFQUFDLFVBQVUsRUFBQyxPQUFPLEVBQUssTUFBTSxFQUFDLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxFQUFDO2dCQUNyRDtvQkFDSSxVQUFVLEVBQUMsUUFBUTtvQkFDbkIsTUFBTSxFQUFDO3dCQUNILEVBQUMsTUFBTSxFQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUMsV0FBVyxFQUFDO3dCQUN4QyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUUsTUFBTSxFQUFDLE9BQU8sRUFBQztxQkFDMUM7b0JBQ0QsS0FBSyxFQUFDLFFBQVE7aUJBQ2pCO2dCQUNELEVBQUMsVUFBVSxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLEVBQUM7Z0JBQzFELHNIQUFzSDthQUNySDtZQUNELGVBQWUsRUFBQztnQkFDWixFQUFDLFVBQVUsRUFBQyxRQUFRLEVBQUUsTUFBTSxFQUFDLENBQUMsRUFBQyxNQUFNLEVBQUMsWUFBWSxFQUFFLE1BQU0sRUFBQyxPQUFPLEVBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBQyxDQUFDLFVBQVUsQ0FBQyxFQUFFLHFCQUFxQixFQUFDLFNBQVMsRUFBQzthQUNySTtZQUNELGNBQWMsRUFBRTtnQkFDWixFQUFDLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUMsTUFBTSxFQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUMsV0FBVyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsS0FBSyxFQUFFLE1BQU0sRUFBQyxVQUFVLEVBQUMsQ0FBQyxFQUFDO2dCQUMxSCxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxXQUFXLEVBQUMsS0FBSyxDQUFDLEVBQUM7YUFDbEU7WUFDRCxXQUFXLEVBQUM7Z0JBQ1IsRUFBQyxjQUFjLEVBQUMsT0FBTyxFQUFFLFFBQVEsRUFBQyxnQkFBZ0IsRUFBRSxJQUFJLEVBQUMsOEZBQThGLEVBQUM7Z0JBQ3hKLEVBQUMsY0FBYyxFQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFDLENBQUMsdUJBQXVCLEVBQUMscUJBQXFCLENBQUMsRUFBQztnQkFDaEgsRUFBQyxjQUFjLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyx5QkFBeUIsRUFBRSxNQUFNLEVBQUMsQ0FBQyx1QkFBdUIsRUFBQywwQkFBMEIsQ0FBQyxFQUFDO2FBQzdIO1NBQ0osQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLEdBQUcsQ0FBQyxNQUFNLEdBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBLEVBQUUsQ0FBQSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFFLENBQUE7WUFDbkUsR0FBRyxDQUFDLGFBQWEsR0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsYUFBYSxJQUFFLEVBQUUsQ0FBQyxFQUFFLEdBQUcsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQSxFQUFFLENBQUEsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7WUFDL0YsR0FBRyxDQUFDLFdBQVcsR0FBQyxNQUFBLEdBQUcsQ0FBQyxXQUFXLDBDQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBRyxJQUFJLENBQUMsQ0FBQyxVQUFVLElBQUUsT0FBTyxFQUFDLENBQUM7Z0JBQUEsQ0FBQyxDQUFDLGFBQWEsR0FBQyxzQkFBc0IsQ0FBQTtZQUFBLENBQUMsQ0FBQSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQTtRQUNySSxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQUEsR0FBRyxDQUFDLFlBQVksMENBQUUsT0FBTyxDQUFDLEVBQUMsS0FBSyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUMsUUFBUSxFQUFDLENBQUMsQ0FBQTtZQUN4RyxHQUFHLENBQUMsTUFBTSxHQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQSxFQUFFLENBQUEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQSxFQUFFLENBQUEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUUsQ0FBQTtRQUN0RixDQUFDO1FBQUEsQ0FBQztRQUNGLE1BQU0sQ0FBQyxHQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQztRQUNqQyxHQUFHLENBQUMsR0FBRyxHQUFFO1lBQ0QsT0FBTyxFQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxzQ0FBc0M7WUFDL0QsV0FBVyxFQUFDLElBQUk7WUFDaEIsSUFBSSxFQUFDOztzQkFFSyxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLENBQUMsQ0FBQyxPQUFPLElBQUUsU0FBUyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLElBQUksR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzs7Ozs7Ozs7Ozs7OztzQkFhNUYsSUFBSSxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLFdBQVcsR0FBRSxDQUFDLENBQUMsSUFBSSxHQUFFLE1BQU0sR0FBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQSxFQUFFOzs7Ozt3Q0FLcEUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxrQ0FBa0IsQ0FBQyxNQUFNLENBQUMsNkNBQTZDLFFBQVEsQ0FBQyxVQUFVLENBQUMsa0NBQWtCLENBQUMsUUFBUSxDQUFDOzs7OzhCQUlySixJQUFBLDZCQUFxQixFQUFDLE9BQU8sQ0FBQzs7YUFFL0M7U0FDSixDQUFDO1FBQ0YsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcblxyXG5pbXBvcnQge1RhYmxlRGVmaW5pdGlvbiwgQ29udGV4dEZvckR1bXAsIEZpZWxkRGVmaW5pdGlvbn0gZnJvbSBcIi4vdHlwZXMtZG1lbmN1XCI7XHJcbmltcG9ydCB7T3BlcmF0aXZvR2VuZXJhdG9yIH0gZnJvbSBcInByb2Nlc2FtaWVudG9cIjtcclxuaW1wb3J0ICogYXMgc3FsVG9vbHMgZnJvbSAnc3FsLXRvb2xzJztcclxuXHJcblxyXG5leHBvcnQgdmFyIGdldERvbWljaWxpb0ZpZWxkcyA9ICgpOkZpZWxkRGVmaW5pdGlvbltdID0+IFtcclxuICAgIHtuYW1lOidjb2RjYWxsZScgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonbm9tY2FsbGUnICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J25yb2NhdGFzdHJhbCcgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidwaXNvJyAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonZGVwYXJ0YW1lbnRvJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J2hhYml0YWNpb24nICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidzZWN0b3InICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonZWRpZmljaW8nICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J2VudHJhZGEnICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidiYXJyaW8nICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbl1cclxuXHJcbi8vIG11ZXN0cmEgbGFzIGVuY3Vlc3RhcyBkZSBwcm9kdWNjacOzbiBvIGRlIGNhcGFjaXRhY2nDs24gc2Vnw7puIGxvIHF1ZSB0ZW5nYSBoYWJpbGl0YWRvIGVsIHVzdWFyaW8gKHRlbSB0KVxyXG5leHBvcnQgdmFyIGZpbHRyb1RlbVNlZ3VuVXN1YXJpbyA9IChjb250ZXh0OkNvbnRleHRGb3JEdW1wKTpzdHJpbmcgPT4gYFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgam9pbiB1c3VhcmlvcyB1c3VfY29uIG9uIHVzdV9jb24udXN1YXJpbyA9ICR7c3FsVG9vbHMucXVvdGVMaXRlcmFsKGNvbnRleHQudXNlci51c3VhcmlvKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoZXJlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXN1X2Nvbi5tdWVzdHJhX2VuY3Vlc3Rhc19wcm9kIGFuZCB0LmVuY19hdXRvZ2VuZXJhZG9fZG0gaXMgbm90IG51bGxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c3VfY29uLm11ZXN0cmFfZW5jdWVzdGFzX2NhcGEgYW5kIHQuZW5jX2F1dG9nZW5lcmFkb19kbV9jYXBhIGlzIG5vdCBudWxsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdC5lbmNfYXV0b2dlbmVyYWRvX2RtIGlzIG51bGwgYW5kIHQuZW5jX2F1dG9nZW5lcmFkb19kbV9jYXBhIGlzIG51bGxgXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdGVtKGNvbnRleHQ6Q29udGV4dEZvckR1bXAsIG9wdHM/OmFueSk6VGFibGVEZWZpbml0aW9uIHtcclxuICAgIHZhciBvcHRzPW9wdHN8fHt9O1xyXG4gICAgdmFyIHJlY2VwY2lvbj1vcHRzLnJlY2VwY2lvbj8nX3JlY2VwY2lvbic6Jyc7XHJcbiAgICB2YXIgYmU9Y29udGV4dC5iZTtcclxuICAgIHZhciBwdWVkZUVkaXRhckNhbXBvID0gY29udGV4dC5mb3JEdW1wIHx8IGNvbnRleHQucHVlZGU/LmNhbXBvPy5hZG1pbmlzdHJhcnx8Y29udGV4dC51c2VyLnJvbD09PSdyZWNlcGNpb25pc3RhJztcclxuICAgIHZhciBwdWVkZUVkaXRhclByb2MgPSBjb250ZXh0LmZvckR1bXAgfHwgY29udGV4dC5wdWVkZT8uZW5jdWVzdGFzPy5wcm9jZXNhcjtcclxuXHJcbiAgICB2YXIgY29sdW1uYXNBcmVhc1BhcmFMYVRlbT1bJ29ic19yZWNlcGNpb25pc3RhJywndmVyaWZpY2Fkb19yZWMnLCdyZWNlcGNpb25pc3RhJ107XHJcblxyXG4gICAgdmFyIGNvbHVtbmFzTm9SZWE9W1xyXG4gICAgICAgIHtuYW1lOidncnVfbm9fcmVhJywgZXhwcjogJ2dydXBvJyB9XHJcbiAgICBdO1xyXG4gICAgdmFyIGNvbHVtbmFzU29sb1RlbT1bXHJcbiAgICAgICAgICAnZW5jX29yaWdpbmFsJyAgICwgJ2pzb25fZW5jdWVzdGEnICAgICAgLCAnanNvbl9iYWNrdXAnLCAnZmVjaGFfbW9kaWZfZW5jdWVzdGEnLCAnZmVjaGFfYmFja3VwJ1xyXG4gICAgICAgICwgJ2g0JyAgICAgICAgICAgICAsICd4JyAgICAgICAsICd5JyAgICAgICwgJ2ZleHAnXHJcbiAgICBdO1xyXG4gICAgdmFyIGRlZjogVGFibGVEZWZpbml0aW9uPSB7XHJcbiAgICAgICAgbmFtZTpgdGVtJHtyZWNlcGNpb259YCxcclxuICAgICAgICB0YWJsZU5hbWU6J3RlbScsXHJcbiAgICAgICAgbXVlc3RyYUFicmlyRW5Ub2Rhc0xhc1RhcmVhczp0cnVlLFxyXG4gICAgICAgIGFsbG93OntcclxuICAgICAgICAgICAgaW5zZXJ0OmZhbHNlLFxyXG4gICAgICAgICAgICBkZWxldGU6Y29udGV4dC5mb3JEdW1wLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZWRpdGFibGU6IHB1ZWRlRWRpdGFyQ2FtcG98fHB1ZWRlRWRpdGFyUHJvYyxcclxuICAgICAgICBoaWRkZW5Db2x1bW5zOltcclxuICAgICAgICAgICAgJ3NlbGVjY2lvbmFkb19hbnQnLCdjaXRhJywnbm90YXMnLCAnY2x1c3RlcicsICdjb2R2aXZpZW5kYXBhcnRpY3VsYXInLCAnb2JzZGF0b3Nkb21pY2lsaW8nLCAnb2JzY29uanVudG8nLCAncmVzZXJ2YScsICdyb3RhY2lvbl9ldG9pJywgJ3JvdGFjaW9uX2VhaCdcclxuICAgICAgICAgICAgLCAndHJpbWVzdHJlJyAgICwgJ3Byb2NlZGVuY2lhJywgJ3NlbF9ldG9pX3ZpbGxhJyAgICwgJ21hcmNvJyAgICAgICwgJ3NlbWFuYScgLCAncGVyaW9kaWNpZGFkJyBcclxuICAgICAgICAgICAgLCAnY2FyZ2Fkb19kbScsICdlc3RhZG9zX19wZXJtaXRlX2VkaXRhcl9lbmN1ZXN0YSdcclxuICAgICAgICBdLFxyXG4gICAgICAgIFwiZmllbGRzXCI6IFtcclxuICAgICAgICAgICAge25hbWU6J29wZXJhdGl2bycgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBudWxsYWJsZTogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ2V0b2kyMTEnfSxcclxuICAgICAgICAgICAge25hbWU6J2VuYycgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBudWxsYWJsZTogZmFsc2UgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImFicmlyXCIgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidhYnJpcid9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImNvbnNpc3RpclwiICAgICAgICAgICAgLCB0eXBlTmFtZTogJ3RleHQnICAgLCBlZGl0YWJsZTogZmFsc2UgICwgaW5UYWJsZTpmYWxzZSwgY2xpZW50U2lkZTonY29uc2lzdGlyJ30sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImNsdXN0ZXJcIiAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSwgaXNOYW1lOnRydWV9LFxyXG4gICAgICAgICAgICB7bmFtZTondGFyZWFfYWN0dWFsJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImhhYmlsaXRhclwiICAgICAgICAgICAgLCB0eXBlTmFtZTogXCJ0ZXh0XCIgICAsIGVkaXRhYmxlOmZhbHNlICAgLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidoYWJpbGl0YXInfSxcclxuICAgICAgICAgICAge25hbWU6XCJoYWJpbGl0YWRhXCIgICAgICAgICAgICwgdHlwZU5hbWU6ICdib29sZWFuJywgZWRpdGFibGU6cHVlZGVFZGl0YXJDYW1wbywgbnVsbGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J2FyZWEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3pvbmEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2VuY19hbnQnICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2FyZWFfYW50JyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3NlbGVjY2lvbmFkb19hbnQnICAgICAsIHR5cGVOYW1lOidqc29uYicgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NpdGEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3JlYScgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vcmVhJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NhbnRfaCcgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NhbnRfcCcgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3NlbGVjY2lvbmFkbycgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuLy8gICAgICAgICAgICB7bmFtZTonc2V4b19zZWwnICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4vLyAgICAgICAgICAgIHtuYW1lOidlZGFkX3NlbCcgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXN1bHRhZG8nICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidncnVfbm9fcmVhJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOmZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVzdW1lbl9lc3RhZG8nICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FyZ2FkbycgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J2VuY3VfaGFiaWxpdGFkYScgICAgICAsIHR5cGVOYW1lOidib29sZWFuJyAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidlbmN1X2NhcmdhZG8nICAgICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2VuY3Vlc3RhZG9yJyAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbm9tYnJlX2VuYycgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidhcGVsbGlkb19lbmMnICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy97bmFtZToncmVjdV9oYWJpbGl0YWRhJyAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J3JlY3VfY2FyZ2FkbycgICAgICAgICAsIHR5cGVOYW1lOidib29sZWFuJyAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVjdXBlcmFkb3InICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidub21icmVfcmVjJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2FwZWxsaWRvX3JlYycgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidzdXBlX2hhYmlsaXRhZGEnICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy97bmFtZTonc3VwZV9jYXJnYWRvJyAgICAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzdXBlcnZpc29yJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vbWJyZV9zdXAnICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonYXBlbGxpZG9fc3VwJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZWFfc3VwJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J25vcmVhX3N1cCcgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVzdW1lbl9lc3RhZG9fc3VwJyAgICwgdHlwZU5hbWU6J3RleHQnICAgICAgICAsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwcmVfc29ydGVvJyAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlLCB2aXNpYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzdXBlcnZpc2lvbl9hbGVhdG9yaWEnLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J3N1cGVydmlzaW9uX2RpcmlnaWRhJyAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTonc3VwZXJ2aXNpb24nICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICAgICAsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXN1bHRfc3VwJyAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J2Zpbl9jYW1wbycgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Byb2llJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Bhc2VfdGFibGEnICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLi4uZ2V0RG9taWNpbGlvRmllbGRzKCksXHJcbiAgICAgICAgICAgIC8ve25hbWU6IFwidmVyaWZpY2FyXCIgICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicsIGVkaXRhYmxlOnRydWUsIGluVGFibGU6ZmFsc2UsIGNsaWVudFNpZGU6J3ZlcmlmaWNhckNhc28nfSxcclxuICAgICAgICAgICAgLy97bmFtZTogXCJmaW5hbGl6YXJfY2FtcG9cIiAsIHR5cGVOYW1lOidib29sZWFuJywgZWRpdGFibGU6dHJ1ZSwgaW5UYWJsZTpmYWxzZSwgY2xpZW50U2lkZTonZmluYWxpemFyQ2FtcG8nfSwgLy9maW5fZGVfY2FtcG9cclxuICAgICAgICAgICAgLy97bmFtZTogXCJwcm9jZXNhbWllbnRvXCIgICAsIHR5cGVOYW1lOidib29sZWFuJywgZWRpdGFibGU6dHJ1ZSwgaW5UYWJsZTpmYWxzZSwgY2xpZW50U2lkZToncGFzYXJBUHJvY2VzYW1pZW50bycsIGxhYmVsOiAncGFzYXIgYSBwcm9jZXNhbWllbnRvJ30sIC8vcHJvY2VzYW1pZW50b1xyXG4gICAgICAgICAgICB7bmFtZTonZmV4cCcgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonYXJlYXVwJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY29kcG9zJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonZG9taW5pbycgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonZXN0cmF0b19pbmcnICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonaWRfbWFyY28nICAgICAgICAgICAgICwgdHlwZU5hbWU6J2JpZ2ludCcgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonb2JzJyAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbnJvY29tdW5hJyAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbnJvZnJhY2Npb24nICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbnJvcmFkaW8nICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbnJvbWFuemFuYScgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbnJvbGFkbycgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FzYScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTondXNvZG9taWNpbGlvJyAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonb3JkZW5fcmVsZXZhbWllbnRvJyAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbWFwYScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTogXCJjb25zaXN0aWRvXCIgICAgICAgICAgLCB0eXBlTmFtZTogJ3RpbWVzdGFtcCcsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6ZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidjYXJnYWRvX2RtJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3BhcnRpY2lwYWNpb24nICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IHRydWUgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyb3RhY2lvbicgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiB0cnVlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2xhc2UnICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogdHJ1ZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3BhbmVsJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IHRydWUgIH0sXHJcbiAgICAgICAgICAgIC8vdmFjaW9zIG8gcG9jbyBpbnRlcmVzYW50ZXNcclxuICAgICAgICAgICAge25hbWU6J2NvZHZpdmllbmRhcGFydGljdWxhcicsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J29ic2RhdG9zZG9taWNpbGlvJyAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J29ic2Nvbmp1bnRvJyAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Jlc2VydmEnICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3JvdGFjaW9uX2V0b2knICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncm90YWNpb25fZWFoJyAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOid0cmltZXN0cmUnICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3Byb2NlZGVuY2lhJyAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonc2VsX2V0b2lfdmlsbGEnICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidtYXJjbycgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3NlbWFuYScgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncGVyaW9kaWNpZGFkJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8vc29sbyB0ZW0gXHJcbiAgICAgICAgICAgIHtuYW1lOidmZWNoYV9tb2RpZl9lbmN1ZXN0YScgLCB0eXBlTmFtZTogXCJ0aW1lc3RhbXBcIiwgZWRpdGFibGU6ZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidqc29uX2VuY3Vlc3RhJyAgICAgICAgLCB0eXBlTmFtZTonanNvbmInICAgICAsIGVkaXRhYmxlOmZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonZmVjaGFfYmFja3VwJyAgICAgICAgICwgdHlwZU5hbWU6IFwidGltZXN0YW1wXCIsIGVkaXRhYmxlOmZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6XCJqc29uX2JhY2t1cFwiICAgICAgICAgICwgdHlwZU5hbWU6J2pzb25iJyAgICwgZWRpdGFibGU6IGZhbHNlLCB2aXNpYmxlOmZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6XCJ0b2tlbl9hdXRvZ2VuZXJhZG9fZG1cIiwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlLCB2aXNpYmxlOmZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6XCJlbmNfYXV0b2dlbmVyYWRvX2RtXCIgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImVuY19hdXRvZ2VuZXJhZG9fZG1fY2FwYVwiLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwiaDRcIiAgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6XCJ4XCIgICAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2RlY2ltYWwnICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTpcInlcIiAgICAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonZGVjaW1hbCcgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidub3RhcycgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UsIGluVGFibGU6ZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTpcIm1vZGlmaWNhZG9cIiAgICAgICAgICAgLCB0eXBlTmFtZTogJ3RpbWVzdGFtcCcsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImxpYnJlXCIgLCB0eXBlTmFtZTogXCJib29sZWFuXCIsIGRlZmF1bHREYlZhbHVlOlwidHJ1ZVwiICAsIHZpc2libGU6ZmFsc2UsIGVkaXRhYmxlOmZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6IFwiZmVjaGFfYmxvcXVlb1wiLCB0eXBlTmFtZTogXCJ0aW1lc3RhbXBcIiwgdmlzaWJsZTpmYWxzZSwgZWRpdGFibGU6ZmFsc2V9XHJcbiAgICAgICAgICAgIC8ve25hbWU6J29ic19zdXAnICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAsIGVkaXRhYmxlOiBpc1N1cGVydmlzb3IgICAgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J29ic19jb29yJyAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAsIGVkaXRhYmxlOiBpc0Nvb3JkaW5hZG9yIHx8IGlzU3ViQ29vcmRpbmFkb3IgfSwgIFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgXCJwcmltYXJ5S2V5XCI6IFsgXCJvcGVyYXRpdm9cIiwgXCJlbmNcIiBdLFxyXG4gICAgICAgIGZvcmVpZ25LZXlzOltcclxuICAgICAgICAgICAge3JlZmVyZW5jZXM6J2FyZWFzJyAgICwgZmllbGRzOlsnb3BlcmF0aXZvJywgJ2FyZWEnXX0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZXM6J3RhcmVhcycgLCBcclxuICAgICAgICAgICAgICAgIGZpZWxkczpbXHJcbiAgICAgICAgICAgICAgICAgICAge3NvdXJjZTonb3BlcmF0aXZvJywgdGFyZ2V0OidvcGVyYXRpdm8nfSxcclxuICAgICAgICAgICAgICAgICAgICB7c291cmNlOid0YXJlYV9hY3R1YWwnLCB0YXJnZXQ6J3RhcmVhJ31cclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICBhbGlhczondGFyYWN0J1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7cmVmZXJlbmNlczonc2VtYW5hcycsIGZpZWxkczpbXCJvcGVyYXRpdm9cIiwgXCJzZW1hbmFcIl19XHJcbiAgICAgICAgLy8gICAge3JlZmVyZW5jZXM6J3VzdWFyaW9zJywgZmllbGRzOlt7c291cmNlOidjYXJnYV9wZXJzb25hJywgdGFyZ2V0OidpZHBlcid9XSwgZGlzcGxheUZpZWxkczpbJ2FwZWxsaWRvJywnbm9tYnJlJ119LFxyXG4gICAgICAgIF0sICAgICAgICBcclxuICAgICAgICBzb2Z0Rm9yZWlnbktleXM6W1xyXG4gICAgICAgICAgICB7cmVmZXJlbmNlczondG9rZW5zJywgZmllbGRzOlt7c291cmNlOidjYXJnYWRvX2RtJywgdGFyZ2V0Oid0b2tlbid9XSwgZGlzcGxheUZpZWxkczpbJ3VzZXJuYW1lJ10sIGRpc3BsYXlBZnRlckZpZWxkTmFtZTonY2FyZ2Fkbyd9XHJcbiAgICAgICAgXSxcclxuICAgICAgICBcImRldGFpbFRhYmxlc1wiOiBbXHJcbiAgICAgICAgICAgIHt0YWJsZTogXCJpbmNvbnNpc3RlbmNpYXNcIiwgYWJyOiBcIklcIiwgZmllbGRzOiBbe3NvdXJjZTonb3BlcmF0aXZvJywgdGFyZ2V0OidvcGVyYXRpdm8nfSx7c291cmNlOidlbmMnLCB0YXJnZXQ6J3ZpdmllbmRhJ31dfSxcclxuICAgICAgICAgICAge3RhYmxlOiBcImhpc3RvcmlhbF90ZW1cIiwgYWJyOiBcIkhcIiwgZmllbGRzOiBbJ29wZXJhdGl2bycsJ2VuYyddfVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgY29uc3RyYWludHM6W1xyXG4gICAgICAgICAgICB7Y29uc3RyYWludFR5cGU6J2NoZWNrJywgY29uc05hbWU6XCJ2cmVzdWx0X3N1cF9ja1wiLCBleHByOlwiKHJlc3VsdF9zdXAgYmV0d2VlbiAxIGFuZCA5IG9yIHJlc3VsdF9zdXAgaW4gKDExLDEyLDIxLDIyICkgb3IgcmVzdWx0X3N1cCBiZXR3ZWVuIDYwIGFuZCA2OClcIn0sXHJcbiAgICAgICAgICAgIHtjb25zdHJhaW50VHlwZTondW5pcXVlJywgY29uc05hbWU6XCJhdXRvZ2VuZXJhZG9fZG1fdWtcIiwgZmllbGRzOlsndG9rZW5fYXV0b2dlbmVyYWRvX2RtJywnZW5jX2F1dG9nZW5lcmFkb19kbSddfSxcclxuICAgICAgICAgICAge2NvbnN0cmFpbnRUeXBlOid1bmlxdWUnLCBjb25zTmFtZTpcImF1dG9nZW5lcmFkb19kbV9jYXBhX3VrXCIsIGZpZWxkczpbJ3Rva2VuX2F1dG9nZW5lcmFkb19kbScsJ2VuY19hdXRvZ2VuZXJhZG9fZG1fY2FwYSddfVxyXG4gICAgICAgIF1cclxuICAgIH07XHJcbiAgICBpZiAob3B0cy5yZWNlcGNpb24pIHtcclxuICAgICAgICBkZWYuZmllbGRzPWRlZi5maWVsZHMuZmlsdGVyKGY9PiFjb2x1bW5hc1NvbG9UZW0uaW5jbHVkZXMoZi5uYW1lKSApXHJcbiAgICAgICAgZGVmLmhpZGRlbkNvbHVtbnM9Wy4uLihkZWYuaGlkZGVuQ29sdW1uc3x8W10pLCAuLi5jb2x1bW5hc0FyZWFzUGFyYUxhVGVtLm1hcCh4PT5gYXJlYXNfXyR7eH1gKV1cclxuICAgICAgICBkZWYuZm9yZWlnbktleXM9ZGVmLmZvcmVpZ25LZXlzPy5tYXAoZnVuY3Rpb24gKGYpIHtpZiAoZi5yZWZlcmVuY2VzPT0nYXJlYXMnKXtmLmRpc3BsYXlGaWVsZHM9Y29sdW1uYXNBcmVhc1BhcmFMYVRlbX07IHJldHVybiBmfSkgXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGRlZi5kZXRhaWxUYWJsZXM/LnVuc2hpZnQoe3RhYmxlOiBcInRhcmVhc190ZW1cIiwgYWJyOiBcIlRcIiwgZmllbGRzOiBbJ29wZXJhdGl2bycsICdlbmMnXSwgbGFiZWw6J3RhcmVhcyd9KVxyXG4gICAgICAgIGRlZi5maWVsZHM9ZGVmLmZpZWxkcy5maWx0ZXIoZj0+IWNvbHVtbmFzTm9SZWEubWFwKGZuPT5mbi5uYW1lKS5pbmNsdWRlcyhmLm5hbWUpIClcclxuICAgIH07XHJcbiAgICBjb25zdCBxPWNvbnRleHQuYmUuZGIucXVvdGVJZGVudDtcclxuICAgIGRlZi5zcWw9IHtcclxuICAgICAgICAgICAgaXNUYWJsZTohb3B0cy5yZWNlcGNpb24sIC8vVE9ETzogcmVzb2x2ZXIgY29tbyBzYWNhcmxvIGRlbCBkdW1wXHJcbiAgICAgICAgICAgIGlzUmVmZXJhYmxlOnRydWUsXHJcbiAgICAgICAgICAgIGZyb206YFxyXG4gICAgICAgICAgICAgICAgKHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICR7ZGVmLmZpZWxkcy5maWx0ZXIoZj0+Zi5pblRhYmxlPT11bmRlZmluZWQgJiYgIWYuY2xpZW50U2lkZSkubWFwKGY9Pid0LicrcShmLm5hbWUpKS5qb2luKCcsJyl9XHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5jYXJnYWRvLCB0dC5jYXJnYWRvX2RtXHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5ldGFyZWFzLT4nZW5jdSctPj4nYXNpZ25hZG8nIGFzIGVuY3Vlc3RhZG9yXHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5ldGFyZWFzLT4ncmVjdSctPj4nYXNpZ25hZG8nIGFzIHJlY3VwZXJhZG9yXHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5ldGFyZWFzLT4nc3VwZSctPj4nYXNpZ25hZG8nIGFzIHN1cGVydmlzb3JcclxuICAgICAgICAgICAgICAgICAgICAsIG51bGwgbm90YXNcclxuICAgICAgICAgICAgICAgICAgICAsIGF1eC5jb25zaXN0aWRvXHJcbiAgICAgICAgICAgICAgICAgICAgLCB1c3VfZW5jLm5vbWJyZSBhcyBub21icmVfZW5jXHJcbiAgICAgICAgICAgICAgICAgICAgLCB1c3VfZW5jLmFwZWxsaWRvIGFzIGFwZWxsaWRvX2VuY1xyXG4gICAgICAgICAgICAgICAgICAgICwgdXN1X3JlYy5ub21icmUgYXMgbm9tYnJlX3JlY1xyXG4gICAgICAgICAgICAgICAgICAgICwgdXN1X3JlYy5hcGVsbGlkbyBhcyBhcGVsbGlkb19yZWNcclxuICAgICAgICAgICAgICAgICAgICAsIHVzdV9zdXAubm9tYnJlIGFzIG5vbWJyZV9zdXBcclxuICAgICAgICAgICAgICAgICAgICAsIHVzdV9zdXAuYXBlbGxpZG8gYXMgYXBlbGxpZG9fc3VwXHJcbiAgICAgICAgICAgICAgICAgICAgJHtvcHRzLnJlY2VwY2lvbj8gY29sdW1uYXNOb1JlYS5tYXAodj0+J1xcbiAgICAgLCAnKyB2LmV4cHIgKycgYXMgJysgdi5uYW1lKS5qb2luKCcnKSA6Jyd9XHJcbiAgICAgICAgICAgICAgICAgICAgZnJvbSB0ZW0gdCBsZWZ0IGpvaW4gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QgdHQub3BlcmF0aXZvLCB0dC5lbmMsIGJvb2xfb3IoY2FyZ2FkbykgY2FyZ2Fkbywgc3RyaW5nX2FnZyhjYXJnYWRvX2RtLCcsJykgY2FyZ2Fkb19kbSxqc29uYl9vYmplY3RfYWdnKHRhcmVhLGpzb25iX2J1aWxkX29iamVjdCgnYXNpZ25hZG8nLGFzaWduYWRvLCdjYXJnYWRvJyxjYXJnYWRvLCdjYXJnYWRvX2RtJyxjYXJnYWRvX2RtKSlldGFyZWFzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbSB0YXJlYXNfdGVtIHR0IGdyb3VwIGJ5IHR0Lm9wZXJhdGl2bywgdHQuZW5jICApdHQgb24gdC5vcGVyYXRpdm89dHQub3BlcmF0aXZvIGFuZCB0LmVuYz10dC5lbmNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgam9pbiBub19yZWEgeSBvbiB5Lm5vX3JlYT10Lm5vcmVhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGpvaW4gJHtzcWxUb29scy5xdW90ZUlkZW50KE9wZXJhdGl2b0dlbmVyYXRvci5tYWluVEQpfSBhdXggb24gYXV4Lm9wZXJhdGl2bz10Lm9wZXJhdGl2byBhbmQgYXV4LiR7c3FsVG9vbHMucXVvdGVJZGVudChPcGVyYXRpdm9HZW5lcmF0b3IubWFpblREUEspfT10LmVuYyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgam9pbiB1c3VhcmlvcyB1c3VfZW5jIG9uIHVzdV9lbmMuaWRwZXIgPSB0dC5ldGFyZWFzLT4nZW5jdSctPj4nYXNpZ25hZG8nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGpvaW4gdXN1YXJpb3MgdXN1X3JlYyBvbiB1c3VfcmVjLmlkcGVyID0gdHQuZXRhcmVhcy0+J3JlY3UnLT4+J2FzaWduYWRvJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdCBqb2luIHVzdWFyaW9zIHVzdV9zdXAgb24gdXN1X3N1cC5pZHBlciA9IHR0LmV0YXJlYXMtPidzdXBlJy0+Pidhc2lnbmFkbydcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7ZmlsdHJvVGVtU2VndW5Vc3VhcmlvKGNvbnRleHQpfVxyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICBgICAgICBcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiBkZWY7XHJcbiAgICB9XHJcbiAgICAiXX0=
@@ -0,0 +1,2 @@
1
+ import { TableDefinition, ContextForDump } from "./types-dmencu";
2
+ export declare function tem_edicion(context: ContextForDump): TableDefinition;
@@ -0,0 +1,62 @@
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", "./table-tem"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.tem_edicion = tem_edicion;
13
+ const table_tem_1 = require("./table-tem");
14
+ // Grilla auxiliar de la tem con los campos que se pueden editar a mano. Cada campo editable se persiste en tem
15
+ // (table:'tem'), porque la grilla de la tem no permite editar nada salvo habilitada.
16
+ // nromanzana y casa sólo se pueden cambiar si el dominio es 5 (lo controla validar_manzana_casa_tem_trg).
17
+ function tem_edicion(context) {
18
+ var _a, _b, _c, _d, _e, _f;
19
+ var puedeEditarCampo = !!(context.forDump || ((_b = (_a = context.puede) === null || _a === void 0 ? void 0 : _a.campo) === null || _b === void 0 ? void 0 : _b.administrar) || context.user.rol === 'recepcionista');
20
+ var puedeEditarProc = !!(context.forDump || ((_d = (_c = context.puede) === null || _c === void 0 ? void 0 : _c.encuestas) === null || _d === void 0 ? void 0 : _d.procesar));
21
+ var puedeEditarManzanaCasa = !!(context.forDump || ((_f = (_e = context.puede) === null || _e === void 0 ? void 0 : _e.campo) === null || _f === void 0 ? void 0 : _f.administrar));
22
+ return {
23
+ name: 'tem_edicion',
24
+ elementName: 'encuesta',
25
+ title: 'edición TEM',
26
+ allow: {
27
+ insert: false,
28
+ delete: false,
29
+ import: false,
30
+ },
31
+ editable: puedeEditarCampo || puedeEditarProc,
32
+ fields: [
33
+ { name: 'operativo', typeName: 'text', editable: false, nullable: false },
34
+ { name: 'enc', typeName: 'text', editable: false, nullable: false },
35
+ { name: 'area', typeName: 'integer', editable: false },
36
+ { name: 'zona', typeName: 'text', editable: false },
37
+ { name: 'cita', typeName: 'text', editable: puedeEditarCampo || puedeEditarProc, table: 'tem' },
38
+ { name: 'result_sup', typeName: 'integer', editable: puedeEditarCampo, table: 'tem' },
39
+ { name: 'fin_campo', typeName: 'text', editable: puedeEditarCampo, table: 'tem' },
40
+ { name: 'proie', typeName: 'text', editable: puedeEditarCampo || puedeEditarProc, table: 'tem' },
41
+ { name: 'dominio', typeName: 'integer', editable: false },
42
+ { name: 'nrocomuna', typeName: 'text', editable: false },
43
+ { name: 'nrofraccion', typeName: 'integer', editable: false },
44
+ { name: 'nroradio', typeName: 'integer', editable: false },
45
+ { name: 'nromanzana', typeName: 'integer', editable: puedeEditarManzanaCasa, table: 'tem' },
46
+ { name: 'casa', typeName: 'text', editable: puedeEditarManzanaCasa, table: 'tem' },
47
+ ],
48
+ primaryKey: ['operativo', 'enc'],
49
+ sql: {
50
+ isTable: false,
51
+ from: `
52
+ (select t.operativo, t.enc, t.area, t.zona, t.cita, t.result_sup, t.fin_campo, t.proie
53
+ , t.dominio, t.nrocomuna, t.nrofraccion, t.nroradio, t.nromanzana, t.casa
54
+ from tem t
55
+ ${(0, table_tem_1.filtroTemSegunUsuario)(context)}
56
+ )
57
+ `
58
+ }
59
+ };
60
+ }
61
+ });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtX2VkaWNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmVyL3RhYmxlLXRlbV9lZGljaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLFlBQVksQ0FBQzs7SUFRYixrQ0EwQ0M7SUEvQ0QsMkNBQWtEO0lBRWxELCtHQUErRztJQUMvRyxxRkFBcUY7SUFDckYsMEdBQTBHO0lBQzFHLFNBQWdCLFdBQVcsQ0FBQyxPQUFzQjs7UUFDOUMsSUFBSSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxLQUFJLE1BQUEsTUFBQSxPQUFPLENBQUMsS0FBSywwQ0FBRSxLQUFLLDBDQUFFLFdBQVcsQ0FBQSxJQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFHLGVBQWUsQ0FBQyxDQUFDO1FBQ3BILElBQUksZUFBZSxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEtBQUksTUFBQSxNQUFBLE9BQU8sQ0FBQyxLQUFLLDBDQUFFLFNBQVMsMENBQUUsUUFBUSxDQUFBLENBQUMsQ0FBQztRQUNoRixJQUFJLHNCQUFzQixHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEtBQUksTUFBQSxNQUFBLE9BQU8sQ0FBQyxLQUFLLDBDQUFFLEtBQUssMENBQUUsV0FBVyxDQUFBLENBQUMsQ0FBQztRQUN0RixPQUFPO1lBQ0gsSUFBSSxFQUFDLGFBQWE7WUFDbEIsV0FBVyxFQUFDLFVBQVU7WUFDdEIsS0FBSyxFQUFDLGFBQWE7WUFDbkIsS0FBSyxFQUFDO2dCQUNGLE1BQU0sRUFBQyxLQUFLO2dCQUNaLE1BQU0sRUFBQyxLQUFLO2dCQUNaLE1BQU0sRUFBQyxLQUFLO2FBQ2Y7WUFDRCxRQUFRLEVBQUUsZ0JBQWdCLElBQUUsZUFBZTtZQUMzQyxNQUFNLEVBQUM7Z0JBQ0gsRUFBQyxJQUFJLEVBQUMsV0FBVyxFQUFjLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBSSxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUN2RixFQUFDLElBQUksRUFBQyxLQUFLLEVBQW9CLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBSSxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUN2RixFQUFDLElBQUksRUFBQyxNQUFNLEVBQW1CLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztnQkFDdEUsRUFBQyxJQUFJLEVBQUMsTUFBTSxFQUFtQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLE1BQU0sRUFBbUIsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsZ0JBQWdCLElBQUUsZUFBZSxFQUFFLEtBQUssRUFBQyxLQUFLLEVBQUM7Z0JBQzdHLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxnQkFBZ0IsRUFBYSxLQUFLLEVBQUMsS0FBSyxFQUFDO2dCQUN2RyxFQUFDLElBQUksRUFBQyxXQUFXLEVBQWMsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsZ0JBQWdCLEVBQWEsS0FBSyxFQUFDLEtBQUssRUFBQztnQkFDdkcsRUFBQyxJQUFJLEVBQUMsT0FBTyxFQUFrQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxnQkFBZ0IsSUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFDLEtBQUssRUFBQztnQkFDN0csRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFdBQVcsRUFBYyxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLGFBQWEsRUFBWSxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFVBQVUsRUFBZSxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7Z0JBQ3RFLEVBQUMsSUFBSSxFQUFDLFlBQVksRUFBYSxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxzQkFBc0IsRUFBTyxLQUFLLEVBQUMsS0FBSyxFQUFDO2dCQUN2RyxFQUFDLElBQUksRUFBQyxNQUFNLEVBQW1CLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLHNCQUFzQixFQUFPLEtBQUssRUFBQyxLQUFLLEVBQUM7YUFDMUc7WUFDRCxVQUFVLEVBQUMsQ0FBQyxXQUFXLEVBQUMsS0FBSyxDQUFDO1lBQzlCLEdBQUcsRUFBQztnQkFDQSxPQUFPLEVBQUMsS0FBSztnQkFDYixJQUFJLEVBQUM7Ozs7OEJBSWEsSUFBQSxpQ0FBcUIsRUFBQyxPQUFPLENBQUM7O2FBRS9DO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQge1RhYmxlRGVmaW5pdGlvbiwgQ29udGV4dEZvckR1bXB9IGZyb20gXCIuL3R5cGVzLWRtZW5jdVwiO1xuaW1wb3J0IHtmaWx0cm9UZW1TZWd1blVzdWFyaW99IGZyb20gXCIuL3RhYmxlLXRlbVwiO1xuXG4vLyBHcmlsbGEgYXV4aWxpYXIgZGUgbGEgdGVtIGNvbiBsb3MgY2FtcG9zIHF1ZSBzZSBwdWVkZW4gZWRpdGFyIGEgbWFuby4gQ2FkYSBjYW1wbyBlZGl0YWJsZSBzZSBwZXJzaXN0ZSBlbiB0ZW1cbi8vICh0YWJsZTondGVtJyksIHBvcnF1ZSBsYSBncmlsbGEgZGUgbGEgdGVtIG5vIHBlcm1pdGUgZWRpdGFyIG5hZGEgc2Fsdm8gaGFiaWxpdGFkYS5cbi8vIG5yb21hbnphbmEgeSBjYXNhIHPDs2xvIHNlIHB1ZWRlbiBjYW1iaWFyIHNpIGVsIGRvbWluaW8gZXMgNSAobG8gY29udHJvbGEgdmFsaWRhcl9tYW56YW5hX2Nhc2FfdGVtX3RyZykuXG5leHBvcnQgZnVuY3Rpb24gdGVtX2VkaWNpb24oY29udGV4dDpDb250ZXh0Rm9yRHVtcCk6VGFibGVEZWZpbml0aW9uIHtcbiAgICB2YXIgcHVlZGVFZGl0YXJDYW1wbyA9ICEhKGNvbnRleHQuZm9yRHVtcCB8fCBjb250ZXh0LnB1ZWRlPy5jYW1wbz8uYWRtaW5pc3RyYXJ8fGNvbnRleHQudXNlci5yb2w9PT0ncmVjZXBjaW9uaXN0YScpO1xuICAgIHZhciBwdWVkZUVkaXRhclByb2MgPSAhIShjb250ZXh0LmZvckR1bXAgfHwgY29udGV4dC5wdWVkZT8uZW5jdWVzdGFzPy5wcm9jZXNhcik7XG4gICAgdmFyIHB1ZWRlRWRpdGFyTWFuemFuYUNhc2EgPSAhIShjb250ZXh0LmZvckR1bXAgfHwgY29udGV4dC5wdWVkZT8uY2FtcG8/LmFkbWluaXN0cmFyKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOid0ZW1fZWRpY2lvbicsXG4gICAgICAgIGVsZW1lbnROYW1lOidlbmN1ZXN0YScsXG4gICAgICAgIHRpdGxlOidlZGljacOzbiBURU0nLFxuICAgICAgICBhbGxvdzp7XG4gICAgICAgICAgICBpbnNlcnQ6ZmFsc2UsXG4gICAgICAgICAgICBkZWxldGU6ZmFsc2UsXG4gICAgICAgICAgICBpbXBvcnQ6ZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIGVkaXRhYmxlOiBwdWVkZUVkaXRhckNhbXBvfHxwdWVkZUVkaXRhclByb2MsXG4gICAgICAgIGZpZWxkczpbXG4gICAgICAgICAgICB7bmFtZTonb3BlcmF0aXZvJyAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsIG51bGxhYmxlOiBmYWxzZX0sXG4gICAgICAgICAgICB7bmFtZTonZW5jJyAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsIG51bGxhYmxlOiBmYWxzZX0sXG4gICAgICAgICAgICB7bmFtZTonYXJlYScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxuICAgICAgICAgICAge25hbWU6J3pvbmEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcbiAgICAgICAgICAgIHtuYW1lOidjaXRhJyAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogcHVlZGVFZGl0YXJDYW1wb3x8cHVlZGVFZGl0YXJQcm9jLCB0YWJsZTondGVtJ30sXG4gICAgICAgICAgICB7bmFtZToncmVzdWx0X3N1cCcgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IHB1ZWRlRWRpdGFyQ2FtcG8gICAgICAgICAgICwgdGFibGU6J3RlbSd9LFxuICAgICAgICAgICAge25hbWU6J2Zpbl9jYW1wbycgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBwdWVkZUVkaXRhckNhbXBvICAgICAgICAgICAsIHRhYmxlOid0ZW0nfSxcbiAgICAgICAgICAgIHtuYW1lOidwcm9pZScgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogcHVlZGVFZGl0YXJDYW1wb3x8cHVlZGVFZGl0YXJQcm9jLCB0YWJsZTondGVtJ30sXG4gICAgICAgICAgICB7bmFtZTonZG9taW5pbycgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxuICAgICAgICAgICAge25hbWU6J25yb2NvbXVuYScgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcbiAgICAgICAgICAgIHtuYW1lOiducm9mcmFjY2lvbicgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXG4gICAgICAgICAgICB7bmFtZTonbnJvcmFkaW8nICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxuICAgICAgICAgICAge25hbWU6J25yb21hbnphbmEnICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBwdWVkZUVkaXRhck1hbnphbmFDYXNhICAgICAsIHRhYmxlOid0ZW0nfSxcbiAgICAgICAgICAgIHtuYW1lOidjYXNhJyAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogcHVlZGVFZGl0YXJNYW56YW5hQ2FzYSAgICAgLCB0YWJsZTondGVtJ30sXG4gICAgICAgIF0sXG4gICAgICAgIHByaW1hcnlLZXk6WydvcGVyYXRpdm8nLCdlbmMnXSxcbiAgICAgICAgc3FsOntcbiAgICAgICAgICAgIGlzVGFibGU6ZmFsc2UsXG4gICAgICAgICAgICBmcm9tOmBcbiAgICAgICAgICAgICAgICAoc2VsZWN0IHQub3BlcmF0aXZvLCB0LmVuYywgdC5hcmVhLCB0LnpvbmEsIHQuY2l0YSwgdC5yZXN1bHRfc3VwLCB0LmZpbl9jYW1wbywgdC5wcm9pZVxuICAgICAgICAgICAgICAgICAgICAgICAgLCB0LmRvbWluaW8sIHQubnJvY29tdW5hLCB0Lm5yb2ZyYWNjaW9uLCB0Lm5yb3JhZGlvLCB0Lm5yb21hbnphbmEsIHQuY2FzYVxuICAgICAgICAgICAgICAgICAgICBmcm9tIHRlbSB0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtmaWx0cm9UZW1TZWd1blVzdWFyaW8oY29udGV4dCl9XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgYFxuICAgICAgICB9XG4gICAgfTtcbn1cbiJdfQ==
@@ -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,3 +1,4 @@
1
1
  import { TableDefinition, ContextForDump, FieldDefinition } from "./types-dmencu";
2
2
  export declare var getDomicilioFields: () => FieldDefinition[];
3
+ export declare var filtroTemSegunUsuario: (context: ContextForDump) => string;
3
4
  export declare function tem(context: ContextForDump, opts?: any): TableDefinition;