@sbb-esta/lyne-elements-dev 5.0.0-next.3-dev.1779268556 → 5.0.0-next.3-dev.1779280398

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 (142) hide show
  1. package/autocomplete/autocomplete-base-element.js +1 -1
  2. package/autocomplete/autocomplete.component.js +1 -1
  3. package/{autocomplete-base-element-jaXVQcA7.js → autocomplete-base-element-DjfmUS0W.js} +0 -1
  4. package/autocomplete.js +1 -1
  5. package/autocomplete.pure.js +1 -1
  6. package/calendar/calendar/calendar.component.js +1 -1
  7. package/{calendar.component-DKgkIocz.js → calendar.component-BhUyyFtR.js} +66 -66
  8. package/calendar.js +1 -1
  9. package/calendar.pure.js +1 -1
  10. package/core/base-elements/button-base-element.js +47 -68
  11. package/core/datetime/date-adapter.js +2 -2
  12. package/core/i18n/i18n.js +69 -74
  13. package/core/mixins/form-associated-checkbox-mixin.js +17 -26
  14. package/core.js +40 -42
  15. package/custom-elements.json +98 -446
  16. package/datepicker/common/datepicker-button.js +1 -1
  17. package/{datepicker-button-aYDFZ_3v.js → datepicker-button-CuoZoC6e.js} +0 -3
  18. package/datepicker.js +1 -1
  19. package/datepicker.pure.js +1 -1
  20. package/development/autocomplete/autocomplete-base-element.d.ts +0 -2
  21. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  22. package/development/autocomplete/autocomplete-base-element.js +1 -1
  23. package/development/autocomplete/autocomplete.component.js +1 -1
  24. package/development/{autocomplete-base-element-JxM7QbC4.js → autocomplete-base-element-CTZEg--s.js} +1 -3
  25. package/development/autocomplete.js +1 -1
  26. package/development/autocomplete.pure.js +1 -1
  27. package/development/calendar/calendar/calendar.component.d.ts +0 -6
  28. package/development/calendar/calendar/calendar.component.d.ts.map +1 -1
  29. package/development/calendar/calendar/calendar.component.js +1 -1
  30. package/development/calendar.component-DnC8Zkdk.js +1478 -0
  31. package/development/calendar.js +1 -1
  32. package/development/calendar.pure.js +1 -1
  33. package/development/core/base-elements/button-base-element.d.ts +1 -0
  34. package/development/core/base-elements/button-base-element.d.ts.map +1 -1
  35. package/development/core/base-elements/button-base-element.js +66 -92
  36. package/development/core/base-elements/element.d.ts.map +1 -1
  37. package/development/core/datetime/date-adapter.d.ts +0 -5
  38. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  39. package/development/core/datetime/date-adapter.js +2 -7
  40. package/development/core/i18n/i18n.d.ts +0 -1
  41. package/development/core/i18n/i18n.d.ts.map +1 -1
  42. package/development/core/i18n/i18n.js +2 -8
  43. package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  44. package/development/core/mixins/form-associated-checkbox-mixin.js +7 -21
  45. package/development/core/mixins/form-associated-mixin.d.ts +1 -1
  46. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  47. package/development/core/mixins/form-associated-mixin.js +1 -1
  48. package/development/core.d.ts +0 -2
  49. package/development/core.d.ts.map +1 -1
  50. package/development/core.js +3 -5
  51. package/development/datepicker/common/datepicker-button.d.ts +0 -2
  52. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  53. package/development/datepicker/common/datepicker-button.js +1 -1
  54. package/development/{datepicker-button-BAT1ebzJ.js → datepicker-button-Bb76EBYH.js} +1 -5
  55. package/development/datepicker.js +1 -1
  56. package/development/datepicker.pure.js +1 -1
  57. package/development/dialog/dialog/dialog.component.js +1 -1
  58. package/development/{dialog.component-D8B2dVck.js → dialog.component-cZ3SAujq.js} +5 -5
  59. package/development/dialog.js +1 -1
  60. package/development/dialog.pure.js +1 -1
  61. package/development/element-BAsBayf5.js +1 -1
  62. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
  63. package/development/expansion-panel-header.component-gg5A_7Pz.js +1 -1
  64. package/development/form-field/form-field/form-field.component.d.ts +0 -6
  65. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  66. package/development/form-field/form-field/form-field.component.js +1 -1
  67. package/development/form-field.component-w4nlNsj2.js +670 -0
  68. package/development/form-field.js +1 -1
  69. package/development/form-field.pure.js +1 -1
  70. package/development/icon/icon.component.d.ts +1 -1
  71. package/development/icon/icon.component.d.ts.map +1 -1
  72. package/development/icon/icon.component.js +5 -7
  73. package/development/optgroup-base-element-BzfcJgxG.js +140 -0
  74. package/development/option/optgroup/optgroup-base-element.d.ts +1 -2
  75. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  76. package/development/option/optgroup/optgroup-base-element.js +1 -1
  77. package/development/option/optgroup/optgroup.component.js +1 -1
  78. package/development/option.js +1 -1
  79. package/development/option.pure.js +1 -1
  80. package/development/overlay/overlay-base-element.d.ts +2 -4
  81. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  82. package/development/overlay/overlay-base-element.js +6 -5
  83. package/development/overlay/overlay.component.js +1 -1
  84. package/development/{overlay.component-BH-aue7w.js → overlay.component-DywhKxO1.js} +5 -5
  85. package/development/overlay.js +1 -1
  86. package/development/overlay.pure.js +1 -1
  87. package/development/panel-mixin-DPybe45K.js +1 -1
  88. package/development/slider/slider.component.d.ts +1 -0
  89. package/development/slider/slider.component.d.ts.map +1 -1
  90. package/development/slider/slider.component.js +1 -1
  91. package/development/{slider.component-BLptxiZ4.js → slider.component-Dz4Nl2ZL.js} +8 -21
  92. package/development/slider.js +1 -1
  93. package/development/slider.pure.js +1 -1
  94. package/development/{step.component-DpSJEkrK.js → step.component-CfA-kmt1.js} +1 -11
  95. package/development/stepper/step/step.component.d.ts +4 -14
  96. package/development/stepper/step/step.component.d.ts.map +1 -1
  97. package/development/stepper/step/step.component.js +1 -1
  98. package/development/stepper/stepper/stepper.component.js +1 -1
  99. package/development/{stepper.component-Bv6LCFU0.js → stepper.component-2yRFnnju.js} +5 -5
  100. package/development/stepper.js +2 -2
  101. package/development/stepper.pure.js +2 -2
  102. package/dialog/dialog/dialog.component.js +1 -1
  103. package/{dialog.component-CsBryhM-.js → dialog.component-D3G0AX4Y.js} +4 -4
  104. package/dialog.js +1 -1
  105. package/dialog.pure.js +1 -1
  106. package/form-field/form-field/form-field.component.js +1 -1
  107. package/{form-field.component-BdfK6r2v.js → form-field.component-DkqZz7aZ.js} +62 -83
  108. package/form-field.js +1 -1
  109. package/form-field.pure.js +1 -1
  110. package/icon/icon.component.js +2 -5
  111. package/lean-off-brand-theme.css +1 -0
  112. package/lean-safety-theme.css +1 -0
  113. package/lean-theme.css +1 -0
  114. package/off-brand-theme.css +1 -0
  115. package/{optgroup-base-element-Cxe8SIQh.js → optgroup-base-element-CBxsRPUF.js} +10 -17
  116. package/option/optgroup/optgroup-base-element.js +1 -1
  117. package/option/optgroup/optgroup.component.js +1 -1
  118. package/option.js +1 -1
  119. package/option.pure.js +1 -1
  120. package/overlay/overlay-base-element.js +3 -3
  121. package/overlay/overlay.component.js +1 -1
  122. package/{overlay.component-D7Z_vx1A.js → overlay.component-OSLtja0_.js} +4 -4
  123. package/overlay.js +1 -1
  124. package/overlay.pure.js +1 -1
  125. package/package.json +2 -2
  126. package/safety-theme.css +1 -0
  127. package/slider/slider.component.js +1 -1
  128. package/{slider.component-C8LKcM11.js → slider.component-BMkoF1l1.js} +23 -31
  129. package/slider.js +1 -1
  130. package/slider.pure.js +1 -1
  131. package/standard-theme.css +1 -0
  132. package/core/decorators/host-attributes.js +0 -17
  133. package/core/eventing/throttle.js +0 -11
  134. package/development/calendar.component-CgEXjBeQ.js +0 -1473
  135. package/development/core/decorators/host-attributes.d.ts +0 -22
  136. package/development/core/decorators/host-attributes.d.ts.map +0 -1
  137. package/development/core/decorators/host-attributes.js +0 -41
  138. package/development/core/eventing/throttle.d.ts +0 -3
  139. package/development/core/eventing/throttle.d.ts.map +0 -1
  140. package/development/core/eventing/throttle.js +0 -18
  141. package/development/form-field.component-CPWBCHer.js +0 -702
  142. package/development/optgroup-base-element-CLfE6pmz.js +0 -147
@@ -357,12 +357,6 @@ var i18nMeansOfTransport = {
357
357
  it: "Treno"
358
358
  }
359
359
  };
