@taiga-ui/kit 2.43.0 → 2.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  2. package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-action.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-avatar.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-carousel.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-checkbox-block.umd.min.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-field-error.umd.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-field-error.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-files.umd.js +49 -49
  28. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-files.umd.min.js +2 -2
  30. package/bundles/taiga-ui-kit-components-files.umd.min.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-filter.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +3 -1
  38. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +3 -1
  41. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-date.umd.js +3 -1
  44. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-input-number.umd.js +3 -2
  57. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  59. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-input-password.umd.js +1 -1
  61. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  64. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-input-range.umd.js +5 -1
  68. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +1 -1
  70. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-input-slider.umd.js +1 -1
  72. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  74. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
  76. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  78. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  83. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  87. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
  89. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-radio-block.umd.min.js.map +1 -1
  91. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-radio-labeled.umd.min.js.map +1 -1
  93. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-radio-list.umd.min.js.map +1 -1
  95. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
  97. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  99. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
  101. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-slider.umd.js +4 -2
  104. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  105. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  106. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  108. package/bundles/taiga-ui-kit-components-stepper.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-tabs.umd.js +62 -21
  110. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +2 -2
  112. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  114. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  115. package/bundles/taiga-ui-kit-components-text-area.umd.js +1 -1
  116. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  117. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  118. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  120. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  121. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  122. package/bundles/taiga-ui-kit-components-tree.umd.min.js.map +1 -1
  123. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +1 -1
  124. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js.map +1 -1
  126. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.min.js.map +1 -1
  127. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +1 -1
  128. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
  130. package/bundles/taiga-ui-kit-directives-highlight.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  132. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.min.js.map +1 -1
  133. package/bundles/taiga-ui-kit-directives-present.umd.js.map +1 -1
  134. package/bundles/taiga-ui-kit-directives-present.umd.min.js.map +1 -1
  135. package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
  136. package/bundles/taiga-ui-kit-directives-project-class.umd.min.js.map +1 -1
  137. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  138. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js.map +1 -1
  139. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  140. package/bundles/taiga-ui-kit-pipes-field-error.umd.min.js.map +1 -1
  141. package/bundles/taiga-ui-kit-utils-dom.umd.js.map +1 -1
  142. package/bundles/taiga-ui-kit-utils-dom.umd.min.js.map +1 -1
  143. package/bundles/taiga-ui-kit-utils-math.umd.js +1 -1
  144. package/bundles/taiga-ui-kit-utils-math.umd.js.map +1 -1
  145. package/bundles/taiga-ui-kit-utils-math.umd.min.js +1 -1
  146. package/bundles/taiga-ui-kit-utils-math.umd.min.js.map +1 -1
  147. package/components/accordion/accordion-item/accordion-item-content.directive.d.ts +2 -2
  148. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  149. package/components/breadcrumbs/breadcrumbs-wrapper.component.d.ts +1 -1
  150. package/components/files/files.component.d.ts +1 -1
  151. package/components/files/index.d.ts +1 -0
  152. package/components/files/taiga-ui-kit-components-files.d.ts +0 -1
  153. package/components/files/taiga-ui-kit-components-files.metadata.json +1 -1
  154. package/components/input-count/input-count-options.d.ts +2 -2
  155. package/components/input-count/input-count.component.d.ts +2 -2
  156. package/components/input-date/input-date.providers.d.ts +2 -1
  157. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  158. package/components/input-date-range/input-date-range.providers.d.ts +2 -1
  159. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  160. package/components/input-date-time/input-date-time.providers.d.ts +2 -1
  161. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  162. package/components/input-number/input-number.component.d.ts +2 -2
  163. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  164. package/components/input-password/input-password-options.d.ts +2 -2
  165. package/components/input-password/input-password.directive.d.ts +2 -1
  166. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  167. package/components/input-range/input-range.component.d.ts +2 -1
  168. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  169. package/components/input-tag/input-tag.component.d.ts +1 -1
  170. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  171. package/components/input-time/input-time-options.d.ts +1 -1
  172. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +3 -3
  173. package/components/radio-list/taiga-ui-kit-components-radio-list.metadata.json +1 -1
  174. package/components/select-option/select-option.component.d.ts +2 -2
  175. package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
  176. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  177. package/components/tabs/index.d.ts +1 -0
  178. package/components/tabs/tab.directive.d.ts +2 -2
  179. package/components/tabs/tabs/tabs.component.d.ts +3 -1
  180. package/components/tabs/tabs-options.d.ts +9 -0
  181. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +7 -2
  182. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  183. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  184. package/components/tree/misc/tree.interfaces.d.ts +1 -1
  185. package/esm2015/abstract/input-slider.js +1 -1
  186. package/esm2015/abstract/slider/slider.js +1 -1
  187. package/esm2015/components/accordion/accordion-item/accordion-item-content.directive.js +1 -1
  188. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +1 -1
  189. package/esm2015/components/accordion/accordion.component.js +1 -1
  190. package/esm2015/components/action/action.component.js +1 -1
  191. package/esm2015/components/avatar/avatar.component.js +1 -1
  192. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +1 -1
  193. package/esm2015/components/calendar-month/calendar-month.component.js +1 -1
  194. package/esm2015/components/calendar-range/calendar-range.component.js +1 -1
  195. package/esm2015/components/carousel/carousel.component.js +1 -1
  196. package/esm2015/components/checkbox/checkbox.component.js +1 -1
  197. package/esm2015/components/checkbox-block/checkbox-block.component.js +1 -1
  198. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +1 -1
  199. package/esm2015/components/combo-box/combo-box-strict.directive.js +1 -1
  200. package/esm2015/components/combo-box/combo-box.component.js +1 -1
  201. package/esm2015/components/combo-box/combo-box.directive.js +1 -1
  202. package/esm2015/components/field-error/field-error.component.js +1 -1
  203. package/esm2015/components/files/file/file.component.js +1 -1
  204. package/esm2015/components/files/files.component.js +1 -1
  205. package/esm2015/components/files/index.js +2 -1
  206. package/esm2015/components/files/taiga-ui-kit-components-files.js +1 -2
  207. package/esm2015/components/filter/filter.component.js +1 -1
  208. package/esm2015/components/input/input.component.js +1 -1
  209. package/esm2015/components/input/input.directive.js +1 -1
  210. package/esm2015/components/input-copy/input-copy.component.js +1 -1
  211. package/esm2015/components/input-copy/input-copy.directive.js +1 -1
  212. package/esm2015/components/input-count/input-count-options.js +1 -1
  213. package/esm2015/components/input-count/input-count.component.js +1 -1
  214. package/esm2015/components/input-count/input-count.directive.js +1 -1
  215. package/esm2015/components/input-date/input-date.component.js +1 -1
  216. package/esm2015/components/input-date/input-date.directive.js +1 -1
  217. package/esm2015/components/input-date/input-date.providers.js +1 -1
  218. package/esm2015/components/input-date-range/input-date-range.component.js +1 -1
  219. package/esm2015/components/input-date-range/input-date-range.directive.js +1 -1
  220. package/esm2015/components/input-date-range/input-date-range.providers.js +1 -1
  221. package/esm2015/components/input-date-time/input-date-time.component.js +1 -1
  222. package/esm2015/components/input-date-time/input-date-time.directive.js +1 -1
  223. package/esm2015/components/input-date-time/input-date-time.providers.js +1 -1
  224. package/esm2015/components/input-file/file/file.component.js +1 -1
  225. package/esm2015/components/input-file/input-file.component.js +1 -1
  226. package/esm2015/components/input-files/input-files.component.js +1 -1
  227. package/esm2015/components/input-inline/input-inline.component.js +1 -1
  228. package/esm2015/components/input-month/input-month.component.js +1 -1
  229. package/esm2015/components/input-month/input-month.directive.js +1 -1
  230. package/esm2015/components/input-month-range/input-month-range.component.js +1 -1
  231. package/esm2015/components/input-month-range/input-month-range.directive.js +1 -1
  232. package/esm2015/components/input-number/input-number.component.js +6 -5
  233. package/esm2015/components/input-number/input-number.directive.js +1 -1
  234. package/esm2015/components/input-password/input-password-options.js +3 -3
  235. package/esm2015/components/input-password/input-password.component.js +1 -1
  236. package/esm2015/components/input-password/input-password.directive.js +1 -1
  237. package/esm2015/components/input-phone/input-phone.component.js +1 -1
  238. package/esm2015/components/input-phone/input-phone.directive.js +1 -1
  239. package/esm2015/components/input-phone-international/input-phone-international.component.js +1 -1
  240. package/esm2015/components/input-range/input-range.component.js +7 -3
  241. package/esm2015/components/input-slider/input-slider.component.js +3 -3
  242. package/esm2015/components/input-tag/input-tag.component.js +2 -2
  243. package/esm2015/components/input-time/input-time-options.js +1 -1
  244. package/esm2015/components/input-time/input-time.component.js +1 -1
  245. package/esm2015/components/line-clamp/line-clamp.component.js +1 -1
  246. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +1 -1
  247. package/esm2015/components/multi-select/multi-select.component.js +1 -1
  248. package/esm2015/components/pagination/pagination.component.js +1 -1
  249. package/esm2015/components/radio/radio.component.js +1 -1
  250. package/esm2015/components/radio-block/radio-block.component.js +1 -1
  251. package/esm2015/components/radio-labeled/radio-labeled.component.js +1 -1
  252. package/esm2015/components/radio-list/radio-list.component.js +1 -1
  253. package/esm2015/components/range/range.component.js +1 -1
  254. package/esm2015/components/select/select.component.js +1 -1
  255. package/esm2015/components/select/select.directive.js +1 -1
  256. package/esm2015/components/select-option/select-option.component.js +1 -1
  257. package/esm2015/components/slider/slider-key-steps.directive.js +5 -3
  258. package/esm2015/components/slider/slider-old.component.js +1 -1
  259. package/esm2015/components/slider/slider-readonly.directive.js +1 -1
  260. package/esm2015/components/slider/slider.component.js +2 -2
  261. package/esm2015/components/stepper/step/step.component.js +1 -1
  262. package/esm2015/components/stepper/stepper.component.js +1 -1
  263. package/esm2015/components/tabs/index.js +2 -1
  264. package/esm2015/components/tabs/tab/tab.component.js +1 -1
  265. package/esm2015/components/tabs/tab.directive.js +1 -1
  266. package/esm2015/components/tabs/tabs/tabs.component.js +14 -10
  267. package/esm2015/components/tabs/tabs-options.js +14 -0
  268. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +32 -13
  269. package/esm2015/components/tag/tag.component.js +1 -1
  270. package/esm2015/components/text-area/text-area.component.js +2 -2
  271. package/esm2015/components/text-area/text-area.directive.js +1 -1
  272. package/esm2015/components/toggle/toggle.component.js +1 -1
  273. package/esm2015/components/tree/components/tree/tree.component.js +1 -1
  274. package/esm2015/components/tree/components/tree-item/tree-item.component.js +1 -1
  275. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +1 -1
  276. package/esm2015/components/tree/directives/tree-controller.directive.js +1 -1
  277. package/esm2015/components/tree/directives/tree-item-controller.directive.js +1 -1
  278. package/esm2015/components/tree/directives/tree-node.directive.js +1 -1
  279. package/esm2015/components/tree/misc/tree.interfaces.js +1 -1
  280. package/esm2015/components/tree/misc/tree.service.js +1 -1
  281. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +1 -1
  282. package/esm2015/directives/dropdown-hover/dropdown-hover.directive.js +1 -1
  283. package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +1 -1
  284. package/esm2015/directives/highlight/highlight.directive.js +1 -1
  285. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +1 -1
  286. package/esm2015/directives/lazy-loading/lazy-loading.service.js +1 -1
  287. package/esm2015/directives/present/present.directive.js +1 -1
  288. package/esm2015/directives/project-class/project-class.directive.js +1 -1
  289. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +1 -1
  290. package/esm2015/pipes/field-error/field-error-content-pipe.js +1 -1
  291. package/esm2015/pipes/field-error/field-error-pipe.js +1 -1
  292. package/esm2015/types/handler-with-context.js +1 -1
  293. package/esm2015/utils/dom/scroll-to-element.js +1 -1
  294. package/esm2015/utils/dom/set-range-offset.js +1 -1
  295. package/esm2015/utils/math/key-steps.js +2 -2
  296. package/esm5/abstract/input-slider.js +1 -1
  297. package/esm5/abstract/slider/slider.js +1 -1
  298. package/esm5/components/accordion/accordion-item/accordion-item-content.directive.js +1 -1
  299. package/esm5/components/accordion/accordion-item/accordion-item.component.js +1 -1
  300. package/esm5/components/accordion/accordion.component.js +1 -1
  301. package/esm5/components/action/action.component.js +1 -1
  302. package/esm5/components/avatar/avatar.component.js +1 -1
  303. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +1 -1
  304. package/esm5/components/calendar-month/calendar-month.component.js +1 -1
  305. package/esm5/components/calendar-range/calendar-range.component.js +1 -1
  306. package/esm5/components/carousel/carousel.component.js +1 -1
  307. package/esm5/components/checkbox/checkbox.component.js +1 -1
  308. package/esm5/components/checkbox-block/checkbox-block.component.js +1 -1
  309. package/esm5/components/checkbox-labeled/checkbox-labeled.component.js +1 -1
  310. package/esm5/components/combo-box/combo-box-strict.directive.js +1 -1
  311. package/esm5/components/combo-box/combo-box.component.js +1 -1
  312. package/esm5/components/combo-box/combo-box.directive.js +1 -1
  313. package/esm5/components/field-error/field-error.component.js +1 -1
  314. package/esm5/components/files/file/file.component.js +1 -1
  315. package/esm5/components/files/files.component.js +1 -1
  316. package/esm5/components/files/index.js +2 -1
  317. package/esm5/components/files/taiga-ui-kit-components-files.js +1 -2
  318. package/esm5/components/filter/filter.component.js +1 -1
  319. package/esm5/components/input/input.component.js +1 -1
  320. package/esm5/components/input/input.directive.js +1 -1
  321. package/esm5/components/input-copy/input-copy.component.js +1 -1
  322. package/esm5/components/input-copy/input-copy.directive.js +1 -1
  323. package/esm5/components/input-count/input-count-options.js +1 -1
  324. package/esm5/components/input-count/input-count.component.js +1 -1
  325. package/esm5/components/input-count/input-count.directive.js +1 -1
  326. package/esm5/components/input-date/input-date.component.js +1 -1
  327. package/esm5/components/input-date/input-date.directive.js +1 -1
  328. package/esm5/components/input-date/input-date.providers.js +4 -2
  329. package/esm5/components/input-date-range/input-date-range.component.js +1 -1
  330. package/esm5/components/input-date-range/input-date-range.directive.js +1 -1
  331. package/esm5/components/input-date-range/input-date-range.providers.js +4 -2
  332. package/esm5/components/input-date-time/input-date-time.component.js +1 -1
  333. package/esm5/components/input-date-time/input-date-time.directive.js +1 -1
  334. package/esm5/components/input-date-time/input-date-time.providers.js +4 -2
  335. package/esm5/components/input-file/file/file.component.js +1 -1
  336. package/esm5/components/input-file/input-file.component.js +1 -1
  337. package/esm5/components/input-files/input-files.component.js +1 -1
  338. package/esm5/components/input-inline/input-inline.component.js +1 -1
  339. package/esm5/components/input-month/input-month.component.js +1 -1
  340. package/esm5/components/input-month/input-month.directive.js +1 -1
  341. package/esm5/components/input-month-range/input-month-range.component.js +1 -1
  342. package/esm5/components/input-month-range/input-month-range.directive.js +1 -1
  343. package/esm5/components/input-number/input-number.component.js +6 -5
  344. package/esm5/components/input-number/input-number.directive.js +1 -1
  345. package/esm5/components/input-password/input-password-options.js +2 -2
  346. package/esm5/components/input-password/input-password.component.js +1 -1
  347. package/esm5/components/input-password/input-password.directive.js +1 -1
  348. package/esm5/components/input-phone/input-phone.component.js +1 -1
  349. package/esm5/components/input-phone/input-phone.directive.js +1 -1
  350. package/esm5/components/input-phone-international/input-phone-international.component.js +1 -1
  351. package/esm5/components/input-range/input-range.component.js +6 -2
  352. package/esm5/components/input-slider/input-slider.component.js +2 -2
  353. package/esm5/components/input-tag/input-tag.component.js +2 -2
  354. package/esm5/components/input-time/input-time-options.js +1 -1
  355. package/esm5/components/input-time/input-time.component.js +1 -1
  356. package/esm5/components/line-clamp/line-clamp.component.js +1 -1
  357. package/esm5/components/multi-select/multi-select-group/multi-select-group.component.js +1 -1
  358. package/esm5/components/multi-select/multi-select.component.js +1 -1
  359. package/esm5/components/pagination/pagination.component.js +1 -1
  360. package/esm5/components/radio/radio.component.js +1 -1
  361. package/esm5/components/radio-block/radio-block.component.js +1 -1
  362. package/esm5/components/radio-labeled/radio-labeled.component.js +1 -1
  363. package/esm5/components/radio-list/radio-list.component.js +1 -1
  364. package/esm5/components/range/range.component.js +1 -1
  365. package/esm5/components/select/select.component.js +1 -1
  366. package/esm5/components/select/select.directive.js +1 -1
  367. package/esm5/components/select-option/select-option.component.js +1 -1
  368. package/esm5/components/slider/slider-key-steps.directive.js +5 -3
  369. package/esm5/components/slider/slider-old.component.js +1 -1
  370. package/esm5/components/slider/slider-readonly.directive.js +1 -1
  371. package/esm5/components/slider/slider.component.js +2 -2
  372. package/esm5/components/stepper/step/step.component.js +1 -1
  373. package/esm5/components/stepper/stepper.component.js +1 -1
  374. package/esm5/components/tabs/index.js +2 -1
  375. package/esm5/components/tabs/tab/tab.component.js +1 -1
  376. package/esm5/components/tabs/tab.directive.js +1 -1
  377. package/esm5/components/tabs/tabs/tabs.component.js +14 -10
  378. package/esm5/components/tabs/tabs-options.js +15 -0
  379. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +36 -13
  380. package/esm5/components/tag/tag.component.js +1 -1
  381. package/esm5/components/text-area/text-area.component.js +2 -2
  382. package/esm5/components/text-area/text-area.directive.js +1 -1
  383. package/esm5/components/toggle/toggle.component.js +1 -1
  384. package/esm5/components/tree/components/tree/tree.component.js +1 -1
  385. package/esm5/components/tree/components/tree-item/tree-item.component.js +1 -1
  386. package/esm5/components/tree/components/tree-item-content/tree-item-content.component.js +1 -1
  387. package/esm5/components/tree/directives/tree-controller.directive.js +1 -1
  388. package/esm5/components/tree/directives/tree-item-controller.directive.js +1 -1
  389. package/esm5/components/tree/directives/tree-node.directive.js +1 -1
  390. package/esm5/components/tree/misc/tree.interfaces.js +1 -1
  391. package/esm5/components/tree/misc/tree.service.js +1 -1
  392. package/esm5/directives/dropdown-context/dropdown-context.directive.js +1 -1
  393. package/esm5/directives/dropdown-hover/dropdown-hover.directive.js +1 -1
  394. package/esm5/directives/dropdown-selection/dropdown-selection.directive.js +1 -1
  395. package/esm5/directives/highlight/highlight.directive.js +1 -1
  396. package/esm5/directives/lazy-loading/lazy-loading.directive.js +1 -1
  397. package/esm5/directives/lazy-loading/lazy-loading.service.js +1 -1
  398. package/esm5/directives/present/present.directive.js +1 -1
  399. package/esm5/directives/project-class/project-class.directive.js +1 -1
  400. package/esm5/internal/primitive-calendar-range/primitive-calendar-range.component.js +1 -1
  401. package/esm5/pipes/field-error/field-error-content-pipe.js +1 -1
  402. package/esm5/pipes/field-error/field-error-pipe.js +1 -1
  403. package/esm5/types/handler-with-context.js +1 -1
  404. package/esm5/utils/dom/scroll-to-element.js +1 -1
  405. package/esm5/utils/dom/set-range-offset.js +1 -1
  406. package/esm5/utils/math/key-steps.js +2 -2
  407. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  408. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  409. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  410. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  411. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  412. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  413. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  414. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  415. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  416. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  417. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  418. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  419. package/fesm2015/taiga-ui-kit-components-field-error.js.map +1 -1
  420. package/fesm2015/taiga-ui-kit-components-files.js +47 -47
  421. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  422. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  423. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  424. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  425. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  426. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  427. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  428. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  429. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  430. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  431. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  432. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  433. package/fesm2015/taiga-ui-kit-components-input-number.js +5 -4
  434. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  435. package/fesm2015/taiga-ui-kit-components-input-password.js +2 -2
  436. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  437. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  438. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  439. package/fesm2015/taiga-ui-kit-components-input-range.js +6 -2
  440. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  441. package/fesm2015/taiga-ui-kit-components-input-slider.js +2 -2
  442. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  443. package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
  444. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  445. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  446. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  447. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  448. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  449. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  450. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  451. package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  452. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  453. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  454. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  455. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  456. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  457. package/fesm2015/taiga-ui-kit-components-slider.js +5 -3
  458. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  459. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  460. package/fesm2015/taiga-ui-kit-components-tabs.js +56 -22
  461. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  462. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  463. package/fesm2015/taiga-ui-kit-components-text-area.js +1 -1
  464. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  465. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  466. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  467. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  468. package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js.map +1 -1
  469. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  470. package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
  471. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  472. package/fesm2015/taiga-ui-kit-directives-present.js.map +1 -1
  473. package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
  474. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  475. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  476. package/fesm2015/taiga-ui-kit-utils-dom.js.map +1 -1
  477. package/fesm2015/taiga-ui-kit-utils-math.js +1 -1
  478. package/fesm2015/taiga-ui-kit-utils-math.js.map +1 -1
  479. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  480. package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
  481. package/fesm5/taiga-ui-kit-components-action.js.map +1 -1
  482. package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
  483. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  484. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  485. package/fesm5/taiga-ui-kit-components-calendar-range.js.map +1 -1
  486. package/fesm5/taiga-ui-kit-components-carousel.js.map +1 -1
  487. package/fesm5/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  488. package/fesm5/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  489. package/fesm5/taiga-ui-kit-components-checkbox.js.map +1 -1
  490. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  491. package/fesm5/taiga-ui-kit-components-field-error.js.map +1 -1
  492. package/fesm5/taiga-ui-kit-components-files.js +52 -52
  493. package/fesm5/taiga-ui-kit-components-files.js.map +1 -1
  494. package/fesm5/taiga-ui-kit-components-filter.js.map +1 -1
  495. package/fesm5/taiga-ui-kit-components-input-copy.js.map +1 -1
  496. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  497. package/fesm5/taiga-ui-kit-components-input-date-range.js +3 -1
  498. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  499. package/fesm5/taiga-ui-kit-components-input-date-time.js +3 -1
  500. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  501. package/fesm5/taiga-ui-kit-components-input-date.js +3 -1
  502. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  503. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  504. package/fesm5/taiga-ui-kit-components-input-files.js.map +1 -1
  505. package/fesm5/taiga-ui-kit-components-input-inline.js.map +1 -1
  506. package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
  507. package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
  508. package/fesm5/taiga-ui-kit-components-input-number.js +5 -4
  509. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  510. package/fesm5/taiga-ui-kit-components-input-password.js +1 -1
  511. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  512. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  513. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  514. package/fesm5/taiga-ui-kit-components-input-range.js +5 -1
  515. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  516. package/fesm5/taiga-ui-kit-components-input-slider.js +1 -1
  517. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  518. package/fesm5/taiga-ui-kit-components-input-tag.js +1 -1
  519. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  520. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  521. package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
  522. package/fesm5/taiga-ui-kit-components-line-clamp.js.map +1 -1
  523. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  524. package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
  525. package/fesm5/taiga-ui-kit-components-radio-block.js.map +1 -1
  526. package/fesm5/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  527. package/fesm5/taiga-ui-kit-components-radio-list.js.map +1 -1
  528. package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
  529. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  530. package/fesm5/taiga-ui-kit-components-select-option.js.map +1 -1
  531. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  532. package/fesm5/taiga-ui-kit-components-slider.js +5 -3
  533. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  534. package/fesm5/taiga-ui-kit-components-stepper.js.map +1 -1
  535. package/fesm5/taiga-ui-kit-components-tabs.js +61 -23
  536. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  537. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  538. package/fesm5/taiga-ui-kit-components-text-area.js +1 -1
  539. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  540. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  541. package/fesm5/taiga-ui-kit-components-tree.js.map +1 -1
  542. package/fesm5/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  543. package/fesm5/taiga-ui-kit-directives-dropdown-hover.js.map +1 -1
  544. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  545. package/fesm5/taiga-ui-kit-directives-highlight.js.map +1 -1
  546. package/fesm5/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  547. package/fesm5/taiga-ui-kit-directives-present.js.map +1 -1
  548. package/fesm5/taiga-ui-kit-directives-project-class.js.map +1 -1
  549. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  550. package/fesm5/taiga-ui-kit-pipes-field-error.js.map +1 -1
  551. package/fesm5/taiga-ui-kit-utils-dom.js.map +1 -1
  552. package/fesm5/taiga-ui-kit-utils-math.js +1 -1
  553. package/fesm5/taiga-ui-kit-utils-math.js.map +1 -1
  554. package/package.json +4 -4
  555. package/types/handler-with-context.d.ts +2 -2
