visorus-erp-core 16.0.0 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/esm2022/lib/app.module.mjs +2 -2
  2. package/esm2022/lib/components/acreedor/select/select-acreedor.component.mjs +35 -32
  3. package/esm2022/lib/components/acreedor/services/acreedor.service.mjs +3 -3
  4. package/esm2022/lib/components/acreedor/services/acreedorCuentaContable.mjs +3 -3
  5. package/esm2022/lib/components/agente/services/agente.service.mjs +3 -3
  6. package/esm2022/lib/components/almacen/services/almacen.service.mjs +3 -3
  7. package/esm2022/lib/components/banco/services/banco.service.mjs +3 -3
  8. package/esm2022/lib/components/caja/session-create/session-create.component.mjs +34 -30
  9. package/esm2022/lib/components/caja/sessionCaja.service.mjs +3 -3
  10. package/esm2022/lib/components/catalogoTipo/services/catalogoTipo.service.mjs +3 -3
  11. package/esm2022/lib/components/clasificadorTipo/services/clasificadorTipo.service.mjs +3 -3
  12. package/esm2022/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.mjs +3 -3
  13. package/esm2022/lib/components/claveMovimiento/services/claveMovimiento.service.mjs +3 -3
  14. package/esm2022/lib/components/cliente/select/select-cliente.component.mjs +33 -29
  15. package/esm2022/lib/components/cliente/services/cliente.service.mjs +3 -3
  16. package/esm2022/lib/components/cliente/services/clienteCuentaBanco.service.mjs +3 -3
  17. package/esm2022/lib/components/cliente/services/clienteFlete.service.mjs +3 -3
  18. package/esm2022/lib/components/contacto/services/datoContacto.service.mjs +3 -3
  19. package/esm2022/lib/components/dato-direccion/services/datoDireccion.service.mjs +3 -3
  20. package/esm2022/lib/components/departamento/services/departamento.service.mjs +3 -3
  21. package/esm2022/lib/components/empresa/services/empresa.service.mjs +3 -3
  22. package/esm2022/lib/components/error404/error404.component.mjs +4 -3
  23. package/esm2022/lib/components/flete/services/flete.service.mjs +3 -3
  24. package/esm2022/lib/components/formaPago/services/FormaPago.service.mjs +3 -3
  25. package/esm2022/lib/components/loading/loading.component.mjs +6 -5
  26. package/esm2022/lib/components/loading/loading.service.mjs +2 -2
  27. package/esm2022/lib/components/loading-screen/loading-screen.component.mjs +4 -3
  28. package/esm2022/lib/components/loading-screen/loading-screen.service.mjs +2 -2
  29. package/esm2022/lib/components/login-modal/login-modal.component.mjs +28 -28
  30. package/esm2022/lib/components/login-modal/login-modal.service.mjs +2 -2
  31. package/esm2022/lib/components/moneda/services/moneda.service.mjs +3 -3
  32. package/esm2022/lib/components/pdfModal/pdf-modal.component.mjs +12 -10
  33. package/esm2022/lib/components/pdfModal/pdf-modal.service.mjs +2 -2
  34. package/esm2022/lib/components/persona-fisica/services/personaFisica.service.mjs +3 -3
  35. package/esm2022/lib/components/proveedor/select/select-proveedor.component.mjs +24 -20
  36. package/esm2022/lib/components/proveedor/services/proveedor.service.mjs +3 -3
  37. package/esm2022/lib/components/proveedor/services/proveedorCuentaBanco.service.mjs +3 -3
  38. package/esm2022/lib/components/proveedor/services/proveedorFlete.service.mjs +3 -3
  39. package/esm2022/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.mjs +34 -31
  40. package/esm2022/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.mjs +3 -3
  41. package/esm2022/lib/components/selecciona-articulo/selecciona-articulo.component.mjs +127 -134
  42. package/esm2022/lib/components/selecciona-articulo/stock.service.mjs +3 -3
  43. package/esm2022/lib/components/serieDocumento/services/serieDocumento.service.mjs +3 -3
  44. package/esm2022/lib/components/tipo-contacto/services/tipoContacto.service.mjs +3 -3
  45. package/esm2022/lib/components/ubicacion/services/ubicacion.service.mjs +3 -3
  46. package/esm2022/lib/contabilidad/componentes/cclista/cclista.component.mjs +27 -27
  47. package/esm2022/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.mjs +13 -10
  48. package/esm2022/lib/contabilidad/servicios/cuentacontable.service.mjs +3 -3
  49. package/esm2022/lib/httpInterceptor/httpInterceptor.mjs +3 -3
  50. package/esm2022/lib/services/auth.service.mjs +3 -3
  51. package/esm2022/lib/services/authenticated.service.mjs +3 -3
  52. package/esm2022/lib/services/canActivateGuard.service.ts.mjs +3 -3
  53. package/esm2022/lib/services/catalogo-adicional.service.mjs +3 -3
  54. package/esm2022/lib/services/controlAcceso.service.mjs +3 -3
  55. package/esm2022/lib/services/file.service.mjs +3 -3
  56. package/esm2022/lib/services/init.service.mjs +3 -3
  57. package/esm2022/lib/services/message.service.mjs +3 -3
  58. package/esm2022/lib/services/paginate.service.mjs +3 -3
  59. package/esm2022/lib/services/personaMoral.service.mjs +3 -3
  60. package/esm2022/lib/services/versionCheck.service.mjs +3 -3
  61. package/fesm2022/visorus-erp-core.mjs +459 -440
  62. package/fesm2022/visorus-erp-core.mjs.map +1 -1
  63. package/package.json +6 -6
@@ -16,15 +16,17 @@ import * as i10 from "@angular/forms";
16
16
  import * as i11 from "primeng/dialog";
17
17
  import * as i12 from "@ngx-translate/core";
18
18
  import * as i13 from "../seleccion-articulo-informacion/seleccion-articulo-informacion.component";
19
+ const _c0 = a0 => ({ "width": a0, "min-width": "200px" });
20
+ const _c1 = () => [10, 25, 50, 100, 500];
19
21
  function SeleccionaArticuloComponent_option_23_Template(rf, ctx) { if (rf & 1) {
20
22
  i0.ɵɵelementStart(0, "option", 22);
21
23
  i0.ɵɵtext(1);
22
24
  i0.ɵɵelementEnd();
23
25
  } if (rf & 2) {
24
- const almacen_r5 = ctx.$implicit;
25
- i0.ɵɵpropertyInterpolate("value", almacen_r5.id);
26
- i0.ɵɵadvance(1);
27
- i0.ɵɵtextInterpolate(almacen_r5.descripcion);
26
+ const almacen_r2 = ctx.$implicit;
27
+ i0.ɵɵpropertyInterpolate("value", almacen_r2.id);
28
+ i0.ɵɵadvance();
29
+ i0.ɵɵtextInterpolate(almacen_r2.descripcion);
28
30
  } }
29
31
  function SeleccionaArticuloComponent_ng_template_26_th_7_Template(rf, ctx) { if (rf & 1) {
30
32
  i0.ɵɵelementStart(0, "th", 31);
@@ -71,9 +73,9 @@ function SeleccionaArticuloComponent_ng_template_26_th_22_Template(rf, ctx) { if
71
73
  i0.ɵɵtext(1);
72
74
  i0.ɵɵelementEnd();
73
75
  } if (rf & 2) {
74
- const item_r15 = ctx.$implicit;
75
- i0.ɵɵadvance(1);
76
- i0.ɵɵtextInterpolate(item_r15.descripcion);
76
+ const item_r3 = ctx.$implicit;
77
+ i0.ɵɵadvance();
78
+ i0.ɵɵtextInterpolate(item_r3.descripcion);
77
79
  } }
78
80
  function SeleccionaArticuloComponent_ng_template_26_Template(rf, ctx) { if (rf & 1) {
79
81
  i0.ɵɵelementStart(0, "tr")(1, "th", 23);
@@ -85,8 +87,7 @@ function SeleccionaArticuloComponent_ng_template_26_Template(rf, ctx) { if (rf &
85
87
  i0.ɵɵelementStart(5, "th", 25);
86
88
  i0.ɵɵtext(6, "Unidad");
87
89
  i0.ɵɵelementEnd();
88
- i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_26_th_7_Template, 2, 0, "th", 26);
89
- i0.ɵɵtemplate(8, SeleccionaArticuloComponent_ng_template_26_th_8_Template, 2, 0, "th", 27);
90
+ i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_26_th_7_Template, 2, 0, "th", 26)(8, SeleccionaArticuloComponent_ng_template_26_th_8_Template, 2, 0, "th", 27);
90
91
  i0.ɵɵelementStart(9, "th", 23);
91
92
  i0.ɵɵtext(10, "C\u00F3digo");
92
93
  i0.ɵɵelementEnd();
@@ -94,37 +95,32 @@ function SeleccionaArticuloComponent_ng_template_26_Template(rf, ctx) { if (rf &
94
95
  i0.ɵɵtext(12, "Descripcion");
95
96
  i0.ɵɵelementEnd();
96
97
  i0.ɵɵelement(13, "th", 25);
97
- i0.ɵɵtemplate(14, SeleccionaArticuloComponent_ng_template_26_th_14_Template, 2, 0, "th", 29);
98
- i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_26_th_15_Template, 2, 0, "th", 29);
99
- i0.ɵɵtemplate(16, SeleccionaArticuloComponent_ng_template_26_th_16_Template, 2, 0, "th", 29);
100
- i0.ɵɵtemplate(17, SeleccionaArticuloComponent_ng_template_26_th_17_Template, 2, 0, "th", 29);
101
- i0.ɵɵtemplate(18, SeleccionaArticuloComponent_ng_template_26_th_18_Template, 2, 0, "th", 29);
102
- i0.ɵɵtemplate(19, SeleccionaArticuloComponent_ng_template_26_th_19_Template, 2, 0, "th", 27);
98
+ i0.ɵɵtemplate(14, SeleccionaArticuloComponent_ng_template_26_th_14_Template, 2, 0, "th", 29)(15, SeleccionaArticuloComponent_ng_template_26_th_15_Template, 2, 0, "th", 29)(16, SeleccionaArticuloComponent_ng_template_26_th_16_Template, 2, 0, "th", 29)(17, SeleccionaArticuloComponent_ng_template_26_th_17_Template, 2, 0, "th", 29)(18, SeleccionaArticuloComponent_ng_template_26_th_18_Template, 2, 0, "th", 29)(19, SeleccionaArticuloComponent_ng_template_26_th_19_Template, 2, 0, "th", 27);
103
99
  i0.ɵɵelementStart(20, "th", 25);
104
100
  i0.ɵɵtext(21, "Existencia por Unidad");
105
101
  i0.ɵɵelementEnd();
106
102
  i0.ɵɵtemplate(22, SeleccionaArticuloComponent_ng_template_26_th_22_Template, 2, 1, "th", 30);
107
103
  i0.ɵɵelementEnd();
108
104
  } if (rf & 2) {
109
- const ctx_r2 = i0.ɵɵnextContext();
105
+ const ctx_r3 = i0.ɵɵnextContext();
110
106
  i0.ɵɵadvance(7);
111
- i0.ɵɵproperty("ngIf", ctx_r2.manejaUnidadSecundaria);
112
- i0.ɵɵadvance(1);
113
- i0.ɵɵproperty("ngIf", ctx_r2.manejaUnidadSecundaria);
107
+ i0.ɵɵproperty("ngIf", ctx_r3.manejaUnidadSecundaria);
108
+ i0.ɵɵadvance();
109
+ i0.ɵɵproperty("ngIf", ctx_r3.manejaUnidadSecundaria);
114
110
  i0.ɵɵadvance(6);
115
- i0.ɵɵproperty("ngIf", ctx_r2.configuracion.tipoPrecio !== "costo");
116
- i0.ɵɵadvance(1);
117
- i0.ɵɵproperty("ngIf", ctx_r2.configuracion.tipoPrecio !== "costo");
118
- i0.ɵɵadvance(1);
119
- i0.ɵɵproperty("ngIf", ctx_r2.configuracion.tipoPrecio !== "costo");
120
- i0.ɵɵadvance(1);
121
- i0.ɵɵproperty("ngIf", ctx_r2.configuracion.tipoPrecio !== "costo");
122
- i0.ɵɵadvance(1);
123
- i0.ɵɵproperty("ngIf", ctx_r2.configuracion.tipoPrecio !== "costo");
124
- i0.ɵɵadvance(1);
125
- i0.ɵɵproperty("ngIf", ctx_r2.configuracion.tipoPrecio === "costo");
111
+ i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
112
+ i0.ɵɵadvance();
113
+ i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
114
+ i0.ɵɵadvance();
115
+ i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
116
+ i0.ɵɵadvance();
117
+ i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
118
+ i0.ɵɵadvance();
119
+ i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
120
+ i0.ɵɵadvance();
121
+ i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio === "costo");
126
122
  i0.ɵɵadvance(3);
127
- i0.ɵɵproperty("ngForOf", ctx_r2.clasificadorList);
123
+ i0.ɵɵproperty("ngForOf", ctx_r3.clasificadorList);
128
124
  } }
129
125
  function SeleccionaArticuloComponent_ng_template_27_td_1_Template(rf, ctx) { if (rf & 1) {
130
126
  i0.ɵɵelementStart(0, "td", 23);
@@ -136,27 +132,27 @@ function SeleccionaArticuloComponent_ng_template_27_td_2_Template(rf, ctx) { if
136
132
  i0.ɵɵtext(1);
137
133
  i0.ɵɵelementEnd();
138
134
  } if (rf & 2) {
139
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
140
- i0.ɵɵadvance(1);
141
- i0.ɵɵtextInterpolate(rowData_r16.ubicacionCodigo);
135
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
136
+ i0.ɵɵadvance();
137
+ i0.ɵɵtextInterpolate(rowData_r6.ubicacionCodigo);
142
138
  } }
143
139
  function SeleccionaArticuloComponent_ng_template_27_td_7_Template(rf, ctx) { if (rf & 1) {
144
140
  i0.ɵɵelementStart(0, "td", 44);
145
141
  i0.ɵɵtext(1);
146
142
  i0.ɵɵelementEnd();
147
143
  } if (rf & 2) {
148
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
149
- i0.ɵɵadvance(1);
150
- i0.ɵɵtextInterpolate(rowData_r16.existenciaSecundaria);
144
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
145
+ i0.ɵɵadvance();
146
+ i0.ɵɵtextInterpolate(rowData_r6.existenciaSecundaria);
151
147
  } }
152
148
  function SeleccionaArticuloComponent_ng_template_27_td_8_Template(rf, ctx) { if (rf & 1) {
153
149
  i0.ɵɵelementStart(0, "td", 36);
154
150
  i0.ɵɵtext(1);
155
151
  i0.ɵɵelementEnd();
156
152
  } if (rf & 2) {
157
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
158
- i0.ɵɵadvance(1);
159
- i0.ɵɵtextInterpolate(rowData_r16.unidadSecundariaCodigo);
153
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
154
+ i0.ɵɵadvance();
155
+ i0.ɵɵtextInterpolate(rowData_r6.unidadSecundariaCodigo);
160
156
  } }
161
157
  function SeleccionaArticuloComponent_ng_template_27_td_15_Template(rf, ctx) { if (rf & 1) {
162
158
  i0.ɵɵelementStart(0, "td", 39);
@@ -164,9 +160,9 @@ function SeleccionaArticuloComponent_ng_template_27_td_15_Template(rf, ctx) { if
164
160
  i0.ɵɵpipe(2, "currency");
165
161
  i0.ɵɵelementEnd();
166
162
  } if (rf & 2) {
167
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
168
- i0.ɵɵadvance(1);
169
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 1, rowData_r16.precioConImpuestos), " ");
163
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
164
+ i0.ɵɵadvance();
165
+ i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 1, rowData_r6.precioConImpuestos), " ");
170
166
  } }
