@ng-nest/ui 15.0.5 → 15.0.6

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 (482) hide show
  1. package/anchor/anchor.component.d.ts +5 -5
  2. package/api/api.component.d.ts +1 -1
  3. package/auto-complete/auto-complete.component.d.ts +1 -1
  4. package/avatar/avatar.component.d.ts +3 -3
  5. package/back-top/back-top.component.d.ts +2 -2
  6. package/badge/badge.component.d.ts +2 -2
  7. package/border/border.component.d.ts +1 -1
  8. package/button/button.component.d.ts +2 -2
  9. package/button/buttons.component.d.ts +1 -1
  10. package/calendar/calendar.component.d.ts +2 -2
  11. package/card/card.component.d.ts +2 -2
  12. package/carousel/carousel-panel.component.d.ts +2 -2
  13. package/carousel/carousel.component.d.ts +4 -4
  14. package/cascade/cascade.component.d.ts +1 -1
  15. package/checkbox/checkbox.component.d.ts +3 -3
  16. package/collapse/collapse-panel.component.d.ts +2 -2
  17. package/collapse/collapse.component.d.ts +2 -2
  18. package/color/color.component.d.ts +1 -1
  19. package/color-picker/color-picker-portal.component.d.ts +4 -4
  20. package/color-picker/color-picker.component.d.ts +1 -1
  21. package/comment/comment-reply.component.d.ts +2 -2
  22. package/comment/comment.component.d.ts +2 -2
  23. package/container/aside.component.d.ts +1 -1
  24. package/container/container.component.d.ts +1 -1
  25. package/container/footer.component.d.ts +1 -1
  26. package/container/header.component.d.ts +1 -1
  27. package/container/main.component.d.ts +1 -1
  28. package/core/config/config.d.ts +1 -0
  29. package/core/functions/chunk.d.ts +1 -0
  30. package/core/functions/flex.d.ts +1 -1
  31. package/core/functions/group-by.d.ts +1 -0
  32. package/core/functions/guid.d.ts +4 -0
  33. package/core/functions/public-api.d.ts +4 -0
  34. package/core/{util → functions}/resize.d.ts +0 -0
  35. package/core/util/public-api.d.ts +0 -4
  36. package/date-picker/date-picker.component.d.ts +1 -1
  37. package/date-picker/date-range.component.d.ts +1 -1
  38. package/dialog/dialog.component.d.ts +2 -2
  39. package/drawer/drawer.component.d.ts +2 -2
  40. package/dropdown/dropdown-portal.component.d.ts +2 -2
  41. package/dropdown/dropdown.component.d.ts +3 -3
  42. package/esm2020/anchor/anchor.component.mjs +1 -2
  43. package/esm2020/api/api.component.mjs +1 -1
  44. package/esm2020/auto-complete/auto-complete.component.mjs +1 -1
  45. package/esm2020/avatar/avatar.component.mjs +1 -1
  46. package/esm2020/back-top/back-top.component.mjs +1 -1
  47. package/esm2020/badge/badge.component.mjs +1 -1
  48. package/esm2020/base-form/base-form.component.mjs +3 -3
  49. package/esm2020/border/border.component.mjs +1 -1
  50. package/esm2020/button/button.component.mjs +1 -1
  51. package/esm2020/button/buttons.component.mjs +1 -1
  52. package/esm2020/calendar/calendar.component.mjs +1 -1
  53. package/esm2020/card/card.component.mjs +1 -1
  54. package/esm2020/carousel/carousel-panel.component.mjs +1 -1
  55. package/esm2020/carousel/carousel.component.mjs +1 -1
  56. package/esm2020/cascade/cascade.component.mjs +1 -1
  57. package/esm2020/checkbox/checkbox.component.mjs +1 -1
  58. package/esm2020/collapse/collapse-panel.component.mjs +1 -1
  59. package/esm2020/collapse/collapse.component.mjs +1 -1
  60. package/esm2020/color/color.component.mjs +1 -1
  61. package/esm2020/color-picker/color-picker-portal.component.mjs +1 -1
  62. package/esm2020/color-picker/color-picker.component.mjs +1 -1
  63. package/esm2020/comment/comment-reply.component.mjs +1 -1
  64. package/esm2020/comment/comment.component.mjs +1 -1
  65. package/esm2020/container/aside.component.mjs +1 -1
  66. package/esm2020/container/container.component.mjs +1 -1
  67. package/esm2020/container/footer.component.mjs +1 -1
  68. package/esm2020/container/header.component.mjs +1 -1
  69. package/esm2020/container/main.component.mjs +1 -1
  70. package/esm2020/core/config/config.mjs +1 -1
  71. package/esm2020/core/functions/chunk.mjs +14 -0
  72. package/esm2020/core/functions/flex.mjs +2 -2
  73. package/esm2020/core/functions/group-by.mjs +10 -0
  74. package/esm2020/core/functions/guid.mjs +10 -0
  75. package/esm2020/core/functions/order-by.mjs +24 -3
  76. package/esm2020/core/functions/public-api.mjs +5 -1
  77. package/esm2020/core/functions/resize.mjs +17 -0
  78. package/esm2020/core/util/public-api.mjs +1 -5
  79. package/esm2020/date-picker/date-picker-portal.component.mjs +2 -2
  80. package/esm2020/date-picker/date-picker.component.mjs +1 -1
  81. package/esm2020/date-picker/date-range.component.mjs +1 -1
  82. package/esm2020/date-picker/picker-date.component.mjs +3 -3
  83. package/esm2020/date-picker/picker-month.component.mjs +3 -3
  84. package/esm2020/date-picker/picker-year.component.mjs +3 -3
  85. package/esm2020/dialog/dialog.component.mjs +2 -2
  86. package/esm2020/drawer/drawer.component.mjs +1 -1
  87. package/esm2020/dropdown/dropdown-portal.component.mjs +1 -1
  88. package/esm2020/dropdown/dropdown.component.mjs +1 -1
  89. package/esm2020/find/find.component.mjs +1 -1
  90. package/esm2020/form/control.component.mjs +2 -2
  91. package/esm2020/form/form.component.mjs +8 -1
  92. package/esm2020/highlight/highlight.component.mjs +2 -2
  93. package/esm2020/i18n/i18n.property.mjs +1 -1
  94. package/esm2020/i18n/languages/en_GB.mjs +44 -18
  95. package/esm2020/i18n/languages/en_US.mjs +8 -2
  96. package/esm2020/i18n/languages/zh_CN.mjs +8 -2
  97. package/esm2020/i18n/languages/zh_TW.mjs +9 -3
  98. package/esm2020/icon/icon.component.mjs +1 -1
  99. package/esm2020/image/image-preview.component.mjs +1 -1
  100. package/esm2020/image/image.component.mjs +1 -1
  101. package/esm2020/inner/inner.component.mjs +1 -1
  102. package/esm2020/input/input-group.component.mjs +1 -1
  103. package/esm2020/input/input.component.mjs +1 -1
  104. package/esm2020/input-number/input-number.component.mjs +1 -1
  105. package/esm2020/link/link.component.mjs +1 -1
  106. package/esm2020/list/list-option.component.mjs +1 -1
  107. package/esm2020/list/list.component.mjs +2 -2
  108. package/esm2020/loading/loading.component.mjs +2 -2
  109. package/esm2020/menu/menu-node.component.mjs +1 -1
  110. package/esm2020/menu/menu.component.mjs +3 -3
  111. package/esm2020/message/message.component.mjs +1 -1
  112. package/esm2020/message-box/message-box.component.mjs +1 -1
  113. package/esm2020/notification/notification.component.mjs +1 -1
  114. package/esm2020/pagination/pagination.component.mjs +1 -1
  115. package/esm2020/popconfirm/popconfirm.component.mjs +1 -1
  116. package/esm2020/popover/popover-portal.component.mjs +1 -1
  117. package/esm2020/progress/progress.component.mjs +1 -1
  118. package/esm2020/radio/radio.component.mjs +1 -1
  119. package/esm2020/rate/rate.component.mjs +1 -1
  120. package/esm2020/result/result.component.mjs +1 -1
  121. package/esm2020/select/select.component.mjs +3 -3
  122. package/esm2020/skeleton/skeleton.component.mjs +1 -1
  123. package/esm2020/slider/slider.component.mjs +1 -1
  124. package/esm2020/slider-select/slider-select.component.mjs +1 -1
  125. package/esm2020/steps/steps.component.mjs +1 -1
  126. package/esm2020/switch/switch.component.mjs +1 -1
  127. package/esm2020/table/table-body.component.mjs +1 -1
  128. package/esm2020/table/table-foot.component.mjs +1 -1
  129. package/esm2020/table/table-head.component.mjs +1 -1
  130. package/esm2020/table/table.component.mjs +1 -1
  131. package/esm2020/tabs/tab-content.component.mjs +1 -1
  132. package/esm2020/tabs/tab.component.mjs +3 -3
  133. package/esm2020/tabs/tabs.component.mjs +3 -3
  134. package/esm2020/tag/tag.component.mjs +1 -1
  135. package/esm2020/text-retract/text-retract.component.mjs +1 -1
  136. package/esm2020/textarea/textarea.component.mjs +1 -1
  137. package/esm2020/time-picker/time-picker-frame.component.mjs +188 -55
  138. package/esm2020/time-picker/time-picker-portal.component.mjs +30 -8
  139. package/esm2020/time-picker/time-picker.component.mjs +36 -9
  140. package/esm2020/time-picker/time-picker.module.mjs +8 -4
  141. package/esm2020/time-picker/time-picker.property.mjs +37 -3
  142. package/esm2020/timeline/timeline.component.mjs +1 -1
  143. package/esm2020/tooltip/tooltip-portal.component.mjs +3 -3
  144. package/esm2020/transfer/transfer.component.mjs +3 -3
  145. package/esm2020/transfer/transfer.module.mjs +8 -4
  146. package/esm2020/tree/tree-node.component.mjs +1 -1
  147. package/esm2020/tree/tree.component.mjs +1 -1
  148. package/esm2020/tree-file/tree-file.component.mjs +1 -1
  149. package/esm2020/tree-select/tree-select.component.mjs +1 -1
  150. package/esm2020/upload/upload-portal.component.mjs +5 -1
  151. package/esm2020/upload/upload.component.mjs +1 -1
  152. package/fesm2015/ng-nest-ui-anchor.mjs +0 -2
  153. package/fesm2015/ng-nest-ui-anchor.mjs.map +1 -1
  154. package/fesm2015/ng-nest-ui-api.mjs +0 -1
  155. package/fesm2015/ng-nest-ui-api.mjs.map +1 -1
  156. package/fesm2015/ng-nest-ui-auto-complete.mjs +0 -1
  157. package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
  158. package/fesm2015/ng-nest-ui-avatar.mjs +0 -1
  159. package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
  160. package/fesm2015/ng-nest-ui-back-top.mjs +0 -1
  161. package/fesm2015/ng-nest-ui-back-top.mjs.map +1 -1
  162. package/fesm2015/ng-nest-ui-badge.mjs +0 -1
  163. package/fesm2015/ng-nest-ui-badge.mjs.map +1 -1
  164. package/fesm2015/ng-nest-ui-base-form.mjs +2 -3
  165. package/fesm2015/ng-nest-ui-base-form.mjs.map +1 -1
  166. package/fesm2015/ng-nest-ui-border.mjs +0 -1
  167. package/fesm2015/ng-nest-ui-border.mjs.map +1 -1
  168. package/fesm2015/ng-nest-ui-button.mjs +0 -1
  169. package/fesm2015/ng-nest-ui-button.mjs.map +1 -1
  170. package/fesm2015/ng-nest-ui-calendar.mjs +0 -1
  171. package/fesm2015/ng-nest-ui-calendar.mjs.map +1 -1
  172. package/fesm2015/ng-nest-ui-card.mjs +0 -1
  173. package/fesm2015/ng-nest-ui-card.mjs.map +1 -1
  174. package/fesm2015/ng-nest-ui-carousel.mjs +0 -1
  175. package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
  176. package/fesm2015/ng-nest-ui-cascade.mjs +0 -1
  177. package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
  178. package/fesm2015/ng-nest-ui-checkbox.mjs +0 -1
  179. package/fesm2015/ng-nest-ui-checkbox.mjs.map +1 -1
  180. package/fesm2015/ng-nest-ui-collapse.mjs +0 -1
  181. package/fesm2015/ng-nest-ui-collapse.mjs.map +1 -1
  182. package/fesm2015/ng-nest-ui-color-picker.mjs +0 -1
  183. package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
  184. package/fesm2015/ng-nest-ui-color.mjs +0 -1
  185. package/fesm2015/ng-nest-ui-color.mjs.map +1 -1
  186. package/fesm2015/ng-nest-ui-comment.mjs +0 -1
  187. package/fesm2015/ng-nest-ui-comment.mjs.map +1 -1
  188. package/fesm2015/ng-nest-ui-container.mjs +0 -1
  189. package/fesm2015/ng-nest-ui-container.mjs.map +1 -1
  190. package/fesm2015/ng-nest-ui-core.mjs +76 -56
  191. package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
  192. package/fesm2015/ng-nest-ui-date-picker.mjs +5 -6
  193. package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
  194. package/fesm2015/ng-nest-ui-dialog.mjs +1 -2
  195. package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
  196. package/fesm2015/ng-nest-ui-drawer.mjs +0 -1
  197. package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
  198. package/fesm2015/ng-nest-ui-dropdown.mjs +0 -1
  199. package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
  200. package/fesm2015/ng-nest-ui-find.mjs +0 -1
  201. package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
  202. package/fesm2015/ng-nest-ui-form.mjs +8 -2
  203. package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
  204. package/fesm2015/ng-nest-ui-highlight.mjs +1 -2
  205. package/fesm2015/ng-nest-ui-highlight.mjs.map +1 -1
  206. package/fesm2015/ng-nest-ui-i18n.mjs +65 -22
  207. package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
  208. package/fesm2015/ng-nest-ui-icon.mjs +0 -1
  209. package/fesm2015/ng-nest-ui-icon.mjs.map +1 -1
  210. package/fesm2015/ng-nest-ui-image.mjs +0 -1
  211. package/fesm2015/ng-nest-ui-image.mjs.map +1 -1
  212. package/fesm2015/ng-nest-ui-inner.mjs +0 -1
  213. package/fesm2015/ng-nest-ui-inner.mjs.map +1 -1
  214. package/fesm2015/ng-nest-ui-input-number.mjs +0 -1
  215. package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
  216. package/fesm2015/ng-nest-ui-input.mjs +0 -1
  217. package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
  218. package/fesm2015/ng-nest-ui-link.mjs +0 -1
  219. package/fesm2015/ng-nest-ui-link.mjs.map +1 -1
  220. package/fesm2015/ng-nest-ui-list.mjs +1 -2
  221. package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
  222. package/fesm2015/ng-nest-ui-loading.mjs +1 -2
  223. package/fesm2015/ng-nest-ui-loading.mjs.map +1 -1
  224. package/fesm2015/ng-nest-ui-menu.mjs +2 -3
  225. package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
  226. package/fesm2015/ng-nest-ui-message-box.mjs +0 -1
  227. package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
  228. package/fesm2015/ng-nest-ui-message.mjs +0 -1
  229. package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
  230. package/fesm2015/ng-nest-ui-notification.mjs +0 -1
  231. package/fesm2015/ng-nest-ui-notification.mjs.map +1 -1
  232. package/fesm2015/ng-nest-ui-pagination.mjs +0 -1
  233. package/fesm2015/ng-nest-ui-pagination.mjs.map +1 -1
  234. package/fesm2015/ng-nest-ui-popconfirm.mjs +0 -1
  235. package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
  236. package/fesm2015/ng-nest-ui-popover.mjs +0 -1
  237. package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
  238. package/fesm2015/ng-nest-ui-progress.mjs +0 -1
  239. package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
  240. package/fesm2015/ng-nest-ui-radio.mjs +0 -1
  241. package/fesm2015/ng-nest-ui-radio.mjs.map +1 -1
  242. package/fesm2015/ng-nest-ui-rate.mjs +0 -1
  243. package/fesm2015/ng-nest-ui-rate.mjs.map +1 -1
  244. package/fesm2015/ng-nest-ui-result.mjs +0 -1
  245. package/fesm2015/ng-nest-ui-result.mjs.map +1 -1
  246. package/fesm2015/ng-nest-ui-select.mjs +2 -3
  247. package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
  248. package/fesm2015/ng-nest-ui-skeleton.mjs +0 -1
  249. package/fesm2015/ng-nest-ui-skeleton.mjs.map +1 -1
  250. package/fesm2015/ng-nest-ui-slider-select.mjs +0 -1
  251. package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
  252. package/fesm2015/ng-nest-ui-slider.mjs +0 -1
  253. package/fesm2015/ng-nest-ui-slider.mjs.map +1 -1
  254. package/fesm2015/ng-nest-ui-steps.mjs +0 -1
  255. package/fesm2015/ng-nest-ui-steps.mjs.map +1 -1
  256. package/fesm2015/ng-nest-ui-switch.mjs +0 -1
  257. package/fesm2015/ng-nest-ui-switch.mjs.map +1 -1
  258. package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
  259. package/fesm2015/ng-nest-ui-tabs.mjs +4 -5
  260. package/fesm2015/ng-nest-ui-tabs.mjs.map +1 -1
  261. package/fesm2015/ng-nest-ui-tag.mjs +0 -1
  262. package/fesm2015/ng-nest-ui-tag.mjs.map +1 -1
  263. package/fesm2015/ng-nest-ui-text-retract.mjs +0 -1
  264. package/fesm2015/ng-nest-ui-text-retract.mjs.map +1 -1
  265. package/fesm2015/ng-nest-ui-textarea.mjs +0 -1
  266. package/fesm2015/ng-nest-ui-textarea.mjs.map +1 -1
  267. package/fesm2015/ng-nest-ui-time-picker.mjs +292 -81
  268. package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
  269. package/fesm2015/ng-nest-ui-timeline.mjs +0 -1
  270. package/fesm2015/ng-nest-ui-timeline.mjs.map +1 -1
  271. package/fesm2015/ng-nest-ui-tooltip.mjs +2 -3
  272. package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
  273. package/fesm2015/ng-nest-ui-transfer.mjs +9 -6
  274. package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
  275. package/fesm2015/ng-nest-ui-tree-file.mjs +0 -1
  276. package/fesm2015/ng-nest-ui-tree-file.mjs.map +1 -1
  277. package/fesm2015/ng-nest-ui-tree-select.mjs +0 -1
  278. package/fesm2015/ng-nest-ui-tree-select.mjs.map +1 -1
  279. package/fesm2015/ng-nest-ui-tree.mjs +0 -1
  280. package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
  281. package/fesm2015/ng-nest-ui-upload.mjs +4 -1
  282. package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
  283. package/fesm2020/ng-nest-ui-anchor.mjs +0 -2
  284. package/fesm2020/ng-nest-ui-anchor.mjs.map +1 -1
  285. package/fesm2020/ng-nest-ui-api.mjs +0 -1
  286. package/fesm2020/ng-nest-ui-api.mjs.map +1 -1
  287. package/fesm2020/ng-nest-ui-auto-complete.mjs +0 -1
  288. package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
  289. package/fesm2020/ng-nest-ui-avatar.mjs +0 -1
  290. package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
  291. package/fesm2020/ng-nest-ui-back-top.mjs +0 -1
  292. package/fesm2020/ng-nest-ui-back-top.mjs.map +1 -1
  293. package/fesm2020/ng-nest-ui-badge.mjs +0 -1
  294. package/fesm2020/ng-nest-ui-badge.mjs.map +1 -1
  295. package/fesm2020/ng-nest-ui-base-form.mjs +2 -3
  296. package/fesm2020/ng-nest-ui-base-form.mjs.map +1 -1
  297. package/fesm2020/ng-nest-ui-border.mjs +0 -1
  298. package/fesm2020/ng-nest-ui-border.mjs.map +1 -1
  299. package/fesm2020/ng-nest-ui-button.mjs +0 -1
  300. package/fesm2020/ng-nest-ui-button.mjs.map +1 -1
  301. package/fesm2020/ng-nest-ui-calendar.mjs +0 -1
  302. package/fesm2020/ng-nest-ui-calendar.mjs.map +1 -1
  303. package/fesm2020/ng-nest-ui-card.mjs +0 -1
  304. package/fesm2020/ng-nest-ui-card.mjs.map +1 -1
  305. package/fesm2020/ng-nest-ui-carousel.mjs +0 -1
  306. package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
  307. package/fesm2020/ng-nest-ui-cascade.mjs +0 -1
  308. package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
  309. package/fesm2020/ng-nest-ui-checkbox.mjs +0 -1
  310. package/fesm2020/ng-nest-ui-checkbox.mjs.map +1 -1
  311. package/fesm2020/ng-nest-ui-collapse.mjs +0 -1
  312. package/fesm2020/ng-nest-ui-collapse.mjs.map +1 -1
  313. package/fesm2020/ng-nest-ui-color-picker.mjs +0 -1
  314. package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
  315. package/fesm2020/ng-nest-ui-color.mjs +0 -1
  316. package/fesm2020/ng-nest-ui-color.mjs.map +1 -1
  317. package/fesm2020/ng-nest-ui-comment.mjs +0 -1
  318. package/fesm2020/ng-nest-ui-comment.mjs.map +1 -1
  319. package/fesm2020/ng-nest-ui-container.mjs +0 -1
  320. package/fesm2020/ng-nest-ui-container.mjs.map +1 -1
  321. package/fesm2020/ng-nest-ui-core.mjs +76 -56
  322. package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
  323. package/fesm2020/ng-nest-ui-date-picker.mjs +5 -6
  324. package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
  325. package/fesm2020/ng-nest-ui-dialog.mjs +1 -2
  326. package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
  327. package/fesm2020/ng-nest-ui-drawer.mjs +0 -1
  328. package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
  329. package/fesm2020/ng-nest-ui-dropdown.mjs +0 -1
  330. package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
  331. package/fesm2020/ng-nest-ui-find.mjs +0 -1
  332. package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
  333. package/fesm2020/ng-nest-ui-form.mjs +8 -2
  334. package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
  335. package/fesm2020/ng-nest-ui-highlight.mjs +1 -2
  336. package/fesm2020/ng-nest-ui-highlight.mjs.map +1 -1
  337. package/fesm2020/ng-nest-ui-i18n.mjs +65 -22
  338. package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
  339. package/fesm2020/ng-nest-ui-icon.mjs +0 -1
  340. package/fesm2020/ng-nest-ui-icon.mjs.map +1 -1
  341. package/fesm2020/ng-nest-ui-image.mjs +0 -1
  342. package/fesm2020/ng-nest-ui-image.mjs.map +1 -1
  343. package/fesm2020/ng-nest-ui-inner.mjs +0 -1
  344. package/fesm2020/ng-nest-ui-inner.mjs.map +1 -1
  345. package/fesm2020/ng-nest-ui-input-number.mjs +0 -1
  346. package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
  347. package/fesm2020/ng-nest-ui-input.mjs +0 -1
  348. package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
  349. package/fesm2020/ng-nest-ui-link.mjs +0 -1
  350. package/fesm2020/ng-nest-ui-link.mjs.map +1 -1
  351. package/fesm2020/ng-nest-ui-list.mjs +1 -2
  352. package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
  353. package/fesm2020/ng-nest-ui-loading.mjs +1 -2
  354. package/fesm2020/ng-nest-ui-loading.mjs.map +1 -1
  355. package/fesm2020/ng-nest-ui-menu.mjs +2 -3
  356. package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
  357. package/fesm2020/ng-nest-ui-message-box.mjs +0 -1
  358. package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
  359. package/fesm2020/ng-nest-ui-message.mjs +0 -1
  360. package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
  361. package/fesm2020/ng-nest-ui-notification.mjs +0 -1
  362. package/fesm2020/ng-nest-ui-notification.mjs.map +1 -1
  363. package/fesm2020/ng-nest-ui-pagination.mjs +0 -1
  364. package/fesm2020/ng-nest-ui-pagination.mjs.map +1 -1
  365. package/fesm2020/ng-nest-ui-popconfirm.mjs +0 -1
  366. package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
  367. package/fesm2020/ng-nest-ui-popover.mjs +0 -1
  368. package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
  369. package/fesm2020/ng-nest-ui-progress.mjs +0 -1
  370. package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
  371. package/fesm2020/ng-nest-ui-radio.mjs +0 -1
  372. package/fesm2020/ng-nest-ui-radio.mjs.map +1 -1
  373. package/fesm2020/ng-nest-ui-rate.mjs +0 -1
  374. package/fesm2020/ng-nest-ui-rate.mjs.map +1 -1
  375. package/fesm2020/ng-nest-ui-result.mjs +0 -1
  376. package/fesm2020/ng-nest-ui-result.mjs.map +1 -1
  377. package/fesm2020/ng-nest-ui-select.mjs +2 -3
  378. package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
  379. package/fesm2020/ng-nest-ui-skeleton.mjs +0 -1
  380. package/fesm2020/ng-nest-ui-skeleton.mjs.map +1 -1
  381. package/fesm2020/ng-nest-ui-slider-select.mjs +0 -1
  382. package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
  383. package/fesm2020/ng-nest-ui-slider.mjs +0 -1
  384. package/fesm2020/ng-nest-ui-slider.mjs.map +1 -1
  385. package/fesm2020/ng-nest-ui-steps.mjs +0 -1
  386. package/fesm2020/ng-nest-ui-steps.mjs.map +1 -1
  387. package/fesm2020/ng-nest-ui-switch.mjs +0 -1
  388. package/fesm2020/ng-nest-ui-switch.mjs.map +1 -1
  389. package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
  390. package/fesm2020/ng-nest-ui-tabs.mjs +4 -5
  391. package/fesm2020/ng-nest-ui-tabs.mjs.map +1 -1
  392. package/fesm2020/ng-nest-ui-tag.mjs +0 -1
  393. package/fesm2020/ng-nest-ui-tag.mjs.map +1 -1
  394. package/fesm2020/ng-nest-ui-text-retract.mjs +0 -1
  395. package/fesm2020/ng-nest-ui-text-retract.mjs.map +1 -1
  396. package/fesm2020/ng-nest-ui-textarea.mjs +0 -1
  397. package/fesm2020/ng-nest-ui-textarea.mjs.map +1 -1
  398. package/fesm2020/ng-nest-ui-time-picker.mjs +291 -78
  399. package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
  400. package/fesm2020/ng-nest-ui-timeline.mjs +0 -1
  401. package/fesm2020/ng-nest-ui-timeline.mjs.map +1 -1
  402. package/fesm2020/ng-nest-ui-tooltip.mjs +2 -3
  403. package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
  404. package/fesm2020/ng-nest-ui-transfer.mjs +9 -6
  405. package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
  406. package/fesm2020/ng-nest-ui-tree-file.mjs +0 -1
  407. package/fesm2020/ng-nest-ui-tree-file.mjs.map +1 -1
  408. package/fesm2020/ng-nest-ui-tree-select.mjs +0 -1
  409. package/fesm2020/ng-nest-ui-tree-select.mjs.map +1 -1
  410. package/fesm2020/ng-nest-ui-tree.mjs +0 -1
  411. package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
  412. package/fesm2020/ng-nest-ui-upload.mjs +4 -1
  413. package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
  414. package/find/find.component.d.ts +1 -1
  415. package/form/form.component.d.ts +1 -0
  416. package/highlight/highlight.component.d.ts +3 -3
  417. package/i18n/i18n.property.d.ts +6 -0
  418. package/i18n/languages/en_GB.d.ts +26 -0
  419. package/i18n/languages/en_US.d.ts +6 -0
  420. package/i18n/languages/zh_CN.d.ts +6 -0
  421. package/i18n/languages/zh_TW.d.ts +6 -0
  422. package/icon/icon.component.d.ts +2 -2
  423. package/image/image-preview.component.d.ts +2 -2
  424. package/image/image.component.d.ts +2 -2
  425. package/inner/inner.component.d.ts +1 -1
  426. package/input/input-group.component.d.ts +2 -2
  427. package/input/input.component.d.ts +5 -5
  428. package/input-number/input-number.component.d.ts +1 -1
  429. package/link/link.component.d.ts +2 -2
  430. package/list/list-option.component.d.ts +2 -2
  431. package/list/list.component.d.ts +7 -7
  432. package/loading/loading.component.d.ts +2 -2
  433. package/menu/menu-node.component.d.ts +2 -2
  434. package/menu/menu.component.d.ts +3 -3
  435. package/message/message.component.d.ts +2 -2
  436. package/message-box/message-box.component.d.ts +2 -2
  437. package/notification/notification.component.d.ts +2 -2
  438. package/package.json +1 -1
  439. package/pagination/pagination.component.d.ts +2 -2
  440. package/popconfirm/popconfirm.component.d.ts +2 -2
  441. package/popover/popover-portal.component.d.ts +2 -2
  442. package/progress/progress.component.d.ts +2 -2
  443. package/radio/radio.component.d.ts +3 -3
  444. package/rate/rate.component.d.ts +3 -3
  445. package/result/result.component.d.ts +2 -2
  446. package/select/select.component.d.ts +1 -1
  447. package/skeleton/skeleton.component.d.ts +2 -2
  448. package/slider/slider.component.d.ts +4 -4
  449. package/slider-select/slider-select.component.d.ts +6 -6
  450. package/steps/steps.component.d.ts +2 -2
  451. package/switch/switch.component.d.ts +1 -1
  452. package/table/table-body.component.d.ts +3 -3
  453. package/table/table-foot.component.d.ts +3 -3
  454. package/table/table-head.component.d.ts +3 -3
  455. package/table/table.component.d.ts +12 -12
  456. package/tabs/tab-content.component.d.ts +1 -1
  457. package/tabs/tabs.component.d.ts +1 -1
  458. package/tag/tag.component.d.ts +2 -2
  459. package/text-retract/text-retract.component.d.ts +2 -2
  460. package/textarea/textarea.component.d.ts +4 -4
  461. package/time-picker/time-picker-frame.component.d.ts +30 -23
  462. package/time-picker/time-picker-portal.component.d.ts +13 -3
  463. package/time-picker/time-picker.component.d.ts +6 -3
  464. package/time-picker/time-picker.module.d.ts +2 -1
  465. package/time-picker/time-picker.property.d.ts +38 -2
  466. package/timeline/timeline.component.d.ts +2 -2
  467. package/tooltip/tooltip-portal.component.d.ts +3 -3
  468. package/transfer/transfer.component.d.ts +2 -2
  469. package/transfer/transfer.module.d.ts +2 -1
  470. package/tree/tree-node.component.d.ts +2 -2
  471. package/tree/tree.component.d.ts +3 -3
  472. package/tree-file/tree-file.component.d.ts +2 -2
  473. package/tree-select/tree-select.component.d.ts +1 -1
  474. package/upload/upload-portal.component.d.ts +6 -6
  475. package/upload/upload.component.d.ts +3 -3
  476. package/core/util/chunk.d.ts +0 -1
  477. package/core/util/group-by.d.ts +0 -1
  478. package/core/util/guid.d.ts +0 -4
  479. package/esm2020/core/util/chunk.mjs +0 -14
  480. package/esm2020/core/util/group-by.mjs +0 -10
  481. package/esm2020/core/util/guid.mjs +0 -10
  482. package/esm2020/core/util/resize.mjs +0 -17
