@seniorsistemas/yms-integration 1.17.0 → 1.18.1-6d266c8d-8967-4486-9c95-56f811933847

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 (90) hide show
  1. package/bundles/seniorsistemas-yms-integration.umd.js +122 -54
  2. package/bundles/seniorsistemas-yms-integration.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-yms-integration.umd.min.js +1 -1
  4. package/bundles/seniorsistemas-yms-integration.umd.min.js.map +1 -1
  5. package/esm2015/src/erp-senior/core/entities/agenda/agenda.module.js +2 -2
  6. package/esm2015/src/erp-senior/core/entities/cidade/cidade.module.js +2 -2
  7. package/esm2015/src/erp-senior/core/entities/contrato-compra/contrato-compra.module.js +2 -2
  8. package/esm2015/src/erp-senior/core/entities/contrato-compra-item/contrato-compra-item.module.js +2 -2
  9. package/esm2015/src/erp-senior/core/entities/derivacao/derivacao.module.js +2 -2
  10. package/esm2015/src/erp-senior/core/entities/devolucao/devolucao.module.js +2 -2
  11. package/esm2015/src/erp-senior/core/entities/empresa/empresa.module.js +2 -2
  12. package/esm2015/src/erp-senior/core/entities/estado/estado.module.js +2 -2
  13. package/esm2015/src/erp-senior/core/entities/expedicao/expedicao.module.js +2 -2
  14. package/esm2015/src/erp-senior/core/entities/familia-produto/familia-produto.module.js +2 -2
  15. package/esm2015/src/erp-senior/core/entities/filial/filial.module.js +2 -2
  16. package/esm2015/src/erp-senior/core/entities/log-integracao/log-integracao.module.js +2 -2
  17. package/esm2015/src/erp-senior/core/entities/ordem-compra/ordem-compra.module.js +7 -2
  18. package/esm2015/src/erp-senior/core/entities/pais/pais.module.js +2 -2
  19. package/esm2015/src/erp-senior/core/entities/pedido-venda/pedido-venda.module.js +2 -2
  20. package/esm2015/src/erp-senior/core/entities/pedido-venda-item/pedido-venda-item.module.js +2 -2
  21. package/esm2015/src/erp-senior/core/entities/pessoa/pessoa.module.js +2 -2
  22. package/esm2015/src/erp-senior/core/entities/pessoa-endereco/pessoa-endereco.module.js +2 -2
  23. package/esm2015/src/erp-senior/core/entities/pessoa-fisica/pessoa-fisica.module.js +2 -2
  24. package/esm2015/src/erp-senior/core/entities/pessoa-juridica/pessoa-juridica.module.js +2 -2
  25. package/esm2015/src/erp-senior/core/entities/processo-avulso/processo-avulso.module.js +7 -2
  26. package/esm2015/src/erp-senior/core/entities/produto/produto.module.js +2 -2
  27. package/esm2015/src/erp-senior/core/entities/recebimento-contrato/recebimento.module.js +7 -2
  28. package/esm2015/src/erp-senior/core/entities/recebimento-ordem-compra/recebimento-ordem-compra.module.js +7 -2
  29. package/esm2015/src/erp-senior/core/entities/royalty/royalty.module.js +2 -2
  30. package/esm2015/src/erp-senior/core/entities/safra/safra.module.js +2 -2
  31. package/esm2015/src/erp-senior/core/entities/transportadora/transportadora.module.js +2 -2
  32. package/esm2015/src/erp-senior/core/entities/unidade-medida/unidade-medida.module.js +2 -2
  33. package/esm2015/src/erp-senior/devolucao/form/devolucao-form.component.js +7 -2
  34. package/esm2015/src/erp-senior/expedicao/form/expedicao-form.component.js +15 -15
  35. package/esm2015/src/erp-senior/processo-avulso/form/processo-avulso-form.component.js +7 -2
  36. package/esm2015/src/erp-senior/recebimento/contrato-form/contrato-form.component.js +20 -4
  37. package/esm2015/src/erp-senior/recebimento/form/recebimento-form.component.js +3 -3
  38. package/esm2015/src/erp-senior/recebimento-ordem-compra/form/recebimento-ordem-compra-form.component.js +7 -2
  39. package/esm2015/src/erp-senior/recebimento-ordem-compra/ordem-compra-form/ordem-compra-form.component.js +13 -4
  40. package/esm2015/src/sam-senior/components/scheduling/scheduling.component.js +2 -2
  41. package/esm2015/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.js +10 -1
  42. package/esm5/src/erp-senior/core/entities/agenda/agenda.module.js +2 -2
  43. package/esm5/src/erp-senior/core/entities/cidade/cidade.module.js +2 -2
  44. package/esm5/src/erp-senior/core/entities/contrato-compra/contrato-compra.module.js +2 -2
  45. package/esm5/src/erp-senior/core/entities/contrato-compra-item/contrato-compra-item.module.js +2 -2
  46. package/esm5/src/erp-senior/core/entities/derivacao/derivacao.module.js +2 -2
  47. package/esm5/src/erp-senior/core/entities/devolucao/devolucao.module.js +2 -2
  48. package/esm5/src/erp-senior/core/entities/empresa/empresa.module.js +2 -2
  49. package/esm5/src/erp-senior/core/entities/estado/estado.module.js +2 -2
  50. package/esm5/src/erp-senior/core/entities/expedicao/expedicao.module.js +2 -2
  51. package/esm5/src/erp-senior/core/entities/familia-produto/familia-produto.module.js +2 -2
  52. package/esm5/src/erp-senior/core/entities/filial/filial.module.js +2 -2
  53. package/esm5/src/erp-senior/core/entities/log-integracao/log-integracao.module.js +2 -2
  54. package/esm5/src/erp-senior/core/entities/ordem-compra/ordem-compra.module.js +7 -2
  55. package/esm5/src/erp-senior/core/entities/pais/pais.module.js +2 -2
  56. package/esm5/src/erp-senior/core/entities/pedido-venda/pedido-venda.module.js +2 -2
  57. package/esm5/src/erp-senior/core/entities/pedido-venda-item/pedido-venda-item.module.js +2 -2
  58. package/esm5/src/erp-senior/core/entities/pessoa/pessoa.module.js +2 -2
  59. package/esm5/src/erp-senior/core/entities/pessoa-endereco/pessoa-endereco.module.js +2 -2
  60. package/esm5/src/erp-senior/core/entities/pessoa-fisica/pessoa-fisica.module.js +2 -2
  61. package/esm5/src/erp-senior/core/entities/pessoa-juridica/pessoa-juridica.module.js +2 -2
  62. package/esm5/src/erp-senior/core/entities/processo-avulso/processo-avulso.module.js +7 -2
  63. package/esm5/src/erp-senior/core/entities/produto/produto.module.js +2 -2
  64. package/esm5/src/erp-senior/core/entities/recebimento-contrato/recebimento.module.js +7 -2
  65. package/esm5/src/erp-senior/core/entities/recebimento-ordem-compra/recebimento-ordem-compra.module.js +7 -2
  66. package/esm5/src/erp-senior/core/entities/royalty/royalty.module.js +2 -2
  67. package/esm5/src/erp-senior/core/entities/safra/safra.module.js +2 -2
  68. package/esm5/src/erp-senior/core/entities/transportadora/transportadora.module.js +2 -2
  69. package/esm5/src/erp-senior/core/entities/unidade-medida/unidade-medida.module.js +2 -2
  70. package/esm5/src/erp-senior/devolucao/form/devolucao-form.component.js +7 -2
  71. package/esm5/src/erp-senior/expedicao/form/expedicao-form.component.js +15 -15
  72. package/esm5/src/erp-senior/processo-avulso/form/processo-avulso-form.component.js +7 -2
  73. package/esm5/src/erp-senior/recebimento/contrato-form/contrato-form.component.js +21 -4
  74. package/esm5/src/erp-senior/recebimento/form/recebimento-form.component.js +3 -3
  75. package/esm5/src/erp-senior/recebimento-ordem-compra/form/recebimento-ordem-compra-form.component.js +7 -2
  76. package/esm5/src/erp-senior/recebimento-ordem-compra/ordem-compra-form/ordem-compra-form.component.js +14 -4
  77. package/esm5/src/sam-senior/components/scheduling/scheduling.component.js +2 -2
  78. package/esm5/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.js +10 -1
  79. package/fesm2015/seniorsistemas-yms-integration.js +120 -54
  80. package/fesm2015/seniorsistemas-yms-integration.js.map +1 -1
  81. package/fesm5/seniorsistemas-yms-integration.js +122 -54
  82. package/fesm5/seniorsistemas-yms-integration.js.map +1 -1
  83. package/package.json +1 -1
  84. package/seniorsistemas-yms-integration.metadata.json +1 -1
  85. package/src/erp-senior/devolucao/form/devolucao-form.component.d.ts +2 -0
  86. package/src/erp-senior/processo-avulso/form/processo-avulso-form.component.d.ts +2 -0
  87. package/src/erp-senior/recebimento/contrato-form/contrato-form.component.d.ts +10 -4
  88. package/src/erp-senior/recebimento-ordem-compra/form/recebimento-ordem-compra-form.component.d.ts +2 -0
  89. package/src/erp-senior/recebimento-ordem-compra/ordem-compra-form/ordem-compra-form.component.d.ts +6 -2
  90. package/src/sam-senior/components/visitor-edit/visitor-edit-list/visitor-edit-list.component.d.ts +1 -0
@@ -8,17 +8,21 @@ import { Subject } from 'rxjs';
8
8
  import * as _moment from "moment";
9
9
  import { OrdemCompraService } from "../../core/entities/ordem-compra/ordem-compra.service";
10
10
  import { OrdemCompra } from "../../core/entities/ordem-compra/ordem-compra";
11
+ import { ActivatedRoute } from "@angular/router";
12
+ import { takeUntil } from "rxjs/operators";
11
13
  const moment = _moment;
