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.
- package/dist/client/server/table-tem.d.ts +3 -0
- package/dist/client/server/table-tem.js +239 -0
- package/dist/client/server/types-dmencu.d.ts +48 -0
- package/dist/client/server/types-dmencu.js +33 -0
- package/dist/client/unlogged/css/bootstrap.min.css +6 -6
- package/dist/client/unlogged/tsconfig.json +14 -14
- package/dist/server/server/table-barrios.js +1 -1
- package/dist/server/server/table-comunas copy.d.ts +2 -0
- package/dist/server/server/table-comunas copy.js +28 -0
- package/dist/server/server/table-comunas.js +2 -2
- package/dist/server/server/table-encuestadores.js +7 -7
- package/dist/server/server/table-fracciones.js +1 -1
- package/dist/server/server/table-hogares.js +1 -1
- package/dist/server/server/table-hogares_sup.js +1 -1
- package/dist/server/server/table-manzanas.js +1 -1
- package/dist/server/server/table-parametros.js +1 -1
- package/dist/server/server/table-personal.js +7 -7
- package/dist/server/server/table-personal_rol.js +7 -7
- package/dist/server/server/table-personas.js +1 -1
- package/dist/server/server/table-personas_sup.js +1 -1
- package/dist/server/server/table-radios.js +3 -3
- package/dist/server/server/table-recepcionistas.js +1 -1
- package/dist/server/server/table-visitas.js +1 -1
- package/dist/server/server/table-visitas_sup.js +1 -1
- package/dist/server/server/table-viviendas.js +1 -1
- package/dist/unlogged/unlogged/css/bootstrap.min.css +6 -6
- package/dist/unlogged/unlogged/server/table-tem.d.ts +3 -0
- package/dist/unlogged/unlogged/server/table-tem.js +239 -0
- package/dist/unlogged/unlogged/server/types-dmencu.d.ts +48 -0
- package/dist/unlogged/unlogged/server/types-dmencu.js +33 -0
- package/dist/unlogged/unlogged/tsconfig.json +14 -14
- package/dist/unlogged/unlogged/unlogged/abrir-formulario.d.ts +13 -0
- package/dist/unlogged/unlogged/unlogged/abrir-formulario.js +109 -0
- package/dist/unlogged/unlogged/unlogged/adapt.d.ts +0 -0
- package/dist/unlogged/unlogged/unlogged/adapt.js +8 -0
- package/dist/unlogged/unlogged/unlogged/bypass-formulario.d.ts +202 -0
- package/dist/unlogged/unlogged/unlogged/bypass-formulario.js +1100 -0
- package/dist/unlogged/unlogged/unlogged/redux-formulario.d.ts +349 -0
- package/dist/unlogged/unlogged/unlogged/redux-formulario.js +318 -0
- package/dist/unlogged/unlogged/unlogged/render-formulario.d.ts +86 -0
- package/dist/unlogged/unlogged/unlogged/render-formulario.js +1692 -0
- package/dist/unlogged/unlogged/unlogged/render-general.d.ts +127 -0
- package/dist/unlogged/unlogged/unlogged/render-general.js +176 -0
- package/dist/unlogged/unlogged/unlogged/tipos.d.ts +486 -0
- package/dist/unlogged/unlogged/unlogged/tipos.js +22 -0
- package/dist/unlogged/unlogged/unlogged/unlogged.d.ts +1 -0
- package/dist/unlogged/unlogged/unlogged/unlogged.js +180 -0
- package/install/actualizar-2023-05-14.sql +38 -38
- package/install/actualizar_inconvar.sql +28 -28
- package/install/agregados_tem.sql +4 -4
- package/install/asignar_desasignar_tareas_tem_trg.sql +43 -43
- package/install/metadatos/permisos.tab +11 -11
- package/install/metadatos/roles.tab +10 -10
- package/install/metadatos/roles_permisos.tab +94 -94
- package/install/metadatos/tipovar.tab +9 -9
- package/install/sincro_tareas_areas_tareas_tem_trg.sql +29 -29
- package/install/usuarios_trg.sql +41 -41
- package/install/validar_tareas_tem_trg.sql +67 -67
- package/package.json +91 -91
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90YWJsZS10ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFvQmIsa0JBNk1LO0lBOU5MLGlEQUFrRDtJQUNsRCxzQ0FBc0M7SUFHL0IsSUFBSSxrQkFBa0IsR0FBRyxHQUFxQixFQUFFLENBQUM7UUFDcEQsRUFBQyxJQUFJLEVBQUMsVUFBVSxFQUFlLFFBQVEsRUFBQyxTQUFTLEVBQUcsUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxVQUFVLEVBQWUsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLGNBQWMsRUFBVyxRQUFRLEVBQUMsU0FBUyxFQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsTUFBTSxFQUFtQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsY0FBYyxFQUFXLFFBQVEsRUFBQyxNQUFNLEVBQU0sUUFBUSxFQUFFLEtBQUssRUFBRztRQUN0RSxFQUFDLElBQUksRUFBQyxZQUFZLEVBQWEsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFFBQVEsRUFBaUIsUUFBUSxFQUFDLE1BQU0sRUFBTSxRQUFRLEVBQUUsS0FBSyxFQUFHO1FBQ3RFLEVBQUMsSUFBSSxFQUFDLFVBQVUsRUFBZSxRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFnQixRQUFRLEVBQUMsTUFBTSxFQUFNLFFBQVEsRUFBRSxLQUFLLEVBQUc7UUFDdEUsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUFpQixR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LENBQUMsR0FBRyxHQUFFO1lBQ0QsT0FBTyxFQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxzQ0FBc0M7WUFDL0QsV0FBVyxFQUFDLElBQUk7WUFDaEIsSUFBSSxFQUFDOztzQkFFSyxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLENBQUMsQ0FBQyxPQUFPLElBQUUsU0FBUyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLElBQUksR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzs7Ozs7Ozs7Ozs7OztzQkFhNUYsSUFBSSxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFBLFdBQVcsR0FBRSxDQUFDLENBQUMsSUFBSSxHQUFFLE1BQU0sR0FBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQSxFQUFFOzs7Ozt3Q0FLcEUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxrQ0FBa0IsQ0FBQyxNQUFNLENBQUMsNkNBQTZDLFFBQVEsQ0FBQyxVQUFVLENBQUMsa0NBQWtCLENBQUMsUUFBUSxDQUFDOzs7OzthQUt0SztTQUNKLENBQUM7UUFDRixPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCB7VGFibGVEZWZpbml0aW9uLCBDb250ZXh0Rm9yRHVtcCwgRmllbGREZWZpbml0aW9ufSBmcm9tIFwiLi90eXBlcy1kbWVuY3VcIjtcclxuaW1wb3J0IHtPcGVyYXRpdm9HZW5lcmF0b3IgfSBmcm9tIFwicHJvY2VzYW1pZW50b1wiO1xyXG5pbXBvcnQgKiBhcyBzcWxUb29scyBmcm9tICdzcWwtdG9vbHMnO1xyXG5cclxuXHJcbmV4cG9ydCB2YXIgZ2V0RG9taWNpbGlvRmllbGRzID0gKCk6RmllbGREZWZpbml0aW9uW10gPT4gW1xyXG4gICAge25hbWU6J2NvZGNhbGxlJyAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidub21jYWxsZScgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonbnJvY2F0YXN0cmFsJyAgICAgICAgICwgdHlwZU5hbWU6J2ludGVnZXInICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J3Bpc28nICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidkZXBhcnRhbWVudG8nICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonaGFiaXRhY2lvbicgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J3NlY3RvcicgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuICAgIHtuYW1lOidlZGlmaWNpbycgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCBlZGl0YWJsZTogZmFsc2UgIH0sXHJcbiAgICB7bmFtZTonZW50cmFkYScgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgZWRpdGFibGU6IGZhbHNlICB9LFxyXG4gICAge25hbWU6J2JhcnJpbycgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsIGVkaXRhYmxlOiBmYWxzZSAgfSxcclxuXVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRlbShjb250ZXh0OkNvbnRleHRGb3JEdW1wLCBvcHRzPzphbnkpOlRhYmxlRGVmaW5pdGlvbiB7XHJcbiAgICB2YXIgb3B0cz1vcHRzfHx7fTtcclxuICAgIHZhciByZWNlcGNpb249b3B0cy5yZWNlcGNpb24/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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtZG1lbmN1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90eXBlcy1kbWVuY3UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQSxZQUFZLENBQUM7OztJQUliLGdEQUE4QixDQUFDLDRCQUE0QjtJQUMzRCxxQ0FBMkQsQ0FBQyxxQ0FBcUM7SUFBekYsNEdBQUEsZ0JBQWdCLE9BQUE7SUFBRSwyR0FBQSxlQUFlLE9BQUE7SUFDekMsOENBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcblxyXG5pbXBvcnQgKiBhcyBiZVBsdXMgZnJvbSBcImJhY2tlbmQtcGx1c1wiO1xyXG5cclxuZXhwb3J0ICogZnJvbSAncHJvY2VzYW1pZW50byc7IC8vZXhwb3NlIFByb2Nlc2FtaWVudG8gdHlwZXNcclxuZXhwb3J0IHtlbWVyZ2VBcHBNZXRhRW5jLCBlbWVyZ2VBcHBSZWxFbmN9IGZyb20gJ21ldGEtZW5jJzsgLy9leHBvc2UgdHlwZXMgb25seSBpbiBtZXRhLWVuYyBzdGFja1xyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXRlbSc7XHJcblxyXG5leHBvcnQgdHlwZSBQdWVkZSA9IHtcclxuICAgIGVuY3Vlc3Rhczp7XHJcbiAgICAgICAgcmVsZXZhcjpib29sZWFuLFxyXG4gICAgICAgIGp1c3RpZmljYXI6IGJvb2xlYW4sXHJcbiAgICAgICAgcHJvY2VzYXI6IGJvb2xlYW5cclxuICAgIH0sXHJcbiAgICBjYXNpbGxlcm9zX3RleHRvOntcclxuICAgICAgICBlZGl0YXI6Ym9vbGVhblxyXG4gICAgfVxyXG4gICAgY2FtcG86e1xyXG4gICAgICAgIGVkaXRhcjpib29sZWFuXHJcbiAgICAgICAgYWRtaW5pc3RyYXI6Ym9vbGVhblxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQZXJtaXNvcyA9IHtcclxuICAgIHB1ZWRlPzogUHVlZGVcclxuICAgIHN1cGVydXNlcj86IGJvb2xlYW5cclxufVxyXG5cclxuZGVjbGFyZSBtb2R1bGUgXCJiYWNrZW5kLXBsdXNcIntcclxuICAgIGV4cG9ydCBpbnRlcmZhY2UgUHJvY2VkdXJlRGVme1xyXG4gICAgICAgIGRlZmluZWRJbj86c3RyaW5nXHJcbiAgICB9XHJcblxyXG4gICAgZXhwb3J0IGludGVyZmFjZSBDYWNoZXN7XHJcbiAgICAgICAgdGFibGVDb250ZW50OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XHJcbiAgICAgICAgbWV0YUVuY0luY2x1aXJDYXNpbGxlcm9zU2FsdG9SRUw6IGJvb2xlYW5cclxuICAgICAgICB0aW1lc3RhbXBFc3RydWN0dXJhOiBudW1iZXJcclxuICAgICAgICBwZXJtaXNvc1JvbDogUGVybWlzb3NcclxuICAgICAgICBwZXJtaXNvc1JvbFNvbG9UcnVlOiBQZXJtaXNvc1xyXG4gICAgICAgIHBlcm1pc29zU3VwZXJ1c2VyOiBQdWVkZVxyXG4gICAgICAgIHBlcm1pc29zUGFyYU5hZGllOiBQdWVkZVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHR7XHJcbiAgICAgICAgcHVlZGU/OiBQdWVkZVxyXG4gICAgICAgIHN1cGVydXNlcj86IHRydWVcclxuICAgIH1cclxuXHJcbiAgICBleHBvcnQgaW50ZXJmYWNlIE9wdHNDbGllbnRQYWdlIHtcclxuICAgICAgICBvZmZsaW5lRmlsZTogYm9vbGVhbiBcclxuICAgIH1cclxuXHJcbiAgICBleHBvcnQgaW50ZXJmYWNlIENsaWVudFNldHVwIHtcclxuICAgICAgICBpZHBlcjogc3RyaW5nfHVuZGVmaW5lZFxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBNZW51SW5mb0Jhc2UgPSBiZVBsdXMuTWVudUluZm9CYXNlO1xyXG5cclxuZXhwb3J0IHR5cGUgU3VmaWpvc0FtYmllbnRlID0gJ190ZXN0J3wnX2NhcGEnfCcnIl19
|