@@ -359,4 +359,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
359
359
  type: ViewChild,
360
360
  args: ['stickyBottomRightEle']
361
361
  }] } });
362
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFJakIsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBNkQsTUFBTSxrQkFBa0IsQ0FBQztBQUMzSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBK0MsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHbEgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFTL0IsTUFBTSxPQUFPLGVBQWdCLFNBQVEsY0FBYztJQWlFakQsWUFDUyxRQUFtQixFQUNuQixVQUFzQixFQUN0QixHQUFzQixFQUN0QixhQUE2QjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQUxELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFsQ3RDLFdBQU0sR0FBaUIsRUFBRSxDQUFDO1FBRzFCLGlCQUFZLEdBQW1CLEVBQUUsQ0FBQztRQUdsQyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGlCQUFZLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFFbEIsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNm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RUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxVQUFVLEdBQUcsQ0FBQyxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDNUYsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDckQsS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNsQyxJQUFJLEVBQUUsQ0FBQzthQUNSO1NBQ0Y7SUFDSCxDQUFDOzsrSEFuV1UsZUFBZTttSEFBZixlQUFlLG1rQkMxQjVCLGl2SUFrSEE7MkZEeEZhLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0UsR0FBRyxZQUFZLEVBQUUsaUJBR1osaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTtzTEE2RDNCLEtBQUs7c0JBQXhCLFNBQVM7dUJBQUMsT0FBTztnQkFDSSxPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBQ0ssVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNTLGlCQUFpQjtzQkFBaEQsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBQ0ssb0JBQW9CO3NCQUF0RCxTQUFTO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBPbkRlc3Ryb3lcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRhYmxlUHJlZml4LCBYVGFibGVQcm9wZXJ0eSwgWFRhYmxlQ29sdW1uLCBYVGFibGVSb3csIFhUYWJsZUNlbGwsIFhUYWJsZUNlbGxDb25maWdSdWxlIH0gZnJvbSAnLi90YWJsZS5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhJc0NoYW5nZSwgWElzRW1wdHksIFhSZXN1bHRMaXN0LCBYTnVtYmVyLCBYU29ydCwgWENvbmZpZ1NlcnZpY2UsIFhJc1VuZGVmaW5lZCB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcclxuaW1wb3J0IHsgWFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9wYWdpbmF0aW9uJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WFRhYmxlUHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWJsZUNvbXBvbmVudCBleHRlbmRzIFhUYWJsZVByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIGdldCBnZXRTY3JvbGxMZWZ0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2Nyb2xsTGVmdCA+IDA7XHJcbiAgfVxyXG4gIGdldCBnZXRTY3JvbGxUb3AoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zY3JvbGxUb3AgPiAwO1xyXG4gIH1cclxuICBnZXQgZ2V0Um93SGVpZ2h0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucm93SGVpZ2h0ID09IDAgPyAnJyA6IHRoaXMucm93SGVpZ2h0O1xyXG4gIH1cclxuICBnZXQgZ2V0U3RpY2t5VG9wU2Nyb2xsVG9wKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGNhcHRpb24gPyB0aGlzLnRjYXB0aW9uLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IDogMDtcclxuICB9XHJcbiAgZ2V0IGdldFN0aWNreUJvdHRvbVNjcm9sbFRvcCgpIHtcclxuICAgIGxldCB0b3AgPSAwO1xyXG4gICAgaWYgKHRoaXMuZm9vdGVyICYmIHRoaXMudGZvb3QpIHtcclxuICAgICAgdG9wICs9IHRoaXMudGZvb3Q/Lm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0ICsgMTtcclxuICAgIH1cclxuICAgIHJldHVybiB0b3A7XHJcbiAgfVxyXG4gIGdldCBnZXRTdGlja3lUb3BSaWdodEVsZUhlaWdodCgpIHtcclxuICAgIGlmICh0aGlzLnN0aWNreVRvcFJpZ2h0RWxlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnN0aWNreVRvcFJpZ2h0RWxlLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldCBnZXRTdGlja3lCb3R0b21SaWdodEVsZUhlaWdodCgpIHtcclxuICAgIGlmICh0aGlzLnN0aWNreUJvdHRvbVJpZ2h0RWxlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnN0aWNreUJvdHRvbVJpZ2h0RWxlLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRjYXB0aW9uITogRWxlbWVudFJlZjtcclxuICB0aGVhZHM6IEVsZW1lbnRSZWZbXSA9IFtdO1xyXG4gIHRmb290ITogRWxlbWVudFJlZjtcclxuICB2aXJ0dWFsQm9keSE6IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydDtcclxuICB0aGVhZHNDaGFuZ2U6ICgoKSA9PiB2b2lkKVtdID0gW107XHJcbiAgYm9keUNoYW5nZSE6ICgpID0+IHZvaWQ7XHJcbiAgc2Nyb2xsQ29udGVudEVsZSE6IEhUTUxFbGVtZW50O1xyXG4gIGhhc1Njcm9sbFkgPSBmYWxzZTtcclxuICBzY3JvbGxZV2lkdGggPSAwO1xyXG4gIGhhc1Njcm9sbFggPSBmYWxzZTtcclxuICBzY3JvbGxYSGVpZ2h0ID0gMDtcclxuICBzY3JvbGxYV2lkdGghOiBudW1iZXIgfCBudWxsO1xyXG4gIHNjcm9sbExlZnQgPSAwO1xyXG4gIHNjcm9sbExlZnRNYXggPSBmYWxzZTtcclxuICBzY3JvbGxUb3AgPSAwO1xyXG4gIHJvd0NoZWNrZWQhOiBYVGFibGVDb2x1bW47XHJcbiAgaGVhZENoZWNrYm94TGlzdCE6IFhUYWJsZUNvbHVtbltdO1xyXG4gIHJvd0V4cGFuZCE6IFhUYWJsZUNvbHVtbjtcclxuICBoZWFkRXhwYW5kTGlzdCE6IFhUYWJsZUNvbHVtbltdO1xyXG4gIGRhdGFJc0Z1bmMgPSBmYWxzZTtcclxuICBnZXR0aW5nID0gZmFsc2U7XHJcbiAgdGFibGVEYXRhOiBYVGFibGVSb3dbXSA9IFtdO1xyXG4gIHRyZWVUYWJsZURhdGE6IFhUYWJsZVJvd1tdID0gW107XHJcbiAgY2hlY2tlZFZhbHVlczogeyBbcHJvcDogc3RyaW5nXTogYm9vbGVhbiB9ID0ge307XHJcbiAgaW5kZXRlcm1pbmF0ZSA9ICckJGluZGV0ZXJtaW5hdGUnO1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlJykgdGFibGUhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2NhcHRpb24nKSBjYXB0aW9uITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdwYWdpbmF0aW9uJykgcGFnaW5hdGlvbiE6IFhQYWdpbmF0aW9uQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ3N0aWNreVRvcFJpZ2h0RWxlJykgc3RpY2t5VG9wUmlnaHRFbGUhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ3N0aWNreUJvdHRvbVJpZ2h0RWxlJykgc3RpY2t5Qm90dG9tUmlnaHRFbGUhOiBFbGVtZW50UmVmO1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICAgIHRoaXMuc2V0Um93Q2hlY2tlZCgpO1xyXG4gICAgdGhpcy5zZXRSb3dFeHBhbmQoKTtcclxuICAgIHRoaXMuc2V0UGFnaW5hdGlvblBvc2l0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhzaW1wbGVzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIGNoZWNrZWRSb3csIGNvbHVtbnMsIGFjdGl2YXRlZFJvdywgbWFudWFsLCBzaG93UGFnaW5hdGlvbiwgZXhwYW5kZWRBbGwsIGNlbGxDb25maWcgfSA9IHNpbXBsZXM7XHJcbiAgICBYSXNDaGFuZ2UoZXhwYW5kZWRBbGwpICYmIHRoaXMuc2V0RXhwYW5kZWRBbGwoKTtcclxuICAgIFhJc0NoYW5nZShkYXRhLCBjaGVja2VkUm93KSAmJiB0aGlzLnNldERhdGEoKTtcclxuICAgIFhJc0NoYW5nZShjb2x1bW5zLCBhY3RpdmF0ZWRSb3csIHNob3dQYWdpbmF0aW9uKSAmJiB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICBYSXNDaGFuZ2UobWFudWFsKSAmJiB0aGlzLnNldE1hbnVhbCgpO1xyXG4gICAgWElzQ2hhbmdlKGNlbGxDb25maWcpICYmIHRoaXMuc2V0TWVyZ2UoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy50Y2FwdGlvbiA9IHRoaXMuY2FwdGlvbjtcclxuICB9XHJcblxyXG4gIHNldENsYXNzTWFwKCkge1xyXG4gICAgdGhpcy5jbGFzc01hcCA9IHtcclxuICAgICAgW2Ake1hUYWJsZVByZWZpeH0tcm93LXNpemUtJHt0aGlzLnJvd1NpemV9YF06ICFYSXNFbXB0eSh0aGlzLnJvd1NpemUpXHJcbiAgICB9O1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0UGFnaW5hdGlvblBvc2l0aW9uKCkge1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgYHgtdGFibGUtJHt0aGlzLnBhZ2luYXRpb25Qb3NpdGlvbn1gKTtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreShjb2x1bW46IFhUYWJsZUNvbHVtbiB8IFhUYWJsZUNlbGwpIHtcclxuICAgIHJldHVybiB0aGlzLmdldFN0aWNreUxlZnQoY29sdW1uKSB8fCB0aGlzLmdldFN0aWNreVJpZ2h0KGNvbHVtbik7XHJcbiAgfVxyXG5cclxuICBnZXRTdGlja3lMZWZ0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgcmV0dXJuIE51bWJlcihjb2x1bW4ubGVmdCkgPj0gMDtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreUxlZnRMYXN0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgbGV0IGxlZnRzID0gdGhpcy5jb2x1bW5zLmZpbHRlcigoeCkgPT4gTnVtYmVyKHgubGVmdCkgPj0gMCk7XHJcbiAgICBpZiAobGVmdHMubGVuZ3RoID09PSAwKSByZXR1cm4gZmFsc2U7XHJcbiAgICByZXR1cm4gbGVmdHNbbGVmdHMubGVuZ3RoIC0gMV0uaWQgPT09IGNvbHVtbi5pZDtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreVJpZ2h0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgcmV0dXJuIE51bWJlcihjb2x1bW4ucmlnaHQpID49IDA7XHJcbiAgfVxyXG5cclxuICBnZXRTdGlja3lSaWdodEZpcnN0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgbGV0IHJpZ2h0cyA9IHRoaXMuY29sdW1ucy5maWx0ZXIoKHgpID0+IE51bWJlcih4LnJpZ2h0KSA+PSAwKTtcclxuICAgIGlmIChyaWdodHMubGVuZ3RoID09PSAwKSByZXR1cm4gZmFsc2U7XHJcbiAgICByZXR1cm4gcmlnaHRzWzBdLmlkID09PSBjb2x1bW4uaWQ7XHJcbiAgfVxyXG5cclxuICBoYXNTdGlja3lUb3BSaWdodCgpIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuc2hvd0hlYWRlciAmJlxyXG4gICAgICAodGhpcy5oZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcCcgfHwgdGhpcy5oZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcC1ib3R0b20nKSAmJlxyXG4gICAgICB0aGlzLmNvbHVtbnMuc29tZSgoeCkgPT4gTnVtYmVyKHgucmlnaHQpID49IDApXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgaGFzU3RpY2t5VG9wUmlnaHRTZWFyY2goKSB7XHJcbiAgICByZXR1cm4gdGhpcy5oZWFkU2VhcmNoVHBsID8gdHJ1ZSA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaGFzU3RpY2t5Qm90dG9tUmlnaHQoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLnNob3dIZWFkZXIgJiZcclxuICAgICAgKHRoaXMuaGVhZGVyUG9zaXRpb24gPT09ICdib3R0b20nIHx8IHRoaXMuaGVhZGVyUG9zaXRpb24gPT09ICd0b3AtYm90dG9tJykgJiZcclxuICAgICAgdGhpcy5jb2x1bW5zLnNvbWUoKHgpID0+IE51bWJlcih4LnJpZ2h0KSA+PSAwKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEluZGV4KGluZGV4OiBudW1iZXIpIHtcclxuICAgIHJldHVybiAoTnVtYmVyKHRoaXMuaW5kZXgpIC0gMSkgKiBOdW1iZXIodGhpcy5zaXplKSArIGluZGV4ICsgMTtcclxuICB9XHJcblxyXG4gIHNldERhdGEoKSB7XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmRhdGEpKSB7XHJcbiAgICAgIHRoaXMuZGF0YUlzRnVuYyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLnRhYmxlRGF0YSA9IHRoaXMuZGF0YTtcclxuICAgICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuZGF0YSk7XHJcbiAgICAgIHRoaXMuc2V0SGVhZENoZWNrYm94TGlzdCh0aGlzLmRhdGEpO1xyXG4gICAgICB0aGlzLnNldEV4cGFuZCh0aGlzLmRhdGEpO1xyXG4gICAgICB0aGlzLnNldEhlYWRFeHBhbmRMaXN0KCk7XHJcbiAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmRhdGEgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xyXG4gICAgICB0aGlzLmRhdGFJc0Z1bmMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERhdGFCeUZ1bmMoKSB7XHJcbiAgICBpZiAoIXRoaXMubWFudWFsKSByZXR1cm47XHJcbiAgICB0aGlzLmdldHRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgICh0aGlzLmRhdGEgYXMgRnVuY3Rpb24pKHRoaXMuaW5kZXgsIHRoaXMuc2l6ZSwgdGhpcy5xdWVyeSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHg6IFhSZXN1bHRMaXN0PFhUYWJsZVJvdz4pID0+IHtcclxuICAgICAgICBsZXQgW2RhdGEsIHRvdGFsXSA9IFt4Lmxpc3QgYXMgWFRhYmxlUm93W10sIHgudG90YWwgYXMgWE51bWJlcl07XHJcbiAgICAgICAgaWYgKHRoaXMudmlydHVhbEJvZHkpIHtcclxuICAgICAgICAgIHRoaXMudmlydHVhbEJvZHkuc2Nyb2xsVG9JbmRleCgwKTtcclxuICAgICAgICAgIHRoaXMudmlydHVhbEJvZHkuY2hlY2tWaWV3cG9ydFNpemUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXR0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50YWJsZURhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChkYXRhKTtcclxuICAgICAgICB0aGlzLnNldEhlYWRDaGVja2JveExpc3QoZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRFeHBhbmQoZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRIZWFkRXhwYW5kTGlzdCgpO1xyXG4gICAgICAgIHRoaXMudG90YWwgPSB0b3RhbDtcclxuICAgICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRNYW51YWwoKSB7XHJcbiAgICBpZiAodGhpcy5kYXRhSXNGdW5jKSB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICB9XHJcblxyXG4gIHNldFJvd0NoZWNrZWQoKSB7XHJcbiAgICB0aGlzLnJvd0NoZWNrZWQgPSB0aGlzLmNvbHVtbnMuZmluZCgoeCkgPT4geC5yb3dDaGVja2VkKSBhcyBYVGFibGVDb2x1bW47XHJcbiAgICB0aGlzLmhlYWRDaGVja2JveExpc3QgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKCh4KSA9PiB4LnR5cGUgPT09ICdjaGVja2JveCcgJiYgeC5oZWFkQ2hlY2tlZCk7XHJcbiAgfVxyXG5cclxuICBzZXRSb3dFeHBhbmQoKSB7XHJcbiAgICB0aGlzLnJvd0V4cGFuZCA9IHRoaXMuY29sdW1ucy5maW5kKCh4KSA9PiB4LnJvd0V4cGFuZCkgYXMgWFRhYmxlQ29sdW1uO1xyXG4gIH1cclxuXHJcbiAgaXNFeHBhbmRDb2x1bW4oY29sdW1uOiBYVGFibGVDb2x1bW4pIHtcclxuICAgIGxldCBleHBhbmRDb2x1bW4gPSB0aGlzLmNvbHVtbnMuZmluZCgoeCkgPT4geC5pZCA9PT0gY29sdW1uLmlkICYmIHgudHlwZSA9PT0gJ2V4cGFuZCcpO1xyXG4gICAgaWYgKGV4cGFuZENvbHVtbikge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHNldE1lcmdlKCkge1xyXG4gICAgaWYgKCF0aGlzLmNlbGxDb25maWcpIHJldHVybjtcclxuICAgIGNvbnN0IHNldFJ1bGUgPSAocnVsZT86IFhUYWJsZUNlbGxDb25maWdSdWxlKSA9PiB7XHJcbiAgICAgIGlmICghcnVsZSkgcmV0dXJuO1xyXG4gICAgICBsZXQgZ3JpZFRlbXBsYXRlQ29sdW1ucyA9ICcnLFxyXG4gICAgICAgIGNlbGxzID0gW107XHJcbiAgICAgIGlmICghcnVsZS5ncmlkVGVtcGxhdGVDb2x1bW5zKSB7XHJcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucyA9IGAke3RoaXMuY29sdW1uc1xyXG4gICAgICAgICAgLm1hcCgoeCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoeC53aWR0aCkgcmV0dXJuIHgud2lkdGg7XHJcbiAgICAgICAgICAgIGlmICh4LmZsZXgpIHJldHVybiBgJHt4LmZsZXh9ZnJgO1xyXG4gICAgICAgICAgICByZXR1cm4gJzFmcic7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLmpvaW4oJyAnKX1gO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghcnVsZS5jZWxscykgcmV0dXJuO1xyXG4gICAgICBjZWxscyA9IHJ1bGUuY2VsbHMubWFwKCh5KSA9PiB7XHJcbiAgICAgICAgY29uc3QgY29sID0gdGhpcy5jb2x1bW5zLmZpbmQoKHopID0+IHouaWQgPT09IHkuaWQpO1xyXG4gICAgICAgIGlmIChjb2wpIHtcclxuICAgICAgICAgIHJldHVybiB7IC4uLmNvbCwgLi4ueSB9IGFzIFhUYWJsZUNlbGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB5O1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHsgZ3JpZFRlbXBsYXRlQ29sdW1ucywgY2VsbHMgfTtcclxuICAgIH07XHJcbiAgICB0aGlzLmNlbGxDb25maWcudGhlYWQgPSBzZXRSdWxlKHRoaXMuY2VsbENvbmZpZy50aGVhZCk7XHJcbiAgICB0aGlzLmNlbGxDb25maWcudGJvZHkgPSBzZXRSdWxlKHRoaXMuY2VsbENvbmZpZy50Ym9keSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2UoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5pbmRleCA9IGluZGV4O1xyXG4gICAgdGhpcy5kYXRhSXNGdW5jICYmIHRoaXMuZ2V0RGF0YUJ5RnVuYygpO1xyXG4gICAgdGhpcy5pbmRleENoYW5nZS5lbWl0KGluZGV4KTtcclxuICAgIHRoaXMucmVzZXRTY3JvbGwoKTtcclxuICB9XHJcblxyXG4gIHJlc2V0U2Nyb2xsKHggPSB0cnVlLCB5ID0gdHJ1ZSkge1xyXG4gICAgaWYgKHRoaXMuaGFzU2Nyb2xsWCAmJiB4KSB0aGlzLnZpcnR1YWxCb2R5Py5zY3JvbGxUbyh7IGxlZnQ6IDAgfSk7XHJcbiAgICBpZiAodGhpcy5oYXNTY3JvbGxZICYmIHkpIHRoaXMudmlydHVhbEJvZHk/LnNjcm9sbFRvKHsgdG9wOiAwIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2hlY2tlZChkYXRhOiBYVGFibGVSb3dbXSkge1xyXG4gICAgbGV0IHJlc3VsdDogWFRhYmxlUm93W10gPSBbXTtcclxuICAgIGlmIChYSXNFbXB0eShkYXRhKSB8fCAhdGhpcy5jaGVja2VkUm93KSByZXR1cm47XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5jaGVja2VkUm93KSB7XHJcbiAgICAgIGNvbnN0IGFyciA9IHRoaXMuY2hlY2tlZFJvd1trZXldO1xyXG4gICAgICBmb3IgKGxldCBpdGVtIG9mIGRhdGEgYXMgYW55W10pIHtcclxuICAgICAgICBpdGVtW2tleV0gPSBhcnIuaW5jbHVkZXMoaXRlbS5pZCk7XHJcbiAgICAgICAgcmVzdWx0ID0gWy4uLnJlc3VsdCwgaXRlbV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChyZXN1bHQubGVuZ3RoID4gMCkgZGF0YSA9IFsuLi5yZXN1bHRdO1xyXG4gIH1cclxuXHJcbiAgc2V0SGVhZENoZWNrYm94TGlzdChkYXRhOiBYVGFibGVSb3dbXSkge1xyXG4gICAgaWYgKFhJc0VtcHR5KGRhdGEpIHx8ICF0aGlzLmhlYWRDaGVja2JveExpc3QpIHJldHVybjtcclxuICAgIGZvciAobGV0IGNvbHVtbiBvZiB0aGlzLmhlYWRDaGVja2JveExpc3QpIHtcclxuICAgICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRFeHBhbmQoZGF0YTogWFRhYmxlUm93W10pIHtcclxuICAgIGNvbnN0IGdldENoaWxkcmVuID0gKG5vZGU6IFhUYWJsZVJvdywgbGV2ZWw6IG51bWJlcikgPT4ge1xyXG4gICAgICBub2RlLmxldmVsID0gbGV2ZWw7XHJcbiAgICAgIG5vZGUuZXhwYW5kZWQgPSBCb29sZWFuKHRoaXMuZXhwYW5kZWRBbGwpIHx8IGxldmVsIDw9IHRoaXMuZXhwYW5kZWRMZXZlbCB8fCB0aGlzLmV4cGFuZGVkLmluY2x1ZGVzKG5vZGUuaWQpO1xyXG4gICAgICBpZiAoWElzVW5kZWZpbmVkKG5vZGUuY2hpbGRyZW4pKSBub2RlLmNoaWxkcmVuID0gZGF0YS5maWx0ZXIoKHkpID0+IHkucGlkID09PSBub2RlLmlkKTtcclxuICAgICAgaWYgKFhJc1VuZGVmaW5lZChub2RlLmxlYWYpKSBub2RlLmxlYWYgPSAobm9kZS5jaGlsZHJlbj8ubGVuZ3RoIGFzIG51bWJlcikgPiAwO1xyXG4gICAgICBpZiAobm9kZS5sZWFmKSBub2RlLmNoaWxkcmVuPy5tYXAoKHkpID0+IGdldENoaWxkcmVuKHksIGxldmVsICsgMSkpO1xyXG4gICAgICByZXR1cm4gbm9kZTtcclxuICAgIH07XHJcbiAgICB0aGlzLnRyZWVUYWJsZURhdGEgPSBkYXRhXHJcbiAgICAgIC5maWx0ZXIoKHgpID0+IFhJc0VtcHR5KHgucGlkKSlcclxuICAgICAgLm1hcCgoeCwgaW5kZXgpID0+IHtcclxuICAgICAgICBpZiAoWElzVW5kZWZpbmVkKHguaWQpKSB4LmlkID0gaW5kZXggKyAxO1xyXG4gICAgICAgIHJldHVybiBnZXRDaGlsZHJlbih4LCAwKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRFeHBhbmRlZEFsbCgpIHtcclxuICAgIGlmICghdGhpcy50cmVlVGFibGUgfHwgdGhpcy50cmVlVGFibGVEYXRhPy5sZW5ndGggPT09IDApIHJldHVybjtcclxuICAgIGNvbnN0IHNldENoaWxkcmVuID0gKG5vZGVzOiBYVGFibGVSb3dbXSkgPT4ge1xyXG4gICAgICBpZiAoWElzRW1wdHkobm9kZXMpKSByZXR1cm47XHJcbiAgICAgIG5vZGVzLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgICB4LmV4cGFuZGVkID0gQm9vbGVhbih0aGlzLmV4cGFuZGVkQWxsKTtcclxuICAgICAgICBzZXRDaGlsZHJlbih4LmNoaWxkcmVuIGFzIFhUYWJsZVJvd1tdKTtcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgc2V0Q2hpbGRyZW4odGhpcy50cmVlVGFibGVEYXRhKTtcclxuICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0SGVhZEV4cGFuZExpc3QoKSB7fVxyXG5cclxuICBjaGVja1NvcnQoc29ydDogWFNvcnRbXSkge1xyXG4gICAgaWYgKCF0aGlzLmRhdGFJc0Z1bmMpIHJldHVybjtcclxuICAgIGlmICh0eXBlb2YgdGhpcy5xdWVyeSA9PT0gJ3VuZGVmaW5lZCcpIHRoaXMucXVlcnkgPSB7fTtcclxuICAgIHRoaXMucXVlcnkuc29ydCA9IHNvcnQ7XHJcbiAgICB0aGlzLnF1ZXJ5Q2hhbmdlLmVtaXQodGhpcy5xdWVyeSk7XHJcbiAgICB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICB9XHJcblxyXG4gIGhlYWRDaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4sIGNvbHVtbjogWFRhYmxlQ29sdW1uKSB7XHJcbiAgICB0aGlzLnRhYmxlRGF0YS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgIGlmICgheC5kaXNhYmxlZCkge1xyXG4gICAgICAgIHhbY29sdW1uLmlkXSA9IGNoZWNrZWQ7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB0aGlzLmhlYWRDaGVja2JveENoYW5nZS5lbWl0KHRoaXMuY2hlY2tlZFZhbHVlcyk7XHJcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIGJvZHlDaGVja2VkKF9jaGVja2VkOiBib29sZWFuLCBjb2x1bW46IFhUYWJsZUNvbHVtbikge1xyXG4gICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNldENoZWNrZWRWYWx1ZXMoY29sdW1uOiBYVGFibGVDb2x1bW4pIHtcclxuICAgIGNvbnN0IG5vdERpc2FibGVkID0gdGhpcy50YWJsZURhdGEuZmlsdGVyKCh4KSA9PiAheC5kaXNhYmxlZCk7XHJcbiAgICBjb25zdCBjb3VudCA9IG5vdERpc2FibGVkLmxlbmd0aDtcclxuICAgIGNvbnN0IGNoZWNrZWRMZW4gPSBub3REaXNhYmxlZC5maWx0ZXIoKHgpID0+IHhbY29sdW1uLmlkXSkubGVuZ3RoO1xyXG4gICAgdGhpcy5jaGVja2VkVmFsdWVzW2NvbHVtbi5pZF0gPSBjb3VudCA9PT0gY2hlY2tlZExlbiAmJiBjb3VudCAhPT0gMDtcclxuICAgIHRoaXMuY2hlY2tlZFZhbHVlc1tjb2x1bW4uaWQgKyB0aGlzLmluZGV0ZXJtaW5hdGVdID0gY2hlY2tlZExlbiA+IDAgJiYgY2hlY2tlZExlbiA8IGNvdW50O1xyXG4gIH1cclxuXHJcbiAgZGV0ZWN0Q2hhbmdlcygpIHtcclxuICAgIHRoaXMuYm9keUNoYW5nZSAmJiB0aGlzLmJvZHlDaGFuZ2UoKTtcclxuICAgIHRoaXMudGhlYWRzQ2hhbmdlcygpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdGhlYWRzQ2hhbmdlcygpIHtcclxuICAgIGlmICh0aGlzLnRoZWFkc0NoYW5nZSAmJiB0aGlzLnRoZWFkc0NoYW5nZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGZvciAobGV0IGl0ZW0gb2YgdGhpcy50aGVhZHNDaGFuZ2UpIHtcclxuICAgICAgICBpdGVtKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHRhYmxlXHJcbiAgI3RhYmxlXHJcbiAgY2xhc3M9XCJ4LXRhYmxlXCJcclxuICBbbmdDbGFzc109XCJjbGFzc01hcFwiXHJcbiAgW3gtbG9hZGluZ109XCJsb2FkaW5nICYmIGdldHRpbmdcIlxyXG4gIFtjbGFzcy54LXRhYmxlLXdyYXAtYm9yZGVyLWhpZGRlbl09XCJoaWRkZW5XcmFwQm9yZGVyXCJcclxuICBbY2xhc3MueC10YWJsZS1zY3JvbGwtbGVmdF09XCJnZXRTY3JvbGxMZWZ0XCJcclxuICBbY2xhc3MueC10YWJsZS1zY3JvbGwtbGVmdC1tYXhdPVwic2Nyb2xsTGVmdE1heFwiXHJcbiAgW2NsYXNzLngtdGFibGUtc2Nyb2xsLXRvcF09XCJnZXRTY3JvbGxUb3BcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWhhcy1zY3JvbGwtcmlnaHRdPVwic2Nyb2xsWVdpZHRoXCJcclxuICBbY2xhc3MueC10YWJsZS1oYXMtc2Nyb2xsLWJvdHRvbV09XCJzY3JvbGxYV2lkdGhcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWJvcmRlcmVkXT1cImJvcmRlcmVkXCJcclxuICBbY2xhc3MueC10YWJsZS10ZC1hZGFwdGlvbi1oZWlnaHRdPVwicm93SGVpZ2h0ID09IDBcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWNlbGwtY29uZmlnXT1cImNlbGxDb25maWdcIlxyXG4+XHJcbiAgPGNhcHRpb24gI2NhcHRpb24gY2xhc3M9XCJ4LXRhYmxlLWhlYWRlclwiICpuZ0lmPVwiaGVhZGVyXCIgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIiBbc3R5bGUubWluLWhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJoZWFkZXJcIj57eyBoZWFkZXIgfX08L25nLWNvbnRhaW5lcj5cclxuICA8L2NhcHRpb24+XHJcbiAgPHgtdGFibGUtaGVhZFxyXG4gICAgKm5nSWY9XCJzaG93SGVhZGVyICYmIChoZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcCcgfHwgaGVhZGVyUG9zaXRpb24gPT09ICd0b3AtYm90dG9tJylcIlxyXG4gICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAgICBbcm93SGVpZ2h0XT1cInJvd0hlaWdodFwiXHJcbiAgICBbY29sdW1uVHBsXT1cImhlYWRDb2x1bW5UcGxcIlxyXG4gICAgW3Njcm9sbFlXaWR0aF09XCJzY3JvbGxZV2lkdGhcIlxyXG4gICAgW3Njcm9sbFhXaWR0aF09XCJzY3JvbGxYV2lkdGhcIlxyXG4gICAgW2NlbGxDb25maWddPVwiY2VsbENvbmZpZz8udGhlYWRcIlxyXG4gICAgW3Bvc2l0aW9uXT1cIid0b3AnXCJcclxuICAgIFt0YWJsZV09XCJ0aGlzXCJcclxuICA+PC94LXRhYmxlLWhlYWQ+XHJcbiAgPHgtdGFibGUtYm9keVxyXG4gICAgW2RhdGFdPVwidHJlZVRhYmxlID8gdHJlZVRhYmxlRGF0YSA6IHRhYmxlRGF0YVwiXHJcbiAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcclxuICAgIFtpdGVtU2l6ZV09XCJpdGVtU2l6ZVwiXHJcbiAgICBbcm93SGVpZ2h0XT1cInJvd0hlaWdodFwiXHJcbiAgICBbYm9keUhlaWdodF09XCJib2R5SGVpZ2h0XCJcclxuICAgIFtjb2x1bW5UcGxdPVwiYm9keUNvbHVtblRwbFwiXHJcbiAgICBbYWxsb3dTZWxlY3RSb3ddPVwiYWxsb3dTZWxlY3RSb3dcIlxyXG4gICAgW3ZpcnR1YWxTY3JvbGxdPVwidmlydHVhbFNjcm9sbFwiXHJcbiAgICBbbWluQnVmZmVyUHhdPVwibWluQnVmZmVyUHhcIlxyXG4gICAgW21heEJ1ZmZlclB4XT1cIm1heEJ1ZmZlclB4XCJcclxuICAgIFthZGFwdGlvbkhlaWdodF09XCJhZGFwdGlvbkhlaWdodFwiXHJcbiAgICBbZG9jUGVyY2VudF09XCJkb2NQZXJjZW50XCJcclxuICAgIFtzY3JvbGxdPVwic2Nyb2xsXCJcclxuICAgIFtyb3dDbGFzc109XCJyb3dDbGFzc1wiXHJcbiAgICBbY2VsbENvbmZpZ109XCJjZWxsQ29uZmlnPy50Ym9keVwiXHJcbiAgICBbZXhwYW5kZWRBbGxdPVwiZXhwYW5kZWRBbGxcIlxyXG4gICAgW2V4cGFuZFRwbF09XCJleHBhbmRUcGxcIlxyXG4gICAgWyhhY3RpdmF0ZWRSb3cpXT1cImFjdGl2YXRlZFJvd1wiXHJcbiAgICAoYWN0aXZhdGVkUm93Q2hhbmdlKT1cImFjdGl2YXRlZFJvd0NoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgW3RhYmxlXT1cInRoaXNcIlxyXG4gID48L3gtdGFibGUtYm9keT5cclxuICA8eC10YWJsZS1oZWFkXHJcbiAgICAqbmdJZj1cInNob3dIZWFkZXIgJiYgKGhlYWRlclBvc2l0aW9uID09PSAnYm90dG9tJyB8fCBoZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcC1ib3R0b20nKVwiXHJcbiAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcclxuICAgIFtyb3dIZWlnaHRdPVwicm93SGVpZ2h0XCJcclxuICAgIFtjb2x1bW5UcGxdPVwiaGVhZENvbHVtblRwbFwiXHJcbiAgICBbc2Nyb2xsWVdpZHRoXT1cInNjcm9sbFlXaWR0aFwiXHJcbiAgICBbc2Nyb2xsWFdpZHRoXT1cInNjcm9sbFhXaWR0aFwiXHJcbiAgICBbY2VsbENvbmZpZ109XCJjZWxsQ29uZmlnPy50aGVhZFwiXHJcbiAgICBbcG9zaXRpb25dPVwiJ2JvdHRvbSdcIlxyXG4gICAgW3RhYmxlXT1cInRoaXNcIlxyXG4gID48L3gtdGFibGUtaGVhZD5cclxuICA8eC10YWJsZS1mb290ICpuZ0lmPVwiZm9vdGVyXCIgW3RhYmxlXT1cInRoaXNcIiBbZm9vdGVyXT1cImZvb3RlclwiIFtyb3dIZWlnaHRdPVwicm93SGVpZ2h0XCI+PC94LXRhYmxlLWZvb3Q+XHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJoYXNTdGlja3lUb3BSaWdodCgpXCJcclxuICAgICNzdGlja3lUb3BSaWdodEVsZVxyXG4gICAgY2xhc3M9XCJ4LXRhYmxlLXN0aWNreS1yaWdodC1zY3JvbGxcIlxyXG4gICAgW2NsYXNzLngtdGFibGUtYm9yZGVyLWJvdHRvbV09XCJoZWFkU2VhcmNoVHBsXCJcclxuICAgIFtzdHlsZS50b3AucHhdPVwiZ2V0U3RpY2t5VG9wU2Nyb2xsVG9wXCJcclxuICAgIFtzdHlsZS53aWR0aC5weF09XCJzY3JvbGxZV2lkdGhcIlxyXG4gICAgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIlxyXG4gICAgW3N0eWxlLm1pbi1oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0XCJcclxuICA+PC9kaXY+XHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJoYXNTdGlja3lUb3BSaWdodCgpICYmIGhlYWRTZWFyY2hUcGxcIlxyXG4gICAgY2xhc3M9XCJ4LXRhYmxlLXN0aWNreS1yaWdodC1zY3JvbGxcIlxyXG4gICAgW3N0eWxlLnRvcC5weF09XCJnZXRTdGlja3lUb3BTY3JvbGxUb3AgKyBnZXRTdGlja3lUb3BSaWdodEVsZUhlaWdodFwiXHJcbiAgICBbc3R5bGUud2lkdGgucHhdPVwic2Nyb2xsWVdpZHRoXCJcclxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0XCJcclxuICAgIFtzdHlsZS5taW4taGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodFwiXHJcbiAgPjwvZGl2PlxyXG4gIDxkaXZcclxuICAgICpuZ0lmPVwiaGFzU3RpY2t5Qm90dG9tUmlnaHQoKVwiXHJcbiAgICAjc3RpY2t5Qm90dG9tUmlnaHRFbGVcclxuICAgIGNsYXNzPVwieC10YWJsZS1zdGlja3ktcmlnaHQtc2Nyb2xsXCJcclxuICAgIFtzdHlsZS5ib3R0b20ucHhdPVwiZ2V0U3RpY2t5Qm90dG9tU2Nyb2xsVG9wXCJcclxuICAgIFtzdHlsZS53aWR0aC5weF09XCJzY3JvbGxZV2lkdGhcIlxyXG4gICAgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIlxyXG4gICAgW3N0eWxlLm1pbi1oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0XCJcclxuICA+PC9kaXY+XHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJoYXNTdGlja3lCb3R0b21SaWdodCgpICYmIGhlYWRTZWFyY2hUcGxcIlxyXG4gICAgY2xhc3M9XCJ4LXRhYmxlLXN0aWNreS1yaWdodC1zY3JvbGxcIlxyXG4gICAgW2NsYXNzLngtdGFibGUtYm9yZGVyLWJvdHRvbV09XCJoZWFkU2VhcmNoVHBsXCJcclxuICAgIFtzdHlsZS5ib3R0b20ucHhdPVwiZ2V0U3RpY2t5Qm90dG9tU2Nyb2xsVG9wICsgZ2V0U3RpY2t5Qm90dG9tUmlnaHRFbGVIZWlnaHRcIlxyXG4gICAgW3N0eWxlLndpZHRoLnB4XT1cInNjcm9sbFlXaWR0aFwiXHJcbiAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodFwiXHJcbiAgICBbc3R5bGUubWluLWhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIlxyXG4gID48L2Rpdj5cclxuPC90YWJsZT5cclxuPHgtcGFnaW5hdGlvblxyXG4gICNwYWdpbmF0aW9uXHJcbiAgKm5nSWY9XCJzaG93UGFnaW5hdGlvbiAmJiBzaXplXCJcclxuICBbKGluZGV4KV09XCJpbmRleFwiXHJcbiAgWyhzaXplKV09XCJzaXplXCJcclxuICBbKHF1ZXJ5KV09XCJxdWVyeVwiXHJcbiAgW3RvdGFsXT1cInRvdGFsXCJcclxuICAoaW5kZXhDaGFuZ2UpPVwiY2hhbmdlKCRldmVudClcIlxyXG4gIFtzaG93RWxsaXBzaXNdPVwic2hvd0VsbGlwc2lzXCJcclxuICBbc2hvd1RvdGFsXT1cInNob3dUb3RhbFwiXHJcbiAgW3NwYWNlXT1cInNwYWNlXCJcclxuICBbaGlkZGVuQm9yZGVyXT1cImhpZGRlblBhZ2luYXRpb25Cb3JkZXIhXCJcclxuPlxyXG48L3gtcGFnaW5hdGlvbj5cclxuIl19
362
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFJakIsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBNkQsTUFBTSxrQkFBa0IsQ0FBQztBQUMzSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBK0MsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHbEgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFTL0IsTUFBTSxPQUFPLGVBQWdCLFNBQVEsY0FBYztJQWlFakQsWUFDUyxRQUFtQixFQUNuQixVQUFtQyxFQUNuQyxHQUFzQixFQUN0QixhQUE2QjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQUxELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBbEN0QyxXQUFNLEdBQThCLEVBQUUsQ0FBQztRQUd2QyxpQkFBWSxHQUFtQixFQUFFLENBQUM7UUFHbEMsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUNqQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBRWxCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFD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LEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsVUFBVSxHQUFHLENBQUMsSUFBSSxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzVGLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3JELEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDbEMsSUFBSSxFQUFFLENBQUM7YUFDUjtTQUNGO0lBQ0gsQ0FBQzs7K0hBbldVLGVBQWU7bUhBQWYsZUFBZSxta0JDMUI1QixpdklBa0hBOzJGRHhGYSxlQUFlO2tCQVAzQixTQUFTOytCQUNFLEdBQUcsWUFBWSxFQUFFLGlCQUdaLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07c0xBNkQzQixLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU87Z0JBQ0ksT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUNLLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFDUyxpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CO2dCQUNLLG9CQUFvQjtzQkFBdEQsU0FBUzt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbiAgT25EZXN0cm95XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUYWJsZVByZWZpeCwgWFRhYmxlUHJvcGVydHksIFhUYWJsZUNvbHVtbiwgWFRhYmxlUm93LCBYVGFibGVDZWxsLCBYVGFibGVDZWxsQ29uZmlnUnVsZSB9IGZyb20gJy4vdGFibGUucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNDaGFuZ2UsIFhJc0VtcHR5LCBYUmVzdWx0TGlzdCwgWE51bWJlciwgWFNvcnQsIFhDb25maWdTZXJ2aWNlLCBYSXNVbmRlZmluZWQgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XHJcbmltcG9ydCB7IFhQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvcGFnaW5hdGlvbic7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hUYWJsZVByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVGFibGVDb21wb25lbnQgZXh0ZW5kcyBYVGFibGVQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBnZXQgZ2V0U2Nyb2xsTGVmdCgpIHtcclxuICAgIHJldHVybiB0aGlzLnNjcm9sbExlZnQgPiAwO1xyXG4gIH1cclxuICBnZXQgZ2V0U2Nyb2xsVG9wKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2Nyb2xsVG9wID4gMDtcclxuICB9XHJcbiAgZ2V0IGdldFJvd0hlaWdodCgpIHtcclxuICAgIHJldHVybiB0aGlzLnJvd0hlaWdodCA9PSAwID8gJycgOiB0aGlzLnJvd0hlaWdodDtcclxuICB9XHJcbiAgZ2V0IGdldFN0aWNreVRvcFNjcm9sbFRvcCgpIHtcclxuICAgIHJldHVybiB0aGlzLnRjYXB0aW9uID8gdGhpcy50Y2FwdGlvbi5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCA6IDA7XHJcbiAgfVxyXG4gIGdldCBnZXRTdGlja3lCb3R0b21TY3JvbGxUb3AoKSB7XHJcbiAgICBsZXQgdG9wID0gMDtcclxuICAgIGlmICh0aGlzLmZvb3RlciAmJiB0aGlzLnRmb290KSB7XHJcbiAgICAgIHRvcCArPSB0aGlzLnRmb290Py5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCArIDE7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdG9wO1xyXG4gIH1cclxuICBnZXQgZ2V0U3RpY2t5VG9wUmlnaHRFbGVIZWlnaHQoKSB7XHJcbiAgICBpZiAodGhpcy5zdGlja3lUb3BSaWdodEVsZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zdGlja3lUb3BSaWdodEVsZS5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgZ2V0U3RpY2t5Qm90dG9tUmlnaHRFbGVIZWlnaHQoKSB7XHJcbiAgICBpZiAodGhpcy5zdGlja3lCb3R0b21SaWdodEVsZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zdGlja3lCb3R0b21SaWdodEVsZS5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICB0Y2FwdGlvbiE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG4gIHRoZWFkczogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5bXSA9IFtdO1xyXG4gIHRmb290ITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgdmlydHVhbEJvZHkhOiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQ7XHJcbiAgdGhlYWRzQ2hhbmdlOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xyXG4gIGJvZHlDaGFuZ2UhOiAoKSA9PiB2b2lkO1xyXG4gIHNjcm9sbENvbnRlbnRFbGUhOiBIVE1MRWxlbWVudDtcclxuICBoYXNTY3JvbGxZID0gZmFsc2U7XHJcbiAgc2Nyb2xsWVdpZHRoID0gMDtcclxuICBoYXNTY3JvbGxYID0gZmFsc2U7XHJcbiAgc2Nyb2xsWEhlaWdodCA9IDA7XHJcbiAgc2Nyb2xsWFdpZHRoITogbnVtYmVyIHwgbnVsbDtcclxuICBzY3JvbGxMZWZ0ID0gMDtcclxuICBzY3JvbGxMZWZ0TWF4ID0gZmFsc2U7XHJcbiAgc2Nyb2xsVG9wID0gMDtcclxuICByb3dDaGVja2VkITogWFRhYmxlQ29sdW1uO1xyXG4gIGhlYWRDaGVja2JveExpc3QhOiBYVGFibGVDb2x1bW5bXTtcclxuICByb3dFeHBhbmQhOiBYVGFibGVDb2x1bW47XHJcbiAgaGVhZEV4cGFuZExpc3QhOiBYVGFibGVDb2x1bW5bXTtcclxuICBkYXRhSXNGdW5jID0gZmFsc2U7XHJcbiAgZ2V0dGluZyA9IGZhbHNlO1xyXG4gIHRhYmxlRGF0YTogWFRhYmxlUm93W10gPSBbXTtcclxuICB0cmVlVGFibGVEYXRhOiBYVGFibGVSb3dbXSA9IFtdO1xyXG4gIGNoZWNrZWRWYWx1ZXM6IHsgW3Byb3A6IHN0cmluZ106IGJvb2xlYW4gfSA9IHt9O1xyXG4gIGluZGV0ZXJtaW5hdGUgPSAnJCRpbmRldGVybWluYXRlJztcclxuICBAVmlld0NoaWxkKCd0YWJsZScpIHRhYmxlITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgQFZpZXdDaGlsZCgnY2FwdGlvbicpIGNhcHRpb24hOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdwYWdpbmF0aW9uJykgcGFnaW5hdGlvbiE6IFhQYWdpbmF0aW9uQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ3N0aWNreVRvcFJpZ2h0RWxlJykgc3RpY2t5VG9wUmlnaHRFbGUhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdzdGlja3lCb3R0b21SaWdodEVsZScpIHN0aWNreUJvdHRvbVJpZ2h0RWxlITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICAgIHRoaXMuc2V0Um93Q2hlY2tlZCgpO1xyXG4gICAgdGhpcy5zZXRSb3dFeHBhbmQoKTtcclxuICAgIHRoaXMuc2V0UGFnaW5hdGlvblBvc2l0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhzaW1wbGVzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIGNoZWNrZWRSb3csIGNvbHVtbnMsIGFjdGl2YXRlZFJvdywgbWFudWFsLCBzaG93UGFnaW5hdGlvbiwgZXhwYW5kZWRBbGwsIGNlbGxDb25maWcgfSA9IHNpbXBsZXM7XHJcbiAgICBYSXNDaGFuZ2UoZXhwYW5kZWRBbGwpICYmIHRoaXMuc2V0RXhwYW5kZWRBbGwoKTtcclxuICAgIFhJc0NoYW5nZShkYXRhLCBjaGVja2VkUm93KSAmJiB0aGlzLnNldERhdGEoKTtcclxuICAgIFhJc0NoYW5nZShjb2x1bW5zLCBhY3RpdmF0ZWRSb3csIHNob3dQYWdpbmF0aW9uKSAmJiB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICBYSXNDaGFuZ2UobWFudWFsKSAmJiB0aGlzLnNldE1hbnVhbCgpO1xyXG4gICAgWElzQ2hhbmdlKGNlbGxDb25maWcpICYmIHRoaXMuc2V0TWVyZ2UoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy50Y2FwdGlvbiA9IHRoaXMuY2FwdGlvbjtcclxuICB9XHJcblxyXG4gIHNldENsYXNzTWFwKCkge1xyXG4gICAgdGhpcy5jbGFzc01hcCA9IHtcclxuICAgICAgW2Ake1hUYWJsZVByZWZpeH0tcm93LXNpemUtJHt0aGlzLnJvd1NpemV9YF06ICFYSXNFbXB0eSh0aGlzLnJvd1NpemUpXHJcbiAgICB9O1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0UGFnaW5hdGlvblBvc2l0aW9uKCkge1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgYHgtdGFibGUtJHt0aGlzLnBhZ2luYXRpb25Qb3NpdGlvbn1gKTtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreShjb2x1bW46IFhUYWJsZUNvbHVtbiB8IFhUYWJsZUNlbGwpIHtcclxuICAgIHJldHVybiB0aGlzLmdldFN0aWNreUxlZnQoY29sdW1uKSB8fCB0aGlzLmdldFN0aWNreVJpZ2h0KGNvbHVtbik7XHJcbiAgfVxyXG5cclxuICBnZXRTdGlja3lMZWZ0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgcmV0dXJuIE51bWJlcihjb2x1bW4ubGVmdCkgPj0gMDtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreUxlZnRMYXN0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgbGV0IGxlZnRzID0gdGhpcy5jb2x1bW5zLmZpbHRlcigoeCkgPT4gTnVtYmVyKHgubGVmdCkgPj0gMCk7XHJcbiAgICBpZiAobGVmdHMubGVuZ3RoID09PSAwKSByZXR1cm4gZmFsc2U7XHJcbiAgICByZXR1cm4gbGVmdHNbbGVmdHMubGVuZ3RoIC0gMV0uaWQgPT09IGNvbHVtbi5pZDtcclxuICB9XHJcblxyXG4gIGdldFN0aWNreVJpZ2h0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgcmV0dXJuIE51bWJlcihjb2x1bW4ucmlnaHQpID49IDA7XHJcbiAgfVxyXG5cclxuICBnZXRTdGlja3lSaWdodEZpcnN0KGNvbHVtbjogWFRhYmxlQ29sdW1uIHwgWFRhYmxlQ2VsbCkge1xyXG4gICAgbGV0IHJpZ2h0cyA9IHRoaXMuY29sdW1ucy5maWx0ZXIoKHgpID0+IE51bWJlcih4LnJpZ2h0KSA+PSAwKTtcclxuICAgIGlmIChyaWdodHMubGVuZ3RoID09PSAwKSByZXR1cm4gZmFsc2U7XHJcbiAgICByZXR1cm4gcmlnaHRzWzBdLmlkID09PSBjb2x1bW4uaWQ7XHJcbiAgfVxyXG5cclxuICBoYXNTdGlja3lUb3BSaWdodCgpIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuc2hvd0hlYWRlciAmJlxyXG4gICAgICAodGhpcy5oZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcCcgfHwgdGhpcy5oZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcC1ib3R0b20nKSAmJlxyXG4gICAgICB0aGlzLmNvbHVtbnMuc29tZSgoeCkgPT4gTnVtYmVyKHgucmlnaHQpID49IDApXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgaGFzU3RpY2t5VG9wUmlnaHRTZWFyY2goKSB7XHJcbiAgICByZXR1cm4gdGhpcy5oZWFkU2VhcmNoVHBsID8gdHJ1ZSA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaGFzU3RpY2t5Qm90dG9tUmlnaHQoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLnNob3dIZWFkZXIgJiZcclxuICAgICAgKHRoaXMuaGVhZGVyUG9zaXRpb24gPT09ICdib3R0b20nIHx8IHRoaXMuaGVhZGVyUG9zaXRpb24gPT09ICd0b3AtYm90dG9tJykgJiZcclxuICAgICAgdGhpcy5jb2x1bW5zLnNvbWUoKHgpID0+IE51bWJlcih4LnJpZ2h0KSA+PSAwKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEluZGV4KGluZGV4OiBudW1iZXIpIHtcclxuICAgIHJldHVybiAoTnVtYmVyKHRoaXMuaW5kZXgpIC0gMSkgKiBOdW1iZXIodGhpcy5zaXplKSArIGluZGV4ICsgMTtcclxuICB9XHJcblxyXG4gIHNldERhdGEoKSB7XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmRhdGEpKSB7XHJcbiAgICAgIHRoaXMuZGF0YUlzRnVuYyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLnRhYmxlRGF0YSA9IHRoaXMuZGF0YTtcclxuICAgICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuZGF0YSk7XHJcbiAgICAgIHRoaXMuc2V0SGVhZENoZWNrYm94TGlzdCh0aGlzLmRhdGEpO1xyXG4gICAgICB0aGlzLnNldEV4cGFuZCh0aGlzLmRhdGEpO1xyXG4gICAgICB0aGlzLnNldEhlYWRFeHBhbmRMaXN0KCk7XHJcbiAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmRhdGEgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xyXG4gICAgICB0aGlzLmRhdGFJc0Z1bmMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERhdGFCeUZ1bmMoKSB7XHJcbiAgICBpZiAoIXRoaXMubWFudWFsKSByZXR1cm47XHJcbiAgICB0aGlzLmdldHRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgICh0aGlzLmRhdGEgYXMgRnVuY3Rpb24pKHRoaXMuaW5kZXgsIHRoaXMuc2l6ZSwgdGhpcy5xdWVyeSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHg6IFhSZXN1bHRMaXN0PFhUYWJsZVJvdz4pID0+IHtcclxuICAgICAgICBsZXQgW2RhdGEsIHRvdGFsXSA9IFt4Lmxpc3QgYXMgWFRhYmxlUm93W10sIHgudG90YWwgYXMgWE51bWJlcl07XHJcbiAgICAgICAgaWYgKHRoaXMudmlydHVhbEJvZHkpIHtcclxuICAgICAgICAgIHRoaXMudmlydHVhbEJvZHkuc2Nyb2xsVG9JbmRleCgwKTtcclxuICAgICAgICAgIHRoaXMudmlydHVhbEJvZHkuY2hlY2tWaWV3cG9ydFNpemUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXR0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50YWJsZURhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChkYXRhKTtcclxuICAgICAgICB0aGlzLnNldEhlYWRDaGVja2JveExpc3QoZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRFeHBhbmQoZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRIZWFkRXhwYW5kTGlzdCgpO1xyXG4gICAgICAgIHRoaXMudG90YWwgPSB0b3RhbDtcclxuICAgICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRNYW51YWwoKSB7XHJcbiAgICBpZiAodGhpcy5kYXRhSXNGdW5jKSB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICB9XHJcblxyXG4gIHNldFJvd0NoZWNrZWQoKSB7XHJcbiAgICB0aGlzLnJvd0NoZWNrZWQgPSB0aGlzLmNvbHVtbnMuZmluZCgoeCkgPT4geC5yb3dDaGVja2VkKSBhcyBYVGFibGVDb2x1bW47XHJcbiAgICB0aGlzLmhlYWRDaGVja2JveExpc3QgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKCh4KSA9PiB4LnR5cGUgPT09ICdjaGVja2JveCcgJiYgeC5oZWFkQ2hlY2tlZCk7XHJcbiAgfVxyXG5cclxuICBzZXRSb3dFeHBhbmQoKSB7XHJcbiAgICB0aGlzLnJvd0V4cGFuZCA9IHRoaXMuY29sdW1ucy5maW5kKCh4KSA9PiB4LnJvd0V4cGFuZCkgYXMgWFRhYmxlQ29sdW1uO1xyXG4gIH1cclxuXHJcbiAgaXNFeHBhbmRDb2x1bW4oY29sdW1uOiBYVGFibGVDb2x1bW4pIHtcclxuICAgIGxldCBleHBhbmRDb2x1bW4gPSB0aGlzLmNvbHVtbnMuZmluZCgoeCkgPT4geC5pZCA9PT0gY29sdW1uLmlkICYmIHgudHlwZSA9PT0gJ2V4cGFuZCcpO1xyXG4gICAgaWYgKGV4cGFuZENvbHVtbikge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHNldE1lcmdlKCkge1xyXG4gICAgaWYgKCF0aGlzLmNlbGxDb25maWcpIHJldHVybjtcclxuICAgIGNvbnN0IHNldFJ1bGUgPSAocnVsZT86IFhUYWJsZUNlbGxDb25maWdSdWxlKSA9PiB7XHJcbiAgICAgIGlmICghcnVsZSkgcmV0dXJuO1xyXG4gICAgICBsZXQgZ3JpZFRlbXBsYXRlQ29sdW1ucyA9ICcnLFxyXG4gICAgICAgIGNlbGxzID0gW107XHJcbiAgICAgIGlmICghcnVsZS5ncmlkVGVtcGxhdGVDb2x1bW5zKSB7XHJcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucyA9IGAke3RoaXMuY29sdW1uc1xyXG4gICAgICAgICAgLm1hcCgoeCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoeC53aWR0aCkgcmV0dXJuIHgud2lkdGg7XHJcbiAgICAgICAgICAgIGlmICh4LmZsZXgpIHJldHVybiBgJHt4LmZsZXh9ZnJgO1xyXG4gICAgICAgICAgICByZXR1cm4gJzFmcic7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLmpvaW4oJyAnKX1gO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghcnVsZS5jZWxscykgcmV0dXJuO1xyXG4gICAgICBjZWxscyA9IHJ1bGUuY2VsbHMubWFwKCh5KSA9PiB7XHJcbiAgICAgICAgY29uc3QgY29sID0gdGhpcy5jb2x1bW5zLmZpbmQoKHopID0+IHouaWQgPT09IHkuaWQpO1xyXG4gICAgICAgIGlmIChjb2wpIHtcclxuICAgICAgICAgIHJldHVybiB7IC4uLmNvbCwgLi4ueSB9IGFzIFhUYWJsZUNlbGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB5O1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHsgZ3JpZFRlbXBsYXRlQ29sdW1ucywgY2VsbHMgfTtcclxuICAgIH07XHJcbiAgICB0aGlzLmNlbGxDb25maWcudGhlYWQgPSBzZXRSdWxlKHRoaXMuY2VsbENvbmZpZy50aGVhZCk7XHJcbiAgICB0aGlzLmNlbGxDb25maWcudGJvZHkgPSBzZXRSdWxlKHRoaXMuY2VsbENvbmZpZy50Ym9keSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2UoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5pbmRleCA9IGluZGV4O1xyXG4gICAgdGhpcy5kYXRhSXNGdW5jICYmIHRoaXMuZ2V0RGF0YUJ5RnVuYygpO1xyXG4gICAgdGhpcy5pbmRleENoYW5nZS5lbWl0KGluZGV4KTtcclxuICAgIHRoaXMucmVzZXRTY3JvbGwoKTtcclxuICB9XHJcblxyXG4gIHJlc2V0U2Nyb2xsKHggPSB0cnVlLCB5ID0gdHJ1ZSkge1xyXG4gICAgaWYgKHRoaXMuaGFzU2Nyb2xsWCAmJiB4KSB0aGlzLnZpcnR1YWxCb2R5Py5zY3JvbGxUbyh7IGxlZnQ6IDAgfSk7XHJcbiAgICBpZiAodGhpcy5oYXNTY3JvbGxZICYmIHkpIHRoaXMudmlydHVhbEJvZHk/LnNjcm9sbFRvKHsgdG9wOiAwIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2hlY2tlZChkYXRhOiBYVGFibGVSb3dbXSkge1xyXG4gICAgbGV0IHJlc3VsdDogWFRhYmxlUm93W10gPSBbXTtcclxuICAgIGlmIChYSXNFbXB0eShkYXRhKSB8fCAhdGhpcy5jaGVja2VkUm93KSByZXR1cm47XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5jaGVja2VkUm93KSB7XHJcbiAgICAgIGNvbnN0IGFyciA9IHRoaXMuY2hlY2tlZFJvd1trZXldO1xyXG4gICAgICBmb3IgKGxldCBpdGVtIG9mIGRhdGEgYXMgYW55W10pIHtcclxuICAgICAgICBpdGVtW2tleV0gPSBhcnIuaW5jbHVkZXMoaXRlbS5pZCk7XHJcbiAgICAgICAgcmVzdWx0ID0gWy4uLnJlc3VsdCwgaXRlbV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChyZXN1bHQubGVuZ3RoID4gMCkgZGF0YSA9IFsuLi5yZXN1bHRdO1xyXG4gIH1cclxuXHJcbiAgc2V0SGVhZENoZWNrYm94TGlzdChkYXRhOiBYVGFibGVSb3dbXSkge1xyXG4gICAgaWYgKFhJc0VtcHR5KGRhdGEpIHx8ICF0aGlzLmhlYWRDaGVja2JveExpc3QpIHJldHVybjtcclxuICAgIGZvciAobGV0IGNvbHVtbiBvZiB0aGlzLmhlYWRDaGVja2JveExpc3QpIHtcclxuICAgICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRFeHBhbmQoZGF0YTogWFRhYmxlUm93W10pIHtcclxuICAgIGNvbnN0IGdldENoaWxkcmVuID0gKG5vZGU6IFhUYWJsZVJvdywgbGV2ZWw6IG51bWJlcikgPT4ge1xyXG4gICAgICBub2RlLmxldmVsID0gbGV2ZWw7XHJcbiAgICAgIG5vZGUuZXhwYW5kZWQgPSBCb29sZWFuKHRoaXMuZXhwYW5kZWRBbGwpIHx8IGxldmVsIDw9IHRoaXMuZXhwYW5kZWRMZXZlbCB8fCB0aGlzLmV4cGFuZGVkLmluY2x1ZGVzKG5vZGUuaWQpO1xyXG4gICAgICBpZiAoWElzVW5kZWZpbmVkKG5vZGUuY2hpbGRyZW4pKSBub2RlLmNoaWxkcmVuID0gZGF0YS5maWx0ZXIoKHkpID0+IHkucGlkID09PSBub2RlLmlkKTtcclxuICAgICAgaWYgKFhJc1VuZGVmaW5lZChub2RlLmxlYWYpKSBub2RlLmxlYWYgPSAobm9kZS5jaGlsZHJlbj8ubGVuZ3RoIGFzIG51bWJlcikgPiAwO1xyXG4gICAgICBpZiAobm9kZS5sZWFmKSBub2RlLmNoaWxkcmVuPy5tYXAoKHkpID0+IGdldENoaWxkcmVuKHksIGxldmVsICsgMSkpO1xyXG4gICAgICByZXR1cm4gbm9kZTtcclxuICAgIH07XHJcbiAgICB0aGlzLnRyZWVUYWJsZURhdGEgPSBkYXRhXHJcbiAgICAgIC5maWx0ZXIoKHgpID0+IFhJc0VtcHR5KHgucGlkKSlcclxuICAgICAgLm1hcCgoeCwgaW5kZXgpID0+IHtcclxuICAgICAgICBpZiAoWElzVW5kZWZpbmVkKHguaWQpKSB4LmlkID0gaW5kZXggKyAxO1xyXG4gICAgICAgIHJldHVybiBnZXRDaGlsZHJlbih4LCAwKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRFeHBhbmRlZEFsbCgpIHtcclxuICAgIGlmICghdGhpcy50cmVlVGFibGUgfHwgdGhpcy50cmVlVGFibGVEYXRhPy5sZW5ndGggPT09IDApIHJldHVybjtcclxuICAgIGNvbnN0IHNldENoaWxkcmVuID0gKG5vZGVzOiBYVGFibGVSb3dbXSkgPT4ge1xyXG4gICAgICBpZiAoWElzRW1wdHkobm9kZXMpKSByZXR1cm47XHJcbiAgICAgIG5vZGVzLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgICB4LmV4cGFuZGVkID0gQm9vbGVhbih0aGlzLmV4cGFuZGVkQWxsKTtcclxuICAgICAgICBzZXRDaGlsZHJlbih4LmNoaWxkcmVuIGFzIFhUYWJsZVJvd1tdKTtcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgc2V0Q2hpbGRyZW4odGhpcy50cmVlVGFibGVEYXRhKTtcclxuICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0SGVhZEV4cGFuZExpc3QoKSB7fVxyXG5cclxuICBjaGVja1NvcnQoc29ydDogWFNvcnRbXSkge1xyXG4gICAgaWYgKCF0aGlzLmRhdGFJc0Z1bmMpIHJldHVybjtcclxuICAgIGlmICh0eXBlb2YgdGhpcy5xdWVyeSA9PT0gJ3VuZGVmaW5lZCcpIHRoaXMucXVlcnkgPSB7fTtcclxuICAgIHRoaXMucXVlcnkuc29ydCA9IHNvcnQ7XHJcbiAgICB0aGlzLnF1ZXJ5Q2hhbmdlLmVtaXQodGhpcy5xdWVyeSk7XHJcbiAgICB0aGlzLmdldERhdGFCeUZ1bmMoKTtcclxuICB9XHJcblxyXG4gIGhlYWRDaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4sIGNvbHVtbjogWFRhYmxlQ29sdW1uKSB7XHJcbiAgICB0aGlzLnRhYmxlRGF0YS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgIGlmICgheC5kaXNhYmxlZCkge1xyXG4gICAgICAgIHhbY29sdW1uLmlkXSA9IGNoZWNrZWQ7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB0aGlzLmhlYWRDaGVja2JveENoYW5nZS5lbWl0KHRoaXMuY2hlY2tlZFZhbHVlcyk7XHJcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIGJvZHlDaGVja2VkKF9jaGVja2VkOiBib29sZWFuLCBjb2x1bW46IFhUYWJsZUNvbHVtbikge1xyXG4gICAgdGhpcy5zZXRDaGVja2VkVmFsdWVzKGNvbHVtbik7XHJcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNldENoZWNrZWRWYWx1ZXMoY29sdW1uOiBYVGFibGVDb2x1bW4pIHtcclxuICAgIGNvbnN0IG5vdERpc2FibGVkID0gdGhpcy50YWJsZURhdGEuZmlsdGVyKCh4KSA9PiAheC5kaXNhYmxlZCk7XHJcbiAgICBjb25zdCBjb3VudCA9IG5vdERpc2FibGVkLmxlbmd0aDtcclxuICAgIGNvbnN0IGNoZWNrZWRMZW4gPSBub3REaXNhYmxlZC5maWx0ZXIoKHgpID0+IHhbY29sdW1uLmlkXSkubGVuZ3RoO1xyXG4gICAgdGhpcy5jaGVja2VkVmFsdWVzW2NvbHVtbi5pZF0gPSBjb3VudCA9PT0gY2hlY2tlZExlbiAmJiBjb3VudCAhPT0gMDtcclxuICAgIHRoaXMuY2hlY2tlZFZhbHVlc1tjb2x1bW4uaWQgKyB0aGlzLmluZGV0ZXJtaW5hdGVdID0gY2hlY2tlZExlbiA+IDAgJiYgY2hlY2tlZExlbiA8IGNvdW50O1xyXG4gIH1cclxuXHJcbiAgZGV0ZWN0Q2hhbmdlcygpIHtcclxuICAgIHRoaXMuYm9keUNoYW5nZSAmJiB0aGlzLmJvZHlDaGFuZ2UoKTtcclxuICAgIHRoaXMudGhlYWRzQ2hhbmdlcygpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdGhlYWRzQ2hhbmdlcygpIHtcclxuICAgIGlmICh0aGlzLnRoZWFkc0NoYW5nZSAmJiB0aGlzLnRoZWFkc0NoYW5nZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGZvciAobGV0IGl0ZW0gb2YgdGhpcy50aGVhZHNDaGFuZ2UpIHtcclxuICAgICAgICBpdGVtKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHRhYmxlXHJcbiAgI3RhYmxlXHJcbiAgY2xhc3M9XCJ4LXRhYmxlXCJcclxuICBbbmdDbGFzc109XCJjbGFzc01hcFwiXHJcbiAgW3gtbG9hZGluZ109XCJsb2FkaW5nICYmIGdldHRpbmdcIlxyXG4gIFtjbGFzcy54LXRhYmxlLXdyYXAtYm9yZGVyLWhpZGRlbl09XCJoaWRkZW5XcmFwQm9yZGVyXCJcclxuICBbY2xhc3MueC10YWJsZS1zY3JvbGwtbGVmdF09XCJnZXRTY3JvbGxMZWZ0XCJcclxuICBbY2xhc3MueC10YWJsZS1zY3JvbGwtbGVmdC1tYXhdPVwic2Nyb2xsTGVmdE1heFwiXHJcbiAgW2NsYXNzLngtdGFibGUtc2Nyb2xsLXRvcF09XCJnZXRTY3JvbGxUb3BcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWhhcy1zY3JvbGwtcmlnaHRdPVwic2Nyb2xsWVdpZHRoXCJcclxuICBbY2xhc3MueC10YWJsZS1oYXMtc2Nyb2xsLWJvdHRvbV09XCJzY3JvbGxYV2lkdGhcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWJvcmRlcmVkXT1cImJvcmRlcmVkXCJcclxuICBbY2xhc3MueC10YWJsZS10ZC1hZGFwdGlvbi1oZWlnaHRdPVwicm93SGVpZ2h0ID09IDBcIlxyXG4gIFtjbGFzcy54LXRhYmxlLWNlbGwtY29uZmlnXT1cImNlbGxDb25maWdcIlxyXG4+XHJcbiAgPGNhcHRpb24gI2NhcHRpb24gY2xhc3M9XCJ4LXRhYmxlLWhlYWRlclwiICpuZ0lmPVwiaGVhZGVyXCIgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIiBbc3R5bGUubWluLWhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJoZWFkZXJcIj57eyBoZWFkZXIgfX08L25nLWNvbnRhaW5lcj5cclxuICA8L2NhcHRpb24+XHJcbiAgPHgtdGFibGUtaGVhZFxyXG4gICAgKm5nSWY9XCJzaG93SGVhZGVyICYmIChoZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcCcgfHwgaGVhZGVyUG9zaXRpb24gPT09ICd0b3AtYm90dG9tJylcIlxyXG4gICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAgICBbcm93SGVpZ2h0XT1cInJvd0hlaWdodFwiXHJcbiAgICBbY29sdW1uVHBsXT1cImhlYWRDb2x1bW5UcGxcIlxyXG4gICAgW3Njcm9sbFlXaWR0aF09XCJzY3JvbGxZV2lkdGhcIlxyXG4gICAgW3Njcm9sbFhXaWR0aF09XCJzY3JvbGxYV2lkdGhcIlxyXG4gICAgW2NlbGxDb25maWddPVwiY2VsbENvbmZpZz8udGhlYWRcIlxyXG4gICAgW3Bvc2l0aW9uXT1cIid0b3AnXCJcclxuICAgIFt0YWJsZV09XCJ0aGlzXCJcclxuICA+PC94LXRhYmxlLWhlYWQ+XHJcbiAgPHgtdGFibGUtYm9keVxyXG4gICAgW2RhdGFdPVwidHJlZVRhYmxlID8gdHJlZVRhYmxlRGF0YSA6IHRhYmxlRGF0YVwiXHJcbiAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcclxuICAgIFtpdGVtU2l6ZV09XCJpdGVtU2l6ZVwiXHJcbiAgICBbcm93SGVpZ2h0XT1cInJvd0hlaWdodFwiXHJcbiAgICBbYm9keUhlaWdodF09XCJib2R5SGVpZ2h0XCJcclxuICAgIFtjb2x1bW5UcGxdPVwiYm9keUNvbHVtblRwbFwiXHJcbiAgICBbYWxsb3dTZWxlY3RSb3ddPVwiYWxsb3dTZWxlY3RSb3dcIlxyXG4gICAgW3ZpcnR1YWxTY3JvbGxdPVwidmlydHVhbFNjcm9sbFwiXHJcbiAgICBbbWluQnVmZmVyUHhdPVwibWluQnVmZmVyUHhcIlxyXG4gICAgW21heEJ1ZmZlclB4XT1cIm1heEJ1ZmZlclB4XCJcclxuICAgIFthZGFwdGlvbkhlaWdodF09XCJhZGFwdGlvbkhlaWdodFwiXHJcbiAgICBbZG9jUGVyY2VudF09XCJkb2NQZXJjZW50XCJcclxuICAgIFtzY3JvbGxdPVwic2Nyb2xsXCJcclxuICAgIFtyb3dDbGFzc109XCJyb3dDbGFzc1wiXHJcbiAgICBbY2VsbENvbmZpZ109XCJjZWxsQ29uZmlnPy50Ym9keVwiXHJcbiAgICBbZXhwYW5kZWRBbGxdPVwiZXhwYW5kZWRBbGxcIlxyXG4gICAgW2V4cGFuZFRwbF09XCJleHBhbmRUcGxcIlxyXG4gICAgWyhhY3RpdmF0ZWRSb3cpXT1cImFjdGl2YXRlZFJvd1wiXHJcbiAgICAoYWN0aXZhdGVkUm93Q2hhbmdlKT1cImFjdGl2YXRlZFJvd0NoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgW3RhYmxlXT1cInRoaXNcIlxyXG4gID48L3gtdGFibGUtYm9keT5cclxuICA8eC10YWJsZS1oZWFkXHJcbiAgICAqbmdJZj1cInNob3dIZWFkZXIgJiYgKGhlYWRlclBvc2l0aW9uID09PSAnYm90dG9tJyB8fCBoZWFkZXJQb3NpdGlvbiA9PT0gJ3RvcC1ib3R0b20nKVwiXHJcbiAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcclxuICAgIFtyb3dIZWlnaHRdPVwicm93SGVpZ2h0XCJcclxuICAgIFtjb2x1bW5UcGxdPVwiaGVhZENvbHVtblRwbFwiXHJcbiAgICBbc2Nyb2xsWVdpZHRoXT1cInNjcm9sbFlXaWR0aFwiXHJcbiAgICBbc2Nyb2xsWFdpZHRoXT1cInNjcm9sbFhXaWR0aFwiXHJcbiAgICBbY2VsbENvbmZpZ109XCJjZWxsQ29uZmlnPy50aGVhZFwiXHJcbiAgICBbcG9zaXRpb25dPVwiJ2JvdHRvbSdcIlxyXG4gICAgW3RhYmxlXT1cInRoaXNcIlxyXG4gID48L3gtdGFibGUtaGVhZD5cclxuICA8eC10YWJsZS1mb290ICpuZ0lmPVwiZm9vdGVyXCIgW3RhYmxlXT1cInRoaXNcIiBbZm9vdGVyXT1cImZvb3RlclwiIFtyb3dIZWlnaHRdPVwicm93SGVpZ2h0XCI+PC94LXRhYmxlLWZvb3Q+XHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJoYXNTdGlja3lUb3BSaWdodCgpXCJcclxuICAgICNzdGlja3lUb3BSaWdodEVsZVxyXG4gICAgY2xhc3M9XCJ4LXRhYmxlLXN0aWNreS1yaWdodC1zY3JvbGxcIlxyXG4gICAgW2NsYXNzLngtdGFibGUtYm9yZGVyLWJvdHRvbV09XCJoZWFkU2VhcmNoVHBsXCJcclxuICAgIFtzdHlsZS50b3AucHhdPVwiZ2V0U3RpY2t5VG9wU2Nyb2xsVG9wXCJcclxuICAgIFtzdHlsZS53aWR0aC5weF09XCJzY3JvbGxZV2lkdGhcIlxyXG4gICAgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIlxyXG4gICAgW3N0eWxlLm1pbi1oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0XCJcclxuICA+PC9kaXY+XHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJoYXNTdGlja3lUb3BSaWdodCgpICYmIGhlYWRTZWFyY2hUcGxcIlxyXG4gICAgY2xhc3M9XCJ4LXRhYmxlLXN0aWNreS1yaWdodC1zY3JvbGxcIlxyXG4gICAgW3N0eWxlLnRvcC5weF09XCJnZXRTdGlja3lUb3BTY3JvbGxUb3AgKyBnZXRTdGlja3lUb3BSaWdodEVsZUhlaWdodFwiXHJcbiAgICBbc3R5bGUud2lkdGgucHhdPVwic2Nyb2xsWVdpZHRoXCJcclxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0XCJcclxuICAgIFtzdHlsZS5taW4taGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodFwiXHJcbiAgPjwvZGl2PlxyXG4gIDxkaXZcclxuICAgICpuZ0lmPVwiaGFzU3RpY2t5Qm90dG9tUmlnaHQoKVwiXHJcbiAgICAjc3RpY2t5Qm90dG9tUmlnaHRFbGVcclxuICAgIGNsYXNzPVwieC10YWJsZS1zdGlja3ktcmlnaHQtc2Nyb2xsXCJcclxuICAgIFtzdHlsZS5ib3R0b20ucHhdPVwiZ2V0U3RpY2t5Qm90dG9tU2Nyb2xsVG9wXCJcclxuICAgIFtzdHlsZS53aWR0aC5weF09XCJzY3JvbGxZV2lkdGhcIlxyXG4gICAgW3N0eWxlLmhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIlxyXG4gICAgW3N0eWxlLm1pbi1oZWlnaHQucHhdPVwiZ2V0Um93SGVpZ2h0XCJcclxuICA+PC9kaXY+XHJcbiAgPGRpdlxyXG4gICAgKm5nSWY9XCJoYXNTdGlja3lCb3R0b21SaWdodCgpICYmIGhlYWRTZWFyY2hUcGxcIlxyXG4gICAgY2xhc3M9XCJ4LXRhYmxlLXN0aWNreS1yaWdodC1zY3JvbGxcIlxyXG4gICAgW2NsYXNzLngtdGFibGUtYm9yZGVyLWJvdHRvbV09XCJoZWFkU2VhcmNoVHBsXCJcclxuICAgIFtzdHlsZS5ib3R0b20ucHhdPVwiZ2V0U3RpY2t5Qm90dG9tU2Nyb2xsVG9wICsgZ2V0U3RpY2t5Qm90dG9tUmlnaHRFbGVIZWlnaHRcIlxyXG4gICAgW3N0eWxlLndpZHRoLnB4XT1cInNjcm9sbFlXaWR0aFwiXHJcbiAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImdldFJvd0hlaWdodFwiXHJcbiAgICBbc3R5bGUubWluLWhlaWdodC5weF09XCJnZXRSb3dIZWlnaHRcIlxyXG4gID48L2Rpdj5cclxuPC90YWJsZT5cclxuPHgtcGFnaW5hdGlvblxyXG4gICNwYWdpbmF0aW9uXHJcbiAgKm5nSWY9XCJzaG93UGFnaW5hdGlvbiAmJiBzaXplXCJcclxuICBbKGluZGV4KV09XCJpbmRleFwiXHJcbiAgWyhzaXplKV09XCJzaXplXCJcclxuICBbKHF1ZXJ5KV09XCJxdWVyeVwiXHJcbiAgW3RvdGFsXT1cInRvdGFsXCJcclxuICAoaW5kZXhDaGFuZ2UpPVwiY2hhbmdlKCRldmVudClcIlxyXG4gIFtzaG93RWxsaXBzaXNdPVwic2hvd0VsbGlwc2lzXCJcclxuICBbc2hvd1RvdGFsXT1cInNob3dUb3RhbFwiXHJcbiAgW3NwYWNlXT1cInNwYWNlXCJcclxuICBbaGlkZGVuQm9yZGVyXT1cImhpZGRlblBhZ2luYXRpb25Cb3JkZXIhXCJcclxuPlxyXG48L3gtcGFnaW5hdGlvbj5cclxuIl19
@@ -19,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
19
19
  }], active: [{
20
20
  type: Input
21
21
  }] } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFicy90YWItY29udGVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90YWJzL3RhYi1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFFTCxpQkFBaUIsRUFHbEIsTUFBTSxlQUFlLENBQUM7OztBQVV2QixNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQW9CLFVBQXNCLEVBQVUsUUFBbUI7UUFBbkQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFEOUQsV0FBTSxHQUFhLEtBQUssQ0FBQztRQUVoQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUN6RSxDQUFDOztvSUFMVSxvQkFBb0I7d0hBQXBCLG9CQUFvQix1R0NsQmpDLHVHQUdBOzJGRGVhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDRSxlQUFlLHVCQUNKLEtBQUssaUJBQ1gsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTt5SEFJdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgUmVuZGVyZXIyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhCb29sZWFuIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3gtdGFiLWNvbnRlbnQnLFxyXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1jb250ZW50LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRhYkNvbnRlbnRDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGNvbnRlbnQhOiBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuICBASW5wdXQoKSBhY3RpdmU6IFhCb29sZWFuID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd4LXRhYi1jb250ZW50Jyk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXI+XHJcbiAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFicy90YWItY29udGVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90YWJzL3RhYi1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFFTCxpQkFBaUIsRUFHbEIsTUFBTSxlQUFlLENBQUM7OztBQVV2QixNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQW9CLFVBQW1DLEVBQVUsUUFBbUI7UUFBaEUsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRDNFLFdBQU0sR0FBYSxLQUFLLENBQUM7UUFFaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDekUsQ0FBQzs7b0lBTFUsb0JBQW9CO3dIQUFwQixvQkFBb0IsdUdDbEJqQyx1R0FHQTsyRkRlYSxvQkFBb0I7a0JBUGhDLFNBQVM7K0JBQ0UsZUFBZSx1QkFDSixLQUFLLGlCQUNYLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07eUhBSXRDLE9BQU87c0JBQWYsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBFbGVtZW50UmVmLFxyXG4gIFJlbmRlcmVyMlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYQm9vbGVhbiB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd4LXRhYi1jb250ZW50JyxcclxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItY29udGVudC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWJDb250ZW50Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBjb250ZW50ITogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgQElucHV0KCkgYWN0aXZlOiBYQm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3gtdGFiLWNvbnRlbnQnKTtcclxuICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lcj5cclxuICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFwiPjwvbmctdGVtcGxhdGU+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