171
167
  function SeleccionaArticuloComponent_ng_template_27_td_16_Template(rf, ctx) { if (rf & 1) {
172
168
  i0.ɵɵelementStart(0, "td", 39);
@@ -174,9 +170,9 @@ function SeleccionaArticuloComponent_ng_template_27_td_16_Template(rf, ctx) { if
174
170
  i0.ɵɵpipe(2, "currency");
175
171
  i0.ɵɵelementEnd();
176
172
  } if (rf & 2) {
177
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
178
- i0.ɵɵadvance(1);
179
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio2ConImpuestos));
173
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
174
+ i0.ɵɵadvance();
175
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r6.precio2ConImpuestos));
180
176
  } }
181
177
  function SeleccionaArticuloComponent_ng_template_27_td_17_Template(rf, ctx) { if (rf & 1) {
182
178
  i0.ɵɵelementStart(0, "td", 39);
@@ -184,9 +180,9 @@ function SeleccionaArticuloComponent_ng_template_27_td_17_Template(rf, ctx) { if
184
180
  i0.ɵɵpipe(2, "currency");
185
181
  i0.ɵɵelementEnd();
186
182
  } if (rf & 2) {
187
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
188
- i0.ɵɵadvance(1);
189
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio3ConImpuestos));
183
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
184
+ i0.ɵɵadvance();
185
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r6.precio3ConImpuestos));
190
186
  } }
191
187
  function SeleccionaArticuloComponent_ng_template_27_td_18_Template(rf, ctx) { if (rf & 1) {
192
188
  i0.ɵɵelementStart(0, "td", 39);
@@ -194,9 +190,9 @@ function SeleccionaArticuloComponent_ng_template_27_td_18_Template(rf, ctx) { if
194
190
  i0.ɵɵpipe(2, "currency");
195
191
  i0.ɵɵelementEnd();
196
192
  } if (rf & 2) {
197
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
198
- i0.ɵɵadvance(1);
199
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio4ConImpuestos));
193
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
194
+ i0.ɵɵadvance();
195
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r6.precio4ConImpuestos));
200
196
  } }
201
197
  function SeleccionaArticuloComponent_ng_template_27_td_19_Template(rf, ctx) { if (rf & 1) {
202
198
  i0.ɵɵelementStart(0, "td", 39);
@@ -204,9 +200,9 @@ function SeleccionaArticuloComponent_ng_template_27_td_19_Template(rf, ctx) { if
204
200
  i0.ɵɵpipe(2, "currency");
205
201
  i0.ɵɵelementEnd();
206
202
  } if (rf & 2) {
207
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
208
- i0.ɵɵadvance(1);
209
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio5ConImpuestos));
203
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
204
+ i0.ɵɵadvance();
205
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r6.precio5ConImpuestos));
210
206
  } }
211
207
  function SeleccionaArticuloComponent_ng_template_27_td_20_Template(rf, ctx) { if (rf & 1) {
212
208
  i0.ɵɵelementStart(0, "td", 36);
@@ -214,9 +210,9 @@ function SeleccionaArticuloComponent_ng_template_27_td_20_Template(rf, ctx) { if
214
210
  i0.ɵɵpipe(2, "currency");
215
211
  i0.ɵɵelementEnd();
216
212
  } if (rf & 2) {
217
- const rowData_r16 = i0.ɵɵnextContext().$implicit;
218
- i0.ɵɵadvance(1);
219
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio));
213
+ const rowData_r6 = i0.ɵɵnextContext().$implicit;
214
+ i0.ɵɵadvance();
215
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r6.precio));
220
216
  } }
221
217
  function SeleccionaArticuloComponent_ng_template_27_div_22_Template(rf, ctx) { if (rf & 1) {
222
218
  i0.ɵɵelementStart(0, "div", 45)(1, "div", 46)(2, "label", 47);
@@ -227,34 +223,32 @@ function SeleccionaArticuloComponent_ng_template_27_div_22_Template(rf, ctx) { i
227
223
  i0.ɵɵpipe(7, "number");
228
224
  i0.ɵɵelementEnd()()();
229
225
  } if (rf & 2) {
230
- const item_r39 = ctx.$implicit;
226
+ const item_r7 = ctx.$implicit;
231
227
  i0.ɵɵadvance(3);
232
- i0.ɵɵtextInterpolate(item_r39.unidad_codigo);
228
+ i0.ɵɵtextInterpolate(item_r7.unidad_codigo);
233
229
  i0.ɵɵadvance(3);
234
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(7, 2, item_r39.unidad_existencia, "1.2-2"));
230
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(7, 2, item_r7.unidad_existencia, "1.2-2"));
235
231
  } }
236
232
  function SeleccionaArticuloComponent_ng_template_27_td_23_Template(rf, ctx) { if (rf & 1) {
237
233
  i0.ɵɵelementStart(0, "td", 39);
238
234
  i0.ɵɵtext(1);
239
235
  i0.ɵɵelementEnd();
240
236
  } if (rf & 2) {
241
- const itemData_r40 = ctx.$implicit;
242
- i0.ɵɵadvance(1);
243
- i0.ɵɵtextInterpolate(itemData_r40.valor);
237
+ const itemData_r8 = ctx.$implicit;
238
+ i0.ɵɵadvance();
239
+ i0.ɵɵtextInterpolate(itemData_r8.valor);
244
240
  } }
245
241
  function SeleccionaArticuloComponent_ng_template_27_Template(rf, ctx) { if (rf & 1) {
246
- const _r42 = i0.ɵɵgetCurrentView();
242
+ const _r5 = i0.ɵɵgetCurrentView();
247
243
  i0.ɵɵelementStart(0, "tr", 32);
248
- i0.ɵɵtemplate(1, SeleccionaArticuloComponent_ng_template_27_td_1_Template, 2, 0, "td", 33);
249
- i0.ɵɵtemplate(2, SeleccionaArticuloComponent_ng_template_27_td_2_Template, 2, 1, "td", 34);
244
+ i0.ɵɵtemplate(1, SeleccionaArticuloComponent_ng_template_27_td_1_Template, 2, 0, "td", 33)(2, SeleccionaArticuloComponent_ng_template_27_td_2_Template, 2, 1, "td", 34);
250
245
  i0.ɵɵelementStart(3, "td", 35);
251
246
  i0.ɵɵtext(4);
252
247
  i0.ɵɵelementEnd();
253
248
  i0.ɵɵelementStart(5, "td", 36);
254
249
  i0.ɵɵtext(6);
255
250
  i0.ɵɵelementEnd();
256
- i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_27_td_7_Template, 2, 1, "td", 37);
257
- i0.ɵɵtemplate(8, SeleccionaArticuloComponent_ng_template_27_td_8_Template, 2, 1, "td", 38);
251
+ i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_27_td_7_Template, 2, 1, "td", 37)(8, SeleccionaArticuloComponent_ng_template_27_td_8_Template, 2, 1, "td", 38);
258
252
  i0.ɵɵelementStart(9, "td", 39);
259
253
  i0.ɵɵtext(10);
260
254
  i0.ɵɵelementEnd();
@@ -262,67 +256,60 @@ function SeleccionaArticuloComponent_ng_template_27_Template(rf, ctx) { if (rf &
262
256
  i0.ɵɵtext(12);
263
257
  i0.ɵɵelementEnd();
264
258
  i0.ɵɵelementStart(13, "td", 36)(14, "button", 41);
265
- i0.ɵɵlistener("click", function SeleccionaArticuloComponent_ng_template_27_Template_button_click_14_listener() { const restoredCtx = i0.ɵɵrestoreView(_r42); const rowData_r16 = restoredCtx.$implicit; const ctx_r41 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r41.onShowInformacion(rowData_r16)); });
259
+ i0.ɵɵlistener("click", function SeleccionaArticuloComponent_ng_template_27_Template_button_click_14_listener() { const rowData_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onShowInformacion(rowData_r6)); });
266
260
  i0.ɵɵelementEnd()();
267
- i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_27_td_15_Template, 3, 3, "td", 34);
268
- i0.ɵɵtemplate(16, SeleccionaArticuloComponent_ng_template_27_td_16_Template, 3, 3, "td", 34);
269
- i0.ɵɵtemplate(17, SeleccionaArticuloComponent_ng_template_27_td_17_Template, 3, 3, "td", 34);
270
- i0.ɵɵtemplate(18, SeleccionaArticuloComponent_ng_template_27_td_18_Template, 3, 3, "td", 34);
271
- i0.ɵɵtemplate(19, SeleccionaArticuloComponent_ng_template_27_td_19_Template, 3, 3, "td", 34);
272
- i0.ɵɵtemplate(20, SeleccionaArticuloComponent_ng_template_27_td_20_Template, 3, 3, "td", 38);
261
+ i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_27_td_15_Template, 3, 3, "td", 34)(16, SeleccionaArticuloComponent_ng_template_27_td_16_Template, 3, 3, "td", 34)(17, SeleccionaArticuloComponent_ng_template_27_td_17_Template, 3, 3, "td", 34)(18, SeleccionaArticuloComponent_ng_template_27_td_18_Template, 3, 3, "td", 34)(19, SeleccionaArticuloComponent_ng_template_27_td_19_Template, 3, 3, "td", 34)(20, SeleccionaArticuloComponent_ng_template_27_td_20_Template, 3, 3, "td", 38);
273
262
  i0.ɵɵelementStart(21, "td", 36);
274
263
  i0.ɵɵtemplate(22, SeleccionaArticuloComponent_ng_template_27_div_22_Template, 8, 5, "div", 42);
275
264
  i0.ɵɵelementEnd();
276
265
  i0.ɵɵtemplate(23, SeleccionaArticuloComponent_ng_template_27_td_23_Template, 2, 1, "td", 43);
277
266
  i0.ɵɵelementEnd();
278
267
  } if (rf & 2) {
279
- const rowData_r16 = ctx.$implicit;
268
+ const rowData_r6 = ctx.$implicit;
280
269
  const ctx_r3 = i0.ɵɵnextContext();
281
- i0.ɵɵproperty("pSelectableRow", rowData_r16);
282
- i0.ɵɵadvance(1);
283
- i0.ɵɵproperty("ngIf", !rowData_r16.ubicacionCodigo);
284
- i0.ɵɵadvance(1);
285
- i0.ɵɵproperty("ngIf", rowData_r16.ubicacionCodigo);
270
+ i0.ɵɵproperty("pSelectableRow", rowData_r6);
271
+ i0.ɵɵadvance();
272
+ i0.ɵɵproperty("ngIf", !rowData_r6.ubicacionCodigo);
273
+ i0.ɵɵadvance();
274
+ i0.ɵɵproperty("ngIf", rowData_r6.ubicacionCodigo);
286
275
  i0.ɵɵadvance(2);
287
- i0.ɵɵtextInterpolate(rowData_r16.existencia);
276
+ i0.ɵɵtextInterpolate(rowData_r6.existencia);
288
277
  i0.ɵɵadvance(2);
289
- i0.ɵɵtextInterpolate(rowData_r16.unidadCodigo);
290
- i0.ɵɵadvance(1);
278
+ i0.ɵɵtextInterpolate(rowData_r6.unidadCodigo);
279
+ i0.ɵɵadvance();
291
280
  i0.ɵɵproperty("ngIf", ctx_r3.manejaUnidadSecundaria);
292
- i0.ɵɵadvance(1);
281
+ i0.ɵɵadvance();
293
282
  i0.ɵɵproperty("ngIf", ctx_r3.manejaUnidadSecundaria);
294
283
  i0.ɵɵadvance(2);
295
- i0.ɵɵtextInterpolate(rowData_r16.articulo.codigo);
284
+ i0.ɵɵtextInterpolate(rowData_r6.articulo.codigo);
296
285
  i0.ɵɵadvance(2);
297
- i0.ɵɵtextInterpolate(rowData_r16.articulo.descripcion);
286
+ i0.ɵɵtextInterpolate(rowData_r6.articulo.descripcion);
298
287
  i0.ɵɵadvance(3);
299
288
  i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
300
- i0.ɵɵadvance(1);
289
+ i0.ɵɵadvance();
301
290
  i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
302
- i0.ɵɵadvance(1);
291
+ i0.ɵɵadvance();
303
292
  i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
304
- i0.ɵɵadvance(1);
293
+ i0.ɵɵadvance();
305
294
  i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
306
- i0.ɵɵadvance(1);
295
+ i0.ɵɵadvance();
307
296
  i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio !== "costo");
308
- i0.ɵɵadvance(1);
297
+ i0.ɵɵadvance();
309
298
  i0.ɵɵproperty("ngIf", ctx_r3.configuracion.tipoPrecio === "costo");
310
299
  i0.ɵɵadvance(2);
311
- i0.ɵɵproperty("ngForOf", rowData_r16.existenciaUnidades);
312
- i0.ɵɵadvance(1);
313
- i0.ɵɵproperty("ngForOf", rowData_r16.articuloClasificadorList);
300
+ i0.ɵɵproperty("ngForOf", rowData_r6.existenciaUnidades);
301
+ i0.ɵɵadvance();
302
+ i0.ɵɵproperty("ngForOf", rowData_r6.articuloClasificadorList);
314
303
  } }
315
304
  function SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_29_Template(rf, ctx) { if (rf & 1) {
316
- const _r44 = i0.ɵɵgetCurrentView();
305
+ const _r9 = i0.ɵɵgetCurrentView();
317
306
  i0.ɵɵelementStart(0, "lib-seleccion-articulo-informacion", 48);
318
- i0.ɵɵlistener("eventSelection", function SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_29_Template_lib_seleccion_articulo_informacion_eventSelection_0_listener($event) { i0.ɵɵrestoreView(_r44); const ctx_r43 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r43.onEventInformacion($event)); });
307
+ i0.ɵɵlistener("eventSelection", function SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_29_Template_lib_seleccion_articulo_informacion_eventSelection_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEventInformacion($event)); });
319
308
  i0.ɵɵelementEnd();
320
309
  } if (rf & 2) {
321
- const ctx_r4 = i0.ɵɵnextContext();
322
- i0.ɵɵproperty("showModal", ctx_r4.showModalInformacion)("articulo", ctx_r4.articuloSelected);
310
+ const ctx_r3 = i0.ɵɵnextContext();
311
+ i0.ɵɵproperty("showModal", ctx_r3.showModalInformacion)("articulo", ctx_r3.articuloSelected);
323
312
  } }