360
- var i18nOptional = {
361
- de: "(optional)",
362
- en: "(optional)",
363
- fr: "(facultatif)",
364
- it: "(facoltativo)"
365
- };
366
360
  var i18nTargetOpensInNewWindow = {
367
361
  de: "Linkziel öffnet in neuem Fenster.",
368
362
  en: "Link target opens in a new window.",
@@ -786,6 +780,6 @@ var i18nRemainingCharacters = {
786
780
  it: "caratteri rimanenti"
787
781
  };
788
782
  //#endregion
789
- export { i18nAdditionalWagonInformationHeading, i18nAnd, i18nArrival, i18nBlockedPassage, i18nBreadcrumbEllipsisButtonLabel, i18nCalendarDateSelection, i18nCalendarWeekNumber, i18nCarouselArrowsNavigationHint, i18nCarouselItemAriaLabel, i18nCheckboxRequired, i18nChipDelete, i18nChipGroupInputDescription, i18nClass, i18nClearInput, i18nCloseAlert, i18nCloseDialog, i18nCloseNavigation, i18nCloseNotification, i18nClosePopover, i18nCloseSidebar, i18nClosedCompartmentLabel, i18nCollapsed, i18nConnectionFrom, i18nConnectionRoundtrip, i18nConnectionTo, i18nCouchetteWagonLabel, i18nDateChangedTo, i18nDateInvalid, i18nDateMax, i18nDateMin, i18nDatePickerPlaceholder, i18nDeparture, i18nDialog, i18nDirection, i18nDurationDay, i18nDurationHour, i18nDurationMinute, i18nExpanded, i18nFileSelectorButtonLabel, i18nFileSelectorButtonLabelMultiple, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorSubtitleLabel, i18nFileSelectorSubtitleLabelMultiple, i18nFlipCard, i18nFromPlatform, i18nGoBack, i18nInputRequired, i18nItemsPerPage, i18nLocomotiveLabel, i18nMapContainerButtonLabel, i18nMeansOfTransport, i18nNew, i18nNextDay, i18nNextMonth, i18nNextPage, i18nNextSlide, i18nNextYear, i18nNextYearRange, i18nOccupancy, i18nOptional, i18nPage, i18nPaginatorOf, i18nPaginatorSelected, i18nPreviousDay, i18nPreviousMonth, i18nPreviousPage, i18nPreviousSlide, i18nPreviousYear, i18nPreviousYearRange, i18nRealTimeInfo, i18nRemainingCharacters, i18nRestaurantWagonLabel, i18nReverseCard, i18nSector, i18nSectorShort, i18nSelectNextDay, i18nSelectPreviousDay, i18nSelectionRequired, i18nShowCalendar, i18nSleepingWagonLabel, i18nSlide, i18nSupersaver, i18nTargetOpensInNewWindow, i18nTimeInputChange, i18nTimeInvalid, i18nTimeMax, i18nTimeMaxLength, i18nTimetableFormSwapButtonLabel, i18nToday, i18nTrain, i18nTrains, i18nTransferProcedure, i18nTransferProcedures, i18nTravelhints, i18nTripDuration, i18nTripQuayChange, i18nWagonLabel, i18nWagonLabelNumber, i18nWagonsLabel, i18nWalkingDistanceArrival, i18nWalkingDistanceDeparture, i18nYearMonthSelection };
783
+ export { i18nAdditionalWagonInformationHeading, i18nAnd, i18nArrival, i18nBlockedPassage, i18nBreadcrumbEllipsisButtonLabel, i18nCalendarDateSelection, i18nCalendarWeekNumber, i18nCarouselArrowsNavigationHint, i18nCarouselItemAriaLabel, i18nCheckboxRequired, i18nChipDelete, i18nChipGroupInputDescription, i18nClass, i18nClearInput, i18nCloseAlert, i18nCloseDialog, i18nCloseNavigation, i18nCloseNotification, i18nClosePopover, i18nCloseSidebar, i18nClosedCompartmentLabel, i18nCollapsed, i18nConnectionFrom, i18nConnectionRoundtrip, i18nConnectionTo, i18nCouchetteWagonLabel, i18nDateChangedTo, i18nDateInvalid, i18nDateMax, i18nDateMin, i18nDatePickerPlaceholder, i18nDeparture, i18nDialog, i18nDirection, i18nDurationDay, i18nDurationHour, i18nDurationMinute, i18nExpanded, i18nFileSelectorButtonLabel, i18nFileSelectorButtonLabelMultiple, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorSubtitleLabel, i18nFileSelectorSubtitleLabelMultiple, i18nFlipCard, i18nFromPlatform, i18nGoBack, i18nInputRequired, i18nItemsPerPage, i18nLocomotiveLabel, i18nMapContainerButtonLabel, i18nMeansOfTransport, i18nNew, i18nNextDay, i18nNextMonth, i18nNextPage, i18nNextSlide, i18nNextYear, i18nNextYearRange, i18nOccupancy, i18nPage, i18nPaginatorOf, i18nPaginatorSelected, i18nPreviousDay, i18nPreviousMonth, i18nPreviousPage, i18nPreviousSlide, i18nPreviousYear, i18nPreviousYearRange, i18nRealTimeInfo, i18nRemainingCharacters, i18nRestaurantWagonLabel, i18nReverseCard, i18nSector, i18nSectorShort, i18nSelectNextDay, i18nSelectPreviousDay, i18nSelectionRequired, i18nShowCalendar, i18nSleepingWagonLabel, i18nSlide, i18nSupersaver, i18nTargetOpensInNewWindow, i18nTimeInputChange, i18nTimeInvalid, i18nTimeMax, i18nTimeMaxLength, i18nTimetableFormSwapButtonLabel, i18nToday, i18nTrain, i18nTrains, i18nTransferProcedure, i18nTransferProcedures, i18nTravelhints, i18nTripDuration, i18nTripQuayChange, i18nWagonLabel, i18nWagonLabelNumber, i18nWagonsLabel, i18nWalkingDistanceArrival, i18nWalkingDistanceDeparture, i18nYearMonthSelection };
790
784
 
791
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9pMThuL2kxOG4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTYmJPY2N1cGFuY3kgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3R5cGVzLnRzJztcblxuZXhwb3J0IGNvbnN0IGkxOG5EaXJlY3Rpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnUmljaHR1bmcnLFxuICBlbjogJ0RpcmVjdGlvbicsXG4gIGZyOiAnRGlyZWN0aW9uJyxcbiAgaXQ6ICdEaXJlemlvbmUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5BcnJpdmFsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0Fua3VuZnQnLFxuICBlbjogJ0Fycml2YWwnLFxuICBmcjogJ0Fycml2w6llJyxcbiAgaXQ6ICdBcnJpdm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TZWN0b3I6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnU2VrdG9yJyxcbiAgZW46ICdTZWN0b3InLFxuICBmcjogJ1NlY3RldXInLFxuICBpdDogJ1NldHRvcmUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TZWN0b3JTaG9ydDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdTa3QuJyxcbiAgZW46ICdTZWMuJyxcbiAgZnI6ICdTZWN0LicsXG4gIGl0OiAnU2V0LicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkFuZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICd1bmQnLFxuICBlbjogJ2FuZCcsXG4gIGZyOiAnZXQnLFxuICBpdDogJ2UnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DbGFzczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4gPSB7XG4gIGZpcnN0OiB7XG4gICAgZGU6ICdFcnN0ZSBLbGFzc2UnLFxuICAgIGVuOiAnRmlyc3QgQ2xhc3MnLFxuICAgIGZyOiAnUHJlbWnDqHJlIGNsYXNzZScsXG4gICAgaXQ6ICdQcmltYSBjbGFzc2UnLFxuICB9LFxuICBzZWNvbmQ6IHtcbiAgICBkZTogJ1p3ZWl0ZSBLbGFzc2UnLFxuICAgIGVuOiAnU2Vjb25kIENsYXNzJyxcbiAgICBmcjogJ0RldXhpw6htZSBjbGFzc2UnLFxuICAgIGl0OiAnU2Vjb25kYSBjbGFzc2UnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmFpbjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdadWcnLFxuICBlbjogJ1RyYWluJyxcbiAgZnI6ICdUcmFpbicsXG4gIGl0OiAnVHJlbm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmFpbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWsO8Z2UnLFxuICBlbjogJ1RyYWlucycsXG4gIGZyOiAnVHJhaW5zJyxcbiAgaXQ6ICdUcmVuaScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bldhZ29uc0xhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1dhZ2VuIGRlcyBadWdlcycsXG4gIGVuOiAnQ29hY2hlcyBvZiB0aGUgdHJhaW4nLFxuICBmcjogJ1dhZ29ucyBkdSB0cmFpbicsXG4gIGl0OiAnQ2Fycm96emUgZGVsIHRyZW5vJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuV2Fnb25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdXYWdlbicsXG4gIGVuOiAnVHJhaW4gY29hY2gnLFxuICBmcjogJ1dhZ29uJyxcbiAgaXQ6ICdDYXJyb3p6YSBkZWwgdHJlbm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5XYWdvbkxhYmVsTnVtYmVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogYE51bW1lcmAsXG4gIGVuOiBgTnVtYmVyYCxcbiAgZnI6IGBOdW3DqXJvYCxcbiAgaXQ6IGBOdW1lcm9gLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DbG9zZWRDb21wYXJ0bWVudExhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0dlc2NobG9zc2VuZXIgWnVnd2FnZ29uJyxcbiAgZW46ICdDbG9zZWQgdHJhaW4gY29hY2gnLFxuICBmcjogJ1dhZ29uIGR1IHRyYWluIGZlcm3DqScsXG4gIGl0OiAnQ2Fycm96emEgZGVsIHRyZW5vIGNoaXVzbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkxvY29tb3RpdmVMYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdMb2tvbW90aXZlJyxcbiAgZW46ICdMb2NvbW90aXZlJyxcbiAgZnI6ICdMb2NvbW90aXZlJyxcbiAgaXQ6ICdMb2NvbW90aXZhJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuU2xlZXBpbmdXYWdvbkxhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1NjaGxhZndhZ2VuJyxcbiAgZW46ICdTbGVlcGluZyBjYXInLFxuICBmcjogJ1ZvaXR1cmUtbGl0cycsXG4gIGl0OiAnQ2Fycm96emEgbGV0dGknLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5Db3VjaGV0dGVXYWdvbkxhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0xpZWdld2FnZW4nLFxuICBlbjogJ0NvdWNoZXR0ZSBjYXInLFxuICBmcjogJ1ZvaXR1cmUtY291Y2hldHRlcycsXG4gIGl0OiAnQ2Fycm96emEgY3VjY2V0dGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5SZXN0YXVyYW50V2Fnb25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdTcGVpc2V3YWdlbicsXG4gIGVuOiAnRGluaW5nIGNhcicsXG4gIGZyOiAnVm9pdHVyZS1yZXN0YXVyYW50JyxcbiAgaXQ6ICdDYXJyb3p6YSByaXN0b3JhbnRlJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQmxvY2tlZFBhc3NhZ2U6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+ID0ge1xuICBwcmV2aW91czoge1xuICAgIGRlOiAnS2VpbiBEdXJjaGdhbmcgenVtIHZvcmhlcmlnZW4gV2FnZW4nLFxuICAgIGVuOiAnTm8gcGFzc2FnZSB0byB0aGUgcHJldmlvdXMgdHJhaW4gY29hY2gnLFxuICAgIGZyOiAnUGFzIGRlIHBhc3NhZ2UgYXUgd2Fnb24gZHUgdHJhaW4gcHLDqWPDqWRlbnQnLFxuICAgIGl0OiAnTmVzc3VuIHBhc3NhZ2dpbyBhbGxhIGNhcnJvenphIGRlbCB0cmVubyBwcmVjZWRlbnRlJyxcbiAgfSxcbiAgbmV4dDoge1xuICAgIGRlOiAnS2VpbiBEdXJjaGdhbmcgenVtIG7DpGNoc3RlbiBXYWdlbicsXG4gICAgZW46ICdObyBwYXNzYWdlIHRvIHRoZSBuZXh0IHRyYWluIGNvYWNoJyxcbiAgICBmcjogJ1BhcyBkZSBwYXNzYWdlIGF1IHdhZ29uIGR1IHRyYWluIHN1aXZhbnQnLFxuICAgIGl0OiAnTmVzc3VuIHBhc3NhZ2dpbyBhbGxhIGNhcnJvenphIGRlbCB0cmVubyBzdWNjZXNzaXZvJyxcbiAgfSxcbiAgYm90aDoge1xuICAgIGRlOiAnS2VpbiBEdXJjaGdhbmcgenVtIG7DpGNoc3RlbiB1bmQgdm9yaGVyaWdlbiBXYWdlbicsXG4gICAgZW46ICdObyBwYXNzYWdlIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyB0cmFpbiBjb2FjaCcsXG4gICAgZnI6ICdQYXMgZGUgcGFzc2FnZSBhdSB3YWdvbiBkdSB0cmFpbiBzdWl2YW50IGV0IHByw6ljw6lkZW50JyxcbiAgICBpdDogJ05lc3N1biBwYXNzYWdnaW8gYWxsYSBjYXJyb3p6YSBkZWwgdHJlbm8gc3VjY2Vzc2l2byBlIHByZWNlZGVudGUnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5BZGRpdGlvbmFsV2Fnb25JbmZvcm1hdGlvbkhlYWRpbmc6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWnVzw6R0emxpY2hlIFdhZ2VuaW5mb3JtYXRpb24nLFxuICBlbjogJ0FkZGl0aW9uYWwgd2Fnb24gaW5mb3JtYXRpb24nLFxuICBmcjogJ0luZm9ybWF0aW9ucyBzdXBwbMOpbWVudGFpcmVzIHN1ciBsZXMgd2Fnb25zJyxcbiAgaXQ6ICdJbmZvcm1hemlvbmkgYWdnaXVudGl2ZSBzdWxsYSBjYXJyb3p6YSBkZWwgdHJlbm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5EZXBhcnR1cmU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnQWJmYWhydCcsXG4gIGVuOiAnRGVwYXJ0dXJlJyxcbiAgZnI6ICdEw6lwYXJ0JyxcbiAgaXQ6ICdQYXJ0ZW56YScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkR1cmF0aW9uTWludXRlOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+Pj4gPSB7XG4gIHNpbmdsZToge1xuICAgIGxvbmc6IHtcbiAgICAgIGRlOiAnTWludXRlJyxcbiAgICAgIGVuOiAnTWludXRlJyxcbiAgICAgIGZyOiAnTWludXRlJyxcbiAgICAgIGl0OiAnTWludXRvJyxcbiAgICB9LFxuICAgIHNob3J0OiB7XG4gICAgICBkZTogJ20nLFxuICAgICAgZW46ICdtJyxcbiAgICAgIGZyOiAnbScsXG4gICAgICBpdDogJ20nLFxuICAgIH0sXG4gIH0sXG4gIG11bHRpcGxlOiB7XG4gICAgbG9uZzoge1xuICAgICAgZGU6ICdNaW51dGVuJyxcbiAgICAgIGVuOiAnTWludXRlcycsXG4gICAgICBmcjogJ01pbnV0ZXMnLFxuICAgICAgaXQ6ICdNaW51dGknLFxuICAgIH0sXG4gICAgc2hvcnQ6IHtcbiAgICAgIGRlOiAnTWluJyxcbiAgICAgIGVuOiAnbWluJyxcbiAgICAgIGZyOiAnbWluLicsXG4gICAgICBpdDogJ21pbnMnLFxuICAgIH0sXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkR1cmF0aW9uSG91cjogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4+ID0ge1xuICBzaW5nbGU6IHtcbiAgICBsb25nOiB7XG4gICAgICBkZTogJ1N0dW5kZScsXG4gICAgICBlbjogJ0hvdXInLFxuICAgICAgZnI6ICdIZXVyZScsXG4gICAgICBpdDogJ09yYScsXG4gICAgfSxcbiAgICBzaG9ydDoge1xuICAgICAgZGU6ICdTdGQuJyxcbiAgICAgIGVuOiAnaCcsXG4gICAgICBmcjogJ29yZScsXG4gICAgICBpdDogJ2hycycsXG4gICAgfSxcbiAgfSxcbiAgbXVsdGlwbGU6IHtcbiAgICBsb25nOiB7XG4gICAgICBkZTogJ1N0dW5kZW4nLFxuICAgICAgZW46ICdIb3VycycsXG4gICAgICBmcjogJ0hldXJlcycsXG4gICAgICBpdDogJ09yZScsXG4gICAgfSxcbiAgICBzaG9ydDoge1xuICAgICAgZGU6ICdTdGQuJyxcbiAgICAgIGVuOiAnaCcsXG4gICAgICBmcjogJ29yZScsXG4gICAgICBpdDogJ2hycycsXG4gICAgfSxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRHVyYXRpb25EYXk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+PiA9IHtcbiAgc2luZ2xlOiB7XG4gICAgbG9uZzoge1xuICAgICAgZGU6ICdUYWcnLFxuICAgICAgZW46ICdEYXknLFxuICAgICAgZnI6ICdKb3VyJyxcbiAgICAgIGl0OiAnR2lvcm5vJyxcbiAgICB9LFxuICB9LFxuICBtdWx0aXBsZToge1xuICAgIGxvbmc6IHtcbiAgICAgIGRlOiAnVGFnZScsXG4gICAgICBlbjogJ0RheXMnLFxuICAgICAgZnI6ICdKb3VycycsXG4gICAgICBpdDogJ0dpb3JuaScsXG4gICAgfSxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVHJpcFF1YXlDaGFuZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnR2xlaXPDpG5kZXJ1bmcgaW0gVmVybGF1ZiBkaWVzZXIgVmVyYmluZHVuZycsXG4gIGVuOiAnVHJhY2sgY2hhbmdlIGluIHRoZSBjb3Vyc2Ugb2YgdGhpcyBjb25uZWN0aW9uJyxcbiAgZnI6ICdDaGFuZ2VtZW50IGRlIHZvaWUgc3VyIGxlIHBhcmNvdXJzIGRlIGNldHRlIGNvbm5leGlvbicsXG4gIGl0OiAnQ2FtYmlhbWVudG8gZGkgYmluYXJpbyBuZWwgY29yc28gZGkgcXVlc3RhIGNvbm5lc3Npb25lJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVHJpcER1cmF0aW9uOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1JlaXNlZGF1ZXInLFxuICBlbjogJ1RyYXZlbCB0aW1lJyxcbiAgZnI6ICdEdXLDqWUgZHUgdm95YWdlJyxcbiAgaXQ6ICdEdXJhdGEgZGVsIHZpYWdnaW8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmF2ZWxoaW50czogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdSZWlzZWhpbndlaXNlJyxcbiAgZW46ICdUcmF2ZWxoaW50cycsXG4gIGZyOiAnSW5kaWNhdGlvbnMgc3VyIGxlIHZveWFnZScsXG4gIGl0OiAnSW5kaWNhemlvbmkgZGkgdmlhZ2dpbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4blJlYWxUaW1lSW5mbzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdFY2h0emVpdGluZm9ybWF0aW9uZW4nLFxuICBlbjogJ1JlYWwgdGltZSBpbmZvcm1hdGlvbicsXG4gIGZyOiAnSW5mb3JtYXRpb25zIGVuIHRlbXBzIHLDqWVsJyxcbiAgaXQ6ICdJbmZvcm1hemlvbmkgaW4gdGVtcG8gcmVhbGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmFuc2ZlclByb2NlZHVyZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdtYWwgdW1zdGVpZ2VuJyxcbiAgZW46ICdjaGFuZ2UnLFxuICBmcjogJ2NoYW5nZW1lbnQgZGUgdHJhaW4nLFxuICBpdDogJ2NhbWJpbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4blRyYW5zZmVyUHJvY2VkdXJlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdtYWwgdW1zdGVpZ2VuJyxcbiAgZW46ICdjaGFuZ2VzJyxcbiAgZnI6ICdjaGFuZ2VtZW50cyBkZSB0cmFpbicsXG4gIGl0OiAnY2FtYmknLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXc6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnbmV1JyxcbiAgZW46ICduZXcnLFxuICBmcjogJ25vdXZlYXUnLFxuICBpdDogJ251b3ZvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRnJvbVBsYXRmb3JtOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0F1ZicsXG4gIGVuOiAnb24nLFxuICBmcjogJ3N1cicsXG4gIGl0OiAnc3UnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TdXBlcnNhdmVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1NwYXJiaWxsZXR0ZScsXG4gIGVuOiAnU3VwZXJzYXZlciB0aWNrZXRzJyxcbiAgZnI6ICdCaWxsZXRzIGTDqWdyaWZmw6lzJyxcbiAgaXQ6ICdCaWdsaWV0dGkgcmlzcGFybWlvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuT2NjdXBhbmN5OiBSZWNvcmQ8U2JiT2NjdXBhbmN5LCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiA9IHtcbiAgbm9uZToge1xuICAgIGRlOiAnS2VpbmUgQmVsZWd1bmdzcHJvZ25vc2UgdmVyZsO8Z2JhcicsXG4gICAgZW46ICdObyBvY2N1cGFuY3kgZm9yZWNhc3QgYXZhaWxhYmxlJyxcbiAgICBmcjogXCJBdWN1bmUgcHLDqXZpc2lvbiBkJ29jY3VwYXRpb24gZGlzcG9uaWJsZVwiLFxuICAgIGl0OiAnTmVzc3VuYSBwcmV2aXNpb25lIGRpIG9jY3VwYXppb25lIGRpc3BvbmliaWxlJyxcbiAgfSxcbiAgbG93OiB7XG4gICAgZGU6ICdUaWVmZSBiaXMgbWl0dGxlcmUgQmVsZWd1bmcgZXJ3YXJ0ZXQnLFxuICAgIGVuOiAnTG93IHRvIGF2ZXJhZ2Ugb2NjdXBhbmN5IGV4cGVjdGVkJyxcbiAgICBmcjogJ1RhdXggZOKAmW9jY3VwYXRpb24gZmFpYmxlIMOgIG1veWVuIHByw6l2dScsXG4gICAgaXQ6ICfDiCBwcmV2aXN0YSB1buKAmW9jY3VwYXppb25lIG1lZGlvLWJhc3NhJyxcbiAgfSxcbiAgbWVkaXVtOiB7XG4gICAgZGU6ICdIb2hlIEJlbGVndW5nIGVyd2FydGV0JyxcbiAgICBlbjogJ0hpZ2ggb2NjdXBhbmN5IGV4cGVjdGVkJyxcbiAgICBmcjogJ1RhdXggZOKAmW9jY3VwYXRpb24gw6lsZXbDqSBwcsOpdnUnLFxuICAgIGl0OiAnw4ggcHJldmlzdGEgdW7igJlvY2N1cGF6aW9uZSBlbGV2YXRhJyxcbiAgfSxcbiAgaGlnaDoge1xuICAgIGRlOiAnU2VociBob2hlIEJlbGVndW5nIGVyd2FydGV0JyxcbiAgICBlbjogJ1ZlcnkgaGlnaCBvY2N1cGFuY3kgZXhwZWN0ZWQnLFxuICAgIGZyOiAnVGF1eCBk4oCZb2NjdXBhdGlvbiB0csOocyDDqWxldsOpIHByw6l2dScsXG4gICAgaXQ6ICfDiCBwcmV2aXN0YSB1buKAmW9jY3VwYXppb25lIG1vbHRvIGVsZXZhdGEnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5NZWFuc09mVHJhbnNwb3J0OiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiA9IHtcbiAgZnVuaWN1bGFyOiB7XG4gICAgZGU6ICdTZWlsYmFobi9aYWhucmFkYmFobicsXG4gICAgZW46ICdGdW5pY3VsYXIvQ29nIHJhaWx3YXknLFxuICAgIGZyOiAnRnVuaWN1bGFpcmUvQ2hlbWluIGRlIGZlciDDoCBjcsOpbWFpbGzDqHJlJyxcbiAgICBpdDogJ0Z1bml2aWEvRmVycm92aWEgYSBjcmVtYWdsaWVyYScsXG4gIH0sXG4gIGVjX2lkOiB7XG4gICAgZGU6ICdFQy9JQycsXG4gICAgZW46ICdFQy9JQycsXG4gICAgZnI6ICdFQy9JQycsXG4gICAgaXQ6ICdFQy9JQycsXG4gIH0sXG4gIGJ1czoge1xuICAgIGRlOiAnQnVzJyxcbiAgICBlbjogJ0J1cycsXG4gICAgZnI6ICdCdXMnLFxuICAgIGl0OiAnQnVzJyxcbiAgfSxcbiAgcmU6IHtcbiAgICBkZTogJ1JFJyxcbiAgICBlbjogJ1JFJyxcbiAgICBmcjogJ1JFJyxcbiAgICBpdDogJ1JFJyxcbiAgfSxcbiAgYXJ6X2V4dDoge1xuICAgIGRlOiAnQVJaL0VYVCcsXG4gICAgZW46ICdBUlovRVhUJyxcbiAgICBmcjogJ0FSWi9FWFQnLFxuICAgIGl0OiAnQVJaL0VYVCcsXG4gIH0sXG4gIGljZV90Z3Zfcmp4OiB7XG4gICAgZGU6ICdJQ0UvVEdWL1JKWCcsXG4gICAgZW46ICdJQ0UvVEdWL1JKWCcsXG4gICAgZnI6ICdJQ0UvVEdWL1JKWCcsXG4gICAgaXQ6ICdJQ0UvVEdWL1JKWCcsXG4gIH0sXG4gIGlyX3BlOiB7XG4gICAgZGU6ICdJUi9QRScsXG4gICAgZW46ICdJUi9QRScsXG4gICAgZnI6ICdJUi9QRScsXG4gICAgaXQ6ICdJUi9QRScsXG4gIH0sXG4gIHNfc25fcjoge1xuICAgIGRlOiAnUy9TTi9SJyxcbiAgICBlbjogJ1MvU04vUicsXG4gICAgZnI6ICdTL1NOL1InLFxuICAgIGl0OiAnUy9TTi9SJyxcbiAgfSxcbiAgdHJhbXdheToge1xuICAgIGRlOiAnVHJhbS9NZXRybycsXG4gICAgZW46ICdUcmFtd2F5L1VuZGVyZ3JvdW5kJyxcbiAgICBmcjogJ1RyYW0vTcOpdHJvJyxcbiAgICBpdDogJ1RyYW0vTWV0cm8nLFxuICB9LFxuICBzaGlwOiB7XG4gICAgZGU6ICdTY2hpZmYnLFxuICAgIGVuOiAnU2hpcCcsXG4gICAgZnI6ICdCYXRlYXUnLFxuICAgIGl0OiAnQmF0dGVsbG8nLFxuICB9LFxuICB0cmFpbjoge1xuICAgIGRlOiAnWnVnJyxcbiAgICBlbjogJ1RyYWluJyxcbiAgICBmcjogJ1RyYWluJyxcbiAgICBpdDogJ1RyZW5vJyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuT3B0aW9uYWw6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnKG9wdGlvbmFsKScsXG4gIGVuOiAnKG9wdGlvbmFsKScsXG4gIGZyOiAnKGZhY3VsdGF0aWYpJyxcbiAgaXQ6ICcoZmFjb2x0YXRpdm8pJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVGFyZ2V0T3BlbnNJbk5ld1dpbmRvdzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdMaW5remllbCDDtmZmbmV0IGluIG5ldWVtIEZlbnN0ZXIuJyxcbiAgZW46ICdMaW5rIHRhcmdldCBvcGVucyBpbiBhIG5ldyB3aW5kb3cuJyxcbiAgZnI6IFwiTGUgbGllbiBzJ291dnJlIGRhbnMgdW5lIG5vdXZlbGxlIGZlbsOqdHJlLlwiLFxuICBpdDogJ0lsIGxpbmsgc2kgYXByZSBpbiB1bmEgbnVvdmEgZmluZXN0cmEuJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuV2Fsa2luZ0Rpc3RhbmNlQXJyaXZhbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdNaW51dGVuIEZ1c3N3ZWcgbmFjaCBBbmt1bmZ0OicsXG4gIGVuOiAnbWludXRlcyBvZiB3YWxraW5nIHRpbWUgYWZ0ZXIgYXJyaXZhbDonLFxuICBmcjogJ21pbnV0ZXMgZGUgdHJhamV0IMOgIHBpZWQgYXByw6hzIGzigJlhcnJpdsOpZTonLFxuICBpdDogJ21pbnV0aSBhIHBpZWRpIGFsbOKAmWFycml2bzonLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5XYWxraW5nRGlzdGFuY2VEZXBhcnR1cmU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTWludXRlbiBGdXNzd2VnIHZvciBBYmZhaHJ0OicsXG4gIGVuOiAnbWludXRlcyBvZiB3YWxraW5nIHRpbWUgYmVmb3JlIGRlcGFydHVyZTonLFxuICBmcjogJ21pbnV0ZXMgZGUgdHJhamV0IMOgIHBpZWQgYXZhbnQgbGUgZMOpcGFydDonLFxuICBpdDogJ21pbnV0aSBhIHBpZWRpIHByaW1hIGRlbGxhIHBhcnRlbnphOicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsb3NlQWxlcnQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTWVsZHVuZyBzY2hsaWVzc2VuJyxcbiAgZW46ICdDbG9zZSBtZXNzYWdlJyxcbiAgZnI6ICdGZXJtZXIgbGUgbWVzc2FnZScsXG4gIGl0OiAnQ2hpdWRlcmUgaWwgbWVzc2FnZ2lvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2xvc2VOb3RpZmljYXRpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTmFjaHJpY2h0IHNjaGxpZXNzZW4nLFxuICBlbjogJ0Nsb3NlIG1lc3NhZ2UnLFxuICBmcjogJ0Zlcm1lciBsZSBtZXNzYWdlJyxcbiAgaXQ6ICdDaGl1ZGVyZSBpbCBtZXNzYWdnaW8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5EaWFsb2c6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGlhbG9nJyxcbiAgZW46ICdEaWFsb2cnLFxuICBmcjogJ0RpYWxvZ3VlJyxcbiAgaXQ6ICdEaWFsb2dvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2xvc2VEaWFsb2c6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnw5xiZXJnZWxhZ2VydGVzIEZlbnN0ZXIgc2NobGllc3NlbicsXG4gIGVuOiAnQ2xvc2Ugc2Vjb25kYXJ5IHdpbmRvdycsXG4gIGZyOiAnRmVybWVyIGxhIGZlbsOqdHJlIHN1cGVycG9zw6llJyxcbiAgaXQ6ICdDaGl1ZGVyZSBsYSBmaW5lc3RyYSBzb3ZyYXBwb3N0YScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsb3NlTmF2aWdhdGlvbjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdOYXZpZ2F0aW9uIHNjaGxpZXNzZW4nLFxuICBlbjogJ0Nsb3NlIG5hdmlnYXRpb24nLFxuICBmcjogJ0Zlcm1lciBsYSBuYXZpZ2F0aW9uJyxcbiAgaXQ6ICdDaGl1ZGVyZSBsYSBuYXZpZ2F6aW9uZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsb3NlU2lkZWJhcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdTZWl0ZW5sZWlzdGUgc2NobGllc3NlbicsXG4gIGVuOiAnQ2xvc2Ugc2lkZWJhcicsXG4gIGZyOiAnRmVybWVyIGxhIGJhcnJlIGxhdMOpcmFsZScsXG4gIGl0OiAnQ2hpdWRlcmUgbGEgYmFycmEgbGF0ZXJhbGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DbG9zZVBvcG92ZXI6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnSGlud2VpcyBzY2hsaWVzc2VuJyxcbiAgZW46ICdDbG9zZSBub3RlJyxcbiAgZnI6ICdGZXJtZXIgbGEgbm90ZScsXG4gIGl0OiAnQ2hpdWRlcmUgbGEgbm90YScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkdvQmFjazogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdadXLDvGNrJyxcbiAgZW46ICdHbyBiYWNrJyxcbiAgZnI6ICdSZXRvdXJuZXInLFxuICBpdDogJ0luZGlldHJvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVG9kYXk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnSGV1dGUnLFxuICBlbjogJ1RvZGF5JyxcbiAgZnI6ICdBdWpvdXJk4oCZaHVpJyxcbiAgaXQ6ICdPZ2dpJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuTmV4dE1vbnRoOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1p1bSBuw6RjaHN0ZW4gTW9uYXQgd2VjaHNlbG4nLFxuICBlbjogJ0NoYW5nZSB0byB0aGUgbmV4dCBtb250aCcsXG4gIGZyOiAnUGFzc2VyIGF1IG1vaXMgc3VpdmFudCcsXG4gIGl0OiAnUGFzc2FyZSBhbCBtZXNlIHN1Y2Nlc3Npdm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QcmV2aW91c01vbnRoOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1p1bSBsZXR6dGVuIE1vbmF0IHdlY2hzZWxuJyxcbiAgZW46ICdDaGFuZ2UgdG8gdGhlIHByZXZpb3VzIG1vbnRoJyxcbiAgZnI6ICdQYXNzZXIgYXUgbW9pcyBwcsOpY8OpZGVudCcsXG4gIGl0OiAnUGFzc2FyZSBhbCBtZXNlIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXh0RGF5OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ07DpGNoc3RlciBUYWcnLFxuICBlbjogJ05leHQgZGF5JyxcbiAgZnI6ICdKb3VyIHN1aXZhbnQnLFxuICBpdDogJ0dpb3JubyBzdWNjZXNzaXZvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUHJldmlvdXNEYXk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnVm9yaGVyaWdlciBUYWcnLFxuICBlbjogJ1ByZXZpb3VzIGRheScsXG4gIGZyOiAnSm91ciBwcsOpY8OpZGVudCcsXG4gIGl0OiAnR2lvcm5vIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5ZZWFyTW9udGhTZWxlY3Rpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnSmFociB1bmQgTW9uYXQgYXVzd8OkaGxlbicsXG4gIGVuOiAnQ2hvb3NlIHllYXIgYW5kIG1vbnRoJyxcbiAgZnI6ICdDaG9pc2lyIGzigJlhbm7DqWUgZXQgbGUgbW9pcycsXG4gIGl0OiAnU2VsZXppb25hIGFubm8gZSBtZXNlJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2FsZW5kYXJEYXRlU2VsZWN0aW9uOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0RhdHVtIGF1c3fDpGhsZW4nLFxuICBlbjogJ0Nob29zZSBkYXRlJyxcbiAgZnI6ICdDaG9pc2lyIHVuZSBkYXRlJyxcbiAgaXQ6ICdTZWxlemlvbmEgdW5hIGRhdGEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXh0WWVhclJhbmdlID0gKHllYXJSYW5nZTogbnVtYmVyKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiAoe1xuICBkZTogYFdlY2hzZWwgenUgZGVuIG7DpGNoc3RlbiAke3llYXJSYW5nZX0gSmFocmVuYCxcbiAgZW46IGBDaGFuZ2UgdG8gdGhlIG5leHQgJHt5ZWFyUmFuZ2V9IHllYXJzYCxcbiAgZnI6IGBQYXNzZXIgYXV4ICR7eWVhclJhbmdlfSBwcm9jaGFpbmVzIGFubsOpZXNgLFxuICBpdDogYFBhc3NhcmUgYWkgc3VjY2Vzc2l2aSAke3llYXJSYW5nZX0gYW5uaWAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QcmV2aW91c1llYXJSYW5nZSA9ICh5ZWFyUmFuZ2U6IG51bWJlcik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBXZWNoc2VsIHp1IGRlbiB2b3JoZXJpZ2VuICR7eWVhclJhbmdlfSBKYWhyZW5gLFxuICBlbjogYENoYW5nZSB0byB0aGUgcHJldmlvdXMgJHt5ZWFyUmFuZ2V9IHllYXJzYCxcbiAgZnI6IGBQYXNzYWdlIGF1eCAke3llYXJSYW5nZX0gcHLDqWPDqWRlbnRlcyBhbm7DqWVzYCxcbiAgaXQ6IGBQYXNzYXJlIGFpIHByZWNlZGVudGkgJHt5ZWFyUmFuZ2V9IGFubmlgLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpMThuTmV4dFllYXI6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWnVtIG7DpGNoc3RlbiBKYWhyIHdlY2hzZWxuJyxcbiAgZW46ICdDaGFuZ2UgdG8gdGhlIG5leHQgeWVhcicsXG4gIGZyOiBcIlBhc3NlciDDoCBsJ2FubsOpZSBzdWl2YW50ZVwiLFxuICBpdDogXCJQYXNzYXJlIGFsbCdhbm5vIHN1Y2Nlc3Npdm9cIixcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUHJldmlvdXNZZWFyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1p1bSBsZXR6dGVuIEphaHIgd2VjaHNlbG4nLFxuICBlbjogJ0NoYW5nZSB0byB0aGUgcHJldmlvdXMgeWVhcicsXG4gIGZyOiBcIlBhc3NlciDDoCBsJ2FubsOpZSBwcsOpY8OpZGVudFwiLFxuICBpdDogXCJQYXNzYXJlIGFsbCdhbm5vIHByZWNlZGVudGVcIixcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuU2VsZWN0TmV4dERheSA9IChjdXJyZW50RGF0ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiAoe1xuICBkZTogYFp1bSBuw6RjaHN0ZW4gVGFnIHdlY2hzZWxuLCBkZXJ6ZWl0IGF1c2dld8OkaGx0ICR7Y3VycmVudERhdGV9LmAsXG4gIGVuOiBgQ2hhbmdlIHRvIHRoZSBuZXh0IGRheSwgY3VycmVudGx5IHNlbGVjdGVkICR7Y3VycmVudERhdGV9LmAsXG4gIGZyOiBgUGFzc2VyIGF1IGpvdXIgc3VpdmFudCwgYWN0dWVsbGVtZW50IHPDqWxlY3Rpb25uw6kgJHtjdXJyZW50RGF0ZX0uYCxcbiAgaXQ6IGBQYXNzYXJlIGFsIGdpb3JubyBzdWNjZXNzaXZvLCBhdHR1YWxtZW50ZSBzZWxlemlvbmF0byAke2N1cnJlbnREYXRlfS5gLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpMThuU2VsZWN0UHJldmlvdXNEYXkgPSAoY3VycmVudERhdGU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBadW0gdm9yaGVyaWdlbiBUYWcgd2VjaHNlbG4sIGRlcnplaXQgYXVzZ2V3w6RobHQgJHtjdXJyZW50RGF0ZX0uYCxcbiAgZW46IGBDaGFuZ2UgdG8gdGhlIHByZXZpb3VzIGRheSwgY3VycmVudGx5IHNlbGVjdGVkICR7Y3VycmVudERhdGV9LmAsXG4gIGZyOiBgUGFzc2VyIGF1IGpvdXIgcHLDqWPDqWRlbnQsIGFjdHVlbGxlbWVudCBzw6lsZWN0aW9ubsOpICR7Y3VycmVudERhdGV9LmAsXG4gIGl0OiBgUGFzc2FyZSBhbCBnaW9ybm8gcHJlY2VkZW50ZSwgYXR0dWFsbWVudGUgc2VsZXppb25hdG8gJHtjdXJyZW50RGF0ZX0uYCxcbn0pO1xuXG5leHBvcnQgY29uc3QgaTE4blNob3dDYWxlbmRhcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdLYWxlbmRlciBhbnplaWdlbicsXG4gIGVuOiAnU2hvdyBjYWxlbmRhcicsXG4gIGZyOiAnQWZmaWNoZXIgbGUgY2FsZW5kcmllcicsXG4gIGl0OiAnVmlzdWFsaXp6YSBpbCBjYWxlbmRhcmlvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRGF0ZVBpY2tlclBsYWNlaG9sZGVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1RULk1NLkpKSkonLFxuICBlbjogJ0RELk1NLllZWVknLFxuICBmcjogJ0pKLk1NLkFBQUEnLFxuICBpdDogJ0dHLk1NLkFBQUEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5EYXRlQ2hhbmdlZFRvOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0RhdHVtIGdlw6RuZGVydCBhdWYnLFxuICBlbjogJ0RhdGUgY2hhbmdlZCB0bycsXG4gIGZyOiAnRGF0ZSBtb2RpZmnDqWUgYXUnLFxuICBpdDogJ0RhdGEgbW9kaWZpY2F0YSBpbicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNvbm5lY3Rpb25Gcm9tOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1ZlcmJpbmR1bmcgdm9uJyxcbiAgZW46ICdDb25uZWN0aW9uIGZyb20nLFxuICBmcjogJ0xpYWlzb24gZGUnLFxuICBpdDogJ0NvbGxlZ2FtZW50byBkYScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNvbm5lY3Rpb25UbzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICduYWNoJyxcbiAgZW46ICd0bycsXG4gIGZyOiAnw6AnLFxuICBpdDogJ2EnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5Db25uZWN0aW9uUm91bmR0cmlwID0gKHJldHVybkNpdHk6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGB1bmQgenVyw7xjayBuYWNoICR7cmV0dXJuQ2l0eX0uYCxcbiAgZW46IGBhbmQgYmFjayB0byAke3JldHVybkNpdHl9LmAsXG4gIGZyOiBgZXQgcmV0b3VyIMOgICR7cmV0dXJuQ2l0eX0uYCxcbiAgaXQ6IGBlIHJpdG9ybm8gYSAke3JldHVybkNpdHl9LmAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5FeHBhbmRlZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdlcndlaXRlcnQnLFxuICBlbjogJ2V4cGFuZGVkJyxcbiAgZnI6ICfDqXRlbmR1JyxcbiAgaXQ6ICdlc3BhbnNvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ29sbGFwc2VkOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ3JlZHV6aWVydCcsXG4gIGVuOiAnY29sbGFwc2VkJyxcbiAgZnI6ICdjb25kZW5zw6knLFxuICBpdDogJ2NvbXByZXNzbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bk1hcENvbnRhaW5lckJ1dHRvbkxhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0thcnRlIHplaWdlbicsXG4gIGVuOiAnU2hvdyBtYXAnLFxuICBmcjogJ0FmZmljaGVyIGxhIGNhcnRlJyxcbiAgaXQ6ICdNb3N0cmEgbGEgbWFwcGEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5CcmVhZGNydW1iRWxsaXBzaXNCdXR0b25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdNZWhyIEJyZWFkY3J1bWJzIGFuemVpZ2VuJyxcbiAgZW46ICdTaG93IG1vcmUgYnJlYWRjcnVtYnMnLFxuICBmcjogJ0FmZmljaGVyIHBsdXMgZGUgZmlscyBk4oCZQXJpYW5lJyxcbiAgaXQ6ICdNb3N0cmEgcGnDuSBicmVhZGNydW1icycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsZWFySW5wdXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRmVsZGluaGFsdCBsw7ZzY2hlbicsXG4gIGVuOiAnQ2xlYXIgaW5wdXQgdmFsdWUnLFxuICBmcjogJ0VmZmFjZXIgbGEgdmFsZXVyIGTigJllbnRyw6llJyxcbiAgaXQ6ICdDYW5jZWxsYSBpbCB2YWxvcmUgZGVsbOKAmWlucHV0Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRmxpcENhcmQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnS2xpY2tlbiBTaWUgYXVmIGRpZXNlIEthcnRlIGbDvHIgRGV0YWlscycsXG4gIGVuOiAnQ2xpY2sgb24gdGhpcyBjYXJkIGZvciBkZXRhaWxzJyxcbiAgZnI6ICdDbGlxdWV6IHN1ciBjZXR0ZSBjYXJ0ZSBwb3VyIHBsdXMgZGUgZMOpdGFpbHMnLFxuICBpdDogJ0NsaWNjYSBzdSBxdWVzdGEgc2NoZWRhIHBlciBpIGRldHRhZ2xpJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUmV2ZXJzZUNhcmQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnS2xpY2tlbiBTaWUgYXVmIGRpZXNlIEthcnRlLCB1bSB6dXLDvGNrIHp1ciBadXNhbW1lbmZhc3N1bmcgenUgZ2VsYW5nZW4nLFxuICBlbjogJ0NsaWNrIG9uIHRoaXMgY2FyZCB0byBnbyBiYWNrIHRvIHRoZSBzdW1tYXJ5JyxcbiAgZnI6ICdDbGlxdWV6IHN1ciBjZXR0ZSBjYXJ0ZSBwb3VyIHJldmVuaXIgYXUgcsOpc3Vtw6knLFxuICBpdDogJ0NsaWNjYSBzdSBxdWVzdGEgc2NoZWRhIHBlciB0b3JuYXJlIGFsIHNvbW1hcmlvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRmlsZVNlbGVjdG9yQnV0dG9uTGFiZWw6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGF0ZWkgYXVzd8OkaGxlbicsXG4gIGVuOiAnQ2hvb3NlIGEgZmlsZScsXG4gIGZyOiAnQ2hvaXNpc3NleiB1biBmaWNoaWVyJyxcbiAgaXQ6ICdTY2VnbGkgdW4gZmlsZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsTXVsdGlwbGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGF0ZWllbiBhdXN3w6RobGVuJyxcbiAgZW46ICdDaG9vc2UgZmlsZXMnLFxuICBmcjogJ0Nob2lzaXNzZXogZGVzIGZpY2hpZXJzJyxcbiAgaXQ6ICdTY2VnbGkgZmlsZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvclN1YnRpdGxlTGFiZWw6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWmllaGVuIFNpZSBJaHJlIERhdGVpIGhpZXIgaGluIChEcmFnICYgRHJvcCknLFxuICBlbjogJ0RyYWcgJiBEcm9wIHlvdXIgZmlsZSBoZXJlJyxcbiAgZnI6ICdGYWl0ZXMgZ2xpc3NlciBldCBkw6lwb3NleiB2b3RyZSBmaWNoaWVyIGljaScsXG4gIGl0OiAnVHJhc2NpbmEgZSByaWxhc2NpYSBpbCBmaWxlIHF1aScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvclN1YnRpdGxlTGFiZWxNdWx0aXBsZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdaaWVoZW4gU2llIElocmUgRGF0ZWllbiBoaWVyIGhpbiAoRHJhZyAmIERyb3ApJyxcbiAgZW46ICdEcmFnICYgRHJvcCB5b3VyIGZpbGVzIGhlcmUnLFxuICBmcjogJ0ZhaXRlcyBnbGlzc2VyIGV0IGTDqXBvc2V6IHZvcyBmaWNoaWVycyBpY2knLFxuICBpdDogJ1RyYXNjaW5hIGUgcmlsYXNjaWEgaSBmaWxlIHF1aScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvckRlbGV0ZUZpbGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGF0ZWkgZW50ZmVybmVuJyxcbiAgZW46ICdSZW1vdmUgZmlsZScsXG4gIGZyOiAnRWZmYWNlciBsZSBmaWNoaWVyJyxcbiAgaXQ6ICdSaW11b3ZpIGlsIGZpbGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCA9IChmaWxlc05hbWU6IHN0cmluZ1tdKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiB7XG4gIGlmIChmaWxlc05hbWUgJiYgZmlsZXNOYW1lLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGU6IGBBa3R1ZWxsIGF1c2dld8OkaGx0ZSBEYXRlaTogJHtmaWxlc05hbWUuam9pbignLCAnKX0uYCxcbiAgICAgIGVuOiBgQ3VycmVudGx5IHNlbGVjdGVkIGZpbGVzOiAke2ZpbGVzTmFtZS5qb2luKCcsICcpfS5gLFxuICAgICAgZnI6IGBGaWNoaWVyIGFjdHVlbGxlbWVudCBzw6lsZWN0aW9ubsOpOiAke2ZpbGVzTmFtZS5qb2luKCcsICcpfS5gLFxuICAgICAgaXQ6IGBGaWxlIGF0dHVhbG1lbnRlIHNlbGV6aW9uYXRvOiAke2ZpbGVzTmFtZS5qb2luKCcsICcpfS5gLFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBkZTogJ0tlaW5lIERhdGVpIGF1c2dld8OkaGx0LicsXG4gICAgZW46ICdObyBmaWxlcyBzZWxlY3RlZC4nLFxuICAgIGZyOiAnTmVzc3VuIGZpY2hpZXIgc8OpbGVjdGlvbm7DqS4nLFxuICAgIGl0OiAnTmVzc3VuIGZpbGUgc2VsZXppb25hdG8uJyxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuTmV4dFBhZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTsOkY2hzdGUgU2VpdGUnLFxuICBlbjogJ05leHQgcGFnZScsXG4gIGZyOiAnUGFnZSBzdWl2YW50ZScsXG4gIGl0OiAnUGFnaW5hIHN1Y2Nlc3NpdmEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QcmV2aW91c1BhZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnVm9yaGVyaWdlIFNlaXRlJyxcbiAgZW46ICdQcmV2aW91cyBwYWdlJyxcbiAgZnI6ICdQYWdlIHByw6ljw6lkZW50ZScsXG4gIGl0OiAnUGFnaW5hIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QYWdlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1NlaXRlJyxcbiAgZW46ICdQYWdlJyxcbiAgZnI6ICdQYWdlJyxcbiAgaXQ6ICdQYWdpbmEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5JdGVtc1BlclBhZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRWludHLDpGdlIHBybyBTZWl0ZScsXG4gIGVuOiAnSXRlbXMgcGVyIHBhZ2UnLFxuICBmcjogJ0VudHLDqWVzIHBhciBwYWdlJyxcbiAgaXQ6ICdFbGVtZW50aSBwZXIgcGFnaW5hJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUGFnaW5hdG9yU2VsZWN0ZWQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiBgYXVzZ2V3w6RobHRgLFxuICBlbjogYHNlbGVjdGVkYCxcbiAgZnI6IGBzw6lsZWN0aW9ubsOpZWAsXG4gIGl0OiBgc2VsZXppb25hdGFgLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QYWdpbmF0b3JPZjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6IGB2b25gLFxuICBlbjogYG9mYCxcbiAgZnI6IGBzdXJgLFxuICBpdDogYGRpYCxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2hlY2tib3hSZXF1aXJlZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdNdXNzIGdlc2V0enQgc2Vpbi4nLFxuICBlbjogJ011c3QgYmUgY2hlY2tlZC4nLFxuICBmcjogJ0RvaXQgw6p0cmUgY29jaMOpZS4nLFxuICBpdDogJ0RldmUgZXNzZXJlIGltcG9zdGF0by4nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TZWxlY3Rpb25SZXF1aXJlZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdBdXN3YWhsIGVyZm9yZGVybGljaC4nLFxuICBlbjogJ1NlbGVjdGlvbiByZXF1aXJlZC4nLFxuICBmcjogJ1PDqWxlY3Rpb24gcmVxdWlzZS4nLFxuICBpdDogJ1NlbGV6aW9uZSBuZWNlc3NhcmlhLicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bklucHV0UmVxdWlyZWQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRWluZ2FiZSBlcmZvcmRlcmxpY2guJyxcbiAgZW46ICdJbnB1dCByZXF1aXJlZC4nLFxuICBmcjogJ0VudHLDqWUgb2JsaWdhdG9pcmUuJyxcbiAgaXQ6ICdJbnNlcmltZW50byBuZWNlc3NhcmlvLicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkRhdGVJbnZhbGlkOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0JpdHRlIGfDvGx0aWdlcyBEYXR1bSBlaW5nZWJlbi4nLFxuICBlbjogJ1BsZWFzZSBwcm92aWRlIGEgdmFsaWQgZGF0ZS4nLFxuICBmcjogJ1ZldWlsbGV6IHNhaXNpciB1bmUgZGF0ZSB2YWxpZGUuJyxcbiAgaXQ6ICdJbnNlcmlyZSB1bmEgZGF0YSB2YWxpZGEuJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRGF0ZU1pbiA9IChtaW46IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBEYXR1bSBkYXJmIG5pY2h0IHZvciAke21pbn0gc2Vpbi5gLFxuICBlbjogYERhdGUgbXVzdCBub3QgYmUgYmVmb3JlICR7bWlufS5gLFxuICBmcjogYExhIGRhdGUgbmUgZG9pdCBwYXMgw6p0cmUgYW50w6lyaWV1cmUgYXUgJHttaW59LmAsXG4gIGl0OiBgTGEgZGF0YSBub24gZGV2ZSBlc3NlcmUgYW50ZXJpb3JlIGFsICR7bWlufS5gLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpMThuRGF0ZU1heCA9IChtYXg6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBEYXR1bSBkYXJmIG5pY2h0IG5hY2ggJHttYXh9IHNlaW4uYCxcbiAgZW46IGBEYXRlIG11c3Qgbm90IGJlIGFmdGVyICR7bWF4fS5gLFxuICBmcjogYExhIGRhdGUgbmUgZG9pdCBwYXMgw6p0cmUgcG9zdMOpcmlldXJlIGF1ICR7bWF4fS5gLFxuICBpdDogYExhIGRhdGEgbm9uIGRldmUgZXNzZXJlIHN1Y2Nlc3NpdmEgYWwgJHttYXh9LmAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lSW5wdXRDaGFuZ2UgPSAodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBaZWl0IGdlw6RuZGVydCB6dSAke3ZhbHVlfS5gLFxuICBlbjogYFRpbWUgY2hhbmdlZCB0byAke3ZhbHVlfS5gLFxuICBmcjogYEhldXJlIG1vZGlmacOpZTogJHt2YWx1ZX0uYCxcbiAgaXQ6IGBPcmFyaW8gbW9kaWZpY2F0YSBhbGxlICR7dmFsdWV9LmAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lSW52YWxpZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdCaXR0ZSBnw7xsdGlnZSBaZWl0IGVpbmdlYmVuLicsXG4gIGVuOiAnUGxlYXNlIHByb3ZpZGUgYSB2YWxpZCB0aW1lLicsXG4gIGZyOiAnVmV1aWxsZXogc2Fpc2lyIHVuZSBoZXVyZSB2YWxpZGUuJyxcbiAgaXQ6ICdJbnNlcmlzY2kgdW4gb3JhcmlvIHZhbGlkby4nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lTWF4OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogYFplaXQgZGFyZiBuaWNodCBuYWNoIDIzOjU5IHNlaW4uYCxcbiAgZW46IGBUaW1lIG11c3Qgbm90IGJlIGFmdGVyIDIzOjU5LmAsXG4gIGZyOiBgTOKAmWhldXJlIG5lIGRvaXQgcGFzIMOqdHJlIHBvc3TDqXJpZXVyZSDDoCAyM2g1OS5gLFxuICBpdDogYEzigJlvcmFyaW8gbm9uIHB1w7IgZXNzZXJlIHN1Y2Nlc3Npdm8gYWxsZSAyMy41OS5gLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lTWF4TGVuZ3RoOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogYERpZSBaZWl0ZWluZ2FiZSBkYXJmIG5pY2h0IG1laHIgYWxzIGbDvG5mIFplaWNoZW4gaGFiZW4uYCxcbiAgZW46IGBUaGUgdGltZSBpbnB1dCBtdXN0IG5vdCBleGNlZWQgZml2ZSBjaGFyYWN0ZXJzLmAsXG4gIGZyOiBgTGEgc2Fpc2llIGRlIGzigJloZXVyZSBuZSBkb2l0IHBhcyBjb21wb3J0ZXIgcGx1cyBkZSBjaW5xIGNhcmFjdMOocmVzLmAsXG4gIGl0OiBgTOKAmWluZGljYXppb25lIHRlbXBvcmFsZSBub24gcHXDsiBjb250ZW5lcmUgcGnDuSBkaSBjaW5xdWUgY2FyYXR0ZXJpLmAsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNoaXBEZWxldGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRHLDvGNrZW4gU2llIGRpZSBFbnRmZXJuZW4tVGFzdGUgdW0gZGVuIENoaXAgenUgbMO2c2NoZW4nLFxuICBlbjogJ1ByZXNzIHRoZSBEZWxldGUgYnV0dG9uIHRvIHJlbW92ZSB0aGUgY2hpcCcsXG4gIGZyOiAnQXBwdXlleiBzdXIgbGEgdG91Y2hlIERlbCBwb3VyIHN1cHByaW1lciBjZXR0ZSBwdWNlJyxcbiAgaXQ6ICdQcmVtaSBpbCB0YXN0byBDYW5jIHBlciByaW11b3ZlcmUgcXVlc3RhIGNoaXAnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DaGlwR3JvdXBJbnB1dERlc2NyaXB0aW9uOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0F1c2dld8OkaGx0ZSBFbGVtZW50ZTonLFxuICBlbjogJ1NlbGVjdGVkIGVsZW1lbnRzOicsXG4gIGZyOiAnw4lsw6ltZW50cyBzw6lsZWN0aW9ubsOpczonLFxuICBpdDogJ0VsZW1lbnRpIHNlbGV6aW9uYXRpOicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNhbGVuZGFyV2Vla051bWJlcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdXb2NoZScsXG4gIGVuOiAnV2VlaycsXG4gIGZyOiAnU2VtYWluZScsXG4gIGl0OiAnU2V0dGltYW5hJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVGltZXRhYmxlRm9ybVN3YXBCdXR0b25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdWb24gdW5kIE5hY2ggdGF1c2NoZW4nLFxuICBlbjogJ1N3YXAgZnJvbSBhbmQgdG8nLFxuICBmcjogJ8OJY2hhbmdlciBkZSBldCDDoCcsXG4gIGl0OiAnSW52ZXJ0aSBEYSBlIEEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DYXJvdXNlbEl0ZW1BcmlhTGFiZWwgPSAoXG4gIGluZGV4OiBudW1iZXIsXG4gIHRvdGFsOiBudW1iZXIsXG4pOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0+ICh7XG4gIGRlOiBgJHtpbmRleH0gdm9uICR7dG90YWx9YCxcbiAgZW46IGAke2luZGV4fSBvZiAke3RvdGFsfWAsXG4gIGZyOiBgJHtpbmRleH0gc3VyICR7dG90YWx9YCxcbiAgaXQ6IGAke2luZGV4fSBkaSAke3RvdGFsfWAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DYXJvdXNlbEFycm93c05hdmlnYXRpb25IaW50OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0thcnVzc2VsbCDigJMgQmVudXR6ZW4gU2llIGRpZSBQZmVpbHRhc3RlbiBpbSBJbnRlcmFrdGlvbnNtb2R1cywgdW0gZHVyY2ggZGllIEZvbGllbiB6dSBuYXZpZ2llcmVuJyxcbiAgZW46ICdDYXJvdXNlbCAtIFVzZSB0aGUgYXJyb3cga2V5cyBpbiBpbnRlcmFjdGlvbiBtb2RlIHRvIG5hdmlnYXRlIHRocm91Z2ggdGhlIHNsaWRlcycsXG4gIGZyOiAnQ2Fycm91c2VsIOKAkyBVdGlsaXNleiBsZXMgdG91Y2hlcyBmbMOpY2jDqWVzIGVuIG1vZGUgaW50ZXJhY3Rpb24gcG91ciBuYXZpZ3VlciBkYW5zIGxlcyBkaWFwb3NpdGl2ZXMnLFxuICBpdDogJ0Nhcm9zZWxsbyDigJMgVXRpbGl6emFyZSBpIHRhc3RpIGZyZWNjaWEgaW4gbW9kYWxpdMOgIGludGVyYXppb25lIHBlciBuYXZpZ2FyZSB0cmEgbGUgc2xpZGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXh0U2xpZGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTsOkY2hzdGUgRm9saWUnLFxuICBlbjogJ05leHQgc2xpZGUnLFxuICBmcjogJ0RpYXBvc2l0aXZlIHN1aXZhbnRlJyxcbiAgaXQ6ICdTbGlkZSBzdWNjZXNzaXZhJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUHJldmlvdXNTbGlkZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdWb3JoZXJpZ2UgRm9saWUnLFxuICBlbjogJ1ByZXZpb3VzIHNsaWRlJyxcbiAgZnI6ICdEaWFwb3NpdGl2ZSBwcsOpY8OpZGVudGUnLFxuICBpdDogJ1NsaWRlIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TbGlkZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdGb2xpZScsXG4gIGVuOiAnU2xpZGUnLFxuICBmcjogJ0RpYXBvc2l0aXZlJyxcbiAgaXQ6ICdTbGlkZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4blJlbWFpbmluZ0NoYXJhY3RlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWmVpY2hlbiDDvGJyaWcnLFxuICBlbjogJ2NoYXJhY3RlcnMgcmVtYWluaW5nJyxcbiAgZnI6ICdjYXJhY3TDqHJlcyByZXN0YW50cycsXG4gIGl0OiAnY2FyYXR0ZXJpIHJpbWFuZW50aScsXG59O1xuIl0sIm1hcHBpbmdzIjoiO0FBRUEsSUFBYSxnQkFBd0M7Q0FDbkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGNBQXNDO0NBQ2pELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxhQUFxQztDQUNoRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsa0JBQTBDO0NBQ3JELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxVQUFrQztDQUM3QyxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsWUFBb0Q7Q0FDL0QsT0FBTztFQUNMLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sUUFBUTtFQUNOLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7OztBQUlSLElBQWEsWUFBb0M7Q0FDL0MsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGFBQXFDO0NBQ2hELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxrQkFBMEM7Q0FDckQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGlCQUF5QztDQUNwRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsdUJBQStDO0NBQzFELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSw2QkFBcUQ7Q0FDaEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHNCQUE4QztDQUN6RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEseUJBQWlEO0NBQzVELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSwwQkFBa0Q7Q0FDN0QsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDJCQUFtRDtDQUM5RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEscUJBQTZEO0NBQ3hFLFVBQVU7RUFDUixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE1BQU07RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE1BQU07RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOzs7QUFJUixJQUFhLHdDQUFnRTtDQUMzRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsZ0JBQXdDO0NBQ25ELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxxQkFBNkU7Q0FDeEYsUUFBUTtFQUNOLE1BQU07R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJOztFQUVOLE9BQU87R0FDTCxJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJOzs7Q0FHUixVQUFVO0VBQ1IsTUFBTTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7O0VBRU4sT0FBTztHQUNMLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7Ozs7QUFLVixJQUFhLG1CQUEyRTtDQUN0RixRQUFRO0VBQ04sTUFBTTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7O0VBRU4sT0FBTztHQUNMLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7OztDQUdSLFVBQVU7RUFDUixNQUFNO0dBQ0osSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTs7RUFFTixPQUFPO0dBQ0wsSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTs7OztBQUtWLElBQWEsa0JBQTBFO0NBQ3JGLFFBQVEsRUFDTixNQUFNO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTs7Q0FHUixVQUFVLEVBQ1IsTUFBTTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7OztBQUtWLElBQWEscUJBQTZDO0NBQ3hELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxtQkFBMkM7Q0FDdEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGtCQUEwQztDQUNyRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsbUJBQTJDO0NBQ3RELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSx3QkFBZ0Q7Q0FDM0QsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHlCQUFpRDtDQUM1RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsVUFBa0M7Q0FDN0MsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsaUJBQXlDO0NBQ3BELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxnQkFBOEQ7Q0FDekUsTUFBTTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sS0FBSztFQUNILElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sUUFBUTtFQUNOLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sTUFBTTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7OztBQUlSLElBQWEsdUJBQStEO0NBQzFFLFdBQVc7RUFDVCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE9BQU87RUFDTCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLEtBQUs7RUFDSCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLElBQUk7RUFDRixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLFNBQVM7RUFDUCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLGFBQWE7RUFDWCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE9BQU87RUFDTCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLFFBQVE7RUFDTixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLFNBQVM7RUFDUCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE1BQU07RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE9BQU87RUFDTCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOzs7QUFJUixJQUFhLGVBQXVDO0NBQ2xELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSw2QkFBcUQ7Q0FDaEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDZCQUFxRDtDQUNoRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsK0JBQXVEO0NBQ2xFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxpQkFBeUM7Q0FDcEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHdCQUFnRDtDQUMzRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsYUFBcUM7Q0FDaEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGtCQUEwQztDQUNyRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsc0JBQThDO0NBQ3pELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxtQkFBMkM7Q0FDdEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsYUFBcUM7Q0FDaEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLFlBQW9DO0NBQy9DLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxnQkFBd0M7Q0FDbkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG9CQUE0QztDQUN2RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsY0FBc0M7Q0FDakQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGtCQUEwQztDQUNyRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEseUJBQWlEO0NBQzVELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSw0QkFBb0Q7Q0FDL0QsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHFCQUFxQixlQUErQztDQUMvRSxJQUFJLDJCQUEyQixVQUFTO0NBQ3hDLElBQUksc0JBQXNCLFVBQVM7Q0FDbkMsSUFBSSxjQUFjLFVBQVM7Q0FDM0IsSUFBSSx5QkFBeUIsVUFBUzs7QUFHeEMsSUFBYSx5QkFBeUIsZUFBK0M7Q0FDbkYsSUFBSSw2QkFBNkIsVUFBUztDQUMxQyxJQUFJLDBCQUEwQixVQUFTO0NBQ3ZDLElBQUksZUFBZSxVQUFTO0NBQzVCLElBQUkseUJBQXlCLFVBQVM7O0FBR3hDLElBQWEsZUFBdUM7Q0FDbEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEscUJBQXFCLGlCQUFpRDtDQUNqRixJQUFJLGlEQUFpRCxZQUFXO0NBQ2hFLElBQUksOENBQThDLFlBQVc7Q0FDN0QsSUFBSSxvREFBb0QsWUFBVztDQUNuRSxJQUFJLHlEQUF5RCxZQUFXOztBQUcxRSxJQUFhLHlCQUF5QixpQkFBaUQ7Q0FDckYsSUFBSSxtREFBbUQsWUFBVztDQUNsRSxJQUFJLGtEQUFrRCxZQUFXO0NBQ2pFLElBQUksc0RBQXNELFlBQVc7Q0FDckUsSUFBSSx5REFBeUQsWUFBVzs7QUFHMUUsSUFBYSxtQkFBMkM7Q0FDdEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDRCQUFvRDtDQUMvRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsb0JBQTRDO0NBQ3ZELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxxQkFBNkM7Q0FDeEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsMkJBQTJCLGdCQUFnRDtDQUN0RixJQUFJLG1CQUFtQixXQUFVO0NBQ2pDLElBQUksZUFBZSxXQUFVO0NBQzdCLElBQUksZUFBZSxXQUFVO0NBQzdCLElBQUksZUFBZSxXQUFVOztBQUcvQixJQUFhLGVBQXVDO0NBQ2xELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxnQkFBd0M7Q0FDbkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDhCQUFzRDtDQUNqRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsb0NBQTREO0NBQ3ZFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxpQkFBeUM7Q0FDcEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGVBQXVDO0NBQ2xELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxrQkFBMEM7Q0FDckQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDhCQUFzRDtDQUNqRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsc0NBQThEO0NBQ3pFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxnQ0FBd0Q7Q0FDbkUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHdDQUFnRTtDQUMzRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsNkJBQXFEO0NBQ2hFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxxQ0FBcUMsY0FBK0M7Q0FDL0YsSUFBSSxhQUFhLFVBQVUsU0FBUyxHQUNsQyxPQUFPO0VBQ0wsSUFBSSw4QkFBOEIsVUFBVSxLQUFLLElBQUksRUFBQztFQUN0RCxJQUFJLDZCQUE2QixVQUFVLEtBQUssSUFBSSxFQUFDO0VBQ3JELElBQUkscUNBQXFDLFVBQVUsS0FBSyxJQUFJLEVBQUM7RUFDN0QsSUFBSSxpQ0FBaUMsVUFBVSxLQUFLLElBQUksRUFBQzs7Q0FHN0QsT0FBTztFQUNMLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0FBRVI7QUFFQSxJQUFhLGVBQXVDO0NBQ2xELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxtQkFBMkM7Q0FDdEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLFdBQW1DO0NBQzlDLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxtQkFBMkM7Q0FDdEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHdCQUFnRDtDQUMzRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsa0JBQTBDO0NBQ3JELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSx1QkFBK0M7Q0FDMUQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHdCQUFnRDtDQUMzRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsb0JBQTRDO0NBQ3ZELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxrQkFBMEM7Q0FDckQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGVBQWUsU0FBeUM7Q0FDbkUsSUFBSSx3QkFBd0IsSUFBRztDQUMvQixJQUFJLDJCQUEyQixJQUFHO0NBQ2xDLElBQUksMENBQTBDLElBQUc7Q0FDakQsSUFBSSx3Q0FBd0MsSUFBRzs7QUFHakQsSUFBYSxlQUFlLFNBQXlDO0NBQ25FLElBQUkseUJBQXlCLElBQUc7Q0FDaEMsSUFBSSwwQkFBMEIsSUFBRztDQUNqQyxJQUFJLDJDQUEyQyxJQUFHO0NBQ2xELElBQUkseUNBQXlDLElBQUc7O0FBR2xELElBQWEsdUJBQXVCLFdBQTJDO0NBQzdFLElBQUksb0JBQW9CLE1BQUs7Q0FDN0IsSUFBSSxtQkFBbUIsTUFBSztDQUM1QixJQUFJLG1CQUFtQixNQUFLO0NBQzVCLElBQUksMEJBQTBCLE1BQUs7O0FBR3JDLElBQWEsa0JBQTBDO0NBQ3JELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxjQUFzQztDQUNqRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsb0JBQTRDO0NBQ3ZELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxpQkFBeUM7Q0FDcEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGdDQUF3RDtDQUNuRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEseUJBQWlEO0NBQzVELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxtQ0FBMkQ7Q0FDdEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDZCQUNYLE9BQ0EsV0FDNEI7Q0FDNUIsSUFBSSxHQUFHLE1BQUssT0FBUTtDQUNwQixJQUFJLEdBQUcsTUFBSyxNQUFPO0NBQ25CLElBQUksR0FBRyxNQUFLLE9BQVE7Q0FDcEIsSUFBSSxHQUFHLE1BQUssTUFBTzs7QUFHckIsSUFBYSxtQ0FBMkQ7Q0FDdEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGdCQUF3QztDQUNuRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsb0JBQTRDO0NBQ3ZELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxZQUFvQztDQUMvQyxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsMEJBQWtEO0NBQzdELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUkifQ==
785
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9pMThuL2kxOG4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTYmJPY2N1cGFuY3kgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3R5cGVzLnRzJztcblxuZXhwb3J0IGNvbnN0IGkxOG5EaXJlY3Rpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnUmljaHR1bmcnLFxuICBlbjogJ0RpcmVjdGlvbicsXG4gIGZyOiAnRGlyZWN0aW9uJyxcbiAgaXQ6ICdEaXJlemlvbmUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5BcnJpdmFsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0Fua3VuZnQnLFxuICBlbjogJ0Fycml2YWwnLFxuICBmcjogJ0Fycml2w6llJyxcbiAgaXQ6ICdBcnJpdm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TZWN0b3I6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnU2VrdG9yJyxcbiAgZW46ICdTZWN0b3InLFxuICBmcjogJ1NlY3RldXInLFxuICBpdDogJ1NldHRvcmUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TZWN0b3JTaG9ydDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdTa3QuJyxcbiAgZW46ICdTZWMuJyxcbiAgZnI6ICdTZWN0LicsXG4gIGl0OiAnU2V0LicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkFuZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICd1bmQnLFxuICBlbjogJ2FuZCcsXG4gIGZyOiAnZXQnLFxuICBpdDogJ2UnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DbGFzczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4gPSB7XG4gIGZpcnN0OiB7XG4gICAgZGU6ICdFcnN0ZSBLbGFzc2UnLFxuICAgIGVuOiAnRmlyc3QgQ2xhc3MnLFxuICAgIGZyOiAnUHJlbWnDqHJlIGNsYXNzZScsXG4gICAgaXQ6ICdQcmltYSBjbGFzc2UnLFxuICB9LFxuICBzZWNvbmQ6IHtcbiAgICBkZTogJ1p3ZWl0ZSBLbGFzc2UnLFxuICAgIGVuOiAnU2Vjb25kIENsYXNzJyxcbiAgICBmcjogJ0RldXhpw6htZSBjbGFzc2UnLFxuICAgIGl0OiAnU2Vjb25kYSBjbGFzc2UnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmFpbjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdadWcnLFxuICBlbjogJ1RyYWluJyxcbiAgZnI6ICdUcmFpbicsXG4gIGl0OiAnVHJlbm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmFpbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWsO8Z2UnLFxuICBlbjogJ1RyYWlucycsXG4gIGZyOiAnVHJhaW5zJyxcbiAgaXQ6ICdUcmVuaScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bldhZ29uc0xhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1dhZ2VuIGRlcyBadWdlcycsXG4gIGVuOiAnQ29hY2hlcyBvZiB0aGUgdHJhaW4nLFxuICBmcjogJ1dhZ29ucyBkdSB0cmFpbicsXG4gIGl0OiAnQ2Fycm96emUgZGVsIHRyZW5vJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuV2Fnb25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdXYWdlbicsXG4gIGVuOiAnVHJhaW4gY29hY2gnLFxuICBmcjogJ1dhZ29uJyxcbiAgaXQ6ICdDYXJyb3p6YSBkZWwgdHJlbm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5XYWdvbkxhYmVsTnVtYmVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogYE51bW1lcmAsXG4gIGVuOiBgTnVtYmVyYCxcbiAgZnI6IGBOdW3DqXJvYCxcbiAgaXQ6IGBOdW1lcm9gLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DbG9zZWRDb21wYXJ0bWVudExhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0dlc2NobG9zc2VuZXIgWnVnd2FnZ29uJyxcbiAgZW46ICdDbG9zZWQgdHJhaW4gY29hY2gnLFxuICBmcjogJ1dhZ29uIGR1IHRyYWluIGZlcm3DqScsXG4gIGl0OiAnQ2Fycm96emEgZGVsIHRyZW5vIGNoaXVzbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkxvY29tb3RpdmVMYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdMb2tvbW90aXZlJyxcbiAgZW46ICdMb2NvbW90aXZlJyxcbiAgZnI6ICdMb2NvbW90aXZlJyxcbiAgaXQ6ICdMb2NvbW90aXZhJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuU2xlZXBpbmdXYWdvbkxhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1NjaGxhZndhZ2VuJyxcbiAgZW46ICdTbGVlcGluZyBjYXInLFxuICBmcjogJ1ZvaXR1cmUtbGl0cycsXG4gIGl0OiAnQ2Fycm96emEgbGV0dGknLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5Db3VjaGV0dGVXYWdvbkxhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0xpZWdld2FnZW4nLFxuICBlbjogJ0NvdWNoZXR0ZSBjYXInLFxuICBmcjogJ1ZvaXR1cmUtY291Y2hldHRlcycsXG4gIGl0OiAnQ2Fycm96emEgY3VjY2V0dGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5SZXN0YXVyYW50V2Fnb25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdTcGVpc2V3YWdlbicsXG4gIGVuOiAnRGluaW5nIGNhcicsXG4gIGZyOiAnVm9pdHVyZS1yZXN0YXVyYW50JyxcbiAgaXQ6ICdDYXJyb3p6YSByaXN0b3JhbnRlJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQmxvY2tlZFBhc3NhZ2U6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+ID0ge1xuICBwcmV2aW91czoge1xuICAgIGRlOiAnS2VpbiBEdXJjaGdhbmcgenVtIHZvcmhlcmlnZW4gV2FnZW4nLFxuICAgIGVuOiAnTm8gcGFzc2FnZSB0byB0aGUgcHJldmlvdXMgdHJhaW4gY29hY2gnLFxuICAgIGZyOiAnUGFzIGRlIHBhc3NhZ2UgYXUgd2Fnb24gZHUgdHJhaW4gcHLDqWPDqWRlbnQnLFxuICAgIGl0OiAnTmVzc3VuIHBhc3NhZ2dpbyBhbGxhIGNhcnJvenphIGRlbCB0cmVubyBwcmVjZWRlbnRlJyxcbiAgfSxcbiAgbmV4dDoge1xuICAgIGRlOiAnS2VpbiBEdXJjaGdhbmcgenVtIG7DpGNoc3RlbiBXYWdlbicsXG4gICAgZW46ICdObyBwYXNzYWdlIHRvIHRoZSBuZXh0IHRyYWluIGNvYWNoJyxcbiAgICBmcjogJ1BhcyBkZSBwYXNzYWdlIGF1IHdhZ29uIGR1IHRyYWluIHN1aXZhbnQnLFxuICAgIGl0OiAnTmVzc3VuIHBhc3NhZ2dpbyBhbGxhIGNhcnJvenphIGRlbCB0cmVubyBzdWNjZXNzaXZvJyxcbiAgfSxcbiAgYm90aDoge1xuICAgIGRlOiAnS2VpbiBEdXJjaGdhbmcgenVtIG7DpGNoc3RlbiB1bmQgdm9yaGVyaWdlbiBXYWdlbicsXG4gICAgZW46ICdObyBwYXNzYWdlIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyB0cmFpbiBjb2FjaCcsXG4gICAgZnI6ICdQYXMgZGUgcGFzc2FnZSBhdSB3YWdvbiBkdSB0cmFpbiBzdWl2YW50IGV0IHByw6ljw6lkZW50JyxcbiAgICBpdDogJ05lc3N1biBwYXNzYWdnaW8gYWxsYSBjYXJyb3p6YSBkZWwgdHJlbm8gc3VjY2Vzc2l2byBlIHByZWNlZGVudGUnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5BZGRpdGlvbmFsV2Fnb25JbmZvcm1hdGlvbkhlYWRpbmc6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWnVzw6R0emxpY2hlIFdhZ2VuaW5mb3JtYXRpb24nLFxuICBlbjogJ0FkZGl0aW9uYWwgd2Fnb24gaW5mb3JtYXRpb24nLFxuICBmcjogJ0luZm9ybWF0aW9ucyBzdXBwbMOpbWVudGFpcmVzIHN1ciBsZXMgd2Fnb25zJyxcbiAgaXQ6ICdJbmZvcm1hemlvbmkgYWdnaXVudGl2ZSBzdWxsYSBjYXJyb3p6YSBkZWwgdHJlbm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5EZXBhcnR1cmU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnQWJmYWhydCcsXG4gIGVuOiAnRGVwYXJ0dXJlJyxcbiAgZnI6ICdEw6lwYXJ0JyxcbiAgaXQ6ICdQYXJ0ZW56YScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkR1cmF0aW9uTWludXRlOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+Pj4gPSB7XG4gIHNpbmdsZToge1xuICAgIGxvbmc6IHtcbiAgICAgIGRlOiAnTWludXRlJyxcbiAgICAgIGVuOiAnTWludXRlJyxcbiAgICAgIGZyOiAnTWludXRlJyxcbiAgICAgIGl0OiAnTWludXRvJyxcbiAgICB9LFxuICAgIHNob3J0OiB7XG4gICAgICBkZTogJ20nLFxuICAgICAgZW46ICdtJyxcbiAgICAgIGZyOiAnbScsXG4gICAgICBpdDogJ20nLFxuICAgIH0sXG4gIH0sXG4gIG11bHRpcGxlOiB7XG4gICAgbG9uZzoge1xuICAgICAgZGU6ICdNaW51dGVuJyxcbiAgICAgIGVuOiAnTWludXRlcycsXG4gICAgICBmcjogJ01pbnV0ZXMnLFxuICAgICAgaXQ6ICdNaW51dGknLFxuICAgIH0sXG4gICAgc2hvcnQ6IHtcbiAgICAgIGRlOiAnTWluJyxcbiAgICAgIGVuOiAnbWluJyxcbiAgICAgIGZyOiAnbWluLicsXG4gICAgICBpdDogJ21pbnMnLFxuICAgIH0sXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkR1cmF0aW9uSG91cjogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4+ID0ge1xuICBzaW5nbGU6IHtcbiAgICBsb25nOiB7XG4gICAgICBkZTogJ1N0dW5kZScsXG4gICAgICBlbjogJ0hvdXInLFxuICAgICAgZnI6ICdIZXVyZScsXG4gICAgICBpdDogJ09yYScsXG4gICAgfSxcbiAgICBzaG9ydDoge1xuICAgICAgZGU6ICdTdGQuJyxcbiAgICAgIGVuOiAnaCcsXG4gICAgICBmcjogJ29yZScsXG4gICAgICBpdDogJ2hycycsXG4gICAgfSxcbiAgfSxcbiAgbXVsdGlwbGU6IHtcbiAgICBsb25nOiB7XG4gICAgICBkZTogJ1N0dW5kZW4nLFxuICAgICAgZW46ICdIb3VycycsXG4gICAgICBmcjogJ0hldXJlcycsXG4gICAgICBpdDogJ09yZScsXG4gICAgfSxcbiAgICBzaG9ydDoge1xuICAgICAgZGU6ICdTdGQuJyxcbiAgICAgIGVuOiAnaCcsXG4gICAgICBmcjogJ29yZScsXG4gICAgICBpdDogJ2hycycsXG4gICAgfSxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRHVyYXRpb25EYXk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+PiA9IHtcbiAgc2luZ2xlOiB7XG4gICAgbG9uZzoge1xuICAgICAgZGU6ICdUYWcnLFxuICAgICAgZW46ICdEYXknLFxuICAgICAgZnI6ICdKb3VyJyxcbiAgICAgIGl0OiAnR2lvcm5vJyxcbiAgICB9LFxuICB9LFxuICBtdWx0aXBsZToge1xuICAgIGxvbmc6IHtcbiAgICAgIGRlOiAnVGFnZScsXG4gICAgICBlbjogJ0RheXMnLFxuICAgICAgZnI6ICdKb3VycycsXG4gICAgICBpdDogJ0dpb3JuaScsXG4gICAgfSxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVHJpcFF1YXlDaGFuZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnR2xlaXPDpG5kZXJ1bmcgaW0gVmVybGF1ZiBkaWVzZXIgVmVyYmluZHVuZycsXG4gIGVuOiAnVHJhY2sgY2hhbmdlIGluIHRoZSBjb3Vyc2Ugb2YgdGhpcyBjb25uZWN0aW9uJyxcbiAgZnI6ICdDaGFuZ2VtZW50IGRlIHZvaWUgc3VyIGxlIHBhcmNvdXJzIGRlIGNldHRlIGNvbm5leGlvbicsXG4gIGl0OiAnQ2FtYmlhbWVudG8gZGkgYmluYXJpbyBuZWwgY29yc28gZGkgcXVlc3RhIGNvbm5lc3Npb25lJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVHJpcER1cmF0aW9uOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1JlaXNlZGF1ZXInLFxuICBlbjogJ1RyYXZlbCB0aW1lJyxcbiAgZnI6ICdEdXLDqWUgZHUgdm95YWdlJyxcbiAgaXQ6ICdEdXJhdGEgZGVsIHZpYWdnaW8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmF2ZWxoaW50czogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdSZWlzZWhpbndlaXNlJyxcbiAgZW46ICdUcmF2ZWxoaW50cycsXG4gIGZyOiAnSW5kaWNhdGlvbnMgc3VyIGxlIHZveWFnZScsXG4gIGl0OiAnSW5kaWNhemlvbmkgZGkgdmlhZ2dpbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4blJlYWxUaW1lSW5mbzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdFY2h0emVpdGluZm9ybWF0aW9uZW4nLFxuICBlbjogJ1JlYWwgdGltZSBpbmZvcm1hdGlvbicsXG4gIGZyOiAnSW5mb3JtYXRpb25zIGVuIHRlbXBzIHLDqWVsJyxcbiAgaXQ6ICdJbmZvcm1hemlvbmkgaW4gdGVtcG8gcmVhbGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UcmFuc2ZlclByb2NlZHVyZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdtYWwgdW1zdGVpZ2VuJyxcbiAgZW46ICdjaGFuZ2UnLFxuICBmcjogJ2NoYW5nZW1lbnQgZGUgdHJhaW4nLFxuICBpdDogJ2NhbWJpbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4blRyYW5zZmVyUHJvY2VkdXJlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdtYWwgdW1zdGVpZ2VuJyxcbiAgZW46ICdjaGFuZ2VzJyxcbiAgZnI6ICdjaGFuZ2VtZW50cyBkZSB0cmFpbicsXG4gIGl0OiAnY2FtYmknLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXc6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnbmV1JyxcbiAgZW46ICduZXcnLFxuICBmcjogJ25vdXZlYXUnLFxuICBpdDogJ251b3ZvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRnJvbVBsYXRmb3JtOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0F1ZicsXG4gIGVuOiAnb24nLFxuICBmcjogJ3N1cicsXG4gIGl0OiAnc3UnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TdXBlcnNhdmVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1NwYXJiaWxsZXR0ZScsXG4gIGVuOiAnU3VwZXJzYXZlciB0aWNrZXRzJyxcbiAgZnI6ICdCaWxsZXRzIGTDqWdyaWZmw6lzJyxcbiAgaXQ6ICdCaWdsaWV0dGkgcmlzcGFybWlvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuT2NjdXBhbmN5OiBSZWNvcmQ8U2JiT2NjdXBhbmN5LCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiA9IHtcbiAgbm9uZToge1xuICAgIGRlOiAnS2VpbmUgQmVsZWd1bmdzcHJvZ25vc2UgdmVyZsO8Z2JhcicsXG4gICAgZW46ICdObyBvY2N1cGFuY3kgZm9yZWNhc3QgYXZhaWxhYmxlJyxcbiAgICBmcjogXCJBdWN1bmUgcHLDqXZpc2lvbiBkJ29jY3VwYXRpb24gZGlzcG9uaWJsZVwiLFxuICAgIGl0OiAnTmVzc3VuYSBwcmV2aXNpb25lIGRpIG9jY3VwYXppb25lIGRpc3BvbmliaWxlJyxcbiAgfSxcbiAgbG93OiB7XG4gICAgZGU6ICdUaWVmZSBiaXMgbWl0dGxlcmUgQmVsZWd1bmcgZXJ3YXJ0ZXQnLFxuICAgIGVuOiAnTG93IHRvIGF2ZXJhZ2Ugb2NjdXBhbmN5IGV4cGVjdGVkJyxcbiAgICBmcjogJ1RhdXggZOKAmW9jY3VwYXRpb24gZmFpYmxlIMOgIG1veWVuIHByw6l2dScsXG4gICAgaXQ6ICfDiCBwcmV2aXN0YSB1buKAmW9jY3VwYXppb25lIG1lZGlvLWJhc3NhJyxcbiAgfSxcbiAgbWVkaXVtOiB7XG4gICAgZGU6ICdIb2hlIEJlbGVndW5nIGVyd2FydGV0JyxcbiAgICBlbjogJ0hpZ2ggb2NjdXBhbmN5IGV4cGVjdGVkJyxcbiAgICBmcjogJ1RhdXggZOKAmW9jY3VwYXRpb24gw6lsZXbDqSBwcsOpdnUnLFxuICAgIGl0OiAnw4ggcHJldmlzdGEgdW7igJlvY2N1cGF6aW9uZSBlbGV2YXRhJyxcbiAgfSxcbiAgaGlnaDoge1xuICAgIGRlOiAnU2VociBob2hlIEJlbGVndW5nIGVyd2FydGV0JyxcbiAgICBlbjogJ1ZlcnkgaGlnaCBvY2N1cGFuY3kgZXhwZWN0ZWQnLFxuICAgIGZyOiAnVGF1eCBk4oCZb2NjdXBhdGlvbiB0csOocyDDqWxldsOpIHByw6l2dScsXG4gICAgaXQ6ICfDiCBwcmV2aXN0YSB1buKAmW9jY3VwYXppb25lIG1vbHRvIGVsZXZhdGEnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5NZWFuc09mVHJhbnNwb3J0OiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiA9IHtcbiAgZnVuaWN1bGFyOiB7XG4gICAgZGU6ICdTZWlsYmFobi9aYWhucmFkYmFobicsXG4gICAgZW46ICdGdW5pY3VsYXIvQ29nIHJhaWx3YXknLFxuICAgIGZyOiAnRnVuaWN1bGFpcmUvQ2hlbWluIGRlIGZlciDDoCBjcsOpbWFpbGzDqHJlJyxcbiAgICBpdDogJ0Z1bml2aWEvRmVycm92aWEgYSBjcmVtYWdsaWVyYScsXG4gIH0sXG4gIGVjX2lkOiB7XG4gICAgZGU6ICdFQy9JQycsXG4gICAgZW46ICdFQy9JQycsXG4gICAgZnI6ICdFQy9JQycsXG4gICAgaXQ6ICdFQy9JQycsXG4gIH0sXG4gIGJ1czoge1xuICAgIGRlOiAnQnVzJyxcbiAgICBlbjogJ0J1cycsXG4gICAgZnI6ICdCdXMnLFxuICAgIGl0OiAnQnVzJyxcbiAgfSxcbiAgcmU6IHtcbiAgICBkZTogJ1JFJyxcbiAgICBlbjogJ1JFJyxcbiAgICBmcjogJ1JFJyxcbiAgICBpdDogJ1JFJyxcbiAgfSxcbiAgYXJ6X2V4dDoge1xuICAgIGRlOiAnQVJaL0VYVCcsXG4gICAgZW46ICdBUlovRVhUJyxcbiAgICBmcjogJ0FSWi9FWFQnLFxuICAgIGl0OiAnQVJaL0VYVCcsXG4gIH0sXG4gIGljZV90Z3Zfcmp4OiB7XG4gICAgZGU6ICdJQ0UvVEdWL1JKWCcsXG4gICAgZW46ICdJQ0UvVEdWL1JKWCcsXG4gICAgZnI6ICdJQ0UvVEdWL1JKWCcsXG4gICAgaXQ6ICdJQ0UvVEdWL1JKWCcsXG4gIH0sXG4gIGlyX3BlOiB7XG4gICAgZGU6ICdJUi9QRScsXG4gICAgZW46ICdJUi9QRScsXG4gICAgZnI6ICdJUi9QRScsXG4gICAgaXQ6ICdJUi9QRScsXG4gIH0sXG4gIHNfc25fcjoge1xuICAgIGRlOiAnUy9TTi9SJyxcbiAgICBlbjogJ1MvU04vUicsXG4gICAgZnI6ICdTL1NOL1InLFxuICAgIGl0OiAnUy9TTi9SJyxcbiAgfSxcbiAgdHJhbXdheToge1xuICAgIGRlOiAnVHJhbS9NZXRybycsXG4gICAgZW46ICdUcmFtd2F5L1VuZGVyZ3JvdW5kJyxcbiAgICBmcjogJ1RyYW0vTcOpdHJvJyxcbiAgICBpdDogJ1RyYW0vTWV0cm8nLFxuICB9LFxuICBzaGlwOiB7XG4gICAgZGU6ICdTY2hpZmYnLFxuICAgIGVuOiAnU2hpcCcsXG4gICAgZnI6ICdCYXRlYXUnLFxuICAgIGl0OiAnQmF0dGVsbG8nLFxuICB9LFxuICB0cmFpbjoge1xuICAgIGRlOiAnWnVnJyxcbiAgICBlbjogJ1RyYWluJyxcbiAgICBmcjogJ1RyYWluJyxcbiAgICBpdDogJ1RyZW5vJyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVGFyZ2V0T3BlbnNJbk5ld1dpbmRvdzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdMaW5remllbCDDtmZmbmV0IGluIG5ldWVtIEZlbnN0ZXIuJyxcbiAgZW46ICdMaW5rIHRhcmdldCBvcGVucyBpbiBhIG5ldyB3aW5kb3cuJyxcbiAgZnI6IFwiTGUgbGllbiBzJ291dnJlIGRhbnMgdW5lIG5vdXZlbGxlIGZlbsOqdHJlLlwiLFxuICBpdDogJ0lsIGxpbmsgc2kgYXByZSBpbiB1bmEgbnVvdmEgZmluZXN0cmEuJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuV2Fsa2luZ0Rpc3RhbmNlQXJyaXZhbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdNaW51dGVuIEZ1c3N3ZWcgbmFjaCBBbmt1bmZ0OicsXG4gIGVuOiAnbWludXRlcyBvZiB3YWxraW5nIHRpbWUgYWZ0ZXIgYXJyaXZhbDonLFxuICBmcjogJ21pbnV0ZXMgZGUgdHJhamV0IMOgIHBpZWQgYXByw6hzIGzigJlhcnJpdsOpZTonLFxuICBpdDogJ21pbnV0aSBhIHBpZWRpIGFsbOKAmWFycml2bzonLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5XYWxraW5nRGlzdGFuY2VEZXBhcnR1cmU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTWludXRlbiBGdXNzd2VnIHZvciBBYmZhaHJ0OicsXG4gIGVuOiAnbWludXRlcyBvZiB3YWxraW5nIHRpbWUgYmVmb3JlIGRlcGFydHVyZTonLFxuICBmcjogJ21pbnV0ZXMgZGUgdHJhamV0IMOgIHBpZWQgYXZhbnQgbGUgZMOpcGFydDonLFxuICBpdDogJ21pbnV0aSBhIHBpZWRpIHByaW1hIGRlbGxhIHBhcnRlbnphOicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsb3NlQWxlcnQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTWVsZHVuZyBzY2hsaWVzc2VuJyxcbiAgZW46ICdDbG9zZSBtZXNzYWdlJyxcbiAgZnI6ICdGZXJtZXIgbGUgbWVzc2FnZScsXG4gIGl0OiAnQ2hpdWRlcmUgaWwgbWVzc2FnZ2lvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2xvc2VOb3RpZmljYXRpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTmFjaHJpY2h0IHNjaGxpZXNzZW4nLFxuICBlbjogJ0Nsb3NlIG1lc3NhZ2UnLFxuICBmcjogJ0Zlcm1lciBsZSBtZXNzYWdlJyxcbiAgaXQ6ICdDaGl1ZGVyZSBpbCBtZXNzYWdnaW8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5EaWFsb2c6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGlhbG9nJyxcbiAgZW46ICdEaWFsb2cnLFxuICBmcjogJ0RpYWxvZ3VlJyxcbiAgaXQ6ICdEaWFsb2dvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2xvc2VEaWFsb2c6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnw5xiZXJnZWxhZ2VydGVzIEZlbnN0ZXIgc2NobGllc3NlbicsXG4gIGVuOiAnQ2xvc2Ugc2Vjb25kYXJ5IHdpbmRvdycsXG4gIGZyOiAnRmVybWVyIGxhIGZlbsOqdHJlIHN1cGVycG9zw6llJyxcbiAgaXQ6ICdDaGl1ZGVyZSBsYSBmaW5lc3RyYSBzb3ZyYXBwb3N0YScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsb3NlTmF2aWdhdGlvbjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdOYXZpZ2F0aW9uIHNjaGxpZXNzZW4nLFxuICBlbjogJ0Nsb3NlIG5hdmlnYXRpb24nLFxuICBmcjogJ0Zlcm1lciBsYSBuYXZpZ2F0aW9uJyxcbiAgaXQ6ICdDaGl1ZGVyZSBsYSBuYXZpZ2F6aW9uZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsb3NlU2lkZWJhcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdTZWl0ZW5sZWlzdGUgc2NobGllc3NlbicsXG4gIGVuOiAnQ2xvc2Ugc2lkZWJhcicsXG4gIGZyOiAnRmVybWVyIGxhIGJhcnJlIGxhdMOpcmFsZScsXG4gIGl0OiAnQ2hpdWRlcmUgbGEgYmFycmEgbGF0ZXJhbGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DbG9zZVBvcG92ZXI6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnSGlud2VpcyBzY2hsaWVzc2VuJyxcbiAgZW46ICdDbG9zZSBub3RlJyxcbiAgZnI6ICdGZXJtZXIgbGEgbm90ZScsXG4gIGl0OiAnQ2hpdWRlcmUgbGEgbm90YScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkdvQmFjazogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdadXLDvGNrJyxcbiAgZW46ICdHbyBiYWNrJyxcbiAgZnI6ICdSZXRvdXJuZXInLFxuICBpdDogJ0luZGlldHJvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVG9kYXk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnSGV1dGUnLFxuICBlbjogJ1RvZGF5JyxcbiAgZnI6ICdBdWpvdXJk4oCZaHVpJyxcbiAgaXQ6ICdPZ2dpJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuTmV4dE1vbnRoOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1p1bSBuw6RjaHN0ZW4gTW9uYXQgd2VjaHNlbG4nLFxuICBlbjogJ0NoYW5nZSB0byB0aGUgbmV4dCBtb250aCcsXG4gIGZyOiAnUGFzc2VyIGF1IG1vaXMgc3VpdmFudCcsXG4gIGl0OiAnUGFzc2FyZSBhbCBtZXNlIHN1Y2Nlc3Npdm8nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QcmV2aW91c01vbnRoOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1p1bSBsZXR6dGVuIE1vbmF0IHdlY2hzZWxuJyxcbiAgZW46ICdDaGFuZ2UgdG8gdGhlIHByZXZpb3VzIG1vbnRoJyxcbiAgZnI6ICdQYXNzZXIgYXUgbW9pcyBwcsOpY8OpZGVudCcsXG4gIGl0OiAnUGFzc2FyZSBhbCBtZXNlIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXh0RGF5OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ07DpGNoc3RlciBUYWcnLFxuICBlbjogJ05leHQgZGF5JyxcbiAgZnI6ICdKb3VyIHN1aXZhbnQnLFxuICBpdDogJ0dpb3JubyBzdWNjZXNzaXZvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUHJldmlvdXNEYXk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnVm9yaGVyaWdlciBUYWcnLFxuICBlbjogJ1ByZXZpb3VzIGRheScsXG4gIGZyOiAnSm91ciBwcsOpY8OpZGVudCcsXG4gIGl0OiAnR2lvcm5vIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5ZZWFyTW9udGhTZWxlY3Rpb246IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnSmFociB1bmQgTW9uYXQgYXVzd8OkaGxlbicsXG4gIGVuOiAnQ2hvb3NlIHllYXIgYW5kIG1vbnRoJyxcbiAgZnI6ICdDaG9pc2lyIGzigJlhbm7DqWUgZXQgbGUgbW9pcycsXG4gIGl0OiAnU2VsZXppb25hIGFubm8gZSBtZXNlJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2FsZW5kYXJEYXRlU2VsZWN0aW9uOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0RhdHVtIGF1c3fDpGhsZW4nLFxuICBlbjogJ0Nob29zZSBkYXRlJyxcbiAgZnI6ICdDaG9pc2lyIHVuZSBkYXRlJyxcbiAgaXQ6ICdTZWxlemlvbmEgdW5hIGRhdGEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXh0WWVhclJhbmdlID0gKHllYXJSYW5nZTogbnVtYmVyKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiAoe1xuICBkZTogYFdlY2hzZWwgenUgZGVuIG7DpGNoc3RlbiAke3llYXJSYW5nZX0gSmFocmVuYCxcbiAgZW46IGBDaGFuZ2UgdG8gdGhlIG5leHQgJHt5ZWFyUmFuZ2V9IHllYXJzYCxcbiAgZnI6IGBQYXNzZXIgYXV4ICR7eWVhclJhbmdlfSBwcm9jaGFpbmVzIGFubsOpZXNgLFxuICBpdDogYFBhc3NhcmUgYWkgc3VjY2Vzc2l2aSAke3llYXJSYW5nZX0gYW5uaWAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QcmV2aW91c1llYXJSYW5nZSA9ICh5ZWFyUmFuZ2U6IG51bWJlcik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBXZWNoc2VsIHp1IGRlbiB2b3JoZXJpZ2VuICR7eWVhclJhbmdlfSBKYWhyZW5gLFxuICBlbjogYENoYW5nZSB0byB0aGUgcHJldmlvdXMgJHt5ZWFyUmFuZ2V9IHllYXJzYCxcbiAgZnI6IGBQYXNzYWdlIGF1eCAke3llYXJSYW5nZX0gcHLDqWPDqWRlbnRlcyBhbm7DqWVzYCxcbiAgaXQ6IGBQYXNzYXJlIGFpIHByZWNlZGVudGkgJHt5ZWFyUmFuZ2V9IGFubmlgLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpMThuTmV4dFllYXI6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWnVtIG7DpGNoc3RlbiBKYWhyIHdlY2hzZWxuJyxcbiAgZW46ICdDaGFuZ2UgdG8gdGhlIG5leHQgeWVhcicsXG4gIGZyOiBcIlBhc3NlciDDoCBsJ2FubsOpZSBzdWl2YW50ZVwiLFxuICBpdDogXCJQYXNzYXJlIGFsbCdhbm5vIHN1Y2Nlc3Npdm9cIixcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUHJldmlvdXNZZWFyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1p1bSBsZXR6dGVuIEphaHIgd2VjaHNlbG4nLFxuICBlbjogJ0NoYW5nZSB0byB0aGUgcHJldmlvdXMgeWVhcicsXG4gIGZyOiBcIlBhc3NlciDDoCBsJ2FubsOpZSBwcsOpY8OpZGVudFwiLFxuICBpdDogXCJQYXNzYXJlIGFsbCdhbm5vIHByZWNlZGVudGVcIixcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuU2VsZWN0TmV4dERheSA9IChjdXJyZW50RGF0ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiAoe1xuICBkZTogYFp1bSBuw6RjaHN0ZW4gVGFnIHdlY2hzZWxuLCBkZXJ6ZWl0IGF1c2dld8OkaGx0ICR7Y3VycmVudERhdGV9LmAsXG4gIGVuOiBgQ2hhbmdlIHRvIHRoZSBuZXh0IGRheSwgY3VycmVudGx5IHNlbGVjdGVkICR7Y3VycmVudERhdGV9LmAsXG4gIGZyOiBgUGFzc2VyIGF1IGpvdXIgc3VpdmFudCwgYWN0dWVsbGVtZW50IHPDqWxlY3Rpb25uw6kgJHtjdXJyZW50RGF0ZX0uYCxcbiAgaXQ6IGBQYXNzYXJlIGFsIGdpb3JubyBzdWNjZXNzaXZvLCBhdHR1YWxtZW50ZSBzZWxlemlvbmF0byAke2N1cnJlbnREYXRlfS5gLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpMThuU2VsZWN0UHJldmlvdXNEYXkgPSAoY3VycmVudERhdGU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBadW0gdm9yaGVyaWdlbiBUYWcgd2VjaHNlbG4sIGRlcnplaXQgYXVzZ2V3w6RobHQgJHtjdXJyZW50RGF0ZX0uYCxcbiAgZW46IGBDaGFuZ2UgdG8gdGhlIHByZXZpb3VzIGRheSwgY3VycmVudGx5IHNlbGVjdGVkICR7Y3VycmVudERhdGV9LmAsXG4gIGZyOiBgUGFzc2VyIGF1IGpvdXIgcHLDqWPDqWRlbnQsIGFjdHVlbGxlbWVudCBzw6lsZWN0aW9ubsOpICR7Y3VycmVudERhdGV9LmAsXG4gIGl0OiBgUGFzc2FyZSBhbCBnaW9ybm8gcHJlY2VkZW50ZSwgYXR0dWFsbWVudGUgc2VsZXppb25hdG8gJHtjdXJyZW50RGF0ZX0uYCxcbn0pO1xuXG5leHBvcnQgY29uc3QgaTE4blNob3dDYWxlbmRhcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdLYWxlbmRlciBhbnplaWdlbicsXG4gIGVuOiAnU2hvdyBjYWxlbmRhcicsXG4gIGZyOiAnQWZmaWNoZXIgbGUgY2FsZW5kcmllcicsXG4gIGl0OiAnVmlzdWFsaXp6YSBpbCBjYWxlbmRhcmlvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRGF0ZVBpY2tlclBsYWNlaG9sZGVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1RULk1NLkpKSkonLFxuICBlbjogJ0RELk1NLllZWVknLFxuICBmcjogJ0pKLk1NLkFBQUEnLFxuICBpdDogJ0dHLk1NLkFBQUEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5EYXRlQ2hhbmdlZFRvOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0RhdHVtIGdlw6RuZGVydCBhdWYnLFxuICBlbjogJ0RhdGUgY2hhbmdlZCB0bycsXG4gIGZyOiAnRGF0ZSBtb2RpZmnDqWUgYXUnLFxuICBpdDogJ0RhdGEgbW9kaWZpY2F0YSBpbicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNvbm5lY3Rpb25Gcm9tOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1ZlcmJpbmR1bmcgdm9uJyxcbiAgZW46ICdDb25uZWN0aW9uIGZyb20nLFxuICBmcjogJ0xpYWlzb24gZGUnLFxuICBpdDogJ0NvbGxlZ2FtZW50byBkYScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNvbm5lY3Rpb25UbzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICduYWNoJyxcbiAgZW46ICd0bycsXG4gIGZyOiAnw6AnLFxuICBpdDogJ2EnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5Db25uZWN0aW9uUm91bmR0cmlwID0gKHJldHVybkNpdHk6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGB1bmQgenVyw7xjayBuYWNoICR7cmV0dXJuQ2l0eX0uYCxcbiAgZW46IGBhbmQgYmFjayB0byAke3JldHVybkNpdHl9LmAsXG4gIGZyOiBgZXQgcmV0b3VyIMOgICR7cmV0dXJuQ2l0eX0uYCxcbiAgaXQ6IGBlIHJpdG9ybm8gYSAke3JldHVybkNpdHl9LmAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5FeHBhbmRlZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdlcndlaXRlcnQnLFxuICBlbjogJ2V4cGFuZGVkJyxcbiAgZnI6ICfDqXRlbmR1JyxcbiAgaXQ6ICdlc3BhbnNvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ29sbGFwc2VkOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ3JlZHV6aWVydCcsXG4gIGVuOiAnY29sbGFwc2VkJyxcbiAgZnI6ICdjb25kZW5zw6knLFxuICBpdDogJ2NvbXByZXNzbycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bk1hcENvbnRhaW5lckJ1dHRvbkxhYmVsOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0thcnRlIHplaWdlbicsXG4gIGVuOiAnU2hvdyBtYXAnLFxuICBmcjogJ0FmZmljaGVyIGxhIGNhcnRlJyxcbiAgaXQ6ICdNb3N0cmEgbGEgbWFwcGEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5CcmVhZGNydW1iRWxsaXBzaXNCdXR0b25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdNZWhyIEJyZWFkY3J1bWJzIGFuemVpZ2VuJyxcbiAgZW46ICdTaG93IG1vcmUgYnJlYWRjcnVtYnMnLFxuICBmcjogJ0FmZmljaGVyIHBsdXMgZGUgZmlscyBk4oCZQXJpYW5lJyxcbiAgaXQ6ICdNb3N0cmEgcGnDuSBicmVhZGNydW1icycsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNsZWFySW5wdXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRmVsZGluaGFsdCBsw7ZzY2hlbicsXG4gIGVuOiAnQ2xlYXIgaW5wdXQgdmFsdWUnLFxuICBmcjogJ0VmZmFjZXIgbGEgdmFsZXVyIGTigJllbnRyw6llJyxcbiAgaXQ6ICdDYW5jZWxsYSBpbCB2YWxvcmUgZGVsbOKAmWlucHV0Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRmxpcENhcmQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnS2xpY2tlbiBTaWUgYXVmIGRpZXNlIEthcnRlIGbDvHIgRGV0YWlscycsXG4gIGVuOiAnQ2xpY2sgb24gdGhpcyBjYXJkIGZvciBkZXRhaWxzJyxcbiAgZnI6ICdDbGlxdWV6IHN1ciBjZXR0ZSBjYXJ0ZSBwb3VyIHBsdXMgZGUgZMOpdGFpbHMnLFxuICBpdDogJ0NsaWNjYSBzdSBxdWVzdGEgc2NoZWRhIHBlciBpIGRldHRhZ2xpJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUmV2ZXJzZUNhcmQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnS2xpY2tlbiBTaWUgYXVmIGRpZXNlIEthcnRlLCB1bSB6dXLDvGNrIHp1ciBadXNhbW1lbmZhc3N1bmcgenUgZ2VsYW5nZW4nLFxuICBlbjogJ0NsaWNrIG9uIHRoaXMgY2FyZCB0byBnbyBiYWNrIHRvIHRoZSBzdW1tYXJ5JyxcbiAgZnI6ICdDbGlxdWV6IHN1ciBjZXR0ZSBjYXJ0ZSBwb3VyIHJldmVuaXIgYXUgcsOpc3Vtw6knLFxuICBpdDogJ0NsaWNjYSBzdSBxdWVzdGEgc2NoZWRhIHBlciB0b3JuYXJlIGFsIHNvbW1hcmlvJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRmlsZVNlbGVjdG9yQnV0dG9uTGFiZWw6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGF0ZWkgYXVzd8OkaGxlbicsXG4gIGVuOiAnQ2hvb3NlIGEgZmlsZScsXG4gIGZyOiAnQ2hvaXNpc3NleiB1biBmaWNoaWVyJyxcbiAgaXQ6ICdTY2VnbGkgdW4gZmlsZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsTXVsdGlwbGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGF0ZWllbiBhdXN3w6RobGVuJyxcbiAgZW46ICdDaG9vc2UgZmlsZXMnLFxuICBmcjogJ0Nob2lzaXNzZXogZGVzIGZpY2hpZXJzJyxcbiAgaXQ6ICdTY2VnbGkgZmlsZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvclN1YnRpdGxlTGFiZWw6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWmllaGVuIFNpZSBJaHJlIERhdGVpIGhpZXIgaGluIChEcmFnICYgRHJvcCknLFxuICBlbjogJ0RyYWcgJiBEcm9wIHlvdXIgZmlsZSBoZXJlJyxcbiAgZnI6ICdGYWl0ZXMgZ2xpc3NlciBldCBkw6lwb3NleiB2b3RyZSBmaWNoaWVyIGljaScsXG4gIGl0OiAnVHJhc2NpbmEgZSByaWxhc2NpYSBpbCBmaWxlIHF1aScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvclN1YnRpdGxlTGFiZWxNdWx0aXBsZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdaaWVoZW4gU2llIElocmUgRGF0ZWllbiBoaWVyIGhpbiAoRHJhZyAmIERyb3ApJyxcbiAgZW46ICdEcmFnICYgRHJvcCB5b3VyIGZpbGVzIGhlcmUnLFxuICBmcjogJ0ZhaXRlcyBnbGlzc2VyIGV0IGTDqXBvc2V6IHZvcyBmaWNoaWVycyBpY2knLFxuICBpdDogJ1RyYXNjaW5hIGUgcmlsYXNjaWEgaSBmaWxlIHF1aScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkZpbGVTZWxlY3RvckRlbGV0ZUZpbGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRGF0ZWkgZW50ZmVybmVuJyxcbiAgZW46ICdSZW1vdmUgZmlsZScsXG4gIGZyOiAnRWZmYWNlciBsZSBmaWNoaWVyJyxcbiAgaXQ6ICdSaW11b3ZpIGlsIGZpbGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCA9IChmaWxlc05hbWU6IHN0cmluZ1tdKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiB7XG4gIGlmIChmaWxlc05hbWUgJiYgZmlsZXNOYW1lLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGU6IGBBa3R1ZWxsIGF1c2dld8OkaGx0ZSBEYXRlaTogJHtmaWxlc05hbWUuam9pbignLCAnKX0uYCxcbiAgICAgIGVuOiBgQ3VycmVudGx5IHNlbGVjdGVkIGZpbGVzOiAke2ZpbGVzTmFtZS5qb2luKCcsICcpfS5gLFxuICAgICAgZnI6IGBGaWNoaWVyIGFjdHVlbGxlbWVudCBzw6lsZWN0aW9ubsOpOiAke2ZpbGVzTmFtZS5qb2luKCcsICcpfS5gLFxuICAgICAgaXQ6IGBGaWxlIGF0dHVhbG1lbnRlIHNlbGV6aW9uYXRvOiAke2ZpbGVzTmFtZS5qb2luKCcsICcpfS5gLFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBkZTogJ0tlaW5lIERhdGVpIGF1c2dld8OkaGx0LicsXG4gICAgZW46ICdObyBmaWxlcyBzZWxlY3RlZC4nLFxuICAgIGZyOiAnTmVzc3VuIGZpY2hpZXIgc8OpbGVjdGlvbm7DqS4nLFxuICAgIGl0OiAnTmVzc3VuIGZpbGUgc2VsZXppb25hdG8uJyxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuTmV4dFBhZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTsOkY2hzdGUgU2VpdGUnLFxuICBlbjogJ05leHQgcGFnZScsXG4gIGZyOiAnUGFnZSBzdWl2YW50ZScsXG4gIGl0OiAnUGFnaW5hIHN1Y2Nlc3NpdmEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QcmV2aW91c1BhZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnVm9yaGVyaWdlIFNlaXRlJyxcbiAgZW46ICdQcmV2aW91cyBwYWdlJyxcbiAgZnI6ICdQYWdlIHByw6ljw6lkZW50ZScsXG4gIGl0OiAnUGFnaW5hIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QYWdlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ1NlaXRlJyxcbiAgZW46ICdQYWdlJyxcbiAgZnI6ICdQYWdlJyxcbiAgaXQ6ICdQYWdpbmEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5JdGVtc1BlclBhZ2U6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRWludHLDpGdlIHBybyBTZWl0ZScsXG4gIGVuOiAnSXRlbXMgcGVyIHBhZ2UnLFxuICBmcjogJ0VudHLDqWVzIHBhciBwYWdlJyxcbiAgaXQ6ICdFbGVtZW50aSBwZXIgcGFnaW5hJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUGFnaW5hdG9yU2VsZWN0ZWQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiBgYXVzZ2V3w6RobHRgLFxuICBlbjogYHNlbGVjdGVkYCxcbiAgZnI6IGBzw6lsZWN0aW9ubsOpZWAsXG4gIGl0OiBgc2VsZXppb25hdGFgLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5QYWdpbmF0b3JPZjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6IGB2b25gLFxuICBlbjogYG9mYCxcbiAgZnI6IGBzdXJgLFxuICBpdDogYGRpYCxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuQ2hlY2tib3hSZXF1aXJlZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdNdXNzIGdlc2V0enQgc2Vpbi4nLFxuICBlbjogJ011c3QgYmUgY2hlY2tlZC4nLFxuICBmcjogJ0RvaXQgw6p0cmUgY29jaMOpZS4nLFxuICBpdDogJ0RldmUgZXNzZXJlIGltcG9zdGF0by4nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TZWxlY3Rpb25SZXF1aXJlZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdBdXN3YWhsIGVyZm9yZGVybGljaC4nLFxuICBlbjogJ1NlbGVjdGlvbiByZXF1aXJlZC4nLFxuICBmcjogJ1PDqWxlY3Rpb24gcmVxdWlzZS4nLFxuICBpdDogJ1NlbGV6aW9uZSBuZWNlc3NhcmlhLicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bklucHV0UmVxdWlyZWQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRWluZ2FiZSBlcmZvcmRlcmxpY2guJyxcbiAgZW46ICdJbnB1dCByZXF1aXJlZC4nLFxuICBmcjogJ0VudHLDqWUgb2JsaWdhdG9pcmUuJyxcbiAgaXQ6ICdJbnNlcmltZW50byBuZWNlc3NhcmlvLicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkRhdGVJbnZhbGlkOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0JpdHRlIGfDvGx0aWdlcyBEYXR1bSBlaW5nZWJlbi4nLFxuICBlbjogJ1BsZWFzZSBwcm92aWRlIGEgdmFsaWQgZGF0ZS4nLFxuICBmcjogJ1ZldWlsbGV6IHNhaXNpciB1bmUgZGF0ZSB2YWxpZGUuJyxcbiAgaXQ6ICdJbnNlcmlyZSB1bmEgZGF0YSB2YWxpZGEuJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuRGF0ZU1pbiA9IChtaW46IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBEYXR1bSBkYXJmIG5pY2h0IHZvciAke21pbn0gc2Vpbi5gLFxuICBlbjogYERhdGUgbXVzdCBub3QgYmUgYmVmb3JlICR7bWlufS5gLFxuICBmcjogYExhIGRhdGUgbmUgZG9pdCBwYXMgw6p0cmUgYW50w6lyaWV1cmUgYXUgJHttaW59LmAsXG4gIGl0OiBgTGEgZGF0YSBub24gZGV2ZSBlc3NlcmUgYW50ZXJpb3JlIGFsICR7bWlufS5gLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpMThuRGF0ZU1heCA9IChtYXg6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBEYXR1bSBkYXJmIG5pY2h0IG5hY2ggJHttYXh9IHNlaW4uYCxcbiAgZW46IGBEYXRlIG11c3Qgbm90IGJlIGFmdGVyICR7bWF4fS5gLFxuICBmcjogYExhIGRhdGUgbmUgZG9pdCBwYXMgw6p0cmUgcG9zdMOpcmlldXJlIGF1ICR7bWF4fS5gLFxuICBpdDogYExhIGRhdGEgbm9uIGRldmUgZXNzZXJlIHN1Y2Nlc3NpdmEgYWwgJHttYXh9LmAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lSW5wdXRDaGFuZ2UgPSAodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4gKHtcbiAgZGU6IGBaZWl0IGdlw6RuZGVydCB6dSAke3ZhbHVlfS5gLFxuICBlbjogYFRpbWUgY2hhbmdlZCB0byAke3ZhbHVlfS5gLFxuICBmcjogYEhldXJlIG1vZGlmacOpZTogJHt2YWx1ZX0uYCxcbiAgaXQ6IGBPcmFyaW8gbW9kaWZpY2F0YSBhbGxlICR7dmFsdWV9LmAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lSW52YWxpZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdCaXR0ZSBnw7xsdGlnZSBaZWl0IGVpbmdlYmVuLicsXG4gIGVuOiAnUGxlYXNlIHByb3ZpZGUgYSB2YWxpZCB0aW1lLicsXG4gIGZyOiAnVmV1aWxsZXogc2Fpc2lyIHVuZSBoZXVyZSB2YWxpZGUuJyxcbiAgaXQ6ICdJbnNlcmlzY2kgdW4gb3JhcmlvIHZhbGlkby4nLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lTWF4OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogYFplaXQgZGFyZiBuaWNodCBuYWNoIDIzOjU5IHNlaW4uYCxcbiAgZW46IGBUaW1lIG11c3Qgbm90IGJlIGFmdGVyIDIzOjU5LmAsXG4gIGZyOiBgTOKAmWhldXJlIG5lIGRvaXQgcGFzIMOqdHJlIHBvc3TDqXJpZXVyZSDDoCAyM2g1OS5gLFxuICBpdDogYEzigJlvcmFyaW8gbm9uIHB1w7IgZXNzZXJlIHN1Y2Nlc3Npdm8gYWxsZSAyMy41OS5gLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5UaW1lTWF4TGVuZ3RoOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogYERpZSBaZWl0ZWluZ2FiZSBkYXJmIG5pY2h0IG1laHIgYWxzIGbDvG5mIFplaWNoZW4gaGFiZW4uYCxcbiAgZW46IGBUaGUgdGltZSBpbnB1dCBtdXN0IG5vdCBleGNlZWQgZml2ZSBjaGFyYWN0ZXJzLmAsXG4gIGZyOiBgTGEgc2Fpc2llIGRlIGzigJloZXVyZSBuZSBkb2l0IHBhcyBjb21wb3J0ZXIgcGx1cyBkZSBjaW5xIGNhcmFjdMOocmVzLmAsXG4gIGl0OiBgTOKAmWluZGljYXppb25lIHRlbXBvcmFsZSBub24gcHXDsiBjb250ZW5lcmUgcGnDuSBkaSBjaW5xdWUgY2FyYXR0ZXJpLmAsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNoaXBEZWxldGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnRHLDvGNrZW4gU2llIGRpZSBFbnRmZXJuZW4tVGFzdGUgdW0gZGVuIENoaXAgenUgbMO2c2NoZW4nLFxuICBlbjogJ1ByZXNzIHRoZSBEZWxldGUgYnV0dG9uIHRvIHJlbW92ZSB0aGUgY2hpcCcsXG4gIGZyOiAnQXBwdXlleiBzdXIgbGEgdG91Y2hlIERlbCBwb3VyIHN1cHByaW1lciBjZXR0ZSBwdWNlJyxcbiAgaXQ6ICdQcmVtaSBpbCB0YXN0byBDYW5jIHBlciByaW11b3ZlcmUgcXVlc3RhIGNoaXAnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DaGlwR3JvdXBJbnB1dERlc2NyaXB0aW9uOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0F1c2dld8OkaGx0ZSBFbGVtZW50ZTonLFxuICBlbjogJ1NlbGVjdGVkIGVsZW1lbnRzOicsXG4gIGZyOiAnw4lsw6ltZW50cyBzw6lsZWN0aW9ubsOpczonLFxuICBpdDogJ0VsZW1lbnRpIHNlbGV6aW9uYXRpOicsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4bkNhbGVuZGFyV2Vla051bWJlcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdXb2NoZScsXG4gIGVuOiAnV2VlaycsXG4gIGZyOiAnU2VtYWluZScsXG4gIGl0OiAnU2V0dGltYW5hJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuVGltZXRhYmxlRm9ybVN3YXBCdXR0b25MYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdWb24gdW5kIE5hY2ggdGF1c2NoZW4nLFxuICBlbjogJ1N3YXAgZnJvbSBhbmQgdG8nLFxuICBmcjogJ8OJY2hhbmdlciBkZSBldCDDoCcsXG4gIGl0OiAnSW52ZXJ0aSBEYSBlIEEnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DYXJvdXNlbEl0ZW1BcmlhTGFiZWwgPSAoXG4gIGluZGV4OiBudW1iZXIsXG4gIHRvdGFsOiBudW1iZXIsXG4pOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0+ICh7XG4gIGRlOiBgJHtpbmRleH0gdm9uICR7dG90YWx9YCxcbiAgZW46IGAke2luZGV4fSBvZiAke3RvdGFsfWAsXG4gIGZyOiBgJHtpbmRleH0gc3VyICR7dG90YWx9YCxcbiAgaXQ6IGAke2luZGV4fSBkaSAke3RvdGFsfWAsXG59KTtcblxuZXhwb3J0IGNvbnN0IGkxOG5DYXJvdXNlbEFycm93c05hdmlnYXRpb25IaW50OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBkZTogJ0thcnVzc2VsbCDigJMgQmVudXR6ZW4gU2llIGRpZSBQZmVpbHRhc3RlbiBpbSBJbnRlcmFrdGlvbnNtb2R1cywgdW0gZHVyY2ggZGllIEZvbGllbiB6dSBuYXZpZ2llcmVuJyxcbiAgZW46ICdDYXJvdXNlbCAtIFVzZSB0aGUgYXJyb3cga2V5cyBpbiBpbnRlcmFjdGlvbiBtb2RlIHRvIG5hdmlnYXRlIHRocm91Z2ggdGhlIHNsaWRlcycsXG4gIGZyOiAnQ2Fycm91c2VsIOKAkyBVdGlsaXNleiBsZXMgdG91Y2hlcyBmbMOpY2jDqWVzIGVuIG1vZGUgaW50ZXJhY3Rpb24gcG91ciBuYXZpZ3VlciBkYW5zIGxlcyBkaWFwb3NpdGl2ZXMnLFxuICBpdDogJ0Nhcm9zZWxsbyDigJMgVXRpbGl6emFyZSBpIHRhc3RpIGZyZWNjaWEgaW4gbW9kYWxpdMOgIGludGVyYXppb25lIHBlciBuYXZpZ2FyZSB0cmEgbGUgc2xpZGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5OZXh0U2xpZGU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnTsOkY2hzdGUgRm9saWUnLFxuICBlbjogJ05leHQgc2xpZGUnLFxuICBmcjogJ0RpYXBvc2l0aXZlIHN1aXZhbnRlJyxcbiAgaXQ6ICdTbGlkZSBzdWNjZXNzaXZhJyxcbn07XG5cbmV4cG9ydCBjb25zdCBpMThuUHJldmlvdXNTbGlkZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdWb3JoZXJpZ2UgRm9saWUnLFxuICBlbjogJ1ByZXZpb3VzIHNsaWRlJyxcbiAgZnI6ICdEaWFwb3NpdGl2ZSBwcsOpY8OpZGVudGUnLFxuICBpdDogJ1NsaWRlIHByZWNlZGVudGUnLFxufTtcblxuZXhwb3J0IGNvbnN0IGkxOG5TbGlkZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgZGU6ICdGb2xpZScsXG4gIGVuOiAnU2xpZGUnLFxuICBmcjogJ0RpYXBvc2l0aXZlJyxcbiAgaXQ6ICdTbGlkZScsXG59O1xuXG5leHBvcnQgY29uc3QgaTE4blJlbWFpbmluZ0NoYXJhY3RlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gIGRlOiAnWmVpY2hlbiDDvGJyaWcnLFxuICBlbjogJ2NoYXJhY3RlcnMgcmVtYWluaW5nJyxcbiAgZnI6ICdjYXJhY3TDqHJlcyByZXN0YW50cycsXG4gIGl0OiAnY2FyYXR0ZXJpIHJpbWFuZW50aScsXG59O1xuIl0sIm1hcHBpbmdzIjoiO0FBRUEsSUFBYSxnQkFBd0M7Q0FDbkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGNBQXNDO0NBQ2pELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxhQUFxQztDQUNoRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsa0JBQTBDO0NBQ3JELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxVQUFrQztDQUM3QyxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsWUFBb0Q7Q0FDL0QsT0FBTztFQUNMLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sUUFBUTtFQUNOLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7OztBQUlSLElBQWEsWUFBb0M7Q0FDL0MsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGFBQXFDO0NBQ2hELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxrQkFBMEM7Q0FDckQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGlCQUF5QztDQUNwRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsdUJBQStDO0NBQzFELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSw2QkFBcUQ7Q0FDaEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHNCQUE4QztDQUN6RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEseUJBQWlEO0NBQzVELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSwwQkFBa0Q7Q0FDN0QsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDJCQUFtRDtDQUM5RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEscUJBQTZEO0NBQ3hFLFVBQVU7RUFDUixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE1BQU07RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE1BQU07RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOzs7QUFJUixJQUFhLHdDQUFnRTtDQUMzRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsZ0JBQXdDO0NBQ25ELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxxQkFBNkU7Q0FDeEYsUUFBUTtFQUNOLE1BQU07R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJOztFQUVOLE9BQU87R0FDTCxJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJOzs7Q0FHUixVQUFVO0VBQ1IsTUFBTTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7O0VBRU4sT0FBTztHQUNMLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7Ozs7QUFLVixJQUFhLG1CQUEyRTtDQUN0RixRQUFRO0VBQ04sTUFBTTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7O0VBRU4sT0FBTztHQUNMLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTtHQUNKLElBQUk7OztDQUdSLFVBQVU7RUFDUixNQUFNO0dBQ0osSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTs7RUFFTixPQUFPO0dBQ0wsSUFBSTtHQUNKLElBQUk7R0FDSixJQUFJO0dBQ0osSUFBSTs7OztBQUtWLElBQWEsa0JBQTBFO0NBQ3JGLFFBQVEsRUFDTixNQUFNO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTs7Q0FHUixVQUFVLEVBQ1IsTUFBTTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7OztBQUtWLElBQWEscUJBQTZDO0NBQ3hELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxtQkFBMkM7Q0FDdEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGtCQUEwQztDQUNyRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsbUJBQTJDO0NBQ3RELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSx3QkFBZ0Q7Q0FDM0QsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHlCQUFpRDtDQUM1RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsVUFBa0M7Q0FDN0MsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsaUJBQXlDO0NBQ3BELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxnQkFBOEQ7Q0FDekUsTUFBTTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sS0FBSztFQUNILElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sUUFBUTtFQUNOLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7O0NBRU4sTUFBTTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7OztBQUlSLElBQWEsdUJBQStEO0NBQzFFLFdBQVc7RUFDVCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE9BQU87RUFDTCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLEtBQUs7RUFDSCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLElBQUk7RUFDRixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLFNBQVM7RUFDUCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLGFBQWE7RUFDWCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE9BQU87RUFDTCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLFFBQVE7RUFDTixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLFNBQVM7RUFDUCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE1BQU07RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOztDQUVOLE9BQU87RUFDTCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJOzs7QUFJUixJQUFhLDZCQUFxRDtDQUNoRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsNkJBQXFEO0NBQ2hFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSwrQkFBdUQ7Q0FDbEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGlCQUF5QztDQUNwRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsd0JBQWdEO0NBQzNELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxhQUFxQztDQUNoRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsa0JBQTBDO0NBQ3JELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxzQkFBOEM7Q0FDekQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsbUJBQTJDO0NBQ3RELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxhQUFxQztDQUNoRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsWUFBb0M7Q0FDL0MsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGdCQUF3QztDQUNuRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsb0JBQTRDO0NBQ3ZELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxjQUFzQztDQUNqRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsa0JBQTBDO0NBQ3JELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSx5QkFBaUQ7Q0FDNUQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLDRCQUFvRDtDQUMvRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEscUJBQXFCLGVBQStDO0NBQy9FLElBQUksMkJBQTJCLFVBQVM7Q0FDeEMsSUFBSSxzQkFBc0IsVUFBUztDQUNuQyxJQUFJLGNBQWMsVUFBUztDQUMzQixJQUFJLHlCQUF5QixVQUFTOztBQUd4QyxJQUFhLHlCQUF5QixlQUErQztDQUNuRixJQUFJLDZCQUE2QixVQUFTO0NBQzFDLElBQUksMEJBQTBCLFVBQVM7Q0FDdkMsSUFBSSxlQUFlLFVBQVM7Q0FDNUIsSUFBSSx5QkFBeUIsVUFBUzs7QUFHeEMsSUFBYSxlQUF1QztDQUNsRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsbUJBQTJDO0NBQ3RELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxxQkFBcUIsaUJBQWlEO0NBQ2pGLElBQUksaURBQWlELFlBQVc7Q0FDaEUsSUFBSSw4Q0FBOEMsWUFBVztDQUM3RCxJQUFJLG9EQUFvRCxZQUFXO0NBQ25FLElBQUkseURBQXlELFlBQVc7O0FBRzFFLElBQWEseUJBQXlCLGlCQUFpRDtDQUNyRixJQUFJLG1EQUFtRCxZQUFXO0NBQ2xFLElBQUksa0RBQWtELFlBQVc7Q0FDakUsSUFBSSxzREFBc0QsWUFBVztDQUNyRSxJQUFJLHlEQUF5RCxZQUFXOztBQUcxRSxJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsNEJBQW9EO0NBQy9ELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxvQkFBNEM7Q0FDdkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHFCQUE2QztDQUN4RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsbUJBQTJDO0NBQ3RELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSwyQkFBMkIsZ0JBQWdEO0NBQ3RGLElBQUksbUJBQW1CLFdBQVU7Q0FDakMsSUFBSSxlQUFlLFdBQVU7Q0FDN0IsSUFBSSxlQUFlLFdBQVU7Q0FDN0IsSUFBSSxlQUFlLFdBQVU7O0FBRy9CLElBQWEsZUFBdUM7Q0FDbEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGdCQUF3QztDQUNuRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsOEJBQXNEO0NBQ2pFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxvQ0FBNEQ7Q0FDdkUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGlCQUF5QztDQUNwRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsZUFBdUM7Q0FDbEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGtCQUEwQztDQUNyRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsOEJBQXNEO0NBQ2pFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxzQ0FBOEQ7Q0FDekUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGdDQUF3RDtDQUNuRSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsd0NBQWdFO0NBQzNFLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSw2QkFBcUQ7Q0FDaEUsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHFDQUFxQyxjQUErQztDQUMvRixJQUFJLGFBQWEsVUFBVSxTQUFTLEdBQ2xDLE9BQU87RUFDTCxJQUFJLDhCQUE4QixVQUFVLEtBQUssSUFBSSxFQUFDO0VBQ3RELElBQUksNkJBQTZCLFVBQVUsS0FBSyxJQUFJLEVBQUM7RUFDckQsSUFBSSxxQ0FBcUMsVUFBVSxLQUFLLElBQUksRUFBQztFQUM3RCxJQUFJLGlDQUFpQyxVQUFVLEtBQUssSUFBSSxFQUFDOztDQUc3RCxPQUFPO0VBQ0wsSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTs7QUFFUjtBQUVBLElBQWEsZUFBdUM7Q0FDbEQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsV0FBbUM7Q0FDOUMsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1CQUEyQztDQUN0RCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsd0JBQWdEO0NBQzNELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxrQkFBMEM7Q0FDckQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLHVCQUErQztDQUMxRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsd0JBQWdEO0NBQzNELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxvQkFBNEM7Q0FDdkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGtCQUEwQztDQUNyRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsZUFBZSxTQUF5QztDQUNuRSxJQUFJLHdCQUF3QixJQUFHO0NBQy9CLElBQUksMkJBQTJCLElBQUc7Q0FDbEMsSUFBSSwwQ0FBMEMsSUFBRztDQUNqRCxJQUFJLHdDQUF3QyxJQUFHOztBQUdqRCxJQUFhLGVBQWUsU0FBeUM7Q0FDbkUsSUFBSSx5QkFBeUIsSUFBRztDQUNoQyxJQUFJLDBCQUEwQixJQUFHO0NBQ2pDLElBQUksMkNBQTJDLElBQUc7Q0FDbEQsSUFBSSx5Q0FBeUMsSUFBRzs7QUFHbEQsSUFBYSx1QkFBdUIsV0FBMkM7Q0FDN0UsSUFBSSxvQkFBb0IsTUFBSztDQUM3QixJQUFJLG1CQUFtQixNQUFLO0NBQzVCLElBQUksbUJBQW1CLE1BQUs7Q0FDNUIsSUFBSSwwQkFBMEIsTUFBSzs7QUFHckMsSUFBYSxrQkFBMEM7Q0FDckQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGNBQXNDO0NBQ2pELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxvQkFBNEM7Q0FDdkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLGlCQUF5QztDQUNwRCxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsZ0NBQXdEO0NBQ25FLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSx5QkFBaUQ7Q0FDNUQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLG1DQUEyRDtDQUN0RSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsNkJBQ1gsT0FDQSxXQUM0QjtDQUM1QixJQUFJLEdBQUcsTUFBSyxPQUFRO0NBQ3BCLElBQUksR0FBRyxNQUFLLE1BQU87Q0FDbkIsSUFBSSxHQUFHLE1BQUssT0FBUTtDQUNwQixJQUFJLEdBQUcsTUFBSyxNQUFPOztBQUdyQixJQUFhLG1DQUEyRDtDQUN0RSxJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJOztBQUdOLElBQWEsZ0JBQXdDO0NBQ25ELElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSxvQkFBNEM7Q0FDdkQsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTs7QUFHTixJQUFhLFlBQW9DO0NBQy9DLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSTtDQUNKLElBQUk7O0FBR04sSUFBYSwwQkFBa0Q7Q0FDN0QsSUFBSTtDQUNKLElBQUk7Q0FDSixJQUFJO0NBQ0osSUFBSSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"form-associated-checkbox-mixin.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/mixins/form-associated-checkbox-mixin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAMrF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAEtB,MAAM,4BAA4B,CAAC;;AAQpC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,kCAAmC,SAAQ,uCAExE;IACC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAE1B,iBAAiB,IAAI,IAAI;IACzB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAEhG,SAAS,CAAC,oBAAoB,IAAI,OAAO;IACzC,SAAS,CAAC,mBAAmB,CAAC,IAAI,IAAI;IACtC,SAAS,CAAC,eAAe,IAAI,IAAI;CAClC;AAED;;;;GAIG;AAEH,eAAO,MAAM,8BAA8B,GACzC,CAAC,SAAS,mBAAmB,CAAC,UAAU,CAAC,GAAG,qBAAqB,EAEjE,YAAY,CAAC,KACZ,mBAAmB,CAAC,kCAAkC,CAAC,GAAG,CA4J5D,CAAC"}
1
+ {"version":3,"file":"form-associated-checkbox-mixin.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/mixins/form-associated-checkbox-mixin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAKrF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAEtB,MAAM,4BAA4B,CAAC;;AAQpC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,kCAAmC,SAAQ,uCAExE;IACC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAE1B,iBAAiB,IAAI,IAAI;IACzB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAEhG,SAAS,CAAC,oBAAoB,IAAI,OAAO;IACzC,SAAS,CAAC,mBAAmB,CAAC,IAAI,IAAI;IACtC,SAAS,CAAC,eAAe,IAAI,IAAI;CAClC;AAED;;;;GAIG;AAEH,eAAO,MAAM,8BAA8B,GACzC,CAAC,SAAS,mBAAmB,CAAC,UAAU,CAAC,GAAG,qBAAqB,EAEjE,YAAY,CAAC,KACZ,mBAAmB,CAAC,kCAAkC,CAAC,GAAG,CA8J5D,CAAC"}
@@ -4,7 +4,6 @@ import { SbbRequiredMixin } from "./required-mixin.js";
4
4
  import { __esDecorate, __runInitializers } from "tslib";