@@ -19,9 +19,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
19
19
  args: ['contentTpl', { static: true }]
20
20
  }], linkTemplateDirective: [{
21
21
  type: ContentChild,
22
- args: [XTabLinkTemplateDirective, { static: false }]
22
+ args: [XTabLinkTemplateDirective]
23
23
  }], linkDirective: [{
24
24
  type: ContentChild,
25
- args: [XTabLinkDirective, { static: false }]
25
+ args: [XTabLinkDirective]
26
26
  }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RhYnMvdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RhYnMvdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFlLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFRcEYsTUFBTSxPQUFPLGFBQWMsU0FBUSxZQUFZO0lBSzdDLFlBQW1CLGFBQTZCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBRFMsa0JBQWEsR0FBYixhQUFhLENBQWdCO0lBRWhELENBQUM7OzZIQVBVLGFBQWE7aUhBQWIsYUFBYSxnR0FFVix5QkFBeUIsZ0ZBQ3pCLGlCQUFpQiw0TENkakMsc0xBTUE7MkZES2EsYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxHQUFHLFVBQVUsRUFBRSxpQkFFVixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3FHQUdKLE9BQU87c0JBQWpELFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDbUIscUJBQXFCO3NCQUFoRixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDTixhQUFhO3NCQUFoRSxZQUFZO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRhYlByZWZpeCwgWFRhYlByb3BlcnR5IH0gZnJvbSAnLi90YWJzLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWFRhYkxpbmtEaXJlY3RpdmUsIFhUYWJMaW5rVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuL3RhYi1saW5rLmRpcmVjdGl2ZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WFRhYlByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWJDb21wb25lbnQgZXh0ZW5kcyBYVGFiUHJvcGVydHkge1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnRUcGwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb250ZW50ITogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgQENvbnRlbnRDaGlsZChYVGFiTGlua1RlbXBsYXRlRGlyZWN0aXZlLCB7IHN0YXRpYzogZmFsc2UgfSkgbGlua1RlbXBsYXRlRGlyZWN0aXZlITogWFRhYkxpbmtUZW1wbGF0ZURpcmVjdGl2ZTtcclxuICBAQ29udGVudENoaWxkKFhUYWJMaW5rRGlyZWN0aXZlLCB7IHN0YXRpYzogZmFsc2UgfSkgbGlua0RpcmVjdGl2ZSE6IFhUYWJMaW5rRGlyZWN0aXZlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSAjdGFiTGlua1RwbD5cclxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbeC10YWItbGlua11cIj48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjY29udGVudFRwbD5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RhYnMvdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RhYnMvdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFlLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFRcEYsTUFBTSxPQUFPLGFBQWMsU0FBUSxZQUFZO0lBSzdDLFlBQW1CLGFBQTZCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBRFMsa0JBQWEsR0FBYixhQUFhLENBQWdCO0lBRWhELENBQUM7OzZIQVBVLGFBQWE7aUhBQWIsYUFBYSxnR0FFVix5QkFBeUIsZ0ZBQ3pCLGlCQUFpQiw0TENkakMsc0xBTUE7MkZES2EsYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxHQUFHLFVBQVUsRUFBRSxpQkFFVixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3FHQUdKLE9BQU87c0JBQWpELFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDQSxxQkFBcUI7c0JBQTdELFlBQVk7dUJBQUMseUJBQXlCO2dCQUNOLGFBQWE7c0JBQTdDLFlBQVk7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVGFiUHJlZml4LCBYVGFiUHJvcGVydHkgfSBmcm9tICcuL3RhYnMucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYQ29uZmlnU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBYVGFiTGlua0RpcmVjdGl2ZSwgWFRhYkxpbmtUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vdGFiLWxpbmsuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVGFiUHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi5jb21wb25lbnQuaHRtbCcsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRhYkNvbXBvbmVudCBleHRlbmRzIFhUYWJQcm9wZXJ0eSB7XHJcbiAgQFZpZXdDaGlsZCgnY29udGVudFRwbCcsIHsgc3RhdGljOiB0cnVlIH0pIGNvbnRlbnQhOiBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuICBAQ29udGVudENoaWxkKFhUYWJMaW5rVGVtcGxhdGVEaXJlY3RpdmUpIGxpbmtUZW1wbGF0ZURpcmVjdGl2ZSE6IFhUYWJMaW5rVGVtcGxhdGVEaXJlY3RpdmU7XHJcbiAgQENvbnRlbnRDaGlsZChYVGFiTGlua0RpcmVjdGl2ZSkgbGlua0RpcmVjdGl2ZSE6IFhUYWJMaW5rRGlyZWN0aXZlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSAjdGFiTGlua1RwbD5cclxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbeC10YWItbGlua11cIj48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjY29udGVudFRwbD5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -186,9 +186,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
186
186
  args: [XTabComponent]
187
187
  }], slider: [{
188
188
  type: ViewChild,
189
- args: [XSliderComponent, { static: false }]
189
+ args: [XSliderComponent]
190
190
  }], actionsRef: [{
191
191
  type: ViewChild,
192
- args: ['actionsRef', { static: false }]
192
+ args: ['actionsRef']
193
193
  }] } });
