@fundamental-ngx/core 0.40.0-rc.12 → 0.40.0-rc.13

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 (377) hide show
  1. package/card/constants.d.ts +0 -1
  2. package/content-density/classes/content-density-observer.settings.d.ts +4 -0
  3. package/content-density/content-density.module.d.ts +3 -3
  4. package/content-density/content-density.types.d.ts +1 -1
  5. package/content-density/directives/content-density.directive.d.ts +1 -1
  6. package/content-density/helpers/get-changes-source.provider.d.ts +1 -0
  7. package/content-density/services/content-density-observer.service.d.ts +33 -43
  8. package/content-density/tokens/content-density-directive.d.ts +2 -2
  9. package/esm2020/action-bar/action-bar.component.mjs +2 -2
  10. package/esm2020/action-sheet/action-sheet-body/action-sheet-body.component.mjs +3 -4
  11. package/esm2020/action-sheet/action-sheet.component.mjs +2 -2
  12. package/esm2020/alert/alert.component.mjs +2 -2
  13. package/esm2020/avatar/avatar.component.mjs +2 -2
  14. package/esm2020/avatar-group/avatar-group.component.mjs +2 -2
  15. package/esm2020/bar/bar.component.mjs +3 -9
  16. package/esm2020/breadcrumb/breadcrumb.component.mjs +2 -2
  17. package/esm2020/busy-indicator/busy-indicator.component.mjs +2 -2
  18. package/esm2020/button/button.component.mjs +6 -14
  19. package/esm2020/calendar/calendar.component.mjs +6 -14
  20. package/esm2020/card/card.component.mjs +4 -16
  21. package/esm2020/card/constants.mjs +1 -2
  22. package/esm2020/carousel/carousel.component.mjs +2 -2
  23. package/esm2020/checkbox/checkbox/checkbox.component.mjs +8 -16
  24. package/esm2020/combobox/combobox.component.mjs +3 -3
  25. package/esm2020/content-density/classes/content-density-observer.settings.mjs +1 -1
  26. package/esm2020/content-density/content-density.module.mjs +4 -5
  27. package/esm2020/content-density/content-density.types.mjs +1 -1
  28. package/esm2020/content-density/directives/content-density.directive.mjs +4 -3
  29. package/esm2020/content-density/helpers/get-changes-source.provider.mjs +6 -2
  30. package/esm2020/content-density/services/content-density-observer.service.mjs +121 -97
  31. package/esm2020/content-density/tokens/content-density-directive.mjs +1 -1
  32. package/esm2020/content-density/variables/default-content-density-consumer-config.mjs +9 -3
  33. package/esm2020/dialog/dialog-close-button/dialog-close-button.component.mjs +3 -3
  34. package/esm2020/dialog/dialog.component.mjs +15 -4
  35. package/esm2020/dynamic-page/dynamic-page.component.mjs +2 -2
  36. package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +2 -2
  37. package/esm2020/facets/facet/facet.component.mjs +2 -2
  38. package/esm2020/feed-input/directives/feed-input-button.directive.mjs +3 -4
  39. package/esm2020/feed-input/feed-input.component.mjs +2 -2
  40. package/esm2020/feed-list-item/components/list/feed-list.component.mjs +2 -2
  41. package/esm2020/file-uploader/file-uploader.component.mjs +3 -4
  42. package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +2 -2
  43. package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +2 -2
  44. package/esm2020/form/fieldset/fieldset.component.mjs +2 -2
  45. package/esm2020/form/form-control/form-control.component.mjs +2 -2
  46. package/esm2020/form/form-control/input-form-control.directive.mjs +4 -16
  47. package/esm2020/form/form-control/textarea-form-control.directive.mjs +4 -16
  48. package/esm2020/form/form-group/form-group.component.mjs +2 -2
  49. package/esm2020/form/form-header/form-header.component.mjs +2 -2
  50. package/esm2020/form/form-item/form-item.component.mjs +2 -2
  51. package/esm2020/form/form-label/form-label.component.mjs +2 -2
  52. package/esm2020/form/form-message/form-message.component.mjs +2 -2
  53. package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +2 -2
  54. package/esm2020/grid-list/components/grid-list-item/grid-list-item.component.mjs +3 -3
  55. package/esm2020/icon/icon.component.mjs +2 -2
  56. package/esm2020/illustrated-message/illustrated-message.component.mjs +2 -2
  57. package/esm2020/info-label/info-label.component.mjs +2 -2
  58. package/esm2020/input-group/input-group-directives.mjs +6 -22
  59. package/esm2020/input-group/input-group.component.mjs +17 -11
  60. package/esm2020/layout-grid/layout-grid.component.mjs +2 -2
  61. package/esm2020/layout-panel/layout-panel.component.mjs +2 -2
  62. package/esm2020/link/link.component.mjs +2 -2
  63. package/esm2020/list/list-navigation-item/list-navigation-item.component.mjs +2 -2
  64. package/esm2020/list/list.component.mjs +6 -10
  65. package/esm2020/menu/menu.component.mjs +3 -4
  66. package/esm2020/message-box/message-box.component.mjs +2 -2
  67. package/esm2020/message-page/message-page.component.mjs +2 -2
  68. package/esm2020/message-strip/message-strip.component.mjs +2 -2
  69. package/esm2020/message-toast/message-toast.component.mjs +2 -2
  70. package/esm2020/micro-process-flow/components/micro-process-flow/micro-process-flow.component.mjs +6 -10
  71. package/esm2020/multi-combobox/multi-combobox.component.mjs +3 -3
  72. package/esm2020/multi-input/multi-input.component.mjs +3 -3
  73. package/esm2020/nested-list/nested-list/nested-list.directive.mjs +4 -8
  74. package/esm2020/notification/notification/notification.component.mjs +2 -2
  75. package/esm2020/object-identifier/object-identifier.component.mjs +2 -2
  76. package/esm2020/object-marker/object-marker.component.mjs +2 -2
  77. package/esm2020/object-number/object-number.component.mjs +2 -2
  78. package/esm2020/object-status/object-status.component.mjs +2 -2
  79. package/esm2020/pagination/pagination.component.mjs +3 -3
  80. package/esm2020/panel/panel.component.mjs +3 -3
  81. package/esm2020/popover/popover-body/popover-body.component.mjs +3 -3
  82. package/esm2020/popover/popover.component.mjs +6 -3
  83. package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +2 -2
  84. package/esm2020/progress-indicator/progress-indicator.component.mjs +2 -2
  85. package/esm2020/quick-view/quick-view/quick-view.component.mjs +2 -2
  86. package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
  87. package/esm2020/rating-indicator/components/rating-indicator.component.mjs +2 -2
  88. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +2 -2
  89. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +2 -2
  90. package/esm2020/segmented-button/segmented-button.component.mjs +2 -2
  91. package/esm2020/select/select.component.mjs +9 -7
  92. package/esm2020/shellbar/shellbar.component.mjs +16 -3
  93. package/esm2020/side-navigation/side-navigation.component.mjs +2 -2
  94. package/esm2020/skeleton/components/skeleton.component.mjs +2 -2
  95. package/esm2020/slider/slider.component.mjs +3 -3
  96. package/esm2020/split-button/split-button.component.mjs +5 -11
  97. package/esm2020/splitter/splitter.component.mjs +2 -2
  98. package/esm2020/status-indicator/status-indicator.component.mjs +2 -2
  99. package/esm2020/step-input/step-input.component.mjs +3 -3
  100. package/esm2020/switch/switch.component.mjs +3 -3
  101. package/esm2020/table/table-wrapper.component.mjs +4 -6
  102. package/esm2020/table/table.component.mjs +3 -7
  103. package/esm2020/tabs/tab-list.component.mjs +3 -3
  104. package/esm2020/tabs/tab-nav/tab-nav.component.mjs +4 -4
  105. package/esm2020/text/text.component.mjs +2 -2
  106. package/esm2020/tile/tile.component.mjs +2 -2
  107. package/esm2020/time/time.component.mjs +3 -3
  108. package/esm2020/title/title.component.mjs +2 -2
  109. package/esm2020/token/token.component.mjs +3 -3
  110. package/esm2020/token/tokenizer.component.mjs +16 -8
  111. package/esm2020/toolbar/toolbar.component.mjs +2 -2
  112. package/esm2020/tree/tree.component.mjs +2 -2
  113. package/esm2020/upload-collection/upload-collection.component.mjs +2 -2
  114. package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +2 -2
  115. package/esm2020/vertical-navigation/vertical-navigation.component.mjs +2 -2
  116. package/esm2020/wizard/wizard.component.mjs +2 -2
  117. package/fesm2015/fundamental-ngx-core-action-bar.mjs +2 -2
  118. package/fesm2015/fundamental-ngx-core-action-sheet.mjs +4 -4
  119. package/fesm2015/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  120. package/fesm2015/fundamental-ngx-core-alert.mjs +2 -2
  121. package/fesm2015/fundamental-ngx-core-avatar-group.mjs +2 -2
  122. package/fesm2015/fundamental-ngx-core-avatar-group.mjs.map +1 -1
  123. package/fesm2015/fundamental-ngx-core-avatar.mjs +2 -2
  124. package/fesm2015/fundamental-ngx-core-avatar.mjs.map +1 -1
  125. package/fesm2015/fundamental-ngx-core-bar.mjs +2 -8
  126. package/fesm2015/fundamental-ngx-core-bar.mjs.map +1 -1
  127. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +2 -2
  128. package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +2 -2
  129. package/fesm2015/fundamental-ngx-core-button.mjs +5 -13
  130. package/fesm2015/fundamental-ngx-core-button.mjs.map +1 -1
  131. package/fesm2015/fundamental-ngx-core-calendar.mjs +5 -13
  132. package/fesm2015/fundamental-ngx-core-calendar.mjs.map +1 -1
  133. package/fesm2015/fundamental-ngx-core-card.mjs +3 -16
  134. package/fesm2015/fundamental-ngx-core-card.mjs.map +1 -1
  135. package/fesm2015/fundamental-ngx-core-carousel.mjs +2 -2
  136. package/fesm2015/fundamental-ngx-core-checkbox.mjs +7 -15
  137. package/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
  138. package/fesm2015/fundamental-ngx-core-combobox.mjs +2 -2
  139. package/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
  140. package/fesm2015/fundamental-ngx-core-content-density.mjs +140 -122
  141. package/fesm2015/fundamental-ngx-core-content-density.mjs.map +1 -1
  142. package/fesm2015/fundamental-ngx-core-dialog.mjs +16 -5
  143. package/fesm2015/fundamental-ngx-core-dialog.mjs.map +1 -1
  144. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +2 -2
  145. package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
  146. package/fesm2015/fundamental-ngx-core-facets.mjs +2 -2
  147. package/fesm2015/fundamental-ngx-core-feed-input.mjs +4 -5
  148. package/fesm2015/fundamental-ngx-core-feed-input.mjs.map +1 -1
  149. package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +2 -2
  150. package/fesm2015/fundamental-ngx-core-file-uploader.mjs +2 -3
  151. package/fesm2015/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  152. package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
  153. package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  154. package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
  155. package/fesm2015/fundamental-ngx-core-form.mjs +19 -43
  156. package/fesm2015/fundamental-ngx-core-form.mjs.map +1 -1
  157. package/fesm2015/fundamental-ngx-core-grid-list.mjs +4 -4
  158. package/fesm2015/fundamental-ngx-core-grid-list.mjs.map +1 -1
  159. package/fesm2015/fundamental-ngx-core-icon.mjs +2 -2
  160. package/fesm2015/fundamental-ngx-core-icon.mjs.map +1 -1
  161. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +2 -2
  162. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  163. package/fesm2015/fundamental-ngx-core-info-label.mjs +2 -2
  164. package/fesm2015/fundamental-ngx-core-input-group.mjs +19 -31
  165. package/fesm2015/fundamental-ngx-core-input-group.mjs.map +1 -1
  166. package/fesm2015/fundamental-ngx-core-layout-grid.mjs +2 -2
  167. package/fesm2015/fundamental-ngx-core-layout-panel.mjs +2 -2
  168. package/fesm2015/fundamental-ngx-core-link.mjs +2 -2
  169. package/fesm2015/fundamental-ngx-core-list.mjs +7 -11
  170. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  171. package/fesm2015/fundamental-ngx-core-menu.mjs +2 -2
  172. package/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
  173. package/fesm2015/fundamental-ngx-core-message-box.mjs +2 -2
  174. package/fesm2015/fundamental-ngx-core-message-page.mjs +2 -2
  175. package/fesm2015/fundamental-ngx-core-message-strip.mjs +2 -2
  176. package/fesm2015/fundamental-ngx-core-message-toast.mjs +2 -2
  177. package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs +5 -9
  178. package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
  179. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs +2 -2
  180. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  181. package/fesm2015/fundamental-ngx-core-multi-input.mjs +2 -2
  182. package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  183. package/fesm2015/fundamental-ngx-core-nested-list.mjs +3 -7
  184. package/fesm2015/fundamental-ngx-core-nested-list.mjs.map +1 -1
  185. package/fesm2015/fundamental-ngx-core-notification.mjs +2 -2
  186. package/fesm2015/fundamental-ngx-core-object-identifier.mjs +2 -2
  187. package/fesm2015/fundamental-ngx-core-object-marker.mjs +2 -2
  188. package/fesm2015/fundamental-ngx-core-object-number.mjs +2 -2
  189. package/fesm2015/fundamental-ngx-core-object-status.mjs +2 -2
  190. package/fesm2015/fundamental-ngx-core-pagination.mjs +2 -2
  191. package/fesm2015/fundamental-ngx-core-pagination.mjs.map +1 -1
  192. package/fesm2015/fundamental-ngx-core-panel.mjs +2 -2
  193. package/fesm2015/fundamental-ngx-core-panel.mjs.map +1 -1
  194. package/fesm2015/fundamental-ngx-core-popover.mjs +6 -4
  195. package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
  196. package/fesm2015/fundamental-ngx-core-product-switch.mjs +2 -2
  197. package/fesm2015/fundamental-ngx-core-product-switch.mjs.map +1 -1
  198. package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +2 -2
  199. package/fesm2015/fundamental-ngx-core-quick-view.mjs +2 -2
  200. package/fesm2015/fundamental-ngx-core-quick-view.mjs.map +1 -1
  201. package/fesm2015/fundamental-ngx-core-radio.mjs +2 -2
  202. package/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
  203. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +2 -2
  204. package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
  205. package/fesm2015/fundamental-ngx-core-segmented-button.mjs +2 -2
  206. package/fesm2015/fundamental-ngx-core-select.mjs +18 -16
  207. package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  208. package/fesm2015/fundamental-ngx-core-shellbar.mjs +16 -4
  209. package/fesm2015/fundamental-ngx-core-shellbar.mjs.map +1 -1
  210. package/fesm2015/fundamental-ngx-core-side-navigation.mjs +2 -2
  211. package/fesm2015/fundamental-ngx-core-side-navigation.mjs.map +1 -1
  212. package/fesm2015/fundamental-ngx-core-skeleton.mjs +2 -2
  213. package/fesm2015/fundamental-ngx-core-slider.mjs +2 -2
  214. package/fesm2015/fundamental-ngx-core-slider.mjs.map +1 -1
  215. package/fesm2015/fundamental-ngx-core-split-button.mjs +5 -11
  216. package/fesm2015/fundamental-ngx-core-split-button.mjs.map +1 -1
  217. package/fesm2015/fundamental-ngx-core-splitter.mjs +2 -2
  218. package/fesm2015/fundamental-ngx-core-status-indicator.mjs +2 -2
  219. package/fesm2015/fundamental-ngx-core-step-input.mjs +2 -2
  220. package/fesm2015/fundamental-ngx-core-step-input.mjs.map +1 -1
  221. package/fesm2015/fundamental-ngx-core-switch.mjs +2 -2
  222. package/fesm2015/fundamental-ngx-core-switch.mjs.map +1 -1
  223. package/fesm2015/fundamental-ngx-core-table.mjs +5 -10
  224. package/fesm2015/fundamental-ngx-core-table.mjs.map +1 -1
  225. package/fesm2015/fundamental-ngx-core-tabs.mjs +5 -5
  226. package/fesm2015/fundamental-ngx-core-tabs.mjs.map +1 -1
  227. package/fesm2015/fundamental-ngx-core-text.mjs +2 -2
  228. package/fesm2015/fundamental-ngx-core-tile.mjs +2 -2
  229. package/fesm2015/fundamental-ngx-core-tile.mjs.map +1 -1
  230. package/fesm2015/fundamental-ngx-core-time.mjs +2 -2
  231. package/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
  232. package/fesm2015/fundamental-ngx-core-title.mjs +2 -2
  233. package/fesm2015/fundamental-ngx-core-token.mjs +17 -9
  234. package/fesm2015/fundamental-ngx-core-token.mjs.map +1 -1
  235. package/fesm2015/fundamental-ngx-core-toolbar.mjs +2 -2
  236. package/fesm2015/fundamental-ngx-core-tree.mjs +2 -2
  237. package/fesm2015/fundamental-ngx-core-tree.mjs.map +1 -1
  238. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +2 -2
  239. package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  240. package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +4 -4
  241. package/fesm2015/fundamental-ngx-core-wizard.mjs +2 -2
  242. package/fesm2020/fundamental-ngx-core-action-bar.mjs +2 -2
  243. package/fesm2020/fundamental-ngx-core-action-sheet.mjs +4 -4
  244. package/fesm2020/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  245. package/fesm2020/fundamental-ngx-core-alert.mjs +2 -2
  246. package/fesm2020/fundamental-ngx-core-avatar-group.mjs +2 -2
  247. package/fesm2020/fundamental-ngx-core-avatar-group.mjs.map +1 -1
  248. package/fesm2020/fundamental-ngx-core-avatar.mjs +2 -2
  249. package/fesm2020/fundamental-ngx-core-avatar.mjs.map +1 -1
  250. package/fesm2020/fundamental-ngx-core-bar.mjs +2 -8
  251. package/fesm2020/fundamental-ngx-core-bar.mjs.map +1 -1
  252. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +2 -2
  253. package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +2 -2
  254. package/fesm2020/fundamental-ngx-core-button.mjs +5 -13
  255. package/fesm2020/fundamental-ngx-core-button.mjs.map +1 -1
  256. package/fesm2020/fundamental-ngx-core-calendar.mjs +5 -13
  257. package/fesm2020/fundamental-ngx-core-calendar.mjs.map +1 -1
  258. package/fesm2020/fundamental-ngx-core-card.mjs +3 -16
  259. package/fesm2020/fundamental-ngx-core-card.mjs.map +1 -1
  260. package/fesm2020/fundamental-ngx-core-carousel.mjs +2 -2
  261. package/fesm2020/fundamental-ngx-core-checkbox.mjs +7 -15
  262. package/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
  263. package/fesm2020/fundamental-ngx-core-combobox.mjs +2 -2
  264. package/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
  265. package/fesm2020/fundamental-ngx-core-content-density.mjs +139 -128
  266. package/fesm2020/fundamental-ngx-core-content-density.mjs.map +1 -1
  267. package/fesm2020/fundamental-ngx-core-dialog.mjs +16 -5
  268. package/fesm2020/fundamental-ngx-core-dialog.mjs.map +1 -1
  269. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +2 -2
  270. package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
  271. package/fesm2020/fundamental-ngx-core-facets.mjs +2 -2
  272. package/fesm2020/fundamental-ngx-core-feed-input.mjs +4 -5
  273. package/fesm2020/fundamental-ngx-core-feed-input.mjs.map +1 -1
  274. package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +2 -2
  275. package/fesm2020/fundamental-ngx-core-file-uploader.mjs +2 -3
  276. package/fesm2020/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  277. package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
  278. package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  279. package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
  280. package/fesm2020/fundamental-ngx-core-form.mjs +19 -43
  281. package/fesm2020/fundamental-ngx-core-form.mjs.map +1 -1
  282. package/fesm2020/fundamental-ngx-core-grid-list.mjs +4 -4
  283. package/fesm2020/fundamental-ngx-core-grid-list.mjs.map +1 -1
  284. package/fesm2020/fundamental-ngx-core-icon.mjs +2 -2
  285. package/fesm2020/fundamental-ngx-core-icon.mjs.map +1 -1
  286. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +2 -2
  287. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  288. package/fesm2020/fundamental-ngx-core-info-label.mjs +2 -2
  289. package/fesm2020/fundamental-ngx-core-input-group.mjs +19 -31
  290. package/fesm2020/fundamental-ngx-core-input-group.mjs.map +1 -1
  291. package/fesm2020/fundamental-ngx-core-layout-grid.mjs +2 -2
  292. package/fesm2020/fundamental-ngx-core-layout-panel.mjs +2 -2
  293. package/fesm2020/fundamental-ngx-core-link.mjs +2 -2
  294. package/fesm2020/fundamental-ngx-core-list.mjs +7 -11
  295. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  296. package/fesm2020/fundamental-ngx-core-menu.mjs +2 -2
  297. package/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
  298. package/fesm2020/fundamental-ngx-core-message-box.mjs +2 -2
  299. package/fesm2020/fundamental-ngx-core-message-page.mjs +2 -2
  300. package/fesm2020/fundamental-ngx-core-message-strip.mjs +2 -2
  301. package/fesm2020/fundamental-ngx-core-message-toast.mjs +2 -2
  302. package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs +5 -9
  303. package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
  304. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs +2 -2
  305. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  306. package/fesm2020/fundamental-ngx-core-multi-input.mjs +2 -2
  307. package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  308. package/fesm2020/fundamental-ngx-core-nested-list.mjs +3 -7
  309. package/fesm2020/fundamental-ngx-core-nested-list.mjs.map +1 -1
  310. package/fesm2020/fundamental-ngx-core-notification.mjs +2 -2
  311. package/fesm2020/fundamental-ngx-core-object-identifier.mjs +2 -2
  312. package/fesm2020/fundamental-ngx-core-object-marker.mjs +2 -2
  313. package/fesm2020/fundamental-ngx-core-object-number.mjs +2 -2
  314. package/fesm2020/fundamental-ngx-core-object-status.mjs +2 -2
  315. package/fesm2020/fundamental-ngx-core-pagination.mjs +2 -2
  316. package/fesm2020/fundamental-ngx-core-pagination.mjs.map +1 -1
  317. package/fesm2020/fundamental-ngx-core-panel.mjs +2 -2
  318. package/fesm2020/fundamental-ngx-core-panel.mjs.map +1 -1
  319. package/fesm2020/fundamental-ngx-core-popover.mjs +6 -4
  320. package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
  321. package/fesm2020/fundamental-ngx-core-product-switch.mjs +2 -2
  322. package/fesm2020/fundamental-ngx-core-product-switch.mjs.map +1 -1
  323. package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +2 -2
  324. package/fesm2020/fundamental-ngx-core-quick-view.mjs +2 -2
  325. package/fesm2020/fundamental-ngx-core-quick-view.mjs.map +1 -1
  326. package/fesm2020/fundamental-ngx-core-radio.mjs +2 -2
  327. package/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
  328. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +2 -2
  329. package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
  330. package/fesm2020/fundamental-ngx-core-segmented-button.mjs +2 -2
  331. package/fesm2020/fundamental-ngx-core-select.mjs +18 -16
  332. package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  333. package/fesm2020/fundamental-ngx-core-shellbar.mjs +16 -4
  334. package/fesm2020/fundamental-ngx-core-shellbar.mjs.map +1 -1
  335. package/fesm2020/fundamental-ngx-core-side-navigation.mjs +2 -2
  336. package/fesm2020/fundamental-ngx-core-side-navigation.mjs.map +1 -1
  337. package/fesm2020/fundamental-ngx-core-skeleton.mjs +2 -2
  338. package/fesm2020/fundamental-ngx-core-slider.mjs +2 -2
  339. package/fesm2020/fundamental-ngx-core-slider.mjs.map +1 -1
  340. package/fesm2020/fundamental-ngx-core-split-button.mjs +5 -11
  341. package/fesm2020/fundamental-ngx-core-split-button.mjs.map +1 -1
  342. package/fesm2020/fundamental-ngx-core-splitter.mjs +2 -2
  343. package/fesm2020/fundamental-ngx-core-status-indicator.mjs +2 -2
  344. package/fesm2020/fundamental-ngx-core-step-input.mjs +2 -2
  345. package/fesm2020/fundamental-ngx-core-step-input.mjs.map +1 -1
  346. package/fesm2020/fundamental-ngx-core-switch.mjs +2 -2
  347. package/fesm2020/fundamental-ngx-core-switch.mjs.map +1 -1
  348. package/fesm2020/fundamental-ngx-core-table.mjs +5 -10
  349. package/fesm2020/fundamental-ngx-core-table.mjs.map +1 -1
  350. package/fesm2020/fundamental-ngx-core-tabs.mjs +5 -5
  351. package/fesm2020/fundamental-ngx-core-tabs.mjs.map +1 -1
  352. package/fesm2020/fundamental-ngx-core-text.mjs +2 -2
  353. package/fesm2020/fundamental-ngx-core-tile.mjs +2 -2
  354. package/fesm2020/fundamental-ngx-core-tile.mjs.map +1 -1
  355. package/fesm2020/fundamental-ngx-core-time.mjs +2 -2
  356. package/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
  357. package/fesm2020/fundamental-ngx-core-title.mjs +2 -2
  358. package/fesm2020/fundamental-ngx-core-token.mjs +17 -9
  359. package/fesm2020/fundamental-ngx-core-token.mjs.map +1 -1
  360. package/fesm2020/fundamental-ngx-core-toolbar.mjs +2 -2
  361. package/fesm2020/fundamental-ngx-core-tree.mjs +2 -2
  362. package/fesm2020/fundamental-ngx-core-tree.mjs.map +1 -1
  363. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +2 -2
  364. package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  365. package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +4 -4
  366. package/fesm2020/fundamental-ngx-core-wizard.mjs +2 -2
  367. package/fundamental-ngx-core-v0.40.0-rc.13.tgz +0 -0
  368. package/input-group/input-group.component.d.ts +4 -2
  369. package/package.json +4 -4
  370. package/schematics/add-dependencies/index.js +6 -6
  371. package/select/select.component.d.ts +3 -1
  372. package/split-button/split-button.component.d.ts +0 -1
  373. package/table/table.component.d.ts +0 -4
  374. package/token/tokenizer.component.d.ts +8 -2
  375. package/content-density/helpers/content-density-change-callback-factory.d.ts +0 -3
  376. package/esm2020/content-density/helpers/content-density-change-callback-factory.mjs +0 -27
  377. package/fundamental-ngx-core-v0.40.0-rc.12.tgz +0 -0