12
14
  let OrdemCompraFormComponent = class OrdemCompraFormComponent {
13
- constructor(dialogRef, dialogConfig, ordemCompraService, translate, fb) {
15
+ constructor(dialogRef, dialogConfig, ordemCompraService, translate, fb, route) {
14
16
  this.dialogRef = dialogRef;
15
17
  this.dialogConfig = dialogConfig;
16
18
  this.ordemCompraService = ordemCompraService;
17
19
  this.translate = translate;
18
20
  this.fb = fb;
21
+ this.route = route;
19
22
  this.ordemCompraLookupDisplayFields = ["codigo", "empresa.nome"];
20
23
  this.ordemCompraAdvancedDisplayFields = ["id", "codigo", "empresa.nome", "filial.nome", "pessoa.nome"];
21
24
  this.ordemCompraLookupSeparator = " - ";
25
+ this.permissions = {};
22
26
  this.ngUnsubscribe = new Subject();
23
27
  }
24
28
  ngOnInit() {
@@ -30,6 +34,10 @@ let OrdemCompraFormComponent = class OrdemCompraFormComponent {
30
34
  this.formGroup = this.getForm();
31
35
  this.ordemCompraSearchFields = this.getOrdemCompraFields();
32
36
  this.ordemCompraSearchGridFields = this.getOrdemCompraGridFields();
37
+ this.route.data.pipe(takeUntil(this.ngUnsubscribe)).subscribe((dataChanges) => this.onRouteDataChange(dataChanges));
38
+ }
39
+ onRouteDataChange(dataChanges) {
40
+ this.permissions = dataChanges.allPermissions.agenda;
33
41
  }
34
42
  ngOnDestroy() {
35
43
  this.ngUnsubscribe.next();
@@ -174,13 +182,14 @@ let OrdemCompraFormComponent = class OrdemCompraFormComponent {
174
182
  };
175
183
  OrdemCompraFormComponent = tslib_1.__decorate([
176
184
  Component({
177
- template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 ui-md-6\">\n <label for=\"ordemCompra\">Ordem Compra</label>\n <s-lookup dataKey=\"id\" name=\"ordemCompra\"\n formControlName=\"ordemCompra\" [searchFields]=\"ordemCompraSearchFields\"\n [searchGridFields]=\"ordemCompraSearchGridFields\"\n [searchGridData]=\"ordemCompraSearchGridData\" [multiple]=\"false\"\n [lookupSuggestions]=\"ordemCompraLookupSuggestions\"\n (onLookupRequest)=\"onOrdemCompraLookupRequest($event)\"\n (onSearchRequest)=\"onOrdemCompraSearchRequest($event)\"\n lookupDisplayField=\"label\" [searchTotalRecords]=\"ordemCompraSearchTotalRecords\"\n [searchTitle]=\"'yms.erp.recebimento_ordem_compra_search_title' | translate\"\n [searchEmptyTitle]=\"'yms.erp.nothing_found' | translate\"\n [filterLabel]=\"'yms.erp.filter' | translate\" [clearLabel]=\"'yms.erp.clear' | translate\"\n [cancelLabel]=\"'yms.erp.cancel' | translate\" [selectLabel]=\"'yms.erp.select' | translate\"\n [searchTotalRecordsLabel]=\"'yms.erp.total_records' | translate: {value: ordemCompraSearchTotalRecords}\">\n </s-lookup>\n </div>\n </div>\n \n <div style=\"margin-top: 10px;\">\n <div class=\"separator\"></div>\n <s-button style=\"float: right;\" [label]=\"'save' | translate\" priority=\"primary\" (onClick)=\"save()\"></s-button>\n <s-button style=\"float: right;\" [label]=\"'cancel' | translate\" priority=\"link\" (onClick)=\"close()\"></s-button>\n </div>\n</form>"
185
+ template: "<form [formGroup]=\"formGroup\">\n <div class=\"ui-g ui-fluid\">\n <div class=\"ui-g-12 ui-md-6\">\n <label for=\"ordemCompra\">Ordem Compra</label>\n <s-lookup dataKey=\"id\" name=\"ordemCompra\"\n formControlName=\"ordemCompra\" [searchFields]=\"ordemCompraSearchFields\"\n [searchGridFields]=\"ordemCompraSearchGridFields\"\n [searchGridData]=\"ordemCompraSearchGridData\" [multiple]=\"false\"\n [lookupSuggestions]=\"ordemCompraLookupSuggestions\"\n (onLookupRequest)=\"onOrdemCompraLookupRequest($event)\"\n (onSearchRequest)=\"onOrdemCompraSearchRequest($event)\"\n lookupDisplayField=\"label\" [searchTotalRecords]=\"ordemCompraSearchTotalRecords\"\n [searchTitle]=\"'yms.erp.recebimento_ordem_compra_search_title' | translate\"\n [searchEmptyTitle]=\"'yms.erp.nothing_found' | translate\"\n [filterLabel]=\"'yms.erp.filter' | translate\" [clearLabel]=\"'yms.erp.clear' | translate\"\n [cancelLabel]=\"'yms.erp.cancel' | translate\" [selectLabel]=\"'yms.erp.select' | translate\"\n [searchTotalRecordsLabel]=\"'yms.erp.total_records' | translate: {value: ordemCompraSearchTotalRecords}\">\n </s-lookup>\n </div>\n </div>\n \n <div style=\"margin-top: 10px;\">\n <div class=\"separator\"></div>\n <s-button style=\"float: right;\" [label]=\"'save' | translate\" priority=\"primary\" (onClick)=\"save()\"\n [disabled]=\"!permissions.editar\"></s-button>\n <s-button style=\"float: right;\" [label]=\"'cancel' | translate\" priority=\"link\" (onClick)=\"close()\"></s-button>\n </div>\n</form>"
178
186
  }),
179
187
  tslib_1.__metadata("design:paramtypes", [DynamicDialogRef,
180
188
  DynamicDialogConfig,
181
189
  OrdemCompraService,
182
190
  TranslateService,
183
- FormBuilder])
191
+ FormBuilder,
192
+ ActivatedRoute])
184
193
  ], OrdemCompraFormComponent);
185
194
  export { OrdemCompraFormComponent };
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9lcnAtc2VuaW9yL3JlY2ViaW1lbnRvLW9yZGVtLWNvbXByYS9vcmRlbS1jb21wcmEtZm9ybS9vcmRlbS1jb21wcmEtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUkzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDNUUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO0FBS3ZCLElBQWEsd0JBQXdCLEdBQXJDLE1BQWEsd0JBQXdCO0lBa0JqQyxZQUNZLFNBQTJCLEVBQzNCLFlBQWlDLEVBQ2pDLGtCQUFzQyxFQUN0QyxTQUEyQixFQUMzQixFQUFlO1FBSmYsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMs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U0FBUyxDQUFDO1FBQ1AsdXNEQUFpRDtLQUNwRCxDQUFDOzZDQW9CeUIsZ0JBQWdCO1FBQ2IsbUJBQW1CO1FBQ2Isa0JBQWtCO1FBQzNCLGdCQUFnQjtRQUN2QixXQUFXO0dBdkJsQix3QkFBd0IsQ0FvTnBDO1NBcE5ZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQnVpbGRlciwgRm9ybUFycmF5LCBWYWxpZGF0b3JzLCBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ1JlZiwgRHluYW1pY0RpYWxvZ0NvbmZpZyB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgRm9ybUZpZWxkLCBGaWVsZFR5cGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgKiBhcyBfbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7IE9yZGVtQ29tcHJhU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL2VudGl0aWVzL29yZGVtLWNvbXByYS9vcmRlbS1jb21wcmEuc2VydmljZVwiO1xuaW1wb3J0IHsgUGVzc29hIH0gZnJvbSAnLi8uLi8uLi9jb3JlL2VudGl0aWVzL3Blc3NvYS9wZXNzb2EnO1xuaW1wb3J0IHsgRmlsaWFsIH0gZnJvbSAnLi8uLi8uLi9jb3JlL2VudGl0aWVzL2ZpbGlhbC9maWxpYWwnO1xuaW1wb3J0IHsgQWdlbmRhIH0gZnJvbSBcIi4uLy4uL2NvcmUvZW50aXRpZXMvYWdlbmRhL2FnZW5kYVwiO1xuaW1wb3J0IHsgT3JkZW1Db21wcmEgfSBmcm9tIFwiLi4vLi4vY29yZS9lbnRpdGllcy9vcmRlbS1jb21wcmEvb3JkZW0tY29tcHJhXCI7XG5jb25zdCBtb21lbnQgPSBfbW9tZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vb3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE9yZGVtQ29tcHJhRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgICBwdWJsaWMgb3JkZW1Db21wcmFTZWFyY2hGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWRGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWREYXRhOiBPcmRlbUNvbXByYVtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cERpc3BsYXlGaWVsZHMgPSBbXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIl07XG4gICAgcHVibGljIG9yZGVtQ29tcHJhQWR2YW5jZWREaXNwbGF5RmllbGRzID0gW1wiaWRcIiwgXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIiwgXCJmaWxpYWwubm9tZVwiLCBcInBlc3NvYS5ub21lXCJdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cFNlcGFyYXRvciA9IFwiIC0gXCI7XG4gICAgcHVibGljIG9yZGVtQ29tcHJhTG9va3VwU3VnZ2VzdGlvbnM6IE9yZGVtQ29tcHJhW107XG4gICAgcHVibGljIG9yZGVtQ29tcHJhU2VhcmNoVG90YWxSZWNvcmRzOiBudW1iZXI7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgYWdlbmRhOiBBZ2VuZGE7XG4gICAgcHJpdmF0ZSBmaWxpYWw6IEZpbGlhbDtcbiAgICBwcml2YXRlIGZvcm5lY2Vkb3I6IFBlc3NvYTtcbiAgICBwcml2YXRlIG9yZGVuc0NvbXByYTogc3RyaW5nW107XG5cbiAgICBjb25zdHJ1Y3RvciAoXG4gICAgICAgIHByaXZhdGUgZGlhbG9nUmVmOiBEeW5hbWljRGlhbG9nUmVmLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBvcmRlbUNvbXByYVNlcnZpY2U6IE9yZGVtQ29tcHJhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyXG4gICAgKSB7IH1cbiAgIFxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGRhdGEgfSA9IHRoaXMuZGlhbG9nQ29uZmlnO1xuICAgICAgICB0aGlzLmFnZW5kYSA9IGRhdGEuYWdlbmRhO1xuICAgICAgICB0aGlzLmZpbGlhbCA9IGRhdGEuZmlsaWFsO1xuICAgICAgICB0aGlzLmZvcm5lY2Vkb3IgPSBkYXRhLmZvcm5lY2Vkb3I7XG4gICAgICAgIHRoaXMub3JkZW5zQ29tcHJhID0gZGF0YS5vcmRlbnMubWFwKCh7IG9yZGVtQ29tcHJhOiBvcmRlbUNvbXByYSB9OiBhbnkpID0+ICEhb3JkZW1Db21wcmEgPyBvcmRlbUNvbXByYS5pZCA6IHVuZGVmaW5lZCkuZmlsdGVyKCh2YWw6IGFueSkgPT4gISF2YWwpO1xuXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5nZXRGb3JtKCk7XG5cbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaEZpZWxkcyA9IHRoaXMuZ2V0T3JkZW1Db21wcmFGaWVsZHMoKTtcbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaEdyaWRGaWVsZHMgPSB0aGlzLmdldE9yZGVtQ29tcHJhR3JpZEZpZWxkcygpO1xuICAgIH1cbiAgICBcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uT3JkZW1Db21wcmFMb29rdXBSZXF1ZXN0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgc29ydCA9IHRoaXMub3JkZW1Db21wcmFMb29rdXBEaXNwbGF5RmllbGRzLm1hcCgoZmllbGQ6IGFueSkgPT4gKHsgZmllbGQsIG9yZGVyOiAnQXNjJyB9KSlbMF07XG5cbiAgICAgICAgY29uc3QgZmlsdGVyOiBhbnkgPSB7XG4gICAgICAgICAgICBudW1lcm86ICt2YWx1ZS5yZXBsYWNlKC9cXEQvZywgXCJcIilcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBmaWxpYWwgPSB0aGlzLmZpbGlhbDtcbiAgICAgICAgaWYgKGZpbGlhbCAmJiBmaWxpYWwuZW1wcmVzYSAmJiBmaWxpYWwuZW1wcmVzYS5pZCkge1xuICAgICAgICAgICAgZmlsdGVyLmVtcHJlc2FJZCA9IGZpbGlhbC5lbXByZXNhLmlkO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlcnZpY2VcbiAgICAgICAgICAgIC5saXN0T3JkZW5zQ29tcHJhKHtcbiAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgcGVzc29hSWQ6ICh0aGlzLmZvcm5lY2Vkb3IgfHwge2lkOiB1bmRlZmluZWR9KS5pZCxcbiAgICAgICAgICAgICAgICBmaWxpYWxJZDogKGZpbGlhbCB8fCB7aWQ6IHVuZGVmaW5lZH0pLmlkLFxuICAgICAgICAgICAgICAgIHRpcG9BZ2VuZGFtZW50b0lkOiB0aGlzLmFnZW5kYSAmJiB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8gPyB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8uaWQgOiBudWxsLFxuICAgICAgICAgICAgICAgIG9yZGVuc0NvbXByYVNlbGVjaW9uYWRvczogdGhpcy5vcmRlbnNDb21wcmEsXG4gICAgICAgICAgICAgICAgcGFnaW5hOiB7XG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiAzMCxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgICAgICAgICBsaXN0YU9yZGVuYWNhbzogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbXBvOiBzb3J0LmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVuYWNhbzogc29ydC5vcmRlclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZW1Db21wcmFMb29rdXBTdWdnZXN0aW9ucyA9IGxpc3QuY29udGVudHMubWFwKE9yZGVtQ29tcHJhLmZyb21EdG8pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uT3JkZW1Db21wcmFTZWFyY2hSZXF1ZXN0KGV2ZW50OiBhbnkpIHtcbiAgICAgICAgY29uc3QgeyBmaXJzdCwgcm93cywgbXVsdGlTb3J0TWV0YSwgZmlsdGVyRGF0YSB9ID0gZXZlbnQ7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBmaXJzdCAvIHJvd3M7XG4gICAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZ2V0T3JkZW1Db21wcmFGaWVsZHMoKVxuICAgICAgICAgICAgLmZpbHRlcigoeyBuYW1lIH0pID0+IGZpbHRlckRhdGFbbmFtZV0gIT0gdW5kZWZpbmVkICYmIGZpbHRlckRhdGFbbmFtZV0gIT0gXCJcIilcbiAgICAgICAgICAgIC5yZWR1Y2UoKGEsIGI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmEsXG4gICAgICAgICAgICAgICAgICAgIFtiLm5hbWVdOiBmaWx0ZXJEYXRhW2IubmFtZV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSwge30gYXMgYW55KTtcblxuICAgICAgICBjb25zdCBmaWxpYWwgPSB0aGlzLmZpbGlhbDtcbiAgICAgICAgaWYgKGZpbGlhbCAmJiBmaWxpYWwuZW1wcmVzYSAmJiBmaWxpYWwuZW1wcmVzYS5pZCkge1xuICAgICAgICAgICAgZmlsdGVyLmVtcHJlc2FJZCA9IGZpbGlhbC5lbXByZXNhLmlkO1xuICAgICAgICB9XG5cbiAgICAgICAgZmlsdGVyLmRhdGFFbWlzc2FvID0gZmlsdGVyLmRhdGFFbWlzc2FvICYmIG1vbWVudChmaWx0ZXIuZGF0YUVtaXNzYW8pLmZvcm1hdChcIllZWVktTU0tRERcIik7XG4gICAgICAgIGNvbnN0IHNvcnQgPSAobXVsdGlTb3J0TWV0YSB8fCBbXSkubGVuZ3RoID8geyBmaWVsZDogbXVsdGlTb3J0TWV0YVswXS5maWVsZCwgb3JkZXI6IG11bHRpU29ydE1ldGFbMF0ub3JkZXIgPT09IDEgPyAnQXNjJyA6ICdEZXNjJyB9IDogeyBmaWVsZDogJ251bWVybycsIG9yZGVyOiAnQXNjJyB9O1xuXG4gICAgICAgIHRoaXMub3JkZW1Db21wcmFTZXJ2aWNlXG4gICAgICAgICAgICAubGlzdE9yZGVuc0NvbXByYSh7XG4gICAgICAgICAgICAgICAgLi4uZmlsdGVyLFxuICAgICAgICAgICAgICAgIHBlc3NvYUlkOiAodGhpcy5mb3JuZWNlZG9yIHx8IHtpZDogdW5kZWZpbmVkfSkuaWQsXG4gICAgICAgICAgICAgICAgZmlsaWFsSWQ6IChmaWxpYWwgfHwge2lkOiB1bmRlZmluZWR9KS5pZCxcbiAgICAgICAgICAgICAgICB0aXBvQWdlbmRhbWVudG9JZDogdGhpcy5hZ2VuZGEgJiYgdGhpcy5hZ2VuZGEudGlwb0FnZW5kYW1lbnRvID8gdGhpcy5hZ2VuZGEudGlwb0FnZW5kYW1lbnRvLmlkIDogbnVsbCxcbiAgICAgICAgICAgICAgICBvcmRlbnNDb21wcmFTZWxlY2lvbmFkb3M6IHRoaXMub3JkZW5zQ29tcHJhLFxuICAgICAgICAgICAgICAgIHBhZ2luYToge1xuICAgICAgICAgICAgICAgICAgICBsaW1pdDogcm93cyxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBwYWdlLFxuICAgICAgICAgICAgICAgICAgICBsaXN0YU9yZGVuYWNhbzogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbXBvOiBzb3J0LmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVuYWNhbzogc29ydC5vcmRlclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hHcmlkRGF0YSA9IGxpc3QuY29udGVudHMubWFwKE9yZGVtQ29tcHJhLmZyb21EdG8pO1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hUb3RhbFJlY29yZHMgPSBsaXN0LnRvdGFsRWxlbWVudHM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UmVjUGFnaW5hKGZpcnN0OiBudW1iZXIsIHJvd3M6IG51bWJlciwgc29ydDogYW55KSB7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBmaXJzdCAvIHJvd3M7XG4gICAgICAgIGNvbnN0IG9yZGVyQnkgPSBzb3J0ICYmIHNvcnQubGVuZ3RoIFxuICAgICAgICAgICAgPyBzb3J0Lm1hcCgoczogYW55KSA9PiAgKHsgY2FtcG86IHMuZmllbGQsIG9yZGVuYWNhbzogcy5vcmRlciA9PT0gMSA/ICdBc2MnIDogJ0Rlc2MnIH0pKSBcbiAgICAgICAgICAgIDogW107XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG9mZnNldDogcGFnZSxcbiAgICAgICAgICAgIGxpbWl0OiByb3dzLFxuICAgICAgICAgICAgbGlzdGFPcmRlbmFjYW86IG9yZGVyQnlcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVBbGxGb3JtRmllbGRzKGZvcm1Hcm91cDogRm9ybUdyb3VwKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaChmaWVsZCA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmdldChmaWVsZCk7XG4gICAgICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sKSB7XG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCl7XG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHMoY29udHJvbCk7XG4gICAgICAgICAgICB9IFxuICAgICAgICAgICAgZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1BcnJheSkge1xuICAgICAgICAgICAgICAgIGNvbnRyb2wuY29udHJvbHMuZm9yRWFjaCgoZm9ybTogRm9ybUdyb3VwKSA9PiB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyhmb3JtKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzYXZlKCkge1xuICAgICAgICBpZiAoIXRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUFsbEZvcm1GaWVsZHModGhpcy5mb3JtR3JvdXApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2xvc2UodGhpcy5mb3JtR3JvdXAuZ2V0KCdvcmRlbUNvbXByYScpLnZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2UoZGF0YT86IGFueSkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShkYXRhKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZvcm0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIG9yZGVtQ29tcHJhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9yZGVtQ29tcHJhRmllbGRzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb2RpZ29cIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5vcmRlbV9jb21wcmFfY29kaWdvXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZW1wcmVzYS5ub21lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAuZW1wcmVzYVwiKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImZpbGlhbC5ub21lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAuZmlsaWFsXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9yZGVtQ29tcHJhR3JpZEZpZWxkcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiY29kaWdvXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLkludGVnZXIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLm9yZGVtX2NvbXByYV9jb2RpZ29cIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJlbXByZXNhLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5lbXByZXNhXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZmlsaWFsLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5maWxpYWxcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJwZXNzb2Eubm9tZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLnBlc3NvYV9ub21lXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG59Il19
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9lcnAtc2VuaW9yL3JlY2ViaW1lbnRvLW9yZGVtLWNvbXByYS9vcmRlbS1jb21wcmEtZm9ybS9vcmRlbS1jb21wcmEtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUkzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7QUFLdkIsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7SUFtQmpDLFlBQ1ksU0FBMkIsRUFDM0IsWUFBaUMsRUFDakMsa0JBQXNDLEVBQ3RDLFNBQTJCLEVBQ2xCLEVBQWUsRUFDZixL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QkFDdEIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDO2FBQ25ELENBQUM7WUFDRixJQUFJLFNBQVMsQ0FBQztnQkFDVixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNO2dCQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7YUFDbEQsQ0FBQztZQUNGLElBQUksU0FBUyxDQUFDO2dCQUNWLElBQUksRUFBRSxhQUFhO2dCQUNuQixJQUFJLEVBQUUsU0FBUyxDQUFDLE1BQU07Z0JBQ3RCLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQzthQUN2RCxDQUFDO1NBQ0wsQ0FBQztJQUNOLENBQUM7Q0FDSixDQUFBO0FBM05ZLHdCQUF3QjtJQUhwQyxTQUFTLENBQUM7UUFDUCx1dkRBQWlEO0tBQ3BELENBQUM7NkNBcUJ5QixnQkFBZ0I7UUFDYixtQkFBbUI7UUFDYixrQkFBa0I7UUFDM0IsZ0JBQWdCO1FBQ2QsV0FBVztRQUNSLGNBQWM7R0F6QmpDLHdCQUF3QixDQTJOcEM7U0EzTlksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyLCBGb3JtQXJyYXksIFZhbGlkYXRvcnMsIEZvcm1Db250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nUmVmLCBEeW5hbWljRGlhbG9nQ29uZmlnIH0gZnJvbSBcInByaW1lbmcvYXBpXCI7XG5pbXBvcnQgeyBGb3JtRmllbGQsIEZpZWxkVHlwZSB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCAqIGFzIF9tb21lbnQgZnJvbSBcIm1vbWVudFwiO1xuaW1wb3J0IHsgT3JkZW1Db21wcmFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvZW50aXRpZXMvb3JkZW0tY29tcHJhL29yZGVtLWNvbXByYS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBQZXNzb2EgfSBmcm9tICcuLy4uLy4uL2NvcmUvZW50aXRpZXMvcGVzc29hL3Blc3NvYSc7XG5pbXBvcnQgeyBGaWxpYWwgfSBmcm9tICcuLy4uLy4uL2NvcmUvZW50aXRpZXMvZmlsaWFsL2ZpbGlhbCc7XG5pbXBvcnQgeyBBZ2VuZGEgfSBmcm9tIFwiLi4vLi4vY29yZS9lbnRpdGllcy9hZ2VuZGEvYWdlbmRhXCI7XG5pbXBvcnQgeyBPcmRlbUNvbXByYSB9IGZyb20gXCIuLi8uLi9jb3JlL2VudGl0aWVzL29yZGVtLWNvbXByYS9vcmRlbS1jb21wcmFcIjtcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5jb25zdCBtb21lbnQgPSBfbW9tZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vb3JkZW0tY29tcHJhLWZvcm0uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE9yZGVtQ29tcHJhRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgICBwdWJsaWMgb3JkZW1Db21wcmFTZWFyY2hGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWRGaWVsZHM6IEZvcm1GaWVsZFtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYVNlYXJjaEdyaWREYXRhOiBPcmRlbUNvbXByYVtdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cERpc3BsYXlGaWVsZHMgPSBbXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIl07XG4gICAgcHVibGljIG9yZGVtQ29tcHJhQWR2YW5jZWREaXNwbGF5RmllbGRzID0gW1wiaWRcIiwgXCJjb2RpZ29cIiwgXCJlbXByZXNhLm5vbWVcIiwgXCJmaWxpYWwubm9tZVwiLCBcInBlc3NvYS5ub21lXCJdO1xuICAgIHB1YmxpYyBvcmRlbUNvbXByYUxvb2t1cFNlcGFyYXRvciA9IFwiIC0gXCI7XG4gICAgcHVibGljIG9yZGVtQ29tcHJhTG9va3VwU3VnZ2VzdGlvbnM6IE9yZGVtQ29tcHJhW107XG4gICAgcHVibGljIG9yZGVtQ29tcHJhU2VhcmNoVG90YWxSZWNvcmRzOiBudW1iZXI7XG4gICAgcHVibGljIHBlcm1pc3Npb25zOiBhbnkgPSB7fTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgcHJpdmF0ZSBhZ2VuZGE6IEFnZW5kYTtcbiAgICBwcml2YXRlIGZpbGlhbDogRmlsaWFsO1xuICAgIHByaXZhdGUgZm9ybmVjZWRvcjogUGVzc29hO1xuICAgIHByaXZhdGUgb3JkZW5zQ29tcHJhOiBzdHJpbmdbXTtcblxuICAgIGNvbnN0cnVjdG9yIChcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nQ29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnLFxuICAgICAgICBwcml2YXRlIG9yZGVtQ29tcHJhU2VydmljZTogT3JkZW1Db21wcmFTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICkgeyB9XG4gICBcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBkYXRhIH0gPSB0aGlzLmRpYWxvZ0NvbmZpZztcbiAgICAgICAgdGhpcy5hZ2VuZGEgPSBkYXRhLmFnZW5kYTtcbiAgICAgICAgdGhpcy5maWxpYWwgPSBkYXRhLmZpbGlhbDtcbiAgICAgICAgdGhpcy5mb3JuZWNlZG9yID0gZGF0YS5mb3JuZWNlZG9yO1xuICAgICAgICB0aGlzLm9yZGVuc0NvbXByYSA9IGRhdGEub3JkZW5zLm1hcCgoeyBvcmRlbUNvbXByYTogb3JkZW1Db21wcmEgfTogYW55KSA9PiAhIW9yZGVtQ29tcHJhID8gb3JkZW1Db21wcmEuaWQgOiB1bmRlZmluZWQpLmZpbHRlcigodmFsOiBhbnkpID0+ICEhdmFsKTtcblxuICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZ2V0Rm9ybSgpO1xuXG4gICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hGaWVsZHMgPSB0aGlzLmdldE9yZGVtQ29tcHJhRmllbGRzKCk7XG4gICAgICAgIHRoaXMub3JkZW1Db21wcmFTZWFyY2hHcmlkRmllbGRzID0gdGhpcy5nZXRPcmRlbUNvbXByYUdyaWRGaWVsZHMoKTtcbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZGF0YUNoYW5nZXM6IGFueSkgPT4gdGhpcy5vblJvdXRlRGF0YUNoYW5nZShkYXRhQ2hhbmdlcykpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJvdXRlRGF0YUNoYW5nZShkYXRhQ2hhbmdlczogYW55KSB7XG4gICAgICAgIHRoaXMucGVybWlzc2lvbnMgPSBkYXRhQ2hhbmdlcy5hbGxQZXJtaXNzaW9ucy5hZ2VuZGE7XG4gICAgfVxuICAgIFxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25PcmRlbUNvbXByYUxvb2t1cFJlcXVlc3QodmFsdWU6IHN0cmluZykge1xuICAgICAgICBjb25zdCBzb3J0ID0gdGhpcy5vcmRlbUNvbXByYUxvb2t1cERpc3BsYXlGaWVsZHMubWFwKChmaWVsZDogYW55KSA9PiAoeyBmaWVsZCwgb3JkZXI6ICdBc2MnIH0pKVswXTtcblxuICAgICAgICBjb25zdCBmaWx0ZXI6IGFueSA9IHtcbiAgICAgICAgICAgIG51bWVybzogK3ZhbHVlLnJlcGxhY2UoL1xcRC9nLCBcIlwiKVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGZpbGlhbCA9IHRoaXMuZmlsaWFsO1xuICAgICAgICBpZiAoZmlsaWFsICYmIGZpbGlhbC5lbXByZXNhICYmIGZpbGlhbC5lbXByZXNhLmlkKSB7XG4gICAgICAgICAgICBmaWx0ZXIuZW1wcmVzYUlkID0gZmlsaWFsLmVtcHJlc2EuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9yZGVtQ29tcHJhU2VydmljZVxuICAgICAgICAgICAgLmxpc3RPcmRlbnNDb21wcmEoe1xuICAgICAgICAgICAgICAgIC4uLmZpbHRlcixcbiAgICAgICAgICAgICAgICBwZXNzb2FJZDogKHRoaXMuZm9ybmVjZWRvciB8fCB7aWQ6IHVuZGVmaW5lZH0pLmlkLFxuICAgICAgICAgICAgICAgIGZpbGlhbElkOiAoZmlsaWFsIHx8IHtpZDogdW5kZWZpbmVkfSkuaWQsXG4gICAgICAgICAgICAgICAgdGlwb0FnZW5kYW1lbnRvSWQ6IHRoaXMuYWdlbmRhICYmIHRoaXMuYWdlbmRhLnRpcG9BZ2VuZGFtZW50byA/IHRoaXMuYWdlbmRhLnRpcG9BZ2VuZGFtZW50by5pZCA6IG51bGwsXG4gICAgICAgICAgICAgICAgb3JkZW5zQ29tcHJhU2VsZWNpb25hZG9zOiB0aGlzLm9yZGVuc0NvbXByYSxcbiAgICAgICAgICAgICAgICBwYWdpbmE6IHtcbiAgICAgICAgICAgICAgICAgICAgbGltaXQ6IDMwLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgICAgIGxpc3RhT3JkZW5hY2FvOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FtcG86IHNvcnQuZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZW5hY2FvOiBzb3J0Lm9yZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobGlzdDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcmRlbUNvbXByYUxvb2t1cFN1Z2dlc3Rpb25zID0gbGlzdC5jb250ZW50cy5tYXAoT3JkZW1Db21wcmEuZnJvbUR0byk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25PcmRlbUNvbXByYVNlYXJjaFJlcXVlc3QoZXZlbnQ6IGFueSkge1xuICAgICAgICBjb25zdCB7IGZpcnN0LCByb3dzLCBtdWx0aVNvcnRNZXRhLCBmaWx0ZXJEYXRhIH0gPSBldmVudDtcbiAgICAgICAgY29uc3QgcGFnZSA9IGZpcnN0IC8gcm93cztcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5nZXRPcmRlbUNvbXByYUZpZWxkcygpXG4gICAgICAgICAgICAuZmlsdGVyKCh7IG5hbWUgfSkgPT4gZmlsdGVyRGF0YVtuYW1lXSAhPSB1bmRlZmluZWQgJiYgZmlsdGVyRGF0YVtuYW1lXSAhPSBcIlwiKVxuICAgICAgICAgICAgLnJlZHVjZSgoYSwgYjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uYSxcbiAgICAgICAgICAgICAgICAgICAgW2IubmFtZV06IGZpbHRlckRhdGFbYi5uYW1lXVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LCB7fSBhcyBhbnkpO1xuXG4gICAgICAgIGNvbnN0IGZpbGlhbCA9IHRoaXMuZmlsaWFsO1xuICAgICAgICBpZiAoZmlsaWFsICYmIGZpbGlhbC5lbXByZXNhICYmIGZpbGlhbC5lbXByZXNhLmlkKSB7XG4gICAgICAgICAgICBmaWx0ZXIuZW1wcmVzYUlkID0gZmlsaWFsLmVtcHJlc2EuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICBmaWx0ZXIuZGF0YUVtaXNzYW8gPSBmaWx0ZXIuZGF0YUVtaXNzYW8gJiYgbW9tZW50KGZpbHRlci5kYXRhRW1pc3NhbykuZm9ybWF0KFwiWVlZWS1NTS1ERFwiKTtcbiAgICAgICAgY29uc3Qgc29ydCA9IChtdWx0aVNvcnRNZXRhIHx8IFtdKS5sZW5ndGggPyB7IGZpZWxkOiBtdWx0aVNvcnRNZXRhWzBdLmZpZWxkLCBvcmRlcjogbXVsdGlTb3J0TWV0YVswXS5vcmRlciA9PT0gMSA/ICdBc2MnIDogJ0Rlc2MnIH0gOiB7IGZpZWxkOiAnbnVtZXJvJywgb3JkZXI6ICdBc2MnIH07XG5cbiAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlcnZpY2VcbiAgICAgICAgICAgIC5saXN0T3JkZW5zQ29tcHJhKHtcbiAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgcGVzc29hSWQ6ICh0aGlzLmZvcm5lY2Vkb3IgfHwge2lkOiB1bmRlZmluZWR9KS5pZCxcbiAgICAgICAgICAgICAgICBmaWxpYWxJZDogKGZpbGlhbCB8fCB7aWQ6IHVuZGVmaW5lZH0pLmlkLFxuICAgICAgICAgICAgICAgIHRpcG9BZ2VuZGFtZW50b0lkOiB0aGlzLmFnZW5kYSAmJiB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8gPyB0aGlzLmFnZW5kYS50aXBvQWdlbmRhbWVudG8uaWQgOiBudWxsLFxuICAgICAgICAgICAgICAgIG9yZGVuc0NvbXByYVNlbGVjaW9uYWRvczogdGhpcy5vcmRlbnNDb21wcmEsXG4gICAgICAgICAgICAgICAgcGFnaW5hOiB7XG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiByb3dzLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhZ2UsXG4gICAgICAgICAgICAgICAgICAgIGxpc3RhT3JkZW5hY2FvOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FtcG86IHNvcnQuZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZW5hY2FvOiBzb3J0Lm9yZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobGlzdDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaEdyaWREYXRhID0gbGlzdC5jb250ZW50cy5tYXAoT3JkZW1Db21wcmEuZnJvbUR0byk7XG4gICAgICAgICAgICAgICAgdGhpcy5vcmRlbUNvbXByYVNlYXJjaFRvdGFsUmVjb3JkcyA9IGxpc3QudG90YWxFbGVtZW50cztcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRSZWNQYWdpbmEoZmlyc3Q6IG51bWJlciwgcm93czogbnVtYmVyLCBzb3J0OiBhbnkpIHtcbiAgICAgICAgY29uc3QgcGFnZSA9IGZpcnN0IC8gcm93cztcbiAgICAgICAgY29uc3Qgb3JkZXJCeSA9IHNvcnQgJiYgc29ydC5sZW5ndGggXG4gICAgICAgICAgICA/IHNvcnQubWFwKChzOiBhbnkpID0+ICAoeyBjYW1wbzogcy5maWVsZCwgb3JkZW5hY2FvOiBzLm9yZGVyID09PSAxID8gJ0FzYycgOiAnRGVzYycgfSkpIFxuICAgICAgICAgICAgOiBbXTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgb2Zmc2V0OiBwYWdlLFxuICAgICAgICAgICAgbGltaXQ6IHJvd3MsXG4gICAgICAgICAgICBsaXN0YU9yZGVuYWNhbzogb3JkZXJCeVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcbiAgICAgICAgT2JqZWN0LmtleXMoZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKGZpZWxkID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcbiAgICAgICAgICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICAgICAgICBjb250cm9sLm1hcmtBc0RpcnR5KHsgb25seVNlbGY6IHRydWUgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUdyb3VwKXtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyhjb250cm9sKTtcbiAgICAgICAgICAgIH0gXG4gICAgICAgICAgICBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgICAgY29udHJvbC5jb250cm9scy5mb3JFYWNoKChmb3JtOiBGb3JtR3JvdXApID0+IHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKGZvcm0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNhdmUoKSB7XG4gICAgICAgIGlmICghdGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jbG9zZSh0aGlzLmZvcm1Hcm91cC5nZXQoJ29yZGVtQ29tcHJhJykudmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZShkYXRhPzogYW55KSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGRhdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Rm9ybSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgb3JkZW1Db21wcmE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3JkZW1Db21wcmFGaWVsZHMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImNvZGlnb1wiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLm9yZGVtX2NvbXByYV9jb2RpZ29cIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJlbXByZXNhLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5lbXByZXNhXCIpXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZmlsaWFsLm5vbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLmVycC5maWxpYWxcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3JkZW1Db21wcmFHcmlkRmllbGRzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb2RpZ29cIixcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuSW50ZWdlcixcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAub3JkZW1fY29tcHJhX2NvZGlnb1wiKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImVtcHJlc2Eubm9tZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLmVtcHJlc2FcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJmaWxpYWwubm9tZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IEZpZWxkVHlwZS5TdHJpbmcsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMuZXJwLmZpbGlhbFwiKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgRm9ybUZpZWxkKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcInBlc3NvYS5ub21lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5lcnAucGVzc29hX25vbWVcIilcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cbn0iXX0=
@@ -178,7 +178,7 @@ tslib_1.__decorate([
178
178
  SchedulingComponent = tslib_1.__decorate([
179
179
  Component({
180
180
  selector: "scheduling",
181
- template: "<visited-info [agenda]=\"agenda\"> </visited-info>\r\n<form [formGroup]=\"formGroup\" *sLoadingState=\"loading\" novalidate>\r\n <div class=\"ui-fluid\">\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12 ui-md-6 required\">\r\n <label for=\"motivoVisita\">{{ \"yms.patio.sam_motivo_visita\" | translate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"motivoVisita\"\r\n name=\"motivoVisita\"\r\n pInputText\r\n formControlName=\"motivoVisita\"\r\n autocomplete=\"off\"\r\n />\r\n <s-control-errors\r\n [control]=\"formGroup.controls['motivoVisita']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\"\r\n >\r\n </s-control-errors>\r\n </div>\r\n <div class=\"ui-g-12 ui-md-6 required\">\r\n <label for=\"portaria\">{{ \"yms.patio.sam_portaria\" | translate }}</label>\r\n <s-lookup\r\n dataKey=\"id\"\r\n id=\"portaria\"\r\n name=\"portaria\"\r\n formControlName=\"portaria\"\r\n lookupDisplayField=\"name\"\r\n [multiple]=\"false\"\r\n (onLookupRequest)=\"portariaLookup.lookupRequest($event)\"\r\n (onSearchRequest)=\"portariaLookup.searchRequest($event)\"\r\n [searchTitle]=\"'yms.patio.sam_portaria' | translate\"\r\n [searchEmptyTitle]=\"'nothing_found' | translate\"\r\n [searchFields]=\"portariaLookup.searchFields\"\r\n [searchGridFields]=\"portariaLookup.searchGridFields\"\r\n [searchGridData]=\"portariaLookup.searchGridData\"\r\n [searchTotalRecords]=\"portariaLookup.searchTotalRecords\"\r\n [searchTotalRecordsLabel]=\"\r\n 'total_records' | translate : { value: portariaLookup.searchTotalRecords }\r\n \">\r\n </s-lookup>\r\n <s-control-errors \r\n [control]=\"formGroup.controls['portaria']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\">\r\n </s-control-errors>\r\n </div>\r\n <div class=\"ui-g-6 ui-md-3 required\">\r\n <label for=\"dataSaida\">{{ \"yms.patio.sam_data_saida\" | translate }}</label>\r\n <p-calendar\r\n id=\"dataSaida\"\r\n name=\"dataSaida\"\r\n formControlName=\"dataSaida\"\r\n inputId=\"dataSaida\"\r\n [showIcon]=\"true\"\r\n [locale]=\"localeConfig.calendar\"\r\n [dateFormat]=\"localeConfig.calendar.dateFormat\"\r\n >\r\n </p-calendar>\r\n <s-control-errors\r\n [control]=\"formGroup.controls['dataSaida']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\"\r\n >\r\n </s-control-errors>\r\n </div>\r\n <div class=\"ui-g-6 ui-md-3 required\">\r\n <label for=\"horaSaida\">{{ \"yms.patio.sam_hora_saida\" | translate }}</label>\r\n <p-calendar\r\n id=\"horaSaida\"\r\n name=\"horaSaida\"\r\n formControlName=\"horaSaida\"\r\n [locale]=\"localeConfig.calendar\"\r\n inputId=\"horaSaida\"\r\n [showTime]=\"true\"\r\n [hourFormat]=\"localeConfig.calendar.hourFormat\"\r\n [timeOnly]=\"true\"\r\n >\r\n </p-calendar>\r\n <s-control-errors\r\n [control]=\"formGroup.controls['horaSaida']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\"\r\n >\r\n </s-control-errors>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n<div class=\"separator\"></div>\r\n<div *ngIf=\"schedulingVisitors.visitors\">\r\n <visitante-component [motorista]=\"agenda.motorista\" [(visitors)]=\"schedulingVisitors.visitors\"></visitante-component>\r\n</div>\r\n<div class=\"separator\"></div>\r\n<div style=\"margin-top: 10px\">\r\n <s-button priority=\"primary\" [label]=\"'save' | translate\" (onClick)=\"onSave()\"\r\n [disabled]=\"loading || !canSave()\"></s-button>\r\n <s-button *ngIf=\"saveAndInitButton\" priority=\"primary\" [label]=\"'save_and_init' | translate\" (onClick)=\"onSave(true)\"\r\n [disabled]=\"loading\"></s-button>\r\n \r\n</div>\r\n"
181
+ template: "<visited-info [agenda]=\"agenda\"> </visited-info>\r\n<form [formGroup]=\"formGroup\" *sLoadingState=\"loading\" novalidate>\r\n <div class=\"ui-fluid\">\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12 ui-md-6 required\">\r\n <label for=\"motivoVisita\">{{ \"yms.patio.sam_motivo_visita\" | translate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"motivoVisita\"\r\n name=\"motivoVisita\"\r\n pInputText\r\n formControlName=\"motivoVisita\"\r\n autocomplete=\"off\"\r\n />\r\n <s-control-errors\r\n [control]=\"formGroup.controls['motivoVisita']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\"\r\n >\r\n </s-control-errors>\r\n </div>\r\n <div class=\"ui-g-12 ui-md-6 required\">\r\n <label for=\"portaria\">{{ \"yms.patio.sam_portaria\" | translate }}</label>\r\n <s-lookup\r\n dataKey=\"id\"\r\n id=\"portaria\"\r\n name=\"portaria\"\r\n formControlName=\"portaria\"\r\n lookupDisplayField=\"name\"\r\n [multiple]=\"false\"\r\n (onLookupRequest)=\"portariaLookup.lookupRequest($event)\"\r\n (onSearchRequest)=\"portariaLookup.searchRequest($event)\"\r\n [searchTitle]=\"'yms.patio.sam_portaria' | translate\"\r\n [searchEmptyTitle]=\"'nothing_found' | translate\"\r\n [searchFields]=\"portariaLookup.searchFields\"\r\n [searchGridFields]=\"portariaLookup.searchGridFields\"\r\n [searchGridData]=\"portariaLookup.searchGridData\"\r\n [searchTotalRecords]=\"portariaLookup.searchTotalRecords\"\r\n [searchTotalRecordsLabel]=\"\r\n 'total_records' | translate : { value: portariaLookup.searchTotalRecords }\r\n \">\r\n </s-lookup>\r\n <s-control-errors \r\n [control]=\"formGroup.controls['portaria']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\">\r\n </s-control-errors>\r\n </div>\r\n <div class=\"ui-g-6 ui-md-3 required\">\r\n <label for=\"dataSaida\">{{ \"yms.patio.sam_data_saida\" | translate }}</label>\r\n <p-calendar\r\n id=\"dataSaida\"\r\n name=\"dataSaida\"\r\n formControlName=\"dataSaida\"\r\n inputId=\"dataSaida\"\r\n [showIcon]=\"true\"\r\n [locale]=\"localeConfig.calendar\"\r\n [dateFormat]=\"localeConfig.calendar.dateFormat\"\r\n >\r\n </p-calendar>\r\n <s-control-errors\r\n [control]=\"formGroup.controls['dataSaida']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\"\r\n >\r\n </s-control-errors>\r\n </div>\r\n <div class=\"ui-g-6 ui-md-3 required\">\r\n <label for=\"horaSaida\">{{ \"yms.patio.sam_hora_saida\" | translate }}</label>\r\n <p-calendar\r\n id=\"horaSaida\"\r\n name=\"horaSaida\"\r\n formControlName=\"horaSaida\"\r\n [locale]=\"localeConfig.calendar\"\r\n inputId=\"horaSaida\"\r\n [showTime]=\"true\"\r\n [hourFormat]=\"localeConfig.calendar.hourFormat\"\r\n [timeOnly]=\"true\"\r\n >\r\n </p-calendar>\r\n <s-control-errors\r\n [control]=\"formGroup.controls['horaSaida']\"\r\n [errorMessages]=\"{ required: 'error_required' | translate }\"\r\n >\r\n </s-control-errors>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n<div class=\"separator\"></div>\r\n<div *ngIf=\"schedulingVisitors.visitors\">\r\n <visitante-component\r\n [motorista]=\"agenda.motorista\"\r\n [(visitors)]=\"schedulingVisitors.visitors\"\r\n (hasChange)=\"isFormModified = $event\">\r\n </visitante-component>\r\n</div>\r\n<div class=\"separator\"></div>\r\n<div style=\"margin-top: 10px\">\r\n <s-button priority=\"primary\" [label]=\"'save' | translate\" (onClick)=\"onSave()\"\r\n [disabled]=\"loading || !canSave()\"></s-button>\r\n <s-button *ngIf=\"saveAndInitButton\" priority=\"primary\" [label]=\"'save_and_init' | translate\" (onClick)=\"onSave(true)\"\r\n [disabled]=\"loading\"></s-button>\r\n \r\n</div>\r\n"
182
182
  }),
183
183
  tslib_1.__metadata("design:paramtypes", [FormBuilder,
184
184
  ActivatedRoute,
@@ -188,4 +188,4 @@ SchedulingComponent = tslib_1.__decorate([
188
188
  SchedulingService])
189
189
  ], SchedulingComponent);
190
190
  export { SchedulingComponent };
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMveW1zLWludGVncmF0aW9uLyIsInNvdXJjZXMiOlsic3JjL3NhbS1zZW5pb3IvY29tcG9uZW50cy9zY2hlZHVsaW5nL3NjaGVkdWxpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUcvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENB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O3NDQUFlLFlBQVk7eURBQStCO0FBRjFELG1CQUFtQjtJQUovQixTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsWUFBWTtRQUN0QiwwMEpBQTBDO0tBQzdDLENBQUM7NkNBaUIyQixXQUFXO1FBQ1IsY0FBYztRQUNWLGdCQUFnQjtRQUNYLGNBQWM7UUFDaEIsWUFBWTtRQUNQLGlCQUFpQjtHQXJCaEQsbUJBQW1CLENBK00vQjtTQS9NWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybUZpZWxkIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tIFwicHJpbWVuZy9jb21wb25lbnRzL2NvbW1vbi9tZXNzYWdlc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBORVZFUiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwsIG1lcmdlTWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IExvYmJ5RHRvIH0gZnJvbSBcIi4vLi4vLi4vZW50aXRpZXMvbG9iYnktZHRvXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmcgfSBmcm9tIFwiLi8uLi8uLi9lbnRpdGllcy9zY2hlZHVsaW5nXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmdTZXJ2aWNlIH0gZnJvbSBcIi4vc2hlY2h1bGluZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IExvb2t1cCB9IGZyb20gXCIuLi8uLi9jb3JlL2xvb2t1cFwiO1xyXG5pbXBvcnQgeyBMb2JieVNlcnZpY2UgfSBmcm9tIFwiLi9sb2JieS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmdWaXNpdG9ycyB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmctdmlzaXRvcnNcIjtcclxuaW1wb3J0IHsgU2NoZWR1bGluZ0R0byB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmctZHRvXCI7XHJcbmltcG9ydCB7IFZpc2l0U2l0dWF0aW9uIH0gZnJvbSBcIi4uLy4uL21vZGVscy92aXNpdC1zaXR1YXRpb25cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwic2NoZWR1bGluZ1wiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9zY2hlZHVsaW5nLmNvbXBvbmVudC5odG1sXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY2hlZHVsaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG4gICAgQElucHV0KCkgYWdlbmRhOiBhbnk7XHJcbiAgICBAT3V0cHV0KCkgbm90U2F2ZWREYXRhOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgICBzY2hlZHVsaW5nVmlzaXRvcnM6IFNjaGVkdWxpbmdWaXNpdG9ycyA9IG5ldyBTY2hlZHVsaW5nVmlzaXRvcnMoKTtcclxuICAgIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xyXG4gICAgaXNGb3JtTW9kaWZpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGxvYWRpbmcgPSBmYWxzZTsgICAgXHJcbiAgICBsb2NhbGVDb25maWc6IGFueSA9IHt9O1xyXG4gICAgcG9ydGFyaWFMb29rdXA6IExvb2t1cDxMb2JieUR0bz47XHJcblxyXG4gICAgcHJpdmF0ZSBhY3R1YWxWYWx1ZTogYW55O1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBzYXZlQW5kSW5pdEJ1dHRvbjogSFRNTEJ1dHRvbkVsZW1lbnQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBsb2JieVNlcnZpY2U6IExvYmJ5U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHNjaGVkdWxpbmdTZXJ2aWNlOiBTY2hlZHVsaW5nU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG5cclxuICAgICAgICB0aGlzLnBvcnRhcmlhTG9va3VwID0gbmV3IExvb2t1cCh0aGlzLmdldExvYmJ5RmllbGRzKCksIHRoaXMubG9iYnlTZXJ2aWNlKTtcclxuXHJcbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9jYWxlQ29uZmlnID0gZGF0YS5sb2NhbGVDb25maWc7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoY2hhbmdlcyA9PiB0aGlzLmlzRm9ybU1vZGlmaWVkID0gdHJ1ZSApO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICB0aGlzLnNhdmVBbmRJbml0QnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXQnKSBhcyBIVE1MQnV0dG9uRWxlbWVudDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFnZW5kYS5pZCkge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nU2VydmljZVxyXG4gICAgICAgICAgICAgICAgLmdldFNjaGVkdWxpbmdCeVltcyh0aGlzLmFnZW5kYS5pZClcclxuICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmxvYWRpbmcgPSBmYWxzZSkpXHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMuc2NoZWR1bGluZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzY2hlZHVsaW5nID0gcmVzLnNjaGVkdWxpbmc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcgID0gc2NoZWR1bGluZztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMudmlzaXRvcnMgPSByZXMudmlzaXRvcnM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wibW90aXZvVmlzaXRhXCJdLnNldFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZWR1bGluZy5kZXNjcmlwdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImRhdGFTYWlkYVwiXS5zZXRWYWx1ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKHNjaGVkdWxpbmcuZXhwZWN0ZWRFbmREYXRlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImhvcmFTYWlkYVwiXS5zZXRWYWx1ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKHNjaGVkdWxpbmcuZXhwZWN0ZWRFbmREYXRlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldExvYmJ5KHNjaGVkdWxpbmcpLnN1YnNjcmliZSgobG9iYnkpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcInBvcnRhcmlhXCJdLnNldFZhbHVlKGxvYmJ5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFTYWlkYSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFTYWlkYS5zZXRIb3VycyhuZXcgRGF0ZSgpLmdldEhvdXJzKCkgKyAxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZyA9IG5ldyBTY2hlZHVsaW5nRHRvKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnZpc2l0b3JzID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcudmlzaXRTaXR1YXRpb24gPSBWaXNpdFNpdHVhdGlvbi5QRU5ESU5HO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmRlc2NyaXB0aW9uID0gdGhpcy5hZ2VuZGEuZGVzY3JpY2FvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUgPSBkYXRhU2FpZGE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wibW90aXZvVmlzaXRhXCJdLnNldFZhbHVlKHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcuZGVzY3JpcHRpb24pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImRhdGFTYWlkYVwiXS5zZXRWYWx1ZSh0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbXCJob3JhU2FpZGFcIl0uc2V0VmFsdWUodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5wYXRjaEFjdHVhbFZhbHVlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TG9iYnkoc2NoZWR1bGluZzogU2NoZWR1bGluZykge1xyXG4gICAgICAgIGlmIChzY2hlZHVsaW5nLmxvYmJ5SWRTQU0pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9iYnlTZXJ2aWNlLmdldChzY2hlZHVsaW5nLmxvYmJ5SWRTQU0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHBhdGNoQWN0dWFsVmFsdWUoKSB7XHJcbiAgICAgICAgY29uc3QgdGltZW91dFBhdGNoID0gNTAwO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFjdHVhbFZhbHVlID0gdGhpcy5mb3JtR3JvdXAudmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUodGhpcy5hY3R1YWxWYWx1ZSk7XHJcbiAgICAgICAgfSwgdGltZW91dFBhdGNoKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5TYXZlKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5hZ2VuZGEgfHwgIXRoaXMuYWdlbmRhLmlkIHx8ICF0aGlzLmlzRm9ybU1vZGlmaWVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgb25TYXZlKHN0YXJ0PzogYm9vbGVhbikge1xyXG5cclxuICAgICAgaWYgKHRoaXMuZm9ybUdyb3VwLmludmFsaWQpIHtcclxuICAgICAgICB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaXNGb3JtTW9kaWZpZWQgPSBmYWxzZTtcclxuXHJcbiAgICAgIGNvbnN0IHNjaGVkdWxpbmcgPSB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nO1xyXG5cclxuICAgICAgc2NoZWR1bGluZy5pZFlNUyA9IHRoaXMuYWdlbmRhLmlkO1xyXG4gICAgICBzY2hlZHVsaW5nLmRlc2NyaXB0aW9uID0gdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ21vdGl2b1Zpc2l0YSddLnZhbHVlO1xyXG5cclxuICAgICAgc2NoZWR1bGluZy5leHBlY3RlZFN0YXJ0RGF0ZSA9IG5ldyBEYXRlKCk7XHJcblxyXG4gICAgICBjb25zdCBkYXRhU2FpZGE6IERhdGUgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZGF0YVNhaWRhJ10udmFsdWU7XHJcbiAgICAgIGNvbnN0IGhvcmFTYWlkYTogRGF0ZSA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydob3JhU2FpZGEnXS52YWx1ZTtcclxuICAgICAgc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUgPSB0aGlzLmdldERhdGUoZGF0YVNhaWRhLCBob3JhU2FpZGEpO1xyXG5cclxuICAgICAgY29uc3QgcG9ydGFyaWEgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1sncG9ydGFyaWEnXS52YWx1ZTtcclxuICAgICAgaWYgKHBvcnRhcmlhKSB7XHJcbiAgICAgICAgc2NoZWR1bGluZy5sb2JieUlkU0FNID0gcG9ydGFyaWEuaWQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2NoZWR1bGluZ1NlcnZpY2VcclxuICAgICAgICAuc2F2ZVNjaGVkdWxpbmcodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMpXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgIG1lcmdlTWFwKChyZXM6IFNjaGVkdWxpbmdWaXNpdG9ycykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycyA9IHJlcztcclxuICAgICAgICAgICAgaWYgKHN0YXJ0KSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zY2hlZHVsaW5nU2VydmljZS5zdGFydFNjaGVkdWxpbmcoXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5pZFlNU1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgcmV0dXJuIE5FVkVSO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKChzdWNjZXNzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChzdWNjZXNzICYmIHRoaXMuc2F2ZUFuZEluaXRCdXR0b24pIHtcclxuICAgICAgICAgICAgdGhpcy5zYXZlQW5kSW5pdEJ1dHRvbi5jbGljaygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcclxuICAgICAgICBPYmplY3Qua2V5cyhmb3JtR3JvdXAuY29udHJvbHMpLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcclxuICAgICAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xyXG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKGNvbnRyb2wpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAvLyBuYWRhIGEgZmF6ZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldERhdGUoZGF0YTogRGF0ZSwgaG9yYTogRGF0ZSk6IERhdGUge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShcclxuICAgICAgICAgICAgZGF0YS5nZXRGdWxsWWVhcigpLFxyXG4gICAgICAgICAgICBkYXRhLmdldE1vbnRoKCksXHJcbiAgICAgICAgICAgIGRhdGEuZ2V0RGF0ZSgpLFxyXG4gICAgICAgICAgICBob3JhLmdldEhvdXJzKCksXHJcbiAgICAgICAgICAgIGhvcmEuZ2V0TWludXRlcygpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXNldCgpIHtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHsgLi4udGhpcy5hY3R1YWxWYWx1ZSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZUZvcm0oKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgICAgICAgbW90aXZvVmlzaXRhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIHBvcnRhcmlhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIGRhdGFTYWlkYTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxyXG4gICAgICAgICAgICBob3JhU2FpZGE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldExvYmJ5RmllbGRzKCkge1xyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xyXG4gICAgICAgICAgICAgICAgbmFtZTogXCJuYW1lXCIsXHJcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxyXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uc2FtX3BvcnRhcmlhX2Rlc2NyaWNhb1wiKSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxufVxyXG4iXX0=
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMveW1zLWludGVncmF0aW9uLyIsInNvdXJjZXMiOlsic3JjL3NhbS1zZW5pb3IvY29tcG9uZW50cy9zY2hlZHVsaW5nL3NjaGVkdWxpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUcvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENB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O3NDQUFlLFlBQVk7eURBQStCO0FBRjFELG1CQUFtQjtJQUovQixTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsWUFBWTtRQUN0QiwyNUpBQTBDO0tBQzdDLENBQUM7NkNBaUIyQixXQUFXO1FBQ1IsY0FBYztRQUNWLGdCQUFnQjtRQUNYLGNBQWM7UUFDaEIsWUFBWTtRQUNQLGlCQUFpQjtHQXJCaEQsbUJBQW1CLENBK00vQjtTQS9NWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybUZpZWxkIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tIFwicHJpbWVuZy9jb21wb25lbnRzL2NvbW1vbi9tZXNzYWdlc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBORVZFUiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwsIG1lcmdlTWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IExvYmJ5RHRvIH0gZnJvbSBcIi4vLi4vLi4vZW50aXRpZXMvbG9iYnktZHRvXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmcgfSBmcm9tIFwiLi8uLi8uLi9lbnRpdGllcy9zY2hlZHVsaW5nXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmdTZXJ2aWNlIH0gZnJvbSBcIi4vc2hlY2h1bGluZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IExvb2t1cCB9IGZyb20gXCIuLi8uLi9jb3JlL2xvb2t1cFwiO1xyXG5pbXBvcnQgeyBMb2JieVNlcnZpY2UgfSBmcm9tIFwiLi9sb2JieS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNjaGVkdWxpbmdWaXNpdG9ycyB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmctdmlzaXRvcnNcIjtcclxuaW1wb3J0IHsgU2NoZWR1bGluZ0R0byB9IGZyb20gXCIuLy4uLy4uL2VudGl0aWVzL3NjaGVkdWxpbmctZHRvXCI7XHJcbmltcG9ydCB7IFZpc2l0U2l0dWF0aW9uIH0gZnJvbSBcIi4uLy4uL21vZGVscy92aXNpdC1zaXR1YXRpb25cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwic2NoZWR1bGluZ1wiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9zY2hlZHVsaW5nLmNvbXBvbmVudC5odG1sXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY2hlZHVsaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG4gICAgQElucHV0KCkgYWdlbmRhOiBhbnk7XHJcbiAgICBAT3V0cHV0KCkgbm90U2F2ZWREYXRhOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgICBzY2hlZHVsaW5nVmlzaXRvcnM6IFNjaGVkdWxpbmdWaXNpdG9ycyA9IG5ldyBTY2hlZHVsaW5nVmlzaXRvcnMoKTtcclxuICAgIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xyXG4gICAgaXNGb3JtTW9kaWZpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGxvYWRpbmcgPSBmYWxzZTsgICAgXHJcbiAgICBsb2NhbGVDb25maWc6IGFueSA9IHt9O1xyXG4gICAgcG9ydGFyaWFMb29rdXA6IExvb2t1cDxMb2JieUR0bz47XHJcblxyXG4gICAgcHJpdmF0ZSBhY3R1YWxWYWx1ZTogYW55O1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBzYXZlQW5kSW5pdEJ1dHRvbjogSFRNTEJ1dHRvbkVsZW1lbnQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBsb2JieVNlcnZpY2U6IExvYmJ5U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHNjaGVkdWxpbmdTZXJ2aWNlOiBTY2hlZHVsaW5nU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG5cclxuICAgICAgICB0aGlzLnBvcnRhcmlhTG9va3VwID0gbmV3IExvb2t1cCh0aGlzLmdldExvYmJ5RmllbGRzKCksIHRoaXMubG9iYnlTZXJ2aWNlKTtcclxuXHJcbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9jYWxlQ29uZmlnID0gZGF0YS5sb2NhbGVDb25maWc7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoY2hhbmdlcyA9PiB0aGlzLmlzRm9ybU1vZGlmaWVkID0gdHJ1ZSApO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICB0aGlzLnNhdmVBbmRJbml0QnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXQnKSBhcyBIVE1MQnV0dG9uRWxlbWVudDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFnZW5kYS5pZCkge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nU2VydmljZVxyXG4gICAgICAgICAgICAgICAgLmdldFNjaGVkdWxpbmdCeVltcyh0aGlzLmFnZW5kYS5pZClcclxuICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmxvYWRpbmcgPSBmYWxzZSkpXHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMuc2NoZWR1bGluZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzY2hlZHVsaW5nID0gcmVzLnNjaGVkdWxpbmc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcgID0gc2NoZWR1bGluZztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMudmlzaXRvcnMgPSByZXMudmlzaXRvcnM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wibW90aXZvVmlzaXRhXCJdLnNldFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZWR1bGluZy5kZXNjcmlwdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImRhdGFTYWlkYVwiXS5zZXRWYWx1ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKHNjaGVkdWxpbmcuZXhwZWN0ZWRFbmREYXRlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImhvcmFTYWlkYVwiXS5zZXRWYWx1ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKHNjaGVkdWxpbmcuZXhwZWN0ZWRFbmREYXRlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldExvYmJ5KHNjaGVkdWxpbmcpLnN1YnNjcmliZSgobG9iYnkpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcInBvcnRhcmlhXCJdLnNldFZhbHVlKGxvYmJ5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFTYWlkYSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFTYWlkYS5zZXRIb3VycyhuZXcgRGF0ZSgpLmdldEhvdXJzKCkgKyAxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZyA9IG5ldyBTY2hlZHVsaW5nRHRvKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnZpc2l0b3JzID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcudmlzaXRTaXR1YXRpb24gPSBWaXNpdFNpdHVhdGlvbi5QRU5ESU5HO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmRlc2NyaXB0aW9uID0gdGhpcy5hZ2VuZGEuZGVzY3JpY2FvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUgPSBkYXRhU2FpZGE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW1wibW90aXZvVmlzaXRhXCJdLnNldFZhbHVlKHRoaXMuc2NoZWR1bGluZ1Zpc2l0b3JzLnNjaGVkdWxpbmcuZGVzY3JpcHRpb24pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcImRhdGFTYWlkYVwiXS5zZXRWYWx1ZSh0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nLmV4cGVjdGVkU3RhcnREYXRlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbXCJob3JhU2FpZGFcIl0uc2V0VmFsdWUodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5wYXRjaEFjdHVhbFZhbHVlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TG9iYnkoc2NoZWR1bGluZzogU2NoZWR1bGluZykge1xyXG4gICAgICAgIGlmIChzY2hlZHVsaW5nLmxvYmJ5SWRTQU0pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9iYnlTZXJ2aWNlLmdldChzY2hlZHVsaW5nLmxvYmJ5SWRTQU0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHBhdGNoQWN0dWFsVmFsdWUoKSB7XHJcbiAgICAgICAgY29uc3QgdGltZW91dFBhdGNoID0gNTAwO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFjdHVhbFZhbHVlID0gdGhpcy5mb3JtR3JvdXAudmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUodGhpcy5hY3R1YWxWYWx1ZSk7XHJcbiAgICAgICAgfSwgdGltZW91dFBhdGNoKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5TYXZlKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5hZ2VuZGEgfHwgIXRoaXMuYWdlbmRhLmlkIHx8ICF0aGlzLmlzRm9ybU1vZGlmaWVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgb25TYXZlKHN0YXJ0PzogYm9vbGVhbikge1xyXG5cclxuICAgICAgaWYgKHRoaXMuZm9ybUdyb3VwLmludmFsaWQpIHtcclxuICAgICAgICB0aGlzLnZhbGlkYXRlQWxsRm9ybUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaXNGb3JtTW9kaWZpZWQgPSBmYWxzZTtcclxuXHJcbiAgICAgIGNvbnN0IHNjaGVkdWxpbmcgPSB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycy5zY2hlZHVsaW5nO1xyXG5cclxuICAgICAgc2NoZWR1bGluZy5pZFlNUyA9IHRoaXMuYWdlbmRhLmlkO1xyXG4gICAgICBzY2hlZHVsaW5nLmRlc2NyaXB0aW9uID0gdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ21vdGl2b1Zpc2l0YSddLnZhbHVlO1xyXG5cclxuICAgICAgc2NoZWR1bGluZy5leHBlY3RlZFN0YXJ0RGF0ZSA9IG5ldyBEYXRlKCk7XHJcblxyXG4gICAgICBjb25zdCBkYXRhU2FpZGE6IERhdGUgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZGF0YVNhaWRhJ10udmFsdWU7XHJcbiAgICAgIGNvbnN0IGhvcmFTYWlkYTogRGF0ZSA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydob3JhU2FpZGEnXS52YWx1ZTtcclxuICAgICAgc2NoZWR1bGluZy5leHBlY3RlZEVuZERhdGUgPSB0aGlzLmdldERhdGUoZGF0YVNhaWRhLCBob3JhU2FpZGEpO1xyXG5cclxuICAgICAgY29uc3QgcG9ydGFyaWEgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1sncG9ydGFyaWEnXS52YWx1ZTtcclxuICAgICAgaWYgKHBvcnRhcmlhKSB7XHJcbiAgICAgICAgc2NoZWR1bGluZy5sb2JieUlkU0FNID0gcG9ydGFyaWEuaWQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2NoZWR1bGluZ1NlcnZpY2VcclxuICAgICAgICAuc2F2ZVNjaGVkdWxpbmcodGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMpXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgIG1lcmdlTWFwKChyZXM6IFNjaGVkdWxpbmdWaXNpdG9ycykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnNjaGVkdWxpbmdWaXNpdG9ycyA9IHJlcztcclxuICAgICAgICAgICAgaWYgKHN0YXJ0KSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zY2hlZHVsaW5nU2VydmljZS5zdGFydFNjaGVkdWxpbmcoXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsaW5nVmlzaXRvcnMuc2NoZWR1bGluZy5pZFlNU1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgcmV0dXJuIE5FVkVSO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKChzdWNjZXNzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChzdWNjZXNzICYmIHRoaXMuc2F2ZUFuZEluaXRCdXR0b24pIHtcclxuICAgICAgICAgICAgdGhpcy5zYXZlQW5kSW5pdEJ1dHRvbi5jbGljaygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcclxuICAgICAgICBPYmplY3Qua2V5cyhmb3JtR3JvdXAuY29udHJvbHMpLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcclxuICAgICAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xyXG4gICAgICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKGNvbnRyb2wpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAvLyBuYWRhIGEgZmF6ZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldERhdGUoZGF0YTogRGF0ZSwgaG9yYTogRGF0ZSk6IERhdGUge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShcclxuICAgICAgICAgICAgZGF0YS5nZXRGdWxsWWVhcigpLFxyXG4gICAgICAgICAgICBkYXRhLmdldE1vbnRoKCksXHJcbiAgICAgICAgICAgIGRhdGEuZ2V0RGF0ZSgpLFxyXG4gICAgICAgICAgICBob3JhLmdldEhvdXJzKCksXHJcbiAgICAgICAgICAgIGhvcmEuZ2V0TWludXRlcygpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXNldCgpIHtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHsgLi4udGhpcy5hY3R1YWxWYWx1ZSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZUZvcm0oKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgICAgICAgbW90aXZvVmlzaXRhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIHBvcnRhcmlhOiBbdW5kZWZpbmVkLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKV0sXHJcbiAgICAgICAgICAgIGRhdGFTYWlkYTogW3VuZGVmaW5lZCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxyXG4gICAgICAgICAgICBob3JhU2FpZGE6IFt1bmRlZmluZWQsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldExvYmJ5RmllbGRzKCkge1xyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgIG5ldyBGb3JtRmllbGQoe1xyXG4gICAgICAgICAgICAgICAgbmFtZTogXCJuYW1lXCIsXHJcbiAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGUuU3RyaW5nLFxyXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uc2FtX3BvcnRhcmlhX2Rlc2NyaWNhb1wiKSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -18,6 +18,7 @@ let VisitanteComponent = class VisitanteComponent {
18
18
  this.integrationCallback = integrationCallback;
19
19
  this.visitors = [];
20
20
  this.visitorsChange = new EventEmitter();
21
+ this.hasChange = new EventEmitter();
21
22
  this.ngUnsubscribe = new Subject();
22
23
  this.unsubscribe$ = new Subject();
23
24
  this._integrationCallback = integrationCallback;
@@ -161,6 +162,7 @@ let VisitanteComponent = class VisitanteComponent {
161
162
  };
162
163
  this.visitors.push(novo_visitante);
163
164
  this.visitorsChange.emit(this.visitors);
165
+ this.hasChange.emit(true);
164
166
  }
165
167
  model(visitante) {
166
168
  const isDriver = visitante.document === this.motorista.cpf;
@@ -223,6 +225,7 @@ let VisitanteComponent = class VisitanteComponent {
223
225
  else {
224
226
  visitorWithCredencial.credentialCards.push(this.createCredentialCard(visitorCredentialCard));
225
227
  }
228
+ this.hasChange.emit(true);
226
229
  }
227
230
  editarVisitante(visitante) {
228
231
  this.criarOuAtualizarVisitante(visitante);
@@ -234,12 +237,14 @@ let VisitanteComponent = class VisitanteComponent {
234
237
  const removeVisitor = this.visitors.findIndex((visitor) => visitor.visitor.document === value.document);
235
238
  if (removeVisitor !== -1) {
236
239
  this.visitors.splice(removeVisitor, 1);
240
+ this.hasChange.emit(true);
237
241
  }
238
242
  }
239
243
  });
240
244
  }
241
245
  deletarCredenciais(viisitorCredential) {
242
246
  viisitorCredential.credentialCards.splice(0, viisitorCredential.credentialCards.length);
247
+ this.hasChange.emit(true);
243
248
  }
244
249
  getContatoMotorista(motorista) {
245
250
  return motorista.telefone === undefined ? "0" : motorista.telefone;
@@ -331,6 +336,10 @@ tslib_1.__decorate([
331
336
  Output(),
332
337
  tslib_1.__metadata("design:type", Object)
333
338
  ], VisitanteComponent.prototype, "visitorsChange", void 0);
339
+ tslib_1.__decorate([
340
+ Output(),
341
+ tslib_1.__metadata("design:type", Object)
342
+ ], VisitanteComponent.prototype, "hasChange", void 0);
334
343
  VisitanteComponent = tslib_1.__decorate([
335
344
  Component({
336
345
  selector: 'visitante-component',
@@ -342,4 +351,4 @@ VisitanteComponent = tslib_1.__decorate([
342
351
  IntegrationEventsCallback])
343
352
  ], VisitanteComponent);
344
353
  export { VisitanteComponent };
345
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9zYW0tc2VuaW9yL2NvbXBvbmVudHMvdmlzaXRvci1lZGl0L3Zpc2l0b3ItZWRpdC1saXN0L3Zpc2l0b3ItZWRpdC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUNMLGNBQWMsR0FFZixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRyx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBUTFFLElBQWEsa0JBQWtCLEdBQS9CLE1BQWEsa0JBQWtCO0lBZTdCLFlBQ1UsU0FBMkIsRUFDM0IsYUFBNEIsRUFDM0IsbUJBQThDO1FBRi9DLGNB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bUJBQW1CLENBQUMsZ0JBQWtDO1FBQzVELE9BQU8sZ0JBQWdCLEtBQUssU0FBUztZQUNuQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCO1lBQ25DLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztJQUN2QixDQUFDO0lBRU8sNEJBQTRCO1FBQ2xDLElBQUksQ0FBQyxvQkFBb0IsR0FBRztZQUMxQjtnQkFDRSxLQUFLLEVBQUUsTUFBTTtnQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsb0NBQW9DLENBQUM7YUFDckU7WUFDRDtnQkFDRSxLQUFLLEVBQUUsVUFBVTtnQkFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUM1Qix5Q0FBeUMsQ0FDMUM7YUFDRjtZQUNEO2dCQUNFLEtBQUssRUFBRSxTQUFTO2dCQUNoQixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsdUNBQXVDLENBQUM7YUFDeEU7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLGVBQWU7UUFDckIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0YsQ0FBQTtBQTNaVTtJQUFSLEtBQUssRUFBRTs7cURBQThCO0FBQzdCO0lBQVIsS0FBSyxFQUFFOztvREFBZ0Q7QUFDOUM7SUFBVCxNQUFNLEVBQUU7OzBEQUE4RDtBQUg1RCxrQkFBa0I7SUFMOUIsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLHFCQUFxQjtRQUMvQiw4OEtBQWlEOztLQUVsRCxDQUFDOzZDQWlCcUIsZ0JBQWdCO1FBQ1osYUFBYTtRQUNOLHlCQUF5QjtHQWxCOUMsa0JBQWtCLENBNFo5QjtTQTVaWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaXNpdG9yQ3JlZGVudGlhbHNEdG8gfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy92aXNpdG9yLWNyZWRlbnRpYWxzLWR0byc7XG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgVmlzaXRvciB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvdmlzaXRvclwiO1xuaW1wb3J0IHsgU3ViamVjdCwgZW1wdHkgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHtcbiAgQ2FyZFRlY2hub2xvZ3ksXG4gIENyZWRlbnRpYWxDYXJkLFxufSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2NhcmQtY3JlZGVudGlhbFwiO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlVW50aWwsIG1lcmdlTWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBWaXNpdG9yU2l0dWF0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy92aXNpdG9yLXNpdHVhdGlvblwiO1xuaW1wb3J0IHsgTW90b3Jpc3RhIH0gZnJvbSBcIi4uLy4uLy4uLy4uL2VycC1zZW5pb3IvY29yZS9lbnRpdGllcy9tb3RvcmlzdGEvbW90b3Jpc3RhXCI7XG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSBcInByaW1lbmcvYXBpXCI7XG5pbXBvcnQgeyBDcmVkZW5jaWFsRm9ybUNvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jcmVkZW5jaWFsLWZvcm0vY3JlZGVuY2lhbC1mb3JtLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgVmlzaXRhbnRlRm9ybUNvbXBvbmVudCB9IGZyb20gXCIuLi92aXNpdG9yLWVkaXQtZm9ybS92aXNpdGFudGUtZm9ybS92aXNpdG9yLWVkaXQtZm9ybS5jb21wb25lbnRcIjtcbmltcG9ydCB7IGRpYWxvZ0NvbmZpZyB9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlscy91dGlsc1wiO1xuaW1wb3J0IHsgIEludGVncmF0aW9uRXZlbnRzQ2FsbGJhY2sgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3ltcy1yb3V0aW5lc1wiO1xuaW1wb3J0IHsgVmlzaXRvckR0byB9IGZyb20gJy4uLy4uLy4uL2VudGl0aWVzL3Zpc2l0b3ItZHRvJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmlzaXRhbnRlLWNvbXBvbmVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi92aXNpdG9yLWVkaXQtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Zpc2l0b3ItZWRpdC1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFZpc2l0YW50ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBJbnB1dCgpIHByaXZhdGUgbW90b3Jpc3RhOiBNb3RvcmlzdGE7XG4gIEBJbnB1dCgpIHByaXZhdGUgdmlzaXRvcnM6IFZpc2l0b3JDcmVkZW50aWFsc0R0b1tdID0gW107XG4gIEBPdXRwdXQoKSB2aXNpdG9yc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VmlzaXRvckNyZWRlbnRpYWxzRHRvW10+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcbiAgcHVibGljIHZpc2l0YW50ZUdyaWREYXRhOiBWaXNpdG9yRHRvW107XG4gIHB1YmxpYyB2aXNpdGFudGVHcmlkQ29sdW1uczogYW55W107XG4gIHB1YmxpYyB2aXNpdGFudGVUb3RhbFJlY29yZHM6IG51bWJlcjtcbiAgcHVibGljIHZpc2l0YW50ZUdyaWRMb2FkaW5nOiBib29sZWFuO1xuXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaW50ZWdyYXRpb25DYWxsYmFjazogSW50ZWdyYXRpb25FdmVudHNDYWxsYmFjaztcbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICByZWFkb25seSBpbnRlZ3JhdGlvbkNhbGxiYWNrOiBJbnRlZ3JhdGlvbkV2ZW50c0NhbGxiYWNrXG4gICkge1xuICAgIHRoaXMuX2ludGVncmF0aW9uQ2FsbGJhY2sgPSBpbnRlZ3JhdGlvbkNhbGxiYWNrO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb25zdHJvaUNhbXBvc1RhYmVsYVZpc3RhbnRlKCk7XG4gICAgdGhpcy52aXNpdGFudGVUb3RhbFJlY29yZHMgPSAwO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZExvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmFkaWNpb25hVmlzaXRhbnRlc0dyaWQoKTtcbiAgICB0aGlzLl9pbnRlZ3JhdGlvbkNhbGxiYWNrXG4gICAgICAub25BZ2VuZGFtZW50b01vdG9yaXN0YUNoYW5nZWQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCksXG4gICAgICAgIG1lcmdlTWFwKChtb3RvcmlzdGEpID0+IHtcbiAgICAgICAgICB0aGlzLmF0dWFsaXphTW90b3Jpc3RhKG1vdG9yaXN0YSk7XG4gICAgICAgICAgcmV0dXJuIGVtcHR5KCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGF0dWFsaXphTW90b3Jpc3RhKG1vdDogTW90b3Jpc3RhKSB7XG4gICAgY29uc3QgbW90b3Jpc3RhVmlzaXRhbnRlID0gdGhpcy52aXNpdGFudGVHcmlkRGF0YS5maW5kKFxuICAgICAgKGl0ZW0pID0+IGl0ZW0uZHJpdmVyXG4gICAgKTtcblxuICAgIGlmIChtb3RvcmlzdGFWaXNpdGFudGUgJiYgbW90b3Jpc3RhVmlzaXRhbnRlLmRvY3VtZW50VHlwZSA9PT0gdGhpcy5nZXREb2N1bWVudFR5cGUoKSAmJiAgbW90b3Jpc3RhVmlzaXRhbnRlLmRvY3VtZW50ID09PSBtb3QuY3BmKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmlzaXRhbnRlR3JpZERhdGEubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YVswXSA9IHtcbiAgICAgICAgbmFtZTogbW90Lm5vbWUsXG4gICAgICAgIGRvY3VtZW50OiBtb3QuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEobW90KSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogVmlzaXRvclNpdHVhdGlvbi5DSEVDS19JTl9QRU5ESU5HLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgfTsgICAgICBcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICBuYW1lOiBtb3Qubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IG1vdC5jcGYsXG4gICAgICAgIGNvbnRhY3Q6IHRoaXMuZ2V0Q29udGF0b01vdG9yaXN0YShtb3QpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gICAgXG4gIH1cblxuICBwcml2YXRlIGFkaWNpb25hVmlzaXRhbnRlc0dyaWQoKSB7XG4gICAgaWYgKHRoaXMudmlzaXRvcnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhID0gW107XG4gICAgICB0aGlzLmFkaWNpb25hTW90b3Jpc3RhTm9WaXNpdGFudGVHcmlkRGF0YSgpO1xuXG4gICAgICB0aGlzLnZpc2l0b3JzLmZvckVhY2goKHZpc2l0b3I6IGFueSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5tb3RvcmlzdGEuY3BmICE9PSB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnQpIHtcbiAgICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICAgICAgaWQ6IHZpc2l0b3IudmlzaXRvci5pZCxcbiAgICAgICAgICAgIG5hbWU6IHZpc2l0b3IudmlzaXRvci5uYW1lLFxuICAgICAgICAgICAgZG9jdW1lbnQ6IHZpc2l0b3IudmlzaXRvci5kb2N1bWVudCxcbiAgICAgICAgICAgIGNvbnRhY3Q6IHZpc2l0b3IudmlzaXRvci5jb250YWN0LFxuICAgICAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogdGhpcy5nZXRWaXNpdG9yU2l0dWF0aW9uKFxuICAgICAgICAgICAgICB2aXNpdG9yLnZpc2l0b3IudmlzaXRvclNpdHVhdGlvblxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy52aXNpdGFudGVUb3RhbFJlY29yZHMgPSB0aGlzLnZpc2l0b3JzLmxlbmd0aDtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhID0gW107XG4gICAgICBjb25zdCBub3ZvX3Zpc2l0YW50ZSA9IG5ldyBWaXNpdG9yQ3JlZGVudGlhbHNEdG8oKVxuICAgICAgbm92b192aXNpdGFudGUudmlzaXRvciA9IHtcbiAgICAgICAgbmFtZTogdGhpcy5tb3RvcmlzdGEubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IHRoaXMubW90b3Jpc3RhLmNwZixcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKHRoaXMubW90b3Jpc3RhKSxcbiAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRyaXZlcjogdHJ1ZVxuICAgICAgfVxuXG4gICAgICBjb25zdCB2aXNpdGFudGVCdXNjYW5kbyA9IHRoaXMudmlzaXRhbnRlR3JpZERhdGEuZmluZChcbiAgICAgICAgKHZpc2l0YW50ZU5hTGlzdGEpID0+IG5vdm9fdmlzaXRhbnRlLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0YW50ZU5hTGlzdGEuZG9jdW1lbnRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHZpc2l0YW50ZUJ1c2NhbmRvID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2gobm92b192aXNpdGFudGUudmlzaXRvcik7ICAgICAgICBcbiAgICAgICAgICB0aGlzLnZpc2l0b3JzLnB1c2gobm92b192aXNpdGFudGUpO1xuICAgICAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcyA9IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy52aXNpdGFudGVHcmlkTG9hZGluZyA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGlzQ3JlZGVudGlhbENhcmRzRW1wdHkodmlzaXRvcjogVmlzaXRvcikge1xuICAgIGNvbnN0IHZpc2l0YW50ZXNFbmNvbnRyYWRvcyA9IHRoaXMudmlzaXRvcnMuZmluZChcbiAgICAgICh2aXNpdG9yV2l0aENyZWRlbnRpYWxzKSA9PlxuICAgICAgICB2aXNpdG9yV2l0aENyZWRlbnRpYWxzLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0b3IuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgaWYgKHZpc2l0YW50ZXNFbmNvbnRyYWRvcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZpc2l0YW50ZXNFbmNvbnRyYWRvcy5jcmVkZW50aWFsQ2FyZHMuZmlsdGVyKFxuICAgICAgKGNyZWRlbnRpYWxDYXJkOiBDcmVkZW50aWFsQ2FyZCkgPT5cbiAgICAgICAgT2JqZWN0LmtleXMoY3JlZGVudGlhbENhcmQpLmxlbmd0aCAhPT0gMFxuICAgICkubGVuZ3RoID4gMFxuICAgICAgPyB0cnVlXG4gICAgICA6IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGljaW9uYU1vdG9yaXN0YU5vVmlzaXRhbnRlR3JpZERhdGEoKSB7XG4gICAgY29uc3QgbW90b3Jpc3RhVmlzaXRhbnRlID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3IpID0+IHRoaXMubW90b3Jpc3RhLmNwZiA9PT0gdmlzaXRvci52aXNpdG9yLmRvY3VtZW50XG4gICAgKTtcblxuICAgIGlmIChtb3RvcmlzdGFWaXNpdGFudGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5wdXNoKHtcbiAgICAgICAgbmFtZTogdGhpcy5tb3RvcmlzdGEubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IHRoaXMubW90b3Jpc3RhLmNwZixcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKHRoaXMubW90b3Jpc3RhKSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogVmlzaXRvclNpdHVhdGlvbi5DSEVDS19JTl9QRU5ESU5HLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICBpZDogbW90b3Jpc3RhVmlzaXRhbnRlLnZpc2l0b3IuaWQsXG4gICAgICAgIG5hbWU6IG1vdG9yaXN0YVZpc2l0YW50ZS52aXNpdG9yLm5hbWUsXG4gICAgICAgIGRvY3VtZW50OiBtb3RvcmlzdGFWaXNpdGFudGUudmlzaXRvci5kb2N1bWVudCxcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKHRoaXMubW90b3Jpc3RhKSxcbiAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogdGhpcy5nZXRWaXNpdG9yU2l0dWF0aW9uKFxuICAgICAgICAgIG1vdG9yaXN0YVZpc2l0YW50ZS52aXNpdG9yLnZpc2l0b3JTaXR1YXRpb25cbiAgICAgICAgKSxcbiAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICBkcml2ZXI6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY3JpYXJPdUF0dWFsaXphclZpc2l0YW50ZSh2aXNpdG9yOiBWaXNpdG9yKSB7XG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlXG4gICAgICAub3BlbihWaXNpdGFudGVGb3JtQ29tcG9uZW50LCB7XG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICBcInltcy5wYXRpby5tb3RvcmlzdGFfYWRpY2lvbmFyX3Zpc2l0YW50ZVwiXG4gICAgICAgICksXG4gICAgICAgIC4uLmRpYWxvZ0NvbmZpZyxcbiAgICAgICAgLi4udGhpcy5jb25zdHJvaVZpc2l0YW50ZSh2aXNpdG9yKSxcbiAgICAgIH0pXG4gICAgICAub25DbG9zZS5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gISF2YWx1ZSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHZpc2l0YW50ZSkgPT4gdGhpcy5hZGljaW9uYVZpc2l0YW50ZVBhcmFTYWx2YXIodmlzaXRhbnRlKSk7XG4gIH1cblxuICBwdWJsaWMgYWRpY2lvbmFWaXNpdGFudGVQYXJhU2FsdmFyKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZExvYWRpbmcgPSB0cnVlO1xuXG4gICAgdmlzaXRhbnRlLmRvY3VtZW50VHlwZSA9IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCk7XG5cbiAgICBpZiAodmlzaXRhbnRlLnZpc2l0b3JTaXR1YXRpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgdmlzaXRhbnRlLnZpc2l0b3JTaXR1YXRpb24gPSBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkc7XG4gICAgfVxuXG4gICAgdGhpcy5hZGRWaXNpdGFudGVOYVRhYmVsYSh2aXNpdGFudGUpO1xuXG4gICAgdGhpcy52aXNpdGFudGVUb3RhbFJlY29yZHMrKztcbiAgICB0aGlzLnZpc2l0YW50ZUdyaWRMb2FkaW5nID0gZmFsc2U7XG5cbiAgICBjb25zdCBub3ZvX3Zpc2l0YW50ZSA9IG5ldyBWaXNpdG9yQ3JlZGVudGlhbHNEdG8oKVxuICAgIG5vdm9fdmlzaXRhbnRlLnZpc2l0b3IgPSB7XG4gICAgICBuYW1lIDogdmlzaXRhbnRlLm5hbWUsXG4gICAgICBkb2N1bWVudCA6IHZpc2l0YW50ZS5kb2N1bWVudCxcbiAgICAgIGNvbnRhY3Q6IHZpc2l0YW50ZS5jb250YWN0LFxuICAgICAgZG9jdW1lbnRUeXBlIDogdmlzaXRhbnRlLmRvY3VtZW50VHlwZSxcbiAgICAgIHZpc2l0b3JTaXR1YXRpb24gOiB2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvbixcbiAgICAgIGRyaXZlcjogZmFsc2VcbiAgICB9XG5cbiAgICB0aGlzLnZpc2l0b3JzLnB1c2gobm92b192aXNpdGFudGUpXG4gICAgdGhpcy52aXNpdG9yc0NoYW5nZS5lbWl0KHRoaXMudmlzaXRvcnMpXG4gIH1cblxuICBwdWJsaWMgbW9kZWwodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgY29uc3QgaXNEcml2ZXIgPSB2aXNpdGFudGUuZG9jdW1lbnQgPT09IHRoaXMubW90b3Jpc3RhLmNwZjtcblxuICAgIGNvbnN0IGZpbmRWaXNpdG9yID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMpID0+XG4gICAgICAgIHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRhbnRlLmRvY3VtZW50XG4gICAgKTtcblxuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5bXMucGF0aW8ubW90b3Jpc3RhX2VkaXRhcl92aXNpdGFudGUnKSxcbiAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5lZGl0YXJWaXNpdGFudGUodmlzaXRhbnRlKSxcbiAgICAgICAgdmlzaWJsZSA6ICFpc0RyaXZlclxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3ltcy5wYXRpby5kZWxldGUnKSxcbiAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5kZWxldGFyVmlzaXRhbnRlKHZpc2l0YW50ZSksXG4gICAgICAgIHZpc2libGUgOiAhaXNEcml2ZXJcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5bXMucGF0aW8ubW90b3Jpc3RhX3Zpc2l0YW50ZV9lbnRyZWdhcl9jcmVkZW5jaWFsJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZW50cmVnYXJDcmVkZW5jaWFsKHZpc2l0YW50ZSksXG4gICAgICAgIHZpc2libGUgOiBpc0RyaXZlciB8fCAhaXNEcml2ZXJcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5bXMucGF0aW8ucmVtb3Zlcl9jcmVkZW5jaWFpcycpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmRlbGV0YXJDcmVkZW5jaWFpcyhmaW5kVmlzaXRvciksXG4gICAgICAgIHZpc2libGUgOiBmaW5kVmlzaXRvciAhPSBudWxsICYmIGZpbmRWaXNpdG9yLmNyZWRlbnRpYWxDYXJkcyAhPSBudWxsICYmIGZpbmRWaXNpdG9yLmNyZWRlbnRpYWxDYXJkcy5sZW5ndGggPiAwXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGFkZFZpc2l0YW50ZU5hVGFiZWxhKHZpc2l0YW50ZTogYW55KSB7XG4gICAgaWYgKHZpc2l0YW50ZS5pZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEgPSB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLm1hcCgodmlzaXRhbnRlR3JpZCkgPT4ge1xuICAgICAgICAgICAgaWYgKHZpc2l0YW50ZUdyaWQuaWQgPT09IHZpc2l0YW50ZS5pZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB2aXNpdGFudGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdmlzaXRhbnRlR3JpZDtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52aXNpdGFudGVHcmlkRGF0YS5wdXNoKHZpc2l0YW50ZSk7XG4gICAgfVxufVxuXG4gIHB1YmxpYyBlbnRyZWdhckNyZWRlbmNpYWwodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlXG4gICAgICAub3BlbihDcmVkZW5jaWFsRm9ybUNvbXBvbmVudCwge1xuICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgXCJ5bXMucGF0aW8ubW90b3Jpc3RhX3Zpc2l0YW50ZV9jcmVkZW5jaWFsXCJcbiAgICAgICAgKSxcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIHZpc2l0YW50ZTogdmlzaXRhbnRlLFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICAgIC5vbkNsb3NlLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiAhIXZhbHVlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgodmlzaXRvckNyZWRlbnRpYWxDYXJkOiBhbnkpID0+IFxuICAgICAgdGhpcy5hZGljaW9uYUNyZWRlbmNpYWxQYXJhRW50cmVnYXIodmlzaXRvckNyZWRlbnRpYWxDYXJkKSk7XG4gIH1cblxuICBwcml2YXRlIGFkaWNpb25hQ3JlZGVuY2lhbFBhcmFFbnRyZWdhcih2aXNpdG9yQ3JlZGVudGlhbENhcmQ6IGFueSkge1xuICAgIGNvbnN0IHZpc2l0b3JXaXRoQ3JlZGVuY2lhbCA9IHRoaXMudmlzaXRvcnMuZmluZChcbiAgICAgICh2aXNpdG9yKSA9PiB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC52aXNpdG9yLmRvY3VtZW50XG4gICAgKTtcblxuICAgIGlmICh2aXNpdG9yV2l0aENyZWRlbmNpYWwgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy52aXNpdG9ycy5wdXNoKHtcbiAgICAgICAgdmlzaXRvcjogdmlzaXRvckNyZWRlbnRpYWxDYXJkLnZpc2l0b3IsXG4gICAgICAgIGNyZWRlbnRpYWxDYXJkczogW3RoaXMuY3JlYXRlQ3JlZGVudGlhbENhcmQodmlzaXRvckNyZWRlbnRpYWxDYXJkKV0sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmlzaXRvcldpdGhDcmVkZW5jaWFsLmNyZWRlbnRpYWxDYXJkcy5wdXNoKHRoaXMuY3JlYXRlQ3JlZGVudGlhbENhcmQodmlzaXRvckNyZWRlbnRpYWxDYXJkKSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGVkaXRhclZpc2l0YW50ZSh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICB0aGlzLmNyaWFyT3VBdHVhbGl6YXJWaXNpdGFudGUodmlzaXRhbnRlKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGFyVmlzaXRhbnRlKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEuZm9yRWFjaCgodmFsdWUsIGluZGV4KSA9PiB7XG4gICAgICBpZiAodmFsdWUuZG9jdW1lbnQgPT09IHZpc2l0YW50ZS5kb2N1bWVudCkge1xuICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnNwbGljZShpbmRleCwgMSk7XG5cbiAgICAgICAgY29uc3QgcmVtb3ZlVmlzaXRvciA9IHRoaXMudmlzaXRvcnMuZmluZEluZGV4KCh2aXNpdG9yKSA9PiB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZhbHVlLmRvY3VtZW50KTtcbiAgICAgICAgaWYocmVtb3ZlVmlzaXRvciAhPT0gLTEpIHtcbiAgICAgICAgICB0aGlzLnZpc2l0b3JzLnNwbGljZShyZW1vdmVWaXNpdG9yLCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGRlbGV0YXJDcmVkZW5jaWFpcyh2aWlzaXRvckNyZWRlbnRpYWw6IFZpc2l0b3JDcmVkZW50aWFsc0R0bykge1xuICAgIHZpaXNpdG9yQ3JlZGVudGlhbC5jcmVkZW50aWFsQ2FyZHMuc3BsaWNlKDAsIHZpaXNpdG9yQ3JlZGVudGlhbC5jcmVkZW50aWFsQ2FyZHMubGVuZ3RoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udGF0b01vdG9yaXN0YShtb3RvcmlzdGE6IE1vdG9yaXN0YSkge1xuICAgIHJldHVybiBtb3RvcmlzdGEudGVsZWZvbmUgPT09IHVuZGVmaW5lZCA/IFwiMFwiIDogbW90b3Jpc3RhLnRlbGVmb25lO1xuICB9XG5cbiAgcHVibGljIGdldENyZWRlbnRpYWxDYXJkcyh2aXNpdG9yOiBWaXNpdG9yKSB7XG4gICAgaWYgKHRoaXMudmlzaXRvcnMubGVuZ3RoIDw9IDApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy52aXNpdG9yc1xuICAgICAgLmZpbmQoXG4gICAgICAgICh2aXNpdG9yV2l0aENyZWRlbnRpYWxzKSA9PlxuICAgICAgICAgIHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRvci5kb2N1bWVudFxuICAgICAgKVxuICAgICAgLmNyZWRlbnRpYWxDYXJkcy5maWx0ZXIoXG4gICAgICAgIChjcmVkZW50aWFsQ2FyZCkgPT4gT2JqZWN0LmtleXMoY3JlZGVudGlhbENhcmQpLmxlbmd0aCAhPT0gMFxuICAgICAgKVxuICAgICAgLm1hcCgoY3JlZGVudGlhbENhcmQ6IENyZWRlbnRpYWxDYXJkKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgY2FyZFRlY2hub2xvZ3k6IHRoaXMuZ2V0VGVjbm9sb2dpYUNyYWNoYVRyYWR1emlkYShcbiAgICAgICAgICAgIGNyZWRlbnRpYWxDYXJkLmNhcmRUZWNobm9sb2d5XG4gICAgICAgICAgKSxcbiAgICAgICAgICBjYXJkTnVtYmVyOiBjcmVkZW50aWFsQ2FyZC5jYXJkTnVtYmVyLFxuICAgICAgICAgIGVuZERhdGU6IGNyZWRlbnRpYWxDYXJkLmVuZERhdGUsXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3Ryb2lWaXNpdGFudGUodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgbGV0IHZpc2l0YW50ZURhdGEgPSB7IGRhdGE6IHt9IH07XG4gICAgaWYgKHZpc2l0YW50ZSAhPT0gdW5kZWZpbmVkICYmIHZpc2l0YW50ZSAhPT0gbnVsbCkge1xuICAgICAgdmlzaXRhbnRlRGF0YSA9IHtcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGlkOiB2aXNpdGFudGUuaWQsXG4gICAgICAgICAgbmFtZTogdmlzaXRhbnRlLm5hbWUsXG4gICAgICAgICAgZG9jdW1lbnQ6IHZpc2l0YW50ZS5kb2N1bWVudCxcbiAgICAgICAgICBjb250YWN0OiB2aXNpdGFudGUuY29udGFjdCxcbiAgICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiB0aGlzLmdldFZpc2l0b3JTaXR1YXRpb24oXG4gICAgICAgICAgICB2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvblxuICAgICAgICAgICksXG4gICAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHZpc2l0YW50ZURhdGE7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNyZWRlbnRpYWxDYXJkKHZpc2l0b3JDcmVkZW50aWFsQ2FyZDogQ3JlZGVudGlhbENhcmQpOiBDcmVkZW50aWFsQ2FyZCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZpc2l0b3I6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC5pZCxcbiAgICAgIGNhcmRUZWNobm9sb2d5OiB2aXNpdG9yQ3JlZGVudGlhbENhcmQuY2FyZFRlY2hub2xvZ3ksXG4gICAgICBjYXJkTnVtYmVyOiB2aXNpdG9yQ3JlZGVudGlhbENhcmQuY2FyZE51bWJlcixcbiAgICAgIGVuZERhdGU6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC5lbmREYXRlLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldFRlY25vbG9naWFDcmFjaGFUcmFkdXppZGEoY2FyZFRlY2hub2xvZ3k6IENhcmRUZWNobm9sb2d5KTogc3RyaW5nIHtcbiAgICBpZiAoY2FyZFRlY2hub2xvZ3kgPT09IENhcmRUZWNobm9sb2d5LkJBUkNPREVfQ0FSRCkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgIFwieW1zLnBhdGlvLmNhcnRhb19jcmVkZW5jaWFsX2NvZGlnb19iYXJyYXNcIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoY2FyZFRlY2hub2xvZ3kgPT09IENhcmRUZWNobm9sb2d5LlJGSURfQ0FSRCkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8uY2FydGFvX2NyZWRlbmNpYWxfcmZpZFwiKTtcbiAgICB9XG5cbiAgICBpZiAoY2FyZFRlY2hub2xvZ3kgPT09IENhcmRUZWNobm9sb2d5LlNNQVJUX0NBUkQpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLmNhcnRhb19jcmVkZW5jaWFsX3NtYXJ0XCIpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmlzaXRvclNpdHVhdGlvbih2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uKSB7XG4gICAgcmV0dXJuIHZpc2l0b3JTaXR1YXRpb24gPT09IHVuZGVmaW5lZFxuICAgICAgPyBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkdcbiAgICAgIDogdmlzaXRvclNpdHVhdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3Ryb2lDYW1wb3NUYWJlbGFWaXN0YW50ZSgpIHtcbiAgICB0aGlzLnZpc2l0YW50ZUdyaWRDb2x1bW5zID0gW1xuICAgICAge1xuICAgICAgICBmaWVsZDogXCJuYW1lXCIsXG4gICAgICAgIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5tb3RvcmlzdGFfdmlzaXRhbnRlX25vbWVcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBmaWVsZDogXCJkb2N1bWVudFwiLFxuICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgXCJ5bXMucGF0aW8ubW90b3Jpc3RhX3Zpc2l0YW50ZV9kb2N1bWVudG9cIlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZmllbGQ6IFwiY29udGFjdFwiLFxuICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8ubW90b3Jpc3RhX3Zpc2l0YW50ZV9jb250YXRvXCIpLFxuICAgICAgfSxcbiAgICBdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREb2N1bWVudFR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gXCJjcGZcIjtcbiAgfVxufSJdfQ==
354
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL3ltcy1pbnRlZ3JhdGlvbi8iLCJzb3VyY2VzIjpbInNyYy9zYW0tc2VuaW9yL2NvbXBvbmVudHMvdmlzaXRvci1lZGl0L3Zpc2l0b3ItZWRpdC1saXN0L3Zpc2l0b3ItZWRpdC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFvQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUNMLGNBQWMsR0FFZixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRyx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBUTFFLElBQWEsa0JBQWtCLEdBQS9CLE1BQWEsa0JBQWtCO0lBZ0I3QixZQUNVLFNBQTJCLEVBQzNCLGFBQTRCLEVBQzNCLG1CQUE4QztRQUYvQyxj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QVEsRUFBRSxxQkFBcUI7UUFDL0IsODhLQUFpRDs7S0FFbEQsQ0FBQzs2Q0FrQnFCLGdCQUFnQjtRQUNaLGFBQWE7UUFDTix5QkFBeUI7R0FuQjlDLGtCQUFrQixDQWlhOUI7U0FqYVksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlzaXRvckNyZWRlbnRpYWxzRHRvIH0gZnJvbSAnLi4vLi4vLi4vZW50aXRpZXMvdmlzaXRvci1jcmVkZW50aWFscy1kdG8nO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IFZpc2l0b3IgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3Zpc2l0b3JcIjtcbmltcG9ydCB7IFN1YmplY3QsIGVtcHR5IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7XG4gIENhcmRUZWNobm9sb2d5LFxuICBDcmVkZW50aWFsQ2FyZCxcbn0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9jYXJkLWNyZWRlbnRpYWxcIjtcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsLCBtZXJnZU1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgVmlzaXRvclNpdHVhdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvdmlzaXRvci1zaXR1YXRpb25cIjtcbmltcG9ydCB7IE1vdG9yaXN0YSB9IGZyb20gXCIuLi8uLi8uLi8uLi9lcnAtc2VuaW9yL2NvcmUvZW50aXRpZXMvbW90b3Jpc3RhL21vdG9yaXN0YVwiO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuaW1wb3J0IHsgQ3JlZGVuY2lhbEZvcm1Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY3JlZGVuY2lhbC1mb3JtL2NyZWRlbmNpYWwtZm9ybS5jb21wb25lbnRcIjtcbmltcG9ydCB7IFZpc2l0YW50ZUZvcm1Db21wb25lbnQgfSBmcm9tIFwiLi4vdmlzaXRvci1lZGl0LWZvcm0vdmlzaXRhbnRlLWZvcm0vdmlzaXRvci1lZGl0LWZvcm0uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBkaWFsb2dDb25maWcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vdXRpbHMvdXRpbHNcIjtcbmltcG9ydCB7ICBJbnRlZ3JhdGlvbkV2ZW50c0NhbGxiYWNrIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy95bXMtcm91dGluZXNcIjtcbmltcG9ydCB7IFZpc2l0b3JEdG8gfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy92aXNpdG9yLWR0byc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Zpc2l0YW50ZS1jb21wb25lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdmlzaXRvci1lZGl0LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi92aXNpdG9yLWVkaXQtbGlzdC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNpdGFudGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQge1xuICBASW5wdXQoKSBwcml2YXRlIG1vdG9yaXN0YTogTW90b3Jpc3RhO1xuICBASW5wdXQoKSBwcml2YXRlIHZpc2l0b3JzOiBWaXNpdG9yQ3JlZGVudGlhbHNEdG9bXSA9IFtdO1xuICBAT3V0cHV0KCkgdmlzaXRvcnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFZpc2l0b3JDcmVkZW50aWFsc0R0b1tdPigpO1xuICBAT3V0cHV0KCkgaGFzQ2hhbmdlICA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICBwdWJsaWMgdmlzaXRhbnRlR3JpZERhdGE6IFZpc2l0b3JEdG9bXTtcbiAgcHVibGljIHZpc2l0YW50ZUdyaWRDb2x1bW5zOiBhbnlbXTtcbiAgcHVibGljIHZpc2l0YW50ZVRvdGFsUmVjb3JkczogbnVtYmVyO1xuICBwdWJsaWMgdmlzaXRhbnRlR3JpZExvYWRpbmc6IGJvb2xlYW47XG5cblxuICBwcml2YXRlIHJlYWRvbmx5IF9pbnRlZ3JhdGlvbkNhbGxiYWNrOiBJbnRlZ3JhdGlvbkV2ZW50c0NhbGxiYWNrO1xuICBwcml2YXRlIHJlYWRvbmx5IHVuc3Vic2NyaWJlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxuICAgIHJlYWRvbmx5IGludGVncmF0aW9uQ2FsbGJhY2s6IEludGVncmF0aW9uRXZlbnRzQ2FsbGJhY2tcbiAgKSB7XG4gICAgdGhpcy5faW50ZWdyYXRpb25DYWxsYmFjayA9IGludGVncmF0aW9uQ2FsbGJhY2s7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNvbnN0cm9pQ2FtcG9zVGFiZWxhVmlzdGFudGUoKTtcbiAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcyA9IDA7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52aXNpdGFudGVHcmlkTG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMuYWRpY2lvbmFWaXNpdGFudGVzR3JpZCgpO1xuICAgIHRoaXMuX2ludGVncmF0aW9uQ2FsbGJhY2tcbiAgICAgIC5vbkFnZW5kYW1lbnRvTW90b3Jpc3RhQ2hhbmdlZCgpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSxcbiAgICAgICAgbWVyZ2VNYXAoKG1vdG9yaXN0YSkgPT4ge1xuICAgICAgICAgIHRoaXMuYXR1YWxpemFNb3RvcmlzdGEobW90b3Jpc3RhKTtcbiAgICAgICAgICByZXR1cm4gZW1wdHkoKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXR1YWxpemFNb3RvcmlzdGEobW90OiBNb3RvcmlzdGEpIHtcbiAgICBjb25zdCBtb3RvcmlzdGFWaXNpdGFudGUgPSB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLmZpbmQoXG4gICAgICAoaXRlbSkgPT4gaXRlbS5kcml2ZXJcbiAgICApO1xuXG4gICAgaWYgKG1vdG9yaXN0YVZpc2l0YW50ZSAmJiBtb3RvcmlzdGFWaXNpdGFudGUuZG9jdW1lbnRUeXBlID09PSB0aGlzLmdldERvY3VtZW50VHlwZSgpICYmICBtb3RvcmlzdGFWaXNpdGFudGUuZG9jdW1lbnQgPT09IG1vdC5jcGYpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52aXNpdGFudGVHcmlkRGF0YS5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhWzBdID0ge1xuICAgICAgICBuYW1lOiBtb3Qubm9tZSxcbiAgICAgICAgZG9jdW1lbnQ6IG1vdC5jcGYsXG4gICAgICAgIGNvbnRhY3Q6IHRoaXMuZ2V0Q29udGF0b01vdG9yaXN0YShtb3QpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICB9OyAgICAgIFxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaCh7XG4gICAgICAgIG5hbWU6IG1vdC5ub21lLFxuICAgICAgICBkb2N1bWVudDogbW90LmNwZixcbiAgICAgICAgY29udGFjdDogdGhpcy5nZXRDb250YXRvTW90b3Jpc3RhKG1vdCksXG4gICAgICAgIHZpc2l0b3JTaXR1YXRpb246IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElORyxcbiAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICBkcml2ZXI6IHRydWVcbiAgICAgIH0pO1xuICAgIH1cbiAgICBcbiAgfVxuXG4gIHByaXZhdGUgYWRpY2lvbmFWaXNpdGFudGVzR3JpZCgpIHtcbiAgICBpZiAodGhpcy52aXNpdG9ycy5sZW5ndGgpIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEgPSBbXTtcbiAgICAgIHRoaXMuYWRpY2lvbmFNb3RvcmlzdGFOb1Zpc2l0YW50ZUdyaWREYXRhKCk7XG5cbiAgICAgIHRoaXMudmlzaXRvcnMuZm9yRWFjaCgodmlzaXRvcjogYW55KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLm1vdG9yaXN0YS5jcGYgIT09IHZpc2l0b3IudmlzaXRvci5kb2N1bWVudCkge1xuICAgICAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaCh7XG4gICAgICAgICAgICBpZDogdmlzaXRvci52aXNpdG9yLmlkLFxuICAgICAgICAgICAgbmFtZTogdmlzaXRvci52aXNpdG9yLm5hbWUsXG4gICAgICAgICAgICBkb2N1bWVudDogdmlzaXRvci52aXNpdG9yLmRvY3VtZW50LFxuICAgICAgICAgICAgY29udGFjdDogdmlzaXRvci52aXNpdG9yLmNvbnRhY3QsXG4gICAgICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiB0aGlzLmdldFZpc2l0b3JTaXR1YXRpb24oXG4gICAgICAgICAgICAgIHZpc2l0b3IudmlzaXRvci52aXNpdG9yU2l0dWF0aW9uXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmdldERvY3VtZW50VHlwZSgpLFxuICAgICAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcyA9IHRoaXMudmlzaXRvcnMubGVuZ3RoO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEgPSBbXTtcbiAgICAgIGNvbnN0IG5vdm9fdmlzaXRhbnRlID0gbmV3IFZpc2l0b3JDcmVkZW50aWFsc0R0bygpXG4gICAgICBub3ZvX3Zpc2l0YW50ZS52aXNpdG9yID0ge1xuICAgICAgICBuYW1lOiB0aGlzLm1vdG9yaXN0YS5ub21lLFxuICAgICAgICBkb2N1bWVudDogdGhpcy5tb3RvcmlzdGEuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEodGhpcy5tb3RvcmlzdGEpLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIHZpc2l0b3JTaXR1YXRpb246IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElORyxcbiAgICAgICAgZHJpdmVyOiB0cnVlXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHZpc2l0YW50ZUJ1c2NhbmRvID0gdGhpcy52aXNpdGFudGVHcmlkRGF0YS5maW5kKFxuICAgICAgICAodmlzaXRhbnRlTmFMaXN0YSkgPT4gbm92b192aXNpdGFudGUudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRhbnRlTmFMaXN0YS5kb2N1bWVudFxuICAgICAgICApO1xuICAgICAgICBpZiAodmlzaXRhbnRlQnVzY2FuZG8gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaChub3ZvX3Zpc2l0YW50ZS52aXNpdG9yKTsgICAgICAgIFxuICAgICAgICAgIHRoaXMudmlzaXRvcnMucHVzaChub3ZvX3Zpc2l0YW50ZSk7XG4gICAgICAgIHRoaXMudmlzaXRhbnRlVG90YWxSZWNvcmRzID0gMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZpc2l0YW50ZUdyaWRMb2FkaW5nID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgaXNDcmVkZW50aWFsQ2FyZHNFbXB0eSh2aXNpdG9yOiBWaXNpdG9yKSB7XG4gICAgY29uc3QgdmlzaXRhbnRlc0VuY29udHJhZG9zID0gdGhpcy52aXNpdG9ycy5maW5kKFxuICAgICAgKHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMpID0+XG4gICAgICAgIHZpc2l0b3JXaXRoQ3JlZGVudGlhbHMudmlzaXRvci5kb2N1bWVudCA9PT0gdmlzaXRvci5kb2N1bWVudFxuICAgICk7XG5cbiAgICBpZiAodmlzaXRhbnRlc0VuY29udHJhZG9zID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmlzaXRhbnRlc0VuY29udHJhZG9zLmNyZWRlbnRpYWxDYXJkcy5maWx0ZXIoXG4gICAgICAoY3JlZGVudGlhbENhcmQ6IENyZWRlbnRpYWxDYXJkKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyhjcmVkZW50aWFsQ2FyZCkubGVuZ3RoICE9PSAwXG4gICAgKS5sZW5ndGggPiAwXG4gICAgICA/IHRydWVcbiAgICAgIDogZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGFkaWNpb25hTW90b3Jpc3RhTm9WaXNpdGFudGVHcmlkRGF0YSgpIHtcbiAgICBjb25zdCBtb3RvcmlzdGFWaXNpdGFudGUgPSB0aGlzLnZpc2l0b3JzLmZpbmQoXG4gICAgICAodmlzaXRvcikgPT4gdGhpcy5tb3RvcmlzdGEuY3BmID09PSB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnRcbiAgICApO1xuXG4gICAgaWYgKG1vdG9yaXN0YVZpc2l0YW50ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnB1c2goe1xuICAgICAgICBuYW1lOiB0aGlzLm1vdG9yaXN0YS5ub21lLFxuICAgICAgICBkb2N1bWVudDogdGhpcy5tb3RvcmlzdGEuY3BmLFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEodGhpcy5tb3RvcmlzdGEpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiBWaXNpdG9yU2l0dWF0aW9uLkNIRUNLX0lOX1BFTkRJTkcsXG4gICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgZHJpdmVyOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaCh7XG4gICAgICAgIGlkOiBtb3RvcmlzdGFWaXNpdGFudGUudmlzaXRvci5pZCxcbiAgICAgICAgbmFtZTogbW90b3Jpc3RhVmlzaXRhbnRlLnZpc2l0b3IubmFtZSxcbiAgICAgICAgZG9jdW1lbnQ6IG1vdG9yaXN0YVZpc2l0YW50ZS52aXNpdG9yLmRvY3VtZW50LFxuICAgICAgICBjb250YWN0OiB0aGlzLmdldENvbnRhdG9Nb3RvcmlzdGEodGhpcy5tb3RvcmlzdGEpLFxuICAgICAgICB2aXNpdG9yU2l0dWF0aW9uOiB0aGlzLmdldFZpc2l0b3JTaXR1YXRpb24oXG4gICAgICAgICAgbW90b3Jpc3RhVmlzaXRhbnRlLnZpc2l0b3IudmlzaXRvclNpdHVhdGlvblxuICAgICAgICApLFxuICAgICAgICBkb2N1bWVudFR5cGU6IHRoaXMuZ2V0RG9jdW1lbnRUeXBlKCksXG4gICAgICAgIGRyaXZlcjogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmlhck91QXR1YWxpemFyVmlzaXRhbnRlKHZpc2l0b3I6IFZpc2l0b3IpIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2VcbiAgICAgIC5vcGVuKFZpc2l0YW50ZUZvcm1Db21wb25lbnQsIHtcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgIFwieW1zLnBhdGlvLm1vdG9yaXN0YV9hZGljaW9uYXJfdmlzaXRhbnRlXCJcbiAgICAgICAgKSxcbiAgICAgICAgLi4uZGlhbG9nQ29uZmlnLFxuICAgICAgICAuLi50aGlzLmNvbnN0cm9pVmlzaXRhbnRlKHZpc2l0b3IpLFxuICAgICAgfSlcbiAgICAgIC5vbkNsb3NlLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiAhIXZhbHVlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgodmlzaXRhbnRlKSA9PiB0aGlzLmFkaWNpb25hVmlzaXRhbnRlUGFyYVNhbHZhcih2aXNpdGFudGUpKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGljaW9uYVZpc2l0YW50ZVBhcmFTYWx2YXIodmlzaXRhbnRlOiBWaXNpdG9yKSB7XG4gICAgdGhpcy52aXNpdGFudGVHcmlkTG9hZGluZyA9IHRydWU7XG5cbiAgICB2aXNpdGFudGUuZG9jdW1lbnRUeXBlID0gdGhpcy5nZXREb2N1bWVudFR5cGUoKTtcblxuICAgIGlmICh2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB2aXNpdGFudGUudmlzaXRvclNpdHVhdGlvbiA9IFZpc2l0b3JTaXR1YXRpb24uQ0hFQ0tfSU5fUEVORElORztcbiAgICB9XG5cbiAgICB0aGlzLmFkZFZpc2l0YW50ZU5hVGFiZWxhKHZpc2l0YW50ZSk7XG5cbiAgICB0aGlzLnZpc2l0YW50ZVRvdGFsUmVjb3JkcysrO1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZExvYWRpbmcgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vdm9fdmlzaXRhbnRlID0gbmV3IFZpc2l0b3JDcmVkZW50aWFsc0R0bygpXG4gICAgbm92b192aXNpdGFudGUudmlzaXRvciA9IHtcbiAgICAgIG5hbWUgOiB2aXNpdGFudGUubmFtZSxcbiAgICAgIGRvY3VtZW50IDogdmlzaXRhbnRlLmRvY3VtZW50LFxuICAgICAgY29udGFjdDogdmlzaXRhbnRlLmNvbnRhY3QsXG4gICAgICBkb2N1bWVudFR5cGUgOiB2aXNpdGFudGUuZG9jdW1lbnRUeXBlLFxuICAgICAgdmlzaXRvclNpdHVhdGlvbiA6IHZpc2l0YW50ZS52aXNpdG9yU2l0dWF0aW9uLFxuICAgICAgZHJpdmVyOiBmYWxzZVxuICAgIH1cblxuICAgIHRoaXMudmlzaXRvcnMucHVzaChub3ZvX3Zpc2l0YW50ZSlcbiAgICB0aGlzLnZpc2l0b3JzQ2hhbmdlLmVtaXQodGhpcy52aXNpdG9ycylcbiAgICB0aGlzLmhhc0NoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG1vZGVsKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIGNvbnN0IGlzRHJpdmVyID0gdmlzaXRhbnRlLmRvY3VtZW50ID09PSB0aGlzLm1vdG9yaXN0YS5jcGY7XG5cbiAgICBjb25zdCBmaW5kVmlzaXRvciA9IHRoaXMudmlzaXRvcnMuZmluZChcbiAgICAgICh2aXNpdG9yV2l0aENyZWRlbnRpYWxzKSA9PlxuICAgICAgICB2aXNpdG9yV2l0aENyZWRlbnRpYWxzLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0YW50ZS5kb2N1bWVudFxuICAgICk7XG5cbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneW1zLnBhdGlvLm1vdG9yaXN0YV9lZGl0YXJfdmlzaXRhbnRlJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZWRpdGFyVmlzaXRhbnRlKHZpc2l0YW50ZSksXG4gICAgICAgIHZpc2libGUgOiAhaXNEcml2ZXJcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5bXMucGF0aW8uZGVsZXRlJyksXG4gICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZGVsZXRhclZpc2l0YW50ZSh2aXNpdGFudGUpLFxuICAgICAgICB2aXNpYmxlIDogIWlzRHJpdmVyXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneW1zLnBhdGlvLm1vdG9yaXN0YV92aXNpdGFudGVfZW50cmVnYXJfY3JlZGVuY2lhbCcpLFxuICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmVudHJlZ2FyQ3JlZGVuY2lhbCh2aXNpdGFudGUpLFxuICAgICAgICB2aXNpYmxlIDogaXNEcml2ZXIgfHwgIWlzRHJpdmVyXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneW1zLnBhdGlvLnJlbW92ZXJfY3JlZGVuY2lhaXMnKSxcbiAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5kZWxldGFyQ3JlZGVuY2lhaXMoZmluZFZpc2l0b3IpLFxuICAgICAgICB2aXNpYmxlIDogZmluZFZpc2l0b3IgIT0gbnVsbCAmJiBmaW5kVmlzaXRvci5jcmVkZW50aWFsQ2FyZHMgIT0gbnVsbCAmJiBmaW5kVmlzaXRvci5jcmVkZW50aWFsQ2FyZHMubGVuZ3RoID4gMFxuICAgICAgfSxcbiAgICBdO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRWaXNpdGFudGVOYVRhYmVsYSh2aXNpdGFudGU6IGFueSkge1xuICAgIGlmICh2aXNpdGFudGUuaWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhID0gdGhpcy52aXNpdGFudGVHcmlkRGF0YS5tYXAoKHZpc2l0YW50ZUdyaWQpID0+IHtcbiAgICAgICAgICAgIGlmICh2aXNpdGFudGVHcmlkLmlkID09PSB2aXNpdGFudGUuaWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmlzaXRhbnRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZpc2l0YW50ZUdyaWQ7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEucHVzaCh2aXNpdGFudGUpO1xuICAgIH1cbn1cblxuICBwdWJsaWMgZW50cmVnYXJDcmVkZW5jaWFsKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIHRoaXMuZGlhbG9nU2VydmljZVxuICAgICAgLm9wZW4oQ3JlZGVuY2lhbEZvcm1Db21wb25lbnQsIHtcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgIFwieW1zLnBhdGlvLm1vdG9yaXN0YV92aXNpdGFudGVfY3JlZGVuY2lhbFwiXG4gICAgICAgICksXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICB2aXNpdGFudGU6IHZpc2l0YW50ZSxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgICAub25DbG9zZS5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gISF2YWx1ZSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHZpc2l0b3JDcmVkZW50aWFsQ2FyZDogYW55KSA9PiBcbiAgICAgIHRoaXMuYWRpY2lvbmFDcmVkZW5jaWFsUGFyYUVudHJlZ2FyKHZpc2l0b3JDcmVkZW50aWFsQ2FyZCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGljaW9uYUNyZWRlbmNpYWxQYXJhRW50cmVnYXIodmlzaXRvckNyZWRlbnRpYWxDYXJkOiBhbnkpIHtcbiAgICBjb25zdCB2aXNpdG9yV2l0aENyZWRlbmNpYWwgPSB0aGlzLnZpc2l0b3JzLmZpbmQoXG4gICAgICAodmlzaXRvcikgPT4gdmlzaXRvci52aXNpdG9yLmRvY3VtZW50ID09PSB2aXNpdG9yQ3JlZGVudGlhbENhcmQudmlzaXRvci5kb2N1bWVudFxuICAgICk7XG5cbiAgICBpZiAodmlzaXRvcldpdGhDcmVkZW5jaWFsID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudmlzaXRvcnMucHVzaCh7XG4gICAgICAgIHZpc2l0b3I6IHZpc2l0b3JDcmVkZW50aWFsQ2FyZC52aXNpdG9yLFxuICAgICAgICBjcmVkZW50aWFsQ2FyZHM6IFt0aGlzLmNyZWF0ZUNyZWRlbnRpYWxDYXJkKHZpc2l0b3JDcmVkZW50aWFsQ2FyZCldLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZpc2l0b3JXaXRoQ3JlZGVuY2lhbC5jcmVkZW50aWFsQ2FyZHMucHVzaCh0aGlzLmNyZWF0ZUNyZWRlbnRpYWxDYXJkKHZpc2l0b3JDcmVkZW50aWFsQ2FyZCkpO1xuICAgIH1cbiAgICB0aGlzLmhhc0NoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIGVkaXRhclZpc2l0YW50ZSh2aXNpdGFudGU6IFZpc2l0b3IpIHtcbiAgICB0aGlzLmNyaWFyT3VBdHVhbGl6YXJWaXNpdGFudGUodmlzaXRhbnRlKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGFyVmlzaXRhbnRlKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIHRoaXMudmlzaXRhbnRlR3JpZERhdGEuZm9yRWFjaCgodmFsdWUsIGluZGV4KSA9PiB7XG4gICAgICBpZiAodmFsdWUuZG9jdW1lbnQgPT09IHZpc2l0YW50ZS5kb2N1bWVudCkge1xuICAgICAgICB0aGlzLnZpc2l0YW50ZUdyaWREYXRhLnNwbGljZShpbmRleCwgMSk7XG5cbiAgICAgICAgY29uc3QgcmVtb3ZlVmlzaXRvciA9IHRoaXMudmlzaXRvcnMuZmluZEluZGV4KCh2aXNpdG9yKSA9PiB2aXNpdG9yLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZhbHVlLmRvY3VtZW50KTtcbiAgICAgICAgaWYocmVtb3ZlVmlzaXRvciAhPT0gLTEpIHtcbiAgICAgICAgICB0aGlzLnZpc2l0b3JzLnNwbGljZShyZW1vdmVWaXNpdG9yLCAxKTtcbiAgICAgICAgICB0aGlzLmhhc0NoYW5nZS5lbWl0KHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRhckNyZWRlbmNpYWlzKHZpaXNpdG9yQ3JlZGVudGlhbDogVmlzaXRvckNyZWRlbnRpYWxzRHRvKSB7XG4gICAgdmlpc2l0b3JDcmVkZW50aWFsLmNyZWRlbnRpYWxDYXJkcy5zcGxpY2UoMCwgdmlpc2l0b3JDcmVkZW50aWFsLmNyZWRlbnRpYWxDYXJkcy5sZW5ndGgpO1xuICAgIHRoaXMuaGFzQ2hhbmdlLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRhdG9Nb3RvcmlzdGEobW90b3Jpc3RhOiBNb3RvcmlzdGEpIHtcbiAgICByZXR1cm4gbW90b3Jpc3RhLnRlbGVmb25lID09PSB1bmRlZmluZWQgPyBcIjBcIiA6IG1vdG9yaXN0YS50ZWxlZm9uZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDcmVkZW50aWFsQ2FyZHModmlzaXRvcjogVmlzaXRvcikge1xuICAgIGlmICh0aGlzLnZpc2l0b3JzLmxlbmd0aCA8PSAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmlzaXRvcnNcbiAgICAgIC5maW5kKFxuICAgICAgICAodmlzaXRvcldpdGhDcmVkZW50aWFscykgPT5cbiAgICAgICAgICB2aXNpdG9yV2l0aENyZWRlbnRpYWxzLnZpc2l0b3IuZG9jdW1lbnQgPT09IHZpc2l0b3IuZG9jdW1lbnRcbiAgICAgIClcbiAgICAgIC5jcmVkZW50aWFsQ2FyZHMuZmlsdGVyKFxuICAgICAgICAoY3JlZGVudGlhbENhcmQpID0+IE9iamVjdC5rZXlzKGNyZWRlbnRpYWxDYXJkKS5sZW5ndGggIT09IDBcbiAgICAgIClcbiAgICAgIC5tYXAoKGNyZWRlbnRpYWxDYXJkOiBDcmVkZW50aWFsQ2FyZCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGNhcmRUZWNobm9sb2d5OiB0aGlzLmdldFRlY25vbG9naWFDcmFjaGFUcmFkdXppZGEoXG4gICAgICAgICAgICBjcmVkZW50aWFsQ2FyZC5jYXJkVGVjaG5vbG9neVxuICAgICAgICAgICksXG4gICAgICAgICAgY2FyZE51bWJlcjogY3JlZGVudGlhbENhcmQuY2FyZE51bWJlcixcbiAgICAgICAgICBlbmREYXRlOiBjcmVkZW50aWFsQ2FyZC5lbmREYXRlLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNvbnN0cm9pVmlzaXRhbnRlKHZpc2l0YW50ZTogVmlzaXRvcikge1xuICAgIGxldCB2aXNpdGFudGVEYXRhID0geyBkYXRhOiB7fSB9O1xuICAgIGlmICh2aXNpdGFudGUgIT09IHVuZGVmaW5lZCAmJiB2aXNpdGFudGUgIT09IG51bGwpIHtcbiAgICAgIHZpc2l0YW50ZURhdGEgPSB7XG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBpZDogdmlzaXRhbnRlLmlkLFxuICAgICAgICAgIG5hbWU6IHZpc2l0YW50ZS5uYW1lLFxuICAgICAgICAgIGRvY3VtZW50OiB2aXNpdGFudGUuZG9jdW1lbnQsXG4gICAgICAgICAgY29udGFjdDogdmlzaXRhbnRlLmNvbnRhY3QsXG4gICAgICAgICAgdmlzaXRvclNpdHVhdGlvbjogdGhpcy5nZXRWaXNpdG9yU2l0dWF0aW9uKFxuICAgICAgICAgICAgdmlzaXRhbnRlLnZpc2l0b3JTaXR1YXRpb25cbiAgICAgICAgICApLFxuICAgICAgICAgIGRvY3VtZW50VHlwZTogdGhpcy5nZXREb2N1bWVudFR5cGUoKSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB2aXNpdGFudGVEYXRhO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDcmVkZW50aWFsQ2FyZCh2aXNpdG9yQ3JlZGVudGlhbENhcmQ6IENyZWRlbnRpYWxDYXJkKTogQ3JlZGVudGlhbENhcmQge1xuICAgIHJldHVybiB7XG4gICAgICB2aXNpdG9yOiB2aXNpdG9yQ3JlZGVudGlhbENhcmQuaWQsXG4gICAgICBjYXJkVGVjaG5vbG9neTogdmlzaXRvckNyZWRlbnRpYWxDYXJkLmNhcmRUZWNobm9sb2d5LFxuICAgICAgY2FyZE51bWJlcjogdmlzaXRvckNyZWRlbnRpYWxDYXJkLmNhcmROdW1iZXIsXG4gICAgICBlbmREYXRlOiB2aXNpdG9yQ3JlZGVudGlhbENhcmQuZW5kRGF0ZSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZWNub2xvZ2lhQ3JhY2hhVHJhZHV6aWRhKGNhcmRUZWNobm9sb2d5OiBDYXJkVGVjaG5vbG9neSk6IHN0cmluZyB7XG4gICAgaWYgKGNhcmRUZWNobm9sb2d5ID09PSBDYXJkVGVjaG5vbG9neS5CQVJDT0RFX0NBUkQpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICBcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9jb2RpZ29fYmFycmFzXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGNhcmRUZWNobm9sb2d5ID09PSBDYXJkVGVjaG5vbG9neS5SRklEX0NBUkQpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLmNhcnRhb19jcmVkZW5jaWFsX3JmaWRcIik7XG4gICAgfVxuXG4gICAgaWYgKGNhcmRUZWNobm9sb2d5ID09PSBDYXJkVGVjaG5vbG9neS5TTUFSVF9DQVJEKSB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInltcy5wYXRpby5jYXJ0YW9fY3JlZGVuY2lhbF9zbWFydFwiKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFZpc2l0b3JTaXR1YXRpb24odmlzaXRvclNpdHVhdGlvbjogVmlzaXRvclNpdHVhdGlvbikge1xuICAgIHJldHVybiB2aXNpdG9yU2l0dWF0aW9uID09PSB1bmRlZmluZWRcbiAgICAgID8gVmlzaXRvclNpdHVhdGlvbi5DSEVDS19JTl9QRU5ESU5HXG4gICAgICA6IHZpc2l0b3JTaXR1YXRpb247XG4gIH1cblxuICBwcml2YXRlIGNvbnN0cm9pQ2FtcG9zVGFiZWxhVmlzdGFudGUoKSB7XG4gICAgdGhpcy52aXNpdGFudGVHcmlkQ29sdW1ucyA9IFtcbiAgICAgIHtcbiAgICAgICAgZmllbGQ6IFwibmFtZVwiLFxuICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJ5bXMucGF0aW8ubW90b3Jpc3RhX3Zpc2l0YW50ZV9ub21lXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZmllbGQ6IFwiZG9jdW1lbnRcIixcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgIFwieW1zLnBhdGlvLm1vdG9yaXN0YV92aXNpdGFudGVfZG9jdW1lbnRvXCJcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGZpZWxkOiBcImNvbnRhY3RcIixcbiAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwieW1zLnBhdGlvLm1vdG9yaXN0YV92aXNpdGFudGVfY29udGF0b1wiKSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RG9jdW1lbnRUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFwiY3BmXCI7XG4gIH1cbn0iXX0=
@@ -16,7 +16,7 @@ var AgendaModule = /** @class */ (function () {
16
16
  {
17
17
  name: "agenda",
18
18
  actions: ["Visualizar", "Incluir", "Editar", "Excluir"],
19
- uri: "res://senior.com.br/yms/erp_data/entities/agenda",
19
+ uri: "res://senior.com.br/yms/agenda/entities/agenda",
20
20
  },
21
21
  ]),
22
22
  ],
@@ -38,4 +38,4 @@ var AgendaModule = /** @class */ (function () {
38
38
  export { AgendaModule };
39
39
  /*{CA:FILE_CONTENTS:START}*/
40
40
  /*{CA:FILE_CONTENTS:END}*/
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlbmRhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL2FnZW5kYS9hZ2VuZGEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUE4QjVCO0lBQUE7SUFBMkIsQ0FBQztJQUFmLFlBQVk7UUE1QnhCLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRTtnQkFDTCxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7b0JBQ3ZCO3dCQUNJLElBQUksRUFBRSxRQUFRO3dCQUNkLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQzt3QkFDdkQsR0FBRyxFQUFFLGtEQUFrRDtxQkFDMUQ7aUJBQ0osQ0FBQzthQUdMO1lBQ0QsU0FBUyxFQUFFO2dCQUNQLGFBQWE7YUFHaEI7WUFDRCxZQUFZLEVBQUU7WUFDVixrQ0FBa0M7WUFDbEMsZ0NBQWdDO2FBQ25DO1lBQ0QsT0FBTyxFQUFFO1lBQ0wsNkJBQTZCO1lBQzdCLDJCQUEyQjthQUM5QjtTQUdKLENBQUM7T0FDVyxZQUFZLENBQUc7SUFBRCxtQkFBQztDQUFBLEFBQTVCLElBQTRCO1NBQWYsWUFBWTtBQUV6Qiw0QkFBNEI7QUFDNUIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbi8qe0NBOlBBQ0tBR0VfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UEFDS0FHRV9JTVBPUlRTOkVORH0qL1xuXG5pbXBvcnQgeyBBZ2VuZGFTZXJ2aWNlIH0gZnJvbSBcIi4vYWdlbmRhLnNlcnZpY2VcIjtcbi8qe0NBOlBST0pFQ1RfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UFJPSkVDVF9JTVBPUlRTOkVORH0qL1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgUGVybWlzc2lvbnNNb2R1bGUuZm9yQ2hpbGQoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiYWdlbmRhXCIsXG4gICAgICAgICAgICAgICAgYWN0aW9uczogW1wiVmlzdWFsaXphclwiLCBcIkluY2x1aXJcIiwgXCJFZGl0YXJcIiwgXCJFeGNsdWlyXCJdLFxuICAgICAgICAgICAgICAgIHVyaTogYHJlczovL3Nlbmlvci5jb20uYnIveW1zL2VycF9kYXRhL2VudGl0aWVzL2FnZW5kYWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdKSxcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0lNUE9SVFM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0lNUE9SVFM6RU5EfSovXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgQWdlbmRhU2VydmljZSxcbiAgICAgICAgLyp7Q0E6TU9EVUxFX1BST1ZJREVSUzpTVEFSVH0qL1xuICAgICAgICAvKntDQTpNT0RVTEVfUFJPVklERVJTOkVORH0qL1xuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIC8qe0NBOk1PRFVMRV9ERUNMQVJBVElPTlM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0RFQ0xBUkFUSU9OUzpFTkR9Ki9cbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0VYUE9SVFM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0VYUE9SVFM6RU5EfSovXG4gICAgXSxcbiAgICAvKntDQTpNT0RVTEVfQ09ORklHOlNUQVJUfSovXG4gICAgLyp7Q0E6TU9EVUxFX0NPTkZJRzpFTkR9Ki9cbn0pXG5leHBvcnQgY2xhc3MgQWdlbmRhTW9kdWxlIHt9XG5cbi8qe0NBOkZJTEVfQ09OVEVOVFM6U1RBUlR9Ki9cbi8qe0NBOkZJTEVfQ09OVEVOVFM6RU5EfSovXG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlbmRhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL2FnZW5kYS9hZ2VuZGEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUE4QjVCO0lBQUE7SUFBMkIsQ0FBQztJQUFmLFlBQVk7UUE1QnhCLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRTtnQkFDTCxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7b0JBQ3ZCO3dCQUNJLElBQUksRUFBRSxRQUFRO3dCQUNkLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQzt3QkFDdkQsR0FBRyxFQUFFLGdEQUFnRDtxQkFDeEQ7aUJBQ0osQ0FBQzthQUdMO1lBQ0QsU0FBUyxFQUFFO2dCQUNQLGFBQWE7YUFHaEI7WUFDRCxZQUFZLEVBQUU7WUFDVixrQ0FBa0M7WUFDbEMsZ0NBQWdDO2FBQ25DO1lBQ0QsT0FBTyxFQUFFO1lBQ0wsNkJBQTZCO1lBQzdCLDJCQUEyQjthQUM5QjtTQUdKLENBQUM7T0FDVyxZQUFZLENBQUc7SUFBRCxtQkFBQztDQUFBLEFBQTVCLElBQTRCO1NBQWYsWUFBWTtBQUV6Qiw0QkFBNEI7QUFDNUIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbi8qe0NBOlBBQ0tBR0VfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UEFDS0FHRV9JTVBPUlRTOkVORH0qL1xuXG5pbXBvcnQgeyBBZ2VuZGFTZXJ2aWNlIH0gZnJvbSBcIi4vYWdlbmRhLnNlcnZpY2VcIjtcbi8qe0NBOlBST0pFQ1RfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UFJPSkVDVF9JTVBPUlRTOkVORH0qL1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgUGVybWlzc2lvbnNNb2R1bGUuZm9yQ2hpbGQoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiYWdlbmRhXCIsXG4gICAgICAgICAgICAgICAgYWN0aW9uczogW1wiVmlzdWFsaXphclwiLCBcIkluY2x1aXJcIiwgXCJFZGl0YXJcIiwgXCJFeGNsdWlyXCJdLFxuICAgICAgICAgICAgICAgIHVyaTogYHJlczovL3Nlbmlvci5jb20uYnIveW1zL2FnZW5kYS9lbnRpdGllcy9hZ2VuZGFgLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSksXG4gICAgICAgIC8qe0NBOk1PRFVMRV9JTVBPUlRTOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9JTVBPUlRTOkVORH0qL1xuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIEFnZW5kYVNlcnZpY2UsXG4gICAgICAgIC8qe0NBOk1PRFVMRV9QUk9WSURFUlM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX1BST1ZJREVSUzpFTkR9Ki9cbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICAvKntDQTpNT0RVTEVfREVDTEFSQVRJT05TOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9ERUNMQVJBVElPTlM6RU5EfSovXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIC8qe0NBOk1PRFVMRV9FWFBPUlRTOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9FWFBPUlRTOkVORH0qL1xuICAgIF0sXG4gICAgLyp7Q0E6TU9EVUxFX0NPTkZJRzpTVEFSVH0qL1xuICAgIC8qe0NBOk1PRFVMRV9DT05GSUc6RU5EfSovXG59KVxuZXhwb3J0IGNsYXNzIEFnZW5kYU1vZHVsZSB7fVxuXG4vKntDQTpGSUxFX0NPTlRFTlRTOlNUQVJUfSovXG4vKntDQTpGSUxFX0NPTlRFTlRTOkVORH0qL1xuIl19
@@ -16,7 +16,7 @@ var CidadeModule = /** @class */ (function () {
16
16
  {
17
17
  name: "cidade",
18
18
  actions: ["Visualizar", "Incluir", "Editar", "Excluir"],
19
- uri: "res://senior.com.br/yms/erp_data/entities/cidade",
19
+ uri: "res://senior.com.br/yms/erp/entities/cidade",
20
20
  },
21
21
  ]),
22
22
  ],
@@ -38,4 +38,4 @@ var CidadeModule = /** @class */ (function () {
38
38
  export { CidadeModule };
39
39
  /*{CA:FILE_CONTENTS:START}*/
40
40
  /*{CA:FILE_CONTENTS:END}*/
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lkYWRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL2NpZGFkZS9jaWRhZGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUE4QjVCO0lBQUE7SUFBMkIsQ0FBQztJQUFmLFlBQVk7UUE1QnhCLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRTtnQkFDTCxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7b0JBQ3ZCO3dCQUNJLElBQUksRUFBRSxRQUFRO3dCQUNkLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQzt3QkFDdkQsR0FBRyxFQUFFLGtEQUFrRDtxQkFDMUQ7aUJBQ0osQ0FBQzthQUdMO1lBQ0QsU0FBUyxFQUFFO2dCQUNQLGFBQWE7YUFHaEI7WUFDRCxZQUFZLEVBQUU7WUFDVixrQ0FBa0M7WUFDbEMsZ0NBQWdDO2FBQ25DO1lBQ0QsT0FBTyxFQUFFO1lBQ0wsNkJBQTZCO1lBQzdCLDJCQUEyQjthQUM5QjtTQUdKLENBQUM7T0FDVyxZQUFZLENBQUc7SUFBRCxtQkFBQztDQUFBLEFBQTVCLElBQTRCO1NBQWYsWUFBWTtBQUV6Qiw0QkFBNEI7QUFDNUIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbi8qe0NBOlBBQ0tBR0VfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UEFDS0FHRV9JTVBPUlRTOkVORH0qL1xuXG5pbXBvcnQgeyBDaWRhZGVTZXJ2aWNlIH0gZnJvbSBcIi4vY2lkYWRlLnNlcnZpY2VcIjtcbi8qe0NBOlBST0pFQ1RfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UFJPSkVDVF9JTVBPUlRTOkVORH0qL1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgUGVybWlzc2lvbnNNb2R1bGUuZm9yQ2hpbGQoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiY2lkYWRlXCIsXG4gICAgICAgICAgICAgICAgYWN0aW9uczogW1wiVmlzdWFsaXphclwiLCBcIkluY2x1aXJcIiwgXCJFZGl0YXJcIiwgXCJFeGNsdWlyXCJdLFxuICAgICAgICAgICAgICAgIHVyaTogYHJlczovL3Nlbmlvci5jb20uYnIveW1zL2VycF9kYXRhL2VudGl0aWVzL2NpZGFkZWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdKSxcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0lNUE9SVFM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0lNUE9SVFM6RU5EfSovXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgQ2lkYWRlU2VydmljZSxcbiAgICAgICAgLyp7Q0E6TU9EVUxFX1BST1ZJREVSUzpTVEFSVH0qL1xuICAgICAgICAvKntDQTpNT0RVTEVfUFJPVklERVJTOkVORH0qL1xuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIC8qe0NBOk1PRFVMRV9ERUNMQVJBVElPTlM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0RFQ0xBUkFUSU9OUzpFTkR9Ki9cbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0VYUE9SVFM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0VYUE9SVFM6RU5EfSovXG4gICAgXSxcbiAgICAvKntDQTpNT0RVTEVfQ09ORklHOlNUQVJUfSovXG4gICAgLyp7Q0E6TU9EVUxFX0NPTkZJRzpFTkR9Ki9cbn0pXG5leHBvcnQgY2xhc3MgQ2lkYWRlTW9kdWxlIHt9XG5cbi8qe0NBOkZJTEVfQ09OVEVOVFM6U1RBUlR9Ki9cbi8qe0NBOkZJTEVfQ09OVEVOVFM6RU5EfSovXG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lkYWRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL2NpZGFkZS9jaWRhZGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUE4QjVCO0lBQUE7SUFBMkIsQ0FBQztJQUFmLFlBQVk7UUE1QnhCLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRTtnQkFDTCxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7b0JBQ3ZCO3dCQUNJLElBQUksRUFBRSxRQUFRO3dCQUNkLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQzt3QkFDdkQsR0FBRyxFQUFFLDZDQUE2QztxQkFDckQ7aUJBQ0osQ0FBQzthQUdMO1lBQ0QsU0FBUyxFQUFFO2dCQUNQLGFBQWE7YUFHaEI7WUFDRCxZQUFZLEVBQUU7WUFDVixrQ0FBa0M7WUFDbEMsZ0NBQWdDO2FBQ25DO1lBQ0QsT0FBTyxFQUFFO1lBQ0wsNkJBQTZCO1lBQzdCLDJCQUEyQjthQUM5QjtTQUdKLENBQUM7T0FDVyxZQUFZLENBQUc7SUFBRCxtQkFBQztDQUFBLEFBQTVCLElBQTRCO1NBQWYsWUFBWTtBQUV6Qiw0QkFBNEI7QUFDNUIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbi8qe0NBOlBBQ0tBR0VfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UEFDS0FHRV9JTVBPUlRTOkVORH0qL1xuXG5pbXBvcnQgeyBDaWRhZGVTZXJ2aWNlIH0gZnJvbSBcIi4vY2lkYWRlLnNlcnZpY2VcIjtcbi8qe0NBOlBST0pFQ1RfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UFJPSkVDVF9JTVBPUlRTOkVORH0qL1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgUGVybWlzc2lvbnNNb2R1bGUuZm9yQ2hpbGQoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiY2lkYWRlXCIsXG4gICAgICAgICAgICAgICAgYWN0aW9uczogW1wiVmlzdWFsaXphclwiLCBcIkluY2x1aXJcIiwgXCJFZGl0YXJcIiwgXCJFeGNsdWlyXCJdLFxuICAgICAgICAgICAgICAgIHVyaTogYHJlczovL3Nlbmlvci5jb20uYnIveW1zL2VycC9lbnRpdGllcy9jaWRhZGVgLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSksXG4gICAgICAgIC8qe0NBOk1PRFVMRV9JTVBPUlRTOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9JTVBPUlRTOkVORH0qL1xuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIENpZGFkZVNlcnZpY2UsXG4gICAgICAgIC8qe0NBOk1PRFVMRV9QUk9WSURFUlM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX1BST1ZJREVSUzpFTkR9Ki9cbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICAvKntDQTpNT0RVTEVfREVDTEFSQVRJT05TOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9ERUNMQVJBVElPTlM6RU5EfSovXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIC8qe0NBOk1PRFVMRV9FWFBPUlRTOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9FWFBPUlRTOkVORH0qL1xuICAgIF0sXG4gICAgLyp7Q0E6TU9EVUxFX0NPTkZJRzpTVEFSVH0qL1xuICAgIC8qe0NBOk1PRFVMRV9DT05GSUc6RU5EfSovXG59KVxuZXhwb3J0IGNsYXNzIENpZGFkZU1vZHVsZSB7fVxuXG4vKntDQTpGSUxFX0NPTlRFTlRTOlNUQVJUfSovXG4vKntDQTpGSUxFX0NPTlRFTlRTOkVORH0qL1xuIl19
@@ -16,7 +16,7 @@ var ContratoCompraModule = /** @class */ (function () {
16
16
  {
17
17
  name: "contratoCompra",
18
18
  actions: ["Visualizar", "Incluir", "Editar", "Excluir"],
19
- uri: "res://senior.com.br/yms/erp_data/entities/contratoCompra",
19
+ uri: "res://senior.com.br/yms/erp/entities/contratoCompra",
20
20
  },
21
21
  ]),
22
22
  ],
@@ -38,4 +38,4 @@ var ContratoCompraModule = /** @class */ (function () {
38
38
  export { ContratoCompraModule };
39
39
  /*{CA:FILE_CONTENTS:START}*/
40
40
  /*{CA:FILE_CONTENTS:END}*/
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhdG8tY29tcHJhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL2NvbnRyYXRvLWNvbXByYS9jb250cmF0by1jb21wcmEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUFFNUIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsOEJBQThCO0FBQzlCLDRCQUE0QjtBQThCNUI7SUFBQTtJQUFtQyxDQUFDO0lBQXZCLG9CQUFvQjtRQTVCaEMsUUFBUSxDQUFDO1lBQ04sT0FBTyxFQUFFO2dCQUNMLGlCQUFpQixDQUFDLFFBQVEsQ0FBQztvQkFDdkI7d0JBQ0ksSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDO3dCQUN2RCxHQUFHLEVBQUUsMERBQTBEO3FCQUNsRTtpQkFDSixDQUFDO2FBR0w7WUFDRCxTQUFTLEVBQUU7Z0JBQ1AscUJBQXFCO2FBR3hCO1lBQ0QsWUFBWSxFQUFFO1lBQ1Ysa0NBQWtDO1lBQ2xDLGdDQUFnQzthQUNuQztZQUNELE9BQU8sRUFBRTtZQUNMLDZCQUE2QjtZQUM3QiwyQkFBMkI7YUFDOUI7U0FHSixDQUFDO09BQ1csb0JBQW9CLENBQUc7SUFBRCwyQkFBQztDQUFBLEFBQXBDLElBQW9DO1NBQXZCLG9CQUFvQjtBQUVqQyw0QkFBNEI7QUFDNUIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbi8qe0NBOlBBQ0tBR0VfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UEFDS0FHRV9JTVBPUlRTOkVORH0qL1xuXG5pbXBvcnQgeyBDb250cmF0b0NvbXByYVNlcnZpY2UgfSBmcm9tIFwiLi9jb250cmF0by1jb21wcmEuc2VydmljZVwiO1xuLyp7Q0E6UFJPSkVDVF9JTVBPUlRTOlNUQVJUfSovXG4vKntDQTpQUk9KRUNUX0lNUE9SVFM6RU5EfSovXG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBQZXJtaXNzaW9uc01vZHVsZS5mb3JDaGlsZChbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb250cmF0b0NvbXByYVwiLFxuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtcIlZpc3VhbGl6YXJcIiwgXCJJbmNsdWlyXCIsIFwiRWRpdGFyXCIsIFwiRXhjbHVpclwiXSxcbiAgICAgICAgICAgICAgICB1cmk6IGByZXM6Ly9zZW5pb3IuY29tLmJyL3ltcy9lcnBfZGF0YS9lbnRpdGllcy9jb250cmF0b0NvbXByYWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdKSxcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0lNUE9SVFM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0lNUE9SVFM6RU5EfSovXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgQ29udHJhdG9Db21wcmFTZXJ2aWNlLFxuICAgICAgICAvKntDQTpNT0RVTEVfUFJPVklERVJTOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9QUk9WSURFUlM6RU5EfSovXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0RFQ0xBUkFUSU9OUzpTVEFSVH0qL1xuICAgICAgICAvKntDQTpNT0RVTEVfREVDTEFSQVRJT05TOkVORH0qL1xuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICAvKntDQTpNT0RVTEVfRVhQT1JUUzpTVEFSVH0qL1xuICAgICAgICAvKntDQTpNT0RVTEVfRVhQT1JUUzpFTkR9Ki9cbiAgICBdLFxuICAgIC8qe0NBOk1PRFVMRV9DT05GSUc6U1RBUlR9Ki9cbiAgICAvKntDQTpNT0RVTEVfQ09ORklHOkVORH0qL1xufSlcbmV4cG9ydCBjbGFzcyBDb250cmF0b0NvbXByYU1vZHVsZSB7fVxuXG4vKntDQTpGSUxFX0NPTlRFTlRTOlNUQVJUfSovXG4vKntDQTpGSUxFX0NPTlRFTlRTOkVORH0qL1xuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhdG8tY29tcHJhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy95bXMtaW50ZWdyYXRpb24vIiwic291cmNlcyI6WyJzcmMvZXJwLXNlbmlvci9jb3JlL2VudGl0aWVzL2NvbnRyYXRvLWNvbXByYS9jb250cmF0by1jb21wcmEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLDhCQUE4QjtBQUM5Qiw0QkFBNEI7QUFFNUIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsOEJBQThCO0FBQzlCLDRCQUE0QjtBQThCNUI7SUFBQTtJQUFtQyxDQUFDO0lBQXZCLG9CQUFvQjtRQTVCaEMsUUFBUSxDQUFDO1lBQ04sT0FBTyxFQUFFO2dCQUNMLGlCQUFpQixDQUFDLFFBQVEsQ0FBQztvQkFDdkI7d0JBQ0ksSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDO3dCQUN2RCxHQUFHLEVBQUUscURBQXFEO3FCQUM3RDtpQkFDSixDQUFDO2FBR0w7WUFDRCxTQUFTLEVBQUU7Z0JBQ1AscUJBQXFCO2FBR3hCO1lBQ0QsWUFBWSxFQUFFO1lBQ1Ysa0NBQWtDO1lBQ2xDLGdDQUFnQzthQUNuQztZQUNELE9BQU8sRUFBRTtZQUNMLDZCQUE2QjtZQUM3QiwyQkFBMkI7YUFDOUI7U0FHSixDQUFDO09BQ1csb0JBQW9CLENBQUc7SUFBRCwyQkFBQztDQUFBLEFBQXBDLElBQW9DO1NBQXZCLG9CQUFvQjtBQUVqQyw0QkFBNEI7QUFDNUIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL3BsYXRmb3JtLWNvbXBvbmVudHNcIjtcbi8qe0NBOlBBQ0tBR0VfSU1QT1JUUzpTVEFSVH0qL1xuLyp7Q0E6UEFDS0FHRV9JTVBPUlRTOkVORH0qL1xuXG5pbXBvcnQgeyBDb250cmF0b0NvbXByYVNlcnZpY2UgfSBmcm9tIFwiLi9jb250cmF0by1jb21wcmEuc2VydmljZVwiO1xuLyp7Q0E6UFJPSkVDVF9JTVBPUlRTOlNUQVJUfSovXG4vKntDQTpQUk9KRUNUX0lNUE9SVFM6RU5EfSovXG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBQZXJtaXNzaW9uc01vZHVsZS5mb3JDaGlsZChbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb250cmF0b0NvbXByYVwiLFxuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtcIlZpc3VhbGl6YXJcIiwgXCJJbmNsdWlyXCIsIFwiRWRpdGFyXCIsIFwiRXhjbHVpclwiXSxcbiAgICAgICAgICAgICAgICB1cmk6IGByZXM6Ly9zZW5pb3IuY29tLmJyL3ltcy9lcnAvZW50aXRpZXMvY29udHJhdG9Db21wcmFgLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSksXG4gICAgICAgIC8qe0NBOk1PRFVMRV9JTVBPUlRTOlNUQVJUfSovXG4gICAgICAgIC8qe0NBOk1PRFVMRV9JTVBPUlRTOkVORH0qL1xuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIENvbnRyYXRvQ29tcHJhU2VydmljZSxcbiAgICAgICAgLyp7Q0E6TU9EVUxFX1BST1ZJREVSUzpTVEFSVH0qL1xuICAgICAgICAvKntDQTpNT0RVTEVfUFJPVklERVJTOkVORH0qL1xuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIC8qe0NBOk1PRFVMRV9ERUNMQVJBVElPTlM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0RFQ0xBUkFUSU9OUzpFTkR9Ki9cbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgLyp7Q0E6TU9EVUxFX0VYUE9SVFM6U1RBUlR9Ki9cbiAgICAgICAgLyp7Q0E6TU9EVUxFX0VYUE9SVFM6RU5EfSovXG4gICAgXSxcbiAgICAvKntDQTpNT0RVTEVfQ09ORklHOlNUQVJUfSovXG4gICAgLyp7Q0E6TU9EVUxFX0NPTkZJRzpFTkR9Ki9cbn0pXG5leHBvcnQgY2xhc3MgQ29udHJhdG9Db21wcmFNb2R1bGUge31cblxuLyp7Q0E6RklMRV9DT05URU5UUzpTVEFSVH0qL1xuLyp7Q0E6RklMRV9DT05URU5UUzpFTkR9Ki9cbiJdfQ==