194
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90YWJzL3RhYnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFicy90YWJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsdUJBQXVCLEVBSXZCLGVBQWUsRUFDZixTQUFTLEVBQ1QsaUJBQWlCLEVBS2pCLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFhLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBa0IsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFzQixNQUFNLGlCQUFpQixDQUFDOzs7Ozs7O0FBU3BFLE1BQU0sT0FBTyxjQUFlLFNBQVEsYUFBYTtJQWdCL0MsWUFDVSxHQUFzQixFQUN2QixhQUE2QixFQUM3QixRQUFtQixFQUNOLE1BQWM7UUFFbEMsS0FBSyxFQUFFLENBQUM7UUFMQSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNOLFdBQU0sR0FBTixNQUFNLENBQVE7UUFuQnBDLGlCQUFZLEdBQUcsSUFBSSxl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QzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDOUYsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFdBQVcsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsS0FBSyxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFdBQVcsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDMUYsQ0FBQzs7OEhBck1VLGNBQWM7a0hBQWQsY0FBYyx1RUFXUixhQUFhLHFFQUVuQixnQkFBZ0IsdUxDM0M3QixrekNBZ0NBOzJGREZhLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsR0FBRyxXQUFXLEVBQUUsaUJBR1gsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBc0I1QyxRQUFROzRDQVRxQixRQUFRO3NCQUF2QyxlQUFlO3VCQUFDLGFBQWE7Z0JBRWtCLE1BQU07c0JBQXJELFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNGLFVBQVU7c0JBQXJELFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIFNpbXBsZUNoYW5nZSxcclxuICBRdWVyeUxpc3QsXHJcbiAgRWxlbWVudFJlZixcclxuICBSZW5kZXJlcjIsXHJcbiAgT3B0aW9uYWxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRhYnNQcmVmaXgsIFhUYWJzTm9kZSwgWFRhYnNQcm9wZXJ0eSB9IGZyb20gJy4vdGFicy5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhJc0NoYW5nZSwgWFNldERhdGEsIFhJc0VtcHR5LCBYQ29uZmlnU2VydmljZSwgWFJlc2l6ZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIHN0YXJ0V2l0aCwgZGVsYXkgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgWFNsaWRlckNvbXBvbmVudCwgWFNsaWRlclByb3BlcnR5IH0gZnJvbSAnQG5nLW5lc3QvdWkvc2xpZGVyJztcclxuaW1wb3J0IHsgWFRhYkNvbXBvbmVudCB9IGZyb20gJy4vdGFiLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciwgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WFRhYnNQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFicy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUvaW5kZXguc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWJzQ29tcG9uZW50IGV4dGVuZHMgWFRhYnNQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBzbGlkZXJPcHRpb24gPSBuZXcgWFNsaWRlclByb3BlcnR5KCk7XHJcbiAgdGFiczogWFRhYnNOb2RlW10gPSBbXTtcclxuICBwcml2YXRlIF91blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIHByaXZhdGUgX3RhYnNDb250ZW50Q2hhbmdlID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIHByaXZhdGUgX3Jlc2l6ZU9ic2VydmVyITogUmVzaXplT2JzZXJ2ZXI7XHJcblxyXG4gIGdldCBhY3RpdmVJbmRleCgpIHtcclxuICAgIHJldHVybiBOdW1iZXIodGhpcy5hY3RpdmF0ZWRJbmRleCk7XHJcbiAgfVxyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFhUYWJDb21wb25lbnQpIGxpc3RUYWJzITogUXVlcnlMaXN0PFhUYWJDb21wb25lbnQ+O1xyXG5cclxuICBAVmlld0NoaWxkKFhTbGlkZXJDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBzbGlkZXIhOiBYU2xpZGVyQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2FjdGlvbnNSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSkgYWN0aW9uc1JlZiE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IFhDb25maWdTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJvdXRlcjogUm91dGVyXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICB0aGlzLnNldFNsaWRlck9wdGlvbigpO1xyXG4gICAgdGhpcy5zZXROb2RlSnVzdGlmeSgpO1xyXG4gICAgdGhpcy5zZXRTdWJqZWN0KCk7XHJcbiAgICB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgbGF5b3V0LCBqdXN0aWZ5LCBhY3RpdmF0ZWRJbmRleCB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShkYXRhKSAmJiB0aGlzLnNldERhdGEoKTtcclxuICAgIFhJc0NoYW5nZShsYXlvdXQpICYmIHRoaXMuc2V0TGF5b3V0KGxheW91dCk7XHJcbiAgICBYSXNDaGFuZ2UoanVzdGlmeSkgJiYgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgWElzQ2hhbmdlKGFjdGl2YXRlZEluZGV4KSAmJiB0aGlzLnNldEFjdGl2YXRlZEluZGV4KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QudW5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyPy5kaXNjb25uZWN0KCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50YWJzLmxlbmd0aCAhPT0gdGhpcy5saXN0VGFicy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5fdGFic0NvbnRlbnRDaGFuZ2UubmV4dChgJHt0aGlzLnRhYnMubGVuZ3RofS0ke3RoaXMubGlzdFRhYnMubGVuZ3RofWApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5zZXRTbGlkZXJXaWR0aCgpO1xyXG4gICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0Um91dGVyKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldFNsaWRlcldpZHRoKCkge1xyXG4gICAgaWYgKHRoaXMuc2xpZGVyICYmIHRoaXMuYWN0aW9uc1JlZikge1xyXG4gICAgICBYUmVzaXplKHRoaXMuYWN0aW9uc1JlZi5uYXRpdmVFbGVtZW50KVxyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyID0geC5yZXNpemVPYnNlcnZlcjtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoXHJcbiAgICAgICAgICAgIHRoaXMuc2xpZGVyLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgJ3dpZHRoJyxcclxuICAgICAgICAgICAgYGNhbGMoMTAwJSAtICR7dGhpcy5hY3Rpb25zUmVmLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGh9cHgpYFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFN1YmplY3QoKSB7XHJcbiAgICB0aGlzLl90YWJzQ29udGVudENoYW5nZS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0Um91dGVyKCkge1xyXG4gICAgaWYgKCF0aGlzLmxpbmtSb3V0ZXIpIHJldHVybjtcclxuICAgIGlmICghdGhpcy5yb3V0ZXIpIHtcclxuICAgICAgY29uc29sZS53YXJuKGAke1hUYWJzUHJlZml4fTogeW91IHNob3VsZCBpbXBvcnQgJ1JvdXRlck1vZHVsZScgaWYgeW91IHdhbnQgdG8gdXNlICdsaW5rUm91dGVyJyFgKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigoeCkgPT4geCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxyXG4gICAgICAgIHN0YXJ0V2l0aCh0cnVlKSxcclxuICAgICAgICBkZWxheSgwKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMudXBkYXRlUm91dGVyQWN0aXZlKCk7XHJcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlUm91dGVyQWN0aXZlKCkge1xyXG4gICAgaWYgKCF0aGlzLnJvdXRlci5uYXZpZ2F0ZWQpIHJldHVybjtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5maW5kU2hvdWxkQWN0aXZlVGFiSW5kZXgoKTtcclxuICAgIGlmIChpbmRleCAhPT0gLTEgJiYgaW5kZXggIT09IHRoaXMuYWN0aXZlSW5kZXgpIHtcclxuICAgICAgdGhpcy5hY3RpdmF0ZWRJbmRleCA9IGluZGV4O1xyXG4gICAgICB0aGlzLnNldEFjdGl2YXRlZEluZGV4KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmaW5kU2hvdWxkQWN0aXZlVGFiSW5kZXgoKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IHRhYnMgPSB0aGlzLmxpc3RUYWJzLnRvQXJyYXkoKTtcclxuICAgIGNvbnN0IGlzQWN0aXZlID0gdGhpcy5pc0xpbmtBY3RpdmUodGhpcy5yb3V0ZXIpO1xyXG5cclxuICAgIHJldHVybiB0YWJzLmZpbmRJbmRleCgodGFiKSA9PiB7XHJcbiAgICAgIGNvbnN0IGMgPSB0YWIubGlua0RpcmVjdGl2ZTtcclxuICAgICAgcmV0dXJuIGMgPyBpc0FjdGl2ZShjLnJvdXRlckxpbmspIHx8IGlzQWN0aXZlKGMucm91dGVyTGlua1dpdGhIcmVmKSA6IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBpc0xpbmtBY3RpdmUocm91dGVyOiBSb3V0ZXIpOiAobGluaz86IFJvdXRlckxpbmsgfCBSb3V0ZXJMaW5rKSA9PiBib29sZWFuIHtcclxuICAgIHJldHVybiAobGluaz86IFJvdXRlckxpbmsgfCBSb3V0ZXJMaW5rKSA9PiB7XHJcbiAgICAgIHJldHVybiBsaW5rID8gcm91dGVyLmlzQWN0aXZlKGxpbmsudXJsVHJlZSEsIEJvb2xlYW4odGhpcy5saW5rRXhhY3QpKSA6IGZhbHNlO1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGFjdGl2YXRlZENoYW5nZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmFjdGl2YXRlZEluZGV4ID0gaW5kZXg7XHJcbiAgICB0aGlzLmluZGV4Q2hhbmdlLmVtaXQoe1xyXG4gICAgICBhY3RpdmF0ZWRJbmRleDogaW5kZXgsXHJcbiAgICAgIGFjdGl2YXRlZFRhYjogdGhpcy50YWJzW2luZGV4XVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnNldEZpcnN0QW5kTGFzdCgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0QWN0aXZhdGVkSW5kZXgoKSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMuc2xpZGVyT3B0aW9uID09PSAndW5kZWZpbmVkJykge1xyXG4gICAgICB0aGlzLnNsaWRlck9wdGlvbiA9IG5ldyBYU2xpZGVyUHJvcGVydHkoKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2xpZGVyT3B0aW9uLmFjdGl2YXRlZEluZGV4ID0gdGhpcy5hY3RpdmF0ZWRJbmRleDtcclxuICAgIHRoaXMuc2V0Rmlyc3RBbmRMYXN0KCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldENsYXNzTWFwKCkge1xyXG4gICAgdGhpcy5jbGFzc01hcCA9IHtcclxuICAgICAgW2Ake1hUYWJzUHJlZml4fS0ke3RoaXMubGF5b3V0fWBdOiAhWElzRW1wdHkodGhpcy5sYXlvdXQpLFxyXG4gICAgICBbYCR7WFRhYnNQcmVmaXh9LSR7dGhpcy50eXBlfWBdOiAhWElzRW1wdHkodGhpcy50eXBlKVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0TGF5b3V0KGxheW91dDogU2ltcGxlQ2hhbmdlKSB7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hUYWJzUHJlZml4fS0ke2xheW91dC5wcmV2aW91c1ZhbHVlfWBdID0gZmFsc2U7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hUYWJzUHJlZml4fS0ke2xheW91dC5jdXJyZW50VmFsdWV9YF0gPSB0cnVlO1xyXG4gICAgdGhpcy5zZXRTbGlkZXJPcHRpb24oKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0Tm9kZUp1c3RpZnkoKSB7XHJcbiAgICB0aGlzLm5vZGVKdXN0aWZ5ID0gdGhpcy5ub2RlSnVzdGlmeSA/IHRoaXMubm9kZUp1c3RpZnkgOiB0aGlzLmxheW91dCA9PT0gJ2xlZnQnID8gJ2VuZCcgOiB0aGlzLmxheW91dCA9PT0gJ3JpZ2h0JyA/ICdzdGFydCcgOiAnY2VudGVyJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGF0YSgpIHtcclxuICAgIGxldCBkYXRhID0gW107XHJcbiAgICBpZiAoWElzRW1wdHkodGhpcy5kYXRhKSkge1xyXG4gICAgICBpZiAodGhpcy5saXN0VGFicyAmJiB0aGlzLmxpc3RUYWJzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBsZXQgX2RhdGE6IGFueVtdID0gW107XHJcbiAgICAgICAgdGhpcy5saXN0VGFicy5mb3JFYWNoKCh4LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgbGFiZWwgPSB4LmxpbmtUZW1wbGF0ZURpcmVjdGl2ZT8udGVtcGxhdGVSZWYgfHwgeC5sYWJlbDtcclxuICAgICAgICAgIGNvbnN0IGlkID0geC5sYWJlbCB8fCBpbmRleDtcclxuICAgICAgICAgIF9kYXRhID0gWy4uLihfZGF0YSBhcyBYVGFic05vZGVbXSksIHsgaWQ6IGlkLCBsYWJlbDogbGFiZWwsIGRpc2FibGVkOiB4LmRpc2FibGVkIH1dO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGRhdGEgPSBfZGF0YTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBkYXRhID0gW107XHJcblxyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgWFNldERhdGE8WFRhYnNOb2RlPihkYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLnRhYnMgPSB4O1xyXG4gICAgICBpZiAoIXRoaXMuc2xpZGVySGlkZGVuICYmICF0aGlzLmFjdGlvblRwbCkge1xyXG4gICAgICAgIHRoaXMuc2xpZGVySGlkZGVuID0gdGhpcy50YWJzLmxlbmd0aCA8PSAxO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2xpZGVyT3B0aW9uLmRhdGEgPSB0aGlzLnRhYnM7XHJcbiAgICAgIHRoaXMuc2V0QWN0aXZhdGVkSW5kZXgoKTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFNsaWRlck9wdGlvbigpIHtcclxuICAgIHRoaXMuc2xpZGVyT3B0aW9uLmxheW91dCA9IFsndG9wJywgJ2JvdHRvbSddLmluZGV4T2YodGhpcy5sYXlvdXQpICE9PSAtMSA/ICdyb3cnIDogJ2NvbHVtbic7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEZpcnN0QW5kTGFzdCgpIHtcclxuICAgIHRoaXMuY2xhc3NNYXBbYCR7WFRhYnNQcmVmaXh9LWlzLWZpcnN0YF0gPSB0aGlzLmFjdGl2YXRlZEluZGV4ID09PSAwO1xyXG4gICAgdGhpcy5jbGFzc01hcFtgJHtYVGFic1ByZWZpeH0taXMtbGFzdGBdID0gdGhpcy5hY3RpdmF0ZWRJbmRleCA9PT0gdGhpcy50YWJzPy5sZW5ndGggLSAxO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwieC10YWJzXCIgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIj5cclxuICA8ZGl2ICNsaXN0IGNsYXNzPVwieC10YWJzLWxpc3RcIiAqbmdJZj1cIiFzbGlkZXJIaWRkZW5cIj5cclxuICAgIDx4LXNsaWRlclxyXG4gICAgICAjc2xpZGVyXHJcbiAgICAgIFthbmltYXRlZF09XCJhbmltYXRlZCAmJiB0eXBlICE9PSAndGFnJ1wiXHJcbiAgICAgIFtqdXN0aWZ5XT1cImp1c3RpZnlcIlxyXG4gICAgICBbbm9kZUp1c3RpZnldPVwibm9kZUp1c3RpZnlcIlxyXG4gICAgICBbZGF0YV09XCJzbGlkZXJPcHRpb24uZGF0YVwiXHJcbiAgICAgIFtsYXlvdXRdPVwic2xpZGVyT3B0aW9uLmxheW91dFwiXHJcbiAgICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgICBbbm9kZVRwbF09XCJub2RlVHBsXCJcclxuICAgICAgW2FjdGl2YXRlZEluZGV4XT1cInNsaWRlck9wdGlvbi5hY3RpdmF0ZWRJbmRleFwiXHJcbiAgICAgIFtzaG93RXhwYW5kXT1cInNob3dFeHBhbmRcIlxyXG4gICAgICBbZXhwYW5kTWF4SGVpZ2h0XT1cImV4cGFuZE1heEhlaWdodFwiXHJcbiAgICAgIChpbmRleENoYW5nZSk9XCJhY3RpdmF0ZWRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICA+PC94LXNsaWRlcj5cclxuICAgIDxkaXYgI2FjdGlvbnNSZWYgY2xhc3M9XCJ4LXRhYnMtYWN0aW9uc1wiICpuZ0lmPVwiYWN0aW9uVHBsXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhY3Rpb25UcGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgI2NvbnRlbnQgY2xhc3M9XCJ4LXRhYnMtY29udGVudHNcIiBbY2xhc3MueC10YWJzLWNvbnRlbnRzLWFuaW1hdGVkXT1cImFuaW1hdGVkICYmIChsYXlvdXQgPT09ICd0b3AnIHx8IGxheW91dCA9PT0gJ2JvdHRvbScpXCI+XHJcbiAgICA8eC10YWItY29udGVudFxyXG4gICAgICAqbmdGb3I9XCJsZXQgdGFiIG9mIGxpc3RUYWJzOyBpbmRleCBhcyBpXCJcclxuICAgICAgW2FjdGl2ZV09XCJhY3RpdmVJbmRleCA9PSBpXCJcclxuICAgICAgW2NvbnRlbnRdPVwidGFiLmNvbnRlbnRcIlxyXG4gICAgICBbY2xhc3MueC10YWItY29udGVudC11bmFjdGl2YXRlZF09XCJhY3RpdmVJbmRleCAhPSBpXCJcclxuICAgICAgW2NsYXNzLngtdGFiLWNvbnRlbnQtZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCJcclxuICAgICAgW3N0eWxlLnRyYW5zZm9ybV09XCIndHJhbnNsYXRlKCcgKyAoLWFjdGl2ZUluZGV4IHx8IDApICogMTAwICsgJyUsIDBweCknXCJcclxuICAgID5cclxuICAgIDwveC10YWItY29udGVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90YWJzL3RhYnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFicy90YWJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsdUJBQXVCLEVBSXZCLGVBQWUsRUFDZixTQUFTLEVBQ1QsaUJBQWlCLEVBS2pCLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFhLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBa0IsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFzQixNQUFNLGlCQUFpQixDQUFDOzs7Ozs7O0FBU3BFLE1BQU0sT0FBTyxjQUFlLFNBQVEsYUFBYTtJQWdCL0MsWUFDVSxHQUFzQixFQUN2QixhQUE2QixFQUM3QixRQUFtQixFQUNOLE1BQWM7UUFFbEMsS0FBSyxFQUFFLENBQUM7UUFMQSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNOLFdBQU0sR0FBTixNQUFNLENBQVE7UUFuQnBDLGlCQUFZLEdBQUcsSUFBSSxl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QzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDOUYsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFdBQVcsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsS0FBSyxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFdBQVcsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDMUYsQ0FBQzs7OEhBck1VLGNBQWM7a0hBQWQsY0FBYyx1RUFXUixhQUFhLHFFQUVuQixnQkFBZ0IsdUxDM0M3QixrekNBZ0NBOzJGREZhLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsR0FBRyxXQUFXLEVBQUUsaUJBR1gsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBc0I1QyxRQUFROzRDQVRxQixRQUFRO3NCQUF2QyxlQUFlO3VCQUFDLGFBQWE7Z0JBRUQsTUFBTTtzQkFBbEMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBQ0YsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbnRlbnRDaGlsZHJlbixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgU2ltcGxlQ2hhbmdlLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBFbGVtZW50UmVmLFxyXG4gIFJlbmRlcmVyMixcclxuICBPcHRpb25hbFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVGFic1ByZWZpeCwgWFRhYnNOb2RlLCBYVGFic1Byb3BlcnR5IH0gZnJvbSAnLi90YWJzLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzQ2hhbmdlLCBYU2V0RGF0YSwgWElzRW1wdHksIFhDb25maWdTZXJ2aWNlLCBYUmVzaXplIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgc3RhcnRXaXRoLCBkZWxheSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBYU2xpZGVyQ29tcG9uZW50LCBYU2xpZGVyUHJvcGVydHkgfSBmcm9tICdAbmctbmVzdC91aS9zbGlkZXInO1xyXG5pbXBvcnQgeyBYVGFiQ29tcG9uZW50IH0gZnJvbSAnLi90YWIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyLCBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVGFic1ByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zdHlsZS9pbmRleC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRhYnNDb21wb25lbnQgZXh0ZW5kcyBYVGFic1Byb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIHNsaWRlck9wdGlvbiA9IG5ldyBYU2xpZGVyUHJvcGVydHkoKTtcclxuICB0YWJzOiBYVGFic05vZGVbXSA9IFtdO1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBfdGFic0NvbnRlbnRDaGFuZ2UgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXIhOiBSZXNpemVPYnNlcnZlcjtcclxuXHJcbiAgZ2V0IGFjdGl2ZUluZGV4KCkge1xyXG4gICAgcmV0dXJuIE51bWJlcih0aGlzLmFjdGl2YXRlZEluZGV4KTtcclxuICB9XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oWFRhYkNvbXBvbmVudCkgbGlzdFRhYnMhOiBRdWVyeUxpc3Q8WFRhYkNvbXBvbmVudD47XHJcblxyXG4gIEBWaWV3Q2hpbGQoWFNsaWRlckNvbXBvbmVudCkgc2xpZGVyITogWFNsaWRlckNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdhY3Rpb25zUmVmJykgYWN0aW9uc1JlZiE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZSxcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXRDbGFzc01hcCgpO1xyXG4gICAgdGhpcy5zZXRTbGlkZXJPcHRpb24oKTtcclxuICAgIHRoaXMuc2V0Tm9kZUp1c3RpZnkoKTtcclxuICAgIHRoaXMuc2V0U3ViamVjdCgpO1xyXG4gICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IGRhdGEsIGxheW91dCwganVzdGlmeSwgYWN0aXZhdGVkSW5kZXggfSA9IGNoYW5nZXM7XHJcbiAgICBYSXNDaGFuZ2UoZGF0YSkgJiYgdGhpcy5zZXREYXRhKCk7XHJcbiAgICBYSXNDaGFuZ2UobGF5b3V0KSAmJiB0aGlzLnNldExheW91dChsYXlvdXQpO1xyXG4gICAgWElzQ2hhbmdlKGp1c3RpZnkpICYmIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIFhJc0NoYW5nZShhY3RpdmF0ZWRJbmRleCkgJiYgdGhpcy5zZXRBY3RpdmF0ZWRJbmRleCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl91blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudGFicy5sZW5ndGggIT09IHRoaXMubGlzdFRhYnMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuX3RhYnNDb250ZW50Q2hhbmdlLm5leHQoYCR7dGhpcy50YWJzLmxlbmd0aH0tJHt0aGlzLmxpc3RUYWJzLmxlbmd0aH1gKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuc2V0U2xpZGVyV2lkdGgoKTtcclxuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xyXG4gICAgICB0aGlzLnNldFJvdXRlcigpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRTbGlkZXJXaWR0aCgpIHtcclxuICAgIGlmICh0aGlzLnNsaWRlciAmJiB0aGlzLmFjdGlvbnNSZWYpIHtcclxuICAgICAgWFJlc2l6ZSh0aGlzLmFjdGlvbnNSZWYubmF0aXZlRWxlbWVudClcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgICAuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9yZXNpemVPYnNlcnZlciA9IHgucmVzaXplT2JzZXJ2ZXI7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxyXG4gICAgICAgICAgICB0aGlzLnNsaWRlci5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgICd3aWR0aCcsXHJcbiAgICAgICAgICAgIGBjYWxjKDEwMCUgLSAke3RoaXMuYWN0aW9uc1JlZi5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRofXB4KWBcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRTdWJqZWN0KCkge1xyXG4gICAgdGhpcy5fdGFic0NvbnRlbnRDaGFuZ2UucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldFJvdXRlcigpIHtcclxuICAgIGlmICghdGhpcy5saW5rUm91dGVyKSByZXR1cm47XHJcbiAgICBpZiAoIXRoaXMucm91dGVyKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihgJHtYVGFic1ByZWZpeH06IHlvdSBzaG91bGQgaW1wb3J0ICdSb3V0ZXJNb2R1bGUnIGlmIHlvdSB3YW50IHRvIHVzZSAnbGlua1JvdXRlcichYCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMucm91dGVyLmV2ZW50c1xyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoKHgpID0+IHggaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcclxuICAgICAgICBzdGFydFdpdGgodHJ1ZSksXHJcbiAgICAgICAgZGVsYXkoMCksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVJvdXRlckFjdGl2ZSgpO1xyXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVJvdXRlckFjdGl2ZSgpIHtcclxuICAgIGlmICghdGhpcy5yb3V0ZXIubmF2aWdhdGVkKSByZXR1cm47XHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuZmluZFNob3VsZEFjdGl2ZVRhYkluZGV4KCk7XHJcbiAgICBpZiAoaW5kZXggIT09IC0xICYmIGluZGV4ICE9PSB0aGlzLmFjdGl2ZUluZGV4KSB7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSW5kZXggPSBpbmRleDtcclxuICAgICAgdGhpcy5zZXRBY3RpdmF0ZWRJbmRleCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmluZFNob3VsZEFjdGl2ZVRhYkluZGV4KCk6IG51bWJlciB7XHJcbiAgICBjb25zdCB0YWJzID0gdGhpcy5saXN0VGFicy50b0FycmF5KCk7XHJcbiAgICBjb25zdCBpc0FjdGl2ZSA9IHRoaXMuaXNMaW5rQWN0aXZlKHRoaXMucm91dGVyKTtcclxuXHJcbiAgICByZXR1cm4gdGFicy5maW5kSW5kZXgoKHRhYikgPT4ge1xyXG4gICAgICBjb25zdCBjID0gdGFiLmxpbmtEaXJlY3RpdmU7XHJcbiAgICAgIHJldHVybiBjID8gaXNBY3RpdmUoYy5yb3V0ZXJMaW5rKSB8fCBpc0FjdGl2ZShjLnJvdXRlckxpbmtXaXRoSHJlZikgOiBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaXNMaW5rQWN0aXZlKHJvdXRlcjogUm91dGVyKTogKGxpbms/OiBSb3V0ZXJMaW5rIHwgUm91dGVyTGluaykgPT4gYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gKGxpbms/OiBSb3V0ZXJMaW5rIHwgUm91dGVyTGluaykgPT4ge1xyXG4gICAgICByZXR1cm4gbGluayA/IHJvdXRlci5pc0FjdGl2ZShsaW5rLnVybFRyZWUhLCBCb29sZWFuKHRoaXMubGlua0V4YWN0KSkgOiBmYWxzZTtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBhY3RpdmF0ZWRDaGFuZ2UoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5hY3RpdmF0ZWRJbmRleCA9IGluZGV4O1xyXG4gICAgdGhpcy5pbmRleENoYW5nZS5lbWl0KHtcclxuICAgICAgYWN0aXZhdGVkSW5kZXg6IGluZGV4LFxyXG4gICAgICBhY3RpdmF0ZWRUYWI6IHRoaXMudGFic1tpbmRleF1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZXRGaXJzdEFuZExhc3QoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNldEFjdGl2YXRlZEluZGV4KCkge1xyXG4gICAgaWYgKHR5cGVvZiB0aGlzLnNsaWRlck9wdGlvbiA9PT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgICAgdGhpcy5zbGlkZXJPcHRpb24gPSBuZXcgWFNsaWRlclByb3BlcnR5KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNsaWRlck9wdGlvbi5hY3RpdmF0ZWRJbmRleCA9IHRoaXMuYWN0aXZhdGVkSW5kZXg7XHJcbiAgICB0aGlzLnNldEZpcnN0QW5kTGFzdCgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRDbGFzc01hcCgpIHtcclxuICAgIHRoaXMuY2xhc3NNYXAgPSB7XHJcbiAgICAgIFtgJHtYVGFic1ByZWZpeH0tJHt0aGlzLmxheW91dH1gXTogIVhJc0VtcHR5KHRoaXMubGF5b3V0KSxcclxuICAgICAgW2Ake1hUYWJzUHJlZml4fS0ke3RoaXMudHlwZX1gXTogIVhJc0VtcHR5KHRoaXMudHlwZSlcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldExheW91dChsYXlvdXQ6IFNpbXBsZUNoYW5nZSkge1xyXG4gICAgdGhpcy5jbGFzc01hcFtgJHtYVGFic1ByZWZpeH0tJHtsYXlvdXQucHJldmlvdXNWYWx1ZX1gXSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jbGFzc01hcFtgJHtYVGFic1ByZWZpeH0tJHtsYXlvdXQuY3VycmVudFZhbHVlfWBdID0gdHJ1ZTtcclxuICAgIHRoaXMuc2V0U2xpZGVyT3B0aW9uKCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldE5vZGVKdXN0aWZ5KCkge1xyXG4gICAgdGhpcy5ub2RlSnVzdGlmeSA9IHRoaXMubm9kZUp1c3RpZnkgPyB0aGlzLm5vZGVKdXN0aWZ5IDogdGhpcy5sYXlvdXQgPT09ICdsZWZ0JyA/ICdlbmQnIDogdGhpcy5sYXlvdXQgPT09ICdyaWdodCcgPyAnc3RhcnQnIDogJ2NlbnRlcic7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldERhdGEoKSB7XHJcbiAgICBsZXQgZGF0YSA9IFtdO1xyXG4gICAgaWYgKFhJc0VtcHR5KHRoaXMuZGF0YSkpIHtcclxuICAgICAgaWYgKHRoaXMubGlzdFRhYnMgJiYgdGhpcy5saXN0VGFicy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgbGV0IF9kYXRhOiBhbnlbXSA9IFtdO1xyXG4gICAgICAgIHRoaXMubGlzdFRhYnMuZm9yRWFjaCgoeCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGxhYmVsID0geC5saW5rVGVtcGxhdGVEaXJlY3RpdmU/LnRlbXBsYXRlUmVmIHx8IHgubGFiZWw7XHJcbiAgICAgICAgICBjb25zdCBpZCA9IHgubGFiZWwgfHwgaW5kZXg7XHJcbiAgICAgICAgICBfZGF0YSA9IFsuLi4oX2RhdGEgYXMgWFRhYnNOb2RlW10pLCB7IGlkOiBpZCwgbGFiZWw6IGxhYmVsLCBkaXNhYmxlZDogeC5kaXNhYmxlZCB9XTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBkYXRhID0gX2RhdGE7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZGF0YSA9IFtdO1xyXG5cclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFhTZXREYXRhPFhUYWJzTm9kZT4oZGF0YSwgdGhpcy5fdW5TdWJqZWN0KS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgdGhpcy50YWJzID0geDtcclxuICAgICAgaWYgKCF0aGlzLnNsaWRlckhpZGRlbiAmJiAhdGhpcy5hY3Rpb25UcGwpIHtcclxuICAgICAgICB0aGlzLnNsaWRlckhpZGRlbiA9IHRoaXMudGFicy5sZW5ndGggPD0gMTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNsaWRlck9wdGlvbi5kYXRhID0gdGhpcy50YWJzO1xyXG4gICAgICB0aGlzLnNldEFjdGl2YXRlZEluZGV4KCk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTbGlkZXJPcHRpb24oKSB7XHJcbiAgICB0aGlzLnNsaWRlck9wdGlvbi5sYXlvdXQgPSBbJ3RvcCcsICdib3R0b20nXS5pbmRleE9mKHRoaXMubGF5b3V0KSAhPT0gLTEgPyAncm93JyA6ICdjb2x1bW4nO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRGaXJzdEFuZExhc3QoKSB7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hUYWJzUHJlZml4fS1pcy1maXJzdGBdID0gdGhpcy5hY3RpdmF0ZWRJbmRleCA9PT0gMDtcclxuICAgIHRoaXMuY2xhc3NNYXBbYCR7WFRhYnNQcmVmaXh9LWlzLWxhc3RgXSA9IHRoaXMuYWN0aXZhdGVkSW5kZXggPT09IHRoaXMudGFicz8ubGVuZ3RoIC0gMTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIngtdGFic1wiIFtuZ0NsYXNzXT1cImNsYXNzTWFwXCI+XHJcbiAgPGRpdiAjbGlzdCBjbGFzcz1cIngtdGFicy1saXN0XCIgKm5nSWY9XCIhc2xpZGVySGlkZGVuXCI+XHJcbiAgICA8eC1zbGlkZXJcclxuICAgICAgI3NsaWRlclxyXG4gICAgICBbYW5pbWF0ZWRdPVwiYW5pbWF0ZWQgJiYgdHlwZSAhPT0gJ3RhZydcIlxyXG4gICAgICBbanVzdGlmeV09XCJqdXN0aWZ5XCJcclxuICAgICAgW25vZGVKdXN0aWZ5XT1cIm5vZGVKdXN0aWZ5XCJcclxuICAgICAgW2RhdGFdPVwic2xpZGVyT3B0aW9uLmRhdGFcIlxyXG4gICAgICBbbGF5b3V0XT1cInNsaWRlck9wdGlvbi5sYXlvdXRcIlxyXG4gICAgICBbc2l6ZV09XCJzaXplXCJcclxuICAgICAgW25vZGVUcGxdPVwibm9kZVRwbFwiXHJcbiAgICAgIFthY3RpdmF0ZWRJbmRleF09XCJzbGlkZXJPcHRpb24uYWN0aXZhdGVkSW5kZXhcIlxyXG4gICAgICBbc2hvd0V4cGFuZF09XCJzaG93RXhwYW5kXCJcclxuICAgICAgW2V4cGFuZE1heEhlaWdodF09XCJleHBhbmRNYXhIZWlnaHRcIlxyXG4gICAgICAoaW5kZXhDaGFuZ2UpPVwiYWN0aXZhdGVkQ2hhbmdlKCRldmVudClcIlxyXG4gICAgPjwveC1zbGlkZXI+XHJcbiAgICA8ZGl2ICNhY3Rpb25zUmVmIGNsYXNzPVwieC10YWJzLWFjdGlvbnNcIiAqbmdJZj1cImFjdGlvblRwbFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWN0aW9uVHBsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICNjb250ZW50IGNsYXNzPVwieC10YWJzLWNvbnRlbnRzXCIgW2NsYXNzLngtdGFicy1jb250ZW50cy1hbmltYXRlZF09XCJhbmltYXRlZCAmJiAobGF5b3V0ID09PSAndG9wJyB8fCBsYXlvdXQgPT09ICdib3R0b20nKVwiPlxyXG4gICAgPHgtdGFiLWNvbnRlbnRcclxuICAgICAgKm5nRm9yPVwibGV0IHRhYiBvZiBsaXN0VGFiczsgaW5kZXggYXMgaVwiXHJcbiAgICAgIFthY3RpdmVdPVwiYWN0aXZlSW5kZXggPT0gaVwiXHJcbiAgICAgIFtjb250ZW50XT1cInRhYi5jb250ZW50XCJcclxuICAgICAgW2NsYXNzLngtdGFiLWNvbnRlbnQtdW5hY3RpdmF0ZWRdPVwiYWN0aXZlSW5kZXggIT0gaVwiXHJcbiAgICAgIFtjbGFzcy54LXRhYi1jb250ZW50LWRpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiXHJcbiAgICAgIFtzdHlsZS50cmFuc2Zvcm1dPVwiJ3RyYW5zbGF0ZSgnICsgKC1hY3RpdmVJbmRleCB8fCAwKSAqIDEwMCArICclLCAwcHgpJ1wiXHJcbiAgICA+XHJcbiAgICA8L3gtdGFiLWNvbnRlbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -66,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
66
66
  type: HostListener,