@@ -240,7 +240,7 @@ TabListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
240
240
  provide: LIST_COMPONENT,
241
241
  useExisting: forwardRef(() => TabListComponent)
242
242
  }
243
- ], queries: [{ propertyName: "tabPanels", predicate: i0.forwardRef(function () { return TabPanelComponent; }) }], viewQueries: [{ propertyName: "overflowTrigger", first: true, predicate: TabItemExpandComponent, descendants: true, read: ElementRef }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true, read: ElementRef }, { propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ElementRef, static: true }, { propertyName: "_overflowLayout", first: true, predicate: OverflowLayoutComponent, descendants: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true, read: MenuComponent }, { propertyName: "tabHeaderLinks", predicate: TabLinkDirective, descendants: true }, { propertyName: "tabHeaders", predicate: TabItemDirective, descendants: true }], ngImport: i0, template: "<div\n #headerContainer\n role=\"tablist\"\n class=\"fd-tabs\"\n [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\"\n [class.fd-tabs--compact]=\"_contentDensityObserver.isCompact\"\n>\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n <ng-container *ngFor=\"let tab of _tabArray; let i = index; let last = last\">\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-container *ngTemplateOutlet=\"tab.titleTemplate || null\"></ng-container>\n\n <ng-container *ngIf=\"!tab.titleTemplate\" [ngSwitch]=\"mode\">\n <ng-container *ngSwitchCase=\"'filter'\">\n <span fd-tab-header *ngIf=\"tab.isHeader\">\n <span fd-tab-counter-header *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </span>\n <ng-container *ngIf=\"!tab.isHeader\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'icon-only'\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'process'\">\n <span fd-tab-icon *ngIf=\"tab.glyph\" [icon]=\"tab.glyph\"></span>\n <div fd-tab-process>\n <span fd-tab-label *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <p fd-tab-count *ngIf=\"tab.count\">{{ tab.count }}</p>\n <span fd-tab-tag>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n </a>\n\n <div fd-tab-process-icon *ngIf=\"mode === 'process' && !last\"></div>\n </div>\n\n <div *ngIf=\"tab.isHeader\" fd-tab-separator></div>\n </ng-container>\n\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n <fd-item-expand\n [fdMenuTrigger]=\"menu\"\n [label]=\"expandOverflowText\"\n *ngIf=\"tabs.length > 0\"\n (keydown)=\"_onTriggerKeydown($event, menu)\"\n >\n </fd-item-expand>\n\n <fd-menu #menu>\n <li\n fd-menu-item\n *ngFor=\"let tab of tabs\"\n (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\"\n >\n <div fd-menu-interactive>\n <ng-container\n *ngTemplateOutlet=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle;\n context: { $implicit: tab.item }\n \"\n ></ng-container>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n\n<div\n #contentContainer\n class=\"fd-tabs__content\"\n [style.maxHeight]=\"maxContentHeight\"\n fdScrollSpy\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"_highlightActiveTab($event)\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.27.1\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-tabs+()\n .fd-tabs__item?+(([aria-selected=true]),)\n .fd-tabs__link+((.is-selected,)\n.fd-tabs__panel+([aria-expanded]|.is-expanded)\n*/.fd-tabs{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:2.625rem;-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_HeaderShadow);align-items:center;background-color:var(--sapObjectHeader_Background);border:0;border-color:var(--sapObjectHeader_BorderColor);box-shadow:var(--sapContent_HeaderShadow);box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-tabs:after,.fd-tabs:before{box-sizing:inherit;font-size:inherit}.fd-tabs__count{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0 0 .125rem}.fd-tabs__count:after,.fd-tabs__count:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link{-webkit-box-sizing:border-box;-webkit-transition:0s;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);cursor:pointer;display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:.875rem .75rem;position:relative;text-decoration:none;transition:0s}.fd-tabs__link:after,.fd-tabs__link:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link.is-selected .fd-tabs__icon,.fd-tabs__link[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__link.is-selected .fd-tabs__icon:after,.fd-tabs__link.is-selected .fd-tabs__tag:after,.fd-tabs__link[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__link[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__link.is-focus,.fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs__link.is-focus .fd-tabs__icon:before,.fd-tabs__link.is-focus .fd-tabs__tag:before,.fd-tabs__link:focus .fd-tabs__icon:before,.fd-tabs__link:focus .fd-tabs__tag:before{content:\"\";inset:0;outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--sapContent_FocusWidth);position:absolute}.fd-tabs__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 .25rem;padding:0;position:relative}.fd-tabs__item:after,.fd-tabs__item:before{box-sizing:inherit;font-size:inherit}.fd-tabs__item.is-selected .fd-tabs__tag,.fd-tabs__item[aria-selected=true] .fd-tabs__tag{color:var(--fdIcon_Tab_Bar_Selection_Color)}.fd-tabs__item.is-selected .fd-tabs__icon,.fd-tabs__item[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item.is-selected .fd-tabs__icon:after,.fd-tabs__item.is-selected .fd-tabs__link:after,.fd-tabs__item.is-selected .fd-tabs__tag:after,.fd-tabs__item[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__item--error .fd-tabs__icon{border-color:var(--sapErrorColor);color:var(--sapErrorColor)}.fd-tabs__item--error .fd-tabs__link .fd-tabs__tag{color:var(--sapErrorColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon{background-color:var(--sapErrorColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon:after,.fd-tabs__item--error.is-selected .fd-tabs__link:after,.fd-tabs__item--error.is-selected .fd-tabs__tag:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapErrorColor)}.fd-tabs__item--warning .fd-tabs__icon{border-color:var(--sapWarningColor);color:var(--sapWarningColor)}.fd-tabs__item--warning .fd-tabs__link .fd-tabs__tag{color:var(--sapWarningColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon{background-color:var(--sapWarningColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon:after,.fd-tabs__item--warning.is-selected .fd-tabs__link:after,.fd-tabs__item--warning.is-selected .fd-tabs__tag:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapWarningColor)}.fd-tabs__item--success .fd-tabs__icon{border-color:var(--sapSuccessColor);color:var(--sapSuccessColor)}.fd-tabs__item--success .fd-tabs__link .fd-tabs__tag{color:var(--sapSuccessColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSuccessColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon:after,.fd-tabs__item--success.is-selected .fd-tabs__link:after,.fd-tabs__item--success.is-selected .fd-tabs__tag:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapSuccessColor)}.fd-tabs__item--information .fd-tabs__icon{border-color:var(--sapInformationColor);color:var(--sapInformationColor)}.fd-tabs__item--information .fd-tabs__link .fd-tabs__tag{color:var(--sapInformationColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon{background-color:var(--sapInformationColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon:after,.fd-tabs__item--information.is-selected .fd-tabs__link:after,.fd-tabs__item--information.is-selected .fd-tabs__tag:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapInformationColor)}.fd-tabs__item--neutral .fd-tabs__icon{border-color:var(--sapNeutralColor);color:var(--sapNeutralColor)}.fd-tabs__item--neutral .fd-tabs__link .fd-tabs__tag{color:var(--sapNeutralColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon{background-color:var(--sapNeutralColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon:after,.fd-tabs__item--neutral.is-selected .fd-tabs__link:after,.fd-tabs__item--neutral.is-selected .fd-tabs__tag:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapNeutralColor)}.fd-tabs__item:first-child{margin-left:0}.fd-tabs__item:first-child .fd-tabs__link{margin-left:.1875rem;padding-left:0}.fd-tabs__item:first-child .fd-tabs__link[dir=rtl],[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{margin-left:0;margin-right:.1875rem}.fd-tabs__item[dir=rtl]:first-child,[dir=rtl] .fd-tabs__item:first-child{margin-left:.25rem;margin-right:0}.fd-tabs__item[dir=rtl]:first-child .fd-tabs__link,[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{padding-left:.875rem;padding-right:0}.fd-tabs__icon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;border:var(--fdIcon_Tab_Bar_Icon_Border_Weight) solid var(--fdIcon_Tab_Bar_Icon_Border_Color);border-radius:50%;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdIcon_Tab_Bar_Inactive_Tab_Icon_Color);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdTabs_Icon_Selection_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 .188rem;padding:0;position:relative;width:var(--fdTabs_Icon_Selection_Height)}.fd-tabs__icon:after,.fd-tabs__icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__icon [class*=sap-icon],.fd-tabs__icon[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;font-size:var(--fdTabs_Icon_Size);line-height:1}.fd-tabs__icon:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__tag{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0;position:relative}.fd-tabs__tag:after,.fd-tabs__tag:before{box-sizing:inherit;font-size:inherit}.fd-tabs__tag:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__panel{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__panel:after,.fd-tabs__panel:before{box-sizing:inherit;font-size:inherit}.fd-tabs__panel[aria-expanded=false]{display:none}.fd-tabs__panel.is-expanded,.fd-tabs__panel[aria-expanded=true]{display:block}.fd-tabs__counter-header{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1.5rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.5rem;margin:0;padding:0 .5rem 0 0}.fd-tabs__counter-header:after,.fd-tabs__counter-header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 0 auto;padding:0}.fd-tabs__overflow:after,.fd-tabs__overflow:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow [class*=sap-icon],.fd-tabs__overflow[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-tabs__process-icon{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1;margin:0;padding:0 .5rem}.fd-tabs__process-icon:after,.fd-tabs__process-icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__process-icon:before{content:\"\\e0c7\";font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-tabs__label{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0 0 0 .125rem}.fd-tabs__label:after,.fd-tabs__label:before{box-sizing:inherit;font-size:inherit}.fd-tabs__label:first-child{padding-bottom:.375rem}.fd-tabs__separator{-webkit-box-sizing:border-box;border:0;border-right:solid var(--sapGroup_TitleBorderColor);border-right-width:.0625rem;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;line-height:var(--sapContent_LineHeight);line-height:2rem;margin:0 .25rem;padding:0}.fd-tabs__separator:after,.fd-tabs__separator:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__header:after,.fd-tabs__header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header .fd-tabs__label{max-width:4rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count,.fd-tabs--process .fd-tabs__count{font-size:var(--sapFontSmallSize)}.fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--icon-only .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{margin:0}.fd-tabs--icon-only .fd-tabs__link,.fd-tabs--process .fd-tabs__link{padding-bottom:1rem;padding-top:1rem}.fd-tabs--icon-only .fd-tabs__icon:after,.fd-tabs--process .fd-tabs__icon:after{bottom:-1.0625rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count{left:calc(100% + .1875rem);position:absolute;top:0}.fd-tabs--filter[dir=rtl] .fd-tabs__count,.fd-tabs--icon-only[dir=rtl] .fd-tabs__count,[dir=rtl] .fd-tabs--filter .fd-tabs__count,[dir=rtl] .fd-tabs--icon-only .fd-tabs__count{left:auto;right:calc(100% + .1875rem)}.fd-tabs--process .fd-tabs__item{margin:0 .25rem 0 0}.fd-tabs--process .fd-tabs__item,.fd-tabs--process .fd-tabs__link{align-items:center;display:flex}.fd-tabs--process .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--process .fd-tabs__icon{margin:0 .1875rem}.fd-tabs--process .fd-tabs__label{line-height:.875rem;max-width:7.5rem;overflow:hidden;white-space:nowrap}.fd-tabs--process[dir=rtl] .fd-tabs__item,[dir=rtl] .fd-tabs--process .fd-tabs__item{margin:0 0 0 .25rem}.fd-tabs--process[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--filter{align-items:center;display:flex}.fd-tabs--filter .fd-tabs__item{margin:0;padding:0 .25rem;width:5.375rem}.fd-tabs--filter .fd-tabs__item[dir=rtl],[dir=rtl] .fd-tabs--filter .fd-tabs__item{margin:0}.fd-tabs--filter .fd-tabs__item--header{width:auto}.fd-tabs--filter .fd-tabs__icon{margin-bottom:.375rem}.fd-tabs--filter .fd-tabs__icon:after{content:none}.fd-tabs--filter .fd-tabs__label{line-height:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-tabs--filter .fd-tabs__link{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:flex;flex-direction:column;height:5.5rem;justify-content:center;padding:.875rem .188rem .625rem;position:relative;text-align:center}.fd-tabs--filter .fd-tabs__link:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;bottom:0;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs--filter .fd-tabs__link.is-focus,.fd-tabs--filter .fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs--filter[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link{padding-left:.188rem;padding-right:.188rem}.fd-tabs--compact{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:1.875rem}.fd-tabs--compact .fd-tabs__label:first-child{padding-bottom:.25rem}.fd-tabs--compact.fd-tabs--filter .fd-tabs__link{height:4.75rem}.fd-tabs--s{padding:0 1rem}.fd-tabs--l,.fd-tabs--m{padding:0 2rem}.fd-tabs--xl,.fd-tabs--xxl{padding:0 3rem}.fd-tabs[dir=rtl] .fd-tabs__process-icon,[dir=rtl] .fd-tabs .fd-tabs__process-icon{transform:rotate(180deg)}.fd-tabs[dir=rtl] .fd-tabs__counter-header,[dir=rtl] .fd-tabs .fd-tabs__counter-header{padding-left:.5rem;padding-right:0}.fd-tabs[dir=rtl] .fd-tabs__overflow,[dir=rtl] .fd-tabs .fd-tabs__overflow{margin-left:0;margin-right:auto}.fd-tabs__process{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__process:after,.fd-tabs__process:before{box-sizing:inherit;font-size:inherit}.fd-tabs-custom{display:flex;flex-direction:column;height:100%}.fd-tabs-custom .is-disabled{pointer-events:none;opacity:.4}.fd-tabs{flex-grow:0;flex-wrap:nowrap}.fd-tabs__content{overflow-y:auto;flex-grow:1}.fd-tabs__item{flex-shrink:0}.fd-tabs__tag{white-space:nowrap}.fd-tabs__wrapper{flex-grow:1;display:flex;flex-wrap:wrap;align-items:center}.fd-tabs__wrapper--collapsible{overflow:hidden;flex-wrap:nowrap}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child{margin-left:.25rem}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child .fd-tabs__link{margin:0;padding:.875rem .75rem}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item{margin-left:0}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item .fd-tabs__link{margin-left:.1875rem;padding-left:0}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i4.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i4.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i4.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i4.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i4.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "directive", type: i5.ScrollSpyDirective, selector: "[fdScrollSpy]", inputs: ["trackedTags", "fireEmpty", "targetPercent", "targetOffset", "scrollSpyDisabled"], outputs: ["spyChange"] }, { kind: "component", type: i6.OverflowLayoutComponent, selector: "fd-overflow-layout", inputs: ["maxVisibleItems", "navigationTrigger", "showMorePosition", "reverseHiddenItems", "enableKeyboardNavigation", "moreItemsButtonText"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "directive", type: i6.OverflowItemRefDirective, selector: "[fdOverflowItemRef]", inputs: ["fdOverflowItemRef"] }, { kind: "directive", type: i6.OverflowExpandDirective, selector: "[fdOverflowExpand]", inputs: ["fdOverflowExpandItems"] }, { kind: "directive", type: i6.OverflowLayoutItemDirective, selector: "[fdOverflowLayoutItem]", inputs: ["forceVisibility"], outputs: ["hiddenChange"] }, { kind: "directive", type: i6.OverflowLayoutFocusableItemDirective, selector: "[fdOverflowLayoutFocusableItem], [fdOverflowLayoutItem][focusable]", inputs: ["focusable", "navigable"] }, { kind: "directive", type: i7.ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }, { kind: "directive", type: i8.TabLinkDirective, selector: "[fd-tab-link]", inputs: ["active", "disabled"], outputs: ["keyDown", "focused"] }, { kind: "directive", type: i9.TabItemDirective, selector: "[fd-tab-item]", inputs: ["class", "tabItemState", "header", "disabled", "fdTabItemClass"] }, { kind: "directive", type: i10.TabTagDirective, selector: "[fdTabTag], [fd-tab-tag]" }, { kind: "component", type: i10.TabIconComponent, selector: "[fd-tab-icon]", inputs: ["class", "icon"] }, { kind: "directive", type: i10.TabCountDirective, selector: "[fdTabCount], [fd-tab-count]" }, { kind: "directive", type: i10.TabLabelDirective, selector: "[fdTabLabel], [fd-tab-label]" }, { kind: "directive", type: i10.TabProcessDirective, selector: "[fdTabProcess], [fd-tab-process]" }, { kind: "directive", type: i10.TabHeaderDirective, selector: "[fdTabHeader], [fd-tab-header]" }, { kind: "component", type: i11.TabItemExpandComponent, selector: "fd-item-expand", inputs: ["label"] }, { kind: "directive", type: i10.TabCounterHeaderDirective, selector: "[fdTabCounterHeader], [fd-tab-counter-header]" }, { kind: "directive", type: i10.TabProcessIconDirective, selector: "[fdTabProcessIcon], [fd-tab-process-icon]" }, { kind: "directive", type: i10.TabSeparatorDirective, selector: "[fdTabSeparator], [fd-tab-separator]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
243
+ ], queries: [{ propertyName: "tabPanels", predicate: i0.forwardRef(function () { return TabPanelComponent; }) }], viewQueries: [{ propertyName: "overflowTrigger", first: true, predicate: TabItemExpandComponent, descendants: true, read: ElementRef }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true, read: ElementRef }, { propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ElementRef, static: true }, { propertyName: "_overflowLayout", first: true, predicate: OverflowLayoutComponent, descendants: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true, read: MenuComponent }, { propertyName: "tabHeaderLinks", predicate: TabLinkDirective, descendants: true }, { propertyName: "tabHeaders", predicate: TabItemDirective, descendants: true }], ngImport: i0, template: "<div #headerContainer role=\"tablist\" class=\"fd-tabs\" [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\">\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n <ng-container *ngFor=\"let tab of _tabArray; let i = index; let last = last\">\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-container *ngTemplateOutlet=\"tab.titleTemplate || null\"></ng-container>\n\n <ng-container *ngIf=\"!tab.titleTemplate\" [ngSwitch]=\"mode\">\n <ng-container *ngSwitchCase=\"'filter'\">\n <span fd-tab-header *ngIf=\"tab.isHeader\">\n <span fd-tab-counter-header *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </span>\n <ng-container *ngIf=\"!tab.isHeader\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'icon-only'\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'process'\">\n <span fd-tab-icon *ngIf=\"tab.glyph\" [icon]=\"tab.glyph\"></span>\n <div fd-tab-process>\n <span fd-tab-label *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <p fd-tab-count *ngIf=\"tab.count\">{{ tab.count }}</p>\n <span fd-tab-tag>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n </a>\n\n <div fd-tab-process-icon *ngIf=\"mode === 'process' && !last\"></div>\n </div>\n\n <div *ngIf=\"tab.isHeader\" fd-tab-separator></div>\n </ng-container>\n\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n <fd-item-expand\n [fdMenuTrigger]=\"menu\"\n [label]=\"expandOverflowText\"\n *ngIf=\"tabs.length > 0\"\n (keydown)=\"_onTriggerKeydown($event, menu)\"\n >\n </fd-item-expand>\n\n <fd-menu #menu>\n <li\n fd-menu-item\n *ngFor=\"let tab of tabs\"\n (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\"\n >\n <div fd-menu-interactive>\n <ng-container\n *ngTemplateOutlet=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle;\n context: { $implicit: tab.item }\n \"\n ></ng-container>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n\n<div\n #contentContainer\n class=\"fd-tabs__content\"\n [style.maxHeight]=\"maxContentHeight\"\n fdScrollSpy\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"_highlightActiveTab($event)\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.2\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-tabs+()\n .fd-tabs__item?+(([aria-selected=true]),)\n .fd-tabs__link+((.is-selected,)\n.fd-tabs__panel+([aria-expanded]|.is-expanded)\n*/.fd-tabs{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:2.625rem;--fdTabs_Label_Padding_Bottom:.375rem;--fdTabs_Filter_Link_Height:5.5rem;-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_HeaderShadow);align-items:center;background-color:var(--sapObjectHeader_Background);border:0;border-color:var(--sapObjectHeader_BorderColor);box-shadow:var(--sapContent_HeaderShadow);box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-tabs:after,.fd-tabs:before{box-sizing:inherit;font-size:inherit}.fd-tabs__count{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0 0 .125rem}.fd-tabs__count:after,.fd-tabs__count:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link{-webkit-box-sizing:border-box;-webkit-transition:0s;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);cursor:pointer;display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:.875rem .75rem;position:relative;text-decoration:none;transition:0s}.fd-tabs__link:after,.fd-tabs__link:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link.is-selected .fd-tabs__icon,.fd-tabs__link[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__link.is-selected .fd-tabs__icon:after,.fd-tabs__link.is-selected .fd-tabs__tag:after,.fd-tabs__link[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__link[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__link.is-focus,.fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs__link.is-focus .fd-tabs__icon:before,.fd-tabs__link.is-focus .fd-tabs__tag:before,.fd-tabs__link:focus .fd-tabs__icon:before,.fd-tabs__link:focus .fd-tabs__tag:before{content:\"\";inset:0;outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--sapContent_FocusWidth);position:absolute}.fd-tabs__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 .25rem;padding:0;position:relative}.fd-tabs__item:after,.fd-tabs__item:before{box-sizing:inherit;font-size:inherit}.fd-tabs__item.is-selected .fd-tabs__tag,.fd-tabs__item[aria-selected=true] .fd-tabs__tag{color:var(--fdIcon_Tab_Bar_Selection_Color)}.fd-tabs__item.is-selected .fd-tabs__icon,.fd-tabs__item[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item.is-selected .fd-tabs__icon:after,.fd-tabs__item.is-selected .fd-tabs__link:after,.fd-tabs__item.is-selected .fd-tabs__tag:after,.fd-tabs__item[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__item--error .fd-tabs__icon{border-color:var(--sapErrorColor);color:var(--sapErrorColor)}.fd-tabs__item--error .fd-tabs__link .fd-tabs__tag{color:var(--sapErrorColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon{background-color:var(--sapErrorColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon:after,.fd-tabs__item--error.is-selected .fd-tabs__link:after,.fd-tabs__item--error.is-selected .fd-tabs__tag:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapErrorColor)}.fd-tabs__item--warning .fd-tabs__icon{border-color:var(--sapWarningColor);color:var(--sapWarningColor)}.fd-tabs__item--warning .fd-tabs__link .fd-tabs__tag{color:var(--sapWarningColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon{background-color:var(--sapWarningColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon:after,.fd-tabs__item--warning.is-selected .fd-tabs__link:after,.fd-tabs__item--warning.is-selected .fd-tabs__tag:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapWarningColor)}.fd-tabs__item--success .fd-tabs__icon{border-color:var(--sapSuccessColor);color:var(--sapSuccessColor)}.fd-tabs__item--success .fd-tabs__link .fd-tabs__tag{color:var(--sapSuccessColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSuccessColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon:after,.fd-tabs__item--success.is-selected .fd-tabs__link:after,.fd-tabs__item--success.is-selected .fd-tabs__tag:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapSuccessColor)}.fd-tabs__item--information .fd-tabs__icon{border-color:var(--sapInformationColor);color:var(--sapInformationColor)}.fd-tabs__item--information .fd-tabs__link .fd-tabs__tag{color:var(--sapInformationColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon{background-color:var(--sapInformationColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon:after,.fd-tabs__item--information.is-selected .fd-tabs__link:after,.fd-tabs__item--information.is-selected .fd-tabs__tag:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapInformationColor)}.fd-tabs__item--neutral .fd-tabs__icon{border-color:var(--sapNeutralColor);color:var(--sapNeutralColor)}.fd-tabs__item--neutral .fd-tabs__link .fd-tabs__tag{color:var(--sapNeutralColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon{background-color:var(--sapNeutralColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon:after,.fd-tabs__item--neutral.is-selected .fd-tabs__link:after,.fd-tabs__item--neutral.is-selected .fd-tabs__tag:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapNeutralColor)}.fd-tabs__item:first-child{margin-left:0}.fd-tabs__item:first-child .fd-tabs__link{margin-left:.1875rem;padding-left:0}.fd-tabs__item:first-child .fd-tabs__link[dir=rtl],[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{margin-left:0;margin-right:.1875rem}.fd-tabs__item[dir=rtl]:first-child,[dir=rtl] .fd-tabs__item:first-child{margin-left:.25rem;margin-right:0}.fd-tabs__item[dir=rtl]:first-child .fd-tabs__link,[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{padding-left:.875rem;padding-right:0}.fd-tabs__icon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;border:var(--fdIcon_Tab_Bar_Icon_Border_Weight) solid var(--fdIcon_Tab_Bar_Icon_Border_Color);border-radius:50%;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdIcon_Tab_Bar_Inactive_Tab_Icon_Color);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdTabs_Icon_Selection_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 .188rem;padding:0;position:relative;width:var(--fdTabs_Icon_Selection_Height)}.fd-tabs__icon:after,.fd-tabs__icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__icon [class*=sap-icon],.fd-tabs__icon[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;font-size:var(--fdTabs_Icon_Size);line-height:1}.fd-tabs__icon:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__tag{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0;position:relative}.fd-tabs__tag:after,.fd-tabs__tag:before{box-sizing:inherit;font-size:inherit}.fd-tabs__tag:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__panel{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__panel:after,.fd-tabs__panel:before{box-sizing:inherit;font-size:inherit}.fd-tabs__panel[aria-expanded=false]{display:none}.fd-tabs__panel.is-expanded,.fd-tabs__panel[aria-expanded=true]{display:block}.fd-tabs__counter-header{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1.5rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.5rem;margin:0;padding:0 .5rem 0 0}.fd-tabs__counter-header:after,.fd-tabs__counter-header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 0 auto;padding:0}.fd-tabs__overflow:after,.fd-tabs__overflow:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow [class*=sap-icon],.fd-tabs__overflow[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-tabs__process-icon{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1;margin:0;padding:0 .5rem}.fd-tabs__process-icon:after,.fd-tabs__process-icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__process-icon:before{content:\"\\e0c7\";font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-tabs__label{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0 0 0 .125rem}.fd-tabs__label:after,.fd-tabs__label:before{box-sizing:inherit;font-size:inherit}.fd-tabs__label:first-child{padding-bottom:var(--fdTabs_Label_Padding_Bottom)}.fd-tabs__separator{-webkit-box-sizing:border-box;border:0;border-right:solid var(--sapGroup_TitleBorderColor);border-right-width:.0625rem;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;line-height:var(--sapContent_LineHeight);line-height:2rem;margin:0 .25rem;padding:0}.fd-tabs__separator:after,.fd-tabs__separator:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__header:after,.fd-tabs__header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header .fd-tabs__label{max-width:4rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count,.fd-tabs--process .fd-tabs__count{font-size:var(--sapFontSmallSize)}.fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--icon-only .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{margin:0}.fd-tabs--icon-only .fd-tabs__link,.fd-tabs--process .fd-tabs__link{padding-bottom:1rem;padding-top:1rem}.fd-tabs--icon-only .fd-tabs__icon:after,.fd-tabs--process .fd-tabs__icon:after{bottom:-1.0625rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count{left:calc(100% + .1875rem);position:absolute;top:0}.fd-tabs--filter[dir=rtl] .fd-tabs__count,.fd-tabs--icon-only[dir=rtl] .fd-tabs__count,[dir=rtl] .fd-tabs--filter .fd-tabs__count,[dir=rtl] .fd-tabs--icon-only .fd-tabs__count{left:auto;right:calc(100% + .1875rem)}.fd-tabs--process .fd-tabs__item{margin:0 .25rem 0 0}.fd-tabs--process .fd-tabs__item,.fd-tabs--process .fd-tabs__link{align-items:center;display:flex}.fd-tabs--process .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--process .fd-tabs__icon{margin:0 .1875rem}.fd-tabs--process .fd-tabs__label{line-height:.875rem;max-width:7.5rem;overflow:hidden;white-space:nowrap}.fd-tabs--process[dir=rtl] .fd-tabs__item,[dir=rtl] .fd-tabs--process .fd-tabs__item{margin:0 0 0 .25rem}.fd-tabs--process[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--filter{align-items:center;display:flex}.fd-tabs--filter .fd-tabs__item{margin:0;padding:0 .25rem;width:5.375rem}.fd-tabs--filter .fd-tabs__item[dir=rtl],[dir=rtl] .fd-tabs--filter .fd-tabs__item{margin:0}.fd-tabs--filter .fd-tabs__item--header{width:auto}.fd-tabs--filter .fd-tabs__icon{margin-bottom:.375rem}.fd-tabs--filter .fd-tabs__icon:after{content:none}.fd-tabs--filter .fd-tabs__label{line-height:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-tabs--filter .fd-tabs__link{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:flex;flex-direction:column;height:var(--fdTabs_Filter_Link_Height);justify-content:center;padding:.875rem .188rem .625rem;position:relative;text-align:center}.fd-tabs--filter .fd-tabs__link:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;bottom:0;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs--filter .fd-tabs__link.is-focus,.fd-tabs--filter .fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs--filter[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link{padding-left:.188rem;padding-right:.188rem}.fd-tabs[class*=-compact],.fd-tabs[class*=-condensed],[class*=-compact] .fd-tabs:not([class*=-cozy]),[class*=-condensed] .fd-tabs:not([class*=-cozy]){--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:1.875rem;--fdTabs_Label_Padding_Bottom:.25rem;--fdTabs_Filter_Link_Height:4.75rem}.fd-tabs--s{padding:0 1rem}.fd-tabs--l,.fd-tabs--m{padding:0 2rem}.fd-tabs--xl,.fd-tabs--xxl{padding:0 3rem}.fd-tabs[dir=rtl] .fd-tabs__process-icon,[dir=rtl] .fd-tabs .fd-tabs__process-icon{transform:rotate(180deg)}.fd-tabs[dir=rtl] .fd-tabs__counter-header,[dir=rtl] .fd-tabs .fd-tabs__counter-header{padding-left:.5rem;padding-right:0}.fd-tabs[dir=rtl] .fd-tabs__overflow,[dir=rtl] .fd-tabs .fd-tabs__overflow{margin-left:0;margin-right:auto}.fd-tabs__process{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__process:after,.fd-tabs__process:before{box-sizing:inherit;font-size:inherit}.fd-tabs-custom{display:flex;flex-direction:column;height:100%}.fd-tabs-custom .is-disabled{pointer-events:none;opacity:.4}.fd-tabs{flex-grow:0;flex-wrap:nowrap}.fd-tabs__content{overflow-y:auto;flex-grow:1}.fd-tabs__item{flex-shrink:0}.fd-tabs__tag{white-space:nowrap}.fd-tabs__wrapper{flex-grow:1;display:flex;flex-wrap:wrap;align-items:center}.fd-tabs__wrapper--collapsible{overflow:hidden;flex-wrap:nowrap}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child{margin-left:.25rem}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child .fd-tabs__link{margin:0;padding:.875rem .75rem}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item{margin-left:0}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item .fd-tabs__link{margin-left:.1875rem;padding-left:0}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i4.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i4.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i4.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i4.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i4.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "directive", type: i5.ScrollSpyDirective, selector: "[fdScrollSpy]", inputs: ["trackedTags", "fireEmpty", "targetPercent", "targetOffset", "scrollSpyDisabled"], outputs: ["spyChange"] }, { kind: "component", type: i6.OverflowLayoutComponent, selector: "fd-overflow-layout", inputs: ["maxVisibleItems", "navigationTrigger", "showMorePosition", "reverseHiddenItems", "enableKeyboardNavigation", "moreItemsButtonText"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "directive", type: i6.OverflowItemRefDirective, selector: "[fdOverflowItemRef]", inputs: ["fdOverflowItemRef"] }, { kind: "directive", type: i6.OverflowExpandDirective, selector: "[fdOverflowExpand]", inputs: ["fdOverflowExpandItems"] }, { kind: "directive", type: i6.OverflowLayoutItemDirective, selector: "[fdOverflowLayoutItem]", inputs: ["forceVisibility"], outputs: ["hiddenChange"] }, { kind: "directive", type: i6.OverflowLayoutFocusableItemDirective, selector: "[fdOverflowLayoutFocusableItem], [fdOverflowLayoutItem][focusable]", inputs: ["focusable", "navigable"] }, { kind: "directive", type: i7.ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }, { kind: "directive", type: i8.TabLinkDirective, selector: "[fd-tab-link]", inputs: ["active", "disabled"], outputs: ["keyDown", "focused"] }, { kind: "directive", type: i9.TabItemDirective, selector: "[fd-tab-item]", inputs: ["class", "tabItemState", "header", "disabled", "fdTabItemClass"] }, { kind: "directive", type: i10.TabTagDirective, selector: "[fdTabTag], [fd-tab-tag]" }, { kind: "component", type: i10.TabIconComponent, selector: "[fd-tab-icon]", inputs: ["class", "icon"] }, { kind: "directive", type: i10.TabCountDirective, selector: "[fdTabCount], [fd-tab-count]" }, { kind: "directive", type: i10.TabLabelDirective, selector: "[fdTabLabel], [fd-tab-label]" }, { kind: "directive", type: i10.TabProcessDirective, selector: "[fdTabProcess], [fd-tab-process]" }, { kind: "directive", type: i10.TabHeaderDirective, selector: "[fdTabHeader], [fd-tab-header]" }, { kind: "component", type: i11.TabItemExpandComponent, selector: "fd-item-expand", inputs: ["label"] }, { kind: "directive", type: i10.TabCounterHeaderDirective, selector: "[fdTabCounterHeader], [fd-tab-counter-header]" }, { kind: "directive", type: i10.TabProcessIconDirective, selector: "[fdTabProcessIcon], [fd-tab-process-icon]" }, { kind: "directive", type: i10.TabSeparatorDirective, selector: "[fdTabSeparator], [fd-tab-separator]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
244
244
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: TabListComponent, decorators: [{
245
245
  type: Component,
246
246
  args: [{ selector: 'fd-tab-list', host: {
@@ -252,7 +252,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
252
252
  provide: LIST_COMPONENT,
253
253
  useExisting: forwardRef(() => TabListComponent)
254
254
  }
255
- ], template: "<div\n #headerContainer\n role=\"tablist\"\n class=\"fd-tabs\"\n [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\"\n [class.fd-tabs--compact]=\"_contentDensityObserver.isCompact\"\n>\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n <ng-container *ngFor=\"let tab of _tabArray; let i = index; let last = last\">\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-container *ngTemplateOutlet=\"tab.titleTemplate || null\"></ng-container>\n\n <ng-container *ngIf=\"!tab.titleTemplate\" [ngSwitch]=\"mode\">\n <ng-container *ngSwitchCase=\"'filter'\">\n <span fd-tab-header *ngIf=\"tab.isHeader\">\n <span fd-tab-counter-header *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </span>\n <ng-container *ngIf=\"!tab.isHeader\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'icon-only'\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'process'\">\n <span fd-tab-icon *ngIf=\"tab.glyph\" [icon]=\"tab.glyph\"></span>\n <div fd-tab-process>\n <span fd-tab-label *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <p fd-tab-count *ngIf=\"tab.count\">{{ tab.count }}</p>\n <span fd-tab-tag>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n </a>\n\n <div fd-tab-process-icon *ngIf=\"mode === 'process' && !last\"></div>\n </div>\n\n <div *ngIf=\"tab.isHeader\" fd-tab-separator></div>\n </ng-container>\n\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n <fd-item-expand\n [fdMenuTrigger]=\"menu\"\n [label]=\"expandOverflowText\"\n *ngIf=\"tabs.length > 0\"\n (keydown)=\"_onTriggerKeydown($event, menu)\"\n >\n </fd-item-expand>\n\n <fd-menu #menu>\n <li\n fd-menu-item\n *ngFor=\"let tab of tabs\"\n (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\"\n >\n <div fd-menu-interactive>\n <ng-container\n *ngTemplateOutlet=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle;\n context: { $implicit: tab.item }\n \"\n ></ng-container>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n\n<div\n #contentContainer\n class=\"fd-tabs__content\"\n [style.maxHeight]=\"maxContentHeight\"\n fdScrollSpy\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"_highlightActiveTab($event)\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.27.1\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-tabs+()\n .fd-tabs__item?+(([aria-selected=true]),)\n .fd-tabs__link+((.is-selected,)\n.fd-tabs__panel+([aria-expanded]|.is-expanded)\n*/.fd-tabs{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:2.625rem;-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_HeaderShadow);align-items:center;background-color:var(--sapObjectHeader_Background);border:0;border-color:var(--sapObjectHeader_BorderColor);box-shadow:var(--sapContent_HeaderShadow);box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-tabs:after,.fd-tabs:before{box-sizing:inherit;font-size:inherit}.fd-tabs__count{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0 0 .125rem}.fd-tabs__count:after,.fd-tabs__count:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link{-webkit-box-sizing:border-box;-webkit-transition:0s;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);cursor:pointer;display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:.875rem .75rem;position:relative;text-decoration:none;transition:0s}.fd-tabs__link:after,.fd-tabs__link:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link.is-selected .fd-tabs__icon,.fd-tabs__link[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__link.is-selected .fd-tabs__icon:after,.fd-tabs__link.is-selected .fd-tabs__tag:after,.fd-tabs__link[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__link[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__link.is-focus,.fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs__link.is-focus .fd-tabs__icon:before,.fd-tabs__link.is-focus .fd-tabs__tag:before,.fd-tabs__link:focus .fd-tabs__icon:before,.fd-tabs__link:focus .fd-tabs__tag:before{content:\"\";inset:0;outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--sapContent_FocusWidth);position:absolute}.fd-tabs__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 .25rem;padding:0;position:relative}.fd-tabs__item:after,.fd-tabs__item:before{box-sizing:inherit;font-size:inherit}.fd-tabs__item.is-selected .fd-tabs__tag,.fd-tabs__item[aria-selected=true] .fd-tabs__tag{color:var(--fdIcon_Tab_Bar_Selection_Color)}.fd-tabs__item.is-selected .fd-tabs__icon,.fd-tabs__item[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item.is-selected .fd-tabs__icon:after,.fd-tabs__item.is-selected .fd-tabs__link:after,.fd-tabs__item.is-selected .fd-tabs__tag:after,.fd-tabs__item[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__item--error .fd-tabs__icon{border-color:var(--sapErrorColor);color:var(--sapErrorColor)}.fd-tabs__item--error .fd-tabs__link .fd-tabs__tag{color:var(--sapErrorColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon{background-color:var(--sapErrorColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon:after,.fd-tabs__item--error.is-selected .fd-tabs__link:after,.fd-tabs__item--error.is-selected .fd-tabs__tag:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapErrorColor)}.fd-tabs__item--warning .fd-tabs__icon{border-color:var(--sapWarningColor);color:var(--sapWarningColor)}.fd-tabs__item--warning .fd-tabs__link .fd-tabs__tag{color:var(--sapWarningColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon{background-color:var(--sapWarningColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon:after,.fd-tabs__item--warning.is-selected .fd-tabs__link:after,.fd-tabs__item--warning.is-selected .fd-tabs__tag:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapWarningColor)}.fd-tabs__item--success .fd-tabs__icon{border-color:var(--sapSuccessColor);color:var(--sapSuccessColor)}.fd-tabs__item--success .fd-tabs__link .fd-tabs__tag{color:var(--sapSuccessColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSuccessColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon:after,.fd-tabs__item--success.is-selected .fd-tabs__link:after,.fd-tabs__item--success.is-selected .fd-tabs__tag:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapSuccessColor)}.fd-tabs__item--information .fd-tabs__icon{border-color:var(--sapInformationColor);color:var(--sapInformationColor)}.fd-tabs__item--information .fd-tabs__link .fd-tabs__tag{color:var(--sapInformationColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon{background-color:var(--sapInformationColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon:after,.fd-tabs__item--information.is-selected .fd-tabs__link:after,.fd-tabs__item--information.is-selected .fd-tabs__tag:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapInformationColor)}.fd-tabs__item--neutral .fd-tabs__icon{border-color:var(--sapNeutralColor);color:var(--sapNeutralColor)}.fd-tabs__item--neutral .fd-tabs__link .fd-tabs__tag{color:var(--sapNeutralColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon{background-color:var(--sapNeutralColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon:after,.fd-tabs__item--neutral.is-selected .fd-tabs__link:after,.fd-tabs__item--neutral.is-selected .fd-tabs__tag:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapNeutralColor)}.fd-tabs__item:first-child{margin-left:0}.fd-tabs__item:first-child .fd-tabs__link{margin-left:.1875rem;padding-left:0}.fd-tabs__item:first-child .fd-tabs__link[dir=rtl],[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{margin-left:0;margin-right:.1875rem}.fd-tabs__item[dir=rtl]:first-child,[dir=rtl] .fd-tabs__item:first-child{margin-left:.25rem;margin-right:0}.fd-tabs__item[dir=rtl]:first-child .fd-tabs__link,[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{padding-left:.875rem;padding-right:0}.fd-tabs__icon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;border:var(--fdIcon_Tab_Bar_Icon_Border_Weight) solid var(--fdIcon_Tab_Bar_Icon_Border_Color);border-radius:50%;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdIcon_Tab_Bar_Inactive_Tab_Icon_Color);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdTabs_Icon_Selection_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 .188rem;padding:0;position:relative;width:var(--fdTabs_Icon_Selection_Height)}.fd-tabs__icon:after,.fd-tabs__icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__icon [class*=sap-icon],.fd-tabs__icon[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;font-size:var(--fdTabs_Icon_Size);line-height:1}.fd-tabs__icon:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__tag{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0;position:relative}.fd-tabs__tag:after,.fd-tabs__tag:before{box-sizing:inherit;font-size:inherit}.fd-tabs__tag:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__panel{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__panel:after,.fd-tabs__panel:before{box-sizing:inherit;font-size:inherit}.fd-tabs__panel[aria-expanded=false]{display:none}.fd-tabs__panel.is-expanded,.fd-tabs__panel[aria-expanded=true]{display:block}.fd-tabs__counter-header{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1.5rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.5rem;margin:0;padding:0 .5rem 0 0}.fd-tabs__counter-header:after,.fd-tabs__counter-header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 0 auto;padding:0}.fd-tabs__overflow:after,.fd-tabs__overflow:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow [class*=sap-icon],.fd-tabs__overflow[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-tabs__process-icon{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1;margin:0;padding:0 .5rem}.fd-tabs__process-icon:after,.fd-tabs__process-icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__process-icon:before{content:\"\\e0c7\";font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-tabs__label{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0 0 0 .125rem}.fd-tabs__label:after,.fd-tabs__label:before{box-sizing:inherit;font-size:inherit}.fd-tabs__label:first-child{padding-bottom:.375rem}.fd-tabs__separator{-webkit-box-sizing:border-box;border:0;border-right:solid var(--sapGroup_TitleBorderColor);border-right-width:.0625rem;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;line-height:var(--sapContent_LineHeight);line-height:2rem;margin:0 .25rem;padding:0}.fd-tabs__separator:after,.fd-tabs__separator:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__header:after,.fd-tabs__header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header .fd-tabs__label{max-width:4rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count,.fd-tabs--process .fd-tabs__count{font-size:var(--sapFontSmallSize)}.fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--icon-only .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{margin:0}.fd-tabs--icon-only .fd-tabs__link,.fd-tabs--process .fd-tabs__link{padding-bottom:1rem;padding-top:1rem}.fd-tabs--icon-only .fd-tabs__icon:after,.fd-tabs--process .fd-tabs__icon:after{bottom:-1.0625rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count{left:calc(100% + .1875rem);position:absolute;top:0}.fd-tabs--filter[dir=rtl] .fd-tabs__count,.fd-tabs--icon-only[dir=rtl] .fd-tabs__count,[dir=rtl] .fd-tabs--filter .fd-tabs__count,[dir=rtl] .fd-tabs--icon-only .fd-tabs__count{left:auto;right:calc(100% + .1875rem)}.fd-tabs--process .fd-tabs__item{margin:0 .25rem 0 0}.fd-tabs--process .fd-tabs__item,.fd-tabs--process .fd-tabs__link{align-items:center;display:flex}.fd-tabs--process .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--process .fd-tabs__icon{margin:0 .1875rem}.fd-tabs--process .fd-tabs__label{line-height:.875rem;max-width:7.5rem;overflow:hidden;white-space:nowrap}.fd-tabs--process[dir=rtl] .fd-tabs__item,[dir=rtl] .fd-tabs--process .fd-tabs__item{margin:0 0 0 .25rem}.fd-tabs--process[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--filter{align-items:center;display:flex}.fd-tabs--filter .fd-tabs__item{margin:0;padding:0 .25rem;width:5.375rem}.fd-tabs--filter .fd-tabs__item[dir=rtl],[dir=rtl] .fd-tabs--filter .fd-tabs__item{margin:0}.fd-tabs--filter .fd-tabs__item--header{width:auto}.fd-tabs--filter .fd-tabs__icon{margin-bottom:.375rem}.fd-tabs--filter .fd-tabs__icon:after{content:none}.fd-tabs--filter .fd-tabs__label{line-height:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-tabs--filter .fd-tabs__link{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:flex;flex-direction:column;height:5.5rem;justify-content:center;padding:.875rem .188rem .625rem;position:relative;text-align:center}.fd-tabs--filter .fd-tabs__link:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;bottom:0;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs--filter .fd-tabs__link.is-focus,.fd-tabs--filter .fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs--filter[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link{padding-left:.188rem;padding-right:.188rem}.fd-tabs--compact{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:1.875rem}.fd-tabs--compact .fd-tabs__label:first-child{padding-bottom:.25rem}.fd-tabs--compact.fd-tabs--filter .fd-tabs__link{height:4.75rem}.fd-tabs--s{padding:0 1rem}.fd-tabs--l,.fd-tabs--m{padding:0 2rem}.fd-tabs--xl,.fd-tabs--xxl{padding:0 3rem}.fd-tabs[dir=rtl] .fd-tabs__process-icon,[dir=rtl] .fd-tabs .fd-tabs__process-icon{transform:rotate(180deg)}.fd-tabs[dir=rtl] .fd-tabs__counter-header,[dir=rtl] .fd-tabs .fd-tabs__counter-header{padding-left:.5rem;padding-right:0}.fd-tabs[dir=rtl] .fd-tabs__overflow,[dir=rtl] .fd-tabs .fd-tabs__overflow{margin-left:0;margin-right:auto}.fd-tabs__process{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__process:after,.fd-tabs__process:before{box-sizing:inherit;font-size:inherit}.fd-tabs-custom{display:flex;flex-direction:column;height:100%}.fd-tabs-custom .is-disabled{pointer-events:none;opacity:.4}.fd-tabs{flex-grow:0;flex-wrap:nowrap}.fd-tabs__content{overflow-y:auto;flex-grow:1}.fd-tabs__item{flex-shrink:0}.fd-tabs__tag{white-space:nowrap}.fd-tabs__wrapper{flex-grow:1;display:flex;flex-wrap:wrap;align-items:center}.fd-tabs__wrapper--collapsible{overflow:hidden;flex-wrap:nowrap}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child{margin-left:.25rem}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child .fd-tabs__link{margin:0;padding:.875rem .75rem}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item{margin-left:0}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item .fd-tabs__link{margin-left:.1875rem;padding-left:0}\n"] }]
255
+ ], template: "<div #headerContainer role=\"tablist\" class=\"fd-tabs\" [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\">\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n <ng-container *ngFor=\"let tab of _tabArray; let i = index; let last = last\">\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-container *ngTemplateOutlet=\"tab.titleTemplate || null\"></ng-container>\n\n <ng-container *ngIf=\"!tab.titleTemplate\" [ngSwitch]=\"mode\">\n <ng-container *ngSwitchCase=\"'filter'\">\n <span fd-tab-header *ngIf=\"tab.isHeader\">\n <span fd-tab-counter-header *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </span>\n <ng-container *ngIf=\"!tab.isHeader\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'icon-only'\">\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'process'\">\n <span fd-tab-icon *ngIf=\"tab.glyph\" [icon]=\"tab.glyph\"></span>\n <div fd-tab-process>\n <span fd-tab-label *ngIf=\"tab.count\">{{ tab.count }}</span>\n <span fd-tab-label *ngIf=\"tab.title\">{{ tab.title }}</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <p fd-tab-count *ngIf=\"tab.count\">{{ tab.count }}</p>\n <span fd-tab-tag>{{ tab.title }}</span>\n </ng-container>\n </ng-container>\n </a>\n\n <div fd-tab-process-icon *ngIf=\"mode === 'process' && !last\"></div>\n </div>\n\n <div *ngIf=\"tab.isHeader\" fd-tab-separator></div>\n </ng-container>\n\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n <fd-item-expand\n [fdMenuTrigger]=\"menu\"\n [label]=\"expandOverflowText\"\n *ngIf=\"tabs.length > 0\"\n (keydown)=\"_onTriggerKeydown($event, menu)\"\n >\n </fd-item-expand>\n\n <fd-menu #menu>\n <li\n fd-menu-item\n *ngFor=\"let tab of tabs\"\n (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\"\n >\n <div fd-menu-interactive>\n <ng-container\n *ngTemplateOutlet=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle;\n context: { $implicit: tab.item }\n \"\n ></ng-container>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n\n<div\n #contentContainer\n class=\"fd-tabs__content\"\n [style.maxHeight]=\"maxContentHeight\"\n fdScrollSpy\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"_highlightActiveTab($event)\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.2\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-tabs+()\n .fd-tabs__item?+(([aria-selected=true]),)\n .fd-tabs__link+((.is-selected,)\n.fd-tabs__panel+([aria-expanded]|.is-expanded)\n*/.fd-tabs{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:2.625rem;--fdTabs_Label_Padding_Bottom:.375rem;--fdTabs_Filter_Link_Height:5.5rem;-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_HeaderShadow);align-items:center;background-color:var(--sapObjectHeader_Background);border:0;border-color:var(--sapObjectHeader_BorderColor);box-shadow:var(--sapContent_HeaderShadow);box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-tabs:after,.fd-tabs:before{box-sizing:inherit;font-size:inherit}.fd-tabs__count{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0 0 .125rem}.fd-tabs__count:after,.fd-tabs__count:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link{-webkit-box-sizing:border-box;-webkit-transition:0s;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);cursor:pointer;display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:.875rem .75rem;position:relative;text-decoration:none;transition:0s}.fd-tabs__link:after,.fd-tabs__link:before{box-sizing:inherit;font-size:inherit}.fd-tabs__link.is-selected .fd-tabs__icon,.fd-tabs__link[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__link.is-selected .fd-tabs__icon:after,.fd-tabs__link.is-selected .fd-tabs__tag:after,.fd-tabs__link[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__link[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__link.is-focus,.fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs__link.is-focus .fd-tabs__icon:before,.fd-tabs__link.is-focus .fd-tabs__tag:before,.fd-tabs__link:focus .fd-tabs__icon:before,.fd-tabs__link:focus .fd-tabs__tag:before{content:\"\";inset:0;outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--sapContent_FocusWidth);position:absolute}.fd-tabs__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 .25rem;padding:0;position:relative}.fd-tabs__item:after,.fd-tabs__item:before{box-sizing:inherit;font-size:inherit}.fd-tabs__item.is-selected .fd-tabs__tag,.fd-tabs__item[aria-selected=true] .fd-tabs__tag{color:var(--fdIcon_Tab_Bar_Selection_Color)}.fd-tabs__item.is-selected .fd-tabs__icon,.fd-tabs__item[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item.is-selected .fd-tabs__icon:after,.fd-tabs__item.is-selected .fd-tabs__link:after,.fd-tabs__item.is-selected .fd-tabs__tag:after,.fd-tabs__item[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__item--error .fd-tabs__icon{border-color:var(--sapErrorColor);color:var(--sapErrorColor)}.fd-tabs__item--error .fd-tabs__link .fd-tabs__tag{color:var(--sapErrorColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon{background-color:var(--sapErrorColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon:after,.fd-tabs__item--error.is-selected .fd-tabs__link:after,.fd-tabs__item--error.is-selected .fd-tabs__tag:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapErrorColor)}.fd-tabs__item--warning .fd-tabs__icon{border-color:var(--sapWarningColor);color:var(--sapWarningColor)}.fd-tabs__item--warning .fd-tabs__link .fd-tabs__tag{color:var(--sapWarningColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon{background-color:var(--sapWarningColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon:after,.fd-tabs__item--warning.is-selected .fd-tabs__link:after,.fd-tabs__item--warning.is-selected .fd-tabs__tag:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapWarningColor)}.fd-tabs__item--success .fd-tabs__icon{border-color:var(--sapSuccessColor);color:var(--sapSuccessColor)}.fd-tabs__item--success .fd-tabs__link .fd-tabs__tag{color:var(--sapSuccessColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSuccessColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon:after,.fd-tabs__item--success.is-selected .fd-tabs__link:after,.fd-tabs__item--success.is-selected .fd-tabs__tag:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapSuccessColor)}.fd-tabs__item--information .fd-tabs__icon{border-color:var(--sapInformationColor);color:var(--sapInformationColor)}.fd-tabs__item--information .fd-tabs__link .fd-tabs__tag{color:var(--sapInformationColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon{background-color:var(--sapInformationColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon:after,.fd-tabs__item--information.is-selected .fd-tabs__link:after,.fd-tabs__item--information.is-selected .fd-tabs__tag:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapInformationColor)}.fd-tabs__item--neutral .fd-tabs__icon{border-color:var(--sapNeutralColor);color:var(--sapNeutralColor)}.fd-tabs__item--neutral .fd-tabs__link .fd-tabs__tag{color:var(--sapNeutralColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon{background-color:var(--sapNeutralColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon:after,.fd-tabs__item--neutral.is-selected .fd-tabs__link:after,.fd-tabs__item--neutral.is-selected .fd-tabs__tag:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapNeutralColor)}.fd-tabs__item:first-child{margin-left:0}.fd-tabs__item:first-child .fd-tabs__link{margin-left:.1875rem;padding-left:0}.fd-tabs__item:first-child .fd-tabs__link[dir=rtl],[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{margin-left:0;margin-right:.1875rem}.fd-tabs__item[dir=rtl]:first-child,[dir=rtl] .fd-tabs__item:first-child{margin-left:.25rem;margin-right:0}.fd-tabs__item[dir=rtl]:first-child .fd-tabs__link,[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link{padding-left:.875rem;padding-right:0}.fd-tabs__icon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;border:var(--fdIcon_Tab_Bar_Icon_Border_Weight) solid var(--fdIcon_Tab_Bar_Icon_Border_Color);border-radius:50%;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdIcon_Tab_Bar_Inactive_Tab_Icon_Color);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdTabs_Icon_Selection_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 .188rem;padding:0;position:relative;width:var(--fdTabs_Icon_Selection_Height)}.fd-tabs__icon:after,.fd-tabs__icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__icon [class*=sap-icon],.fd-tabs__icon[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;font-size:var(--fdTabs_Icon_Size);line-height:1}.fd-tabs__icon:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__tag{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1rem;margin:0;padding:0;position:relative}.fd-tabs__tag:after,.fd-tabs__tag:before{box-sizing:inherit;font-size:inherit}.fd-tabs__tag:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__panel{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__panel:after,.fd-tabs__panel:before{box-sizing:inherit;font-size:inherit}.fd-tabs__panel[aria-expanded=false]{display:none}.fd-tabs__panel.is-expanded,.fd-tabs__panel[aria-expanded=true]{display:block}.fd-tabs__counter-header{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1.5rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.5rem;margin:0;padding:0 .5rem 0 0}.fd-tabs__counter-header:after,.fd-tabs__counter-header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 0 auto;padding:0}.fd-tabs__overflow:after,.fd-tabs__overflow:before{box-sizing:inherit;font-size:inherit}.fd-tabs__overflow [class*=sap-icon],.fd-tabs__overflow[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-tabs__process-icon{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1rem;font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1;margin:0;padding:0 .5rem}.fd-tabs__process-icon:after,.fd-tabs__process-icon:before{box-sizing:inherit;font-size:inherit}.fd-tabs__process-icon:before{content:\"\\e0c7\";font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-tabs__label{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0 0 0 .125rem}.fd-tabs__label:after,.fd-tabs__label:before{box-sizing:inherit;font-size:inherit}.fd-tabs__label:first-child{padding-bottom:var(--fdTabs_Label_Padding_Bottom)}.fd-tabs__separator{-webkit-box-sizing:border-box;border:0;border-right:solid var(--sapGroup_TitleBorderColor);border-right-width:.0625rem;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;line-height:var(--sapContent_LineHeight);line-height:2rem;margin:0 .25rem;padding:0}.fd-tabs__separator:after,.fd-tabs__separator:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__header:after,.fd-tabs__header:before{box-sizing:inherit;font-size:inherit}.fd-tabs__header .fd-tabs__label{max-width:4rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count,.fd-tabs--process .fd-tabs__count{font-size:var(--sapFontSmallSize)}.fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--icon-only .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{margin:0}.fd-tabs--icon-only .fd-tabs__link,.fd-tabs--process .fd-tabs__link{padding-bottom:1rem;padding-top:1rem}.fd-tabs--icon-only .fd-tabs__icon:after,.fd-tabs--process .fd-tabs__icon:after{bottom:-1.0625rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count{left:calc(100% + .1875rem);position:absolute;top:0}.fd-tabs--filter[dir=rtl] .fd-tabs__count,.fd-tabs--icon-only[dir=rtl] .fd-tabs__count,[dir=rtl] .fd-tabs--filter .fd-tabs__count,[dir=rtl] .fd-tabs--icon-only .fd-tabs__count{left:auto;right:calc(100% + .1875rem)}.fd-tabs--process .fd-tabs__item{margin:0 .25rem 0 0}.fd-tabs--process .fd-tabs__item,.fd-tabs--process .fd-tabs__link{align-items:center;display:flex}.fd-tabs--process .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--process .fd-tabs__icon{margin:0 .1875rem}.fd-tabs--process .fd-tabs__label{line-height:.875rem;max-width:7.5rem;overflow:hidden;white-space:nowrap}.fd-tabs--process[dir=rtl] .fd-tabs__item,[dir=rtl] .fd-tabs--process .fd-tabs__item{margin:0 0 0 .25rem}.fd-tabs--process[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{padding-left:0;padding-right:0}.fd-tabs--filter{align-items:center;display:flex}.fd-tabs--filter .fd-tabs__item{margin:0;padding:0 .25rem;width:5.375rem}.fd-tabs--filter .fd-tabs__item[dir=rtl],[dir=rtl] .fd-tabs--filter .fd-tabs__item{margin:0}.fd-tabs--filter .fd-tabs__item--header{width:auto}.fd-tabs--filter .fd-tabs__icon{margin-bottom:.375rem}.fd-tabs--filter .fd-tabs__icon:after{content:none}.fd-tabs--filter .fd-tabs__label{line-height:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-tabs--filter .fd-tabs__link{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:flex;flex-direction:column;height:var(--fdTabs_Filter_Link_Height);justify-content:center;padding:.875rem .188rem .625rem;position:relative;text-align:center}.fd-tabs--filter .fd-tabs__link:after{-webkit-transition:all .125s ease-in;border-radius:.125rem .125rem 0 0;bottom:-.875rem;bottom:0;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs--filter .fd-tabs__link.is-focus,.fd-tabs--filter .fd-tabs__link:focus{box-shadow:none;outline:none;z-index:5}.fd-tabs--filter[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link{padding-left:.188rem;padding-right:.188rem}.fd-tabs[class*=-compact],.fd-tabs[class*=-condensed],[class*=-compact] .fd-tabs:not([class*=-cozy]),[class*=-condensed] .fd-tabs:not([class*=-cozy]){--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:1.875rem;--fdTabs_Label_Padding_Bottom:.25rem;--fdTabs_Filter_Link_Height:4.75rem}.fd-tabs--s{padding:0 1rem}.fd-tabs--l,.fd-tabs--m{padding:0 2rem}.fd-tabs--xl,.fd-tabs--xxl{padding:0 3rem}.fd-tabs[dir=rtl] .fd-tabs__process-icon,[dir=rtl] .fd-tabs .fd-tabs__process-icon{transform:rotate(180deg)}.fd-tabs[dir=rtl] .fd-tabs__counter-header,[dir=rtl] .fd-tabs .fd-tabs__counter-header{padding-left:.5rem;padding-right:0}.fd-tabs[dir=rtl] .fd-tabs__overflow,[dir=rtl] .fd-tabs .fd-tabs__overflow{margin-left:0;margin-right:auto}.fd-tabs__process{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tabs__process:after,.fd-tabs__process:before{box-sizing:inherit;font-size:inherit}.fd-tabs-custom{display:flex;flex-direction:column;height:100%}.fd-tabs-custom .is-disabled{pointer-events:none;opacity:.4}.fd-tabs{flex-grow:0;flex-wrap:nowrap}.fd-tabs__content{overflow-y:auto;flex-grow:1}.fd-tabs__item{flex-shrink:0}.fd-tabs__tag{white-space:nowrap}.fd-tabs__wrapper{flex-grow:1;display:flex;flex-wrap:wrap;align-items:center}.fd-tabs__wrapper--collapsible{overflow:hidden;flex-wrap:nowrap}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child{margin-left:.25rem}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child .fd-tabs__link{margin:0;padding:.875rem .75rem}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item{margin-left:0}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item .fd-tabs__link{margin-left:.1875rem;padding-left:0}\n"] }]
256
256
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.ContentDensityObserver }, { type: i2.DestroyedService }]; }, propDecorators: { size: [{
257
257
  type: Input
258
258
  }], mode: [{
@@ -304,4 +304,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
304
304
  type: ViewChild,
305
305
  args: ['menu', { read: MenuComponent }]
306
306
  }] } });
307
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdGFicy90YWItbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi90YWJzL3RhYi1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0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LENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7Z0JBS3BELGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxnQkFBZ0I7Z0JBSzlCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxnQkFBZ0I7Z0JBSzlCLGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxzQkFBc0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBS3ZELGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBS2xELGdCQUFnQjtzQkFEZixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUt6RCxlQUFlO3NCQUR0QixTQUFTO3VCQUFDLHVCQUF1QjtnQkFLbEMsSUFBSTtzQkFESCxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJmbG93TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL292ZXJmbG93LWxheW91dCc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGVsYXksIGZpbHRlciwgZmlyc3QsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERlc3Ryb3llZFNlcnZpY2UsIEtleVV0aWwsIHNjcm9sbFRvcCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFRhYkl0ZW1FeHBhbmRDb21wb25lbnQgfSBmcm9tICcuL3RhYi1pdGVtLWV4cGFuZC90YWItaXRlbS1leHBhbmQuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkxpbmtEaXJlY3RpdmUgfSBmcm9tICcuL3RhYi1saW5rL3RhYi1saW5rLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUYWJJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi90YWItaXRlbS90YWItaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVGFiUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3RhYi1wYW5lbC90YWItcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkluZm8gfSBmcm9tICcuL3RhYi11dGlscy90YWItaW5mby5jbGFzcyc7XG5pbXBvcnQgeyBFTlRFUiwgU1BBQ0UgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgTWVudUNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9tZW51JztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlciwgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgTElTVF9DT01QT05FTlQgfSBmcm9tICcuL3RhYi1saXN0LnRva2VuJztcbmltcG9ydCB7IFRhYkxpc3RDb21wb25lbnRJbnRlcmZhY2UgfSBmcm9tICcuL3RhYi1saXN0LWNvbXBvbmVudC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgdHlwZSBUYWJNb2RlcyA9ICdpY29uLW9ubHknIHwgJ3Byb2Nlc3MnIHwgJ2ZpbHRlcic7XG5cbmV4cG9ydCB0eXBlIFRhYlNpemVzID0gJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyB8ICd4eGwnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBsaXN0IG9mIHRhYi1wYW5lbHMuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdGFiLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWItbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFiLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtdGFicy1jdXN0b20nXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBjb250ZW50RGVuc2l0eU9ic2VydmVyUHJvdmlkZXJzKCksXG4gICAgICAgIERlc3Ryb3llZFNlcnZpY2UsXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IExJU1RfQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGFiTGlzdENvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGFiTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIFRhYkxpc3RDb21wb25lbnRJbnRlcmZhY2UsIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIFNpemUgb2YgdGFiLCBpdCdzIG1vc3RseSBhYm91dCBhZGRpbmcgc3BhY2luZyBvbiB0YWIgY29udGFpbmVyLCBhdmFpbGFibGUgc2l6ZXMgJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyB8ICd4eGwnICovXG4gICAgQElucHV0KClcbiAgICBzaXplOiBUYWJTaXplcyA9ICdtJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdXNlciB3YW50cyB0byB1c2UgdGFiIGNvbXBvbmVudCBpbiBjZXJ0YWluIG1vZGUuIE1vZGVzIGF2YWlsYWJsZTpcbiAgICAgKiAnaWNvbi1vbmx5JyB8ICdwcm9jZXNzJyB8ICdmaWx0ZXInXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtb2RlOiBUYWJNb2RlcztcblxuICAgIC8qKiBXaGV0aGVyIHRvIG1vdmUgdGFicyBvdmVyZmxvd2luZyBpbiB0aGUgdGFiIGJhciB0byB0aGUgZHJvcGRvd24gKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbGxhcHNlT3ZlcmZsb3cgPSB0cnVlO1xuXG4gICAgLyoqIExpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdGFicyB2aXNpYmxlIGluIHRoZSB0YWIgYmFyIGluIGNvbGxhcHNlT3ZlcmZsb3cgbW9kZS5cbiAgICAgKiBPdGhlciB0YWJzIHdpbGwgYmUgbW92ZWQgdG8gdGhlIGNvbGxhcHNlZCB0YWJzIGRyb3Bkb3duICovXG4gICAgQElucHV0KClcbiAgICBtYXhWaXNpYmxlVGFicyA9IEluZmluaXR5O1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gb3BlbiB0YWIgY29udGVudCBvbmUgdW5kZXIgYW5vdGhlciB3aXRob3V0IGNvbGxhcHNpbmcgKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YWNrQ29udGVudCA9IGZhbHNlO1xuXG4gICAgLyoqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBjb250ZW50ICovXG4gICAgQElucHV0KClcbiAgICBtYXhDb250ZW50SGVpZ2h0ID0gJzEwMCUnO1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gZW5hYmxlIGNvbGxhcHNpbmcgZXhwYW5kZWQgdGFiIG9uIGV4cGFuZGVkIHRhYiBjbGljayAqL1xuICAgIEBJbnB1dCgpXG4gICAgY29sbGFwc2libGVUYWJzID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB1c2UgaTE4biBjYXBhYmlsaXRpZXMgaW5zdGVhZFxuICAgICAqIFRleHQgdmlzaWJsZSBpbiBleHBhbmQgb3ZlcmZsb3cgdHJpZ2dlclxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZXhwYW5kT3ZlcmZsb3dUZXh0OiBzdHJpbmc7XG5cbiAgICAvKiogSW5pdGlhbGx5IHNlbGVjdGVkIHRhYiAoYnkgaWQpLiBGaXJzdCBub3QgZGlzYWJsZWQgb25lIGlmIG5vdCBzcGVjaWZpZWQuICovXG4gICAgQElucHV0KClcbiAgICBkZWZhdWx0VGFiOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gdHJ5IHRvIGtlZXAgc2VsZWN0ZWQgdGFiIChkZWZhdWx0IHZhbHVlKSBvbiB0YWJzIGNoYW5nZSBvciB0byBzZWxlY3QgZGVmYXVsdCBvbmUgKGZpcnN0IGlmIG5vdCBzcGVjaWZpZWQpLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0RGVmYXVsdE9uVGFic0NoYW5nZSA9IGZhbHNlO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2VsZWN0ZWQgcGFuZWwgY2hhbmdlcy4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBzZWxlY3RlZFRhYkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VGFiUGFuZWxDb21wb25lbnQ+KCk7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHZpc2libGUgaXRlbXMgY291bnQgaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICB2aXNpYmxlSXRlbXNDb3VudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiBoaWRkZW4gaXRlbXMgY291bnQgaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBoaWRkZW5JdGVtc0NvdW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBUYWJQYW5lbENvbXBvbmVudCkpXG4gICAgdGFiUGFuZWxzOiBRdWVyeUxpc3Q8VGFiUGFuZWxDb21wb25lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKFRhYkxpbmtEaXJlY3RpdmUpXG4gICAgdGFiSGVhZGVyTGlua3M6IFF1ZXJ5TGlzdDxUYWJMaW5rRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZHJlbihUYWJJdGVtRGlyZWN0aXZlKVxuICAgIHRhYkhlYWRlcnM6IFF1ZXJ5TGlzdDxUYWJJdGVtRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChUYWJJdGVtRXhwYW5kQ29tcG9uZW50LCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBvdmVyZmxvd1RyaWdnZXI6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2hlYWRlckNvbnRhaW5lcicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIGhlYWRlckNvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnY29udGVudENvbnRhaW5lcicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pXG4gICAgY29udGVudENvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChPdmVyZmxvd0xheW91dENvbXBvbmVudClcbiAgICBwcml2YXRlIF9vdmVyZmxvd0xheW91dDogT3ZlcmZsb3dMYXlvdXRDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ21lbnUnLCB7IHJlYWQ6IE1lbnVDb21wb25lbnQgfSlcbiAgICBtZW51OiBNZW51Q29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gQ29sbGVjdGlvbiBvZiB0YWJzIGluIG9yaWdpbmFsIG9yZGVyICovXG4gICAgX3RhYkFycmF5OiBUYWJJbmZvW107XG5cbiAgICAvKiogQGhpZGRlbiBXaGV0aGVyIHRvIGRpc2FibGUgc2Nyb2xsIHNweSAqL1xuICAgIF9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbml0ID0gdHJ1ZTtcblxuICAgIC8qKiBFdmVudCBpcyB0aHJvd24gYWx3YXlzIHdoZW4gdGFiIGlzIHNlbGVjdGVkIGJ5IGtleWJvYXJkIGFjdGlvbnMgKi9cbiAgICByZWFkb25seSB0YWJTZWxlY3RlZDogU3ViamVjdDxudW1iZXI+ID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuXG4gICAgLyoqIEV2ZW50IGlzIHRocm93biBhbHdheXMsIHdoZW4gc29tZSBwcm9wZXJ0eSBpcyBjaGFuZ2VkICovXG4gICAgcmVhZG9ubHkgdGFiUGFuZWxQcm9wZXJ0eUNoYW5nZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIF9lbFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcmVhZG9ubHkgX2NvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX29uRGVzdHJveSQ6IERlc3Ryb3llZFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2V0dXBUYWJQYW5lbHNDaGFuZ2VMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25Qcm9wZXJ0aWVzQ2hhbmdlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3RhYkhlYWRlckNsaWNrSGFuZGxlcih0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZXhwYW5kVGFiKHRhYlBhbmVsLCAhdGFiUGFuZWwuZXhwYW5kZWQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3RhYkhlYWRlcktleWRvd25IYW5kbGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50LCB0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLl90YWJIZWFkZXJDbGlja0hhbmRsZXIodGFiUGFuZWwpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX292ZXJmbG93aW5nVGFiSGVhZGVyQ2xpY2tIYW5kbGVyKHRhYlBhbmVsOiBUYWJQYW5lbENvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90YWJBcnJheS5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgICAgICAgIHRhYi5wYW5lbC5fZm9yY2VkVmlzaWJpbGl0eSA9IHRhYi5wYW5lbCA9PT0gdGFiUGFuZWw7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2V4cGFuZFRhYih0YWJQYW5lbCwgdHJ1ZSwgZmFsc2UpO1xuXG4gICAgICAgIHRoaXMuX292ZXJmbG93TGF5b3V0LnRyaWdnZXJSZWNhbGN1bGF0aW9uKCk7XG5cbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2hpZ2hsaWdodEFjdGl2ZVRhYih7IGlkIH06IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYiA9IHRoaXMuX3RhYkFycmF5LmZpbmQoKF90YWIpID0+IF90YWIucGFuZWwuX3BhbmVsSWQgPT09IGlkKTtcbiAgICAgICAgaWYgKHRhYikge1xuICAgICAgICAgICAgY29uc3QgX3RhYldhc0FjdGl2ZSA9IHRhYi5hY3RpdmU7XG4gICAgICAgICAgICB0aGlzLl9hY3RpdmF0ZVN0YWNrZWRUYWIodGFiLnBhbmVsLCBmYWxzZSk7XG4gICAgICAgICAgICBpZiAoIV90YWJXYXNBY3RpdmUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFiQ2hhbmdlLmVtaXQodGFiLnBhbmVsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uVHJpZ2dlcktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIG1lbnVSZWY6IE1lbnVDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRU5URVIsIFNQQUNFXSkpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBtZW51UmVmLnRvZ2dsZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGdldCBfdGFiUGFuZWxzQ2hhbmdlJCgpOiBPYnNlcnZhYmxlPFRhYlBhbmVsQ29tcG9uZW50W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFiUGFuZWxzLmNoYW5nZXMucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLnRhYlBhbmVscyksXG4gICAgICAgICAgICBtYXAoKHRhYlBhbmVscykgPT4gdGFiUGFuZWxzLnRvQXJyYXkoKSksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZiAmJiAhdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWZbJ2Rlc3Ryb3llZCddKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NldHVwVGFiUGFuZWxzQ2hhbmdlTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9saXN0ZW5PblRhYlBhbmVsc0FuZFVwZGF0ZVN0b3JhZ2VTdHJ1Y3R1cmVzKCk7XG4gICAgICAgIHRoaXMuX2luaXRTdGFja0NvbnRlbnRTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25UYWJQYW5lbHNFeHBhbmRlZENoYW5nZSgpO1xuICAgICAgICB0aGlzLl9saXN0ZW5PblRhYlBhbmVsc0FuZEluaXRpYWxseUV4cGFuZFRhYlBhbmVsKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gU2V0dXAgbWVjaGFuaXNtcyByZXF1aXJlZCBmb3IgaGFuZGxpbmcgdGhlIHN0YWNrZWQgY29udGVudCBiZWhhdmlvciAqL1xuICAgIHByaXZhdGUgX2luaXRTdGFja0NvbnRlbnRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYlBhbmVsc0NoYW5nZSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLnN0YWNrQ29udGVudCksXG4gICAgICAgICAgICAgICAgZGVsYXkoMCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFiQXJyYXkuZmlsdGVyKCh0YWIpID0+ICF0YWIucGFuZWwuZGlzYWJsZWQpLmZvckVhY2goKHRhYikgPT4gdGFiLnBhbmVsLl9leHBhbmQodHJ1ZSkpXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25UYWJQYW5lbHNBbmRVcGRhdGVTdG9yYWdlU3RydWN0dXJlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFiUGFuZWxzQ2hhbmdlJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh0YWJQYW5lbHMpID0+IHRhYlBhbmVscy5tYXAoKGVsKSA9PiBuZXcgVGFiSW5mbyhlbCkpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRhYnMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl90YWJBcnJheSA9IHRhYnM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uVGFiUGFuZWxzRXhwYW5kZWRDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYlBhbmVsc0NoYW5nZSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgodGFiUGFuZWxzKSA9PiB0YWJQYW5lbHMubWFwKCh0YWIpID0+IHRhYi5fZXhwYW5kZWRTdGF0ZUNoYW5nZS5hc09ic2VydmFibGUoKSkpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgodGFiUGFuZWxzKSA9PiBtZXJnZSguLi50YWJQYW5lbHMpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLl9leHBhbmRUYWIoZXZlbnQudGFyZ2V0LCBldmVudC5zdGF0ZSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25UYWJQYW5lbHNBbmRJbml0aWFsbHlFeHBhbmRUYWJQYW5lbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFiUGFuZWxzQ2hhbmdlJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZVRhYiA9IHRoaXMuX3RhYkFycmF5LmZpbmQoKF90YWIpID0+IF90YWIuYWN0aXZlKTtcbiAgICAgICAgICAgIGxldCB0YWI6IE51bGxhYmxlPFRhYkluZm8+O1xuXG4gICAgICAgICAgICBpZiAoIWFjdGl2ZVRhYiB8fCB0aGlzLnNlbGVjdERlZmF1bHRPblRhYnNDaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kZWZhdWx0VGFiKSB7XG4gICAgICAgICAgICAgICAgICAgIHRhYiA9IHRoaXMuX3RhYkFycmF5LmZpbmQoKF90YWIpID0+ICFfdGFiLmRpc2FibGVkICYmIF90YWIuaWQgPT09IHRoaXMuZGVmYXVsdFRhYik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKCF0YWIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGFiID0gdGhpcy5fdGFiQXJyYXkuZmluZCgoX3RhYikgPT4gIV90YWIuZGlzYWJsZWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRhYiAmJiBhY3RpdmVUYWIgIT09IHRhYikge1xuICAgICAgICAgICAgICAgIHRoaXMuX2V4cGFuZFRhYih0YWIucGFuZWwsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uUHJvcGVydGllc0NoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgbWVyZ2UodGhpcy50YWJQYW5lbFByb3BlcnR5Q2hhbmdlZCwgdGhpcy50YWJQYW5lbHMuY2hhbmdlcylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZGV0ZWN0Q2hhbmdlcygpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2FjdGl2YXRlU3RhY2tlZFRhYih0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQsIHNjcm9sbCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHNjcm9sbCkge1xuICAgICAgICAgICAgdGhpcy5fc2Nyb2xsVG9QYW5lbCh0YWJQYW5lbCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fdGFiQXJyYXkuZm9yRWFjaCgodGFiKSA9PiB7XG4gICAgICAgICAgICB0YWIuYWN0aXZlID0gdGFiLnBhbmVsID09PSB0YWJQYW5lbDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hY3RpdmF0ZUV4cGFuZGFibGVUYWIodGFiUGFuZWw6IFRhYlBhbmVsQ29tcG9uZW50LCBleHBhbmQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sbGFwc2UgPSB0aGlzLmNvbGxhcHNpYmxlVGFicyAmJiAhZXhwYW5kO1xuXG4gICAgICAgIHRoaXMuX3RhYkFycmF5LmZvckVhY2goKHRhYikgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNBY3RpdmUgPSB0YWIucGFuZWwgPT09IHRhYlBhbmVsICYmICFjb2xsYXBzZTtcblxuICAgICAgICAgICAgdGFiLnBhbmVsLl9leHBhbmQoaXNBY3RpdmUpO1xuICAgICAgICAgICAgdGFiLmFjdGl2ZSA9IGlzQWN0aXZlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2V4cGFuZFRhYih0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQsIGV4cGFuZDogYm9vbGVhbiwgZGV0ZWN0Q2hhbmdlcyA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc3RhY2tDb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9hY3RpdmF0ZVN0YWNrZWRUYWIodGFiUGFuZWwpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCF0aGlzLl9jYW5DaGFuZ2VFeHBhbmRTdGF0ZSh0YWJQYW5lbCwgZXhwYW5kKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fYWN0aXZhdGVFeHBhbmRhYmxlVGFiKHRhYlBhbmVsLCBleHBhbmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRldGVjdENoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRUYWJDaGFuZ2UuZW1pdCh0YWJQYW5lbCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zY3JvbGxUb1BhbmVsKHRhYlBhbmVsOiBUYWJQYW5lbENvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwYW5lbEVsZW1lbnQgPSB0YWJQYW5lbC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmNvbnRlbnRDb250YWluZXIubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgZGlzdGFuY2VUb1Njcm9sbCA9IHBhbmVsRWxlbWVudC5vZmZzZXRUb3AgLSBjb250YWluZXJFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgY29uc3QgbWF4aW11bVNjcm9sbFRvcCA9IGNvbnRhaW5lckVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gY29udGFpbmVyRWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IE1hdGguY2VpbChjb250YWluZXJFbGVtZW50LnNjcm9sbFRvcCk7XG5cbiAgICAgICAgaWYgKCEoY3VycmVudFNjcm9sbFBvc2l0aW9uID09PSBtYXhpbXVtU2Nyb2xsVG9wICYmIGRpc3RhbmNlVG9TY3JvbGwgPiBtYXhpbXVtU2Nyb2xsVG9wKSkge1xuICAgICAgICAgICAgIXRoaXMuX2luaXQgPyAodGhpcy5fZGlzYWJsZVNjcm9sbFNweSA9IHRydWUpIDogKHRoaXMuX2luaXQgPSBmYWxzZSk7XG4gICAgICAgICAgICBmcm9tRXZlbnQoY29udGFpbmVyRWxlbWVudCwgJ3Njcm9sbCcpXG4gICAgICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDEwMCksIGZpcnN0KCksIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+ICh0aGlzLl9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2UpKTtcbiAgICAgICAgICAgIHNjcm9sbFRvcChjb250YWluZXJFbGVtZW50LCBkaXN0YW5jZVRvU2Nyb2xsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFdoZXRoZXIgdGFiIGNhbiBiZSBleHBhbmRlZC9jb2xsYXBzZWQgKi9cbiAgICBwcml2YXRlIF9jYW5DaGFuZ2VFeHBhbmRTdGF0ZSh0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQsIGV4cGFuZDogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRhYlBhbmVsLmRpc2FibGVkICYmIGV4cGFuZCAhPT0gdGFiUGFuZWwuZXhwYW5kZWQgJiYgZXhwYW5kID09PSBmYWxzZSA/IHRoaXMuY29sbGFwc2libGVUYWJzIDogdHJ1ZTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgI2hlYWRlckNvbnRhaW5lclxuICAgIHJvbGU9XCJ0YWJsaXN0XCJcbiAgICBjbGFzcz1cImZkLXRhYnNcIlxuICAgIFtjbGFzc109XCIobW9kZSA/ICdmZC10YWJzLS0nICsgbW9kZSA6ICcnKSArICgnIGZkLXRhYnMtLScgKyBzaXplKVwiXG4gICAgW2NsYXNzLmZkLXRhYnMtLWNvbXBhY3RdPVwiX2NvbnRlbnREZW5zaXR5T2JzZXJ2ZXIuaXNDb21wYWN0XCJcbj5cbiAgICA8ZmQtb3ZlcmZsb3ctbGF5b3V0XG4gICAgICAgIFttYXhWaXNpYmxlSXRlbXNdPVwibWF4VmlzaWJsZVRhYnNcIlxuICAgICAgICBbZW5hYmxlS2V5Ym9hcmROYXZpZ2F0aW9uXT1cInRydWVcIlxuICAgICAgICBuYXZpZ2F0aW9uVHJpZ2dlcj1cImtleWRvd25cIlxuICAgICAgICAoaGlkZGVuSXRlbXNDb3VudCk9XCJoaWRkZW5JdGVtc0NvdW50LmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICh2aXNpYmxlSXRlbXNDb3VudCk9XCJ2aXNpYmxlSXRlbXNDb3VudC5lbWl0KCRldmVudClcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFiIG9mIF90YWJBcnJheTsgbGV0IGkgPSBpbmRleDsgbGV0IGxhc3QgPSBsYXN0XCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgZmQtdGFiLWl0ZW1cbiAgICAgICAgICAgICAgICAqZmRPdmVyZmxvd0l0ZW1SZWY9XCJ0YWJcIlxuICAgICAgICAgICAgICAgIGZkT3ZlcmZsb3dMYXlvdXRJdGVtXG4gICAgICAgICAgICAgICAgW2ZvcmNlVmlzaWJpbGl0eV09XCJ0YWIucGFuZWwuX2ZvcmNlZFZpc2liaWxpdHlcIlxuICAgICAgICAgICAgICAgIFtoZWFkZXJdPVwidGFiLmlzSGVhZGVyXCJcbiAgICAgICAgICAgICAgICBbdGFiSXRlbVN0YXRlXT1cInRhYi50YWJTdGF0ZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgZmQtdGFiLWxpbmtcbiAgICAgICAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJ0YWIuaWRcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cInRhYi5wYW5lbElkXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0YWIuYXJpYUxhYmVsIHx8IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiIXRhYi5hcmlhTGFiZWwgJiYgdGFiLmFyaWFMYWJlbGxlZEJ5ID8gdGFiLmFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIGZkT3ZlcmZsb3dMYXlvdXRGb2N1c2FibGVJdGVtXG4gICAgICAgICAgICAgICAgICAgIFtmb2N1c2FibGVdPVwidGFiLmFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuYXZpZ2FibGVdPVwiIXRhYi5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthY3RpdmVdPVwidGFiLmFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0YWIuZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJfdGFiSGVhZGVyS2V5ZG93bkhhbmRsZXIoJGV2ZW50LCB0YWIucGFuZWwpXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIl90YWJIZWFkZXJDbGlja0hhbmRsZXIodGFiLnBhbmVsKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFiLnRpdGxlVGVtcGxhdGUgfHwgbnVsbFwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhdGFiLnRpdGxlVGVtcGxhdGVcIiBbbmdTd2l0Y2hdPVwibW9kZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ZpbHRlcidcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItaGVhZGVyICpuZ0lmPVwidGFiLmlzSGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi1jb3VudGVyLWhlYWRlciAqbmdJZj1cInRhYi5jb3VudFwiPnt7IHRhYi5jb3VudCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtdGFiLWxhYmVsICpuZ0lmPVwidGFiLnRpdGxlXCI+e3sgdGFiLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXRhYi5pc0hlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItaWNvbiBbaWNvbl09XCJ0YWIuZ2x5cGhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGZkLXRhYi1jb3VudD57eyB0YWIuY291bnQgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtdGFiLWxhYmVsPnt7IHRhYi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaWNvbi1vbmx5J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi1pY29uIFtpY29uXT1cInRhYi5nbHlwaFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBmZC10YWItY291bnQ+e3sgdGFiLmNvdW50IH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncHJvY2VzcydcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItaWNvbiAqbmdJZj1cInRhYi5nbHlwaFwiIFtpY29uXT1cInRhYi5nbHlwaFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLXRhYi1wcm9jZXNzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItbGFiZWwgKm5nSWY9XCJ0YWIuY291bnRcIj57eyB0YWIuY291bnQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi1sYWJlbCAqbmdJZj1cInRhYi50aXRsZVwiPnt7IHRhYi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZmQtdGFiLWNvdW50ICpuZ0lmPVwidGFiLmNvdW50XCI+e3sgdGFiLmNvdW50IH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi10YWc+e3sgdGFiLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgICAgIDxkaXYgZmQtdGFiLXByb2Nlc3MtaWNvbiAqbmdJZj1cIm1vZGUgPT09ICdwcm9jZXNzJyAmJiAhbGFzdFwiPjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0YWIuaXNIZWFkZXJcIiBmZC10YWItc2VwYXJhdG9yPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpmZE92ZXJmbG93RXhwYW5kPVwibGV0IHRhYnM7IGl0ZW1zOiBfdGFiQXJyYXlcIj5cbiAgICAgICAgICAgIDxmZC1pdGVtLWV4cGFuZFxuICAgICAgICAgICAgICAgIFtmZE1lbnVUcmlnZ2VyXT1cIm1lbnVcIlxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJleHBhbmRPdmVyZmxvd1RleHRcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwidGFicy5sZW5ndGggPiAwXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJfb25UcmlnZ2VyS2V5ZG93bigkZXZlbnQsIG1lbnUpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvZmQtaXRlbS1leHBhbmQ+XG5cbiAgICAgICAgICAgIDxmZC1tZW51ICNtZW51PlxuICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICBmZC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCJcbiAgICAgICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIl9vdmVyZmxvd2luZ1RhYkhlYWRlckNsaWNrSGFuZGxlcih0YWIuaXRlbS5wYW5lbClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICF0YWIuaXRlbS50aXRsZVRlbXBsYXRlICYmIG1vZGUgPT09ICdpY29uLW9ubHknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGljb25Pbmx5VGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogdGFiLml0ZW0udGl0bGVUZW1wbGF0ZSB8fCB0ZXh0VGl0bGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiB0YWIuaXRlbSB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvZmQtbWVudT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9mZC1vdmVyZmxvdy1sYXlvdXQ+XG48L2Rpdj5cblxuPGRpdlxuICAgICNjb250ZW50Q29udGFpbmVyXG4gICAgY2xhc3M9XCJmZC10YWJzX19jb250ZW50XCJcbiAgICBbc3R5bGUubWF4SGVpZ2h0XT1cIm1heENvbnRlbnRIZWlnaHRcIlxuICAgIGZkU2Nyb2xsU3B5XG4gICAgZmQtc2Nyb2xsYmFyXG4gICAgW3RyYWNrZWRUYWdzXT1cIlsnZmQtdGFiJ11cIlxuICAgIFtzY3JvbGxTcHlEaXNhYmxlZF09XCJfZGlzYWJsZVNjcm9sbFNweVwiXG4gICAgKHNweUNoYW5nZSk9XCJfaGlnaGxpZ2h0QWN0aXZlVGFiKCRldmVudClcIlxuPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RleHRUaXRsZSBsZXQtdGFiPlxuICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgdGFiLnRpdGxlIH19PC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpY29uT25seVRlbXBsYXRlIGxldC10YWI+XG4gICAgPHNwYW4gZmQtdGFiLWljb24gW2ljb25dPVwidGFiLmdseXBoXCI+XG4gICAgICAgIDxwIGZkLXRhYi1jb3VudD57eyB0YWIuY291bnQgfX08L3A+XG4gICAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
307
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdGFicy90YWItbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi90YWJzL3RhYi1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7Ozs7OztBQU9sRDs7R0FFRztBQW1CSCxNQUFNLE9BQU8sZ0JBQWdCO0lBOEd6QixjQUFjO0lBQ2QsWUFDcUIsa0JBQXFDLEVBQzlDLE1BQWtCLEVBQ2pCLHVCQUErQyxFQUN2QyxXQUE2QjtRQUg3Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQzlDLFdBQU0sR0FBTixNQUFNLENBQVk7UUFDakIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF3QjtRQUN2QyxnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFsSGxELHFIQUFxSDtRQUVySCxTQUFJLEdBQWEsR0FBRyxDQUFDO1FBU3JCLHNFQUFzRTtRQUV0RSxxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFFeEI7cUVBQzZEO1FBRTdELG1CQUFjLEdBQUcsUUFBUSxDQUFDO1FBRTFCLHVFQUF1RTtRQUV2RSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVyQixvQ0FBb0M7UUFFcEMscUJBQWdCLEdBQUcsTUFBTSxDQUFDO1FBRTFCLHNFQUFzRTtRQUV0RSxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQWF4Qiw0SEFBNEg7UUFFNUgsOEJBQXlCLEdBQUcsS0FBSyxDQUFDO1FBRWxDLHFEQUFxRDtRQUVyRCxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUUxRCwrREFBK0Q7UUFFL0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUUvQyw4REFBOEQ7UUFFOUQscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQXFDOUMsNENBQTRDO1FBQzVDLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUUxQixjQUFjO1FBQ2QsVUFBSyxHQUFHLElBQUksQ0FBQztRQUViLHNFQUFzRTtRQUM3RCxnQkFBVyxHQUFvQixJQUFJLE9BQU8sRUFBVSxDQUFDO1FBRTlELDREQUE0RDtRQUNuRCw0QkFBdUIsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUV0RSxjQUFjO1FBQ04sbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBUXpDLENBQUM7SUFFSixjQUFjO0lBQ2Qsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLDhCQUE4QixFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVELGNBQWM7SUFDZCxlQUFlO1FBQ1gsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELGNBQWM7SUFDZCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztJQUNkLHNCQUFzQixDQUFDLFFBQTJCO1FBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxjQUFjO0lBQ2Qsd0JBQXdCLENBQUMsS0FBb0IsRUFBRSxRQUEyQjtRQUN0RSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUMzQyxPQUFPO1NBQ1Y7UUFFRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxjQUFjO0lBQ2QsaUNBQWlDLENBQUMsUUFBMkI7UUFDekQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMzQixHQUFHLENBQUMsS0FBSyxDQUFDLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXZDLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUU1QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7SUFDZCxtQkFBbUIsQ0FBQyxFQUFFLEVBQUUsRUFBZTtRQUNuQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDdEUsSUFBSSxHQUFHLEVBQUU7WUFDTCxNQUFNLGFBQWEsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzNDLElBQUksQ0FBQyxhQUFhLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQzFDO1NBQ0o7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLGlCQUFpQixDQUFDLEtBQW9CLEVBQUUsT0FBc0I7UUFDMUQsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQzFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLElBQVksaUJBQWlCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUM5QixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUN6QixHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUN2QyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUM5QixDQUFDO0lBQ04sQ0FBQztJQUVELGNBQWM7SUFDTixjQUFjO1FBQ2xCLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ2xFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUMzQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ04sOEJBQThCO1FBQ2xDLElBQUksQ0FBQyw0Q0FBNEMsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyw0Q0FBNEMsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRCxrRkFBa0Y7SUFDMUUsNkJBQTZCO1FBQ2pDLElBQUksQ0FBQyxpQkFBaUI7YUFDakIsSUFBSSxDQUNELE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQy9CLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFDUixTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUM5QjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDWixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDaEcsQ0FBQztJQUNWLENBQUM7SUFFRCxjQUFjO0lBQ04sNENBQTRDO1FBQ2hELElBQUksQ0FBQyxpQkFBaUI7YUFDakIsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUMxRCxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUM5QjthQUNBLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELGNBQWM7SUFDTixnQ0FBZ0M7UUFDcEMsSUFBSSxDQUFDLGlCQUFpQjthQUNqQixJQUFJLENBQ0QsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxFQUNuRixTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLEVBQzdDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzlCO2FBQ0EsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELGNBQWM7SUFDTiw0Q0FBNEM7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNwRSxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdELElBQUksR0FBc0IsQ0FBQztZQUUzQixJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyx5QkFBeUIsRUFBRTtnQkFDOUMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO29CQUNqQixHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDdEY7Z0JBRUQsSUFBSSxDQUFDLEdBQUcsRUFBRTtvQkFDTixHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUN2RDthQUNKO1lBRUQsSUFBSSxHQUFHLElBQUksU0FBUyxLQUFLLEdBQUcsRUFBRTtnQkFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3BDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsY0FBYztJQUNOLHlCQUF5QjtRQUM3QixLQUFLLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO2FBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsY0FBYztJQUNOLG1CQUFtQixDQUFDLFFBQTJCLEVBQUUsTUFBTSxHQUFHLElBQUk7UUFDbEUsSUFBSSxNQUFNLEVBQUU7WUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMzQixHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWM7SUFDTixzQkFBc0IsQ0FBQyxRQUEyQixFQUFFLE1BQWU7UUFDdkUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUVqRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzNCLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxLQUFLLEtBQUssUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDO1lBRXJELEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzVCLEdBQUcsQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWM7SUFDTixVQUFVLENBQUMsUUFBMkIsRUFBRSxNQUFlLEVBQUUsYUFBYSxHQUFHLElBQUk7UUFDakYsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN0QzthQUFNO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUU7Z0JBQy9DLE9BQU87YUFDVjtZQUVELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDakQ7UUFFRCxJQUFJLGFBQWEsRUFBRTtZQUNmLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGNBQWM7SUFDTixjQUFjLENBQUMsUUFBMkI7UUFDOUMsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDdkQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQzdELE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUM7UUFDN0UsTUFBTSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO1FBQ3ZGLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMsQ0FBQyxxQkFBcUIsS0FBSyxnQkFBZ0IsSUFBSSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQ3RGLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNyRSxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDO2lCQUNoQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7aUJBQzdELFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ2pEO0lBQ0wsQ0FBQztJQUVELG9EQUFvRDtJQUM1QyxxQkFBcUIsQ0FBQyxRQUEyQixFQUFFLE1BQWU7UUFDdEUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLElBQUksTUFBTSxLQUFLLFFBQVEsQ0FBQyxRQUFRLElBQUksTUFBTSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2hILENBQUM7OzZHQTNVUSxnQkFBZ0I7aUdBQWhCLGdCQUFnQix5aUJBVGQ7UUFDUCwrQkFBK0IsRUFBRTtRQUNqQyxnQkFBZ0I7UUFDaEI7WUFDSSxPQUFPLEVBQUUsY0FBYztZQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1NBQ2xEO0tBQ0osdUZBK0RpQyxpQkFBaUIsa0ZBWXhDLHNCQUFzQiwyQkFBVSxVQUFVLDZHQUlmLFVBQVUsK0dBSVQsVUFBVSw2RUFJdEMsdUJBQXVCLDBHQUlQLGFBQWEsaURBeEIxQixnQkFBZ0IsZ0VBSWhCLGdCQUFnQixnRENoSWxDLDAvS0FnSUE7MkZEckVhLGdCQUFnQjtrQkFsQjVCLFNBQVM7K0JBQ0ksYUFBYSxRQUdqQjt3QkFDRixLQUFLLEVBQUUsZ0JBQWdCO3FCQUMxQixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQLCtCQUErQixFQUFFO3dCQUNqQyxnQkFBZ0I7d0JBQ2hCOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQzt5QkFDbEQ7cUJBQ0o7cU1BS0QsSUFBSTtzQkFESCxLQUFLO2dCQVFOLElBQUk7c0JBREgsS0FBSztnQkFLTixnQkFBZ0I7c0JBRGYsS0FBSztnQkFNTixjQUFjO3NCQURiLEtBQUs7Z0JBS04sWUFBWTtzQkFEWCxLQUFLO2dCQUtOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUtOLGVBQWU7c0JBRGQsS0FBSztnQkFRTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBS04sVUFBVTtzQkFEVCxLQUFLO2dCQUtOLHlCQUF5QjtzQkFEeEIsS0FBSztnQkFLTixpQkFBaUI7c0JBRGhCLE1BQU07Z0JBS1AsaUJBQWlCO3NCQURoQixNQUFNO2dCQUtQLGdCQUFnQjtzQkFEZixNQUFNO2dCQUtQLFNBQVM7c0JBRFIsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7Z0JBS3BELGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxnQkFBZ0I7Z0JBSzlCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxnQkFBZ0I7Z0JBSzlCLGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxzQkFBc0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBS3ZELGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBS2xELGdCQUFnQjtzQkFEZixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUt6RCxlQUFlO3NCQUR0QixTQUFTO3VCQUFDLHVCQUF1QjtnQkFLbEMsSUFBSTtzQkFESCxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJmbG93TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL292ZXJmbG93LWxheW91dCc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGVsYXksIGZpbHRlciwgZmlyc3QsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERlc3Ryb3llZFNlcnZpY2UsIEtleVV0aWwsIHNjcm9sbFRvcCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFRhYkl0ZW1FeHBhbmRDb21wb25lbnQgfSBmcm9tICcuL3RhYi1pdGVtLWV4cGFuZC90YWItaXRlbS1leHBhbmQuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkxpbmtEaXJlY3RpdmUgfSBmcm9tICcuL3RhYi1saW5rL3RhYi1saW5rLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUYWJJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi90YWItaXRlbS90YWItaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVGFiUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3RhYi1wYW5lbC90YWItcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkluZm8gfSBmcm9tICcuL3RhYi11dGlscy90YWItaW5mby5jbGFzcyc7XG5pbXBvcnQgeyBFTlRFUiwgU1BBQ0UgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgTWVudUNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9tZW51JztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlciwgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgTElTVF9DT01QT05FTlQgfSBmcm9tICcuL3RhYi1saXN0LnRva2VuJztcbmltcG9ydCB7IFRhYkxpc3RDb21wb25lbnRJbnRlcmZhY2UgfSBmcm9tICcuL3RhYi1saXN0LWNvbXBvbmVudC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgdHlwZSBUYWJNb2RlcyA9ICdpY29uLW9ubHknIHwgJ3Byb2Nlc3MnIHwgJ2ZpbHRlcic7XG5cbmV4cG9ydCB0eXBlIFRhYlNpemVzID0gJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyB8ICd4eGwnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBsaXN0IG9mIHRhYi1wYW5lbHMuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdGFiLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWItbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFiLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtdGFicy1jdXN0b20nXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBjb250ZW50RGVuc2l0eU9ic2VydmVyUHJvdmlkZXJzKCksXG4gICAgICAgIERlc3Ryb3llZFNlcnZpY2UsXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IExJU1RfQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGFiTGlzdENvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGFiTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIFRhYkxpc3RDb21wb25lbnRJbnRlcmZhY2UsIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIFNpemUgb2YgdGFiLCBpdCdzIG1vc3RseSBhYm91dCBhZGRpbmcgc3BhY2luZyBvbiB0YWIgY29udGFpbmVyLCBhdmFpbGFibGUgc2l6ZXMgJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyB8ICd4eGwnICovXG4gICAgQElucHV0KClcbiAgICBzaXplOiBUYWJTaXplcyA9ICdtJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdXNlciB3YW50cyB0byB1c2UgdGFiIGNvbXBvbmVudCBpbiBjZXJ0YWluIG1vZGUuIE1vZGVzIGF2YWlsYWJsZTpcbiAgICAgKiAnaWNvbi1vbmx5JyB8ICdwcm9jZXNzJyB8ICdmaWx0ZXInXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtb2RlOiBUYWJNb2RlcztcblxuICAgIC8qKiBXaGV0aGVyIHRvIG1vdmUgdGFicyBvdmVyZmxvd2luZyBpbiB0aGUgdGFiIGJhciB0byB0aGUgZHJvcGRvd24gKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbGxhcHNlT3ZlcmZsb3cgPSB0cnVlO1xuXG4gICAgLyoqIExpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdGFicyB2aXNpYmxlIGluIHRoZSB0YWIgYmFyIGluIGNvbGxhcHNlT3ZlcmZsb3cgbW9kZS5cbiAgICAgKiBPdGhlciB0YWJzIHdpbGwgYmUgbW92ZWQgdG8gdGhlIGNvbGxhcHNlZCB0YWJzIGRyb3Bkb3duICovXG4gICAgQElucHV0KClcbiAgICBtYXhWaXNpYmxlVGFicyA9IEluZmluaXR5O1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gb3BlbiB0YWIgY29udGVudCBvbmUgdW5kZXIgYW5vdGhlciB3aXRob3V0IGNvbGxhcHNpbmcgKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YWNrQ29udGVudCA9IGZhbHNlO1xuXG4gICAgLyoqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBjb250ZW50ICovXG4gICAgQElucHV0KClcbiAgICBtYXhDb250ZW50SGVpZ2h0ID0gJzEwMCUnO1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gZW5hYmxlIGNvbGxhcHNpbmcgZXhwYW5kZWQgdGFiIG9uIGV4cGFuZGVkIHRhYiBjbGljayAqL1xuICAgIEBJbnB1dCgpXG4gICAgY29sbGFwc2libGVUYWJzID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB1c2UgaTE4biBjYXBhYmlsaXRpZXMgaW5zdGVhZFxuICAgICAqIFRleHQgdmlzaWJsZSBpbiBleHBhbmQgb3ZlcmZsb3cgdHJpZ2dlclxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZXhwYW5kT3ZlcmZsb3dUZXh0OiBzdHJpbmc7XG5cbiAgICAvKiogSW5pdGlhbGx5IHNlbGVjdGVkIHRhYiAoYnkgaWQpLiBGaXJzdCBub3QgZGlzYWJsZWQgb25lIGlmIG5vdCBzcGVjaWZpZWQuICovXG4gICAgQElucHV0KClcbiAgICBkZWZhdWx0VGFiOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gdHJ5IHRvIGtlZXAgc2VsZWN0ZWQgdGFiIChkZWZhdWx0IHZhbHVlKSBvbiB0YWJzIGNoYW5nZSBvciB0byBzZWxlY3QgZGVmYXVsdCBvbmUgKGZpcnN0IGlmIG5vdCBzcGVjaWZpZWQpLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0RGVmYXVsdE9uVGFic0NoYW5nZSA9IGZhbHNlO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2VsZWN0ZWQgcGFuZWwgY2hhbmdlcy4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBzZWxlY3RlZFRhYkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VGFiUGFuZWxDb21wb25lbnQ+KCk7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHZpc2libGUgaXRlbXMgY291bnQgaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICB2aXNpYmxlSXRlbXNDb3VudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiBoaWRkZW4gaXRlbXMgY291bnQgaGFzIGJlZW4gY2hhbmdlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBoaWRkZW5JdGVtc0NvdW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBUYWJQYW5lbENvbXBvbmVudCkpXG4gICAgdGFiUGFuZWxzOiBRdWVyeUxpc3Q8VGFiUGFuZWxDb21wb25lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKFRhYkxpbmtEaXJlY3RpdmUpXG4gICAgdGFiSGVhZGVyTGlua3M6IFF1ZXJ5TGlzdDxUYWJMaW5rRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZHJlbihUYWJJdGVtRGlyZWN0aXZlKVxuICAgIHRhYkhlYWRlcnM6IFF1ZXJ5TGlzdDxUYWJJdGVtRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChUYWJJdGVtRXhwYW5kQ29tcG9uZW50LCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBvdmVyZmxvd1RyaWdnZXI6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2hlYWRlckNvbnRhaW5lcicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIGhlYWRlckNvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnY29udGVudENvbnRhaW5lcicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pXG4gICAgY29udGVudENvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChPdmVyZmxvd0xheW91dENvbXBvbmVudClcbiAgICBwcml2YXRlIF9vdmVyZmxvd0xheW91dDogT3ZlcmZsb3dMYXlvdXRDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ21lbnUnLCB7IHJlYWQ6IE1lbnVDb21wb25lbnQgfSlcbiAgICBtZW51OiBNZW51Q29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gQ29sbGVjdGlvbiBvZiB0YWJzIGluIG9yaWdpbmFsIG9yZGVyICovXG4gICAgX3RhYkFycmF5OiBUYWJJbmZvW107XG5cbiAgICAvKiogQGhpZGRlbiBXaGV0aGVyIHRvIGRpc2FibGUgc2Nyb2xsIHNweSAqL1xuICAgIF9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbml0ID0gdHJ1ZTtcblxuICAgIC8qKiBFdmVudCBpcyB0aHJvd24gYWx3YXlzIHdoZW4gdGFiIGlzIHNlbGVjdGVkIGJ5IGtleWJvYXJkIGFjdGlvbnMgKi9cbiAgICByZWFkb25seSB0YWJTZWxlY3RlZDogU3ViamVjdDxudW1iZXI+ID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuXG4gICAgLyoqIEV2ZW50IGlzIHRocm93biBhbHdheXMsIHdoZW4gc29tZSBwcm9wZXJ0eSBpcyBjaGFuZ2VkICovXG4gICAgcmVhZG9ubHkgdGFiUGFuZWxQcm9wZXJ0eUNoYW5nZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIF9lbFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcmVhZG9ubHkgX2NvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX29uRGVzdHJveSQ6IERlc3Ryb3llZFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2V0dXBUYWJQYW5lbHNDaGFuZ2VMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25Qcm9wZXJ0aWVzQ2hhbmdlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3RhYkhlYWRlckNsaWNrSGFuZGxlcih0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZXhwYW5kVGFiKHRhYlBhbmVsLCAhdGFiUGFuZWwuZXhwYW5kZWQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3RhYkhlYWRlcktleWRvd25IYW5kbGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50LCB0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLl90YWJIZWFkZXJDbGlja0hhbmRsZXIodGFiUGFuZWwpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX292ZXJmbG93aW5nVGFiSGVhZGVyQ2xpY2tIYW5kbGVyKHRhYlBhbmVsOiBUYWJQYW5lbENvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90YWJBcnJheS5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgICAgICAgIHRhYi5wYW5lbC5fZm9yY2VkVmlzaWJpbGl0eSA9IHRhYi5wYW5lbCA9PT0gdGFiUGFuZWw7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2V4cGFuZFRhYih0YWJQYW5lbCwgdHJ1ZSwgZmFsc2UpO1xuXG4gICAgICAgIHRoaXMuX292ZXJmbG93TGF5b3V0LnRyaWdnZXJSZWNhbGN1bGF0aW9uKCk7XG5cbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2hpZ2hsaWdodEFjdGl2ZVRhYih7IGlkIH06IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYiA9IHRoaXMuX3RhYkFycmF5LmZpbmQoKF90YWIpID0+IF90YWIucGFuZWwuX3BhbmVsSWQgPT09IGlkKTtcbiAgICAgICAgaWYgKHRhYikge1xuICAgICAgICAgICAgY29uc3QgX3RhYldhc0FjdGl2ZSA9IHRhYi5hY3RpdmU7XG4gICAgICAgICAgICB0aGlzLl9hY3RpdmF0ZVN0YWNrZWRUYWIodGFiLnBhbmVsLCBmYWxzZSk7XG4gICAgICAgICAgICBpZiAoIV90YWJXYXNBY3RpdmUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFiQ2hhbmdlLmVtaXQodGFiLnBhbmVsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uVHJpZ2dlcktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIG1lbnVSZWY6IE1lbnVDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRU5URVIsIFNQQUNFXSkpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBtZW51UmVmLnRvZ2dsZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGdldCBfdGFiUGFuZWxzQ2hhbmdlJCgpOiBPYnNlcnZhYmxlPFRhYlBhbmVsQ29tcG9uZW50W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFiUGFuZWxzLmNoYW5nZXMucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLnRhYlBhbmVscyksXG4gICAgICAgICAgICBtYXAoKHRhYlBhbmVscykgPT4gdGFiUGFuZWxzLnRvQXJyYXkoKSksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZiAmJiAhdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWZbJ2Rlc3Ryb3llZCddKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NldHVwVGFiUGFuZWxzQ2hhbmdlTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9saXN0ZW5PblRhYlBhbmVsc0FuZFVwZGF0ZVN0b3JhZ2VTdHJ1Y3R1cmVzKCk7XG4gICAgICAgIHRoaXMuX2luaXRTdGFja0NvbnRlbnRTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25UYWJQYW5lbHNFeHBhbmRlZENoYW5nZSgpO1xuICAgICAgICB0aGlzLl9saXN0ZW5PblRhYlBhbmVsc0FuZEluaXRpYWxseUV4cGFuZFRhYlBhbmVsKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gU2V0dXAgbWVjaGFuaXNtcyByZXF1aXJlZCBmb3IgaGFuZGxpbmcgdGhlIHN0YWNrZWQgY29udGVudCBiZWhhdmlvciAqL1xuICAgIHByaXZhdGUgX2luaXRTdGFja0NvbnRlbnRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYlBhbmVsc0NoYW5nZSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLnN0YWNrQ29udGVudCksXG4gICAgICAgICAgICAgICAgZGVsYXkoMCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFiQXJyYXkuZmlsdGVyKCh0YWIpID0+ICF0YWIucGFuZWwuZGlzYWJsZWQpLmZvckVhY2goKHRhYikgPT4gdGFiLnBhbmVsLl9leHBhbmQodHJ1ZSkpXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25UYWJQYW5lbHNBbmRVcGRhdGVTdG9yYWdlU3RydWN0dXJlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFiUGFuZWxzQ2hhbmdlJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh0YWJQYW5lbHMpID0+IHRhYlBhbmVscy5tYXAoKGVsKSA9PiBuZXcgVGFiSW5mbyhlbCkpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRhYnMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl90YWJBcnJheSA9IHRhYnM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uVGFiUGFuZWxzRXhwYW5kZWRDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYlBhbmVsc0NoYW5nZSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgodGFiUGFuZWxzKSA9PiB0YWJQYW5lbHMubWFwKCh0YWIpID0+IHRhYi5fZXhwYW5kZWRTdGF0ZUNoYW5nZS5hc09ic2VydmFibGUoKSkpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgodGFiUGFuZWxzKSA9PiBtZXJnZSguLi50YWJQYW5lbHMpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLl9leHBhbmRUYWIoZXZlbnQudGFyZ2V0LCBldmVudC5zdGF0ZSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25UYWJQYW5lbHNBbmRJbml0aWFsbHlFeHBhbmRUYWJQYW5lbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFiUGFuZWxzQ2hhbmdlJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZVRhYiA9IHRoaXMuX3RhYkFycmF5LmZpbmQoKF90YWIpID0+IF90YWIuYWN0aXZlKTtcbiAgICAgICAgICAgIGxldCB0YWI6IE51bGxhYmxlPFRhYkluZm8+O1xuXG4gICAgICAgICAgICBpZiAoIWFjdGl2ZVRhYiB8fCB0aGlzLnNlbGVjdERlZmF1bHRPblRhYnNDaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kZWZhdWx0VGFiKSB7XG4gICAgICAgICAgICAgICAgICAgIHRhYiA9IHRoaXMuX3RhYkFycmF5LmZpbmQoKF90YWIpID0+ICFfdGFiLmRpc2FibGVkICYmIF90YWIuaWQgPT09IHRoaXMuZGVmYXVsdFRhYik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKCF0YWIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGFiID0gdGhpcy5fdGFiQXJyYXkuZmluZCgoX3RhYikgPT4gIV90YWIuZGlzYWJsZWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRhYiAmJiBhY3RpdmVUYWIgIT09IHRhYikge1xuICAgICAgICAgICAgICAgIHRoaXMuX2V4cGFuZFRhYih0YWIucGFuZWwsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uUHJvcGVydGllc0NoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgbWVyZ2UodGhpcy50YWJQYW5lbFByb3BlcnR5Q2hhbmdlZCwgdGhpcy50YWJQYW5lbHMuY2hhbmdlcylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZGV0ZWN0Q2hhbmdlcygpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2FjdGl2YXRlU3RhY2tlZFRhYih0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQsIHNjcm9sbCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHNjcm9sbCkge1xuICAgICAgICAgICAgdGhpcy5fc2Nyb2xsVG9QYW5lbCh0YWJQYW5lbCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fdGFiQXJyYXkuZm9yRWFjaCgodGFiKSA9PiB7XG4gICAgICAgICAgICB0YWIuYWN0aXZlID0gdGFiLnBhbmVsID09PSB0YWJQYW5lbDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hY3RpdmF0ZUV4cGFuZGFibGVUYWIodGFiUGFuZWw6IFRhYlBhbmVsQ29tcG9uZW50LCBleHBhbmQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sbGFwc2UgPSB0aGlzLmNvbGxhcHNpYmxlVGFicyAmJiAhZXhwYW5kO1xuXG4gICAgICAgIHRoaXMuX3RhYkFycmF5LmZvckVhY2goKHRhYikgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNBY3RpdmUgPSB0YWIucGFuZWwgPT09IHRhYlBhbmVsICYmICFjb2xsYXBzZTtcblxuICAgICAgICAgICAgdGFiLnBhbmVsLl9leHBhbmQoaXNBY3RpdmUpO1xuICAgICAgICAgICAgdGFiLmFjdGl2ZSA9IGlzQWN0aXZlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2V4cGFuZFRhYih0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQsIGV4cGFuZDogYm9vbGVhbiwgZGV0ZWN0Q2hhbmdlcyA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc3RhY2tDb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9hY3RpdmF0ZVN0YWNrZWRUYWIodGFiUGFuZWwpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCF0aGlzLl9jYW5DaGFuZ2VFeHBhbmRTdGF0ZSh0YWJQYW5lbCwgZXhwYW5kKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fYWN0aXZhdGVFeHBhbmRhYmxlVGFiKHRhYlBhbmVsLCBleHBhbmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRldGVjdENoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRUYWJDaGFuZ2UuZW1pdCh0YWJQYW5lbCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zY3JvbGxUb1BhbmVsKHRhYlBhbmVsOiBUYWJQYW5lbENvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwYW5lbEVsZW1lbnQgPSB0YWJQYW5lbC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmNvbnRlbnRDb250YWluZXIubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgZGlzdGFuY2VUb1Njcm9sbCA9IHBhbmVsRWxlbWVudC5vZmZzZXRUb3AgLSBjb250YWluZXJFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgY29uc3QgbWF4aW11bVNjcm9sbFRvcCA9IGNvbnRhaW5lckVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gY29udGFpbmVyRWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IE1hdGguY2VpbChjb250YWluZXJFbGVtZW50LnNjcm9sbFRvcCk7XG5cbiAgICAgICAgaWYgKCEoY3VycmVudFNjcm9sbFBvc2l0aW9uID09PSBtYXhpbXVtU2Nyb2xsVG9wICYmIGRpc3RhbmNlVG9TY3JvbGwgPiBtYXhpbXVtU2Nyb2xsVG9wKSkge1xuICAgICAgICAgICAgIXRoaXMuX2luaXQgPyAodGhpcy5fZGlzYWJsZVNjcm9sbFNweSA9IHRydWUpIDogKHRoaXMuX2luaXQgPSBmYWxzZSk7XG4gICAgICAgICAgICBmcm9tRXZlbnQoY29udGFpbmVyRWxlbWVudCwgJ3Njcm9sbCcpXG4gICAgICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDEwMCksIGZpcnN0KCksIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+ICh0aGlzLl9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2UpKTtcbiAgICAgICAgICAgIHNjcm9sbFRvcChjb250YWluZXJFbGVtZW50LCBkaXN0YW5jZVRvU2Nyb2xsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFdoZXRoZXIgdGFiIGNhbiBiZSBleHBhbmRlZC9jb2xsYXBzZWQgKi9cbiAgICBwcml2YXRlIF9jYW5DaGFuZ2VFeHBhbmRTdGF0ZSh0YWJQYW5lbDogVGFiUGFuZWxDb21wb25lbnQsIGV4cGFuZDogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRhYlBhbmVsLmRpc2FibGVkICYmIGV4cGFuZCAhPT0gdGFiUGFuZWwuZXhwYW5kZWQgJiYgZXhwYW5kID09PSBmYWxzZSA/IHRoaXMuY29sbGFwc2libGVUYWJzIDogdHJ1ZTtcbiAgICB9XG59XG4iLCI8ZGl2ICNoZWFkZXJDb250YWluZXIgcm9sZT1cInRhYmxpc3RcIiBjbGFzcz1cImZkLXRhYnNcIiBbY2xhc3NdPVwiKG1vZGUgPyAnZmQtdGFicy0tJyArIG1vZGUgOiAnJykgKyAoJyBmZC10YWJzLS0nICsgc2l6ZSlcIj5cbiAgICA8ZmQtb3ZlcmZsb3ctbGF5b3V0XG4gICAgICAgIFttYXhWaXNpYmxlSXRlbXNdPVwibWF4VmlzaWJsZVRhYnNcIlxuICAgICAgICBbZW5hYmxlS2V5Ym9hcmROYXZpZ2F0aW9uXT1cInRydWVcIlxuICAgICAgICBuYXZpZ2F0aW9uVHJpZ2dlcj1cImtleWRvd25cIlxuICAgICAgICAoaGlkZGVuSXRlbXNDb3VudCk9XCJoaWRkZW5JdGVtc0NvdW50LmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICh2aXNpYmxlSXRlbXNDb3VudCk9XCJ2aXNpYmxlSXRlbXNDb3VudC5lbWl0KCRldmVudClcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFiIG9mIF90YWJBcnJheTsgbGV0IGkgPSBpbmRleDsgbGV0IGxhc3QgPSBsYXN0XCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgZmQtdGFiLWl0ZW1cbiAgICAgICAgICAgICAgICAqZmRPdmVyZmxvd0l0ZW1SZWY9XCJ0YWJcIlxuICAgICAgICAgICAgICAgIGZkT3ZlcmZsb3dMYXlvdXRJdGVtXG4gICAgICAgICAgICAgICAgW2ZvcmNlVmlzaWJpbGl0eV09XCJ0YWIucGFuZWwuX2ZvcmNlZFZpc2liaWxpdHlcIlxuICAgICAgICAgICAgICAgIFtoZWFkZXJdPVwidGFiLmlzSGVhZGVyXCJcbiAgICAgICAgICAgICAgICBbdGFiSXRlbVN0YXRlXT1cInRhYi50YWJTdGF0ZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgZmQtdGFiLWxpbmtcbiAgICAgICAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJ0YWIuaWRcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cInRhYi5wYW5lbElkXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0YWIuYXJpYUxhYmVsIHx8IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiIXRhYi5hcmlhTGFiZWwgJiYgdGFiLmFyaWFMYWJlbGxlZEJ5ID8gdGFiLmFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIGZkT3ZlcmZsb3dMYXlvdXRGb2N1c2FibGVJdGVtXG4gICAgICAgICAgICAgICAgICAgIFtmb2N1c2FibGVdPVwidGFiLmFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuYXZpZ2FibGVdPVwiIXRhYi5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthY3RpdmVdPVwidGFiLmFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0YWIuZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJfdGFiSGVhZGVyS2V5ZG93bkhhbmRsZXIoJGV2ZW50LCB0YWIucGFuZWwpXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIl90YWJIZWFkZXJDbGlja0hhbmRsZXIodGFiLnBhbmVsKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFiLnRpdGxlVGVtcGxhdGUgfHwgbnVsbFwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhdGFiLnRpdGxlVGVtcGxhdGVcIiBbbmdTd2l0Y2hdPVwibW9kZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ZpbHRlcidcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItaGVhZGVyICpuZ0lmPVwidGFiLmlzSGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi1jb3VudGVyLWhlYWRlciAqbmdJZj1cInRhYi5jb3VudFwiPnt7IHRhYi5jb3VudCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtdGFiLWxhYmVsICpuZ0lmPVwidGFiLnRpdGxlXCI+e3sgdGFiLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXRhYi5pc0hlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItaWNvbiBbaWNvbl09XCJ0YWIuZ2x5cGhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGZkLXRhYi1jb3VudD57eyB0YWIuY291bnQgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtdGFiLWxhYmVsPnt7IHRhYi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaWNvbi1vbmx5J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi1pY29uIFtpY29uXT1cInRhYi5nbHlwaFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBmZC10YWItY291bnQ+e3sgdGFiLmNvdW50IH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncHJvY2VzcydcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItaWNvbiAqbmdJZj1cInRhYi5nbHlwaFwiIFtpY29uXT1cInRhYi5nbHlwaFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLXRhYi1wcm9jZXNzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItbGFiZWwgKm5nSWY9XCJ0YWIuY291bnRcIj57eyB0YWIuY291bnQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi1sYWJlbCAqbmdJZj1cInRhYi50aXRsZVwiPnt7IHRhYi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZmQtdGFiLWNvdW50ICpuZ0lmPVwidGFiLmNvdW50XCI+e3sgdGFiLmNvdW50IH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRhYi10YWc+e3sgdGFiLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgICAgIDxkaXYgZmQtdGFiLXByb2Nlc3MtaWNvbiAqbmdJZj1cIm1vZGUgPT09ICdwcm9jZXNzJyAmJiAhbGFzdFwiPjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0YWIuaXNIZWFkZXJcIiBmZC10YWItc2VwYXJhdG9yPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpmZE92ZXJmbG93RXhwYW5kPVwibGV0IHRhYnM7IGl0ZW1zOiBfdGFiQXJyYXlcIj5cbiAgICAgICAgICAgIDxmZC1pdGVtLWV4cGFuZFxuICAgICAgICAgICAgICAgIFtmZE1lbnVUcmlnZ2VyXT1cIm1lbnVcIlxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJleHBhbmRPdmVyZmxvd1RleHRcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwidGFicy5sZW5ndGggPiAwXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJfb25UcmlnZ2VyS2V5ZG93bigkZXZlbnQsIG1lbnUpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvZmQtaXRlbS1leHBhbmQ+XG5cbiAgICAgICAgICAgIDxmZC1tZW51ICNtZW51PlxuICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICBmZC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCJcbiAgICAgICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIl9vdmVyZmxvd2luZ1RhYkhlYWRlckNsaWNrSGFuZGxlcih0YWIuaXRlbS5wYW5lbClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICF0YWIuaXRlbS50aXRsZVRlbXBsYXRlICYmIG1vZGUgPT09ICdpY29uLW9ubHknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGljb25Pbmx5VGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogdGFiLml0ZW0udGl0bGVUZW1wbGF0ZSB8fCB0ZXh0VGl0bGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiB0YWIuaXRlbSB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvZmQtbWVudT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9mZC1vdmVyZmxvdy1sYXlvdXQ+XG48L2Rpdj5cblxuPGRpdlxuICAgICNjb250ZW50Q29udGFpbmVyXG4gICAgY2xhc3M9XCJmZC10YWJzX19jb250ZW50XCJcbiAgICBbc3R5bGUubWF4SGVpZ2h0XT1cIm1heENvbnRlbnRIZWlnaHRcIlxuICAgIGZkU2Nyb2xsU3B5XG4gICAgZmQtc2Nyb2xsYmFyXG4gICAgW3RyYWNrZWRUYWdzXT1cIlsnZmQtdGFiJ11cIlxuICAgIFtzY3JvbGxTcHlEaXNhYmxlZF09XCJfZGlzYWJsZVNjcm9sbFNweVwiXG4gICAgKHNweUNoYW5nZSk9XCJfaGlnaGxpZ2h0QWN0aXZlVGFiKCRldmVudClcIlxuPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RleHRUaXRsZSBsZXQtdGFiPlxuICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgdGFiLnRpdGxlIH19PC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpY29uT25seVRlbXBsYXRlIGxldC10YWI+XG4gICAgPHNwYW4gZmQtdGFiLWljb24gW2ljb25dPVwidGFiLmdseXBoXCI+XG4gICAgICAgIDxwIGZkLXRhYi1jb3VudD57eyB0YWIuY291bnQgfX08L3A+XG4gICAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==