@@ -496,7 +496,7 @@ var TuiInputTagComponent = /** @class */ (function (_super) {
496
496
  HINT_CONTROLLER_PROVIDER,
497
497
  MODE_PROVIDER,
498
498
  ],
499
- styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size='s']{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size='m']{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size='l']{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end,0) 0 var(--border-start,0);border-inline-start-width:var(--border-start,0);border-inline-end-width:var(--border-end,0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:focus,.t-input:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}.t-input :host-context(tui-primitive-textfield[data-mode=onDark]):-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=onDark]):-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=onDark]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=onDark]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=onDark]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=onDark]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,:host[data-mode=onDark] .t-input:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill-night) inset!important}.t-input :host-context(tui-primitive-textfield[data-size='s']):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size='s']):not(tui-text-area),:host[data-size='s'] .t-input{padding:0 var(--tui-padding-s)}.t-input :host-context(tui-primitive-textfield[data-size='l']):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size='l']):not(tui-text-area),:host[data-size='l'] .t-input{padding:0 var(--tui-padding-l)}.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled),:host._disabled .t-input{pointer-events:none}.t-input :host-context(tui-primitive-textfield[data-size='l']:not(._label-outside)):not(tui-primitive-textfield),:host[data-size='l']:not(._label-outside) .t-input{padding-top:1.25rem}.t-input :host-context(tui-primitive-textfield[data-size='l']:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.content .placeholder,:host[data-size='l']:not(._label-outside) .t-input:-webkit-autofill+.content .placeholder{font-size:.8156rem;transform:translateY(-.625rem)}.t-input :host-context(tui-primitive-textfield[data-size='m']:not(._label-outside)):not(tui-primitive-textfield),:host[data-size='m']:not(._label-outside) .t-input{padding-top:1.125rem}.t-input :host-context(tui-primitive-textfield[data-size='m']:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.content .placeholder,:host[data-size='m']:not(._label-outside) .t-input:-webkit-autofill+.content .placeholder{font-size:.69rem;transform:translateY(-.5rem)}.t-input :host-context(tui-primitive-textfield._hidden),:host._hidden input.t-input{opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size='s'] .t-content{padding:0 var(--tui-padding-s)}:host[data-size='l'] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:'';margin-right:-.25rem}:host[data-size='m'] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size='m'] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size='l']._focused._label-outside .t-placeholder,:host[data-size='m']._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size='l'] .t-placeholder{font-size:.9375rem}:host[data-size='l'] .t-placeholder_raised{font-size:.8156rem}:host[data-size='l']._focused:not(._label-outside) .t-placeholder,:host[data-size='m']._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size='l'][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size='m'][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size='l'][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size='m'][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens:none){.t-placeholder{transition-property:transform,color,letter-spacing}}.t-cleaner{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}.t-cleaner:hover{color:var(--tui-text-02)}:host._disabled .t-cleaner,:host._readonly .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size='s'] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host{cursor:text}:host._expandable{height:auto;max-height:none}:host._disabled{pointer-events:none}:host._readonly{cursor:default}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{margin:0 -.25rem;padding:0 .25rem}.t-tags{display:flex;align-items:center;box-sizing:border-box}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal}:host._readonly .t-tags{pointer-events:none}:host[data-size='s'] .t-tags{min-height:var(--tui-height-s);padding:.25rem .25rem .25rem 0}:host[data-size='m'] .t-tags{min-height:var(--tui-height-m);padding:.5rem .25rem .5rem 0}:host[data-size='l'] .t-tags{min-height:var(--tui-height-l);padding:.625rem .25rem .625rem 0}:host[data-size='m']:not(._label-outside) .t-tags{padding:1.1875rem 1rem 0 0}:host[data-size='l']:not(._label-outside) .t-tags{padding:1.6875rem 1rem .5625rem 0}.t-tags :host[data-size]{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem}:host[data-size]:not(._label-outside) .t-tags{-webkit-padding-end:1rem;padding-inline-end:1rem}.t-content{align-items:flex-start}.t-icons{display:flex;align-items:center;padding:0 0 0 .75rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-padding-end:0;padding-inline-end:0}.t-icons_left{padding:0;margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host._expandable .t-icons_right{margin:0 0 0 -.625rem;-webkit-margin-start:-.625rem;margin-inline-start:-.625rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size='s'] .t-icons{height:var(--tui-height-s)}:host[data-size='m'] .t-icons{height:var(--tui-height-m)}:host[data-size='l'] .t-icons{height:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size='m'] .t-absolute-wrapper{height:var(--tui-height-m)}:host[data-size='l'] .t-absolute-wrapper{height:var(--tui-height-l)}.t-wrapper{position:relative;padding:0}.t-tag{margin:.125rem .5rem .125rem -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;max-width:100%;flex-shrink:0}.t-text:after{content:',\\00a0'}.t-text_disabled{color:var(--tui-text-03)}.t-text_error{color:var(--tui-negative)}:host:not(._expandable) .t-text{white-space:nowrap}:host:not(._focused) .t-text:last-of-type:after{content:''}.t-input-wrapper{position:relative;flex:1;max-width:100%}.t-input-wrapper_collapsed{flex:0;margin:0 0 0 -.5rem;-webkit-margin-start:-.5rem;margin-inline-start:-.5rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size='s'] .t-input-wrapper{min-height:1.5rem}:host[data-size='m'] .t-input-wrapper{min-height:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size='l'] .t-input-wrapper{min-height:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper{min-height:1.25rem}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-width:.125rem}:host:not(._expandable) .t-ghost{min-width:2rem}.t-native{margin:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:focus,.t-native:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-native::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-native::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-native::placeholder{color:var(--tui-text-03-night)}:host._focused .t-native:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-native:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-error-fill);width:1rem;height:1rem}"]
499
+ styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size='s']{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size='m']{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size='l']{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end,0) 0 var(--border-start,0);border-inline-start-width:var(--border-start,0);border-inline-end-width:var(--border-end,0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:focus,.t-input:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}.t-input :host-context(tui-primitive-textfield[data-mode=onDark]):-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=onDark]):-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=onDark]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=onDark]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=onDark]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=onDark]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,:host[data-mode=onDark] .t-input:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill-night) inset!important}.t-input :host-context(tui-primitive-textfield[data-size='s']):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size='s']):not(tui-text-area),:host[data-size='s'] .t-input{padding:0 var(--tui-padding-s)}.t-input :host-context(tui-primitive-textfield[data-size='l']):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size='l']):not(tui-text-area),:host[data-size='l'] .t-input{padding:0 var(--tui-padding-l)}.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled),:host._disabled .t-input{pointer-events:none}.t-input :host-context(tui-primitive-textfield[data-size='l']:not(._label-outside)):not(tui-primitive-textfield),:host[data-size='l']:not(._label-outside) .t-input{padding-top:1.25rem}.t-input :host-context(tui-primitive-textfield[data-size='l']:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.content .placeholder,:host[data-size='l']:not(._label-outside) .t-input:-webkit-autofill+.content .placeholder{font-size:.8156rem;transform:translateY(-.625rem)}.t-input :host-context(tui-primitive-textfield[data-size='m']:not(._label-outside)):not(tui-primitive-textfield),:host[data-size='m']:not(._label-outside) .t-input{padding-top:1.125rem}.t-input :host-context(tui-primitive-textfield[data-size='m']:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.content .placeholder,:host[data-size='m']:not(._label-outside) .t-input:-webkit-autofill+.content .placeholder{font-size:.69rem;transform:translateY(-.5rem)}.t-input :host-context(tui-primitive-textfield._hidden),:host._hidden input.t-input{opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size='s'] .t-content{padding:0 var(--tui-padding-s)}:host[data-size='l'] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:'';margin-right:-.25rem}:host[data-size='m'] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size='m'] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size='l']._focused._label-outside .t-placeholder,:host[data-size='m']._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size='l'] .t-placeholder{font-size:.9375rem}:host[data-size='l'] .t-placeholder_raised{font-size:.8156rem}:host[data-size='l']._focused:not(._label-outside) .t-placeholder,:host[data-size='m']._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size='l'][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size='m'][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size='l'][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size='m'][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens:none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}.t-cleaner:hover{color:var(--tui-text-02)}:host._disabled .t-cleaner,:host._readonly .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size='s'] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host{cursor:text}:host._expandable{height:auto;max-height:none}:host._disabled{pointer-events:none}:host._readonly{cursor:default}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{margin:0 -.25rem;padding:0 .25rem}.t-tags{display:flex;align-items:center;box-sizing:border-box}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal}:host._readonly .t-tags{pointer-events:none}:host[data-size='s'] .t-tags{min-height:var(--tui-height-s);padding:.25rem .25rem .25rem 0}:host[data-size='m'] .t-tags{min-height:var(--tui-height-m);padding:.5rem .25rem .5rem 0}:host[data-size='l'] .t-tags{min-height:var(--tui-height-l);padding:.625rem .25rem .625rem 0}:host[data-size='m']:not(._label-outside) .t-tags{padding:1.1875rem 1rem 0 0}:host[data-size='l']:not(._label-outside) .t-tags{padding:1.6875rem 1rem .5625rem 0}.t-tags :host[data-size]{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem}:host[data-size]:not(._label-outside) .t-tags{-webkit-padding-end:1rem;padding-inline-end:1rem}.t-content{align-items:flex-start}.t-icons{display:flex;align-items:center;padding:0 0 0 .75rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-padding-end:0;padding-inline-end:0}.t-icons_left{padding:0;margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host._expandable .t-icons_right{margin:0 0 0 -.625rem;-webkit-margin-start:-.625rem;margin-inline-start:-.625rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size='s'] .t-icons{height:var(--tui-height-s)}:host[data-size='m'] .t-icons{height:var(--tui-height-m)}:host[data-size='l'] .t-icons{height:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size='m'] .t-absolute-wrapper{height:var(--tui-height-m)}:host[data-size='l'] .t-absolute-wrapper{height:var(--tui-height-l)}.t-wrapper{position:relative;padding:0}.t-tag{margin:.125rem .5rem .125rem -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;max-width:100%;flex-shrink:0}.t-text:after{content:',\\00a0'}.t-text_disabled{color:var(--tui-text-03)}.t-text_error{color:var(--tui-negative)}:host:not(._expandable) .t-text{white-space:nowrap}:host:not(._focused) .t-text:last-of-type:after{content:''}.t-input-wrapper{position:relative;flex:1;max-width:100%}.t-input-wrapper_collapsed{flex:0;margin:0 0 0 -.5rem;-webkit-margin-start:-.5rem;margin-inline-start:-.5rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size='s'] .t-input-wrapper{min-height:1.5rem}:host[data-size='m'] .t-input-wrapper{min-height:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size='l'] .t-input-wrapper{min-height:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper{min-height:1.25rem}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-width:.125rem}:host:not(._expandable) .t-ghost{min-width:2rem}.t-native{margin:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:focus,.t-native:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-native::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-native::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-native::placeholder{color:var(--tui-text-03-night)}:host._focused .t-native:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-native:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-error-fill);width:1rem;height:1rem}"]
500
500
  }),
501
501
  __param(0, Optional()),
502
502
  __param(0, Self()),
@@ -518,4 +518,4 @@ var TuiInputTagComponent = /** @class */ (function (_super) {
518
518
  return TuiInputTagComponent;
519
519
  }(AbstractTuiMultipleControl));
520
520
  export { TuiInputTagComponent };