67
67
  args: ['@x-base-animation.start', ['$event']]
68
68
  }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RhZy90YWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFnL3RhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGlCQUFpQixFQUlqQix1QkFBdUIsRUFFdkIsV0FBVyxFQUNYLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQWtCLFNBQVMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7O0FBVXBHLE1BQU0sT0FBTyxhQUFjLFNBQVEsWUFBWTtJQVk3QyxZQUNTLFFBQW1CLEVBQ25CLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ3RCLGFBQTZCO1FBRXBDLEtBQUssRUFBRSxDQUFDO1FBTEQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQWZHLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDMUQsY0FBUyxHQUFHLEtBQUssQ0FBQztJQWlCbEIsQ0FBQztJQWhCbUQsSUFBSTtRQUN0RCx5QkFBeUI7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsb0RBQW9EO0lBQ3RELENBQUM7SUFDb0QsS0FBSztRQUN4RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBV0QsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUNyQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEQsQ0FBQztJQUVELFdBQVc7UUFDVCxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUc7WUFDZCxDQUFDLEdBQUcsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDcEQsQ0FBQyxHQUFHLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ3BELENBQUMsR0FBRyxVQUFVLE9BQU8sQ0FBQyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzFDLENBQUMsR0FBRyxVQUFVLFVBQVUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQ2pELENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDOzs2SEFqRFUsYUFBYTtpSEFBYixhQUFhLCtQQ3ZCMUIsaVhBYUEsZzZuQkRRYyxDQUFDLGNBQWMsQ0FBQzsyRkFFakIsYUFBYTtrQkFSekIsU0FBUzsrQkFDRSxHQUFHLFVBQVUsRUFBRSxpQkFHVixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLENBQUMsY0FBYyxDQUFDO3NMQUdhLFNBQVM7c0JBQWpELFdBQVc7dUJBQUMsbUJBQW1CO2dCQUVvQixJQUFJO3NCQUF2RCxZQUFZO3VCQUFDLHdCQUF3QixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUtHLEtBQUs7c0JBQXpELFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBIb3N0QmluZGluZyxcclxuICBIb3N0TGlzdGVuZXJcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRhZ1ByZWZpeCwgWFRhZ1Byb3BlcnR5IH0gZnJvbSAnLi90YWcucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSwgWENvbmZpZ1NlcnZpY2UsIFhJc0NoYW5nZSwgWENsZWFyQ2xhc3MsIFhCYXNlQW5pbWF0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WFRhZ1ByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhZy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgYW5pbWF0aW9uczogW1hCYXNlQW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRhZ0NvbXBvbmVudCBleHRlbmRzIFhUYWdQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQEhvc3RCaW5kaW5nKCdAeC1iYXNlLWFuaW1hdGlvbicpIHB1YmxpYyBhbmltYXRpb24gPSB0cnVlO1xyXG4gIGFuaW1hdGluZyA9IGZhbHNlO1xyXG4gIEBIb3N0TGlzdGVuZXIoJ0B4LWJhc2UtYW5pbWF0aW9uLmRvbmUnLCBbJyRldmVudCddKSBkb25lKCkge1xyXG4gICAgLy8gdGhpcy5hbmltYXRpbmcoZmFsc2UpO1xyXG4gICAgdGhpcy5hbmltYXRpbmcgPSBmYWxzZTtcclxuICAgIC8vIGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJyAmJiB0aGlzLmRlc3Ryb3lQb3J0YWwoKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtYmFzZS1hbmltYXRpb24uc3RhcnQnLCBbJyRldmVudCddKSBzdGFydCgpIHtcclxuICAgIHRoaXMuYW5pbWF0aW5nID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IFhDb25maWdTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IHR5cGUsIHNpemUsIGRhcmsgfSA9IGNoYW5nZXM7XHJcbiAgICBYSXNDaGFuZ2UodHlwZSwgc2l6ZSwgZGFyaykgJiYgdGhpcy5zZXRDbGFzc01hcCgpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmNsYXNzTWFwKTtcclxuICAgIHRoaXMuY2xhc3NNYXAgPSB7XHJcbiAgICAgIFtgJHtYVGFnUHJlZml4fS0ke3RoaXMudHlwZX1gXTogIVhJc0VtcHR5KHRoaXMudHlwZSksXHJcbiAgICAgIFtgJHtYVGFnUHJlZml4fS0ke3RoaXMuc2l6ZX1gXTogIVhJc0VtcHR5KHRoaXMuc2l6ZSksXHJcbiAgICAgIFtgJHtYVGFnUHJlZml4fS1kYXJrYF06IEJvb2xlYW4odGhpcy5kYXJrKSxcclxuICAgICAgW2Ake1hUYWdQcmVmaXh9LWNoZWNrZWRgXTogQm9vbGVhbih0aGlzLmNoZWNrZWQpXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgb25DbGljaygpIHtcclxuICAgIGlmICghdGhpcy5jaGVja2VkKSByZXR1cm47XHJcbiAgICB0aGlzLnNlbGVjdGVkID0gIXRoaXMuc2VsZWN0ZWQ7XHJcbiAgICB0aGlzLnNlbGVjdGVkQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZCk7XHJcbiAgfVxyXG5cclxuICBvbkNsb3NlKGV2ZW50OiBFdmVudCkge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybjtcclxuICAgIHRoaXMuY2xvc2UuZW1pdChldmVudCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAjdGFnXHJcbiAgY2xhc3M9XCJ4LXRhZ1wiXHJcbiAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxyXG4gIFtzdHlsZV09XCJzdHlsZVwiXHJcbiAgW2NsYXNzLngtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gIFtjbGFzcy54LXRhZy1ib3JkZXJlZF09XCJib3JkZXJlZFwiXHJcbiAgW2NsYXNzLngtdGFnLXNlbGVjdGVkXT1cInNlbGVjdGVkXCJcclxuICAoY2xpY2spPVwib25DbGljaygpXCJcclxuPlxyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8eC1pY29uIHR5cGU9XCJmdG8teFwiICpuZ0lmPVwiY2xvc2FibGVcIiAoY2xpY2spPVwib25DbG9zZSgkZXZlbnQpXCI+PC94LWljb24+XHJcbjwvZGl2PlxyXG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RhZy90YWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGFnL3RhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGlCQUFpQixFQUlqQix1QkFBdUIsRUFFdkIsV0FBVyxFQUNYLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQWtCLFNBQVMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7O0FBVXBHLE1BQU0sT0FBTyxhQUFjLFNBQVEsWUFBWTtJQVk3QyxZQUNTLFFBQW1CLEVBQ25CLFVBQW1DLEVBQ25DLEdBQXNCLEVBQ3RCLGFBQTZCO1FBRXBDLEtBQUssRUFBRSxDQUFDO1FBTEQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUNuQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFmRyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFELGNBQVMsR0FBRyxLQUFLLENBQUM7SUFpQmxCLENBQUM7SUFoQm1ELElBQUk7UUFDdEQseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLG9EQUFvRDtJQUN0RCxDQUFDO0lBQ29ELEtBQUs7UUFDeEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQztJQVdELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDckMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFRCxXQUFXO1FBQ1QsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHO1lBQ2QsQ0FBQyxHQUFHLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ3BELENBQUMsR0FBRyxVQUFVLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNwRCxDQUFDLEdBQUcsVUFBVSxPQUFPLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUMxQyxDQUFDLEdBQUcsVUFBVSxVQUFVLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNqRCxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVk7UUFDbEIsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7NkhBakRVLGFBQWE7aUhBQWIsYUFBYSwrUEN2QjFCLGlYQWFBLGc2bkJEUWMsQ0FBQyxjQUFjLENBQUM7MkZBRWpCLGFBQWE7a0JBUnpCLFNBQVM7K0JBQ0UsR0FBRyxVQUFVLEVBQUUsaUJBR1YsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxDQUFDLGNBQWMsQ0FBQztzTEFHYSxTQUFTO3NCQUFqRCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFb0IsSUFBSTtzQkFBdkQsWUFBWTt1QkFBQyx3QkFBd0IsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLRyxLQUFLO3NCQUF6RCxZQUFZO3VCQUFDLHlCQUF5QixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUYWdQcmVmaXgsIFhUYWdQcm9wZXJ0eSB9IGZyb20gJy4vdGFnLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzRW1wdHksIFhDb25maWdTZXJ2aWNlLCBYSXNDaGFuZ2UsIFhDbGVhckNsYXNzLCBYQmFzZUFuaW1hdGlvbiB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hUYWdQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFnLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWcuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGFuaW1hdGlvbnM6IFtYQmFzZUFuaW1hdGlvbl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhUYWdDb21wb25lbnQgZXh0ZW5kcyBYVGFnUHJvcGVydHkgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBIb3N0QmluZGluZygnQHgtYmFzZS1hbmltYXRpb24nKSBwdWJsaWMgYW5pbWF0aW9uID0gdHJ1ZTtcclxuICBhbmltYXRpbmcgPSBmYWxzZTtcclxuICBASG9zdExpc3RlbmVyKCdAeC1iYXNlLWFuaW1hdGlvbi5kb25lJywgWyckZXZlbnQnXSkgZG9uZSgpIHtcclxuICAgIC8vIHRoaXMuYW5pbWF0aW5nKGZhbHNlKTtcclxuICAgIHRoaXMuYW5pbWF0aW5nID0gZmFsc2U7XHJcbiAgICAvLyBldmVudC50b1N0YXRlID09PSAndm9pZCcgJiYgdGhpcy5kZXN0cm95UG9ydGFsKCk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ0B4LWJhc2UtYW5pbWF0aW9uLnN0YXJ0JywgWyckZXZlbnQnXSkgc3RhcnQoKSB7XHJcbiAgICB0aGlzLmFuaW1hdGluZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgdHlwZSwgc2l6ZSwgZGFyayB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZSh0eXBlLCBzaXplLCBkYXJrKSAmJiB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgfVxyXG5cclxuICBzZXRDbGFzc01hcCgpIHtcclxuICAgIFhDbGVhckNsYXNzKHRoaXMuY2xhc3NNYXApO1xyXG4gICAgdGhpcy5jbGFzc01hcCA9IHtcclxuICAgICAgW2Ake1hUYWdQcmVmaXh9LSR7dGhpcy50eXBlfWBdOiAhWElzRW1wdHkodGhpcy50eXBlKSxcclxuICAgICAgW2Ake1hUYWdQcmVmaXh9LSR7dGhpcy5zaXplfWBdOiAhWElzRW1wdHkodGhpcy5zaXplKSxcclxuICAgICAgW2Ake1hUYWdQcmVmaXh9LWRhcmtgXTogQm9vbGVhbih0aGlzLmRhcmspLFxyXG4gICAgICBbYCR7WFRhZ1ByZWZpeH0tY2hlY2tlZGBdOiBCb29sZWFuKHRoaXMuY2hlY2tlZClcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKCkge1xyXG4gICAgaWYgKCF0aGlzLmNoZWNrZWQpIHJldHVybjtcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSAhdGhpcy5zZWxlY3RlZDtcclxuICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICB9XHJcblxyXG4gIG9uQ2xvc2UoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5jbG9zZS5lbWl0KGV2ZW50KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICN0YWdcclxuICBjbGFzcz1cIngtdGFnXCJcclxuICBbbmdDbGFzc109XCJjbGFzc01hcFwiXHJcbiAgW3N0eWxlXT1cInN0eWxlXCJcclxuICBbY2xhc3MueC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgW2NsYXNzLngtdGFnLWJvcmRlcmVkXT1cImJvcmRlcmVkXCJcclxuICBbY2xhc3MueC10YWctc2VsZWN0ZWRdPVwic2VsZWN0ZWRcIlxyXG4gIChjbGljayk9XCJvbkNsaWNrKClcIlxyXG4+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gIDx4LWljb24gdHlwZT1cImZ0by14XCIgKm5nSWY9XCJjbG9zYWJsZVwiIChjbGljayk9XCJvbkNsb3NlKCRldmVudClcIj48L3gtaWNvbj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
