dmencu 2.0.20 → 2.0.21

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 (59) hide show
  1. package/dist/client/server/table-tem.d.ts +3 -0
  2. package/dist/client/server/table-tem.js +239 -0
  3. package/dist/client/server/types-dmencu.d.ts +48 -0
  4. package/dist/client/server/types-dmencu.js +33 -0
  5. package/dist/client/unlogged/css/bootstrap.min.css +6 -6
  6. package/dist/client/unlogged/tsconfig.json +14 -14
  7. package/dist/server/server/table-barrios.js +1 -1
  8. package/dist/server/server/table-comunas copy.d.ts +2 -0
  9. package/dist/server/server/table-comunas copy.js +28 -0
  10. package/dist/server/server/table-comunas.js +2 -2
  11. package/dist/server/server/table-encuestadores.js +7 -7
  12. package/dist/server/server/table-fracciones.js +1 -1
  13. package/dist/server/server/table-hogares.js +1 -1
  14. package/dist/server/server/table-hogares_sup.js +1 -1
  15. package/dist/server/server/table-manzanas.js +1 -1
  16. package/dist/server/server/table-parametros.js +1 -1
  17. package/dist/server/server/table-personal.js +7 -7
  18. package/dist/server/server/table-personal_rol.js +7 -7
  19. package/dist/server/server/table-personas.js +1 -1
  20. package/dist/server/server/table-personas_sup.js +1 -1
  21. package/dist/server/server/table-radios.js +3 -3
  22. package/dist/server/server/table-recepcionistas.js +1 -1
  23. package/dist/server/server/table-visitas.js +1 -1
  24. package/dist/server/server/table-visitas_sup.js +1 -1
  25. package/dist/server/server/table-viviendas.js +1 -1
  26. package/dist/unlogged/unlogged/css/bootstrap.min.css +6 -6
  27. package/dist/unlogged/unlogged/server/table-tem.d.ts +3 -0
  28. package/dist/unlogged/unlogged/server/table-tem.js +239 -0
  29. package/dist/unlogged/unlogged/server/types-dmencu.d.ts +48 -0
  30. package/dist/unlogged/unlogged/server/types-dmencu.js +33 -0
  31. package/dist/unlogged/unlogged/tsconfig.json +14 -14
  32. package/dist/unlogged/unlogged/unlogged/abrir-formulario.d.ts +13 -0
  33. package/dist/unlogged/unlogged/unlogged/abrir-formulario.js +109 -0
  34. package/dist/unlogged/unlogged/unlogged/adapt.d.ts +0 -0
  35. package/dist/unlogged/unlogged/unlogged/adapt.js +8 -0
  36. package/dist/unlogged/unlogged/unlogged/bypass-formulario.d.ts +202 -0
  37. package/dist/unlogged/unlogged/unlogged/bypass-formulario.js +1100 -0
  38. package/dist/unlogged/unlogged/unlogged/redux-formulario.d.ts +349 -0
  39. package/dist/unlogged/unlogged/unlogged/redux-formulario.js +318 -0
  40. package/dist/unlogged/unlogged/unlogged/render-formulario.d.ts +86 -0
  41. package/dist/unlogged/unlogged/unlogged/render-formulario.js +1692 -0
  42. package/dist/unlogged/unlogged/unlogged/render-general.d.ts +127 -0
  43. package/dist/unlogged/unlogged/unlogged/render-general.js +176 -0
  44. package/dist/unlogged/unlogged/unlogged/tipos.d.ts +486 -0
  45. package/dist/unlogged/unlogged/unlogged/tipos.js +22 -0
  46. package/dist/unlogged/unlogged/unlogged/unlogged.d.ts +1 -0
  47. package/dist/unlogged/unlogged/unlogged/unlogged.js +180 -0
  48. package/install/actualizar-2023-05-14.sql +38 -38
  49. package/install/actualizar_inconvar.sql +28 -28
  50. package/install/agregados_tem.sql +4 -4
  51. package/install/asignar_desasignar_tareas_tem_trg.sql +43 -43
  52. package/install/metadatos/permisos.tab +11 -11
  53. package/install/metadatos/roles.tab +10 -10
  54. package/install/metadatos/roles_permisos.tab +94 -94
  55. package/install/metadatos/tipovar.tab +9 -9
  56. package/install/sincro_tareas_areas_tareas_tem_trg.sql +29 -29
  57. package/install/usuarios_trg.sql +41 -41
  58. package/install/validar_tareas_tem_trg.sql +67 -67
  59. package/package.json +91 -91
