visorus-erp-core 9.0.0 → 10.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 (209) hide show
  1. package/bundles/visorus-erp-core.umd.js +2771 -2223
  2. package/bundles/visorus-erp-core.umd.js.map +1 -1
  3. package/bundles/visorus-erp-core.umd.min.js +1 -15
  4. package/bundles/visorus-erp-core.umd.min.js.map +1 -1
  5. package/esm2015/lib/app.module.js +1 -1
  6. package/esm2015/lib/components/acreedor/select/select-acreedor.component.js +33 -45
  7. package/esm2015/lib/components/acreedor/services/acreedor.service.js +1 -1
  8. package/esm2015/lib/components/acreedor/services/acreedorCuentaContable.js +1 -1
  9. package/esm2015/lib/components/agente/models/Agente.js +1 -1
  10. package/esm2015/lib/components/agente/services/agente.service.js +1 -1
  11. package/esm2015/lib/components/almacen/models/Almacen.js +1 -1
  12. package/esm2015/lib/components/almacen/services/almacen.service.js +1 -1
  13. package/esm2015/lib/components/banco/models/Banco.js +1 -1
  14. package/esm2015/lib/components/banco/services/banco.service.js +1 -1
  15. package/esm2015/lib/components/caja/session-create/session-create.component.js +61 -68
  16. package/esm2015/lib/components/caja/sessionCaja.service.js +1 -1
  17. package/esm2015/lib/components/catalogoTipo/models/CatalogoTipo.js +1 -1
  18. package/esm2015/lib/components/catalogoTipo/services/catalogoTipo.service.js +1 -1
  19. package/esm2015/lib/components/clasificadorTipo/models/ClasificadorTipo.js +1 -1
  20. package/esm2015/lib/components/clasificadorTipo/services/clasificadorTipo.service.js +1 -1
  21. package/esm2015/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.js +1 -1
  22. package/esm2015/lib/components/claveMovimiento/models/ClaveMovimiento.js +1 -1
  23. package/esm2015/lib/components/claveMovimiento/services/claveMovimiento.service.js +1 -1
  24. package/esm2015/lib/components/cliente/models/Cliente.js +1 -1
  25. package/esm2015/lib/components/cliente/models/ClienteCuentaBanco.js +1 -1
  26. package/esm2015/lib/components/cliente/models/ClienteFlete.js +1 -1
  27. package/esm2015/lib/components/cliente/select/select-cliente.component.js +31 -40
  28. package/esm2015/lib/components/cliente/services/cliente.service.js +1 -1
  29. package/esm2015/lib/components/cliente/services/clienteCuentaBanco.service.js +1 -1
  30. package/esm2015/lib/components/cliente/services/clienteFlete.service.js +1 -1
  31. package/esm2015/lib/components/contacto/models/DatoContacto.js +1 -1
  32. package/esm2015/lib/components/contacto/services/datoContacto.service.js +1 -1
  33. package/esm2015/lib/components/dato-direccion/models/DatoDireccion.js +1 -1
  34. package/esm2015/lib/components/dato-direccion/services/datoDireccion.service.js +1 -1
  35. package/esm2015/lib/components/departamento/models/Departamento.js +1 -1
  36. package/esm2015/lib/components/departamento/services/departamento.service.js +1 -1
  37. package/esm2015/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.js +1 -1
  38. package/esm2015/lib/components/empresa/models/Empresa.js +1 -1
  39. package/esm2015/lib/components/empresa/services/empresa.service.js +1 -1
  40. package/esm2015/lib/components/error404/error404.component.js +1 -1
  41. package/esm2015/lib/components/flete/models/Flete.js +1 -1
  42. package/esm2015/lib/components/flete/services/flete.service.js +1 -1
  43. package/esm2015/lib/components/formaPago/models/FormaPago.js +1 -1
  44. package/esm2015/lib/components/formaPago/services/FormaPago.service.js +1 -1
  45. package/esm2015/lib/components/loading/loading.component.js +2 -2
  46. package/esm2015/lib/components/loading/loading.service.js +1 -1
  47. package/esm2015/lib/components/loading-screen/loading-screen.component.js +2 -2
  48. package/esm2015/lib/components/loading-screen/loading-screen.service.js +1 -1
  49. package/esm2015/lib/components/login-modal/login-modal.component.js +1 -1
  50. package/esm2015/lib/components/login-modal/login-modal.service.js +1 -1
  51. package/esm2015/lib/components/moneda/models/Moneda.js +1 -1
  52. package/esm2015/lib/components/moneda/services/moneda.service.js +1 -1
  53. package/esm2015/lib/components/pdfModal/pdf-modal.component.js +1 -1
  54. package/esm2015/lib/components/pdfModal/pdf-modal.service.js +1 -1
  55. package/esm2015/lib/components/persona-fisica/models/EstadoCivil.js +1 -1
  56. package/esm2015/lib/components/persona-fisica/models/Genero.js +1 -1
  57. package/esm2015/lib/components/persona-fisica/models/Persona.js +1 -1
  58. package/esm2015/lib/components/persona-fisica/models/PersonaFisica.js +1 -1
  59. package/esm2015/lib/components/persona-fisica/services/personaFisica.service.js +1 -1
  60. package/esm2015/lib/components/proveedor/models/Proveedor.js +1 -1
  61. package/esm2015/lib/components/proveedor/models/ProveedorCuentaBanco.js +1 -1
  62. package/esm2015/lib/components/proveedor/models/ProveedorFlete.js +1 -1
  63. package/esm2015/lib/components/proveedor/select/select-proveedor.component.js +25 -37
  64. package/esm2015/lib/components/proveedor/services/proveedor.service.js +1 -1
  65. package/esm2015/lib/components/proveedor/services/proveedorCuentaBanco.service.js +1 -1
  66. package/esm2015/lib/components/proveedor/services/proveedorFlete.service.js +1 -1
  67. package/esm2015/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.js +18 -20
  68. package/esm2015/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.js +1 -1
  69. package/esm2015/lib/components/selecciona-articulo/selecciona-articulo.component.js +140 -145
  70. package/esm2015/lib/components/selecciona-articulo/stock.service.js +1 -1
  71. package/esm2015/lib/components/serieDocumento/models/SerieDocumento.js +1 -1
  72. package/esm2015/lib/components/serieDocumento/services/serieDocumento.service.js +1 -1
  73. package/esm2015/lib/components/tipo-contacto/models/TipoContacto.js +1 -1
  74. package/esm2015/lib/components/tipo-contacto/services/tipoContacto.service.js +1 -1
  75. package/esm2015/lib/components/ubicacion/models/Ubicacion.js +1 -1
  76. package/esm2015/lib/components/ubicacion/services/ubicacion.service.js +1 -1
  77. package/esm2015/lib/contabilidad/componentes/cclista/cclista.component.js +30 -37
  78. package/esm2015/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.js +1 -1
  79. package/esm2015/lib/contabilidad/modelos/cuentaContable.model.js +1 -1
  80. package/esm2015/lib/contabilidad/modelos/normaInfoFinanciera.model.js +1 -1
  81. package/esm2015/lib/contabilidad/servicios/cuentacontable.service.js +1 -1
  82. package/esm2015/lib/globalPrimeNg.js +1 -1
  83. package/esm2015/lib/httpInterceptor/httpInterceptor.js +1 -1
  84. package/esm2015/lib/importComponents.js +1 -1
  85. package/esm2015/lib/importComponetsConta.js +1 -1
  86. package/esm2015/lib/models/PersonaMoral.js +1 -1
  87. package/esm2015/lib/models/Usuario.js +1 -1
  88. package/esm2015/lib/models/auth.js +1 -1
  89. package/esm2015/lib/services/auth.service.js +1 -1
  90. package/esm2015/lib/services/authenticated.service.js +1 -1
  91. package/esm2015/lib/services/canActivateGuard.service.ts.js +1 -1
  92. package/esm2015/lib/services/catalogo-adicional.service.js +1 -1
  93. package/esm2015/lib/services/controlAcceso.service.js +1 -1
  94. package/esm2015/lib/services/crud.service.js +1 -1
  95. package/esm2015/lib/services/file.service.js +1 -1
  96. package/esm2015/lib/services/global.service.js +1 -1
  97. package/esm2015/lib/services/init.service.js +1 -1
  98. package/esm2015/lib/services/message.service.js +1 -1
  99. package/esm2015/lib/services/paginate.service.js +1 -1
  100. package/esm2015/lib/services/personaMoral.service.js +1 -1
  101. package/esm2015/lib/services/versionCheck.service.js +1 -1
  102. package/esm2015/lib/utils/tipo_catalogo.ts.js +1 -1
  103. package/esm2015/public_api.js +1 -1
  104. package/esm2015/visorus-erp-core.js +1 -1
  105. package/fesm2015/visorus-erp-core.js +308 -371
  106. package/fesm2015/visorus-erp-core.js.map +1 -1
  107. package/package.json +12 -13
  108. package/esm5/lib/app.module.js +0 -117
  109. package/esm5/lib/components/acreedor/select/select-acreedor.component.js +0 -232
  110. package/esm5/lib/components/acreedor/services/acreedor.service.js +0 -25
  111. package/esm5/lib/components/acreedor/services/acreedorCuentaContable.js +0 -29
  112. package/esm5/lib/components/agente/models/Agente.js +0 -10
  113. package/esm5/lib/components/agente/services/agente.service.js +0 -37
  114. package/esm5/lib/components/almacen/models/Almacen.js +0 -7
  115. package/esm5/lib/components/almacen/services/almacen.service.js +0 -29
  116. package/esm5/lib/components/banco/models/Banco.js +0 -9
  117. package/esm5/lib/components/banco/services/banco.service.js +0 -23
  118. package/esm5/lib/components/caja/session-create/session-create.component.js +0 -223
  119. package/esm5/lib/components/caja/sessionCaja.service.js +0 -25
  120. package/esm5/lib/components/catalogoTipo/models/CatalogoTipo.js +0 -7
  121. package/esm5/lib/components/catalogoTipo/services/catalogoTipo.service.js +0 -23
  122. package/esm5/lib/components/clasificadorTipo/models/ClasificadorTipo.js +0 -7
  123. package/esm5/lib/components/clasificadorTipo/services/clasificadorTipo.service.js +0 -23
  124. package/esm5/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.js +0 -23
  125. package/esm5/lib/components/claveMovimiento/models/ClaveMovimiento.js +0 -7
  126. package/esm5/lib/components/claveMovimiento/services/claveMovimiento.service.js +0 -23
  127. package/esm5/lib/components/cliente/models/Cliente.js +0 -14
  128. package/esm5/lib/components/cliente/models/ClienteCuentaBanco.js +0 -10
  129. package/esm5/lib/components/cliente/models/ClienteFlete.js +0 -12
  130. package/esm5/lib/components/cliente/select/select-cliente.component.js +0 -240
  131. package/esm5/lib/components/cliente/services/cliente.service.js +0 -26
  132. package/esm5/lib/components/cliente/services/clienteCuentaBanco.service.js +0 -29
  133. package/esm5/lib/components/cliente/services/clienteFlete.service.js +0 -29
  134. package/esm5/lib/components/contacto/models/DatoContacto.js +0 -9
  135. package/esm5/lib/components/contacto/services/datoContacto.service.js +0 -23
  136. package/esm5/lib/components/dato-direccion/models/DatoDireccion.js +0 -7
  137. package/esm5/lib/components/dato-direccion/services/datoDireccion.service.js +0 -23
  138. package/esm5/lib/components/departamento/models/Departamento.js +0 -7
  139. package/esm5/lib/components/departamento/services/departamento.service.js +0 -23
  140. package/esm5/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.js +0 -9
  141. package/esm5/lib/components/empresa/models/Empresa.js +0 -13
  142. package/esm5/lib/components/empresa/services/empresa.service.js +0 -29
  143. package/esm5/lib/components/error404/error404.component.js +0 -38
  144. package/esm5/lib/components/flete/models/Flete.js +0 -7
  145. package/esm5/lib/components/flete/services/flete.service.js +0 -25
  146. package/esm5/lib/components/formaPago/models/FormaPago.js +0 -7
  147. package/esm5/lib/components/formaPago/services/FormaPago.service.js +0 -23
  148. package/esm5/lib/components/loading/loading.component.js +0 -69
  149. package/esm5/lib/components/loading/loading.service.js +0 -32
  150. package/esm5/lib/components/loading-screen/loading-screen.component.js +0 -62
  151. package/esm5/lib/components/loading-screen/loading-screen.service.js +0 -37
  152. package/esm5/lib/components/login-modal/login-modal.component.js +0 -184
  153. package/esm5/lib/components/login-modal/login-modal.service.js +0 -23
  154. package/esm5/lib/components/moneda/models/Moneda.js +0 -7
  155. package/esm5/lib/components/moneda/services/moneda.service.js +0 -25
  156. package/esm5/lib/components/pdfModal/pdf-modal.component.js +0 -85
  157. package/esm5/lib/components/pdfModal/pdf-modal.service.js +0 -31
  158. package/esm5/lib/components/persona-fisica/models/EstadoCivil.js +0 -7
  159. package/esm5/lib/components/persona-fisica/models/Genero.js +0 -7
  160. package/esm5/lib/components/persona-fisica/models/Persona.js +0 -9
  161. package/esm5/lib/components/persona-fisica/models/PersonaFisica.js +0 -11
  162. package/esm5/lib/components/persona-fisica/services/personaFisica.service.js +0 -31
  163. package/esm5/lib/components/proveedor/models/Proveedor.js +0 -14
  164. package/esm5/lib/components/proveedor/models/ProveedorCuentaBanco.js +0 -10
  165. package/esm5/lib/components/proveedor/models/ProveedorFlete.js +0 -12
  166. package/esm5/lib/components/proveedor/select/select-proveedor.component.js +0 -163
  167. package/esm5/lib/components/proveedor/services/proveedor.service.js +0 -25
  168. package/esm5/lib/components/proveedor/services/proveedorCuentaBanco.service.js +0 -29
  169. package/esm5/lib/components/proveedor/services/proveedorFlete.service.js +0 -29
  170. package/esm5/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.js +0 -159
  171. package/esm5/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.js +0 -29
  172. package/esm5/lib/components/selecciona-articulo/selecciona-articulo.component.js +0 -531
  173. package/esm5/lib/components/selecciona-articulo/stock.service.js +0 -37
  174. package/esm5/lib/components/serieDocumento/models/SerieDocumento.js +0 -7
  175. package/esm5/lib/components/serieDocumento/services/serieDocumento.service.js +0 -31
  176. package/esm5/lib/components/tipo-contacto/models/TipoContacto.js +0 -8
  177. package/esm5/lib/components/tipo-contacto/services/tipoContacto.service.js +0 -23
  178. package/esm5/lib/components/ubicacion/models/Ubicacion.js +0 -7
  179. package/esm5/lib/components/ubicacion/services/ubicacion.service.js +0 -23
  180. package/esm5/lib/contabilidad/componentes/cclista/cclista.component.js +0 -329
  181. package/esm5/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.js +0 -72
  182. package/esm5/lib/contabilidad/modelos/cuentaContable.model.js +0 -8
  183. package/esm5/lib/contabilidad/modelos/normaInfoFinanciera.model.js +0 -8
  184. package/esm5/lib/contabilidad/servicios/cuentacontable.service.js +0 -28
  185. package/esm5/lib/globalPrimeNg.js +0 -66
  186. package/esm5/lib/httpInterceptor/httpInterceptor.js +0 -94
  187. package/esm5/lib/importComponents.js +0 -24
  188. package/esm5/lib/importComponetsConta.js +0 -7
  189. package/esm5/lib/models/PersonaMoral.js +0 -11
  190. package/esm5/lib/models/Usuario.js +0 -7
  191. package/esm5/lib/models/auth.js +0 -7
  192. package/esm5/lib/services/auth.service.js +0 -209
  193. package/esm5/lib/services/authenticated.service.js +0 -80
  194. package/esm5/lib/services/canActivateGuard.service.ts.js +0 -28
  195. package/esm5/lib/services/catalogo-adicional.service.js +0 -25
  196. package/esm5/lib/services/controlAcceso.service.js +0 -50
  197. package/esm5/lib/services/crud.service.js +0 -51
  198. package/esm5/lib/services/file.service.js +0 -72
  199. package/esm5/lib/services/global.service.js +0 -56
  200. package/esm5/lib/services/init.service.js +0 -54
  201. package/esm5/lib/services/message.service.js +0 -82
  202. package/esm5/lib/services/paginate.service.js +0 -60
  203. package/esm5/lib/services/personaMoral.service.js +0 -23
  204. package/esm5/lib/services/versionCheck.service.js +0 -56
  205. package/esm5/lib/utils/tipo_catalogo.ts.js +0 -9
  206. package/esm5/public_api.js +0 -96
  207. package/esm5/visorus-erp-core.js +0 -5
  208. package/fesm5/visorus-erp-core.js +0 -4203
  209. package/fesm5/visorus-erp-core.js.map +0 -1