521
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC10YWcvIiwic291cmNlcyI6WyJpbnB1dC10YWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULElBQUksRUFDSixXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUNILDBCQUEwQixFQUMxQixvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLFdBQVcsRUFDWCxlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLGNBQWMsRUFDZCxnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0QixpQkFBaUIsRUFDakIsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCwyQkFBMkIsRUFDM0IsZ0JBQWdCLEVBQ2hCLGNBQWMsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHdCQUF3QixFQUN4QixhQUFhLEVBQ2IsNkJBQTZCLEVBQzdCLGtCQUFrQixFQUNsQiwyQkFBMkIsRUFDM0IsUUFBUSxFQUNSLHdCQUF3QixFQUN4QixnQ0FBZ0MsRUFDaEMsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsMEJBQTBCLEVBQzFCLHNCQUFzQixFQUN0QiwwQkFBMEIsRUFDMUIsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixRQUFRLEVBQ1IsUUFBUSxFQUNSLHNCQUFzQixHQUN6QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUdwRCxPQUFPLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4RSxPQUFPLEVBQUMscUJBQXFCLEVBQXFCLE1BQU0scUJBQXFCLENBQUM7QUFFOUUsSUFBTSx3QkFBd0IsR0FBRyxDQUFDLENBQUM7QUFzQm5DO0lBQ1ksd0NBQWtDO0lBa0cxQyw4QkFJSSxPQUF5QixFQUNFLGlCQUFvQyxFQUNwQixnQkFBa0MsRUFDeEMsVUFBbUMsRUFDN0IsVUFBa0IsRUFHNUMsYUFBc0MsRUFFdEMsS0FBdUMsRUFDZixTQUFxQixFQUVyRCxjQUEwQyxFQUUxQyxVQUFrQyxFQUUxQixPQUEyQixFQUczQixvQkFBaUQ7UUF2QnRFLFlBeUJJLGtCQUFNLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxTQUNwQztRQXBCOEMsc0JBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUN4QyxnQkFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDN0IsZ0JBQVUsR0FBVixVQUFVLENBQVE7UUFHNUMsbUJBQWEsR0FBYixhQUFhLENBQXlCO1FBRXRDLFdBQUssR0FBTCxLQUFLLENBQWtDO1FBQ2YsZUFBUyxHQUFULFNBQVMsQ0FBWTtRQUVyRCxvQkFBYyxHQUFkLGNBQWMsQ0FBNEI7UUFFMUMsZ0JBQVUsR0FBVixVQUFVLENBQXdCO1FBRTFCLGFBQU8sR0FBUCxPQUFPLENBQW9CO1FBRzNCLDBCQUFvQixHQUFwQixvQkFBb0IsQ0FBNkI7UUE1R3JELFVBQUksR0FBdUMsV0FBVyxDQUFDO1FBUXZELG9CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNyQyxrQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFcEQsc0JBQXNCO1FBR3RCLGlCQUFXLEdBQUcsSUFBSSxDQUFDO1FBSW5CLGVBQVMsR0FBb0IsS0FBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFJcEQsVUFBSSxHQUFHLEVBQUUsQ0FBQztRQUlWLGVBQVMsR0FBMkIsT0FBTyxDQUFDO1FBSTVDLFlBQU0sR0FBRyxFQUFFLENBQUM7UUFJWixjQUFRLEdBQUcsSUFBSSxDQUFDO1FBSWhCLGtCQUFZLEdBQThCLG1CQUFtQixDQUFDO1FBSzlELGdCQUFVLEdBQUcsSUFBSSxDQUFDO1FBSWxCLGlCQUFXLEdBQUcsS0FBSyxDQUFDO1FBSXBCLGdCQUFVLEdBQUcsS0FBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFJckMseUJBQW1CLEdBQ2Ysb0JBQW9CLENBQUM7UUFZaEIsa0JBQVksR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBYW5ELGFBQU8sR0FBMkIsS0FBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsTUFBTSxFQUFYLENBQVcsQ0FBQyxDQUFDLENBQUM7UUFFMUUsVUFBSSxHQUFHLEtBQUssQ0FBQzs7SUE0QmIsQ0FBQzs2QkE3SFEsb0JBQW9CO0lBeUU3QixzQkFBSSxxREFBbUI7YUFBdkIsVUFBd0IsS0FBcUI7WUFDekMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDOUI7WUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMvQixDQUFDOzs7T0FBQTtJQVlELHNCQUFJLGdEQUFjO2FBQWxCLFVBQW1CLFFBQXNDO1lBQ3JELElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QyxDQUFDOzs7T0FBQTtJQWtDRCxzQkFBSSx3REFBc0I7YUFBMUI7WUFDSSxPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0I7Z0JBQ2xELENBQUMsQ0FBQyxJQUFJO2dCQUNOLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQzlDLENBQUM7OztPQUFBO0lBRUQsc0JBQUkseUNBQU87YUFBWDs7WUFDSSxPQUFPLENBQ0gsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7Z0JBQ2hELENBQUMsUUFBQyxJQUFJLENBQUMsY0FBYywwQ0FBRSxPQUFPLENBQUEsQ0FDakMsQ0FBQztRQUNOLENBQUM7OztPQUFBO0lBR0Qsc0JBQUksc0NBQUk7YUFBUjtZQUNJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDaEMsQ0FBQzs7O09BQUE7SUFHRCxzQkFBSSw4Q0FBWTthQUFoQjtZQUNVLElBQUEsb0JBQXNDLEVBQXJDLGNBQUksRUFBRSw4QkFBK0IsQ0FBQztZQUU3QyxPQUFPLElBQUksS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDO1FBQ3hDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNENBQVU7YUFBZDtZQUNJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3hFLENBQUM7OztPQUFBO0lBRUQsc0JBQUksZ0RBQWM7YUFBbEI7WUFDSSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3pCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksMENBQVE7YUFBWjtZQUNJLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDdEQsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxnREFBYzthQUFsQjtZQUNJLE9BQU8sQ0FDSCxDQUFDLElBQUksQ0FBQyxZQUFZO2dCQUNsQixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FDakUsQ0FBQztRQUNOLENBQUM7OztPQUFBO0lBRUQsc0JBQUksbURBQWlCO2FBQXJCO1lBQ0ksT0FBTyxDQUNILENBQUMsSUFBSSxDQUFDLFlBQVk7Z0JBQ2xCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDOUQsQ0FBQztRQUNOLENBQUM7OztPQUFBO0lBRUQsc0JBQUksZ0RBQWM7YUFBbEI7WUFDSSxPQUFPLENBQ0gsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVztnQkFDN0IsSUFBSSxDQUFDLGVBQWU7Z0JBQ3BCLENBQUMsSUFBSSxDQUFDLFFBQVE7Z0JBQ2QsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUNqQixDQUFDO1FBQ04sQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBVTthQUFkO1lBQ0ksT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzNELENBQUM7OztPQUFBO0lBRUQsc0JBQUksK0NBQWE7YUFBakI7WUFDSSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssTUFBTSxDQUFDO1FBQ3BELENBQUM7OztPQUFBO0lBRUQsc0JBQUksZ0RBQWM7YUFBbEI7WUFDSSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssT0FBTyxDQUFDO1FBQ3JELENBQUM7OztPQUFBO0lBRUQsc0JBQUksK0NBQWE7YUFBakI7WUFDSSxPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQ3JFLENBQUM7OztPQUFBO0lBRUQsc0JBQUksd0NBQU07YUFBVjs7WUFDSSxPQUFPLE9BQUEsSUFBSSxDQUFDLGFBQWEsMENBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakUsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSx5Q0FBTzthQUFYO1lBQ0ksT0FBTyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9DLENBQUM7OztPQUFBO0lBRUQsNkNBQWMsR0FBZCxVQUFlLEdBQVc7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGlCQUFpQjtZQUNwRCxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUN4QixDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2IsQ0FBQztJQUVELDZDQUFjLEdBQWQ7O1FBQ0ksSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsTUFBQSxJQUFJLENBQUMsb0JBQW9CLDBDQUFFLFVBQVUsQ0FBQyxJQUFJLEVBQUU7SUFDaEQsQ0FBQztJQUVELDJDQUFZLEdBQVosVUFBYSxNQUFlO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUM5QjtJQUNMLENBQUM7SUFFRCwwQ0FBVyxHQUFYLFVBQVksS0FBaUI7UUFDekIsSUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVDLElBQ0ksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCO1lBQ3RCLFlBQVksS0FBSyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYTtZQUNwRCx1QkFBdUI7WUFDdkIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLFlBQVksT0FBTyxDQUFDO1lBQ2xDLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pFLENBQUMsSUFBSSxDQUFDLGFBQWE7Z0JBQ2YsWUFBWSxLQUFLLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYTtnQkFDakQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQzlEO1lBQ0UsT0FBTztTQUNWO1FBRUQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsc0RBQXVCLEdBQXZCLFVBQXdCLEtBQVk7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1NBQ2hDO2FBQU07WUFDSCxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdkM7SUFDTCxDQUFDO0lBRUQsc0RBQXVCLEdBQXZCLFVBQXdCLEtBQVk7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2pFLE9BQU87U0FDVjtRQUVELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsa0RBQW1CLEdBQW5CO1FBQ0ksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsb0RBQXFCLEdBQXJCLFVBQXNCLFlBQW9CO1FBQ3RDLElBQUksWUFBWSxHQUFHLENBQUMsRUFBRTtZQUNsQixJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQUVELHFEQUFzQixHQUF0QixVQUF1QixZQUFvQjtRQUN2QyxJQUFJLFlBQVksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ3JCO2FBQU07WUFDSCxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztTQUN6QztJQUNMLENBQUM7SUFFRCwwQ0FBVyxHQUFYLFVBQVksS0FBYSxFQUFFLEtBQWE7UUFBeEMsaUJBaUJDO1FBaEJHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsV0FBVyxDQUNaLElBQUksQ0FBQyxLQUFLO2FBQ0wsR0FBRyxDQUFDLFVBQUMsR0FBRyxFQUFFLFFBQVE7WUFDZixPQUFBLFFBQVEsS0FBSyxLQUFLO2dCQUNkLENBQUMsQ0FBQyxHQUFHO2dCQUNMLENBQUMsQ0FBQyxLQUFLO3FCQUNBLEtBQUssQ0FBQyxLQUFJLENBQUMsU0FBUyxDQUFDO3FCQUNyQixHQUFHLENBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQVYsQ0FBVSxDQUFDO3FCQUN0QixNQUFNLENBQUMsT0FBTyxDQUFDO1FBTDFCLENBSzBCLENBQzdCO2FBQ0EsTUFBTSxDQUNILFVBQUMsTUFBTSxFQUFFLElBQXVCLElBQUssT0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFuQixDQUFtQixFQUN4RCxFQUFFLENBQ0wsQ0FDUixDQUFDO0lBQ04sQ0FBQztJQUVELDJDQUFZLEdBQVosVUFBYSxJQUFZO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxzQ0FBTyxHQUFQLFVBQVEsS0FBYTtRQUFyQixpQkFpQkM7UUFoQkcsSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVc7WUFDMUIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUM3QixDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLEtBQUs7YUFDYixHQUFHLENBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQVgsQ0FBVyxDQUFDO2FBQ3hCLE1BQU0sQ0FBQyxVQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBUTtnQkFBUCxrQkFBTTtZQUFNLE9BQUEsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksS0FBSyxLQUFLLE1BQU0sR0FBRyxDQUFDO1FBQXZDLENBQXVDLENBQUMsQ0FBQztRQUNoRixJQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsQ0FBQyxLQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLEVBQTlCLENBQThCLENBQUMsQ0FBQztRQUVyRSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsV0FBVyxVQUFLLElBQUksQ0FBQyxLQUFLLEVBQUssU0FBUyxFQUFFLENBQUM7U0FDbkQ7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUI7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDcEMsQ0FBQztJQUVELDhDQUFlLEdBQWYsVUFBZ0IsT0FBZ0I7UUFDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsK0NBQWdCLEdBQWhCO1FBQ0ksaUJBQU0sZ0JBQWdCLFdBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsd0NBQVMsR0FBVCxVQUFVLENBQVMsRUFBRSxHQUFXO1FBQzVCLHdEQUF3RDtRQUN4RCxPQUFPLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRVMsMENBQVcsR0FBckIsVUFBc0IsS0FBZTtRQUFyQyxpQkFZQztRQVhHLElBQU0sSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFFdkIsaUJBQU0sV0FBVyxZQUNiLEtBQUs7YUFDQSxPQUFPLEVBQUU7YUFDVCxNQUFNLENBQ0gsVUFBQSxJQUFJO1lBQ0EsT0FBQSxDQUFDLEtBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQWpFLENBQWlFLENBQ3hFO2FBQ0EsT0FBTyxFQUFFLENBQ2pCLENBQUM7SUFDTixDQUFDO0lBRU8sOENBQWUsR0FBdkIsVUFBd0IsWUFBb0IsRUFBRSxJQUFZO1FBQ3RELElBQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQUMsS0FBSyxFQUFFLEtBQUssSUFBSyxPQUFBLEtBQUssS0FBSyxZQUFZLEdBQUcsSUFBSSxFQUE3QixDQUE2QixDQUFDLENBQUM7UUFFNUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDekIsT0FBTztTQUNWO1FBRUQsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXBDLElBQ0ksSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFdBQVc7WUFDM0MsSUFBSSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVTtZQUNuQyxHQUFHLENBQUMsYUFBYSxDQUFDLFdBQVc7WUFDakMsQ0FBQyxFQUNIO1lBQ0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsVUFBVTtnQkFDbkMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQztJQUVPLHVEQUF3QixHQUFoQyxVQUFpQyxRQUFzQztRQUF2RSxpQkF1QkM7UUF0QkcsSUFBSSxFQUFDLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxnQkFBZ0IsQ0FBQSxFQUFFO1lBQzdCLE9BQU87U0FDVjtRQUVNLElBQUEsdURBQWEsQ0FBOEI7UUFFbEQsSUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3hFLE1BQU0sQ0FBQyxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLEtBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEVBQXRELENBQXNELENBQUMsRUFDdkUsY0FBYyxFQUFFLEVBQ2hCLEdBQUcsQ0FBQyxVQUFDLEVBQVE7Z0JBQVAsa0JBQU07WUFDUixPQUFBLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxNQUFNLEdBQUcsd0JBQXdCLEVBQUUsQ0FBQyxDQUFDO1FBQXpFLENBQXlFLENBQzVFLENBQ0osQ0FBQztRQUNGLElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xELElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFNLE9BQUEsYUFBYSxDQUFDLFdBQVcsRUFBekIsQ0FBeUIsQ0FBQyxDQUFDLENBQUM7UUFFMUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDO2FBQ3RCLElBQUksQ0FDRCxTQUFTLENBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxLQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQXJELENBQXFELENBQUMsRUFDeEUsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0I7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sMkNBQVksR0FBcEIsVUFBcUIsS0FBYTtRQUM5QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7U0FDckQ7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sMkNBQVksR0FBcEIsVUFBcUIsRUFBdUM7WUFBdEMsNEJBQVcsRUFBRSw0QkFBVztRQUMxQyxPQUFPLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDckMsQ0FBQztJQUVPLHFDQUFNLEdBQWQ7UUFDSSxJQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRXRDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3JELE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTyxvREFBcUIsR0FBN0I7UUFDSSxLQUFLLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3pELElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsV0FBVyxVQUNULElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUNuRCxDQUFDO2dCQUVILE1BQU07YUFDVDtTQUNKO0lBQ0wsQ0FBQztJQUVPLHlDQUFVLEdBQWxCLFVBQW1CLGFBQThCO1FBQTlCLDhCQUFBLEVBQUEscUJBQThCO1FBQzdDLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQzdCLGdCQUFnQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDdEU7SUFDTCxDQUFDOzs7Z0JBM1ZZLFNBQVMsdUJBSGpCLFFBQVEsWUFDUixJQUFJLFlBQ0osTUFBTSxTQUFDLFNBQVM7Z0JBRTZCLGlCQUFpQix1QkFBOUQsTUFBTSxTQUFDLGlCQUFpQjtnQkFDb0MsZ0JBQWdCLHVCQUE1RSxNQUFNLFNBQUMsZ0JBQWdCO2dCQUN5QixVQUFVLHVCQUExRCxNQUFNLFNBQUMsVUFBVTs2Q0FDakIsTUFBTSxTQUFDLHdCQUF3QjtnQkFHQSxnQkFBZ0IsdUJBRi9DLFFBQVEsWUFDUixNQUFNLFNBQUMsZ0JBQWdCO2dCQUdBLFVBQVUsdUJBRGpDLE1BQU0sU0FBQyxRQUFRO2dEQUVmLE1BQU0sU0FBQyxjQUFjO2dCQUVHLDBCQUEwQix1QkFEbEQsTUFBTSxTQUFDLDJCQUEyQjtnQkFHZCxzQkFBc0IsdUJBRDFDLE1BQU0sU0FBQyxnQ0FBZ0M7Z0RBRXZDLE1BQU0sU0FBQyxxQkFBcUI7Z0JBSVcsMEJBQTBCLHVCQUZqRSxRQUFRLFlBQ1IsTUFBTSxTQUFDLDBCQUEwQjs7SUFwSHRDO1FBREMsU0FBUyxDQUFDLDBCQUEwQixDQUFDO2dFQUN1QjtJQUc3RDtRQURDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQztrRUFDbUM7SUFHakU7UUFEQyxTQUFTLENBQUMsZUFBZSxDQUFDOytEQUM4QjtJQUd6RDtRQURDLFlBQVksQ0FBQyxLQUFLLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDLENBQUM7c0RBQ2dDO0lBR3hFO1FBREMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUMsQ0FBQzs0REFDYTtJQUd0RDtRQURDLFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUMsQ0FBQzsyREFDQTtJQVFyRDtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs2REFDRTtJQUluQjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTsyREFDbUM7SUFJcEQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7c0RBQ1A7SUFJVjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTsyREFDMkI7SUFJNUM7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7d0RBQ0w7SUFJWjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTswREFDRDtJQUloQjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs4REFDNkM7SUFLOUQ7UUFIQyxLQUFLLEVBQUU7UUFDUCxXQUFXLENBQUMsbUJBQW1CLENBQUM7UUFDaEMsY0FBYyxFQUFFOzREQUNDO0lBSWxCO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFOzZEQUNHO0lBSXBCO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFOzREQUNvQjtJQUlyQztRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTtxRUFFUTtJQUd6QjtRQURDLEtBQUssQ0FBQyxlQUFlLENBQUM7bUVBT3RCO0lBR0Q7UUFEQyxNQUFNLEVBQUU7OERBQzBDO0lBR25EO1FBREMsWUFBWSxDQUFDLG9CQUFvQixFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBQyxDQUFDOzBEQUN3QjtJQUdoRjtRQURDLFNBQVMsQ0FBQyxXQUFXLENBQUM7bUVBQ3NCO0lBRzdDO1FBREMsU0FBUyxDQUFDLHFCQUFxQixDQUFDOzhEQUdoQztJQWdERDtRQURDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQztvREFHN0I7SUFHRDtRQURDLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQzs0REFLbkM7SUF0SlEsb0JBQW9CO1FBcEJoQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsZUFBZTtZQUN6QixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtZQUMvQywyck5BQXdDO1lBRXhDLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSxzQkFBb0IsRUFBcEIsQ0FBb0IsQ0FBQztpQkFDdEQ7Z0JBQ0Q7b0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUFNLE9BQUEsc0JBQW9CLEVBQXBCLENBQW9CLENBQUM7aUJBQ3REO2dCQUNELGtDQUFrQztnQkFDbEMsNkJBQTZCO2dCQUM3Qix3QkFBd0I7Z0JBQ3hCLGFBQWE7YUFDaEI7O1NBQ0osQ0FBQztRQXFHTyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtRQUN4QixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQixXQUFBLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ2hDLFdBQUEsUUFBUSxFQUFFLENBQUE7UUFDVixXQUFBLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBRXhCLFdBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBRWhCLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQ3RCLFdBQUEsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFFbkMsV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUV4QyxZQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1FBRTdCLFlBQUEsUUFBUSxFQUFFLENBQUE7UUFDVixZQUFBLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO09Bekg5QixvQkFBb0IsQ0FtY2hDO0lBQUQsMkJBQUM7Q0FBQSxBQW5jRCxDQUNZLDBCQUEwQixHQWtjckM7U0FuY1ksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2VsZixcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpTXVsdGlwbGVDb250cm9sLFxuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIEFMV0FZU19UUlVFX0hBTkRMRVIsXG4gICAgRU1QVFlfUVVFUlksXG4gICAgZ2V0QWN0dWFsVGFyZ2V0LFxuICAgIGlzTmF0aXZlRm9jdXNlZEluLFxuICAgIHByZXZlbnREZWZhdWx0LFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpU2Nyb2xsU2VydmljZSxcbiAgICB0eXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9EQVRBX0xJU1RfSE9TVCxcbiAgICBUVUlfSElOVF9XQVRDSEVEX0NPTlRST0xMRVIsXG4gICAgVFVJX01PREUsXG4gICAgVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aUJyaWdodG5lc3MsXG4gICAgVHVpRGF0YUxpc3REaXJlY3RpdmUsXG4gICAgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlLFxuICAgIFR1aUhvcml6b250YWxEaXJlY3Rpb24sXG4gICAgVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQsXG4gICAgVHVpTW9kZURpcmVjdGl2ZSxcbiAgICBUdWlTY3JvbGxiYXJDb21wb25lbnQsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpU2l6ZVMsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtUdWlTdHJpbmdpZmlhYmxlSXRlbX0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jbGFzc2VzJztcbmltcG9ydCB7QUxMT1dFRF9TUEFDRV9SRUdFWFB9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy90YWcnO1xuaW1wb3J0IHtGSVhFRF9EUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Byb3ZpZGVycyc7XG5pbXBvcnQge1RVSV9UQUdfU1RBVFVTfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge1R1aVN0YXR1c1R9IGZyb20gJ0B0YWlnYS11aS9raXQvdHlwZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHttZXJnZSwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCBtYXBUbywgc3dpdGNoTWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfSU5QVVRfVEFHX09QVElPTlMsIFR1aUlucHV0VGFnT3B0aW9uc30gZnJvbSAnLi9pbnB1dC10YWctb3B0aW9ucyc7XG5cbmNvbnN0IEVWRU5UX1lfVE9fWF9DT0VGRklDSUVOVCA9IDM7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWlucHV0LXRhZycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXRhZy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC10YWcuc3R5bGUubGVzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlJbnB1dFRhZ0NvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EQVRBX0xJU1RfSE9TVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0VGFnQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgRklYRURfRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFRhZ0NvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlNdWx0aXBsZUNvbnRyb2w8c3RyaW5nPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLCBUdWlEYXRhTGlzdEhvc3Q8c3RyaW5nPlxue1xuICAgIEBWaWV3Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBob3N0ZWREcm9wZG93bj86IFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50O1xuXG4gICAgQFZpZXdDaGlsZCgnZm9jdXNhYmxlRWxlbWVudCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoJ3RhZ3NDb250YWluZXInKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnc0NvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZHJlbigndGFnJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnczogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZCgnY2xlYW5lcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNsZWFuZXJTdmc/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxCYXI/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9TdGFydCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9FbmQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8vIFRPRE86IFJlbW92ZSBpbiAzLjBcbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYWxsb3dTcGFjZXMgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlcGFyYXRvcjogc3RyaW5nIHwgUmVnRXhwID0gdGhpcy5vcHRpb25zLnNlcGFyYXRvcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpY29uID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaWNvbkFsaWduOiBUdWlIb3Jpem9udGFsRGlyZWN0aW9uID0gJ3JpZ2h0JztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZWFyY2ggPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBlZGl0YWJsZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGFnVmFsaWRhdG9yOiBUdWlCb29sZWFuSGFuZGxlcjxzdHJpbmc+ID0gQUxXQVlTX1RSVUVfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fZXhwYW5kYWJsZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBleHBhbmRhYmxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpbnB1dEhpZGRlbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHVuaXF1ZVRhZ3MgPSB0aGlzLm9wdGlvbnMudW5pcXVlVGFncztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlCb29sZWFuSGFuZGxlcjxzdHJpbmcgfCBUdWlTdHJpbmdpZmlhYmxlSXRlbTxhbnk+PiA9XG4gICAgICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSO1xuXG4gICAgQElucHV0KCdwc2V1ZG9Gb2N1c2VkJylcbiAgICBzZXQgcHNldWRvRm9jdXNlZFNldHRlcih2YWx1ZTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgaWYgKCF2YWx1ZSAmJiAhdGhpcy5mb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvU3RhcnQkLm5leHQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHNldWRvRm9jdXNlZCA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBkYXRhbGlzdD86IFRlbXBsYXRlUmVmPFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+O1xuXG4gICAgQFZpZXdDaGlsZCgnZXJyb3JJY29uJylcbiAgICByZWFkb25seSBlcnJvckljb25UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPHt9PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50KVxuICAgIHNldCBzY3JvbGxlclNldHRlcihzY3JvbGxlcjogVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHwgbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRTY3JvbGxlclN1YnNjcmlwdGlvbihzY3JvbGxlcik7XG4gICAgfVxuXG4gICAgc3RhdHVzJDogT2JzZXJ2YWJsZTxUdWlTdGF0dXNUPiA9IHRoaXMubW9kZSQucGlwZShtYXAoKCkgPT4gdGhpcy5zdGF0dXMpKTtcblxuICAgIG9wZW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVHVpU2Nyb2xsU2VydmljZSkgcHJpdmF0ZSByZWFkb25seSB0dWlTY3JvbGxTZXJ2aWNlOiBUdWlTY3JvbGxTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFKSByZWFkb25seSBhcHBlYXJhbmNlOiBzdHJpbmcsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTW9kZURpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtb2RlRGlyZWN0aXZlOiBUdWlNb2RlRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfTU9ERSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtb2RlJDogT2JzZXJ2YWJsZTxUdWlCcmlnaHRuZXNzIHwgbnVsbD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RBR19TVEFUVVMpIHByaXZhdGUgcmVhZG9ubHkgdGFnU3RhdHVzOiBUdWlTdGF0dXNULFxuICAgICAgICBASW5qZWN0KFRVSV9ISU5UX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgaGludENvbnRyb2xsZXI6IFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBjb250cm9sbGVyOiBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxuICAgICAgICBASW5qZWN0KFRVSV9JTlBVVF9UQUdfT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlJbnB1dFRhZ09wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGFyZW50SG9zdGVkRHJvcGRvd24/OiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmZvY3VzYWJsZUVsZW1lbnQgfHwgdGhpcy5jb21wdXRlZERpc2FibGVkXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5mb2N1c2FibGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWRJbih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkgfHxcbiAgICAgICAgICAgICEhdGhpcy5ob3N0ZWREcm9wZG93bj8uZm9jdXNlZFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICAgIGdldCBzaXplKCk6IFR1aVNpemVMIHwgVHVpU2l6ZVMge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLnNpemU7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fbGFiZWwtb3V0c2lkZScpXG4gICAgZ2V0IGxhYmVsT3V0c2lkZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3NpemUsIGxhYmVsT3V0c2lkZX0gPSB0aGlzLmNvbnRyb2xsZXI7XG5cbiAgICAgICAgcmV0dXJuIHNpemUgPT09ICdzJyB8fCBsYWJlbE91dHNpZGU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuY2xlYW5lciAmJiB0aGlzLmhhc1ZhbHVlICYmIHRoaXMuaW50ZXJhY3RpdmU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc05hdGl2ZVZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnNlYXJjaDtcbiAgICB9XG5cbiAgICBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudmFsdWUubGVuZ3RoIHx8IHRoaXMuaGFzTmF0aXZlVmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1BsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIXRoaXMubGFiZWxPdXRzaWRlIHx8XG4gICAgICAgICAgICAoIXRoaXMuaGFzVmFsdWUgJiYgKCF0aGlzLmhhc0V4YW1wbGVUZXh0IHx8IHRoaXMuaW5wdXRIaWRkZW4pKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBwbGFjZWhvbGRlclJhaXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmxhYmVsT3V0c2lkZSAmJlxuICAgICAgICAgICAgKCh0aGlzLmNvbXB1dGVkRm9jdXNlZCAmJiAhdGhpcy5yZWFkT25seSkgfHwgdGhpcy5oYXNWYWx1ZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgaGFzRXhhbXBsZVRleHQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhIXRoaXMuY29udHJvbGxlci5leGFtcGxlVGV4dCAmJlxuICAgICAgICAgICAgdGhpcy5jb21wdXRlZEZvY3VzZWQgJiZcbiAgICAgICAgICAgICF0aGlzLmhhc1ZhbHVlICYmXG4gICAgICAgICAgICAhdGhpcy5yZWFkT25seVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBoYXNUb29sdGlwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhpbnRDb250cm9sbGVyLmNvbnRlbnQgJiYgIXRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGljb25BbGlnbkxlZnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaWNvbiAmJiB0aGlzLmljb25BbGlnbiA9PT0gJ2xlZnQnO1xuICAgIH1cblxuICAgIGdldCBpY29uQWxpZ25SaWdodCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5pY29uICYmIHRoaXMuaWNvbkFsaWduID09PSAncmlnaHQnO1xuICAgIH1cblxuICAgIGdldCBoYXNSaWdodEljb25zKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNDbGVhbmVyIHx8IHRoaXMuaGFzVG9vbHRpcCB8fCB0aGlzLmljb25BbGlnblJpZ2h0O1xuICAgIH1cblxuICAgIGdldCBzdGF0dXMoKTogVHVpU3RhdHVzVCB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGVEaXJlY3RpdmU/Lm1vZGUgPyAnZGVmYXVsdCcgOiB0aGlzLnRhZ1N0YXR1cztcbiAgICB9XG5cbiAgICBnZXQgY2FuT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJhY3RpdmUgJiYgISF0aGlzLmRhdGFsaXN0O1xuICAgIH1cblxuICAgIGdldExlZnRDb250ZW50KHRhZzogc3RyaW5nKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiAhdGhpcy50YWdWYWxpZGF0b3IodGFnKSAmJiB0aGlzLmVycm9ySWNvblRlbXBsYXRlXG4gICAgICAgICAgICA/IHRoaXMuZXJyb3JJY29uVGVtcGxhdGVcbiAgICAgICAgICAgIDogJyc7XG4gICAgfVxuXG4gICAgb25DbGVhbmVyQ2xpY2soKSB7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy5wYXJlbnRIb3N0ZWREcm9wZG93bj8udXBkYXRlT3Blbih0cnVlKTtcbiAgICB9XG5cbiAgICBvbkFjdGl2ZVpvbmUoYWN0aXZlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFkZFRhZygpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcblxuICAgICAgICBpZiAoIXRoaXMuY29tcHV0ZWRGb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvU3RhcnQkLm5leHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGNvbnN0IGFjdHVhbFRhcmdldCA9IGdldEFjdHVhbFRhcmdldChldmVudCk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuZm9jdXNhYmxlRWxlbWVudCB8fFxuICAgICAgICAgICAgYWN0dWFsVGFyZ2V0ID09PSB0aGlzLmZvY3VzYWJsZUVsZW1lbnQubmF0aXZlRWxlbWVudCB8fFxuICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgICEoZXZlbnQudGFyZ2V0IGluc3RhbmNlb2YgRWxlbWVudCkgfHxcbiAgICAgICAgICAgICh0aGlzLmNsZWFuZXJTdmcgJiYgdGhpcy5jbGVhbmVyU3ZnLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkgfHxcbiAgICAgICAgICAgICh0aGlzLnRhZ3NDb250YWluZXIgJiZcbiAgICAgICAgICAgICAgICBhY3R1YWxUYXJnZXQgIT09IHRoaXMudGFnc0NvbnRhaW5lci5uYXRpdmVFbGVtZW50ICYmXG4gICAgICAgICAgICAgICAgdGhpcy50YWdzQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoYWN0dWFsVGFyZ2V0KSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICB9XG5cbiAgICBvbkZpZWxkS2V5RG93bkJhY2tzcGFjZShldmVudDogRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmxhYmVsT3V0c2lkZSAmJiAhdGhpcy5oYXNOYXRpdmVWYWx1ZSAmJiB0aGlzLnZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5kZWxldGVMYXN0RW5hYmxlZEl0ZW0oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25GaWVsZEtleURvd25BcnJvd0xlZnQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25GaWVsZEtleURvd25BcnJvd0xlZnQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGlmICghdGhpcy5sYWJlbE91dHNpZGUgfHwgdGhpcy5oYXNOYXRpdmVWYWx1ZSB8fCAhdGhpcy52YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHNldE5hdGl2ZUZvY3VzZWQodGhpcy50YWdzLmxhc3QubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgb25GaWVsZEtleURvd25FbnRlcigpIHtcbiAgICAgICAgdGhpcy5hZGRUYWcoKTtcbiAgICAgICAgdGhpcy5zY3JvbGxUb0VuZCQubmV4dCgpO1xuICAgIH1cblxuICAgIG9uVGFnS2V5RG93bkFycm93TGVmdChjdXJyZW50SW5kZXg6IG51bWJlcikge1xuICAgICAgICBpZiAoY3VycmVudEluZGV4ID4gMCkge1xuICAgICAgICAgICAgdGhpcy5vblNjcm9sbEtleURvd24oY3VycmVudEluZGV4LCAtMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblRhZ0tleURvd25BcnJvd1JpZ2h0KGN1cnJlbnRJbmRleDogbnVtYmVyKSB7XG4gICAgICAgIGlmIChjdXJyZW50SW5kZXggPT09IHRoaXMudmFsdWUubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9uU2Nyb2xsS2V5RG93bihjdXJyZW50SW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25UYWdFZGl0ZWQodmFsdWU6IHN0cmluZywgaW5kZXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgICAgICAgIHRoaXMudmFsdWVcbiAgICAgICAgICAgICAgICAubWFwKCh0YWcsIHRhZ0luZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICB0YWdJbmRleCAhPT0gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdGFnXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQodGhpcy5zZXBhcmF0b3IpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKHRhZyA9PiB0YWcudHJpbSgpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnJlZHVjZTxzdHJpbmdbXT4oXG4gICAgICAgICAgICAgICAgICAgIChyZXN1bHQsIGl0ZW06IHN0cmluZyB8IHN0cmluZ1tdKSA9PiByZXN1bHQuY29uY2F0KGl0ZW0pLFxuICAgICAgICAgICAgICAgICAgICBbXSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGhhbmRsZU9wdGlvbihpdGVtOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLnZhbHVlLmNvbmNhdChpdGVtKSk7XG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNjcm9sbFRvRW5kJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgb25JbnB1dCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IGFycmF5ID0gdGhpcy5hbGxvd1NwYWNlc1xuICAgICAgICAgICAgPyB2YWx1ZS5zcGxpdCh0aGlzLnNlcGFyYXRvcilcbiAgICAgICAgICAgIDogdmFsdWUuc3BsaXQoQUxMT1dFRF9TUEFDRV9SRUdFWFApO1xuICAgICAgICBjb25zdCB0YWdzID0gYXJyYXlcbiAgICAgICAgICAgIC5tYXAoaXRlbSA9PiBpdGVtLnRyaW0oKSlcbiAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW0sIGluZGV4LCB7bGVuZ3RofSkgPT4gaXRlbS5sZW5ndGggPiAwICYmIGluZGV4ICE9PSBsZW5ndGggLSAxKTtcbiAgICAgICAgY29uc3QgdmFsaWRhdGVkID0gdGFncy5maWx0ZXIodGFnID0+ICF0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIodGFnKSk7XG5cbiAgICAgICAgaWYgKGFycmF5Lmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKGFycmF5W2FycmF5Lmxlbmd0aCAtIDFdLnRyaW0oKSk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFsuLi50aGlzLnZhbHVlLCAuLi52YWxpZGF0ZWRdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3BlbiA9IHRoaXMuaGFzTmF0aXZlVmFsdWU7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkQ2hhbmdlKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoKSB7XG4gICAgICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdHJhY2tCeUZuKF86IG51bWJlciwgdGFnOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICAvLyBBY3R1YWxseSB0YWcgaGFzIFR1aVN0cmluZ2lmaWFibGVJdGVtIHR5cGUgbm90IHN0cmluZ1xuICAgICAgICByZXR1cm4gdGFnLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHVwZGF0ZVZhbHVlKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgICAgICBjb25zdCBzZWVuID0gbmV3IFNldCgpO1xuXG4gICAgICAgIHN1cGVyLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAucmV2ZXJzZSgpXG4gICAgICAgICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMudW5pcXVlVGFncyB8fCAoISFpdGVtICYmICFzZWVuLmhhcyhpdGVtKSAmJiBzZWVuLmFkZChpdGVtKSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5yZXZlcnNlKCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblNjcm9sbEtleURvd24oY3VycmVudEluZGV4OiBudW1iZXIsIGZsYWc6IG51bWJlcikge1xuICAgICAgICBjb25zdCB0YWcgPSB0aGlzLnRhZ3MuZmluZCgoX2l0ZW0sIGluZGV4KSA9PiBpbmRleCA9PT0gY3VycmVudEluZGV4ICsgZmxhZyk7XG5cbiAgICAgICAgaWYgKCF0YWcgfHwgIXRoaXMuc2Nyb2xsQmFyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZXROYXRpdmVGb2N1c2VkKHRhZy5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBmbGFnICogdGhpcy5zY3JvbGxCYXIubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aCAtXG4gICAgICAgICAgICAgICAgZmxhZyAqIHRhZy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLVxuICAgICAgICAgICAgICAgIHRhZy5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIDxcbiAgICAgICAgICAgIDBcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbEJhci5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgKz1cbiAgICAgICAgICAgICAgICBmbGFnICogdGFnLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRTY3JvbGxlclN1YnNjcmlwdGlvbihzY3JvbGxlcjogVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHwgbnVsbCkge1xuICAgICAgICBpZiAoIXNjcm9sbGVyPy5icm93c2VyU2Nyb2xsUmVmKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSBzY3JvbGxlci5icm93c2VyU2Nyb2xsUmVmO1xuXG4gICAgICAgIGNvbnN0IHdoZWVsJCA9IHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICd3aGVlbCcsIHtwYXNzaXZlOiBmYWxzZX0pLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQuZGVsdGFYID09PSAwICYmIHRoaXMuc2hvdWxkU2Nyb2xsKG5hdGl2ZUVsZW1lbnQpKSxcbiAgICAgICAgICAgIHByZXZlbnREZWZhdWx0KCksXG4gICAgICAgICAgICBtYXAoKHtkZWx0YVl9KSA9PlxuICAgICAgICAgICAgICAgIE1hdGgubWF4KG5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCArIGRlbHRhWSAqIEVWRU5UX1lfVE9fWF9DT0VGRklDSUVOVCwgMCksXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBzdGFydCQgPSB0aGlzLnNjcm9sbFRvU3RhcnQkLnBpcGUobWFwVG8oMCkpO1xuICAgICAgICBjb25zdCBlbmQkID0gdGhpcy5zY3JvbGxUb0VuZCQucGlwZShtYXAoKCkgPT4gbmF0aXZlRWxlbWVudC5zY3JvbGxXaWR0aCkpO1xuXG4gICAgICAgIG1lcmdlKHdoZWVsJCwgc3RhcnQkLCBlbmQkKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGxlZnQgPT4gdGhpcy50dWlTY3JvbGxTZXJ2aWNlLnNjcm9sbCQobmF0aXZlRWxlbWVudCwgMCwgbGVmdCkpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVNlYXJjaCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNlYXJjaCA9IHZhbHVlO1xuICAgICAgICB0aGlzLnNlYXJjaENoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNob3VsZFNjcm9sbCh7c2Nyb2xsV2lkdGgsIG9mZnNldFdpZHRofTogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHNjcm9sbFdpZHRoID4gb2Zmc2V0V2lkdGg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRUYWcoKSB7XG4gICAgICAgIGNvbnN0IGlucHV0VmFsdWUgPSB0aGlzLnNlYXJjaC50cmltKCk7XG5cbiAgICAgICAgaWYgKCFpbnB1dFZhbHVlIHx8IHRoaXMuZGlzYWJsZWRJdGVtSGFuZGxlcihpbnB1dFZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVTZWFyY2goJycpO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWUuY29uY2F0KGlucHV0VmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlbGV0ZUxhc3RFbmFibGVkSXRlbSgpIHtcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSB0aGlzLnZhbHVlLmxlbmd0aCAtIDE7IGluZGV4ID49IDA7IGluZGV4LS0pIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kaXNhYmxlZEl0ZW1IYW5kbGVyKHRoaXMudmFsdWVbaW5kZXhdKSkge1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUoW1xuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnZhbHVlLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgICAgICAgICAgICAgICAgLi4udGhpcy52YWx1ZS5zbGljZShpbmRleCArIDEsIHRoaXMudmFsdWUubGVuZ3RoKSxcbiAgICAgICAgICAgICAgICBdKTtcblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0lucHV0KHByZXZlbnRTY3JvbGw6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgICAgICBpZiAodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICBzZXROYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCwgdHJ1ZSwgcHJldmVudFNjcm9sbCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
521
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC10YWcvIiwic291cmNlcyI6WyJpbnB1dC10YWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULElBQUksRUFDSixXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUNILDBCQUEwQixFQUMxQixvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLFdBQVcsRUFDWCxlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLGNBQWMsRUFDZCxnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0QixpQkFBaUIsRUFDakIsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCwyQkFBMkIsRUFDM0IsZ0JBQWdCLEVBQ2hCLGNBQWMsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHdCQUF3QixFQUN4QixhQUFhLEVBQ2IsNkJBQTZCLEVBQzdCLGtCQUFrQixFQUNsQiwyQkFBMkIsRUFDM0IsUUFBUSxFQUNSLHdCQUF3QixFQUN4QixnQ0FBZ0MsRUFDaEMsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsMEJBQTBCLEVBQzFCLHNCQUFzQixFQUN0QiwwQkFBMEIsRUFDMUIsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixRQUFRLEVBQ1IsUUFBUSxFQUNSLHNCQUFzQixHQUN6QixNQUFNLGdCQUFnQixDQUFDO0FB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Q0osQ0FBQztRQXFHTyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtRQUN4QixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQixXQUFBLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ2hDLFdBQUEsUUFBUSxFQUFFLENBQUE7UUFDVixXQUFBLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBRXhCLFdBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBRWhCLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQ3RCLFdBQUEsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFFbkMsV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUV4QyxZQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1FBRTdCLFlBQUEsUUFBUSxFQUFFLENBQUE7UUFDVixZQUFBLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO09Bekg5QixvQkFBb0IsQ0FtY2hDO0lBQUQsMkJBQUM7Q0FBQSxBQW5jRCxDQUNZLDBCQUEwQixHQWtjckM7U0FuY1ksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2VsZixcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpTXVsdGlwbGVDb250cm9sLFxuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIEFMV0FZU19UUlVFX0hBTkRMRVIsXG4gICAgRU1QVFlfUVVFUlksXG4gICAgZ2V0QWN0dWFsVGFyZ2V0LFxuICAgIGlzTmF0aXZlRm9jdXNlZEluLFxuICAgIHByZXZlbnREZWZhdWx0LFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpU2Nyb2xsU2VydmljZSxcbiAgICB0eXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9EQVRBX0xJU1RfSE9TVCxcbiAgICBUVUlfSElOVF9XQVRDSEVEX0NPTlRST0xMRVIsXG4gICAgVFVJX01PREUsXG4gICAgVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aUJyaWdodG5lc3MsXG4gICAgVHVpRGF0YUxpc3REaXJlY3RpdmUsXG4gICAgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlLFxuICAgIFR1aUhvcml6b250YWxEaXJlY3Rpb24sXG4gICAgVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQsXG4gICAgVHVpTW9kZURpcmVjdGl2ZSxcbiAgICBUdWlTY3JvbGxiYXJDb21wb25lbnQsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpU2l6ZVMsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtUdWlTdHJpbmdpZmlhYmxlSXRlbX0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jbGFzc2VzJztcbmltcG9ydCB7QUxMT1dFRF9TUEFDRV9SRUdFWFB9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy90YWcnO1xuaW1wb3J0IHtGSVhFRF9EUk9QRE9XTl9DT05UUk9MTEVSX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Byb3ZpZGVycyc7XG5pbXBvcnQge1RVSV9UQUdfU1RBVFVTfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge1R1aVN0YXR1c1R9IGZyb20gJ0B0YWlnYS11aS9raXQvdHlwZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHttZXJnZSwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCBtYXBUbywgc3dpdGNoTWFwLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfSU5QVVRfVEFHX09QVElPTlMsIFR1aUlucHV0VGFnT3B0aW9uc30gZnJvbSAnLi9pbnB1dC10YWctb3B0aW9ucyc7XG5cbmNvbnN0IEVWRU5UX1lfVE9fWF9DT0VGRklDSUVOVCA9IDM7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWlucHV0LXRhZycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXRhZy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC10YWcuc3R5bGUubGVzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlJbnB1dFRhZ0NvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EQVRBX0xJU1RfSE9TVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0VGFnQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgRklYRURfRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFRhZ0NvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlNdWx0aXBsZUNvbnRyb2w8c3RyaW5nPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLCBUdWlEYXRhTGlzdEhvc3Q8c3RyaW5nPlxue1xuICAgIEBWaWV3Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBob3N0ZWREcm9wZG93bj86IFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50O1xuXG4gICAgQFZpZXdDaGlsZCgnZm9jdXNhYmxlRWxlbWVudCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoJ3RhZ3NDb250YWluZXInKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnc0NvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZHJlbigndGFnJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnczogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZCgnY2xlYW5lcicsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNsZWFuZXJTdmc/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxCYXI/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9TdGFydCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9FbmQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8vIFRPRE86IFJlbW92ZSBpbiAzLjBcbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgYWxsb3dTcGFjZXMgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlcGFyYXRvcjogc3RyaW5nIHwgUmVnRXhwID0gdGhpcy5vcHRpb25zLnNlcGFyYXRvcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpY29uID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaWNvbkFsaWduOiBUdWlIb3Jpem9udGFsRGlyZWN0aW9uID0gJ3JpZ2h0JztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZWFyY2ggPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBlZGl0YWJsZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGFnVmFsaWRhdG9yOiBUdWlCb29sZWFuSGFuZGxlcjxzdHJpbmc+ID0gQUxXQVlTX1RSVUVfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fZXhwYW5kYWJsZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBleHBhbmRhYmxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpbnB1dEhpZGRlbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHVuaXF1ZVRhZ3MgPSB0aGlzLm9wdGlvbnMudW5pcXVlVGFncztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlCb29sZWFuSGFuZGxlcjxzdHJpbmcgfCBUdWlTdHJpbmdpZmlhYmxlSXRlbTxhbnk+PiA9XG4gICAgICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSO1xuXG4gICAgQElucHV0KCdwc2V1ZG9Gb2N1c2VkJylcbiAgICBzZXQgcHNldWRvRm9jdXNlZFNldHRlcih2YWx1ZTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgaWYgKCF2YWx1ZSAmJiAhdGhpcy5mb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvU3RhcnQkLm5leHQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHNldWRvRm9jdXNlZCA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBkYXRhbGlzdD86IFRlbXBsYXRlUmVmPFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+O1xuXG4gICAgQFZpZXdDaGlsZCgnZXJyb3JJY29uJylcbiAgICByZWFkb25seSBlcnJvckljb25UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50KVxuICAgIHNldCBzY3JvbGxlclNldHRlcihzY3JvbGxlcjogVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHwgbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRTY3JvbGxlclN1YnNjcmlwdGlvbihzY3JvbGxlcik7XG4gICAgfVxuXG4gICAgc3RhdHVzJDogT2JzZXJ2YWJsZTxUdWlTdGF0dXNUPiA9IHRoaXMubW9kZSQucGlwZShtYXAoKCkgPT4gdGhpcy5zdGF0dXMpKTtcblxuICAgIG9wZW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVHVpU2Nyb2xsU2VydmljZSkgcHJpdmF0ZSByZWFkb25seSB0dWlTY3JvbGxTZXJ2aWNlOiBUdWlTY3JvbGxTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFKSByZWFkb25seSBhcHBlYXJhbmNlOiBzdHJpbmcsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTW9kZURpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtb2RlRGlyZWN0aXZlOiBUdWlNb2RlRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfTU9ERSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBtb2RlJDogT2JzZXJ2YWJsZTxUdWlCcmlnaHRuZXNzIHwgbnVsbD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RBR19TVEFUVVMpIHByaXZhdGUgcmVhZG9ubHkgdGFnU3RhdHVzOiBUdWlTdGF0dXNULFxuICAgICAgICBASW5qZWN0KFRVSV9ISU5UX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgaGludENvbnRyb2xsZXI6IFR1aUhpbnRDb250cm9sbGVyRGlyZWN0aXZlLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBjb250cm9sbGVyOiBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxuICAgICAgICBASW5qZWN0KFRVSV9JTlBVVF9UQUdfT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlJbnB1dFRhZ09wdGlvbnMsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGFyZW50SG9zdGVkRHJvcGRvd24/OiBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmZvY3VzYWJsZUVsZW1lbnQgfHwgdGhpcy5jb21wdXRlZERpc2FibGVkXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5mb2N1c2FibGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWRJbih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkgfHxcbiAgICAgICAgICAgICEhdGhpcy5ob3N0ZWREcm9wZG93bj8uZm9jdXNlZFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICAgIGdldCBzaXplKCk6IFR1aVNpemVMIHwgVHVpU2l6ZVMge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLnNpemU7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fbGFiZWwtb3V0c2lkZScpXG4gICAgZ2V0IGxhYmVsT3V0c2lkZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3NpemUsIGxhYmVsT3V0c2lkZX0gPSB0aGlzLmNvbnRyb2xsZXI7XG5cbiAgICAgICAgcmV0dXJuIHNpemUgPT09ICdzJyB8fCBsYWJlbE91dHNpZGU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuY2xlYW5lciAmJiB0aGlzLmhhc1ZhbHVlICYmIHRoaXMuaW50ZXJhY3RpdmU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc05hdGl2ZVZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnNlYXJjaDtcbiAgICB9XG5cbiAgICBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudmFsdWUubGVuZ3RoIHx8IHRoaXMuaGFzTmF0aXZlVmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1BsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIXRoaXMubGFiZWxPdXRzaWRlIHx8XG4gICAgICAgICAgICAoIXRoaXMuaGFzVmFsdWUgJiYgKCF0aGlzLmhhc0V4YW1wbGVUZXh0IHx8IHRoaXMuaW5wdXRIaWRkZW4pKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBwbGFjZWhvbGRlclJhaXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmxhYmVsT3V0c2lkZSAmJlxuICAgICAgICAgICAgKCh0aGlzLmNvbXB1dGVkRm9jdXNlZCAmJiAhdGhpcy5yZWFkT25seSkgfHwgdGhpcy5oYXNWYWx1ZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgaGFzRXhhbXBsZVRleHQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhIXRoaXMuY29udHJvbGxlci5leGFtcGxlVGV4dCAmJlxuICAgICAgICAgICAgdGhpcy5jb21wdXRlZEZvY3VzZWQgJiZcbiAgICAgICAgICAgICF0aGlzLmhhc1ZhbHVlICYmXG4gICAgICAgICAgICAhdGhpcy5yZWFkT25seVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBoYXNUb29sdGlwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhpbnRDb250cm9sbGVyLmNvbnRlbnQgJiYgIXRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGljb25BbGlnbkxlZnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaWNvbiAmJiB0aGlzLmljb25BbGlnbiA9PT0gJ2xlZnQnO1xuICAgIH1cblxuICAgIGdldCBpY29uQWxpZ25SaWdodCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5pY29uICYmIHRoaXMuaWNvbkFsaWduID09PSAncmlnaHQnO1xuICAgIH1cblxuICAgIGdldCBoYXNSaWdodEljb25zKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNDbGVhbmVyIHx8IHRoaXMuaGFzVG9vbHRpcCB8fCB0aGlzLmljb25BbGlnblJpZ2h0O1xuICAgIH1cblxuICAgIGdldCBzdGF0dXMoKTogVHVpU3RhdHVzVCB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGVEaXJlY3RpdmU/Lm1vZGUgPyAnZGVmYXVsdCcgOiB0aGlzLnRhZ1N0YXR1cztcbiAgICB9XG5cbiAgICBnZXQgY2FuT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJhY3RpdmUgJiYgISF0aGlzLmRhdGFsaXN0O1xuICAgIH1cblxuICAgIGdldExlZnRDb250ZW50KHRhZzogc3RyaW5nKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiAhdGhpcy50YWdWYWxpZGF0b3IodGFnKSAmJiB0aGlzLmVycm9ySWNvblRlbXBsYXRlXG4gICAgICAgICAgICA/IHRoaXMuZXJyb3JJY29uVGVtcGxhdGVcbiAgICAgICAgICAgIDogJyc7XG4gICAgfVxuXG4gICAgb25DbGVhbmVyQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy5wYXJlbnRIb3N0ZWREcm9wZG93bj8udXBkYXRlT3Blbih0cnVlKTtcbiAgICB9XG5cbiAgICBvbkFjdGl2ZVpvbmUoYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFkZFRhZygpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcblxuICAgICAgICBpZiAoIXRoaXMuY29tcHV0ZWRGb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvU3RhcnQkLm5leHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFjdHVhbFRhcmdldCA9IGdldEFjdHVhbFRhcmdldChldmVudCk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuZm9jdXNhYmxlRWxlbWVudCB8fFxuICAgICAgICAgICAgYWN0dWFsVGFyZ2V0ID09PSB0aGlzLmZvY3VzYWJsZUVsZW1lbnQubmF0aXZlRWxlbWVudCB8fFxuICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgICEoZXZlbnQudGFyZ2V0IGluc3RhbmNlb2YgRWxlbWVudCkgfHxcbiAgICAgICAgICAgICh0aGlzLmNsZWFuZXJTdmcgJiYgdGhpcy5jbGVhbmVyU3ZnLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkgfHxcbiAgICAgICAgICAgICh0aGlzLnRhZ3NDb250YWluZXIgJiZcbiAgICAgICAgICAgICAgICBhY3R1YWxUYXJnZXQgIT09IHRoaXMudGFnc0NvbnRhaW5lci5uYXRpdmVFbGVtZW50ICYmXG4gICAgICAgICAgICAgICAgdGhpcy50YWdzQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoYWN0dWFsVGFyZ2V0KSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICB9XG5cbiAgICBvbkZpZWxkS2V5RG93bkJhY2tzcGFjZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmxhYmVsT3V0c2lkZSAmJiAhdGhpcy5oYXNOYXRpdmVWYWx1ZSAmJiB0aGlzLnZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5kZWxldGVMYXN0RW5hYmxlZEl0ZW0oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25GaWVsZEtleURvd25BcnJvd0xlZnQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25GaWVsZEtleURvd25BcnJvd0xlZnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5sYWJlbE91dHNpZGUgfHwgdGhpcy5oYXNOYXRpdmVWYWx1ZSB8fCAhdGhpcy52YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHNldE5hdGl2ZUZvY3VzZWQodGhpcy50YWdzLmxhc3QubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgb25GaWVsZEtleURvd25FbnRlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hZGRUYWcoKTtcbiAgICAgICAgdGhpcy5zY3JvbGxUb0VuZCQubmV4dCgpO1xuICAgIH1cblxuICAgIG9uVGFnS2V5RG93bkFycm93TGVmdChjdXJyZW50SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoY3VycmVudEluZGV4ID4gMCkge1xuICAgICAgICAgICAgdGhpcy5vblNjcm9sbEtleURvd24oY3VycmVudEluZGV4LCAtMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblRhZ0tleURvd25BcnJvd1JpZ2h0KGN1cnJlbnRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmIChjdXJyZW50SW5kZXggPT09IHRoaXMudmFsdWUubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9uU2Nyb2xsS2V5RG93bihjdXJyZW50SW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25UYWdFZGl0ZWQodmFsdWU6IHN0cmluZywgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgICAgICAgIHRoaXMudmFsdWVcbiAgICAgICAgICAgICAgICAubWFwKCh0YWcsIHRhZ0luZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICB0YWdJbmRleCAhPT0gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdGFnXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQodGhpcy5zZXBhcmF0b3IpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKHRhZyA9PiB0YWcudHJpbSgpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnJlZHVjZTxzdHJpbmdbXT4oXG4gICAgICAgICAgICAgICAgICAgIChyZXN1bHQsIGl0ZW06IHN0cmluZyB8IHN0cmluZ1tdKSA9PiByZXN1bHQuY29uY2F0KGl0ZW0pLFxuICAgICAgICAgICAgICAgICAgICBbXSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGhhbmRsZU9wdGlvbihpdGVtOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLnZhbHVlLmNvbmNhdChpdGVtKSk7XG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNjcm9sbFRvRW5kJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgb25JbnB1dCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFycmF5ID0gdGhpcy5hbGxvd1NwYWNlc1xuICAgICAgICAgICAgPyB2YWx1ZS5zcGxpdCh0aGlzLnNlcGFyYXRvcilcbiAgICAgICAgICAgIDogdmFsdWUuc3BsaXQoQUxMT1dFRF9TUEFDRV9SRUdFWFApO1xuICAgICAgICBjb25zdCB0YWdzID0gYXJyYXlcbiAgICAgICAgICAgIC5tYXAoaXRlbSA9PiBpdGVtLnRyaW0oKSlcbiAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW0sIGluZGV4LCB7bGVuZ3RofSkgPT4gaXRlbS5sZW5ndGggPiAwICYmIGluZGV4ICE9PSBsZW5ndGggLSAxKTtcbiAgICAgICAgY29uc3QgdmFsaWRhdGVkID0gdGFncy5maWx0ZXIodGFnID0+ICF0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIodGFnKSk7XG5cbiAgICAgICAgaWYgKGFycmF5Lmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKGFycmF5W2FycmF5Lmxlbmd0aCAtIDFdLnRyaW0oKSk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFsuLi50aGlzLnZhbHVlLCAuLi52YWxpZGF0ZWRdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3BlbiA9IHRoaXMuaGFzTmF0aXZlVmFsdWU7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkQ2hhbmdlKGhvdmVyZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdHJhY2tCeUZuKF86IG51bWJlciwgdGFnOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICAvLyBBY3R1YWxseSB0YWcgaGFzIFR1aVN0cmluZ2lmaWFibGVJdGVtIHR5cGUgbm90IHN0cmluZ1xuICAgICAgICByZXR1cm4gdGFnLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHVwZGF0ZVZhbHVlKHZhbHVlOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBzZWVuID0gbmV3IFNldCgpO1xuXG4gICAgICAgIHN1cGVyLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAucmV2ZXJzZSgpXG4gICAgICAgICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMudW5pcXVlVGFncyB8fCAoISFpdGVtICYmICFzZWVuLmhhcyhpdGVtKSAmJiBzZWVuLmFkZChpdGVtKSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5yZXZlcnNlKCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblNjcm9sbEtleURvd24oY3VycmVudEluZGV4OiBudW1iZXIsIGZsYWc6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB0YWcgPSB0aGlzLnRhZ3MuZmluZCgoX2l0ZW0sIGluZGV4KSA9PiBpbmRleCA9PT0gY3VycmVudEluZGV4ICsgZmxhZyk7XG5cbiAgICAgICAgaWYgKCF0YWcgfHwgIXRoaXMuc2Nyb2xsQmFyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZXROYXRpdmVGb2N1c2VkKHRhZy5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBmbGFnICogdGhpcy5zY3JvbGxCYXIubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aCAtXG4gICAgICAgICAgICAgICAgZmxhZyAqIHRhZy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLVxuICAgICAgICAgICAgICAgIHRhZy5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIDxcbiAgICAgICAgICAgIDBcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbEJhci5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgKz1cbiAgICAgICAgICAgICAgICBmbGFnICogdGFnLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRTY3JvbGxlclN1YnNjcmlwdGlvbihzY3JvbGxlcjogVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBpZiAoIXNjcm9sbGVyPy5icm93c2VyU2Nyb2xsUmVmKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSBzY3JvbGxlci5icm93c2VyU2Nyb2xsUmVmO1xuXG4gICAgICAgIGNvbnN0IHdoZWVsJCA9IHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICd3aGVlbCcsIHtwYXNzaXZlOiBmYWxzZX0pLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQuZGVsdGFYID09PSAwICYmIHRoaXMuc2hvdWxkU2Nyb2xsKG5hdGl2ZUVsZW1lbnQpKSxcbiAgICAgICAgICAgIHByZXZlbnREZWZhdWx0KCksXG4gICAgICAgICAgICBtYXAoKHtkZWx0YVl9KSA9PlxuICAgICAgICAgICAgICAgIE1hdGgubWF4KG5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCArIGRlbHRhWSAqIEVWRU5UX1lfVE9fWF9DT0VGRklDSUVOVCwgMCksXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBzdGFydCQgPSB0aGlzLnNjcm9sbFRvU3RhcnQkLnBpcGUobWFwVG8oMCkpO1xuICAgICAgICBjb25zdCBlbmQkID0gdGhpcy5zY3JvbGxUb0VuZCQucGlwZShtYXAoKCkgPT4gbmF0aXZlRWxlbWVudC5zY3JvbGxXaWR0aCkpO1xuXG4gICAgICAgIG1lcmdlKHdoZWVsJCwgc3RhcnQkLCBlbmQkKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGxlZnQgPT4gdGhpcy50dWlTY3JvbGxTZXJ2aWNlLnNjcm9sbCQobmF0aXZlRWxlbWVudCwgMCwgbGVmdCkpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVNlYXJjaCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNlYXJjaCA9IHZhbHVlO1xuICAgICAgICB0aGlzLnNlYXJjaENoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNob3VsZFNjcm9sbCh7c2Nyb2xsV2lkdGgsIG9mZnNldFdpZHRofTogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHNjcm9sbFdpZHRoID4gb2Zmc2V0V2lkdGg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRUYWcoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlucHV0VmFsdWUgPSB0aGlzLnNlYXJjaC50cmltKCk7XG5cbiAgICAgICAgaWYgKCFpbnB1dFZhbHVlIHx8IHRoaXMuZGlzYWJsZWRJdGVtSGFuZGxlcihpbnB1dFZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVTZWFyY2goJycpO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWUuY29uY2F0KGlucHV0VmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlbGV0ZUxhc3RFbmFibGVkSXRlbSgpOiB2b2lkIHtcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSB0aGlzLnZhbHVlLmxlbmd0aCAtIDE7IGluZGV4ID49IDA7IGluZGV4LS0pIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kaXNhYmxlZEl0ZW1IYW5kbGVyKHRoaXMudmFsdWVbaW5kZXhdKSkge1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUoW1xuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnZhbHVlLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgICAgICAgICAgICAgICAgLi4udGhpcy52YWx1ZS5zbGljZShpbmRleCArIDEsIHRoaXMudmFsdWUubGVuZ3RoKSxcbiAgICAgICAgICAgICAgICBdKTtcblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0lucHV0KHByZXZlbnRTY3JvbGw6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICBzZXROYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCwgdHJ1ZSwgcHJldmVudFNjcm9sbCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -20,4 +20,4 @@ export var tuiInputTimeOptionsProvider = function (options) { return ({
20
20
  provide: TUI_INPUT_TIME_OPTIONS,
21
21
  useValue: __assign(__assign({}, TUI_INPUT_TIME_DEFAULT_OPTIONS), options),
22
22
  }); };
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGltZS1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXRpbWUvIiwic291cmNlcyI6WyJpbnB1dC10aW1lLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBRzVELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQWtCeEQsa0NBQWtDO0FBQ2xDLE1BQU0sQ0FBQyxJQUFNLGVBQWUsR0FBRyxVQUFDLEVBQWdCO1FBQWYsd0JBQVM7SUFDdEMsT0FBQSxTQUFTLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGtCQUFrQjtBQUF0RCxDQUFzRCxDQUFDO0FBRTNELE1BQU0sQ0FBQyxJQUFNLDhCQUE4QixHQUF3QjtJQUMvRCxJQUFJLEVBQUUsZUFBZTtJQUNyQixJQUFJLEVBQUUsT0FBTztJQUNiLE9BQU8sRUFBRSxFQUFFO0lBQ1gsU0FBUyxFQUFFLGVBQWU7SUFDMUIsUUFBUSxFQUFFLEdBQUc7Q0FDaEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxJQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUNwRCw2Q0FBNkMsRUFDN0M7SUFDSSxPQUFPLEVBQUUsY0FBTSxPQUFBLDhCQUE4QixFQUE5QixDQUE4QjtDQUNoRCxDQUNKLENBQUM7QUFFRixNQUFNLENBQUMsSUFBTSwyQkFBMkIsR0FFbkIsVUFBQyxPQUFxQyxJQUFLLE9BQUEsQ0FBQztJQUM3RCxPQUFPLEVBQUUsc0JBQXNCO0lBQy9CLFFBQVEsd0JBQU0sOEJBQThCLEdBQUssT0FBTyxDQUFDO0NBQzVELENBQUMsRUFIOEQsQ0FHOUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFZhbHVlUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlDb250ZXh0V2l0aEltcGxpY2l0LCBUdWlUaW1lTW9kZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVNpemVMLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtNQVhfVElNRV9WQUxVRVN9IGZyb20gJ0B0YWlnYS11aS9raXQvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpVGltZUZvcm1hdFBhcnRzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlJbnB1dFRpbWVPcHRpb25zIHtcbiAgICByZWFkb25seSBpY29uOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZVMgfCBUdWlTaXplTD4+O1xuICAgIHJlYWRvbmx5IG1vZGU6IFR1aVRpbWVNb2RlO1xuICAgIHJlYWRvbmx5IHBvc3RmaXg6IHN0cmluZztcbiAgICByZWFkb25seSBtYXhWYWx1ZXM6IFJlY29yZDxUdWlUaW1lRm9ybWF0UGFydHMsIG51bWJlcj47XG4gICAgcmVhZG9ubHkgaXRlbVNpemU6IFR1aVNpemVTIHwgVHVpU2l6ZUw7XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQ6IHVzZSBUdWlJbnB1dFRpbWVPcHRpb25zIGluc3RlYWRcbiAqIHRvZG86IHJlbW92ZSBpbiAzLjBcbiAqL1xuZXhwb3J0IHR5cGUgSW5wdXRUaW1lT3B0aW9ucyA9IFR1aUlucHV0VGltZU9wdGlvbnM7XG5cbi8vIFRPRE86IHJlbW92ZSBpbiBpdnkgY29tcGlsYXRpb25cbmV4cG9ydCBjb25zdCBJTlBVVF9USU1FX0lDT04gPSAoeyRpbXBsaWNpdH06IGFueSkgPT5cbiAgICAkaW1wbGljaXQgPT09ICdzJyA/ICd0dWlJY29uVGltZScgOiAndHVpSWNvblRpbWVMYXJnZSc7XG5cbmV4cG9ydCBjb25zdCBUVUlfSU5QVVRfVElNRV9ERUZBVUxUX09QVElPTlM6IFR1aUlucHV0VGltZU9wdGlvbnMgPSB7XG4gICAgaWNvbjogSU5QVVRfVElNRV9JQ09OLFxuICAgIG1vZGU6ICdISDpNTScsXG4gICAgcG9zdGZpeDogJycsXG4gICAgbWF4VmFsdWVzOiBNQVhfVElNRV9WQUxVRVMsXG4gICAgaXRlbVNpemU6ICdtJyxcbn07XG5cbmV4cG9ydCBjb25zdCBUVUlfSU5QVVRfVElNRV9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPFR1aUlucHV0VGltZU9wdGlvbnM+KFxuICAgICdEZWZhdWx0IHBhcmFtZXRlcnMgZm9yIGlucHV0IHRpbWUgY29tcG9uZW50JyxcbiAgICB7XG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IFRVSV9JTlBVVF9USU1FX0RFRkFVTFRfT1BUSU9OUyxcbiAgICB9LFxuKTtcblxuZXhwb3J0IGNvbnN0IHR1aUlucHV0VGltZU9wdGlvbnNQcm92aWRlcjogKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpSW5wdXRUaW1lT3B0aW9ucz4sXG4pID0+IFZhbHVlUHJvdmlkZXIgPSAob3B0aW9uczogUGFydGlhbDxUdWlJbnB1dFRpbWVPcHRpb25zPikgPT4gKHtcbiAgICBwcm92aWRlOiBUVUlfSU5QVVRfVElNRV9PUFRJT05TLFxuICAgIHVzZVZhbHVlOiB7Li4uVFVJX0lOUFVUX1RJTUVfREVGQVVMVF9PUFRJT05TLCAuLi5vcHRpb25zfSxcbn0pO1xuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGltZS1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXRpbWUvIiwic291cmNlcyI6WyJpbnB1dC10aW1lLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBRzVELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQWtCeEQsa0NBQWtDO0FBQ2xDLE1BQU0sQ0FBQyxJQUFNLGVBQWUsR0FBRyxVQUFDLEVBQWdCO1FBQWYsd0JBQVM7SUFDdEMsT0FBQSxTQUFTLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGtCQUFrQjtBQUF0RCxDQUFzRCxDQUFDO0FBRTNELE1BQU0sQ0FBQyxJQUFNLDhCQUE4QixHQUF3QjtJQUMvRCxJQUFJLEVBQUUsZUFBZTtJQUNyQixJQUFJLEVBQUUsT0FBTztJQUNiLE9BQU8sRUFBRSxFQUFFO0lBQ1gsU0FBUyxFQUFFLGVBQWU7SUFDMUIsUUFBUSxFQUFFLEdBQUc7Q0FDaEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxJQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUNwRCw2Q0FBNkMsRUFDN0M7SUFDSSxPQUFPLEVBQUUsY0FBTSxPQUFBLDhCQUE4QixFQUE5QixDQUE4QjtDQUNoRCxDQUNKLENBQUM7QUFFRixNQUFNLENBQUMsSUFBTSwyQkFBMkIsR0FFbkIsVUFBQyxPQUFxQyxJQUFLLE9BQUEsQ0FBQztJQUM3RCxPQUFPLEVBQUUsc0JBQXNCO0lBQy9CLFFBQVEsd0JBQU0sOEJBQThCLEdBQUssT0FBTyxDQUFDO0NBQzVELENBQUMsRUFIOEQsQ0FHOUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFZhbHVlUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlDb250ZXh0V2l0aEltcGxpY2l0LCBUdWlUaW1lTW9kZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVNpemVMLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtNQVhfVElNRV9WQUxVRVN9IGZyb20gJ0B0YWlnYS11aS9raXQvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpVGltZUZvcm1hdFBhcnRzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlJbnB1dFRpbWVPcHRpb25zIHtcbiAgICByZWFkb25seSBpY29uOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZVMgfCBUdWlTaXplTD4+O1xuICAgIHJlYWRvbmx5IG1vZGU6IFR1aVRpbWVNb2RlO1xuICAgIHJlYWRvbmx5IHBvc3RmaXg6IHN0cmluZztcbiAgICByZWFkb25seSBtYXhWYWx1ZXM6IFJlY29yZDxUdWlUaW1lRm9ybWF0UGFydHMsIG51bWJlcj47XG4gICAgcmVhZG9ubHkgaXRlbVNpemU6IFR1aVNpemVTIHwgVHVpU2l6ZUw7XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQ6IHVzZSBUdWlJbnB1dFRpbWVPcHRpb25zIGluc3RlYWRcbiAqIHRvZG86IHJlbW92ZSBpbiAzLjBcbiAqL1xuZXhwb3J0IHR5cGUgSW5wdXRUaW1lT3B0aW9ucyA9IFR1aUlucHV0VGltZU9wdGlvbnM7XG5cbi8vIFRPRE86IHJlbW92ZSBpbiBpdnkgY29tcGlsYXRpb25cbmV4cG9ydCBjb25zdCBJTlBVVF9USU1FX0lDT04gPSAoeyRpbXBsaWNpdH06IGFueSk6IHN0cmluZyA9PlxuICAgICRpbXBsaWNpdCA9PT0gJ3MnID8gJ3R1aUljb25UaW1lJyA6ICd0dWlJY29uVGltZUxhcmdlJztcblxuZXhwb3J0IGNvbnN0IFRVSV9JTlBVVF9USU1FX0RFRkFVTFRfT1BUSU9OUzogVHVpSW5wdXRUaW1lT3B0aW9ucyA9IHtcbiAgICBpY29uOiBJTlBVVF9USU1FX0lDT04sXG4gICAgbW9kZTogJ0hIOk1NJyxcbiAgICBwb3N0Zml4OiAnJyxcbiAgICBtYXhWYWx1ZXM6IE1BWF9USU1FX1ZBTFVFUyxcbiAgICBpdGVtU2l6ZTogJ20nLFxufTtcblxuZXhwb3J0IGNvbnN0IFRVSV9JTlBVVF9USU1FX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHVpSW5wdXRUaW1lT3B0aW9ucz4oXG4gICAgJ0RlZmF1bHQgcGFyYW1ldGVycyBmb3IgaW5wdXQgdGltZSBjb21wb25lbnQnLFxuICAgIHtcbiAgICAgICAgZmFjdG9yeTogKCkgPT4gVFVJX0lOUFVUX1RJTUVfREVGQVVMVF9PUFRJT05TLFxuICAgIH0sXG4pO1xuXG5leHBvcnQgY29uc3QgdHVpSW5wdXRUaW1lT3B0aW9uc1Byb3ZpZGVyOiAoXG4gICAgb3B0aW9uczogUGFydGlhbDxUdWlJbnB1dFRpbWVPcHRpb25zPixcbikgPT4gVmFsdWVQcm92aWRlciA9IChvcHRpb25zOiBQYXJ0aWFsPFR1aUlucHV0VGltZU9wdGlvbnM+KSA9PiAoe1xuICAgIHByb3ZpZGU6IFRVSV9JTlBVVF9USU1FX09QVElPTlMsXG4gICAgdXNlVmFsdWU6IHsuLi5UVUlfSU5QVVRfVElNRV9ERUZBVUxUX09QVElPTlMsIC4uLm9wdGlvbnN9LFxufSk7XG4iXX0=
@@ -300,4 +300,4 @@ var TuiInputTimeComponent = /** @class */ (function (_super) {
300
300
  return TuiInputTimeComponent;
301
301
  }(AbstractTuiNullableControl));
