raise-common-lib 0.0.212 → 0.0.214

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 (85) hide show
  1. package/README.md +57 -57
  2. package/bundles/raise-common-lib.umd.js +28 -28
  3. package/bundles/raise-common-lib.umd.js.map +1 -1
  4. package/bundles/raise-common-lib.umd.min.js +1 -1
  5. package/bundles/raise-common-lib.umd.min.js.map +1 -1
  6. package/esm2015/lib/dashboard/bar-charts/bar-charts.component.js +2 -2
  7. package/esm2015/lib/dashboard/dashboard-properties/data-mart-new/data-mart-new.component.js +3 -3
  8. package/esm2015/lib/dashboard/dialog-group/download/index.component.js +3 -3
  9. package/esm2015/lib/dashboard/dialog-group/empty-icon-prompt/empty-icon-prompt.component.js +3 -3
  10. package/esm2015/lib/dashboard/gadget-group/gadget-pivot/gadget-pivot.component.js +2 -2
  11. package/esm2015/lib/dashboard/gadget-group/gadget-pivot-chart/gadget-pivot.component.js +2 -2
  12. package/esm2015/lib/dashboard/gadget-group/gadget-table/gadget-table.component.js +2 -2
  13. package/esm2015/lib/dashboard/gadget-group/gadget-transpose/gadget-transpose.component.js +3 -3
  14. package/esm2015/lib/dashboard/pane-group-new.component.js +1 -1
  15. package/esm2015/lib/dashboard/sidebar-iconlist/field-filter/field-filter.component.js +2 -2
  16. package/esm2015/lib/dashboard/sidebar-iconlist/field-format/field-format.component.js +3 -3
  17. package/esm2015/lib/dashboard/sidebar-iconlist/portlet-type-new/portlet-type-new.component.js +3 -3
  18. package/esm2015/lib/dashboard/sidebar-iconlist/sidebar-iconlist-new.component.js +4 -4
  19. package/esm2015/lib/dialog/common-delete-dialog/index.component.js +2 -2
  20. package/esm2015/lib/dialog/common-dialog/index.component.js +2 -2
  21. package/esm2015/lib/dialog/new-action-notification/new-action-notification.component.js +1 -1
  22. package/esm2015/lib/form/drawer-form/drawer-form.component.js +1 -1
  23. package/esm2015/lib/form/richtexteditor/index.component.js +1 -1
  24. package/esm2015/lib/layout/drawer/index.component.js +1 -1
  25. package/esm2015/lib/layout/page-tab/index.component.js +1 -1
  26. package/esm5/lib/dashboard/bar-charts/bar-charts.component.js +2 -2
  27. package/esm5/lib/dashboard/dashboard-properties/data-mart-new/data-mart-new.component.js +3 -3
  28. package/esm5/lib/dashboard/dialog-group/download/index.component.js +3 -3
  29. package/esm5/lib/dashboard/dialog-group/empty-icon-prompt/empty-icon-prompt.component.js +3 -3
  30. package/esm5/lib/dashboard/gadget-group/gadget-pivot/gadget-pivot.component.js +2 -2
  31. package/esm5/lib/dashboard/gadget-group/gadget-pivot-chart/gadget-pivot.component.js +2 -2
  32. package/esm5/lib/dashboard/gadget-group/gadget-table/gadget-table.component.js +2 -2
  33. package/esm5/lib/dashboard/gadget-group/gadget-transpose/gadget-transpose.component.js +3 -3
  34. package/esm5/lib/dashboard/pane-group-new.component.js +1 -1
  35. package/esm5/lib/dashboard/sidebar-iconlist/field-filter/field-filter.component.js +2 -2
  36. package/esm5/lib/dashboard/sidebar-iconlist/field-format/field-format.component.js +3 -3
  37. package/esm5/lib/dashboard/sidebar-iconlist/portlet-type-new/portlet-type-new.component.js +3 -3
  38. package/esm5/lib/dashboard/sidebar-iconlist/sidebar-iconlist-new.component.js +4 -4
  39. package/esm5/lib/dialog/common-delete-dialog/index.component.js +2 -2
  40. package/esm5/lib/dialog/common-dialog/index.component.js +2 -2
  41. package/esm5/lib/dialog/new-action-notification/new-action-notification.component.js +1 -1
  42. package/esm5/lib/form/drawer-form/drawer-form.component.js +1 -1
  43. package/esm5/lib/form/richtexteditor/index.component.js +1 -1
  44. package/esm5/lib/layout/drawer/index.component.js +1 -1
  45. package/esm5/lib/layout/page-tab/index.component.js +1 -1
  46. package/fesm2015/raise-common-lib.js +28 -28
  47. package/fesm2015/raise-common-lib.js.map +1 -1
  48. package/fesm5/raise-common-lib.js +28 -28
  49. package/fesm5/raise-common-lib.js.map +1 -1
  50. package/package.json +1 -1
  51. package/raise-common-lib.metadata.json +1 -1
  52. package/src/assets/img/arrow_right.svg +4 -4
  53. package/src/assets/img/calendar-disabled.svg +6 -6
  54. package/src/assets/img/calendar.svg +6 -6
  55. package/src/assets/img/calendar_arrow_left.svg +3 -3
  56. package/src/assets/img/calendar_arrow_right.svg +3 -3
  57. package/src/assets/img/checked-vector.svg +3 -3
  58. package/src/assets/img/dialog-close.svg +4 -4
  59. package/src/assets/img/dialog-grow.svg +6 -6
  60. package/src/assets/img/dialog-shrink.svg +6 -6
  61. package/src/assets/img/plus.svg +4 -4
  62. package/src/assets/img/search.svg +4 -4
  63. package/src/assets/img/shrink-icon.svg +6 -6
  64. package/src/assets/img/time-disabled.svg +4 -4
  65. package/src/assets/img/time.svg +4 -4
  66. package/src/assets/img/toolbar-action-addFolder.svg +17 -17
  67. package/src/assets/img/toolbar-action-calculator.svg +11 -11
  68. package/src/assets/img/toolbar-action-collapse.svg +7 -7
  69. package/src/assets/img/toolbar-action-combine.svg +4 -4
  70. package/src/assets/img/toolbar-action-edit.svg +4 -4
  71. package/src/assets/img/toolbar-action-expand.svg +7 -7
  72. package/src/assets/img/toolbar-action-folderMove.svg +8 -8
  73. package/src/assets/img/toolbar-action-lock.svg +6 -6
  74. package/src/assets/img/toolbar-action-preview.svg +7 -7
  75. package/src/assets/img/toolbar-action-publish.svg +5 -5
  76. package/src/assets/img/toolbar-action-reminders.svg +10 -10
  77. package/src/assets/img/toolbar-action-rename.svg +7 -7
  78. package/src/assets/img/toolbar-action-saveSequence.svg +5 -5
  79. package/src/assets/img/toolbar-action-send-file.svg +5 -5
  80. package/src/assets/img/toolbar-action-settle.svg +7 -7
  81. package/src/assets/img/toolbar-action-share.svg +5 -5
  82. package/src/assets/img/toolbar-action-submitForApproval.svg +4 -4
  83. package/src/assets/img/toolbar-action-sync.svg +4 -4
  84. package/src/assets/img/toolbar-action-template.svg +6 -6
  85. package/src/assets/img/toolbar-action-workflow.svg +9 -9