324
- const _c0 = function (a0) { return { "width": a0, "min-width": "200px" }; };
325
- const _c1 = function () { return [10, 25, 50, 100, 500]; };
326
313
  export class SeleccionaArticuloComponent {
327
314
  constructor(_stockService, _paginateService, _almacenService) {
328
315
  this._stockService = _stockService;
@@ -414,70 +401,75 @@ export class SeleccionaArticuloComponent {
414
401
  this.showModalInformacion = event.status;
415
402
  }
416
403
  /** @nocollapse */ static { this.ɵfac = function SeleccionaArticuloComponent_Factory(t) { return new (t || SeleccionaArticuloComponent)(i0.ɵɵdirectiveInject(i1.StockService), i0.ɵɵdirectiveInject(i2.PaginateService), i0.ɵɵdirectiveInject(i3.AlmacenService)); }; }
417
- /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: SeleccionaArticuloComponent, selectors: [["app-selecciona-articulo"]], inputs: { configuracion: "configuracion", showArticulos: "showArticulos", movimiento: "movimiento", manejaUnidadSecundaria: "manejaUnidadSecundaria" }, outputs: { emitFilaSeleccionada: "emitFilaSeleccionada", emitShowArticulos: "emitShowArticulos" }, decls: 30, vars: 24, consts: [[3, "header", "visible", "maximizable", "baseZIndex", "blockScroll", "minY", "visibleChange", "onShow", "onHide"], [1, "grid", "grid-fluid"], [1, "col-12", "md:col-6", "lg:col-6"], [2, "display", "flex"], [2, "width", "115px"], ["pInputText", "", 3, "ngModel", "ngModelChange", "change"], ["value", "C"], ["value", "D"], ["value", "CD"], ["value", "CI"], ["type", "text", "pInputText", "", "id", "key", 2, "width", "200px", 3, "ngModel", "ngModelChange", "keypress"], ["pButton", "", "type", "button", "icon", "pi pi-search", "styleClass", "p-button-secondary", 3, "click"], [2, "width", "100px"], ["for", "almacen"], ["pInputText", "", "disabled", "", "id", "almacen", 2, "width", "200px", 3, "ngModel", "ngModelChange", "change"], [3, "value", 4, "ngFor", "ngForOf"], ["scrollHeight", "400px", "responsiveLayout", "scroll", "selectionMode", "single", 3, "value", "scrollable", "onRowSelect"], ["dt", ""], ["pTemplate", "header"], ["pTemplate", "body"], [3, "rows", "totalRecords", "pageLinkSize", "rowsPerPageOptions", "onPageChange"], [3, "showModal", "articulo", "eventSelection", 4, "ngIf"], [3, "value"], ["translate", "", 2, "width", "80px"], ["translate", "", 2, "width", "70px"], ["translate", "", 2, "width", "40px"], ["style", "width: 50px", "translate", "", 4, "ngIf"], ["style", "width: 40px", "translate", "", 4, "ngIf"], ["translate", "", 2, "width", "120px"], ["style", "width: 80px", "translate", "", 4, "ngIf"], ["style", "width: 80px", "translate", "", 4, "ngFor", "ngForOf"], ["translate", "", 2, "width", "50px"], [3, "pSelectableRow"], ["style", "width: 80px;", "translate", "", 4, "ngIf"], ["style", "width: 80px;", 4, "ngIf"], [2, "width", "70px"], [2, "width", "40px"], ["style", "width: 50px;", 4, "ngIf"], ["style", "width: 40px;", 4, "ngIf"], [2, "width", "80px"], [2, "width", "120px"], ["pButton", "", "type", "button", "icon", "pi pi-eye", 1, "ui-button-raised", "ui-button-primary", 3, "click"], ["class", "row justify-content-between", 4, "ngFor", "ngForOf"], ["style", "width: 80px;", 4, "ngFor", "ngForOf"], [2, "width", "50px"], [1, "row", "justify-content-between"], [1, "col-lg-4"], ["for", ""], [3, "showModal", "articulo", "eventSelection"]], template: function SeleccionaArticuloComponent_Template(rf, ctx) { if (rf & 1) {
418
- i0.ɵɵelementStart(0, "p-dialog", 0);
419
- i0.ɵɵlistener("visibleChange", function SeleccionaArticuloComponent_Template_p_dialog_visibleChange_0_listener($event) { return ctx.showArticulos = $event; })("onShow", function SeleccionaArticuloComponent_Template_p_dialog_onShow_0_listener() { return ctx.obtenerExistenciaArticulosShow(); })("onHide", function SeleccionaArticuloComponent_Template_p_dialog_onHide_0_listener() { ctx.busquedaArticulos = { tipoBusqueda: "" }; return ctx.emitirShowArticulos(); });
404
+ /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: SeleccionaArticuloComponent, selectors: [["app-selecciona-articulo"]], inputs: { configuracion: "configuracion", showArticulos: "showArticulos", movimiento: "movimiento", manejaUnidadSecundaria: "manejaUnidadSecundaria" }, outputs: { emitFilaSeleccionada: "emitFilaSeleccionada", emitShowArticulos: "emitShowArticulos" }, decls: 30, vars: 24, consts: [["dt", ""], [3, "visibleChange", "onShow", "onHide", "header", "visible", "maximizable", "baseZIndex", "blockScroll", "minY"], [1, "grid", "grid-fluid"], [1, "col-12", "md:col-6", "lg:col-6"], [2, "display", "flex"], [2, "width", "115px"], ["pInputText", "", 3, "ngModelChange", "change", "ngModel"], ["value", "C"], ["value", "D"], ["value", "CD"], ["value", "CI"], ["type", "text", "pInputText", "", "id", "key", 2, "width", "200px", 3, "ngModelChange", "keypress", "ngModel"], ["pButton", "", "type", "button", "icon", "pi pi-search", "styleClass", "p-button-secondary", 3, "click"], [2, "width", "100px"], ["for", "almacen"], ["pInputText", "", "disabled", "", "id", "almacen", 2, "width", "200px", 3, "ngModelChange", "change", "ngModel"], [3, "value", 4, "ngFor", "ngForOf"], ["scrollHeight", "400px", "responsiveLayout", "scroll", "selectionMode", "single", 3, "onRowSelect", "value", "scrollable"], ["pTemplate", "header"], ["pTemplate", "body"], [3, "onPageChange", "rows", "totalRecords", "pageLinkSize", "rowsPerPageOptions"], [3, "showModal", "articulo", "eventSelection", 4, "ngIf"], [3, "value"], ["translate", "", 2, "width", "80px"], ["translate", "", 2, "width", "70px"], ["translate", "", 2, "width", "40px"], ["style", "width: 50px", "translate", "", 4, "ngIf"], ["style", "width: 40px", "translate", "", 4, "ngIf"], ["translate", "", 2, "width", "120px"], ["style", "width: 80px", "translate", "", 4, "ngIf"], ["style", "width: 80px", "translate", "", 4, "ngFor", "ngForOf"], ["translate", "", 2, "width", "50px"], [3, "pSelectableRow"], ["style", "width: 80px;", "translate", "", 4, "ngIf"], ["style", "width: 80px;", 4, "ngIf"], [2, "width", "70px"], [2, "width", "40px"], ["style", "width: 50px;", 4, "ngIf"], ["style", "width: 40px;", 4, "ngIf"], [2, "width", "80px"], [2, "width", "120px"], ["pButton", "", "type", "button", "icon", "pi pi-eye", 1, "ui-button-raised", "ui-button-primary", 3, "click"], ["class", "row justify-content-between", 4, "ngFor", "ngForOf"], ["style", "width: 80px;", 4, "ngFor", "ngForOf"], [2, "width", "50px"], [1, "row", "justify-content-between"], [1, "col-lg-4"], ["for", ""], [3, "eventSelection", "showModal", "articulo"]], template: function SeleccionaArticuloComponent_Template(rf, ctx) { if (rf & 1) {
405
+ const _r1 = i0.ɵɵgetCurrentView();
406
+ i0.ɵɵelementStart(0, "p-dialog", 1);
420
407
  i0.ɵɵpipe(1, "translate");
421
- i0.ɵɵelementStart(2, "div", 1)(3, "div", 2)(4, "div", 3)(5, "div", 4)(6, "select", 5);
422
- i0.ɵɵlistener("ngModelChange", function SeleccionaArticuloComponent_Template_select_ngModelChange_6_listener($event) { return ctx.busquedaArticulos.tipoBusqueda = $event; })("change", function SeleccionaArticuloComponent_Template_select_change_6_listener() { return ctx.obtenerExistenciaArticulosVal(); });
423
- i0.ɵɵelementStart(7, "option", 6);
408
+ i0.ɵɵtwoWayListener("visibleChange", function SeleccionaArticuloComponent_Template_p_dialog_visibleChange_0_listener($event) { i0.ɵɵrestoreView(_r1); i0.ɵɵtwoWayBindingSet(ctx.showArticulos, $event) || (ctx.showArticulos = $event); return i0.ɵɵresetView($event); });
409
+ i0.ɵɵlistener("onShow", function SeleccionaArticuloComponent_Template_p_dialog_onShow_0_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.obtenerExistenciaArticulosShow()); })("onHide", function SeleccionaArticuloComponent_Template_p_dialog_onHide_0_listener() { i0.ɵɵrestoreView(_r1); ctx.busquedaArticulos = { tipoBusqueda: "" }; return i0.ɵɵresetView(ctx.emitirShowArticulos()); });
410
+ i0.ɵɵelementStart(2, "div", 2)(3, "div", 3)(4, "div", 4)(5, "div", 5)(6, "select", 6);
411
+ i0.ɵɵtwoWayListener("ngModelChange", function SeleccionaArticuloComponent_Template_select_ngModelChange_6_listener($event) { i0.ɵɵrestoreView(_r1); i0.ɵɵtwoWayBindingSet(ctx.busquedaArticulos.tipoBusqueda, $event) || (ctx.busquedaArticulos.tipoBusqueda = $event); return i0.ɵɵresetView($event); });
412
+ i0.ɵɵlistener("change", function SeleccionaArticuloComponent_Template_select_change_6_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.obtenerExistenciaArticulosVal()); });
413
+ i0.ɵɵelementStart(7, "option", 7);
424
414
  i0.ɵɵtext(8, "Codigo");
425
415
  i0.ɵɵelementEnd();
426
- i0.ɵɵelementStart(9, "option", 7);
416
+ i0.ɵɵelementStart(9, "option", 8);
427
417
  i0.ɵɵtext(10, "Descripcion");
428
418
  i0.ɵɵelementEnd();
429
- i0.ɵɵelementStart(11, "option", 8);
419
+ i0.ɵɵelementStart(11, "option", 9);
430
420
  i0.ɵɵtext(12, "Coincidencia");
431
421
  i0.ɵɵelementEnd();
432
- i0.ɵɵelementStart(13, "option", 9);
422
+ i0.ɵɵelementStart(13, "option", 10);
433
423
  i0.ɵɵtext(14, "Igual a");
434
424
  i0.ɵɵelementEnd()()();
435
- i0.ɵɵelementStart(15, "input", 10);
436
- i0.ɵɵlistener("ngModelChange", function SeleccionaArticuloComponent_Template_input_ngModelChange_15_listener($event) { return ctx.busquedaArticulos.key = $event; })("keypress", function SeleccionaArticuloComponent_Template_input_keypress_15_listener($event) { return ctx.obtenerExistenciaArticulosKey($event); });
425
+ i0.ɵɵelementStart(15, "input", 11);
426
+ i0.ɵɵtwoWayListener("ngModelChange", function SeleccionaArticuloComponent_Template_input_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r1); i0.ɵɵtwoWayBindingSet(ctx.busquedaArticulos.key, $event) || (ctx.busquedaArticulos.key = $event); return i0.ɵɵresetView($event); });
427
+ i0.ɵɵlistener("keypress", function SeleccionaArticuloComponent_Template_input_keypress_15_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.obtenerExistenciaArticulosKey($event)); });
437
428
  i0.ɵɵelementEnd();
438
- i0.ɵɵelementStart(16, "button", 11);
439
- i0.ɵɵlistener("click", function SeleccionaArticuloComponent_Template_button_click_16_listener() { return ctx.obtenerExistenciaArticulos(); });
429
+ i0.ɵɵelementStart(16, "button", 12);
430
+ i0.ɵɵlistener("click", function SeleccionaArticuloComponent_Template_button_click_16_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.obtenerExistenciaArticulos()); });
440
431
  i0.ɵɵelementEnd()()();
441
- i0.ɵɵelementStart(17, "div", 2)(18, "div", 3)(19, "div", 12)(20, "label", 13);
432
+ i0.ɵɵelementStart(17, "div", 3)(18, "div", 4)(19, "div", 13)(20, "label", 14);
442
433
  i0.ɵɵtext(21, "Almacen:");
443
434
  i0.ɵɵelementEnd()();
444
- i0.ɵɵelementStart(22, "select", 14);
445
- i0.ɵɵlistener("ngModelChange", function SeleccionaArticuloComponent_Template_select_ngModelChange_22_listener($event) { return ctx.movimiento.almacen = $event; })("change", function SeleccionaArticuloComponent_Template_select_change_22_listener() { return ctx.obtenerExistenciaArticulosVal(); });
446
- i0.ɵɵtemplate(23, SeleccionaArticuloComponent_option_23_Template, 2, 2, "option", 15);
435
+ i0.ɵɵelementStart(22, "select", 15);
436
+ i0.ɵɵtwoWayListener("ngModelChange", function SeleccionaArticuloComponent_Template_select_ngModelChange_22_listener($event) { i0.ɵɵrestoreView(_r1); i0.ɵɵtwoWayBindingSet(ctx.movimiento.almacen, $event) || (ctx.movimiento.almacen = $event); return i0.ɵɵresetView($event); });
437
+ i0.ɵɵlistener("change", function SeleccionaArticuloComponent_Template_select_change_22_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.obtenerExistenciaArticulosVal()); });
438
+ i0.ɵɵtemplate(23, SeleccionaArticuloComponent_option_23_Template, 2, 2, "option", 16);
447
439
  i0.ɵɵelementEnd()()()();
448
- i0.ɵɵelementStart(24, "p-table", 16, 17);
449
- i0.ɵɵlistener("onRowSelect", function SeleccionaArticuloComponent_Template_p_table_onRowSelect_24_listener($event) { return ctx.filaSeleccionada($event); });
450
- i0.ɵɵtemplate(26, SeleccionaArticuloComponent_ng_template_26_Template, 23, 9, "ng-template", 18);
451
- i0.ɵɵtemplate(27, SeleccionaArticuloComponent_ng_template_27_Template, 24, 17, "ng-template", 19);
440
+ i0.ɵɵelementStart(24, "p-table", 17, 0);
441
+ i0.ɵɵlistener("onRowSelect", function SeleccionaArticuloComponent_Template_p_table_onRowSelect_24_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.filaSeleccionada($event)); });
442
+ i0.ɵɵtemplate(26, SeleccionaArticuloComponent_ng_template_26_Template, 23, 9, "ng-template", 18)(27, SeleccionaArticuloComponent_ng_template_27_Template, 24, 17, "ng-template", 19);
452
443
  i0.ɵɵelementEnd();