302
302
  export { TuiInputTimeComponent };
303
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGltZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtdGltZS8iLCJzb3VyY2VzIjpbImlucHV0LXRpbWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixJQUFJLEVBQ0osU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsMEJBQTBCLEVBQzFCLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLDJCQUEyQixFQUMzQixrQkFBa0IsRUFFbEIsY0FBYyxFQUVkLE9BQU8sRUFDUCxPQUFPLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLDhCQUE4QixFQUFxQixNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQ0gsOEJBQThCLEVBQzlCLGlCQUFpQixHQUNwQixNQUFNLDBCQUEwQixDQUFDO0FBRWxDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxzQkFBc0IsRUFBc0IsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRixXQUFXO0FBY1g7SUFDWSx5Q0FBbUM7SUFnQzNDLCtCQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBRTlDLFVBQW1ELEVBRW5ELE9BQTRCO1FBVGpELFlBV0ksa0JB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bEU7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7eURBQ0Y7SUFJZjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTt1REFDcUM7SUFJdEQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MERBQzhDO0lBeUUvRDtRQURDLE9BQU87MkRBR1A7SUFHRDtRQURDLFlBQVksQ0FBQyxPQUFPLENBQUM7d0RBR3JCO0lBc0ZEO1FBREMsT0FBTzs4REFPUDtJQUdEO1FBREMsT0FBTzt1REFPUDtJQWxOUSxxQkFBcUI7UUFiakMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQiwrbkRBQXlDO1lBRXpDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSx1QkFBcUIsRUFBckIsQ0FBcUIsQ0FBQztpQkFDdkQ7Z0JBQ0Qsa0NBQWtDO2FBQ3JDOztTQUNKLENBQUM7UUFtQ08sV0FBQSxRQUFRLEVBQUUsQ0FBQTtRQUNWLFdBQUEsSUFBSSxFQUFFLENBQUE7UUFDTixXQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUVqQixXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ3pCLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBRXRCLFdBQUEsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7T0F6QzFCLHFCQUFxQixDQXVSakM7SUFBRCw0QkFBQztDQUFBLEFBdlJELENBQ1ksMEJBQTBCLEdBc1JyQztTQXZSWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2wsXG4gICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVIsXG4gICAgaXNOYXRpdmVGb2N1c2VkLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFRVSV9TVFJJQ1RfTUFUQ0hFUixcbiAgICBUdWlCb29sZWFuSGFuZGxlcixcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlUaW1lLFxuICAgIFR1aVRpbWVMaWtlLFxuICAgIFR1aVRpbWVNb2RlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50LCBUdWlUZXh0TWFza09wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7RklYRURfRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9wcm92aWRlcnMnO1xuaW1wb3J0IHtUVUlfVElNRV9URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtcbiAgICB0dWlDcmVhdGVBdXRvQ29ycmVjdGVkVGltZVBpcGUsXG4gICAgdHVpQ3JlYXRlVGltZU1hc2ssXG59IGZyb20gJ0B0YWlnYS11aS9raXQvdXRpbHMvbWFzayc7XG5pbXBvcnQge1RleHRNYXNrQ29uZmlnfSBmcm9tICdhbmd1bGFyMi10ZXh0LW1hc2snO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1RJTUVfT1BUSU9OUywgVHVpSW5wdXRUaW1lT3B0aW9uc30gZnJvbSAnLi9pbnB1dC10aW1lLW9wdGlvbnMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtdGltZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXRpbWUudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtdGltZS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0VGltZUNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIEZJWEVEX0RST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRUaW1lQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aU51bGxhYmxlQ29udHJvbDxUdWlUaW1lPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZChUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQ/OiBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQ7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VHVpVGltZT4gPSBBTFdBWVNfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpdGVtczogcmVhZG9ubHkgVHVpVGltZVtdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaXRlbVNpemU6IFR1aUlucHV0VGltZU9wdGlvbnNbJ2l0ZW1TaXplJ10gPSB0aGlzLm9wdGlvbnMuaXRlbVNpemU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc3RyaWN0ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbW9kZTogVHVpSW5wdXRUaW1lT3B0aW9uc1snbW9kZSddID0gdGhpcy5vcHRpb25zLm1vZGU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcG9zdGZpeDogVHVpSW5wdXRUaW1lT3B0aW9uc1sncG9zdGZpeCddID0gdGhpcy5vcHRpb25zLnBvc3RmaXg7XG5cbiAgICBvcGVuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9USU1FX1RFWFRTKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRpbWVUZXh0cyQ6IE9ic2VydmFibGU8UmVjb3JkPFR1aVRpbWVNb2RlLCBzdHJpbmc+PixcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfVElNRV9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aUlucHV0VGltZU9wdGlvbnMsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZCA/IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gaXNOYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZ2V0IGZpbHRlcmVkKCk6IHJlYWRvbmx5IFR1aVRpbWVbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlcih0aGlzLml0ZW1zLCB0aGlzLm1vZGUsIHRoaXMuY29tcHV0ZWRTZWFyY2gpO1xuICAgIH1cblxuICAgIGdldCB0ZXh0TWFza09wdGlvbnMoKTogVGV4dE1hc2tDb25maWcge1xuICAgICAgICByZXR1cm4gdGhpcy5jYWxjdWxhdGVNYXNrKFxuICAgICAgICAgICAgdGhpcy5tb2RlLFxuICAgICAgICApIGFzIFR1aVRleHRNYXNrT3B0aW9ucyBhcyB1bmtub3duIGFzIFRleHRNYXNrQ29uZmlnO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZS50b1N0cmluZyh0aGlzLm1vZGUpIDogdGhpcy5uYXRpdmVWYWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRTZWFyY2goKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcHV0ZWRWYWx1ZS5sZW5ndGggIT09IHRoaXMubW9kZS5sZW5ndGggPyB0aGlzLmNvbXB1dGVkVmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBnZXQgaW5uZXJQc2V1ZG9Gb2N1c2VkKCk6IGJvb2xlYW4gfCBudWxsIHtcbiAgICAgICAgaWYgKHRoaXMucHNldWRvRm9jdXNlZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm9wZW4gfHwgdGhpcy5jb21wdXRlZEZvY3VzZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGljb24oKTogVHVpSW5wdXRUaW1lT3B0aW9uc1snaWNvbiddIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pY29uO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50ID8gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50LnZhbHVlIDogJyc7XG4gICAgfVxuXG4gICAgc2V0IG5hdGl2ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0RmlsbGVyJChtb2RlOiBUdWlUaW1lTW9kZSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRpbWVUZXh0cyQucGlwZShtYXAodGV4dHMgPT4gdGV4dHNbbW9kZV0pKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgb25DbGljaygpIHtcbiAgICAgICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5vcGVuID0gISF0aGlzLml0ZW1zLmxlbmd0aDtcblxuICAgICAgICBpZiAodGhpcy5jb250cm9sKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSh7ZW1pdEV2ZW50OiBmYWxzZX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0aGlzLmdldE1hdGNoKHZhbHVlKTtcblxuICAgICAgICBpZiAobWF0Y2ggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShtYXRjaCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggIT09IHRoaXMubW9kZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUobnVsbCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRpbWUgPSBUdWlUaW1lLmZyb21TdHJpbmcodmFsdWUpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy5zdHJpY3QgPyB0aGlzLmZpbmROZWFyZXN0VGltZUZyb21JdGVtcyh0aW1lKSA6IHRpbWUpO1xuICAgIH1cblxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBmb2N1c2VkIHx8XG4gICAgICAgICAgICB0aGlzLnZhbHVlICE9PSBudWxsIHx8XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID09PSAnJyB8fFxuICAgICAgICAgICAgdGhpcy5tb2RlID09PSAnSEg6TU0nXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyc2VkVGltZSA9IFR1aVRpbWUuZnJvbVN0cmluZyh0aGlzLm5hdGl2ZVZhbHVlKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHBhcnNlZFRpbWUpO1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubmF0aXZlVmFsdWUuZW5kc1dpdGgoJy4nKSB8fCB0aGlzLm5hdGl2ZVZhbHVlLmVuZHNXaXRoKCc6JykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdGhpcy5uYXRpdmVWYWx1ZS5zbGljZSgwLCAtMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSG92ZXJlZChob3ZlcmVkKTtcbiAgICB9XG5cbiAgICBvbkFycm93VXAoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLml0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wcm9jZXNzQXJyb3coZXZlbnQsIDEpO1xuICAgIH1cblxuICAgIG9uQXJyb3dEb3duKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJvY2Vzc0Fycm93KGV2ZW50LCAtMSk7XG4gICAgfVxuXG4gICAgb25NZW51Q2xpY2soaXRlbTogVHVpVGltZSkge1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShpdGVtKTtcbiAgICB9XG5cbiAgICBvbk9wZW4ob3BlbjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLm9wZW4gPSBvcGVuO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IFR1aVRpbWUgfCBudWxsKSB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdmFsdWUgPyB0aGlzLmNvbXB1dGVkVmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgY2FsY3VsYXRlTWFzayhtb2RlOiBUdWlUaW1lTW9kZSk6IFR1aVRleHRNYXNrT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBtYXNrOiB0dWlDcmVhdGVUaW1lTWFzayhtb2RlLCB0aGlzLm9wdGlvbnMubWF4VmFsdWVzKSxcbiAgICAgICAgICAgIHBpcGU6IHR1aUNyZWF0ZUF1dG9Db3JyZWN0ZWRUaW1lUGlwZShtb2RlLCB0aGlzLm9wdGlvbnMubWF4VmFsdWVzKSxcbiAgICAgICAgICAgIGd1aWRlOiBmYWxzZSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZmlsdGVyKFxuICAgICAgICBpdGVtczogcmVhZG9ubHkgVHVpVGltZVtdLFxuICAgICAgICBtb2RlOiBUdWlUaW1lTW9kZSxcbiAgICAgICAgc2VhcmNoOiBzdHJpbmcsXG4gICAgKTogcmVhZG9ubHkgVHVpVGltZVtdIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcihpdGVtID0+IGl0ZW0udG9TdHJpbmcobW9kZSkuaW5jbHVkZXMoc2VhcmNoKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaW5kTmVhcmVzdFRpbWVGcm9tSXRlbXModmFsdWU6IFR1aVRpbWUpOiBUdWlUaW1lIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgocHJldmlvdXMsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICBNYXRoLmFicyhjdXJyZW50LnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKSAtIHZhbHVlLnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKSkgPFxuICAgICAgICAgICAgTWF0aC5hYnMocHJldmlvdXMudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpIC0gdmFsdWUudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpKVxuICAgICAgICAgICAgICAgID8gY3VycmVudFxuICAgICAgICAgICAgICAgIDogcHJldmlvdXMsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNYXRjaCh2YWx1ZTogc3RyaW5nKTogVHVpVGltZSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiBUVUlfU1RSSUNUX01BVENIRVIoaXRlbSwgdmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlKCkge1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NBcnJvdyhldmVudDogRXZlbnQsIHNoaWZ0OiAtMSB8IDEpIHtcbiAgICAgICAgY29uc3Qge3RhcmdldH0gPSBldmVudDtcblxuICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICBpZiAodGhpcy5yZWFkT25seSB8fCAhKHRhcmdldCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRhcmdldC5zZWxlY3Rpb25TdGFydCB8fCAwO1xuXG4gICAgICAgIHRoaXMuc2hpZnRUaW1lKHRoaXMuY2FsY3VsYXRlU2hpZnQoc2VsZWN0aW9uU3RhcnQsIHNoaWZ0KSk7XG5cbiAgICAgICAgdGFyZ2V0LnNldFNlbGVjdGlvblJhbmdlKHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25TdGFydCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVTaGlmdChzZWxlY3Rpb25TdGFydDogbnVtYmVyLCBzaGlmdDogbnVtYmVyKTogVHVpVGltZUxpa2Uge1xuICAgICAgICBpZiAoc2VsZWN0aW9uU3RhcnQgPD0gMikge1xuICAgICAgICAgICAgcmV0dXJuIHtob3Vyczogc2hpZnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGVjdGlvblN0YXJ0IDw9IDUpIHtcbiAgICAgICAgICAgIHJldHVybiB7bWludXRlczogc2hpZnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGVjdGlvblN0YXJ0IDw9IDgpIHtcbiAgICAgICAgICAgIHJldHVybiB7c2Vjb25kczogc2hpZnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHttczogc2hpZnR9O1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hpZnRUaW1lKHNoaWZ0OiBUdWlUaW1lTGlrZSkge1xuICAgICAgICBpZiAodGhpcy52YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5jcmVhc2VkVGltZSA9IHRoaXMudmFsdWUuc2hpZnQoc2hpZnQpO1xuXG4gICAgICAgIC8vIE1hbnVhbCB1cGRhdGUgc28gd2UgY2FuIHNldCBjYXJldCBwb3NpdGlvbiBwcm9wZXJseVxuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gaW5jcmVhc2VkVGltZS50b1N0cmluZyh0aGlzLm1vZGUpO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGluY3JlYXNlZFRpbWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNJbnB1dChwcmV2ZW50U2Nyb2xsOiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsIHRydWUsIHByZXZlbnRTY3JvbGwpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
303
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGltZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtdGltZS8iLCJzb3VyY2VzIjpbImlucHV0LXRpbWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixJQUFJLEVBQ0osU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsMEJBQTBCLEVBQzFCLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLDJCQUEyQixFQUMzQixrQkFBa0IsRUFFbEIsY0FBYyxFQUVkLE9BQU8sRUFDUCxPQUFPLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLDhCQUE4QixFQUFxQixNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBQyxrQ0FBa0MsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQ0gsOEJBQThCLEVBQzlCLGlCQUFpQixHQUNwQixNQUFNLDBCQUEwQixDQUFDO0FBRWxDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxzQkFBc0IsRUFBc0IsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRixXQUFXO0FBY1g7SUFDWSx5Q0FBbUM7SUFnQzNDLCtCQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBRTlDLFVBQW1ELEVBRW5ELE9BQTRCO1FBVGpELFlBV0ksa0JB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bEU7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7eURBQ0Y7SUFJZjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTt1REFDcUM7SUFJdEQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MERBQzhDO0lBeUUvRDtRQURDLE9BQU87MkRBR1A7SUFHRDtRQURDLFlBQVksQ0FBQyxPQUFPLENBQUM7d0RBR3JCO0lBc0ZEO1FBREMsT0FBTzs4REFPUDtJQUdEO1FBREMsT0FBTzt1REFPUDtJQWxOUSxxQkFBcUI7UUFiakMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQiwrbkRBQXlDO1lBRXpDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSx1QkFBcUIsRUFBckIsQ0FBcUIsQ0FBQztpQkFDdkQ7Z0JBQ0Qsa0NBQWtDO2FBQ3JDOztTQUNKLENBQUM7UUFtQ08sV0FBQSxRQUFRLEVBQUUsQ0FBQTtRQUNWLFdBQUEsSUFBSSxFQUFFLENBQUE7UUFDTixXQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUVqQixXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ3pCLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBRXRCLFdBQUEsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7T0F6QzFCLHFCQUFxQixDQXVSakM7SUFBRCw0QkFBQztDQUFBLEFBdlJELENBQ1ksMEJBQTBCLEdBc1JyQztTQXZSWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2wsXG4gICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVIsXG4gICAgaXNOYXRpdmVGb2N1c2VkLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIFRVSV9TVFJJQ1RfTUFUQ0hFUixcbiAgICBUdWlCb29sZWFuSGFuZGxlcixcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlUaW1lLFxuICAgIFR1aVRpbWVMaWtlLFxuICAgIFR1aVRpbWVNb2RlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50LCBUdWlUZXh0TWFza09wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7RklYRURfRFJPUERPV05fQ09OVFJPTExFUl9QUk9WSURFUn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9wcm92aWRlcnMnO1xuaW1wb3J0IHtUVUlfVElNRV9URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtcbiAgICB0dWlDcmVhdGVBdXRvQ29ycmVjdGVkVGltZVBpcGUsXG4gICAgdHVpQ3JlYXRlVGltZU1hc2ssXG59IGZyb20gJ0B0YWlnYS11aS9raXQvdXRpbHMvbWFzayc7XG5pbXBvcnQge1RleHRNYXNrQ29uZmlnfSBmcm9tICdhbmd1bGFyMi10ZXh0LW1hc2snO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1RJTUVfT1BUSU9OUywgVHVpSW5wdXRUaW1lT3B0aW9uc30gZnJvbSAnLi9pbnB1dC10aW1lLW9wdGlvbnMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtdGltZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXRpbWUudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtdGltZS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0VGltZUNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIEZJWEVEX0RST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRUaW1lQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aU51bGxhYmxlQ29udHJvbDxUdWlUaW1lPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZChUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQ/OiBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQ7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VHVpVGltZT4gPSBBTFdBWVNfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpdGVtczogcmVhZG9ubHkgVHVpVGltZVtdID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaXRlbVNpemU6IFR1aUlucHV0VGltZU9wdGlvbnNbJ2l0ZW1TaXplJ10gPSB0aGlzLm9wdGlvbnMuaXRlbVNpemU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc3RyaWN0ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbW9kZTogVHVpSW5wdXRUaW1lT3B0aW9uc1snbW9kZSddID0gdGhpcy5vcHRpb25zLm1vZGU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcG9zdGZpeDogVHVpSW5wdXRUaW1lT3B0aW9uc1sncG9zdGZpeCddID0gdGhpcy5vcHRpb25zLnBvc3RmaXg7XG5cbiAgICBvcGVuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9USU1FX1RFWFRTKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRpbWVUZXh0cyQ6IE9ic2VydmFibGU8UmVjb3JkPFR1aVRpbWVNb2RlLCBzdHJpbmc+PixcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfVElNRV9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aUlucHV0VGltZU9wdGlvbnMsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZCA/IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gaXNOYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZ2V0IGZpbHRlcmVkKCk6IHJlYWRvbmx5IFR1aVRpbWVbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlcih0aGlzLml0ZW1zLCB0aGlzLm1vZGUsIHRoaXMuY29tcHV0ZWRTZWFyY2gpO1xuICAgIH1cblxuICAgIGdldCB0ZXh0TWFza09wdGlvbnMoKTogVGV4dE1hc2tDb25maWcge1xuICAgICAgICByZXR1cm4gdGhpcy5jYWxjdWxhdGVNYXNrKFxuICAgICAgICAgICAgdGhpcy5tb2RlLFxuICAgICAgICApIGFzIFR1aVRleHRNYXNrT3B0aW9ucyBhcyB1bmtub3duIGFzIFRleHRNYXNrQ29uZmlnO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZS50b1N0cmluZyh0aGlzLm1vZGUpIDogdGhpcy5uYXRpdmVWYWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRTZWFyY2goKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcHV0ZWRWYWx1ZS5sZW5ndGggIT09IHRoaXMubW9kZS5sZW5ndGggPyB0aGlzLmNvbXB1dGVkVmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBnZXQgaW5uZXJQc2V1ZG9Gb2N1c2VkKCk6IGJvb2xlYW4gfCBudWxsIHtcbiAgICAgICAgaWYgKHRoaXMucHNldWRvRm9jdXNlZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm9wZW4gfHwgdGhpcy5jb21wdXRlZEZvY3VzZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGljb24oKTogVHVpSW5wdXRUaW1lT3B0aW9uc1snaWNvbiddIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pY29uO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50ID8gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50LnZhbHVlIDogJyc7XG4gICAgfVxuXG4gICAgc2V0IG5hdGl2ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0RmlsbGVyJChtb2RlOiBUdWlUaW1lTW9kZSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRpbWVUZXh0cyQucGlwZShtYXAodGV4dHMgPT4gdGV4dHNbbW9kZV0pKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gISF0aGlzLml0ZW1zLmxlbmd0aDtcblxuICAgICAgICBpZiAodGhpcy5jb250cm9sKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSh7ZW1pdEV2ZW50OiBmYWxzZX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0aGlzLmdldE1hdGNoKHZhbHVlKTtcblxuICAgICAgICBpZiAobWF0Y2ggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShtYXRjaCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggIT09IHRoaXMubW9kZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWUobnVsbCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRpbWUgPSBUdWlUaW1lLmZyb21TdHJpbmcodmFsdWUpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy5zdHJpY3QgPyB0aGlzLmZpbmROZWFyZXN0VGltZUZyb21JdGVtcyh0aW1lKSA6IHRpbWUpO1xuICAgIH1cblxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBmb2N1c2VkIHx8XG4gICAgICAgICAgICB0aGlzLnZhbHVlICE9PSBudWxsIHx8XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID09PSAnJyB8fFxuICAgICAgICAgICAgdGhpcy5tb2RlID09PSAnSEg6TU0nXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyc2VkVGltZSA9IFR1aVRpbWUuZnJvbVN0cmluZyh0aGlzLm5hdGl2ZVZhbHVlKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHBhcnNlZFRpbWUpO1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubmF0aXZlVmFsdWUuZW5kc1dpdGgoJy4nKSB8fCB0aGlzLm5hdGl2ZVZhbHVlLmVuZHNXaXRoKCc6JykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdGhpcy5uYXRpdmVWYWx1ZS5zbGljZSgwLCAtMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlSG92ZXJlZChob3ZlcmVkKTtcbiAgICB9XG5cbiAgICBvbkFycm93VXAoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLml0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wcm9jZXNzQXJyb3coZXZlbnQsIDEpO1xuICAgIH1cblxuICAgIG9uQXJyb3dEb3duKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJvY2Vzc0Fycm93KGV2ZW50LCAtMSk7XG4gICAgfVxuXG4gICAgb25NZW51Q2xpY2soaXRlbTogVHVpVGltZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShpdGVtKTtcbiAgICB9XG5cbiAgICBvbk9wZW4ob3BlbjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLm9wZW4gPSBvcGVuO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IFR1aVRpbWUgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdmFsdWUgPyB0aGlzLmNvbXB1dGVkVmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgY2FsY3VsYXRlTWFzayhtb2RlOiBUdWlUaW1lTW9kZSk6IFR1aVRleHRNYXNrT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBtYXNrOiB0dWlDcmVhdGVUaW1lTWFzayhtb2RlLCB0aGlzLm9wdGlvbnMubWF4VmFsdWVzKSxcbiAgICAgICAgICAgIHBpcGU6IHR1aUNyZWF0ZUF1dG9Db3JyZWN0ZWRUaW1lUGlwZShtb2RlLCB0aGlzLm9wdGlvbnMubWF4VmFsdWVzKSxcbiAgICAgICAgICAgIGd1aWRlOiBmYWxzZSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZmlsdGVyKFxuICAgICAgICBpdGVtczogcmVhZG9ubHkgVHVpVGltZVtdLFxuICAgICAgICBtb2RlOiBUdWlUaW1lTW9kZSxcbiAgICAgICAgc2VhcmNoOiBzdHJpbmcsXG4gICAgKTogcmVhZG9ubHkgVHVpVGltZVtdIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcihpdGVtID0+IGl0ZW0udG9TdHJpbmcobW9kZSkuaW5jbHVkZXMoc2VhcmNoKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaW5kTmVhcmVzdFRpbWVGcm9tSXRlbXModmFsdWU6IFR1aVRpbWUpOiBUdWlUaW1lIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgocHJldmlvdXMsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICBNYXRoLmFicyhjdXJyZW50LnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKSAtIHZhbHVlLnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKSkgPFxuICAgICAgICAgICAgTWF0aC5hYnMocHJldmlvdXMudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpIC0gdmFsdWUudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpKVxuICAgICAgICAgICAgICAgID8gY3VycmVudFxuICAgICAgICAgICAgICAgIDogcHJldmlvdXMsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNYXRjaCh2YWx1ZTogc3RyaW5nKTogVHVpVGltZSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiBUVUlfU1RSSUNUX01BVENIRVIoaXRlbSwgdmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NBcnJvdyhldmVudDogRXZlbnQsIHNoaWZ0OiAtMSB8IDEpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge3RhcmdldH0gPSBldmVudDtcblxuICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICBpZiAodGhpcy5yZWFkT25seSB8fCAhKHRhcmdldCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRhcmdldC5zZWxlY3Rpb25TdGFydCB8fCAwO1xuXG4gICAgICAgIHRoaXMuc2hpZnRUaW1lKHRoaXMuY2FsY3VsYXRlU2hpZnQoc2VsZWN0aW9uU3RhcnQsIHNoaWZ0KSk7XG5cbiAgICAgICAgdGFyZ2V0LnNldFNlbGVjdGlvblJhbmdlKHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25TdGFydCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVTaGlmdChzZWxlY3Rpb25TdGFydDogbnVtYmVyLCBzaGlmdDogbnVtYmVyKTogVHVpVGltZUxpa2Uge1xuICAgICAgICBpZiAoc2VsZWN0aW9uU3RhcnQgPD0gMikge1xuICAgICAgICAgICAgcmV0dXJuIHtob3Vyczogc2hpZnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGVjdGlvblN0YXJ0IDw9IDUpIHtcbiAgICAgICAgICAgIHJldHVybiB7bWludXRlczogc2hpZnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGVjdGlvblN0YXJ0IDw9IDgpIHtcbiAgICAgICAgICAgIHJldHVybiB7c2Vjb25kczogc2hpZnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHttczogc2hpZnR9O1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hpZnRUaW1lKHNoaWZ0OiBUdWlUaW1lTGlrZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy52YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5jcmVhc2VkVGltZTogVHVpVGltZSA9IHRoaXMudmFsdWUuc2hpZnQoc2hpZnQpO1xuXG4gICAgICAgIC8vIE1hbnVhbCB1cGRhdGUgc28gd2UgY2FuIHNldCBjYXJldCBwb3NpdGlvbiBwcm9wZXJseVxuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gaW5jcmVhc2VkVGltZS50b1N0cmluZyh0aGlzLm1vZGUpO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGluY3JlYXNlZFRpbWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNJbnB1dChwcmV2ZW50U2Nyb2xsOiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsIHRydWUsIHByZXZlbnRTY3JvbGwpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -130,4 +130,4 @@ var TuiLineClampComponent = /** @class */ (function () {
130
130
  return TuiLineClampComponent;
131
131
  }());