@@ -258,10 +258,10 @@ export class PortletTypeNewComponent {
258
258
  }
259
259
  PortletTypeNewComponent.decorators = [
260
260
  { type: Component, args: [{
261
- selector: "kt-portlet-type-new",
261
+ selector: "rs-portlet-type-new",
262
262
  template: "<div class=\"portlet-row row\">\r\n\t<ng-container *ngFor=\"let item of portletList\">\r\n\t\t<div\r\n\t\t\tclass=\"portlet-wrapper\"\r\n\t\t\t*ngIf=\"\r\n\t\t\t\titem.portletCode == 'financialTable' ? getFinancialType() : true\r\n\t\t\t\"\r\n\t\t>\r\n\t\t\t<div\r\n\t\t\t\tclass=\"portlet\"\r\n\t\t\t\t[class]=\"item.portletCode + '-type'\"\r\n\t\t\t\tmatTooltip=\"{{ setTooltip(item) }}\"\r\n\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\tenabled: item.portletCode !== type,\r\n\t\t\t\t\tselected: item.portletCode === type,\r\n\t\t\t\t\tdisabled:\r\n\t\t\t\t\t\tdisabledHistoricalIRR &&\r\n\t\t\t\t\t\titem.portletCode === 'historicalIRR'\r\n\t\t\t\t}\"\r\n\t\t\t\t(click)=\"selectPortletType(item.portletCode)\"\r\n\t\t\t></div>\r\n\t\t\t<div\r\n\t\t\t\t*ngIf=\"item.portletCode === 'newchart'\"\r\n\t\t\t\tstyle=\"position: relative; top: -4px\"\r\n\t\t\t\tclass=\"portlet-label\"\r\n\t\t\t></div>\r\n\t\t</div>\r\n\t</ng-container>\r\n</div>\r\n",
263
263
  changeDetection: ChangeDetectionStrategy.OnPush,
264
- styles: [".portlet-row{display:flex;margin-bottom:10px;justify-content:left;padding:0 16px}.portlet-row .portlet-wrapper{width:20%;display:flex;flex-direction:column;align-items:center;cursor:pointer;margin-bottom:10px;margin-top:5px}.portlet-row .portlet-wrapper .portlet{width:32px;height:32px;background-color:#44566c}.portlet-row .portlet-wrapper .portlet.enabled{background-color:#fff}.portlet-row .portlet-wrapper .portlet.disabled{background-color:#fff;opacity:.4;pointer-events:none}.portlet-row .portlet-wrapper .portlet.selected{background-color:#5867dd;border:5px solid rgba(80,102,181,.5);border-radius:2px}.portlet-row .portlet-wrapper .portlet.selected.table-type{background-image:url(../../../../assets/img/dashboard_icon/table-3-white.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.selected.transpose-type{background-image:url(../../../../assets/img/dashboard_icon/transpose-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.pivot-type{background-image:url(../../../../assets/img/dashboard_icon/pivot-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newchart-type{background-image:url(../../../../assets/img/dashboard_icon/pivot-chart-active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.geo-type{background-image:url(../../../../assets/img/dashboard_icon/geo-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.pie-type{background-image:url(../../../../assets/img/dashboard_icon/pie-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.bar-type{background-image:url(../../../../assets/img/dashboard_icon/bar-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.column-type{background-image:url(../../../../assets/img/dashboard_icon/pivot_column_active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newcolumn-type{background-image:url(../../../../assets/img/dashboard_icon/column-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.line-type{background-image:url(../../../../assets/img/dashboard_icon/pivot_line_active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newline-type{background-image:url(../../../../assets/img/dashboard_icon/trade-up-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.area-type{background-image:url(../../../../assets/img/dashboard_icon/area-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.multiSeries-type{background-image:url(../../../../assets/img/dashboard_icon/multi-series-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.radar-type{background-image:url(../../../../assets/img/dashboard_icon/radar-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.financialTable-type{background-image:url(../../../../assets/img/dashboard_icon/ftable-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newcolumnline-type{background-image:url(../../../../assets/img/dashboard_icon/chart-combined-active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.historicalIRR-type{background-image:url(../../../../assets/img/dashboard_icon/historic-IRR-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.table-type{background-image:url(../../../../assets/img/dashboard_icon/table-3.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.transpose-type{background-image:url(../../../../assets/img/dashboard_icon/transpose.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.pivot-type{background-image:url(../../../../assets/img/dashboard_icon/pivot.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:32px!important;height:32px!important;position:relative}.portlet-row .portlet-wrapper .portlet.newchart-type{background-image:url(../../../../assets/img/dashboard_icon/pivot-chart.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:32px!important;height:32px!important;position:relative}.portlet-row .portlet-wrapper .portlet.geo-type{background-image:url(../../../../assets/img/dashboard_icon/geo.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.pie-type{background-image:url(../../../../assets/img/dashboard_icon/pie.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.bar-type{background-image:url(../../../../assets/img/dashboard_icon/bar.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.column-type{background-image:url(../../../../assets/img/dashboard_icon/pivot_column.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:28px!important;height:28px!important;position:relative;top:1px}.portlet-row .portlet-wrapper .portlet.newcolumn-type{background-image:url(../../../../assets/img/dashboard_icon/column.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.line-type{background-image:url(../../../../assets/img/dashboard_icon/pivot_line.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:28px!important;height:28px!important;position:relative;top:1px}.portlet-row .portlet-wrapper .portlet.newline-type{background-image:url(../../../../assets/img/dashboard_icon/trade-up.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.area-type{background-image:url(../../../../assets/img/dashboard_icon/area.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.multiSeries-type{background-image:url(../../../../assets/img/dashboard_icon/multi-series.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.radar-type{background-image:url(../../../../assets/img/dashboard_icon/radar.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.financialTable-type{background-image:url(../../../../assets/img/dashboard_icon/ftable.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.newcolumnline-type{background-image:url(../../../../assets/img/dashboard_icon/chart-combined.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.historicalIRR-type{background-image:url(../../../../assets/img/dashboard_icon/historic-IRR.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet-label{width:100%;text-align:center;font-weight:500;color:#44566c;font-size:12px}"]
264
+ styles: [".portlet-row{display:flex;margin-bottom:10px;justify-content:left;padding:0 16px}.portlet-row .portlet-wrapper{width:20%;display:flex;flex-direction:column;align-items:center;cursor:pointer;margin-bottom:10px;margin-top:5px}.portlet-row .portlet-wrapper .portlet{width:32px;height:32px;background-color:#44566c}.portlet-row .portlet-wrapper .portlet.enabled{background-color:#fff}.portlet-row .portlet-wrapper .portlet.disabled{background-color:#fff;opacity:.4;pointer-events:none}.portlet-row .portlet-wrapper .portlet.selected{background-color:#5867dd;border:5px solid rgba(80,102,181,.5);border-radius:2px}.portlet-row .portlet-wrapper .portlet.selected.table-type{background-image:url(../../assets/img/dashboard_icon/table-3-white.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.selected.transpose-type{background-image:url(../../assets/img/dashboard_icon/transpose-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.pivot-type{background-image:url(../../assets/img/dashboard_icon/pivot-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newchart-type{background-image:url(../../assets/img/dashboard_icon/pivot-chart-active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.geo-type{background-image:url(../../assets/img/dashboard_icon/geo-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.pie-type{background-image:url(../../assets/img/dashboard_icon/pie-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.bar-type{background-image:url(../../assets/img/dashboard_icon/bar-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.column-type{background-image:url(../../assets/img/dashboard_icon/pivot_column_active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newcolumn-type{background-image:url(../../assets/img/dashboard_icon/column-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.line-type{background-image:url(../../assets/img/dashboard_icon/pivot_line_active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newline-type{background-image:url(../../assets/img/dashboard_icon/trade-up-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.area-type{background-image:url(../../assets/img/dashboard_icon/area-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.multiSeries-type{background-image:url(../../assets/img/dashboard_icon/multi-series-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.radar-type{background-image:url(../../assets/img/dashboard_icon/radar-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.financialTable-type{background-image:url(../../assets/img/dashboard_icon/ftable-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.newcolumnline-type{background-image:url(../../assets/img/dashboard_icon/chart-combined-active.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.selected.historicalIRR-type{background-image:url(../../assets/img/dashboard_icon/historic-IRR-white.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.table-type{background-image:url(../../assets/img/dashboard_icon/table-3.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.transpose-type{background-image:url(../../assets/img/dashboard_icon/transpose.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.pivot-type{background-image:url(../../assets/img/dashboard_icon/pivot.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:32px!important;height:32px!important;position:relative}.portlet-row .portlet-wrapper .portlet.newchart-type{background-image:url(../../assets/img/dashboard_icon/pivot-chart.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:32px!important;height:32px!important;position:relative}.portlet-row .portlet-wrapper .portlet.geo-type{background-image:url(../../assets/img/dashboard_icon/geo.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.pie-type{background-image:url(../../assets/img/dashboard_icon/pie.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.bar-type{background-image:url(../../assets/img/dashboard_icon/bar.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.column-type{background-image:url(../../assets/img/dashboard_icon/pivot_column.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:28px!important;height:28px!important;position:relative;top:1px}.portlet-row .portlet-wrapper .portlet.newcolumn-type{background-image:url(../../assets/img/dashboard_icon/column.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.line-type{background-image:url(../../assets/img/dashboard_icon/pivot_line.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%;width:28px!important;height:28px!important;position:relative;top:1px}.portlet-row .portlet-wrapper .portlet.newline-type{background-image:url(../../assets/img/dashboard_icon/trade-up.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.area-type{background-image:url(../../assets/img/dashboard_icon/area.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.multiSeries-type{background-image:url(../../assets/img/dashboard_icon/multi-series.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.radar-type{background-image:url(../../assets/img/dashboard_icon/radar.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.financialTable-type{background-image:url(../../assets/img/dashboard_icon/ftable.svg);background-repeat:no-repeat;background-position:center;background-size:100% 100%}.portlet-row .portlet-wrapper .portlet.newcolumnline-type{background-image:url(../../assets/img/dashboard_icon/chart-combined.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet.historicalIRR-type{background-image:url(../../assets/img/dashboard_icon/historic-IRR.svg);background-repeat:no-repeat;background-position:center}.portlet-row .portlet-wrapper .portlet-label{width:100%;text-align:center;font-weight:500;color:#44566c;font-size:12px}"]
265
265
  }] }
266
266
  ];
