@po-ui/ng-components 6.2.0 → 6.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/esm2020/lib/components/po-accordion/po-accordion-item-body/po-accordion-item-body.component.mjs +3 -5
  2. package/esm2020/lib/components/po-accordion/po-accordion-item-header/po-accordion-item-header.component.mjs +3 -5
  3. package/esm2020/lib/components/po-accordion/po-accordion.component.mjs +3 -5
  4. package/esm2020/lib/components/po-badge/po-badge.component.mjs +3 -5
  5. package/esm2020/lib/components/po-breadcrumb/po-breadcrumb-item/po-breadcrumb-item.component.mjs +5 -9
  6. package/esm2020/lib/components/po-breadcrumb/po-breadcrumb.component.mjs +3 -5
  7. package/esm2020/lib/components/po-button/po-button-base.component.mjs +5 -1
  8. package/esm2020/lib/components/po-calendar/po-calendar-wrapper/po-calendar-wrapper.component.mjs +15 -33
  9. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis.component.mjs +2 -3
  10. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar.component.mjs +3 -5
  11. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-column/po-chart-column.component.mjs +3 -5
  12. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-donut/po-chart-donut.component.mjs +3 -5
  13. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-pie/po-chart-pie.component.mjs +3 -5
  14. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-area/po-chart-area.component.mjs +2 -3
  15. package/esm2020/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line.component.mjs +2 -3
  16. package/esm2020/lib/components/po-chart/po-chart-legend/po-chart-legend.component.mjs +4 -7
  17. package/esm2020/lib/components/po-chart/po-chart.component.mjs +3 -5
  18. package/esm2020/lib/components/po-disclaimer/po-disclaimer.component.mjs +2 -3
  19. package/esm2020/lib/components/po-disclaimer-group/po-disclaimer-group.component.mjs +2 -3
  20. package/esm2020/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form.component.mjs +3 -5
  21. package/esm2020/lib/components/po-field/po-checkbox/po-checkbox.component.mjs +2 -3
  22. package/esm2020/lib/components/po-field/po-checkbox-group/po-checkbox-group.component.mjs +4 -8
  23. package/esm2020/lib/components/po-field/po-combo/po-combo.component.mjs +5 -12
  24. package/esm2020/lib/components/po-field/po-datepicker/po-datepicker.component.mjs +4 -9
  25. package/esm2020/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.mjs +9 -20
  26. package/esm2020/lib/components/po-field/po-decimal/po-decimal.component.mjs +3 -5
  27. package/esm2020/lib/components/po-field/po-email/po-email.component.mjs +3 -5
  28. package/esm2020/lib/components/po-field/po-field-container/po-field-container.component.mjs +2 -4
  29. package/esm2020/lib/components/po-field/po-field.model.mjs +5 -1
  30. package/esm2020/lib/components/po-field/po-input/po-input.component.mjs +3 -5
  31. package/esm2020/lib/components/po-field/po-login/po-login.component.mjs +3 -6
  32. package/esm2020/lib/components/po-field/po-lookup/interfaces/po-lookup-column.interface.mjs +1 -1
  33. package/esm2020/lib/components/po-field/po-lookup/po-lookup-base.component.mjs +8 -4
  34. package/esm2020/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.mjs +10 -3
  35. package/esm2020/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.mjs +13 -24
  36. package/esm2020/lib/components/po-field/po-lookup/po-lookup.component.mjs +6 -13
  37. package/esm2020/lib/components/po-field/po-multiselect/po-multiselect-dropdown/po-multiselect-dropdown.component.mjs +4 -7
  38. package/esm2020/lib/components/po-field/po-multiselect/po-multiselect-item/po-multiselect-item.component.mjs +2 -4
  39. package/esm2020/lib/components/po-field/po-multiselect/po-multiselect-search/po-multiselect-search.component.mjs +3 -5
  40. package/esm2020/lib/components/po-field/po-multiselect/po-multiselect.component.mjs +3 -7
  41. package/esm2020/lib/components/po-field/po-number/po-number.component.mjs +3 -5
  42. package/esm2020/lib/components/po-field/po-password/po-password.component.mjs +3 -6
  43. package/esm2020/lib/components/po-field/po-radio-group/po-radio-group.component.mjs +4 -7
  44. package/esm2020/lib/components/po-field/po-rich-text/po-rich-text-image-modal/po-rich-text-image-modal.component.mjs +5 -13
  45. package/esm2020/lib/components/po-field/po-rich-text/po-rich-text-link-modal/po-rich-text-link-modal.component.mjs +3 -9
  46. package/esm2020/lib/components/po-field/po-rich-text/po-rich-text-toolbar/po-rich-text-toolbar.component.mjs +5 -13
  47. package/esm2020/lib/components/po-field/po-rich-text/po-rich-text.component.mjs +3 -6
  48. package/esm2020/lib/components/po-field/po-select/po-select-option-template/po-select-option-template.directive.mjs +6 -2
  49. package/esm2020/lib/components/po-field/po-select/po-select.component.mjs +9 -12
  50. package/esm2020/lib/components/po-field/po-switch/po-switch.component.mjs +4 -8
  51. package/esm2020/lib/components/po-field/po-textarea/po-textarea.component.mjs +3 -6
  52. package/esm2020/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area/po-upload-drag-drop-area.component.mjs +3 -5
  53. package/esm2020/lib/components/po-field/po-upload/po-upload-file-restrictions/po-upload-file-restrictions.component.mjs +2 -3
  54. package/esm2020/lib/components/po-field/po-upload/po-upload.component.mjs +5 -12
  55. package/esm2020/lib/components/po-field/po-url/po-url.component.mjs +3 -5
  56. package/esm2020/lib/components/po-gauge/po-gauge-legend/po-gauge-legend.component.mjs +2 -3
  57. package/esm2020/lib/components/po-gauge/po-gauge-svg/po-gauge-pointer/po-gauge-pointer.component.mjs +2 -3
  58. package/esm2020/lib/components/po-gauge/po-gauge.component.mjs +2 -5
  59. package/esm2020/lib/components/po-grid/po-grid-cell/po-grid-cell.component.mjs +2 -3
  60. package/esm2020/lib/components/po-grid/po-grid-cell-action/po-grid-cell-action.component.mjs +3 -6
  61. package/esm2020/lib/components/po-grid/po-grid-head/po-grid-head.component.mjs +3 -7
  62. package/esm2020/lib/components/po-grid/po-grid.component.mjs +13 -31
  63. package/esm2020/lib/components/po-info/po-info.component.mjs +4 -8
  64. package/esm2020/lib/components/po-list-view/po-list-view.component.mjs +14 -34
  65. package/esm2020/lib/components/po-loading/po-loading-icon/po-loading-icon.component.mjs +2 -9
  66. package/esm2020/lib/components/po-menu/po-menu-filter/po-menu-filter.component.mjs +4 -8
  67. package/esm2020/lib/components/po-menu/po-menu-item/po-menu-item.component.mjs +2 -3
  68. package/esm2020/lib/components/po-menu/po-menu.component.mjs +33 -47
  69. package/esm2020/lib/components/po-menu-panel/po-menu-panel.component.mjs +5 -11
  70. package/esm2020/lib/components/po-modal/po-modal.component.mjs +5 -14
  71. package/esm2020/lib/components/po-navbar/po-navbar-items/po-navbar-items.component.mjs +3 -5
  72. package/esm2020/lib/components/po-navbar/po-navbar.component.mjs +2 -3
  73. package/esm2020/lib/components/po-page/po-page-default/po-page-default.component.mjs +4 -7
  74. package/esm2020/lib/components/po-page/po-page-detail/po-page-detail.component.mjs +2 -3
  75. package/esm2020/lib/components/po-page/po-page-edit/po-page-edit.component.mjs +2 -3
  76. package/esm2020/lib/components/po-page/po-page-header/po-page-header.component.mjs +2 -3
  77. package/esm2020/lib/components/po-page/po-page-list/po-page-list.component.mjs +8 -18
  78. package/esm2020/lib/components/po-page/po-page-slide/po-page-slide.component.mjs +4 -13
  79. package/esm2020/lib/components/po-popover/po-popover.component.mjs +2 -3
  80. package/esm2020/lib/components/po-popup/po-popup-action.interface.mjs +1 -1
  81. package/esm2020/lib/components/po-popup/po-popup.component.mjs +5 -5
  82. package/esm2020/lib/components/po-progress/po-progress-bar/po-progress-bar.component.mjs +2 -3
  83. package/esm2020/lib/components/po-progress/po-progress.component.mjs +3 -5
  84. package/esm2020/lib/components/po-slide/po-slide-control/po-slide-control.component.mjs +3 -5
  85. package/esm2020/lib/components/po-slide/po-slide.component.mjs +2 -4
  86. package/esm2020/lib/components/po-stepper/po-stepper-step/po-stepper-step.component.mjs +2 -4
  87. package/esm2020/lib/components/po-stepper/po-stepper.component.mjs +2 -3
  88. package/esm2020/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.mjs +8 -17
  89. package/esm2020/lib/components/po-table/po-table-detail/po-table-detail.component.mjs +5 -9
  90. package/esm2020/lib/components/po-table/po-table-show-subtitle/po-table-show-subtitle.component.mjs +4 -8
  91. package/esm2020/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-footer.component.mjs +2 -3
  92. package/esm2020/lib/components/po-table/po-table.component.mjs +23 -55
  93. package/esm2020/lib/components/po-tabs/po-tab-button/po-tab-button.component.mjs +2 -3
  94. package/esm2020/lib/components/po-tabs/po-tab-dropdown/po-tab-dropdown.component.mjs +4 -7
  95. package/esm2020/lib/components/po-tabs/po-tabs.component.mjs +3 -5
  96. package/esm2020/lib/components/po-tag/po-tag.component.mjs +5 -11
  97. package/esm2020/lib/components/po-toolbar/po-toolbar-actions/po-toolbar-actions.component.mjs +2 -3
  98. package/esm2020/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.component.mjs +3 -5
  99. package/esm2020/lib/components/po-toolbar/po-toolbar.component.mjs +3 -5
  100. package/esm2020/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.component.mjs +2 -3
  101. package/esm2020/lib/components/po-tree-view/po-tree-view.component.mjs +3 -5
  102. package/esm2020/lib/components/po-widget/po-widget.component.mjs +9 -17
  103. package/esm2020/lib/directives/po-tooltip/po-tooltip-base.directive.mjs +5 -9
  104. package/esm2020/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.component.mjs +7 -13
  105. package/esm2020/lib/services/po-notification/po-toaster/po-toaster.component.mjs +2 -3
  106. package/fesm2015/po-ui-ng-components.mjs +359 -735
  107. package/fesm2015/po-ui-ng-components.mjs.map +1 -1
  108. package/fesm2020/po-ui-ng-components.mjs +359 -735
  109. package/fesm2020/po-ui-ng-components.mjs.map +1 -1
  110. package/lib/components/po-button/po-button-base.component.d.ts +4 -0
  111. package/lib/components/po-field/po-field.model.d.ts +4 -0
  112. package/lib/components/po-field/po-lookup/interfaces/po-lookup-column.interface.d.ts +1 -0
  113. package/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.d.ts +1 -1
  114. package/lib/components/po-field/po-select/po-select-option-template/po-select-option-template.directive.d.ts +5 -1
  115. package/lib/components/po-field/po-select/po-select.component.d.ts +3 -1
  116. package/lib/components/po-popup/po-popup-action.interface.d.ts +8 -1
  117. package/lib/directives/po-tooltip/po-tooltip-base.directive.d.ts +3 -1
  118. package/package.json +4 -4
  119. package/po-ui-ng-components-6.5.0.tgz +0 -0
  120. package/schematics/ng-add/index.js +1 -1
  121. package/schematics/ng-add/index.spec.js +1 -1
  122. package/schematics/ng-add/index.spec.js.map +1 -1
  123. package/schematics/ng-generate/po-page-default/index.spec.js +1 -1
  124. package/schematics/ng-generate/po-page-default/index.spec.js.map +1 -1
  125. package/schematics/ng-generate/po-page-detail/index.spec.js +1 -1
  126. package/schematics/ng-generate/po-page-detail/index.spec.js.map +1 -1
  127. package/schematics/ng-generate/po-page-edit/index.spec.js +1 -1
  128. package/schematics/ng-generate/po-page-edit/index.spec.js.map +1 -1
  129. package/schematics/ng-generate/po-page-list/index.spec.js +1 -1
  130. package/schematics/ng-generate/po-page-list/index.spec.js.map +1 -1
  131. package/schematics/ng-generate/sidemenu/index.spec.js +1 -1
  132. package/schematics/ng-generate/sidemenu/index.spec.js.map +1 -1
  133. package/schematics/ng-update/v2/index.js +1 -1
  134. package/schematics/ng-update/v3/index.js +1 -1
  135. package/schematics/ng-update/v4/index.js +1 -1
  136. package/schematics/ng-update/v5/index.js +1 -1
  137. package/schematics/ng-update/v6/index.js +1 -1
  138. package/po-ui-ng-components-6.2.0.tgz +0 -0
@@ -606,16 +606,14 @@ PoDecimalComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoDecima
606
606
  multi: true
607
607
  }
608
608
  ]), i0.ɵɵInheritDefinitionFeature], decls: 8, vars: 18, consts: [[3, "p-label", "p-help", "p-optional"], [1, "po-field-container-content"], ["class", "po-field-icon-container-left", 4, "ngIf"], ["inputmode", "decimal", "type", "text", 1, "po-input", 3, "autocomplete", "disabled", "placeholder", "readonly", "required", "blur", "focus", "input", "keypress"], ["inp", ""], [1, "po-field-icon-container-right"], [3, "p-element-ref", "p-change-event", 4, "ngIf"], [3, "p-error-pattern"], [1, "po-field-icon-container-left"], [1, "po-field-icon", 3, "p-icon"], [3, "p-element-ref", "p-change-event"]], template: function PoDecimalComponent_Template(rf, ctx) { if (rf & 1) {
609
- i0.ɵɵelementStart(0, "po-field-container", 0);
610
- i0.ɵɵelementStart(1, "div", 1);
609
+ i0.ɵɵelementStart(0, "po-field-container", 0)(1, "div", 1);
611
610
  i0.ɵɵtemplate(2, PoDecimalComponent_div_2_Template, 2, 3, "div", 2);
612
611
  i0.ɵɵelementStart(3, "input", 3, 4);
613
612
  i0.ɵɵlistener("blur", function PoDecimalComponent_Template_input_blur_3_listener($event) { return ctx.onBlur($event); })("focus", function PoDecimalComponent_Template_input_focus_3_listener($event) { return ctx.onFocus($event); })("input", function PoDecimalComponent_Template_input_input_3_listener($event) { return ctx.onInput($event); })("keypress", function PoDecimalComponent_Template_input_keypress_3_listener($event) { return ctx.onKeyPress($event); });
614
613
  i0.ɵɵelementEnd();
615
614
  i0.ɵɵelementStart(5, "div", 5);
616
615
  i0.ɵɵtemplate(6, PoDecimalComponent_po_clean_6_Template, 1, 1, "po-clean", 6);
617
- i0.ɵɵelementEnd();
618
- i0.ɵɵelementEnd();
616
+ i0.ɵɵelementEnd()();
619
617
  i0.ɵɵelement(7, "po-field-container-bottom", 7);
620
618
  i0.ɵɵelementEnd();
621
619
  } if (rf & 2) {
@@ -664,4 +662,4 @@ PoDecimalComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoDecima
664
662
  type: Input,
665
663
  args: ['p-max']
666
664
  }] }); })();