453
444
  i0.ɵɵelementStart(28, "p-paginator", 20);
454
- i0.ɵɵlistener("onPageChange", function SeleccionaArticuloComponent_Template_p_paginator_onPageChange_28_listener($event) { return ctx.pagina($event); });
445
+ i0.ɵɵlistener("onPageChange", function SeleccionaArticuloComponent_Template_p_paginator_onPageChange_28_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.pagina($event)); });
455
446
  i0.ɵɵelementEnd()();
456
447
  i0.ɵɵtemplate(29, SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_29_Template, 1, 2, "lib-seleccion-articulo-informacion", 21);
457
448
  } if (rf & 2) {
458
449
  i0.ɵɵstyleMap(i0.ɵɵpureFunction1(21, _c0, ctx.size + "px"));
459
450
  i0.ɵɵpropertyInterpolate("header", i0.ɵɵpipeBind1(1, 19, "Articulos"));
460
- i0.ɵɵproperty("visible", ctx.showArticulos)("maximizable", true)("baseZIndex", 10000)("blockScroll", true)("minY", 70);
451
+ i0.ɵɵtwoWayProperty("visible", ctx.showArticulos);
452
+ i0.ɵɵproperty("maximizable", true)("baseZIndex", 10000)("blockScroll", true)("minY", 70);
461
453
  i0.ɵɵadvance(6);
462
- i0.ɵɵproperty("ngModel", ctx.busquedaArticulos.tipoBusqueda);
454
+ i0.ɵɵtwoWayProperty("ngModel", ctx.busquedaArticulos.tipoBusqueda);
463
455
  i0.ɵɵadvance(9);
464
- i0.ɵɵproperty("ngModel", ctx.busquedaArticulos.key);
456
+ i0.ɵɵtwoWayProperty("ngModel", ctx.busquedaArticulos.key);
465
457
  i0.ɵɵadvance(7);
466
- i0.ɵɵproperty("ngModel", ctx.movimiento.almacen);
467
- i0.ɵɵadvance(1);
458
+ i0.ɵɵtwoWayProperty("ngModel", ctx.movimiento.almacen);
459
+ i0.ɵɵadvance();
468
460
  i0.ɵɵproperty("ngForOf", ctx.almacenList);
469
- i0.ɵɵadvance(1);
461
+ i0.ɵɵadvance();
470
462
  i0.ɵɵproperty("value", ctx.articulosList)("scrollable", true);
471
463
  i0.ɵɵadvance(4);
472
464
  i0.ɵɵproperty("rows", ctx.page.rows)("totalRecords", ctx.page.total)("pageLinkSize", 5)("rowsPerPageOptions", i0.ɵɵpureFunction0(23, _c1));
473
- i0.ɵɵadvance(1);
465
+ i0.ɵɵadvance();
474
466
  i0.ɵɵproperty("ngIf", ctx.showModalInformacion);
475
467
  } }, dependencies: [i4.NgForOf, i4.NgIf, i5.PrimeTemplate, i6.Table, i6.SelectableRow, i7.ButtonDirective, i8.InputText, i9.Paginator, i10.NgSelectOption, i10.ɵNgSelectMultipleOption, i10.DefaultValueAccessor, i10.SelectControlValueAccessor, i10.NgControlStatus, i10.NgModel, i11.Dialog, i12.TranslateDirective, i13.SeleccionArticuloInformacionComponent, i4.DecimalPipe, i4.CurrencyPipe, i12.TranslatePipe], styles: ["tr[_ngcontent-%COMP%]:hover{background-color:#34a835!important;color:#fff!important}table[_ngcontent-%COMP%]{position:absolute}"] }); }
476
468
  }