59
59
  type: Component,
60
60
  args: [{ selector: `${XTextRetractPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-text-retract\">\r\n {{ displayValue }}\r\n <ng-container *ngIf=\"retract\">\r\n <x-link type=\"primary\" (click)=\"toggle()\" *ngIf=\"unfold\">...{{ 'textRetract.unfold' | xI18n }}</x-link>\r\n <x-link type=\"primary\" (click)=\"toggle()\" *ngIf=\"!unfold\">{{ 'textRetract.packUp' | xI18n }}</x-link>\r\n </ng-container>\r\n</div>\r\n", styles: [".x-text-retract{margin:0;padding:0;font-size:var(--x-font-size);display:inline}\n"] }]
61
61
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }, { type: i2.XI18nService }]; } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1yZXRyYWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RleHQtcmV0cmFjdC90ZXh0LXJldHJhY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGV4dC1yZXRyYWN0L3RleHQtcmV0cmFjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGlCQUFpQixFQUlqQix1QkFBdUIsRUFHeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkYsT0FBTyxFQUFFLFNBQVMsRUFBa0IsTUFBTSxrQkFBa0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBUy9CLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxvQkFBb0I7SUFPN0QsWUFDUyxRQUFtQixFQUNuQixVQUFzQixFQUN0QixHQUFzQixFQUN0QixhQUE2QixFQUM3QixJQUFrQjtRQUV6QixLQUFLLEVBQUUsQ0FBQztRQU5ELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IsU0FBSSxHQUFKLElBQUksQ0FBYztRQVYzQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFFZixlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVV6QyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzVCLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUksSUFBSSxDQUFDLEdBQWMsRUFBRTtZQUM5RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDaEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FDckI7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQWlCLENBQUM7U0FDNUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFlBQVksR0FBSSxJQUFJLENBQUMsT0FBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUM3RTthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBaUIsQ0FBQztTQUM1QztRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7cUlBbERVLHFCQUFxQjt5SEFBckIscUJBQXFCLGtHQ3hCbEMseVdBT0E7MkZEaUJhLHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDRSxHQUFHLGtCQUFrQixFQUFFLGlCQUdsQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUZXh0UmV0cmFjdFByZWZpeCwgWFRleHRSZXRyYWN0UHJvcGVydHkgfSBmcm9tICcuL3RleHQtcmV0cmFjdC5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhJc0NoYW5nZSwgWENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWEkxOG5TZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvaTE4bic7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hUZXh0UmV0cmFjdFByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LXJldHJhY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RleHQtcmV0cmFjdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhUZXh0UmV0cmFjdENvbXBvbmVudCBleHRlbmRzIFhUZXh0UmV0cmFjdFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIGRpc3BsYXlWYWx1ZSE6IHN0cmluZztcclxuICByZXRyYWN0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgdW5mb2xkOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2UsXHJcbiAgICBwdWJsaWMgaTE4bjogWEkxOG5TZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gICAgdGhpcy5pMThuLmxvY2FsZUNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jZHIubWFya0ZvckNoZWNrKCkpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgY29uc3QgeyBjb250ZW50IH0gPSBjaGFuZ2VzO1xyXG4gICAgWElzQ2hhbmdlKGNvbnRlbnQpICYmIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHNldERpc3BsYXlWYWx1ZSgpIHtcclxuICAgIGlmICh0aGlzLmNvbnRlbnQgJiYgdGhpcy5jb250ZW50Lmxlbmd0aCA+ICh0aGlzLm1heCBhcyBudW1iZXIpKSB7XHJcbiAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gdGhpcy5jb250ZW50LnN1YnN0cmluZygwLCBOdW1iZXIodGhpcy5tYXgpKTtcclxuICAgICAgdGhpcy5yZXRyYWN0ID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gdGhpcy5jb250ZW50IGFzIHN0cmluZztcclxuICAgIH1cclxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlKCkge1xyXG4gICAgdGhpcy51bmZvbGQgPSAhdGhpcy51bmZvbGQ7XHJcbiAgICBpZiAodGhpcy51bmZvbGQpIHtcclxuICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSAodGhpcy5jb250ZW50IGFzIHN0cmluZykuc3Vic3RyaW5nKDAsIE51bWJlcih0aGlzLm1heCkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSB0aGlzLmNvbnRlbnQgYXMgc3RyaW5nO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwieC10ZXh0LXJldHJhY3RcIj5cclxuICB7eyBkaXNwbGF5VmFsdWUgfX1cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwicmV0cmFjdFwiPlxyXG4gICAgPHgtbGluayB0eXBlPVwicHJpbWFyeVwiIChjbGljayk9XCJ0b2dnbGUoKVwiICpuZ0lmPVwidW5mb2xkXCI+Li4ue3sgJ3RleHRSZXRyYWN0LnVuZm9sZCcgfCB4STE4biB9fTwveC1saW5rPlxyXG4gICAgPHgtbGluayB0eXBlPVwicHJpbWFyeVwiIChjbGljayk9XCJ0b2dnbGUoKVwiICpuZ0lmPVwiIXVuZm9sZFwiPnt7ICd0ZXh0UmV0cmFjdC5wYWNrVXAnIHwgeEkxOG4gfX08L3gtbGluaz5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1yZXRyYWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RleHQtcmV0cmFjdC90ZXh0LXJldHJhY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGV4dC1yZXRyYWN0L3RleHQtcmV0cmFjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGlCQUFpQixFQUlqQix1QkFBdUIsRUFHeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkYsT0FBTyxFQUFFLFNBQVMsRUFBa0IsTUFBTSxrQkFBa0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBUy9CLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxvQkFBb0I7SUFPN0QsWUFDUyxRQUFtQixFQUNuQixVQUFtQyxFQUNuQyxHQUFzQixFQUN0QixhQUE2QixFQUM3QixJQUFrQjtRQUV6QixLQUFLLEVBQUUsQ0FBQztRQU5ELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLFNBQUksR0FBSixJQUFJLENBQWM7UUFWM0IsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixXQUFNLEdBQVksSUFBSSxDQUFDO1FBRWYsZUFBVSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFVekMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUM1QixTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFJLElBQUksQ0FBQyxHQUFjLEVBQUU7WUFDOUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1NBQ3JCO2FBQU07WUFDTCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFpQixDQUFDO1NBQzVDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxZQUFZLEdBQUksSUFBSSxDQUFDLE9BQWtCLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDN0U7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQWlCLENBQUM7U0FDNUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7O3FJQWxEVSxxQkFBcUI7eUhBQXJCLHFCQUFxQixrR0N4QmxDLHlXQU9BOzJGRGlCYSxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0UsR0FBRyxrQkFBa0IsRUFBRSxpQkFHbEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVGV4dFJldHJhY3RQcmVmaXgsIFhUZXh0UmV0cmFjdFByb3BlcnR5IH0gZnJvbSAnLi90ZXh0LXJldHJhY3QucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNDaGFuZ2UsIFhDb25maWdTZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhJMThuU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2kxOG4nO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVGV4dFJldHJhY3RQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dC1yZXRyYWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90ZXh0LXJldHJhY3QuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVGV4dFJldHJhY3RDb21wb25lbnQgZXh0ZW5kcyBYVGV4dFJldHJhY3RQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBkaXNwbGF5VmFsdWUhOiBzdHJpbmc7XHJcbiAgcmV0cmFjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHVuZm9sZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXHJcbiAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZSxcclxuICAgIHB1YmxpYyBpMThuOiBYSTE4blNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgICB0aGlzLmkxOG4ubG9jYWxlQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKSk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBjb25zdCB7IGNvbnRlbnQgfSA9IGNoYW5nZXM7XHJcbiAgICBYSXNDaGFuZ2UoY29udGVudCkgJiYgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzcGxheVZhbHVlKCkge1xyXG4gICAgaWYgKHRoaXMuY29udGVudCAmJiB0aGlzLmNvbnRlbnQubGVuZ3RoID4gKHRoaXMubWF4IGFzIG51bWJlcikpIHtcclxuICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSB0aGlzLmNvbnRlbnQuc3Vic3RyaW5nKDAsIE51bWJlcih0aGlzLm1heCkpO1xyXG4gICAgICB0aGlzLnJldHJhY3QgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSB0aGlzLmNvbnRlbnQgYXMgc3RyaW5nO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGUoKSB7XHJcbiAgICB0aGlzLnVuZm9sZCA9ICF0aGlzLnVuZm9sZDtcclxuICAgIGlmICh0aGlzLnVuZm9sZCkge1xyXG4gICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICh0aGlzLmNvbnRlbnQgYXMgc3RyaW5nKS5zdWJzdHJpbmcoMCwgTnVtYmVyKHRoaXMubWF4KSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IHRoaXMuY29udGVudCBhcyBzdHJpbmc7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ4LXRleHQtcmV0cmFjdFwiPlxyXG4gIHt7IGRpc3BsYXlWYWx1ZSB9fVxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZXRyYWN0XCI+XHJcbiAgICA8eC1saW5rIHR5cGU9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInRvZ2dsZSgpXCIgKm5nSWY9XCJ1bmZvbGRcIj4uLi57eyAndGV4dFJldHJhY3QudW5mb2xkJyB8IHhJMThuIH19PC94LWxpbms+XHJcbiAgICA8eC1saW5rIHR5cGU9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInRvZ2dsZSgpXCIgKm5nSWY9XCIhdW5mb2xkXCI+e3sgJ3RleHRSZXRyYWN0LnBhY2tVcCcgfCB4STE4biB9fTwveC1saW5rPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj5cclxuIl19
@@ -100,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
100
100
  type: ViewChild,
101
101
  args: ['textareaRef', { static: true }]
102
102
  }] } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBSXZCLFNBQVMsRUFHVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFrQixNQUFNLGtCQUFrQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7O0FBVXZELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUE2QnZELFlBQ1MsUUFBbUIsRUFDbkIsVUFBc0IsRUFDYixHQUFzQixFQUMvQixhQUE2QjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQUxELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNiLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQy9CLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQXZCOUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUNuQyxnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixnQkFBVyxHQUFXLEdBQUcsQ0FBQztRQUMxQixpQkFBWSxHQUFXLEdBQUcsQ0FBQztRQUMzQixjQUFTLEdBQVksS0FBSyxDQUFDO0lBcUIzQixDQUFDO0lBaENRLFVBQVUsQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBU0QsSUFBSSxPQUFPO1FBQ1QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLE9BQU8sQ0FBQztJQUM3RCxDQUFDO0lBV0QsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzlCLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFVO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNqQztRQUNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDM0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQzVEO1FBQ0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QzthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDdkUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUMzRSxDQUFDO0lBRUQsV0FBVztRQUNULFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsZUFBZSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzVFLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7a0lBOUZVLGtCQUFrQjtzSEFBbEIsa0JBQWtCLHFDQUZsQixDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLHFTQ3RCakQseTREQTBDQTsyRkRsQmEsa0JBQWtCO2tCQVI5QixTQUFTOytCQUNFLEdBQUcsZUFBZSxFQUFFLGlCQUdmLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxjQUFjLG9CQUFvQixDQUFDO3NMQUdOLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDSyxXQUFXO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUZXh0YXJlYVByZWZpeCwgWFRleHRhcmVhUHJvcGVydHkgfSBmcm9tICcuL3RleHRhcmVhLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzRW1wdHksIFhJc0NoYW5nZSwgWENsZWFyQ2xhc3MsIFhDb25maWdTZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQG5nLW5lc3QvdWkvYmFzZS1mb3JtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVGV4dGFyZWFQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N0eWxlL2luZGV4LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1hWYWx1ZUFjY2Vzc29yKFhUZXh0YXJlYUNvbXBvbmVudCldXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVGV4dGFyZWFDb21wb25lbnQgZXh0ZW5kcyBYVGV4dGFyZWFQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBAVmlld0NoaWxkKCd0ZXh0YXJlYScsIHsgc3RhdGljOiB0cnVlIH0pIHRleHRhcmVhITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCd0ZXh0YXJlYVJlZicsIHsgc3RhdGljOiB0cnVlIH0pIHRleHRhcmVhUmVmITogRWxlbWVudFJlZjtcclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLmNoYW5nZSh2YWx1ZSk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9yZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHZhbHVlTGVuZ3RoOiBudW1iZXIgPSAwO1xyXG4gIGxlbmd0aFRvdGFsOiBzdHJpbmcgPSAnJztcclxuICBwYWRkaW5nTGVmdDogbnVtYmVyID0gMC40O1xyXG4gIHBhZGRpbmdSaWdodDogbnVtYmVyID0gMC40O1xyXG4gIGNsZWFyU2hvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBnZXQgZ2V0SWNvbigpIHtcclxuICAgIHJldHVybiAhWElzRW1wdHkodGhpcy5pY29uKTtcclxuICB9XHJcblxyXG4gIGdldCBnZXRJY29uTGF5b3V0TGVmdCgpIHtcclxuICAgIHJldHVybiAhWElzRW1wdHkodGhpcy5pY29uKSAmJiB0aGlzLmljb25MYXlvdXQgPT09ICdsZWZ0JztcclxuICB9XHJcblxyXG4gIGdldCBnZXRJY29uTGF5b3V0UmlnaHQoKSB7XHJcbiAgICByZXR1cm4gIVhJc0VtcHR5KHRoaXMuaWNvbikgJiYgdGhpcy5pY29uTGF5b3V0ID09PSAncmlnaHQnO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIG92ZXJyaWRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0UGFkZGluZygpO1xyXG4gICAgdGhpcy5zZXRGbGV4KHRoaXMudGV4dGFyZWEubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlciwgdGhpcy5qdXN0aWZ5LCB0aGlzLmFsaWduLCB0aGlzLmRpcmVjdGlvbik7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IGNsZWFyYWJsZSB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShjbGVhcmFibGUpICYmIHRoaXMuc2V0Q2xlYXJhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2UodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuX3JlcXVpcmVkICYmICF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMucmVxdWlyZWQgPSBYSXNFbXB0eSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldENsZWFyYWJsZSgpO1xyXG4gICAgaWYgKHRoaXMubWF4bGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMudmFsdWVMZW5ndGggPSBYSXNFbXB0eSh2YWx1ZSkgPyAwIDogYCR7dmFsdWV9YC5sZW5ndGg7XHJcbiAgICAgIHRoaXMubGVuZ3RoVG90YWwgPSBgJHt0aGlzLnZhbHVlTGVuZ3RofS8ke3RoaXMubWF4bGVuZ3RofWA7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFBhZGRpbmcoKTtcclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xlYXIoKSB7XHJcbiAgICBjb25zdCBjbGVhclZhbHVlID0gdGhpcy52YWx1ZTtcclxuICAgIHRoaXMudmFsdWUgPSAnJztcclxuICAgIHRoaXMuY2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5jbGVhckVtaXQuZW1pdChjbGVhclZhbHVlKTtcclxuICAgIHRoaXMudGV4dGFyZWFSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xlYXJhYmxlKCkge1xyXG4gICAgaWYgKHRoaXMuY2xlYXJhYmxlICYmICF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuY2xlYXJTaG93ID0gIVhJc0VtcHR5KHRoaXMudmFsdWUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jbGVhclNob3cgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFBhZGRpbmcoKSB7XHJcbiAgICB0aGlzLnBhZGRpbmdMZWZ0ID0gdGhpcy5pY29uICYmIHRoaXMuaWNvbkxheW91dCA9PT0gJ2xlZnQnID8gMS44IDogMC40O1xyXG4gICAgdGhpcy5wYWRkaW5nUmlnaHQgPSB0aGlzLmljb24gJiYgdGhpcy5pY29uTGF5b3V0ID09PSAncmlnaHQnID8gMS44IDogMC40O1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmNsYXNzTWFwLCB0aGlzLmxhYmVsTWFwKTtcclxuICAgIHRoaXMuY2xhc3NNYXBbYCR7WFRleHRhcmVhUHJlZml4fS0ke3RoaXMuc2l6ZX1gXSA9IHRoaXMuc2l6ZSA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMubGFiZWxNYXBbYHgtdGV4dC1hbGlnbi0ke3RoaXMubGFiZWxBbGlnbn1gXSA9IHRoaXMubGFiZWxBbGlnbiA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGZvcm1Db250cm9sQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuY2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgI3RleHRhcmVhXHJcbiAgY2xhc3M9XCJ4LXRleHRhcmVhXCJcclxuICBbY2xhc3MueC1mbGV4XT1cImp1c3RpZnkgfHwgYWxpZ24gfHwgZGlyZWN0aW9uXCJcclxuICBbY2xhc3MueC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgW2NsYXNzLngtcmVxdWlyZWRdPVwicmVxdWlyZWRJc0VtcHR5XCJcclxuICBbY2xhc3MueC1pbnZhbGlkXT1cImludmFsaWRcIlxyXG4gIFtjbGFzcy54LWNsZWFyYWJsZV09XCJjbGVhcmFibGVcIlxyXG4gIFtjbGFzcy54LWNsZWFyLXNob3ddPVwiY2xlYXJTaG93XCJcclxuICBbY2xhc3MueC10ZXh0YXJlYS1pY29uXT1cImdldEljb25cIlxyXG4gIFtjbGFzcy54LXRleHRhcmVhLWljb24tbGVmdF09XCJnZXRJY29uTGF5b3V0TGVmdFwiXHJcbiAgW2NsYXNzLngtdGV4dGFyZWEtaWNvbi1yaWdodF09XCJnZXRJY29uTGF5b3V0UmlnaHRcIlxyXG4gIFtuZ0NsYXNzXT1cImNsYXNzTWFwXCJcclxuPlxyXG4gIDxsYWJlbCAqbmdJZj1cImxhYmVsXCIgW2NsYXNzLngtdGV4dGFyZWEtbGFiZWwtcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbc3R5bGUud2lkdGhdPVwibGFiZWxXaWR0aFwiIFtuZ0NsYXNzXT1cImxhYmVsTWFwXCI+e3sgbGFiZWwgfX08L2xhYmVsPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LXRleHRhcmVhLXJvd1wiPlxyXG4gICAgPHRleHRhcmVhXHJcbiAgICAgICN0ZXh0YXJlYVJlZlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXHJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCJcclxuICAgICAgW3N0eWxlLnBhZGRpbmctbGVmdC5yZW1dPVwicGFkZGluZ0xlZnRcIlxyXG4gICAgICBbc3R5bGUucGFkZGluZy1yaWdodC5yZW1dPVwicGFkZGluZ1JpZ2h0XCJcclxuICAgICAgKGlucHV0KT1cImZvcm1Db250cm9sVmFsaWRhdG9yKClcIlxyXG4gICAgPjwvdGV4dGFyZWE+XHJcbiAgICA8eC1pY29uICpuZ0lmPVwiY2xlYXJTaG93XCIgY2xhc3M9XCJ4LXRleHRhcmVhLWNsZWFyXCIgdHlwZT1cImZ0by14XCIgKGNsaWNrKT1cIm9uQ2xlYXIoKVwiPjwveC1pY29uPlxyXG4gICAgPHgtaWNvbiAqbmdJZj1cImljb24gJiYgKCghY2xlYXJTaG93ICYmIGdldEljb25MYXlvdXRSaWdodCkgfHwgZ2V0SWNvbkxheW91dExlZnQpXCIgW3R5cGVdPVwiaWNvblwiIFtzcGluXT1cImljb25TcGluXCI+PC94LWljb24+XHJcbiAgICA8c3BhbiBjbGFzcz1cIngtdGV4dGFyZWEtbWF4LWxlbmd0aFwiICpuZ0lmPVwibWF4bGVuZ3RoXCI+e3sgbGVuZ3RoVG90YWwgfX08L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cIngtdGV4dGFyZWEtZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiaW52YWxpZFwiPnt7IGludmFsaWRNZXNzYWdlIH19PC9zcGFuPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlcXVpcmVkSXNFbXB0eSB8fCBpbnZhbGlkXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWJvcmRlci1lcnJvciB4LXRvcC1sZWZ0XCI+PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWJvcmRlci1lcnJvciB4LXRvcC1yaWdodFwiPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1ib3JkZXItZXJyb3IgeC1ib3R0b20tbGVmdFwiPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1ib3JkZXItZXJyb3IgeC1ib3R0b20tcmlnaHRcIj48L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBSXZCLFNBQVMsRUFHVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFrQixNQUFNLGtCQUFrQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7O0FBVXZELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUE2QnZELFlBQ1MsUUFBbUIsRUFDbkIsVUFBbUMsRUFDMUIsR0FBc0IsRUFDL0IsYUFBNkI7UUFFcEMsS0FBSyxFQUFFLENBQUM7UUFMRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQzFCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQy9CLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQXZCOUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUNuQyxnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixnQkFBVyxHQUFXLEdBQUcsQ0FBQztRQUMxQixpQkFBWSxHQUFXLEdBQUcsQ0FBQztRQUMzQixjQUFTLEdBQVksS0FBSyxDQUFDO0lBcUIzQixDQUFDO0lBaENRLFVBQVUsQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBU0QsSUFBSSxPQUFPO1FBQ1QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLE9BQU8sQ0FBQztJQUM3RCxDQUFDO0lBV0QsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzlCLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFVO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNqQztRQUNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDM0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQzVEO1FBQ0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QzthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDdkUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUMzRSxDQUFDO0lBRUQsV0FBVztRQUNULFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsZUFBZSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzVFLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7a0lBOUZVLGtCQUFrQjtzSEFBbEIsa0JBQWtCLHFDQUZsQixDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLHFTQ3RCakQseTREQTBDQTsyRkRsQmEsa0JBQWtCO2tCQVI5QixTQUFTOytCQUNFLEdBQUcsZUFBZSxFQUFFLGlCQUdmLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxjQUFjLG9CQUFvQixDQUFDO3NMQUdOLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDSyxXQUFXO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhUZXh0YXJlYVByZWZpeCwgWFRleHRhcmVhUHJvcGVydHkgfSBmcm9tICcuL3RleHRhcmVhLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzRW1wdHksIFhJc0NoYW5nZSwgWENsZWFyQ2xhc3MsIFhDb25maWdTZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQG5nLW5lc3QvdWkvYmFzZS1mb3JtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVGV4dGFyZWFQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N0eWxlL2luZGV4LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1hWYWx1ZUFjY2Vzc29yKFhUZXh0YXJlYUNvbXBvbmVudCldXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVGV4dGFyZWFDb21wb25lbnQgZXh0ZW5kcyBYVGV4dGFyZWFQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBAVmlld0NoaWxkKCd0ZXh0YXJlYScsIHsgc3RhdGljOiB0cnVlIH0pIHRleHRhcmVhITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgQFZpZXdDaGlsZCgndGV4dGFyZWFSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KSB0ZXh0YXJlYVJlZiE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgIHRoaXMuY2hhbmdlKHZhbHVlKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdmFsdWVMZW5ndGg6IG51bWJlciA9IDA7XHJcbiAgbGVuZ3RoVG90YWw6IHN0cmluZyA9ICcnO1xyXG4gIHBhZGRpbmdMZWZ0OiBudW1iZXIgPSAwLjQ7XHJcbiAgcGFkZGluZ1JpZ2h0OiBudW1iZXIgPSAwLjQ7XHJcbiAgY2xlYXJTaG93OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGdldCBnZXRJY29uKCkge1xyXG4gICAgcmV0dXJuICFYSXNFbXB0eSh0aGlzLmljb24pO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEljb25MYXlvdXRMZWZ0KCkge1xyXG4gICAgcmV0dXJuICFYSXNFbXB0eSh0aGlzLmljb24pICYmIHRoaXMuaWNvbkxheW91dCA9PT0gJ2xlZnQnO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEljb25MYXlvdXRSaWdodCgpIHtcclxuICAgIHJldHVybiAhWElzRW1wdHkodGhpcy5pY29uKSAmJiB0aGlzLmljb25MYXlvdXQgPT09ICdyaWdodCc7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHVibGljIG92ZXJyaWRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0UGFkZGluZygpO1xyXG4gICAgdGhpcy5zZXRGbGV4KHRoaXMudGV4dGFyZWEubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlciwgdGhpcy5qdXN0aWZ5LCB0aGlzLmFsaWduLCB0aGlzLmRpcmVjdGlvbik7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IGNsZWFyYWJsZSB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShjbGVhcmFibGUpICYmIHRoaXMuc2V0Q2xlYXJhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2UodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuX3JlcXVpcmVkICYmICF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMucmVxdWlyZWQgPSBYSXNFbXB0eSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldENsZWFyYWJsZSgpO1xyXG4gICAgaWYgKHRoaXMubWF4bGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMudmFsdWVMZW5ndGggPSBYSXNFbXB0eSh2YWx1ZSkgPyAwIDogYCR7dmFsdWV9YC5sZW5ndGg7XHJcbiAgICAgIHRoaXMubGVuZ3RoVG90YWwgPSBgJHt0aGlzLnZhbHVlTGVuZ3RofS8ke3RoaXMubWF4bGVuZ3RofWA7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFBhZGRpbmcoKTtcclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xlYXIoKSB7XHJcbiAgICBjb25zdCBjbGVhclZhbHVlID0gdGhpcy52YWx1ZTtcclxuICAgIHRoaXMudmFsdWUgPSAnJztcclxuICAgIHRoaXMuY2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5jbGVhckVtaXQuZW1pdChjbGVhclZhbHVlKTtcclxuICAgIHRoaXMudGV4dGFyZWFSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xlYXJhYmxlKCkge1xyXG4gICAgaWYgKHRoaXMuY2xlYXJhYmxlICYmICF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuY2xlYXJTaG93ID0gIVhJc0VtcHR5KHRoaXMudmFsdWUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jbGVhclNob3cgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFBhZGRpbmcoKSB7XHJcbiAgICB0aGlzLnBhZGRpbmdMZWZ0ID0gdGhpcy5pY29uICYmIHRoaXMuaWNvbkxheW91dCA9PT0gJ2xlZnQnID8gMS44IDogMC40O1xyXG4gICAgdGhpcy5wYWRkaW5nUmlnaHQgPSB0aGlzLmljb24gJiYgdGhpcy5pY29uTGF5b3V0ID09PSAncmlnaHQnID8gMS44IDogMC40O1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmNsYXNzTWFwLCB0aGlzLmxhYmVsTWFwKTtcclxuICAgIHRoaXMuY2xhc3NNYXBbYCR7WFRleHRhcmVhUHJlZml4fS0ke3RoaXMuc2l6ZX1gXSA9IHRoaXMuc2l6ZSA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMubGFiZWxNYXBbYHgtdGV4dC1hbGlnbi0ke3RoaXMubGFiZWxBbGlnbn1gXSA9IHRoaXMubGFiZWxBbGlnbiA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGZvcm1Db250cm9sQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuY2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgI3RleHRhcmVhXHJcbiAgY2xhc3M9XCJ4LXRleHRhcmVhXCJcclxuICBbY2xhc3MueC1mbGV4XT1cImp1c3RpZnkgfHwgYWxpZ24gfHwgZGlyZWN0aW9uXCJcclxuICBbY2xhc3MueC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgW2NsYXNzLngtcmVxdWlyZWRdPVwicmVxdWlyZWRJc0VtcHR5XCJcclxuICBbY2xhc3MueC1pbnZhbGlkXT1cImludmFsaWRcIlxyXG4gIFtjbGFzcy54LWNsZWFyYWJsZV09XCJjbGVhcmFibGVcIlxyXG4gIFtjbGFzcy54LWNsZWFyLXNob3ddPVwiY2xlYXJTaG93XCJcclxuICBbY2xhc3MueC10ZXh0YXJlYS1pY29uXT1cImdldEljb25cIlxyXG4gIFtjbGFzcy54LXRleHRhcmVhLWljb24tbGVmdF09XCJnZXRJY29uTGF5b3V0TGVmdFwiXHJcbiAgW2NsYXNzLngtdGV4dGFyZWEtaWNvbi1yaWdodF09XCJnZXRJY29uTGF5b3V0UmlnaHRcIlxyXG4gIFtuZ0NsYXNzXT1cImNsYXNzTWFwXCJcclxuPlxyXG4gIDxsYWJlbCAqbmdJZj1cImxhYmVsXCIgW2NsYXNzLngtdGV4dGFyZWEtbGFiZWwtcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbc3R5bGUud2lkdGhdPVwibGFiZWxXaWR0aFwiIFtuZ0NsYXNzXT1cImxhYmVsTWFwXCI+e3sgbGFiZWwgfX08L2xhYmVsPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LXRleHRhcmVhLXJvd1wiPlxyXG4gICAgPHRleHRhcmVhXHJcbiAgICAgICN0ZXh0YXJlYVJlZlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXHJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCJcclxuICAgICAgW3N0eWxlLnBhZGRpbmctbGVmdC5yZW1dPVwicGFkZGluZ0xlZnRcIlxyXG4gICAgICBbc3R5bGUucGFkZGluZy1yaWdodC5yZW1dPVwicGFkZGluZ1JpZ2h0XCJcclxuICAgICAgKGlucHV0KT1cImZvcm1Db250cm9sVmFsaWRhdG9yKClcIlxyXG4gICAgPjwvdGV4dGFyZWE+XHJcbiAgICA8eC1pY29uICpuZ0lmPVwiY2xlYXJTaG93XCIgY2xhc3M9XCJ4LXRleHRhcmVhLWNsZWFyXCIgdHlwZT1cImZ0by14XCIgKGNsaWNrKT1cIm9uQ2xlYXIoKVwiPjwveC1pY29uPlxyXG4gICAgPHgtaWNvbiAqbmdJZj1cImljb24gJiYgKCghY2xlYXJTaG93ICYmIGdldEljb25MYXlvdXRSaWdodCkgfHwgZ2V0SWNvbkxheW91dExlZnQpXCIgW3R5cGVdPVwiaWNvblwiIFtzcGluXT1cImljb25TcGluXCI+PC94LWljb24+XHJcbiAgICA8c3BhbiBjbGFzcz1cIngtdGV4dGFyZWEtbWF4LWxlbmd0aFwiICpuZ0lmPVwibWF4bGVuZ3RoXCI+e3sgbGVuZ3RoVG90YWwgfX08L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cIngtdGV4dGFyZWEtZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiaW52YWxpZFwiPnt7IGludmFsaWRNZXNzYWdlIH19PC9zcGFuPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlcXVpcmVkSXNFbXB0eSB8fCBpbnZhbGlkXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWJvcmRlci1lcnJvciB4LXRvcC1sZWZ0XCI+PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWJvcmRlci1lcnJvciB4LXRvcC1yaWdodFwiPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1ib3JkZXItZXJyb3IgeC1ib3R0b20tbGVmdFwiPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1ib3JkZXItZXJyb3IgeC1ib3R0b20tcmlnaHRcIj48L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19