667
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGVjaW1hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGVjaW1hbC9wby1kZWNpbWFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kZWNpbWFsL3BvLWRlY2ltYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBbUIsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7O0lDZnZFLDhCQUF1RDtJQUNyRCw2QkFBbUc7SUFDckcsaUJBQU07OztJQUQyQixlQUF5QztJQUF6Qyx5REFBeUM7SUFBQyxvQ0FBZTs7OztJQXlCeEYsb0NBQTZHO0lBQWpDLDhMQUFrQixvQkFBYSxJQUFDO0lBQzVHLGlCQUFXOzs7SUFEdUMsOENBQXlCOztBRFRqRixNQUFNLDhCQUE4QixHQUFHLENBQUMsQ0FBQztBQUN6QyxNQUFNLGlDQUFpQyxHQUFHLEVBQUUsQ0FBQztBQUM3QyxNQUFNLDBCQUEwQixHQUFHLEVBQUUsQ0FBQztBQUN0QyxNQUFNLHlCQUF5QixHQUFHLEVBQUUsQ0FBQztBQUVyQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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NkNBQUE7UUFFM0IsZUFBVTtRQUFWLCtCQUFVO1FBV2QsZUFBaUM7UUFBakMsOENBQWlDLGtDQUFBO1FBRGpDLCtDQUE2QiwwQkFBQSxnQ0FBQSwwQkFBQSwwQkFBQTtRQUg3Qiw4QkFBZ0IsZ0JBQUEsa0JBQUE7UUFtQkwsZUFBcUM7UUFBckMsa0VBQXFDO1FBS3pCLGVBQTRDO1FBQTVDLDhEQUE0Qzs7dUZEZ0Q1RCxrQkFBa0I7Y0FqQjlCLFNBQVM7MkJBQ0UsWUFBWSxtQkFFTCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG1CQUFtQixDQUFDO3dCQUNqRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtvQkFDRDt3QkFDRSxPQUFPLEVBQUUsYUFBYTt3QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7d0JBQ2pELEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGOzZIQUdxRCxPQUFPO2tCQUE1RCxTQUFTO21CQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQXdDcEIsY0FBYztrQkFBN0MsS0FBSzttQkFBQyxtQkFBbUI7WUFnQ1MsaUJBQWlCO2tCQUFuRCxLQUFLO21CQUFDLHNCQUFzQjtZQWlDTixNQUFNO2tCQUE1QixLQUFLO21CQUFDLFVBQVU7WUFZRyxHQUFHO2tCQUF0QixLQUFLO21CQUFDLE9BQU87WUF1Qk0sR0FBRztrQkFBdEIsS0FBSzttQkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIE5HX1ZBTElEQVRPUlMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQb0xhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBtaW5GYWlsZWQsIG1heEZhaWxlZCB9IGZyb20gJy4uL3ZhbGlkYXRvcnMnO1xuXG5pbXBvcnQgeyBjb252ZXJ0VG9JbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy91dGlsJztcbmltcG9ydCB7IFBvSW5wdXRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vcG8taW5wdXQvcG8taW5wdXQtYmFzZS5jb21wb25lbnQnO1xuXG5jb25zdCBwb0RlY2ltYWxEZWZhdWx0RGVjaW1hbHNMZW5ndGggPSAyO1xuY29uc3QgcG9EZWNpbWFsRGVmYXVsdFRob3VzYW5kTWF4bGVuZ3RoID0gMTM7XG5jb25zdCBwb0RlY2ltYWxNYXhEZWNpbWFsc0xlbmd0aCA9IDE1O1xuY29uc3QgcG9EZWNpbWFsVG90YWxMZW5ndGhMaW1pdCA9IDE2O1xuXG4vKipcbiAqXG4gKiBAZG9jc0V4dGVuZHMgUG9JbnB1dEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiA8YnI+XG4gKiAtIE8gYHBvLWRlY2ltYWxgIMOpIHVtICppbnB1dCogZXNwZWPDrWZpY28gcGFyYSByZWNlYmVyIGFwZW5hcyBuw7ptZXJvcyBkZWNpbWFpcywgcG9yIGlzc28gcmVjZWJlIGFzIHNlZ3VpbnRlcyBjYXJhY3RlcsOtc3RpY2FzOlxuICogICsgQWNlaXRhIGFwZW5hcyBuw7ptZXJvcztcbiAqICArIFV0aWxpemEgJywnIGNvbW8gc2VwYXJhZG9yIGRlIGRlY2ltYWw7XG4gKiAgKyBVdGlsaXphICcuJyBwYXJhIHNlcGFyYcOnw6NvIGRlIG1pbGhhcjtcbiAqICArIMOJIHBvc3PDrXZlbCBjb25maWd1cmFyIGEgcXVhbnRpZGFkZSBkZSBjYXNhcyBkZWNpbWFpcyBlIGEgcXVhbnRpZGFkZSBkZSBkaWdpdG9zIGRvIGNhbXBvLlxuICpcbiAqID4gKipJbXBvcnRhbnRlOioqXG4gKiBBdHVhbG1lbnRlIG8gSmF2YVNjcmlwdCBsaW1pdGEtc2UgYSB1bSBjb25qdW50byBkZSBkYWRvcyBkZSBgMzIgYml0c2AsIGUgcGFyYSBxdWUgb3MgdmFsb3JlcyBjb21wb3J0ZW0tc2UgZGV2aWRhbWVudGUsXG4gKiBvIGBwby1kZWNpbWFsYCBjb250w6ltIHVtIHRyYXRhbWVudG8gcXVlIGxpbWl0YSBlbSAxNiBvIG7Dum1lcm8gdG90YWwgZGUgY2FzYXMgYW50ZXMgZSBhcMOzcyBhIHbDrXJndWxhLlxuICogVmVqYSBhYmFpeG8gYXMgZGVtYWlzIHJlZ3JhcyBuYXMgZG9jdW1lbnRhw6fDtWVzIGRlIGBwLWRlY2ltYWxzLWxlbmd0aGAgZSBgcC10aG91c2FuZC1tYXhsZW5ndGhgLlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWRlY2ltYWwtYmFzaWNcIiB0aXRsZT1cIlBPIERlY2ltYWwgQmFzaWNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtYmFzaWMvc2FtcGxlLXBvLWRlY2ltYWwtYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGVjaW1hbC1iYXNpYy9zYW1wbGUtcG8tZGVjaW1hbC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1kZWNpbWFsLWxhYnNcIiB0aXRsZT1cIlBPIERlY2ltYWwgTGFic1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGVjaW1hbC1sYWJzL3NhbXBsZS1wby1kZWNpbWFsLWxhYnMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGVjaW1hbC1sYWJzL3NhbXBsZS1wby1kZWNpbWFsLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tZGVjaW1hbC1ob3VybHktd2FnZVwiIHRpdGxlPVwiUE8gRGVjaW1hbCAtIEhvdXJseSBXYWdlXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kZWNpbWFsLWhvdXJseS13YWdlL3NhbXBsZS1wby1kZWNpbWFsLWhvdXJseS13YWdlLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtaG91cmx5LXdhZ2Uvc2FtcGxlLXBvLWRlY2ltYWwtaG91cmx5LXdhZ2UuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tZGVjaW1hbC1ob3VybHktd2FnZS1yZWFjdGl2ZS1mb3JtXCIgdGl0bGU9XCJQTyBEZWNpbWFsIC0gSG91cmx5IFdhZ2UgUmVhY3RpdmUgRm9ybVwiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGVjaW1hbC1ob3VybHktd2FnZS1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1kZWNpbWFsLWhvdXJseS13YWdlLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGVjaW1hbC1ob3VybHktd2FnZS1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1kZWNpbWFsLWhvdXJseS13YWdlLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZGVjaW1hbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby1kZWNpbWFsLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9EZWNpbWFsQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9EZWNpbWFsQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFBvRGVjaW1hbENvbXBvbmVudCBleHRlbmRzIFBvSW5wdXRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgnaW5wJywgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSkgaW5wdXRFbDogRWxlbWVudFJlZjtcblxuICBwcml2YXRlIF9kZWNpbWFsc0xlbmd0aD86IG51bWJlciA9IHBvRGVjaW1hbERlZmF1bHREZWNpbWFsc0xlbmd0aDtcbiAgcHJpdmF0ZSBfdGhvdXNhbmRNYXhsZW5ndGg/OiBudW1iZXIgPSBwb0RlY2ltYWxEZWZhdWx0VGhvdXNhbmRNYXhsZW5ndGg7XG4gIHByaXZhdGUgX2xvY2FsZT86IHN0cmluZztcbiAgcHJpdmF0ZSBfbWluPzogbnVtYmVyO1xuICBwcml2YXRlIF9tYXg/OiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBkZWNpbWFsU2VwYXJhdG9yOiBzdHJpbmc7XG4gIHByaXZhdGUgZmlyZUNoYW5nZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIGlzS2V5Ym9hcmRBbmRyb2lkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgbWludXNTaWduOiBzdHJpbmcgPSAnLSc7XG4gIHByaXZhdGUgb2xkRG90c0xlbmd0aCA9IG51bGw7XG4gIHByaXZhdGUgdGhvdXNhbmRTZXBhcmF0b3I6IHN0cmluZztcbiAgcHJpdmF0ZSB2YWx1ZUJlZm9yZUNoYW5nZTogYW55O1xuXG4gIHByaXZhdGUgcmVnZXggPSB7XG4gICAgdGhvdXNhbmQ6IG5ldyBSZWdFeHAoJ1xcXFwnICsgJywnLCAnZycpLFxuICAgIGRlY2ltYWw6IG5ldyBSZWdFeHAoJ1xcXFwnICsgJy4nLCAnZycpXG4gIH07XG5cbiAgZ2V0IGF1dG9jb21wbGV0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5ub0F1dG9jb21wbGV0ZSA/ICdvZmYnIDogJ29uJztcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIFF1YW50aWRhZGUgbcOheGltYSBkZSBjYXNhcyBkZWNpbWFpcy5cbiAgICpcbiAgICogPiAqKkltcG9ydGFudGU6KipcbiAgICogLSBPIHZhbG9yIG3DoXhpbW8gcGVybWl0aWRvIMOpIDE1O1xuICAgKiAtIEEgc29tYSB0b3RhbCBkZSBgcC1kZWNpbWFscy1sZW5ndGhgIGNvbSBgcC10aG91c2FuZC1tYXhsZW5ndGhgIGxpbWl0YS1zZSDDoCAxNjtcbiAgICogLSBFc3RhIHByb3ByaWVkYWRlIHNvYnJlcMO1ZSBhcGVuYXMgbyB2YWxvciAqKnBhZHLDo28qKiBkZSBgcC10aG91c2FuZC1tYXhsZW5ndGhgO1xuICAgKiAtIENhc28gYHAtdGhvdXNhbmQtbWF4bGVuZ3RoYCB0ZW5oYSB1bSB2YWxvciBkZWZpbmlkbywgZXN0YSBwcm9wcmllZGFkZSBwb2RlcsOhIHJlY2ViZXIgYXBlbmFzIG8gdmFsb3IgcmVzdGFudGUgZG8gbGltaXRlIHRvdGFsICgxNikuXG4gICAqXG4gICAqIEBkZWZhdWx0IGAyYFxuICAgKi9cbiAgQElucHV0KCdwLWRlY2ltYWxzLWxlbmd0aCcpIHNldCBkZWNpbWFsc0xlbmd0aCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgbGV0IGRlY2ltYWxzTGVuZ3RoID0gY29udmVydFRvSW50KHZhbHVlKTtcblxuICAgIGRlY2ltYWxzTGVuZ3RoID0gdGhpcy5pc1ZhbHVlQmV0d2VlbkFsbG93ZWQoZGVjaW1hbHNMZW5ndGgsIHBvRGVjaW1hbE1heERlY2ltYWxzTGVuZ3RoKVxuICAgICAgPyBkZWNpbWFsc0xlbmd0aFxuICAgICAgOiBwb0RlY2ltYWxEZWZhdWx0RGVjaW1hbHNMZW5ndGg7XG5cbiAgICBpZiAodGhpcy5pc0dyZWF0ZXJUaGFuVG90YWxMZW5ndGhMaW1pdChkZWNpbWFsc0xlbmd0aCwgdGhpcy50aG91c2FuZE1heGxlbmd0aCkpIHtcbiAgICAgIHRoaXMudGhvdXNhbmRNYXhsZW5ndGggPSBwb0RlY2ltYWxUb3RhbExlbmd0aExpbWl0IC0gZGVjaW1hbHNMZW5ndGg7XG4gICAgfVxuXG4gICAgdGhpcy5fZGVjaW1hbHNMZW5ndGggPSBkZWNpbWFsc0xlbmd0aDtcbiAgfVxuXG4gIGdldCBkZWNpbWFsc0xlbmd0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGVjaW1hbHNMZW5ndGg7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBRdWFudGlkYWRlIG3DoXhpbWEgZGUgZMOtZ2l0b3MgYW50ZXMgZG8gc2VwYXJhZG9yIGRlY2ltYWwuXG4gICAqXG4gICAqID4gKipJbXBvcnRhbnRlOioqXG4gICAqIC0gTyB2YWxvciBtw6F4aW1vIHBlcm1pdGlkbyDDqSAxMztcbiAgICogLSBBIHNvbWEgdG90YWwgZGUgYHAtZGVjaW1hbHMtbGVuZ3RoYCBjb20gYHAtdGhvdXNhbmQtbWF4bGVuZ3RoYCBsaW1pdGEtc2Ugw6AgMTY7XG4gICAqIC0gRXN0YSBwcm9wcmllZGFkZSBzb2JyZXDDtWUgbyB2YWxvciBkZWZpbmlkbyBlbSBgcC1kZWNpbWFscy1sZW5ndGhgLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgMTNgXG4gICAqL1xuICBASW5wdXQoJ3AtdGhvdXNhbmQtbWF4bGVuZ3RoJykgc2V0IHRob3VzYW5kTWF4bGVuZ3RoKHZhbHVlOiBudW1iZXIpIHtcbiAgICBsZXQgdGhvdXNhbmRNYXhsZW5ndGggPSBjb252ZXJ0VG9JbnQodmFsdWUpO1xuXG4gICAgaWYgKHRoaXMuZGVjaW1hbHNMZW5ndGggPiBwb0RlY2ltYWxEZWZhdWx0RGVjaW1hbHNMZW5ndGggJiYgIXRob3VzYW5kTWF4bGVuZ3RoKSB7XG4gICAgICB0aG91c2FuZE1heGxlbmd0aCA9IHBvRGVjaW1hbFRvdGFsTGVuZ3RoTGltaXQgLSB0aGlzLmRlY2ltYWxzTGVuZ3RoO1xuICAgIH1cblxuICAgIHRob3VzYW5kTWF4bGVuZ3RoID0gdGhpcy5pc1ZhbHVlQmV0d2VlbkFsbG93ZWQodGhvdXNhbmRNYXhsZW5ndGgsIHBvRGVjaW1hbERlZmF1bHRUaG91c2FuZE1heGxlbmd0aClcbiAgICAgID8gdGhvdXNhbmRNYXhsZW5ndGhcbiAgICAgIDogcG9EZWNpbWFsRGVmYXVsdFRob3VzYW5kTWF4bGVuZ3RoO1xuXG4gICAgaWYgKHRoaXMuaXNHcmVhdGVyVGhhblRvdGFsTGVuZ3RoTGltaXQodGhpcy5kZWNpbWFsc0xlbmd0aCwgdGhvdXNhbmRNYXhsZW5ndGgpKSB7XG4gICAgICB0aGlzLmRlY2ltYWxzTGVuZ3RoID0gcG9EZWNpbWFsVG90YWxMZW5ndGhMaW1pdCAtIHRob3VzYW5kTWF4bGVuZ3RoO1xuICAgIH1cblxuICAgIHRoaXMuX3Rob3VzYW5kTWF4bGVuZ3RoID0gdGhvdXNhbmRNYXhsZW5ndGg7XG4gIH1cblxuICBnZXQgdGhvdXNhbmRNYXhsZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Rob3VzYW5kTWF4bGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogSW5mb3JtYSBvIGxvY2FsZShwYcOtcykgcGFyYSBhIGZvcm1hdGHDp8OjbyBkbyB2YWxvci5cbiAgICogUG9yIHBhZHLDo28gbyB2YWxvciBzZXLDoSBjb25maWd1cmFkbyBzZWd1bmRvIGEgbyBtw7NkdWxvIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcbiAgICpcbiAgICogPiBQYXJhIHZlciBxdWFpcyBsaW5ndWFnZW5zIHN1cG9ydGFkYXMgYWNlc3NlIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcbiAgICpcbiAgICovXG4gIEBJbnB1dCgncC1sb2NhbGUnKSBzZXQgbG9jYWxlKGxvY2FsZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbG9jYWxlID0gbG9jYWxlO1xuICAgIHRoaXMuc2V0TnVtYmVyc1NlcGFyYXRvcnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIFZhbG9yIG3DrW5pbW8uXG4gICAqL1xuICBASW5wdXQoJ3AtbWluJykgc2V0IG1pbih2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih2YWx1ZSkpIHtcbiAgICAgIHRoaXMuX21pbiA9IHZhbHVlO1xuXG4gICAgICB0aGlzLnZhbGlkYXRlTW9kZWwoKTtcbiAgICB9IGVsc2UgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5fbWluID0gdW5kZWZpbmVkO1xuXG4gICAgICB0aGlzLnZhbGlkYXRlTW9kZWwoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgbWluKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21pbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIFZhbG9yIG3DoXhpbW8uXG4gICAqL1xuICBASW5wdXQoJ3AtbWF4Jykgc2V0IG1heCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih2YWx1ZSkpIHtcbiAgICAgIHRoaXMuX21heCA9IHZhbHVlO1xuXG4gICAgICB0aGlzLnZhbGlkYXRlTW9kZWwoKTtcbiAgICB9IGVsc2UgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5fbWF4ID0gdW5kZWZpbmVkO1xuXG4gICAgICB0aGlzLnZhbGlkYXRlTW9kZWwoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgbWF4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21heDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcG9MYW5ndWFnZVNlcnZpY2U6IFBvTGFuZ3VhZ2VTZXJ2aWNlLCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihjZCk7XG4gICAgdGhpcy5pc0tleWJvYXJkQW5kcm9pZCA9ICEhbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvQW5kcm9pZC9pKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2V0TnVtYmVyc1NlcGFyYXRvcnMoKTtcbiAgfVxuXG4gIHNldE51bWJlcnNTZXBhcmF0b3JzKCkge1xuICAgIGNvbnN0IHsgZGVjaW1hbFNlcGFyYXRvciwgdGhvdXNhbmRTZXBhcmF0b3IgfSA9IHRoaXMucG9MYW5ndWFnZVNlcnZpY2UuZ2V0TnVtYmVyU2VwYXJhdG9ycyh0aGlzLl9sb2NhbGUpO1xuICAgIHRoaXMuZGVjaW1hbFNlcGFyYXRvciA9IGRlY2ltYWxTZXBhcmF0b3I7XG4gICAgdGhpcy50aG91c2FuZFNlcGFyYXRvciA9IHRob3VzYW5kU2VwYXJhdG9yO1xuICAgIHRoaXMucmVnZXggPSB7XG4gICAgICB0aG91c2FuZDogbmV3IFJlZ0V4cCgnXFxcXCcgKyB0aG91c2FuZFNlcGFyYXRvciwgJ2cnKSxcbiAgICAgIGRlY2ltYWw6IG5ldyBSZWdFeHAoJ1xcXFwnICsgZGVjaW1hbFNlcGFyYXRvciwgJ2cnKVxuICAgIH07XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy52ZXJpZnlBdXRvRm9jdXMoKTtcbiAgICB0aGlzLnNldFBhZGRpbmdJbnB1dCgpO1xuICB9XG5cbiAgY2xlYXIodmFsdWUpIHtcbiAgICB0aGlzLmNhbGxPbkNoYW5nZSh2YWx1ZSk7XG4gICAgdGhpcy5jb250cm9sQ2hhbmdlRW1pdHRlcigpO1xuICB9XG5cbiAgZXh0cmFWYWxpZGF0aW9uKGFic3RyYWN0Q29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgLy8gVmVyaWZpY2Egc2UgasOhIHBvc3N1aSBhbGd1bSBlcnJvciBwYXR0ZXJuIHBhZHLDo28uXG4gICAgdGhpcy5lcnJvclBhdHRlcm4gPSB0aGlzLmVycm9yUGF0dGVybiAhPT0gJ1ZhbG9yIEludsOhbGlkbycgPyB0aGlzLmVycm9yUGF0dGVybiA6ICcnO1xuXG4gICAgaWYgKG1pbkZhaWxlZCh0aGlzLm1pbiwgYWJzdHJhY3RDb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWluOiB7XG4gICAgICAgICAgdmFsaWQ6IGZhbHNlXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKG1heEZhaWxlZCh0aGlzLm1heCwgYWJzdHJhY3RDb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWF4OiB7XG4gICAgICAgICAgdmFsaWQ6IGZhbHNlXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBmb2N1cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0U2NyZWVuVmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbCA/IHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlIDogJyc7XG4gIH1cblxuICBoYXNJbnZhbGlkQ2xhc3MoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ25nLWludmFsaWQnKSAmJlxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctZGlydHknKSAmJlxuICAgICAgdGhpcy5nZXRTY3JlZW5WYWx1ZSgpICE9PSAnJ1xuICAgICk7XG4gIH1cblxuICBoYXNMZXR0ZXJzKHZhbHVlOiBzdHJpbmcgPSAnJykge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvW2EtekEtWjo7Kz1fwrRgXn5cIic/IUAjJCXCqCYqKCk+PHt9w6fDh1xcW1xcXS9cXFxcfF0rLyk7XG4gIH1cblxuICBpc1ZhbGlkTnVtYmVyKGV2ZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICAvLyAtIGV2ZW50LmtleSBuw6NvIGV4aXN0aWEgZW0gYWxndW5zIGJyb3dzZXJzLCBjb21vIFNhbXN1bmcgYnJvd3NlciBlIEZpcmVmb3guXG4gICAgY29uc3Qga2V5VmFsdWUgPSA8YW55PlN0cmluZy5mcm9tQ2hhckNvZGUoZXZlbnQud2hpY2gpO1xuICAgIGNvbnN0IHZhbGlkS2V5ID0gZXZlbnQud2hpY2ggIT09IDggJiYgZXZlbnQud2hpY2ggIT09IDA7XG5cbiAgICByZXR1cm4gIXRoaXMuaGFzTGV0dGVycyhrZXlWYWx1ZSkgJiYgdmFsaWRLZXk7XG4gIH1cblxuICAvLyBmdW7Dp8OjbyByZXNwb25zw6F2ZWwgcG9yIGFkaWNpb25hciBvcyB6ZXJvZXMgY29tIGFzIGNhc2EgZGVjaW1haXMgYW8gc2FpciBkbyBjYW1wby5cbiAgb25CbHVyKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLm9uVG91Y2hlZD8uKCk7XG4gICAgY29uc3QgdmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLmhhc0xldHRlcnModmFsdWUpIHx8IHRoaXMuY29udGFpbnNNb3JlVGhhbk9uZURlY2ltYWxTZXBhcmF0b3IodmFsdWUpKSB7XG4gICAgICAgIHRoaXMuc2V0Vmlld1ZhbHVlKCcnKTtcbiAgICAgICAgdGhpcy5jYWxsT25DaGFuZ2UodW5kZWZpbmVkKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB2YWx1ZVdpdGhvdXRUaG91c2FuZFNlcGFyYXRvciA9IHRoaXMuZm9ybWF0VmFsdWVXaXRob3V0VGhvdXNhbmRTZXBhcmF0b3IodmFsdWUpO1xuICAgICAgdGhpcy5zZXRWaWV3VmFsdWUodGhpcy5mb3JtYXRUb1ZpZXdWYWx1ZSh2YWx1ZVdpdGhvdXRUaG91c2FuZFNlcGFyYXRvcikpO1xuICAgIH1cblxuICAgIHRoaXMuYmx1ci5lbWl0KCk7XG4gICAgdGhpcy5jb250cm9sQ2hhbmdlRW1pdHRlcigpO1xuICB9XG5cbiAgb25Gb2N1cyhldmVudDogRm9jdXNFdmVudCkge1xuICAgIC8vIEF0dWFsaXphIHZhbG9yIGRhIHZhcmnDoXZlbCBxdWUgc2Vyw6EgdXNhZGEgcGFyYSB2ZXJpZmljYXIgc2UgbyBjYW1wbyB0ZXZlIGFsdGVyYcOnw6NvXG4gICAgdGhpcy52YWx1ZUJlZm9yZUNoYW5nZSA9IHRoaXMuZ2V0U2NyZWVuVmFsdWUoKTtcblxuICAgIC8vIERpc3BhcmEgZXZlbnRvIHF1YW5kbyBvIHVzdcOhcmlvIGVudHJhciBubyBjYW1wb1xuICAgIC8vIEVzdGUgZXZlbnRvIHRhbWLDqW0gw6kgZGlzcGFyYWRvIHF1YW5kbyBvIGNhbXBvIGluaWNpYSBjb20gZm9jby5cbiAgICB0aGlzLmVudGVyLmVtaXQoKTtcbiAgfVxuXG4gIG9uSW5wdXQoZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvblN0YXJ0O1xuICAgIGNvbnN0IHNlbGVjdGlvbkVuZCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25FbmQ7XG5cbiAgICBsZXQgbW9kZWxWYWx1ZTtcblxuICAgIC8vIC0gQnJvd3NlcnMgbmF0aXZvcyBkbyBBbmRyb2lkIGV4OiBTYW1zdW5nIEJyb3dzZXIuXG4gICAgaWYgKHRoaXMuaXNLZXlib2FyZEFuZHJvaWQpIHtcbiAgICAgIHRoaXMub25JbnB1dEtleWJvYXJkQW5kcm9pZChldmVudCk7XG4gICAgfVxuXG4gICAgbW9kZWxWYWx1ZSA9IHRoaXMuZm9ybWF0VmFsdWVXaXRob3V0VGhvdXNhbmRTZXBhcmF0b3IoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICBtb2RlbFZhbHVlID0gdGhpcy5hZGRaZXJvQmVmb3JlKG1vZGVsVmFsdWUpO1xuICAgIGNvbnN0IHZpZXdWYWx1ZSA9IHRoaXMuZm9ybWF0TWFzayhtb2RlbFZhbHVlKTtcblxuICAgIC8vIHZhbGlkYcOnw6NvIHBhcmEgbsOjbyBxdWVicmFyIElFIGNvbSBwbGFjZWhvbGRlciBkZWZpbmlkbyBlIElucHV0IHZhemlvXG4gICAgaWYgKHZpZXdWYWx1ZSkge1xuICAgICAgdGhpcy5zZXRWaWV3VmFsdWUodmlld1ZhbHVlKTtcbiAgICAgIHRoaXMuc2V0Q3Vyc29ySW5wdXQoZXZlbnQsIHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQpO1xuICAgIH1cblxuICAgIHRoaXMuY2FsbE9uQ2hhbmdlKHRoaXMuZm9ybWF0VG9Nb2RlbFZhbHVlKG1vZGVsVmFsdWUpKTtcbiAgfVxuXG4gIG9uSW5wdXRLZXlib2FyZEFuZHJvaWQoZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IGlucHV0VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgY29uc3QgaGFzTGV0dGVycyA9IHRoaXMuaGFzTGV0dGVycyhpbnB1dFZhbHVlKTtcblxuICAgIGlmIChoYXNMZXR0ZXJzKSB7XG4gICAgICB0aGlzLnNldFZpZXdWYWx1ZShpbnB1dFZhbHVlLnJlcGxhY2UoaGFzTGV0dGVyc1swXSwgJycpKTtcblxuICAgICAgcmV0dXJuIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uID0gc2VsZWN0aW9uU3RhcnQgLSAxO1xuICAgICAgY29uc3Qga2V5ID0gaW5wdXRWYWx1ZS5jaGFyQXQocG9zaXRpb24pO1xuXG4gICAgICB0aGlzLnNldFBvc2l0aW9uVmFsdWUoZXZlbnQpO1xuXG4gICAgICBpZiAodGhpcy5pc1ZhbGlkS2V5KGV2ZW50LCBrZXkpKSB7XG4gICAgICAgIHRoaXMuc2V0Vmlld1ZhbHVlKGlucHV0VmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uS2V5UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICB0aGlzLmlzVmFsaWRLZXkoZXZlbnQpO1xuICB9XG5cbiAgc2V0UGFkZGluZ0lucHV0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3Qgc2VsZWN0b3JJY29ucyA9ICcucG8tZmllbGQtaWNvbi1jb250YWluZXI6bm90KC5wby1maWVsZC1pY29uLWNvbnRhaW5lci1sZWZ0KSA+IC5wby1pY29uJztcbiAgICAgIGxldCBpY29ucyA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9ySWNvbnMpLmxlbmd0aDtcbiAgICAgIGlmICh0aGlzLmNsZWFuKSB7XG4gICAgICAgIGljb25zKys7XG4gICAgICB9XG4gICAgICBpZiAoaWNvbnMpIHtcbiAgICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gYCR7aWNvbnMgKiAzNn1weGA7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICB3cml0ZVZhbHVlTW9kZWwodmFsdWUpIHtcbiAgICBpZiAodGhpcy5pbnB1dEVsKSB7XG4gICAgICBpZiAodmFsdWUgfHwgdmFsdWUgPT09IDApIHtcbiAgICAgICAgY29uc3QgZm9ybWF0ZWRWaWV3VmFsdWUgPSB0aGlzLmZvcm1hdFRvVmlld1ZhbHVlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5zZXRWaWV3VmFsdWUoZm9ybWF0ZWRWaWV3VmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZXRWaWV3VmFsdWUoJycpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0RXJyb3JQYXR0ZXJuTWVzc2FnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5lcnJvclBhdHRlcm4gIT09ICcnICYmIHRoaXMuaGFzSW52YWxpZENsYXNzKCkgPyB0aGlzLmVycm9yUGF0dGVybiA6ICcnO1xuICB9XG5cbiAgLy8gcmVzcG9uc8OhdmVsIHBvciBhZGljaW9uYXIgMCBhbnRlcyBkYSB2aXJndWxhIChkZWNpbWFsU2VwYXJhdG9yKS5cbiAgcHJpdmF0ZSBhZGRaZXJvQmVmb3JlKHZhbHVlKSB7XG4gICAgY29uc3QgaXNEZWNpbWFsU2VwYXJhdG9yID0gdmFsdWUgPT09IHRoaXMuZGVjaW1hbFNlcGFyYXRvcjtcblxuICAgIHJldHVybiBpc0RlY2ltYWxTZXBhcmF0b3IgPyBgMCR7dmFsdWV9YCA6IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250YWluc0NvbW1hKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlLmluY2x1ZGVzKHRoaXMuZGVjaW1hbFNlcGFyYXRvcik7XG4gIH1cblxuICBwcml2YXRlIGNvbnRhaW5zTW9yZVRoYW5PbmVEZWNpbWFsU2VwYXJhdG9yKHZhbHVlOiBzdHJpbmcgPSAnJykge1xuICAgIGNvbnN0IGZvdW5kQ29tbWEgPSB2YWx1ZS5tYXRjaCh0aGlzLnJlZ2V4LmRlY2ltYWwpO1xuXG4gICAgcmV0dXJuICEhKGZvdW5kQ29tbWEgJiYgZm91bmRDb21tYS5sZW5ndGggPiAxKTtcbiAgfVxuXG4gIHByaXZhdGUgY29udHJvbENoYW5nZUVtaXR0ZXIoKSB7XG4gICAgY29uc3QgZWxlbWVudFZhbHVlID0gdGhpcy5nZXRTY3JlZW5WYWx1ZSgpO1xuXG4gICAgLy8gRW1pdGUgbyBldmVudG8gY2hhbmdlIG1hbnVhbG1lbnRlIHF1YW5kbyBvIGNhbXBvIMOpIGFsdGVyYWRvXG4gICAgLy8gRXN0ZSBldmVudG8gw6kgY29udHJvbGFkbyBtYW51YWxtZW50ZSBkZXZpZG8gYW8gcHJldmVudERlZmF1bHQgZXhpc3RlbnRlIG5hIG3DoXNjYXJhXG4gICAgLy8gZSBkZXZpZG8gYW8gY29udHJvbGUgZG8gcC1jbGVhbiwgcXVlIHRhbWLDqW0gcHJlY2lzYSBlbWl0aXIgY2hhbmdlXG4gICAgaWYgKGVsZW1lbnRWYWx1ZSAhPT0gdGhpcy52YWx1ZUJlZm9yZUNoYW5nZSkge1xuICAgICAgdGhpcy5maXJlQ2hhbmdlID0gdHJ1ZTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KGVsZW1lbnRWYWx1ZSk7XG4gICAgICB9LCAyMDApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0TWFzayh2YWx1ZTogc3RyaW5nKSB7XG4gICAgLy8gbmVjZXNzw6FyaW8gcGFyYSBuw6NvIGFkaWNpb25hciAuIG5hcyBjYXNhIGRlY2ltYWlzLlxuICAgIC8vIHBvciBleGVtcGxvOiAxMi4zNDUsMTIzLjQ1IChlcnJhZG8pXG4gICAgLy8gMTIuMzQ1LDEyMzQ1IChjb3JyZXRvKVxuXG4gICAgaWYgKHZhbHVlLm1hdGNoKHRoaXMucmVnZXguZGVjaW1hbCkpIHtcbiAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChgKFxcXFxkKSg/PShcXFxcZHszfSkrKD8hXFxcXGQpJHt0aGlzLmRlY2ltYWxTZXBhcmF0b3J9KWAsICdnJyk7XG4gICAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcoKS5yZXBsYWNlKHJlZ2V4LCBgJDEke3RoaXMudGhvdXNhbmRTZXBhcmF0b3J9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkucmVwbGFjZSgvKFxcZCkoPz0oXFxkezN9KSsoPyFcXGQpKS9nLCBgJDEke3RoaXMudGhvdXNhbmRTZXBhcmF0b3J9YCk7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdFRvTW9kZWxWYWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZm9ybWF0dGVkVmFsdWUgPSB0aGlzLnJlcGxhY2VDb21tYVRvRG90KHZhbHVlKTtcbiAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IGZvcm1hdHRlZFZhbHVlID8gcGFyc2VGbG9hdChOdW1iZXIoZm9ybWF0dGVkVmFsdWUpLnRvRml4ZWQodGhpcy5kZWNpbWFsc0xlbmd0aCkpIDogdW5kZWZpbmVkO1xuXG4gICAgcmV0dXJuIHBhcnNlZFZhbHVlID09PSAwIHx8IHBhcnNlZFZhbHVlID8gcGFyc2VkVmFsdWUgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdFRvVmlld1ZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAvLyAtIE5lY2Vzc8OhcmlvIHBhcmEgdHJhdGFyIHZhbG9yZXMgcXVlIGNvbnRlbmhhbSBkZWNpbWFsU2VwYXJhdG9yXG4gICAgdmFsdWUgPSB0aGlzLnJlcGxhY2VDb21tYVRvRG90KHZhbHVlKTtcblxuICAgIGNvbnN0IG51bWJlclZhbHVlID0gTnVtYmVyKHZhbHVlKS50b0ZpeGVkKHRoaXMuZGVjaW1hbHNMZW5ndGgpO1xuXG4gICAgY29uc3QgdmFsdWVCZWZvcmVEb3QgPSB0aGlzLmdldFZhbHVlQmVmb3JlU2VwYXJhdG9yKG51bWJlclZhbHVlLCAnLicpO1xuICAgIGNvbnN0IHZhbHVlQWZ0ZXJEb3QgPSB0aGlzLmdldFZhbHVlQWZ0ZXJTZXBhcmF0b3IobnVtYmVyVmFsdWUsICcuJyk7XG5cbiAgICBjb25zdCBmb3JtYXRlZE51bWJlciA9IHRoaXMuZm9ybWF0TWFzayh2YWx1ZUJlZm9yZURvdCk7XG5cbiAgICBpZiAodGhpcy5kZWNpbWFsc0xlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGZvcm1hdGVkTnVtYmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYCR7Zm9ybWF0ZWROdW1iZXJ9JHt0aGlzLmRlY2ltYWxTZXBhcmF0b3J9JHt2YWx1ZUFmdGVyRG90fWA7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRWYWx1ZVdpdGhvdXRUaG91c2FuZFNlcGFyYXRvcih2YWx1ZTogc3RyaW5nID0gJycpIHtcbiAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcoKS5yZXBsYWNlKHRoaXMucmVnZXgudGhvdXNhbmQsICcnKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsdWVBZnRlclNlcGFyYXRvcih2YWx1ZSA9ICcnLCBzZXBhcmF0b3IpIHtcbiAgICByZXR1cm4gdmFsdWUuc3BsaXQoc2VwYXJhdG9yKVsxXSB8fCAnJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsdWVCZWZvcmVTZXBhcmF0b3IodmFsdWUgPSAnJywgc2VwYXJhdG9yKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNwbGl0KHNlcGFyYXRvcilbMF0gfHwgJyc7XG4gIH1cblxuICBwcml2YXRlIGhhc0xlc3NEb3QodmFsdWUpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnN0IGRvdHMgPSB2YWx1ZS5tYXRjaCh0aGlzLnJlZ2V4LnRob3VzYW5kKTtcbiAgICAgIGNvbnN0IGRvdHNMZW5ndGggPSBkb3RzICYmIGRvdHMubGVuZ3RoO1xuXG4gICAgICBpZiAoZG90c0xlbmd0aCA8IHRoaXMub2xkRG90c0xlbmd0aCkge1xuICAgICAgICB0aGlzLm9sZERvdHNMZW5ndGggPSBkb3RzTGVuZ3RoO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLm9sZERvdHNMZW5ndGggPSBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgaGFzTW9yZURvdCh2YWx1ZSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgY29uc3QgZG90cyA9IHZhbHVlLm1hdGNoKHRoaXMucmVnZXgudGhvdXNhbmQpO1xuICAgICAgY29uc3QgZG90c0xlbmd0aCA9IGRvdHMgJiYgZG90cy5sZW5ndGg7XG5cbiAgICAgIGlmIChkb3RzTGVuZ3RoID4gdGhpcy5vbGREb3RzTGVuZ3RoKSB7XG4gICAgICAgIHRoaXMub2xkRG90c0xlbmd0aCA9IGRvdHNMZW5ndGg7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHRoaXMub2xkRG90c0xlbmd0aCA9IG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNNaW51c1NpZ25JbnZhbGlkUG9zaXRpb24oZXZlbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGtleUlzTWludXNTaWduID0gZXZlbnQua2V5ID09PSB0aGlzLm1pbnVzU2lnbjtcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydDtcblxuICAgIHJldHVybiBrZXlJc01pbnVzU2lnbiAmJiBzZWxlY3Rpb25TdGFydCAhPT0gMDtcbiAgfVxuXG4gIHByaXZhdGUgaXNJbnZhbGlkS2V5KGV2ZW50OiBhbnksIGNoYXJDb2RlOiBhbnkpIHtcbiAgICBjb25zdCBpc0ludmFsaWROdW1iZXIgPSAhdGhpcy5pc1ZhbGlkTnVtYmVyKGV2ZW50KTtcblxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnZlcmlmeUluc2VydENvbW1hKGV2ZW50KSB8fFxuICAgICAgdGhpcy52ZXJpZnlUaG91c2FuZExlbmd0aChldmVudCkgfHxcbiAgICAgIHRoaXMudmVyaWZ5VmFsdWVBZnRlckNvbW1hKGV2ZW50KSB8fFxuICAgICAgdGhpcy52ZXJpZnlJbnNlcnRNaW51c1NpZ24oZXZlbnQpIHx8XG4gICAgICB0aGlzLmhhc01pbnVzU2lnbkludmFsaWRQb3NpdGlvbihldmVudCkgfHxcbiAgICAgIGlzSW52YWxpZE51bWJlciB8fFxuICAgICAgdGhpcy52YWxpZGF0ZUN1cnNvclBvc2l0aW9uQmVmb3JlU2VwYXJhdG9yKGV2ZW50KSB8fFxuICAgICAgdGhpcy52ZXJpZnlEZWNpbWFsTGVuZ3RoSXNaZXJvQW5kS2V5UHJlc3NlZElzQ29tbWEoY2hhckNvZGUpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNHcmVhdGVyVGhhblRvdGFsTGVuZ3RoTGltaXQoZGVjaW1hbHNNYXhMZW5ndGg6IG51bWJlciwgdGhvdXNhbmRNYXhsZW5ndGg6IG51bWJlcikge1xuICAgIHJldHVybiBkZWNpbWFsc01heExlbmd0aCArIHRob3VzYW5kTWF4bGVuZ3RoID4gcG9EZWNpbWFsVG90YWxMZW5ndGhMaW1pdDtcbiAgfVxuXG4gIHByaXZhdGUgaXNLZXlEZWNpbWFsU2VwYXJhdG9yKGV2ZW50KSB7XG4gICAgcmV0dXJuIGV2ZW50LmtleSA9PT0gdGhpcy5kZWNpbWFsU2VwYXJhdG9yIHx8IGV2ZW50LmNoYXIgPT09IHRoaXMuZGVjaW1hbFNlcGFyYXRvcjtcbiAgfVxuXG4gIHByaXZhdGUgaXNQb3NpdGlvbkFmdGVyRGVjaW1hbFNlcGFyYXRvcihwb3NpdGlvbkN1cnNvciwgdmFsdWUpIHtcbiAgICBjb25zdCBpbmRleENvbW1hID0gdmFsdWUgJiYgdmFsdWUuaW5kZXhPZih0aGlzLmRlY2ltYWxTZXBhcmF0b3IpO1xuXG4gICAgaWYgKGluZGV4Q29tbWEgJiYgdGhpcy5kZWNpbWFsc0xlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiBwb3NpdGlvbkN1cnNvciA+IGluZGV4Q29tbWE7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1NlbGVjdGlvblN0YXJ0RGlmZmVyZW50U2VsZWN0aW9uRW5kKHRhcmdldDogYW55KSB7XG4gICAgcmV0dXJuIHRhcmdldC5zZWxlY3Rpb25TdGFydCAhPT0gdGFyZ2V0LnNlbGVjdGlvbkVuZDtcbiAgfVxuXG4gIHByaXZhdGUgaXNWYWxpZEtleShldmVudDogYW55LCBrZXk/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjaGFyQ29kZSA9IGV2ZW50LndoaWNoIHx8IGV2ZW50LmtleUNvZGU7XG4gICAgY29uc3QgdmFsaWRLZXkgPSBldmVudC53aGljaCA9PT0gOCB8fCBldmVudC53aGljaCA9PT0gMDtcblxuICAgIGlmICh2YWxpZEtleSAmJiAhdGhpcy5pc0tleWJvYXJkQW5kcm9pZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChrZXkpIHtcbiAgICAgIGV2ZW50LmtleSA9IGtleTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0ludmFsaWRLZXkoZXZlbnQsIGNoYXJDb2RlKSkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIGlzVmFsdWVCZXR3ZWVuQWxsb3dlZCh2YWx1ZTogbnVtYmVyLCBtYXhBbGxvd2VkOiBudW1iZXIpIHtcbiAgICByZXR1cm4gdmFsdWUgPj0gMCAmJiB2YWx1ZSA8PSBtYXhBbGxvd2VkO1xuICB9XG5cbiAgLy8gUXVhbmRvIGRlY2ltYWxzTGVuZ3RoIGZvciAwIG7Do28gZGV2ZSBwZXJtaXRpciBpbmZvcm1hciB2w61yZ3VsYSAoZGVjaW1hbFNlcGFyYXRvcilcbiAgcHJpdmF0ZSB2ZXJpZnlEZWNpbWFsTGVuZ3RoSXNaZXJvQW5kS2V5UHJlc3NlZElzQ29tbWEoY2hhckNvZGU6IG51bWJlcikge1xuICAgIHJldHVybiBjaGFyQ29kZSA9PT0gNDQgJiYgdGhpcy5kZWNpbWFsc0xlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIHByaXZhdGUgdmVyaWZ5QXV0b0ZvY3VzKCkge1xuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgdGhpcy5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5pdGlhbFNlbGVjdGlvblJhbmdlKHRhcmdldDogYW55LCBzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKSB7XG4gICAgaWYgKHNlbGVjdGlvblN0YXJ0ID09PSAxICYmIHNlbGVjdGlvbkVuZCA9PT0gMSkge1xuICAgICAgcmV0dXJuIHRhcmdldC5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25TdGFydCArIDEsIHNlbGVjdGlvbkVuZCArIDEpO1xuICAgIH1cbiAgICByZXR1cm4gdGFyZ2V0LnNldFNlbGVjdGlvblJhbmdlKHNlbGVjdGlvblN0YXJ0IC0gMSwgc2VsZWN0aW9uRW5kIC0gMSk7XG4gIH1cblxuICBwcml2YXRlIHJlcGxhY2VBdCh2YWx1ZSwgaW5kZXgsIHJlcGxhY2UpIHtcbiAgICByZXR1cm4gdmFsdWUuc3Vic3RyaW5nKDAsIGluZGV4KSArIHJlcGxhY2UgKyB2YWx1ZS5zdWJzdHJpbmcoaW5kZXggKyAxKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwbGFjZUNvbW1hVG9Eb3QodmFsdWU6IHN0cmluZyA9ICcnKSB7XG4gICAgaWYgKHRoaXMuZGVjaW1hbFNlcGFyYXRvciA9PT0gJywnKSB7XG4gICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCkucmVwbGFjZSh0aGlzLnJlZ2V4LmRlY2ltYWwsICcuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRDdXJzb3JJbnB1dChldmVudCwgc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCkge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICBjb25zdCB2aWV3VmFsdWUgPSB0YXJnZXQudmFsdWU7XG5cbiAgICAvLyBDYXNvIGhvdXZlciBtYWlzIC4gZG8gcXVlIGFudGVyaW9ybWVudGUgc29tYSBvIHZhbG9yIGNvbSAxLlxuICAgIGlmICh0aGlzLmhhc01vcmVEb3Qodmlld1ZhbHVlKSB8fCB2aWV3VmFsdWUgPT09ICcwJyArIHRoaXMuZGVjaW1hbFNlcGFyYXRvcikge1xuICAgICAgcmV0dXJuIHRhcmdldC5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25TdGFydCArIDEsIHNlbGVjdGlvbkVuZCArIDEpO1xuICAgIH1cblxuICAgIC8vIENhc28gaG91dmVyIG1lbm9zIC4gZG8gcXVlIGFudGVyaW9ybWVudGUgc3VidHJhaSBvIHZhbG9yIHBvciAxLlxuICAgIGlmICh0aGlzLmhhc0xlc3NEb3Qodmlld1ZhbHVlKSkge1xuICAgICAgdGhpcy5zZXRJbml0aWFsU2VsZWN0aW9uUmFuZ2UodGFyZ2V0LCBzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKTtcbiAgICB9XG4gICAgcmV0dXJuIHRhcmdldC5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UG9zaXRpb25WYWx1ZShldmVudDogYW55KSB7XG4gICAgY29uc3QgdmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgY29uc3QgcG9zaXRpb24gPSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQgLSAxO1xuXG4gICAgaWYgKHBvc2l0aW9uID4gMCAmJiBldmVudC5rZXkgPT09IHRoaXMubWludXNTaWduKSB7XG4gICAgICBldmVudC50YXJnZXQudmFsdWUgPSB2YWx1ZS5zdWJzdHJpbmcoMCwgcG9zaXRpb24pICsgdmFsdWUuc3Vic3RyKHBvc2l0aW9uICsgMSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRWaWV3VmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQ3Vyc29yUG9zaXRpb25CZWZvcmVTZXBhcmF0b3IoZXZlbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICBjb25zdCBvcmlnaW5hbFZhbHVlID0gdGhpcy5mb3JtYXRWYWx1ZVdpdGhvdXRUaG91c2FuZFNlcGFyYXRvcih0YXJnZXQudmFsdWUpO1xuICAgIGNvbnN0IHZhbHVlQmVmb3JlU2VwYXJhdG9yID0gdGhpcy5nZXRWYWx1ZUJlZm9yZVNlcGFyYXRvcih0YXJnZXQudmFsdWUsIHRoaXMuZGVjaW1hbFNlcGFyYXRvcik7XG4gICAgY29uc3QgdmFsdWVCZWZvcmVTZXBhcmF0b3JPcmlnaW5hbCA9IHRoaXMuZ2V0VmFsdWVCZWZvcmVTZXBhcmF0b3Iob3JpZ2luYWxWYWx1ZSwgdGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcblxuICAgIGlmICh0aGlzLmlzU2VsZWN0aW9uU3RhcnREaWZmZXJlbnRTZWxlY3Rpb25FbmQodGFyZ2V0KSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gKFxuICAgICAgdGFyZ2V0LnNlbGVjdGlvblN0YXJ0IDw9IHZhbHVlQmVmb3JlU2VwYXJhdG9yLmxlbmd0aCAmJlxuICAgICAgdmFsdWVCZWZvcmVTZXBhcmF0b3JPcmlnaW5hbC5sZW5ndGggPT09IHRoaXMudGhvdXNhbmRNYXhsZW5ndGggJiZcbiAgICAgICF0aGlzLmlzS2V5RGVjaW1hbFNlcGFyYXRvcihldmVudClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB2ZXJpZnlUaG91c2FuZExlbmd0aChldmVudDogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0O1xuICAgIGNvbnN0IG9yaWdpbmFsVmFsdWUgPSB0aGlzLmZvcm1hdFZhbHVlV2l0aG91dFRob3VzYW5kU2VwYXJhdG9yKHRhcmdldC52YWx1ZSk7XG4gICAgY29uc3QgdmFsdWVCZWZvcmVTZXBhcmF0b3JPcmlnaW5hbCA9IHRoaXMuZ2V0VmFsdWVCZWZvcmVTZXBhcmF0b3Iob3JpZ2luYWxWYWx1ZSwgdGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcblxuICAgIGlmICh0aGlzLmlzU2VsZWN0aW9uU3RhcnREaWZmZXJlbnRTZWxlY3Rpb25FbmQodGFyZ2V0KSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gKFxuICAgICAgdmFsdWVCZWZvcmVTZXBhcmF0b3JPcmlnaW5hbC5sZW5ndGggPj0gdGhpcy50aG91c2FuZE1heGxlbmd0aCAmJlxuICAgICAgIXRoaXMuaXNLZXlEZWNpbWFsU2VwYXJhdG9yKGV2ZW50KSAmJlxuICAgICAgdGhpcy5pc1Bvc2l0aW9uQWZ0ZXJEZWNpbWFsU2VwYXJhdG9yKHRhcmdldC5zZWxlY3Rpb25TdGFydCAtIHRoaXMuZGVjaW1hbHNMZW5ndGgsIHRhcmdldC52YWx1ZSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB2ZXJpZnlJbnNlcnRDb21tYShlOiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCBoYXNDb21tYSA9IHRoaXMuY29udGFpbnNDb21tYShlLnRhcmdldC52YWx1ZSk7XG5cbiAgICByZXR1cm4gaGFzQ29tbWEgJiYgZS5rZXkgPT09IHRoaXMuZGVjaW1hbFNlcGFyYXRvcjtcbiAgfVxuXG4gIHByaXZhdGUgdmVyaWZ5SW5zZXJ0TWludXNTaWduKGV2ZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICBjb25zdCBpbmRleE1pbnVzU2lnbiA9IHZhbHVlLmxhc3RJbmRleE9mKHRoaXMubWludXNTaWduKSAhPT0gLTE7XG4gICAgY29uc3QgcG9zaXRpb25NaW51c1NpZ24gPSB2YWx1ZS5sYXN0SW5kZXhPZignLScpO1xuICAgIGNvbnN0IG9jY3VyYW5jZXNNaW51c1NpZ24gPSB2YWx1ZS5tYXRjaChuZXcgUmVnRXhwKCctJywgJ2cnKSk7XG5cbiAgICBpZiAodGhpcy5pc0tleWJvYXJkQW5kcm9pZCAmJiBpbmRleE1pbnVzU2lnbiAmJiBvY2N1cmFuY2VzTWludXNTaWduLmxlbmd0aCA+IDEpIHtcbiAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9IHRoaXMucmVwbGFjZUF0KHZhbHVlLCBwb3NpdGlvbk1pbnVzU2lnbiwgJycpO1xuICAgIH1cbiAgICByZXR1cm4gaW5kZXhNaW51c1NpZ24gJiYgZXZlbnQua2V5ID09PSB0aGlzLm1pbnVzU2lnbjtcbiAgfVxuXG4gIHByaXZhdGUgdmVyaWZ5VmFsdWVBZnRlckNvbW1hKGV2ZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydDtcbiAgICBjb25zdCB2YWx1ZUFmdGVyU2VwYXJhdG9yID0gdGhpcy5nZXRWYWx1ZUFmdGVyU2VwYXJhdG9yKHZhbHVlLCB0aGlzLmRlY2ltYWxTZXBhcmF0b3IpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuaXNQb3NpdGlvbkFmdGVyRGVjaW1hbFNlcGFyYXRvcihzZWxlY3Rpb25TdGFydCwgdmFsdWUpICYmIHZhbHVlQWZ0ZXJTZXBhcmF0b3IubGVuZ3RoID49IHRoaXMuZGVjaW1hbHNMZW5ndGhcbiAgICApO1xuICB9XG59XG4iLCI8cG8tZmllbGQtY29udGFpbmVyIFtwLWxhYmVsXT1cImxhYmVsXCIgW3AtaGVscF09XCJoZWxwXCIgW3Atb3B0aW9uYWxdPVwiIXJlcXVpcmVkICYmIG9wdGlvbmFsXCI+XG4gIDxkaXYgY2xhc3M9XCJwby1maWVsZC1jb250YWluZXItY29udGVudFwiPlxuICAgIDxkaXYgKm5nSWY9XCJpY29uXCIgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1sZWZ0XCI+XG4gICAgICA8cG8taWNvbiBjbGFzcz1cInBvLWZpZWxkLWljb25cIiBbY2xhc3MucG8tZmllbGQtaWNvbi1kaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtwLWljb25dPVwiaWNvblwiPjwvcG8taWNvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxpbnB1dFxuICAgICAgI2lucFxuICAgICAgY2xhc3M9XCJwby1pbnB1dFwiXG4gICAgICBbYXR0ci5tYXhdPVwibWF4XCJcbiAgICAgIFthdHRyLm1pbl09XCJtaW5cIlxuICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgIFtjbGFzcy5wby1pbnB1dC1pY29uLWxlZnRdPVwiaWNvblwiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1yaWdodF09XCJjbGVhblwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgaW5wdXRtb2RlPVwiZGVjaW1hbFwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxuICAgICAgKGtleXByZXNzKT1cIm9uS2V5UHJlc3MoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1yaWdodFwiPlxuICAgICAgPHBvLWNsZWFuICpuZ0lmPVwiY2xlYW4gJiYgIWRpc2FibGVkICYmICFyZWFkb25seVwiIFtwLWVsZW1lbnQtcmVmXT1cImlucHV0RWxcIiAocC1jaGFuZ2UtZXZlbnQpPVwiY2xlYXIoJGV2ZW50KVwiPlxuICAgICAgPC9wby1jbGVhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPHBvLWZpZWxkLWNvbnRhaW5lci1ib3R0b20gW3AtZXJyb3ItcGF0dGVybl09XCJnZXRFcnJvclBhdHRlcm5NZXNzYWdlKClcIj4gPC9wby1maWVsZC1jb250YWluZXItYm90dG9tPlxuPC9wby1maWVsZC1jb250YWluZXI+XG4iXX0=
665
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGVjaW1hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGVjaW1hbC9wby1kZWNpbWFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kZWNpbWFsL3BvLWRlY2ltYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBbUIsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7O0lDZnZFLDhCQUF1RDtJQUNyRCw2QkFBbUc7SUFDckcsaUJBQU07OztJQUQyQixlQUF5QztJQUF6Qyx5REFBeUM7SUFBQyxvQ0FBZTs7OztJQXlCeEYsb0NBQTZHO0lBQWpDLDhMQUFrQixvQkFBYSxJQUFDO0lBQzVHLGlCQUFXOzs7SUFEdUMsOENBQXlCOztBRFRqRixNQUFNLDhCQUE4QixHQUFHLENBQUMsQ0FBQztBQUN6QyxNQUFNLGlDQUFpQyxHQUFHLEVBQUUsQ0FBQztBQUM3QyxNQUFNLDBCQUEwQixHQUFHLEVBQUUsQ0FBQztBQUN0QyxNQUFNLHlCQUF5QixHQUFHLEVBQUUsQ0FBQztBQUVyQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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QVU7UUFBViwrQkFBVTtRQVdkLGVBQWlDO1FBQWpDLDhDQUFpQyxrQ0FBQTtRQURqQywrQ0FBNkIsMEJBQUEsZ0NBQUEsMEJBQUEsMEJBQUE7UUFIN0IsOEJBQWdCLGdCQUFBLGtCQUFBO1FBbUJMLGVBQXFDO1FBQXJDLGtFQUFxQztRQUt6QixlQUE0QztRQUE1Qyw4REFBNEM7O3VGRGdENUQsa0JBQWtCO2NBakI5QixTQUFTOzJCQUNFLFlBQVksbUJBRUwsdUJBQXVCLENBQUMsTUFBTSxhQUNwQztvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQzt3QkFDakQsS0FBSyxFQUFFLElBQUk7cUJBQ1o7b0JBQ0Q7d0JBQ0UsT0FBTyxFQUFFLGFBQWE7d0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG1CQUFtQixDQUFDO3dCQUNqRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjs2SEFHcUQsT0FBTztrQkFBNUQsU0FBUzttQkFBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUF3Q3BCLGNBQWM7a0JBQTdDLEtBQUs7bUJBQUMsbUJBQW1CO1lBZ0NTLGlCQUFpQjtrQkFBbkQsS0FBSzttQkFBQyxzQkFBc0I7WUFpQ04sTUFBTTtrQkFBNUIsS0FBSzttQkFBQyxVQUFVO1lBWUcsR0FBRztrQkFBdEIsS0FBSzttQkFBQyxPQUFPO1lBdUJNLEdBQUc7a0JBQXRCLEtBQUs7bUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIE5HX1ZBTFVFX0FDQ0VTU09SLCBOR19WQUxJREFUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUG9MYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5zZXJ2aWNlJztcblxuaW1wb3J0IHsgbWluRmFpbGVkLCBtYXhGYWlsZWQgfSBmcm9tICcuLi92YWxpZGF0b3JzJztcblxuaW1wb3J0IHsgY29udmVydFRvSW50IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBQb0lucHV0QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL3BvLWlucHV0L3BvLWlucHV0LWJhc2UuY29tcG9uZW50JztcblxuY29uc3QgcG9EZWNpbWFsRGVmYXVsdERlY2ltYWxzTGVuZ3RoID0gMjtcbmNvbnN0IHBvRGVjaW1hbERlZmF1bHRUaG91c2FuZE1heGxlbmd0aCA9IDEzO1xuY29uc3QgcG9EZWNpbWFsTWF4RGVjaW1hbHNMZW5ndGggPSAxNTtcbmNvbnN0IHBvRGVjaW1hbFRvdGFsTGVuZ3RoTGltaXQgPSAxNjtcblxuLyoqXG4gKlxuICogQGRvY3NFeHRlbmRzIFBvSW5wdXRCYXNlQ29tcG9uZW50XG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogPGJyPlxuICogLSBPIGBwby1kZWNpbWFsYCDDqSB1bSAqaW5wdXQqIGVzcGVjw61maWNvIHBhcmEgcmVjZWJlciBhcGVuYXMgbsO6bWVyb3MgZGVjaW1haXMsIHBvciBpc3NvIHJlY2ViZSBhcyBzZWd1aW50ZXMgY2FyYWN0ZXLDrXN0aWNhczpcbiAqICArIEFjZWl0YSBhcGVuYXMgbsO6bWVyb3M7XG4gKiAgKyBVdGlsaXphICcsJyBjb21vIHNlcGFyYWRvciBkZSBkZWNpbWFsO1xuICogICsgVXRpbGl6YSAnLicgcGFyYSBzZXBhcmHDp8OjbyBkZSBtaWxoYXI7XG4gKiAgKyDDiSBwb3Nzw612ZWwgY29uZmlndXJhciBhIHF1YW50aWRhZGUgZGUgY2FzYXMgZGVjaW1haXMgZSBhIHF1YW50aWRhZGUgZGUgZGlnaXRvcyBkbyBjYW1wby5cbiAqXG4gKiA+ICoqSW1wb3J0YW50ZToqKlxuICogQXR1YWxtZW50ZSBvIEphdmFTY3JpcHQgbGltaXRhLXNlIGEgdW0gY29uanVudG8gZGUgZGFkb3MgZGUgYDMyIGJpdHNgLCBlIHBhcmEgcXVlIG9zIHZhbG9yZXMgY29tcG9ydGVtLXNlIGRldmlkYW1lbnRlLFxuICogbyBgcG8tZGVjaW1hbGAgY29udMOpbSB1bSB0cmF0YW1lbnRvIHF1ZSBsaW1pdGEgZW0gMTYgbyBuw7ptZXJvIHRvdGFsIGRlIGNhc2FzIGFudGVzIGUgYXDDs3MgYSB2w61yZ3VsYS5cbiAqIFZlamEgYWJhaXhvIGFzIGRlbWFpcyByZWdyYXMgbmFzIGRvY3VtZW50YcOnw7VlcyBkZSBgcC1kZWNpbWFscy1sZW5ndGhgIGUgYHAtdGhvdXNhbmQtbWF4bGVuZ3RoYC5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1kZWNpbWFsLWJhc2ljXCIgdGl0bGU9XCJQTyBEZWNpbWFsIEJhc2ljXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kZWNpbWFsLWJhc2ljL3NhbXBsZS1wby1kZWNpbWFsLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtYmFzaWMvc2FtcGxlLXBvLWRlY2ltYWwtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tZGVjaW1hbC1sYWJzXCIgdGl0bGU9XCJQTyBEZWNpbWFsIExhYnNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtbGFicy9zYW1wbGUtcG8tZGVjaW1hbC1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtbGFicy9zYW1wbGUtcG8tZGVjaW1hbC1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWRlY2ltYWwtaG91cmx5LXdhZ2VcIiB0aXRsZT1cIlBPIERlY2ltYWwgLSBIb3VybHkgV2FnZVwiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGVjaW1hbC1ob3VybHktd2FnZS9zYW1wbGUtcG8tZGVjaW1hbC1ob3VybHktd2FnZS5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kZWNpbWFsLWhvdXJseS13YWdlL3NhbXBsZS1wby1kZWNpbWFsLWhvdXJseS13YWdlLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWRlY2ltYWwtaG91cmx5LXdhZ2UtcmVhY3RpdmUtZm9ybVwiIHRpdGxlPVwiUE8gRGVjaW1hbCAtIEhvdXJseSBXYWdlIFJlYWN0aXZlIEZvcm1cIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtaG91cmx5LXdhZ2UtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tZGVjaW1hbC1ob3VybHktd2FnZS1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRlY2ltYWwtaG91cmx5LXdhZ2UtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tZGVjaW1hbC1ob3VybHktd2FnZS1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLWRlY2ltYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tZGVjaW1hbC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvRGVjaW1hbENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvRGVjaW1hbENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb0RlY2ltYWxDb21wb25lbnQgZXh0ZW5kcyBQb0lucHV0QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ2lucCcsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGlucHV0RWw6IEVsZW1lbnRSZWY7XG5cbiAgcHJpdmF0ZSBfZGVjaW1hbHNMZW5ndGg/OiBudW1iZXIgPSBwb0RlY2ltYWxEZWZhdWx0RGVjaW1hbHNMZW5ndGg7XG4gIHByaXZhdGUgX3Rob3VzYW5kTWF4bGVuZ3RoPzogbnVtYmVyID0gcG9EZWNpbWFsRGVmYXVsdFRob3VzYW5kTWF4bGVuZ3RoO1xuICBwcml2YXRlIF9sb2NhbGU/OiBzdHJpbmc7XG4gIHByaXZhdGUgX21pbj86IG51bWJlcjtcbiAgcHJpdmF0ZSBfbWF4PzogbnVtYmVyO1xuXG4gIHByaXZhdGUgZGVjaW1hbFNlcGFyYXRvcjogc3RyaW5nO1xuICBwcml2YXRlIGZpcmVDaGFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBpc0tleWJvYXJkQW5kcm9pZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIG1pbnVzU2lnbjogc3RyaW5nID0gJy0nO1xuICBwcml2YXRlIG9sZERvdHNMZW5ndGggPSBudWxsO1xuICBwcml2YXRlIHRob3VzYW5kU2VwYXJhdG9yOiBzdHJpbmc7XG4gIHByaXZhdGUgdmFsdWVCZWZvcmVDaGFuZ2U6IGFueTtcblxuICBwcml2YXRlIHJlZ2V4ID0ge1xuICAgIHRob3VzYW5kOiBuZXcgUmVnRXhwKCdcXFxcJyArICcsJywgJ2cnKSxcbiAgICBkZWNpbWFsOiBuZXcgUmVnRXhwKCdcXFxcJyArICcuJywgJ2cnKVxuICB9O1xuXG4gIGdldCBhdXRvY29tcGxldGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9BdXRvY29tcGxldGUgPyAnb2ZmJyA6ICdvbic7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBRdWFudGlkYWRlIG3DoXhpbWEgZGUgY2FzYXMgZGVjaW1haXMuXG4gICAqXG4gICAqID4gKipJbXBvcnRhbnRlOioqXG4gICAqIC0gTyB2YWxvciBtw6F4aW1vIHBlcm1pdGlkbyDDqSAxNTtcbiAgICogLSBBIHNvbWEgdG90YWwgZGUgYHAtZGVjaW1hbHMtbGVuZ3RoYCBjb20gYHAtdGhvdXNhbmQtbWF4bGVuZ3RoYCBsaW1pdGEtc2Ugw6AgMTY7XG4gICAqIC0gRXN0YSBwcm9wcmllZGFkZSBzb2JyZXDDtWUgYXBlbmFzIG8gdmFsb3IgKipwYWRyw6NvKiogZGUgYHAtdGhvdXNhbmQtbWF4bGVuZ3RoYDtcbiAgICogLSBDYXNvIGBwLXRob3VzYW5kLW1heGxlbmd0aGAgdGVuaGEgdW0gdmFsb3IgZGVmaW5pZG8sIGVzdGEgcHJvcHJpZWRhZGUgcG9kZXLDoSByZWNlYmVyIGFwZW5hcyBvIHZhbG9yIHJlc3RhbnRlIGRvIGxpbWl0ZSB0b3RhbCAoMTYpLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgMmBcbiAgICovXG4gIEBJbnB1dCgncC1kZWNpbWFscy1sZW5ndGgnKSBzZXQgZGVjaW1hbHNMZW5ndGgodmFsdWU6IG51bWJlcikge1xuICAgIGxldCBkZWNpbWFsc0xlbmd0aCA9IGNvbnZlcnRUb0ludCh2YWx1ZSk7XG5cbiAgICBkZWNpbWFsc0xlbmd0aCA9IHRoaXMuaXNWYWx1ZUJldHdlZW5BbGxvd2VkKGRlY2ltYWxzTGVuZ3RoLCBwb0RlY2ltYWxNYXhEZWNpbWFsc0xlbmd0aClcbiAgICAgID8gZGVjaW1hbHNMZW5ndGhcbiAgICAgIDogcG9EZWNpbWFsRGVmYXVsdERlY2ltYWxzTGVuZ3RoO1xuXG4gICAgaWYgKHRoaXMuaXNHcmVhdGVyVGhhblRvdGFsTGVuZ3RoTGltaXQoZGVjaW1hbHNMZW5ndGgsIHRoaXMudGhvdXNhbmRNYXhsZW5ndGgpKSB7XG4gICAgICB0aGlzLnRob3VzYW5kTWF4bGVuZ3RoID0gcG9EZWNpbWFsVG90YWxMZW5ndGhMaW1pdCAtIGRlY2ltYWxzTGVuZ3RoO1xuICAgIH1cblxuICAgIHRoaXMuX2RlY2ltYWxzTGVuZ3RoID0gZGVjaW1hbHNMZW5ndGg7XG4gIH1cblxuICBnZXQgZGVjaW1hbHNMZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RlY2ltYWxzTGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUXVhbnRpZGFkZSBtw6F4aW1hIGRlIGTDrWdpdG9zIGFudGVzIGRvIHNlcGFyYWRvciBkZWNpbWFsLlxuICAgKlxuICAgKiA+ICoqSW1wb3J0YW50ZToqKlxuICAgKiAtIE8gdmFsb3IgbcOheGltbyBwZXJtaXRpZG8gw6kgMTM7XG4gICAqIC0gQSBzb21hIHRvdGFsIGRlIGBwLWRlY2ltYWxzLWxlbmd0aGAgY29tIGBwLXRob3VzYW5kLW1heGxlbmd0aGAgbGltaXRhLXNlIMOgIDE2O1xuICAgKiAtIEVzdGEgcHJvcHJpZWRhZGUgc29icmVww7VlIG8gdmFsb3IgZGVmaW5pZG8gZW0gYHAtZGVjaW1hbHMtbGVuZ3RoYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYDEzYFxuICAgKi9cbiAgQElucHV0KCdwLXRob3VzYW5kLW1heGxlbmd0aCcpIHNldCB0aG91c2FuZE1heGxlbmd0aCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgbGV0IHRob3VzYW5kTWF4bGVuZ3RoID0gY29udmVydFRvSW50KHZhbHVlKTtcblxuICAgIGlmICh0aGlzLmRlY2ltYWxzTGVuZ3RoID4gcG9EZWNpbWFsRGVmYXVsdERlY2ltYWxzTGVuZ3RoICYmICF0aG91c2FuZE1heGxlbmd0aCkge1xuICAgICAgdGhvdXNhbmRNYXhsZW5ndGggPSBwb0RlY2ltYWxUb3RhbExlbmd0aExpbWl0IC0gdGhpcy5kZWNpbWFsc0xlbmd0aDtcbiAgICB9XG5cbiAgICB0aG91c2FuZE1heGxlbmd0aCA9IHRoaXMuaXNWYWx1ZUJldHdlZW5BbGxvd2VkKHRob3VzYW5kTWF4bGVuZ3RoLCBwb0RlY2ltYWxEZWZhdWx0VGhvdXNhbmRNYXhsZW5ndGgpXG4gICAgICA/IHRob3VzYW5kTWF4bGVuZ3RoXG4gICAgICA6IHBvRGVjaW1hbERlZmF1bHRUaG91c2FuZE1heGxlbmd0aDtcblxuICAgIGlmICh0aGlzLmlzR3JlYXRlclRoYW5Ub3RhbExlbmd0aExpbWl0KHRoaXMuZGVjaW1hbHNMZW5ndGgsIHRob3VzYW5kTWF4bGVuZ3RoKSkge1xuICAgICAgdGhpcy5kZWNpbWFsc0xlbmd0aCA9IHBvRGVjaW1hbFRvdGFsTGVuZ3RoTGltaXQgLSB0aG91c2FuZE1heGxlbmd0aDtcbiAgICB9XG5cbiAgICB0aGlzLl90aG91c2FuZE1heGxlbmd0aCA9IHRob3VzYW5kTWF4bGVuZ3RoO1xuICB9XG5cbiAgZ2V0IHRob3VzYW5kTWF4bGVuZ3RoKCkge1xuICAgIHJldHVybiB0aGlzLl90aG91c2FuZE1heGxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEluZm9ybWEgbyBsb2NhbGUocGHDrXMpIHBhcmEgYSBmb3JtYXRhw6fDo28gZG8gdmFsb3IuXG4gICAqIFBvciBwYWRyw6NvIG8gdmFsb3Igc2Vyw6EgY29uZmlndXJhZG8gc2VndW5kbyBhIG8gbcOzZHVsbyBbYEkxOG5gXShkb2N1bWVudGF0aW9uL3BvLWkxOG4pXG4gICAqXG4gICAqID4gUGFyYSB2ZXIgcXVhaXMgbGluZ3VhZ2VucyBzdXBvcnRhZGFzIGFjZXNzZSBbYEkxOG5gXShkb2N1bWVudGF0aW9uL3BvLWkxOG4pXG4gICAqXG4gICAqL1xuICBASW5wdXQoJ3AtbG9jYWxlJykgc2V0IGxvY2FsZShsb2NhbGU6IHN0cmluZykge1xuICAgIHRoaXMuX2xvY2FsZSA9IGxvY2FsZTtcbiAgICB0aGlzLnNldE51bWJlcnNTZXBhcmF0b3JzKCk7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBWYWxvciBtw61uaW1vLlxuICAgKi9cbiAgQElucHV0KCdwLW1pbicpIHNldCBtaW4odmFsdWU6IG51bWJlcikge1xuICAgIGlmICghaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aGlzLl9taW4gPSB2YWx1ZTtcblxuICAgICAgdGhpcy52YWxpZGF0ZU1vZGVsKCk7XG4gICAgfSBlbHNlIGlmICghdmFsdWUpIHtcbiAgICAgIHRoaXMuX21pbiA9IHVuZGVmaW5lZDtcblxuICAgICAgdGhpcy52YWxpZGF0ZU1vZGVsKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IG1pbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9taW47XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBWYWxvciBtw6F4aW1vLlxuICAgKi9cbiAgQElucHV0KCdwLW1heCcpIHNldCBtYXgodmFsdWU6IG51bWJlcikge1xuICAgIGlmICghaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aGlzLl9tYXggPSB2YWx1ZTtcblxuICAgICAgdGhpcy52YWxpZGF0ZU1vZGVsKCk7XG4gICAgfSBlbHNlIGlmICghdmFsdWUpIHtcbiAgICAgIHRoaXMuX21heCA9IHVuZGVmaW5lZDtcblxuICAgICAgdGhpcy52YWxpZGF0ZU1vZGVsKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IG1heCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9tYXg7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHBvTGFuZ3VhZ2VTZXJ2aWNlOiBQb0xhbmd1YWdlU2VydmljZSwgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoY2QpO1xuICAgIHRoaXMuaXNLZXlib2FyZEFuZHJvaWQgPSAhIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL0FuZHJvaWQvaSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldE51bWJlcnNTZXBhcmF0b3JzKCk7XG4gIH1cblxuICBzZXROdW1iZXJzU2VwYXJhdG9ycygpIHtcbiAgICBjb25zdCB7IGRlY2ltYWxTZXBhcmF0b3IsIHRob3VzYW5kU2VwYXJhdG9yIH0gPSB0aGlzLnBvTGFuZ3VhZ2VTZXJ2aWNlLmdldE51bWJlclNlcGFyYXRvcnModGhpcy5fbG9jYWxlKTtcbiAgICB0aGlzLmRlY2ltYWxTZXBhcmF0b3IgPSBkZWNpbWFsU2VwYXJhdG9yO1xuICAgIHRoaXMudGhvdXNhbmRTZXBhcmF0b3IgPSB0aG91c2FuZFNlcGFyYXRvcjtcbiAgICB0aGlzLnJlZ2V4ID0ge1xuICAgICAgdGhvdXNhbmQ6IG5ldyBSZWdFeHAoJ1xcXFwnICsgdGhvdXNhbmRTZXBhcmF0b3IsICdnJyksXG4gICAgICBkZWNpbWFsOiBuZXcgUmVnRXhwKCdcXFxcJyArIGRlY2ltYWxTZXBhcmF0b3IsICdnJylcbiAgICB9O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMudmVyaWZ5QXV0b0ZvY3VzKCk7XG4gICAgdGhpcy5zZXRQYWRkaW5nSW5wdXQoKTtcbiAgfVxuXG4gIGNsZWFyKHZhbHVlKSB7XG4gICAgdGhpcy5jYWxsT25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMuY29udHJvbENoYW5nZUVtaXR0ZXIoKTtcbiAgfVxuXG4gIGV4dHJhVmFsaWRhdGlvbihhYnN0cmFjdENvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgIC8vIFZlcmlmaWNhIHNlIGrDoSBwb3NzdWkgYWxndW0gZXJyb3IgcGF0dGVybiBwYWRyw6NvLlxuICAgIHRoaXMuZXJyb3JQYXR0ZXJuID0gdGhpcy5lcnJvclBhdHRlcm4gIT09ICdWYWxvciBJbnbDoWxpZG8nID8gdGhpcy5lcnJvclBhdHRlcm4gOiAnJztcblxuICAgIGlmIChtaW5GYWlsZWQodGhpcy5taW4sIGFic3RyYWN0Q29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1pbjoge1xuICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChtYXhGYWlsZWQodGhpcy5tYXgsIGFic3RyYWN0Q29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1heDoge1xuICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIGdldFNjcmVlblZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWwgPyB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSA6ICcnO1xuICB9XG5cbiAgaGFzSW52YWxpZENsYXNzKCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCduZy1pbnZhbGlkJykgJiZcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ25nLWRpcnR5JykgJiZcbiAgICAgIHRoaXMuZ2V0U2NyZWVuVmFsdWUoKSAhPT0gJydcbiAgICApO1xuICB9XG5cbiAgaGFzTGV0dGVycyh2YWx1ZTogc3RyaW5nID0gJycpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL1thLXpBLVo6Oys9X8K0YF5+XCInPyFAIyQlwqgmKigpPjx7fcOnw4dcXFtcXF0vXFxcXHxdKy8pO1xuICB9XG5cbiAgaXNWYWxpZE51bWJlcihldmVudDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gLSBldmVudC5rZXkgbsOjbyBleGlzdGlhIGVtIGFsZ3VucyBicm93c2VycywgY29tbyBTYW1zdW5nIGJyb3dzZXIgZSBGaXJlZm94LlxuICAgIGNvbnN0IGtleVZhbHVlID0gPGFueT5TdHJpbmcuZnJvbUNoYXJDb2RlKGV2ZW50LndoaWNoKTtcbiAgICBjb25zdCB2YWxpZEtleSA9IGV2ZW50LndoaWNoICE9PSA4ICYmIGV2ZW50LndoaWNoICE9PSAwO1xuXG4gICAgcmV0dXJuICF0aGlzLmhhc0xldHRlcnMoa2V5VmFsdWUpICYmIHZhbGlkS2V5O1xuICB9XG5cbiAgLy8gZnVuw6fDo28gcmVzcG9uc8OhdmVsIHBvciBhZGljaW9uYXIgb3MgemVyb2VzIGNvbSBhcyBjYXNhIGRlY2ltYWlzIGFvIHNhaXIgZG8gY2FtcG8uXG4gIG9uQmx1cihldmVudDogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWQ/LigpO1xuICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5oYXNMZXR0ZXJzKHZhbHVlKSB8fCB0aGlzLmNvbnRhaW5zTW9yZVRoYW5PbmVEZWNpbWFsU2VwYXJhdG9yKHZhbHVlKSkge1xuICAgICAgICB0aGlzLnNldFZpZXdWYWx1ZSgnJyk7XG4gICAgICAgIHRoaXMuY2FsbE9uQ2hhbmdlKHVuZGVmaW5lZCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsdWVXaXRob3V0VGhvdXNhbmRTZXBhcmF0b3IgPSB0aGlzLmZvcm1hdFZhbHVlV2l0aG91dFRob3VzYW5kU2VwYXJhdG9yKHZhbHVlKTtcbiAgICAgIHRoaXMuc2V0Vmlld1ZhbHVlKHRoaXMuZm9ybWF0VG9WaWV3VmFsdWUodmFsdWVXaXRob3V0VGhvdXNhbmRTZXBhcmF0b3IpKTtcbiAgICB9XG5cbiAgICB0aGlzLmJsdXIuZW1pdCgpO1xuICAgIHRoaXMuY29udHJvbENoYW5nZUVtaXR0ZXIoKTtcbiAgfVxuXG4gIG9uRm9jdXMoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAvLyBBdHVhbGl6YSB2YWxvciBkYSB2YXJpw6F2ZWwgcXVlIHNlcsOhIHVzYWRhIHBhcmEgdmVyaWZpY2FyIHNlIG8gY2FtcG8gdGV2ZSBhbHRlcmHDp8Ojb1xuICAgIHRoaXMudmFsdWVCZWZvcmVDaGFuZ2UgPSB0aGlzLmdldFNjcmVlblZhbHVlKCk7XG5cbiAgICAvLyBEaXNwYXJhIGV2ZW50byBxdWFuZG8gbyB1c3XDoXJpbyBlbnRyYXIgbm8gY2FtcG9cbiAgICAvLyBFc3RlIGV2ZW50byB0YW1iw6ltIMOpIGRpc3BhcmFkbyBxdWFuZG8gbyBjYW1wbyBpbmljaWEgY29tIGZvY28uXG4gICAgdGhpcy5lbnRlci5lbWl0KCk7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydDtcbiAgICBjb25zdCBzZWxlY3Rpb25FbmQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uRW5kO1xuXG4gICAgbGV0IG1vZGVsVmFsdWU7XG5cbiAgICAvLyAtIEJyb3dzZXJzIG5hdGl2b3MgZG8gQW5kcm9pZCBleDogU2Ftc3VuZyBCcm93c2VyLlxuICAgIGlmICh0aGlzLmlzS2V5Ym9hcmRBbmRyb2lkKSB7XG4gICAgICB0aGlzLm9uSW5wdXRLZXlib2FyZEFuZHJvaWQoZXZlbnQpO1xuICAgIH1cblxuICAgIG1vZGVsVmFsdWUgPSB0aGlzLmZvcm1hdFZhbHVlV2l0aG91dFRob3VzYW5kU2VwYXJhdG9yKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgbW9kZWxWYWx1ZSA9IHRoaXMuYWRkWmVyb0JlZm9yZShtb2RlbFZhbHVlKTtcbiAgICBjb25zdCB2aWV3VmFsdWUgPSB0aGlzLmZvcm1hdE1hc2sobW9kZWxWYWx1ZSk7XG5cbiAgICAvLyB2YWxpZGHDp8OjbyBwYXJhIG7Do28gcXVlYnJhciBJRSBjb20gcGxhY2Vob2xkZXIgZGVmaW5pZG8gZSBJbnB1dCB2YXppb1xuICAgIGlmICh2aWV3VmFsdWUpIHtcbiAgICAgIHRoaXMuc2V0Vmlld1ZhbHVlKHZpZXdWYWx1ZSk7XG4gICAgICB0aGlzLnNldEN1cnNvcklucHV0KGV2ZW50LCBzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKTtcbiAgICB9XG5cbiAgICB0aGlzLmNhbGxPbkNoYW5nZSh0aGlzLmZvcm1hdFRvTW9kZWxWYWx1ZShtb2RlbFZhbHVlKSk7XG4gIH1cblxuICBvbklucHV0S2V5Ym9hcmRBbmRyb2lkKGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBpbnB1dFZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvblN0YXJ0O1xuICAgIGNvbnN0IGhhc0xldHRlcnMgPSB0aGlzLmhhc0xldHRlcnMoaW5wdXRWYWx1ZSk7XG5cbiAgICBpZiAoaGFzTGV0dGVycykge1xuICAgICAgdGhpcy5zZXRWaWV3VmFsdWUoaW5wdXRWYWx1ZS5yZXBsYWNlKGhhc0xldHRlcnNbMF0sICcnKSk7XG5cbiAgICAgIHJldHVybiBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBwb3NpdGlvbiA9IHNlbGVjdGlvblN0YXJ0IC0gMTtcbiAgICAgIGNvbnN0IGtleSA9IGlucHV0VmFsdWUuY2hhckF0KHBvc2l0aW9uKTtcblxuICAgICAgdGhpcy5zZXRQb3NpdGlvblZhbHVlKGV2ZW50KTtcblxuICAgICAgaWYgKHRoaXMuaXNWYWxpZEtleShldmVudCwga2V5KSkge1xuICAgICAgICB0aGlzLnNldFZpZXdWYWx1ZShpbnB1dFZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbktleVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5pc1ZhbGlkS2V5KGV2ZW50KTtcbiAgfVxuXG4gIHNldFBhZGRpbmdJbnB1dCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHNlbGVjdG9ySWNvbnMgPSAnLnBvLWZpZWxkLWljb24tY29udGFpbmVyOm5vdCgucG8tZmllbGQtaWNvbi1jb250YWluZXItbGVmdCkgPiAucG8taWNvbic7XG4gICAgICBsZXQgaWNvbnMgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvckljb25zKS5sZW5ndGg7XG4gICAgICBpZiAodGhpcy5jbGVhbikge1xuICAgICAgICBpY29ucysrO1xuICAgICAgfVxuICAgICAgaWYgKGljb25zKSB7XG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnN0eWxlLnBhZGRpbmdSaWdodCA9IGAke2ljb25zICogMzZ9cHhgO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgd3JpdGVWYWx1ZU1vZGVsKHZhbHVlKSB7XG4gICAgaWYgKHRoaXMuaW5wdXRFbCkge1xuICAgICAgaWYgKHZhbHVlIHx8IHZhbHVlID09PSAwKSB7XG4gICAgICAgIGNvbnN0IGZvcm1hdGVkVmlld1ZhbHVlID0gdGhpcy5mb3JtYXRUb1ZpZXdWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2V0Vmlld1ZhbHVlKGZvcm1hdGVkVmlld1ZhbHVlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2V0Vmlld1ZhbHVlKCcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuY2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldEVycm9yUGF0dGVybk1lc3NhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3JQYXR0ZXJuICE9PSAnJyAmJiB0aGlzLmhhc0ludmFsaWRDbGFzcygpID8gdGhpcy5lcnJvclBhdHRlcm4gOiAnJztcbiAgfVxuXG4gIC8vIHJlc3BvbnPDoXZlbCBwb3IgYWRpY2lvbmFyIDAgYW50ZXMgZGEgdmlyZ3VsYSAoZGVjaW1hbFNlcGFyYXRvcikuXG4gIHByaXZhdGUgYWRkWmVyb0JlZm9yZSh2YWx1ZSkge1xuICAgIGNvbnN0IGlzRGVjaW1hbFNlcGFyYXRvciA9IHZhbHVlID09PSB0aGlzLmRlY2ltYWxTZXBhcmF0b3I7XG5cbiAgICByZXR1cm4gaXNEZWNpbWFsU2VwYXJhdG9yID8gYDAke3ZhbHVlfWAgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgY29udGFpbnNDb21tYSh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5pbmNsdWRlcyh0aGlzLmRlY2ltYWxTZXBhcmF0b3IpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250YWluc01vcmVUaGFuT25lRGVjaW1hbFNlcGFyYXRvcih2YWx1ZTogc3RyaW5nID0gJycpIHtcbiAgICBjb25zdCBmb3VuZENvbW1hID0gdmFsdWUubWF0Y2godGhpcy5yZWdleC5kZWNpbWFsKTtcblxuICAgIHJldHVybiAhIShmb3VuZENvbW1hICYmIGZvdW5kQ29tbWEubGVuZ3RoID4gMSk7XG4gIH1cblxuICBwcml2YXRlIGNvbnRyb2xDaGFuZ2VFbWl0dGVyKCkge1xuICAgIGNvbnN0IGVsZW1lbnRWYWx1ZSA9IHRoaXMuZ2V0U2NyZWVuVmFsdWUoKTtcblxuICAgIC8vIEVtaXRlIG8gZXZlbnRvIGNoYW5nZSBtYW51YWxtZW50ZSBxdWFuZG8gbyBjYW1wbyDDqSBhbHRlcmFkb1xuICAgIC8vIEVzdGUgZXZlbnRvIMOpIGNvbnRyb2xhZG8gbWFudWFsbWVudGUgZGV2aWRvIGFvIHByZXZlbnREZWZhdWx0IGV4aXN0ZW50ZSBuYSBtw6FzY2FyYVxuICAgIC8vIGUgZGV2aWRvIGFvIGNvbnRyb2xlIGRvIHAtY2xlYW4sIHF1ZSB0YW1iw6ltIHByZWNpc2EgZW1pdGlyIGNoYW5nZVxuICAgIGlmIChlbGVtZW50VmFsdWUgIT09IHRoaXMudmFsdWVCZWZvcmVDaGFuZ2UpIHtcbiAgICAgIHRoaXMuZmlyZUNoYW5nZSA9IHRydWU7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdChlbGVtZW50VmFsdWUpO1xuICAgICAgfSwgMjAwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdE1hc2sodmFsdWU6IHN0cmluZykge1xuICAgIC8vIG5lY2Vzc8OhcmlvIHBhcmEgbsOjbyBhZGljaW9uYXIgLiBuYXMgY2FzYSBkZWNpbWFpcy5cbiAgICAvLyBwb3IgZXhlbXBsbzogMTIuMzQ1LDEyMy40NSAoZXJyYWRvKVxuICAgIC8vIDEyLjM0NSwxMjM0NSAoY29ycmV0bylcblxuICAgIGlmICh2YWx1ZS5tYXRjaCh0aGlzLnJlZ2V4LmRlY2ltYWwpKSB7XG4gICAgICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoYChcXFxcZCkoPz0oXFxcXGR7M30pKyg/IVxcXFxkKSR7dGhpcy5kZWNpbWFsU2VwYXJhdG9yfSlgLCAnZycpO1xuICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkucmVwbGFjZShyZWdleCwgYCQxJHt0aGlzLnRob3VzYW5kU2VwYXJhdG9yfWApO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygpLnJlcGxhY2UoLyhcXGQpKD89KFxcZHszfSkrKD8hXFxkKSkvZywgYCQxJHt0aGlzLnRob3VzYW5kU2VwYXJhdG9yfWApO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRUb01vZGVsVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IGZvcm1hdHRlZFZhbHVlID0gdGhpcy5yZXBsYWNlQ29tbWFUb0RvdCh2YWx1ZSk7XG4gICAgY29uc3QgcGFyc2VkVmFsdWUgPSBmb3JtYXR0ZWRWYWx1ZSA/IHBhcnNlRmxvYXQoTnVtYmVyKGZvcm1hdHRlZFZhbHVlKS50b0ZpeGVkKHRoaXMuZGVjaW1hbHNMZW5ndGgpKSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBwYXJzZWRWYWx1ZSA9PT0gMCB8fCBwYXJzZWRWYWx1ZSA/IHBhcnNlZFZhbHVlIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRUb1ZpZXdWYWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgLy8gLSBOZWNlc3PDoXJpbyBwYXJhIHRyYXRhciB2YWxvcmVzIHF1ZSBjb250ZW5oYW0gZGVjaW1hbFNlcGFyYXRvclxuICAgIHZhbHVlID0gdGhpcy5yZXBsYWNlQ29tbWFUb0RvdCh2YWx1ZSk7XG5cbiAgICBjb25zdCBudW1iZXJWYWx1ZSA9IE51bWJlcih2YWx1ZSkudG9GaXhlZCh0aGlzLmRlY2ltYWxzTGVuZ3RoKTtcblxuICAgIGNvbnN0IHZhbHVlQmVmb3JlRG90ID0gdGhpcy5nZXRWYWx1ZUJlZm9yZVNlcGFyYXRvcihudW1iZXJWYWx1ZSwgJy4nKTtcbiAgICBjb25zdCB2YWx1ZUFmdGVyRG90ID0gdGhpcy5nZXRWYWx1ZUFmdGVyU2VwYXJhdG9yKG51bWJlclZhbHVlLCAnLicpO1xuXG4gICAgY29uc3QgZm9ybWF0ZWROdW1iZXIgPSB0aGlzLmZvcm1hdE1hc2sodmFsdWVCZWZvcmVEb3QpO1xuXG4gICAgaWYgKHRoaXMuZGVjaW1hbHNMZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBmb3JtYXRlZE51bWJlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGAke2Zvcm1hdGVkTnVtYmVyfSR7dGhpcy5kZWNpbWFsU2VwYXJhdG9yfSR7dmFsdWVBZnRlckRvdH1gO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0VmFsdWVXaXRob3V0VGhvdXNhbmRTZXBhcmF0b3IodmFsdWU6IHN0cmluZyA9ICcnKSB7XG4gICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkucmVwbGFjZSh0aGlzLnJlZ2V4LnRob3VzYW5kLCAnJyk7XG4gIH1cblxuICBwcml2YXRlIGdldFZhbHVlQWZ0ZXJTZXBhcmF0b3IodmFsdWUgPSAnJywgc2VwYXJhdG9yKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNwbGl0KHNlcGFyYXRvcilbMV0gfHwgJyc7XG4gIH1cblxuICBwcml2YXRlIGdldFZhbHVlQmVmb3JlU2VwYXJhdG9yKHZhbHVlID0gJycsIHNlcGFyYXRvcikge1xuICAgIHJldHVybiB2YWx1ZS5zcGxpdChzZXBhcmF0b3IpWzBdIHx8ICcnO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNMZXNzRG90KHZhbHVlKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBkb3RzID0gdmFsdWUubWF0Y2godGhpcy5yZWdleC50aG91c2FuZCk7XG4gICAgICBjb25zdCBkb3RzTGVuZ3RoID0gZG90cyAmJiBkb3RzLmxlbmd0aDtcblxuICAgICAgaWYgKGRvdHNMZW5ndGggPCB0aGlzLm9sZERvdHNMZW5ndGgpIHtcbiAgICAgICAgdGhpcy5vbGREb3RzTGVuZ3RoID0gZG90c0xlbmd0aDtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5vbGREb3RzTGVuZ3RoID0gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGhhc01vcmVEb3QodmFsdWUpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnN0IGRvdHMgPSB2YWx1ZS5tYXRjaCh0aGlzLnJlZ2V4LnRob3VzYW5kKTtcbiAgICAgIGNvbnN0IGRvdHNMZW5ndGggPSBkb3RzICYmIGRvdHMubGVuZ3RoO1xuXG4gICAgICBpZiAoZG90c0xlbmd0aCA+IHRoaXMub2xkRG90c0xlbmd0aCkge1xuICAgICAgICB0aGlzLm9sZERvdHNMZW5ndGggPSBkb3RzTGVuZ3RoO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLm9sZERvdHNMZW5ndGggPSBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgaGFzTWludXNTaWduSW52YWxpZFBvc2l0aW9uKGV2ZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCBrZXlJc01pbnVzU2lnbiA9IGV2ZW50LmtleSA9PT0gdGhpcy5taW51c1NpZ247XG4gICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQ7XG5cbiAgICByZXR1cm4ga2V5SXNNaW51c1NpZ24gJiYgc2VsZWN0aW9uU3RhcnQgIT09IDA7XG4gIH1cblxuICBwcml2YXRlIGlzSW52YWxpZEtleShldmVudDogYW55LCBjaGFyQ29kZTogYW55KSB7XG4gICAgY29uc3QgaXNJbnZhbGlkTnVtYmVyID0gIXRoaXMuaXNWYWxpZE51bWJlcihldmVudCk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy52ZXJpZnlJbnNlcnRDb21tYShldmVudCkgfHxcbiAgICAgIHRoaXMudmVyaWZ5VGhvdXNhbmRMZW5ndGgoZXZlbnQpIHx8XG4gICAgICB0aGlzLnZlcmlmeVZhbHVlQWZ0ZXJDb21tYShldmVudCkgfHxcbiAgICAgIHRoaXMudmVyaWZ5SW5zZXJ0TWludXNTaWduKGV2ZW50KSB8fFxuICAgICAgdGhpcy5oYXNNaW51c1NpZ25JbnZhbGlkUG9zaXRpb24oZXZlbnQpIHx8XG4gICAgICBpc0ludmFsaWROdW1iZXIgfHxcbiAgICAgIHRoaXMudmFsaWRhdGVDdXJzb3JQb3NpdGlvbkJlZm9yZVNlcGFyYXRvcihldmVudCkgfHxcbiAgICAgIHRoaXMudmVyaWZ5RGVjaW1hbExlbmd0aElzWmVyb0FuZEtleVByZXNzZWRJc0NvbW1hKGNoYXJDb2RlKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGlzR3JlYXRlclRoYW5Ub3RhbExlbmd0aExpbWl0KGRlY2ltYWxzTWF4TGVuZ3RoOiBudW1iZXIsIHRob3VzYW5kTWF4bGVuZ3RoOiBudW1iZXIpIHtcbiAgICByZXR1cm4gZGVjaW1hbHNNYXhMZW5ndGggKyB0aG91c2FuZE1heGxlbmd0aCA+IHBvRGVjaW1hbFRvdGFsTGVuZ3RoTGltaXQ7XG4gIH1cblxuICBwcml2YXRlIGlzS2V5RGVjaW1hbFNlcGFyYXRvcihldmVudCkge1xuICAgIHJldHVybiBldmVudC5rZXkgPT09IHRoaXMuZGVjaW1hbFNlcGFyYXRvciB8fCBldmVudC5jaGFyID09PSB0aGlzLmRlY2ltYWxTZXBhcmF0b3I7XG4gIH1cblxuICBwcml2YXRlIGlzUG9zaXRpb25BZnRlckRlY2ltYWxTZXBhcmF0b3IocG9zaXRpb25DdXJzb3IsIHZhbHVlKSB7XG4gICAgY29uc3QgaW5kZXhDb21tYSA9IHZhbHVlICYmIHZhbHVlLmluZGV4T2YodGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcblxuICAgIGlmIChpbmRleENvbW1hICYmIHRoaXMuZGVjaW1hbHNMZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gcG9zaXRpb25DdXJzb3IgPiBpbmRleENvbW1hO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNTZWxlY3Rpb25TdGFydERpZmZlcmVudFNlbGVjdGlvbkVuZCh0YXJnZXQ6IGFueSkge1xuICAgIHJldHVybiB0YXJnZXQuc2VsZWN0aW9uU3RhcnQgIT09IHRhcmdldC5zZWxlY3Rpb25FbmQ7XG4gIH1cblxuICBwcml2YXRlIGlzVmFsaWRLZXkoZXZlbnQ6IGFueSwga2V5Pzogc3RyaW5nKSB7XG4gICAgY29uc3QgY2hhckNvZGUgPSBldmVudC53aGljaCB8fCBldmVudC5rZXlDb2RlO1xuICAgIGNvbnN0IHZhbGlkS2V5ID0gZXZlbnQud2hpY2ggPT09IDggfHwgZXZlbnQud2hpY2ggPT09IDA7XG5cbiAgICBpZiAodmFsaWRLZXkgJiYgIXRoaXMuaXNLZXlib2FyZEFuZHJvaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoa2V5KSB7XG4gICAgICBldmVudC5rZXkgPSBrZXk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXNJbnZhbGlkS2V5KGV2ZW50LCBjaGFyQ29kZSkpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1ZhbHVlQmV0d2VlbkFsbG93ZWQodmFsdWU6IG51bWJlciwgbWF4QWxsb3dlZDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHZhbHVlID49IDAgJiYgdmFsdWUgPD0gbWF4QWxsb3dlZDtcbiAgfVxuXG4gIC8vIFF1YW5kbyBkZWNpbWFsc0xlbmd0aCBmb3IgMCBuw6NvIGRldmUgcGVybWl0aXIgaW5mb3JtYXIgdsOtcmd1bGEgKGRlY2ltYWxTZXBhcmF0b3IpXG4gIHByaXZhdGUgdmVyaWZ5RGVjaW1hbExlbmd0aElzWmVyb0FuZEtleVByZXNzZWRJc0NvbW1hKGNoYXJDb2RlOiBudW1iZXIpIHtcbiAgICByZXR1cm4gY2hhckNvZGUgPT09IDQ0ICYmIHRoaXMuZGVjaW1hbHNMZW5ndGggPT09IDA7XG4gIH1cblxuICBwcml2YXRlIHZlcmlmeUF1dG9Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldEluaXRpYWxTZWxlY3Rpb25SYW5nZSh0YXJnZXQ6IGFueSwgc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCkge1xuICAgIGlmIChzZWxlY3Rpb25TdGFydCA9PT0gMSAmJiBzZWxlY3Rpb25FbmQgPT09IDEpIHtcbiAgICAgIHJldHVybiB0YXJnZXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc2VsZWN0aW9uU3RhcnQgKyAxLCBzZWxlY3Rpb25FbmQgKyAxKTtcbiAgICB9XG4gICAgcmV0dXJuIHRhcmdldC5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25TdGFydCAtIDEsIHNlbGVjdGlvbkVuZCAtIDEpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXBsYWNlQXQodmFsdWUsIGluZGV4LCByZXBsYWNlKSB7XG4gICAgcmV0dXJuIHZhbHVlLnN1YnN0cmluZygwLCBpbmRleCkgKyByZXBsYWNlICsgdmFsdWUuc3Vic3RyaW5nKGluZGV4ICsgMSk7XG4gIH1cblxuICBwcml2YXRlIHJlcGxhY2VDb21tYVRvRG90KHZhbHVlOiBzdHJpbmcgPSAnJykge1xuICAgIGlmICh0aGlzLmRlY2ltYWxTZXBhcmF0b3IgPT09ICcsJykge1xuICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpLnJlcGxhY2UodGhpcy5yZWdleC5kZWNpbWFsLCAnLicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q3Vyc29ySW5wdXQoZXZlbnQsIHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQ7XG4gICAgY29uc3Qgdmlld1ZhbHVlID0gdGFyZ2V0LnZhbHVlO1xuXG4gICAgLy8gQ2FzbyBob3V2ZXIgbWFpcyAuIGRvIHF1ZSBhbnRlcmlvcm1lbnRlIHNvbWEgbyB2YWxvciBjb20gMS5cbiAgICBpZiAodGhpcy5oYXNNb3JlRG90KHZpZXdWYWx1ZSkgfHwgdmlld1ZhbHVlID09PSAnMCcgKyB0aGlzLmRlY2ltYWxTZXBhcmF0b3IpIHtcbiAgICAgIHJldHVybiB0YXJnZXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc2VsZWN0aW9uU3RhcnQgKyAxLCBzZWxlY3Rpb25FbmQgKyAxKTtcbiAgICB9XG5cbiAgICAvLyBDYXNvIGhvdXZlciBtZW5vcyAuIGRvIHF1ZSBhbnRlcmlvcm1lbnRlIHN1YnRyYWkgbyB2YWxvciBwb3IgMS5cbiAgICBpZiAodGhpcy5oYXNMZXNzRG90KHZpZXdWYWx1ZSkpIHtcbiAgICAgIHRoaXMuc2V0SW5pdGlhbFNlbGVjdGlvblJhbmdlKHRhcmdldCwgc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCk7XG4gICAgfVxuICAgIHJldHVybiB0YXJnZXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCk7XG4gIH1cblxuICBwcml2YXRlIHNldFBvc2l0aW9uVmFsdWUoZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgIGNvbnN0IHBvc2l0aW9uID0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvblN0YXJ0IC0gMTtcblxuICAgIGlmIChwb3NpdGlvbiA+IDAgJiYgZXZlbnQua2V5ID09PSB0aGlzLm1pbnVzU2lnbikge1xuICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gdmFsdWUuc3Vic3RyaW5nKDAsIHBvc2l0aW9uKSArIHZhbHVlLnN1YnN0cihwb3NpdGlvbiArIDEpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Vmlld1ZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUN1cnNvclBvc2l0aW9uQmVmb3JlU2VwYXJhdG9yKGV2ZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQ7XG4gICAgY29uc3Qgb3JpZ2luYWxWYWx1ZSA9IHRoaXMuZm9ybWF0VmFsdWVXaXRob3V0VGhvdXNhbmRTZXBhcmF0b3IodGFyZ2V0LnZhbHVlKTtcbiAgICBjb25zdCB2YWx1ZUJlZm9yZVNlcGFyYXRvciA9IHRoaXMuZ2V0VmFsdWVCZWZvcmVTZXBhcmF0b3IodGFyZ2V0LnZhbHVlLCB0aGlzLmRlY2ltYWxTZXBhcmF0b3IpO1xuICAgIGNvbnN0IHZhbHVlQmVmb3JlU2VwYXJhdG9yT3JpZ2luYWwgPSB0aGlzLmdldFZhbHVlQmVmb3JlU2VwYXJhdG9yKG9yaWdpbmFsVmFsdWUsIHRoaXMuZGVjaW1hbFNlcGFyYXRvcik7XG5cbiAgICBpZiAodGhpcy5pc1NlbGVjdGlvblN0YXJ0RGlmZmVyZW50U2VsZWN0aW9uRW5kKHRhcmdldCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIChcbiAgICAgIHRhcmdldC5zZWxlY3Rpb25TdGFydCA8PSB2YWx1ZUJlZm9yZVNlcGFyYXRvci5sZW5ndGggJiZcbiAgICAgIHZhbHVlQmVmb3JlU2VwYXJhdG9yT3JpZ2luYWwubGVuZ3RoID09PSB0aGlzLnRob3VzYW5kTWF4bGVuZ3RoICYmXG4gICAgICAhdGhpcy5pc0tleURlY2ltYWxTZXBhcmF0b3IoZXZlbnQpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgdmVyaWZ5VGhvdXNhbmRMZW5ndGgoZXZlbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICBjb25zdCBvcmlnaW5hbFZhbHVlID0gdGhpcy5mb3JtYXRWYWx1ZVdpdGhvdXRUaG91c2FuZFNlcGFyYXRvcih0YXJnZXQudmFsdWUpO1xuICAgIGNvbnN0IHZhbHVlQmVmb3JlU2VwYXJhdG9yT3JpZ2luYWwgPSB0aGlzLmdldFZhbHVlQmVmb3JlU2VwYXJhdG9yKG9yaWdpbmFsVmFsdWUsIHRoaXMuZGVjaW1hbFNlcGFyYXRvcik7XG5cbiAgICBpZiAodGhpcy5pc1NlbGVjdGlvblN0YXJ0RGlmZmVyZW50U2VsZWN0aW9uRW5kKHRhcmdldCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIChcbiAgICAgIHZhbHVlQmVmb3JlU2VwYXJhdG9yT3JpZ2luYWwubGVuZ3RoID49IHRoaXMudGhvdXNhbmRNYXhsZW5ndGggJiZcbiAgICAgICF0aGlzLmlzS2V5RGVjaW1hbFNlcGFyYXRvcihldmVudCkgJiZcbiAgICAgIHRoaXMuaXNQb3NpdGlvbkFmdGVyRGVjaW1hbFNlcGFyYXRvcih0YXJnZXQuc2VsZWN0aW9uU3RhcnQgLSB0aGlzLmRlY2ltYWxzTGVuZ3RoLCB0YXJnZXQudmFsdWUpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgdmVyaWZ5SW5zZXJ0Q29tbWEoZTogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgaGFzQ29tbWEgPSB0aGlzLmNvbnRhaW5zQ29tbWEoZS50YXJnZXQudmFsdWUpO1xuXG4gICAgcmV0dXJuIGhhc0NvbW1hICYmIGUua2V5ID09PSB0aGlzLmRlY2ltYWxTZXBhcmF0b3I7XG4gIH1cblxuICBwcml2YXRlIHZlcmlmeUluc2VydE1pbnVzU2lnbihldmVudDogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgdmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgY29uc3QgaW5kZXhNaW51c1NpZ24gPSB2YWx1ZS5sYXN0SW5kZXhPZih0aGlzLm1pbnVzU2lnbikgIT09IC0xO1xuICAgIGNvbnN0IHBvc2l0aW9uTWludXNTaWduID0gdmFsdWUubGFzdEluZGV4T2YoJy0nKTtcbiAgICBjb25zdCBvY2N1cmFuY2VzTWludXNTaWduID0gdmFsdWUubWF0Y2gobmV3IFJlZ0V4cCgnLScsICdnJykpO1xuXG4gICAgaWYgKHRoaXMuaXNLZXlib2FyZEFuZHJvaWQgJiYgaW5kZXhNaW51c1NpZ24gJiYgb2NjdXJhbmNlc01pbnVzU2lnbi5sZW5ndGggPiAxKSB7XG4gICAgICBldmVudC50YXJnZXQudmFsdWUgPSB0aGlzLnJlcGxhY2VBdCh2YWx1ZSwgcG9zaXRpb25NaW51c1NpZ24sICcnKTtcbiAgICB9XG4gICAgcmV0dXJuIGluZGV4TWludXNTaWduICYmIGV2ZW50LmtleSA9PT0gdGhpcy5taW51c1NpZ247XG4gIH1cblxuICBwcml2YXRlIHZlcmlmeVZhbHVlQWZ0ZXJDb21tYShldmVudDogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgdmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgY29uc3QgdmFsdWVBZnRlclNlcGFyYXRvciA9IHRoaXMuZ2V0VmFsdWVBZnRlclNlcGFyYXRvcih2YWx1ZSwgdGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcblxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmlzUG9zaXRpb25BZnRlckRlY2ltYWxTZXBhcmF0b3Ioc2VsZWN0aW9uU3RhcnQsIHZhbHVlKSAmJiB2YWx1ZUFmdGVyU2VwYXJhdG9yLmxlbmd0aCA+PSB0aGlzLmRlY2ltYWxzTGVuZ3RoXG4gICAgKTtcbiAgfVxufVxuIiwiPHBvLWZpZWxkLWNvbnRhaW5lciBbcC1sYWJlbF09XCJsYWJlbFwiIFtwLWhlbHBdPVwiaGVscFwiIFtwLW9wdGlvbmFsXT1cIiFyZXF1aXJlZCAmJiBvcHRpb25hbFwiPlxuICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyLWNvbnRlbnRcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiaWNvblwiIGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItbGVmdFwiPlxuICAgICAgPHBvLWljb24gY2xhc3M9XCJwby1maWVsZC1pY29uXCIgW2NsYXNzLnBvLWZpZWxkLWljb24tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbcC1pY29uXT1cImljb25cIj48L3BvLWljb24+XG4gICAgPC9kaXY+XG5cbiAgICA8aW5wdXRcbiAgICAgICNpbnBcbiAgICAgIGNsYXNzPVwicG8taW5wdXRcIlxuICAgICAgW2F0dHIubWF4XT1cIm1heFwiXG4gICAgICBbYXR0ci5taW5dPVwibWluXCJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1sZWZ0XT1cImljb25cIlxuICAgICAgW2NsYXNzLnBvLWlucHV0LWljb24tcmlnaHRdPVwiY2xlYW5cIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIGlucHV0bW9kZT1cImRlY2ltYWxcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgIChrZXlwcmVzcyk9XCJvbktleVByZXNzKCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItcmlnaHRcIj5cbiAgICAgIDxwby1jbGVhbiAqbmdJZj1cImNsZWFuICYmICFkaXNhYmxlZCAmJiAhcmVhZG9ubHlcIiBbcC1lbGVtZW50LXJlZl09XCJpbnB1dEVsXCIgKHAtY2hhbmdlLWV2ZW50KT1cImNsZWFyKCRldmVudClcIj5cbiAgICAgIDwvcG8tY2xlYW4+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxwby1maWVsZC1jb250YWluZXItYm90dG9tIFtwLWVycm9yLXBhdHRlcm5dPVwiZ2V0RXJyb3JQYXR0ZXJuTWVzc2FnZSgpXCI+IDwvcG8tZmllbGQtY29udGFpbmVyLWJvdHRvbT5cbjwvcG8tZmllbGQtY29udGFpbmVyPlxuIl19
@@ -118,16 +118,14 @@ export class PoEmailComponent extends PoInputGeneric {
118
118
  }