@@ -8,15 +8,16 @@ import * as i2 from "../../services/paginate.service";
8
8
  import * as i3 from "../almacen/services/almacen.service";
9
9
  import * as i4 from "primeng/dialog";
10
10
  import * as i5 from "@angular/forms";
11
- import * as i6 from "@angular/common";
12
- import * as i7 from "primeng/table";
13
- import * as i8 from "primeng/api";
14
- import * as i9 from "primeng/paginator";
15
- import * as i10 from "@ngx-translate/core";
16
- import * as i11 from "primeng/button";
17
- import * as i12 from "../seleccion-articulo-informacion/seleccion-articulo-informacion.component";
18
- function SeleccionaArticuloComponent_option_25_Template(rf, ctx) { if (rf & 1) {
19
- i0.ɵɵelementStart(0, "option", 25);
11
+ import * as i6 from "primeng/inputtext";
12
+ import * as i7 from "primeng/button";
13
+ import * as i8 from "@angular/common";
14
+ import * as i9 from "primeng/table";
15
+ import * as i10 from "primeng/api";
16
+ import * as i11 from "primeng/paginator";
17
+ import * as i12 from "@ngx-translate/core";
18
+ import * as i13 from "../seleccion-articulo-informacion/seleccion-articulo-informacion.component";
19
+ function SeleccionaArticuloComponent_option_23_Template(rf, ctx) { if (rf & 1) {
20
+ i0.ɵɵelementStart(0, "option", 22);
20
21
  i0.ɵɵtext(1);
21
22
  i0.ɵɵelementEnd();
22
23
  } if (rf & 2) {
@@ -25,48 +26,48 @@ function SeleccionaArticuloComponent_option_25_Template(rf, ctx) { if (rf & 1) {
25
26
  i0.ɵɵadvance(1);
26
27
  i0.ɵɵtextInterpolate(almacen_r5.descripcion);
27
28
  } }
28
- function SeleccionaArticuloComponent_ng_template_29_th_7_Template(rf, ctx) { if (rf & 1) {
29
- i0.ɵɵelementStart(0, "th", 34);
29
+ function SeleccionaArticuloComponent_ng_template_26_th_7_Template(rf, ctx) { if (rf & 1) {
30
+ i0.ɵɵelementStart(0, "th", 31);
30
31
  i0.ɵɵtext(1, "existenciaSecundaria");
31
32
  i0.ɵɵelementEnd();
32
33
  } }
33
- function SeleccionaArticuloComponent_ng_template_29_th_8_Template(rf, ctx) { if (rf & 1) {
34
- i0.ɵɵelementStart(0, "th", 28);
34
+ function SeleccionaArticuloComponent_ng_template_26_th_8_Template(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵelementStart(0, "th", 25);
35
36
  i0.ɵɵtext(1, "Unidad");
36
37
  i0.ɵɵelementEnd();
37
38
  } }
38
- function SeleccionaArticuloComponent_ng_template_29_th_14_Template(rf, ctx) { if (rf & 1) {
39
- i0.ɵɵelementStart(0, "th", 26);
40
- i0.ɵɵtext(1, "Movimiento.movimientoDetalle.precio");
39
+ function SeleccionaArticuloComponent_ng_template_26_th_14_Template(rf, ctx) { if (rf & 1) {
40
+ i0.ɵɵelementStart(0, "th", 23);
41
+ i0.ɵɵtext(1, "Precio");
41
42
  i0.ɵɵelementEnd();
42
43
  } }
43
- function SeleccionaArticuloComponent_ng_template_29_th_15_Template(rf, ctx) { if (rf & 1) {
44
- i0.ɵɵelementStart(0, "th", 26);
44
+ function SeleccionaArticuloComponent_ng_template_26_th_15_Template(rf, ctx) { if (rf & 1) {
45
+ i0.ɵɵelementStart(0, "th", 23);
45
46
  i0.ɵɵtext(1, "Precio 2");
46
47
  i0.ɵɵelementEnd();
47
48
  } }
48
- function SeleccionaArticuloComponent_ng_template_29_th_16_Template(rf, ctx) { if (rf & 1) {
49
- i0.ɵɵelementStart(0, "th", 26);
49
+ function SeleccionaArticuloComponent_ng_template_26_th_16_Template(rf, ctx) { if (rf & 1) {
50
+ i0.ɵɵelementStart(0, "th", 23);
50
51
  i0.ɵɵtext(1, "Precio 3");
51
52
  i0.ɵɵelementEnd();
52
53
  } }
53
- function SeleccionaArticuloComponent_ng_template_29_th_17_Template(rf, ctx) { if (rf & 1) {
54
- i0.ɵɵelementStart(0, "th", 26);
54
+ function SeleccionaArticuloComponent_ng_template_26_th_17_Template(rf, ctx) { if (rf & 1) {
55
+ i0.ɵɵelementStart(0, "th", 23);
55
56
  i0.ɵɵtext(1, "Precio 4");
56
57
  i0.ɵɵelementEnd();
57
58
  } }
58
- function SeleccionaArticuloComponent_ng_template_29_th_18_Template(rf, ctx) { if (rf & 1) {
59
- i0.ɵɵelementStart(0, "th", 26);
59
+ function SeleccionaArticuloComponent_ng_template_26_th_18_Template(rf, ctx) { if (rf & 1) {
60
+ i0.ɵɵelementStart(0, "th", 23);
60
61
  i0.ɵɵtext(1, "Precio 5");
61
62
  i0.ɵɵelementEnd();
62
63
  } }
63
- function SeleccionaArticuloComponent_ng_template_29_th_19_Template(rf, ctx) { if (rf & 1) {
64
- i0.ɵɵelementStart(0, "th", 28);
64
+ function SeleccionaArticuloComponent_ng_template_26_th_19_Template(rf, ctx) { if (rf & 1) {
65
+ i0.ɵɵelementStart(0, "th", 25);
65
66
  i0.ɵɵtext(1, "Movimiento.costo");
66
67
  i0.ɵɵelementEnd();
67
68
  } }
68
- function SeleccionaArticuloComponent_ng_template_29_th_22_Template(rf, ctx) { if (rf & 1) {
69
- i0.ɵɵelementStart(0, "th", 26);
69
+ function SeleccionaArticuloComponent_ng_template_26_th_22_Template(rf, ctx) { if (rf & 1) {
70
+ i0.ɵɵelementStart(0, "th", 23);
70
71
  i0.ɵɵtext(1);
71
72
  i0.ɵɵelementEnd();
72
73
  } if (rf & 2) {
@@ -74,36 +75,36 @@ function SeleccionaArticuloComponent_ng_template_29_th_22_Template(rf, ctx) { if
74
75
  i0.ɵɵadvance(1);
75
76
  i0.ɵɵtextInterpolate(item_r15.descripcion);
76
77
  } }
77
- function SeleccionaArticuloComponent_ng_template_29_Template(rf, ctx) { if (rf & 1) {
78
+ function SeleccionaArticuloComponent_ng_template_26_Template(rf, ctx) { if (rf & 1) {
78
79
  i0.ɵɵelementStart(0, "tr");
79
- i0.ɵɵelementStart(1, "th", 26);
80
+ i0.ɵɵelementStart(1, "th", 23);
80
81
  i0.ɵɵtext(2, "C\u00F3digo Ubicacion");
81
82
  i0.ɵɵelementEnd();
82
- i0.ɵɵelementStart(3, "th", 27);
83
+ i0.ɵɵelementStart(3, "th", 24);
83
84
  i0.ɵɵtext(4, "Existencia");
84
85
  i0.ɵɵelementEnd();
85
- i0.ɵɵelementStart(5, "th", 28);
86
+ i0.ɵɵelementStart(5, "th", 25);
86
87
  i0.ɵɵtext(6, "Unidad");
87
88
  i0.ɵɵelementEnd();
88
- i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_29_th_7_Template, 2, 0, "th", 29);
89
- i0.ɵɵtemplate(8, SeleccionaArticuloComponent_ng_template_29_th_8_Template, 2, 0, "th", 30);
90
- i0.ɵɵelementStart(9, "th", 26);
89
+ i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_26_th_7_Template, 2, 0, "th", 26);
90
+ i0.ɵɵtemplate(8, SeleccionaArticuloComponent_ng_template_26_th_8_Template, 2, 0, "th", 27);
91
+ i0.ɵɵelementStart(9, "th", 23);
91
92
  i0.ɵɵtext(10, "C\u00F3digo");
92
93
  i0.ɵɵelementEnd();
93
- i0.ɵɵelementStart(11, "th", 31);
94
+ i0.ɵɵelementStart(11, "th", 28);
94
95
  i0.ɵɵtext(12, "Descripcion");
95
96
  i0.ɵɵelementEnd();
96
- i0.ɵɵelement(13, "th", 28);
97
- i0.ɵɵtemplate(14, SeleccionaArticuloComponent_ng_template_29_th_14_Template, 2, 0, "th", 32);
98
- i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_29_th_15_Template, 2, 0, "th", 32);
99
- i0.ɵɵtemplate(16, SeleccionaArticuloComponent_ng_template_29_th_16_Template, 2, 0, "th", 32);
100
- i0.ɵɵtemplate(17, SeleccionaArticuloComponent_ng_template_29_th_17_Template, 2, 0, "th", 32);
101
- i0.ɵɵtemplate(18, SeleccionaArticuloComponent_ng_template_29_th_18_Template, 2, 0, "th", 32);
102
- i0.ɵɵtemplate(19, SeleccionaArticuloComponent_ng_template_29_th_19_Template, 2, 0, "th", 30);
103
- i0.ɵɵelementStart(20, "th", 28);
97
+ i0.ɵɵelement(13, "th", 25);
98
+ i0.ɵɵtemplate(14, SeleccionaArticuloComponent_ng_template_26_th_14_Template, 2, 0, "th", 29);
99
+ i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_26_th_15_Template, 2, 0, "th", 29);
100
+ i0.ɵɵtemplate(16, SeleccionaArticuloComponent_ng_template_26_th_16_Template, 2, 0, "th", 29);
101
+ i0.ɵɵtemplate(17, SeleccionaArticuloComponent_ng_template_26_th_17_Template, 2, 0, "th", 29);
102
+ i0.ɵɵtemplate(18, SeleccionaArticuloComponent_ng_template_26_th_18_Template, 2, 0, "th", 29);
103
+ i0.ɵɵtemplate(19, SeleccionaArticuloComponent_ng_template_26_th_19_Template, 2, 0, "th", 27);
104
+ i0.ɵɵelementStart(20, "th", 25);
104
105
  i0.ɵɵtext(21, "Existencia por Unidad");
105
106
  i0.ɵɵelementEnd();
106
- i0.ɵɵtemplate(22, SeleccionaArticuloComponent_ng_template_29_th_22_Template, 2, 1, "th", 33);
107
+ i0.ɵɵtemplate(22, SeleccionaArticuloComponent_ng_template_26_th_22_Template, 2, 1, "th", 30);
107
108
  i0.ɵɵelementEnd();
108
109
  } if (rf & 2) {
109
110
  const ctx_r2 = i0.ɵɵnextContext();
@@ -126,13 +127,13 @@ function SeleccionaArticuloComponent_ng_template_29_Template(rf, ctx) { if (rf &
126
127
  i0.ɵɵadvance(3);
127
128
  i0.ɵɵproperty("ngForOf", ctx_r2.clasificadorList);
128
129
  } }
129
- function SeleccionaArticuloComponent_ng_template_30_td_1_Template(rf, ctx) { if (rf & 1) {
130
- i0.ɵɵelementStart(0, "td", 26);
130
+ function SeleccionaArticuloComponent_ng_template_27_td_1_Template(rf, ctx) { if (rf & 1) {
131
+ i0.ɵɵelementStart(0, "td", 23);
131
132
  i0.ɵɵtext(1, "Movimiento.NoAsignado");
132
133
  i0.ɵɵelementEnd();
133
134
  } }
134
- function SeleccionaArticuloComponent_ng_template_30_td_2_Template(rf, ctx) { if (rf & 1) {
135
- i0.ɵɵelementStart(0, "td", 42);
135
+ function SeleccionaArticuloComponent_ng_template_27_td_2_Template(rf, ctx) { if (rf & 1) {
136
+ i0.ɵɵelementStart(0, "td", 39);
136
137
  i0.ɵɵtext(1);
137
138
  i0.ɵɵelementEnd();
138
139
  } if (rf & 2) {
@@ -140,8 +141,8 @@ function SeleccionaArticuloComponent_ng_template_30_td_2_Template(rf, ctx) { if
140
141
  i0.ɵɵadvance(1);
141
142
  i0.ɵɵtextInterpolate(rowData_r16.ubicacionCodigo);
142
143
  } }
143
- function SeleccionaArticuloComponent_ng_template_30_td_7_Template(rf, ctx) { if (rf & 1) {
144
- i0.ɵɵelementStart(0, "td", 47);
144
+ function SeleccionaArticuloComponent_ng_template_27_td_7_Template(rf, ctx) { if (rf & 1) {
145
+ i0.ɵɵelementStart(0, "td", 44);
145
146
  i0.ɵɵtext(1);
146
147
  i0.ɵɵelementEnd();
147
148
  } if (rf & 2) {
@@ -149,8 +150,8 @@ function SeleccionaArticuloComponent_ng_template_30_td_7_Template(rf, ctx) { if
149
150
  i0.ɵɵadvance(1);
150
151
  i0.ɵɵtextInterpolate(rowData_r16.existenciaSecundaria);
151
152
  } }
152
- function SeleccionaArticuloComponent_ng_template_30_td_8_Template(rf, ctx) { if (rf & 1) {
153
- i0.ɵɵelementStart(0, "td", 39);
153
+ function SeleccionaArticuloComponent_ng_template_27_td_8_Template(rf, ctx) { if (rf & 1) {
154
+ i0.ɵɵelementStart(0, "td", 36);
154
155
  i0.ɵɵtext(1);
155
156
  i0.ɵɵelementEnd();
156
157
  } if (rf & 2) {
@@ -158,18 +159,18 @@ function SeleccionaArticuloComponent_ng_template_30_td_8_Template(rf, ctx) { if
158
159
  i0.ɵɵadvance(1);
159
160
  i0.ɵɵtextInterpolate(rowData_r16.unidadSecundariaCodigo);
160
161
  } }
161
- function SeleccionaArticuloComponent_ng_template_30_td_15_Template(rf, ctx) { if (rf & 1) {
162
- i0.ɵɵelementStart(0, "td", 42);
162
+ function SeleccionaArticuloComponent_ng_template_27_td_15_Template(rf, ctx) { if (rf & 1) {
163
+ i0.ɵɵelementStart(0, "td", 39);
163
164
  i0.ɵɵtext(1);
164
165
  i0.ɵɵpipe(2, "currency");
165
166
  i0.ɵɵelementEnd();
166
167
  } if (rf & 2) {
167
168
  const rowData_r16 = i0.ɵɵnextContext().$implicit;
168
169
  i0.ɵɵadvance(1);
169
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precioConImpuestos));
170
+ i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 1, rowData_r16.precioConImpuestos), " ");
170
171
  } }
171
- function SeleccionaArticuloComponent_ng_template_30_td_16_Template(rf, ctx) { if (rf & 1) {
172
- i0.ɵɵelementStart(0, "td", 42);
172
+ function SeleccionaArticuloComponent_ng_template_27_td_16_Template(rf, ctx) { if (rf & 1) {
173
+ i0.ɵɵelementStart(0, "td", 39);
173
174
  i0.ɵɵtext(1);
174
175
  i0.ɵɵpipe(2, "currency");
175
176
  i0.ɵɵelementEnd();
@@ -178,8 +179,8 @@ function SeleccionaArticuloComponent_ng_template_30_td_16_Template(rf, ctx) { if
178
179
  i0.ɵɵadvance(1);
179
180
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio2ConImpuestos));
180
181
  } }
181
- function SeleccionaArticuloComponent_ng_template_30_td_17_Template(rf, ctx) { if (rf & 1) {
182
- i0.ɵɵelementStart(0, "td", 42);
182
+ function SeleccionaArticuloComponent_ng_template_27_td_17_Template(rf, ctx) { if (rf & 1) {
183
+ i0.ɵɵelementStart(0, "td", 39);
183
184
  i0.ɵɵtext(1);
184
185
  i0.ɵɵpipe(2, "currency");
185
186
  i0.ɵɵelementEnd();
@@ -188,8 +189,8 @@ function SeleccionaArticuloComponent_ng_template_30_td_17_Template(rf, ctx) { if
188
189
  i0.ɵɵadvance(1);
189
190
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio3ConImpuestos));
190
191
  } }
191
- function SeleccionaArticuloComponent_ng_template_30_td_18_Template(rf, ctx) { if (rf & 1) {
192
- i0.ɵɵelementStart(0, "td", 42);
192
+ function SeleccionaArticuloComponent_ng_template_27_td_18_Template(rf, ctx) { if (rf & 1) {
193
+ i0.ɵɵelementStart(0, "td", 39);
193
194
  i0.ɵɵtext(1);
194
195
  i0.ɵɵpipe(2, "currency");
195
196
  i0.ɵɵelementEnd();
@@ -198,8 +199,8 @@ function SeleccionaArticuloComponent_ng_template_30_td_18_Template(rf, ctx) { if
198
199
  i0.ɵɵadvance(1);
199
200
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio4ConImpuestos));
200
201
  } }
201
- function SeleccionaArticuloComponent_ng_template_30_td_19_Template(rf, ctx) { if (rf & 1) {
202
- i0.ɵɵelementStart(0, "td", 42);
202
+ function SeleccionaArticuloComponent_ng_template_27_td_19_Template(rf, ctx) { if (rf & 1) {
203
+ i0.ɵɵelementStart(0, "td", 39);
203
204
  i0.ɵɵtext(1);
204
205
  i0.ɵɵpipe(2, "currency");
205
206
  i0.ɵɵelementEnd();
@@ -208,8 +209,8 @@ function SeleccionaArticuloComponent_ng_template_30_td_19_Template(rf, ctx) { if
208
209
  i0.ɵɵadvance(1);
209
210
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio5ConImpuestos));
210
211
  } }
211
- function SeleccionaArticuloComponent_ng_template_30_td_20_Template(rf, ctx) { if (rf & 1) {
212
- i0.ɵɵelementStart(0, "td", 39);
212
+ function SeleccionaArticuloComponent_ng_template_27_td_20_Template(rf, ctx) { if (rf & 1) {
213
+ i0.ɵɵelementStart(0, "td", 36);
213
214
  i0.ɵɵtext(1);
214
215
  i0.ɵɵpipe(2, "currency");
215
216
  i0.ɵɵelementEnd();
@@ -218,15 +219,15 @@ function SeleccionaArticuloComponent_ng_template_30_td_20_Template(rf, ctx) { if
218
219
  i0.ɵɵadvance(1);
219
220
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, rowData_r16.precio));
220
221
  } }
221
- function SeleccionaArticuloComponent_ng_template_30_div_22_Template(rf, ctx) { if (rf & 1) {
222
- i0.ɵɵelementStart(0, "div", 48);
223
- i0.ɵɵelementStart(1, "div", 49);
224
- i0.ɵɵelementStart(2, "label", 50);
222
+ function SeleccionaArticuloComponent_ng_template_27_div_22_Template(rf, ctx) { if (rf & 1) {
223
+ i0.ɵɵelementStart(0, "div", 45);
224
+ i0.ɵɵelementStart(1, "div", 46);
225
+ i0.ɵɵelementStart(2, "label", 47);
225
226
  i0.ɵɵtext(3);
226
227
  i0.ɵɵelementEnd();
227
228
  i0.ɵɵelementEnd();
228
- i0.ɵɵelementStart(4, "div", 49);
229
- i0.ɵɵelementStart(5, "label", 50);
229
+ i0.ɵɵelementStart(4, "div", 46);
230
+ i0.ɵɵelementStart(5, "label", 47);
230
231
  i0.ɵɵtext(6);
231
232
  i0.ɵɵpipe(7, "number");
232
233
  i0.ɵɵelementEnd();
@@ -239,8 +240,8 @@ function SeleccionaArticuloComponent_ng_template_30_div_22_Template(rf, ctx) { i
239
240
  i0.ɵɵadvance(3);
240
241
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(7, 2, item_r39.unidad_existencia, "1.2-2"));
241
242
  } }
242
- function SeleccionaArticuloComponent_ng_template_30_td_23_Template(rf, ctx) { if (rf & 1) {
243
- i0.ɵɵelementStart(0, "td", 42);
243
+ function SeleccionaArticuloComponent_ng_template_27_td_23_Template(rf, ctx) { if (rf & 1) {
244
+ i0.ɵɵelementStart(0, "td", 39);
244
245
  i0.ɵɵtext(1);
245
246
  i0.ɵɵelementEnd();
246
247
  } if (rf & 2) {
@@ -248,40 +249,40 @@ function SeleccionaArticuloComponent_ng_template_30_td_23_Template(rf, ctx) { if
248
249
  i0.ɵɵadvance(1);
249
250
  i0.ɵɵtextInterpolate(itemData_r40.valor);
250
251
  } }
251
- function SeleccionaArticuloComponent_ng_template_30_Template(rf, ctx) { if (rf & 1) {
252
+ function SeleccionaArticuloComponent_ng_template_27_Template(rf, ctx) { if (rf & 1) {
252
253
  const _r42 = i0.ɵɵgetCurrentView();
253
- i0.ɵɵelementStart(0, "tr", 35);
254
- i0.ɵɵtemplate(1, SeleccionaArticuloComponent_ng_template_30_td_1_Template, 2, 0, "td", 36);
255
- i0.ɵɵtemplate(2, SeleccionaArticuloComponent_ng_template_30_td_2_Template, 2, 1, "td", 37);
256
- i0.ɵɵelementStart(3, "td", 38);
254
+ i0.ɵɵelementStart(0, "tr", 32);
255
+ i0.ɵɵtemplate(1, SeleccionaArticuloComponent_ng_template_27_td_1_Template, 2, 0, "td", 33);
256
+ i0.ɵɵtemplate(2, SeleccionaArticuloComponent_ng_template_27_td_2_Template, 2, 1, "td", 34);
257
+ i0.ɵɵelementStart(3, "td", 35);
257
258
  i0.ɵɵtext(4);
258
259
  i0.ɵɵelementEnd();
259
- i0.ɵɵelementStart(5, "td", 39);
260
+ i0.ɵɵelementStart(5, "td", 36);
260
261
  i0.ɵɵtext(6);
261
262
  i0.ɵɵelementEnd();
262
- i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_30_td_7_Template, 2, 1, "td", 40);
263
- i0.ɵɵtemplate(8, SeleccionaArticuloComponent_ng_template_30_td_8_Template, 2, 1, "td", 41);
264
- i0.ɵɵelementStart(9, "td", 42);
263
+ i0.ɵɵtemplate(7, SeleccionaArticuloComponent_ng_template_27_td_7_Template, 2, 1, "td", 37);
264
+ i0.ɵɵtemplate(8, SeleccionaArticuloComponent_ng_template_27_td_8_Template, 2, 1, "td", 38);
265
+ i0.ɵɵelementStart(9, "td", 39);
265
266
  i0.ɵɵtext(10);
266
267
  i0.ɵɵelementEnd();
267
- i0.ɵɵelementStart(11, "td", 43);
268
+ i0.ɵɵelementStart(11, "td", 40);
268
269
  i0.ɵɵtext(12);
269
270
  i0.ɵɵelementEnd();
270
- i0.ɵɵelementStart(13, "td", 39);
271
- i0.ɵɵelementStart(14, "button", 44);
272
- i0.ɵɵlistener("click", function SeleccionaArticuloComponent_ng_template_30_Template_button_click_14_listener() { i0.ɵɵrestoreView(_r42); const rowData_r16 = ctx.$implicit; const ctx_r41 = i0.ɵɵnextContext(); return ctx_r41.onShowInformacion(rowData_r16); });
271
+ i0.ɵɵelementStart(13, "td", 36);
272
+ i0.ɵɵelementStart(14, "button", 41);
273
+ i0.ɵɵlistener("click", function SeleccionaArticuloComponent_ng_template_27_Template_button_click_14_listener() { i0.ɵɵrestoreView(_r42); const rowData_r16 = ctx.$implicit; const ctx_r41 = i0.ɵɵnextContext(); return ctx_r41.onShowInformacion(rowData_r16); });
273
274
  i0.ɵɵelementEnd();
274
275
  i0.ɵɵelementEnd();
275
- i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_30_td_15_Template, 3, 3, "td", 37);
276
- i0.ɵɵtemplate(16, SeleccionaArticuloComponent_ng_template_30_td_16_Template, 3, 3, "td", 37);
277
- i0.ɵɵtemplate(17, SeleccionaArticuloComponent_ng_template_30_td_17_Template, 3, 3, "td", 37);
278
- i0.ɵɵtemplate(18, SeleccionaArticuloComponent_ng_template_30_td_18_Template, 3, 3, "td", 37);
279
- i0.ɵɵtemplate(19, SeleccionaArticuloComponent_ng_template_30_td_19_Template, 3, 3, "td", 37);
280
- i0.ɵɵtemplate(20, SeleccionaArticuloComponent_ng_template_30_td_20_Template, 3, 3, "td", 41);
281
- i0.ɵɵelementStart(21, "td", 39);
282
- i0.ɵɵtemplate(22, SeleccionaArticuloComponent_ng_template_30_div_22_Template, 8, 5, "div", 45);
276
+ i0.ɵɵtemplate(15, SeleccionaArticuloComponent_ng_template_27_td_15_Template, 3, 3, "td", 34);
277
+ i0.ɵɵtemplate(16, SeleccionaArticuloComponent_ng_template_27_td_16_Template, 3, 3, "td", 34);
278
+ i0.ɵɵtemplate(17, SeleccionaArticuloComponent_ng_template_27_td_17_Template, 3, 3, "td", 34);
279
+ i0.ɵɵtemplate(18, SeleccionaArticuloComponent_ng_template_27_td_18_Template, 3, 3, "td", 34);
280
+ i0.ɵɵtemplate(19, SeleccionaArticuloComponent_ng_template_27_td_19_Template, 3, 3, "td", 34);
281
+ i0.ɵɵtemplate(20, SeleccionaArticuloComponent_ng_template_27_td_20_Template, 3, 3, "td", 38);
282
+ i0.ɵɵelementStart(21, "td", 36);
283
+ i0.ɵɵtemplate(22, SeleccionaArticuloComponent_ng_template_27_div_22_Template, 8, 5, "div", 42);
283
284
  i0.ɵɵelementEnd();
284
- i0.ɵɵtemplate(23, SeleccionaArticuloComponent_ng_template_30_td_23_Template, 2, 1, "td", 46);
285
+ i0.ɵɵtemplate(23, SeleccionaArticuloComponent_ng_template_27_td_23_Template, 2, 1, "td", 43);
285
286
  i0.ɵɵelementEnd();
286
287
  } if (rf & 2) {
287
288
  const rowData_r16 = ctx.$implicit;
@@ -320,10 +321,10 @@ function SeleccionaArticuloComponent_ng_template_30_Template(rf, ctx) { if (rf &
320
321
  i0.ɵɵadvance(1);
321
322
  i0.ɵɵproperty("ngForOf", rowData_r16.articuloClasificadorList);
322
323
  } }
323
- function SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_32_Template(rf, ctx) { if (rf & 1) {
324
+ function SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_29_Template(rf, ctx) { if (rf & 1) {
324
325
  const _r44 = i0.ɵɵgetCurrentView();
325
- i0.ɵɵelementStart(0, "lib-seleccion-articulo-informacion", 51);
326
- i0.ɵɵlistener("eventSelection", function SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_32_Template_lib_seleccion_articulo_informacion_eventSelection_0_listener($event) { i0.ɵɵrestoreView(_r44); const ctx_r43 = i0.ɵɵnextContext(); return ctx_r43.onEventInformacion($event); });
326
+ i0.ɵɵelementStart(0, "lib-seleccion-articulo-informacion", 48);
327
+ 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 ctx_r43.onEventInformacion($event); });
327
328
  i0.ɵɵelementEnd();
328
329
  } if (rf & 2) {
329
330
  const ctx_r4 = i0.ɵɵnextContext();
@@ -423,87 +424,81 @@ export class SeleccionaArticuloComponent {
423
424
  }
424
425
  }
425
426
  /** @nocollapse */ SeleccionaArticuloComponent.ɵfac = function SeleccionaArticuloComponent_Factory(t) { return new (t || SeleccionaArticuloComponent)(i0.ɵɵdirectiveInject(i1.StockService), i0.ɵɵdirectiveInject(i2.PaginateService), i0.ɵɵdirectiveInject(i3.AlmacenService)); };
426
- /** @nocollapse */ SeleccionaArticuloComponent.ɵcmp = i0.ɵɵdefineComponent({ type: SeleccionaArticuloComponent, selectors: [["app-selecciona-articulo"]], inputs: { configuracion: "configuracion", showArticulos: "showArticulos", movimiento: "movimiento", manejaUnidadSecundaria: "manejaUnidadSecundaria" }, outputs: { emitFilaSeleccionada: "emitFilaSeleccionada", emitShowArticulos: "emitShowArticulos" }, decls: 33, vars: 28, consts: [[3, "header", "visible", "maximizable", "baseZIndex", "blockScroll", "minY", "visibleChange", "onShow", "onHide"], [1, "col-12", "mb-3"], [1, "row"], [1, "col-12", "col-md-3", "col-xl-3"], [1, "form-control", "col-md-6", 3, "ngModel", "ngModelChange", "change"], ["value", "C"], ["value", "D"], ["value", "CD"], ["value", "CI"], [1, "ui-inputgroup"], ["type", "text", "name", "key", 1, "form-control", 3, "ngModel", "ngModelChange", "keypress"], ["type", "button", 1, "btn", "btn-outline-primary", 3, "click"], [1, "fa", "fa-search"], [1, "col-12", "col-md-2", "col-xl-2"], [1, "form-group"], [1, "col-12", "col-md-4", "col-xl-4"], ["disabled", "", "name", "almacen", 1, "form-control", 3, "ngModel", "ngModelChange", "change"], [3, "value", 4, "ngFor", "ngForOf"], [2, "margin-top", "10px"], ["scrollHeight", "400px", "selectionMode", "single", 3, "value", "scrollable", "responsive", "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) {
427
+ /** @nocollapse */ SeleccionaArticuloComponent.ɵcmp = 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: 25, 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", "selectionMode", "single", 3, "value", "scrollable", "responsive", "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) {
427
428
  i0.ɵɵelementStart(0, "p-dialog", 0);
428
429
  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(); });
429
430
  i0.ɵɵpipe(1, "translate");
430
431
  i0.ɵɵelementStart(2, "div", 1);
431
432
  i0.ɵɵelementStart(3, "div", 2);
432
433
  i0.ɵɵelementStart(4, "div", 3);
433
- i0.ɵɵelementStart(5, "select", 4);
434
- i0.ɵɵlistener("ngModelChange", function SeleccionaArticuloComponent_Template_select_ngModelChange_5_listener($event) { return ctx.busquedaArticulos.tipoBusqueda = $event; })("change", function SeleccionaArticuloComponent_Template_select_change_5_listener() { return ctx.obtenerExistenciaArticulosVal(); });
435
- i0.ɵɵelementStart(6, "option", 5);
436
- i0.ɵɵtext(7, "Codigo");
434
+ i0.ɵɵelementStart(5, "div", 4);
435
+ i0.ɵɵelementStart(6, "select", 5);
436
+ 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(); });
437
+ i0.ɵɵelementStart(7, "option", 6);
438
+ i0.ɵɵtext(8, "Codigo");
437
439
  i0.ɵɵelementEnd();
438
- i0.ɵɵelementStart(8, "option", 6);
439
- i0.ɵɵtext(9, "Descripcion");
440
+ i0.ɵɵelementStart(9, "option", 7);
441
+ i0.ɵɵtext(10, "Descripcion");
440
442
  i0.ɵɵelementEnd();
441
- i0.ɵɵelementStart(10, "option", 7);
442
- i0.ɵɵtext(11, "Coincidencia");
443
+ i0.ɵɵelementStart(11, "option", 8);
444
+ i0.ɵɵtext(12, "Coincidencia");
443
445
  i0.ɵɵelementEnd();
444
- i0.ɵɵelementStart(12, "option", 8);
445
- i0.ɵɵtext(13, "Igual a");
446
+ i0.ɵɵelementStart(13, "option", 9);
447
+ i0.ɵɵtext(14, "Igual a");
446
448
  i0.ɵɵelementEnd();
447
449
  i0.ɵɵelementEnd();
448
450
  i0.ɵɵelementEnd();
449
- i0.ɵɵelementStart(14, "div", 3);
450
- i0.ɵɵelementStart(15, "div", 9);
451
- i0.ɵɵelementStart(16, "input", 10);
452
- i0.ɵɵlistener("ngModelChange", function SeleccionaArticuloComponent_Template_input_ngModelChange_16_listener($event) { return ctx.busquedaArticulos.key = $event; })("keypress", function SeleccionaArticuloComponent_Template_input_keypress_16_listener($event) { return ctx.obtenerExistenciaArticulosKey($event); });
451
+ i0.ɵɵelementStart(15, "input", 10);
452
+ 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); });
453
453
  i0.ɵɵelementEnd();
454
- i0.ɵɵelementStart(17, "button", 11);
455
- i0.ɵɵlistener("click", function SeleccionaArticuloComponent_Template_button_click_17_listener() { return ctx.obtenerExistenciaArticulos(); });
456
- i0.ɵɵelement(18, "i", 12);
454
+ i0.ɵɵelementStart(16, "button", 11);
455
+ i0.ɵɵlistener("click", function SeleccionaArticuloComponent_Template_button_click_16_listener() { return ctx.obtenerExistenciaArticulos(); });
457
456
  i0.ɵɵelementEnd();
458
457
  i0.ɵɵelementEnd();
459
458
  i0.ɵɵelementEnd();
460
- i0.ɵɵelementStart(19, "div", 13);
461
- i0.ɵɵelementStart(20, "label", 14);
462
- i0.ɵɵtext(21);
463
- i0.ɵɵpipe(22, "translate");
459
+ i0.ɵɵelementStart(17, "div", 2);
460
+ i0.ɵɵelementStart(18, "div", 3);
461
+ i0.ɵɵelementStart(19, "div", 12);
462
+ i0.ɵɵelementStart(20, "label", 13);
463
+ i0.ɵɵtext(21, "Almacen:");
464
464
  i0.ɵɵelementEnd();
465
465
  i0.ɵɵelementEnd();
466
- i0.ɵɵelementStart(23, "div", 15);
467
- i0.ɵɵelementStart(24, "select", 16);
468
- i0.ɵɵlistener("ngModelChange", function SeleccionaArticuloComponent_Template_select_ngModelChange_24_listener($event) { return ctx.movimiento.almacen = $event; })("change", function SeleccionaArticuloComponent_Template_select_change_24_listener() { return ctx.obtenerExistenciaArticulosVal(); });
469
- i0.ɵɵtemplate(25, SeleccionaArticuloComponent_option_25_Template, 2, 2, "option", 17);
466
+ i0.ɵɵelementStart(22, "select", 14);
467
+ 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(); });
468
+ i0.ɵɵtemplate(23, SeleccionaArticuloComponent_option_23_Template, 2, 2, "option", 15);
470
469
  i0.ɵɵelementEnd();
471
470
  i0.ɵɵelementEnd();
472
471
  i0.ɵɵelementEnd();
473
472
  i0.ɵɵelementEnd();
474
- i0.ɵɵelementStart(26, "div", 18);
475
- i0.ɵɵelementStart(27, "p-table", 19, 20);
476
- i0.ɵɵlistener("onRowSelect", function SeleccionaArticuloComponent_Template_p_table_onRowSelect_27_listener($event) { return ctx.filaSeleccionada($event); });
477
- i0.ɵɵtemplate(29, SeleccionaArticuloComponent_ng_template_29_Template, 23, 9, "ng-template", 21);
478
- i0.ɵɵtemplate(30, SeleccionaArticuloComponent_ng_template_30_Template, 24, 17, "ng-template", 22);
473
+ i0.ɵɵelementStart(24, "p-table", 16, 17);
474
+ i0.ɵɵlistener("onRowSelect", function SeleccionaArticuloComponent_Template_p_table_onRowSelect_24_listener($event) { return ctx.filaSeleccionada($event); });
475
+ i0.ɵɵtemplate(26, SeleccionaArticuloComponent_ng_template_26_Template, 23, 9, "ng-template", 18);
476
+ i0.ɵɵtemplate(27, SeleccionaArticuloComponent_ng_template_27_Template, 24, 17, "ng-template", 19);
479
477
  i0.ɵɵelementEnd();
478
+ i0.ɵɵelementStart(28, "p-paginator", 20);
479
+ i0.ɵɵlistener("onPageChange", function SeleccionaArticuloComponent_Template_p_paginator_onPageChange_28_listener($event) { return ctx.pagina($event); });
480
480
  i0.ɵɵelementEnd();
481
- i0.ɵɵelementStart(31, "p-paginator", 23);
482
- i0.ɵɵlistener("onPageChange", function SeleccionaArticuloComponent_Template_p_paginator_onPageChange_31_listener($event) { return ctx.pagina($event); });
483
481
  i0.ɵɵelementEnd();
484
- i0.ɵɵelementEnd();
485
- i0.ɵɵtemplate(32, SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_32_Template, 1, 2, "lib-seleccion-articulo-informacion", 24);
482
+ i0.ɵɵtemplate(29, SeleccionaArticuloComponent_lib_seleccion_articulo_informacion_29_Template, 1, 2, "lib-seleccion-articulo-informacion", 21);
486
483
  } if (rf & 2) {
487
- i0.ɵɵstyleMap(i0.ɵɵpureFunction1(25, _c0, ctx.size + "px"));
488
- i0.ɵɵpropertyInterpolate("header", i0.ɵɵpipeBind1(1, 21, "Articulos"));
484
+ i0.ɵɵstyleMap(i0.ɵɵpureFunction1(22, _c0, ctx.size + "px"));
485
+ i0.ɵɵpropertyInterpolate("header", i0.ɵɵpipeBind1(1, 20, "Articulos"));
489
486
  i0.ɵɵproperty("visible", ctx.showArticulos)("maximizable", true)("baseZIndex", 10000)("blockScroll", true)("minY", 70);
490
- i0.ɵɵadvance(5);
487
+ i0.ɵɵadvance(6);
491
488
  i0.ɵɵproperty("ngModel", ctx.busquedaArticulos.tipoBusqueda);
492
- i0.ɵɵadvance(11);
489
+ i0.ɵɵadvance(9);
493
490
  i0.ɵɵproperty("ngModel", ctx.busquedaArticulos.key);
494
- i0.ɵɵadvance(5);
495
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(22, 23, "Movimiento.movimientoDetalle.almacen"));
496
- i0.ɵɵadvance(3);
491
+ i0.ɵɵadvance(7);
497
492
  i0.ɵɵproperty("ngModel", ctx.movimiento.almacen);
498
493
  i0.ɵɵadvance(1);
499
494
  i0.ɵɵproperty("ngForOf", ctx.almacenList);
500
- i0.ɵɵadvance(2);
495
+ i0.ɵɵadvance(1);
501
496
  i0.ɵɵproperty("value", ctx.articulosList)("scrollable", true)("responsive", true);
502
497
  i0.ɵɵadvance(4);
503
- i0.ɵɵproperty("rows", ctx.page.rows)("totalRecords", ctx.page.total)("pageLinkSize", 5)("rowsPerPageOptions", i0.ɵɵpureFunction0(27, _c1));
498
+ i0.ɵɵproperty("rows", ctx.page.rows)("totalRecords", ctx.page.total)("pageLinkSize", 5)("rowsPerPageOptions", i0.ɵɵpureFunction0(24, _c1));
504
499
  i0.ɵɵadvance(1);
505
500
  i0.ɵɵproperty("ngIf", ctx.showModalInformacion);
506
- } }, directives: [i4.Dialog, i5.SelectControlValueAccessor, i5.NgControlStatus, i5.NgModel, i5.NgSelectOption, i5.ɵangular_packages_forms_forms_x, i5.DefaultValueAccessor, i6.NgForOf, i7.Table, i8.PrimeTemplate, i9.Paginator, i6.NgIf, i10.TranslateDirective, i7.SelectableRow, i11.ButtonDirective, i12.SeleccionArticuloInformacionComponent], pipes: [i10.TranslatePipe, i6.CurrencyPipe, i6.DecimalPipe], styles: ["tr[_ngcontent-%COMP%]:hover{background-color:#34a835!important;color:#fff!important}table[_ngcontent-%COMP%]{position:absolute}"] });
501
+ } }, directives: [i4.Dialog, i5.SelectControlValueAccessor, i6.InputText, i5.NgControlStatus, i5.NgModel, i5.NgSelectOption, i5.ɵangular_packages_forms_forms_x, i5.DefaultValueAccessor, i7.ButtonDirective, i8.NgForOf, i9.Table, i10.PrimeTemplate, i11.Paginator, i8.NgIf, i12.TranslateDirective, i9.SelectableRow, i13.SeleccionArticuloInformacionComponent], pipes: [i12.TranslatePipe, i8.CurrencyPipe, i8.DecimalPipe], styles: ["tr[_ngcontent-%COMP%]:hover{background-color:#34a835!important;color:#fff!important}table[_ngcontent-%COMP%]{position:absolute}"] });
507
502
  /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(SeleccionaArticuloComponent, [{
508
503
  type: Component,
509
504
  args: [{
@@ -524,4 +519,4 @@ export class SeleccionaArticuloComponent {
524
519
  }], emitShowArticulos: [{
525
520
  type: Output
526
521
  }] }); })();
527
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly92aXNvcnVzLWVycC1jb3JlLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc2VsZWNjaW9uYS1hcnRpY3Vsby9zZWxlY2Npb25hLWFydGljdWxvLmNvbXBvbmVudC50cyIsImxpYi9jb21wb25lbnRzL3NlbGVjY2lvbmEtYXJ0aWN1bG8vc2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7SUNtQ3ZELGtDQUFxRTtJQUFBLFlBQXVCO0lBQUEsaUJBQVM7OztJQUF6RCxnREFBd0I7SUFBQyxlQUF1QjtJQUF2Qiw0Q0FBdUI7OztJQTZCeEYsOEJBQWlFO0lBQUEsb0NBQW9CO0lBQUEsaUJBQUs7OztJQUMxRiw4QkFBaUU7SUFBQSxzQkFBTTtJQUFBLGlCQUFLOzs7SUFJNUUsOEJBQWdGO0lBQUEsbURBQW1DO0lBQUEsaUJBQUs7OztJQUN4SCw4QkFBZ0Y7SUFBQSx3QkFBUTtJQUFBLGlCQUFLOzs7SUFDN0YsOEJBQWdGO0lBQUEsd0JBQVE7SUFBQSxpQkFBSzs7O0lBQzdGLDhCQUFnRjtJQUFBLHdCQUFRO0lBQUEsaUJBQUs7OztJQUM3Riw4QkFBZ0Y7SUFBQSx3QkFBUTtJQUFBLGlCQUFLOzs7SUFDN0YsOEJBQWdGO0lBQUEsZ0NBQWdCO0lBQUEsaUJBQUs7OztJQUVyRyw4QkFBd0U7SUFBQSxZQUFvQjtJQUFBLGlCQUFLOzs7SUFB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QUFtQztRQUFuQyxtREFBbUM7UUFTbEQsZUFBc0Q7UUFBdEQsb0ZBQXNEO1FBR3BELGVBQWdDO1FBQWhDLGdEQUFnQztRQUVuRCxlQUFtQztRQUFuQyx5Q0FBbUM7UUFpQjFDLGVBQXVCO1FBQXZCLHlDQUF1QixvQkFBQSxvQkFBQTtRQXNIbkIsZUFBa0I7UUFBbEIsb0NBQWtCLGdDQUFBLG1CQUFBLG1EQUFBO1FBYWlDLGVBQTRCO1FBQTVCLCtDQUE0Qjs7a0REaExyRiwyQkFBMkI7Y0FMdkMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSx5QkFBeUI7Z0JBQ25DLFdBQVcsRUFBRSxzQ0FBc0M7Z0JBQ25ELFNBQVMsRUFBRSxDQUFDLHFDQUFxQyxDQUFDO2FBQ25EOztrQkFHRSxLQUFLOztrQkFDTCxLQUFLOztrQkFDTCxLQUFLOztrQkFFTCxLQUFLOztrQkFFTCxNQUFNOztrQkFDTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tICcuL3N0b2NrLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWxtYWNlbiB9IGZyb20gJy4uL2FsbWFjZW4vbW9kZWxzL0FsbWFjZW4nO1xuaW1wb3J0IHsgUGFnaW5hdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGFnaW5hdGUuc2VydmljZSc7XG5pbXBvcnQgeyBBbG1hY2VuU2VydmljZSB9IGZyb20gJy4uL2FsbWFjZW4vc2VydmljZXMvYWxtYWNlbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXNlbGVjY2lvbmEtYXJ0aWN1bG8nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlbGVjY2lvbmEtYXJ0aWN1bG8uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjY2lvbmFBcnRpY3Vsb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlndXJhY2lvbiA6IGFueTtcbiAgQElucHV0KCkgc2hvd0FydGljdWxvcyA6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG1vdmltaWVudG86IGFueTtcblxuICBASW5wdXQoKSBtYW5lamFVbmlkYWRTZWN1bmRhcmlhIDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBlbWl0RmlsYVNlbGVjY2lvbmFkYSA6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZW1pdFNob3dBcnRpY3Vsb3MgOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXG5cbiAgYWxtYWNlbkxpc3Q6IEFsbWFjZW5bXTtcbiAgYXJ0aWN1bG9zTGlzdDogYW55ID0gW107XG4gIHBhZ2U6IGFueTtcbiAgb3JkZW5hciA9IFtdO1xuICBidXNxdWVkYUFydGljdWxvcyA6IGFueSA9IHtcbiAgICB0aXBvQnVzcXVlZGEgOiAnJ1xuICB9O1xuXG4gIHNob3dNb2RhbDpib29sZWFuPWZhbHNlO1xuICBhcnRpY3Vsb1NlbGVjdGVkOmFueTtcbiAgc2hvd01vZGFsSW5mb3JtYWNpb246Ym9vbGVhbj1mYWxzZTtcbiAgc2hvd0ZpcnN0VGltZTpib29sZWFuPXRydWU7XG4gIGNsYXNpZmljYWRvckxpc3Q6YW55PVtdO1xuICBzaXplID0gNjQwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgICAgICAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2UgICAgOiBTdG9ja1NlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3BhZ2luYXRlU2VydmljZSA6IFBhZ2luYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfYWxtYWNlblNlcnZpY2UgIDogQWxtYWNlblNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucGFnZSA9IHRoaXMuX3BhZ2luYXRlU2VydmljZS5nZXRQYWdlKCk7XG4gICAgdGhpcy5vcmRlbmFyID0gdGhpcy5fcGFnaW5hdGVTZXJ2aWNlLmdldE9yZGVuKFxuICAgICAgW1xuICAgICAgICB7cGFyYW06ICdub21icmUnLCBsYWJlbDogJ2VzdGF0dXMnfVxuICAgICAgXSwgJ2VzJyk7XG5cblxuICAgIHRoaXMuc2hvd0ZpcnN0VGltZT10cnVlO1xuICAgIHRoaXMuX2FsbWFjZW5TZXJ2aWNlLmdldEFsbCggdGhpcy5jb25maWd1cmFjaW9uLnBhcmFtcyApLnN1YnNjcmliZShcbiAgICAgIChkYXRhOiBhbnkgKSA9PiB7XG4gICAgICAgIHRoaXMuYWxtYWNlbkxpc3QgPSA8QWxtYWNlbltdPiBkYXRhLmRhdGE7XG4gICAgICB9XG4gICAgKTtcbiAgICBcbiAgICB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYSA9ICdDRCc7XG4gICAgLy90ZW1wdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1Nob3coKTtcbiAgfVxuXG4gIHBhZ2luYSggZSApe1xuICAgIHRoaXMucGFnZS5yb3dzID0gZS5yb3dzO1xuICAgIHRoaXMucGFnZS5vZmZzZXQgPSBlLmZpcnN0O1xuICAgIHRoaXMub2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoKTtcbiAgfVxuICBvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1Nob3coKXtcbiAgICB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYSA9ICdDRCc7XG4gICAgaWYgKHRoaXMuc2hvd0ZpcnN0VGltZSl7XG4gICAgICB0aGlzLm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCk7XG4gICAgICB0aGlzLnNob3dGaXJzdFRpbWU9ZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgb2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoICkge1xuICAgIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MucGFyYW1zID0gdGhpcy5fcGFnaW5hdGVTZXJ2aWNlLmdldFBhcmFtcyggdGhpcy5wYWdlICk7XG4gICAgY29uc3QgcGFyYW1ldHJvcyA9IHtcbiAgICAgIGFsbWFjZW4gICAgICAgICAgICAgOiAoIHRoaXMuY29uZmlndXJhY2lvbi5ub09jdXBhQWxhbWFjZW4gPyBudWxsIDogdGhpcy5tb3ZpbWllbnRvLmFsbWFjZW4gKSxcbiAgICAgIHRpcG9QcmVjaW8gICAgICAgICAgOiB0aGlzLmNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyxcbiAgICAgIGJ1c3F1ZWRhQXJ0aWN1bG9zICAgOiB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLFxuICAgICAgdGlwb0FydGljdWxvICAgICAgICA6IHRoaXMuY29uZmlndXJhY2lvbi50aXBvQXJ0aWN1bG8gPyB0aGlzLmNvbmZpZ3VyYWNpb24udGlwb0FydGljdWxvIDogbnVsbCxcbiAgICAgIG51bWVyb1ByZWNpb0RlZmF1bHQgOiB0aGlzLmNvbmZpZ3VyYWNpb24ubnVtZXJvUHJlY2lvRGVmYXVsdFxuICAgIH07ICAgICAgIFxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5vYnRlbmVyRXhpc3RlbmNpYXNBcnRpY3Vsb3NEZXNjcmlwY2lvbiggcGFyYW1ldHJvcyAsIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MucGFyYW1zICkudGhlbihcbiAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5hcnRpY3Vsb3NMaXN0ID0gZGF0YS5hcnRpY3Vsb3NEZXNjcmlwY2lvbjtcbiAgICAgICAgdGhpcy5wYWdlLnRvdGFsID0gZGF0YS50b3RhbDsgIFxuICAgICAgICBpZiAoZGF0YS5jbGFzaWZpY2Fkb3Jlcyl7XG4gICAgICAgICAgdGhpcy5jbGFzaWZpY2Fkb3JMaXN0ID0gZGF0YS5jbGFzaWZpY2Fkb3JlcztcbiAgICAgICAgfSAgICAgIFxuICAgICAgICBpZighdGhpcy5zaG93TW9kYWwpe1xuICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICkuY2F0Y2goZSA9PntcbiAgICAgIHRoaXMuYXJ0aWN1bG9zTGlzdCA9ICBbXTtcbiAgICB9KTtcbiAgfVxuXG4gIG9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zVmFsKCl7XG4gICAgaWYgKCB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYSAhPSAnJyAmJiAhdGhpcy5idXNxdWVkYUFydGljdWxvcy5rZXkgKVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcygpOyBcbiAgfVxuICBvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc0tleSggJGV2ZW50ICkge1xuICAgIGlmKCAkZXZlbnQua2V5ID09PSAnRW50ZXInKVxuICAgICAgdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcygpO1xuICB9XG5cbiAgZmlsYVNlbGVjY2lvbmFkYSggJGV2ZW50ICkge1xuICAgIHRoaXMuZW1pdEZpbGFTZWxlY2Npb25hZGEuZW1pdCgkZXZlbnQpO1xuICB9XG5cbiAgZW1pdGlyU2hvd0FydGljdWxvcygpIHtcbiAgICB0aGlzLmVtaXRTaG93QXJ0aWN1bG9zLmVtaXQoIDAgKTtcbiAgfVxuXG4gIHNlcmllc0FydGljdWxvKHNlcmllcyl7XG4gICAgICBjb25zb2xlLmxvZyhzZXJpZXMpO1xuICB9XG5cbiAgb25TaG93SW5mb3JtYWNpb24oZXZlbnRBcnRpY3Vsbyl7XG4gICAgdGhpcy5hcnRpY3Vsb1NlbGVjdGVkID0gZXZlbnRBcnRpY3VsbztcbiAgICB0aGlzLnNob3dNb2RhbEluZm9ybWFjaW9uID0gdHJ1ZTtcbiAgfVxuXG4gIG9uRXZlbnRJbmZvcm1hY2lvbihldmVudCkge1xuICAgIHRoaXMuc2hvd01vZGFsSW5mb3JtYWNpb24gPSBldmVudC5zdGF0dXM7XHQgICAgICBcbiAgfVxufVxuIiwiXG5cbiAgPCEtLWluaWNpYSBzZWxlY2Npb24gZGUgYXJ0aWN1bG9zLS0+XG4gIDwhLS0gICAob25TaG93KT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zU2hvdygpXCIgLS0+XG4gIDwhLS1cbiAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtY2VudGVyXCIgPi0tPlxuICAgIDxwLWRpYWxvZyBoZWFkZXI9XCJ7eyAnQXJ0aWN1bG9zJyB8IHRyYW5zbGF0ZSB9fVwiIFsodmlzaWJsZSldPVwic2hvd0FydGljdWxvc1wiXG4gICAgICAgICAgICAgIFttYXhpbWl6YWJsZV09XCJ0cnVlXCIgXG4gICAgICAgICAgICAgIChvblNob3cpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NTaG93KClcIlxuICAgICAgICAgICAgICAob25IaWRlKT1cImJ1c3F1ZWRhQXJ0aWN1bG9zID0geyB0aXBvQnVzcXVlZGEgOiAnJ307IGVtaXRpclNob3dBcnRpY3Vsb3MoKVwiXG4gICAgICAgICAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDAwXCIgW2Jsb2NrU2Nyb2xsXT1cInRydWVcIlxuICAgICAgICAgICAgICBbc3R5bGVdPVwieyd3aWR0aCc6IHNpemUrJ3B4JywgJ21pbi13aWR0aCc6ICcyMDBweCd9XCIgIFttaW5ZXT1cIjcwXCIgICAgICAgICAgICAgXG4gICAgICAgICAgICAgID4gICAgXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1iLTNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTMgY29sLXhsLTNcIj5cbiAgICAgICAgICAgIDxzZWxlY3QgIFsobmdNb2RlbCldPVwiYnVzcXVlZGFBcnRpY3Vsb3MudGlwb0J1c3F1ZWRhXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgY29sLW1kLTZcIiAoY2hhbmdlKT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zVmFsKClcIj5cbiAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkNcIj5Db2RpZ288L29wdGlvbj5cbiAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkRcIj5EZXNjcmlwY2lvbjwvb3B0aW9uPlxuICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ0RcIj5Db2luY2lkZW5jaWE8L29wdGlvbj5cbiAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkNJXCI+SWd1YWwgYTwvb3B0aW9uPlxuICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtMyBjb2wteGwtM1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVpLWlucHV0Z3JvdXBcIj5cbiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImJ1c3F1ZWRhQXJ0aWN1bG9zLmtleVwiXG4gICAgICAgICAgICAgICAgICAgICAoa2V5cHJlc3MpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NLZXkoICRldmVudCApXCIgbmFtZT1cImtleVwiID5cbiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tb3V0bGluZS1wcmltYXJ5XCIgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCApXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zZWFyY2hcIj48L2k+XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtMiBjb2wteGwtMlwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1ncm91cFwiID57eydNb3ZpbWllbnRvLm1vdmltaWVudG9EZXRhbGxlLmFsbWFjZW4nIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTQgY29sLXhsLTRcIj5cbiAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cIm1vdmltaWVudG8uYWxtYWNlblwiICBkaXNhYmxlZFxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiYWxtYWNlblwiIChjaGFuZ2UpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NWYWwoKVwiPlxuICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhbG1hY2VuIG9mIGFsbWFjZW5MaXN0XCIgdmFsdWU9XCJ7eyBhbG1hY2VuLmlkIH19XCI+e3thbG1hY2VuLmRlc2NyaXBjaW9ufX08L29wdGlvbj5cbiAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgXG4gICAgICA8IS0tXG4gICAgICA8ZGl2IGlkPVwidGFibGUtd3JhcHBlclwiPlxuICAgICAgPGRpdiBpZD1cInRhYmxlLXNjcm9sbFwiPi0tPlxuICAgICAgPCEtLSBuZXcgdGFibGVcbiAgICAgICA8cC10YWJsZSAjZHQgW2NvbHVtbnNdPVwiY29sc0REXCIgW3ZhbHVlXT1cImxpc3RERFwiIFtzY3JvbGxhYmxlXT1cInRydWVcIiBcbiAgICAgICBbc3R5bGVdPVwie3dpZHRoOiAnMTAwJSd9IFwiIFtzY3JvbGxIZWlnaHRdPVwibWF4SCArICdweCdcIiBcbiAgICAgICBbcmVzaXphYmxlQ29sdW1uc109XCJ0cnVlXCIgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkWE1MXCIgKG9uUm93U2VsZWN0KT1cIm9uUm93U2VsZWN0KCRldmVudClcIiBkYXRhS2V5PVwidXVpZFwiPlxuXG4gICAgICAgXG4gICAgICAtLT4gICAgIFxuICAgICAgPGRpdiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHg7XCI+ICAgICAgICAgICBcbiAgICAgIDxwLXRhYmxlIFt2YWx1ZV09XCJhcnRpY3Vsb3NMaXN0XCIgXG4gICAgICAgIFtzY3JvbGxhYmxlXT1cInRydWVcIiBcbiAgICAgICAgI2R0ICAgICAgXG4gICAgICAgIHNjcm9sbEhlaWdodD1cIjQwMHB4XCJcbiAgICAgICAgW3Jlc3BvbnNpdmVdPVwidHJ1ZVwiICAgICAgICAgXG4gICAgICAgIHNlbGVjdGlvbk1vZGU9XCJzaW5nbGVcIiAgICAgICAgIFxuICAgICAgICAob25Sb3dTZWxlY3QpPVwiZmlsYVNlbGVjY2lvbmFkYSgkZXZlbnQpXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogODBweFwiIHRyYW5zbGF0ZT5Dw7NkaWdvIFViaWNhY2lvbjwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNzBweFwiIHRyYW5zbGF0ZT5FeGlzdGVuY2lhPC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MHB4XCIgdHJhbnNsYXRlPlVuaWRhZDwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNTBweFwiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiIHRyYW5zbGF0ZT5leGlzdGVuY2lhU2VjdW5kYXJpYTwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNDBweFwiICpuZ0lmPVwibWFuZWphVW5pZGFkU2VjdW5kYXJpYVwiIHRyYW5zbGF0ZT5VbmlkYWQ8L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDgwcHhcIiB0cmFuc2xhdGU+Q8OzZGlnbzwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogMTIwcHhcIiB0cmFuc2xhdGU+RGVzY3JpcGNpb248L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiB0cmFuc2xhdGU+PC90aD4gICBcbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPk1vdmltaWVudG8ubW92aW1pZW50b0RldGFsbGUucHJlY2lvPC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyAyPC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyAzPC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyA0PC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA4MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPlByZWNpbyA1PC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MHB4XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gPT09ICdjb3N0bycgXCIgdHJhbnNsYXRlPk1vdmltaWVudG8uY29zdG88L3RoPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwcHhcIiB0cmFuc2xhdGU+RXhpc3RlbmNpYSBwb3IgVW5pZGFkPC90aD4gXG4gICAgICAgICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGl0ZW0gb2YgY2xhc2lmaWNhZG9yTGlzdFwiIHN0eWxlPVwid2lkdGg6IDgwcHhcIiB0cmFuc2xhdGU+e3tpdGVtLmRlc2NyaXBjaW9ufX08L3RoPiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm93RGF0YSBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxuICAgICAgICAgICAgICA8dHIgW3BTZWxlY3RhYmxlUm93XT1cInJvd0RhdGFcIj4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiICpuZ0lmPVwiIXJvd0RhdGEudWJpY2FjaW9uQ29kaWdvXCIgdHJhbnNsYXRlPk1vdmltaWVudG8uTm9Bc2lnbmFkbzwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogODBweDtcIiAqbmdJZj1cInJvd0RhdGEudWJpY2FjaW9uQ29kaWdvXCIgPnt7cm93RGF0YS51YmljYWNpb25Db2RpZ299fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNzBweDtcIj57e3Jvd0RhdGEuZXhpc3RlbmNpYX19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MHB4O1wiPnt7cm93RGF0YS51bmlkYWRDb2RpZ299fTwvdGQ+ICBcblxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDUwcHg7XCIgKm5nSWY9XCJtYW5lamFVbmlkYWRTZWN1bmRhcmlhXCI+e3tyb3dEYXRhLmV4aXN0ZW5jaWFTZWN1bmRhcmlhfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCIgKm5nSWY9XCJtYW5lamFVbmlkYWRTZWN1bmRhcmlhXCI+e3tyb3dEYXRhLnVuaWRhZFNlY3VuZGFyaWFDb2RpZ299fTwvdGQ+ICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiPnt7cm93RGF0YS5hcnRpY3Vsby5jb2RpZ299fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogMTIwcHg7XCI+e3tyb3dEYXRhLmFydGljdWxvLmRlc2NyaXBjaW9ufX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwicGkgcGktZXllXCIgY2xhc3M9XCJ1aS1idXR0b24tcmFpc2VkIHVpLWJ1dHRvbi1wcmltYXJ5XCIgKGNsaWNrKT1cIm9uU2hvd0luZm9ybWFjaW9uKHJvd0RhdGEpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+ICAgICAgXG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvQ29uSW1wdWVzdG9zIHwgY3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvMkNvbkltcHVlc3RvcyB8IGN1cnJlbmN5IH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MHB4O1wiICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvICE9PSAnY29zdG8nXCI+e3tyb3dEYXRhLnByZWNpbzNDb25JbXB1ZXN0b3MgfCBjdXJyZW5jeSB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogODBweDtcIiAqbmdJZj1cImNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyAhPT0gJ2Nvc3RvJ1wiPnt7cm93RGF0YS5wcmVjaW80Q29uSW1wdWVzdG9zIHwgY3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDgwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gIT09ICdjb3N0bydcIj57e3Jvd0RhdGEucHJlY2lvNUNvbkltcHVlc3RvcyB8IGN1cnJlbmN5IH19PC90ZD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCIgKm5nSWY9XCJjb25maWd1cmFjaW9uLnRpcG9QcmVjaW8gPT09ICdjb3N0bycgXCI+e3tyb3dEYXRhLnByZWNpbyB8IGN1cnJlbmN5IH19PC90ZD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDQwcHg7XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3dEYXRhLmV4aXN0ZW5jaWFVbmlkYWRlc1wiID5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTRcIj48bGFiZWwgZm9yPVwiXCI+e3tpdGVtLnVuaWRhZF9jb2RpZ299fTwvbGFiZWw+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy00XCI+PGxhYmVsIGZvcj1cIlwiPnt7aXRlbS51bmlkYWRfZXhpc3RlbmNpYSB8IG51bWJlciA6ICcxLjItMid9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgICAgICAgPC90ZD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICA8IS0tIDx0ZCBzdHlsZT1cIndpZHRoOiA0MHB4O1wiPjwvdGQ+ICAgLS0+XG4gICAgICAgICAgICAgICAgICA8dGQgKm5nRm9yPVwibGV0IGl0ZW1EYXRhIG9mIHJvd0RhdGEuYXJ0aWN1bG9DbGFzaWZpY2Fkb3JMaXN0XCIgc3R5bGU9XCJ3aWR0aDogODBweDtcIj57e2l0ZW1EYXRhLnZhbG9yfX08L3RkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvcC10YWJsZT5cbiAgICA8L2Rpdj5cbiAgICAgIDwhLS0gL25ldyB0YWJsZS0tPiAgIFxuICAgICAgPCEtLSBcbiAgICAgIDxwLXRhYmxlIFsodmFsdWUpXT1cImFydGljdWxvc0xpc3RcIiByZXNwb25zaXZlPVwidHJ1ZVwiIFxuICAgICAgICAgICAgICAgICAgIHNlbGVjdGlvbk1vZGU9XCJtdWx0aXBsZVwiIChvblJvd1NlbGVjdCk9XCJmaWxhU2VsZWNjaW9uYWRhKCRldmVudClcIiAgW3Njcm9sbGFibGVdPVwidHJ1ZVwiIHNjcm9sbEhlaWdodD1cIjM1MHB4XCIgPlxuXG4gICAgICAgIDxwLWNvbHVtbiAgaGVhZGVyPVwie3sgJ0NvZGlnbyB1YmljYWNpb24nLnRvU3RyaW5nKCkgfCB0cmFuc2xhdGV9fVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtZGF0bz1cInJvd0RhdGFcIiBwVGVtcGxhdGU9XCJib2R5XCI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCIgKm5nSWY9XCIhZGF0by51YmljYWNpb25Db2RpZ29cIiAgdHJhbnNsYXRlPiBNb3ZpbWllbnRvLk5vQXNpZ25hZG8gPC9sYWJlbD5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIiAqbmdJZj1cImRhdG8udWJpY2FjaW9uQ29kaWdvXCIgPiB7eyBkYXRvLnViaWNhY2lvbkNvZGlnbyB9fTwvbGFiZWw+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWNvbHVtbj5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwidWJpY2FjaW9uQ29kaWdvXCIgaGVhZGVyPVwie3sgJ0Rlc2NyaXBjaW9uIHViaWNhY2lvbicudG9TdHJpbmcoKSB8IHRyYW5zbGF0ZX19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1kYXRvPVwicm93RGF0YVwiIHBUZW1wbGF0ZT1cImJvZHlcIj5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIiAqbmdJZj1cIiFkYXRvLnViaWNhY2lvbkNvZGlnb1wiICB0cmFuc2xhdGU+IE1vdmltaWVudG8uTm9Bc2lnbmFkbyA8L2xhYmVsPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiICpuZ0lmPVwiZGF0by51YmljYWNpb25Db2RpZ29cIiA+IHt7IGRhdG8udWJpY2FjaW9uQ29kaWdvIH19PC9sYWJlbD5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtY29sdW1uPlxuXG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cImV4aXN0ZW5jaWFcIiBoZWFkZXI9XCJ7eydFeGlzdGVuY2lhJyB8IHRyYW5zbGF0ZX19XCI+PC9wLWNvbHVtbj5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwidW5pZGFkQ29kaWdvXCIgaGVhZGVyPVwie3snVW5pZGFkJyB8IHRyYW5zbGF0ZX19XCI+PC9wLWNvbHVtbj5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwidW5pZGFkRGVzY3JpcGNpb25cIiBoZWFkZXI9XCJ7eydEZXNjcmlwY2lvbiB1bmlkYWQnIHwgdHJhbnNsYXRlfX1cIj48L3AtY29sdW1uPlxuXG4gICAgICAgIDxwLWNvbHVtbiBmaWVsZD1cImV4aXN0ZW5jaWFTZWN1bmRhcmlhXCIgaGVhZGVyPVwie3snZXhpc3RlbmNpYVNlY3VuZGFyaWEnIHwgdHJhbnNsYXRlfX1cIiAqbmdJZj1cIm1hbmVqYVVuaWRhZFNlY3VuZGFyaWFcIj48L3AtY29sdW1uPlxuICAgICAgICA8cC1jb2x1bW4gZmllbGQ9XCJ1bmlkYWRTZWN1bmRhcmlhQ29kaWdvXCIgaGVhZGVyPVwie3snVW5pZGFkJyB8IHRyYW5zbGF0ZX19XCIgKm5nSWY9XCJtYW5lamFVbmlkYWRTZWN1bmRhcmlhXCI+PC9wLWNvbHVtbj5cbiAgICAgICAgXG5cbiAgICAgICAgPHAtY29sdW1uICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvICE9PSAnY29zdG8nIFwiICBoZWFkZXI9XCJ7eydNb3ZpbWllbnRvLm1vdmltaWVudG9EZXRhbGxlLnByZWNpbycgfCB0cmFuc2xhdGV9fVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtZGF0bz1cInJvd0RhdGFcIiBwVGVtcGxhdGU9XCJib2R5XCI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+e3sgZGF0by5wcmVjaW9Db25JbXB1ZXN0b3MgfCBjdXJyZW5jeSB9fTwvbGFiZWw+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWNvbHVtbj5cbiAgICAgICAgPHAtY29sdW1uICpuZ0lmPVwiY29uZmlndXJhY2lvbi50aXBvUHJlY2lvID09PSAnY29zdG8nIFwiIGhlYWRlcj1cInt7J01vdmltaWVudG8uY29zdG8nIHwgdHJhbnNsYXRlIH19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1kYXRvPVwicm93RGF0YVwiIHBUZW1wbGF0ZT1cImJvZHlcIj5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIj57eyBkYXRvLnByZWNpbyB8IGN1cnJlbmN5IH19PC9sYWJlbD5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtY29sdW1uPlxuXG5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwiYXJ0aWN1bG8uY29kaWdvXCIgaGVhZGVyPVwie3snQ29kaWdvIGFydGljdWxvJyB8IHRyYW5zbGF0ZX19XCI+PC9wLWNvbHVtbj5cbiAgICAgICAgPHAtY29sdW1uIGZpZWxkPVwiYXJ0aWN1bG8uZGVzY3JpcGNpb25cIiBoZWFkZXI9XCJ7eydEZXNjcmlwY2lvbicgfCB0cmFuc2xhdGV9fVwiPjwvcC1jb2x1bW4+XG5cblxuXG4gICAgICAgIDxwLWNvbHVtbiAgaGVhZGVyPVwie3snRXhpc3RlbmNpYVBvclVuaWRhZCcgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWRhdG89XCJyb3dEYXRhXCIgcFRlbXBsYXRlPVwiYm9keVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdG8uZXhpc3RlbmNpYVVuaWRhZGVzXCIgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTRcIj48bGFiZWwgZm9yPVwiXCI+e3tpdGVtLnVuaWRhZF9jb2RpZ299fTwvbGFiZWw+PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNFwiPjxsYWJlbCBmb3I9XCJcIj57e2l0ZW0udW5pZGFkX2V4aXN0ZW5jaWEgfCBudW1iZXIgOiAnMS4yLTInfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgXG4gICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1jb2x1bW4+XG4gICAgICAgIFxuICAgICAgPC9wLXRhYmxlPlxuICAgICAgLS0+XG4gICAgICA8cC1wYWdpbmF0b3IgW3Jvd3NdPVwicGFnZS5yb3dzXCIgW3RvdGFsUmVjb3Jkc109XCJwYWdlLnRvdGFsXCIgW3BhZ2VMaW5rU2l6ZV09XCI1XCIgKG9uUGFnZUNoYW5nZSk9XCJwYWdpbmEoJGV2ZW50KVwiIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwiWzEwLDI1LDUwLDEwMCw1MDBdXCI+PC9wLXBhZ2luYXRvcj5cbiAgICAgICA8IS0tICBcbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICAtLT5cbiAgICA8L3AtZGlhbG9nPlxuICAgIDwhLS1cbiAgPC9kaXY+IFxuICAgICAgLS0+XG4gIDwhLS10ZXJtaW5hIHNlbGVjY2lvbiBkZSBhcnRpY3Vsb3MtLT5cbjwhLS1zZWxlY2Npb25hIHViaWNhY2lvbiAtLT5cbjxsaWItc2VsZWNjaW9uLWFydGljdWxvLWluZm9ybWFjaW9uIFtzaG93TW9kYWxdPVwic2hvd01vZGFsSW5mb3JtYWNpb25cIiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcnRpY3Vsb109XCJhcnRpY3Vsb1NlbGVjdGVkXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAoZXZlbnRTZWxlY3Rpb24pPVwib25FdmVudEluZm9ybWFjaW9uKCRldmVudClcIiAqbmdJZj1cInNob3dNb2RhbEluZm9ybWFjaW9uXCI+XG48L2xpYi1zZWxlY2Npb24tYXJ0aWN1bG8taW5mb3JtYWNpb24+ICAgICJdfQ==
522
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL1VzZXJzL3VyaWVsbWFuemFub3J1aXovcHJvZ3JhbW1pbmcvYW5ndWxhci92cy1lcnAtcHJveWVjdC1saWJzL3Byb2plY3RzL2VycC1jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3NlbGVjY2lvbmEtYXJ0aWN1bG8vc2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQudHMiLCJsaWIvY29tcG9uZW50cy9zZWxlY2Npb25hLWFydGljdWxvL3NlbGVjY2lvbmEtYXJ0aWN1bG8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztJQzJCM0Qsa0NBQXFFO0lBQUEsWUFBdUI7SUFBQSxpQkFBUzs7O0lBQXpELGdEQUF3QjtJQUFDLGVBQXVCO0lBQXZCLDRDQUF1Qjs7O0lBeUI5Riw4QkFBaUU7SUFBQSxvQ0FBb0I7SUFBQSxpQkFBSzs7O0lBQzFGLDhCQUFpRTtJQUFBLHNCQUFNO0lBQUEsaUJBQUs7OztJQUk1RSw4QkFBZ0Y7SUFBQSxzQkFBTTtJQUFBLGlCQUFLOzs7SUFDM0YsOEJBQWdGO0lBQUEsd0JBQVE7SUFBQSxpQkFBSzs7O0lBQzdGLDhCQUFnRjtJQUFBLHdCQUFRO0lBQUEsaUJBQUs7OztJQUM3Riw4QkFBZ0Y7SUFBQSx3QkFBUTtJQUFBLGlCQUFLOzs7SUFDN0YsOEJBQWdGO0lBQUEsd0JBQVE7SUFBQSxpQkFBSzs7O0lBQzdGLDhCQUFnRjtJ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L0MsZUFBNEM7UUFBNUMsNERBQTRDO1FBT2IsZUFBbUM7UUFBbkMsbURBQW1DO1FBVzlDLGVBQWdDO1FBQWhDLGdEQUFnQztRQUUvRCxlQUFtQztRQUFuQyx5Q0FBbUM7UUFrQjFDLGVBQXVCO1FBQXZCLHlDQUF1QixvQkFBQSxvQkFBQTtRQXNIbkIsZUFBa0I7UUFBbEIsb0NBQWtCLGdDQUFBLG1CQUFBLG1EQUFBO1FBYWUsZUFBNEI7UUFBNUIsK0NBQTRCOztrRER6Sy9ELDJCQUEyQjtjQUx2QyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtnQkFDbkMsV0FBVyxFQUFFLHNDQUFzQztnQkFDbkQsU0FBUyxFQUFFLENBQUMscUNBQXFDLENBQUM7YUFDbkQ7MEhBR1UsYUFBYTtrQkFBckIsS0FBSztZQUNHLGFBQWE7a0JBQXJCLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBRUcsc0JBQXNCO2tCQUE5QixLQUFLO1lBRUksb0JBQW9CO2tCQUE3QixNQUFNO1lBQ0csaUJBQWlCO2tCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tICcuL3N0b2NrLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWxtYWNlbiB9IGZyb20gJy4uL2FsbWFjZW4vbW9kZWxzL0FsbWFjZW4nO1xuaW1wb3J0IHsgUGFnaW5hdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGFnaW5hdGUuc2VydmljZSc7XG5pbXBvcnQgeyBBbG1hY2VuU2VydmljZSB9IGZyb20gJy4uL2FsbWFjZW4vc2VydmljZXMvYWxtYWNlbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXNlbGVjY2lvbmEtYXJ0aWN1bG8nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWNjaW9uYS1hcnRpY3Vsby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlbGVjY2lvbmEtYXJ0aWN1bG8uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjY2lvbmFBcnRpY3Vsb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlndXJhY2lvbiA6IGFueTtcbiAgQElucHV0KCkgc2hvd0FydGljdWxvcyA6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG1vdmltaWVudG86IGFueTtcblxuICBASW5wdXQoKSBtYW5lamFVbmlkYWRTZWN1bmRhcmlhIDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBlbWl0RmlsYVNlbGVjY2lvbmFkYSA6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZW1pdFNob3dBcnRpY3Vsb3MgOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXG5cbiAgYWxtYWNlbkxpc3Q6IEFsbWFjZW5bXTtcbiAgYXJ0aWN1bG9zTGlzdDogYW55ID0gW107XG4gIHBhZ2U6IGFueTtcbiAgb3JkZW5hciA9IFtdO1xuICBidXNxdWVkYUFydGljdWxvcyA6IGFueSA9IHtcbiAgICB0aXBvQnVzcXVlZGEgOiAnJ1xuICB9O1xuXG4gIHNob3dNb2RhbDpib29sZWFuPWZhbHNlO1xuICBhcnRpY3Vsb1NlbGVjdGVkOmFueTtcbiAgc2hvd01vZGFsSW5mb3JtYWNpb246Ym9vbGVhbj1mYWxzZTtcbiAgc2hvd0ZpcnN0VGltZTpib29sZWFuPXRydWU7XG4gIGNsYXNpZmljYWRvckxpc3Q6YW55PVtdO1xuICBzaXplID0gNjQwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgICAgICAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2UgICAgOiBTdG9ja1NlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3BhZ2luYXRlU2VydmljZSA6IFBhZ2luYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfYWxtYWNlblNlcnZpY2UgIDogQWxtYWNlblNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucGFnZSA9IHRoaXMuX3BhZ2luYXRlU2VydmljZS5nZXRQYWdlKCk7XG4gICAgdGhpcy5vcmRlbmFyID0gdGhpcy5fcGFnaW5hdGVTZXJ2aWNlLmdldE9yZGVuKFxuICAgICAgW1xuICAgICAgICB7cGFyYW06ICdub21icmUnLCBsYWJlbDogJ2VzdGF0dXMnfVxuICAgICAgXSwgJ2VzJyk7XG5cblxuICAgIHRoaXMuc2hvd0ZpcnN0VGltZT10cnVlO1xuICAgIHRoaXMuX2FsbWFjZW5TZXJ2aWNlLmdldEFsbCggdGhpcy5jb25maWd1cmFjaW9uLnBhcmFtcyApLnN1YnNjcmliZShcbiAgICAgIChkYXRhOiBhbnkgKSA9PiB7XG4gICAgICAgIHRoaXMuYWxtYWNlbkxpc3QgPSA8QWxtYWNlbltdPiBkYXRhLmRhdGE7XG4gICAgICB9XG4gICAgKTtcbiAgICBcbiAgICB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYSA9ICdDRCc7XG4gICAgLy90ZW1wdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1Nob3coKTtcbiAgfVxuXG4gIHBhZ2luYSggZSApe1xuICAgIHRoaXMucGFnZS5yb3dzID0gZS5yb3dzO1xuICAgIHRoaXMucGFnZS5vZmZzZXQgPSBlLmZpcnN0O1xuICAgIHRoaXMub2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoKTtcbiAgfVxuICBvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1Nob3coKXtcbiAgICB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYSA9ICdDRCc7XG4gICAgaWYgKHRoaXMuc2hvd0ZpcnN0VGltZSl7XG4gICAgICB0aGlzLm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zKCk7XG4gICAgICB0aGlzLnNob3dGaXJzdFRpbWU9ZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgb2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3MoICkge1xuICAgIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MucGFyYW1zID0gdGhpcy5fcGFnaW5hdGVTZXJ2aWNlLmdldFBhcmFtcyggdGhpcy5wYWdlICk7XG4gICAgY29uc3QgcGFyYW1ldHJvcyA9IHtcbiAgICAgIGFsbWFjZW4gICAgICAgICAgICAgOiAoIHRoaXMuY29uZmlndXJhY2lvbi5ub09jdXBhQWxhbWFjZW4gPyBudWxsIDogdGhpcy5tb3ZpbWllbnRvLmFsbWFjZW4gKSxcbiAgICAgIHRpcG9QcmVjaW8gICAgICAgICAgOiB0aGlzLmNvbmZpZ3VyYWNpb24udGlwb1ByZWNpbyxcbiAgICAgIGJ1c3F1ZWRhQXJ0aWN1bG9zICAgOiB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLFxuICAgICAgdGlwb0FydGljdWxvICAgICAgICA6IHRoaXMuY29uZmlndXJhY2lvbi50aXBvQXJ0aWN1bG8gPyB0aGlzLmNvbmZpZ3VyYWNpb24udGlwb0FydGljdWxvIDogbnVsbCxcbiAgICAgIG51bWVyb1ByZWNpb0RlZmF1bHQgOiB0aGlzLmNvbmZpZ3VyYWNpb24ubnVtZXJvUHJlY2lvRGVmYXVsdFxuICAgIH07ICAgICAgIFxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5vYnRlbmVyRXhpc3RlbmNpYXNBcnRpY3Vsb3NEZXNjcmlwY2lvbiggcGFyYW1ldHJvcyAsIHRoaXMuYnVzcXVlZGFBcnRpY3Vsb3MucGFyYW1zICkudGhlbihcbiAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5hcnRpY3Vsb3NMaXN0ID0gZGF0YS5hcnRpY3Vsb3NEZXNjcmlwY2lvbjtcbiAgICAgICAgdGhpcy5wYWdlLnRvdGFsID0gZGF0YS50b3RhbDsgIFxuICAgICAgICBpZiAoZGF0YS5jbGFzaWZpY2Fkb3Jlcyl7XG4gICAgICAgICAgdGhpcy5jbGFzaWZpY2Fkb3JMaXN0ID0gZGF0YS5jbGFzaWZpY2Fkb3JlcztcbiAgICAgICAgfSAgICAgIFxuICAgICAgICBpZighdGhpcy5zaG93TW9kYWwpe1xuICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICkuY2F0Y2goZSA9PntcbiAgICAgIHRoaXMuYXJ0aWN1bG9zTGlzdCA9ICBbXTtcbiAgICB9KTtcbiAgfVxuXG4gIG9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zVmFsKCl7XG4gICAgaWYgKCB0aGlzLmJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYSAhPSAnJyAmJiAhdGhpcy5idXNxdWVkYUFydGljdWxvcy5rZXkgKVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcygpOyBcbiAgfVxuICBvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc0tleSggJGV2ZW50ICkge1xuICAgIGlmKCAkZXZlbnQua2V5ID09PSAnRW50ZXInKVxuICAgICAgdGhpcy5vYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcygpO1xuICB9XG5cbiAgZmlsYVNlbGVjY2lvbmFkYSggJGV2ZW50ICkge1xuICAgIHRoaXMuZW1pdEZpbGFTZWxlY2Npb25hZGEuZW1pdCgkZXZlbnQpO1xuICB9XG5cbiAgZW1pdGlyU2hvd0FydGljdWxvcygpIHtcbiAgICB0aGlzLmVtaXRTaG93QXJ0aWN1bG9zLmVtaXQoIDAgKTtcbiAgfVxuXG4gIHNlcmllc0FydGljdWxvKHNlcmllcyl7XG4gICAgICBjb25zb2xlLmxvZyhzZXJpZXMpO1xuICB9XG5cbiAgb25TaG93SW5mb3JtYWNpb24oZXZlbnRBcnRpY3Vsbyl7XG4gICAgdGhpcy5hcnRpY3Vsb1NlbGVjdGVkID0gZXZlbnRBcnRpY3VsbztcbiAgICB0aGlzLnNob3dNb2RhbEluZm9ybWFjaW9uID0gdHJ1ZTtcbiAgfVxuXG4gIG9uRXZlbnRJbmZvcm1hY2lvbihldmVudCkge1xuICAgIHRoaXMuc2hvd01vZGFsSW5mb3JtYWNpb24gPSBldmVudC5zdGF0dXM7XHQgICAgICBcbiAgfVxufVxuIiwiPCEtLWluaWNpYSBzZWxlY2Npb24gZGUgYXJ0aWN1bG9zLS0+XG48IS0tICAgKG9uU2hvdyk9XCJvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvc1Nob3coKVwiIC0tPlxuPCEtLVxuICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1jZW50ZXJcIiA+LS0+XG48cC1kaWFsb2cgaGVhZGVyPVwie3sgJ0FydGljdWxvcycgfCB0cmFuc2xhdGUgfX1cIiBbKHZpc2libGUpXT1cInNob3dBcnRpY3Vsb3NcIiBbbWF4aW1pemFibGVdPVwidHJ1ZVwiXG4gIChvblNob3cpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NTaG93KClcIiAob25IaWRlKT1cImJ1c3F1ZWRhQXJ0aWN1bG9zID0geyB0aXBvQnVzcXVlZGEgOiAnJ307IGVtaXRpclNob3dBcnRpY3Vsb3MoKVwiXG4gIFtiYXNlWkluZGV4XT1cIjEwMDAwXCIgW2Jsb2NrU2Nyb2xsXT1cInRydWVcIiBbc3R5bGVdPVwieyd3aWR0aCc6IHNpemUrJ3B4JywgJ21pbi13aWR0aCc6ICcyMDBweCd9XCIgW21pblldPVwiNzBcIj5cbiAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1mbHVpZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTYgbGc6Y29sLTZcIj5cbiAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O1wiPlxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDExNXB4O1wiPlxuICAgICAgICAgIDxzZWxlY3QgcElucHV0VGV4dCBbKG5nTW9kZWwpXT1cImJ1c3F1ZWRhQXJ0aWN1bG9zLnRpcG9CdXNxdWVkYVwiIChjaGFuZ2UpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NWYWwoKVwiPlxuICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkNcIj5Db2RpZ288L29wdGlvbj5cbiAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJEXCI+RGVzY3JpcGNpb248L29wdGlvbj5cbiAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJDRFwiPkNvaW5jaWRlbmNpYTwvb3B0aW9uPlxuICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkNJXCI+SWd1YWwgYTwvb3B0aW9uPlxuICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgc3R5bGU9XCJ3aWR0aDogMjAwcHg7XCIgcElucHV0VGV4dCBbKG5nTW9kZWwpXT1cImJ1c3F1ZWRhQXJ0aWN1bG9zLmtleVwiXG4gICAgICAgICAgKGtleXByZXNzKT1cIm9idGVuZXJFeGlzdGVuY2lhQXJ0aWN1bG9zS2V5KCAkZXZlbnQgKVwiIGlkPVwia2V5XCI+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLXNlYXJjaFwiIHN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi1zZWNvbmRhcnlcIlxuICAgICAgICAgIChjbGljayk9XCJvYnRlbmVyRXhpc3RlbmNpYUFydGljdWxvcyggKVwiPjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtNiBsZzpjb2wtNlwiPlxuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7XCI+XG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMTAwcHg7XCI+XG4gICAgICAgICAgPGxhYmVsIGZvcj1cImFsbWFjZW5cIj5BbG1hY2VuOjwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c2VsZWN0IHBJbnB1dFRleHQgc3R5bGU9XCJ3aWR0aDogMjAwcHg7XCIgWyhuZ01vZGVsKV09XCJtb3ZpbWllbnRvLmFsbWFjZW5cIiBkaXNhYmxlZCBpZD1cImFsbWFjZW5cIlxuICAgICAgICAgIChjaGFuZ2UpPVwib2J0ZW5lckV4aXN0ZW5jaWFBcnRpY3Vsb3NWYWwoKVwiPlxuICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGFsbWFjZW4gb2YgYWxtYWNlbkxpc3RcIiB2YWx1ZT1cInt7IGFsbWFjZW4uaWQgfX1cIj57e2FsbWFjZW4uZGVzY3JpcGNpb259fTwvb3B0aW9uPlxuICAgICAgICA8L3NlbGVjdD5cbiAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDwhLS1cbiAgICAgIDxkaXYgaWQ9XCJ0YWJsZS13cmFwcGVyXCI+XG4gICAgICA8ZGl2IGlkPVwidGFibGUtc2Nyb2xsXCI+LS0+XG4gIDwhLS0gbmV3IHRhYmxlXG4gICAgICAgPHAtdGFibGUgI2R0IFtjb2x1bW5zXT1cImNvbHNERFwiIFt2YWx1ZV09XCJsaXN0RERcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCIgXG4gICAgICAgW3N0eWxlXT1cInt3aWR0aDogJzEwMCUnfSBcIiBbc2Nyb2xsSGVpZ2h0XT1cIm1heEggKyAncHgnXCIgXG4gICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiIFsoc2VsZWN0aW9uKV09XCJzZWxlY3RlZFhNTFwiIChvblJvd1NlbGVjdCk9XCJvblJvd1NlbGVjdCgkZXZlbnQpXCIgZGF0YUtleT1cInV1aWRcIj5cblxuICAgICAgIFxuICAgICAgLS0+XG5cbiAgPHAtdGFibGUgW3ZhbHVlXT1cImFydGljdWxvc0xpc3RcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCIgI2R0IHNjcm9sbEhlaWdodD1cIjQwMHB4XCIgW3Jlc3BvbnNpdmVdPVwidHJ1ZVwiXG4gICAgc2VsZWN0aW9uTW9kZT1cInNpbmdsZVwiIChvblJvd1NlbGVjdCk9XCJmaWxhU2VsZWNjaW9uYWRhKCRldmVudClcIj5cbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+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=