267
267
  /** @nocollapse */
@@ -316,4 +316,4 @@ if (false) {
316
316
  */
317
317
  PortletTypeNewComponent.prototype.ref;
318
318
  }
319
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGxldC10eXBlLW5ldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2Rhc2hib2FyZC9zaWRlYmFyLWljb25saXN0L3BvcnRsZXQtdHlwZS1uZXcvcG9ydGxldC10eXBlLW5ldy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ04sU0FBUyxFQUVULE1BQU0sRUFDTixZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixLQUFLLEdBR0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFTM0QsTUFBTSxPQUFPLHVCQUF1Qjs7Ozs7SUFZbkMsWUFDUyxnQkFBa0MsRUFDbEMsR0FBc0I7UUFEdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWJSLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBRy9CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU1uQyxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFNMUMsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNsQjtnQkFDQyxXQUFXLEVBQUUsT0FBTztnQkFDcEIsV0FBVyxFQUFFLE9BQU87YUFDcEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsV0FBVztnQkFDeEIsV0FBVyxFQUFFLFdBQVc7YUFDeEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsT0FBTztnQkFDcEIsV0FBVyxFQUFFLE9BQU87YUFDcEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsS0FBSztnQkFDbEIsV0FBVyxFQUFFLEtBQUs7YUFDbEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsS0FBSztnQkFDbEIsV0FBVyxFQUFFLEtBQUs7YUFDbEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsUUFBUTtnQkFDckIsV0FBVyxFQUFFLFFB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QU87U0FDUDtRQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEQsQ0FBQzs7O1lBak9ELFNBQVMsU0FBQztnQkFDVixRQUFRLEVBQUUscUJBQXFCO2dCQUMvQix1N0JBQWdEO2dCQUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDL0M7Ozs7WUFSUSxnQkFBZ0I7WUFOeEIsaUJBQWlCOzs7MkJBZ0JoQixLQUFLLFNBQUMsY0FBYztzQkFDcEIsS0FBSzt3QkFDTCxLQUFLOzBCQUNMLE1BQU07Ozs7SUFIUCwrQ0FBeUM7O0lBQ3pDLDBDQUFpQjs7SUFDakIsNENBQW1COztJQUNuQiw4Q0FBMkM7Ozs7O0lBQzNDLDJDQUFpQjs7SUFDakIsOENBQW1COzs7OztJQUNuQiwyQ0FBaUI7O0lBQ2pCLDhDQUFtQjs7SUFDbkIsdUNBQVk7Ozs7O0lBQ1osZ0RBQTJDOzs7OztJQUcxQyxtREFBMEM7Ozs7O0lBQzFDLHNDQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdENoYW5nZURldGVjdG9yUmVmLFxyXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG5cdElucHV0LFxyXG5cdE9uQ2hhbmdlcyxcclxuXHRTaW1wbGVDaGFuZ2VzLFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IERhc2hib2FyZFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vZGFzaGJvYXJkLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiBcImt0LXBvcnRsZXQtdHlwZS1uZXdcIixcclxuXHR0ZW1wbGF0ZVVybDogXCIuL3BvcnRsZXQtdHlwZS1uZXcuY29tcG9uZW50Lmh0bWxcIixcclxuXHRzdHlsZVVybHM6IFtcIi4vcG9ydGxldC10eXBlLW5ldy5jb21wb25lbnQuc2Nzc1wiXSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcnRsZXRUeXBlTmV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cdEBJbnB1dChcImRhdGFNYXJ0Q29kZVwiKSBkYXRhTWFydENvZGUgPSBcIlwiO1xyXG5cdEBJbnB1dCgpIHBvcnRsZXQ7XHJcblx0QElucHV0KCkgZGFzaGJvYXJkO1xyXG5cdEBPdXRwdXQoKSBwb3J0bGV0VHlwZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHRwcml2YXRlIGRhdGFtYXJ0O1xyXG5cdHB1YmxpYyB0cmFuc2xhdGlvbjtcclxuXHRwcml2YXRlIHVzZXJJbmZvO1xyXG5cdHB1YmxpYyBwb3J0bGV0TGlzdDtcclxuXHRwdWJsaWMgdHlwZTtcclxuXHRwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBEYXNoYm9hcmRTZXJ2aWNlOiBEYXNoYm9hcmRTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmXHJcblx0KSB7XHJcblx0XHR0aGlzLnBvcnRsZXRMaXN0ID0gW1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiVGFibGVcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJ0YWJsZVwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiVHJhbnNwb3NlXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwidHJhbnNwb3NlXCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwb3J0bGV0TmFtZTogXCJQaXZvdFwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcInBpdm90XCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwb3J0bGV0TmFtZTogXCJQaWVcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJwaWVcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIkJhclwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcImJhclwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiQ29sdW1uXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwiY29sdW1uXCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwb3J0bGV0TmFtZTogXCJMaW5lXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwibGluZVwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiQXJlYVwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcImFyZWFcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIlJhZGFyXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwicmFkYXJcIixcclxuXHRcdFx0fSxcclxuXHRcdF07XHJcblxyXG5cdFx0dGhpcy5wb3J0bGV0TGlzdCA9IHRoaXMucG9ydGxldExpc3QuY29uY2F0KFtcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIk5ld0NoYXJ0XCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwibmV3Y2hhcnRcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIk5ld0NvbHVtblwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcIm5ld2NvbHVtblwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiTmV3TGluZVwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcIm5ld2xpbmVcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIk5ld0NvbHVtbkxpbmVcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJuZXdjb2x1bW5saW5lXCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdC8vIFNNUDItMTc1NzgvMTc2NTTvvIzku4UgZnVuZC9jb21wYW55IGhpc3RvcmljYWwgSVJSIOWPr+mAieaLqVxyXG5cdFx0XHQvLyBUT0RPOiDpnIDopoHnoa7lrpogZnVuZC9jb21wYW55IGhpc3RvcmljYWwgSVJSIGNvZGVcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIkhpc3RvcmljYWxJUlJcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJoaXN0b3JpY2FsSVJSXCIsXHJcblx0XHRcdH0sXHJcblx0XHRdKTtcclxuXHRcdGNvbnN0IGV4Y2x1ZGVMaXN0ID0gW1wiUGllXCIsIFwiQmFyXCIsIFwiQ29sdW1uXCIsIFwiTGluZVwiLCBcIkFyZWFcIiwgXCJSYWRhclwiXTtcclxuXHRcdHRoaXMucG9ydGxldExpc3QgPVxyXG5cdFx0XHR0aGlzLnBvcnRsZXRMaXN0LmZpbHRlcihcclxuXHRcdFx0XHQoaXRlbSkgPT4gIWV4Y2x1ZGVMaXN0LmluY2x1ZGVzKGl0ZW0ucG9ydGxldE5hbWUpXHJcblx0XHRcdCkgfHwgW107XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpIHtcclxuXHRcdHRoaXMuZ2V0SW5mbygpO1xyXG5cdFx0aWYgKHRoaXMucG9ydGxldCAmJiB0aGlzLnBvcnRsZXQuZmlndXJlQ29kZSkge1xyXG5cdFx0XHRjb25zdCBjb25maWdTdHIgPSB0aGlzLnBvcnRsZXQuY29uZmlnO1xyXG5cdFx0XHRpZiAoIWNvbmZpZ1N0cikge1xyXG5cdFx0XHRcdHJldHVybjtcclxuXHRcdFx0fVxyXG5cdFx0XHRjb25zdCBjb25maWcgPSBKU09OLnBhcnNlKGNvbmZpZ1N0cik7XHJcblx0XHRcdHRoaXMudHlwZSA9IGNvbmZpZy5wb3J0bGV0VHlwZTtcclxuXHRcdH1cclxuXHRcdHRoaXMuZGF0YW1hcnQgPSBKU09OLnBhcnNlKHRoaXMuZGFzaGJvYXJkLmNvbmZpZykuZGF0YW1hcnRWaWV3Q29kZTtcclxuXHR9XHJcblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcblx0XHRcdHRoaXMuRGFzaGJvYXJkU2VydmljZS5nZXRwb3J0bGV0RWRpdCgpLnN1YnNjcmliZSgoc3RhdHVzKSA9PiB7XHJcblx0XHRcdFx0aWYgKHN0YXR1cyAmJiB0aGlzLnBvcnRsZXQpIHtcclxuXHRcdFx0XHRcdGNvbnN0IGNvbmZpZ1N0ciA9IHRoaXMucG9ydGxldC5jb25maWc7XHJcblx0XHRcdFx0XHRpZiAoIWNvbmZpZ1N0cikge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRjb25zdCBjb25maWcgPSBKU09OLnBhcnNlKGNvbmZpZ1N0cik7XHJcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSBjb25maWcucG9ydGxldFR5cGU7XHJcblx0XHRcdFx0XHQvLyB0aGlzLnBvcnRsZXRUeXBlLmVtaXQodGhpcy50eXBlKTtcclxuXHRcdFx0XHRcdHRoaXMuZGF0YW1hcnQgPSBjb25maWcuZGF0YW1hcnRWaWV3Q29kZTtcclxuXHRcdFx0XHRcdHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG5cdFx0XHRcdFx0dGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSlcclxuXHRcdCk7XHJcblx0XHQvL01pY2hhZWwgMjAyMDA1MjYgY2xlYXIgb3B0aW9ucyBkYXRhXHJcblx0XHR0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuXHRcdFx0dGhpcy5EYXNoYm9hcmRTZXJ2aWNlLmdldFJlc2V0YnRuKCkuc3Vic2NyaWJlKChzdGF0dXMpID0+IHtcclxuXHRcdFx0XHRpZiAoc3RhdHVzKSB7XHJcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSBcIlwiO1xyXG5cdFx0XHRcdFx0dGhpcy5wb3J0bGV0VHlwZS5lbWl0KHRoaXMudHlwZSk7XHJcblx0XHRcdFx0XHR0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG5cdFx0XHR0aGlzLkRhc2hib2FyZFNlcnZpY2UuZ2V0UHVzaGJ0bigpLnN1YnNjcmliZSgoaWQpID0+IHtcclxuXHRcdFx0XHRpZiAodGhpcy5kYXNoYm9hcmQgJiYgdGhpcy5kYXNoYm9hcmQuaWQgPT09IGlkKSB7XHJcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSBcIlwiO1xyXG5cdFx0XHRcdFx0dGhpcy5wb3J0bGV0VHlwZS5lbWl0KHRoaXMudHlwZSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG5cdFx0aWYgKGNoYW5nZXMuZGF0YU1hcnRDb2RlKSB7XHJcblx0XHRcdGlmICh0aGlzLmRpc2FibGVkSGlzdG9yaWNhbElSUiAmJiB0aGlzLnR5cGUgPT09IFwiaGlzdG9yaWNhbElSUlwiKSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RQb3J0bGV0VHlwZShudWxsKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcclxuXHR9XHJcblxyXG5cdGdldCBkaXNhYmxlZEhpc3RvcmljYWxJUlIoKSB7XHJcblx0XHRyZXR1cm4gIVtcclxuXHRcdFx0XCJGdW5kSGlzdG9yaWNhbENhc2hmbG93SVJSXCIsXHJcblx0XHRcdFwiRnVuZEhpc3RvcmljYWxHcm9zc0lSUlwiLFxyXG5cdFx0XS5pbmNsdWRlcyh0aGlzLmRhdGFNYXJ0Q29kZSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgc2V0VG9vbHRpcChpdGVtKSB7XHJcblx0XHRpZiAoIWl0ZW0pIHJldHVybiBcIlwiO1xyXG5cdFx0c3dpdGNoIChpdGVtLnBvcnRsZXROYW1lKSB7XHJcblx0XHRcdGNhc2UgXCJUYWJsZVwiOlxyXG5cdFx0XHRcdHJldHVybiB0aGlzLnRyYW5zbGF0aW9uLlRBQkxFIHx8IFwiLlRBQkxFXCI7XHJcblx0XHRcdGNhc2UgXCJUcmFuc3Bvc2VcIjpcclxuXHRcdFx0XHRyZXR1cm4gYCR7dGhpcy50cmFuc2xhdGlvbi5UUkFOU1BPU0UgfHwgXCIuVFJBTlNQT1NFXCJ9ICR7XHJcblx0XHRcdFx0XHR0aGlzLnRyYW5zbGF0aW9uLlRBQkxFIHx8IFwiLlRBQkxFXCJcclxuXHRcdFx0XHR9YDtcclxuXHRcdFx0Y2FzZSBcIlBpdm90XCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke3RoaXMudHJhbnNsYXRpb24uUElWT1QgfHwgXCIuUElWT1RcIn0gJHtcclxuXHRcdFx0XHRcdHRoaXMudHJhbnNsYXRpb24uVEFCTEUgfHwgXCIuVEFCTEVcIlxyXG5cdFx0XHRcdH1gO1xyXG5cdFx0XHRjYXNlIFwiTmV3Q2hhcnRcIjpcclxuXHRcdFx0XHRyZXR1cm4gYCR7dGhpcy50cmFuc2xhdGlvbi5QSVZPVCB8fCBcIi5QSVZPVFwifSAke1xyXG5cdFx0XHRcdFx0dGhpcy50cmFuc2xhdGlvbi5DT01QQU5ZX0NIQVJUIHx8IFwiLkNPTVBBTllfQ0hBUlRcIlxyXG5cdFx0XHRcdH1gO1xyXG5cdFx0XHRjYXNlIFwiTmV3Q29sdW1uXCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke1xyXG5cdFx0XHRcdFx0dGhpcy50cmFuc2xhdGlvbi5DTFVTVEVSRURfQ09MVU1OIHx8IFwiLkNMVVNURVJFRF9DT0xVTU5cIlxyXG5cdFx0XHRcdH0gJHt0aGlzLnRyYW5zbGF0aW9uLkNPTVBBTllfQ0hBUlQgfHwgXCIuQ09NUEFOWV9DSEFSVFwifWA7XHJcblx0XHRcdGNhc2UgXCJOZXdMaW5lXCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke3RoaXMudHJhbnNsYXRpb24uTElORSB8fCBcIi5MSU5FXCJ9ICR7XHJcblx0XHRcdFx0XHR0aGlzLnRyYW5zbGF0aW9uLkNPTVBBTllfQ0hBUlQgfHwgXCIuQ09NUEFOWV9DSEFSVFwiXHJcblx0XHRcdFx0fWA7XHJcblx0XHRcdGNhc2UgXCJOZXdDb2x1bW5MaW5lXCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke3RoaXMudHJhbnNsYXRpb24uTElORSB8fCBcIi5MSU5FXCJ9ICR7XHJcblx0XHRcdFx0XHR0aGlzLnRyYW5zbGF0aW9uLkFORCB8fCBcIi5BTkRcIlxyXG5cdFx0XHRcdH0gJHt0aGlzLnRyYW5zbGF0aW9uLkNMVVNURVJFRF9DT0xVTU4gfHwgXCIuQ0xVU1RFUkVEX0NPTFVNTlwifSAke1xyXG5cdFx0XHRcdFx0dGhpcy50cmFuc2xhdGlvbi5DT01QQU5ZX0NIQVJUIHx8IFwiLkNPTVBBTllfQ0hBUlRcIlxyXG5cdFx0XHRcdH1gO1xyXG5cdFx0XHRjYXNlIFwiSGlzdG9yaWNhbElSUlwiOlxyXG5cdFx0XHRcdHJldHVybiBgJHt0aGlzLnRyYW5zbGF0aW9uLkhJU1RPUklDQUx9ICR7dGhpcy50cmFuc2xhdGlvbi5JUlJ9YDtcclxuXHRcdFx0ZGVmYXVsdDpcclxuXHRcdFx0XHRyZXR1cm4gXCJcIjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyBzZWxlY3RQb3J0bGV0VHlwZShwb3J0bGV0Q29kZSkge1xyXG5cdFx0dGhpcy50eXBlID0gcG9ydGxldENvZGU7XHJcblx0XHR0aGlzLnBvcnRsZXRUeXBlLmVtaXQocG9ydGxldENvZGUpO1xyXG5cdH1cclxuXHRwcml2YXRlIGdldEluZm8oKSB7XHJcblx0XHR0aGlzLnRyYW5zbGF0aW9uID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInRyYW5zbGF0aW9uXCIpKTtcclxuXHRcdHRoaXMudXNlckluZm8gPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwidXNlckluZm9cIikpO1xyXG5cdH1cclxuXHRwdWJsaWMgZ2V0RmluYW5jaWFsVHlwZSgpIHtcclxuXHRcdGlmICh0aGlzLmRhdGFtYXJ0KSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmRhdGFtYXJ0LnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZihcImZpbmFuY2lhbFwiKSA+IC0xXHJcblx0XHRcdFx0PyB0cnVlXHJcblx0XHRcdFx0OiBmYWxzZTtcclxuXHRcdH1cclxuXHR9XHJcblx0cHVibGljIGdldEZQUFR5cGUoY29kZSkge1xyXG5cdFx0bGV0IHR5cGVfID0gW1xyXG5cdFx0XHRcInRhYmxlXCIsXHJcblx0XHRcdFwicGl2b3RcIixcclxuXHRcdFx0XCJwaWVcIixcclxuXHRcdFx0XCJiYXJcIixcclxuXHRcdFx0XCJjb2x1bW5cIixcclxuXHRcdFx0XCJsaW5lXCIsXHJcblx0XHRcdFwiYXJlYVwiLFxyXG5cdFx0XHRcIm11bHRpU2VyaWVzXCIsXHJcblx0XHRcdFwiZ2VvXCIsXHJcblx0XHRcdFwicmFkYXJcIixcclxuXHRcdF07XHJcblx0XHRyZXR1cm4gdHlwZV8uaW5kZXhPZihjb2RlKSA+IC0xID8gdHJ1ZSA6IGZhbHNlO1xyXG5cdH1cclxufVxyXG4iXX0=
319
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGxldC10eXBlLW5ldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2Rhc2hib2FyZC9zaWRlYmFyLWljb25saXN0L3BvcnRsZXQtdHlwZS1uZXcvcG9ydGxldC10eXBlLW5ldy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ04sU0FBUyxFQUVULE1BQU0sRUFDTixZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixLQUFLLEdBR0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFTM0QsTUFBTSxPQUFPLHVCQUF1Qjs7Ozs7SUFZbkMsWUFDUyxnQkFBa0MsRUFDbEMsR0FBc0I7UUFEdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWJSLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBRy9CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU1uQyxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFNMUMsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNsQjtnQkFDQyxXQUFXLEVBQUUsT0FBTztnQkFDcEIsV0FBVyxFQUFFLE9BQU87YUFDcEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsV0FBVztnQkFDeEIsV0FBVyxFQUFFLFdBQVc7YUFDeEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsT0FBTztnQkFDcEIsV0FBVyxFQUFFLE9BQU87YUFDcEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsS0FBSztnQkFDbEIsV0FBVyxFQUFFLEtBQUs7YUFDbEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsS0FBSztnQkFDbEIsV0FBVyxFQUFFLEtBQUs7YUFDbEI7WUFDRDtnQkFDQyxXQUFXLEVBQUUsUUFBUTtnQkFDckIsV0FBVyxFQUFFLFFB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QU87U0FDUDtRQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEQsQ0FBQzs7O1lBak9ELFNBQVMsU0FBQztnQkFDVixRQUFRLEVBQUUscUJBQXFCO2dCQUMvQix1N0JBQWdEO2dCQUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDL0M7Ozs7WUFSUSxnQkFBZ0I7WUFOeEIsaUJBQWlCOzs7MkJBZ0JoQixLQUFLLFNBQUMsY0FBYztzQkFDcEIsS0FBSzt3QkFDTCxLQUFLOzBCQUNMLE1BQU07Ozs7SUFIUCwrQ0FBeUM7O0lBQ3pDLDBDQUFpQjs7SUFDakIsNENBQW1COztJQUNuQiw4Q0FBMkM7Ozs7O0lBQzNDLDJDQUFpQjs7SUFDakIsOENBQW1COzs7OztJQUNuQiwyQ0FBaUI7O0lBQ2pCLDhDQUFtQjs7SUFDbkIsdUNBQVk7Ozs7O0lBQ1osZ0RBQTJDOzs7OztJQUcxQyxtREFBMEM7Ozs7O0lBQzFDLHNDQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdENoYW5nZURldGVjdG9yUmVmLFxyXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG5cdElucHV0LFxyXG5cdE9uQ2hhbmdlcyxcclxuXHRTaW1wbGVDaGFuZ2VzLFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IERhc2hib2FyZFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vZGFzaGJvYXJkLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiBcInJzLXBvcnRsZXQtdHlwZS1uZXdcIixcclxuXHR0ZW1wbGF0ZVVybDogXCIuL3BvcnRsZXQtdHlwZS1uZXcuY29tcG9uZW50Lmh0bWxcIixcclxuXHRzdHlsZVVybHM6IFtcIi4vcG9ydGxldC10eXBlLW5ldy5jb21wb25lbnQuc2Nzc1wiXSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcnRsZXRUeXBlTmV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cdEBJbnB1dChcImRhdGFNYXJ0Q29kZVwiKSBkYXRhTWFydENvZGUgPSBcIlwiO1xyXG5cdEBJbnB1dCgpIHBvcnRsZXQ7XHJcblx0QElucHV0KCkgZGFzaGJvYXJkO1xyXG5cdEBPdXRwdXQoKSBwb3J0bGV0VHlwZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHRwcml2YXRlIGRhdGFtYXJ0O1xyXG5cdHB1YmxpYyB0cmFuc2xhdGlvbjtcclxuXHRwcml2YXRlIHVzZXJJbmZvO1xyXG5cdHB1YmxpYyBwb3J0bGV0TGlzdDtcclxuXHRwdWJsaWMgdHlwZTtcclxuXHRwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBEYXNoYm9hcmRTZXJ2aWNlOiBEYXNoYm9hcmRTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmXHJcblx0KSB7XHJcblx0XHR0aGlzLnBvcnRsZXRMaXN0ID0gW1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiVGFibGVcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJ0YWJsZVwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiVHJhbnNwb3NlXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwidHJhbnNwb3NlXCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwb3J0bGV0TmFtZTogXCJQaXZvdFwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcInBpdm90XCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwb3J0bGV0TmFtZTogXCJQaWVcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJwaWVcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIkJhclwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcImJhclwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiQ29sdW1uXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwiY29sdW1uXCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwb3J0bGV0TmFtZTogXCJMaW5lXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwibGluZVwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiQXJlYVwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcImFyZWFcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIlJhZGFyXCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwicmFkYXJcIixcclxuXHRcdFx0fSxcclxuXHRcdF07XHJcblxyXG5cdFx0dGhpcy5wb3J0bGV0TGlzdCA9IHRoaXMucG9ydGxldExpc3QuY29uY2F0KFtcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIk5ld0NoYXJ0XCIsXHJcblx0XHRcdFx0cG9ydGxldENvZGU6IFwibmV3Y2hhcnRcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIk5ld0NvbHVtblwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcIm5ld2NvbHVtblwiLFxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cG9ydGxldE5hbWU6IFwiTmV3TGluZVwiLFxyXG5cdFx0XHRcdHBvcnRsZXRDb2RlOiBcIm5ld2xpbmVcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIk5ld0NvbHVtbkxpbmVcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJuZXdjb2x1bW5saW5lXCIsXHJcblx0XHRcdH0sXHJcblx0XHRcdC8vIFNNUDItMTc1NzgvMTc2NTTvvIzku4UgZnVuZC9jb21wYW55IGhpc3RvcmljYWwgSVJSIOWPr+mAieaLqVxyXG5cdFx0XHQvLyBUT0RPOiDpnIDopoHnoa7lrpogZnVuZC9jb21wYW55IGhpc3RvcmljYWwgSVJSIGNvZGVcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBvcnRsZXROYW1lOiBcIkhpc3RvcmljYWxJUlJcIixcclxuXHRcdFx0XHRwb3J0bGV0Q29kZTogXCJoaXN0b3JpY2FsSVJSXCIsXHJcblx0XHRcdH0sXHJcblx0XHRdKTtcclxuXHRcdGNvbnN0IGV4Y2x1ZGVMaXN0ID0gW1wiUGllXCIsIFwiQmFyXCIsIFwiQ29sdW1uXCIsIFwiTGluZVwiLCBcIkFyZWFcIiwgXCJSYWRhclwiXTtcclxuXHRcdHRoaXMucG9ydGxldExpc3QgPVxyXG5cdFx0XHR0aGlzLnBvcnRsZXRMaXN0LmZpbHRlcihcclxuXHRcdFx0XHQoaXRlbSkgPT4gIWV4Y2x1ZGVMaXN0LmluY2x1ZGVzKGl0ZW0ucG9ydGxldE5hbWUpXHJcblx0XHRcdCkgfHwgW107XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpIHtcclxuXHRcdHRoaXMuZ2V0SW5mbygpO1xyXG5cdFx0aWYgKHRoaXMucG9ydGxldCAmJiB0aGlzLnBvcnRsZXQuZmlndXJlQ29kZSkge1xyXG5cdFx0XHRjb25zdCBjb25maWdTdHIgPSB0aGlzLnBvcnRsZXQuY29uZmlnO1xyXG5cdFx0XHRpZiAoIWNvbmZpZ1N0cikge1xyXG5cdFx0XHRcdHJldHVybjtcclxuXHRcdFx0fVxyXG5cdFx0XHRjb25zdCBjb25maWcgPSBKU09OLnBhcnNlKGNvbmZpZ1N0cik7XHJcblx0XHRcdHRoaXMudHlwZSA9IGNvbmZpZy5wb3J0bGV0VHlwZTtcclxuXHRcdH1cclxuXHRcdHRoaXMuZGF0YW1hcnQgPSBKU09OLnBhcnNlKHRoaXMuZGFzaGJvYXJkLmNvbmZpZykuZGF0YW1hcnRWaWV3Q29kZTtcclxuXHR9XHJcblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcblx0XHRcdHRoaXMuRGFzaGJvYXJkU2VydmljZS5nZXRwb3J0bGV0RWRpdCgpLnN1YnNjcmliZSgoc3RhdHVzKSA9PiB7XHJcblx0XHRcdFx0aWYgKHN0YXR1cyAmJiB0aGlzLnBvcnRsZXQpIHtcclxuXHRcdFx0XHRcdGNvbnN0IGNvbmZpZ1N0ciA9IHRoaXMucG9ydGxldC5jb25maWc7XHJcblx0XHRcdFx0XHRpZiAoIWNvbmZpZ1N0cikge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRjb25zdCBjb25maWcgPSBKU09OLnBhcnNlKGNvbmZpZ1N0cik7XHJcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSBjb25maWcucG9ydGxldFR5cGU7XHJcblx0XHRcdFx0XHQvLyB0aGlzLnBvcnRsZXRUeXBlLmVtaXQodGhpcy50eXBlKTtcclxuXHRcdFx0XHRcdHRoaXMuZGF0YW1hcnQgPSBjb25maWcuZGF0YW1hcnRWaWV3Q29kZTtcclxuXHRcdFx0XHRcdHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG5cdFx0XHRcdFx0dGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSlcclxuXHRcdCk7XHJcblx0XHQvL01pY2hhZWwgMjAyMDA1MjYgY2xlYXIgb3B0aW9ucyBkYXRhXHJcblx0XHR0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuXHRcdFx0dGhpcy5EYXNoYm9hcmRTZXJ2aWNlLmdldFJlc2V0YnRuKCkuc3Vic2NyaWJlKChzdGF0dXMpID0+IHtcclxuXHRcdFx0XHRpZiAoc3RhdHVzKSB7XHJcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSBcIlwiO1xyXG5cdFx0XHRcdFx0dGhpcy5wb3J0bGV0VHlwZS5lbWl0KHRoaXMudHlwZSk7XHJcblx0XHRcdFx0XHR0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG5cdFx0XHR0aGlzLkRhc2hib2FyZFNlcnZpY2UuZ2V0UHVzaGJ0bigpLnN1YnNjcmliZSgoaWQpID0+IHtcclxuXHRcdFx0XHRpZiAodGhpcy5kYXNoYm9hcmQgJiYgdGhpcy5kYXNoYm9hcmQuaWQgPT09IGlkKSB7XHJcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSBcIlwiO1xyXG5cdFx0XHRcdFx0dGhpcy5wb3J0bGV0VHlwZS5lbWl0KHRoaXMudHlwZSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG5cdFx0aWYgKGNoYW5nZXMuZGF0YU1hcnRDb2RlKSB7XHJcblx0XHRcdGlmICh0aGlzLmRpc2FibGVkSGlzdG9yaWNhbElSUiAmJiB0aGlzLnR5cGUgPT09IFwiaGlzdG9yaWNhbElSUlwiKSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RQb3J0bGV0VHlwZShudWxsKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcclxuXHR9XHJcblxyXG5cdGdldCBkaXNhYmxlZEhpc3RvcmljYWxJUlIoKSB7XHJcblx0XHRyZXR1cm4gIVtcclxuXHRcdFx0XCJGdW5kSGlzdG9yaWNhbENhc2hmbG93SVJSXCIsXHJcblx0XHRcdFwiRnVuZEhpc3RvcmljYWxHcm9zc0lSUlwiLFxyXG5cdFx0XS5pbmNsdWRlcyh0aGlzLmRhdGFNYXJ0Q29kZSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgc2V0VG9vbHRpcChpdGVtKSB7XHJcblx0XHRpZiAoIWl0ZW0pIHJldHVybiBcIlwiO1xyXG5cdFx0c3dpdGNoIChpdGVtLnBvcnRsZXROYW1lKSB7XHJcblx0XHRcdGNhc2UgXCJUYWJsZVwiOlxyXG5cdFx0XHRcdHJldHVybiB0aGlzLnRyYW5zbGF0aW9uLlRBQkxFIHx8IFwiLlRBQkxFXCI7XHJcblx0XHRcdGNhc2UgXCJUcmFuc3Bvc2VcIjpcclxuXHRcdFx0XHRyZXR1cm4gYCR7dGhpcy50cmFuc2xhdGlvbi5UUkFOU1BPU0UgfHwgXCIuVFJBTlNQT1NFXCJ9ICR7XHJcblx0XHRcdFx0XHR0aGlzLnRyYW5zbGF0aW9uLlRBQkxFIHx8IFwiLlRBQkxFXCJcclxuXHRcdFx0XHR9YDtcclxuXHRcdFx0Y2FzZSBcIlBpdm90XCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke3RoaXMudHJhbnNsYXRpb24uUElWT1QgfHwgXCIuUElWT1RcIn0gJHtcclxuXHRcdFx0XHRcdHRoaXMudHJhbnNsYXRpb24uVEFCTEUgfHwgXCIuVEFCTEVcIlxyXG5cdFx0XHRcdH1gO1xyXG5cdFx0XHRjYXNlIFwiTmV3Q2hhcnRcIjpcclxuXHRcdFx0XHRyZXR1cm4gYCR7dGhpcy50cmFuc2xhdGlvbi5QSVZPVCB8fCBcIi5QSVZPVFwifSAke1xyXG5cdFx0XHRcdFx0dGhpcy50cmFuc2xhdGlvbi5DT01QQU5ZX0NIQVJUIHx8IFwiLkNPTVBBTllfQ0hBUlRcIlxyXG5cdFx0XHRcdH1gO1xyXG5cdFx0XHRjYXNlIFwiTmV3Q29sdW1uXCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke1xyXG5cdFx0XHRcdFx0dGhpcy50cmFuc2xhdGlvbi5DTFVTVEVSRURfQ09MVU1OIHx8IFwiLkNMVVNURVJFRF9DT0xVTU5cIlxyXG5cdFx0XHRcdH0gJHt0aGlzLnRyYW5zbGF0aW9uLkNPTVBBTllfQ0hBUlQgfHwgXCIuQ09NUEFOWV9DSEFSVFwifWA7XHJcblx0XHRcdGNhc2UgXCJOZXdMaW5lXCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke3RoaXMudHJhbnNsYXRpb24uTElORSB8fCBcIi5MSU5FXCJ9ICR7XHJcblx0XHRcdFx0XHR0aGlzLnRyYW5zbGF0aW9uLkNPTVBBTllfQ0hBUlQgfHwgXCIuQ09NUEFOWV9DSEFSVFwiXHJcblx0XHRcdFx0fWA7XHJcblx0XHRcdGNhc2UgXCJOZXdDb2x1bW5MaW5lXCI6XHJcblx0XHRcdFx0cmV0dXJuIGAke3RoaXMudHJhbnNsYXRpb24uTElORSB8fCBcIi5MSU5FXCJ9ICR7XHJcblx0XHRcdFx0XHR0aGlzLnRyYW5zbGF0aW9uLkFORCB8fCBcIi5BTkRcIlxyXG5cdFx0XHRcdH0gJHt0aGlzLnRyYW5zbGF0aW9uLkNMVVNURVJFRF9DT0xVTU4gfHwgXCIuQ0xVU1RFUkVEX0NPTFVNTlwifSAke1xyXG5cdFx0XHRcdFx0dGhpcy50cmFuc2xhdGlvbi5DT01QQU5ZX0NIQVJUIHx8IFwiLkNPTVBBTllfQ0hBUlRcIlxyXG5cdFx0XHRcdH1gO1xyXG5cdFx0XHRjYXNlIFwiSGlzdG9yaWNhbElSUlwiOlxyXG5cdFx0XHRcdHJldHVybiBgJHt0aGlzLnRyYW5zbGF0aW9uLkhJU1RPUklDQUx9ICR7dGhpcy50cmFuc2xhdGlvbi5JUlJ9YDtcclxuXHRcdFx0ZGVmYXVsdDpcclxuXHRcdFx0XHRyZXR1cm4gXCJcIjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyBzZWxlY3RQb3J0bGV0VHlwZShwb3J0bGV0Q29kZSkge1xyXG5cdFx0dGhpcy50eXBlID0gcG9ydGxldENvZGU7XHJcblx0XHR0aGlzLnBvcnRsZXRUeXBlLmVtaXQocG9ydGxldENvZGUpO1xyXG5cdH1cclxuXHRwcml2YXRlIGdldEluZm8oKSB7XHJcblx0XHR0aGlzLnRyYW5zbGF0aW9uID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInRyYW5zbGF0aW9uXCIpKTtcclxuXHRcdHRoaXMudXNlckluZm8gPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwidXNlckluZm9cIikpO1xyXG5cdH1cclxuXHRwdWJsaWMgZ2V0RmluYW5jaWFsVHlwZSgpIHtcclxuXHRcdGlmICh0aGlzLmRhdGFtYXJ0KSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmRhdGFtYXJ0LnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZihcImZpbmFuY2lhbFwiKSA+IC0xXHJcblx0XHRcdFx0PyB0cnVlXHJcblx0XHRcdFx0OiBmYWxzZTtcclxuXHRcdH1cclxuXHR9XHJcblx0cHVibGljIGdldEZQUFR5cGUoY29kZSkge1xyXG5cdFx0bGV0IHR5cGVfID0gW1xyXG5cdFx0XHRcInRhYmxlXCIsXHJcblx0XHRcdFwicGl2b3RcIixcclxuXHRcdFx0XCJwaWVcIixcclxuXHRcdFx0XCJiYXJcIixcclxuXHRcdFx0XCJjb2x1bW5cIixcclxuXHRcdFx0XCJsaW5lXCIsXHJcblx0XHRcdFwiYXJlYVwiLFxyXG5cdFx0XHRcIm11bHRpU2VyaWVzXCIsXHJcblx0XHRcdFwiZ2VvXCIsXHJcblx0XHRcdFwicmFkYXJcIixcclxuXHRcdF07XHJcblx0XHRyZXR1cm4gdHlwZV8uaW5kZXhPZihjb2RlKSA+IC0xID8gdHJ1ZSA6IGZhbHNlO1xyXG5cdH1cclxufVxyXG4iXX0=