@@ -0,0 +1,3 @@
1
+ import { TableDefinition, ContextForDump, FieldDefinition } from "./types-dmencu";
2
+ export declare var getDomicilioFields: () => FieldDefinition[];
3
+ export declare function tem(context: ContextForDump, opts?: any): TableDefinition;
@@ -0,0 +1,239 @@
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", "procesamiento", "sql-tools"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.getDomicilioFields = void 0;
13
+ exports.tem = tem;
14
+ const procesamiento_1 = require("procesamiento");
15
+ const sqlTools = require("sql-tools");
16
+ var getDomicilioFields = () => [
17
+ { name: 'codcalle', typeName: 'integer', editable: false },
18
+ { name: 'nomcalle', typeName: 'text', editable: false },
19
+ { name: 'nrocatastral', typeName: 'integer', editable: false },
20
+ { name: 'piso', typeName: 'text', editable: false },
21
+ { name: 'departamento', typeName: 'text', editable: false },
22
+ { name: 'habitacion', typeName: 'text', editable: false },
23
+ { name: 'sector', typeName: 'text', editable: false },
24
+ { name: 'edificio', typeName: 'text', editable: false },
25
+ { name: 'entrada', typeName: 'text', editable: false },
26
+ { name: 'barrio', typeName: 'text', editable: false },
27
+ ];
28
+ exports.getDomicilioFields = getDomicilioFields;
29
+ function tem(context, opts) {
30
+ var _a, _b, _c, _d, _e, _f;
31
+ var opts = opts || {};
32
+ var recepcion = opts.recepcion ? '_recepcion' : '';
33
+ var be = context.be;
34
+ 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';
35
+ var puedeEditarProc = context.forDump || ((_d = (_c = context.puede) === null || _c === void 0 ? void 0 : _c.encuestas) === null || _d === void 0 ? void 0 : _d.procesar);
36
+ var columnasAreasParaLaTem = ['obs_recepcionista', 'verificado_rec', 'recepcionista'];
37
+ var columnasNoRea = [
38
+ { name: 'gru_no_rea', expr: 'grupo' }
39
+ ];
40
+ var columnasSoloTem = [
41
+ 'enc_original', 'json_encuesta', 'json_backup', 'fecha_modif_encuesta', 'fecha_backup',
42
+ 'h4', 'x', 'y', 'fexp'
43
+ ];
44
+ var def = {
45
+ name: `tem${recepcion}`,
46
+ tableName: 'tem',
47
+ muestraAbrirEnTodasLasTareas: true,
48
+ allow: {
49
+ insert: false,
50
+ delete: context.forDump,
51
+ },
52
+ editable: puedeEditarCampo || puedeEditarProc,
53
+ hiddenColumns: [
54
+ 'seleccionado_ant', 'cita', 'notas', 'cluster',
55
+ 'codviviendaparticular', 'casa', 'obsdatosdomicilio', 'obsconjunto', 'reserva', 'rotacion_etoi', 'rotacion_eah',
56
+ 'trimestre', 'procedencia', 'sel_etoi_villa', 'marco', 'semana', 'periodicidad',
57
+ 'cargado_dm', 'estados__permite_editar_encuesta'
58
+ ],
59
+ "fields": [
60
+ { name: 'operativo', typeName: 'text', editable: false, nullable: false, defaultValue: 'etoi211' },
61
+ { name: 'enc', typeName: 'text', editable: false, nullable: false },
62
+ { name: "abrir", typeName: 'text', editable: false, inTable: false, clientSide: 'abrir' },
63
+ { name: "consistir", typeName: 'text', editable: false, inTable: false, clientSide: 'consistir' },
64
+ { name: "cluster", typeName: 'integer', editable: false, isName: true },
65
+ { name: 'tarea_actual', typeName: 'text', editable: false },
66
+ { name: "habilitar", typeName: "text", editable: false, inTable: false, clientSide: 'habilitar' },
67
+ { name: "habilitada", typeName: 'boolean', editable: puedeEditarCampo, nullable: false },
68
+ { name: 'area', typeName: 'integer', editable: false },
69
+ { name: 'zona', typeName: 'text', editable: false },
70
+ { name: 'enc_ant', typeName: 'text', editable: false },
71
+ { name: 'area_ant', typeName: 'integer', editable: false },
72
+ { name: 'seleccionado_ant', typeName: 'text', editable: false },
73
+ { name: 'cita', typeName: 'text', editable: true },
74
+ { name: 'rea', typeName: 'integer', editable: false },
75
+ { name: 'norea', typeName: 'integer', editable: false },
76
+ { name: 'cant_h', typeName: 'integer', editable: false },
77
+ { name: 'cant_p', typeName: 'integer', editable: false },
78
+ { name: 'seleccionado', typeName: 'text', editable: false },
79
+ // {name:'sexo_sel' , typeName:'integer' , editable: false },
80
+ // {name:'edad_sel' , typeName:'integer' , editable: false },
81
+ { name: 'resultado', typeName: 'text', editable: false },
82
+ { name: 'gru_no_rea', typeName: 'text', editable: false, inTable: false },
83
+ { name: 'resumen_estado', typeName: 'text', editable: false },
84
+ { name: 'cargado', typeName: 'boolean', editable: false, inTable: false },
85
+ //{name:'encu_habilitada' , typeName:'boolean' , editable: false , inTable: false },
86
+ //{name:'encu_cargado' , typeName:'boolean' , editable: false , inTable: false },
87
+ { name: 'encuestador', typeName: 'text', editable: false, inTable: false },
88
+ { name: 'nombre_enc', typeName: 'text', inTable: false },
89
+ { name: 'apellido_enc', typeName: 'text', inTable: false },
90
+ //{name:'recu_habilitada' , typeName:'boolean' , editable: false , inTable: false },
91
+ //{name:'recu_cargado' , typeName:'boolean' , editable: false , inTable: false },
92
+ { name: 'recuperador', typeName: 'text', editable: false, inTable: false },
93
+ { name: 'nombre_rec', typeName: 'text', inTable: false },
94
+ { name: 'apellido_rec', typeName: 'text', inTable: false },
95
+ //{name:'supe_habilitada' , typeName:'boolean' , editable: false , inTable: false },
96
+ //{name:'supe_cargado' , typeName:'boolean' , editable: false , inTable: false },
97
+ { name: 'supervisor', typeName: 'text', editable: false, inTable: false },
98
+ { name: 'nombre_sup', typeName: 'text', inTable: false },
99
+ { name: 'apellido_sup', typeName: 'text', inTable: false },
100
+ { name: 'rea_sup', typeName: 'integer', editable: false },
101
+ { name: 'norea_sup', typeName: 'integer', editable: false },
102
+ { name: 'resumen_estado_sup', typeName: 'text', editable: false },
103
+ { name: 'pre_sorteo', typeName: 'integer', editable: false, visible: false },
104
+ { name: 'supervision_aleatoria', typeName: 'integer', editable: false },
105
+ { name: 'supervision_dirigida', typeName: 'integer', editable: false },
106
+ { name: 'supervision', typeName: 'integer', editable: false },
107
+ { name: 'result_sup', typeName: 'integer', editable: puedeEditarCampo },
108
+ { name: 'fin_campo', typeName: 'text', editable: puedeEditarCampo },
109
+ { name: 'proie', typeName: 'text', editable: puedeEditarCampo || puedeEditarProc },
110
+ { name: 'pase_tabla', typeName: 'text', editable: false },
111
+ ...(0, exports.getDomicilioFields)(),
112
+ //{name: "verificar" , typeName:'boolean', editable:true, inTable:false, clientSide:'verificarCaso'},
113
+ //{name: "finalizar_campo" , typeName:'boolean', editable:true, inTable:false, clientSide:'finalizarCampo'}, //fin_de_campo
114
+ //{name: "procesamiento" , typeName:'boolean', editable:true, inTable:false, clientSide:'pasarAProcesamiento', label: 'pasar a procesamiento'}, //procesamiento
115
+ { name: 'fexp', typeName: 'integer', editable: false },
116
+ { name: 'areaup', typeName: 'text', editable: false },
117
+ { name: 'codpos', typeName: 'integer', editable: false },
118
+ { name: 'dominio', typeName: 'integer', editable: false },
119
+ { name: 'estrato_ing', typeName: 'integer', editable: false },
120
+ { name: 'id_marco', typeName: 'bigint', editable: false },
121
+ { name: 'obs', typeName: 'text', editable: false },
122
+ { name: 'nrocomuna', typeName: 'integer', editable: false },
123
+ { name: 'nrofraccion', typeName: 'integer', editable: false },
124
+ { name: 'nroradio', typeName: 'integer', editable: false },
125
+ { name: 'nromanzana', typeName: 'integer', editable: false },
126
+ { name: 'nrolado', typeName: 'integer', editable: false },
127
+ { name: 'usodomicilio', typeName: 'integer', editable: false },
128
+ { name: 'orden_relevamiento', typeName: 'integer', editable: false },
129
+ { name: 'mapa', typeName: 'integer', editable: false },
130
+ { name: "consistido", typeName: 'timestamp', editable: false, inTable: false },
131
+ { name: 'cargado_dm', typeName: 'text', editable: false, inTable: false },
132
+ { name: 'participacion', typeName: 'integer', editable: false, visible: true },
133
+ { name: 'rotacion', typeName: 'integer', editable: false, visible: true },
134
+ { name: 'clase', typeName: 'text', editable: false, visible: true },
135
+ { name: 'panel', typeName: 'integer', editable: false, visible: true },
136
+ //vacios o poco interesantes
137
+ { name: 'codviviendaparticular', typeName: 'text', editable: false },
138
+ { name: 'casa', typeName: 'text', editable: false },
139
+ { name: 'obsdatosdomicilio', typeName: 'text', editable: false },
140
+ { name: 'obsconjunto', typeName: 'text', editable: false },
141
+ { name: 'reserva', typeName: 'integer', editable: false },
142
+ { name: 'rotacion_etoi', typeName: 'integer', editable: false, visible: false },
143
+ { name: 'rotacion_eah', typeName: 'integer', editable: false, visible: false },
144
+ { name: 'trimestre', typeName: 'integer', editable: false, visible: false },
145
+ { name: 'procedencia', typeName: 'text', editable: false, visible: false },
146
+ { name: 'sel_etoi_villa', typeName: 'integer', editable: false, visible: false },
147
+ { name: 'marco', typeName: 'integer', editable: false, visible: false },
148
+ { name: 'semana', typeName: 'integer', editable: false, visible: false },
149
+ { name: 'periodicidad', typeName: 'text', editable: false, visible: false },
150
+ //solo tem
151
+ { name: 'fecha_modif_encuesta', typeName: "timestamp", editable: false },
152
+ { name: 'json_encuesta', typeName: 'jsonb', editable: false },
153
+ { name: 'fecha_backup', typeName: "timestamp", editable: false },
154
+ { name: "json_backup", typeName: 'jsonb', editable: false, visible: false },
155
+ { name: "token_autogenerado_dm", typeName: 'text', editable: false, visible: false },
156
+ { name: "enc_autogenerado_dm", typeName: 'text', editable: false },
157
+ { name: "enc_autogenerado_dm_capa", typeName: 'text', editable: false },
158
+ { name: "h4", typeName: 'text', editable: false },
159
+ { name: "x", typeName: 'decimal', editable: false },
160
+ { name: "y", typeName: 'decimal', editable: false },
161
+ { name: 'notas', typeName: 'text', editable: false, inTable: false },
162
+ { name: "modificado", typeName: 'timestamp', editable: false },
163
+ { name: "libre", typeName: "boolean", defaultDbValue: "true", visible: false, editable: false },
164
+ { name: "fecha_bloqueo", typeName: "timestamp", visible: false, editable: false }
165
+ //{name:'obs_sup' , typeName:'text' , editable: isSupervisor },
166
+ //{name:'obs_coor' , typeName:'text' , editable: isCoordinador || isSubCoordinador },
167
+ ],
168
+ "primaryKey": ["operativo", "enc"],
169
+ foreignKeys: [
170
+ { references: 'areas', fields: ['operativo', 'area'] },
171
+ {
172
+ references: 'tareas',
173
+ fields: [
174
+ { source: 'operativo', target: 'operativo' },
175
+ { source: 'tarea_actual', target: 'tarea' }
176
+ ],
177
+ alias: 'taract'
178
+ },
179
+ // {references:'usuarios', fields:[{source:'carga_persona', target:'idper'}], displayFields:['apellido','nombre']},
180
+ ],
181
+ softForeignKeys: [
182
+ { references: 'tokens', fields: [{ source: 'cargado_dm', target: 'token' }], displayFields: ['username'], displayAfterFieldName: 'cargado' }
183
+ ],
184
+ "detailTables": [
185
+ { table: "inconsistencias", abr: "I", fields: [{ source: 'operativo', target: 'operativo' }, { source: 'enc', target: 'vivienda' }] },
186
+ { table: "historial_tem", abr: "H", fields: ['operativo', 'enc'] }
187
+ ],
188
+ constraints: [
189
+ { constraintType: 'check', consName: "vresult_sup_ck", expr: "(result_sup between 1 and 9 or result_sup in (11,12,21,22 ) or result_sup between 60 and 68)" },
190
+ { constraintType: 'unique', consName: "autogenerado_dm_uk", fields: ['token_autogenerado_dm', 'enc_autogenerado_dm'] }
191
+ ]
192
+ };
193
+ if (opts.recepcion) {
194
+ def.fields = def.fields.filter(f => !columnasSoloTem.includes(f.name));
195
+ def.hiddenColumns = [...def.hiddenColumns, ...columnasAreasParaLaTem.map(x => `areas__${x}`)];
196
+ def.foreignKeys = (_e = def.foreignKeys) === null || _e === void 0 ? void 0 : _e.map(function (f) { if (f.references == 'areas') {
197
+ f.displayFields = columnasAreasParaLaTem;
198
+ } ; return f; });
199
+ }
200
+ else {
201
+ (_f = def.detailTables) === null || _f === void 0 ? void 0 : _f.unshift({ table: "tareas_tem", abr: "T", fields: ['operativo', 'enc'], label: 'tareas' });
202
+ def.fields = def.fields.filter(f => !columnasNoRea.map(fn => fn.name).includes(f.name));
203
+ }
204
+ ;
205
+ const q = context.be.db.quoteIdent;
206
+ def.sql = {
207
+ isTable: !opts.recepcion, //TODO: resolver como sacarlo del dump
208
+ isReferable: true,
209
+ from: `
210
+ (select
211
+ ${def.fields.filter(f => f.inTable == undefined && !f.clientSide).map(f => 't.' + q(f.name)).join(',')}
212
+ , tt.cargado, tt.cargado_dm
213
+ , tt.etareas->'encu'->>'asignado' as encuestador
214
+ , tt.etareas->'recu'->>'asignado' as recuperador
215
+ , tt.etareas->'supe'->>'asignado' as supervisor
216
+ , null notas
217
+ , aux.consistido
218
+ , usu_enc.nombre as nombre_enc
219
+ , usu_enc.apellido as apellido_enc
220
+ , usu_rec.nombre as nombre_rec
221
+ , usu_rec.apellido as apellido_rec
222
+ , usu_sup.nombre as nombre_sup
223
+ , usu_sup.apellido as apellido_sup
224
+ ${opts.recepcion ? columnasNoRea.map(v => '\n , ' + v.expr + ' as ' + v.name).join('') : ''}
225
+ from tem t left join (
226
+ select tt.operativo, tt.enc, bool_or(cargado) cargado, string_agg(cargado_dm,',') cargado_dm,jsonb_object_agg(tarea,jsonb_build_object('asignado',asignado,'cargado',cargado,'cargado_dm',cargado_dm))etareas
227
+ from tareas_tem tt group by tt.operativo, tt.enc )tt on t.operativo=tt.operativo and t.enc=tt.enc
228
+ left join no_rea y on y.no_rea::integer=t.norea
229
+ left join ${sqlTools.quoteIdent(procesamiento_1.OperativoGenerator.mainTD)} aux on aux.operativo=t.operativo and aux.${sqlTools.quoteIdent(procesamiento_1.OperativoGenerator.mainTDPK)}=t.enc
230
+ left join usuarios usu_enc on usu_enc.idper = tt.etareas->'encu'->>'asignado'
231
+ left join usuarios usu_rec on usu_rec.idper = tt.etareas->'recu'->>'asignado'
232
+ left join usuarios usu_sup on usu_sup.idper = tt.etareas->'supe'->>'asignado'
233
+ )
234
+ `
235
+ };
236
+ return def;
237
+ }
238
+ });
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZlci90YWJsZS10ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFvQmIsa0JBNk1LO0lBOU5MLGlEQUFrRDtJQUNsRCxzQ0FBc0M7SUFHL0IsSUFBSSxrQkFBa0IsR0FBRyxHQUFxQixFQUFFLENBQUM7UUFDcEQsRUFBQyxJQUFJLEVBQUMsVUFBVSxFQUFlLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxVQUFVLEVBQWUsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLGNBQWMsRUFBVyxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsTUFBTSxFQUFtQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsY0FBYyxFQUFXLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxZQUFZLEVBQWEsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFFBQVEsRUFBaUIsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFVBQVUsRUFBZSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFp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QUFHLENBQUMsR0FBRyxHQUFFO1lBQ0QsT0FBTyxFQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxzQ0FBc0M7WUFDL0QsV0FBVyxFQUFDLElBQUk7WUFDaEIsSUFBSSxFQUFDOztzQkFFSyxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLENBQUMsQ0FBQyxPQUFPLElBQUUsU0FBUyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLElBQUksR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzs7Ozs7Ozs7Ozs7OztzQkFhNUYsSUFBSSxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLFdBQVcsR0FBRSxDQUFDLENBQUMsSUFBSSxHQUFFLE1BQU0sR0FBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQSxFQUFFOzs7Ozt3Q0FLcEUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxrQ0FBa0IsQ0FBQyxNQUFNLENBQUMsNkNBQTZDLFFBQVEsQ0FBQyxVQUFVLENBQUMsa0NBQWtCLENBQUMsUUFBUSxDQUFDOzs7OzthQUt0SztTQUNKLENBQUM7UUFDRixPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCB7VGFibGVEZWZpbml0aW9uLCBDb250ZXh0Rm9yRHVtcCwgRmllbGREZWZpbml0aW9ufSBmcm9tIFwiLi90eXBlcy1kbWVuY3VcIjtcclxuaW1wb3J0IHtPcGVyYXRpdm9HZW5lcmF0b3IgfSBmcm9tIFwicHJvY2VzYW1pZW50b1wiO1xyXG5pbXBvcnQgKiBhcyBzcWxUb29scyBmcm9tICdzcWwtdG9vbHMnO1xyXG5cclxuXHJcbmV4cG9ydCB2YXIgZ2V0RG9taWNpbGlvRmllbGRzID0gKCk6RmllbGREZWZpbml0aW9uW10gPT4gW1xyXG4gICAge25hbWU6J2NvZGNhbGxlJyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidub21jYWxsZScgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonbnJvY2F0YXN0cmFsJyAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J3Bpc28nICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidkZXBhcnRhbWVudG8nICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonaGFiaXRhY2lvbicgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J3NlY3RvcicgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidlZGlmaWNpbycgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonZW50cmFkYScgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J2JhcnJpbycgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuXVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRlbShjb250ZXh0OkNvbnRleHRGb3JEdW1wLCBvcHRzPzphbnkpOlRhYmxlRGVmaW5pdGlvbiB7XHJcbiAgICB2YXIgb3B0cz1vcHRzfHx7fTtcclxuICAgIHZhciByZWNlcGNpb249b3B0cy5yZWNlcGNpb24/J19yZWNlcGNpb24nOicnO1xyXG4gICAgdmFyIGJlPWNvbnRleHQuYmU7XHJcbiAgICB2YXIgcHVlZGVFZGl0YXJDYW1wbyA9IGNvbnRleHQuZm9yRHVtcCB8fCBjb250ZXh0LnB1ZWRlPy5jYW1wbz8uYWRtaW5pc3RyYXJ8fGNvbnRleHQudXNlci5yb2w9PT0ncmVjZXBjaW9uaXN0YSc7XHJcbiAgICB2YXIgcHVlZGVFZGl0YXJQcm9jID0gY29udGV4dC5mb3JEdW1wIHx8IGNvbnRleHQucHVlZGU/LmVuY3Vlc3Rhcz8ucHJvY2VzYXI7XHJcblxyXG4gICAgdmFyIGNvbHVtbmFzQXJlYXNQYXJhTGFUZW09WydvYnNfcmVjZXBjaW9uaXN0YScsJ3ZlcmlmaWNhZG9fcmVjJywncmVjZXBjaW9uaXN0YSddO1xyXG5cclxuICAgIHZhciBjb2x1bW5hc05vUmVhPVtcclxuICAgICAgICB7bmFtZTonZ3J1X25vX3JlYScsIGV4cHI6ICdncnVwbycgfVxyXG4gICAgXTtcclxuICAgIHZhciBjb2x1bW5hc1NvbG9UZW09W1xyXG4gICAgICAgICAgJ2VuY19vcmlnaW5hbCcgICAsICdqc29uX2VuY3Vlc3RhJyAgICAgICwgJ2pzb25fYmFja3VwJywgJ2ZlY2hhX21vZGlmX2VuY3Vlc3RhJywgJ2ZlY2hhX2JhY2t1cCdcclxuICAgICAgICAsICdoNCcgICAgICAgICAgICAgLCAneCcgICAgICAgLCAneScgICAgICAsICdmZXhwJ1xyXG4gICAgXTtcclxuICAgIHZhciBkZWY6IFRhYmxlRGVmaW5pdGlvbj0ge1xyXG4gICAgICAgIG5hbWU6YHRlbSR7cmVjZXBjaW9ufWAsXHJcbiAgICAgICAgdGFibGVOYW1lOid0ZW0nLFxyXG4gICAgICAgIG11ZXN0cmFBYnJpckVuVG9kYXNMYXNUYXJlYXM6dHJ1ZSxcclxuICAgICAgICBhbGxvdzp7XHJcbiAgICAgICAgICAgIGluc2VydDpmYWxzZSxcclxuICAgICAgICAgICAgZGVsZXRlOmNvbnRleHQuZm9yRHVtcCxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVkaXRhYmxlOiBwdWVkZUVkaXRhckNhbXBvfHxwdWVkZUVkaXRhclByb2MsXHJcbiAgICAgICAgaGlkZGVuQ29sdW1uczpbXHJcbiAgICAgICAgICAgICdzZWxlY2Npb25hZG9fYW50JywnY2l0YScsJ25vdGFzJywgJ2NsdXN0ZXInLFxyXG4gICAgICAgICAgICAnY29kdml2aWVuZGFwYXJ0aWN1bGFyJywgJ2Nhc2EnLCAnb2JzZGF0b3Nkb21pY2lsaW8nLCAnb2JzY29uanVudG8nLCAncmVzZXJ2YScsICdyb3RhY2lvbl9ldG9pJywgJ3JvdGFjaW9uX2VhaCdcclxuICAgICAgICAgICAgLCAndHJpbWVzdHJlJyAgICwgJ3Byb2NlZGVuY2lhJywgJ3NlbF9ldG9pX3ZpbGxhJyAgICwgJ21hcmNvJyAgICAgICwgJ3NlbWFuYScgLCAncGVyaW9kaWNpZGFkJyBcclxuICAgICAgICAgICAgLCAnY2FyZ2Fkb19kbScsICdlc3RhZG9zX19wZXJtaXRlX2VkaXRhcl9lbmN1ZXN0YSdcclxuICAgICAgICBdLFxyXG4gICAgICAgIFwiZmllbGRzXCI6IFtcclxuICAgICAgICAgICAge25hbWU6J29wZXJhdGl2bycgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBudWxsYWJsZTogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ2V0b2kyMTEnfSxcclxuICAgICAgICAgICAge25hbWU6J2VuYycgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBudWxsYWJsZTogZmFsc2UgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImFicmlyXCIgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidhYnJpcid9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImNvbnNpc3RpclwiICAgICAgICAgICAgLCB0eXBlTmFtZTogJ3RleHQnICAgLCBlZGl0YWJsZTogZmFsc2UgICwgaW5UYWJsZTpmYWxzZSwgY2xpZW50U2lkZTonY29uc2lzdGlyJ30sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImNsdXN0ZXJcIiAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSwgaXNOYW1lOnRydWV9LFxyXG4gICAgICAgICAgICB7bmFtZTondGFyZWFfYWN0dWFsJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImhhYmlsaXRhclwiICAgICAgICAgICAgLCB0eXBlTmFtZTogXCJ0ZXh0XCIgICAsIGVkaXRhYmxlOmZhbHNlICAgLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidoYWJpbGl0YXInfSxcclxuICAgICAgICAgICAge25hbWU6XCJoYWJpbGl0YWRhXCIgICAgICAgICAgICwgdHlwZU5hbWU6ICdib29sZWFuJywgZWRpdGFibGU6cHVlZGVFZGl0YXJDYW1wbywgbnVsbGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J2FyZWEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3pvbmEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2VuY19hbnQnICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2FyZWFfYW50JyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3NlbGVjY2lvbmFkb19hbnQnICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NpdGEnICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiB0cnVlICAgfSxcclxuICAgICAgICAgICAge25hbWU6J3JlYScgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vcmVhJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NhbnRfaCcgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NhbnRfcCcgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3NlbGVjY2lvbmFkbycgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuLy8gICAgICAgICAgICB7bmFtZTonc2V4b19zZWwnICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4vLyAgICAgICAgICAgIHtuYW1lOidlZGFkX3NlbCcgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXN1bHRhZG8nICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidncnVfbm9fcmVhJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOmZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVzdW1lbl9lc3RhZG8nICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FyZ2FkbycgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J2VuY3VfaGFiaWxpdGFkYScgICAgICAsIHR5cGVOYW1lOidib29sZWFuJyAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidlbmN1X2NhcmdhZG8nICAgICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2VuY3Vlc3RhZG9yJyAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonbm9tYnJlX2VuYycgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidhcGVsbGlkb19lbmMnICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy97bmFtZToncmVjdV9oYWJpbGl0YWRhJyAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIC8ve25hbWU6J3JlY3VfY2FyZ2FkbycgICAgICAgICAsIHR5cGVOYW1lOidib29sZWFuJyAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVjdXBlcmFkb3InICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidub21icmVfcmVjJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2FwZWxsaWRvX3JlYycgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOidzdXBlX2hhYmlsaXRhZGEnICAgICAgLCB0eXBlTmFtZTonYm9vbGVhbicgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy97bmFtZTonc3VwZV9jYXJnYWRvJyAgICAgICAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nICwgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzdXBlcnZpc29yJyAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgLCBpblRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vbWJyZV9zdXAnICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonYXBlbGxpZG9fc3VwJyAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgaW5UYWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZWFfc3VwJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J25vcmVhX3N1cCcgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVzdW1lbl9lc3RhZG9fc3VwJyAgICwgdHlwZU5hbWU6J3RleHQnICAgICAgICAsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwcmVfc29ydGVvJyAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlLCB2aXNpYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzdXBlcnZpc2lvbl9hbGVhdG9yaWEnLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J3N1cGVydmlzaW9uX2RpcmlnaWRhJyAsIHR5cGVOYW1lOidpbnRlZ2VyJyAgICAgLCBlZGl0YWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTonc3VwZXJ2aXNpb24nICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICAgICAsIGVkaXRhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyZXN1bHRfc3VwJyAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgICAgICwgZWRpdGFibGU6IHB1ZWRlRWRpdGFyQ2FtcG99LFxyXG4gICAgICAgICAgICB7bmFtZTonZmluX2NhbXBvJyAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IHB1ZWRlRWRpdGFyQ2FtcG8gIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwcm9pZScgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogcHVlZGVFZGl0YXJDYW1wb3x8cHVlZGVFZGl0YXJQcm9jICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncGFzZV90YWJsYScgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICAuLi5nZXREb21pY2lsaW9GaWVsZHMoKSxcclxuICAgICAgICAgICAgLy97bmFtZTogXCJ2ZXJpZmljYXJcIiAgICAgICAsIHR5cGVOYW1lOidib29sZWFuJywgZWRpdGFibGU6dHJ1ZSwgaW5UYWJsZTpmYWxzZSwgY2xpZW50U2lkZTondmVyaWZpY2FyQ2Fzbyd9LFxyXG4gICAgICAgICAgICAvL3tuYW1lOiBcImZpbmFsaXphcl9jYW1wb1wiICwgdHlwZU5hbWU6J2Jvb2xlYW4nLCBlZGl0YWJsZTp0cnVlLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidmaW5hbGl6YXJDYW1wbyd9LCAvL2Zpbl9kZV9jYW1wb1xyXG4gICAgICAgICAgICAvL3tuYW1lOiBcInByb2Nlc2FtaWVudG9cIiAgICwgdHlwZU5hbWU6J2Jvb2xlYW4nLCBlZGl0YWJsZTp0cnVlLCBpblRhYmxlOmZhbHNlLCBjbGllbnRTaWRlOidwYXNhckFQcm9jZXNhbWllbnRvJywgbGFiZWw6ICdwYXNhciBhIHByb2Nlc2FtaWVudG8nfSwgLy9wcm9jZXNhbWllbnRvXHJcbiAgICAgICAgICAgIHtuYW1lOidmZXhwJyAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidhcmVhdXAnICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidjb2Rwb3MnICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidkb21pbmlvJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidlc3RyYXRvX2luZycgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidpZF9tYXJjbycgICAgICAgICAgICAgLCB0eXBlTmFtZTonYmlnaW50JyAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidvYnMnICAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiducm9jb211bmEnICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiducm9mcmFjY2lvbicgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiducm9yYWRpbycgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiducm9tYW56YW5hJyAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiducm9sYWRvJyAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOid1c29kb21pY2lsaW8nICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidvcmRlbl9yZWxldmFtaWVudG8nICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidtYXBhJyAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOiBcImNvbnNpc3RpZG9cIiAgICAgICAgICAsIHR5cGVOYW1lOiAndGltZXN0YW1wJywgZWRpdGFibGU6IGZhbHNlICwgaW5UYWJsZTpmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2NhcmdhZG9fZG0nICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAsIGluVGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncGFydGljaXBhY2lvbicgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogdHJ1ZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3JvdGFjaW9uJyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IHRydWUgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidjbGFzZScgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiB0cnVlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncGFuZWwnICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogdHJ1ZSAgfSxcclxuICAgICAgICAgICAgLy92YWNpb3MgbyBwb2NvIGludGVyZXNhbnRlc1xyXG4gICAgICAgICAgICB7bmFtZTonY29kdml2aWVuZGFwYXJ0aWN1bGFyJywgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonY2FzYScgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonb2JzZGF0b3Nkb21pY2lsaW8nICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonb2JzY29uanVudG8nICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncmVzZXJ2YScgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncm90YWNpb25fZXRvaScgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidyb3RhY2lvbl9lYWgnICAgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J3RyaW1lc3RyZScgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZToncHJvY2VkZW5jaWEnICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidzZWxfZXRvaV92aWxsYScgICAgICAgLCB0eXBlTmFtZTonaW50ZWdlcicgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J21hcmNvJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgLHZpc2libGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTonc2VtYW5hJyAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICAsdmlzaWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidwZXJpb2RpY2lkYWQnICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgICx2aXNpYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAgLy9zb2xvIHRlbSBcclxuICAgICAgICAgICAge25hbWU6J2ZlY2hhX21vZGlmX2VuY3Vlc3RhJyAsIHR5cGVOYW1lOiBcInRpbWVzdGFtcFwiLCBlZGl0YWJsZTpmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J2pzb25fZW5jdWVzdGEnICAgICAgICAsIHR5cGVOYW1lOidqc29uYicgICAgICwgZWRpdGFibGU6ZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOidmZWNoYV9iYWNrdXAnICAgICAgICAgLCB0eXBlTmFtZTogXCJ0aW1lc3RhbXBcIiwgZWRpdGFibGU6ZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImpzb25fYmFja3VwXCIgICAgICAgICAgLCB0eXBlTmFtZTonanNvbmInICAgLCBlZGl0YWJsZTogZmFsc2UsIHZpc2libGU6ZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTpcInRva2VuX2F1dG9nZW5lcmFkb19kbVwiLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UsIHZpc2libGU6ZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTpcImVuY19hdXRvZ2VuZXJhZG9fZG1cIiAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwiZW5jX2F1dG9nZW5lcmFkb19kbV9jYXBhXCIsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6XCJoNFwiICAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAgICAgICAgICB7bmFtZTpcInhcIiAgICAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTonZGVjaW1hbCcgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwieVwiICAgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidkZWNpbWFsJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vdGFzJyAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSwgaW5UYWJsZTpmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOlwibW9kaWZpY2Fkb1wiICAgICAgICAgICAsIHR5cGVOYW1lOiAndGltZXN0YW1wJywgZWRpdGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6IFwibGlicmVcIiAsIHR5cGVOYW1lOiBcImJvb2xlYW5cIiwgZGVmYXVsdERiVmFsdWU6XCJ0cnVlXCIgICwgdmlzaWJsZTpmYWxzZSwgZWRpdGFibGU6ZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTogXCJmZWNoYV9ibG9xdWVvXCIsIHR5cGVOYW1lOiBcInRpbWVzdGFtcFwiLCB2aXNpYmxlOmZhbHNlLCBlZGl0YWJsZTpmYWxzZX1cclxuICAgICAgICAgICAgLy97bmFtZTonb2JzX3N1cCcgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICwgZWRpdGFibGU6IGlzU3VwZXJ2aXNvciAgICAgfSxcclxuICAgICAgICAgICAgLy97bmFtZTonb2JzX2Nvb3InICAgICAgICwgdHlwZU5hbWU6J3RleHQnICwgZWRpdGFibGU6IGlzQ29vcmRpbmFkb3IgfHwgaXNTdWJDb29yZGluYWRvciB9LCAgXHJcbiAgICAgICAgXSxcclxuICAgICAgICBcInByaW1hcnlLZXlcIjogWyBcIm9wZXJhdGl2b1wiLCBcImVuY1wiIF0sXHJcbiAgICAgICAgZm9yZWlnbktleXM6W1xyXG4gICAgICAgICAgICB7cmVmZXJlbmNlczonYXJlYXMnICAgLCBmaWVsZHM6WydvcGVyYXRpdm8nLCAnYXJlYSddfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgcmVmZXJlbmNlczondGFyZWFzJyAsIFxyXG4gICAgICAgICAgICAgICAgZmllbGRzOltcclxuICAgICAgICAgICAgICAgICAgICB7c291cmNlOidvcGVyYXRpdm8nLCB0YXJnZXQ6J29wZXJhdGl2byd9LFxyXG4gICAgICAgICAgICAgICAgICAgIHtzb3VyY2U6J3RhcmVhX2FjdHVhbCcsIHRhcmdldDondGFyZWEnfVxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgIGFsaWFzOid0YXJhY3QnXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgLy8gICAge3JlZmVyZW5jZXM6J3VzdWFyaW9zJywgZmllbGRzOlt7c291cmNlOidjYXJnYV9wZXJzb25hJywgdGFyZ2V0OidpZHBlcid9XSwgZGlzcGxheUZpZWxkczpbJ2FwZWxsaWRvJywnbm9tYnJlJ119LFxyXG4gICAgICAgIF0sICAgICAgICBcclxuICAgICAgICBzb2Z0Rm9yZWlnbktleXM6W1xyXG4gICAgICAgICAgICB7cmVmZXJlbmNlczondG9rZW5zJywgZmllbGRzOlt7c291cmNlOidjYXJnYWRvX2RtJywgdGFyZ2V0Oid0b2tlbid9XSwgZGlzcGxheUZpZWxkczpbJ3VzZXJuYW1lJ10sIGRpc3BsYXlBZnRlckZpZWxkTmFtZTonY2FyZ2Fkbyd9XHJcbiAgICAgICAgXSxcclxuICAgICAgICBcImRldGFpbFRhYmxlc1wiOiBbXHJcbiAgICAgICAgICAgIHt0YWJsZTogXCJpbmNvbnNpc3RlbmNpYXNcIiwgYWJyOiBcIklcIiwgZmllbGRzOiBbe3NvdXJjZTonb3BlcmF0aXZvJywgdGFyZ2V0OidvcGVyYXRpdm8nfSx7c291cmNlOidlbmMnLCB0YXJnZXQ6J3ZpdmllbmRhJ31dfSxcclxuICAgICAgICAgICAge3RhYmxlOiBcImhpc3RvcmlhbF90ZW1cIiwgYWJyOiBcIkhcIiwgZmllbGRzOiBbJ29wZXJhdGl2bycsJ2VuYyddfVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgY29uc3RyYWludHM6W1xyXG4gICAgICAgICAgICB7Y29uc3RyYWludFR5cGU6J2NoZWNrJywgY29uc05hbWU6XCJ2cmVzdWx0X3N1cF9ja1wiLCBleHByOlwiKHJlc3VsdF9zdXAgYmV0d2VlbiAxIGFuZCA5IG9yIHJlc3VsdF9zdXAgaW4gKDExLDEyLDIxLDIyICkgb3IgcmVzdWx0X3N1cCBiZXR3ZWVuIDYwIGFuZCA2OClcIn0sXHJcbiAgICAgICAgICAgIHtjb25zdHJhaW50VHlwZTondW5pcXVlJywgY29uc05hbWU6XCJhdXRvZ2VuZXJhZG9fZG1fdWtcIiwgZmllbGRzOlsndG9rZW5fYXV0b2dlbmVyYWRvX2RtJywnZW5jX2F1dG9nZW5lcmFkb19kbSddfVxyXG4gICAgICAgIF1cclxuICAgIH07XHJcbiAgICBpZiAob3B0cy5yZWNlcGNpb24pIHtcclxuICAgICAgICBkZWYuZmllbGRzPWRlZi5maWVsZHMuZmlsdGVyKGY9PiFjb2x1bW5hc1NvbG9UZW0uaW5jbHVkZXMoZi5uYW1lKSApXHJcbiAgICAgICAgZGVmLmhpZGRlbkNvbHVtbnM9Wy4uLmRlZi5oaWRkZW5Db2x1bW5zLCAuLi5jb2x1bW5hc0FyZWFzUGFyYUxhVGVtLm1hcCh4PT5gYXJlYXNfXyR7eH1gKV1cclxuICAgICAgICBkZWYuZm9yZWlnbktleXM9ZGVmLmZvcmVpZ25LZXlzPy5tYXAoZnVuY3Rpb24gKGYpIHtpZiAoZi5yZWZlcmVuY2VzPT0nYXJlYXMnKXtmLmRpc3BsYXlGaWVsZHM9Y29sdW1uYXNBcmVhc1BhcmFMYVRlbX07IHJldHVybiBmfSkgXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGRlZi5kZXRhaWxUYWJsZXM/LnVuc2hpZnQoe3RhYmxlOiBcInRhcmVhc190ZW1cIiwgYWJyOiBcIlRcIiwgZmllbGRzOiBbJ29wZXJhdGl2bycsICdlbmMnXSwgbGFiZWw6J3RhcmVhcyd9KVxyXG4gICAgICAgIGRlZi5maWVsZHM9ZGVmLmZpZWxkcy5maWx0ZXIoZj0+IWNvbHVtbmFzTm9SZWEubWFwKGZuPT5mbi5uYW1lKS5pbmNsdWRlcyhmLm5hbWUpIClcclxuICAgIH07XHJcbiAgICBjb25zdCBxPWNvbnRleHQuYmUuZGIucXVvdGVJZGVudDtcclxuICAgIGRlZi5zcWw9IHtcclxuICAgICAgICAgICAgaXNUYWJsZTohb3B0cy5yZWNlcGNpb24sIC8vVE9ETzogcmVzb2x2ZXIgY29tbyBzYWNhcmxvIGRlbCBkdW1wXHJcbiAgICAgICAgICAgIGlzUmVmZXJhYmxlOnRydWUsXHJcbiAgICAgICAgICAgIGZyb206YFxyXG4gICAgICAgICAgICAgICAgKHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICR7ZGVmLmZpZWxkcy5maWx0ZXIoZj0+Zi5pblRhYmxlPT11bmRlZmluZWQgJiYgIWYuY2xpZW50U2lkZSkubWFwKGY9Pid0LicrcShmLm5hbWUpKS5qb2luKCcsJyl9XHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5jYXJnYWRvLCB0dC5jYXJnYWRvX2RtXHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5ldGFyZWFzLT4nZW5jdSctPj4nYXNpZ25hZG8nIGFzIGVuY3Vlc3RhZG9yXHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5ldGFyZWFzLT4ncmVjdSctPj4nYXNpZ25hZG8nIGFzIHJlY3VwZXJhZG9yXHJcbiAgICAgICAgICAgICAgICAgICAgLCB0dC5ldGFyZWFzLT4nc3VwZSctPj4nYXNpZ25hZG8nIGFzIHN1cGVydmlzb3JcclxuICAgICAgICAgICAgICAgICAgICAsIG51bGwgbm90YXNcclxuICAgICAgICAgICAgICAgICAgICAsIGF1eC5jb25zaXN0aWRvXHJcbiAgICAgICAgICAgICAgICAgICAgLCB1c3VfZW5jLm5vbWJyZSBhcyBub21icmVfZW5jXHJcbiAgICAgICAgICAgICAgICAgICAgLCB1c3VfZW5jLmFwZWxsaWRvIGFzIGFwZWxsaWRvX2VuY1xyXG4gICAgICAgICAgICAgICAgICAgICwgdXN1X3JlYy5ub21icmUgYXMgbm9tYnJlX3JlY1xyXG4gICAgICAgICAgICAgICAgICAgICwgdXN1X3JlYy5hcGVsbGlkbyBhcyBhcGVsbGlkb19yZWNcclxuICAgICAgICAgICAgICAgICAgICAsIHVzdV9zdXAubm9tYnJlIGFzIG5vbWJyZV9zdXBcclxuICAgICAgICAgICAgICAgICAgICAsIHVzdV9zdXAuYXBlbGxpZG8gYXMgYXBlbGxpZG9fc3VwXHJcbiAgICAgICAgICAgICAgICAgICAgJHtvcHRzLnJlY2VwY2lvbj8gY29sdW1uYXNOb1JlYS5tYXAodj0+J1xcbiAgICAgLCAnKyB2LmV4cHIgKycgYXMgJysgdi5uYW1lKS5qb2luKCcnKSA6Jyd9XHJcbiAgICAgICAgICAgICAgICAgICAgZnJvbSB0ZW0gdCBsZWZ0IGpvaW4gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QgdHQub3BlcmF0aXZvLCB0dC5lbmMsIGJvb2xfb3IoY2FyZ2FkbykgY2FyZ2Fkbywgc3RyaW5nX2FnZyhjYXJnYWRvX2RtLCcsJykgY2FyZ2Fkb19kbSxqc29uYl9vYmplY3RfYWdnKHRhcmVhLGpzb25iX2J1aWxkX29iamVjdCgnYXNpZ25hZG8nLGFzaWduYWRvLCdjYXJnYWRvJyxjYXJnYWRvLCdjYXJnYWRvX2RtJyxjYXJnYWRvX2RtKSlldGFyZWFzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbSB0YXJlYXNfdGVtIHR0IGdyb3VwIGJ5IHR0Lm9wZXJhdGl2bywgdHQuZW5jICApdHQgb24gdC5vcGVyYXRpdm89dHQub3BlcmF0aXZvIGFuZCB0LmVuYz10dC5lbmNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgam9pbiBub19yZWEgeSBvbiB5Lm5vX3JlYTo6aW50ZWdlcj10Lm5vcmVhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGpvaW4gJHtzcWxUb29scy5xdW90ZUlkZW50KE9wZXJhdGl2b0dlbmVyYXRvci5tYWluVEQpfSBhdXggb24gYXV4Lm9wZXJhdGl2bz10Lm9wZXJhdGl2byBhbmQgYXV4LiR7c3FsVG9vbHMucXVvdGVJZGVudChPcGVyYXRpdm9HZW5lcmF0b3IubWFpblREUEspfT10LmVuYyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgam9pbiB1c3VhcmlvcyB1c3VfZW5jIG9uIHVzdV9lbmMuaWRwZXIgPSB0dC5ldGFyZWFzLT4nZW5jdSctPj4nYXNpZ25hZG8nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGpvaW4gdXN1YXJpb3MgdXN1X3JlYyBvbiB1c3VfcmVjLmlkcGVyID0gdHQuZXRhcmVhcy0+J3JlY3UnLT4+J2FzaWduYWRvJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdCBqb2luIHVzdWFyaW9zIHVzdV9zdXAgb24gdXN1X3N1cC5pZHBlciA9IHR0LmV0YXJlYXMtPidzdXBlJy0+Pidhc2lnbmFkbydcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgYCAgICAgXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gZGVmO1xyXG4gICAgfVxyXG4gICAgIl19
@@ -0,0 +1,48 @@
1
+ import * as bePlus from "backend-plus";
2
+ export * from 'procesamiento';
3
+ export { emergeAppMetaEnc, emergeAppRelEnc } from 'meta-enc';
4
+ export * from './table-tem';
5
+ export type Puede = {
6
+ encuestas: {
7
+ relevar: boolean;
8
+ justificar: boolean;
9
+ procesar: boolean;
10
+ };
11
+ casilleros_texto: {
12
+ editar: boolean;
13
+ };
14
+ campo: {
15
+ editar: boolean;
16
+ administrar: boolean;
17
+ };
18
+ };
19
+ export type Permisos = {
20
+ puede?: Puede;
21
+ superuser?: boolean;
22
+ };
23
+ declare module "backend-plus" {
24
+ interface ProcedureDef {
25
+ definedIn?: string;
26
+ }
27
+ interface Caches {
28
+ tableContent: Record<string, any>;
29
+ metaEncIncluirCasillerosSaltoREL: boolean;
30
+ timestampEstructura: number;
31
+ permisosRol: Permisos;
32
+ permisosRolSoloTrue: Permisos;
33
+ permisosSuperuser: Puede;
34
+ permisosParaNadie: Puede;
35
+ }
36
+ interface Context {
37
+ puede?: Puede;
38
+ superuser?: true;
39
+ }
40
+ interface OptsClientPage {
41
+ offlineFile: boolean;
42
+ }
43
+ interface ClientSetup {
44
+ idper: string | undefined;
45
+ }
46
+ }
47
+ export type MenuInfoBase = bePlus.MenuInfoBase;
48
+ export type SufijosAmbiente = '_test' | '_capa' | '';
@@ -0,0 +1,33 @@
1
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
2
+ if (k2 === undefined) k2 = k;
3
+ var desc = Object.getOwnPropertyDescriptor(m, k);
4
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
5
+ desc = { enumerable: true, get: function() { return m[k]; } };
6
+ }
7
+ Object.defineProperty(o, k2, desc);
8
+ }) : (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ o[k2] = m[k];
11
+ }));
12
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
13
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
14
+ };
15
+ (function (factory) {
16
+ if (typeof module === "object" && typeof module.exports === "object") {
17
+ var v = factory(require, exports);
18
+ if (v !== undefined) module.exports = v;
19
+ }
20
+ else if (typeof define === "function" && define.amd) {
21
+ define(["require", "exports", "procesamiento", "meta-enc", "./table-tem"], factory);
22
+ }
23
+ })(function (require, exports) {
24
+ "use strict";
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.emergeAppRelEnc = exports.emergeAppMetaEnc = void 0;
27
+ __exportStar(require("procesamiento"), exports); //expose Procesamiento types
28
+ var meta_enc_1 = require("meta-enc"); //expose types only in meta-enc stack
29
+ Object.defineProperty(exports, "emergeAppMetaEnc", { enumerable: true, get: function () { return meta_enc_1.emergeAppMetaEnc; } });
30
+ Object.defineProperty(exports, "emergeAppRelEnc", { enumerable: true, get: function () { return meta_enc_1.emergeAppRelEnc; } });
31
+ __exportStar(require("./table-tem"), exports);
32
+ });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtZG1lbmN1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZlci90eXBlcy1kbWVuY3UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQSxZQUFZLENBQUM7OztJQUliLGdEQUE4QixDQUFDLDRCQUE0QjtJQUMzRCxxQ0FBMkQsQ0FBQyxxQ0FBcUM7SUFBekYsNEdBQUEsZ0JBQWdCLE9BQUE7SUFBRSwyR0FBQSxlQUFlLE9BQUE7SUFDekMsOENBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcblxyXG5pbXBvcnQgKiBhcyBiZVBsdXMgZnJvbSBcImJhY2tlbmQtcGx1c1wiO1xyXG5cclxuZXhwb3J0ICogZnJvbSAncHJvY2VzYW1pZW50byc7IC8vZXhwb3NlIFByb2Nlc2FtaWVudG8gdHlwZXNcclxuZXhwb3J0IHtlbWVyZ2VBcHBNZXRhRW5jLCBlbWVyZ2VBcHBSZWxFbmN9IGZyb20gJ21ldGEtZW5jJzsgLy9leHBvc2UgdHlwZXMgb25seSBpbiBtZXRhLWVuYyBzdGFja1xyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXRlbSc7XHJcblxyXG5leHBvcnQgdHlwZSBQdWVkZSA9IHtcclxuICAgIGVuY3Vlc3Rhczp7XHJcbiAgICAgICAgcmVsZXZhcjpib29sZWFuLFxyXG4gICAgICAgIGp1c3RpZmljYXI6IGJvb2xlYW4sXHJcbiAgICAgICAgcHJvY2VzYXI6IGJvb2xlYW5cclxuICAgIH0sXHJcbiAgICBjYXNpbGxlcm9zX3RleHRvOntcclxuICAgICAgICBlZGl0YXI6Ym9vbGVhblxyXG4gICAgfVxyXG4gICAgY2FtcG86e1xyXG4gICAgICAgIGVkaXRhcjpib29sZWFuXHJcbiAgICAgICAgYWRtaW5pc3RyYXI6Ym9vbGVhblxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQZXJtaXNvcyA9IHtcclxuICAgIHB1ZWRlPzogUHVlZGVcclxuICAgIHN1cGVydXNlcj86IGJvb2xlYW5cclxufVxyXG5cclxuZGVjbGFyZSBtb2R1bGUgXCJiYWNrZW5kLXBsdXNcIntcclxuICAgIGV4cG9ydCBpbnRlcmZhY2UgUHJvY2VkdXJlRGVme1xyXG4gICAgICAgIGRlZmluZWRJbj86c3RyaW5nXHJcbiAgICB9XHJcblxyXG4gICAgZXhwb3J0IGludGVyZmFjZSBDYWNoZXN7XHJcbiAgICAgICAgdGFibGVDb250ZW50OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XHJcbiAgICAgICAgbWV0YUVuY0luY2x1aXJDYXNpbGxlcm9zU2FsdG9SRUw6IGJvb2xlYW5cclxuICAgICAgICB0aW1lc3RhbXBFc3RydWN0dXJhOiBudW1iZXJcclxuICAgICAgICBwZXJtaXNvc1JvbDogUGVybWlzb3NcclxuICAgICAgICBwZXJtaXNvc1JvbFNvbG9UcnVlOiBQZXJtaXNvc1xyXG4gICAgICAgIHBlcm1pc29zU3VwZXJ1c2VyOiBQdWVkZVxyXG4gICAgICAgIHBlcm1pc29zUGFyYU5hZGllOiBQdWVkZVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHR7XHJcbiAgICAgICAgcHVlZGU/OiBQdWVkZVxyXG4gICAgICAgIHN1cGVydXNlcj86IHRydWVcclxuICAgIH1cclxuXHJcbiAgICBleHBvcnQgaW50ZXJmYWNlIE9wdHNDbGllbnRQYWdlIHtcclxuICAgICAgICBvZmZsaW5lRmlsZTogYm9vbGVhbiBcclxuICAgIH1cclxuXHJcbiAgICBleHBvcnQgaW50ZXJmYWNlIENsaWVudFNldHVwIHtcclxuICAgICAgICBpZHBlcjogc3RyaW5nfHVuZGVmaW5lZFxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBNZW51SW5mb0Jhc2UgPSBiZVBsdXMuTWVudUluZm9CYXNlO1xyXG5cclxuZXhwb3J0IHR5cGUgU3VmaWpvc0FtYmllbnRlID0gJ190ZXN0J3wnX2NhcGEnfCcnIl19
@@ -1,15 +1,15 @@
1
- {
2
- "compilerOptions": {
3
- "outDir": "../../dist/unlogged/unlogged",
4
- "moduleResolution": "node",
5
- "inlineSourceMap": true,
6
- "inlineSources": true,
7
- "typeRoots" : ["node_modules/@types", "../../node_modules/types.d.ts/modules"],
8
- "lib": ["dom","es2016"],
9
- "jsx": "react"
10
- },
11
- "include":[
12
- "."
13
- ],
14
- "extends": "../../tsconfig-common.json"
1
+ {
2
+ "compilerOptions": {
3
+ "outDir": "../../dist/unlogged/unlogged",
4
+ "moduleResolution": "node",
5
+ "inlineSourceMap": true,
6
+ "inlineSources": true,
7
+ "typeRoots" : ["node_modules/@types", "../../node_modules/types.d.ts/modules"],
8
+ "lib": ["dom","es2016"],
9
+ "jsx": "react"
10
+ },
11
+ "include":[
12
+ "."
13
+ ],
14
+ "extends": "../../tsconfig-common.json"
15
15
  }
@@ -0,0 +1,13 @@
1
+ import { Estructura, Respuestas, ModoAlmacenamiento } from "./tipos";
2
+ export declare const GLOVAR_DATOSBYPASS = "datosbypass";
3
+ export declare const GLOVAR_MODOBYPASS = "modobypass";
4
+ export declare const GLOVAR_ESTRUCTURA = "estructura";
5
+ export declare const BACKUPS = "backups";
6
+ export declare const MODO_DM_LOCALSTORAGE_KEY = "modo_dm";
7
+ export declare function recuperarDatosByPass(): void;
8
+ export declare function cargarHojaDeRuta(nuevoPaquete: {
9
+ respuestas: Respuestas;
10
+ modoAlmacenamiento: ModoAlmacenamiento;
11
+ dirty?: boolean;
12
+ }): void;
13
+ export declare function cargarEstructura(estructuraACargar: Estructura): void;
@@ -0,0 +1,109 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ (function (factory) {
11
+ if (typeof module === "object" && typeof module.exports === "object") {
12
+ var v = factory(require, exports);
13
+ if (v !== undefined) module.exports = v;
14
+ }
15
+ else if (typeof define === "function" && define.amd) {
16
+ define(["require", "exports", "./tipos", "like-ar", "./bypass-formulario"], factory);
17
+ }
18
+ })(function (require, exports) {
19
+ "use strict";
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.MODO_DM_LOCALSTORAGE_KEY = exports.BACKUPS = exports.GLOVAR_ESTRUCTURA = exports.GLOVAR_MODOBYPASS = exports.GLOVAR_DATOSBYPASS = void 0;
22
+ exports.recuperarDatosByPass = recuperarDatosByPass;
23
+ exports.cargarHojaDeRuta = cargarHojaDeRuta;
24
+ exports.cargarEstructura = cargarEstructura;
25
+ const tipos_1 = require("./tipos");
26
+ const likeAr = require("like-ar");
27
+ const bypass_formulario_1 = require("./bypass-formulario");
28
+ exports.GLOVAR_DATOSBYPASS = 'datosbypass';
29
+ exports.GLOVAR_MODOBYPASS = 'modobypass';
30
+ exports.GLOVAR_ESTRUCTURA = 'estructura';
31
+ exports.BACKUPS = 'backups';
32
+ exports.MODO_DM_LOCALSTORAGE_KEY = 'modo_dm';
33
+ (0, bypass_formulario_1.setPersistirDatosByPass)(function persistirEnMemoria(persistentes) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ var { modoAlmacenamiento } = persistentes;
36
+ if (modoAlmacenamiento == 'local') {
37
+ my.setLocalVar(exports.GLOVAR_DATOSBYPASS, persistentes);
38
+ }
39
+ else {
40
+ my.setSessionVar(exports.GLOVAR_DATOSBYPASS, persistentes);
41
+ }
42
+ my.setSessionVar(exports.GLOVAR_MODOBYPASS, modoAlmacenamiento);
43
+ });
44
+ });
45
+ function recuperarDatosByPass() {
46
+ var recuperado;
47
+ var modoAlmacenamiento = my.getSessionVar(exports.GLOVAR_MODOBYPASS);
48
+ if (modoAlmacenamiento == 'local') {
49
+ recuperado = my.getLocalVar(exports.GLOVAR_DATOSBYPASS);
50
+ }
51
+ else {
52
+ recuperado = my.getSessionVar(exports.GLOVAR_DATOSBYPASS);
53
+ }
54
+ if (recuperado) {
55
+ (0, bypass_formulario_1.setDatosByPass)(Object.assign(Object.assign({}, recuperado), { modoAlmacenamiento }));
56
+ }
57
+ return;
58
+ }
59
+ function cargarHojaDeRuta(nuevoPaquete) {
60
+ var _a;
61
+ var modoActual = my.getSessionVar(exports.GLOVAR_MODOBYPASS);
62
+ if (modoActual && nuevoPaquete.modoAlmacenamiento != modoActual) {
63
+ throw new Error('No se pueden mezclar modos de apertura de encuestas, directo y por hoja de ruta para MD (' + modoActual + ', ' + nuevoPaquete.modoAlmacenamiento + ')');
64
+ }
65
+ var datosByPass = Object.assign(Object.assign({}, nuevoPaquete), { dirty: (_a = nuevoPaquete.dirty) !== null && _a !== void 0 ? _a : false });
66
+ (0, bypass_formulario_1.setDatosByPass)(datosByPass);
67
+ }
68
+ function cargarEstructura(estructuraACargar) {
69
+ var estructura = (0, bypass_formulario_1.setEstructura)(estructuraACargar);
70
+ my.setLocalVar(exports.GLOVAR_ESTRUCTURA, estructura);
71
+ }
72
+ var backupPendiente = Promise.resolve();
73
+ function enviarBackup() {
74
+ return __awaiter(this, void 0, void 0, function* () {
75
+ var backups = my.getLocalVar(exports.BACKUPS);
76
+ var { token, tem } = backups;
77
+ if (likeAr(tem).array().length) {
78
+ try {
79
+ let modoDM = my.getLocalVar(exports.MODO_DM_LOCALSTORAGE_KEY) || 'produc';
80
+ my.setLocalVar(exports.MODO_DM_LOCALSTORAGE_KEY, modoDM);
81
+ yield my.ajax.dm_backup({ token, tem, modo_dm: modoDM });
82
+ // tengo que levantarlo de nuevo porque acá hay una interrupción del flujo
83
+ var backupsALimpiar = my.getLocalVar(exports.BACKUPS);
84
+ backupsALimpiar.tem = likeAr(backupsALimpiar.tem).filter(caso => caso.idBackup > backups.idActual).plain();
85
+ my.setLocalVar(exports.BACKUPS, backupsALimpiar);
86
+ }
87
+ catch (err) {
88
+ console.log('no se pudo hacer backup', err);
89
+ }
90
+ }
91
+ });
92
+ }
93
+ (0, bypass_formulario_1.setEncolarBackup)(function encolarBackup(token, forPkRaiz, respuestasRaiz) {
94
+ var backups = my.existsLocalVar(exports.BACKUPS) ? my.getLocalVar(exports.BACKUPS) : {
95
+ idActual: 0,
96
+ tem: {},
97
+ };
98
+ backups.idActual += 1;
99
+ backups.token = token;
100
+ let plainForPk = (0, tipos_1.toPlainForPk)(forPkRaiz);
101
+ const datosByPass = (0, bypass_formulario_1.getDatosByPass)();
102
+ let estructura = (0, bypass_formulario_1.getEstructura)();
103
+ let carga = datosByPass.cargas[datosByPass.informacionHdr[forPkRaiz[estructura.pkAgregadaUaPpal]].tem.carga];
104
+ backups.tem[plainForPk] = { idBackup: backups.idActual, forPkRaiz, respuestasRaiz, carga, idper: datosByPass.idper };
105
+ my.setLocalVar(exports.BACKUPS, backups);
106
+ backupPendiente = backupPendiente.then(enviarBackup);
107
+ });
108
+ });
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJyaXItZm9ybXVsYXJpby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91bmxvZ2dlZC9hYnJpci1mb3JtdWxhcmlvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQXVDQSxvREFZQztJQUVELDRDQVVDO0lBRUQsNENBR0M7SUFwRUQsbUNBVWlCO0lBRWpCLGtDQUFrQztJQUVsQywyREFJNEI7SUFFZixRQUFBLGtCQUFrQixHQUFDLGFBQWEsQ0FBQztJQUNqQyxRQUFBLGlCQUFpQixHQUFDLFlBQVksQ0FBQztJQUMvQixRQUFBLGlCQUFpQixHQUFDLFlBQVksQ0FBQztJQUMvQixRQUFBLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDcEIsUUFBQSx3QkFBd0IsR0FBRyxTQUFTLENBQUM7SUFHbEQsSUFBQSwyQ0FBdUIsRUFDbkIsU0FBZSxrQkFBa0IsQ0FBQyxZQUFvQzs7WUFDbEUsSUFBSSxFQUFDLGtCQUFrQixFQUFDLEdBQUcsWUFBWSxDQUFBO1lBQ3ZDLElBQUcsa0JBQWtCLElBQUUsT0FBTyxFQUFDLENBQUM7Z0JBQzVCLEVBQUUsQ0FBQyxXQUFXLENBQUMsMEJBQWtCLEVBQUUsWUFBWSxDQUFDLENBQUE7WUFDcEQsQ0FBQztpQkFBSSxDQUFDO2dCQUNGLEVBQUUsQ0FBQyxhQUFhLENBQUMsMEJBQWtCLEVBQUUsWUFBWSxDQUFDLENBQUE7WUFDdEQsQ0FBQztZQUNELEVBQUUsQ0FBQyxhQUFhLENBQUMseUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQTtRQUMzRCxDQUFDO0tBQUEsQ0FDSixDQUFBO0lBRUQsU0FBZ0Isb0JBQW9CO1FBQ2hDLElBQUksVUFBa0MsQ0FBQztRQUN2QyxJQUFJLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMseUJBQWlCLENBQXVCLENBQUM7UUFDbkYsSUFBRyxrQkFBa0IsSUFBRSxPQUFPLEVBQUMsQ0FBQztZQUM1QixVQUFVLEdBQUcs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LENBQUE7WUFDckUsUUFBUSxFQUFDLENBQUM7WUFDVixHQUFHLEVBQUMsRUFBRTtTQUNULENBQUM7UUFDRixPQUFPLENBQUMsUUFBUSxJQUFFLENBQUMsQ0FBQztRQUNwQixPQUFPLENBQUMsS0FBSyxHQUFDLEtBQUssQ0FBQztRQUNwQixJQUFJLFVBQVUsR0FBRyxJQUFBLG9CQUFZLEVBQUMsU0FBUyxDQUFDLENBQUM7UUFDekMsTUFBTSxXQUFXLEdBQUcsSUFBQSxrQ0FBYyxHQUFFLENBQUM7UUFDckMsSUFBSSxVQUFVLEdBQUcsSUFBQSxpQ0FBYSxHQUFFLENBQUM7UUFDakMsSUFBSSxLQUFLLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFnQixDQUFDLENBQUM7UUFDakksT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBQyxFQUFDLFFBQVEsRUFBQyxPQUFPLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsS0FBSyxFQUFDLENBQUM7UUFDaEgsRUFBRSxDQUFDLFdBQVcsQ0FBQyxlQUFPLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsZUFBZSxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDeEQsQ0FBQyxDQUNKLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RhdG9zQnlQYXNzUGVyc2lzdGlibGVzLCBFc3RydWN0dXJhLCBGb3JQa1JhaXosXHJcbiAgICBSZXNwdWVzdGFzLFxyXG4gICAgTW9kb0FsbWFjZW5hbWllbnRvLFxyXG4gICAgUGxhaW5Gb3JQayxcclxuICAgIHRvUGxhaW5Gb3JQayxcclxuICAgIENhcmdhLFxyXG4gICAgSWRFbmMsXHJcbiAgICBJZENhcmdhLFxyXG4gICAgQ2FtcG9QayxcclxuICAgIENhbXBvUGtSYWl6LFxyXG59IGZyb20gXCIuL3RpcG9zXCI7XHJcblxyXG5pbXBvcnQgKiBhcyBsaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuXHJcbmltcG9ydCB7IFxyXG4gICAgZ2V0RGF0b3NCeVBhc3MsXHJcbiAgICBnZXRFc3RydWN0dXJhLFxyXG4gICAgc2V0RGF0b3NCeVBhc3MsIHNldEVuY29sYXJCYWNrdXAsIHNldEVzdHJ1Y3R1cmEsIHNldFBlcnNpc3RpckRhdG9zQnlQYXNzIFxyXG59IGZyb20gXCIuL2J5cGFzcy1mb3JtdWxhcmlvXCJcclxuXHJcbmV4cG9ydCBjb25zdCBHTE9WQVJfREFUT1NCWVBBU1M9J2RhdG9zYnlwYXNzJztcclxuZXhwb3J0IGNvbnN0IEdMT1ZBUl9NT0RPQllQQVNTPSdtb2RvYnlwYXNzJztcclxuZXhwb3J0IGNvbnN0IEdMT1ZBUl9FU1RSVUNUVVJBPSdlc3RydWN0dXJhJztcclxuZXhwb3J0IGNvbnN0IEJBQ0tVUFMgPSAnYmFja3Vwcyc7XHJcbmV4cG9ydCBjb25zdCBNT0RPX0RNX0xPQ0FMU1RPUkFHRV9LRVkgPSAnbW9kb19kbSc7XHJcbmltcG9ydCB7TW9kb0RNfSBmcm9tICcuLi9zZXJ2ZXIvdHlwZXMtZG1lbmN1JztcclxuXHJcbnNldFBlcnNpc3RpckRhdG9zQnlQYXNzKFxyXG4gICAgYXN5bmMgZnVuY3Rpb24gcGVyc2lzdGlyRW5NZW1vcmlhKHBlcnNpc3RlbnRlczpEYXRvc0J5UGFzc1BlcnNpc3RpYmxlcyl7XHJcbiAgICAgICAgdmFyIHttb2RvQWxtYWNlbmFtaWVudG99ID0gcGVyc2lzdGVudGVzXHJcbiAgICAgICAgaWYobW9kb0FsbWFjZW5hbWllbnRvPT0nbG9jYWwnKXtcclxuICAgICAgICAgICAgbXkuc2V0TG9jYWxWYXIoR0xPVkFSX0RBVE9TQllQQVNTLCBwZXJzaXN0ZW50ZXMpXHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIG15LnNldFNlc3Npb25WYXIoR0xPVkFSX0RBVE9TQllQQVNTLCBwZXJzaXN0ZW50ZXMpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIG15LnNldFNlc3Npb25WYXIoR0xPVkFSX01PRE9CWVBBU1MsIG1vZG9BbG1hY2VuYW1pZW50bylcclxuICAgIH1cclxuKVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlY3VwZXJhckRhdG9zQnlQYXNzKCl7XHJcbiAgICB2YXIgcmVjdXBlcmFkbzpEYXRvc0J5UGFzc1BlcnNpc3RpYmxlcztcclxuICAgIHZhciBtb2RvQWxtYWNlbmFtaWVudG8gPSBteS5nZXRTZXNzaW9uVmFyKEdMT1ZBUl9NT0RPQllQQVNTKSBhcyBNb2RvQWxtYWNlbmFtaWVudG87XHJcbiAgICBpZihtb2RvQWxtYWNlbmFtaWVudG89PSdsb2NhbCcpe1xyXG4gICAgICAgIHJlY3VwZXJhZG8gPSBteS5nZXRMb2NhbFZhcihHTE9WQVJfREFUT1NCWVBBU1MpXHJcbiAgICB9ZWxzZXtcclxuICAgICAgICByZWN1cGVyYWRvID0gbXkuZ2V0U2Vzc2lvblZhcihHTE9WQVJfREFUT1NCWVBBU1MpXHJcbiAgICB9XHJcbiAgICBpZihyZWN1cGVyYWRvKXtcclxuICAgICAgICBzZXREYXRvc0J5UGFzcyh7Li4ucmVjdXBlcmFkbywgbW9kb0FsbWFjZW5hbWllbnRvfSlcclxuICAgIH1cclxuICAgIHJldHVyblxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FyZ2FySG9qYURlUnV0YShudWV2b1BhcXVldGU6e3Jlc3B1ZXN0YXM6UmVzcHVlc3RhcywgbW9kb0FsbWFjZW5hbWllbnRvOk1vZG9BbG1hY2VuYW1pZW50bywgZGlydHk/OmJvb2xlYW59KXtcclxuICAgIHZhciBtb2RvQWN0dWFsID0gbXkuZ2V0U2Vzc2lvblZhcihHTE9WQVJfTU9ET0JZUEFTUyk7XHJcbiAgICBpZihtb2RvQWN0dWFsICYmIG51ZXZvUGFxdWV0ZS5tb2RvQWxtYWNlbmFtaWVudG8hPW1vZG9BY3R1YWwpe1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gc2UgcHVlZGVuIG1lemNsYXIgbW9kb3MgZGUgYXBlcnR1cmEgZGUgZW5jdWVzdGFzLCBkaXJlY3RvIHkgcG9yIGhvamEgZGUgcnV0YSBwYXJhIE1EICgnK21vZG9BY3R1YWwrJywgJytudWV2b1BhcXVldGUubW9kb0FsbWFjZW5hbWllbnRvKycpJyk7XHJcbiAgICB9XHJcbiAgICB2YXIgZGF0b3NCeVBhc3MgPSB7XHJcbiAgICAgICAgLi4ubnVldm9QYXF1ZXRlLCBcclxuICAgICAgICBkaXJ0eTogbnVldm9QYXF1ZXRlLmRpcnR5Pz9mYWxzZVxyXG4gICAgfVxyXG4gICAgc2V0RGF0b3NCeVBhc3MoZGF0b3NCeVBhc3MpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FyZ2FyRXN0cnVjdHVyYShlc3RydWN0dXJhQUNhcmdhcjpFc3RydWN0dXJhKXtcclxuICAgIHZhciBlc3RydWN0dXJhID0gc2V0RXN0cnVjdHVyYShlc3RydWN0dXJhQUNhcmdhcik7XHJcbiAgICBteS5zZXRMb2NhbFZhcihHTE9WQVJfRVNUUlVDVFVSQSwgZXN0cnVjdHVyYSk7XHJcbn1cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxudHlwZSBCYWNrdXBzPXtcclxuICAgIGlkQWN0dWFsOm51bWJlcixcclxuICAgIHRva2VuOnN0cmluZ3x1bmRlZmluZWQsXHJcbiAgICB0ZW06e1trZXkgaW4gUGxhaW5Gb3JQa106e2lkQmFja3VwOm51bWJlciwgZm9yUGtSYWl6OkZvclBrUmFpeiwgcmVzcHVlc3Rhc1JhaXo6UmVzcHVlc3RhcywgY2FyZ2E6Q2FyZ2EsIGlkcGVyOnN0cmluZ319LFxyXG59XHJcblxyXG52YXIgYmFja3VwUGVuZGllbnRlID0gUHJvbWlzZS5yZXNvbHZlKCk7XHJcblxyXG5hc3luYyBmdW5jdGlvbiBlbnZpYXJCYWNrdXAoKXtcclxuICAgIHZhciBiYWNrdXBzOkJhY2t1cHMgPSBteS5nZXRMb2NhbFZhcihCQUNLVVBTKTtcclxuICAgIHZhciB7dG9rZW4sIHRlbX0gPSBiYWNrdXBzO1xyXG4gICAgaWYobGlrZUFyKHRlbSkuYXJyYXkoKS5sZW5ndGgpe1xyXG4gICAgICAgIHRyeXtcclxuICAgICAgICAgICAgbGV0IG1vZG9ETTogTW9kb0RNID0gbXkuZ2V0TG9jYWxWYXIoTU9ET19ETV9MT0NBTFNUT1JBR0VfS0VZKSB8fCAncHJvZHVjJztcclxuICAgICAgICAgICAgbXkuc2V0TG9jYWxWYXIoTU9ET19ETV9MT0NBTFNUT1JBR0VfS0VZLCBtb2RvRE0pO1xyXG4gICAgICAgICAgICBhd2FpdCBteS5hamF4LmRtX2JhY2t1cCh7dG9rZW4sIHRlbSwgbW9kb19kbTptb2RvRE19KTtcclxuICAgICAgICAgICAgLy8gdGVuZ28gcXVlIGxldmFudGFybG8gZGUgbnVldm8gcG9ycXVlIGFjw6EgaGF5IHVuYSBpbnRlcnJ1cGNpw7NuIGRlbCBmbHVqb1xyXG4gICAgICAgICAgICB2YXIgYmFja3Vwc0FMaW1waWFyOkJhY2t1cHMgPSBteS5nZXRMb2NhbFZhcihCQUNLVVBTKTtcclxuICAgICAgICAgICAgYmFja3Vwc0FMaW1waWFyLnRlbT1saWtlQXIoYmFja3Vwc0FMaW1waWFyLnRlbSkuZmlsdGVyKGNhc289PmNhc28uaWRCYWNrdXA+YmFja3Vwcy5pZEFjdHVhbCkucGxhaW4oKTtcclxuICAgICAgICAgICAgbXkuc2V0TG9jYWxWYXIoQkFDS1VQUywgYmFja3Vwc0FMaW1waWFyKTtcclxuICAgICAgICB9Y2F0Y2goZXJyKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ25vIHNlIHB1ZG8gaGFjZXIgYmFja3VwJywgZXJyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbnNldEVuY29sYXJCYWNrdXAoXHJcbiAgICBmdW5jdGlvbiBlbmNvbGFyQmFja3VwKHRva2VuOnN0cmluZ3x1bmRlZmluZWQsIGZvclBrUmFpejpGb3JQa1JhaXosIHJlc3B1ZXN0YXNSYWl6OlJlc3B1ZXN0YXMpe1xyXG4gICAgICAgIHZhciBiYWNrdXBzOkJhY2t1cHMgPSBteS5leGlzdHNMb2NhbFZhcihCQUNLVVBTKT9teS5nZXRMb2NhbFZhcihCQUNLVVBTKTp7XHJcbiAgICAgICAgICAgIGlkQWN0dWFsOjAsXHJcbiAgICAgICAgICAgIHRlbTp7fSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIGJhY2t1cHMuaWRBY3R1YWwrPTE7XHJcbiAgICAgICAgYmFja3Vwcy50b2tlbj10b2tlbjtcclxuICAgICAgICBsZXQgcGxhaW5Gb3JQayA9IHRvUGxhaW5Gb3JQayhmb3JQa1JhaXopO1xyXG4gICAgICAgIGNvbnN0IGRhdG9zQnlQYXNzID0gZ2V0RGF0b3NCeVBhc3MoKTtcclxuICAgICAgICBsZXQgZXN0cnVjdHVyYSA9IGdldEVzdHJ1Y3R1cmEoKTtcclxuICAgICAgICBsZXQgY2FyZ2EgPSBkYXRvc0J5UGFzcy5jYXJnYXNbZGF0b3NCeVBhc3MuaW5mb3JtYWNpb25IZHJbZm9yUGtSYWl6W2VzdHJ1Y3R1cmEucGtBZ3JlZ2FkYVVhUHBhbF0gYXMgSWRFbmNdLnRlbS5jYXJnYSBhcyBJZENhcmdhXTtcclxuICAgICAgICBiYWNrdXBzLnRlbVtwbGFpbkZvclBrXT17aWRCYWNrdXA6YmFja3Vwcy5pZEFjdHVhbCwgZm9yUGtSYWl6LCByZXNwdWVzdGFzUmFpeiwgY2FyZ2EsIGlkcGVyOiBkYXRvc0J5UGFzcy5pZHBlcn07XHJcbiAgICAgICAgbXkuc2V0TG9jYWxWYXIoQkFDS1VQUyxiYWNrdXBzKTtcclxuICAgICAgICBiYWNrdXBQZW5kaWVudGUgPSBiYWNrdXBQZW5kaWVudGUudGhlbihlbnZpYXJCYWNrdXApXHJcbiAgICB9XHJcbilcclxuIl19
File without changes
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ // @ts-ignore es el require de require-bro
3
+ window.require.definedModules["react-dom"] = window.ReactDOM;
4
+ // @ts-ignore es el require de require-bro
5
+ window.require.definedModules["@mui/material"] = window.MaterialUI;
6
+ // @ts-ignore es el require de require-bro
7
+ // window.require.definedModules["@material-ui/core/styles"] = window.MaterialStyles;
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdW5sb2dnZWQvYWRhcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDBDQUEwQztBQUMxQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDO0FBQzdELDBDQUEwQztBQUMxQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO0FBQ25FLDBDQUEwQztBQUMxQyxxRkFBcUYiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtaWdub3JlIGVzIGVsIHJlcXVpcmUgZGUgcmVxdWlyZS1icm9cclxud2luZG93LnJlcXVpcmUuZGVmaW5lZE1vZHVsZXNbXCJyZWFjdC1kb21cIl0gPSB3aW5kb3cuUmVhY3RET007XHJcbi8vIEB0cy1pZ25vcmUgZXMgZWwgcmVxdWlyZSBkZSByZXF1aXJlLWJyb1xyXG53aW5kb3cucmVxdWlyZS5kZWZpbmVkTW9kdWxlc1tcIkBtdWkvbWF0ZXJpYWxcIl0gPSB3aW5kb3cuTWF0ZXJpYWxVSTtcclxuLy8gQHRzLWlnbm9yZSBlcyBlbCByZXF1aXJlIGRlIHJlcXVpcmUtYnJvXHJcbi8vIHdpbmRvdy5yZXF1aXJlLmRlZmluZWRNb2R1bGVzW1wiQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzXCJdID0gd2luZG93Lk1hdGVyaWFsU3R5bGVzO1xyXG4iXX0=