132
132
  export { TuiLineClampComponent };
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jbGFtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvbGluZS1jbGFtcC8iLCJzb3VyY2VzIjpbImxpbmUtY2xhbXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsYUFBYSxFQUNiLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBc0IsMkJBQTJCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRixPQUFPLEVBQUMsZUFBZSxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBUTdFO0lBcUJJLCtCQUN5QyxVQUFtQyxFQUNwQyxRQUFtQixFQUNYLEVBQXFCLEVBQ2hDLE1BQWM7UUFIVixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUNwQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ1gsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDaEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXJCbEMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVU1QixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBSWhCLFlBQU8sR0FBd0IsRUFBRSxDQUFDO1FBUTlCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFu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VSxFQUFDLENBQUM7eURBQ1Q7SUFPbEQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MkRBR2hCO0lBSUQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7NkRBQ0Q7SUFJaEI7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MERBQ2lCO0lBWWxDO1FBREMsT0FBTzsyREFjUDtJQW1CRDtRQURDLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQzswREFHakM7SUFHRDtRQURDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQzt1REFHOUI7SUF0RVEscUJBQXFCO1FBTmpDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxnQkFBZ0I7WUFDMUIsK1JBQXlDO1lBRXpDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztTQUNsRCxDQUFDO1FBdUJPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7T0F6QlYscUJBQXFCLENBd0ZqQztJQUFELDRCQUFDO0NBQUEsQUF4RkQsSUF3RkM7U0F4RlkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2lzQ3VycmVudFRhcmdldCwgdHVpRGVmYXVsdFByb3AsIHR1aVB1cmUsIHR5cGVkRnJvbUV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudCwgUG9seW1vcnBoZXVzT3V0bGV0Q29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXBUbywgcGFpcndpc2UsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtY2xhbXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9saW5lLWNsYW1wLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpbmUtY2xhbXAuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lQ2xhbXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBAVmlld0NoaWxkKFBvbHltb3JwaGV1c091dGxldENvbXBvbmVudCwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3V0bGV0PzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpbmVzTGltaXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgxKTtcbiAgICBwcml2YXRlIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IGxpbmVzTGltaXQobGluZXNMaW1pdDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubGluZXNMaW1pdCQubmV4dChsaW5lc0xpbWl0KTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbGluZUhlaWdodCA9IDI0O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoUmVuZGVyZXIyKSBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy5za2lwSW5pdGlhbFRyYW5zaXRpb24oKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldCBsaW5lQ2xhbXAkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpbmVzTGltaXQkLnBpcGUoXG4gICAgICAgICAgICBzdGFydFdpdGgoMSksXG4gICAgICAgICAgICBwYWlyd2lzZSgpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKChbcHJldiwgbmV4dF0pID0+XG4gICAgICAgICAgICAgICAgbmV4dCA+PSBwcmV2XG4gICAgICAgICAgICAgICAgICAgID8gb2YobmV4dClcbiAgICAgICAgICAgICAgICAgICAgOiB0eXBlZEZyb21FdmVudCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3RyYW5zaXRpb25lbmQnKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoaXNDdXJyZW50VGFyZ2V0KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwVG8obmV4dCksXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IG92ZXJmbG93bigpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLm91dGxldCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge3Njcm9sbEhlaWdodCwgc2Nyb2xsV2lkdGh9ID0gdGhpcy5vdXRsZXQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgY2xpZW50V2lkdGh9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgLy8gNHB4IGJ1ZmZlciBmb3IgSUUvRWRnZSBpbmNvcnJlY3RseSByb3VuZGluZyBzY3JvbGxIZWlnaHRcbiAgICAgICAgcmV0dXJuIHNjcm9sbEhlaWdodCAtIGNsaWVudEhlaWdodCA+IDQgfHwgc2Nyb2xsV2lkdGggLSBjbGllbnRXaWR0aCA+IDA7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkQ29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmZsb3duID8gdGhpcy5jb250ZW50IDogJyc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5tYXhIZWlnaHQucHgnKVxuICAgIGdldCBtYXhIZWlnaHQoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVkID8gdGhpcy5saW5lSGVpZ2h0ICogdGhpcy5saW5lc0xpbWl0JC52YWx1ZSA6IG51bGw7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKVxuICAgIGdldCBoZWlnaHQoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5vdXRsZXQgPyAwIDogdGhpcy5vdXRsZXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQgKyA0IHx8IG51bGw7XG4gICAgfVxuXG4gICAgdXBkYXRlVmlldygpIHtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNraXBJbml0aWFsVHJhbnNpdGlvbigpIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ19pbml0aWFsaXplZCcpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jbGFtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvbGluZS1jbGFtcC8iLCJzb3VyY2VzIjpbImxpbmUtY2xhbXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsYUFBYSxFQUNiLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBc0IsMkJBQTJCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRixPQUFPLEVBQUMsZUFBZSxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBUTdFO0lBcUJJLCtCQUN5QyxVQUFtQyxFQUNwQyxRQUFtQixFQUNYLEVBQXFCLEVBQ2hDLE1BQWM7UUFIVixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUNwQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ1gsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDaEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXJCbEMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVU1QixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBSWhCLFlBQU8sR0FBd0IsRUFBRSxDQUFDO1FBUTlCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFu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VSxFQUFDLENBQUM7eURBQ1Q7SUFPbEQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MkRBR2hCO0lBSUQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7NkRBQ0Q7SUFJaEI7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MERBQ2lCO0lBWWxDO1FBREMsT0FBTzsyREFjUDtJQW1CRDtRQURDLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQzswREFHakM7SUFHRDtRQURDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQzt1REFHOUI7SUF0RVEscUJBQXFCO1FBTmpDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxnQkFBZ0I7WUFDMUIsK1JBQXlDO1lBRXpDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztTQUNsRCxDQUFDO1FBdUJPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7T0F6QlYscUJBQXFCLENBd0ZqQztJQUFELDRCQUFDO0NBQUEsQUF4RkQsSUF3RkM7U0F4RlkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2lzQ3VycmVudFRhcmdldCwgdHVpRGVmYXVsdFByb3AsIHR1aVB1cmUsIHR5cGVkRnJvbUV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudCwgUG9seW1vcnBoZXVzT3V0bGV0Q29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXBUbywgcGFpcndpc2UsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtY2xhbXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9saW5lLWNsYW1wLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpbmUtY2xhbXAuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lQ2xhbXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBAVmlld0NoaWxkKFBvbHltb3JwaGV1c091dGxldENvbXBvbmVudCwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3V0bGV0PzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpbmVzTGltaXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgxKTtcbiAgICBwcml2YXRlIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IGxpbmVzTGltaXQobGluZXNMaW1pdDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubGluZXNMaW1pdCQubmV4dChsaW5lc0xpbWl0KTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbGluZUhlaWdodCA9IDI0O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoUmVuZGVyZXIyKSBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy5za2lwSW5pdGlhbFRyYW5zaXRpb24oKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldCBsaW5lQ2xhbXAkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpbmVzTGltaXQkLnBpcGUoXG4gICAgICAgICAgICBzdGFydFdpdGgoMSksXG4gICAgICAgICAgICBwYWlyd2lzZSgpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKChbcHJldiwgbmV4dF0pID0+XG4gICAgICAgICAgICAgICAgbmV4dCA+PSBwcmV2XG4gICAgICAgICAgICAgICAgICAgID8gb2YobmV4dClcbiAgICAgICAgICAgICAgICAgICAgOiB0eXBlZEZyb21FdmVudCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3RyYW5zaXRpb25lbmQnKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoaXNDdXJyZW50VGFyZ2V0KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwVG8obmV4dCksXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IG92ZXJmbG93bigpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLm91dGxldCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge3Njcm9sbEhlaWdodCwgc2Nyb2xsV2lkdGh9ID0gdGhpcy5vdXRsZXQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgY2xpZW50V2lkdGh9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgLy8gNHB4IGJ1ZmZlciBmb3IgSUUvRWRnZSBpbmNvcnJlY3RseSByb3VuZGluZyBzY3JvbGxIZWlnaHRcbiAgICAgICAgcmV0dXJuIHNjcm9sbEhlaWdodCAtIGNsaWVudEhlaWdodCA+IDQgfHwgc2Nyb2xsV2lkdGggLSBjbGllbnRXaWR0aCA+IDA7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkQ29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmZsb3duID8gdGhpcy5jb250ZW50IDogJyc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5tYXhIZWlnaHQucHgnKVxuICAgIGdldCBtYXhIZWlnaHQoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVkID8gdGhpcy5saW5lSGVpZ2h0ICogdGhpcy5saW5lc0xpbWl0JC52YWx1ZSA6IG51bGw7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKVxuICAgIGdldCBoZWlnaHQoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5vdXRsZXQgPyAwIDogdGhpcy5vdXRsZXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQgKyA0IHx8IG51bGw7XG4gICAgfVxuXG4gICAgdXBkYXRlVmlldygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNraXBJbml0aWFsVHJhbnNpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ19pbml0aWFsaXplZCcpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -169,4 +169,4 @@ var TuiMultiSelectGroupComponent = /** @class */ (function () {
169
169
  return TuiMultiSelectGroupComponent;
170
170
  }());