5
5
  import { defaultConverter } from "lit";
6
6
  import { property } from "lit/decorators.js";
7
- import { hostAttributes } from "../decorators/host-attributes.js";
8
7
  import { SbbLanguageController } from "../controllers/language-controller.js";
9
8
  import { i18nCheckboxRequired } from "../i18n/i18n.js";
10
9
  import { preventScrollOnSpacebarPress } from "../eventing/form-element-handlers.js";
@@ -16,17 +15,10 @@ import { preventScrollOnSpacebarPress } from "../eventing/form-element-handlers.
16
15
  */
17
16
  var SbbFormAssociatedCheckboxMixin = (superClass) => {
18
17
  return (() => {
19
- let _classDecorators = [hostAttributes({ tabindex: "0" })];
20
- let _classDescriptor;
21
- let _classExtraInitializers = [];
22
- let _classThis;
23
18
  let _classSuper = SbbDisabledMixin(SbbRequiredMixin(SbbFormAssociatedMixin(superClass)));
24
19
  let _instanceExtraInitializers = [];
25
20
  let _set_checked_decorators;
26
- var SbbFormAssociatedCheckboxElement = class extends _classSuper {
27
- static {
28
- _classThis = this;
29
- }
21
+ return class SbbFormAssociatedCheckboxElement extends _classSuper {
30
22
  static {
31
23
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
32
24
  _set_checked_decorators = [property({
@@ -54,13 +46,7 @@ var SbbFormAssociatedCheckboxMixin = (superClass) => {
54
46
  },
55
47
  metadata: _metadata
56
48
  }, null, _instanceExtraInitializers);
57
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, {
58
- kind: "class",
59
- name: _classThis.name,
60
- metadata: _metadata
61
- }, null, _classExtraInitializers);
62
- SbbFormAssociatedCheckboxElement = _classThis = _classDescriptor.value;
63
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, {
49
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, {
64
50
  enumerable: true,
65
51
  configurable: true,
66
52
  writable: true,
@@ -113,6 +99,10 @@ var SbbFormAssociatedCheckboxMixin = (superClass) => {
113
99
  this.addEventListener?.("keydown", preventScrollOnSpacebarPress);
114
100
  this.addEventListener?.("keyup", this._handleKeyboardInteraction);
115
101
  }
102
+ connectedCallback() {
103
+ super.connectedCallback();
104
+ this.tabIndex = 0;
105
+ }
116
106
  attributeChangedCallback(name, old, value) {
117
107
  if (name !== "checked" || !this._attributeMutationBlocked) super.attributeChangedCallback(name, old, value);
118
108
  }
@@ -152,14 +142,10 @@ var SbbFormAssociatedCheckboxMixin = (superClass) => {
152
142
  if (this.required && !this.checked) this.setValidityFlag("valueMissing", i18nCheckboxRequired[this._languageController.current]);
153
143
  else this.removeValidityFlag("valueMissing");
154
144
  }
155
- static {
156
- __runInitializers(_classThis, _classExtraInitializers);
157
- }
158
145
  };
159
- return _classThis;
160
146
  })();
161
147
  };
162
148
  //#endregion
163
149
  export { SbbFormAssociatedCheckboxMixin };
164
150
 
165
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hc3NvY2lhdGVkLWNoZWNrYm94LW1peGluLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9mb3JtLWFzc29jaWF0ZWQtY2hlY2tib3gtbWl4aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVmYXVsdENvbnZlcnRlciB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJFbGVtZW50LCBTYmJFbGVtZW50Q29uc3RydWN0b3IgfSBmcm9tICcuLi9iYXNlLWVsZW1lbnRzL2VsZW1lbnQudHMnO1xuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29udHJvbGxlcnMvbGFuZ3VhZ2UtY29udHJvbGxlci50cyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uL2RlY29yYXRvcnMvaG9zdC1hdHRyaWJ1dGVzLnRzJztcbmltcG9ydCB7IHByZXZlbnRTY3JvbGxPblNwYWNlYmFyUHJlc3MgfSBmcm9tICcuLi9ldmVudGluZy9mb3JtLWVsZW1lbnQtaGFuZGxlcnMudHMnO1xuaW1wb3J0IHsgaTE4bkNoZWNrYm94UmVxdWlyZWQgfSBmcm9tICcuLi9pMThuL2kxOG4udHMnO1xuXG5pbXBvcnQgdHlwZSB7IEFic3RyYWN0Q29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yLnRzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4gfSBmcm9tICcuL2Rpc2FibGVkLW1peGluLnRzJztcbmltcG9ydCB7XG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgU2JiRm9ybUFzc29jaWF0ZWRNaXhpbixcbn0gZnJvbSAnLi9mb3JtLWFzc29jaWF0ZWQtbWl4aW4udHMnO1xuaW1wb3J0IHsgU2JiUmVxdWlyZWRNaXhpbiB9IGZyb20gJy4vcmVxdWlyZWQtbWl4aW4udHMnO1xuXG5pbnRlcmZhY2UgQ2hlY2tlZFNldHRlclZhbHVlIHtcbiAgdmFsdWU6IGJvb2xlYW47XG4gIGF0dHJpYnV0ZTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGRlY2xhcmUgYWJzdHJhY3QgY2xhc3MgU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveE1peGluVHlwZSBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYlJlcXVpcmVkTWl4aW4oU2JiRm9ybUFzc29jaWF0ZWRNaXhpbihTYmJFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW47XG5cbiAgcHVibGljIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQ7XG4gIHB1YmxpYyBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLCByZWFzb246IEZvcm1SZXN0b3JlUmVhc29uKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgaXNSZXF1aXJlZEV4dGVybmFsbHkoKTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIHdpdGhVc2VySW50ZXJhY3Rpb24/KCk6IHZvaWQ7XG4gIHByb3RlY3RlZCB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZDtcbn1cblxuLyoqXG4gKiBUaGUgRm9ybUFzc29jaWF0ZWRDaGVja2JveE1peGluIGVuYWJsZXMgbmF0aXZlIGZvcm0gc3VwcG9ydCBmb3IgY2hlY2tib3ggY29udHJvbHMuXG4gKlxuICogSW5oZXJpdGVkIGNsYXNzZXMgTVVTVCBpbXBsZW1lbnQgdGhlIGFyaWFDaGVja2VkIHN0YXRlIChFbGVtZW50SW50ZXJuYWxzKSB0aGVtc2VsdmVzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveE1peGluID0gPFxuICBUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJFbGVtZW50PiAmIFNiYkVsZW1lbnRDb25zdHJ1Y3Rvcixcbj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGU+ICYgVCA9PiB7XG4gIEBob3N0QXR0cmlidXRlcyh7XG4gICAgdGFiaW5kZXg6ICcwJyxcbiAgfSlcbiAgYWJzdHJhY3QgY2xhc3MgU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveEVsZW1lbnRcbiAgICBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oU2JiUmVxdWlyZWRNaXhpbihTYmJGb3JtQXNzb2NpYXRlZE1peGluKHN1cGVyQ2xhc3MpKSlcbiAgICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveE1peGluVHlwZT5cbiAge1xuICAgIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgcm9sZSA9ICdjaGVja2JveCc7XG5cbiAgICBwcml2YXRlIF9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9sYW5ndWFnZUNvbnRyb2xsZXIgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQuICovXG4gICAgQHByb3BlcnR5KHtcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICBjb252ZXJ0ZXI6IHtcbiAgICAgICAgLi4uZGVmYXVsdENvbnZlcnRlcixcbiAgICAgICAgLy8gV2UgbmVlZCB0byBwYXNzIGluZm9ybWF0aW9uIHRvIHRoZSBzZXR0ZXIgc28gdGhhdCB3ZSBrbm93IGl0IHdhcyBjYWxsZWQgYnkgYXR0cmlidXRlIGNoYW5nZS5cbiAgICAgICAgZnJvbUF0dHJpYnV0ZTogKHZhbHVlOiBzdHJpbmcgfCBudWxsLCB0eXBlPzogdW5rbm93bik6IENoZWNrZWRTZXR0ZXJWYWx1ZSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gZGVmYXVsdENvbnZlcnRlci5mcm9tQXR0cmlidXRlPy4odmFsdWUsIHR5cGUpO1xuICAgICAgICAgIHJldHVybiB7IHZhbHVlOiByZXN1bHQsIGF0dHJpYnV0ZTogdHJ1ZSB9IGFzIENoZWNrZWRTZXR0ZXJWYWx1ZTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSlcbiAgICBwdWJsaWMgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZVNldHRlciA9XG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgPyAodmFsdWUgYXMgdW5rbm93biBhcyBDaGVja2VkU2V0dGVyVmFsdWUpLmF0dHJpYnV0ZSA6IGZhbHNlO1xuICAgICAgaWYgKGF0dHJpYnV0ZVNldHRlcikge1xuICAgICAgICB2YWx1ZSA9ICh2YWx1ZSBhcyB1bmtub3duIGFzIENoZWNrZWRTZXR0ZXJWYWx1ZSkudmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEFzIHNvb24gYXMgbXV0YXRpb24gd2FzIGRvbmUgbm90IGJ5IHNldHRpbmcgYXR0cmlidXRlLFxuICAgICAgLy8gd2UgbmVlZCB0byBibG9jayBzeW5jaW5nIGF0dHJpYnV0ZS5cbiAgICAgIGlmICh0aGlzLmhhc1VwZGF0ZWQgJiYgIWF0dHJpYnV0ZVNldHRlcikge1xuICAgICAgICB0aGlzLl9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5fY2hlY2tlZCA9IEJvb2xlYW4odmFsdWUpO1xuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9XG4gICAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2NoZWNrZWQ7XG4gICAgfVxuICAgIHByaXZhdGUgX2NoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEZvcm0gdHlwZSBvZiBlbGVtZW50LlxuICAgICAqIEBkZWZhdWx0ICdjaGVja2JveCdcbiAgICAgKi9cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IHR5cGUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiAnY2hlY2tib3gnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICAgIHN1cGVyKCk7XG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCB0aGlzLl9oYW5kbGVVc2VySW50ZXJhY3Rpb24pO1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2tleWRvd24nLCBwcmV2ZW50U2Nyb2xsT25TcGFjZWJhclByZXNzKTtcbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXl1cCcsIHRoaXMuX2hhbmRsZUtleWJvYXJkSW50ZXJhY3Rpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soXG4gICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICBvbGQ6IHN0cmluZyB8IG51bGwsXG4gICAgICB2YWx1ZTogc3RyaW5nIHwgbnVsbCxcbiAgICApOiB2b2lkIHtcbiAgICAgIC8vIEF0dHJpYnV0ZSBzaG91bGQgbm90IGJlIGludGVycHJldGVkIGFmdGVyIHByb2dyYW1tYXRpYyBvciBtYW51YWwgc3RhdGUgY2hhbmdlLlxuICAgICAgaWYgKG5hbWUgIT09ICdjaGVja2VkJyB8fCAhdGhpcy5fYXR0cmlidXRlTXV0YXRpb25CbG9ja2VkKSB7XG4gICAgICAgIHN1cGVyLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhuYW1lLCBvbGQsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGZvcm0gaXMgYmVpbmcgcmVzZXQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnY2hlY2tlZCcpO1xuICAgICAgdGhpcy5fYXR0cmlidXRlTXV0YXRpb25CbG9ja2VkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogIENhbGxlZCB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byByZXN0b3JlIGVsZW1lbnTigJlzIHN0YXRlIHRvIHN0YXRlIGluIHdoaWNoIGNhc2VcbiAgICAgKiAgcmVhc29uIGlzIFwicmVzdG9yZVwiLCBvciB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byBmdWxmaWxsIGF1dG9maWxsIG9uIGJlaGFsZiBvZlxuICAgICAqICB1c2VyIGluIHdoaWNoIGNhc2UgcmVhc29uIGlzIFwiYXV0b2NvbXBsZXRlXCIuXG4gICAgICogIEluIHRoZSBjYXNlIG9mIFwicmVzdG9yZVwiLCBzdGF0ZSBpcyBhIHN0cmluZywgRmlsZSwgb3IgRm9ybURhdGEgb2JqZWN0XG4gICAgICogIHByZXZpb3VzbHkgc2V0IGFzIHRoZSBzZWNvbmQgYXJndW1lbnQgdG8gc2V0Rm9ybVZhbHVlLlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIG92ZXJyaWRlIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICAgIHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCxcbiAgICAgIF9yZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQge1xuICAgICAgaWYgKHN0YXRlKSB7XG4gICAgICAgIHRoaXMuY2hlY2tlZCA9IHN0YXRlID09PSAndHJ1ZSc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkaXRpb25hbCBsb2dpYyB3aGljaCBpcyBiZWluZyBleGVjdXRlZCB3aGVuIHVzZXJcbiAgICAgKiBpbnRlcmFjdGlvbiBoYXBwZW5zIGFuZCBzdGF0ZSBpcyBub3QgZGlzYWJsZWQuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHdpdGhVc2VySW50ZXJhY3Rpb24/KCk6IHZvaWQ7XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgICBzdXBlci51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnNldEZvcm1WYWx1ZShudWxsKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZm9ybVN0YXRlKCk6IEZvcm1SZXN0b3JlU3RhdGUge1xuICAgICAgcmV0dXJuIGAke3RoaXMuY2hlY2tlZH1gO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBzaG91bGRWYWxpZGF0ZShuYW1lOiBQcm9wZXJ0eUtleSB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHN1cGVyLnNob3VsZFZhbGlkYXRlKG5hbWUpIHx8IG5hbWUgPT09ICdjaGVja2VkJyB8fCBuYW1lID09PSAncmVxdWlyZWQnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB2YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICAgIHN1cGVyLnZhbGlkYXRlKCk7XG4gICAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsaWRpdHlGbGFnKFxuICAgICAgICAgICd2YWx1ZU1pc3NpbmcnLFxuICAgICAgICAgIGkxOG5DaGVja2JveFJlcXVpcmVkW3RoaXMuX2xhbmd1YWdlQ29udHJvbGxlci5jdXJyZW50XSxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVtb3ZlVmFsaWRpdHlGbGFnKCd2YWx1ZU1pc3NpbmcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogTWV0aG9kIHRyaWdnZXJlZCBvbiBrZXlib2FyZCB1c2VyIGludGVyYWN0aW9uIHdpdGggY2hlY2tib3guICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlS2V5Ym9hcmRJbnRlcmFjdGlvbiA9IChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnKSB7XG4gICAgICAgIHRoaXMuX2hhbmRsZVVzZXJJbnRlcmFjdGlvbigpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICAvKiogTWV0aG9kIHRyaWdnZXJlZCBvbiB1c2VyIGludGVyYWN0aW9uIHdpdGggY2hlY2tib3guICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlVXNlckludGVyYWN0aW9uID0gKCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy53aXRoVXNlckludGVyYWN0aW9uPy4oKTtcbiAgICAgIHRoaXMuY2hlY2tlZCA9ICF0aGlzLmNoZWNrZWQ7XG4gICAgICB0aGlzLl9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQgPSB0cnVlO1xuXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBjb21wb3NlZDogdHJ1ZSwgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgIH07XG4gIH1cblxuICByZXR1cm4gU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveEVsZW1lbnQgYXMgdW5rbm93biBhcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQTBDQSxJQUFhLGtDQUdYLGVBQytEO0NBMEovRCxjQXRKK0M7MEJBSDlDLGVBQWUsRUFDZCxVQUFVLElBQUEsQ0FDWCxDQUFDOzs7O29CQUVRLGlC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
151
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hc3NvY2lhdGVkLWNoZWNrYm94LW1peGluLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9mb3JtLWFzc29jaWF0ZWQtY2hlY2tib3gtbWl4aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVmYXVsdENvbnZlcnRlciB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJFbGVtZW50LCBTYmJFbGVtZW50Q29uc3RydWN0b3IgfSBmcm9tICcuLi9iYXNlLWVsZW1lbnRzL2VsZW1lbnQudHMnO1xuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29udHJvbGxlcnMvbGFuZ3VhZ2UtY29udHJvbGxlci50cyc7XG5pbXBvcnQgeyBwcmV2ZW50U2Nyb2xsT25TcGFjZWJhclByZXNzIH0gZnJvbSAnLi4vZXZlbnRpbmcvZm9ybS1lbGVtZW50LWhhbmRsZXJzLnRzJztcbmltcG9ydCB7IGkxOG5DaGVja2JveFJlcXVpcmVkIH0gZnJvbSAnLi4vaTE4bi9pMThuLnRzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci50cyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZE1peGluIH0gZnJvbSAnLi9kaXNhYmxlZC1taXhpbi50cyc7XG5pbXBvcnQge1xuICB0eXBlIEZvcm1SZXN0b3JlUmVhc29uLFxuICB0eXBlIEZvcm1SZXN0b3JlU3RhdGUsXG4gIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4sXG59IGZyb20gJy4vZm9ybS1hc3NvY2lhdGVkLW1peGluLnRzJztcbmltcG9ydCB7IFNiYlJlcXVpcmVkTWl4aW4gfSBmcm9tICcuL3JlcXVpcmVkLW1peGluLnRzJztcblxuaW50ZXJmYWNlIENoZWNrZWRTZXR0ZXJWYWx1ZSB7XG4gIHZhbHVlOiBib29sZWFuO1xuICBhdHRyaWJ1dGU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBkZWNsYXJlIGFic3RyYWN0IGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGUgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFxuICBTYmJSZXF1aXJlZE1peGluKFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oU2JiRWxlbWVudCkpLFxuKSB7XG4gIHB1YmxpYyBhY2Nlc3NvciBjaGVja2VkOiBib29sZWFuO1xuXG4gIHB1YmxpYyBmb3JtUmVzZXRDYWxsYmFjaygpOiB2b2lkO1xuICBwdWJsaWMgZm9ybVN0YXRlUmVzdG9yZUNhbGxiYWNrKHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCwgcmVhc29uOiBGb3JtUmVzdG9yZVJlYXNvbik6IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIGlzUmVxdWlyZWRFeHRlcm5hbGx5KCk6IGJvb2xlYW47XG4gIHByb3RlY3RlZCB3aXRoVXNlckludGVyYWN0aW9uPygpOiB2b2lkO1xuICBwcm90ZWN0ZWQgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQ7XG59XG5cbi8qKlxuICogVGhlIEZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpbiBlbmFibGVzIG5hdGl2ZSBmb3JtIHN1cHBvcnQgZm9yIGNoZWNrYm94IGNvbnRyb2xzLlxuICpcbiAqIEluaGVyaXRlZCBjbGFzc2VzIE1VU1QgaW1wbGVtZW50IHRoZSBhcmlhQ2hlY2tlZCBzdGF0ZSAoRWxlbWVudEludGVybmFscykgdGhlbXNlbHZlcy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpbiA9IDxcbiAgVCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRWxlbWVudD4gJiBTYmJFbGVtZW50Q29uc3RydWN0b3IsXG4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJGb3JtQXNzb2NpYXRlZENoZWNrYm94TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJGb3JtQXNzb2NpYXRlZENoZWNrYm94RWxlbWVudFxuICAgIGV4dGVuZHMgU2JiRGlzYWJsZWRNaXhpbihTYmJSZXF1aXJlZE1peGluKFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oc3VwZXJDbGFzcykpKVxuICAgIGltcGxlbWVudHMgUGFydGlhbDxTYmJGb3JtQXNzb2NpYXRlZENoZWNrYm94TWl4aW5UeXBlPlxuICB7XG4gICAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ2NoZWNrYm94JztcblxuICAgIHByaXZhdGUgX2F0dHJpYnV0ZU11dGF0aW9uQmxvY2tlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2xhbmd1YWdlQ29udHJvbGxlciA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgICAvKiogV2hldGhlciB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZC4gKi9cbiAgICBAcHJvcGVydHkoe1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGNvbnZlcnRlcjoge1xuICAgICAgICAuLi5kZWZhdWx0Q29udmVydGVyLFxuICAgICAgICAvLyBXZSBuZWVkIHRvIHBhc3MgaW5mb3JtYXRpb24gdG8gdGhlIHNldHRlciBzbyB0aGF0IHdlIGtub3cgaXQgd2FzIGNhbGxlZCBieSBhdHRyaWJ1dGUgY2hhbmdlLlxuICAgICAgICBmcm9tQXR0cmlidXRlOiAodmFsdWU6IHN0cmluZyB8IG51bGwsIHR5cGU/OiB1bmtub3duKTogQ2hlY2tlZFNldHRlclZhbHVlID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBkZWZhdWx0Q29udmVydGVyLmZyb21BdHRyaWJ1dGU/Lih2YWx1ZSwgdHlwZSk7XG4gICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IHJlc3VsdCwgYXR0cmlidXRlOiB0cnVlIH0gYXMgQ2hlY2tlZFNldHRlclZhbHVlO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KVxuICAgIHB1YmxpYyBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgY29uc3QgYXR0cmlidXRlU2V0dGVyID1cbiAgICAgICAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyA/ICh2YWx1ZSBhcyB1bmtub3duIGFzIENoZWNrZWRTZXR0ZXJWYWx1ZSkuYXR0cmlidXRlIDogZmFsc2U7XG4gICAgICBpZiAoYXR0cmlidXRlU2V0dGVyKSB7XG4gICAgICAgIHZhbHVlID0gKHZhbHVlIGFzIHVua25vd24gYXMgQ2hlY2tlZFNldHRlclZhbHVlKS52YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gQXMgc29vbiBhcyBtdXRhdGlvbiB3YXMgZG9uZSBub3QgYnkgc2V0dGluZyBhdHRyaWJ1dGUsXG4gICAgICAvLyB3ZSBuZWVkIHRvIGJsb2NrIHN5bmNpbmcgYXR0cmlidXRlLlxuICAgICAgaWYgKHRoaXMuaGFzVXBkYXRlZCAmJiAhYXR0cmlidXRlU2V0dGVyKSB7XG4gICAgICAgIHRoaXMuX2F0dHJpYnV0ZU11dGF0aW9uQmxvY2tlZCA9IHRydWU7XG4gICAgICB9XG4gICAgICB0aGlzLl9jaGVja2VkID0gQm9vbGVhbih2YWx1ZSk7XG4gICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IGNoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgICB9XG4gICAgcHJpdmF0ZSBfY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRm9ybSB0eXBlIG9mIGVsZW1lbnQuXG4gICAgICogQGRlZmF1bHQgJ2NoZWNrYm94J1xuICAgICAqL1xuICAgIHB1YmxpYyBvdmVycmlkZSBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuICdjaGVja2JveCc7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKCkge1xuICAgICAgc3VwZXIoKTtcbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsIHRoaXMuX2hhbmRsZVVzZXJJbnRlcmFjdGlvbik7XG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Ligna2V5ZG93bicsIHByZXZlbnRTY3JvbGxPblNwYWNlYmFyUHJlc3MpO1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2tleXVwJywgdGhpcy5faGFuZGxlS2V5Ym9hcmRJbnRlcmFjdGlvbik7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICAgIHRoaXMudGFiSW5kZXggPSAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soXG4gICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICBvbGQ6IHN0cmluZyB8IG51bGwsXG4gICAgICB2YWx1ZTogc3RyaW5nIHwgbnVsbCxcbiAgICApOiB2b2lkIHtcbiAgICAgIC8vIEF0dHJpYnV0ZSBzaG91bGQgbm90IGJlIGludGVycHJldGVkIGFmdGVyIHByb2dyYW1tYXRpYyBvciBtYW51YWwgc3RhdGUgY2hhbmdlLlxuICAgICAgaWYgKG5hbWUgIT09ICdjaGVja2VkJyB8fCAhdGhpcy5fYXR0cmlidXRlTXV0YXRpb25CbG9ja2VkKSB7XG4gICAgICAgIHN1cGVyLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhuYW1lLCBvbGQsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGZvcm0gaXMgYmVpbmcgcmVzZXQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnY2hlY2tlZCcpO1xuICAgICAgdGhpcy5fYXR0cmlidXRlTXV0YXRpb25CbG9ja2VkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogIENhbGxlZCB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byByZXN0b3JlIGVsZW1lbnTigJlzIHN0YXRlIHRvIHN0YXRlIGluIHdoaWNoIGNhc2VcbiAgICAgKiAgcmVhc29uIGlzIFwicmVzdG9yZVwiLCBvciB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byBmdWxmaWxsIGF1dG9maWxsIG9uIGJlaGFsZiBvZlxuICAgICAqICB1c2VyIGluIHdoaWNoIGNhc2UgcmVhc29uIGlzIFwiYXV0b2NvbXBsZXRlXCIuXG4gICAgICogIEluIHRoZSBjYXNlIG9mIFwicmVzdG9yZVwiLCBzdGF0ZSBpcyBhIHN0cmluZywgRmlsZSwgb3IgRm9ybURhdGEgb2JqZWN0XG4gICAgICogIHByZXZpb3VzbHkgc2V0IGFzIHRoZSBzZWNvbmQgYXJndW1lbnQgdG8gc2V0Rm9ybVZhbHVlLlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIG92ZXJyaWRlIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICAgIHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCxcbiAgICAgIF9yZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQge1xuICAgICAgaWYgKHN0YXRlKSB7XG4gICAgICAgIHRoaXMuY2hlY2tlZCA9IHN0YXRlID09PSAndHJ1ZSc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkaXRpb25hbCBsb2dpYyB3aGljaCBpcyBiZWluZyBleGVjdXRlZCB3aGVuIHVzZXJcbiAgICAgKiBpbnRlcmFjdGlvbiBoYXBwZW5zIGFuZCBzdGF0ZSBpcyBub3QgZGlzYWJsZWQuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHdpdGhVc2VySW50ZXJhY3Rpb24/KCk6IHZvaWQ7XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgICBzdXBlci51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnNldEZvcm1WYWx1ZShudWxsKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZm9ybVN0YXRlKCk6IEZvcm1SZXN0b3JlU3RhdGUge1xuICAgICAgcmV0dXJuIGAke3RoaXMuY2hlY2tlZH1gO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBzaG91bGRWYWxpZGF0ZShuYW1lOiBQcm9wZXJ0eUtleSB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHN1cGVyLnNob3VsZFZhbGlkYXRlKG5hbWUpIHx8IG5hbWUgPT09ICdjaGVja2VkJyB8fCBuYW1lID09PSAncmVxdWlyZWQnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB2YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICAgIHN1cGVyLnZhbGlkYXRlKCk7XG4gICAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsaWRpdHlGbGFnKFxuICAgICAgICAgICd2YWx1ZU1pc3NpbmcnLFxuICAgICAgICAgIGkxOG5DaGVja2JveFJlcXVpcmVkW3RoaXMuX2xhbmd1YWdlQ29udHJvbGxlci5jdXJyZW50XSxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVtb3ZlVmFsaWRpdHlGbGFnKCd2YWx1ZU1pc3NpbmcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogTWV0aG9kIHRyaWdnZXJlZCBvbiBrZXlib2FyZCB1c2VyIGludGVyYWN0aW9uIHdpdGggY2hlY2tib3guICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlS2V5Ym9hcmRJbnRlcmFjdGlvbiA9IChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnKSB7XG4gICAgICAgIHRoaXMuX2hhbmRsZVVzZXJJbnRlcmFjdGlvbigpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICAvKiogTWV0aG9kIHRyaWdnZXJlZCBvbiB1c2VyIGludGVyYWN0aW9uIHdpdGggY2hlY2tib3guICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlVXNlckludGVyYWN0aW9uID0gKCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy53aXRoVXNlckludGVyYWN0aW9uPy4oKTtcbiAgICAgIHRoaXMuY2hlY2tlZCA9ICF0aGlzLmNoZWNrZWQ7XG4gICAgICB0aGlzLl9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQgPSB0cnVlO1xuXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBjb21wb3NlZDogdHJ1ZSwgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgIH07XG4gIH1cblxuICByZXR1cm4gU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveEVsZW1lbnQgYXMgdW5rbm93biBhcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBeUNBLElBQWEsa0NBR1gsZUFDK0Q7Q0E0Si9ELGNBM0orQztvQkFDckMsaUJBQWlCLGlCQUFpQix1QkFBdUIsVUFBVSxDQUFDLENBQUM7Oztl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
@@ -19,7 +19,7 @@ export declare abstract class SbbFormAssociatedMixinType {
19
19
  get validity(): ValidityState;
20
20
  get validationMessage(): string;
21
21
  get willValidate(): boolean;
22
- protected formDisabled: boolean;
22
+ protected accessor formDisabled: boolean;
23
23
  checkValidity(): boolean;
24
24
  reportValidity(): boolean;
25
25
  setCustomValidity(message: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"form-associated-mixin.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/mixins/form-associated-mixin.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAG9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,CAAC,MAAM,CAAC;IACb;;OAEG;IACH,UAAU,mBAAmB;KAAG;IAChC,UAAU,aAAc,SAAQ,mBAAmB;KAAG;IACtD,UAAU,kBAAmB,SAAQ,OAAO,CAAC,mBAAmB,CAAC;KAAG;CACrE;AAoCD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,0BAA0B;IACtD,IAAW,IAAI,IAAI,eAAe,GAAG,IAAI,CAAC;IAC1C,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,IAAW,IAAI,IAAI,MAAM,CAAC;IAE1B,kBAAyB,KAAK,EAAE,OAAO,CAAC;IAExC,IAAW,QAAQ,IAAI,aAAa,CAAC;IACrC,IAAW,iBAAiB,IAAI,MAAM,CAAC;IACvC,IAAW,YAAY,IAAI,OAAO,CAAC;IAEnC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;IAEzB,aAAa,IAAI,OAAO;IACxB,cAAc,IAAI,OAAO;IACzB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAExC,sBAAsB,CAAC,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAC3D,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;aACpC,iBAAiB,IAAI,IAAI;aACzB,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,MAAM,EAAE,iBAAiB,GACxB,IAAI;IAEP,SAAS,CAAC,eAAe,IAAI,IAAI;IACjC,SAAS,CAAC,SAAS,CAAC,IAAI,gBAAgB;IACxC,SAAS,CAAC,eAAe,CAAC,CAAC,SAAS,MAAM,kBAAkB,EAC1D,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAChC,IAAI;IACP,SAAS,CAAC,kBAAkB,CAAC,CAAC,SAAS,MAAM,kBAAkB,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IAC/E,SAAS,CAAC,QAAQ,IAAI,IAAI;IAC1B,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO;CACjE;AAED;;GAEG;AAEH,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,mBAAmB,CAAC,UAAU,CAAC,EAC9E,YAAY,CAAC,KACZ,mBAAmB,CAAC,0BAA0B,CAAC,GAAG,CAgUpD,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;AAExD;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"form-associated-mixin.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/mixins/form-associated-mixin.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAG9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,CAAC,MAAM,CAAC;IACb;;OAEG;IACH,UAAU,mBAAmB;KAAG;IAChC,UAAU,aAAc,SAAQ,mBAAmB;KAAG;IACtD,UAAU,kBAAmB,SAAQ,OAAO,CAAC,mBAAmB,CAAC;KAAG;CACrE;AAoCD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,0BAA0B;IACtD,IAAW,IAAI,IAAI,eAAe,GAAG,IAAI,CAAC;IAC1C,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,IAAW,IAAI,IAAI,MAAM,CAAC;IAE1B,kBAAyB,KAAK,EAAE,OAAO,CAAC;IAExC,IAAW,QAAQ,IAAI,aAAa,CAAC;IACrC,IAAW,iBAAiB,IAAI,MAAM,CAAC;IACvC,IAAW,YAAY,IAAI,OAAO,CAAC;IAEnC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAElC,aAAa,IAAI,OAAO;IACxB,cAAc,IAAI,OAAO;IACzB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAExC,sBAAsB,CAAC,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAC3D,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;aACpC,iBAAiB,IAAI,IAAI;aACzB,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,MAAM,EAAE,iBAAiB,GACxB,IAAI;IAEP,SAAS,CAAC,eAAe,IAAI,IAAI;IACjC,SAAS,CAAC,SAAS,CAAC,IAAI,gBAAgB;IACxC,SAAS,CAAC,eAAe,CAAC,CAAC,SAAS,MAAM,kBAAkB,EAC1D,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAChC,IAAI;IACP,SAAS,CAAC,kBAAkB,CAAC,CAAC,SAAS,MAAM,kBAAkB,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IAC/E,SAAS,CAAC,QAAQ,IAAI,IAAI;IAC1B,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO;CACjE;AAED;;GAEG;AAEH,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,mBAAmB,CAAC,UAAU,CAAC,EAC9E,YAAY,CAAC,KACZ,mBAAmB,CAAC,0BAA0B,CAAC,GAAG,CAgUpD,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;AAExD;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,cAAc,CAAC"}
@@ -291,4 +291,4 @@ var SbbFormAssociatedMixin = (superClass) => {
291
291
  //#endregion
292
292
  export { SbbFormAssociatedMixin };
293
293
 
294
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hc3NvY2lhdGVkLW1peGluLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9mb3JtLWFzc29jaWF0ZWQtbWl4aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlICovXG5pbXBvcnQgdHlwZSB7IFByb3BlcnR5RGVjbGFyYXRpb24sIFByb3BlcnR5VmFsdWVzIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vYmFzZS1lbGVtZW50cy9lbGVtZW50LnRzJztcbmltcG9ydCB7IGlzV2Via2l0IH0gZnJvbSAnLi4vZG9tL3BsYXRmb3JtLnRzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci50cyc7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLyoqXG4gICAqIERlZmluZXMgY3VzdG9tIHZhbGlkaXR5IHN0YXRlIHByb3BlcnRpZXMuXG4gICAqL1xuICBpbnRlcmZhY2UgQ3VzdG9tVmFsaWRpdHlTdGF0ZSB7fVxuICBpbnRlcmZhY2UgVmFsaWRpdHlTdGF0ZSBleHRlbmRzIEN1c3RvbVZhbGlkaXR5U3RhdGUge31cbiAgaW50ZXJmYWNlIFZhbGlkaXR5U3RhdGVGbGFncyBleHRlbmRzIFBhcnRpYWw8Q3VzdG9tVmFsaWRpdHlTdGF0ZT4ge31cbn1cblxuY29uc3QgdmFsaWRpdHlLZXlzOiBSZXF1aXJlZDxPbWl0PFZhbGlkaXR5U3RhdGVGbGFncywga2V5b2YgQ3VzdG9tVmFsaWRpdHlTdGF0ZT4+ID0ge1xuICBiYWRJbnB1dDogZmFsc2UsXG4gIGN1c3RvbUVycm9yOiBmYWxzZSxcbiAgcGF0dGVybk1pc21hdGNoOiBmYWxzZSxcbiAgcmFuZ2VPdmVyZmxvdzogZmFsc2UsXG4gIHJhbmdlVW5kZXJmbG93OiBmYWxzZSxcbiAgc3RlcE1pc21hdGNoOiBmYWxzZSxcbiAgdG9vTG9uZzogZmFsc2UsXG4gIHRvb1Nob3J0OiBmYWxzZSxcbiAgdHlwZU1pc21hdGNoOiBmYWxzZSxcbiAgdmFsdWVNaXNzaW5nOiBmYWxzZSxcbn07XG4vLyBXZSBuZWVkIFZhbGlkaXR5U3RhdGUgaW4gdGhlIGdsb2JhbCBjb250ZXh0LCBhcyB3ZSBjaGVjayB0aGUgcHJvdG90eXBlIGZvclxuLy8gZXh0ZW5zaW9ucy4gSW4gZW52aXJvbm1lbnRzIHdoZXJlIHRoYXQgaXMgbm90IHRoZSBjYXNlIChlLmcuIE5vZGUuanMpIHdlXG4vLyBwYXRjaCBpdCB3aXRoIGEgbWluaW1hbCBzaGltLlxuaWYgKHR5cGVvZiBWYWxpZGl0eVN0YXRlID09PSAndW5kZWZpbmVkJykge1xuICBjb25zdCB2YWxpZGl0eUNsYXNzID0gY2xhc3MgVmFsaWRpdHlTdGF0ZSB7XG4gICAgcHVibGljIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSWxsZWdhbCBjb25zdHJ1Y3RvcicpO1xuICAgIH1cbiAgfTtcbiAgT2JqZWN0LmVudHJpZXModmFsaWRpdHlLZXlzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+XG4gICAgT2JqZWN0LmFzc2lnbih2YWxpZGl0eUNsYXNzLnByb3RvdHlwZSwge1xuICAgICAgZ2V0IFtrZXldKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9LFxuICAgIH0pLFxuICApO1xuICBnbG9iYWxUaGlzLlZhbGlkaXR5U3RhdGUgPSB2YWxpZGl0eUNsYXNzIGFzIHVua25vd24gYXMgdHlwZW9mIFZhbGlkaXR5U3RhdGU7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGFic3RyYWN0IGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW5UeXBlIHtcbiAgcHVibGljIGdldCBmb3JtKCk6IEhUTUxGb3JtRWxlbWVudCB8IG51bGw7XG4gIHB1YmxpYyBhY2Nlc3NvciBuYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmc7XG5cbiAgcHVibGljIGFic3RyYWN0IGFjY2Vzc29yIHZhbHVlOiB1bmtub3duO1xuXG4gIHB1YmxpYyBnZXQgdmFsaWRpdHkoKTogVmFsaWRpdHlTdGF0ZTtcbiAgcHVibGljIGdldCB2YWxpZGF0aW9uTWVzc2FnZSgpOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgd2lsbFZhbGlkYXRlKCk6IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIGZvcm1EaXNhYmxlZDogYm9vbGVhbjtcblxuICBwdWJsaWMgY2hlY2tWYWxpZGl0eSgpOiBib29sZWFuO1xuICBwdWJsaWMgcmVwb3J0VmFsaWRpdHkoKTogYm9vbGVhbjtcbiAgcHVibGljIHNldEN1c3RvbVZhbGlkaXR5KG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQ7XG5cbiAgcHVibGljIGZvcm1Bc3NvY2lhdGVkQ2FsbGJhY2s/KGZvcm06IEhUTUxGb3JtRWxlbWVudCB8IG51bGwpOiB2b2lkO1xuICBwdWJsaWMgZm9ybURpc2FibGVkQ2FsbGJhY2soZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkO1xuICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcbiAgcHVibGljIGFic3RyYWN0IGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgcmVhc29uOiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBmb3JtU3RhdGU/KCk6IEZvcm1SZXN0b3JlU3RhdGU7XG4gIHByb3RlY3RlZCBzZXRWYWxpZGl0eUZsYWc8VCBleHRlbmRzIGtleW9mIFZhbGlkaXR5U3RhdGVGbGFncz4oXG4gICAgZmxhZzogVCxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgZmxhZ1ZhbHVlPzogVmFsaWRpdHlTdGF0ZUZsYWdzW1RdLFxuICApOiB2b2lkO1xuICBwcm90ZWN0ZWQgcmVtb3ZlVmFsaWRpdHlGbGFnPFQgZXh0ZW5kcyBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3M+KGZsYWc6IFQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgdmFsaWRhdGUoKTogdm9pZDtcbiAgcHJvdGVjdGVkIHNob3VsZFZhbGlkYXRlKG5hbWU6IFByb3BlcnR5S2V5IHwgdW5kZWZpbmVkKTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgRm9ybUFzc29jaWF0ZWRNaXhpbiBlbmFibGVzIG5hdGl2ZSBmb3JtIHN1cHBvcnQgZm9yIGN1c3RvbSBjb250cm9scy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4gPSA8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRWxlbWVudD4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZT4gJiBUID0+IHtcbiAgYWJzdHJhY3QgY2xhc3MgU2JiRm9ybUFzc29jaWF0ZWRFbGVtZW50XG4gICAgZXh0ZW5kcyBzdXBlckNsYXNzXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW5UeXBlPlxuICB7XG4gICAgcHVibGljIHN0YXRpYyBmb3JtQXNzb2NpYXRlZCA9IHRydWU7XG5cbiAgICBwdWJsaWMgYWJzdHJhY3QgYWNjZXNzb3IgdmFsdWU6IHVua25vd247XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmb3JtIG93bmVyIG9mIHRoaXMgZWxlbWVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGZvcm0oKTogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMuZm9ybTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBmb3JtIGVsZW1lbnQuIFdpbGwgYmUgcmVhZCBmcm9tIG5hbWUgYXR0cmlidXRlLlxuICAgICAqXG4gICAgICogQGRlc2NyaXB0aW9uIERldmVsb3BlciBub3RlOiBJbiB0aGlzIGNhc2UgdXBkYXRpbmcgdGhlIGF0dHJpYnV0ZSBtdXN0IGJlIHN5bmNocm9ub3VzLlxuICAgICAqIER1ZSB0byB0aGlzIGl0IGlzIGltcGxlbWVudGVkIGFzIGEgZ2V0dGVyL3NldHRlciBhbmQgdGhlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaygpIGhhbmRsZXMgdGhlIGRpZmYgY2hlY2suXG4gICAgICovXG4gICAgQHByb3BlcnR5KClcbiAgICBwdWJsaWMgc2V0IG5hbWUobmFtZTogc3RyaW5nKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnbmFtZScsIGAke25hbWV9YCk7XG5cbiAgICAgIC8vIEZvciBgRm9ybURhdGFgIHZhbHVlcywgd2UgaGF2ZSB0byBtYW51YWxseSB1cGRhdGUgdGhlIGZpZWxkTmFtZSBrZXlcbiAgICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCduYW1lJykgPz8gJyc7XG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMubG9jYWxOYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIFZhbGlkaXR5U3RhdGUgb2JqZWN0IGZvciB0aGlzIGVsZW1lbnQuXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGl0eSgpOiBWYWxpZGl0eVN0YXRlIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy52YWxpZGl0eTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGVycm9yIG1lc3NhZ2UsIGlmIGF2YWlsYWJsZSwgd2hpY2ggY29ycmVzcG9uZHNcbiAgICAgKiB0byB0aGUgY3VycmVudCB2YWxpZGF0aW9uIHN0YXRlLlxuICAgICAqIFBsZWFzZSBub3RlIHRoYXQgb25seSBvbmUgbWVzc2FnZSBpcyByZXR1cm5lZCBhdCBhIHRpbWUgKGUuZy4gaWZcbiAgICAgKiBtdWx0aXBsZSB2YWxpZGl0eSBzdGF0ZXMgYXJlIGludmFsaWQsIG9ubHkgdGhlIGNocm9ub2xvZ2ljYWxseSBmaXJzdCBvbmVcbiAgICAgKiBpcyByZXR1cm5lZCB1bnRpbCBpdCBpcyBmaXhlZCwgYXQgd2hpY2ggcG9pbnQgdGhlIG5leHQgbWVzc2FnZSBtaWdodCBiZVxuICAgICAqIHJldHVybmVkLCBpZiBpdCBpcyBzdGlsbCBhcHBsaWNhYmxlKS4gQWxzbywgYSBjdXN0b20gdmFsaWRpdHkgbWVzc2FnZVxuICAgICAqIChzZWUgYmVsb3cpIGhhcyBwcmVjZWRlbmNlIG92ZXIgbmF0aXZlIHZhbGlkYXRpb24gbWVzc2FnZXMuXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGF0aW9uTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLnZhbGlkYXRpb25NZXNzYWdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiB0aGlzIGVsZW1lbnQgd2lsbCBiZSB2YWxpZGF0ZWRcbiAgICAgKiB3aGVuIHRoZSBmb3JtIGlzIHN1Ym1pdHRlZDsgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgd2lsbFZhbGlkYXRlKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLndpbGxWYWxpZGF0ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF92YWxpZGl0eVN0YXRlcyA9IG5ldyBNYXA8XG4gICAgICBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3MsXG4gICAgICB7IGZsYWdWYWx1ZTogdW5rbm93bjsgbWVzc2FnZTogc3RyaW5nIH1cbiAgICA+KCk7XG5cbiAgICAvKiogV2hlbmV2ZXIgYSBzdXJyb3VuZGluZyBmb3JtIG9yIGZpZWxkc2V0IGlzIGNoYW5naW5nIGl0cyBkaXNhYmxlZCBzdGF0ZS4gKi9cbiAgICBAc3RhdGUoKSBwcm90ZWN0ZWQgYWNjZXNzb3IgZm9ybURpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoLi4uYXJnczogYW55W10pIHtcbiAgICAgIHN1cGVyKC4uLmFyZ3MpO1xuICAgICAgLy8gV2Ugd2FudCB0byBwcmV2ZW50IHRoZSBuYXRpdmUgYnJvd3NlciB2YWxpZGF0aW9uIG1lc3NhZ2UgcG9wb3ZlclxuICAgICAgLy8gdG8gYmUgc2hvd24uIFRoaXMgYWxzbyBwcmV2ZW50cyBhIGJ1ZyBpbiBXZWJLaXQsIHdoaWNoIHdvdWxkIG5vdFxuICAgICAgLy8gYWxsb3cgaG9zdCBhcyB0aGUgdmFsaWRpdHkgYW5jaG9yOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjY5ODMyXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignaW52YWxpZCcsIChlKSA9PiBlLnByZXZlbnREZWZhdWx0KCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soXG4gICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICBvbGQ6IHN0cmluZyB8IG51bGwsXG4gICAgICB2YWx1ZTogc3RyaW5nIHwgbnVsbCxcbiAgICApOiB2b2lkIHtcbiAgICAgIGlmIChuYW1lICE9PSAnbmFtZScgfHwgb2xkICE9PSB2YWx1ZSkge1xuICAgICAgICBzdXBlci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sobmFtZSwgb2xkLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgZWxlbWVudCBoYXMgbm8gdmFsaWRpdHkgcHJvYmxlbXM7IGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKiBGaXJlcyBhbiBpbnZhbGlkIGV2ZW50IGF0IHRoZSBlbGVtZW50IGluIHRoZSBsYXR0ZXIgY2FzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgY2hlY2tWYWxpZGl0eSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy5jaGVja1ZhbGlkaXR5KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgZWxlbWVudCBoYXMgbm8gdmFsaWRpdHkgcHJvYmxlbXM7IG90aGVyd2lzZSxcbiAgICAgKiByZXR1cm5zIGZhbHNlLCBmaXJlcyBhbiBpbnZhbGlkIGV2ZW50IGF0IHRoZSBlbGVtZW50LFxuICAgICAqIGFuZCAoaWYgdGhlIGV2ZW50IGlzbid0IGNhbmNlbGVkKSByZXBvcnRzIHRoZSBwcm9ibGVtIHRvIHRoZSB1c2VyLlxuICAgICAqL1xuICAgIHB1YmxpYyByZXBvcnRWYWxpZGl0eSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy5yZXBvcnRWYWxpZGl0eSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGN1c3RvbSB2YWxpZGl0eSBtZXNzYWdlIGZvciB0aGlzIGVsZW1lbnQuIFVzZSB0aGUgZW1wdHkgc3RyaW5nXG4gICAgICogdG8gaW5kaWNhdGUgdGhhdCB0aGUgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgY3VzdG9tIHZhbGlkaXR5IGVycm9yLlxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRDdXN0b21WYWxpZGl0eShtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgIGlmIChtZXNzYWdlKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsaWRpdHlGbGFnKCdjdXN0b21FcnJvcicsIG1lc3NhZ2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW1vdmVWYWxpZGl0eUZsYWcoJ2N1c3RvbUVycm9yJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsbGVkIHdoZW4gdGhlIGFzc29jaWF0ZWQgZm9ybSBlbGVtZW50IGNoYW5nZXMuXG4gICAgICogRWxlbWVudEludGVybmFscy5mb3JtIHJldHVybnMgdGhlIGFzc29jaWF0ZWQgZnJvbSBlbGVtZW50LlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGZvcm1Bc3NvY2lhdGVkQ2FsbGJhY2s/KGZvcm06IEhUTUxGb3JtRWxlbWVudCB8IG51bGwpOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIHdoZW5ldmVyIGEgc3Vycm91bmRpbmcgZmllbGRzZXQgY2hhbmdlcyBkaXNhYmxlZCBzdGF0ZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBmb3JtRGlzYWJsZWRDYWxsYmFjayhfZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgIHRoaXMuZm9ybURpc2FibGVkID0gdGhpcy5faGFzRGlzYWJsZWRBbmNlc3RvcigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0Rpc2FibGVkQW5jZXN0b3IoKTogYm9vbGVhbiB7XG4gICAgICAvLyBDaGVjayBpZiBhbnkgb2YgdGhlIGZpZWxkc2V0IGFuY2VzdG9ycyBoYXMgdGhlIGRpc2FibGVkIGF0dHJpYnV0ZSBzZXQuXG4gICAgICBsZXQgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5wYXJlbnRFbGVtZW50O1xuICAgICAgd2hpbGUgKGVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGVsZW1lbnQubG9jYWxOYW1lID09PSAnZmllbGRzZXQnICYmIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxlbWVudCA9IGVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGZvcm0gaXMgYmVpbmcgcmVzZXQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqICBDYWxsZWQgd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gcmVzdG9yZSBlbGVtZW504oCZcyBzdGF0ZSB0byBzdGF0ZSBpbiB3aGljaCBjYXNlXG4gICAgICogIHJlYXNvbiBpcyBcInJlc3RvcmVcIiwgb3Igd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gZnVsZmlsbCBhdXRvZmlsbCBvbiBiZWhhbGYgb2ZcbiAgICAgKiAgdXNlciBpbiB3aGljaCBjYXNlIHJlYXNvbiBpcyBcImF1dG9jb21wbGV0ZVwiLlxuICAgICAqICBJbiB0aGUgY2FzZSBvZiBcInJlc3RvcmVcIiwgc3RhdGUgaXMgYSBzdHJpbmcsIEZpbGUsIG9yIEZvcm1EYXRhIG9iamVjdFxuICAgICAqICBwcmV2aW91c2x5IHNldCBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50IHRvIHNldEZvcm1WYWx1ZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgICByZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQ7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICAgICk6IHZvaWQge1xuICAgICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG4gICAgICBpZiAobmFtZSA9PT0gJ3ZhbHVlJykge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLnNob3VsZFZhbGlkYXRlKG5hbWUpKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG91bGQgYmUgY2FsbGVkIHdoZW4gZm9ybSB2YWx1ZSBpcyBjaGFuZ2VkLlxuICAgICAqIEFkYXB0cyBhbmQgc2V0cyB0aGUgZm9ybVZhbHVlIGluIHRoZSBzdXBwb3J0ZWQgZm9ybWF0IChzdHJpbmcgfCBGb3JtRGF0YSB8IEZpbGUgfCBudWxsKVxuICAgICAqIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9FbGVtZW50SW50ZXJuYWxzL3NldEZvcm1WYWx1ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZCB7XG4gICAgICBsZXQgZm9ybVZhbHVlOiBGb3JtRGF0YSB8IHN0cmluZyB8IG51bGw7XG4gICAgICBjb25zdCBuYW1lID0gdGhpcy5uYW1lID8/IHRoaXMuZ2V0QXR0cmlidXRlKCduYW1lJyk7XG5cbiAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSA9PT0gJ3N0cmluZycgfHwgdGhpcy52YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGZvcm1WYWx1ZSA9IHRoaXMudmFsdWUgYXMgc3RyaW5nIHwgbnVsbDtcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSkge1xuICAgICAgICBmb3JtVmFsdWUgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgICAgdGhpcy52YWx1ZS5mb3JFYWNoKChlbCkgPT4ge1xuICAgICAgICAgIChmb3JtVmFsdWUgYXMgRm9ybURhdGEpLmFwcGVuZChcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICB0eXBlb2YgZWwgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgID8gZWxcbiAgICAgICAgICAgICAgOiBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkoZWwpXSwge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9ybVZhbHVlID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICAgIGZvcm1WYWx1ZS5hcHBlbmQoXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSldLCB7XG4gICAgICAgICAgICB0eXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHRoZSBmb3JtIHN0YXRlIGlzIHVuZGVmaW5lZCB0aGVuIGZvcm0gdmFsdWUgd2lsbCBiZSBjb3BpZWQgdG8gc3RhdGUuXG4gICAgICB0aGlzLmludGVybmFscy5zZXRGb3JtVmFsdWUoZm9ybVZhbHVlLCB0aGlzLmZvcm1TdGF0ZT8uKCkpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBmb3JtU3RhdGU/KCk6IEZvcm1SZXN0b3JlU3RhdGU7XG5cbiAgICAvKipcbiAgICAgKiBNYXJrcyB0aGlzIGVsZW1lbnQgYXMgc3VmZmVyaW5nIGZyb20gdGhlIGNvbnN0cmFpbnQgaW5kaWNhdGVkIGJ5IHRoZVxuICAgICAqIGZsYWcgYXJndW1lbnQgYW5kIGFzc29jaWF0ZXMgdGhlIGdpdmVuIG1lc3NhZ2UgdG8gaXQuXG4gICAgICogTm90ZSB0aGF0IG9ubHkgb25lIG1lc3NhZ2UgaXMgZGlzcGxheWVkIGF0IGEgdGltZSBhbmQgY3VzdG9tIG1lc3NhZ2VzIGJ5XG4gICAgICogY29uc3VtZXJzIGFyZSBhbHdheXMgZGlzcGxheWVkIGJlZm9yZSBpbnRlcm5hbCBtZXNzYWdlcyBhbmQgaW50ZXJuYWxcbiAgICAgKiBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIGluIHRoZSBvcmRlciB0aGV5IHdlcmUgYWRkZWQuXG4gICAgICogVG8gc2V0L2RlZmluZSBjdXN0b20gdmFsaWRpdHkgc3RhdGUgZmxhZ3MsIHlvdSBuZWVkIHRvIGV4dGVuZCB0aGVcbiAgICAgKiBWYWxpZGl0eVN0YXRlIHByb3RvdHlwZSAoYW5kIHRoZSBDdXN0b21WYWxpZGl0eVN0YXRlIGludGVyZmFjZSkuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogICAvLyBUaGUgdHlwZSBvZiB0aGUgY3VzdG9tIHZhbGlkaXR5IHN0YXRlIGRvZXMgbm90IG5lZWQgdG8gYmUgYm9vbGVhbi5cbiAgICAgKiAgIE9iamVjdC5hc3NpZ24oVmFsaWRpdHlTdGF0ZS5wcm90b3R5cGUsIHtcbiAgICAgKiAgICAgZ2V0IG15RXJyb3IoKTogYm9vbGVhbiB7XG4gICAgICogICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAqICAgICB9LFxuICAgICAqICAgfSk7XG4gICAgICpcbiAgICAgKiAgIGRlY2xhcmUgZ2xvYmFsIHtcbiAgICAgKiAgICAgaW50ZXJmYWNlIEN1c3RvbVZhbGlkaXR5U3RhdGUge1xuICAgICAqICAgICAgIG15RXJyb3I6IGJvb2xlYW47XG4gICAgICogICAgIH1cbiAgICAgKiAgIH1cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsaWRpdHlGbGFnPFQgZXh0ZW5kcyBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3M+KFxuICAgICAgZmxhZzogVCxcbiAgICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICAgIGZsYWdWYWx1ZT86IFZhbGlkaXR5U3RhdGVGbGFnc1tUXSxcbiAgICApOiB2b2lkIHtcbiAgICAgIGZsYWdWYWx1ZSA/Pz0gdHJ1ZTtcbiAgICAgIGNvbnN0IHZhbGlkaXR5U3RhdGUgPSB0aGlzLl92YWxpZGl0eVN0YXRlcy5nZXQoZmxhZyk7XG4gICAgICBpZiAoXG4gICAgICAgICF2YWxpZGl0eVN0YXRlIHx8XG4gICAgICAgIHZhbGlkaXR5U3RhdGUubWVzc2FnZSAhPT0gbWVzc2FnZSB8fFxuICAgICAgICB2YWxpZGl0eVN0YXRlLmZsYWdWYWx1ZSAhPT0gZmxhZ1ZhbHVlXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5fdmFsaWRpdHlTdGF0ZXMuc2V0KGZsYWcsIHsgZmxhZ1ZhbHVlLCBtZXNzYWdlIH0pO1xuICAgICAgICB0aGlzLl9zZXRJbnRlcm5hbFZhbGlkaXR5KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJlbW92ZXMgdGhlIHZhbGlkaXR5IHN0YXRlIGZsYWcgZW50cnkgYW5kIHVwZGF0ZXMgdmFsaWRpdHkgc3RhdGUuICovXG4gICAgcHJvdGVjdGVkIHJlbW92ZVZhbGlkaXR5RmxhZzxUIGV4dGVuZHMga2V5b2YgVmFsaWRpdHlTdGF0ZUZsYWdzPihmbGFnOiBUKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5fdmFsaWRpdHlTdGF0ZXMuaGFzKGZsYWcpKSB7XG4gICAgICAgIHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmRlbGV0ZShmbGFnKTtcbiAgICAgICAgdGhpcy5fc2V0SW50ZXJuYWxWYWxpZGl0eSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBUbyBiZSBjYWxsZWQgd2hlbmV2ZXIgdGhlIGN1cnJlbnQgZWxlbWVudCBuZWVkcyB0byBiZSB2YWxpZGF0ZWQuICovXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRlKCk6IHZvaWQge31cblxuICAgIC8qKiBXaGV0aGVyIHZhbGlkYXRpb24gc2hvdWxkIGJlIHJ1biBvbiBhIHByb3BlcnR5IGNoYW5nZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAqL1xuICAgIHByb3RlY3RlZCBzaG91bGRWYWxpZGF0ZShuYW1lOiBQcm9wZXJ0eUtleSB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuICFuYW1lO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldEludGVybmFsVmFsaWRpdHkoKTogdm9pZCB7XG4gICAgICBsZXQgb3V0cHV0TWVzc2FnZSA9IHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmdldCgnY3VzdG9tRXJyb3InKT8ubWVzc2FnZTtcbiAgICAgIGNvbnN0IGZsYWdzOiBWYWxpZGl0eVN0YXRlRmxhZ3MgPSB7fTtcbiAgICAgIHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmZvckVhY2goKHsgZmxhZ1ZhbHVlLCBtZXNzYWdlIH0sIGZsYWcpID0+IHtcbiAgICAgICAgZmxhZ3NbZmxhZ10gPSBmbGFnVmFsdWUgYXMgYW55O1xuICAgICAgICBvdXRwdXRNZXNzYWdlIHx8PSBtZXNzYWdlO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGN1c3RvbUZsYWdzID0gT2JqZWN0LmtleXMoVmFsaWRpdHlTdGF0ZS5wcm90b3R5cGUpLmZpbHRlcihcbiAgICAgICAgKGYpID0+ICEoZiBpbiB2YWxpZGl0eUtleXMpICYmIGYgIT09ICd2YWxpZCcsXG4gICAgICApO1xuICAgICAgZm9yIChjb25zdCBmbGFnIG9mIGN1c3RvbUZsYWdzKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gZmxhZyBpbiBmbGFncyA/IGZsYWdzW2ZsYWcgYXMga2V5b2YgVmFsaWRpdHlTdGF0ZUZsYWdzXSA6IGZhbHNlO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcy5pbnRlcm5hbHMudmFsaWRpdHksIGZsYWcsIHsgdmFsdWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgLy8gSWYgYW55IGN1c3RvbSBlcnJvcnMgYXJlIHByb3ZpZGVkLCB3ZSBuZWVkIHRvIHNldCBjdXN0b21FcnJvciB0byB0cnVlLFxuICAgICAgICAgIC8vIGFzIHRoaXMgaXMgdGhlIG9ubHkgY3VzdG9tIGVycm9yIHByb3BlcnR5IGJyb3dzZXJzIGFjY2VwdC5cbiAgICAgICAgICBmbGFncy5jdXN0b21FcnJvciA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0VmFsaWRpdHkoZmxhZ3MsIG91dHB1dE1lc3NhZ2UpO1xuXG4gICAgICAvLyBXZWJLaXQgc2VlbXMgdG8gYWx3YXlzIHNldCBjdXN0b21FcnJvciB0byB0cnVlLCBpZiBhbnkgZXJyb3IgaXMgYWN0aXZlLlxuICAgICAgLy8gRHVlIHRvIHRoaXMgd2UgcGF0Y2ggdGhlIGN1c3RvbUVycm9yIHZhbHVlIG1hbnVhbGx5LlxuICAgICAgaWYgKGlzV2Via2l0KSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLmludGVybmFscy52YWxpZGl0eSwgJ2N1c3RvbUVycm9yJywge1xuICAgICAgICAgIHZhbHVlOiB0aGlzLl92YWxpZGl0eVN0YXRlcy5oYXMoJ2N1c3RvbUVycm9yJykgfHwgISFmbGFncy5jdXN0b21FcnJvcixcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiRm9ybUFzc29jaWF0ZWRFbGVtZW50IGFzIHVua25vd24gYXMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZT4gJiBUO1xufTtcblxuLyoqXG4gKiBBIHZhbHVlIHRvIGJlIHJlc3RvcmVkIGZvciBhIGNvbXBvbmVudCdzIGZvcm0gdmFsdWUuIElmIGEgY29tcG9uZW50J3MgZm9ybVxuICogc3RhdGUgaXMgYSBgRm9ybURhdGFgIG9iamVjdCwgaXRzIGVudHJ5IGxpc3Qgb2YgbmFtZSBhbmQgdmFsdWVzIHdpbGwgYmVcbiAqIHByb3ZpZGVkLlxuICovXG5leHBvcnQgdHlwZSBGb3JtUmVzdG9yZVN0YXRlID0gc3RyaW5nIHwgRm9ybURhdGEgfCBGaWxlO1xuXG4vKipcbiAqIFRoZSByZWFzb24gYSBmb3JtIGNvbXBvbmVudCBpcyBiZWluZyByZXN0b3JlZCBmb3IsIGVpdGhlciBgJ3Jlc3RvcmUnYCBmb3JcbiAqIGJyb3dzZXIgcmVzdG9yYXRpb24gb3IgYCdhdXRvY29tcGxldGUnYCBmb3IgcmVzdG9yaW5nIHVzZXIgdmFsdWVzLlxuICovXG5leHBvcnQgdHlwZSBGb3JtUmVzdG9yZVJlYXNvbiA9ICdyZXN0b3JlJyB8ICdhdXRvY29tcGxldGUnO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBa0JBLElBQU0sZUFBOEU7Q0FDbEYsVUFBVTtDQUNWLGFBQWE7Q0FDYixpQkFBaUI7Q0FDakIsZUFBZTtDQUNmLGdCQUFnQjtDQUNoQixjQUFjO0NBQ2QsU0FBUztDQUNULFVBQVU7Q0FDVixjQUFjO0NBQ2QsY0FBYzs7QUFLaEIsSUFBSSxPQUFPLGtCQUFrQixhQUFhO0NBQ3hDLE1BQU0sZ0JBQWdCLE1BQU0sY0FBYTtFQUN2QyxJQUFXLFFBQUs7R0FDZCxPQUFPO0VBQ1Q7RUFDQSxjQUFBO0dBQ0UsTUFBTSxJQUFJLFVBQVUscUJBQXFCO0VBQzNDOztDQUVGLE9BQU8sUUFBUSxZQUFZLEVBQUUsU0FBUyxDQUFDLEtBQUssV0FDMUMsT0FBTyxPQUFPLGNBQWMsV0FBVyxFQUNyQyxLQUFLLE9BQUk7RUFDUCxPQUFPO0NBQ1QsRUFBQSxDQUNELENBQUM7Q0FFSixXQUFXLGdCQUFnQjtBQUM3Qjs7OztBQTJDQSxJQUFhLDBCQUNYLGVBQ3VEO0NBK1R2RCxjQTlUdUM7b0JBQzdCOzs7Ozs7ZUFESyxpQ0FDTCxZQUFVOzs7NEJB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
294
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hc3NvY2lhdGVkLW1peGluLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9mb3JtLWFzc29jaWF0ZWQtbWl4aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlICovXG5pbXBvcnQgdHlwZSB7IFByb3BlcnR5RGVjbGFyYXRpb24sIFByb3BlcnR5VmFsdWVzIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vYmFzZS1lbGVtZW50cy9lbGVtZW50LnRzJztcbmltcG9ydCB7IGlzV2Via2l0IH0gZnJvbSAnLi4vZG9tL3BsYXRmb3JtLnRzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci50cyc7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLyoqXG4gICAqIERlZmluZXMgY3VzdG9tIHZhbGlkaXR5IHN0YXRlIHByb3BlcnRpZXMuXG4gICAqL1xuICBpbnRlcmZhY2UgQ3VzdG9tVmFsaWRpdHlTdGF0ZSB7fVxuICBpbnRlcmZhY2UgVmFsaWRpdHlTdGF0ZSBleHRlbmRzIEN1c3RvbVZhbGlkaXR5U3RhdGUge31cbiAgaW50ZXJmYWNlIFZhbGlkaXR5U3RhdGVGbGFncyBleHRlbmRzIFBhcnRpYWw8Q3VzdG9tVmFsaWRpdHlTdGF0ZT4ge31cbn1cblxuY29uc3QgdmFsaWRpdHlLZXlzOiBSZXF1aXJlZDxPbWl0PFZhbGlkaXR5U3RhdGVGbGFncywga2V5b2YgQ3VzdG9tVmFsaWRpdHlTdGF0ZT4+ID0ge1xuICBiYWRJbnB1dDogZmFsc2UsXG4gIGN1c3RvbUVycm9yOiBmYWxzZSxcbiAgcGF0dGVybk1pc21hdGNoOiBmYWxzZSxcbiAgcmFuZ2VPdmVyZmxvdzogZmFsc2UsXG4gIHJhbmdlVW5kZXJmbG93OiBmYWxzZSxcbiAgc3RlcE1pc21hdGNoOiBmYWxzZSxcbiAgdG9vTG9uZzogZmFsc2UsXG4gIHRvb1Nob3J0OiBmYWxzZSxcbiAgdHlwZU1pc21hdGNoOiBmYWxzZSxcbiAgdmFsdWVNaXNzaW5nOiBmYWxzZSxcbn07XG4vLyBXZSBuZWVkIFZhbGlkaXR5U3RhdGUgaW4gdGhlIGdsb2JhbCBjb250ZXh0LCBhcyB3ZSBjaGVjayB0aGUgcHJvdG90eXBlIGZvclxuLy8gZXh0ZW5zaW9ucy4gSW4gZW52aXJvbm1lbnRzIHdoZXJlIHRoYXQgaXMgbm90IHRoZSBjYXNlIChlLmcuIE5vZGUuanMpIHdlXG4vLyBwYXRjaCBpdCB3aXRoIGEgbWluaW1hbCBzaGltLlxuaWYgKHR5cGVvZiBWYWxpZGl0eVN0YXRlID09PSAndW5kZWZpbmVkJykge1xuICBjb25zdCB2YWxpZGl0eUNsYXNzID0gY2xhc3MgVmFsaWRpdHlTdGF0ZSB7XG4gICAgcHVibGljIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSWxsZWdhbCBjb25zdHJ1Y3RvcicpO1xuICAgIH1cbiAgfTtcbiAgT2JqZWN0LmVudHJpZXModmFsaWRpdHlLZXlzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+XG4gICAgT2JqZWN0LmFzc2lnbih2YWxpZGl0eUNsYXNzLnByb3RvdHlwZSwge1xuICAgICAgZ2V0IFtrZXldKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9LFxuICAgIH0pLFxuICApO1xuICBnbG9iYWxUaGlzLlZhbGlkaXR5U3RhdGUgPSB2YWxpZGl0eUNsYXNzIGFzIHVua25vd24gYXMgdHlwZW9mIFZhbGlkaXR5U3RhdGU7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGFic3RyYWN0IGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW5UeXBlIHtcbiAgcHVibGljIGdldCBmb3JtKCk6IEhUTUxGb3JtRWxlbWVudCB8IG51bGw7XG4gIHB1YmxpYyBhY2Nlc3NvciBuYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmc7XG5cbiAgcHVibGljIGFic3RyYWN0IGFjY2Vzc29yIHZhbHVlOiB1bmtub3duO1xuXG4gIHB1YmxpYyBnZXQgdmFsaWRpdHkoKTogVmFsaWRpdHlTdGF0ZTtcbiAgcHVibGljIGdldCB2YWxpZGF0aW9uTWVzc2FnZSgpOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgd2lsbFZhbGlkYXRlKCk6IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIGFjY2Vzc29yIGZvcm1EaXNhYmxlZDogYm9vbGVhbjtcblxuICBwdWJsaWMgY2hlY2tWYWxpZGl0eSgpOiBib29sZWFuO1xuICBwdWJsaWMgcmVwb3J0VmFsaWRpdHkoKTogYm9vbGVhbjtcbiAgcHVibGljIHNldEN1c3RvbVZhbGlkaXR5KG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQ7XG5cbiAgcHVibGljIGZvcm1Bc3NvY2lhdGVkQ2FsbGJhY2s/KGZvcm06IEhUTUxGb3JtRWxlbWVudCB8IG51bGwpOiB2b2lkO1xuICBwdWJsaWMgZm9ybURpc2FibGVkQ2FsbGJhY2soZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkO1xuICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcbiAgcHVibGljIGFic3RyYWN0IGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgcmVhc29uOiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBmb3JtU3RhdGU/KCk6IEZvcm1SZXN0b3JlU3RhdGU7XG4gIHByb3RlY3RlZCBzZXRWYWxpZGl0eUZsYWc8VCBleHRlbmRzIGtleW9mIFZhbGlkaXR5U3RhdGVGbGFncz4oXG4gICAgZmxhZzogVCxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgZmxhZ1ZhbHVlPzogVmFsaWRpdHlTdGF0ZUZsYWdzW1RdLFxuICApOiB2b2lkO1xuICBwcm90ZWN0ZWQgcmVtb3ZlVmFsaWRpdHlGbGFnPFQgZXh0ZW5kcyBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3M+KGZsYWc6IFQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgdmFsaWRhdGUoKTogdm9pZDtcbiAgcHJvdGVjdGVkIHNob3VsZFZhbGlkYXRlKG5hbWU6IFByb3BlcnR5S2V5IHwgdW5kZWZpbmVkKTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgRm9ybUFzc29jaWF0ZWRNaXhpbiBlbmFibGVzIG5hdGl2ZSBmb3JtIHN1cHBvcnQgZm9yIGN1c3RvbSBjb250cm9scy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4gPSA8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRWxlbWVudD4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZT4gJiBUID0+IHtcbiAgYWJzdHJhY3QgY2xhc3MgU2JiRm9ybUFzc29jaWF0ZWRFbGVtZW50XG4gICAgZXh0ZW5kcyBzdXBlckNsYXNzXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW5UeXBlPlxuICB7XG4gICAgcHVibGljIHN0YXRpYyBmb3JtQXNzb2NpYXRlZCA9IHRydWU7XG5cbiAgICBwdWJsaWMgYWJzdHJhY3QgYWNjZXNzb3IgdmFsdWU6IHVua25vd247XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmb3JtIG93bmVyIG9mIHRoaXMgZWxlbWVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGZvcm0oKTogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMuZm9ybTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBmb3JtIGVsZW1lbnQuIFdpbGwgYmUgcmVhZCBmcm9tIG5hbWUgYXR0cmlidXRlLlxuICAgICAqXG4gICAgICogQGRlc2NyaXB0aW9uIERldmVsb3BlciBub3RlOiBJbiB0aGlzIGNhc2UgdXBkYXRpbmcgdGhlIGF0dHJpYnV0ZSBtdXN0IGJlIHN5bmNocm9ub3VzLlxuICAgICAqIER1ZSB0byB0aGlzIGl0IGlzIGltcGxlbWVudGVkIGFzIGEgZ2V0dGVyL3NldHRlciBhbmQgdGhlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaygpIGhhbmRsZXMgdGhlIGRpZmYgY2hlY2suXG4gICAgICovXG4gICAgQHByb3BlcnR5KClcbiAgICBwdWJsaWMgc2V0IG5hbWUobmFtZTogc3RyaW5nKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnbmFtZScsIGAke25hbWV9YCk7XG5cbiAgICAgIC8vIEZvciBgRm9ybURhdGFgIHZhbHVlcywgd2UgaGF2ZSB0byBtYW51YWxseSB1cGRhdGUgdGhlIGZpZWxkTmFtZSBrZXlcbiAgICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCduYW1lJykgPz8gJyc7XG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMubG9jYWxOYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIFZhbGlkaXR5U3RhdGUgb2JqZWN0IGZvciB0aGlzIGVsZW1lbnQuXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGl0eSgpOiBWYWxpZGl0eVN0YXRlIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy52YWxpZGl0eTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGVycm9yIG1lc3NhZ2UsIGlmIGF2YWlsYWJsZSwgd2hpY2ggY29ycmVzcG9uZHNcbiAgICAgKiB0byB0aGUgY3VycmVudCB2YWxpZGF0aW9uIHN0YXRlLlxuICAgICAqIFBsZWFzZSBub3RlIHRoYXQgb25seSBvbmUgbWVzc2FnZSBpcyByZXR1cm5lZCBhdCBhIHRpbWUgKGUuZy4gaWZcbiAgICAgKiBtdWx0aXBsZSB2YWxpZGl0eSBzdGF0ZXMgYXJlIGludmFsaWQsIG9ubHkgdGhlIGNocm9ub2xvZ2ljYWxseSBmaXJzdCBvbmVcbiAgICAgKiBpcyByZXR1cm5lZCB1bnRpbCBpdCBpcyBmaXhlZCwgYXQgd2hpY2ggcG9pbnQgdGhlIG5leHQgbWVzc2FnZSBtaWdodCBiZVxuICAgICAqIHJldHVybmVkLCBpZiBpdCBpcyBzdGlsbCBhcHBsaWNhYmxlKS4gQWxzbywgYSBjdXN0b20gdmFsaWRpdHkgbWVzc2FnZVxuICAgICAqIChzZWUgYmVsb3cpIGhhcyBwcmVjZWRlbmNlIG92ZXIgbmF0aXZlIHZhbGlkYXRpb24gbWVzc2FnZXMuXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGF0aW9uTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLnZhbGlkYXRpb25NZXNzYWdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiB0aGlzIGVsZW1lbnQgd2lsbCBiZSB2YWxpZGF0ZWRcbiAgICAgKiB3aGVuIHRoZSBmb3JtIGlzIHN1Ym1pdHRlZDsgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgd2lsbFZhbGlkYXRlKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLndpbGxWYWxpZGF0ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF92YWxpZGl0eVN0YXRlcyA9IG5ldyBNYXA8XG4gICAgICBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3MsXG4gICAgICB7IGZsYWdWYWx1ZTogdW5rbm93bjsgbWVzc2FnZTogc3RyaW5nIH1cbiAgICA+KCk7XG5cbiAgICAvKiogV2hlbmV2ZXIgYSBzdXJyb3VuZGluZyBmb3JtIG9yIGZpZWxkc2V0IGlzIGNoYW5naW5nIGl0cyBkaXNhYmxlZCBzdGF0ZS4gKi9cbiAgICBAc3RhdGUoKSBwcm90ZWN0ZWQgYWNjZXNzb3IgZm9ybURpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoLi4uYXJnczogYW55W10pIHtcbiAgICAgIHN1cGVyKC4uLmFyZ3MpO1xuICAgICAgLy8gV2Ugd2FudCB0byBwcmV2ZW50IHRoZSBuYXRpdmUgYnJvd3NlciB2YWxpZGF0aW9uIG1lc3NhZ2UgcG9wb3ZlclxuICAgICAgLy8gdG8gYmUgc2hvd24uIFRoaXMgYWxzbyBwcmV2ZW50cyBhIGJ1ZyBpbiBXZWJLaXQsIHdoaWNoIHdvdWxkIG5vdFxuICAgICAgLy8gYWxsb3cgaG9zdCBhcyB0aGUgdmFsaWRpdHkgYW5jaG9yOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjY5ODMyXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignaW52YWxpZCcsIChlKSA9PiBlLnByZXZlbnREZWZhdWx0KCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soXG4gICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICBvbGQ6IHN0cmluZyB8IG51bGwsXG4gICAgICB2YWx1ZTogc3RyaW5nIHwgbnVsbCxcbiAgICApOiB2b2lkIHtcbiAgICAgIGlmIChuYW1lICE9PSAnbmFtZScgfHwgb2xkICE9PSB2YWx1ZSkge1xuICAgICAgICBzdXBlci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sobmFtZSwgb2xkLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgZWxlbWVudCBoYXMgbm8gdmFsaWRpdHkgcHJvYmxlbXM7IGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKiBGaXJlcyBhbiBpbnZhbGlkIGV2ZW50IGF0IHRoZSBlbGVtZW50IGluIHRoZSBsYXR0ZXIgY2FzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgY2hlY2tWYWxpZGl0eSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy5jaGVja1ZhbGlkaXR5KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgZWxlbWVudCBoYXMgbm8gdmFsaWRpdHkgcHJvYmxlbXM7IG90aGVyd2lzZSxcbiAgICAgKiByZXR1cm5zIGZhbHNlLCBmaXJlcyBhbiBpbnZhbGlkIGV2ZW50IGF0IHRoZSBlbGVtZW50LFxuICAgICAqIGFuZCAoaWYgdGhlIGV2ZW50IGlzbid0IGNhbmNlbGVkKSByZXBvcnRzIHRoZSBwcm9ibGVtIHRvIHRoZSB1c2VyLlxuICAgICAqL1xuICAgIHB1YmxpYyByZXBvcnRWYWxpZGl0eSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy5yZXBvcnRWYWxpZGl0eSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGN1c3RvbSB2YWxpZGl0eSBtZXNzYWdlIGZvciB0aGlzIGVsZW1lbnQuIFVzZSB0aGUgZW1wdHkgc3RyaW5nXG4gICAgICogdG8gaW5kaWNhdGUgdGhhdCB0aGUgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgY3VzdG9tIHZhbGlkaXR5IGVycm9yLlxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRDdXN0b21WYWxpZGl0eShtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgIGlmIChtZXNzYWdlKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsaWRpdHlGbGFnKCdjdXN0b21FcnJvcicsIG1lc3NhZ2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW1vdmVWYWxpZGl0eUZsYWcoJ2N1c3RvbUVycm9yJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsbGVkIHdoZW4gdGhlIGFzc29jaWF0ZWQgZm9ybSBlbGVtZW50IGNoYW5nZXMuXG4gICAgICogRWxlbWVudEludGVybmFscy5mb3JtIHJldHVybnMgdGhlIGFzc29jaWF0ZWQgZnJvbSBlbGVtZW50LlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGZvcm1Bc3NvY2lhdGVkQ2FsbGJhY2s/KGZvcm06IEhUTUxGb3JtRWxlbWVudCB8IG51bGwpOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIHdoZW5ldmVyIGEgc3Vycm91bmRpbmcgZmllbGRzZXQgY2hhbmdlcyBkaXNhYmxlZCBzdGF0ZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBmb3JtRGlzYWJsZWRDYWxsYmFjayhfZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgIHRoaXMuZm9ybURpc2FibGVkID0gdGhpcy5faGFzRGlzYWJsZWRBbmNlc3RvcigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0Rpc2FibGVkQW5jZXN0b3IoKTogYm9vbGVhbiB7XG4gICAgICAvLyBDaGVjayBpZiBhbnkgb2YgdGhlIGZpZWxkc2V0IGFuY2VzdG9ycyBoYXMgdGhlIGRpc2FibGVkIGF0dHJpYnV0ZSBzZXQuXG4gICAgICBsZXQgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5wYXJlbnRFbGVtZW50O1xuICAgICAgd2hpbGUgKGVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGVsZW1lbnQubG9jYWxOYW1lID09PSAnZmllbGRzZXQnICYmIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxlbWVudCA9IGVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGZvcm0gaXMgYmVpbmcgcmVzZXQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqICBDYWxsZWQgd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gcmVzdG9yZSBlbGVtZW504oCZcyBzdGF0ZSB0byBzdGF0ZSBpbiB3aGljaCBjYXNlXG4gICAgICogIHJlYXNvbiBpcyBcInJlc3RvcmVcIiwgb3Igd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gZnVsZmlsbCBhdXRvZmlsbCBvbiBiZWhhbGYgb2ZcbiAgICAgKiAgdXNlciBpbiB3aGljaCBjYXNlIHJlYXNvbiBpcyBcImF1dG9jb21wbGV0ZVwiLlxuICAgICAqICBJbiB0aGUgY2FzZSBvZiBcInJlc3RvcmVcIiwgc3RhdGUgaXMgYSBzdHJpbmcsIEZpbGUsIG9yIEZvcm1EYXRhIG9iamVjdFxuICAgICAqICBwcmV2aW91c2x5IHNldCBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50IHRvIHNldEZvcm1WYWx1ZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgICByZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQ7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICAgICk6IHZvaWQge1xuICAgICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG4gICAgICBpZiAobmFtZSA9PT0gJ3ZhbHVlJykge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLnNob3VsZFZhbGlkYXRlKG5hbWUpKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG91bGQgYmUgY2FsbGVkIHdoZW4gZm9ybSB2YWx1ZSBpcyBjaGFuZ2VkLlxuICAgICAqIEFkYXB0cyBhbmQgc2V0cyB0aGUgZm9ybVZhbHVlIGluIHRoZSBzdXBwb3J0ZWQgZm9ybWF0IChzdHJpbmcgfCBGb3JtRGF0YSB8IEZpbGUgfCBudWxsKVxuICAgICAqIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9FbGVtZW50SW50ZXJuYWxzL3NldEZvcm1WYWx1ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZCB7XG4gICAgICBsZXQgZm9ybVZhbHVlOiBGb3JtRGF0YSB8IHN0cmluZyB8IG51bGw7XG4gICAgICBjb25zdCBuYW1lID0gdGhpcy5uYW1lID8/IHRoaXMuZ2V0QXR0cmlidXRlKCduYW1lJyk7XG5cbiAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSA9PT0gJ3N0cmluZycgfHwgdGhpcy52YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGZvcm1WYWx1ZSA9IHRoaXMudmFsdWUgYXMgc3RyaW5nIHwgbnVsbDtcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSkge1xuICAgICAgICBmb3JtVmFsdWUgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgICAgdGhpcy52YWx1ZS5mb3JFYWNoKChlbCkgPT4ge1xuICAgICAgICAgIChmb3JtVmFsdWUgYXMgRm9ybURhdGEpLmFwcGVuZChcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICB0eXBlb2YgZWwgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgID8gZWxcbiAgICAgICAgICAgICAgOiBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkoZWwpXSwge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9ybVZhbHVlID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICAgIGZvcm1WYWx1ZS5hcHBlbmQoXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSldLCB7XG4gICAgICAgICAgICB0eXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHRoZSBmb3JtIHN0YXRlIGlzIHVuZGVmaW5lZCB0aGVuIGZvcm0gdmFsdWUgd2lsbCBiZSBjb3BpZWQgdG8gc3RhdGUuXG4gICAgICB0aGlzLmludGVybmFscy5zZXRGb3JtVmFsdWUoZm9ybVZhbHVlLCB0aGlzLmZvcm1TdGF0ZT8uKCkpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBmb3JtU3RhdGU/KCk6IEZvcm1SZXN0b3JlU3RhdGU7XG5cbiAgICAvKipcbiAgICAgKiBNYXJrcyB0aGlzIGVsZW1lbnQgYXMgc3VmZmVyaW5nIGZyb20gdGhlIGNvbnN0cmFpbnQgaW5kaWNhdGVkIGJ5IHRoZVxuICAgICAqIGZsYWcgYXJndW1lbnQgYW5kIGFzc29jaWF0ZXMgdGhlIGdpdmVuIG1lc3NhZ2UgdG8gaXQuXG4gICAgICogTm90ZSB0aGF0IG9ubHkgb25lIG1lc3NhZ2UgaXMgZGlzcGxheWVkIGF0IGEgdGltZSBhbmQgY3VzdG9tIG1lc3NhZ2VzIGJ5XG4gICAgICogY29uc3VtZXJzIGFyZSBhbHdheXMgZGlzcGxheWVkIGJlZm9yZSBpbnRlcm5hbCBtZXNzYWdlcyBhbmQgaW50ZXJuYWxcbiAgICAgKiBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIGluIHRoZSBvcmRlciB0aGV5IHdlcmUgYWRkZWQuXG4gICAgICogVG8gc2V0L2RlZmluZSBjdXN0b20gdmFsaWRpdHkgc3RhdGUgZmxhZ3MsIHlvdSBuZWVkIHRvIGV4dGVuZCB0aGVcbiAgICAgKiBWYWxpZGl0eVN0YXRlIHByb3RvdHlwZSAoYW5kIHRoZSBDdXN0b21WYWxpZGl0eVN0YXRlIGludGVyZmFjZSkuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogICAvLyBUaGUgdHlwZSBvZiB0aGUgY3VzdG9tIHZhbGlkaXR5IHN0YXRlIGRvZXMgbm90IG5lZWQgdG8gYmUgYm9vbGVhbi5cbiAgICAgKiAgIE9iamVjdC5hc3NpZ24oVmFsaWRpdHlTdGF0ZS5wcm90b3R5cGUsIHtcbiAgICAgKiAgICAgZ2V0IG15RXJyb3IoKTogYm9vbGVhbiB7XG4gICAgICogICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAqICAgICB9LFxuICAgICAqICAgfSk7XG4gICAgICpcbiAgICAgKiAgIGRlY2xhcmUgZ2xvYmFsIHtcbiAgICAgKiAgICAgaW50ZXJmYWNlIEN1c3RvbVZhbGlkaXR5U3RhdGUge1xuICAgICAqICAgICAgIG15RXJyb3I6IGJvb2xlYW47XG4gICAgICogICAgIH1cbiAgICAgKiAgIH1cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsaWRpdHlGbGFnPFQgZXh0ZW5kcyBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3M+KFxuICAgICAgZmxhZzogVCxcbiAgICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICAgIGZsYWdWYWx1ZT86IFZhbGlkaXR5U3RhdGVGbGFnc1tUXSxcbiAgICApOiB2b2lkIHtcbiAgICAgIGZsYWdWYWx1ZSA/Pz0gdHJ1ZTtcbiAgICAgIGNvbnN0IHZhbGlkaXR5U3RhdGUgPSB0aGlzLl92YWxpZGl0eVN0YXRlcy5nZXQoZmxhZyk7XG4gICAgICBpZiAoXG4gICAgICAgICF2YWxpZGl0eVN0YXRlIHx8XG4gICAgICAgIHZhbGlkaXR5U3RhdGUubWVzc2FnZSAhPT0gbWVzc2FnZSB8fFxuICAgICAgICB2YWxpZGl0eVN0YXRlLmZsYWdWYWx1ZSAhPT0gZmxhZ1ZhbHVlXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5fdmFsaWRpdHlTdGF0ZXMuc2V0KGZsYWcsIHsgZmxhZ1ZhbHVlLCBtZXNzYWdlIH0pO1xuICAgICAgICB0aGlzLl9zZXRJbnRlcm5hbFZhbGlkaXR5KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJlbW92ZXMgdGhlIHZhbGlkaXR5IHN0YXRlIGZsYWcgZW50cnkgYW5kIHVwZGF0ZXMgdmFsaWRpdHkgc3RhdGUuICovXG4gICAgcHJvdGVjdGVkIHJlbW92ZVZhbGlkaXR5RmxhZzxUIGV4dGVuZHMga2V5b2YgVmFsaWRpdHlTdGF0ZUZsYWdzPihmbGFnOiBUKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5fdmFsaWRpdHlTdGF0ZXMuaGFzKGZsYWcpKSB7XG4gICAgICAgIHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmRlbGV0ZShmbGFnKTtcbiAgICAgICAgdGhpcy5fc2V0SW50ZXJuYWxWYWxpZGl0eSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBUbyBiZSBjYWxsZWQgd2hlbmV2ZXIgdGhlIGN1cnJlbnQgZWxlbWVudCBuZWVkcyB0byBiZSB2YWxpZGF0ZWQuICovXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRlKCk6IHZvaWQge31cblxuICAgIC8qKiBXaGV0aGVyIHZhbGlkYXRpb24gc2hvdWxkIGJlIHJ1biBvbiBhIHByb3BlcnR5IGNoYW5nZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAqL1xuICAgIHByb3RlY3RlZCBzaG91bGRWYWxpZGF0ZShuYW1lOiBQcm9wZXJ0eUtleSB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuICFuYW1lO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldEludGVybmFsVmFsaWRpdHkoKTogdm9pZCB7XG4gICAgICBsZXQgb3V0cHV0TWVzc2FnZSA9IHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmdldCgnY3VzdG9tRXJyb3InKT8ubWVzc2FnZTtcbiAgICAgIGNvbnN0IGZsYWdzOiBWYWxpZGl0eVN0YXRlRmxhZ3MgPSB7fTtcbiAgICAgIHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmZvckVhY2goKHsgZmxhZ1ZhbHVlLCBtZXNzYWdlIH0sIGZsYWcpID0+IHtcbiAgICAgICAgZmxhZ3NbZmxhZ10gPSBmbGFnVmFsdWUgYXMgYW55O1xuICAgICAgICBvdXRwdXRNZXNzYWdlIHx8PSBtZXNzYWdlO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGN1c3RvbUZsYWdzID0gT2JqZWN0LmtleXMoVmFsaWRpdHlTdGF0ZS5wcm90b3R5cGUpLmZpbHRlcihcbiAgICAgICAgKGYpID0+ICEoZiBpbiB2YWxpZGl0eUtleXMpICYmIGYgIT09ICd2YWxpZCcsXG4gICAgICApO1xuICAgICAgZm9yIChjb25zdCBmbGFnIG9mIGN1c3RvbUZsYWdzKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gZmxhZyBpbiBmbGFncyA/IGZsYWdzW2ZsYWcgYXMga2V5b2YgVmFsaWRpdHlTdGF0ZUZsYWdzXSA6IGZhbHNlO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcy5pbnRlcm5hbHMudmFsaWRpdHksIGZsYWcsIHsgdmFsdWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgLy8gSWYgYW55IGN1c3RvbSBlcnJvcnMgYXJlIHByb3ZpZGVkLCB3ZSBuZWVkIHRvIHNldCBjdXN0b21FcnJvciB0byB0cnVlLFxuICAgICAgICAgIC8vIGFzIHRoaXMgaXMgdGhlIG9ubHkgY3VzdG9tIGVycm9yIHByb3BlcnR5IGJyb3dzZXJzIGFjY2VwdC5cbiAgICAgICAgICBmbGFncy5jdXN0b21FcnJvciA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0VmFsaWRpdHkoZmxhZ3MsIG91dHB1dE1lc3NhZ2UpO1xuXG4gICAgICAvLyBXZWJLaXQgc2VlbXMgdG8gYWx3YXlzIHNldCBjdXN0b21FcnJvciB0byB0cnVlLCBpZiBhbnkgZXJyb3IgaXMgYWN0aXZlLlxuICAgICAgLy8gRHVlIHRvIHRoaXMgd2UgcGF0Y2ggdGhlIGN1c3RvbUVycm9yIHZhbHVlIG1hbnVhbGx5LlxuICAgICAgaWYgKGlzV2Via2l0KSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLmludGVybmFscy52YWxpZGl0eSwgJ2N1c3RvbUVycm9yJywge1xuICAgICAgICAgIHZhbHVlOiB0aGlzLl92YWxpZGl0eVN0YXRlcy5oYXMoJ2N1c3RvbUVycm9yJykgfHwgISFmbGFncy5jdXN0b21FcnJvcixcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiRm9ybUFzc29jaWF0ZWRFbGVtZW50IGFzIHVua25vd24gYXMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZT4gJiBUO1xufTtcblxuLyoqXG4gKiBBIHZhbHVlIHRvIGJlIHJlc3RvcmVkIGZvciBhIGNvbXBvbmVudCdzIGZvcm0gdmFsdWUuIElmIGEgY29tcG9uZW50J3MgZm9ybVxuICogc3RhdGUgaXMgYSBgRm9ybURhdGFgIG9iamVjdCwgaXRzIGVudHJ5IGxpc3Qgb2YgbmFtZSBhbmQgdmFsdWVzIHdpbGwgYmVcbiAqIHByb3ZpZGVkLlxuICovXG5leHBvcnQgdHlwZSBGb3JtUmVzdG9yZVN0YXRlID0gc3RyaW5nIHwgRm9ybURhdGEgfCBGaWxlO1xuXG4vKipcbiAqIFRoZSByZWFzb24gYSBmb3JtIGNvbXBvbmVudCBpcyBiZWluZyByZXN0b3JlZCBmb3IsIGVpdGhlciBgJ3Jlc3RvcmUnYCBmb3JcbiAqIGJyb3dzZXIgcmVzdG9yYXRpb24gb3IgYCdhdXRvY29tcGxldGUnYCBmb3IgcmVzdG9yaW5nIHVzZXIgdmFsdWVzLlxuICovXG5leHBvcnQgdHlwZSBGb3JtUmVzdG9yZVJlYXNvbiA9ICdyZXN0b3JlJyB8ICdhdXRvY29tcGxldGUnO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBa0JBLElBQU0sZUFBOEU7Q0FDbEYsVUFBVTtDQUNWLGFBQWE7Q0FDYixpQkFBaUI7Q0FDakIsZUFBZTtDQUNmLGdCQUFnQjtDQUNoQixjQUFjO0NBQ2QsU0FBUztDQUNULFVBQVU7Q0FDVixjQUFjO0NBQ2QsY0FBYzs7QUFLaEIsSUFBSSxPQUFPLGtCQUFrQixhQUFhO0NBQ3hDLE1BQU0sZ0JBQWdCLE1BQU0sY0FBYTtFQUN2QyxJQUFXLFFBQUs7R0FDZCxPQUFPO0VBQ1Q7RUFDQSxjQUFBO0dBQ0UsTUFBTSxJQUFJLFVBQVUscUJBQXFCO0VBQzNDOztDQUVGLE9BQU8sUUFBUSxZQUFZLEVBQUUsU0FBUyxDQUFDLEtBQUssV0FDMUMsT0FBTyxPQUFPLGNBQWMsV0FBVyxFQUNyQyxLQUFLLE9BQUk7RUFDUCxPQUFPO0NBQ1QsRUFBQSxDQUNELENBQUM7Q0FFSixXQUFXLGdCQUFnQjtBQUM3Qjs7OztBQTJDQSxJQUFhLDBCQUNYLGVBQ3VEO0NBK1R2RCxjQTlUdUM7b0JBQzdCOzs7Ozs7ZUFESyxpQ0FDTCxZQUFVOzs7NEJBb0JqQixTQUFRLENBQUU7Z0NBa0RWLE1BQUssQ0FBRTtJQWpEUixhQUFBLE1BQUEsTUFBQSxzQkFBQTtLQUFBLE1BQUE7S0FBQSxNQUFBO0tBQUEsUUFBQTtLQUFBLFNBQUE7S0FBQSxRQUFBO01BQUEsTUFBQSxRQUFBLFVBQUE7TUFBQSxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQVcsT0FBSTtNQUFBO0tBQUE7S0FBQSxVQUFBO0lBQUEsR0FBQSxNQUFBLDBCQUFBO0lBaUROLGFBQUEsTUFBQSxNQUFBLDBCQUFBO0tBQUEsTUFBQTtLQUFBLE1BQUE7S0FBQSxRQUFBO0tBQUEsU0FBQTtLQUFBLFFBQUE7TUFBQSxNQUFBLFFBQUEsa0JBQUE7TUFBQSxNQUFBLFFBQUEsSUFBbUI7TUFBWSxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQVosZUFBWTtNQUFBO0tBQUE7S0FBQSxVQUFBO0lBQUEsR0FBQSw0QkFBQSwrQkFBQTs7Ozs7Ozs7O0lBbkUxQixLQUFBLGlCQUFpQjtHQUFLOzs7O0dBT3BDLElBQVcsT0FBSTtJQUNiLE9BQU8sS0FBSyxVQUFVO0dBQ3hCOzs7Ozs7O0dBU0EsSUFBVyxLQUFLLE1BQVk7SUFDMUIsS0FBSyxhQUFhLFFBQVEsR0FBRyxNQUFNO0lBR25DLEtBQUssZ0JBQWU7R0FDdEI7R0FDQSxJQUFXLE9BQUk7SUFDYixPQUFPLEtBQUssYUFBYSxNQUFNLEtBQUs7R0FDdEM7O0dBR0EsSUFBVyxPQUFJO0lBQ2IsT0FBTyxLQUFLO0dBQ2Q7Ozs7R0FLQSxJQUFXLFdBQVE7SUFDakIsT0FBTyxLQUFLLFVBQVU7R0FDeEI7Ozs7Ozs7Ozs7R0FXQSxJQUFXLG9CQUFpQjtJQUMxQixPQUFPLEtBQUssVUFBVTtHQUN4Qjs7Ozs7R0FNQSxJQUFXLGVBQVk7SUFDckIsT0FBTyxLQUFLLFVBQVU7R0FDeEI7R0FRUzs7R0FBQSxJQUFtQixlQUFZO0lBQUEsT0FBQSxLQUFBO0dBQUE7R0FBL0IsSUFBbUIsYUFBWSxPQUFBO0lBQUEsS0FBQSxpQ0FBQTtHQUFBO0dBRXhDLFlBQW1CLEdBQUcsTUFBVztJQUMvQixNQUFNLEdBQUcsSUFBSTtJQVRQLEtBQUEsbUJBakVLLGtCQUFBLE1BQUEsMEJBQUEsbUJBaUVhLElBQUksSUFBRztJQU1MLEtBQUEsaUNBQUEsa0JBQUEsTUFBQSw0QkFBd0IsS0FBSzs7SUFPdkQsS0FBSyxtQkFBbUIsWUFBWSxNQUFNLEVBQUUsZUFBYyxDQUFFOztHQUc5Qyx5QkFDZCxNQUNBLEtBQ0EsT0FBb0I7SUFFcEIsSUFBSSxTQUFTLFVBQVUsUUFBUSxPQUM3QixNQUFNLHlCQUF5QixNQUFNLEtBQUssS0FBSztHQUVuRDs7Ozs7R0FNTyxnQkFBYTtJQUNsQixPQUFPLEtBQUssVUFBVSxjQUFhO0dBQ3JDOzs7Ozs7R0FPTyxpQkFBYztJQUNuQixPQUFPLEtBQUssVUFBVSxlQUFjO0dBQ3RDOzs7OztHQU1PLGtCQUFrQixTQUFlO0lBQ3RDLElBQUksU0FDRixLQUFLLGdCQUFnQixlQUFlLE9BQU87U0FFM0MsS0FBSyxtQkFBbUIsYUFBYTtHQUV6Qzs7Ozs7O0dBZU8scUJBQXFCLFdBQWtCO0lBQzVDLEtBQUssZUFBZSxLQUFLLHFCQUFvQjtHQUMvQztHQUVRLHVCQUFvQjtJQUUxQixJQUFJLFVBQThCLEtBQUs7SUFDdkMsT0FBTyxTQUFTO0tBQ2QsSUFBSSxRQUFRLGNBQWMsY0FBYyxRQUFRLGFBQWEsVUFBVSxHQUNyRSxPQUFPO0tBRVQsVUFBVSxRQUFRO0lBQ3BCO0lBQ0EsT0FBTztHQUNUO0dBdUJnQixjQUNkLE1BQ0EsVUFDQSxTQUE2QjtJQUU3QixNQUFNLGNBQWMsTUFBTSxVQUFVLE9BQU87SUFDM0MsSUFBSSxTQUFTLFNBQ1gsS0FBSyxnQkFBZTtJQUV0QixJQUFJLEtBQUssY0FBYyxLQUFLLGVBQWUsSUFBSSxHQUM3QyxLQUFLLFNBQVE7R0FFakI7R0FFbUIsYUFBYSxtQkFBdUM7SUFDckUsTUFBTSxhQUFhLGlCQUFpQjtJQUNwQyxLQUFLLFNBQVE7R0FDZjs7Ozs7O0dBT1Usa0JBQWU7SUFDdkIsSUFBSTtJQUNKLE1BQU0sT0FBTyxLQUFLLFFBQVEsS0FBSyxhQUFhLE1BQU07SUFFbEQsSUFBSSxPQUFPLEtBQUssVUFBVSxZQUFZLEtBQUssU0FBUyxNQUNsRCxZQUFZLEtBQUs7U0FDWixJQUFJLE1BQU0sUUFBUSxLQUFLLEtBQUssR0FBRztLQUNwQyxZQUFZLElBQUksU0FBUTtLQUN4QixLQUFLLE1BQU0sU0FBUyxPQUFNO01BQ3ZCLFVBQXVCLE9BQ3RCLE1BQ0EsT0FBTyxPQUFPLFdBQ1YsS0FDQSxJQUFJLEtBQUssQ0FBQyxLQUFLLFVBQVUsRUFBRSxDQUFDLEdBQUcsRUFDN0IsTUFBTSxtQkFBQSxDQUNQLENBQUM7S0FFVixDQUFDO0lBQ0gsT0FBTztLQUNMLFlBQVksSUFBSSxTQUFRO0tBQ3hCLFVBQVUsT0FDUixNQUNBLElBQUksS0FBSyxDQUFDLEtBQUssVUFBVSxLQUFLLEtBQUssQ0FBQyxHQUFHLEVBQ3JDLE1BQU0sbUJBQUEsQ0FDUCxDQUFDO0lBRU47SUFHQSxLQUFLLFVBQVUsYUFBYSxXQUFXLEtBQUssWUFBVyxDQUFFO0dBQzNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNEJVLGdCQUNSLE1BQ0EsU0FDQSxXQUFpQztJQUVqQyxjQUFjO0lBQ2QsTUFBTSxnQkFBZ0IsS0FBSyxnQkFBZ0IsSUFBSSxJQUFJO0lBQ25ELElBQ0UsQ0FBQyxpQkFDRCxjQUFjLFlBQVksV0FDMUIsY0FBYyxjQUFjLFdBQzVCO0tBQ0EsS0FBSyxnQkFBZ0IsSUFBSSxNQUFNO01BQUU7TUFBVztLQUFPLENBQUU7S0FDckQsS0FBSyxxQkFBb0I7SUFDM0I7R0FDRjs7R0FHVSxtQkFBdUQsTUFBTztJQUN0RSxJQUFJLEtBQUssZ0JBQWdCLElBQUksSUFBSSxHQUFHO0tBQ2xDLEtBQUssZ0JBQWdCLE9BQU8sSUFBSTtLQUNoQyxLQUFLLHFCQUFvQjtJQUMzQjtHQUNGOztHQUdVLFdBQVEsQ0FBVTs7R0FHbEIsZUFBZSxNQUE2QjtJQUNwRCxPQUFPLENBQUM7R0FDVjtHQUVRLHVCQUFvQjtJQUMxQixJQUFJLGdCQUFnQixLQUFLLGdCQUFnQixJQUFJLGFBQWEsR0FBRztJQUM3RCxNQUFNLFFBQTRCLENBQUE7SUFDbEMsS0FBSyxnQkFBZ0IsU0FBUyxFQUFFLFdBQVcsV0FBVyxTQUFRO0tBQzVELE1BQU0sUUFBUTtLQUNkLGtCQUFrQjtJQUNwQixDQUFDO0lBRUQsTUFBTSxjQUFjLE9BQU8sS0FBSyxjQUFjLFNBQVMsRUFBRSxRQUN0RCxNQUFNLEVBQUUsS0FBSyxpQkFBaUIsTUFBTSxPQUFPO0lBRTlDLEtBQUssTUFBTSxRQUFRLGFBQWE7S0FDOUIsTUFBTSxRQUFRLFFBQVEsUUFBUSxNQUFNLFFBQW9DO0tBQ3hFLE9BQU8sZUFBZSxLQUFLLFVBQVUsVUFBVSxNQUFNO01BQUU7TUFBTyxjQUFjO0tBQUksQ0FBRTtLQUNsRixJQUFJLE9BR0YsTUFBTSxjQUFjO0lBRXhCO0lBRUEsS0FBSyxVQUFVLFlBQVksT0FBTyxhQUFhO0lBSS9DLElBQUksVUFDRixPQUFPLGVBQWUsS0FBSyxVQUFVLFVBQVUsZUFBZTtLQUM1RCxPQUFPLEtBQUssZ0JBQWdCLElBQUksYUFBYSxLQUFLLENBQUMsQ0FBQyxNQUFNO0tBQzFELGNBQWM7S0FDZjtHQUVMOztJQUVLO0FBQ1QifQ==
@@ -27,7 +27,6 @@ export * from './core/datetime/temporal-date-adapter.ts';
27
27
  export * from './core/decorators/force-type.ts';
28
28
  export * from './core/decorators/get-override.ts';
29
29
  export * from './core/decorators/handle-distinct-change.ts';
30
- export * from './core/decorators/host-attributes.ts';
31
30
  export * from './core/decorators/id-reference.ts';
32
31
  export * from './core/decorators/omit-empty-converter.ts';
33
32
  export * from './core/decorators/plain-date.ts';
@@ -42,7 +41,6 @@ export * from './core/eventing/event-target.ts';
42
41
  export * from './core/eventing/form-element-handlers.ts';
43
42
  export * from './core/eventing/forward-event.ts';
44
43
  export * from './core/eventing/is-event-prevented.ts';
45
- export * from './core/eventing/throttle.ts';
46
44
  export * from './core/i18n/i18n.ts';
47
45
  export * from './core/interfaces/types.ts';
48
46
  export * from './core/mixins/animation-complete-mixin.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/elements/core.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAClB,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AACrC,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iCAAiC,CAAC;AAChD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iDAAiD,CAAC;AAChE,cAAc,sDAAsD,CAAC;AACrE,cAAc,yBAAyB,CAAC;AACxC,cAAc,mDAAmD,CAAC;AAClE,cAAc,oDAAoD,CAAC;AACnE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iDAAiD,CAAC;AAChE,cAAc,mDAAmD,CAAC;AAClE,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,sCAAsC,CAAC;AACrD,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wBAAwB,CAAC;AACvC,cAAc,wCAAwC,CAAC;AACvD,cAAc,sBAAsB,CAAC;AACrC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,iCAAiC,CAAC;AAChD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,wCAAwC,CAAC;AACvD,cAAc,qDAAqD,CAAC;AACpE,cAAc,wCAAwC,CAAC;AACvD,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0DAA0D,CAAC;AACzE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/elements/core.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAClB,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AACrC,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iCAAiC,CAAC;AAChD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iDAAiD,CAAC;AAChE,cAAc,sDAAsD,CAAC;AACrE,cAAc,yBAAyB,CAAC;AACxC,cAAc,mDAAmD,CAAC;AAClE,cAAc,oDAAoD,CAAC;AACnE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iDAAiD,CAAC;AAChE,cAAc,mDAAmD,CAAC;AAClE,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wBAAwB,CAAC;AACvC,cAAc,wCAAwC,CAAC;AACvD,cAAc,sBAAsB,CAAC;AACrC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,iCAAiC,CAAC;AAChD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,wCAAwC,CAAC;AACvD,cAAc,qDAAqD,CAAC;AACpE,cAAc,wCAAwC,CAAC;AACvD,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0DAA0D,CAAC;AACzE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC"}
@@ -20,13 +20,12 @@ import { SbbInertController } from "./core/controllers/inert-controller.js";
20
20
  import { SbbLanguageController } from "./core/controllers/language-controller.js";
21
21
  import { SbbDarkModeController, SbbMediaMatcherController, SbbMediaQueryBreakpointLargeAndAbove, SbbMediaQueryBreakpointLargeAndBelow, SbbMediaQueryBreakpointSmallAndAbove, SbbMediaQueryBreakpointSmallAndBelow, SbbMediaQueryBreakpointUltraAndAbove, SbbMediaQueryBreakpointZeroAndAbove, SbbMediaQueryDarkMode, SbbMediaQueryForcedColors, SbbMediaQueryHover, SbbMediaQueryPointerCoarse } from "./core/controllers/media-matchers-controller.js";
22
22
  import { SbbOverlayPositionController } from "./core/controllers/overlay-position-controller.js";
23
- import { DAYS_PER_ROW, DateAdapter, FORMAT_DATE, FRIDAY, ISO8601_FORMAT_DATE, MONDAY, MONTHS_PER_PAGE, MONTHS_PER_ROW, SATURDAY, SUNDAY, THURSDAY, TUESDAY, WEDNESDAY, YEARS_PER_PAGE, YEARS_PER_ROW } from "./core/datetime/date-adapter.js";
23
+ import { DateAdapter, FORMAT_DATE, FRIDAY, ISO8601_FORMAT_DATE, MONDAY, SATURDAY, SUNDAY, THURSDAY, TUESDAY, WEDNESDAY } from "./core/datetime/date-adapter.js";
24
24
  import { NativeDateAdapter, defaultDateAdapter } from "./core/datetime/native-date-adapter.js";
25
25
  import { TemporalDateAdapter } from "./core/datetime/temporal-date-adapter.js";
26
26
  import { forceType } from "./core/decorators/force-type.js";
27
27
  import { getOverride } from "./core/decorators/get-override.js";
28
28
  import { handleDistinctChange } from "./core/decorators/handle-distinct-change.js";
29
- import { hostAttributes } from "./core/decorators/host-attributes.js";
30
29
  import { idReference } from "./core/decorators/id-reference.js";
31
30
  import { omitEmptyConverter } from "./core/decorators/omit-empty-converter.js";
32
31
  import { plainDate, plainDateConverter } from "./core/decorators/plain-date.js";
@@ -41,8 +40,7 @@ import { getEventTarget } from "./core/eventing/event-target.js";
41
40
  import { preventScrollOnSpacebarPress } from "./core/eventing/form-element-handlers.js";
42
41
  import { forwardEvent } from "./core/eventing/forward-event.js";
43
42
  import { isEventPrevented } from "./core/eventing/is-event-prevented.js";
44
- import { throttle } from "./core/eventing/throttle.js";
45
- import { i18nAdditionalWagonInformationHeading, i18nAnd, i18nArrival, i18nBlockedPassage, i18nBreadcrumbEllipsisButtonLabel, i18nCalendarDateSelection, i18nCalendarWeekNumber, i18nCarouselArrowsNavigationHint, i18nCarouselItemAriaLabel, i18nCheckboxRequired, i18nChipDelete, i18nChipGroupInputDescription, i18nClass, i18nClearInput, i18nCloseAlert, i18nCloseDialog, i18nCloseNavigation, i18nCloseNotification, i18nClosePopover, i18nCloseSidebar, i18nClosedCompartmentLabel, i18nCollapsed, i18nConnectionFrom, i18nConnectionRoundtrip, i18nConnectionTo, i18nCouchetteWagonLabel, i18nDateChangedTo, i18nDateInvalid, i18nDateMax, i18nDateMin, i18nDatePickerPlaceholder, i18nDeparture, i18nDialog, i18nDirection, i18nDurationDay, i18nDurationHour, i18nDurationMinute, i18nExpanded, i18nFileSelectorButtonLabel, i18nFileSelectorButtonLabelMultiple, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorSubtitleLabel, i18nFileSelectorSubtitleLabelMultiple, i18nFlipCard, i18nFromPlatform, i18nGoBack, i18nInputRequired, i18nItemsPerPage, i18nLocomotiveLabel, i18nMapContainerButtonLabel, i18nMeansOfTransport, i18nNew, i18nNextDay, i18nNextMonth, i18nNextPage, i18nNextSlide, i18nNextYear, i18nNextYearRange, i18nOccupancy, i18nOptional, i18nPage, i18nPaginatorOf, i18nPaginatorSelected, i18nPreviousDay, i18nPreviousMonth, i18nPreviousPage, i18nPreviousSlide, i18nPreviousYear, i18nPreviousYearRange, i18nRealTimeInfo, i18nRemainingCharacters, i18nRestaurantWagonLabel, i18nReverseCard, i18nSector, i18nSectorShort, i18nSelectNextDay, i18nSelectPreviousDay, i18nSelectionRequired, i18nShowCalendar, i18nSleepingWagonLabel, i18nSlide, i18nSupersaver, i18nTargetOpensInNewWindow, i18nTimeInputChange, i18nTimeInvalid, i18nTimeMax, i18nTimeMaxLength, i18nTimetableFormSwapButtonLabel, i18nToday, i18nTrain, i18nTrains, i18nTransferProcedure, i18nTransferProcedures, i18nTravelhints, i18nTripDuration, i18nTripQuayChange, i18nWagonLabel, i18nWagonLabelNumber, i18nWagonsLabel, i18nWalkingDistanceArrival, i18nWalkingDistanceDeparture, i18nYearMonthSelection } from "./core/i18n/i18n.js";
43
+ import { i18nAdditionalWagonInformationHeading, i18nAnd, i18nArrival, i18nBlockedPassage, i18nBreadcrumbEllipsisButtonLabel, i18nCalendarDateSelection, i18nCalendarWeekNumber, i18nCarouselArrowsNavigationHint, i18nCarouselItemAriaLabel, i18nCheckboxRequired, i18nChipDelete, i18nChipGroupInputDescription, i18nClass, i18nClearInput, i18nCloseAlert, i18nCloseDialog, i18nCloseNavigation, i18nCloseNotification, i18nClosePopover, i18nCloseSidebar, i18nClosedCompartmentLabel, i18nCollapsed, i18nConnectionFrom, i18nConnectionRoundtrip, i18nConnectionTo, i18nCouchetteWagonLabel, i18nDateChangedTo, i18nDateInvalid, i18nDateMax, i18nDateMin, i18nDatePickerPlaceholder, i18nDeparture, i18nDialog, i18nDirection, i18nDurationDay, i18nDurationHour, i18nDurationMinute, i18nExpanded, i18nFileSelectorButtonLabel, i18nFileSelectorButtonLabelMultiple, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorSubtitleLabel, i18nFileSelectorSubtitleLabelMultiple, i18nFlipCard, i18nFromPlatform, i18nGoBack, i18nInputRequired, i18nItemsPerPage, i18nLocomotiveLabel, i18nMapContainerButtonLabel, i18nMeansOfTransport, i18nNew, i18nNextDay, i18nNextMonth, i18nNextPage, i18nNextSlide, i18nNextYear, i18nNextYearRange, i18nOccupancy, i18nPage, i18nPaginatorOf, i18nPaginatorSelected, i18nPreviousDay, i18nPreviousMonth, i18nPreviousPage, i18nPreviousSlide, i18nPreviousYear, i18nPreviousYearRange, i18nRealTimeInfo, i18nRemainingCharacters, i18nRestaurantWagonLabel, i18nReverseCard, i18nSector, i18nSectorShort, i18nSelectNextDay, i18nSelectPreviousDay, i18nSelectionRequired, i18nShowCalendar, i18nSleepingWagonLabel, i18nSlide, i18nSupersaver, i18nTargetOpensInNewWindow, i18nTimeInputChange, i18nTimeInvalid, i18nTimeMax, i18nTimeMaxLength, i18nTimetableFormSwapButtonLabel, i18nToday, i18nTrain, i18nTrains, i18nTransferProcedure, i18nTransferProcedures, i18nTravelhints, i18nTripDuration, i18nTripQuayChange, i18nWagonLabel, i18nWagonLabelNumber, i18nWagonsLabel, i18nWalkingDistanceArrival, i18nWalkingDistanceDeparture, i18nYearMonthSelection } from "./core/i18n/i18n.js";
46
44
  import { SbbAnimationCompleteMixin } from "./core/mixins/animation-complete-mixin.js";
47
45
  import "./core/mixins/constructor.js";
48
46
  import { SbbDisabledInteractiveMixin, SbbDisabledMixin, SbbDisabledTabIndexActionMixin } from "./core/mixins/disabled-mixin.js";
@@ -62,4 +60,4 @@ import { setOverlayPosition } from "./core/overlay/overlay-option-panel.js";
62
60
  import { SbbOverlayOutsidePointerEventListener, sbbOverlayOutsidePointerEventListener } from "./core/overlay/overlay-outside-pointer-event-listener.js";
63
61
  import { removeAriaComboBoxAttributes, removeAriaOverlayTriggerProperties, setAriaComboBoxAttributes, setAriaOverlayTriggerProperties } from "./core/overlay/overlay-trigger-attributes.js";
64
62
  import { a as screenReaderOnlyStyles, i as popoverResetStyles, n as hostScrollbarStyles, o as scrollbarStyles, r as listResetStyles, t as buttonResetStyles } from "./styles-D8h0fqb5.js";
65
- export { DAYS_PER_ROW, DateAdapter, FORMAT_DATE, FRIDAY, ISO8601_FORMAT_DATE, IS_FOCUSABLE_QUERY, InteractivityChecker, IsFocusableConfig, MONDAY, MONTHS_PER_PAGE, MONTHS_PER_ROW, NativeDateAdapter, SATURDAY, SUNDAY, SbbActionBaseElement, SbbAnimationCompleteMixin, SbbButtonBaseElement, SbbButtonLikeBaseElement, SbbDarkModeController, SbbDisabledInteractiveMixin, SbbDisabledMixin, SbbDisabledTabIndexActionMixin, SbbElement, SbbEscapableOverlayController, SbbFocusTrapController, SbbFocusVisibleWithinController, SbbFormAssociatedCheckboxMixin, SbbFormAssociatedInputMixin, SbbFormAssociatedMixin, SbbFormAssociatedRadioButtonMixin, SbbIdReferenceController, SbbInertController, SbbLanguageController, SbbLinkBaseElement, SbbLiveAnnouncer, SbbMediaMatcherController, SbbMediaQueryBreakpointLargeAndAbove, SbbMediaQueryBreakpointLargeAndBelow, SbbMediaQueryBreakpointSmallAndAbove, SbbMediaQueryBreakpointSmallAndBelow, SbbMediaQueryBreakpointUltraAndAbove, SbbMediaQueryBreakpointZeroAndAbove, SbbMediaQueryDarkMode, SbbMediaQueryForcedColors, SbbMediaQueryHover, SbbMediaQueryPointerCoarse, SbbNamedSlotListMixin, SbbNegativeMixin, SbbOpenCloseBaseElement, SbbOverlayOutsidePointerEventListener, SbbOverlayPositionController, SbbPanelMixin, SbbPropertyWatcherController, SbbReadonlyMixin, SbbRequiredMixin, SbbScrollHandler, SbbSelectionGroupBaseElement, SbbSelectionPanelMixin, SbbSlottedChangeEvent, SbbUpdateSchedulerMixin, THURSDAY, TUESDAY, TemporalDateAdapter, WEDNESDAY, YEARS_PER_PAGE, YEARS_PER_ROW, appendAriaElements, buttonResetStyles, composedPathHasAttribute, containsPierceShadowDom, defaultDateAdapter, forceType, forwardEvent, getElementPosition, getElementPositionHorizontal, getElementRectangle, getEventTarget, getNextElementIndex, getOverride, handleDistinctChange, hostAttributes, hostScrollbarStyles, i18nAdditionalWagonInformationHeading, i18nAnd, i18nArrival, i18nBlockedPassage, i18nBreadcrumbEllipsisButtonLabel, i18nCalendarDateSelection, i18nCalendarWeekNumber, i18nCarouselArrowsNavigationHint, i18nCarouselItemAriaLabel, i18nCheckboxRequired, i18nChipDelete, i18nChipGroupInputDescription, i18nClass, i18nClearInput, i18nCloseAlert, i18nCloseDialog, i18nCloseNavigation, i18nCloseNotification, i18nClosePopover, i18nCloseSidebar, i18nClosedCompartmentLabel, i18nCollapsed, i18nConnectionFrom, i18nConnectionRoundtrip, i18nConnectionTo, i18nCouchetteWagonLabel, i18nDateChangedTo, i18nDateInvalid, i18nDateMax, i18nDateMin, i18nDatePickerPlaceholder, i18nDeparture, i18nDialog, i18nDirection, i18nDurationDay, i18nDurationHour, i18nDurationMinute, i18nExpanded, i18nFileSelectorButtonLabel, i18nFileSelectorButtonLabelMultiple, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorSubtitleLabel, i18nFileSelectorSubtitleLabelMultiple, i18nFlipCard, i18nFromPlatform, i18nGoBack, i18nInputRequired, i18nItemsPerPage, i18nLocomotiveLabel, i18nMapContainerButtonLabel, i18nMeansOfTransport, i18nNew, i18nNextDay, i18nNextMonth, i18nNextPage, i18nNextSlide, i18nNextYear, i18nNextYearRange, i18nOccupancy, i18nOptional, i18nPage, i18nPaginatorOf, i18nPaginatorSelected, i18nPreviousDay, i18nPreviousMonth, i18nPreviousPage, i18nPreviousSlide, i18nPreviousYear, i18nPreviousYearRange, i18nRealTimeInfo, i18nRemainingCharacters, i18nRestaurantWagonLabel, i18nReverseCard, i18nSector, i18nSectorShort, i18nSelectNextDay, i18nSelectPreviousDay, i18nSelectionRequired, i18nShowCalendar, i18nSleepingWagonLabel, i18nSlide, i18nSupersaver, i18nTargetOpensInNewWindow, i18nTimeInputChange, i18nTimeInvalid, i18nTimeMax, i18nTimeMaxLength, i18nTimetableFormSwapButtonLabel, i18nToday, i18nTrain, i18nTrains, i18nTransferProcedure, i18nTransferProcedures, i18nTravelhints, i18nTripDuration, i18nTripQuayChange, i18nWagonLabel, i18nWagonLabelNumber, i18nWagonsLabel, i18nWalkingDistanceArrival, i18nWalkingDistanceDeparture, i18nYearMonthSelection, idReference, interactivityChecker, isAndroid, isArrowKeyOrPageKeysPressed, isArrowKeyPressed, isBlink, isChromium, isEdge, isEventOnElement, isEventPrevented, isFakeMousedownFromScreenReader, isFakeTouchstartFromScreenReader, isFirefox, isIOS, isMacOS, isNextArrowKeyPressed, isNextjs, isPreviousArrowKeyPressed, isSafari, isTrident, isWebkit, isZeroAnimationDuration, listResetStyles, mergeConfig, omitEmptyConverter, pageScrollDisabled, plainDate, plainDateConverter, popoverResetStyles, preventScrollOnSpacebarPress, queueDomContentLoaded, radioButtonRegistry, readConfig, removeAriaComboBoxAttributes, removeAriaElements, removeAriaOverlayTriggerProperties, sbbInputModalityDetector, sbbLiveAnnouncer, sbbOverlayOutsidePointerEventListener, screenReaderOnlyStyles, scrollbarStyles, setAriaComboBoxAttributes, setAriaOverlayTriggerProperties, setOrRemoveAttribute, setOverlayPosition, throttle, ɵstateController };
63
+ export { DateAdapter, FORMAT_DATE, FRIDAY, ISO8601_FORMAT_DATE, IS_FOCUSABLE_QUERY, InteractivityChecker, IsFocusableConfig, MONDAY, NativeDateAdapter, SATURDAY, SUNDAY, SbbActionBaseElement, SbbAnimationCompleteMixin, SbbButtonBaseElement, SbbButtonLikeBaseElement, SbbDarkModeController, SbbDisabledInteractiveMixin, SbbDisabledMixin, SbbDisabledTabIndexActionMixin, SbbElement, SbbEscapableOverlayController, SbbFocusTrapController, SbbFocusVisibleWithinController, SbbFormAssociatedCheckboxMixin, SbbFormAssociatedInputMixin, SbbFormAssociatedMixin, SbbFormAssociatedRadioButtonMixin, SbbIdReferenceController, SbbInertController, SbbLanguageController, SbbLinkBaseElement, SbbLiveAnnouncer, SbbMediaMatcherController, SbbMediaQueryBreakpointLargeAndAbove, SbbMediaQueryBreakpointLargeAndBelow, SbbMediaQueryBreakpointSmallAndAbove, SbbMediaQueryBreakpointSmallAndBelow, SbbMediaQueryBreakpointUltraAndAbove, SbbMediaQueryBreakpointZeroAndAbove, SbbMediaQueryDarkMode, SbbMediaQueryForcedColors, SbbMediaQueryHover, SbbMediaQueryPointerCoarse, SbbNamedSlotListMixin, SbbNegativeMixin, SbbOpenCloseBaseElement, SbbOverlayOutsidePointerEventListener, SbbOverlayPositionController, SbbPanelMixin, SbbPropertyWatcherController, SbbReadonlyMixin, SbbRequiredMixin, SbbScrollHandler, SbbSelectionGroupBaseElement, SbbSelectionPanelMixin, SbbSlottedChangeEvent, SbbUpdateSchedulerMixin, THURSDAY, TUESDAY, TemporalDateAdapter, WEDNESDAY, appendAriaElements, buttonResetStyles, composedPathHasAttribute, containsPierceShadowDom, defaultDateAdapter, forceType, forwardEvent, getElementPosition, getElementPositionHorizontal, getElementRectangle, getEventTarget, getNextElementIndex, getOverride, handleDistinctChange, hostScrollbarStyles, i18nAdditionalWagonInformationHeading, i18nAnd, i18nArrival, i18nBlockedPassage, i18nBreadcrumbEllipsisButtonLabel, i18nCalendarDateSelection, i18nCalendarWeekNumber, i18nCarouselArrowsNavigationHint, i18nCarouselItemAriaLabel, i18nCheckboxRequired, i18nChipDelete, i18nChipGroupInputDescription, i18nClass, i18nClearInput, i18nCloseAlert, i18nCloseDialog, i18nCloseNavigation, i18nCloseNotification, i18nClosePopover, i18nCloseSidebar, i18nClosedCompartmentLabel, i18nCollapsed, i18nConnectionFrom, i18nConnectionRoundtrip, i18nConnectionTo, i18nCouchetteWagonLabel, i18nDateChangedTo, i18nDateInvalid, i18nDateMax, i18nDateMin, i18nDatePickerPlaceholder, i18nDeparture, i18nDialog, i18nDirection, i18nDurationDay, i18nDurationHour, i18nDurationMinute, i18nExpanded, i18nFileSelectorButtonLabel, i18nFileSelectorButtonLabelMultiple, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorSubtitleLabel, i18nFileSelectorSubtitleLabelMultiple, i18nFlipCard, i18nFromPlatform, i18nGoBack, i18nInputRequired, i18nItemsPerPage, i18nLocomotiveLabel, i18nMapContainerButtonLabel, i18nMeansOfTransport, i18nNew, i18nNextDay, i18nNextMonth, i18nNextPage, i18nNextSlide, i18nNextYear, i18nNextYearRange, i18nOccupancy, i18nPage, i18nPaginatorOf, i18nPaginatorSelected, i18nPreviousDay, i18nPreviousMonth, i18nPreviousPage, i18nPreviousSlide, i18nPreviousYear, i18nPreviousYearRange, i18nRealTimeInfo, i18nRemainingCharacters, i18nRestaurantWagonLabel, i18nReverseCard, i18nSector, i18nSectorShort, i18nSelectNextDay, i18nSelectPreviousDay, i18nSelectionRequired, i18nShowCalendar, i18nSleepingWagonLabel, i18nSlide, i18nSupersaver, i18nTargetOpensInNewWindow, i18nTimeInputChange, i18nTimeInvalid, i18nTimeMax, i18nTimeMaxLength, i18nTimetableFormSwapButtonLabel, i18nToday, i18nTrain, i18nTrains, i18nTransferProcedure, i18nTransferProcedures, i18nTravelhints, i18nTripDuration, i18nTripQuayChange, i18nWagonLabel, i18nWagonLabelNumber, i18nWagonsLabel, i18nWalkingDistanceArrival, i18nWalkingDistanceDeparture, i18nYearMonthSelection, idReference, interactivityChecker, isAndroid, isArrowKeyOrPageKeysPressed, isArrowKeyPressed, isBlink, isChromium, isEdge, isEventOnElement, isEventPrevented, isFakeMousedownFromScreenReader, isFakeTouchstartFromScreenReader, isFirefox, isIOS, isMacOS, isNextArrowKeyPressed, isNextjs, isPreviousArrowKeyPressed, isSafari, isTrident, isWebkit, isZeroAnimationDuration, listResetStyles, mergeConfig, omitEmptyConverter, pageScrollDisabled, plainDate, plainDateConverter, popoverResetStyles, preventScrollOnSpacebarPress, queueDomContentLoaded, radioButtonRegistry, readConfig, removeAriaComboBoxAttributes, removeAriaElements, removeAriaOverlayTriggerProperties, sbbInputModalityDetector, sbbLiveAnnouncer, sbbOverlayOutsidePointerEventListener, screenReaderOnlyStyles, scrollbarStyles, setAriaComboBoxAttributes, setAriaOverlayTriggerProperties, setOrRemoveAttribute, setOverlayPosition, ɵstateController };
@@ -40,8 +40,6 @@ export declare abstract class SbbDatepickerButton<T = Date> extends SbbDatepicke
40
40
  protected abstract i18nSelectOffBoundaryDay: (_currentDate: string) => Record<string, string>;
41
41
  get disabled(): boolean;
42
42
  constructor();
43
- /** @deprecated Use `getFollowingDate(date: T)` instead. */
44
- protected findAvailableDate(_date: T): T | null;
45
43
  protected abstract getFollowingDate(_date: T): T | null;
46
44
  private _handleClick;
47
45
  protected syncDateInputState(): void;