119
119
  PoEmailComponent.ɵfac = function PoEmailComponent_Factory(t) { return new (t || PoEmailComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
120
120
  PoEmailComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoEmailComponent, selectors: [["po-email"]], features: [i0.ɵɵProvidersFeature(providers), i0.ɵɵInheritDefinitionFeature], decls: 8, vars: 17, consts: [[3, "p-help", "p-label", "p-optional"], [1, "po-field-container-content"], ["class", "po-field-icon-container-left", 4, "ngIf"], [1, "po-input", 3, "autocomplete", "disabled", "placeholder", "readonly", "required", "type", "blur", "click", "focus", "input"], ["inp", ""], [1, "po-field-icon-container-right"], [3, "p-element-ref", "p-change-event", 4, "ngIf"], [3, "p-error-pattern"], [1, "po-field-icon-container-left"], [1, "po-field-icon", 3, "p-icon"], [3, "p-element-ref", "p-change-event"]], template: function PoEmailComponent_Template(rf, ctx) { if (rf & 1) {
121
- i0.ɵɵelementStart(0, "po-field-container", 0);
122
- i0.ɵɵelementStart(1, "div", 1);
121
+ i0.ɵɵelementStart(0, "po-field-container", 0)(1, "div", 1);
123
122
  i0.ɵɵtemplate(2, PoEmailComponent_div_2_Template, 2, 3, "div", 2);
124
123
  i0.ɵɵelementStart(3, "input", 3, 4);
125
124
  i0.ɵɵlistener("blur", function PoEmailComponent_Template_input_blur_3_listener($event) { return ctx.eventOnBlur($event); })("click", function PoEmailComponent_Template_input_click_3_listener($event) { return ctx.eventOnClick($event); })("focus", function PoEmailComponent_Template_input_focus_3_listener($event) { return ctx.eventOnFocus($event); })("input", function PoEmailComponent_Template_input_input_3_listener($event) { return ctx.eventOnInput($event); });
126
125
  i0.ɵɵelementEnd();
127
126
  i0.ɵɵelementStart(5, "div", 5);
128
127
  i0.ɵɵtemplate(6, PoEmailComponent_po_clean_6_Template, 1, 1, "po-clean", 6);
129
- i0.ɵɵelementEnd();
130
- i0.ɵɵelementEnd();
128
+ i0.ɵɵelementEnd()();
131
129
  i0.ɵɵelement(7, "po-field-container-bottom", 7);
132
130
  i0.ɵɵelementEnd();
133
131
  } if (rf & 2) {
@@ -147,4 +145,4 @@ PoEmailComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoEmailCom
147
145
  type: Component,
148
146
  args: [{ selector: 'po-email', changeDetection: ChangeDetectionStrategy.OnPush, providers: providers, template: "<po-field-container [p-help]=\"help\" [p-label]=\"label\" [p-optional]=\"!required && optional\">\n <div class=\"po-field-container-content\">\n <div *ngIf=\"icon\" class=\"po-field-icon-container-left\">\n <po-icon class=\"po-field-icon\" [class.po-field-icon-disabled]=\"disabled\" [p-icon]=\"icon\"></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-right]=\"clean\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n <po-clean *ngIf=\"clean && !disabled && !readonly\" [p-element-ref]=\"inputEl\" (p-change-event)=\"clear($event)\">\n </po-clean>\n </div>\n </div>\n\n <po-field-container-bottom [p-error-pattern]=\"getErrorPattern()\"> </po-field-container-bottom>\n</po-field-container>\n" }]
149
147
  }], function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, null); })();
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWVtYWlsL3BvLWVtYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1pbnB1dC9wby1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxVQUFVLEVBRVgsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0lDVGxFLDhCQUF1RDtJQUNyRCw2QkFBbUc7SUFDckcsaUJBQU07OztJQUQyQixlQUF5QztJQUF6Qyx5REFBeUM7SUFBQyxvQ0FBZTs7OztJQXNCeEYsb0NBQTZHO0lBQWpDLDRMQUFrQixvQkFBYSxJQUFDO0lBQzVHLGlCQUFXOzs7SUFEdUMsOENBQXlCOztBRFpqRiwwQkFBMEI7QUFDMUIsTUFBTSxTQUFTLEdBQUc7SUFDaEI7UUFDRSxPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7SUFDRDtRQUNFLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUFPSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsY0FBYztJQStCbEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFoQ2hCLFNBQUksR0FBRyxjQUFjLENBQUM7UUFFdEIsU0FBSSxHQUFHLE9BQU8sQ0FBQztRQUVmLGdFQUFnRTtRQUNoRSxzQkFBc0I7UUFDdEIsaUNBQWlDO1FBQ2pDLCtGQUErRjtRQUMvRixzRUFBc0U7UUFDdEUsRUFBRTtRQUNGLHVCQUF1QjtRQUN2QixvRUFBb0U7UUFDcEUsdUNBQXVDO1FBQ3ZDLG1GQUFtRjtRQUNuRix5REFBeUQ7UUFDekQsK0ZBQStGO1FBQy9GLEVBQUU7UUFDRixnREFBZ0Q7UUFDaEQsRUFBRTtRQUNGLHdFQUF3RTtRQUN4RSxFQUFFO1FBQ0YscUVBQXFFO1FBQ3JFLDJFQUEyRTtRQUMzRSx1RUFBdUU7UUFDdkUsWUFBTyxHQUFHLG1HQUFtRyxDQUFDO1FBRTlHLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFRixhQUFRLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUszRCxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztJQUN2QixDQUFDO0lBRUQsZUFBZTtRQUNiLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCx5RUFBeUU7WUFDekUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNyRTtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxDQUFrQjtRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O2dGQXZEVSxnQkFBZ0I7bUVBQWhCLGdCQUFnQiw4REFGM0IsU0FBUztRQzNEWCw2Q0FBMkY7UUFDekYsOEJBQXdDO1FBQ3RDLGlFQUVNO1FBRU4sbUNBZ0JFO1FBSkEsZ0dBQVEsdUJBQW1CLElBQUMscUZBQ25CLHdCQUFvQixJQURELHFGQUVuQix3QkFBb0IsSUFGRCxxRkFHbkIsd0JBQW9CLElBSEQ7UUFaOUIsaUJBZ0JFO1FBRUYsOEJBQTJDO1FBQ3pDLDJFQUNXO1FBQ2IsaUJBQU07UUFDUixpQkFBTTtRQUVOLCtDQUE4RjtRQUNoRyxpQkFBcUI7O1FBL0JELGlDQUFlLHNCQUFBLDZDQUFBO1FBRXpCLGVBQVU7UUFBViwrQkFBVTtRQVNkLGVBQWlDO1FBQWpDLDhDQUFpQyxrQ0FBQTtRQURqQywrQ0FBNkIsMEJBQUEsZ0NBQUEsMEJBQUEsMEJBQUEsa0JBQUE7UUFEN0IsZ0NBQWtCO1FBZ0JQLGVBQXFDO1FBQXJDLGtFQUFxQztRQUt6QixlQUFxQztRQUFyQyx1REFBcUM7O3VGRCtCckQsZ0JBQWdCO2NBTjVCLFNBQVM7MkJBQ0UsVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGFBQy9DLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiwgTkdfVkFMSURBVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUG9JbnB1dEdlbmVyaWMgfSBmcm9tICcuLi9wby1pbnB1dC1nZW5lcmljL3BvLWlucHV0LWdlbmVyaWMnO1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuY29uc3QgcHJvdmlkZXJzID0gW1xuICB7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9FbWFpbENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfSxcbiAge1xuICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9FbWFpbENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfVxuXTtcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9JbnB1dEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBwby1lbWFpbCDDqSB1bSBpbnB1dCBlc3BlY8OtZmljbyBwYXJhIHJlY2ViZXIgRS1tYWlsLCBjb20gbyBwYXR0ZXJuIGrDoSBjb25maWd1cmFkby5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1lbWFpbC1iYXNpY1wiIHRpdGxlPVwiUE8gRW1haWwgQmFzaWNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLWJhc2ljL3NhbXBsZS1wby1lbWFpbC1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1lbWFpbC1iYXNpYy9zYW1wbGUtcG8tZW1haWwtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLWJhc2ljL3NhbXBsZS1wby1lbWFpbC1iYXNpYy5jb21wb25lbnQuZTJlLXNwZWMudHNcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZW1haWwtYmFzaWMvc2FtcGxlLXBvLWVtYWlsLWJhc2ljLmNvbXBvbmVudC5wby50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWVtYWlsLWxhYnNcIiB0aXRsZT1cIlBPIEVtYWlsIExhYnNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLWxhYnMvc2FtcGxlLXBvLWVtYWlsLWxhYnMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZW1haWwtbGFicy9zYW1wbGUtcG8tZW1haWwtbGFicy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1lbWFpbC1uZXdzbGV0dGVyXCIgdGl0bGU9XCJQTyBFbWFpbCAtIE5ld3NsZXR0ZXJcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLW5ld3NsZXR0ZXIvc2FtcGxlLXBvLWVtYWlsLW5ld3NsZXR0ZXIuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZW1haWwtbmV3c2xldHRlci9zYW1wbGUtcG8tZW1haWwtbmV3c2xldHRlci5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1lbWFpbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi4vcG8taW5wdXQvcG8taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzXG59KVxuZXhwb3J0IGNsYXNzIFBvRW1haWxDb21wb25lbnQgZXh0ZW5kcyBQb0lucHV0R2VuZXJpYyBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIGljb24gPSAncG8taWNvbi1tYWlsJztcblxuICB0eXBlID0gJ2VtYWlsJztcblxuICAvLyBDb25zaWRlcmFtb3MgbyB1c28gZG8gbm9zc28gcGF0dGVybiBjb20gYSBzZWd1aW50ZSBleHByZXNzw6NvLlxuICAvLyBBbnRlcyBkbyBzw61tYm9sbyBAOlxuICAvLyAtIG7Do28gaMOhIGxpbWl0ZSBkZSBjYXJhY3RlcmVzLlxuICAvLyAtIG7Do28gcG9kZSBoYXZlciBlc3Bhw6dvcyBlbSBicmFuY28sIGNhcmFjdGVyZXMgYWNlbnR1YWRvcywgY2FyYWN0ZXJlcyBlc3BlY2lhaXMgb3Ugc8OtbWJvbG9zLlxuICAvLyAtIHBvZGUgY29tZcOnYXIgY29tIGxldHJhcywgbsO6bWVyb3MsIGjDrWZlbiBvdSB1bmRlc2NvcmUgKHVuZGVybGluZSkuXG4gIC8vXG4gIC8vIERlcG9pcyBkbyBzw61tYm9sbyBAOlxuICAvLyAtIG8gZG9tw61uaW8gdGVtIHVtIGxpbWl0ZSBkZSBhdMOpIDY2IGNhcmFjdGVyZXMgYXDDs3MgdW0gc2VwYXJhZG9yLlxuICAvLyAtIHNlcGFyYWRvciBkZXZlIHNlciB1bSAncG9udG8nICguKS5cbiAgLy8gLSBvIHByaW1laXJvIGJsb2NvIHBvZGUgY29udGVyIGxldHJhcywgbsO6bWVyb3MsIGjDrWZlbiBvdSB1bmRlcnNjb3JlICh1bmRlcmxpbmUpLlxuICAvLyAtIGFww7NzIG8gcHJpbWVpcm8gc2VwYXJhZG9yIMOpIHBlcm1pdGlkbyBhcGVuYXMgbGV0cmFzLlxuICAvLyAtIG7Do28gcG9kZSBoYXZlciBlc3Bhw6dvcyBlbSBicmFuY28sIGNhcmFjdGVyZXMgYWNlbnR1YWRvcywgY2FyYWN0ZXJlcyBlc3BlY2lhaXMgb3Ugc8OtbWJvbG9zLlxuICAvL1xuICAvLyBMaW1pdGUgdG90YWwgZGUgMjU0IGNhcmFjdGVyZXMgcGFyYSBvIGUtbWFpbC5cbiAgLy9cbiAgLy8gQXMgcmVjb21lbmRhw6fDtWVzIGZvcmFtIGNvbnN1bHRhZGFzIG5hcyBSRkMgMTAzNCwgUkZDIDUzMjEgZSBSRkMgNTMyMi5cbiAgLy9cbiAgLy8gUkZDIDEwMzQgLSBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzEwMzQjc2VjdGlvbi0zXG4gIC8vIFJGQyA1MzIxIC0gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM1MzIxI3NlY3Rpb24tNC41LjMuMVxuICAvLyBSRkMgNTMyMiAtIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNTMyMiNzZWN0aW9uLTMuNFxuICBwYXR0ZXJuID0gJ14oW1xcXFx3LV0rKD86XFxcXC5bXFxcXHctXSspKilAKCg/OltcXFxcdy1dK1xcXFwuKSpcXFxcd1tcXFxcdy1dezAsNjZ9KVxcXFwuKFtBLVphLXpdezIsNjZ9KD86XFxcXC5bQS1aYS16XXsyfSk/KSQnO1xuXG4gIG1hc2sgPSAnJztcblxuICBwcml2YXRlIGxpc3RlbmVyID0gdGhpcy52YWxpZGF0ZUNsYXNzZXNGb3JQYXR0ZXJuLmJpbmQodGhpcyk7XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGVsLCBjZCk7XG4gICAgdGhpcy5tYXhsZW5ndGggPSAyNTQ7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAvLyBTZSBuw6NvIHRlbSBuZ01vZGVsIG91IHJlYWN0aXZlIGZvcm0gYWRpY2lvbmEgdmFsaWRhw6fDo28gY29tIGNsYXNzZXMgY3NzXG4gICAgICBpZiAoIXRoaXMub25DaGFuZ2VQcm9wYWdhdGUpIHtcbiAgICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCB0aGlzLmxpc3RlbmVyKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICghdGhpcy5vbkNoYW5nZVByb3BhZ2F0ZSkge1xuICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCB0aGlzLmxpc3RlbmVyKTtcbiAgICB9XG4gIH1cblxuICBleHRyYVZhbGlkYXRpb24oYzogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiIsIjxwby1maWVsZC1jb250YWluZXIgW3AtaGVscF09XCJoZWxwXCIgW3AtbGFiZWxdPVwibGFiZWxcIiBbcC1vcHRpb25hbF09XCIhcmVxdWlyZWQgJiYgb3B0aW9uYWxcIj5cbiAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lci1jb250ZW50XCI+XG4gICAgPGRpdiAqbmdJZj1cImljb25cIiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLWxlZnRcIj5cbiAgICAgIDxwby1pY29uIGNsYXNzPVwicG8tZmllbGQtaWNvblwiIFtjbGFzcy5wby1maWVsZC1pY29uLWRpc2FibGVkXT1cImRpc2FibGVkXCIgW3AtaWNvbl09XCJpY29uXCI+PC9wby1pY29uPlxuICAgIDwvZGl2PlxuXG4gICAgPGlucHV0XG4gICAgICAjaW5wXG4gICAgICBjbGFzcz1cInBvLWlucHV0XCJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1sZWZ0XT1cImljb25cIlxuICAgICAgW2NsYXNzLnBvLWlucHV0LWljb24tcmlnaHRdPVwiY2xlYW5cIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFt0eXBlXT1cInR5cGVcIlxuICAgICAgKGJsdXIpPVwiZXZlbnRPbkJsdXIoJGV2ZW50KVwiXG4gICAgICAoY2xpY2spPVwiZXZlbnRPbkNsaWNrKCRldmVudClcIlxuICAgICAgKGZvY3VzKT1cImV2ZW50T25Gb2N1cygkZXZlbnQpXCJcbiAgICAgIChpbnB1dCk9XCJldmVudE9uSW5wdXQoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1yaWdodFwiPlxuICAgICAgPHBvLWNsZWFuICpuZ0lmPVwiY2xlYW4gJiYgIWRpc2FibGVkICYmICFyZWFkb25seVwiIFtwLWVsZW1lbnQtcmVmXT1cImlucHV0RWxcIiAocC1jaGFuZ2UtZXZlbnQpPVwiY2xlYXIoJGV2ZW50KVwiPlxuICAgICAgPC9wby1jbGVhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPHBvLWZpZWxkLWNvbnRhaW5lci1ib3R0b20gW3AtZXJyb3ItcGF0dGVybl09XCJnZXRFcnJvclBhdHRlcm4oKVwiPiA8L3BvLWZpZWxkLWNvbnRhaW5lci1ib3R0b20+XG48L3BvLWZpZWxkLWNvbnRhaW5lcj5cbiJdfQ==
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWVtYWlsL3BvLWVtYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1pbnB1dC9wby1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxVQUFVLEVBRVgsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0lDVGxFLDhCQUF1RDtJQUNyRCw2QkFBbUc7SUFDckcsaUJBQU07OztJQUQyQixlQUF5QztJQUF6Qyx5REFBeUM7SUFBQyxvQ0FBZTs7OztJQXNCeEYsb0NBQTZHO0lBQWpDLDRMQUFrQixvQkFBYSxJQUFDO0lBQzVHLGlCQUFXOzs7SUFEdUMsOENBQXlCOztBRFpqRiwwQkFBMEI7QUFDMUIsTUFBTSxTQUFTLEdBQUc7SUFDaEI7UUFDRSxPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7SUFDRDtRQUNFLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUFPSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsY0FBYztJQStCbEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFoQ2hCLFNBQUksR0FBRyxjQUFjLENBQUM7UUFFdEIsU0FBSSxHQUFHLE9BQU8sQ0FBQztRQUVmLGdFQUFnRTtRQUNoRSxzQkFBc0I7UUFDdEIsaUNBQWlDO1FBQ2pDLCtGQUErRjtRQUMvRixzRUFBc0U7UUFDdEUsRUFBRTtRQUNGLHVCQUF1QjtRQUN2QixvRUFBb0U7UUFDcEUsdUNBQXVDO1FBQ3ZDLG1GQUFtRjtRQUNuRix5REFBeUQ7UUFDekQsK0ZBQStGO1FBQy9GLEVBQUU7UUFDRixnREFBZ0Q7UUFDaEQsRUFBRTtRQUNGLHdFQUF3RTtRQUN4RSxFQUFFO1FBQ0YscUVBQXFFO1FBQ3JFLDJFQUEyRTtRQUMzRSx1RUFBdUU7UUFDdkUsWUFBTyxHQUFHLG1HQUFtRyxDQUFDO1FBRTlHLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFRixhQUFRLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUszRCxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztJQUN2QixDQUFDO0lBRUQsZUFBZTtRQUNiLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCx5RUFBeUU7WUFDekUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNyRTtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxDQUFrQjtRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O2dGQXZEVSxnQkFBZ0I7bUVBQWhCLGdCQUFnQiw4REFGM0IsU0FBUztRQzNEWCw2Q0FBMkYsYUFBQTtRQUV2RixpRUFFTTtRQUVOLG1DQWdCRTtRQUpBLGdHQUFRLHVCQUFtQixJQUFDLHFGQUNuQix3QkFBb0IsSUFERCxxRkFFbkIsd0JBQW9CLElBRkQscUZBR25CLHdCQUFvQixJQUhEO1FBWjlCLGlCQWdCRTtRQUVGLDhCQUEyQztRQUN6QywyRUFDVztRQUNiLGlCQUFNLEVBQUE7UUFHUiwrQ0FBOEY7UUFDaEcsaUJBQXFCOztRQS9CRCxpQ0FBZSxzQkFBQSw2Q0FBQTtRQUV6QixlQUFVO1FBQVYsK0JBQVU7UUFTZCxlQUFpQztRQUFqQyw4Q0FBaUMsa0NBQUE7UUFEakMsK0NBQTZCLDBCQUFBLGdDQUFBLDBCQUFBLDBCQUFBLGtCQUFBO1FBRDdCLGdDQUFrQjtRQWdCUCxlQUFxQztRQUFyQyxrRUFBcUM7UUFLekIsZUFBcUM7UUFBckMsdURBQXFDOzt1RkQrQnJELGdCQUFnQjtjQU41QixTQUFTOzJCQUNFLFVBQVUsbUJBRUgsdUJBQXVCLENBQUMsTUFBTSxhQUMvQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIE9uRGVzdHJveVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIE5HX1ZBTElEQVRPUlMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFBvSW5wdXRHZW5lcmljIH0gZnJvbSAnLi4vcG8taW5wdXQtZ2VuZXJpYy9wby1pbnB1dC1nZW5lcmljJztcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmNvbnN0IHByb3ZpZGVycyA9IFtcbiAge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvRW1haWxDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH0sXG4gIHtcbiAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvRW1haWxDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1cbl07XG5cbi8qKlxuICogQGRvY3NFeHRlbmRzIFBvSW5wdXRCYXNlQ29tcG9uZW50XG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogcG8tZW1haWwgw6kgdW0gaW5wdXQgZXNwZWPDrWZpY28gcGFyYSByZWNlYmVyIEUtbWFpbCwgY29tIG8gcGF0dGVybiBqw6EgY29uZmlndXJhZG8uXG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tZW1haWwtYmFzaWNcIiB0aXRsZT1cIlBPIEVtYWlsIEJhc2ljXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1lbWFpbC1iYXNpYy9zYW1wbGUtcG8tZW1haWwtYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZW1haWwtYmFzaWMvc2FtcGxlLXBvLWVtYWlsLWJhc2ljLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1lbWFpbC1iYXNpYy9zYW1wbGUtcG8tZW1haWwtYmFzaWMuY29tcG9uZW50LmUyZS1zcGVjLnRzXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLWJhc2ljL3NhbXBsZS1wby1lbWFpbC1iYXNpYy5jb21wb25lbnQucG8udHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1lbWFpbC1sYWJzXCIgdGl0bGU9XCJQTyBFbWFpbCBMYWJzXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1lbWFpbC1sYWJzL3NhbXBsZS1wby1lbWFpbC1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLWxhYnMvc2FtcGxlLXBvLWVtYWlsLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tZW1haWwtbmV3c2xldHRlclwiIHRpdGxlPVwiUE8gRW1haWwgLSBOZXdzbGV0dGVyXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1lbWFpbC1uZXdzbGV0dGVyL3NhbXBsZS1wby1lbWFpbC1uZXdzbGV0dGVyLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWVtYWlsLW5ld3NsZXR0ZXIvc2FtcGxlLXBvLWVtYWlsLW5ld3NsZXR0ZXIuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZW1haWwnLFxuICB0ZW1wbGF0ZVVybDogJy4uL3BvLWlucHV0L3BvLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyc1xufSlcbmV4cG9ydCBjbGFzcyBQb0VtYWlsQ29tcG9uZW50IGV4dGVuZHMgUG9JbnB1dEdlbmVyaWMgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBpY29uID0gJ3BvLWljb24tbWFpbCc7XG5cbiAgdHlwZSA9ICdlbWFpbCc7XG5cbiAgLy8gQ29uc2lkZXJhbW9zIG8gdXNvIGRvIG5vc3NvIHBhdHRlcm4gY29tIGEgc2VndWludGUgZXhwcmVzc8Ojby5cbiAgLy8gQW50ZXMgZG8gc8OtbWJvbG8gQDpcbiAgLy8gLSBuw6NvIGjDoSBsaW1pdGUgZGUgY2FyYWN0ZXJlcy5cbiAgLy8gLSBuw6NvIHBvZGUgaGF2ZXIgZXNwYcOnb3MgZW0gYnJhbmNvLCBjYXJhY3RlcmVzIGFjZW50dWFkb3MsIGNhcmFjdGVyZXMgZXNwZWNpYWlzIG91IHPDrW1ib2xvcy5cbiAgLy8gLSBwb2RlIGNvbWXDp2FyIGNvbSBsZXRyYXMsIG7Dum1lcm9zLCBow61mZW4gb3UgdW5kZXNjb3JlICh1bmRlcmxpbmUpLlxuICAvL1xuICAvLyBEZXBvaXMgZG8gc8OtbWJvbG8gQDpcbiAgLy8gLSBvIGRvbcOtbmlvIHRlbSB1bSBsaW1pdGUgZGUgYXTDqSA2NiBjYXJhY3RlcmVzIGFww7NzIHVtIHNlcGFyYWRvci5cbiAgLy8gLSBzZXBhcmFkb3IgZGV2ZSBzZXIgdW0gJ3BvbnRvJyAoLikuXG4gIC8vIC0gbyBwcmltZWlybyBibG9jbyBwb2RlIGNvbnRlciBsZXRyYXMsIG7Dum1lcm9zLCBow61mZW4gb3UgdW5kZXJzY29yZSAodW5kZXJsaW5lKS5cbiAgLy8gLSBhcMOzcyBvIHByaW1laXJvIHNlcGFyYWRvciDDqSBwZXJtaXRpZG8gYXBlbmFzIGxldHJhcy5cbiAgLy8gLSBuw6NvIHBvZGUgaGF2ZXIgZXNwYcOnb3MgZW0gYnJhbmNvLCBjYXJhY3RlcmVzIGFjZW50dWFkb3MsIGNhcmFjdGVyZXMgZXNwZWNpYWlzIG91IHPDrW1ib2xvcy5cbiAgLy9cbiAgLy8gTGltaXRlIHRvdGFsIGRlIDI1NCBjYXJhY3RlcmVzIHBhcmEgbyBlLW1haWwuXG4gIC8vXG4gIC8vIEFzIHJlY29tZW5kYcOnw7VlcyBmb3JhbSBjb25zdWx0YWRhcyBuYXMgUkZDIDEwMzQsIFJGQyA1MzIxIGUgUkZDIDUzMjIuXG4gIC8vXG4gIC8vIFJGQyAxMDM0IC0gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmMxMDM0I3NlY3Rpb24tM1xuICAvLyBSRkMgNTMyMSAtIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNTMyMSNzZWN0aW9uLTQuNS4zLjFcbiAgLy8gUkZDIDUzMjIgLSBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzUzMjIjc2VjdGlvbi0zLjRcbiAgcGF0dGVybiA9ICdeKFtcXFxcdy1dKyg/OlxcXFwuW1xcXFx3LV0rKSopQCgoPzpbXFxcXHctXStcXFxcLikqXFxcXHdbXFxcXHctXXswLDY2fSlcXFxcLihbQS1aYS16XXsyLDY2fSg/OlxcXFwuW0EtWmEtel17Mn0pPykkJztcblxuICBtYXNrID0gJyc7XG5cbiAgcHJpdmF0ZSBsaXN0ZW5lciA9IHRoaXMudmFsaWRhdGVDbGFzc2VzRm9yUGF0dGVybi5iaW5kKHRoaXMpO1xuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihlbCwgY2QpO1xuICAgIHRoaXMubWF4bGVuZ3RoID0gMjU0O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gU2UgbsOjbyB0ZW0gbmdNb2RlbCBvdSByZWFjdGl2ZSBmb3JtIGFkaWNpb25hIHZhbGlkYcOnw6NvIGNvbSBjbGFzc2VzIGNzc1xuICAgICAgaWYgKCF0aGlzLm9uQ2hhbmdlUHJvcGFnYXRlKSB7XG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5saXN0ZW5lcik7XG4gICAgICB9XG4gICAgfSk7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoIXRoaXMub25DaGFuZ2VQcm9wYWdhdGUpIHtcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5saXN0ZW5lcik7XG4gICAgfVxuICB9XG5cbiAgZXh0cmFWYWxpZGF0aW9uKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iLCI8cG8tZmllbGQtY29udGFpbmVyIFtwLWhlbHBdPVwiaGVscFwiIFtwLWxhYmVsXT1cImxhYmVsXCIgW3Atb3B0aW9uYWxdPVwiIXJlcXVpcmVkICYmIG9wdGlvbmFsXCI+XG4gIDxkaXYgY2xhc3M9XCJwby1maWVsZC1jb250YWluZXItY29udGVudFwiPlxuICAgIDxkaXYgKm5nSWY9XCJpY29uXCIgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1sZWZ0XCI+XG4gICAgICA8cG8taWNvbiBjbGFzcz1cInBvLWZpZWxkLWljb25cIiBbY2xhc3MucG8tZmllbGQtaWNvbi1kaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtwLWljb25dPVwiaWNvblwiPjwvcG8taWNvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxpbnB1dFxuICAgICAgI2lucFxuICAgICAgY2xhc3M9XCJwby1pbnB1dFwiXG4gICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgW2F1dG9jb21wbGV0ZV09XCJhdXRvY29tcGxldGVcIlxuICAgICAgW2NsYXNzLnBvLWlucHV0LWljb24tbGVmdF09XCJpY29uXCJcbiAgICAgIFtjbGFzcy5wby1pbnB1dC1pY29uLXJpZ2h0XT1cImNsZWFuXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICAgIChibHVyKT1cImV2ZW50T25CbHVyKCRldmVudClcIlxuICAgICAgKGNsaWNrKT1cImV2ZW50T25DbGljaygkZXZlbnQpXCJcbiAgICAgIChmb2N1cyk9XCJldmVudE9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAoaW5wdXQpPVwiZXZlbnRPbklucHV0KCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItcmlnaHRcIj5cbiAgICAgIDxwby1jbGVhbiAqbmdJZj1cImNsZWFuICYmICFkaXNhYmxlZCAmJiAhcmVhZG9ubHlcIiBbcC1lbGVtZW50LXJlZl09XCJpbnB1dEVsXCIgKHAtY2hhbmdlLWV2ZW50KT1cImNsZWFyKCRldmVudClcIj5cbiAgICAgIDwvcG8tY2xlYW4+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxwby1maWVsZC1jb250YWluZXItYm90dG9tIFtwLWVycm9yLXBhdHRlcm5dPVwiZ2V0RXJyb3JQYXR0ZXJuKClcIj4gPC9wby1maWVsZC1jb250YWluZXItYm90dG9tPlxuPC9wby1maWVsZC1jb250YWluZXI+XG4iXX0=
@@ -47,9 +47,7 @@ export class PoFieldContainerComponent {
47
47
  PoFieldContainerComponent.ɵfac = function PoFieldContainerComponent_Factory(t) { return new (t || PoFieldContainerComponent)(i0.ɵɵdirectiveInject(i1.PoLanguageService)); };
48
48
  PoFieldContainerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoFieldContainerComponent, selectors: [["po-field-container"]], inputs: { label: ["p-label", "label"], help: ["p-help", "help"], optional: ["p-optional", "optional"] }, ngContentSelectors: _c0, decls: 7, vars: 3, consts: [[1, "po-field-container"], [1, "po-field-container-title"], [1, "po-field-title"], ["class", "po-field-optional", 4, "ngIf"], ["class", "po-field-help", 4, "ngIf"], [1, "po-field-optional"], [1, "po-field-help"]], template: function PoFieldContainerComponent_Template(rf, ctx) { if (rf & 1) {
49
49
  i0.ɵɵprojectionDef();
50
- i0.ɵɵelementStart(0, "div", 0);
51
- i0.ɵɵelementStart(1, "div", 1);
52
- i0.ɵɵelementStart(2, "span", 2);
50
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "span", 2);
53
51
  i0.ɵɵtext(3);
54
52
  i0.ɵɵelementEnd();
55
53
  i0.ɵɵtemplate(4, PoFieldContainerComponent_span_4_Template, 2, 1, "span", 3);
@@ -78,4 +76,4 @@ PoFieldContainerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: P
78
76
  type: Input,
79
77
  args: ['p-optional']
80
78
  }] }); })();
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1maWVsZC1jb250YWluZXIvcG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1maWVsZC1jb250YWluZXIvcG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7OztJQ0RyRSwrQkFBb0U7SUFBQSxZQUF1QjtJQUFBLGlCQUFPOzs7SUFBOUIsZUFBdUI7SUFBdkIsOENBQXVCOzs7SUFHN0YsOEJBQXdDO0lBQUEsWUFBVTtJQUFBLGlCQUFNOzs7SUFBaEIsZUFBVTtJQUFWLGlDQUFVOzs7QURBcEQ7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyx5QkFBeUI7SUFvQnBDLFlBQVksZUFBa0M7UUFYdEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVlqQyxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsUUFBUSxHQUFHO1lBQ2QsR0FBRyx3QkFBd0IsQ0FBQyxRQUFRLENBQUM7U0FDdEMsQ0FBQztJQUNKLENBQUM7SUFmRCx1Q0FBdUM7SUFDdkMsSUFBeUIsUUFBUSxDQUFDLEtBQWM7UUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7O2tHQWxCVSx5QkFBeUI7NEVBQXpCLHlCQUF5Qjs7UUNoQnRDLDhCQUFnQztRQUM5Qiw4QkFBc0M7UUFDcEMsK0JBQTZCO1FBQUEsWUFBVztRQUFBLGlCQUFPO1FBQy9DLDRFQUFrRztRQUNwRyxpQkFBTTtRQUVOLDBFQUF3RDtRQUV4RCxrQkFBeUI7UUFDM0IsaUJBQU07O1FBUDJCLGVBQVc7UUFBWCwrQkFBVztRQUNQLGVBQWlDO1FBQWpDLDhEQUFpQztRQUd4QyxlQUFVO1FBQVYsK0JBQVU7O3VGRFUzQix5QkFBeUI7Y0FMckMsU0FBUzsyQkFDRSxvQkFBb0IsbUJBRWIsdUJBQXVCLENBQUMsTUFBTTtvRUFJN0IsS0FBSztrQkFBdEIsS0FBSzttQkFBQyxTQUFTO1lBR0MsSUFBSTtrQkFBcEIsS0FBSzttQkFBQyxRQUFRO1lBT1UsUUFBUTtrQkFBaEMsS0FBSzttQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgY29udmVydFRvQm9vbGVhbiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3V0aWwnO1xuaW1wb3J0IHsgUG9MYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IHBvRmllbGRDb250YWluZXJMaXRlcmFscyB9IGZyb20gJy4vcG8tZmllbGQtY29udGFpbmVyLWxpdGVyYWxzJztcblxuLyoqXG4gKiBAZG9jc1ByaXZhdGVcbiAqXG4gKiBDb21wb25lbnRlIGRlIHVzbyBpbnRlcm5vLCByZXNwb25zw6F2ZWwgcG9yIGF0cmlidWlyIHVtYSBsYWJlbCBwYXJhIG8gY2FtcG9cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZmllbGQtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLWZpZWxkLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFBvRmllbGRDb250YWluZXJDb21wb25lbnQge1xuICAvKiogTGFiZWwgZG8gY2FtcG8uICovXG4gIEBJbnB1dCgncC1sYWJlbCcpIGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKiBUZXh0byBkZSBhcG9pbyBkbyBjYW1wby4gKi9cbiAgQElucHV0KCdwLWhlbHAnKSBoZWxwOiBzdHJpbmc7XG5cbiAgbGl0ZXJhbHM7XG5cbiAgcHJpdmF0ZSBfb3B0aW9uYWw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogSW5kaWNhIHNlIG8gY2FtcG8gc2Vyw6Egb3BjaW9uYWwuICovXG4gIEBJbnB1dCgncC1vcHRpb25hbCcpIHNldCBvcHRpb25hbCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX29wdGlvbmFsID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG4gIH1cblxuICBnZXQgb3B0aW9uYWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbmFsO1xuICB9XG5cbiAgY29uc3RydWN0b3IobGFuZ3VhZ2VTZXJ2aWNlOiBQb0xhbmd1YWdlU2VydmljZSkge1xuICAgIGNvbnN0IGxhbmd1YWdlID0gbGFuZ3VhZ2VTZXJ2aWNlLmdldFNob3J0TGFuZ3VhZ2UoKTtcblxuICAgIHRoaXMubGl0ZXJhbHMgPSB7XG4gICAgICAuLi5wb0ZpZWxkQ29udGFpbmVyTGl0ZXJhbHNbbGFuZ3VhZ2VdXG4gICAgfTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyLXRpdGxlXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJwby1maWVsZC10aXRsZVwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwicG8tZmllbGQtb3B0aW9uYWxcIiAqbmdJZj1cIm9wdGlvbmFsICYmIChsYWJlbCB8fCBoZWxwKVwiPnt7IGxpdGVyYWxzLm9wdGlvbmFsIH19PC9zcGFuPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtaGVscFwiICpuZ0lmPVwiaGVscFwiPnt7IGhlbHAgfX08L2Rpdj5cblxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1maWVsZC1jb250YWluZXIvcG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1maWVsZC1jb250YWluZXIvcG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7OztJQ0RyRSwrQkFBb0U7SUFBQSxZQUF1QjtJQUFBLGlCQUFPOzs7SUFBOUIsZUFBdUI7SUFBdkIsOENBQXVCOzs7SUFHN0YsOEJBQXdDO0lBQUEsWUFBVTtJQUFBLGlCQUFNOzs7SUFBaEIsZUFBVTtJQUFWLGlDQUFVOzs7QURBcEQ7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyx5QkFBeUI7SUFvQnBDLFlBQVksZUFBa0M7UUFYdEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVlqQyxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsUUFBUSxHQUFHO1lBQ2QsR0FBRyx3QkFBd0IsQ0FBQyxRQUFRLENBQUM7U0FDdEMsQ0FBQztJQUNKLENBQUM7SUFmRCx1Q0FBdUM7SUFDdkMsSUFBeUIsUUFBUSxDQUFDLEtBQWM7UUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7O2tHQWxCVSx5QkFBeUI7NEVBQXpCLHlCQUF5Qjs7UUNoQnRDLDhCQUFnQyxhQUFBLGNBQUE7UUFFQyxZQUFXO1FBQUEsaUJBQU87UUFDL0MsNEVBQWtHO1FBQ3BHLGlCQUFNO1FBRU4sMEVBQXdEO1FBRXhELGtCQUF5QjtRQUMzQixpQkFBTTs7UUFQMkIsZUFBVztRQUFYLCtCQUFXO1FBQ1AsZUFBaUM7UUFBakMsOERBQWlDO1FBR3hDLGVBQVU7UUFBViwrQkFBVTs7dUZEVTNCLHlCQUF5QjtjQUxyQyxTQUFTOzJCQUNFLG9CQUFvQixtQkFFYix1QkFBdUIsQ0FBQyxNQUFNO29FQUk3QixLQUFLO2tCQUF0QixLQUFLO21CQUFDLFNBQVM7WUFHQyxJQUFJO2tCQUFwQixLQUFLO21CQUFDLFFBQVE7WUFPVSxRQUFRO2tCQUFoQyxLQUFLO21CQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBjb252ZXJ0VG9Cb29sZWFuIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBQb0xhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgcG9GaWVsZENvbnRhaW5lckxpdGVyYWxzIH0gZnJvbSAnLi9wby1maWVsZC1jb250YWluZXItbGl0ZXJhbHMnO1xuXG4vKipcbiAqIEBkb2NzUHJpdmF0ZVxuICpcbiAqIENvbXBvbmVudGUgZGUgdXNvIGludGVybm8sIHJlc3BvbnPDoXZlbCBwb3IgYXRyaWJ1aXIgdW1hIGxhYmVsIHBhcmEgbyBjYW1wb1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1maWVsZC1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tZmllbGQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUG9GaWVsZENvbnRhaW5lckNvbXBvbmVudCB7XG4gIC8qKiBMYWJlbCBkbyBjYW1wby4gKi9cbiAgQElucHV0KCdwLWxhYmVsJykgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIFRleHRvIGRlIGFwb2lvIGRvIGNhbXBvLiAqL1xuICBASW5wdXQoJ3AtaGVscCcpIGhlbHA6IHN0cmluZztcblxuICBsaXRlcmFscztcblxuICBwcml2YXRlIF9vcHRpb25hbDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBJbmRpY2Egc2UgbyBjYW1wbyBzZXLDoSBvcGNpb25hbC4gKi9cbiAgQElucHV0KCdwLW9wdGlvbmFsJykgc2V0IG9wdGlvbmFsKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fb3B0aW9uYWwgPSBjb252ZXJ0VG9Cb29sZWFuKHZhbHVlKTtcbiAgfVxuXG4gIGdldCBvcHRpb25hbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fb3B0aW9uYWw7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihsYW5ndWFnZVNlcnZpY2U6IFBvTGFuZ3VhZ2VTZXJ2aWNlKSB7XG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBsYW5ndWFnZVNlcnZpY2UuZ2V0U2hvcnRMYW5ndWFnZSgpO1xuXG4gICAgdGhpcy5saXRlcmFscyA9IHtcbiAgICAgIC4uLnBvRmllbGRDb250YWluZXJMaXRlcmFsc1tsYW5ndWFnZV1cbiAgICB9O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJwby1maWVsZC1jb250YWluZXItdGl0bGVcIj5cbiAgICA8c3BhbiBjbGFzcz1cInBvLWZpZWxkLXRpdGxlXCI+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJwby1maWVsZC1vcHRpb25hbFwiICpuZ0lmPVwib3B0aW9uYWwgJiYgKGxhYmVsIHx8IGhlbHApXCI+e3sgbGl0ZXJhbHMub3B0aW9uYWwgfX08L3NwYW4+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJwby1maWVsZC1oZWxwXCIgKm5nSWY9XCJoZWxwXCI+e3sgaGVscCB9fTwvZGl2PlxuXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
@@ -5,10 +5,14 @@ import * as i0 from "@angular/core";
5
5
  export class PoFieldModel {
6
6
  constructor() {
7
7
  /**
8
+ * @deprecated 14.x.x
9
+ *
8
10
  * @optional
9
11
  *
10
12
  * @description
11
13
  *
14
+ * **Deprecated 14.x.x**.
15
+ *
12
16
  * Aplica o foco no elemento ao ser iniciado.
13
17
  * > Caso mais de um elemento seja configurado com essa propriedade,
14
18
  * o último elemento declarado com ela terá o foco.
@@ -87,4 +91,4 @@ __decorate([
87
91
  type: Output,
88
92
  args: ['p-change']
89
93
  }] }); })();
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZmllbGQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdoRCxNQUFNLE9BQWdCLFlBQVk7SUFpRGhDO1FBdkNBOzs7Ozs7Ozs7O1dBVUc7UUFDb0MsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUVsRTs7Ozs7Ozs7V0FRRztRQUNrQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRS9EOzs7Ozs7V0FNRztRQUNpQixXQUFNLEdBQW9CLElBQUksWUFBWSxFQUFLLENBQUM7SUFRckQsQ0FBQztJQUVoQiw4Q0FBOEM7SUFDOUMsZ0VBQWdFO0lBQ2hFLGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQzdCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBUTtRQUNqQixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBSztRQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFUyxXQUFXLENBQUMsS0FBUTtRQUM1QixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7O3dFQTdFbUIsWUFBWTsrREFBWixZQUFZO0FBcUJPO0lBQWYsWUFBWSxFQUFFOytDQUE0QjtBQVc3QjtJQUFmLFlBQVksRUFBRTs4Q0FBMkI7dUZBaEMzQyxZQUFZO2NBRGpDLFNBQVM7c0NBR1UsS0FBSztrQkFBdEIsS0FBSzttQkFBQyxTQUFTO1lBR0QsSUFBSTtrQkFBbEIsS0FBSzttQkFBQyxNQUFNO1lBR0ksSUFBSTtrQkFBcEIsS0FBSzttQkFBQyxRQUFRO1lBYXdCLFNBQVM7a0JBQS9DLEtBQUs7bUJBQUMsY0FBYztZQVdnQixRQUFRO2tCQUE1QyxLQUFLO21CQUFDLFlBQVk7WUFTQyxNQUFNO2tCQUF6QixNQUFNO21CQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJy4uLy4uL2RlY29yYXRvcnMnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQb0ZpZWxkTW9kZWw8VD4gaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIC8qKiBSw7N0dWxvIGV4aWJpZG8gcGVsbyBjb21wb25lbnRlLiAqL1xuICBASW5wdXQoJ3AtbGFiZWwnKSBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKiBOb21lIGRvIGNvbXBvbmVudGUuICovXG4gIEBJbnB1dCgnbmFtZScpIG5hbWU6IHN0cmluZztcblxuICAvKiogVGV4dG8gZGUgYXBvaW8gcGFyYSBvIGNhbXBvLiAqL1xuICBASW5wdXQoJ3AtaGVscCcpIGhlbHA6IHN0cmluZztcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBBcGxpY2EgbyBmb2NvIG5vIGVsZW1lbnRvIGFvIHNlciBpbmljaWFkby5cbiAgICogID4gQ2FzbyBtYWlzIGRlIHVtIGVsZW1lbnRvIHNlamEgY29uZmlndXJhZG8gY29tIGVzc2EgcHJvcHJpZWRhZGUsXG4gICAqIG8gw7psdGltbyBlbGVtZW50byBkZWNsYXJhZG8gY29tIGVsYSB0ZXLDoSBvIGZvY28uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1hdXRvLWZvY3VzJykgQElucHV0Qm9vbGVhbigpIGF1dG9Gb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEluZGljYSBzZSBvIGNhbXBvIHNlcsOhIGRlc2FiaWxpdGFkby5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWRpc2FibGVkJykgQElucHV0Qm9vbGVhbigpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBhbyBhbHRlcmFyIHZhbG9yIGRvIGNhbXBvLlxuICAgKi9cbiAgQE91dHB1dCgncC1jaGFuZ2UnKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxUPiA9IG5ldyBFdmVudEVtaXR0ZXI8VD4oKTtcblxuICB2YWx1ZTogVDtcblxuICBwcm90ZWN0ZWQgb25Ub3VjaGVkO1xuXG4gIHByaXZhdGUgcHJvcGFnYXRlQ2hhbmdlOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8vIEZ1bsOnw6NvIGltcGxlbWVudGFkYSBkbyBDb250cm9sVmFsdWVBY2Nlc3NvclxuICAvLyBVc2FkYSBwYXJhIGludGVyY2VwdGFyIG9zIGVzdGFkb3MgZGUgaGFiaWxpdGFkbyB2aWEgZm9ybXMgYXBpXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIHRoaXMub25Xcml0ZVZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIGVtaXRDaGFuZ2UodmFsdWUpIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVNb2RlbCh2YWx1ZTogVCkge1xuICAgIGlmICh0aGlzLnByb3BhZ2F0ZUNoYW5nZSkge1xuICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGFic3RyYWN0IG9uV3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQ7XG59XG4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZmllbGQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdoRCxNQUFNLE9BQWdCLFlBQVk7SUFxRGhDO1FBM0NBOzs7Ozs7Ozs7Ozs7OztXQWNHO1FBQ29DLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFFbEU7Ozs7Ozs7O1dBUUc7UUFDa0MsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUvRDs7Ozs7O1dBTUc7UUFDaUIsV0FBTSxHQUFvQixJQUFJLFlBQVksRUFBSyxDQUFDO0lBUXJELENBQUM7SUFFaEIsOENBQThDO0lBQzlDLGdFQUFnRTtJQUNoRSxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVE7UUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQUs7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRVMsV0FBVyxDQUFDLEtBQVE7UUFDNUIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0I7SUFDSCxDQUFDOzt3RUFqRm1CLFlBQVk7K0RBQVosWUFBWTtBQXlCTztJQUFmLFlBQVksRUFBRTsrQ0FBNEI7QUFXN0I7SUFBZixZQUFZLEVBQUU7OENBQTJCO3VGQXBDM0MsWUFBWTtjQURqQyxTQUFTO3NDQUdVLEtBQUs7a0JBQXRCLEtBQUs7bUJBQUMsU0FBUztZQUdELElBQUk7a0JBQWxCLEtBQUs7bUJBQUMsTUFBTTtZQUdJLElBQUk7a0JBQXBCLEtBQUs7bUJBQUMsUUFBUTtZQWlCd0IsU0FBUztrQkFBL0MsS0FBSzttQkFBQyxjQUFjO1lBV2dCLFFBQVE7a0JBQTVDLEtBQUs7bUJBQUMsWUFBWTtZQVNDLE1BQU07a0JBQXpCLE1BQU07bUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnLi4vLi4vZGVjb3JhdG9ycyc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBvRmllbGRNb2RlbDxUPiBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLyoqIFLDs3R1bG8gZXhpYmlkbyBwZWxvIGNvbXBvbmVudGUuICovXG4gIEBJbnB1dCgncC1sYWJlbCcpIGxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqIE5vbWUgZG8gY29tcG9uZW50ZS4gKi9cbiAgQElucHV0KCduYW1lJykgbmFtZTogc3RyaW5nO1xuXG4gIC8qKiBUZXh0byBkZSBhcG9pbyBwYXJhIG8gY2FtcG8uICovXG4gIEBJbnB1dCgncC1oZWxwJykgaGVscDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCAxNC54LnhcbiAgICpcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiAqKkRlcHJlY2F0ZWQgMTQueC54KiouXG4gICAqXG4gICAqIEFwbGljYSBvIGZvY28gbm8gZWxlbWVudG8gYW8gc2VyIGluaWNpYWRvLlxuICAgKiAgPiBDYXNvIG1haXMgZGUgdW0gZWxlbWVudG8gc2VqYSBjb25maWd1cmFkbyBjb20gZXNzYSBwcm9wcmllZGFkZSxcbiAgICogbyDDumx0aW1vIGVsZW1lbnRvIGRlY2xhcmFkbyBjb20gZWxhIHRlcsOhIG8gZm9jby5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWF1dG8tZm9jdXMnKSBASW5wdXRCb29sZWFuKCkgYXV0b0ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogSW5kaWNhIHNlIG8gY2FtcG8gc2Vyw6EgZGVzYWJpbGl0YWRvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoJ3AtZGlzYWJsZWQnKSBASW5wdXRCb29sZWFuKCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBFdmVudG8gZGlzcGFyYWRvIGFvIGFsdGVyYXIgdmFsb3IgZG8gY2FtcG8uXG4gICAqL1xuICBAT3V0cHV0KCdwLWNoYW5nZScpIGNoYW5nZTogRXZlbnRFbWl0dGVyPFQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxUPigpO1xuXG4gIHZhbHVlOiBUO1xuXG4gIHByb3RlY3RlZCBvblRvdWNoZWQ7XG5cbiAgcHJpdmF0ZSBwcm9wYWdhdGVDaGFuZ2U6IGFueTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLy8gRnVuw6fDo28gaW1wbGVtZW50YWRhIGRvIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIC8vIFVzYWRhIHBhcmEgaW50ZXJjZXB0YXIgb3MgZXN0YWRvcyBkZSBoYWJpbGl0YWRvIHZpYSBmb3JtcyBhcGlcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgdGhpcy5vbldyaXRlVmFsdWUodmFsdWUpO1xuICB9XG5cbiAgZW1pdENoYW5nZSh2YWx1ZSkge1xuICAgIHRoaXMuY2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZU1vZGVsKHZhbHVlOiBUKSB7XG4gICAgaWYgKHRoaXMucHJvcGFnYXRlQ2hhbmdlKSB7XG4gICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgYWJzdHJhY3Qgb25Xcml0ZVZhbHVlKHZhbHVlOiBUKTogdm9pZDtcbn1cbiJdfQ==
@@ -68,16 +68,14 @@ PoInputComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoInputCom
68
68
  multi: true
69
69
  }
70
70
  ]), i0.ɵɵInheritDefinitionFeature], decls: 8, vars: 17, consts: [[3, "p-help", "p-label", "p-optional"], [1, "po-field-container-content"], ["class", "po-field-icon-container-left", 4, "ngIf"], [1, "po-input", 3, "autocomplete", "disabled", "placeholder", "readonly", "required", "type", "blur", "click", "focus", "input"], ["inp", ""], [1, "po-field-icon-container-right"], [3, "p-element-ref", "p-change-event", 4, "ngIf"], [3, "p-error-pattern"], [1, "po-field-icon-container-left"], [1, "po-field-icon", 3, "p-icon"], [3, "p-element-ref", "p-change-event"]], template: function PoInputComponent_Template(rf, ctx) { if (rf & 1) {
71
- i0.ɵɵelementStart(0, "po-field-container", 0);
72
- i0.ɵɵelementStart(1, "div", 1);
71
+ i0.ɵɵelementStart(0, "po-field-container", 0)(1, "div", 1);
73
72
  i0.ɵɵtemplate(2, PoInputComponent_div_2_Template, 2, 3, "div", 2);
74
73
  i0.ɵɵelementStart(3, "input", 3, 4);
75
74
  i0.ɵɵlistener("blur", function PoInputComponent_Template_input_blur_3_listener($event) { return ctx.eventOnBlur($event); })("click", function PoInputComponent_Template_input_click_3_listener($event) { return ctx.eventOnClick($event); })("focus", function PoInputComponent_Template_input_focus_3_listener($event) { return ctx.eventOnFocus($event); })("input", function PoInputComponent_Template_input_input_3_listener($event) { return ctx.eventOnInput($event); });
76
75
  i0.ɵɵelementEnd();
77
76
  i0.ɵɵelementStart(5, "div", 5);
78
77
  i0.ɵɵtemplate(6, PoInputComponent_po_clean_6_Template, 1, 1, "po-clean", 6);
79
- i0.ɵɵelementEnd();
80
- i0.ɵɵelementEnd();
78
+ i0.ɵɵelementEnd()();
81
79
  i0.ɵɵelement(7, "po-field-container-bottom", 7);
82
80
  i0.ɵɵelementEnd();
83
81
  } if (rf & 2) {
@@ -108,4 +106,4 @@ PoInputComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoInputCom
108
106
  }
109
107
  ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<po-field-container [p-help]=\"help\" [p-label]=\"label\" [p-optional]=\"!required && optional\">\n <div class=\"po-field-container-content\">\n <div *ngIf=\"icon\" class=\"po-field-icon-container-left\">\n <po-icon class=\"po-field-icon\" [class.po-field-icon-disabled]=\"disabled\" [p-icon]=\"icon\"></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-right]=\"clean\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n <po-clean *ngIf=\"clean && !disabled && !readonly\" [p-element-ref]=\"inputEl\" (p-change-event)=\"clear($event)\">\n </po-clean>\n </div>\n </div>\n\n <po-field-container-bottom [p-error-pattern]=\"getErrorPattern()\"> </po-field-container-bottom>\n</po-field-container>\n" }]
110
108
  }], function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, null); })();
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8taW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWlucHV0L3BvLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1pbnB1dC9wby1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0lDRGxFLDhCQUF1RDtJQUNyRCw2QkFBbUc7SUFDckcsaUJBQU07OztJQUQyQixlQUF5QztJQUF6Qyx5REFBeUM7SUFBQyxvQ0FBZTs7OztJQXNCeEYsb0NBQTZHO0lBQWpDLDRMQUFrQixvQkFBYSxJQUFDO0lBQzVHLGlCQUFXOzs7SUFEdUMsOENBQXlCOztBRHBCakY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFrQkgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGNBQWM7SUFDbEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELGVBQWUsQ0FBQyxDQUFrQjtRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O2dGQVJVLGdCQUFnQjttRUFBaEIsZ0JBQWdCLDhEQWRoQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBQy9DLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDL0MsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGO1FDdkNILDZDQUEyRjtRQUN6Riw4QkFBd0M7UUFDdEMsaUVBRU07UUFFTixtQ0FnQkU7UUFKQSxnR0FBUSx1QkFBbUIsSUFBQyxxRkFDbkIsd0JBQW9CLElBREQscUZBRW5CLHdCQUFvQixJQUZELHFGQUduQix3QkFBb0IsSUFIRDtRQVo5QixpQkFnQkU7UUFFRiw4QkFBMkM7UUFDekMsMkVBQ1c7UUFDYixpQkFBTTtRQUNSLGlCQUFNO1FBRU4sK0NBQThGO1FBQ2hHLGlCQUFxQjs7UUEvQkQsaUNBQWUsc0JBQUEsNkNBQUE7UUFFekIsZUFBVTtRQUFWLCtCQUFVO1FBU2QsZUFBaUM7UUFBakMsOENBQWlDLGtDQUFBO1FBRGpDLCtDQUE2QiwwQkFBQSxnQ0FBQSwwQkFBQSwwQkFBQSxrQkFBQTtRQUQ3QixnQ0FBa0I7UUFnQlAsZUFBcUM7UUFBckMsa0VBQXFDO1FBS3pCLGVBQXFDO1FBQXJDLHVEQUFxQzs7dUZEWXJELGdCQUFnQjtjQWpCNUIsU0FBUzsyQkFDRSxVQUFVLGFBRVQ7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUM7d0JBQy9DLEtBQUssRUFBRSxJQUFJO3FCQUNaO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQzt3QkFDL0MsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0YsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiwgTkdfVkFMSURBVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUG9JbnB1dEdlbmVyaWMgfSBmcm9tICcuLi9wby1pbnB1dC1nZW5lcmljL3BvLWlucHV0LWdlbmVyaWMnO1xuXG4vKipcbiAqIEBkb2NzRXh0ZW5kcyBQb0lucHV0QmFzZUNvbXBvbmVudFxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWlucHV0LWJhc2ljXCIgdGl0bGU9XCJQTyBJbnB1dCBCYXNpY1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8taW5wdXQtYmFzaWMvc2FtcGxlLXBvLWlucHV0LWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWlucHV0LWJhc2ljL3NhbXBsZS1wby1pbnB1dC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1pbnB1dC1sYWJzXCIgdGl0bGU9XCJQTyBJbnB1dCBMYWJzXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1pbnB1dC1sYWJzL3NhbXBsZS1wby1pbnB1dC1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWlucHV0LWxhYnMvc2FtcGxlLXBvLWlucHV0LWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8taW5wdXQtcmVhY3RpdmUtZm9ybVwiIHRpdGxlPVwiUE8gSW5wdXQgLSBSZWFjdGl2ZSBGb3JtXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1pbnB1dC1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1pbnB1dC1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWlucHV0LXJlYWN0aXZlLWZvcm0vc2FtcGxlLXBvLWlucHV0LXJlYWN0aXZlLWZvcm0uY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8taW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvSW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb0lucHV0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQb0lucHV0Q29tcG9uZW50IGV4dGVuZHMgUG9JbnB1dEdlbmVyaWMge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZiwgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoZWwsIGNkKTtcbiAgfVxuXG4gIGV4dHJhVmFsaWRhdGlvbihjOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIiwiPHBvLWZpZWxkLWNvbnRhaW5lciBbcC1oZWxwXT1cImhlbHBcIiBbcC1sYWJlbF09XCJsYWJlbFwiIFtwLW9wdGlvbmFsXT1cIiFyZXF1aXJlZCAmJiBvcHRpb25hbFwiPlxuICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyLWNvbnRlbnRcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiaWNvblwiIGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItbGVmdFwiPlxuICAgICAgPHBvLWljb24gY2xhc3M9XCJwby1maWVsZC1pY29uXCIgW2NsYXNzLnBvLWZpZWxkLWljb24tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbcC1pY29uXT1cImljb25cIj48L3BvLWljb24+XG4gICAgPC9kaXY+XG5cbiAgICA8aW5wdXRcbiAgICAgICNpbnBcbiAgICAgIGNsYXNzPVwicG8taW5wdXRcIlxuICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgIFtjbGFzcy5wby1pbnB1dC1pY29uLWxlZnRdPVwiaWNvblwiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1yaWdodF09XCJjbGVhblwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW3R5cGVdPVwidHlwZVwiXG4gICAgICAoYmx1cik9XCJldmVudE9uQmx1cigkZXZlbnQpXCJcbiAgICAgIChjbGljayk9XCJldmVudE9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwiZXZlbnRPbkZvY3VzKCRldmVudClcIlxuICAgICAgKGlucHV0KT1cImV2ZW50T25JbnB1dCgkZXZlbnQpXCJcbiAgICAvPlxuXG4gICAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLXJpZ2h0XCI+XG4gICAgICA8cG8tY2xlYW4gKm5nSWY9XCJjbGVhbiAmJiAhZGlzYWJsZWQgJiYgIXJlYWRvbmx5XCIgW3AtZWxlbWVudC1yZWZdPVwiaW5wdXRFbFwiIChwLWNoYW5nZS1ldmVudCk9XCJjbGVhcigkZXZlbnQpXCI+XG4gICAgICA8L3BvLWNsZWFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8cG8tZmllbGQtY29udGFpbmVyLWJvdHRvbSBbcC1lcnJvci1wYXR0ZXJuXT1cImdldEVycm9yUGF0dGVybigpXCI+IDwvcG8tZmllbGQtY29udGFpbmVyLWJvdHRvbT5cbjwvcG8tZmllbGQtY29udGFpbmVyPlxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8taW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWlucHV0L3BvLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1pbnB1dC9wby1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0lDRGxFLDhCQUF1RDtJQUNyRCw2QkFBbUc7SUFDckcsaUJBQU07OztJQUQyQixlQUF5QztJQUF6Qyx5REFBeUM7SUFBQyxvQ0FBZTs7OztJQXNCeEYsb0NBQTZHO0lBQWpDLDRMQUFrQixvQkFBYSxJQUFDO0lBQzVHLGlCQUFXOzs7SUFEdUMsOENBQXlCOztBRHBCakY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFrQkgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGNBQWM7SUFDbEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELGVBQWUsQ0FBQyxDQUFrQjtRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O2dGQVJVLGdCQUFnQjttRUFBaEIsZ0JBQWdCLDhEQWRoQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBQy9DLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDL0MsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGO1FDdkNILDZDQUEyRixhQUFBO1FBRXZGLGlFQUVNO1FBRU4sbUNBZ0JFO1FBSkEsZ0dBQVEsdUJBQW1CLElBQUMscUZBQ25CLHdCQUFvQixJQURELHFGQUVuQix3QkFBb0IsSUFGRCxxRkFHbkIsd0JBQW9CLElBSEQ7UUFaOUIsaUJBZ0JFO1FBRUYsOEJBQTJDO1FBQ3pDLDJFQUNXO1FBQ2IsaUJBQU0sRUFBQTtRQUdSLCtDQUE4RjtRQUNoRyxpQkFBcUI7O1FBL0JELGlDQUFlLHNCQUFBLDZDQUFBO1FBRXpCLGVBQVU7UUFBViwrQkFBVTtRQVNkLGVBQWlDO1FBQWpDLDhDQUFpQyxrQ0FBQTtRQURqQywrQ0FBNkIsMEJBQUEsZ0NBQUEsMEJBQUEsMEJBQUEsa0JBQUE7UUFEN0IsZ0NBQWtCO1FBZ0JQLGVBQXFDO1FBQXJDLGtFQUFxQztRQUt6QixlQUFxQztRQUFyQyx1REFBcUM7O3VGRFlyRCxnQkFBZ0I7Y0FqQjVCLFNBQVM7MkJBQ0UsVUFBVSxhQUVUO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDO3dCQUMvQyxLQUFLLEVBQUUsSUFBSTtxQkFDWjtvQkFDRDt3QkFDRSxPQUFPLEVBQUUsYUFBYTt3QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUM7d0JBQy9DLEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIE5HX1ZBTElEQVRPUlMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFBvSW5wdXRHZW5lcmljIH0gZnJvbSAnLi4vcG8taW5wdXQtZ2VuZXJpYy9wby1pbnB1dC1nZW5lcmljJztcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9JbnB1dEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1pbnB1dC1iYXNpY1wiIHRpdGxlPVwiUE8gSW5wdXQgQmFzaWNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWlucHV0LWJhc2ljL3NhbXBsZS1wby1pbnB1dC1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1pbnB1dC1iYXNpYy9zYW1wbGUtcG8taW5wdXQtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8taW5wdXQtbGFic1wiIHRpdGxlPVwiUE8gSW5wdXQgTGFic1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8taW5wdXQtbGFicy9zYW1wbGUtcG8taW5wdXQtbGFicy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1pbnB1dC1sYWJzL3NhbXBsZS1wby1pbnB1dC1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWlucHV0LXJlYWN0aXZlLWZvcm1cIiB0aXRsZT1cIlBPIElucHV0IC0gUmVhY3RpdmUgRm9ybVwiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8taW5wdXQtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8taW5wdXQtcmVhY3RpdmUtZm9ybS5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1pbnB1dC1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1pbnB1dC1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb0lucHV0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9JbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUG9JbnB1dENvbXBvbmVudCBleHRlbmRzIFBvSW5wdXRHZW5lcmljIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGVsLCBjZCk7XG4gIH1cblxuICBleHRyYVZhbGlkYXRpb24oYzogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiIsIjxwby1maWVsZC1jb250YWluZXIgW3AtaGVscF09XCJoZWxwXCIgW3AtbGFiZWxdPVwibGFiZWxcIiBbcC1vcHRpb25hbF09XCIhcmVxdWlyZWQgJiYgb3B0aW9uYWxcIj5cbiAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lci1jb250ZW50XCI+XG4gICAgPGRpdiAqbmdJZj1cImljb25cIiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLWxlZnRcIj5cbiAgICAgIDxwby1pY29uIGNsYXNzPVwicG8tZmllbGQtaWNvblwiIFtjbGFzcy5wby1maWVsZC1pY29uLWRpc2FibGVkXT1cImRpc2FibGVkXCIgW3AtaWNvbl09XCJpY29uXCI+PC9wby1pY29uPlxuICAgIDwvZGl2PlxuXG4gICAgPGlucHV0XG4gICAgICAjaW5wXG4gICAgICBjbGFzcz1cInBvLWlucHV0XCJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1sZWZ0XT1cImljb25cIlxuICAgICAgW2NsYXNzLnBvLWlucHV0LWljb24tcmlnaHRdPVwiY2xlYW5cIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFt0eXBlXT1cInR5cGVcIlxuICAgICAgKGJsdXIpPVwiZXZlbnRPbkJsdXIoJGV2ZW50KVwiXG4gICAgICAoY2xpY2spPVwiZXZlbnRPbkNsaWNrKCRldmVudClcIlxuICAgICAgKGZvY3VzKT1cImV2ZW50T25Gb2N1cygkZXZlbnQpXCJcbiAgICAgIChpbnB1dCk9XCJldmVudE9uSW5wdXQoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1yaWdodFwiPlxuICAgICAgPHBvLWNsZWFuICpuZ0lmPVwiY2xlYW4gJiYgIWRpc2FibGVkICYmICFyZWFkb25seVwiIFtwLWVsZW1lbnQtcmVmXT1cImlucHV0RWxcIiAocC1jaGFuZ2UtZXZlbnQpPVwiY2xlYXIoJGV2ZW50KVwiPlxuICAgICAgPC9wby1jbGVhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPHBvLWZpZWxkLWNvbnRhaW5lci1ib3R0b20gW3AtZXJyb3ItcGF0dGVybl09XCJnZXRFcnJvclBhdHRlcm4oKVwiPiA8L3BvLWZpZWxkLWNvbnRhaW5lci1ib3R0b20+XG48L3BvLWZpZWxkLWNvbnRhaW5lcj5cbiJdfQ==
@@ -66,9 +66,7 @@ export class PoLoginComponent extends PoInputGeneric {
66
66
  }
67
67
  PoLoginComponent.ɵfac = function PoLoginComponent_Factory(t) { return new (t || PoLoginComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
68
68
  PoLoginComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoLoginComponent, selectors: [["po-login"]], features: [i0.ɵɵProvidersFeature(providers), i0.ɵɵInheritDefinitionFeature], decls: 9, vars: 16, consts: [[3, "p-label", "p-help", "p-optional"], [1, "po-field-container-content"], [1, "po-field-icon-container-left"], [1, "po-icon", "po-field-icon", "po-icon-user"], [1, "po-input", "po-input-icon-left", 3, "autocomplete", "disabled", "placeholder", "readonly", "required", "type", "blur", "click", "focus", "input"], ["inp", ""], [1, "po-field-icon-container-right"], [3, "p-element-ref", "p-change-event", 4, "ngIf"], [3, "p-error-pattern"], [3, "p-element-ref", "p-change-event"]], template: function PoLoginComponent_Template(rf, ctx) { if (rf & 1) {
69
- i0.ɵɵelementStart(0, "po-field-container", 0);
70
- i0.ɵɵelementStart(1, "div", 1);
71
- i0.ɵɵelementStart(2, "div", 2);
69
+ i0.ɵɵelementStart(0, "po-field-container", 0)(1, "div", 1)(2, "div", 2);
72
70
  i0.ɵɵelement(3, "span", 3);
73
71
  i0.ɵɵelementEnd();
74
72
  i0.ɵɵelementStart(4, "input", 4, 5);
@@ -76,8 +74,7 @@ PoLoginComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoLoginCom
76
74
  i0.ɵɵelementEnd();
77
75
  i0.ɵɵelementStart(6, "div", 6);
78
76
  i0.ɵɵtemplate(7, PoLoginComponent_po_clean_7_Template, 1, 1, "po-clean", 7);
79
- i0.ɵɵelementEnd();
80
- i0.ɵɵelementEnd();
77
+ i0.ɵɵelementEnd()();
81
78
  i0.ɵɵelement(8, "po-field-container-bottom", 8);
82
79
  i0.ɵɵelementEnd();
83
80
  } if (rf & 2) {
@@ -97,4 +94,4 @@ PoLoginComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoLoginCom
97
94
  type: Component,
98
95
  args: [{ selector: 'po-login', changeDetection: ChangeDetectionStrategy.OnPush, providers: providers, template: "<po-field-container [p-label]=\"label\" [p-help]=\"help\" [p-optional]=\"!required && optional\">\n <div class=\"po-field-container-content\">\n <div class=\"po-field-icon-container-left\">\n <span class=\"po-icon po-field-icon po-icon-user\" [class.po-field-icon-disabled]=\"disabled\"></span>\n </div>\n\n <input\n #inp\n class=\"po-input po-input-icon-left\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-right]=\"clean\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n <po-clean *ngIf=\"clean && !disabled && !readonly\" [p-element-ref]=\"inputEl\" (p-change-event)=\"clear($event)\">\n </po-clean>\n </div>\n </div>\n\n <po-field-container-bottom [p-error-pattern]=\"getErrorPattern()\"> </po-field-container-bottom>\n</po-field-container>\n" }]
99
96
  }], function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, null); })();
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tbG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWxvZ2luL3BvLWxvZ2luLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1sb2dpbi9wby1sb2dpbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0lDcUJoRSxtQ0FBNkc7SUFBakMsNExBQWtCLG9CQUFhLElBQUM7SUFDNUcsaUJBQVc7OztJQUR1Qyw4Q0FBeUI7O0FEbkJqRiwwQkFBMEI7QUFDMUIsTUFBTSxTQUFTLEdBQUc7SUFDaEI7UUFDRSxPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7SUFDRDtRQUNFLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJHO0FBT0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGNBQWM7SUFHbEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFKaEIsU0FBSSxHQUFHLE1BQU0sQ0FBQztJQUtkLENBQUM7SUFFRCxlQUFlLENBQUMsQ0FBa0I7UUFDaEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztnRkFWVSxnQkFBZ0I7bUVBQWhCLGdCQUFnQiw4REFGM0IsU0FBUztRQ2pEWCw2Q0FBMkY7UUFDekYsOEJBQXdDO1FBQ3RDLDhCQUEwQztRQUN4QywwQkFBa0c7UUFDcEcsaUJBQU07UUFFTixtQ0FlRTtRQUpBLGdHQUFRLHVCQUFtQixJQUFDLHFGQUNuQix3QkFBb0IsSUFERCxxRkFFbkIsd0JBQW9CLElBRkQscUZBR25CLHdCQUFvQixJQUhEO1FBWDlCLGlCQWVFO1FBRUYsOEJBQTJDO1FBQ3pDLDJFQUNXO1FBQ2IsaUJBQU07UUFDUixpQkFBTTtRQUVOLCtDQUE4RjtRQUNoRyxpQkFBcUI7O1FBOUJELG1DQUFpQixvQkFBQSw2Q0FBQTtRQUdrQixlQUF5QztRQUF6QyxzREFBeUM7UUFRMUYsZUFBbUM7UUFBbkMsZ0RBQW1DO1FBRG5DLCtDQUE2QiwwQkFBQSxnQ0FBQSwwQkFBQSwwQkFBQSxrQkFBQTtRQUQ3QixnQ0FBa0I7UUFlUCxlQUFxQztRQUFyQyxrRUFBcUM7UUFLekIsZUFBcUM7UUFBckMsdURBQXFDOzt1RkRzQnJELGdCQUFnQjtjQU41QixTQUFTOzJCQUNFLFVBQVUsbUJBRUgsdUJBQXVCLENBQUMsTUFBTSxhQUMvQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIE5HX1ZBTElEQVRPUlMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFBvSW5wdXRHZW5lcmljIH0gZnJvbSAnLi4vcG8taW5wdXQtZ2VuZXJpYy9wby1pbnB1dC1nZW5lcmljJztcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmNvbnN0IHByb3ZpZGVycyA9IFtcbiAge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvTG9naW5Db21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH0sXG4gIHtcbiAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBvTG9naW5Db21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1cbl07XG5cbi8qKlxuICogQGRvY3NFeHRlbmRzIFBvSW5wdXRCYXNlQ29tcG9uZW50XG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKiBPIHBvLWxvZ2luIMOpIHVtIGlucHV0IGVzcGVjw61maWNvIHBhcmEgbG9naW4uIErDoSBwb3NzdWkgdGlwbywgZXN0aWxvIGUgw61jb25lIHByZWRlZmluaWRvcy5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1sb2dpbi1iYXNpY1wiIHRpdGxlPVwiUE8gTG9naW4gQmFzaWNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWxvZ2luLWJhc2ljL3NhbXBsZS1wby1sb2dpbi1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1sb2dpbi1iYXNpYy9zYW1wbGUtcG8tbG9naW4tYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tbG9naW4tbGFic1wiIHRpdGxlPVwiUE8gTG9naW4gTGFic1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tbG9naW4tbGFicy9zYW1wbGUtcG8tbG9naW4tbGFicy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1sb2dpbi1sYWJzL3NhbXBsZS1wby1sb2dpbi1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWxvZ2luLWNvbmZpcm1cIiB0aXRsZT1cIlBPIExvZ2luIC0gQ29uZmlybSBJZGVudGl0eVwiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tbG9naW4tY29uZmlybS9zYW1wbGUtcG8tbG9naW4tY29uZmlybS5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1sb2dpbi1jb25maXJtL3NhbXBsZS1wby1sb2dpbi1jb25maXJtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1sb2dpbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby1sb2dpbi5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnNcbn0pXG5leHBvcnQgY2xhc3MgUG9Mb2dpbkNvbXBvbmVudCBleHRlbmRzIFBvSW5wdXRHZW5lcmljIHtcbiAgdHlwZSA9ICd0ZXh0JztcblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZiwgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoZWwsIGNkKTtcbiAgfVxuXG4gIGV4dHJhVmFsaWRhdGlvbihjOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIiwiPHBvLWZpZWxkLWNvbnRhaW5lciBbcC1sYWJlbF09XCJsYWJlbFwiIFtwLWhlbHBdPVwiaGVscFwiIFtwLW9wdGlvbmFsXT1cIiFyZXF1aXJlZCAmJiBvcHRpb25hbFwiPlxuICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyLWNvbnRlbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItbGVmdFwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwby1pY29uIHBvLWZpZWxkLWljb24gcG8taWNvbi11c2VyXCIgW2NsYXNzLnBvLWZpZWxkLWljb24tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj48L3NwYW4+XG4gICAgPC9kaXY+XG5cbiAgICA8aW5wdXRcbiAgICAgICNpbnBcbiAgICAgIGNsYXNzPVwicG8taW5wdXQgcG8taW5wdXQtaWNvbi1sZWZ0XCJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1yaWdodF09XCJjbGVhblwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW3R5cGVdPVwidHlwZVwiXG4gICAgICAoYmx1cik9XCJldmVudE9uQmx1cigkZXZlbnQpXCJcbiAgICAgIChjbGljayk9XCJldmVudE9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwiZXZlbnRPbkZvY3VzKCRldmVudClcIlxuICAgICAgKGlucHV0KT1cImV2ZW50T25JbnB1dCgkZXZlbnQpXCJcbiAgICAvPlxuXG4gICAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLXJpZ2h0XCI+XG4gICAgICA8cG8tY2xlYW4gKm5nSWY9XCJjbGVhbiAmJiAhZGlzYWJsZWQgJiYgIXJlYWRvbmx5XCIgW3AtZWxlbWVudC1yZWZdPVwiaW5wdXRFbFwiIChwLWNoYW5nZS1ldmVudCk9XCJjbGVhcigkZXZlbnQpXCI+XG4gICAgICA8L3BvLWNsZWFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8cG8tZmllbGQtY29udGFpbmVyLWJvdHRvbSBbcC1lcnJvci1wYXR0ZXJuXT1cImdldEVycm9yUGF0dGVybigpXCI+IDwvcG8tZmllbGQtY29udGFpbmVyLWJvdHRvbT5cbjwvcG8tZmllbGQtY29udGFpbmVyPlxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tbG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWxvZ2luL3BvLWxvZ2luLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1sb2dpbi9wby1sb2dpbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0lDcUJoRSxtQ0FBNkc7SUFBakMsNExBQWtCLG9CQUFhLElBQUM7SUFDNUcsaUJBQVc7OztJQUR1Qyw4Q0FBeUI7O0FEbkJqRiwwQkFBMEI7QUFDMUIsTUFBTSxTQUFTLEdBQUc7SUFDaEI7UUFDRSxPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7SUFDRDtRQUNFLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLDJCQUEyQjtRQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJHO0FBT0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGNBQWM7SUFHbEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFKaEIsU0FBSSxHQUFHLE1BQU0sQ0FBQztJQUtkLENBQUM7SUFFRCxlQUFlLENBQUMsQ0FBa0I7UUFDaEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztnRkFWVSxnQkFBZ0I7bUVBQWhCLGdCQUFnQiw4REFGM0IsU0FBUztRQ2pEWCw2Q0FBMkYsYUFBQSxhQUFBO1FBR3JGLDBCQUFrRztRQUNwRyxpQkFBTTtRQUVOLG1DQWVFO1FBSkEsZ0dBQVEsdUJBQW1CLElBQUMscUZBQ25CLHdCQUFvQixJQURELHFGQUVuQix3QkFBb0IsSUFGRCxxRkFHbkIsd0JBQW9CLElBSEQ7UUFYOUIsaUJBZUU7UUFFRiw4QkFBMkM7UUFDekMsMkVBQ1c7UUFDYixpQkFBTSxFQUFBO1FBR1IsK0NBQThGO1FBQ2hHLGlCQUFxQjs7UUE5QkQsbUNBQWlCLG9CQUFBLDZDQUFBO1FBR2tCLGVBQXlDO1FBQXpDLHNEQUF5QztRQVExRixlQUFtQztRQUFuQyxnREFBbUM7UUFEbkMsK0NBQTZCLDBCQUFBLGdDQUFBLDBCQUFBLDBCQUFBLGtCQUFBO1FBRDdCLGdDQUFrQjtRQWVQLGVBQXFDO1FBQXJDLGtFQUFxQztRQUt6QixlQUFxQztRQUFyQyx1REFBcUM7O3VGRHNCckQsZ0JBQWdCO2NBTjVCLFNBQVM7MkJBQ0UsVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGFBQy9DLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiwgTkdfVkFMSURBVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUG9JbnB1dEdlbmVyaWMgfSBmcm9tICcuLi9wby1pbnB1dC1nZW5lcmljL3BvLWlucHV0LWdlbmVyaWMnO1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuY29uc3QgcHJvdmlkZXJzID0gW1xuICB7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9Mb2dpbkNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfSxcbiAge1xuICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9Mb2dpbkNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfVxuXTtcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9JbnB1dEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqIE8gcG8tbG9naW4gw6kgdW0gaW5wdXQgZXNwZWPDrWZpY28gcGFyYSBsb2dpbi4gSsOhIHBvc3N1aSB0aXBvLCBlc3RpbG8gZSDDrWNvbmUgcHJlZGVmaW5pZG9zLlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWxvZ2luLWJhc2ljXCIgdGl0bGU9XCJQTyBMb2dpbiBCYXNpY1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tbG9naW4tYmFzaWMvc2FtcGxlLXBvLWxvZ2luLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWxvZ2luLWJhc2ljL3NhbXBsZS1wby1sb2dpbi1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1sb2dpbi1sYWJzXCIgdGl0bGU9XCJQTyBMb2dpbiBMYWJzXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1sb2dpbi1sYWJzL3NhbXBsZS1wby1sb2dpbi1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWxvZ2luLWxhYnMvc2FtcGxlLXBvLWxvZ2luLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tbG9naW4tY29uZmlybVwiIHRpdGxlPVwiUE8gTG9naW4gLSBDb25maXJtIElkZW50aXR5XCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1sb2dpbi1jb25maXJtL3NhbXBsZS1wby1sb2dpbi1jb25maXJtLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWxvZ2luLWNvbmZpcm0vc2FtcGxlLXBvLWxvZ2luLWNvbmZpcm0uY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLWxvZ2luJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyc1xufSlcbmV4cG9ydCBjbGFzcyBQb0xvZ2luQ29tcG9uZW50IGV4dGVuZHMgUG9JbnB1dEdlbmVyaWMge1xuICB0eXBlID0gJ3RleHQnO1xuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihlbCwgY2QpO1xuICB9XG5cbiAgZXh0cmFWYWxpZGF0aW9uKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iLCI8cG8tZmllbGQtY29udGFpbmVyIFtwLWxhYmVsXT1cImxhYmVsXCIgW3AtaGVscF09XCJoZWxwXCIgW3Atb3B0aW9uYWxdPVwiIXJlcXVpcmVkICYmIG9wdGlvbmFsXCI+XG4gIDxkaXYgY2xhc3M9XCJwby1maWVsZC1jb250YWluZXItY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1sZWZ0XCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvLWljb24gcG8tZmllbGQtaWNvbiBwby1pY29uLXVzZXJcIiBbY2xhc3MucG8tZmllbGQtaWNvbi1kaXNhYmxlZF09XCJkaXNhYmxlZFwiPjwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICAgIDxpbnB1dFxuICAgICAgI2lucFxuICAgICAgY2xhc3M9XCJwby1pbnB1dCBwby1pbnB1dC1pY29uLWxlZnRcIlxuICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgIFtjbGFzcy5wby1pbnB1dC1pY29uLXJpZ2h0XT1cImNsZWFuXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICAgIChibHVyKT1cImV2ZW50T25CbHVyKCRldmVudClcIlxuICAgICAgKGNsaWNrKT1cImV2ZW50T25DbGljaygkZXZlbnQpXCJcbiAgICAgIChmb2N1cyk9XCJldmVudE9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAoaW5wdXQpPVwiZXZlbnRPbklucHV0KCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItcmlnaHRcIj5cbiAgICAgIDxwby1jbGVhbiAqbmdJZj1cImNsZWFuICYmICFkaXNhYmxlZCAmJiAhcmVhZG9ubHlcIiBbcC1lbGVtZW50LXJlZl09XCJpbnB1dEVsXCIgKHAtY2hhbmdlLWV2ZW50KT1cImNsZWFyKCRldmVudClcIj5cbiAgICAgIDwvcG8tY2xlYW4+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxwby1maWVsZC1jb250YWluZXItYm90dG9tIFtwLWVycm9yLXBhdHRlcm5dPVwiZ2V0RXJyb3JQYXR0ZXJuKClcIj4gPC9wby1maWVsZC1jb250YWluZXItYm90dG9tPlxuPC9wby1maWVsZC1jb250YWluZXI+XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHVzZWRCeSBQb0xvb2t1cENvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIEludGVyZmFjZSBwYXJhIGNvbmZpZ3VyYcOnw6NvIGRhcyBjb2x1bmFzIGRvIHBvLWxvb2t1cC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb0xvb2t1cENvbHVtbiB7XG4gIC8qKlxuICAgKiBJbmRpY2EgcXVlIGEgY29sdW5hIHNlcsOhIHV0aWxpemFkYSBjb21vIHZhbG9yIGRvIGNhbXBvIGUgY29tbyBmaWx0cm8gZGVudHJvIGRhIG1vZGFsLlxuICAgKlxuICAgKiBTZSBob3V2ZXIgbWFpcyBkZSB1bWEgY29uZmlndXJhw6fDo28gaGFiaWxpdGFkYSwgw6kgZXhpYmlkbyBvcyB2YWxvcmVzIG5vIGNhbXBvIGNvbmNhdGVuYWRvcyBzZXBhcmFkb3NcbiAgICogcG9yIHVtIHRyYcOnbyhcIi1cIikuIFBvciBleGVtcGxvOiBcIkpvaW52aWxsZSAtIFNDXCIuXG4gICAqXG4gICAqIEltcG9ydGFudGVcbiAgICogRXN0YSBjb25maWd1cmHDp8OjbyBzZSB0b3JuYSBvYnNvbGV0YSBjYXNvIG9zIGF0cmlidXRvcyBgcC1maWVsZC1mb3JtYXRgIG91IGBwLWZpZWxkLWxhYmVsYCBmb3JlbSBjb25maWd1cmFkb3Mgbm8gY29tcG9uZW50ZS5cbiAgICovXG4gIGZpZWxkTGFiZWw/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBGb3JtYXRvIGRlIGV4aWJpw6fDo28gZG8gdmFsb3IgZGEgY29sdW5hOlxuICAgKiAtIEZvcm1hdG8gcGFyYSBtb2VkYSAoY3VycmVuY3kpLiBFeGVtcGxvczogJ0JSTCcsICdVU0QnLlxuICAgKiAtIEZvcm1hdG8gcGFyYSBkYXRhIChkYXRlKTogYWNlaXRhIGFwZW5hcyBvcyBjYXJhY3RlcmVzIGRlIGRpYShkZCksIG3DqnMoTU0gb3UgbW0pIGUgYW5vICh5eXl5IG91IHl5KSxcbiAgICogdmFsb3IgcGFkcsOjbyDDqSAnZGQvTU0veXl5eScuIEV4ZW1wbG9zOiAnZGQvTU0veXl5eScsICdkZC1NTS15eScsICdtbS9kZC95eXl5Jy5cbiAgICovXG4gIGZvcm1hdD86IHN0cmluZztcblxuICAvKipcbiAgICogVGV4dG8gcGFyYSB0w610dWxvIGRhIGNvbHVuYS5cbiAgICpcbiAgICogQ2FzbyBuw6NvIHNlamEgaW5mb3JtYWRvLCBzZXLDoSB1dGlsaXphZG8gY29tbyAqbGFiZWwqIG8gdmFsb3IgZGEgcHJvcHJpZWRhZGUgKnByb3BlcnR5KiBjb20gYSBwcmltZWlyYSBsZXRyYSBlbSBtYWnDunNjdWxvLlxuICAgKi9cbiAgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIE5vbWUgaWRlbnRpZmljYWRvciBkYSBjb2x1bmEuICovXG4gIHByb3BlcnR5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaXBvIGRhIGNvbHVuYTpcbiAgICogLSBzdHJpbmcgKHBhZHLDo28pOiB0ZXh0b3NcbiAgICogLSBudW1iZXI6IHZhbG9yZXMgbnVtw6lyaWNvc1xuICAgKiAtIGRhdGU6IGRhdGFcbiAgICogLSBjdXJyZW5jeTogdmFsb3JlcyBtb25ldMOhcmlvc1xuICAgKi9cbiAgdHlwZT86IHN0cmluZztcblxuICAvKiogQSBsYXJndXJhIGRhIGNvbHVuYSBwb2RlIHNlciBpbmZvcm1hZGEgZW0gcGl4ZWxzIG91IHBvcmNlbnRhZ2VtLiBFeGVtcGxvOiAnMTAwcHgnIG91ICcyMCUnICovXG4gIHdpZHRoPzogc3RyaW5nO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHVzZWRCeSBQb0xvb2t1cENvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIEludGVyZmFjZSBwYXJhIGNvbmZpZ3VyYcOnw6NvIGRhcyBjb2x1bmFzIGRvIHBvLWxvb2t1cC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb0xvb2t1cENvbHVtbiB7XG4gIC8qKlxuICAgKiBJbmRpY2EgcXVlIGEgY29sdW5hIHNlcsOhIHV0aWxpemFkYSBjb21vIHZhbG9yIGRvIGNhbXBvIGUgY29tbyBmaWx0cm8gZGVudHJvIGRhIG1vZGFsLlxuICAgKlxuICAgKiBTZSBob3V2ZXIgbWFpcyBkZSB1bWEgY29uZmlndXJhw6fDo28gaGFiaWxpdGFkYSwgw6kgZXhpYmlkbyBvcyB2YWxvcmVzIG5vIGNhbXBvIGNvbmNhdGVuYWRvcyBzZXBhcmFkb3NcbiAgICogcG9yIHVtIHRyYcOnbyhcIi1cIikuIFBvciBleGVtcGxvOiBcIkpvaW52aWxsZSAtIFNDXCIuXG4gICAqXG4gICAqIEltcG9ydGFudGVcbiAgICogRXN0YSBjb25maWd1cmHDp8OjbyBzZSB0b3JuYSBvYnNvbGV0YSBjYXNvIG9zIGF0cmlidXRvcyBgcC1maWVsZC1mb3JtYXRgIG91IGBwLWZpZWxkLWxhYmVsYCBmb3JlbSBjb25maWd1cmFkb3Mgbm8gY29tcG9uZW50ZS5cbiAgICovXG4gIGZpZWxkTGFiZWw/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBGb3JtYXRvIGRlIGV4aWJpw6fDo28gZG8gdmFsb3IgZGEgY29sdW5hOlxuICAgKiAtIEZvcm1hdG8gcGFyYSBtb2VkYSAoY3VycmVuY3kpLiBFeGVtcGxvczogJ0JSTCcsICdVU0QnLlxuICAgKiAtIEZvcm1hdG8gcGFyYSBkYXRhIChkYXRlKTogYWNlaXRhIGFwZW5hcyBvcyBjYXJhY3RlcmVzIGRlIGRpYShkZCksIG3DqnMoTU0gb3UgbW0pIGUgYW5vICh5eXl5IG91IHl5KSxcbiAgICogdmFsb3IgcGFkcsOjbyDDqSAnZGQvTU0veXl5eScuIEV4ZW1wbG9zOiAnZGQvTU0veXl5eScsICdkZC1NTS15eScsICdtbS9kZC95eXl5Jy5cbiAgICovXG4gIGZvcm1hdD86IHN0cmluZztcblxuICAvKipcbiAgICogVGV4dG8gcGFyYSB0w610dWxvIGRhIGNvbHVuYS5cbiAgICpcbiAgICogQ2FzbyBuw6NvIHNlamEgaW5mb3JtYWRvLCBzZXLDoSB1dGlsaXphZG8gY29tbyAqbGFiZWwqIG8gdmFsb3IgZGEgcHJvcHJpZWRhZGUgKnByb3BlcnR5KiBjb20gYSBwcmltZWlyYSBsZXRyYSBlbSBtYWnDunNjdWxvLlxuICAgKi9cbiAgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIE5vbWUgaWRlbnRpZmljYWRvciBkYSBjb2x1bmEuICovXG4gIHByb3BlcnR5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaXBvIGRhIGNvbHVuYTpcbiAgICogLSBzdHJpbmcgKHBhZHLDo28pOiB0ZXh0b3NcbiAgICogLSBudW1iZXI6IHZhbG9yZXMgbnVtw6lyaWNvc1xuICAgKiAtIGRhdGU6IGRhdGFcbiAgICogLSBjdXJyZW5jeTogdmFsb3JlcyBtb25ldMOhcmlvc1xuICAgKiAtIGRhdGVUaW1lOiBkYXRhIGUgaG9yYVxuICAgKi9cbiAgdHlwZT86IHN0cmluZztcblxuICAvKiogQSBsYXJndXJhIGRhIGNvbHVuYSBwb2RlIHNlciBpbmZvcm1hZGEgZW0gcGl4ZWxzIG91IHBvcmNlbnRhZ2VtLiBFeGVtcGxvOiAnMTAwcHgnIG91ICcyMCUnICovXG4gIHdpZHRoPzogc3RyaW5nO1xufVxuIl19