171
171
  export { TuiMultiSelectGroupComponent };
172
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvIiwic291cmNlcyI6WyJtdWx0aS1zZWxlY3QtZ3JvdXAvbXVsdGktc2VsZWN0LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLE1BQU0sRUFDTixLQUFLLEdBRVIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxXQUFXLEVBQ1gsNkJBQTZCLEVBQzdCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsNEJBQTRCLEVBQzVCLGNBQWMsRUFFZCxPQUFPLEVBQ1AsMkJBQTJCLEdBQzlCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUVsQixrQkFBa0IsR0FHckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsYUFBYSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQWNuQztJQVFJLHNDQUNpRCxJQUF3QixFQUNqQyxPQUFrQjtRQURULFNBQUksR0FBSixJQUFJLENBQW9CO1FBQ2pDLFlBQU8sR0FBUCxPQUFPLENBQVc7UUFSekMsWUFBTyxHQUFxQyxXQUFXLENBQUM7UUFJekUsVUFBSyxHQUFHLEVBQUUsQ0FBQztJQUtSLENBQUM7SUFFSixzQkFBSSw4Q0FBSTthQUFSO1lBQ0ksT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUNsRSxDQUFD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O1FBREMsT0FBTzs4REFxQlA7SUF5QkQ7UUFEQyxPQUFPOzhEQUtQO0lBR0Q7UUFEQyxPQUFPO3FFQUtQO0lBR0Q7UUFEQyxPQUFPOzhEQUdQO0lBL0ZRLDRCQUE0QjtRQVp4QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsb0NBQW9DO1lBQzlDLDBoQkFBaUQ7WUFFakQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsYUFBYSxFQUFFO2dCQUNYO29CQUNJLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLFFBQVEsRUFBRSxJQUFJO2lCQUNqQjthQUNKOztTQUNKLENBQUM7UUFVTyxXQUFBLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1FBQzFCLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO09BVmIsNEJBQTRCLENBZ0d4QztJQUFELG1DQUFDO0NBQUEsQUFoR0QsSUFnR0M7U0FoR1ksNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgZ2V0T3JpZ2luYWxBcnJheUZyb21RdWVyeUxpc3QsXG4gICAgaXNQcmVzZW50LFxuICAgIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSxcbiAgICBUVUlfREVGQVVMVF9JREVOVElUWV9NQVRDSEVSLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkZW50aXR5TWF0Y2hlcixcbiAgICB0dWlQdXJlLFxuICAgIHR1aVJlcGxheWVkVmFsdWVDaGFuZ2VzRnJvbSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIHNpemVCaWdnZXIsXG4gICAgVFVJX0RBVEFfTElTVF9IT1NULFxuICAgIFRVSV9PUFRJT05fQ09OVEVOVCxcbiAgICBUdWlEYXRhTGlzdEhvc3QsXG4gICAgVHVpT3B0aW9uQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVYUyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLW9wdC1ncm91cFt0dWlNdWx0aVNlbGVjdEdyb3VwXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL211bHRpLXNlbGVjdC1ncm91cC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9tdWx0aS1zZWxlY3QtZ3JvdXAuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHZpZXdQcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX09QVElPTl9DT05URU5ULFxuICAgICAgICAgICAgdXNlVmFsdWU6IG51bGwsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudDxUPiB7XG4gICAgQENvbnRlbnRDaGlsZHJlbihUdWlPcHRpb25Db21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBRdWVyeUxpc3Q8VHVpT3B0aW9uQ29tcG9uZW50PFQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGxhYmVsID0gJyc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfREFUQV9MSVNUX0hPU1QpIHByaXZhdGUgcmVhZG9ubHkgaG9zdDogVHVpRGF0YUxpc3RIb3N0PFQ+LFxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbCkgcHJpdmF0ZSByZWFkb25seSBjb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgKSB7fVxuXG4gICAgZ2V0IHNpemUoKTogVHVpU2l6ZVhTIHwgVHVpU2l6ZUwge1xuICAgICAgICByZXR1cm4gKHRoaXMub3B0aW9ucy5maXJzdCAmJiB0aGlzLm9wdGlvbnMuZmlyc3Quc2l6ZSkgfHwgJ20nO1xuICAgIH1cblxuICAgIGdldCBjaGVja2JveFNpemUoKTogVHVpU2l6ZUwge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpcnN0ICYmIHNpemVCaWdnZXIodGhpcy5vcHRpb25zLmZpcnN0LnNpemUpID8gJ2wnIDogJ20nO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0IGVtcHR5JCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSh0aGlzLm9wdGlvbnMpLnBpcGUobWFwKCh7bGVuZ3RofSkgPT4gIWxlbmd0aCkpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0IGRpc2FibGVkJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSh0aGlzLm9wdGlvbnMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoaXRlbXMgPT4gaXRlbXMuZXZlcnkoKHtkaXNhYmxlZH0pID0+IGRpc2FibGVkKSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgdmFsdWUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbiB8IG51bGw+IHtcbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QodGhpcy5pdGVtcyQsIHRoaXMudmFsdWVDaGFuZ2VzJCkucGlwZShcbiAgICAgICAgICAgIG1hcCgoW2l0ZW1zLCBjdXJyZW50XSkgPT4ge1xuICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBmYWxzZTtcblxuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBjdXJyZW50LnNvbWUoc2VsZWN0ZWQgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWF0Y2hlcihzZWxlY3RlZCwgaXRlbXNbaV0pLFxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICgoIXNlbGVjdGVkICYmIHJlc3VsdCkgfHwgKHNlbGVjdGVkICYmICFyZXN1bHQgJiYgaSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gc2VsZWN0ZWQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG9uQ2xpY2soY2hlY2tlZDogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2wuY29udHJvbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29udHJvbFZhbHVlOiByZWFkb25seSBUW10gPSB0aGlzLmNvbnRyb2wudmFsdWUgfHwgW107XG4gICAgICAgIGNvbnN0IHt2YWx1ZXN9ID0gdGhpcztcbiAgICAgICAgY29uc3QgZmlsdGVyZWQgPSBjb250cm9sVmFsdWUuZmlsdGVyKGN1cnJlbnQgPT5cbiAgICAgICAgICAgIHZhbHVlcy5ldmVyeShpdGVtID0+ICF0aGlzLm1hdGNoZXIoY3VycmVudCwgaXRlbSkpLFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuY29udHJvbC5jb250cm9sLnNldFZhbHVlKGNoZWNrZWQgPyBmaWx0ZXJlZCA6IFsuLi5maWx0ZXJlZCwgLi4udmFsdWVzXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgdmFsdWVzKCk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlcihnZXRPcmlnaW5hbEFycmF5RnJvbVF1ZXJ5TGlzdCh0aGlzLm9wdGlvbnMpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBtYXRjaGVyKCk6IFR1aUlkZW50aXR5TWF0Y2hlcjxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhvc3QuaWRlbnRpdHlNYXRjaGVyIHx8IFRVSV9ERUZBVUxUX0lERU5USVRZX01BVENIRVI7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCBpdGVtcyQoKTogT2JzZXJ2YWJsZTxyZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSh0aGlzLm9wdGlvbnMpLnBpcGUoXG4gICAgICAgICAgICBtYXAob3B0aW9ucyA9PiBvcHRpb25zLm1hcCgoe3ZhbHVlfSkgPT4gdmFsdWUpLmZpbHRlcihpc1ByZXNlbnQpKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0IHZhbHVlQ2hhbmdlcyQoKTogT2JzZXJ2YWJsZTxyZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIHR1aVJlcGxheWVkVmFsdWVDaGFuZ2VzRnJvbTxyZWFkb25seSBUW10+KHRoaXMuY29udHJvbCkucGlwZShcbiAgICAgICAgICAgIG1hcCh2YWx1ZSA9PiB2YWx1ZSB8fCBbXSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGZpbHRlcihpdGVtczogUmVhZG9ubHlBcnJheTxUdWlPcHRpb25Db21wb25lbnQ8VD4+KTogcmVhZG9ubHkgVFtdIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zLm1hcCgoe3ZhbHVlfSkgPT4gdmFsdWUpLmZpbHRlcihpc1ByZXNlbnQpO1xuICAgIH1cbn1cbiJdfQ==
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvIiwic291cmNlcyI6WyJtdWx0aS1zZWxlY3QtZ3JvdXAvbXVsdGktc2VsZWN0LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLE1BQU0sRUFDTixLQUFLLEdBRVIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxXQUFXLEVBQ1gsNkJBQTZCLEVBQzdCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsNEJBQTRCLEVBQzVCLGNBQWMsRUFFZCxPQUFPLEVBQ1AsMkJBQTJCLEdBQzlCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUVsQixrQkFBa0IsR0FHckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsYUFBYSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQWNuQztJQVFJLHNDQUNpRCxJQUF3QixFQUNqQyxPQUFrQjtRQURULFNBQUksR0FBSixJQUFJLENBQW9CO1FBQ2pDLFlBQU8sR0FBUCxPQUFPLENBQVc7UUFSekMsWUFBTyxHQUFxQyxXQUFXLENBQUM7UUFJekUsVUFBSyxHQUFHLEVBQUUsQ0FBQztJQUtSLENBQUM7SUFFSixzQkFBSSw4Q0FBSTthQUFSO1lBQ0ksT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUNsRSxDQUFD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O1FBREMsT0FBTzs4REFxQlA7SUF5QkQ7UUFEQyxPQUFPOzhEQUtQO0lBR0Q7UUFEQyxPQUFPO3FFQUtQO0lBR0Q7UUFEQyxPQUFPOzhEQUdQO0lBL0ZRLDRCQUE0QjtRQVp4QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsb0NBQW9DO1lBQzlDLDBoQkFBaUQ7WUFFakQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsYUFBYSxFQUFFO2dCQUNYO29CQUNJLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLFFBQVEsRUFBRSxJQUFJO2lCQUNqQjthQUNKOztTQUNKLENBQUM7UUFVTyxXQUFBLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1FBQzFCLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO09BVmIsNEJBQTRCLENBZ0d4QztJQUFELG1DQUFDO0NBQUEsQUFoR0QsSUFnR0M7U0FoR1ksNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgZ2V0T3JpZ2luYWxBcnJheUZyb21RdWVyeUxpc3QsXG4gICAgaXNQcmVzZW50LFxuICAgIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSxcbiAgICBUVUlfREVGQVVMVF9JREVOVElUWV9NQVRDSEVSLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkZW50aXR5TWF0Y2hlcixcbiAgICB0dWlQdXJlLFxuICAgIHR1aVJlcGxheWVkVmFsdWVDaGFuZ2VzRnJvbSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIHNpemVCaWdnZXIsXG4gICAgVFVJX0RBVEFfTElTVF9IT1NULFxuICAgIFRVSV9PUFRJT05fQ09OVEVOVCxcbiAgICBUdWlEYXRhTGlzdEhvc3QsXG4gICAgVHVpT3B0aW9uQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVYUyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLW9wdC1ncm91cFt0dWlNdWx0aVNlbGVjdEdyb3VwXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL211bHRpLXNlbGVjdC1ncm91cC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9tdWx0aS1zZWxlY3QtZ3JvdXAuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHZpZXdQcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX09QVElPTl9DT05URU5ULFxuICAgICAgICAgICAgdXNlVmFsdWU6IG51bGwsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTXVsdGlTZWxlY3RHcm91cENvbXBvbmVudDxUPiB7XG4gICAgQENvbnRlbnRDaGlsZHJlbihUdWlPcHRpb25Db21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBRdWVyeUxpc3Q8VHVpT3B0aW9uQ29tcG9uZW50PFQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGxhYmVsID0gJyc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfREFUQV9MSVNUX0hPU1QpIHByaXZhdGUgcmVhZG9ubHkgaG9zdDogVHVpRGF0YUxpc3RIb3N0PFQ+LFxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbCkgcHJpdmF0ZSByZWFkb25seSBjb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgKSB7fVxuXG4gICAgZ2V0IHNpemUoKTogVHVpU2l6ZVhTIHwgVHVpU2l6ZUwge1xuICAgICAgICByZXR1cm4gKHRoaXMub3B0aW9ucy5maXJzdCAmJiB0aGlzLm9wdGlvbnMuZmlyc3Quc2l6ZSkgfHwgJ20nO1xuICAgIH1cblxuICAgIGdldCBjaGVja2JveFNpemUoKTogVHVpU2l6ZUwge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpcnN0ICYmIHNpemVCaWdnZXIodGhpcy5vcHRpb25zLmZpcnN0LnNpemUpID8gJ2wnIDogJ20nO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0IGVtcHR5JCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSh0aGlzLm9wdGlvbnMpLnBpcGUobWFwKCh7bGVuZ3RofSkgPT4gIWxlbmd0aCkpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0IGRpc2FibGVkJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSh0aGlzLm9wdGlvbnMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoaXRlbXMgPT4gaXRlbXMuZXZlcnkoKHtkaXNhYmxlZH0pID0+IGRpc2FibGVkKSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgdmFsdWUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbiB8IG51bGw+IHtcbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QodGhpcy5pdGVtcyQsIHRoaXMudmFsdWVDaGFuZ2VzJCkucGlwZShcbiAgICAgICAgICAgIG1hcCgoW2l0ZW1zLCBjdXJyZW50XSkgPT4ge1xuICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBmYWxzZTtcblxuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBjdXJyZW50LnNvbWUoc2VsZWN0ZWQgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWF0Y2hlcihzZWxlY3RlZCwgaXRlbXNbaV0pLFxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICgoIXNlbGVjdGVkICYmIHJlc3VsdCkgfHwgKHNlbGVjdGVkICYmICFyZXN1bHQgJiYgaSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gc2VsZWN0ZWQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG9uQ2xpY2soY2hlY2tlZDogYm9vbGVhbiB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2wuY29udHJvbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29udHJvbFZhbHVlOiByZWFkb25seSBUW10gPSB0aGlzLmNvbnRyb2wudmFsdWUgfHwgW107XG4gICAgICAgIGNvbnN0IHt2YWx1ZXN9ID0gdGhpcztcbiAgICAgICAgY29uc3QgZmlsdGVyZWQgPSBjb250cm9sVmFsdWUuZmlsdGVyKGN1cnJlbnQgPT5cbiAgICAgICAgICAgIHZhbHVlcy5ldmVyeShpdGVtID0+ICF0aGlzLm1hdGNoZXIoY3VycmVudCwgaXRlbSkpLFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuY29udHJvbC5jb250cm9sLnNldFZhbHVlKGNoZWNrZWQgPyBmaWx0ZXJlZCA6IFsuLi5maWx0ZXJlZCwgLi4udmFsdWVzXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgdmFsdWVzKCk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlcihnZXRPcmlnaW5hbEFycmF5RnJvbVF1ZXJ5TGlzdCh0aGlzLm9wdGlvbnMpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBtYXRjaGVyKCk6IFR1aUlkZW50aXR5TWF0Y2hlcjxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhvc3QuaWRlbnRpdHlNYXRjaGVyIHx8IFRVSV9ERUZBVUxUX0lERU5USVRZX01BVENIRVI7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCBpdGVtcyQoKTogT2JzZXJ2YWJsZTxyZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSh0aGlzLm9wdGlvbnMpLnBpcGUoXG4gICAgICAgICAgICBtYXAob3B0aW9ucyA9PiBvcHRpb25zLm1hcCgoe3ZhbHVlfSkgPT4gdmFsdWUpLmZpbHRlcihpc1ByZXNlbnQpKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0IHZhbHVlQ2hhbmdlcyQoKTogT2JzZXJ2YWJsZTxyZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIHR1aVJlcGxheWVkVmFsdWVDaGFuZ2VzRnJvbTxyZWFkb25seSBUW10+KHRoaXMuY29udHJvbCkucGlwZShcbiAgICAgICAgICAgIG1hcCh2YWx1ZSA9PiB2YWx1ZSB8fCBbXSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGZpbHRlcihpdGVtczogUmVhZG9ubHlBcnJheTxUdWlPcHRpb25Db21wb25lbnQ8VD4+KTogcmVhZG9ubHkgVFtdIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zLm1hcCgoe3ZhbHVlfSkgPT4gdmFsdWUpLmZpbHRlcihpc1ByZXNlbnQpO1xuICAgIH1cbn1cbiJdfQ==