477
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SeleccionaArticuloComponent, [{
469
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SeleccionaArticuloComponent, [{
478
470
  type: Component,
479
471
  args: [{ selector: 'app-selecciona-articulo', template: "<!--inicia seleccion de articulos-->\n<!-- (onShow)=\"obtenerExistenciaArticulosShow()\" -->\n<!--\n <div class=\"col-12 col-center\" >-->\n<p-dialog header=\"{{ 'Articulos' | translate }}\" [(visible)]=\"showArticulos\" [maximizable]=\"true\"\n (onShow)=\"obtenerExistenciaArticulosShow()\" (onHide)=\"busquedaArticulos = { tipoBusqueda : ''}; emitirShowArticulos()\"\n [baseZIndex]=\"10000\" [blockScroll]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\">\n <div class=\"grid grid-fluid\">\n <div class=\"col-12 md:col-6 lg:col-6\">\n <div style=\"display: flex;\">\n <div style=\"width: 115px;\">\n <select pInputText [(ngModel)]=\"busquedaArticulos.tipoBusqueda\" (change)=\"obtenerExistenciaArticulosVal()\">\n <option value=\"C\">Codigo</option>\n <option value=\"D\">Descripcion</option>\n <option value=\"CD\">Coincidencia</option>\n <option value=\"CI\">Igual a</option>\n </select>\n </div>\n <input type=\"text\" style=\"width: 200px;\" pInputText [(ngModel)]=\"busquedaArticulos.key\"\n (keypress)=\"obtenerExistenciaArticulosKey( $event )\" id=\"key\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\"\n (click)=\"obtenerExistenciaArticulos( )\"></button>\n </div>\n </div>\n <div class=\"col-12 md:col-6 lg:col-6\">\n <div style=\"display: flex;\">\n <div style=\"width: 100px;\">\n <label for=\"almacen\">Almacen:</label>\n </div>\n <select pInputText style=\"width: 200px;\" [(ngModel)]=\"movimiento.almacen\" disabled id=\"almacen\"\n (change)=\"obtenerExistenciaArticulosVal()\">\n <option *ngFor=\"let almacen of almacenList\" value=\"{{ almacen.id }}\">{{almacen.descripcion}}</option>\n </select>\n </div>\n\n </div>\n </div>\n\n <!--\n <div id=\"table-wrapper\">\n <div id=\"table-scroll\">-->\n <!-- new table\n <p-table #dt [columns]=\"colsDD\" [value]=\"listDD\" [scrollable]=\"true\" \n [style]=\"{width: '100%'} \" [scrollHeight]=\"maxH + 'px'\" \n [resizableColumns]=\"true\" [(selection)]=\"selectedXML\" (onRowSelect)=\"onRowSelect($event)\" dataKey=\"uuid\">\n\n \n -->\n\n <p-table [value]=\"articulosList\" [scrollable]=\"true\" #dt scrollHeight=\"400px\" responsiveLayout=\"scroll\" \n selectionMode=\"single\" (onRowSelect)=\"filaSeleccionada($event)\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 80px\" translate>C\u00F3digo Ubicacion</th>\n <th style=\"width: 70px\" translate>Existencia</th>\n <th style=\"width: 40px\" translate>Unidad</th>\n <th style=\"width: 50px\" *ngIf=\"manejaUnidadSecundaria\" translate>existenciaSecundaria</th>\n <th style=\"width: 40px\" *ngIf=\"manejaUnidadSecundaria\" translate>Unidad</th>\n <th style=\"width: 80px\" translate>C\u00F3digo</th>\n <th style=\"width: 120px\" translate>Descripcion</th>\n <th style=\"width: 40px\" translate></th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 2</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 3</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 4</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 5</th>\n <th style=\"width: 40px\" *ngIf=\"configuracion.tipoPrecio === 'costo' \" translate>Movimiento.costo</th>\n <th style=\"width: 40px\" translate>Existencia por Unidad</th>\n <th *ngFor=\"let item of clasificadorList\" style=\"width: 80px\" translate>{{item.descripcion}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\n <tr [pSelectableRow]=\"rowData\">\n <td style=\"width: 80px;\" *ngIf=\"!rowData.ubicacionCodigo\" translate>Movimiento.NoAsignado</td>\n <td style=\"width: 80px;\" *ngIf=\"rowData.ubicacionCodigo\">{{rowData.ubicacionCodigo}}</td>\n <td style=\"width: 70px;\">{{rowData.existencia}}</td>\n <td style=\"width: 40px;\">{{rowData.unidadCodigo}}</td>\n\n <td style=\"width: 50px;\" *ngIf=\"manejaUnidadSecundaria\">{{rowData.existenciaSecundaria}}</td>\n <td style=\"width: 40px;\" *ngIf=\"manejaUnidadSecundaria\">{{rowData.unidadSecundariaCodigo}}</td>\n\n <td style=\"width: 80px;\">{{rowData.articulo.codigo}}</td>\n <td style=\"width: 120px;\">{{rowData.articulo.descripcion}}</td>\n <td style=\"width: 40px;\">\n <button pButton type=\"button\" icon=\"pi pi-eye\" class=\"ui-button-raised ui-button-primary\"\n (click)=\"onShowInformacion(rowData)\">\n </button>\n </td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precioConImpuestos | currency }}\n </td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio2ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio3ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio4ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio5ConImpuestos | currency\n }}</td>\n <td style=\"width: 40px;\" *ngIf=\"configuracion.tipoPrecio === 'costo' \">{{rowData.precio | currency }}</td>\n <td style=\"width: 40px;\">\n <div class=\"row justify-content-between\" *ngFor=\"let item of rowData.existenciaUnidades\">\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_codigo}}</label></div>\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_existencia | number : '1.2-2'}}</label>\n </div>\n </div>\n </td>\n <!-- <td style=\"width: 40px;\"></td> -->\n <td *ngFor=\"let itemData of rowData.articuloClasificadorList\" style=\"width: 80px;\">{{itemData.valor}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <!-- /new table-->\n <!-- \n <p-table [(value)]=\"articulosList\" responsive=\"true\" \n selectionMode=\"multiple\" (onRowSelect)=\"filaSeleccionada($event)\" [scrollable]=\"true\" scrollHeight=\"350px\" >\n\n <p-column header=\"{{ 'Codigo ubicacion'.toString() | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\" *ngIf=\"!dato.ubicacionCodigo\" translate> Movimiento.NoAsignado </label>\n <label for=\"\" *ngIf=\"dato.ubicacionCodigo\" > {{ dato.ubicacionCodigo }}</label>\n </ng-template>\n </p-column>\n <p-column field=\"ubicacionCodigo\" header=\"{{ 'Descripcion ubicacion'.toString() | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\" *ngIf=\"!dato.ubicacionCodigo\" translate> Movimiento.NoAsignado </label>\n <label for=\"\" *ngIf=\"dato.ubicacionCodigo\" > {{ dato.ubicacionCodigo }}</label>\n </ng-template>\n </p-column>\n\n <p-column field=\"existencia\" header=\"{{'Existencia' | translate}}\"></p-column>\n <p-column field=\"unidadCodigo\" header=\"{{'Unidad' | translate}}\"></p-column>\n <p-column field=\"unidadDescripcion\" header=\"{{'Descripcion unidad' | translate}}\"></p-column>\n\n <p-column field=\"existenciaSecundaria\" header=\"{{'existenciaSecundaria' | translate}}\" *ngIf=\"manejaUnidadSecundaria\"></p-column>\n <p-column field=\"unidadSecundariaCodigo\" header=\"{{'Unidad' | translate}}\" *ngIf=\"manejaUnidadSecundaria\"></p-column>\n \n\n <p-column *ngIf=\"configuracion.tipoPrecio !== 'costo' \" header=\"{{'Movimiento.movimientoDetalle.precio' | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\">{{ dato.precioConImpuestos | currency }}</label>\n </ng-template>\n </p-column>\n <p-column *ngIf=\"configuracion.tipoPrecio === 'costo' \" header=\"{{'Movimiento.costo' | translate }}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\">{{ dato.precio | currency }}</label>\n </ng-template>\n </p-column>\n\n\n <p-column field=\"articulo.codigo\" header=\"{{'Codigo articulo' | translate}}\"></p-column>\n <p-column field=\"articulo.descripcion\" header=\"{{'Descripcion' | translate}}\"></p-column>\n\n\n\n <p-column header=\"{{'ExistenciaPorUnidad' | translate }}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <div class=\"row justify-content-between\" *ngFor=\"let item of dato.existenciaUnidades\" >\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_codigo}}</label></div>\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_existencia | number : '1.2-2'}}</label>\n </div> \n </div> \n </ng-template>\n </p-column>\n \n </p-table>\n -->\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\" (onPageChange)=\"pagina($event)\"\n [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n <!-- \n </div>\n </div>\n -->\n</p-dialog>\n<!--\n </div> \n -->\n<!--termina seleccion de articulos-->\n<!--selecciona ubicacion -->\n<lib-seleccion-articulo-informacion [showModal]=\"showModalInformacion\" [articulo]=\"articuloSelected\"\n (eventSelection)=\"onEventInformacion($event)\" *ngIf=\"showModalInformacion\">\n</lib-seleccion-articulo-informacion>", styles: ["tr:hover{background-color:#34a835!important;color:#fff!important}table{position:absolute}\n"] }]
480
- }], function () { return [{ type: i1.StockService }, { type: i2.PaginateService }, { type: i3.AlmacenService }]; }, { configuracion: [{
472
+ }], () => [{ type: i1.StockService }, { type: i2.PaginateService }, { type: i3.AlmacenService }], { configuracion: [{
481
473
  type: Input
482
474
  }], showArticulos: [{
483
475
  type: Input
@@ -490,4 +482,5 @@ export class SeleccionaArticuloComponent {
490
482
  }], emitShowArticulos: [{
491
483
  type: Output
492
484
  }] }); })();
493
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcnAtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWNjaW9uYS1hcnRpY3Vsby9zZWxlY2Npb25hLWFydGljdWxvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VycC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY2Npb25hLWFydGljdWxvL3NlbGVjY2lvbmEtYXJ0aWN1bG8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztJQzJCckMsa0NBQXFFO0lBQUEsWUFBdUI7SUFBQSxpQkFBUzs7O0lBQXpELGdEQUF3QjtJQUFDLGVBQXVCO0lBQXZCLDRDQUF1Qjs7O0lBeUI5Riw4QkFBaUU7SUFBQSxvQ0FBb0I7SUFBQSxpQkFBSzs7O0lBQzFGLDhCQUFpRTtJQUFBLHNCQUFNO0lBQUEsaUJBQUs7OztJQUk1RSw4QkFBZ0Y7SUFBQSxzQkFBTTtJQUFBLGlCQUFLOzs7SUFDM0YsOEJBQWdGO0lBQUEsd0JBQVE7SUFBQSxpQkFBSzs7O0lBQzdGLDhCQUFnRjtJQUFBLHdCQUFRO0lBQUEsaUJBQUs7OztJQUM3Riw4QkFBZ0Y7SUFBQSx3QkFBUTtJQUFBLGlCQUFLOzs7SUFDN0YsOEJBQWdGO0lBQUEsd0JBQVE7SUFBQSxpQkFBSzs7O0lBQzdGLDhCQUFnRjtJQUFBLGdD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QXZCLHlDQUF1QixvQkFBQTtZQXNIbkIsZUFBa0I7WUFBbEIsb0NBQWtCLGdDQUFBLG1CQUFBLG1EQUFBO1lBYWdCLGVBQTBCO1lBQTFCLCtDQUEwQjs7O3VGRHpLOUQsMkJBQTJCO2NBTHZDLFNBQVM7MkJBQ0UseUJBQXlCOzBIQU0xQixhQUFhO2tCQUFyQixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSztZQUNHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxzQkFBc0I7a0JBQTlCLEtBQUs7WUFFSSxvQkFBb0I7a0JBQTdCLE1BQU07WUFDRyxpQkFBaUI7a0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWxtYWNlbiB9IGZyb20gJy4uL2FsbWFjZW4vbW9kZWxzL0FsbWFjZW4nO1xuaW1wb3J0IHsgUGFnaW5hdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGFnaW5hdGUuc2VydmljZSc7XG5pbXBvcnQgeyBBbG1hY2VuU2VydmljZSB9IGZyb20gJy4uL2FsbWFjZW4vc2VydmljZXMvYWxtYWNlbi5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b2NrU2VydmljZSB9IGZyb20gJy4vc3RvY2suc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1zZWxlY2Npb25hLWFydGljdWxvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjY2lvbmEtYXJ0aWN1bG8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWxlY2Npb25hLWFydGljdWxvLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY2Npb25hQXJ0aWN1bG9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIGNvbmZpZ3VyYWNpb24gOiBhbnk7XG4gIEBJbnB1dCgpIHNob3dBcnRpY3Vsb3MgOiBib29sZWFuO1xuICBASW5wdXQoKSBtb3ZpbWllbnRvOiBhbnk7XG5cbiAgQElucHV0KCkgbWFuZWphVW5pZGFkU2VjdW5kYXJpYSA6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgZW1pdEZpbGFTZWxlY2Npb25hZGEgOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGVtaXRTaG93QXJ0aWN1bG9zIDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cblxuXG4gIGFsbWFjZW5MaXN0OiBBbG1hY2VuW107XG4gIGFydGljdWxvc0xpc3Q6IGFueSA9IFtdO1xuICBwYWdlOiBhbnk7XG4gIG9yZGVuYXIgPSBbXTtcbiAgYnVzcXVlZGFBcnRpY3Vsb3MgOiBhbnkgPSB7XG4gICAgdGlwb0J1c3F1ZWRhIDogJydcbiAgfTtcblxuICBzaG93TW9kYWw6Ym9vbGVhbj1mYWxzZTtcbiAgYXJ0aWN1bG9TZWxlY3RlZDphbnk7XG4gIHNob3dNb2RhbEluZm9ybWFjaW9uOmJvb2xlYW49ZmFsc2U7XG4gIHNob3dGaXJzdFRpbWU6Ym9vbGVhbj10cnVlO1xuICBjbGFzaWZpY2Fkb3JMaXN0OmFueT1bXTtcbiAgc2l6ZSA9IDY0MDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlICAgIDogU3RvY2tTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIF9wYWdpbmF0ZVNlcnZpY2UgOiBQYWdpbmF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2FsbWFjZW5TZXJ2aWNlICA6IEFsbWFjZW5TZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnBhZ2UgPSB0aGlzLl9wYWdpbmF0ZVNlcnZpY2UuZ2V0UGFnZSgpO1xuICAgIHRoaXMub3JkZW5hciA9IHRoaXMuX3BhZ2luYXRlU2VydmljZS5nZXRPcmRlbihcbiAgICAgIFtcbiAgICAgICAge3BhcmFtOiAnbm9tYnJlJywgbGFiZWw6ICdlc3RhdHVzJ31cbiAgICAgIF0sICdlcycpO1xuXG5cbiAgICB0aGlzLnNob3dGaXJzdFRpbWU9dHJ1ZTtcbiAgICB0aGlzLl9hbG1hY2VuU2VydmljZS5nZXRBbGwoIHRoaXMuY29uZmlndXJhY2lvbi5wYXJhbXMgKS5zdWJzY3JpYmUoXG4gICAgICAoZGF0YTogYW55ICkgPT4ge1xuICAgICAgICB0aGlzLmFsbWFjZW5MaXN0ID0gPEFsbWFjZW5bXT4gZGF0YS5kYXRhO1xuICAgICAgfVxuICAgICk7XG4gICAgXG4gICAgdGhpcy5idXNxdWVkYUFydGljdWxvcy50aXBvQnVzcXVlZGEgPSAnQ0QnO1xuICAgIC8vdGVtcHRoaXMub2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NTaG93KCk7XG4gIH1cblxuICBwYWdpbmEoIGUgKXtcbiAgICB0aGlzLnBhZ2Uucm93cyA9IGUucm93cztcbiAgICB0aGlzLnBhZ2Uub2Zmc2V0ID0gZS5maXJzdDtcbiAgICB0aGlzLm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCk7XG4gIH1cbiAgb2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NTaG93KCl7XG4gICAgdGhpcy5idXNxdWVkYUFydGljdWxvcy50aXBvQnVzcXVlZGEgPSAnQ0QnO1xuICAgIGlmICh0aGlzLnNob3dGaXJzdFRpbWUpe1xuICAgICAgdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcygpO1xuICAgICAgdGhpcy5zaG93Rmlyc3RUaW1lPWZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIG9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCApIHtcbiAgICB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnBhcmFtcyA9IHRoaXMuX3BhZ2luYXRlU2VydmljZS5nZXRQYXJhbXMoIHRoaXMucGFnZSApO1xuICAgIGNvbnN0IHBhcmFtZXRyb3MgPSB7XG4gICAgICBhbG1hY2VuICAgICAgICAgICAgIDogKCB0aGlzLmNvbmZpZ3VyYWNpb24ubm9PY3VwYUFsYW1hY2VuID8gbnVsbCA6IHRoaXMubW92aW1pZW50by5hbG1hY2VuICksXG4gICAgICB0aXBvUHJlY2lvICAgICAgICAgIDogdGhpcy5jb25maWd1cmFjaW9uLnRpcG9QcmVjaW8sXG4gICAgICBidXNxdWVkYUFydGljdWxvcyAgIDogdGhpcy5idXNxdWVkYUFydGljdWxvcyxcbiAgICAgIHRpcG9BcnRpY3VsbyAgICAgICAgOiB0aGlzLmNvbmZpZ3VyYWNpb24udGlwb0FydGljdWxvID8gdGhpcy5jb25maWd1cmFjaW9uLnRpcG9BcnRpY3VsbyA6IG51bGwsXG4gICAgICBudW1lcm9QcmVjaW9EZWZhdWx0IDogdGhpcy5jb25maWd1cmFjaW9uLm51bWVyb1ByZWNpb0RlZmF1bHRcbiAgICB9OyAgICAgICBcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2Uub2J0ZW5lckV4aXN0ZW5jaWFzQXJ0aWN1bG9zRGVzY3JpcGNpb24oIHBhcmFtZXRyb3MgLCB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnBhcmFtcyApLnRoZW4oXG4gICAgICAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuYXJ0aWN1bG9zTGlzdCA9IGRhdGEuYXJ0aWN1bG9zRGVzY3JpcGNpb247XG4gICAgICAgIHRoaXMucGFnZS50b3RhbCA9IGRhdGEudG90YWw7ICBcbiAgICAgICAgaWYgKGRhdGEuY2xhc2lmaWNhZG9yZXMpe1xuICAgICAgICAgIHRoaXMuY2xhc2lmaWNhZG9yTGlzdCA9IGRhdGEuY2xhc2lmaWNhZG9yZXM7XG4gICAgICAgIH0gICAgICBcbiAgICAgICAgaWYoIXRoaXMuc2hvd01vZGFsKXtcbiAgICAgICAgICB0aGlzLnNob3dNb2RhbCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApLmNhdGNoKGUgPT57XG4gICAgICB0aGlzLmFydGljdWxvc0xpc3QgPSAgW107XG4gICAgfSk7XG4gIH1cblxuICBvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1ZhbCgpe1xuICAgIGlmICggdGhpcy5idXNxdWVkYUFydGljdWxvcy50aXBvQnVzcXVlZGEgIT0gJycgJiYgIXRoaXMuYnVzcXVlZGFBcnRpY3Vsb3Mua2V5IClcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIHRoaXMub2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoKTsgXG4gIH1cbiAgb2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NLZXkoICRldmVudCApIHtcbiAgICBpZiggJGV2ZW50LmtleSA9PT0gJ0VudGVyJylcbiAgICAgIHRoaXMub2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoKTtcbiAgfVxuXG4gIGZpbGFTZWxlY2Npb25hZGEoICRldmVudCApIHtcbiAgICB0aGlzLmVtaXRGaWxhU2VsZWNjaW9uYWRhLmVtaXQoJGV2ZW50KTtcbiAgfVxuXG4gIGVtaXRpclNob3dBcnRpY3Vsb3MoKSB7XG4gICAgdGhpcy5lbWl0U2hvd0FydGljdWxvcy5lbWl0KCAwICk7XG4gIH1cblxuICBzZXJpZXNBcnRpY3VsbyhzZXJpZXMpe1xuICAgICAgY29uc29sZS5sb2coc2VyaWVzKTtcbiAgfVxuXG4gIG9uU2hvd0luZm9ybWFjaW9uKGV2ZW50QXJ0aWN1bG8pe1xuICAgIHRoaXMuYXJ0aWN1bG9TZWxlY3RlZCA9IGV2ZW50QXJ0aWN1bG87XG4gICAgdGhpcy5zaG93TW9kYWxJbmZvcm1hY2lvbiA9IHRydWU7XG4gIH1cblxuICBvbkV2ZW50SW5mb3JtYWNpb24oZXZlbnQpIHtcbiAgICB0aGlzLnNob3dNb2RhbEluZm9ybWFjaW9uID0gZXZlbnQuc3RhdHVzO1x0ICAgICAgXG4gIH1cbn1cbiIsIjwhLS1pbmljaWEgc2VsZWNjaW9uIGRlIGFydGljdWxvcy0tPlxuPCEtLSAgIChvblNob3cpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NTaG93KClcIiAtLT5cbjwhLS1cbiAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtY2VudGVyXCIgPi0tPlxuPHAtZGlhbG9nIGhlYWRlcj1cInt7ICdBcnRpY3Vsb3MnIHwgdHJhbnNsYXRlIH19XCIgWyh2aXNpYmxlKV09XCJzaG93QXJ0aWN1bG9zXCIgW21heGltaXphYmxlXT1cInRydWVcIlxuICAob25TaG93KT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zU2hvdygpXCIgKG9uSGlkZSk9XCJidXNxdWVkYUFydGljdWxvcyA9IHsgdGlwb0J1c3F1ZWRhIDogJyd9OyBlbWl0aXJTaG93QXJ0aWN1bG9zKClcIlxuICBbYmFzZVpJbmRleF09XCIxMDAwMFwiIFtibG9ja1Njcm9sbF09XCJ0cnVlXCIgW3N0eWxlXT1cInsnd2lkdGgnOiBzaXplKydweCcsICdtaW4td2lkdGgnOiAnMjAwcHgnfVwiIFttaW5ZXT1cIjcwXCI+XG4gIDxkaXYgY2xhc3M9XCJncmlkIGdyaWQtZmx1aWRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC02IGxnOmNvbC02XCI+XG4gICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDtcIj5cbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAxMTVweDtcIj5cbiAgICAgICAgICA8c2VsZWN0IHBJbnB1dFRleHQgWyhuZ01vZGVsKV09XCJidXNxdWVkYUFydGljdWxvcy50aXBvQnVzcXVlZGFcIiAoY2hhbmdlKT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zVmFsKClcIj5cbiAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJDXCI+Q29kaWdvPC9vcHRpb24+XG4gICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiRFwiPkRlc2NyaXBjaW9uPC9vcHRpb24+XG4gICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ0RcIj5Db2luY2lkZW5jaWE8L29wdGlvbj5cbiAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJDSVwiPklndWFsIGE8L29wdGlvbj5cbiAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIHN0eWxlPVwid2lkdGg6IDIwMHB4O1wiIHBJbnB1dFRleHQgWyhuZ01vZGVsKV09XCJidXNxdWVkYUFydGljdWxvcy5rZXlcIlxuICAgICAgICAgIChrZXlwcmVzcyk9XCJvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc0tleSggJGV2ZW50IClcIiBpZD1cImtleVwiPlxuICAgICAgICA8YnV0dG9uIHBCdXR0b24gdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1zZWFyY2hcIiBzdHlsZUNsYXNzPVwicC1idXR0b24tc2Vjb25kYXJ5XCJcbiAgICAgICAgICAoY2xpY2spPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoIClcIj48L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTYgbGc6Y29sLTZcIj5cbiAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O1wiPlxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEwMHB4O1wiPlxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJhbG1hY2VuXCI+QWxtYWNlbjo8L2xhYmVsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNlbGVjdCBwSW5wdXRUZXh0IHN0eWxlPVwid2lkdGg6IDIwMHB4O1wiIFsobmdNb2RlbCldPVwibW92aW1pZW50by5hbG1hY2VuXCIgZGlzYWJsZWQgaWQ9XCJhbG1hY2VuXCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zVmFsKClcIj5cbiAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhbG1hY2VuIG9mIGFsbWFjZW5MaXN0XCIgdmFsdWU9XCJ7eyBhbG1hY2VuLmlkIH19XCI+e3thbG1hY2VuLmRlc2NyaXBjaW9ufX08L29wdGlvbj5cbiAgICAgICAgPC9zZWxlY3Q+XG4gICAgICA8L2Rpdj5cblxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tXG4gICAgICA8ZGl2IGlkPVwidGFibGUtd3JhcHBlclwiPlxuICAgICAgPGRpdiBpZD1cInRhYmxlLXNjcm9sbFwiPi0tPlxuICA8IS0tIG5ldyB0YWJsZVxuICAgICAgIDxwLXRhYmxlICNkdCBbY29sdW1uc109XCJjb2xzRERcIiBbdmFsdWVdPVwibGlzdEREXCIgW3Njcm9sbGFibGVdPVwidHJ1ZVwiIFxuICAgICAgIFtzdHlsZV09XCJ7d2lkdGg6ICcxMDAlJ30gXCIgW3Njcm9sbEhlaWdodF09XCJtYXhIICsgJ3B4J1wiIFxuICAgICAgIFtyZXNpemFibGVDb2x1bW5zXT1cInRydWVcIiBbKHNlbGVjdGlvbildPVwic2VsZWN0ZWRYTUxcIiAob25Sb3dTZWxlY3QpPVwib25Sb3dTZWxlY3QoJGV2ZW50KVwiIGRhdGFLZXk9XCJ1dWlkXCI+XG5cbiAgICAgICBcbiAgICAgIC0tPlxuXG4gIDxwLXRhYmxlIFt2YWx1ZV09XCJhcnRpY3Vsb3NMaXN0XCIgW3Njcm9sbGFibGVdPVwidHJ1ZVwiICNkdCBzY3JvbGxIZWlnaHQ9XCI0MDBweFwiIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIiBcbiAgICBzZWxlY3Rpb25Nb2RlPVwic2luZ2xlXCIgKG9uUm93U2VsZWN0KT1cImZpbGFTZWxlY2Npb25hZGEoJGV2ZW50KVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgIDx0cj5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiB0cmFuc2xhdGU+Q8OzZGlnbyBVYmljYWNpb248L3RoPlxuICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNzBweFwiIHRyYW5zbGF0ZT5FeGlzdGVuY2lhPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiB0cmFuc2xhdGU+VW5pZGFkPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDUwcHhcIiAqbmdJZj1cIm1hbmVqYVVuaWRhZFNlY3VuZGFyaWFcIiB0cmFuc2xhdGU+ZXhpc3RlbmNpYVNlY3VuZGFyaWE8L3RoPlxuICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNDBweFwiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiIHRyYW5zbGF0ZT5VbmlkYWQ8L3RoPlxuICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogODBweFwiIHRyYW5zbGF0ZT5Dw7NkaWdvPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDEyMHB4XCIgdHJhbnNsYXRlPkRlc2NyaXBjaW9uPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiB0cmFuc2xhdGU+PC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJyBcIiB0cmFuc2xhdGU+UHJlY2lvPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJyBcIiB0cmFuc2xhdGU+UHJlY2lvIDI8L3RoPlxuICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogODBweFwiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvICE9PSAnY29zdG8nIFwiIHRyYW5zbGF0ZT5QcmVjaW8gMzwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyA0PC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJyBcIiB0cmFuc2xhdGU+UHJlY2lvIDU8L3RoPlxuICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNDBweFwiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvID09PSAnY29zdG8nIFwiIHRyYW5zbGF0ZT5Nb3ZpbWllbnRvLmNvc3RvPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiB0cmFuc2xhdGU+RXhpc3RlbmNpYSBwb3IgVW5pZGFkPC90aD5cbiAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNsYXNpZmljYWRvckxpc3RcIiBzdHlsZT1cIndpZHRoOiA4MHB4XCIgdHJhbnNsYXRlPnt7aXRlbS5kZXNjcmlwY2lvbn19PC90aD5cbiAgICAgIDwvdHI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1yb3dEYXRhIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XG4gICAgICA8dHIgW3BTZWxlY3RhYmxlUm93XT1cInJvd0RhdGFcIj5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCIhcm93RGF0YS51YmljYWNpb25Db2RpZ29cIiB0cmFuc2xhdGU+TW92aW1pZW50by5Ob0FzaWduYWRvPC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJyb3dEYXRhLnViaWNhY2lvbkNvZGlnb1wiPnt7cm93RGF0YS51YmljYWNpb25Db2RpZ299fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA3MHB4O1wiPnt7cm93RGF0YS5leGlzdGVuY2lhfX08L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNDBweDtcIj57e3Jvd0RhdGEudW5pZGFkQ29kaWdvfX08L3RkPlxuXG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA1MHB4O1wiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiPnt7cm93RGF0YS5leGlzdGVuY2lhU2VjdW5kYXJpYX19PC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCIgKm5nSWY9XCJtYW5lamFVbmlkYWRTZWN1bmRhcmlhXCI+e3tyb3dEYXRhLnVuaWRhZFNlY3VuZGFyaWFDb2RpZ299fTwvdGQ+XG5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCI+e3tyb3dEYXRhLmFydGljdWxvLmNvZGlnb319PC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDEyMHB4O1wiPnt7cm93RGF0YS5hcnRpY3Vsby5kZXNjcmlwY2lvbn19PC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCI+XG4gICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktZXllXCIgY2xhc3M9XCJ1aS1idXR0b24tcmFpc2VkIHVpLWJ1dHRvbi1wcmltYXJ5XCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNob3dJbmZvcm1hY2lvbihyb3dEYXRhKVwiPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogODBweDtcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJ1wiPnt7cm93RGF0YS5wcmVjaW9Db25JbXB1ZXN0b3MgfCBjdXJyZW5jeSB9fVxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogODBweDtcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJ1wiPnt7cm93RGF0YS5wcmVjaW8yQ29uSW1wdWVzdG9zIHwgY3VycmVuY3lcbiAgICAgICAgICB9fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvICE9PSAnY29zdG8nXCI+e3tyb3dEYXRhLnByZWNpbzNDb25JbXB1ZXN0b3MgfCBjdXJyZW5jeVxuICAgICAgICAgIH19PC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvNENvbkltcHVlc3RvcyB8IGN1cnJlbmN5XG4gICAgICAgICAgfX08L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogODBweDtcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJ1wiPnt7cm93RGF0YS5wcmVjaW81Q29uSW1wdWVzdG9zIHwgY3VycmVuY3lcbiAgICAgICAgICB9fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MHB4O1wiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvID09PSAnY29zdG8nIFwiPnt7cm93RGF0YS5wcmVjaW8gfCBjdXJyZW5jeSB9fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MHB4O1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3dEYXRhLmV4aXN0ZW5jaWFVbmlkYWRlc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy00XCI+PGxhYmVsIGZvcj1cIlwiPnt7aXRlbS51bmlkYWRfY29kaWdvfX08L2xhYmVsPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy00XCI+PGxhYmVsIGZvcj1cIlwiPnt7aXRlbS51bmlkYWRfZXhpc3RlbmNpYSB8IG51bWJlciA6ICcxLjItMid9fTwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPCEtLSA8dGQgc3R5bGU9XCJ3aWR0aDogNDBweDtcIj48L3RkPiAgIC0tPlxuICAgICAgICA8dGQgKm5nRm9yPVwibGV0IGl0ZW1EYXRhIG9mIHJvd0RhdGEuYXJ0aWN1bG9DbGFzaWZpY2Fkb3JMaXN0XCIgc3R5bGU9XCJ3aWR0aDogODBweDtcIj57e2l0ZW1EYXRhLnZhbG9yfX08L3RkPlxuICAgICAgPC90cj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L3AtdGFibGU+XG5cbiAgPCEtLSAvbmV3IHRhYmxlLS0+XG4gIDwhLS0gXG4gICAgICA8cC10YWJsZSBbKHZhbHVlKV09XCJhcnRpY3Vsb3NMaXN0XCIgcmVzcG9uc2l2ZT1cInRydWVcIiBcbiAgICAgICAgICAgICAgICAgICBzZWxlY3Rpb25Nb2RlPVwibXVsdGlwbGVcIiAob25Sb3dTZWxlY3QpPVwiZmlsYVNlbGVjY2lvbmFkYSgkZXZlbnQpXCIgIFtzY3JvbGxhYmxlXT1cInRydWVcIiBzY3JvbGxIZWlnaHQ9XCIzNTBweFwiID5cblxuICAgICAgICA8cC1jb2x1bW4gIGhlYWRlcj1cInt7ICdDb2RpZ28gdWJpY2FjaW9uJy50b1N0cmluZygpIHwgdHJhbnNsYXRlfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWRhdG89XCJyb3dEYXRhXCIgcFRlbXBsYXRlPVwiYm9keVwiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiICpuZ0lmPVwiIWRhdG8udWJpY2FjaW9uQ29kaWdvXCIgIHRyYW5zbGF0ZT4gTW92aW1pZW50by5Ob0FzaWduYWRvIDwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCIgKm5nSWY9XCJkYXRvLnViaWNhY2lvbkNvZGlnb1wiID4ge3sgZGF0by51YmljYWNpb25Db2RpZ28gfX08L2xhYmVsPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1jb2x1bW4+XG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cInViaWNhY2lvbkNvZGlnb1wiIGhlYWRlcj1cInt7ICdEZXNjcmlwY2lvbiB1YmljYWNpb24nLnRvU3RyaW5nKCkgfCB0cmFuc2xhdGV9fVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtZGF0bz1cInJvd0RhdGFcIiBwVGVtcGxhdGU9XCJib2R5XCI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCIgKm5nSWY9XCIhZGF0by51YmljYWNpb25Db2RpZ29cIiAgdHJhbnNsYXRlPiBNb3ZpbWllbnRvLk5vQXNpZ25hZG8gPC9sYWJlbD5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIiAqbmdJZj1cImRhdG8udWJpY2FjaW9uQ29kaWdvXCIgPiB7eyBkYXRvLnViaWNhY2lvbkNvZGlnbyB9fTwvbGFiZWw+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWNvbHVtbj5cblxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJleGlzdGVuY2lhXCIgaGVhZGVyPVwie3snRXhpc3RlbmNpYScgfCB0cmFuc2xhdGV9fVwiPjwvcC1jb2x1bW4+XG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cInVuaWRhZENvZGlnb1wiIGhlYWRlcj1cInt7J1VuaWRhZCcgfCB0cmFuc2xhdGV9fVwiPjwvcC1jb2x1bW4+XG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cInVuaWRhZERlc2NyaXBjaW9uXCIgaGVhZGVyPVwie3snRGVzY3JpcGNpb24gdW5pZGFkJyB8IHRyYW5zbGF0ZX19XCI+PC9wLWNvbHVtbj5cblxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJleGlzdGVuY2lhU2VjdW5kYXJpYVwiIGhlYWRlcj1cInt7J2V4aXN0ZW5jaWFTZWN1bmRhcmlhJyB8IHRyYW5zbGF0ZX19XCIgKm5nSWY9XCJtYW5lamFVbmlkYWRTZWN1bmRhcmlhXCI+PC9wLWNvbHVtbj5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwidW5pZGFkU2VjdW5kYXJpYUNvZGlnb1wiIGhlYWRlcj1cInt7J1VuaWRhZCcgfCB0cmFuc2xhdGV9fVwiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiPjwvcC1jb2x1bW4+XG4gICAgICAgIFxuXG4gICAgICAgIDxwLWNvbHVtbiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJyBcIiAgaGVhZGVyPVwie3snTW92aW1pZW50by5tb3ZpbWllbnRvRGV0YWxsZS5wcmVjaW8nIHwgdHJhbnNsYXRlfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWRhdG89XCJyb3dEYXRhXCIgcFRlbXBsYXRlPVwiYm9keVwiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiPnt7IGRhdG8ucHJlY2lvQ29uSW1wdWVzdG9zIHwgY3VycmVuY3kgfX08L2xhYmVsPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1jb2x1bW4+XG4gICAgICAgIDxwLWNvbHVtbiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyA9PT0gJ2Nvc3RvJyBcIiBoZWFkZXI9XCJ7eydNb3ZpbWllbnRvLmNvc3RvJyB8IHRyYW5zbGF0ZSB9fVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtZGF0bz1cInJvd0RhdGFcIiBwVGVtcGxhdGU9XCJib2R5XCI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+e3sgZGF0by5wcmVjaW8gfCBjdXJyZW5jeSB9fTwvbGFiZWw+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWNvbHVtbj5cblxuXG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cImFydGljdWxvLmNvZGlnb1wiIGhlYWRlcj1cInt7J0NvZGlnbyBhcnRpY3VsbycgfCB0cmFuc2xhdGV9fVwiPjwvcC1jb2x1bW4+XG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cImFydGljdWxvLmRlc2NyaXBjaW9uXCIgaGVhZGVyPVwie3snRGVzY3JpcGNpb24nIHwgdHJhbnNsYXRlfX1cIj48L3AtY29sdW1uPlxuXG5cblxuICAgICAgICA8cC1jb2x1bW4gIGhlYWRlcj1cInt7J0V4aXN0ZW5jaWFQb3JVbmlkYWQnIHwgdHJhbnNsYXRlIH19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1kYXRvPVwicm93RGF0YVwiIHBUZW1wbGF0ZT1cImJvZHlcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRvLmV4aXN0ZW5jaWFVbmlkYWRlc1wiID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy00XCI+PGxhYmVsIGZvcj1cIlwiPnt7aXRlbS51bmlkYWRfY29kaWdvfX08L2xhYmVsPjwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTRcIj48bGFiZWwgZm9yPVwiXCI+e3tpdGVtLnVuaWRhZF9leGlzdGVuY2lhIHwgbnVtYmVyIDogJzEuMi0yJ319PC9sYWJlbD5cbiAgICAgICAgICAgICAgPC9kaXY+ICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+ICBcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtY29sdW1uPlxuICAgICAgICBcbiAgICAgIDwvcC10YWJsZT5cbiAgICAgIC0tPlxuICA8cC1wYWdpbmF0b3IgW3Jvd3NdPVwicGFnZS5yb3dzXCIgW3RvdGFsUmVjb3Jkc109XCJwYWdlLnRvdGFsXCIgW3BhZ2VMaW5rU2l6ZV09XCI1XCIgKG9uUGFnZUNoYW5nZSk9XCJwYWdpbmEoJGV2ZW50KVwiXG4gICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJbMTAsMjUsNTAsMTAwLDUwMF1cIj48L3AtcGFnaW5hdG9yPlxuICA8IS0tICBcbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICAtLT5cbjwvcC1kaWFsb2c+XG48IS0tXG4gIDwvZGl2PiBcbiAgICAgIC0tPlxuPCEtLXRlcm1pbmEgc2VsZWNjaW9uIGRlIGFydGljdWxvcy0tPlxuPCEtLXNlbGVjY2lvbmEgdWJpY2FjaW9uIC0tPlxuPGxpYi1zZWxlY2Npb24tYXJ0aWN1bG8taW5mb3JtYWNpb24gW3Nob3dNb2RhbF09XCJzaG93TW9kYWxJbmZvcm1hY2lvblwiIFthcnRpY3Vsb109XCJhcnRpY3Vsb1NlbGVjdGVkXCJcbiAgKGV2ZW50U2VsZWN0aW9uKT1cIm9uRXZlbnRJbmZvcm1hY2lvbigkZXZlbnQpXCIgKm5nSWY9XCJzaG93TW9kYWxJbmZvcm1hY2lvblwiPlxuPC9saWItc2VsZWNjaW9uLWFydGljdWxvLWluZm9ybWFjaW9uPiJdfQ==
485
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SeleccionaArticuloComponent, { className: "SeleccionaArticuloComponent" }); })();
486
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcnAtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWNjaW9uYS1hcnRpY3Vsby9zZWxlY2Npb25hLWFydGljdWxvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VycC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY2Npb25hLWFydGljdWxvL3NlbGVjY2lvbmEtYXJ0aWN1bG8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDMkJyQyxrQ0FBcUU7SUFBQSxZQUF1QjtJQUFBLGlCQUFTOzs7SUFBekQsZ0RBQXdCO0lBQUMsY0FBdUI7SUFBdkIsNENBQXVCOzs7SUF5QjlGLDhCQUFpRTtJQUFBLG9DQUFvQjtJQUFBLGlCQUFLOzs7SUFDMUYsOEJBQWlFO0lBQUEsc0JBQU07SUFBQSxpQkFBSzs7O0lBSTVFLDhCQUFnRjtJQUFBLHNCQUFNO0lBQUEsaUJBQUs7OztJQUMzRiw4QkFBZ0Y7SUFBQSx3QkFBUTtJQUFBLGlCQUFLOzs7SUFDN0YsOEJBQWdGO0lBQUEsd0JBQVE7SUFBQSxpQkFBSzs7O0lBQzdGLDhCQUFnRjtJQUFBLHdCQUFRO0lBQUEsaUJBQUs7OztJQUM3Riw4QkFBZ0Y7SUFBQSx3QkFBUTtJQUFBLGlCQUFLOzs7SUFDN0YsOEJBQWdGO0lBQUEs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LDZJQUM2RTs7WUE5S2pDLDJEQUFvRDtZQUZ0RixzRUFBc0M7WUFBQyxpREFBMkI7WUFFcUIsQUFBMUUsQUFBckIsQUFGMkUsa0NBQW9CLHFCQUUzRSxxQkFBcUIsWUFBaUU7WUFLL0UsZUFBNEM7WUFBNUMsa0VBQTRDO1lBT2IsZUFBbUM7WUFBbkMseURBQW1DO1lBVzlDLGVBQWdDO1lBQWhDLHNEQUFnQztZQUUzQyxjQUFjO1lBQWQseUNBQWM7WUFrQnpDLGNBQXVCO1lBQUMsQUFBeEIseUNBQXVCLG9CQUFvQjtZQXNIdkMsZUFBa0I7WUFDN0IsQUFEMEQsQUFBNUIsQUFBbkIsb0NBQWtCLGdDQUE0QixtQkFBbUIsbURBQ25DO1lBWUksY0FBMEI7WUFBMUIsK0NBQTBCOzs7aUZEeks5RCwyQkFBMkI7Y0FMdkMsU0FBUzsyQkFDRSx5QkFBeUI7d0dBTTFCLGFBQWE7a0JBQXJCLEtBQUs7WUFDRyxhQUFhO2tCQUFyQixLQUFLO1lBQ0csVUFBVTtrQkFBbEIsS0FBSztZQUVHLHNCQUFzQjtrQkFBOUIsS0FBSztZQUVJLG9CQUFvQjtrQkFBN0IsTUFBTTtZQUNHLGlCQUFpQjtrQkFBMUIsTUFBTTs7a0ZBVEksMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFsbWFjZW4gfSBmcm9tICcuLi9hbG1hY2VuL21vZGVscy9BbG1hY2VuJztcbmltcG9ydCB7IFBhZ2luYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BhZ2luYXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWxtYWNlblNlcnZpY2UgfSBmcm9tICcuLi9hbG1hY2VuL3NlcnZpY2VzL2FsbWFjZW4uc2VydmljZSc7XG5pbXBvcnQgeyBTdG9ja1NlcnZpY2UgfSBmcm9tICcuL3N0b2NrLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc2VsZWNjaW9uYS1hcnRpY3VsbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY2Npb25hLWFydGljdWxvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWNjaW9uYUFydGljdWxvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBjb25maWd1cmFjaW9uIDogYW55O1xuICBASW5wdXQoKSBzaG93QXJ0aWN1bG9zIDogYm9vbGVhbjtcbiAgQElucHV0KCkgbW92aW1pZW50bzogYW55O1xuXG4gIEBJbnB1dCgpIG1hbmVqYVVuaWRhZFNlY3VuZGFyaWEgOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGVtaXRGaWxhU2VsZWNjaW9uYWRhIDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBlbWl0U2hvd0FydGljdWxvcyA6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG5cblxuICBhbG1hY2VuTGlzdDogQWxtYWNlbltdO1xuICBhcnRpY3Vsb3NMaXN0OiBhbnkgPSBbXTtcbiAgcGFnZTogYW55O1xuICBvcmRlbmFyID0gW107XG4gIGJ1c3F1ZWRhQXJ0aWN1bG9zIDogYW55ID0ge1xuICAgIHRpcG9CdXNxdWVkYSA6ICcnXG4gIH07XG5cbiAgc2hvd01vZGFsOmJvb2xlYW49ZmFsc2U7XG4gIGFydGljdWxvU2VsZWN0ZWQ6YW55O1xuICBzaG93TW9kYWxJbmZvcm1hY2lvbjpib29sZWFuPWZhbHNlO1xuICBzaG93Rmlyc3RUaW1lOmJvb2xlYW49dHJ1ZTtcbiAgY2xhc2lmaWNhZG9yTGlzdDphbnk9W107XG4gIHNpemUgPSA2NDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICAgICAgICAgIHByaXZhdGUgX3N0b2NrU2VydmljZSAgICA6IFN0b2NrU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfcGFnaW5hdGVTZXJ2aWNlIDogUGFnaW5hdGVTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIF9hbG1hY2VuU2VydmljZSAgOiBBbG1hY2VuU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wYWdlID0gdGhpcy5fcGFnaW5hdGVTZXJ2aWNlLmdldFBhZ2UoKTtcbiAgICB0aGlzLm9yZGVuYXIgPSB0aGlzLl9wYWdpbmF0ZVNlcnZpY2UuZ2V0T3JkZW4oXG4gICAgICBbXG4gICAgICAgIHtwYXJhbTogJ25vbWJyZScsIGxhYmVsOiAnZXN0YXR1cyd9XG4gICAgICBdLCAnZXMnKTtcblxuXG4gICAgdGhpcy5zaG93Rmlyc3RUaW1lPXRydWU7XG4gICAgdGhpcy5fYWxtYWNlblNlcnZpY2UuZ2V0QWxsKCB0aGlzLmNvbmZpZ3VyYWNpb24ucGFyYW1zICkuc3Vic2NyaWJlKFxuICAgICAgKGRhdGE6IGFueSApID0+IHtcbiAgICAgICAgdGhpcy5hbG1hY2VuTGlzdCA9IDxBbG1hY2VuW10+IGRhdGEuZGF0YTtcbiAgICAgIH1cbiAgICApO1xuICAgIFxuICAgIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MudGlwb0J1c3F1ZWRhID0gJ0NEJztcbiAgICAvL3RlbXB0aGlzLm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zU2hvdygpO1xuICB9XG5cbiAgcGFnaW5hKCBlICl7XG4gICAgdGhpcy5wYWdlLnJvd3MgPSBlLnJvd3M7XG4gICAgdGhpcy5wYWdlLm9mZnNldCA9IGUuZmlyc3Q7XG4gICAgdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcygpO1xuICB9XG4gIG9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zU2hvdygpe1xuICAgIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MudGlwb0J1c3F1ZWRhID0gJ0NEJztcbiAgICBpZiAodGhpcy5zaG93Rmlyc3RUaW1lKXtcbiAgICAgIHRoaXMub2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoKTtcbiAgICAgIHRoaXMuc2hvd0ZpcnN0VGltZT1mYWxzZTtcbiAgICB9XG4gIH1cblxuICBvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcyggKSB7XG4gICAgdGhpcy5idXNxdWVkYUFydGljdWxvcy5wYXJhbXMgPSB0aGlzLl9wYWdpbmF0ZVNlcnZpY2UuZ2V0UGFyYW1zKCB0aGlzLnBhZ2UgKTtcbiAgICBjb25zdCBwYXJhbWV0cm9zID0ge1xuICAgICAgYWxtYWNlbiAgICAgICAgICAgICA6ICggdGhpcy5jb25maWd1cmFjaW9uLm5vT2N1cGFBbGFtYWNlbiA/IG51bGwgOiB0aGlzLm1vdmltaWVudG8uYWxtYWNlbiApLFxuICAgICAgdGlwb1ByZWNpbyAgICAgICAgICA6IHRoaXMuY29uZmlndXJhY2lvbi50aXBvUHJlY2lvLFxuICAgICAgYnVzcXVlZGFBcnRpY3Vsb3MgICA6IHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MsXG4gICAgICB0aXBvQXJ0aWN1bG8gICAgICAgIDogdGhpcy5jb25maWd1cmFjaW9uLnRpcG9BcnRpY3VsbyA/IHRoaXMuY29uZmlndXJhY2lvbi50aXBvQXJ0aWN1bG8gOiBudWxsLFxuICAgICAgbnVtZXJvUHJlY2lvRGVmYXVsdCA6IHRoaXMuY29uZmlndXJhY2lvbi5udW1lcm9QcmVjaW9EZWZhdWx0XG4gICAgfTsgICAgICAgXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLm9idGVuZXJFeGlzdGVuY2lhc0FydGljdWxvc0Rlc2NyaXBjaW9uKCBwYXJhbWV0cm9zICwgdGhpcy5idXNxdWVkYUFydGljdWxvcy5wYXJhbXMgKS50aGVuKFxuICAgICAgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmFydGljdWxvc0xpc3QgPSBkYXRhLmFydGljdWxvc0Rlc2NyaXBjaW9uO1xuICAgICAgICB0aGlzLnBhZ2UudG90YWwgPSBkYXRhLnRvdGFsOyAgXG4gICAgICAgIGlmIChkYXRhLmNsYXNpZmljYWRvcmVzKXtcbiAgICAgICAgICB0aGlzLmNsYXNpZmljYWRvckxpc3QgPSBkYXRhLmNsYXNpZmljYWRvcmVzO1xuICAgICAgICB9ICAgICAgXG4gICAgICAgIGlmKCF0aGlzLnNob3dNb2RhbCl7XG4gICAgICAgICAgdGhpcy5zaG93TW9kYWwgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgKS5jYXRjaChlID0+e1xuICAgICAgdGhpcy5hcnRpY3Vsb3NMaXN0ID0gIFtdO1xuICAgIH0pO1xuICB9XG5cbiAgb2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NWYWwoKXtcbiAgICBpZiAoIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MudGlwb0J1c3F1ZWRhICE9ICcnICYmICF0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLmtleSApXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB0aGlzLm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCk7IFxuICB9XG4gIG9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zS2V5KCAkZXZlbnQgKSB7XG4gICAgaWYoICRldmVudC5rZXkgPT09ICdFbnRlcicpXG4gICAgICB0aGlzLm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCk7XG4gIH1cblxuICBmaWxhU2VsZWNjaW9uYWRhKCAkZXZlbnQgKSB7XG4gICAgdGhpcy5lbWl0RmlsYVNlbGVjY2lvbmFkYS5lbWl0KCRldmVudCk7XG4gIH1cblxuICBlbWl0aXJTaG93QXJ0aWN1bG9zKCkge1xuICAgIHRoaXMuZW1pdFNob3dBcnRpY3Vsb3MuZW1pdCggMCApO1xuICB9XG5cbiAgc2VyaWVzQXJ0aWN1bG8oc2VyaWVzKXtcbiAgICAgIGNvbnNvbGUubG9nKHNlcmllcyk7XG4gIH1cblxuICBvblNob3dJbmZvcm1hY2lvbihldmVudEFydGljdWxvKXtcbiAgICB0aGlzLmFydGljdWxvU2VsZWN0ZWQgPSBldmVudEFydGljdWxvO1xuICAgIHRoaXMuc2hvd01vZGFsSW5mb3JtYWNpb24gPSB0cnVlO1xuICB9XG5cbiAgb25FdmVudEluZm9ybWFjaW9uKGV2ZW50KSB7XG4gICAgdGhpcy5zaG93TW9kYWxJbmZvcm1hY2lvbiA9IGV2ZW50LnN0YXR1cztcdCAgICAgIFxuICB9XG59XG4iLCI8IS0taW5pY2lhIHNlbGVjY2lvbiBkZSBhcnRpY3Vsb3MtLT5cbjwhLS0gICAob25TaG93KT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zU2hvdygpXCIgLS0+XG48IS0tXG4gIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLWNlbnRlclwiID4tLT5cbjxwLWRpYWxvZyBoZWFkZXI9XCJ7eyAnQXJ0aWN1bG9zJyB8IHRyYW5zbGF0ZSB9fVwiIFsodmlzaWJsZSldPVwic2hvd0FydGljdWxvc1wiIFttYXhpbWl6YWJsZV09XCJ0cnVlXCJcbiAgKG9uU2hvdyk9XCJvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1Nob3coKVwiIChvbkhpZGUpPVwiYnVzcXVlZGFBcnRpY3Vsb3MgPSB7IHRpcG9CdXNxdWVkYSA6ICcnfTsgZW1pdGlyU2hvd0FydGljdWxvcygpXCJcbiAgW2Jhc2VaSW5kZXhdPVwiMTAwMDBcIiBbYmxvY2tTY3JvbGxdPVwidHJ1ZVwiIFtzdHlsZV09XCJ7J3dpZHRoJzogc2l6ZSsncHgnLCAnbWluLXdpZHRoJzogJzIwMHB4J31cIiBbbWluWV09XCI3MFwiPlxuICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLWZsdWlkXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtNiBsZzpjb2wtNlwiPlxuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7XCI+XG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMTE1cHg7XCI+XG4gICAgICAgICAgPHNlbGVjdCBwSW5wdXRUZXh0IFsobmdNb2RlbCldPVwiYnVzcXVlZGFBcnRpY3Vsb3MudGlwb0J1c3F1ZWRhXCIgKGNoYW5nZSk9XCJvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1ZhbCgpXCI+XG4gICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ1wiPkNvZGlnbzwvb3B0aW9uPlxuICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkRcIj5EZXNjcmlwY2lvbjwvb3B0aW9uPlxuICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkNEXCI+Q29pbmNpZGVuY2lhPC9vcHRpb24+XG4gICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ0lcIj5JZ3VhbCBhPC9vcHRpb24+XG4gICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBzdHlsZT1cIndpZHRoOiAyMDBweDtcIiBwSW5wdXRUZXh0IFsobmdNb2RlbCldPVwiYnVzcXVlZGFBcnRpY3Vsb3Mua2V5XCJcbiAgICAgICAgICAoa2V5cHJlc3MpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NLZXkoICRldmVudCApXCIgaWQ9XCJrZXlcIj5cbiAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktc2VhcmNoXCIgc3R5bGVDbGFzcz1cInAtYnV0dG9uLXNlY29uZGFyeVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCApXCI+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC02IGxnOmNvbC02XCI+XG4gICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDtcIj5cbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAxMDBweDtcIj5cbiAgICAgICAgICA8bGFiZWwgZm9yPVwiYWxtYWNlblwiPkFsbWFjZW46PC9sYWJlbD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzZWxlY3QgcElucHV0VGV4dCBzdHlsZT1cIndpZHRoOiAyMDBweDtcIiBbKG5nTW9kZWwpXT1cIm1vdmltaWVudG8uYWxtYWNlblwiIGRpc2FibGVkIGlkPVwiYWxtYWNlblwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1ZhbCgpXCI+XG4gICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgYWxtYWNlbiBvZiBhbG1hY2VuTGlzdFwiIHZhbHVlPVwie3sgYWxtYWNlbi5pZCB9fVwiPnt7YWxtYWNlbi5kZXNjcmlwY2lvbn19PC9vcHRpb24+XG4gICAgICAgIDwvc2VsZWN0PlxuICAgICAgPC9kaXY+XG5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPCEtLVxuICAgICAgPGRpdiBpZD1cInRhYmxlLXdyYXBwZXJcIj5cbiAgICAgIDxkaXYgaWQ9XCJ0YWJsZS1zY3JvbGxcIj4tLT5cbiAgPCEtLSBuZXcgdGFibGVcbiAgICAgICA8cC10YWJsZSAjZHQgW2NvbHVtbnNdPVwiY29sc0REXCIgW3ZhbHVlXT1cImxpc3RERFwiIFtzY3JvbGxhYmxlXT1cInRydWVcIiBcbiAgICAgICBbc3R5bGVdPVwie3dpZHRoOiAnMTAwJSd9IFwiIFtzY3JvbGxIZWlnaHRdPVwibWF4SCArICdweCdcIiBcbiAgICAgICBbcmVzaXphYmxlQ29sdW1uc109XCJ0cnVlXCIgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkWE1MXCIgKG9uUm93U2VsZWN0KT1cIm9uUm93U2VsZWN0KCRldmVudClcIiBkYXRhS2V5PVwidXVpZFwiPlxuXG4gICAgICAgXG4gICAgICAtLT5cblxuICA8cC10YWJsZSBbdmFsdWVdPVwiYXJ0aWN1bG9zTGlzdFwiIFtzY3JvbGxhYmxlXT1cInRydWVcIiAjZHQgc2Nyb2xsSGVpZ2h0PVwiNDAwcHhcIiByZXNwb25zaXZlTGF5b3V0PVwic2Nyb2xsXCIgXG4gICAgc2VsZWN0aW9uTW9kZT1cInNpbmdsZVwiIChvblJvd1NlbGVjdCk9XCJmaWxhU2VsZWNjaW9uYWRhKCRldmVudClcIj5cbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICA8dHI+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgdHJhbnNsYXRlPkPDs2RpZ28gVWJpY2FjaW9uPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDcwcHhcIiB0cmFuc2xhdGU+RXhpc3RlbmNpYTwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MHB4XCIgdHJhbnNsYXRlPlVuaWRhZDwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA1MHB4XCIgKm5nSWY9XCJtYW5lamFVbmlkYWRTZWN1bmRhcmlhXCIgdHJhbnNsYXRlPmV4aXN0ZW5jaWFTZWN1bmRhcmlhPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiAqbmdJZj1cIm1hbmVqYVVuaWRhZFNlY3VuZGFyaWFcIiB0cmFuc2xhdGU+VW5pZGFkPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiB0cmFuc2xhdGU+Q8OzZGlnbzwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiAxMjBweFwiIHRyYW5zbGF0ZT5EZXNjcmlwY2lvbjwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MHB4XCIgdHJhbnNsYXRlPjwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbzwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyAyPC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJyBcIiB0cmFuc2xhdGU+UHJlY2lvIDM8L3RoPlxuICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogODBweFwiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvICE9PSAnY29zdG8nIFwiIHRyYW5zbGF0ZT5QcmVjaW8gNDwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyA1PC90aD5cbiAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyA9PT0gJ2Nvc3RvJyBcIiB0cmFuc2xhdGU+TW92aW1pZW50by5jb3N0bzwvdGg+XG4gICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MHB4XCIgdHJhbnNsYXRlPkV4aXN0ZW5jaWEgcG9yIFVuaWRhZDwvdGg+XG4gICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjbGFzaWZpY2Fkb3JMaXN0XCIgc3R5bGU9XCJ3aWR0aDogODBweFwiIHRyYW5zbGF0ZT57e2l0ZW0uZGVzY3JpcGNpb259fTwvdGg+XG4gICAgICA8L3RyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm93RGF0YSBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxuICAgICAgPHRyIFtwU2VsZWN0YWJsZVJvd109XCJyb3dEYXRhXCI+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiICpuZ0lmPVwiIXJvd0RhdGEudWJpY2FjaW9uQ29kaWdvXCIgdHJhbnNsYXRlPk1vdmltaWVudG8uTm9Bc2lnbmFkbzwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiICpuZ0lmPVwicm93RGF0YS51YmljYWNpb25Db2RpZ29cIj57e3Jvd0RhdGEudWJpY2FjaW9uQ29kaWdvfX08L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNzBweDtcIj57e3Jvd0RhdGEuZXhpc3RlbmNpYX19PC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCI+e3tyb3dEYXRhLnVuaWRhZENvZGlnb319PC90ZD5cblxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNTBweDtcIiAqbmdJZj1cIm1hbmVqYVVuaWRhZFNlY3VuZGFyaWFcIj57e3Jvd0RhdGEuZXhpc3RlbmNpYVNlY3VuZGFyaWF9fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MHB4O1wiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiPnt7cm93RGF0YS51bmlkYWRTZWN1bmRhcmlhQ29kaWdvfX08L3RkPlxuXG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiPnt7cm93RGF0YS5hcnRpY3Vsby5jb2RpZ299fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiAxMjBweDtcIj57e3Jvd0RhdGEuYXJ0aWN1bG8uZGVzY3JpcGNpb259fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MHB4O1wiPlxuICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLWV5ZVwiIGNsYXNzPVwidWktYnV0dG9uLXJhaXNlZCB1aS1idXR0b24tcHJpbWFyeVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TaG93SW5mb3JtYWNpb24ocm93RGF0YSlcIj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvQ29uSW1wdWVzdG9zIHwgY3VycmVuY3kgfX1cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvMkNvbkltcHVlc3RvcyB8IGN1cnJlbmN5XG4gICAgICAgICAgfX08L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogODBweDtcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJ1wiPnt7cm93RGF0YS5wcmVjaW8zQ29uSW1wdWVzdG9zIHwgY3VycmVuY3lcbiAgICAgICAgICB9fTwvdGQ+XG4gICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvICE9PSAnY29zdG8nXCI+e3tyb3dEYXRhLnByZWNpbzRDb25JbXB1ZXN0b3MgfCBjdXJyZW5jeVxuICAgICAgICAgIH19PC90ZD5cbiAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvNUNvbkltcHVlc3RvcyB8IGN1cnJlbmN5XG4gICAgICAgICAgfX08L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNDBweDtcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyA9PT0gJ2Nvc3RvJyBcIj57e3Jvd0RhdGEucHJlY2lvIHwgY3VycmVuY3kgfX08L3RkPlxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNDBweDtcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygcm93RGF0YS5leGlzdGVuY2lhVW5pZGFkZXNcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNFwiPjxsYWJlbCBmb3I9XCJcIj57e2l0ZW0udW5pZGFkX2NvZGlnb319PC9sYWJlbD48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNFwiPjxsYWJlbCBmb3I9XCJcIj57e2l0ZW0udW5pZGFkX2V4aXN0ZW5jaWEgfCBudW1iZXIgOiAnMS4yLTInfX08L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDwhLS0gPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCI+PC90ZD4gICAtLT5cbiAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBpdGVtRGF0YSBvZiByb3dEYXRhLmFydGljdWxvQ2xhc2lmaWNhZG9yTGlzdFwiIHN0eWxlPVwid2lkdGg6IDgwcHg7XCI+e3tpdGVtRGF0YS52YWxvcn19PC90ZD5cbiAgICAgIDwvdHI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9wLXRhYmxlPlxuXG4gIDwhLS0gL25ldyB0YWJsZS0tPlxuICA8IS0tIFxuICAgICAgPHAtdGFibGUgWyh2YWx1ZSldPVwiYXJ0aWN1bG9zTGlzdFwiIHJlc3BvbnNpdmU9XCJ0cnVlXCIgXG4gICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uTW9kZT1cIm11bHRpcGxlXCIgKG9uUm93U2VsZWN0KT1cImZpbGFTZWxlY2Npb25hZGEoJGV2ZW50KVwiICBbc2Nyb2xsYWJsZV09XCJ0cnVlXCIgc2Nyb2xsSGVpZ2h0PVwiMzUwcHhcIiA+XG5cbiAgICAgICAgPHAtY29sdW1uICBoZWFkZXI9XCJ7eyAnQ29kaWdvIHViaWNhY2lvbicudG9TdHJpbmcoKSB8IHRyYW5zbGF0ZX19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1kYXRvPVwicm93RGF0YVwiIHBUZW1wbGF0ZT1cImJvZHlcIj5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIiAqbmdJZj1cIiFkYXRvLnViaWNhY2lvbkNvZGlnb1wiICB0cmFuc2xhdGU+IE1vdmltaWVudG8uTm9Bc2lnbmFkbyA8L2xhYmVsPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiICpuZ0lmPVwiZGF0by51YmljYWNpb25Db2RpZ29cIiA+IHt7IGRhdG8udWJpY2FjaW9uQ29kaWdvIH19PC9sYWJlbD5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtY29sdW1uPlxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJ1YmljYWNpb25Db2RpZ29cIiBoZWFkZXI9XCJ7eyAnRGVzY3JpcGNpb24gdWJpY2FjaW9uJy50b1N0cmluZygpIHwgdHJhbnNsYXRlfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWRhdG89XCJyb3dEYXRhXCIgcFRlbXBsYXRlPVwiYm9keVwiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiICpuZ0lmPVwiIWRhdG8udWJpY2FjaW9uQ29kaWdvXCIgIHRyYW5zbGF0ZT4gTW92aW1pZW50by5Ob0FzaWduYWRvIDwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCIgKm5nSWY9XCJkYXRvLnViaWNhY2lvbkNvZGlnb1wiID4ge3sgZGF0by51YmljYWNpb25Db2RpZ28gfX08L2xhYmVsPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1jb2x1bW4+XG5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwiZXhpc3RlbmNpYVwiIGhlYWRlcj1cInt7J0V4aXN0ZW5jaWEnIHwgdHJhbnNsYXRlfX1cIj48L3AtY29sdW1uPlxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJ1bmlkYWRDb2RpZ29cIiBoZWFkZXI9XCJ7eydVbmlkYWQnIHwgdHJhbnNsYXRlfX1cIj48L3AtY29sdW1uPlxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJ1bmlkYWREZXNjcmlwY2lvblwiIGhlYWRlcj1cInt7J0Rlc2NyaXBjaW9uIHVuaWRhZCcgfCB0cmFuc2xhdGV9fVwiPjwvcC1jb2x1bW4+XG5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwiZXhpc3RlbmNpYVNlY3VuZGFyaWFcIiBoZWFkZXI9XCJ7eydleGlzdGVuY2lhU2VjdW5kYXJpYScgfCB0cmFuc2xhdGV9fVwiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiPjwvcC1jb2x1bW4+XG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cInVuaWRhZFNlY3VuZGFyaWFDb2RpZ29cIiBoZWFkZXI9XCJ7eydVbmlkYWQnIHwgdHJhbnNsYXRlfX1cIiAqbmdJZj1cIm1hbmVqYVVuaWRhZFNlY3VuZGFyaWFcIj48L3AtY29sdW1uPlxuICAgICAgICBcblxuICAgICAgICA8cC1jb2x1bW4gKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgIGhlYWRlcj1cInt7J01vdmltaWVudG8ubW92aW1pZW50b0RldGFsbGUucHJlY2lvJyB8IHRyYW5zbGF0ZX19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1kYXRvPVwicm93RGF0YVwiIHBUZW1wbGF0ZT1cImJvZHlcIj5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIj57eyBkYXRvLnByZWNpb0NvbkltcHVlc3RvcyB8IGN1cnJlbmN5IH19PC9sYWJlbD5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtY29sdW1uPlxuICAgICAgICA8cC1jb2x1bW4gKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gPT09ICdjb3N0bycgXCIgaGVhZGVyPVwie3snTW92aW1pZW50by5jb3N0bycgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWRhdG89XCJyb3dEYXRhXCIgcFRlbXBsYXRlPVwiYm9keVwiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiPnt7IGRhdG8ucHJlY2lvIHwgY3VycmVuY3kgfX08L2xhYmVsPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1jb2x1bW4+XG5cblxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJhcnRpY3Vsby5jb2RpZ29cIiBoZWFkZXI9XCJ7eydDb2RpZ28gYXJ0aWN1bG8nIHwgdHJhbnNsYXRlfX1cIj48L3AtY29sdW1uPlxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJhcnRpY3Vsby5kZXNjcmlwY2lvblwiIGhlYWRlcj1cInt7J0Rlc2NyaXBjaW9uJyB8IHRyYW5zbGF0ZX19XCI+PC9wLWNvbHVtbj5cblxuXG5cbiAgICAgICAgPHAtY29sdW1uICBoZWFkZXI9XCJ7eydFeGlzdGVuY2lhUG9yVW5pZGFkJyB8IHRyYW5zbGF0ZSB9fVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtZGF0bz1cInJvd0RhdGFcIiBwVGVtcGxhdGU9XCJib2R5XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0by5leGlzdGVuY2lhVW5pZGFkZXNcIiA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNFwiPjxsYWJlbCBmb3I9XCJcIj57e2l0ZW0udW5pZGFkX2NvZGlnb319PC9sYWJlbD48L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy00XCI+PGxhYmVsIGZvcj1cIlwiPnt7aXRlbS51bmlkYWRfZXhpc3RlbmNpYSB8IG51bWJlciA6ICcxLjItMid9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgICBcbiAgICAgICAgICAgIDwvZGl2PiAgXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWNvbHVtbj5cbiAgICAgICAgXG4gICAgICA8L3AtdGFibGU+XG4gICAgICAtLT5cbiAgPHAtcGFnaW5hdG9yIFtyb3dzXT1cInBhZ2Uucm93c1wiIFt0b3RhbFJlY29yZHNdPVwicGFnZS50b3RhbFwiIFtwYWdlTGlua1NpemVdPVwiNVwiIChvblBhZ2VDaGFuZ2UpPVwicGFnaW5hKCRldmVudClcIlxuICAgIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwiWzEwLDI1LDUwLDEwMCw1MDBdXCI+PC9wLXBhZ2luYXRvcj5cbiAgPCEtLSAgXG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgLS0+XG48L3AtZGlhbG9nPlxuPCEtLVxuICA8L2Rpdj4gXG4gICAgICAtLT5cbjwhLS10ZXJtaW5hIHNlbGVjY2lvbiBkZSBhcnRpY3Vsb3MtLT5cbjwhLS1zZWxlY2Npb25hIHViaWNhY2lvbiAtLT5cbjxsaWItc2VsZWNjaW9uLWFydGljdWxvLWluZm9ybWFjaW9uIFtzaG93TW9kYWxdPVwic2hvd01vZGFsSW5mb3JtYWNpb25cIiBbYXJ0aWN1bG9dPVwiYXJ0aWN1bG9TZWxlY3RlZFwiXG4gIChldmVudFNlbGVjdGlvbik9XCJvbkV2ZW50SW5mb3JtYWNpb24oJGV2ZW50KVwiICpuZ0lmPVwic2hvd01vZGFsSW5mb3JtYWNpb25cIj5cbjwvbGliLXNlbGVjY2lvbi1hcnRpY3Vsby1pbmZvcm1hY2lvbj4iXX0=