@taiga-ui/kit 2.52.0 → 2.53.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 (407) hide show
  1. package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
  2. package/bundles/taiga-ui-kit-abstract.umd.js +1 -0
  3. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-action.umd.js +1 -1
  6. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-action.umd.min.js +1 -1
  8. package/bundles/taiga-ui-kit-components-action.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
  10. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
  12. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-files.umd.js +2 -2
  14. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-files.umd.min.js +1 -1
  16. package/bundles/taiga-ui-kit-components-files.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -1
  18. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +1 -1
  20. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-files.umd.js +1 -1
  22. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-files.umd.min.js +1 -1
  24. package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  26. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  28. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  30. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  32. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input-number.umd.js +8 -2
  34. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  36. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +7 -0
  38. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +1 -1
  40. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-input-phone.umd.js +1 -0
  42. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-input-range.umd.js +1 -1
  45. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +1 -1
  47. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-input-slider.umd.js +1 -1
  49. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  51. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
  53. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  55. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +1 -1
  57. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js +1 -1
  59. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-multi-select.umd.js +1 -0
  61. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-pagination.umd.js +3 -2
  64. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
  66. package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +1 -1
  68. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js +1 -1
  70. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-progress.umd.js +2 -0
  72. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  74. package/bundles/taiga-ui-kit-components-range.umd.js +1 -1
  75. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  76. package/bundles/taiga-ui-kit-components-range.umd.min.js +1 -1
  77. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  78. package/bundles/taiga-ui-kit-components-select-option.umd.js +1 -1
  79. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-select-option.umd.min.js +1 -1
  81. package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-slider.umd.js +1 -1
  83. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  85. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-tabs.umd.js +7 -5
  87. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  89. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-text-area.umd.js +1 -1
  91. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  93. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-tree.umd.js +2 -1
  95. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-tree.umd.min.js +1 -1
  97. package/bundles/taiga-ui-kit-components-tree.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js +2 -12
  99. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +1 -1
  100. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js +1 -1
  101. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js.map +1 -1
  102. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +1 -9
  103. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +1 -1
  104. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.min.js +1 -1
  105. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.min.js.map +1 -1
  106. package/bundles/taiga-ui-kit-providers.umd.js +6 -0
  107. package/bundles/taiga-ui-kit-providers.umd.js.map +1 -1
  108. package/bundles/taiga-ui-kit-providers.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-kit-utils-dom.umd.js +14 -0
  110. package/bundles/taiga-ui-kit-utils-dom.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-utils-dom.umd.min.js +1 -1
  112. package/bundles/taiga-ui-kit-utils-dom.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-kit-utils-files.umd.js +12 -0
  114. package/bundles/taiga-ui-kit-utils-files.umd.js.map +1 -1
  115. package/bundles/taiga-ui-kit-utils-files.umd.min.js +1 -1
  116. package/bundles/taiga-ui-kit-utils-files.umd.min.js.map +1 -1
  117. package/bundles/taiga-ui-kit-utils-format.umd.js +4 -0
  118. package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
  119. package/bundles/taiga-ui-kit-utils-format.umd.min.js +1 -1
  120. package/bundles/taiga-ui-kit-utils-format.umd.min.js.map +1 -1
  121. package/bundles/taiga-ui-kit-utils-mask.umd.js +6 -0
  122. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  123. package/bundles/taiga-ui-kit-utils-mask.umd.min.js +1 -1
  124. package/bundles/taiga-ui-kit-utils-mask.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-kit-utils-math.umd.js +2 -2
  126. package/bundles/taiga-ui-kit-utils-math.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-utils-math.umd.min.js +1 -1
  128. package/bundles/taiga-ui-kit-utils-math.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js +10 -0
  130. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.min.js +1 -1
  132. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.min.js.map +1 -1
  133. package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
  134. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  135. package/components/files/taiga-ui-kit-components-files.metadata.json +1 -1
  136. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  137. package/components/input-files/taiga-ui-kit-components-input-files.metadata.json +1 -1
  138. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  139. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  140. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  141. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  142. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  143. package/components/input-phone-international/utils/extract-value-from-event.d.ts +4 -0
  144. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  145. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  146. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  147. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  148. package/components/multi-select-option/taiga-ui-kit-components-multi-select-option.metadata.json +1 -1
  149. package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
  150. package/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.metadata.json +1 -1
  151. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  152. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  153. package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
  154. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  155. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  156. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  157. package/components/tree/taiga-ui-kit-components-tree.metadata.json +1 -1
  158. package/directives/dropdown-context/dropdown-context.directive.d.ts +0 -1
  159. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.metadata.json +1 -1
  160. package/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.metadata.json +1 -1
  161. package/esm2015/abstract/input-slider.js +2 -1
  162. package/esm2015/components/action/action.component.js +2 -2
  163. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  164. package/esm2015/components/files/file/file.component.js +2 -2
  165. package/esm2015/components/files/files.component.js +2 -2
  166. package/esm2015/components/input-file/file/file.component.js +2 -2
  167. package/esm2015/components/input-files/input-files.component.js +2 -2
  168. package/esm2015/components/input-month/input-month.component.js +2 -2
  169. package/esm2015/components/input-month-range/input-month-range.component.js +2 -2
  170. package/esm2015/components/input-number/input-number.component.js +9 -3
  171. package/esm2015/components/input-phone/input-phone.providers.js +2 -1
  172. package/esm2015/components/input-phone-international/const/countries.js +2 -1
  173. package/esm2015/components/input-phone-international/utils/extract-value-from-event.js +6 -1
  174. package/esm2015/components/input-range/input-range.component.js +2 -2
  175. package/esm2015/components/input-slider/input-slider.component.js +2 -2
  176. package/esm2015/components/input-tag/input-tag.component.js +2 -2
  177. package/esm2015/components/multi-select/multi-select-group/multi-select-group.directive.js +2 -1
  178. package/esm2015/components/multi-select-option/multi-select-option.component.js +2 -2
  179. package/esm2015/components/pagination/pagination.component.js +5 -4
  180. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +2 -2
  181. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +3 -1
  182. package/esm2015/components/range/range.component.js +2 -2
  183. package/esm2015/components/select-option/select-option.component.js +2 -2
  184. package/esm2015/components/slider/slider-old.component.js +2 -2
  185. package/esm2015/components/tabs/tab/tab.component.js +1 -1
  186. package/esm2015/components/tabs/tab/tab.providers.js +2 -1
  187. package/esm2015/components/tabs/tabs/tabs.component.js +3 -3
  188. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  189. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.providers.js +2 -1
  190. package/esm2015/components/text-area/text-area.component.js +2 -2
  191. package/esm2015/components/tree/components/tree-item/tree-item.providers.js +2 -1
  192. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +2 -2
  193. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +4 -14
  194. package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +3 -11
  195. package/esm2015/providers/month-formatter.provider.js +5 -1
  196. package/esm2015/providers/specific-dropdown-controllers.js +3 -1
  197. package/esm2015/utils/dom/get-word-range.js +4 -1
  198. package/esm2015/utils/dom/scroll-to-element.js +6 -1
  199. package/esm2015/utils/dom/set-range-offset.js +4 -1
  200. package/esm2015/utils/files/format-size.js +6 -1
  201. package/esm2015/utils/files/get-accept-array.js +6 -1
  202. package/esm2015/utils/format/string-hash-to-hsl.js +4 -1
  203. package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +6 -1
  204. package/esm2015/utils/math/horizontal-direction-to-number.js +2 -2
  205. package/esm2015/utils/miscellaneous/get-precision.js +4 -1
  206. package/esm2015/utils/miscellaneous/is-flat.js +6 -1
  207. package/esm5/abstract/input-slider.js +2 -1
  208. package/esm5/components/action/action.component.js +2 -2
  209. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  210. package/esm5/components/files/file/file.component.js +2 -2
  211. package/esm5/components/files/files.component.js +2 -2
  212. package/esm5/components/input-file/file/file.component.js +2 -2
  213. package/esm5/components/input-files/input-files.component.js +2 -2
  214. package/esm5/components/input-month/input-month.component.js +2 -2
  215. package/esm5/components/input-month-range/input-month-range.component.js +2 -2
  216. package/esm5/components/input-number/input-number.component.js +9 -3
  217. package/esm5/components/input-phone/input-phone.providers.js +2 -1
  218. package/esm5/components/input-phone-international/const/countries.js +2 -1
  219. package/esm5/components/input-phone-international/utils/extract-value-from-event.js +6 -1
  220. package/esm5/components/input-range/input-range.component.js +2 -2
  221. package/esm5/components/input-slider/input-slider.component.js +2 -2
  222. package/esm5/components/input-tag/input-tag.component.js +2 -2
  223. package/esm5/components/multi-select/multi-select-group/multi-select-group.directive.js +2 -1
  224. package/esm5/components/multi-select-option/multi-select-option.component.js +2 -2
  225. package/esm5/components/pagination/pagination.component.js +5 -4
  226. package/esm5/components/pdf-viewer/pdf-viewer.component.js +2 -2
  227. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +3 -1
  228. package/esm5/components/range/range.component.js +2 -2
  229. package/esm5/components/select-option/select-option.component.js +2 -2
  230. package/esm5/components/slider/slider-old.component.js +2 -2
  231. package/esm5/components/tabs/tab/tab.component.js +1 -1
  232. package/esm5/components/tabs/tab/tab.providers.js +2 -1
  233. package/esm5/components/tabs/tabs/tabs.component.js +3 -3
  234. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  235. package/esm5/components/tabs/tabs-with-more/tabs-with-more.providers.js +2 -1
  236. package/esm5/components/text-area/text-area.component.js +2 -2
  237. package/esm5/components/tree/components/tree-item/tree-item.providers.js +2 -1
  238. package/esm5/components/tree/components/tree-item-content/tree-item-content.component.js +2 -2
  239. package/esm5/directives/dropdown-context/dropdown-context.directive.js +4 -14
  240. package/esm5/directives/dropdown-selection/dropdown-selection.directive.js +3 -11
  241. package/esm5/providers/month-formatter.provider.js +5 -1
  242. package/esm5/providers/specific-dropdown-controllers.js +3 -1
  243. package/esm5/utils/dom/get-word-range.js +4 -1
  244. package/esm5/utils/dom/scroll-to-element.js +6 -1
  245. package/esm5/utils/dom/set-range-offset.js +4 -1
  246. package/esm5/utils/files/format-size.js +6 -1
  247. package/esm5/utils/files/get-accept-array.js +6 -1
  248. package/esm5/utils/format/string-hash-to-hsl.js +4 -1
  249. package/esm5/utils/mask/create-auto-corrected-date-pipe.js +6 -1
  250. package/esm5/utils/math/horizontal-direction-to-number.js +2 -2
  251. package/esm5/utils/miscellaneous/get-precision.js +4 -1
  252. package/esm5/utils/miscellaneous/is-flat.js +6 -1
  253. package/fesm2015/taiga-ui-kit-abstract.js +1 -0
  254. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  255. package/fesm2015/taiga-ui-kit-components-action.js +1 -1
  256. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  257. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
  258. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  259. package/fesm2015/taiga-ui-kit-components-files.js +2 -2
  260. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  261. package/fesm2015/taiga-ui-kit-components-input-file.js +1 -1
  262. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  263. package/fesm2015/taiga-ui-kit-components-input-files.js +1 -1
  264. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  265. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  266. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  267. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  268. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  269. package/fesm2015/taiga-ui-kit-components-input-number.js +8 -2
  270. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  271. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +7 -1
  272. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  273. package/fesm2015/taiga-ui-kit-components-input-phone.js +1 -0
  274. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  275. package/fesm2015/taiga-ui-kit-components-input-range.js +1 -1
  276. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  277. package/fesm2015/taiga-ui-kit-components-input-slider.js +1 -1
  278. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  279. package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
  280. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  281. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +1 -1
  282. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  283. package/fesm2015/taiga-ui-kit-components-multi-select.js +1 -0
  284. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  285. package/fesm2015/taiga-ui-kit-components-pagination.js +4 -3
  286. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  287. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +1 -1
  288. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  289. package/fesm2015/taiga-ui-kit-components-progress.js +2 -0
  290. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  291. package/fesm2015/taiga-ui-kit-components-range.js +1 -1
  292. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  293. package/fesm2015/taiga-ui-kit-components-select-option.js +1 -1
  294. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  295. package/fesm2015/taiga-ui-kit-components-slider.js +1 -1
  296. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  297. package/fesm2015/taiga-ui-kit-components-tabs.js +7 -5
  298. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  299. package/fesm2015/taiga-ui-kit-components-text-area.js +1 -1
  300. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  301. package/fesm2015/taiga-ui-kit-components-tree.js +2 -1
  302. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  303. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js +3 -13
  304. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  305. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +2 -10
  306. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  307. package/fesm2015/taiga-ui-kit-providers.js +6 -0
  308. package/fesm2015/taiga-ui-kit-providers.js.map +1 -1
  309. package/fesm2015/taiga-ui-kit-utils-dom.js +12 -1
  310. package/fesm2015/taiga-ui-kit-utils-dom.js.map +1 -1
  311. package/fesm2015/taiga-ui-kit-utils-files.js +11 -1
  312. package/fesm2015/taiga-ui-kit-utils-files.js.map +1 -1
  313. package/fesm2015/taiga-ui-kit-utils-format.js +4 -1
  314. package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
  315. package/fesm2015/taiga-ui-kit-utils-mask.js +6 -1
  316. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  317. package/fesm2015/taiga-ui-kit-utils-math.js +2 -2
  318. package/fesm2015/taiga-ui-kit-utils-math.js.map +1 -1
  319. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js +9 -1
  320. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  321. package/fesm5/taiga-ui-kit-abstract.js +1 -0
  322. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  323. package/fesm5/taiga-ui-kit-components-action.js +1 -1
  324. package/fesm5/taiga-ui-kit-components-action.js.map +1 -1
  325. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +1 -1
  326. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  327. package/fesm5/taiga-ui-kit-components-files.js +2 -2
  328. package/fesm5/taiga-ui-kit-components-files.js.map +1 -1
  329. package/fesm5/taiga-ui-kit-components-input-file.js +1 -1
  330. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  331. package/fesm5/taiga-ui-kit-components-input-files.js +1 -1
  332. package/fesm5/taiga-ui-kit-components-input-files.js.map +1 -1
  333. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
  334. package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
  335. package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
  336. package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
  337. package/fesm5/taiga-ui-kit-components-input-number.js +8 -2
  338. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  339. package/fesm5/taiga-ui-kit-components-input-phone-international.js +7 -1
  340. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  341. package/fesm5/taiga-ui-kit-components-input-phone.js +1 -0
  342. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  343. package/fesm5/taiga-ui-kit-components-input-range.js +1 -1
  344. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  345. package/fesm5/taiga-ui-kit-components-input-slider.js +1 -1
  346. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  347. package/fesm5/taiga-ui-kit-components-input-tag.js +1 -1
  348. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  349. package/fesm5/taiga-ui-kit-components-multi-select-option.js +1 -1
  350. package/fesm5/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  351. package/fesm5/taiga-ui-kit-components-multi-select.js +1 -0
  352. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  353. package/fesm5/taiga-ui-kit-components-pagination.js +4 -3
  354. package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
  355. package/fesm5/taiga-ui-kit-components-pdf-viewer.js +1 -1
  356. package/fesm5/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  357. package/fesm5/taiga-ui-kit-components-progress.js +2 -0
  358. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  359. package/fesm5/taiga-ui-kit-components-range.js +1 -1
  360. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  361. package/fesm5/taiga-ui-kit-components-select-option.js +1 -1
  362. package/fesm5/taiga-ui-kit-components-select-option.js.map +1 -1
  363. package/fesm5/taiga-ui-kit-components-slider.js +1 -1
  364. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  365. package/fesm5/taiga-ui-kit-components-tabs.js +7 -5
  366. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  367. package/fesm5/taiga-ui-kit-components-text-area.js +1 -1
  368. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  369. package/fesm5/taiga-ui-kit-components-tree.js +2 -1
  370. package/fesm5/taiga-ui-kit-components-tree.js.map +1 -1
  371. package/fesm5/taiga-ui-kit-directives-dropdown-context.js +3 -13
  372. package/fesm5/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  373. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js +2 -10
  374. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  375. package/fesm5/taiga-ui-kit-providers.js +6 -0
  376. package/fesm5/taiga-ui-kit-providers.js.map +1 -1
  377. package/fesm5/taiga-ui-kit-utils-dom.js +12 -1
  378. package/fesm5/taiga-ui-kit-utils-dom.js.map +1 -1
  379. package/fesm5/taiga-ui-kit-utils-files.js +11 -1
  380. package/fesm5/taiga-ui-kit-utils-files.js.map +1 -1
  381. package/fesm5/taiga-ui-kit-utils-format.js +4 -1
  382. package/fesm5/taiga-ui-kit-utils-format.js.map +1 -1
  383. package/fesm5/taiga-ui-kit-utils-mask.js +6 -1
  384. package/fesm5/taiga-ui-kit-utils-mask.js.map +1 -1
  385. package/fesm5/taiga-ui-kit-utils-math.js +2 -2
  386. package/fesm5/taiga-ui-kit-utils-math.js.map +1 -1
  387. package/fesm5/taiga-ui-kit-utils-miscellaneous.js +9 -1
  388. package/fesm5/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  389. package/package.json +4 -4
  390. package/providers/month-formatter.provider.d.ts +3 -0
  391. package/providers/taiga-ui-kit-providers.metadata.json +1 -1
  392. package/utils/dom/get-word-range.d.ts +2 -0
  393. package/utils/dom/scroll-to-element.d.ts +4 -0
  394. package/utils/dom/set-range-offset.d.ts +2 -0
  395. package/utils/dom/taiga-ui-kit-utils-dom.metadata.json +1 -1
  396. package/utils/files/format-size.d.ts +4 -0
  397. package/utils/files/get-accept-array.d.ts +4 -0
  398. package/utils/files/taiga-ui-kit-utils-files.metadata.json +1 -1
  399. package/utils/format/string-hash-to-hsl.d.ts +2 -0
  400. package/utils/format/taiga-ui-kit-utils-format.metadata.json +1 -1
  401. package/utils/mask/create-auto-corrected-date-pipe.d.ts +4 -0
  402. package/utils/mask/taiga-ui-kit-utils-mask.metadata.json +1 -1
  403. package/utils/math/horizontal-direction-to-number.d.ts +1 -1
  404. package/utils/math/taiga-ui-kit-utils-math.metadata.json +1 -1
  405. package/utils/miscellaneous/get-precision.d.ts +2 -0
  406. package/utils/miscellaneous/is-flat.d.ts +4 -0
  407. package/utils/miscellaneous/taiga-ui-kit-utils-miscellaneous.metadata.json +1 -1
@@ -241,6 +241,7 @@ export const COUNTRIES = {
241
241
  * @deprecated will be deleted soon
242
242
  * TODO: remove in 3.0 (in ivy compilation)
243
243
  */
244
+ // eslint-disable-next-line @typescript-eslint/naming-convention
244
245
  export function countriesMasksReducer(acc, [countryIsoCode, { mask }]) {
245
246
  acc[countryIsoCode] = mask;
246
247
  return acc;
@@ -252,4 +253,4 @@ export function countriesMasksReducer(acc, [countryIsoCode, { mask }]) {
252
253
  */
253
254
  export const COUNTRIES_MASKS = Object.entries(COUNTRIES).reduce(countriesMasksReducer, {});
254
255
  export const MASK_AFTER_CODE_REGEXP = /\([#]+\)|[#\- ]/g;
255
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyaWVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLWludGVybmF0aW9uYWwvIiwic291cmNlcyI6WyJjb25zdC9jb3VudHJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFJakQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQTRCO0lBQzlDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUM7SUFDOUQsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRTtRQUNwQixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLElBQUksRUFBRSwrQkFBK0I7S0FDeEM7SUFDRCxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxZQUFZLEVBQUM7SUFDcEUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUM7SUFDN0UsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFDO0lBQ25FLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBQztJQUNwRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUM7SUFDakUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFDLElB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QUMsQ0FBQyxNQUFNLENBQ3BFLHFCQUFxQixFQUNyQixFQUF1QyxDQUMxQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R1aUNvdW50cnlJc29Db2RlfSBmcm9tICdAdGFpZ2EtdWkvaTE4bic7XG5cbmltcG9ydCB7Q291bnRyeX0gZnJvbSAnLi4vaW50ZXJmYWNlcy9jb3VudHJ5JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBEb250IHVzZSBpdCAod2lsbCBiZSBkZWxldGVkIHNvb24pLlxuICogLSBVc2UgdG9rZW4gYFRVSV9DT1VOVFJJRVNfTUFTS1NgIHRvIGdldCBwaG9uZSBtYXNrIGJ5IGNvdW50cnkgaXNvIGNvZGVcbiAqIC0gVXNlIHRva2VuIGBUVUlfQ09VTlRSSUVTYCB0byBnZXQgbG9jYWxpemVkIGNvdW50cnkgbmFtZSBieSBpdHMgaXNvIGNvZGVcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQge1RVSV9DT1VOVFJJRVMsIFRVSV9DT1VOVFJJRVNfTUFTS1N9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuICpcbiAqIEB0b2RvIFRPRE86IHJlbW92ZSBpdCBpbiAzLjBcbiAqL1xuZXhwb3J0IGNvbnN0IENPVU5UUklFUzogUmVjb3JkPHN0cmluZywgQ291bnRyeT4gPSB7XG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFEXToge21hc2s6ICcrMzc2IyMjLSMjIycsIG5hbWU6ICfQkNC90LTQvtGA0YDQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BRV06IHtcbiAgICAgICAgbWFzazogJys5NzEtIyMtIyMjLSMjIyMnLFxuICAgICAgICBuYW1lOiAn0J7QsdGK0LXQtNC40L3QtdC90L3Ri9C1INCQ0YDQsNCx0YHQutC40LUg0K3QvNC40YDQsNGC0YsnLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFGXToge21hc2s6ICcrOTMjIy0jIyMtIyMjIycsIG5hbWU6ICfQkNGE0LPQsNC90LjRgdGC0LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BR106IHttYXNrOiAnKzEoMjY4KSAjIyMtIyMjIycsIG5hbWU6ICfQkNC90YLQuNCz0YPQsCDQuCDQkdCw0YDQsdGD0LTQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BSV06IHttYXNrOiAnKzEoMjY0KSAjIyMtIyMjIycsIG5hbWU6ICfQkNC90LPQuNC70YzRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BTF06IHttYXNrOiAnKzM1NSgjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JDQu9Cx0LDQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQU1dOiB7bWFzazogJyszNzQjIy0jIyMtIyMjJywgbmFtZTogJ9CQ0YDQvNC10L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFPXToge21hc2s6ICcrMjQ0KCMjIykgIyMjLSMjIycsIG5hbWU6ICfQkNC90LPQvtC70LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVJdOiB7bWFzazogJys1NCgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9CQ0YDQs9C10L3RgtC40L3QsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BVF06IHttYXNrOiAnKzQzKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JDQstGB0YLRgNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVVdOiB7bWFzazogJys2MSMtIyMjIy0jIyMjJywgbmFtZTogJ9CQ0LLRgdGC0YDQsNC70LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BV106IHttYXNrOiAnKzI5NyMjIy0jIyMjJywgbmFtZTogJ9CQ0YDRg9Cx0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVpdOiB7bWFzazogJys5OTQjIy0jIyMtIyMtIyMnLCBuYW1lOiAn0JDQt9C10YDQsdCw0LnQtNC20LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CQV06IHttYXNrOiAnKzM4NyAjIyMtIyMjIy0jJywgbmFtZTogJ9CR0L7RgdC90LjRjyDQuCDQk9C10YDRhtC10LPQvtCy0LjQvdCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJCXToge21hc2s6ICcrMSgyNDYpICMjIy0jIyMjJywgbmFtZTogJ9CR0LDRgNCx0LDQtNC+0YEnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkRdOiB7bWFzazogJys4ODAjIy0jIyMtIyMjJywgbmFtZTogJ9CR0LDQvdCz0LvQsNC00LXRiCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CRV06IHttYXNrOiAnKzMyKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQkdC10LvRjNCz0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CRl06IHttYXNrOiAnKzIyNiMjLSMjLSMjIyMnLCBuYW1lOiAn0JHRg9GA0LrQuNC90LAg0KTQsNGB0L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkddOiB7bWFzazogJyszNTkoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9CR0L7Qu9Cz0LDRgNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkhdOiB7bWFzazogJys5NzMjIyMjLSMjIyMnLCBuYW1lOiAn0JHQsNGF0YDQtdC50L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkldOiB7bWFzazogJysyNTcjIy0jIy0jIyMjJywgbmFtZTogJ9CR0YPRgNGD0L3QtNC4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJKXToge21hc2s6ICcrMjI5IyMtIyMtIyMjIycsIG5hbWU6ICfQkdC10L3QuNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJNXToge21hc2s6ICcrMSg0NDEpICMjIy0jIyMjJywgbmFtZTogJ9CR0LXRgNC80YPQtNGB0LrQuNC1INC+0YHRgtGA0L7QstCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJOXToge21hc2s6ICcrNjczIyMjLSMjIyMnLCBuYW1lOiAn0JHRgNGD0L3QtdC5LdCU0LDRgNGD0YHRgdCw0LvQsNC8J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJPXToge21hc2s6ICcrNTkxIy0jIyMtIyMjIycsIG5hbWU6ICfQkdC+0LvQuNCy0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CUV06IHtcbiAgICAgICAgbWFzazogJys1OTktIyMjLSMjIyMnLFxuICAgICAgICBuYW1lOiAn0JHQvtC90LDQudGA0LUsINCh0LjQvdGCLdCt0YHRgtCw0YLQuNGD0YEg0Lgg0KHQsNCx0LAnLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJSXToge21hc2s6ICcrNTUoIyMpICMjIyMtIyMjIycsIG5hbWU6ICfQkdGA0LDQt9C40LvQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJTXToge21hc2s6ICcrMSgyNDIpICMjIy0jIyMjJywgbmFtZTogJ9CR0LDQs9Cw0LzRgdC60LjQtSDQntGB0YLRgNC+0LLQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CVF06IHttYXNrOiAnKzk3NSMtIyMjLSMjIycsIG5hbWU6ICfQkdGD0YLQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJXXToge21hc2s6ICcrMjY3IyMtIyMjLSMjIycsIG5hbWU6ICfQkdC+0YLRgdCy0LDQvdCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJZXToge21hc2s6ICcrMzc1KCMjKSAjIyMtIyMtIyMnLCBuYW1lOiAn0JHQtdC70LDRgNGD0YHRjCAo0JHQtdC70L7RgNGD0YHRgdC40Y8pJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJaXToge21hc2s6ICcrNTAxIyMjLSMjIyMnLCBuYW1lOiAn0JHQtdC70LjQtyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DQV06IHttYXNrOiAnKzEoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQmtCw0L3QsNC00LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0RdOiB7XG4gICAgICAgIG1hc2s6ICcrMjQzKCMjIykgIyMjLSMjIycsXG4gICAgICAgIG5hbWU6ICfQlNC10LwuINCg0LXRgdC/LiDQmtC+0L3Qs9C+ICjQmtC40L3RiNCw0YHQsCknLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNGXToge1xuICAgICAgICBtYXNrOiAnKzIzNi0jIy0jIy0jIyMjJyxcbiAgICAgICAgbmFtZTogJ9Cm0LXQvdGC0YDQsNC70YzQvdC+0LDRhNGA0LjQutCw0L3RgdC60LDRjyDQoNC10YHQv9GD0LHQu9C40LrQsCcsXG4gICAgfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0ddOiB7bWFzazogJysyNDIjIy0jIyMtIyMjIycsIG5hbWU6ICfQmtC+0L3Qs9C+ICjQkdGA0LDQt9C30LDQstC40LvRjCknfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0hdOiB7bWFzazogJys0MSMjLSMjIy0jIyMjJywgbmFtZTogJ9Co0LLQtdC50YbQsNGA0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DSV06IHttYXNrOiAnKzIyNSMjLSMjIy0jIyMnLCBuYW1lOiAn0JrQvtGCLdC04oCZ0JjQstGD0LDRgCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DTF06IHttYXNrOiAnKzU2Iy0jIyMjLSMjIyMnLCBuYW1lOiAn0KfQuNC70LgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ01dOiB7bWFzazogJysyMzcjIyMjLSMjIyMnLCBuYW1lOiAn0JrQsNC80LXRgNGD0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ05dOiB7bWFzazogJys4NigjIyMpICMjIyMtIyMjIycsIG5hbWU6ICfQmtC40YLQsNC50YHQutCw0Y8g0J0u0KAuJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNPXToge21hc2s6ICcrNTcoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQmtC+0LvRg9C80LHQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNSXToge21hc2s6ICcrNTA2IyMjIy0jIyMjJywgbmFtZTogJ9Ca0L7RgdGC0LAt0KDQuNC60LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1VdOiB7bWFzazogJys1MyMtIyMjLSMjIyMnLCBuYW1lOiAn0JrRg9Cx0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1ZdOiB7bWFzazogJysyMzgoIyMjKSAjIy0jIycsIG5hbWU6ICfQmtCw0LHQvi3QktC10YDQtNC1J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNXXToge21hc2s6ICcrNTk5OS0jIyMtIyMjIycsIG5hbWU6ICfQmtGO0YDQsNGB0LDQvid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DWV06IHttYXNrOiAnKzM1NyMjLSMjIy0jIyMnLCBuYW1lOiAn0JrQuNC/0YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1pdOiB7bWFzazogJys0MjAoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cn0LXRhdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuREVdOiB7bWFzazogJys0OSgjIyMpICMjIy0jIyMtIyMnLCBuYW1lOiAn0JPQtdGA0LzQsNC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ESl06IHttYXNrOiAnKzI1MyMjLSMjLSMjLSMjJywgbmFtZTogJ9CU0LbQuNCx0YPRgtC4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkRLXToge21hc2s6ICcrNDUjIy0jIy0jIy0jIycsIG5hbWU6ICfQlNCw0L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkRNXToge21hc2s6ICcrMSg3NjcpICMjIy0jIyMjJywgbmFtZTogJ9CU0L7QvNC40L3QuNC60LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRE9dOiB7bWFzazogJysxKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JTQvtC80LjQvdC40LrQsNC90YHQutCw0Y8g0KDQtdGB0L/Rg9Cx0LvQuNC60LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRFpdOiB7bWFzazogJysyMTMjIy0jIyMtIyMjIycsIG5hbWU6ICfQkNC70LbQuNGAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkVDXToge21hc2s6ICcrNTkzIyMtIyMjLSMjIyMnLCBuYW1lOiAn0K3QutCy0LDQtNC+0YAgJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkVFXToge21hc2s6ICcrMzcyIyMjIy0jIyMjJywgbmFtZTogJ9Ct0YHRgtC+0L3QuNGPICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FR106IHttYXNrOiAnKzIwKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JXQs9C40L/QtdGCJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkVSXToge21hc2s6ICcrMjkxIy0jIyMtIyMjJywgbmFtZTogJ9Ct0YDQuNGC0YDQtdGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkVTXToge21hc2s6ICcrMzQoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9CY0YHQv9Cw0L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkVUXToge21hc2s6ICcrMjUxIyMtIyMjLSMjIyMnLCBuYW1lOiAn0K3RhNC40L7Qv9C40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRkldOiB7bWFzazogJyszNTgoIyMjKSAjIyMtIyMtIyMnLCBuYW1lOiAn0KTQuNC90LvRj9C90LTQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkZKXToge21hc2s6ICcrNjc5IyMtIyMjIyMnLCBuYW1lOiAn0KTQuNC00LbQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GS106IHttYXNrOiAnKzUwMCMjIyMjJywgbmFtZTogJ9Ck0L7Qu9C60LvQtdC90LTRgdC60LjQtSDQvtGB0YLRgNC+0LLQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GTV06IHttYXNrOiAnKzY5MSMjIy0jIyMjJywgbmFtZTogJ9CkLtCoLiDQnNC40LrRgNC+0L3QtdC30LjQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GUl06IHttYXNrOiAnKzMzICMjICMjICMjICMjICMjJywgbmFtZTogJ9Ck0YDQsNC90YbQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdBXToge21hc2s6ICcrMjQxIy0jIy0jIy0jIycsIG5hbWU6ICfQk9Cw0LHQvtC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdCXToge21hc2s6ICcrNDQjIy0jIyMjLSMjIyMnLCBuYW1lOiAn0JLQtdC70LjQutC+0LHRgNC40YLQsNC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HRF06IHttYXNrOiAnKzEoNDczKSAjIyMtIyMjIycsIG5hbWU6ICfQk9GA0LXQvdCw0LTQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HRV06IHttYXNrOiAnKzk5NSgjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JPRgNGD0LfQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdIXToge21hc2s6ICcrMjMzKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQk9Cw0L3QsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HSV06IHttYXNrOiAnKzM1MCMjIy0jIyMjIycsIG5hbWU6ICfQk9C40LHRgNCw0LvRgtCw0YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0xdOiB7bWFzazogJysyOTkjIy0jIy0jIycsIG5hbWU6ICfQk9GA0LXQvdC70LDQvdC00LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HTV06IHttYXNrOiAnKzIyMCgjIyMpICMjLSMjJywgbmFtZTogJ9CT0LDQvNCx0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HTl06IHttYXNrOiAnKzIyNCMjLSMjIy0jIyMnLCBuYW1lOiAn0JPQstC40L3QtdGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdRXToge21hc2s6ICcrMjQwIyMtIyMjLSMjIyMnLCBuYW1lOiAn0K3QutCy0LDRgtC+0YDQuNCw0LvRjNC90LDRjyDQk9Cy0LjQvdC10Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR1JdOiB7bWFzazogJyszMCgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9CT0YDQtdGG0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HVF06IHttYXNrOiAnKzUwMiMtIyMjLSMjIyMnLCBuYW1lOiAn0JPQstCw0YLQtdC80LDQu9CwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdXXToge21hc2s6ICcrMjQ1Iy0jIyMjIyMnLCBuYW1lOiAn0JPQstC40L3QtdGPLdCR0LjRgdCw0YMnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR1ldOiB7bWFzazogJys1OTIjIyMtIyMjIycsIG5hbWU6ICfQk9Cw0LnQsNC90LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSEtdOiB7bWFzazogJys4NTIjIyMjLSMjIyMnLCBuYW1lOiAn0JPQvtC90LrQvtC90LMnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSE5dOiB7bWFzazogJys1MDQjIyMjLSMjIyMnLCBuYW1lOiAn0JPQvtC90LTRg9GA0LDRgSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5IUl06IHttYXNrOiAnKzM4NSMjLSMjIy0jIyMnLCBuYW1lOiAn0KXQvtGA0LLQsNGC0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5IVF06IHttYXNrOiAnKzUwOSMjLSMjLSMjIyMnLCBuYW1lOiAn0JPQsNC40YLQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5IVV06IHttYXNrOiAnKzM2KCMjIykgIyMjLSMjIycsIG5hbWU6ICfQktC10L3Qs9GA0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JRF06IHttYXNrOiAnKzYyKCMjIykgIyMjLSMjLSMjIycsIG5hbWU6ICfQmNC90LTQvtC90LXQt9C40Y8gJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLklFXToge21hc2s6ICcrMzUzKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQmNGA0LvQsNC90LTQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLklMXToge21hc2s6ICcrOTcyIyMtIyMjLSMjIyMnLCBuYW1lOiAn0JjQt9GA0LDQuNC70YwnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSU5dOiB7bWFzazogJys5MSgjIyMjKSAjIyMtIyMjJywgbmFtZTogJ9CY0L3QtNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVFdOiB7bWFzazogJys5NjQoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQmNGA0LDQuid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JUl06IHttYXNrOiAnKzk4KCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JjRgNCw0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVNdOiB7bWFzazogJyszNTQjIyMtIyMjIycsIG5hbWU6ICfQmNGB0LvQsNC90LTQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLklUXToge21hc2s6ICcrMzkoIyMjKSAjIyMjLSMjIycsIG5hbWU6ICfQmNGC0LDQu9C40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSk1dOiB7bWFzazogJysxKDg3NikgIyMjLSMjIyMnLCBuYW1lOiAn0K/QvNCw0LnQutCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkpPXToge21hc2s6ICcrOTYyIy0jIyMjLSMjIyMnLCBuYW1lOiAn0JjQvtGA0LTQsNC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5KUF06IHttYXNrOiAnKzgxLSMjLSMjIyMtIyMjIycsIG5hbWU6ICfQr9C/0L7QvdC40Y8gJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktFXToge21hc2s6ICcrMjU0IyMjLSMjIyMjIycsIG5hbWU6ICfQmtC10L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktHXToge21hc2s6ICcrOTk2KCMjIykgIyMjLSMjIycsIG5hbWU6ICfQmtC40YDQs9C40LfQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktIXToge21hc2s6ICcrODU1IyMtIyMjLSMjIycsIG5hbWU6ICfQmtCw0LzQsdC+0LTQttCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktNXToge21hc2s6ICcrMjY5IyMtIyMjIyMnLCBuYW1lOiAn0JrQvtC80L7RgNGLJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktOXToge21hc2s6ICcrMSg4NjkpICMjIy0jIyMjJywgbmFtZTogJ9Ch0LXQvdGCLdCa0LjRgtGBINC4INCd0LXQstC40YEnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1BdOiB7bWFzazogJys4NTAjIyMjLSMjIyMjIyMjIyMjIyMnLCBuYW1lOiAn0JrQvtGA0LXQudGB0LrQsNGPINCd0JTQoCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LUl06IHttYXNrOiAnKzgyIyMtIyMjLSMjIyMnLCBuYW1lOiAn0KDQtdGB0L8uINCa0L7RgNC10Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1ddOiB7bWFzazogJys5NjUjIyMjLSMjIyMnLCBuYW1lOiAn0JrRg9Cy0LXQudGCJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktZXToge21hc2s6ICcrMSgzNDUpICMjIy0jIyMjJywgbmFtZTogJ9Ca0LDQudC80LDQvdC+0LLRiyDQvtGB0YLRgNC+0LLQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LWl06IHttYXNrOiAnKzcoIyMjKSAjIyMtIyMtIyMnLCBuYW1lOiAn0JrQsNC30LDRhdGB0YLQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxBXToge21hc2s6ICcrODU2IyMtIyMtIyMjLSMjIycsIG5hbWU6ICfQm9Cw0L7RgSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MQl06IHttYXNrOiAnKzk2MSMjLSMjIy0jIyMnLCBuYW1lOiAn0JvQuNCy0LDQvSAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTENdOiB7bWFzazogJysxKDc1OCkgIyMjLSMjIyMnLCBuYW1lOiAn0KHQtdC90YIt0JvRjtGB0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MSV06IHttYXNrOiAnKzQyMygjIyMpICMjIy0jIyMjJywgbmFtZTogJ9Cb0LjRhdGC0LXQvdGI0YLQtdC50L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTEtdOiB7bWFzazogJys5NCMjLSMjIy0jIyMjJywgbmFtZTogJ9Co0YDQuC3Qm9Cw0L3QutCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxSXToge21hc2s6ICcrMjMxIyMtIyMjLSMjIycsIG5hbWU6ICfQm9C40LHQtdGA0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MU106IHttYXNrOiAnKzI2NiMtIyMjLSMjIyMnLCBuYW1lOiAn0JvQtdGB0L7RgtC+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxUXToge21hc2s6ICcrMzcwKCMjIykgIyMtIyMjJywgbmFtZTogJ9Cb0LjRgtCy0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFVdOiB7bWFzazogJyszNTIoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cb0Y7QutGB0LXQvNCx0YPRgNCzJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxWXToge21hc2s6ICcrMzcxIyMtIyMjLSMjIycsIG5hbWU6ICfQm9Cw0YLQstC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFldOiB7bWFzazogJysyMTgjIy0jIyMtIyMjIycsIG5hbWU6ICfQm9C40LLQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1BXToge21hc2s6ICcrMjEyIyMtIyMjIy0jIyMnLCBuYW1lOiAn0JzQsNGA0L7QutC60L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUNdOiB7bWFzazogJyszNzcjIyMtIyMjLSMjIycsIG5hbWU6ICfQnNC+0L3QsNC60L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTURdOiB7bWFzazogJyszNzMjIyMjLSMjIyMnLCBuYW1lOiAn0JzQvtC70LTQvtCy0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUVdOiB7bWFzazogJyszODIjIy0jIyMtIyMjJywgbmFtZTogJ9Cn0LXRgNC90L7Qs9C+0YDQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1HXToge21hc2s6ICcrMjYxIyMtIyMtIyMjIyMnLCBuYW1lOiAn0JzQsNC00LDQs9Cw0YHQutCw0YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUtdOiB7bWFzazogJyszODkjIy0jIyMtIyMjJywgbmFtZTogJ9Cg0LXRgdC/LiDQnNCw0LrQtdC00L7QvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUxdOiB7bWFzazogJysyMjMjIy0jIy0jIyMjJywgbmFtZTogJ9Cc0LDQu9C4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1NXToge21hc2s6ICcrOTUjIy0jIyMtIyMjJywgbmFtZTogJ9CR0LjRgNC80LAgKNCc0YzRj9C90LzQsCknfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTU5dOiB7bWFzazogJys5NzYjIy0jIy0jIyMjJywgbmFtZTogJ9Cc0L7QvdCz0L7Qu9C40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTU9dOiB7bWFzazogJys4NTMjIyMjLSMjIyMnLCBuYW1lOiAn0JzQsNC60LDQvid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NUl06IHttYXNrOiAnKzIyMiMjLSMjLSMjIyMnLCBuYW1lOiAn0JzQsNCy0YDQuNGC0LDQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVNdOiB7bWFzazogJysxKDY2NCkgIyMjLSMjIyMnLCBuYW1lOiAn0JzQvtC90YLRgdC10YDRgNCw0YInfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVRdOiB7bWFzazogJyszNTYjIyMjLSMjIyMnLCBuYW1lOiAn0JzQsNC70YzRgtCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1VXToge21hc2s6ICcrMjMwIyMjLSMjIyMnLCBuYW1lOiAn0JzQsNCy0YDQuNC60LjQuSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NVl06IHttYXNrOiAnKzk2MCMjIy0jIyMjJywgbmFtZTogJ9Cc0LDQu9GM0LTQuNCy0YHQutC40LUg0L7RgdGC0YDQvtCy0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVddOiB7bWFzazogJysyNjUjLSMjIyMtIyMjIycsIG5hbWU6ICfQnNCw0LvQsNCy0LgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVhdOiB7bWFzazogJys1MigjIyMpICMjIy0jIyMjJywgbmFtZTogJ9Cc0LXQutGB0LjQutCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1ZXToge21hc2s6ICcrNjAoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cc0LDQu9Cw0LnQt9C40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVpdOiB7bWFzazogJysyNTgjIy0jIyMtIyMjJywgbmFtZTogJ9Cc0L7Qt9Cw0LzQsdC40LonfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkFdOiB7bWFzazogJysyNjQjIy0jIyMtIyMjIycsIG5hbWU6ICfQndCw0LzQuNCx0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ORV06IHttYXNrOiAnKzIyNyMjLSMjLSMjIyMnLCBuYW1lOiAn0J3QuNCz0LXRgCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OR106IHttYXNrOiAnKzIzNCgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9Cd0LjQs9C10YDQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk5JXToge21hc2s6ICcrNTA1IyMjIy0jIyMjJywgbmFtZTogJ9Cd0LjQutCw0YDQsNCz0YPQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OTF06IHttYXNrOiAnKzMxIyMtIyMjLSMjIyMnLCBuYW1lOiAn0J3QuNC00LXRgNC70LDQvdC00YsnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTk9dOiB7bWFzazogJys0NygjIyMpICMjLSMjIycsIG5hbWU6ICfQndC+0YDQstC10LPQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk5QXToge21hc2s6ICcrOTc3IyMtIyMjLSMjIycsIG5hbWU6ICfQndC10L/QsNC7J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk5aXToge21hc2s6ICcrNjQoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQndC+0LLQsNGPINCX0LXQu9Cw0L3QtNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuT01dOiB7bWFzazogJys5NjgjIy0jIyMtIyMjJywgbmFtZTogJ9Ce0LzQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBBXToge21hc2s6ICcrNTA3IyMjLSMjIyMnLCBuYW1lOiAn0J/QsNC90LDQvNCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBFXToge21hc2s6ICcrNTEoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cf0LXRgNGDJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBGXToge1xuICAgICAgICBtYXNrOiAnKzY4OSMjLSMjLSMjJyxcbiAgICAgICAgbmFtZTogJ9Ck0YDQsNC90YbRg9C30YHQutCw0Y8g0J/QvtC70LjQvdC10LfQuNGPICjQotCw0LjRgtC4KScsXG4gICAgfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUEddOiB7bWFzazogJys2NzUoIyMjKSAjIy0jIyMnLCBuYW1lOiAn0J/QsNC/0YPQsC3QndC+0LLQsNGPINCT0LLQuNC90LXRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QSF06IHttYXNrOiAnKzYzKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0KTQuNC70LjQv9C/0LjQvdGLJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBLXToge21hc2s6ICcrOTIoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQn9Cw0LrQuNGB0YLQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBMXToge21hc2s6ICcrNDgoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cf0L7Qu9GM0YjQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QVF06IHttYXNrOiAnKzM1MSMjLSMjIy0jIyMjJywgbmFtZTogJ9Cf0L7RgNGC0YPQs9Cw0LvQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBXXToge21hc2s6ICcrNjgwIyMjLSMjIyMnLCBuYW1lOiAn0J/QsNC70LDRgyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QWV06IHttYXNrOiAnKzU5NSgjIyMpICMjIy0jIyMnLCBuYW1lOiAn0J/QsNGA0LDQs9Cy0LDQuSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5RQV06IHttYXNrOiAnKzk3NCMjIyMtIyMjIycsIG5hbWU6ICfQmtCw0YLQsNGAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlJPXToge21hc2s6ICcrNDAjIy0jIyMtIyMjIycsIG5hbWU6ICfQoNGD0LzRi9C90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5SU106IHttYXNrOiAnKzM4MSMjLSMjIy0jIyMjJywgbmFtZTogJ9Ch0LXRgNCx0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5SVV06IHttYXNrOiAnKzcjIyMgIyMjLSMjLSMjJywgbmFtZTogJ9Cg0L7RgdGB0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5SV106IHttYXNrOiAnKzI1MCgjIyMpICMjIy0jIyMnLCBuYW1lOiAn0KDRg9Cw0L3QtNCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNBXToge21hc2s6ICcrOTY2Iy0jIyMjLSMjIyMnLCBuYW1lOiAn0KHQsNGD0LTQvtCy0YHQutCw0Y8g0JDRgNCw0LLQuNGPICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TQl06IHttYXNrOiAnKzY3NyMjIy0jIyMjJywgbmFtZTogJ9Ch0L7Qu9C+0LzQvtC90L7QstGLINCe0YHRgtGA0L7QstCwICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TQ106IHttYXNrOiAnKzI0OCMtIyMjLSMjIycsIG5hbWU6ICfQodC10LnRiNC10LvRiyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TRF06IHttYXNrOiAnKzI0OSMjLSMjIy0jIyMjJywgbmFtZTogJ9Ch0YPQtNCw0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0VdOiB7bWFzazogJys0NiMjLSMjIy0jIyMjJywgbmFtZTogJ9Co0LLQtdGG0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TR106IHttYXNrOiAnKzY1IyMjIy0jIyMjJywgbmFtZTogJ9Ch0LjQvdCz0LDQv9GD0YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0hdOiB7bWFzazogJysyOTAjIyMjJywgbmFtZTogJ9Ce0YHRgtGA0L7QsiDQodCy0Y/RgtC+0Lkg0JXQu9C10L3Riyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TSV06IHttYXNrOiAnKzM4NiMjLSMjIy0jIyMnLCBuYW1lOiAn0KHQu9C+0LLQtdC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TS106IHttYXNrOiAnKzQyMSgjIyMpICMjIy0jIyMnLCBuYW1lOiAn0KHQu9C+0LLQsNC60LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TTF06IHttYXNrOiAnKzIzMiMjLSMjIyMjIycsIG5hbWU6ICfQodGM0LXRgNGA0LAt0JvQtdC+0L3QtSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TTV06IHttYXNrOiAnKzM3OCMjIyMtIyMjIyMjJywgbmFtZTogJ9Ch0LDQvS3QnNCw0YDQuNC90L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU05dOiB7bWFzazogJysyMjEjIy0jIyMtIyMjIycsIG5hbWU6ICfQodC10L3QtdCz0LDQuyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TT106IHttYXNrOiAnKzI1MiMjLSMjIy0jIyMnLCBuYW1lOiAn0KHQvtC80LDQu9C4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNSXToge21hc2s6ICcrNTk3IyMjLSMjIyMnLCBuYW1lOiAn0KHRg9GA0LjQvdCw0LwgJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNUXToge21hc2s6ICcrMjM5IyMtIyMjIyMnLCBuYW1lOiAn0KHQsNC9LdCi0L7QvNC1INC4INCf0YDQuNC90YHQuNC/0LgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1ZdOiB7bWFzazogJys1MDMjIy0jIy0jIyMjJywgbmFtZTogJ9Ch0LDQu9GM0LLQsNC00L7RgCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TWF06IHttYXNrOiAnKzEoNzIxKSAjIyMtIyMjIycsIG5hbWU6ICfQodC40L3Rgi3QnNCw0YDRgtC10L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1ldOiB7XG4gICAgICAgIG1hc2s6ICcrOTYzIyMtIyMjIy0jIyMnLFxuICAgICAgICBuYW1lOiAn0KHQuNGA0LjQudGB0LrQsNGPINCw0YDQsNCx0YHQutCw0Y8g0YDQtdGB0L/Rg9Cx0LvQuNC60LAnLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNaXToge21hc2s6ICcrMjY4IyMtIyMtIyMjIycsIG5hbWU6ICfQodCy0LDQt9C40LvQtdC90LQnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVENdOiB7bWFzazogJysxKDY0OSkgIyMjLSMjIyMnLCBuYW1lOiAn0KLRkdGA0LrRgSDQuCDQmtCw0LnQutC+0YEnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVERdOiB7bWFzazogJysyMzUjIy0jIy0jIy0jIycsIG5hbWU6ICfQp9Cw0LQnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVEddOiB7bWFzazogJysyMjgjIy0jIyMtIyMjJywgbmFtZTogJ9Ci0L7Qs9C+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRIXToge21hc2s6ICcrNjYjIy0jIyMtIyMjIycsIG5hbWU6ICfQotCw0LjQu9Cw0L3QtCAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVEpdOiB7bWFzazogJys5OTIjIy0jIyMtIyMjIycsIG5hbWU6ICfQotCw0LTQttC40LrQuNGB0YLQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRMXToge21hc2s6ICcrNjcwIyMjLSMjIyMjJywgbmFtZTogJ9CS0L7RgdGC0L7Rh9C90YvQuSDQotC40LzQvtGAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRNXToge21hc2s6ICcrOTkzIy0jIyMtIyMjIycsIG5hbWU6ICfQotGD0YDQutC80LXQvdC40YHRgtCw0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVE5dOiB7bWFzazogJysyMTYjIy0jIyMtIyMjJywgbmFtZTogJ9Ci0YPQvdC40YEnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVE9dOiB7bWFzazogJys2NzYjIyMjIycsIG5hbWU6ICfQotC+0L3Qs9CwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRSXToge21hc2s6ICcrOTAoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQotGD0YDRhtC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVFRdOiB7bWFzazogJysxKDg2OCkgIyMjLSMjIyMnLCBuYW1lOiAn0KLRgNC40L3QuNC00LDQtCDQuCDQotC+0LHQsNCz0L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVFddOiB7bWFzazogJys4ODYjLSMjIyMtIyMjIycsIG5hbWU6ICfQotCw0LnQstCw0L3RjCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UWl06IHttYXNrOiAnKzI1NSMjLSMjIy0jIyMjJywgbmFtZTogJ9Ci0LDQvdC30LDQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVUFdOiB7bWFzazogJyszODAoIyMpICMjIy0jIy0jIycsIG5hbWU6ICfQo9C60YDQsNC40L3QsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VR106IHttYXNrOiAnKzI1NigjIyMpICMjIy0jIyMnLCBuYW1lOiAn0KPQs9Cw0L3QtNCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlVTXToge21hc2s6ICcrMSgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9Ch0KjQkCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VWV06IHttYXNrOiAnKzU5OCMtIyMjLSMjLSMjJywgbmFtZTogJ9Cj0YDRg9Cz0LLQsNC5J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlVaXToge21hc2s6ICcrOTk4IyMtIyMjLSMjIyMnLCBuYW1lOiAn0KPQt9Cx0LXQutC40YHRgtCw0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVkNdOiB7bWFzazogJysxKDc4NCkgIyMjLSMjIyMnLCBuYW1lOiAn0KHQtdC90YIt0JLQuNC90YHQtdC90YIg0Lgg0JPRgNC10L3QsNC00LjQvdGLJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlZFXToge21hc2s6ICcrNTgoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQktC10L3QtdGB0YPRjdC70LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVkddOiB7XG4gICAgICAgIG1hc2s6ICcrMSgyODQpIyMjLSMjIyMnLFxuICAgICAgICBuYW1lOiAn0JHRgNC40YLQsNC90YHQutC40LUg0JLQuNGA0LPQuNC90YHQutC40LUg0L7RgdGC0YDQvtCy0LAnLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlZOXToge21hc2s6ICcrODQoIyMjKSAjIyMjLSMjIycsIG5hbWU6ICfQktGM0LXRgtC90LDQvCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WVV06IHttYXNrOiAnKzY3OCMjLSMjIyMjJywgbmFtZTogJ9CS0LDQvdGD0LDRgtGDICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5XU106IHttYXNrOiAnKzY4NSMjLSMjIyMnLCBuYW1lOiAn0KHQsNC80L7QsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ZRV06IHttYXNrOiAnKzk2NyMjIy0jIyMtIyMjJywgbmFtZTogJ9CZ0LXQvNC10L0gJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlpBXToge21hc2s6ICcrMjcjIy0jIyMtIyMjIycsIG5hbWU6ICfQrtC20L3Qvi3QkNGE0YDQuNC60LDQvdGB0LrQsNGPINCg0LXRgdC/Lid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5aTV06IHttYXNrOiAnKzI2MCMjLSMjIy0jIyMjJywgbmFtZTogJ9CX0LDQvNCx0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5aV106IHttYXNrOiAnKzI2MyMtIyMjIyMjJywgbmFtZTogJ9CX0LjQvNCx0LDQsdCy0LUnfSxcbn07XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgd2lsbCBiZSBkZWxldGVkIHNvb25cbiAqIFRPRE86IHJlbW92ZSBpbiAzLjAgKGluIGl2eSBjb21waWxhdGlvbilcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvdW50cmllc01hc2tzUmVkdWNlcihcbiAgICBhY2M6IFJlY29yZDxUdWlDb3VudHJ5SXNvQ29kZSwgc3RyaW5nPixcbiAgICBbY291bnRyeUlzb0NvZGUsIHttYXNrfV06IFtzdHJpbmcsIHttYXNrOiBzdHJpbmd9XSxcbik6IFJlY29yZDxUdWlDb3VudHJ5SXNvQ29kZSwgc3RyaW5nPiB7XG4gICAgYWNjW2NvdW50cnlJc29Db2RlIGFzIFR1aUNvdW50cnlJc29Db2RlXSA9IG1hc2s7XG5cbiAgICByZXR1cm4gYWNjO1xufVxuXG4vKipcbiAqIEBkZXByZWNhdGVkIHdpbGwgYmUgZGVsZXRlZCBzb29uXG4gKiBVc2UgdG9rZW4gYFRVSV9DT1VOVFJJRVNfTUFTS1NgXG4gKiBUT0RPOiByZW1vdmUgaW4gMy4wXG4gKi9cbmV4cG9ydCBjb25zdCBDT1VOVFJJRVNfTUFTS1MgPSBPYmplY3QuZW50cmllczxDb3VudHJ5PihDT1VOVFJJRVMpLnJlZHVjZShcbiAgICBjb3VudHJpZXNNYXNrc1JlZHVjZXIsXG4gICAge30gYXMgUmVjb3JkPFR1aUNvdW50cnlJc29Db2RlLCBzdHJpbmc+LFxuKTtcblxuZXhwb3J0IGNvbnN0IE1BU0tfQUZURVJfQ09ERV9SRUdFWFAgPSAvXFwoWyNdK1xcKXxbI1xcLSBdL2c7XG4iXX0=
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyaWVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLWludGVybmF0aW9uYWwvIiwic291cmNlcyI6WyJjb25zdC9jb3VudHJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFJakQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQTRCO0lBQzlDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUM7SUFDOUQsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRTtRQUNwQixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLElBQUksRUFBRSwrQkFBK0I7S0FDeEM7SUFDRCxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxZQUFZLEVBQUM7SUFDcEUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUM7SUFDN0UsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFDO0lBQ25FLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBQztJQUNwRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUM7SUFDakUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFDLElB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LENBQVUsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUNwRSxxQkFBcUIsRUFDckIsRUFBdUMsQ0FDMUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlDb3VudHJ5SXNvQ29kZX0gZnJvbSAnQHRhaWdhLXVpL2kxOG4nO1xuXG5pbXBvcnQge0NvdW50cnl9IGZyb20gJy4uL2ludGVyZmFjZXMvY291bnRyeSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgRG9udCB1c2UgaXQgKHdpbGwgYmUgZGVsZXRlZCBzb29uKS5cbiAqIC0gVXNlIHRva2VuIGBUVUlfQ09VTlRSSUVTX01BU0tTYCB0byBnZXQgcGhvbmUgbWFzayBieSBjb3VudHJ5IGlzbyBjb2RlXG4gKiAtIFVzZSB0b2tlbiBgVFVJX0NPVU5UUklFU2AgdG8gZ2V0IGxvY2FsaXplZCBjb3VudHJ5IG5hbWUgYnkgaXRzIGlzbyBjb2RlXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHtUVUlfQ09VTlRSSUVTLCBUVUlfQ09VTlRSSUVTX01BU0tTfSBmcm9tICdAdGFpZ2EtdWkva2l0JztcbiAqXG4gKiBAdG9kbyBUT0RPOiByZW1vdmUgaXQgaW4gMy4wXG4gKi9cbmV4cG9ydCBjb25zdCBDT1VOVFJJRVM6IFJlY29yZDxzdHJpbmcsIENvdW50cnk+ID0ge1xuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BRF06IHttYXNrOiAnKzM3NiMjIy0jIyMnLCBuYW1lOiAn0JDQvdC00L7RgNGA0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUVdOiB7XG4gICAgICAgIG1hc2s6ICcrOTcxLSMjLSMjIy0jIyMjJyxcbiAgICAgICAgbmFtZTogJ9Ce0LHRitC10LTQuNC90LXQvdC90YvQtSDQkNGA0LDQsdGB0LrQuNC1INCt0LzQuNGA0LDRgtGLJyxcbiAgICB9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BRl06IHttYXNrOiAnKzkzIyMtIyMjLSMjIyMnLCBuYW1lOiAn0JDRhNCz0LDQvdC40YHRgtCw0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUddOiB7bWFzazogJysxKDI2OCkgIyMjLSMjIyMnLCBuYW1lOiAn0JDQvdGC0LjQs9GD0LAg0Lgg0JHQsNGA0LHRg9C00LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUldOiB7bWFzazogJysxKDI2NCkgIyMjLSMjIyMnLCBuYW1lOiAn0JDQvdCz0LjQu9GM0Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUxdOiB7bWFzazogJyszNTUoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9CQ0LvQsdCw0L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFNXToge21hc2s6ICcrMzc0IyMtIyMjLSMjIycsIG5hbWU6ICfQkNGA0LzQtdC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BT106IHttYXNrOiAnKzI0NCgjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JDQvdCz0L7Qu9CwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFSXToge21hc2s6ICcrNTQoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQkNGA0LPQtdC90YLQuNC90LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVRdOiB7bWFzazogJys0MygjIyMpICMjIy0jIyMjJywgbmFtZTogJ9CQ0LLRgdGC0YDQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFVXToge21hc2s6ICcrNjEjLSMjIyMtIyMjIycsIG5hbWU6ICfQkNCy0YHRgtGA0LDQu9C40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVddOiB7bWFzazogJysyOTcjIyMtIyMjIycsIG5hbWU6ICfQkNGA0YPQsdCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkFaXToge21hc2s6ICcrOTk0IyMtIyMjLSMjLSMjJywgbmFtZTogJ9CQ0LfQtdGA0LHQsNC50LTQttCw0L0nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkFdOiB7bWFzazogJyszODcgIyMjLSMjIyMtIycsIG5hbWU6ICfQkdC+0YHQvdC40Y8g0Lgg0JPQtdGA0YbQtdCz0L7QstC40L3QsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CQl06IHttYXNrOiAnKzEoMjQ2KSAjIyMtIyMjIycsIG5hbWU6ICfQkdCw0YDQsdCw0LTQvtGBJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJEXToge21hc2s6ICcrODgwIyMtIyMjLSMjIycsIG5hbWU6ICfQkdCw0L3Qs9C70LDQtNC10YgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkVdOiB7bWFzazogJyszMigjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JHQtdC70YzQs9C40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkZdOiB7bWFzazogJysyMjYjIy0jIy0jIyMjJywgbmFtZTogJ9CR0YPRgNC60LjQvdCwINCk0LDRgdC+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJHXToge21hc2s6ICcrMzU5KCMjIykgIyMjLSMjIycsIG5hbWU6ICfQkdC+0LvQs9Cw0YDQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJIXToge21hc2s6ICcrOTczIyMjIy0jIyMjJywgbmFtZTogJ9CR0LDRhdGA0LXQudC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkJJXToge21hc2s6ICcrMjU3IyMtIyMtIyMjIycsIG5hbWU6ICfQkdGD0YDRg9C90LTQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CSl06IHttYXNrOiAnKzIyOSMjLSMjLSMjIyMnLCBuYW1lOiAn0JHQtdC90LjQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CTV06IHttYXNrOiAnKzEoNDQxKSAjIyMtIyMjIycsIG5hbWU6ICfQkdC10YDQvNGD0LTRgdC60LjQtSDQvtGB0YLRgNC+0LLQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CTl06IHttYXNrOiAnKzY3MyMjIy0jIyMjJywgbmFtZTogJ9CR0YDRg9C90LXQuS3QlNCw0YDRg9GB0YHQsNC70LDQvCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CT106IHttYXNrOiAnKzU5MSMtIyMjLSMjIyMnLCBuYW1lOiAn0JHQvtC70LjQstC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQlFdOiB7XG4gICAgICAgIG1hc2s6ICcrNTk5LSMjIy0jIyMjJyxcbiAgICAgICAgbmFtZTogJ9CR0L7QvdCw0LnRgNC1LCDQodC40L3Rgi3QrdGB0YLQsNGC0LjRg9GBINC4INCh0LDQsdCwJyxcbiAgICB9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CUl06IHttYXNrOiAnKzU1KCMjKSAjIyMjLSMjIyMnLCBuYW1lOiAn0JHRgNCw0LfQuNC70LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CU106IHttYXNrOiAnKzEoMjQyKSAjIyMtIyMjIycsIG5hbWU6ICfQkdCw0LPQsNC80YHQutC40LUg0J7RgdGC0YDQvtCy0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQlRdOiB7bWFzazogJys5NzUjLSMjIy0jIyMnLCBuYW1lOiAn0JHRg9GC0LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CV106IHttYXNrOiAnKzI2NyMjLSMjIy0jIyMnLCBuYW1lOiAn0JHQvtGC0YHQstCw0L3QsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CWV06IHttYXNrOiAnKzM3NSgjIykgIyMjLSMjLSMjJywgbmFtZTogJ9CR0LXQu9Cw0YDRg9GB0YwgKNCR0LXQu9C+0YDRg9GB0YHQuNGPKSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CWl06IHttYXNrOiAnKzUwMSMjIy0jIyMjJywgbmFtZTogJ9CR0LXQu9C40LcnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0FdOiB7bWFzazogJysxKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JrQsNC90LDQtNCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNEXToge1xuICAgICAgICBtYXNrOiAnKzI0MygjIyMpICMjIy0jIyMnLFxuICAgICAgICBuYW1lOiAn0JTQtdC8LiDQoNC10YHQvy4g0JrQvtC90LPQviAo0JrQuNC90YjQsNGB0LApJyxcbiAgICB9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DRl06IHtcbiAgICAgICAgbWFzazogJysyMzYtIyMtIyMtIyMjIycsXG4gICAgICAgIG5hbWU6ICfQptC10L3RgtGA0LDQu9GM0L3QvtCw0YTRgNC40LrQsNC90YHQutCw0Y8g0KDQtdGB0L/Rg9Cx0LvQuNC60LAnLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNHXToge21hc2s6ICcrMjQyIyMtIyMjLSMjIyMnLCBuYW1lOiAn0JrQvtC90LPQviAo0JHRgNCw0LfQt9Cw0LLQuNC70YwpJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNIXToge21hc2s6ICcrNDEjIy0jIyMtIyMjIycsIG5hbWU6ICfQqNCy0LXQudGG0LDRgNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0ldOiB7bWFzazogJysyMjUjIy0jIyMtIyMjJywgbmFtZTogJ9Ca0L7Rgi3QtOKAmdCY0LLRg9Cw0YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0xdOiB7bWFzazogJys1NiMtIyMjIy0jIyMjJywgbmFtZTogJ9Cn0LjQu9C4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNNXToge21hc2s6ICcrMjM3IyMjIy0jIyMjJywgbmFtZTogJ9Ca0LDQvNC10YDRg9C9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNOXToge21hc2s6ICcrODYoIyMjKSAjIyMjLSMjIyMnLCBuYW1lOiAn0JrQuNGC0LDQudGB0LrQsNGPINCdLtCgLid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DT106IHttYXNrOiAnKzU3KCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JrQvtC70YPQvNCx0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DUl06IHttYXNrOiAnKzUwNiMjIyMtIyMjIycsIG5hbWU6ICfQmtC+0YHRgtCwLdCg0LjQutCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNVXToge21hc2s6ICcrNTMjLSMjIy0jIyMjJywgbmFtZTogJ9Ca0YPQsdCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNWXToge21hc2s6ICcrMjM4KCMjIykgIyMtIyMnLCBuYW1lOiAn0JrQsNCx0L4t0JLQtdGA0LTQtSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DV106IHttYXNrOiAnKzU5OTktIyMjLSMjIyMnLCBuYW1lOiAn0JrRjtGA0LDRgdCw0L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1ldOiB7bWFzazogJyszNTcjIy0jIyMtIyMjJywgbmFtZTogJ9Ca0LjQv9GAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkNaXToge21hc2s6ICcrNDIwKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQp9C10YXQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkRFXToge21hc2s6ICcrNDkoIyMjKSAjIyMtIyMjLSMjJywgbmFtZTogJ9CT0LXRgNC80LDQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuREpdOiB7bWFzazogJysyNTMjIy0jIy0jIy0jIycsIG5hbWU6ICfQlNC20LjQsdGD0YLQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ES106IHttYXNrOiAnKzQ1IyMtIyMtIyMtIyMnLCBuYW1lOiAn0JTQsNC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ETV06IHttYXNrOiAnKzEoNzY3KSAjIyMtIyMjIycsIG5hbWU6ICfQlNC+0LzQuNC90LjQutCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkRPXToge21hc2s6ICcrMSgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9CU0L7QvNC40L3QuNC60LDQvdGB0LrQsNGPINCg0LXRgdC/0YPQsdC70LjQutCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkRaXToge21hc2s6ICcrMjEzIyMtIyMjLSMjIyMnLCBuYW1lOiAn0JDQu9C20LjRgCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FQ106IHttYXNrOiAnKzU5MyMjLSMjIy0jIyMjJywgbmFtZTogJ9Ct0LrQstCw0LTQvtGAICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FRV06IHttYXNrOiAnKzM3MiMjIyMtIyMjIycsIG5hbWU6ICfQrdGB0YLQvtC90LjRjyAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRUddOiB7bWFzazogJysyMCgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9CV0LPQuNC/0LXRgid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FUl06IHttYXNrOiAnKzI5MSMtIyMjLSMjIycsIG5hbWU6ICfQrdGA0LjRgtGA0LXRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FU106IHttYXNrOiAnKzM0KCMjIykgIyMjLSMjIycsIG5hbWU6ICfQmNGB0L/QsNC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FVF06IHttYXNrOiAnKzI1MSMjLSMjIy0jIyMjJywgbmFtZTogJ9Ct0YTQuNC+0L/QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkZJXToge21hc2s6ICcrMzU4KCMjIykgIyMjLSMjLSMjJywgbmFtZTogJ9Ck0LjQvdC70Y/QvdC00LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GSl06IHttYXNrOiAnKzY3OSMjLSMjIyMjJywgbmFtZTogJ9Ck0LjQtNC20LgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRktdOiB7bWFzazogJys1MDAjIyMjIycsIG5hbWU6ICfQpNC+0LvQutC70LXQvdC00YHQutC40LUg0L7RgdGC0YDQvtCy0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRk1dOiB7bWFzazogJys2OTEjIyMtIyMjIycsIG5hbWU6ICfQpC7QqC4g0JzQuNC60YDQvtC90LXQt9C40LgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuRlJdOiB7bWFzazogJyszMyAjIyAjIyAjIyAjIyAjIycsIG5hbWU6ICfQpNGA0LDQvdGG0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HQV06IHttYXNrOiAnKzI0MSMtIyMtIyMtIyMnLCBuYW1lOiAn0JPQsNCx0L7QvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HQl06IHttYXNrOiAnKzQ0IyMtIyMjIy0jIyMjJywgbmFtZTogJ9CS0LXQu9C40LrQvtCx0YDQuNGC0LDQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0RdOiB7bWFzazogJysxKDQ3MykgIyMjLSMjIyMnLCBuYW1lOiAn0JPRgNC10L3QsNC00LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0VdOiB7bWFzazogJys5OTUoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9CT0YDRg9C30LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HSF06IHttYXNrOiAnKzIzMygjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JPQsNC90LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0ldOiB7bWFzazogJyszNTAjIyMtIyMjIyMnLCBuYW1lOiAn0JPQuNCx0YDQsNC70YLQsNGAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdMXToge21hc2s6ICcrMjk5IyMtIyMtIyMnLCBuYW1lOiAn0JPRgNC10L3Qu9Cw0L3QtNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR01dOiB7bWFzazogJysyMjAoIyMjKSAjIy0jIycsIG5hbWU6ICfQk9Cw0LzQsdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR05dOiB7bWFzazogJysyMjQjIy0jIyMtIyMjJywgbmFtZTogJ9CT0LLQuNC90LXRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HUV06IHttYXNrOiAnKzI0MCMjLSMjIy0jIyMjJywgbmFtZTogJ9Ct0LrQstCw0YLQvtGA0LjQsNC70YzQvdCw0Y8g0JPQstC40L3QtdGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdSXToge21hc2s6ICcrMzAoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQk9GA0LXRhtC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuR1RdOiB7bWFzazogJys1MDIjLSMjIy0jIyMjJywgbmFtZTogJ9CT0LLQsNGC0LXQvNCw0LvQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HV106IHttYXNrOiAnKzI0NSMtIyMjIyMjJywgbmFtZTogJ9CT0LLQuNC90LXRjy3QkdC40YHQsNGDJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkdZXToge21hc2s6ICcrNTkyIyMjLSMjIyMnLCBuYW1lOiAn0JPQsNC50LDQvdCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkhLXToge21hc2s6ICcrODUyIyMjIy0jIyMjJywgbmFtZTogJ9CT0L7QvdC60L7QvdCzJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkhOXToge21hc2s6ICcrNTA0IyMjIy0jIyMjJywgbmFtZTogJ9CT0L7QvdC00YPRgNCw0YEnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSFJdOiB7bWFzazogJyszODUjIy0jIyMtIyMjJywgbmFtZTogJ9Cl0L7RgNCy0LDRgtC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSFRdOiB7bWFzazogJys1MDkjIy0jIy0jIyMjJywgbmFtZTogJ9CT0LDQuNGC0LgnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSFVdOiB7bWFzazogJyszNigjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JLQtdC90LPRgNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSURdOiB7bWFzazogJys2MigjIyMpICMjIy0jIy0jIyMnLCBuYW1lOiAn0JjQvdC00L7QvdC10LfQuNGPICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JRV06IHttYXNrOiAnKzM1MygjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JjRgNC70LDQvdC00LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JTF06IHttYXNrOiAnKzk3MiMjLSMjIy0jIyMjJywgbmFtZTogJ9CY0LfRgNCw0LjQu9GMJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLklOXToge21hc2s6ICcrOTEoIyMjIykgIyMjLSMjIycsIG5hbWU6ICfQmNC90LTQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLklRXToge21hc2s6ICcrOTY0KCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JjRgNCw0LonfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVJdOiB7bWFzazogJys5OCgjIyMpICMjIy0jIyMjJywgbmFtZTogJ9CY0YDQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLklTXToge21hc2s6ICcrMzU0IyMjLSMjIyMnLCBuYW1lOiAn0JjRgdC70LDQvdC00LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JVF06IHttYXNrOiAnKzM5KCMjIykgIyMjIy0jIyMnLCBuYW1lOiAn0JjRgtCw0LvQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkpNXToge21hc2s6ICcrMSg4NzYpICMjIy0jIyMjJywgbmFtZTogJ9Cv0LzQsNC50LrQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5KT106IHttYXNrOiAnKzk2MiMtIyMjIy0jIyMjJywgbmFtZTogJ9CY0L7RgNC00LDQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuSlBdOiB7bWFzazogJys4MS0jIy0jIyMjLSMjIyMnLCBuYW1lOiAn0K/Qv9C+0L3QuNGPICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LRV06IHttYXNrOiAnKzI1NCMjIy0jIyMjIyMnLCBuYW1lOiAn0JrQtdC90LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LR106IHttYXNrOiAnKzk5NigjIyMpICMjIy0jIyMnLCBuYW1lOiAn0JrQuNGA0LPQuNC30LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LSF06IHttYXNrOiAnKzg1NSMjLSMjIy0jIyMnLCBuYW1lOiAn0JrQsNC80LHQvtC00LbQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LTV06IHttYXNrOiAnKzI2OSMjLSMjIyMjJywgbmFtZTogJ9Ca0L7QvNC+0YDRiyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LTl06IHttYXNrOiAnKzEoODY5KSAjIyMtIyMjIycsIG5hbWU6ICfQodC10L3Rgi3QmtC40YLRgSDQuCDQndC10LLQuNGBJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktQXToge21hc2s6ICcrODUwIyMjIy0jIyMjIyMjIyMjIyMjJywgbmFtZTogJ9Ca0L7RgNC10LnRgdC60LDRjyDQndCU0KAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1JdOiB7bWFzazogJys4MiMjLSMjIy0jIyMjJywgbmFtZTogJ9Cg0LXRgdC/LiDQmtC+0YDQtdGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLktXXToge21hc2s6ICcrOTY1IyMjIy0jIyMjJywgbmFtZTogJ9Ca0YPQstC10LnRgid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LWV06IHttYXNrOiAnKzEoMzQ1KSAjIyMtIyMjIycsIG5hbWU6ICfQmtCw0LnQvNCw0L3QvtCy0Ysg0L7RgdGC0YDQvtCy0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1pdOiB7bWFzazogJys3KCMjIykgIyMjLSMjLSMjJywgbmFtZTogJ9Ca0LDQt9Cw0YXRgdGC0LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MQV06IHttYXNrOiAnKzg1NiMjLSMjLSMjIy0jIyMnLCBuYW1lOiAn0JvQsNC+0YEnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTEJdOiB7bWFzazogJys5NjEjIy0jIyMtIyMjJywgbmFtZTogJ9Cb0LjQstCw0L0gJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxDXToge21hc2s6ICcrMSg3NTgpICMjIy0jIyMjJywgbmFtZTogJ9Ch0LXQvdGCLdCb0Y7RgdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTEldOiB7bWFzazogJys0MjMoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQm9C40YXRgtC10L3RiNGC0LXQudC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxLXToge21hc2s6ICcrOTQjIy0jIyMtIyMjIycsIG5hbWU6ICfQqNGA0Lgt0JvQsNC90LrQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MUl06IHttYXNrOiAnKzIzMSMjLSMjIy0jIyMnLCBuYW1lOiAn0JvQuNCx0LXRgNC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFNdOiB7bWFzazogJysyNjYjLSMjIy0jIyMjJywgbmFtZTogJ9Cb0LXRgdC+0YLQvid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MVF06IHttYXNrOiAnKzM3MCgjIyMpICMjLSMjIycsIG5hbWU6ICfQm9C40YLQstCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxVXToge21hc2s6ICcrMzUyKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQm9GO0LrRgdC10LzQsdGD0YDQsyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MVl06IHttYXNrOiAnKzM3MSMjLSMjIy0jIyMnLCBuYW1lOiAn0JvQsNGC0LLQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLkxZXToge21hc2s6ICcrMjE4IyMtIyMjLSMjIyMnLCBuYW1lOiAn0JvQuNCy0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NQV06IHttYXNrOiAnKzIxMiMjLSMjIyMtIyMjJywgbmFtZTogJ9Cc0LDRgNC+0LrQutC+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1DXToge21hc2s6ICcrMzc3IyMjLSMjIy0jIyMnLCBuYW1lOiAn0JzQvtC90LDQutC+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1EXToge21hc2s6ICcrMzczIyMjIy0jIyMjJywgbmFtZTogJ9Cc0L7Qu9C00L7QstCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1FXToge21hc2s6ICcrMzgyIyMtIyMjLSMjIycsIG5hbWU6ICfQp9C10YDQvdC+0LPQvtGA0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NR106IHttYXNrOiAnKzI2MSMjLSMjLSMjIyMjJywgbmFtZTogJ9Cc0LDQtNCw0LPQsNGB0LrQsNGAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1LXToge21hc2s6ICcrMzg5IyMtIyMjLSMjIycsIG5hbWU6ICfQoNC10YHQvy4g0JzQsNC60LXQtNC+0L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1MXToge21hc2s6ICcrMjIzIyMtIyMtIyMjIycsIG5hbWU6ICfQnNCw0LvQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NTV06IHttYXNrOiAnKzk1IyMtIyMjLSMjIycsIG5hbWU6ICfQkdC40YDQvNCwICjQnNGM0Y/QvdC80LApJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1OXToge21hc2s6ICcrOTc2IyMtIyMtIyMjIycsIG5hbWU6ICfQnNC+0L3Qs9C+0LvQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1PXToge21hc2s6ICcrODUzIyMjIy0jIyMjJywgbmFtZTogJ9Cc0LDQutCw0L4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVJdOiB7bWFzazogJysyMjIjIy0jIy0jIyMjJywgbmFtZTogJ9Cc0LDQstGA0LjRgtCw0L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1TXToge21hc2s6ICcrMSg2NjQpICMjIy0jIyMjJywgbmFtZTogJ9Cc0L7QvdGC0YHQtdGA0YDQsNGCJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1UXToge21hc2s6ICcrMzU2IyMjIy0jIyMjJywgbmFtZTogJ9Cc0LDQu9GM0YLQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NVV06IHttYXNrOiAnKzIzMCMjIy0jIyMjJywgbmFtZTogJ9Cc0LDQstGA0LjQutC40LknfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVZdOiB7bWFzazogJys5NjAjIyMtIyMjIycsIG5hbWU6ICfQnNCw0LvRjNC00LjQstGB0LrQuNC1INC+0YHRgtGA0L7QstCwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1XXToge21hc2s6ICcrMjY1Iy0jIyMjLSMjIyMnLCBuYW1lOiAn0JzQsNC70LDQstC4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1YXToge21hc2s6ICcrNTIoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQnNC10LrRgdC40LrQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NWV06IHttYXNrOiAnKzYwKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQnNCw0LvQsNC50LfQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk1aXToge21hc2s6ICcrMjU4IyMtIyMjLSMjIycsIG5hbWU6ICfQnNC+0LfQsNC80LHQuNC6J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk5BXToge21hc2s6ICcrMjY0IyMtIyMjLSMjIyMnLCBuYW1lOiAn0J3QsNC80LjQsdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkVdOiB7bWFzazogJysyMjcjIy0jIy0jIyMjJywgbmFtZTogJ9Cd0LjQs9C10YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkddOiB7bWFzazogJysyMzQoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQndC40LPQtdGA0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OSV06IHttYXNrOiAnKzUwNSMjIyMtIyMjIycsIG5hbWU6ICfQndC40LrQsNGA0LDQs9GD0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkxdOiB7bWFzazogJyszMSMjLSMjIy0jIyMjJywgbmFtZTogJ9Cd0LjQtNC10YDQu9Cw0L3QtNGLJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk5PXToge21hc2s6ICcrNDcoIyMjKSAjIy0jIyMnLCBuYW1lOiAn0J3QvtGA0LLQtdCz0LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OUF06IHttYXNrOiAnKzk3NyMjLSMjIy0jIyMnLCBuYW1lOiAn0J3QtdC/0LDQuyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OWl06IHttYXNrOiAnKzY0KCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0J3QvtCy0LDRjyDQl9C10LvQsNC90LTQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLk9NXToge21hc2s6ICcrOTY4IyMtIyMjLSMjIycsIG5hbWU6ICfQntC80LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QQV06IHttYXNrOiAnKzUwNyMjIy0jIyMjJywgbmFtZTogJ9Cf0LDQvdCw0LzQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QRV06IHttYXNrOiAnKzUxKCMjIykgIyMjLSMjIycsIG5hbWU6ICfQn9C10YDRgyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QRl06IHtcbiAgICAgICAgbWFzazogJys2ODkjIy0jIy0jIycsXG4gICAgICAgIG5hbWU6ICfQpNGA0LDQvdGG0YPQt9GB0LrQsNGPINCf0L7Qu9C40L3QtdC30LjRjyAo0KLQsNC40YLQuCknLFxuICAgIH0sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlBHXToge21hc2s6ICcrNjc1KCMjIykgIyMtIyMjJywgbmFtZTogJ9Cf0LDQv9GD0LAt0J3QvtCy0LDRjyDQk9Cy0LjQvdC10Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUEhdOiB7bWFzazogJys2MygjIyMpICMjIy0jIyMjJywgbmFtZTogJ9Ck0LjQu9C40L/Qv9C40L3Riyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QS106IHttYXNrOiAnKzkyKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0J/QsNC60LjRgdGC0LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QTF06IHttYXNrOiAnKzQ4KCMjIykgIyMjLSMjIycsIG5hbWU6ICfQn9C+0LvRjNGI0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUFRdOiB7bWFzazogJyszNTEjIy0jIyMtIyMjIycsIG5hbWU6ICfQn9C+0YDRgtGD0LPQsNC70LjRjyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QV106IHttYXNrOiAnKzY4MCMjIy0jIyMjJywgbmFtZTogJ9Cf0LDQu9Cw0YMnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUFldOiB7bWFzazogJys1OTUoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cf0LDRgNCw0LPQstCw0LknfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUUFdOiB7bWFzazogJys5NzQjIyMjLSMjIyMnLCBuYW1lOiAn0JrQsNGC0LDRgCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ST106IHttYXNrOiAnKzQwIyMtIyMjLSMjIyMnLCBuYW1lOiAn0KDRg9C80YvQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUlNdOiB7bWFzazogJyszODEjIy0jIyMtIyMjIycsIG5hbWU6ICfQodC10YDQsdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUlVdOiB7bWFzazogJys3IyMjICMjIy0jIy0jIycsIG5hbWU6ICfQoNC+0YHRgdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuUlddOiB7bWFzazogJysyNTAoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cg0YPQsNC90LTQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TQV06IHttYXNrOiAnKzk2NiMtIyMjIy0jIyMjJywgbmFtZTogJ9Ch0LDRg9C00L7QstGB0LrQsNGPINCQ0YDQsNCy0LjRjyAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0JdOiB7bWFzazogJys2NzcjIyMtIyMjIycsIG5hbWU6ICfQodC+0LvQvtC80L7QvdC+0LLRiyDQntGB0YLRgNC+0LLQsCAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0NdOiB7bWFzazogJysyNDgjLSMjIy0jIyMnLCBuYW1lOiAn0KHQtdC50YjQtdC70YsnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0RdOiB7bWFzazogJysyNDkjIy0jIyMtIyMjIycsIG5hbWU6ICfQodGD0LTQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNFXToge21hc2s6ICcrNDYjIy0jIyMtIyMjIycsIG5hbWU6ICfQqNCy0LXRhtC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0ddOiB7bWFzazogJys2NSMjIyMtIyMjIycsIG5hbWU6ICfQodC40L3Qs9Cw0L/Rg9GAJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNIXToge21hc2s6ICcrMjkwIyMjIycsIG5hbWU6ICfQntGB0YLRgNC+0LIg0KHQstGP0YLQvtC5INCV0LvQtdC90YsnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0ldOiB7bWFzazogJyszODYjIy0jIyMtIyMjJywgbmFtZTogJ9Ch0LvQvtCy0LXQvdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0tdOiB7bWFzazogJys0MjEoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Ch0LvQvtCy0LDQutC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0xdOiB7bWFzazogJysyMzIjIy0jIyMjIyMnLCBuYW1lOiAn0KHRjNC10YDRgNCwLdCb0LXQvtC90LUnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU01dOiB7bWFzazogJyszNzgjIyMjLSMjIyMjIycsIG5hbWU6ICfQodCw0L0t0JzQsNGA0LjQvdC+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNOXToge21hc2s6ICcrMjIxIyMtIyMjLSMjIyMnLCBuYW1lOiAn0KHQtdC90LXQs9Cw0LsnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU09dOiB7bWFzazogJysyNTIjIy0jIyMtIyMjJywgbmFtZTogJ9Ch0L7QvNCw0LvQuCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TUl06IHttYXNrOiAnKzU5NyMjIy0jIyMjJywgbmFtZTogJ9Ch0YPRgNC40L3QsNC8ICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TVF06IHttYXNrOiAnKzIzOSMjLSMjIyMjJywgbmFtZTogJ9Ch0LDQvS3QotC+0LzQtSDQuCDQn9GA0LjQvdGB0LjQv9C4J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNWXToge21hc2s6ICcrNTAzIyMtIyMtIyMjIycsIG5hbWU6ICfQodCw0LvRjNCy0LDQtNC+0YAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1hdOiB7bWFzazogJysxKDcyMSkgIyMjLSMjIyMnLCBuYW1lOiAn0KHQuNC90YIt0JzQsNGA0YLQtdC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlNZXToge1xuICAgICAgICBtYXNrOiAnKzk2MyMjLSMjIyMtIyMjJyxcbiAgICAgICAgbmFtZTogJ9Ch0LjRgNC40LnRgdC60LDRjyDQsNGA0LDQsdGB0LrQsNGPINGA0LXRgdC/0YPQsdC70LjQutCwJyxcbiAgICB9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TWl06IHttYXNrOiAnKzI2OCMjLSMjLSMjIyMnLCBuYW1lOiAn0KHQstCw0LfQuNC70LXQvdC0J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRDXToge21hc2s6ICcrMSg2NDkpICMjIy0jIyMjJywgbmFtZTogJ9Ci0ZHRgNC60YEg0Lgg0JrQsNC50LrQvtGBJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlREXToge21hc2s6ICcrMjM1IyMtIyMtIyMtIyMnLCBuYW1lOiAn0KfQsNC0J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRHXToge21hc2s6ICcrMjI4IyMtIyMjLSMjIycsIG5hbWU6ICfQotC+0LPQvid9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5USF06IHttYXNrOiAnKzY2IyMtIyMjLSMjIyMnLCBuYW1lOiAn0KLQsNC40LvQsNC90LQgJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRKXToge21hc2s6ICcrOTkyIyMtIyMjLSMjIyMnLCBuYW1lOiAn0KLQsNC00LbQuNC60LjRgdGC0LDQvSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UTF06IHttYXNrOiAnKzY3MCMjIy0jIyMjIycsIG5hbWU6ICfQktC+0YHRgtC+0YfQvdGL0Lkg0KLQuNC80L7RgCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UTV06IHttYXNrOiAnKzk5MyMtIyMjLSMjIyMnLCBuYW1lOiAn0KLRg9GA0LrQvNC10L3QuNGB0YLQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlROXToge21hc2s6ICcrMjE2IyMtIyMjLSMjIycsIG5hbWU6ICfQotGD0L3QuNGBJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRPXToge21hc2s6ICcrNjc2IyMjIyMnLCBuYW1lOiAn0KLQvtC90LPQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UUl06IHttYXNrOiAnKzkwKCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0KLRg9GA0YbQuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRUXToge21hc2s6ICcrMSg4NjgpICMjIy0jIyMjJywgbmFtZTogJ9Ci0YDQuNC90LjQtNCw0LQg0Lgg0KLQvtCx0LDQs9C+J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlRXXToge21hc2s6ICcrODg2Iy0jIyMjLSMjIyMnLCBuYW1lOiAn0KLQsNC50LLQsNC90YwnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVFpdOiB7bWFzazogJysyNTUjIy0jIyMtIyMjIycsIG5hbWU6ICfQotCw0L3Qt9Cw0L3QuNGPJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlVBXToge21hc2s6ICcrMzgwKCMjKSAjIyMtIyMtIyMnLCBuYW1lOiAn0KPQutGA0LDQuNC90LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVUddOiB7bWFzazogJysyNTYoIyMjKSAjIyMtIyMjJywgbmFtZTogJ9Cj0LPQsNC90LTQsCd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VU106IHttYXNrOiAnKzEoIyMjKSAjIyMtIyMjIycsIG5hbWU6ICfQodCo0JAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVVldOiB7bWFzazogJys1OTgjLSMjIy0jIy0jIycsIG5hbWU6ICfQo9GA0YPQs9Cy0LDQuSd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VWl06IHttYXNrOiAnKzk5OCMjLSMjIy0jIyMjJywgbmFtZTogJ9Cj0LfQsdC10LrQuNGB0YLQsNC9J30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlZDXToge21hc2s6ICcrMSg3ODQpICMjIy0jIyMjJywgbmFtZTogJ9Ch0LXQvdGCLdCS0LjQvdGB0LXQvdGCINC4INCT0YDQtdC90LDQtNC40L3Riyd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WRV06IHttYXNrOiAnKzU4KCMjIykgIyMjLSMjIyMnLCBuYW1lOiAn0JLQtdC90LXRgdGD0Y3Qu9CwJ30sXG4gICAgW1R1aUNvdW50cnlJc29Db2RlLlZHXToge1xuICAgICAgICBtYXNrOiAnKzEoMjg0KSMjIy0jIyMjJyxcbiAgICAgICAgbmFtZTogJ9CR0YDQuNGC0LDQvdGB0LrQuNC1INCS0LjRgNCz0LjQvdGB0LrQuNC1INC+0YHRgtGA0L7QstCwJyxcbiAgICB9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WTl06IHttYXNrOiAnKzg0KCMjIykgIyMjIy0jIyMnLCBuYW1lOiAn0JLRjNC10YLQvdCw0LwnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuVlVdOiB7bWFzazogJys2NzgjIy0jIyMjIycsIG5hbWU6ICfQktCw0L3Rg9Cw0YLRgyAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuV1NdOiB7bWFzazogJys2ODUjIy0jIyMjJywgbmFtZTogJ9Ch0LDQvNC+0LAnfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuWUVdOiB7bWFzazogJys5NjcjIyMtIyMjLSMjIycsIG5hbWU6ICfQmdC10LzQtdC9ICd9LFxuICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5aQV06IHttYXNrOiAnKzI3IyMtIyMjLSMjIyMnLCBuYW1lOiAn0K7QttC90L4t0JDRhNGA0LjQutCw0L3RgdC60LDRjyDQoNC10YHQvy4nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuWk1dOiB7bWFzazogJysyNjAjIy0jIyMtIyMjIycsIG5hbWU6ICfQl9Cw0LzQsdC40Y8nfSxcbiAgICBbVHVpQ291bnRyeUlzb0NvZGUuWlddOiB7bWFzazogJysyNjMjLSMjIyMjIycsIG5hbWU6ICfQl9C40LzQsdCw0LHQstC1J30sXG59O1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIHdpbGwgYmUgZGVsZXRlZCBzb29uXG4gKiBUT0RPOiByZW1vdmUgaW4gMy4wIChpbiBpdnkgY29tcGlsYXRpb24pXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBmdW5jdGlvbiBjb3VudHJpZXNNYXNrc1JlZHVjZXIoXG4gICAgYWNjOiBSZWNvcmQ8VHVpQ291bnRyeUlzb0NvZGUsIHN0cmluZz4sXG4gICAgW2NvdW50cnlJc29Db2RlLCB7bWFza31dOiBbc3RyaW5nLCB7bWFzazogc3RyaW5nfV0sXG4pOiBSZWNvcmQ8VHVpQ291bnRyeUlzb0NvZGUsIHN0cmluZz4ge1xuICAgIGFjY1tjb3VudHJ5SXNvQ29kZSBhcyBUdWlDb3VudHJ5SXNvQ29kZV0gPSBtYXNrO1xuXG4gICAgcmV0dXJuIGFjYztcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB3aWxsIGJlIGRlbGV0ZWQgc29vblxuICogVXNlIHRva2VuIGBUVUlfQ09VTlRSSUVTX01BU0tTYFxuICogVE9ETzogcmVtb3ZlIGluIDMuMFxuICovXG5leHBvcnQgY29uc3QgQ09VTlRSSUVTX01BU0tTID0gT2JqZWN0LmVudHJpZXM8Q291bnRyeT4oQ09VTlRSSUVTKS5yZWR1Y2UoXG4gICAgY291bnRyaWVzTWFza3NSZWR1Y2VyLFxuICAgIHt9IGFzIFJlY29yZDxUdWlDb3VudHJ5SXNvQ29kZSwgc3RyaW5nPixcbik7XG5cbmV4cG9ydCBjb25zdCBNQVNLX0FGVEVSX0NPREVfUkVHRVhQID0gL1xcKFsjXStcXCl8WyNcXC0gXS9nO1xuIl19
@@ -1,4 +1,8 @@
1
1
  import { getClipboardDataText } from '@taiga-ui/cdk';
2
+ /**
3
+ * @deprecated: use {@link tuiExtractValueFromEvent} instead
4
+ */
5
+ // eslint-disable-next-line @typescript-eslint/naming-convention
2
6
  export function extractValueFromEvent(event) {
3
7
  var _a;
4
8
  // TODO: iframe warning
@@ -6,4 +10,5 @@ export function extractValueFromEvent(event) {
6
10
  ? ((_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.getData('text/plain')) || ''
7
11
  : getClipboardDataText(event);
8
12
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC12YWx1ZS1mcm9tLWV2ZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLWludGVybmF0aW9uYWwvIiwic291cmNlcyI6WyJ1dGlscy9leHRyYWN0LXZhbHVlLWZyb20tZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxLQUFpQzs7SUFDbkUsdUJBQXVCO0lBQ3ZCLE9BQU8sS0FBSyxZQUFZLFNBQVM7UUFDN0IsQ0FBQyxDQUFDLE9BQUEsS0FBSyxDQUFDLFlBQVksMENBQUUsT0FBTyxDQUFDLFlBQVksTUFBSyxFQUFFO1FBQ2pELENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtnZXRDbGlwYm9hcmREYXRhVGV4dH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0VmFsdWVGcm9tRXZlbnQoZXZlbnQ6IERyYWdFdmVudCB8IENsaXBib2FyZEV2ZW50KTogc3RyaW5nIHtcbiAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgIHJldHVybiBldmVudCBpbnN0YW5jZW9mIERyYWdFdmVudFxuICAgICAgICA/IGV2ZW50LmRhdGFUcmFuc2Zlcj8uZ2V0RGF0YSgndGV4dC9wbGFpbicpIHx8ICcnXG4gICAgICAgIDogZ2V0Q2xpcGJvYXJkRGF0YVRleHQoZXZlbnQpO1xufVxuIl19
13
+ export const tuiExtractValueFromEvent = extractValueFromEvent;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC12YWx1ZS1mcm9tLWV2ZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLWludGVybmF0aW9uYWwvIiwic291cmNlcyI6WyJ1dGlscy9leHRyYWN0LXZhbHVlLWZyb20tZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5EOztHQUVHO0FBQ0gsZ0VBQWdFO0FBQ2hFLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxLQUFpQzs7SUFDbkUsdUJBQXVCO0lBQ3ZCLE9BQU8sS0FBSyxZQUFZLFNBQVM7UUFDN0IsQ0FBQyxDQUFDLE9BQUEsS0FBSyxDQUFDLFlBQVksMENBQUUsT0FBTyxDQUFDLFlBQVksTUFBSyxFQUFFO1FBQ2pELENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2dldENsaXBib2FyZERhdGFUZXh0fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZDogdXNlIHtAbGluayB0dWlFeHRyYWN0VmFsdWVGcm9tRXZlbnR9IGluc3RlYWRcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RWYWx1ZUZyb21FdmVudChldmVudDogRHJhZ0V2ZW50IHwgQ2xpcGJvYXJkRXZlbnQpOiBzdHJpbmcge1xuICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgcmV0dXJuIGV2ZW50IGluc3RhbmNlb2YgRHJhZ0V2ZW50XG4gICAgICAgID8gZXZlbnQuZGF0YVRyYW5zZmVyPy5nZXREYXRhKCd0ZXh0L3BsYWluJykgfHwgJydcbiAgICAgICAgOiBnZXRDbGlwYm9hcmREYXRhVGV4dChldmVudCk7XG59XG5cbmV4cG9ydCBjb25zdCB0dWlFeHRyYWN0VmFsdWVGcm9tRXZlbnQgPSBleHRyYWN0VmFsdWVGcm9tRXZlbnQ7XG4iXX0=
@@ -211,7 +211,7 @@ __decorate([
211
211
  TuiInputRangeComponent = TuiInputRangeComponent_1 = __decorate([
212
212
  Component({
213
213
  selector: 'tui-input-range',
214
- template: "<tui-wrapper\n class=\"t-wrapper\"\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered\"\n [invalid]=\"computedInvalid\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-input-number\n tuiTextfieldAppearance=\"none\"\n automation-id=\"tui-input-range__left-input\"\n class=\"t-left t-text-input\"\n [min]=\"min\"\n [max]=\"value[1]\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [postfix]=\"pluralizeMap && !showLeftValueContent ? (value[0] | i18nPlural: pluralizeMap) : ''\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldSize]=\"computedSize\"\n [tuiTextfieldLabelOutside]=\"legacyLabelOutside\"\n [ngModel]=\"value[0]\"\n (ngModelChange)=\"onInputLeft($event)\"\n (focusedChange)=\"onTextInputFocused($event, false)\"\n (keydown.arrowUp)=\"changeByStep($event, [1, 0])\"\n (keydown.arrowDown)=\"changeByStep($event, [-1, 0])\"\n >\n <ng-content></ng-content>\n <div\n *ngIf=\"showLeftValueContent\"\n polymorpheus-outlet\n [content]=\"minLabel ? legacyMinLabel : leftValueContent\"\n [context]=\"{$implicit: value[0]}\"\n ></div>\n </tui-input-number>\n\n <div class=\"t-right\">\n <tui-input-number\n tuiTextfieldAppearance=\"none\"\n automation-id=\"tui-input-range__right-input\"\n class=\"t-text-input\"\n [min]=\"value[0]\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldSize]=\"computedSize\"\n [tuiTextfieldLabelOutside]=\"legacyLabelOutside\"\n [ngModel]=\"value[1]\"\n (ngModelChange)=\"onInputRight($event)\"\n (focusedChange)=\"onTextInputFocused($event, true)\"\n (keydown.arrowUp)=\"changeByStep($event, [0, 1])\"\n (keydown.arrowDown)=\"changeByStep($event, [0, -1])\"\n >\n <div\n *ngIf=\"showRightValueContent\"\n polymorpheus-outlet\n [content]=\"maxLabel ? legacyMaxLabel : rightValueContent\"\n [context]=\"{$implicit: value[1]}\"\n ></div>\n </tui-input-number>\n\n <!-- TODO replace by postfix of the right InputNumber (after fix https://github.com/Tinkoff/taiga-ui/issues/1193) -->\n <span\n *ngIf=\"!showRightValueContent && pluralizeMap\"\n automation-id=\"tui-input-range__pluralize-right\"\n class=\"t-pluralize-right\"\n >\n &nbsp;{{value[1] | i18nPlural: pluralizeMap}}\n </span>\n </div>\n\n <tui-range\n class=\"t-slider\"\n [min]=\"min\"\n [max]=\"max\"\n [steps]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"keySteps\"\n [pluralize]=\"segmentsPluralizeMap\"\n [focusable]=\"false\"\n [disabled]=\"readOnly || disabled\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onRangeValue($event)\"\n (tuiPressedChange)=\"focusToTextInput()\"\n (activeThumbChange)=\"onActiveThumbChange($event)\"\n ></tui-range>\n</tui-wrapper>\n\n<!-- TODO: 3.0 remove -->\n<ng-template\n #legacyMinLabel\n let-value\n>\n <ng-container *ngIf=\"value === min\">{{minLabel}}</ng-container>\n <ng-container *ngIf=\"value !== min\">\n {{value}}&nbsp;{{value | i18nPlural: pluralizeMap ||\n pluralizeMapFallback}}\n </ng-container>\n</ng-template>\n\n<!-- TODO: 3.0 remove -->\n<ng-template\n #legacyMaxLabel\n let-value\n>\n <ng-container *ngIf=\"value === max\">{{maxLabel}}</ng-container>\n <ng-container *ngIf=\"value !== max\">\n {{value}}&nbsp;{{value | i18nPlural: pluralizeMap ||\n pluralizeMapFallback}}\n </ng-container>\n</ng-template>\n",
214
+ template: "<tui-wrapper\n class=\"t-wrapper\"\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered\"\n [invalid]=\"computedInvalid\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-input-number\n tuiTextfieldAppearance=\"none\"\n automation-id=\"tui-input-range__left-input\"\n class=\"t-left t-text-input\"\n [min]=\"min\"\n [max]=\"value[1]\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [postfix]=\"pluralizeMap && !showLeftValueContent ? (value[0] | i18nPlural: pluralizeMap) : ''\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldSize]=\"computedSize\"\n [tuiTextfieldLabelOutside]=\"legacyLabelOutside\"\n [ngModel]=\"value[0]\"\n (ngModelChange)=\"onInputLeft($event)\"\n (focusedChange)=\"onTextInputFocused($event, false)\"\n (keydown.arrowUp)=\"changeByStep($event, [1, 0])\"\n (keydown.arrowDown)=\"changeByStep($event, [-1, 0])\"\n >\n <ng-content></ng-content>\n <div\n *ngIf=\"showLeftValueContent\"\n polymorpheus-outlet\n [content]=\"minLabel ? legacyMinLabel : leftValueContent\"\n [context]=\"{$implicit: value[0]}\"\n ></div>\n </tui-input-number>\n\n <div class=\"t-right\">\n <tui-input-number\n tuiTextfieldAppearance=\"none\"\n automation-id=\"tui-input-range__right-input\"\n class=\"t-text-input\"\n [min]=\"value[0]\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldSize]=\"computedSize\"\n [tuiTextfieldLabelOutside]=\"legacyLabelOutside\"\n [ngModel]=\"value[1]\"\n (ngModelChange)=\"onInputRight($event)\"\n (focusedChange)=\"onTextInputFocused($event, true)\"\n (keydown.arrowUp)=\"changeByStep($event, [0, 1])\"\n (keydown.arrowDown)=\"changeByStep($event, [0, -1])\"\n >\n <div\n *ngIf=\"showRightValueContent\"\n polymorpheus-outlet\n [content]=\"maxLabel ? legacyMaxLabel : rightValueContent\"\n [context]=\"{$implicit: value[1]}\"\n ></div>\n </tui-input-number>\n\n <!-- TODO replace by postfix of the right InputNumber (after fix https://github.com/Tinkoff/taiga-ui/issues/1193) -->\n <span\n *ngIf=\"!showRightValueContent && pluralizeMap\"\n automation-id=\"tui-input-range__pluralize-right\"\n class=\"t-pluralize-right\"\n >\n &nbsp;{{ value[1] | i18nPlural: pluralizeMap }}\n </span>\n </div>\n\n <tui-range\n class=\"t-slider\"\n [min]=\"min\"\n [max]=\"max\"\n [steps]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"keySteps\"\n [pluralize]=\"segmentsPluralizeMap\"\n [focusable]=\"false\"\n [disabled]=\"readOnly || disabled\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onRangeValue($event)\"\n (tuiPressedChange)=\"focusToTextInput()\"\n (activeThumbChange)=\"onActiveThumbChange($event)\"\n ></tui-range>\n</tui-wrapper>\n\n<!-- TODO: 3.0 remove -->\n<ng-template\n #legacyMinLabel\n let-value\n>\n <ng-container *ngIf=\"value === min\">{{ minLabel }}</ng-container>\n <ng-container *ngIf=\"value !== min\">\n {{ value }}&nbsp;{{ value | i18nPlural: pluralizeMap || pluralizeMapFallback }}\n </ng-container>\n</ng-template>\n\n<!-- TODO: 3.0 remove -->\n<ng-template\n #legacyMaxLabel\n let-value\n>\n <ng-container *ngIf=\"value === max\">{{ maxLabel }}</ng-container>\n <ng-container *ngIf=\"value !== max\">\n {{ value }}&nbsp;{{ value | i18nPlural: pluralizeMap || pluralizeMapFallback }}\n </ng-container>\n</ng-template>\n",
215
215
  changeDetection: ChangeDetectionStrategy.OnPush,
216
216
  providers: [
217
217
  {
@@ -264,4 +264,4 @@ TuiTextfieldAppearanceDirective = __decorate([
264
264
  })
265
265
  ], TuiTextfieldAppearanceDirective);
266
266
  export { TuiTextfieldAppearanceDirective };
267
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXJhbmdlLyIsInNvdXJjZXMiOlsiaW5wdXQtcmFuZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixTQUFTLEVBQ1QsSUFBSSxFQUNKLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxLQUFLLEVBQ0wsV0FBVyxFQUNYLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsS0FBSyxFQUNMLDJCQUEyQixFQUMzQixhQUFhLEVBRWIsY0FBYyxHQUdqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLDZCQUE2QixFQUM3Qix3QkFBd0IsRUFDeEIsZ0NBQWdDLEVBQ2hDLFdBQVcsRUFDWCxRQUFRLEVBQ1Isc0JBQXNCLEdBQ3pCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLHNCQUFzQixFQUFFLGdCQUFnQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDaEYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDOUUsT0FBTyxFQUFDLG9CQUFvQixFQUFFLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFJL0QsV0FBVztBQXlCWCxJQUFhLHNCQUFzQjtBQUpuQzs7O0dBR0c7QUFDSCxNQUFhLHNCQUNULFNBQVEsc0JBQXdDO0lB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QUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFFakIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN6QixXQUFBLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUVyQixXQUFBLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBRWhDLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUE7SUFFeEMsV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUNWLFdBQUEsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7R0EzRHhCLHNCQUFzQixDQTJPbEM7U0EzT1ksc0JBQXNCO0FBNk9uQyxNQUFNLFVBQVUsc0NBQXNDLENBQUMsRUFDbkQsYUFBYSxHQUNKO0lBQ1QsT0FBTyxhQUFhLENBQUMsWUFBWSxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDaEUsQ0FBQztBQVlELElBQWEsK0JBQStCLEdBQTVDLE1BQWEsK0JBQStCO0NBQUcsQ0FBQTtBQUFsQywrQkFBK0I7SUFWM0MsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLDBCQUEwQjtRQUNwQyxTQUFTLEVBQUU7WUFDUDtnQkFDSSxPQUFPLEVBQUUsd0JBQXdCO2dCQUNqQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7Z0JBQ2xCLFVBQVUsRUFBRSxzQ0FBc0M7YUFDckQ7U0FDSjtLQUNKLENBQUM7R0FDVywrQkFBK0IsQ0FBRztTQUFsQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIEVNUFRZX1FVRVJZLFxuICAgIGlzTmF0aXZlRm9jdXNlZCxcbiAgICBpc05hdGl2ZUZvY3VzZWRJbixcbiAgICByb3VuZCxcbiAgICBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgVFVJX0lTX01PQklMRSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlOYXRpdmVGb2N1c2FibGVFbGVtZW50LFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkLFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9URVhURklFTERfQVBQRUFSQU5DRSxcbiAgICBUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUdWlEZWNpbWFsVCxcbiAgICBUdWlTaXplTCxcbiAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0VHVpSW5wdXRTbGlkZXIsIHF1YW50dW1Bc3NlcnRpb259IGZyb20gJ0B0YWlnYS11aS9raXQvYWJzdHJhY3QnO1xuaW1wb3J0IHtUdWlJbnB1dE51bWJlckNvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XG5pbXBvcnQge1R1aU5ld1JhbmdlRGlyZWN0aXZlLCBUdWlSYW5nZUNvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3JhbmdlJztcbmltcG9ydCB7VFVJX0ZMT0FUSU5HX1BSRUNJU0lPTn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlLZXlTdGVwc30gZnJvbSAnQHRhaWdhLXVpL2tpdC90eXBlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbi8vIEBkeW5hbWljXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1yYW5nZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXJhbmdlLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lucHV0LXJhbmdlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpSW5wdXRSYW5nZUNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICAvKipcbiAgICAgICAgICogVE9ETzogMy4wIGRlbGV0ZSBpdFxuICAgICAgICAgKiBEb250IGZvcmdldCB0byBjbGVhciBodG1sLXRhZ3NcbiAgICAgICAgICovXG4gICAgICAgICdbY2xhc3MuX3Nob3ctdGlja3MtbGFiZWxzXSc6ICchaXNOZXcnLFxuICAgIH0sXG59KVxuLyoqXG4gKiBgQWJzdHJhY3RUdWlJbnB1dFNsaWRlcmAgaW5jbHVkZXMgYWxsIGxlZ2FjeSBjb2RlIChpdCBjYW4gYmUgZGVsZXRlZCBpbiB2My4wKVxuICogVE9ETyByZXBsYWNlIGBleHRlbmRzIEFic3RyYWN0VHVpSW5wdXRTbGlkZXI8W251bWJlciwgbnVtYmVyXT5gIGJ5IGBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxbbnVtYmVyLCBudW1iZXJdPiBpbXBsZW1lbnRzIFR1aVdpdGhPcHRpb25hbE1pbk1heDxudW1iZXI+YFxuICovXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRSYW5nZUNvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnB1dFNsaWRlcjxbbnVtYmVyLCBudW1iZXJdPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZHJlbihUdWlJbnB1dE51bWJlckNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0TnVtYmVyUmVmczogUXVlcnlMaXN0PFR1aUlucHV0TnVtYmVyQ29tcG9uZW50PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZChUdWlSYW5nZUNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJhbmdlUmVmOiBUdWlSYW5nZUNvbXBvbmVudCB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbiA9IDA7XG5cbiAgICAvKiBUT0RPOiBtYWtlIGAxMDBgIGFzIGRlZmF1bHQgdmFsdWUgKGxpa2UgaW4gbmF0aXZlIHNsaWRlcnMpICovXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1heCA9IEluZmluaXR5O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AocXVhbnR1bUFzc2VydGlvbiwgJ1F1YW50dW0gbXVzdCBiZSBwb3NpdGl2ZScpXG4gICAgcXVhbnR1bSA9IDE7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc3RlcHMgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlZ21lbnRzID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBrZXlTdGVwczogVHVpS2V5U3RlcHMgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBsZWZ0VmFsdWVDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPj4gPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICByaWdodFZhbHVlQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+ID0gJyc7XG5cbiAgICBsYXN0QWN0aXZlU2lkZTogJ2xlZnQnIHwgJ3JpZ2h0JyA9ICdsZWZ0JztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX0lTX01PQklMRSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpc01vYmlsZTogYm9vbGVhbixcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UpXG4gICAgICAgIHJlYWRvbmx5IGFwcGVhcmFuY2U6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTmV3UmFuZ2VEaXJlY3RpdmUpXG4gICAgICAgIHJlYWRvbmx5IGlzTmV3OiBUdWlOZXdSYW5nZURpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbGVmdEZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dE51bWJlclJlZnMuZmlyc3Q/Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmlnaHRGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXROdW1iZXJSZWZzLmxhc3Q/Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBUdWlOYXRpdmVGb2N1c2FibGVFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5sZWZ0Rm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLnJpZ2h0Rm9jdXNhYmxlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGlzTmF0aXZlRm9jdXNlZEluKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBnZXQgc2hvd0xlZnRWYWx1ZUNvbnRlbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBCb29sZWFuKFxuICAgICAgICAgICAgKHRoaXMubWluTGFiZWwgfHwgdGhpcy5sZWZ0VmFsdWVDb250ZW50KSAmJlxuICAgICAgICAgICAgICAgICFpc05hdGl2ZUZvY3VzZWQodGhpcy5sZWZ0Rm9jdXNhYmxlRWxlbWVudCkgJiZcbiAgICAgICAgICAgICAgICAhKHRoaXMucmFuZ2VSZWY/LmZvY3VzZWQgJiYgdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ2xlZnQnKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgc2hvd1JpZ2h0VmFsdWVDb250ZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbihcbiAgICAgICAgICAgICh0aGlzLm1heExhYmVsIHx8IHRoaXMucmlnaHRWYWx1ZUNvbnRlbnQpICYmXG4gICAgICAgICAgICAgICAgIWlzTmF0aXZlRm9jdXNlZCh0aGlzLnJpZ2h0Rm9jdXNhYmxlRWxlbWVudCkgJiZcbiAgICAgICAgICAgICAgICAhKHRoaXMucmFuZ2VSZWY/LmZvY3VzZWQgJiYgdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ3JpZ2h0JyksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHByZWNpc2lvbigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkKHRoaXMucXVhbnR1bSkubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBkZWNpbWFsKCk6IFR1aURlY2ltYWxUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJlY2lzaW9uID8gJ25vdC16ZXJvJyA6ICduZXZlcic7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkU3RlcHMoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RlcHMgfHwgKHRoaXMubWF4IC0gdGhpcy5taW4pIC8gdGhpcy5xdWFudHVtO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZFNpemUoKTogVHVpU2l6ZUwge1xuICAgICAgICByZXR1cm4gdGhpcy5pc05ldyAmJiB0aGlzLmNvbnRyb2xsZXIuc2l6ZSAhPT0gJ3MnXG4gICAgICAgICAgICA/IHRoaXMuY29udHJvbGxlci5zaXplXG4gICAgICAgICAgICA6IHRoaXMuc2l6ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9sYWJlbC1vdXRzaWRlJylcbiAgICBnZXQgbGVnYWN5TGFiZWxPdXRzaWRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc05ldyA/IHRoaXMuY29udHJvbGxlci5sYWJlbE91dHNpZGUgOiB0aGlzLmNvbXB1dGVkU2l6ZSA9PT0gJ20nO1xuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG4gICAgfVxuXG4gICAgb25UZXh0SW5wdXRGb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4sIHJpZ2h0OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChmb2N1c2VkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbbGVmdFRleHRJbnB1dFJlZiwgcmlnaHRUZXh0SW5wdXRSZWZdID0gdGhpcy5pbnB1dE51bWJlclJlZnM7XG4gICAgICAgIGNvbnN0IGlucHV0UmVmID0gcmlnaHQgPyByaWdodFRleHRJbnB1dFJlZiA6IGxlZnRUZXh0SW5wdXRSZWY7XG4gICAgICAgIGNvbnN0IHZhbHVlSW5kZXggPSByaWdodCA/IDEgOiAwO1xuXG4gICAgICAgIGlmICghaW5wdXRSZWYubmF0aXZlVmFsdWUgfHwgaW5wdXRSZWYudmFsdWUgIT09IHRoaXMudmFsdWVbdmFsdWVJbmRleF0pIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVGV4dElucHV0VmFsdWUodGhpcy5zYWZlQ3VycmVudFZhbHVlW3ZhbHVlSW5kZXhdLCByaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGFuZ2VCeVN0ZXAoXG4gICAgICAgIGV2ZW50OiBFdmVudCB8IEtleWJvYXJkRXZlbnQsXG4gICAgICAgIFtsZWZ0Q29lZmZpY2llbnQsIHJpZ2h0Q29lZmZpY2llbnRdOiBbbnVtYmVyLCBudW1iZXJdLFxuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZWFkT25seSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMudmFsdWVHdWFyZChbXG4gICAgICAgICAgICB0aGlzLnZhbHVlWzBdICsgbGVmdENvZWZmaWNpZW50ICogdGhpcy5zdGVwLFxuICAgICAgICAgICAgdGhpcy52YWx1ZVsxXSArIHJpZ2h0Q29lZmZpY2llbnQgKiB0aGlzLnN0ZXAsXG4gICAgICAgIF0pO1xuICAgICAgICBjb25zdCBsZWZ0VmFsdWVDaGFuZ2VkID0gbmV3VmFsdWVbMF0gIT09IHRoaXMudmFsdWVbMF07XG4gICAgICAgIGNvbnN0IHJpZ2h0VmFsdWVDaGFuZ2VkID0gbmV3VmFsdWVbMV0gIT09IHRoaXMudmFsdWVbMV07XG5cbiAgICAgICAgaWYgKGxlZnRWYWx1ZUNoYW5nZWQgfHwgcmlnaHRWYWx1ZUNoYW5nZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2FmZWx5VXBkYXRlVmFsdWUobmV3VmFsdWUpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVUZXh0SW5wdXRWYWx1ZShcbiAgICAgICAgICAgICAgICBuZXdWYWx1ZVtyaWdodFZhbHVlQ2hhbmdlZCA/IDEgOiAwXSxcbiAgICAgICAgICAgICAgICByaWdodFZhbHVlQ2hhbmdlZCxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbklucHV0TGVmdCh2YWx1ZTogbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNhZmVseVVwZGF0ZVZhbHVlKFt2YWx1ZSA/PyB0aGlzLnNhZmVDdXJyZW50VmFsdWVbMF0sIHRoaXMudmFsdWVbMV1dKTtcbiAgICB9XG5cbiAgICBvbklucHV0UmlnaHQodmFsdWU6IG51bWJlciB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zYWZlbHlVcGRhdGVWYWx1ZShbdGhpcy52YWx1ZVswXSwgdmFsdWUgPz8gdGhpcy5zYWZlQ3VycmVudFZhbHVlWzFdXSk7XG4gICAgfVxuXG4gICAgb25SYW5nZVZhbHVlKHZhbHVlOiBbbnVtYmVyLCBudW1iZXJdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2FmZWx5VXBkYXRlVmFsdWUodmFsdWUpO1xuXG4gICAgICAgIGNvbnN0IHJpZ2h0VmFsdWVDaGFuZ2VkID0gdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ3JpZ2h0JztcblxuICAgICAgICB0aGlzLnVwZGF0ZVRleHRJbnB1dFZhbHVlKFxuICAgICAgICAgICAgdGhpcy52YWx1ZVtyaWdodFZhbHVlQ2hhbmdlZCA/IDEgOiAwXSxcbiAgICAgICAgICAgIHJpZ2h0VmFsdWVDaGFuZ2VkLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGZvY3VzVG9UZXh0SW5wdXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPVxuICAgICAgICAgICAgdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ2xlZnQnXG4gICAgICAgICAgICAgICAgPyB0aGlzLmxlZnRGb2N1c2FibGVFbGVtZW50XG4gICAgICAgICAgICAgICAgOiB0aGlzLnJpZ2h0Rm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICBpZiAoIXRoaXMuaXNNb2JpbGUgJiYgZWxlbWVudCkge1xuICAgICAgICAgICAgZWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3RpdmVUaHVtYkNoYW5nZShhY3RpdmVUaHVtYjogJ3JpZ2h0JyB8ICdsZWZ0Jyk6IHZvaWQge1xuICAgICAgICB0aGlzLmxhc3RBY3RpdmVTaWRlID0gYWN0aXZlVGh1bWI7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgICAgIHJldHVybiBbMCwgMF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzYWZlbHlVcGRhdGVWYWx1ZSh2YWx1ZTogW251bWJlciwgbnVtYmVyXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWVHdWFyZCh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsdWVHdWFyZChbbGVmdFZhbHVlLCByaWdodFZhbHVlXTogW251bWJlciwgbnVtYmVyXSk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCBsZWZ0Q2FsaWJyYXRlZFZhbHVlID0gdGhpcy5jYWxpYnJhdGUobGVmdFZhbHVlKTtcbiAgICAgICAgY29uc3QgcmlnaHRDYWxpYnJhdGVkVmFsdWUgPSB0aGlzLmNhbGlicmF0ZShyaWdodFZhbHVlKTtcblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgTWF0aC5taW4obGVmdENhbGlicmF0ZWRWYWx1ZSwgdGhpcy52YWx1ZVsxXSksXG4gICAgICAgICAgICBNYXRoLm1heChyaWdodENhbGlicmF0ZWRWYWx1ZSwgdGhpcy52YWx1ZVswXSksXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxpYnJhdGUodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHJvdW5kZWRWYWx1ZSA9IHJvdW5kKFxuICAgICAgICAgICAgTWF0aC5yb3VuZCh2YWx1ZSAvIHRoaXMucXVhbnR1bSkgKiB0aGlzLnF1YW50dW0sXG4gICAgICAgICAgICBUVUlfRkxPQVRJTkdfUFJFQ0lTSU9OLFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBjbGFtcChyb3VuZGVkVmFsdWUsIHRoaXMubWluLCB0aGlzLm1heCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVUZXh0SW5wdXRWYWx1ZSh2YWx1ZTogbnVtYmVyLCByaWdodDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCBbbGVmdElucHV0UmVmLCByaWdodElucHV0UmVmXSA9IHRoaXMuaW5wdXROdW1iZXJSZWZzO1xuICAgICAgICBjb25zdCB0ZXh0SW5wdXRSZWYgPSByaWdodCA/IHJpZ2h0SW5wdXRSZWYgOiBsZWZ0SW5wdXRSZWY7XG5cbiAgICAgICAgaWYgKHRleHRJbnB1dFJlZikge1xuICAgICAgICAgICAgdGV4dElucHV0UmVmLm5hdGl2ZVZhbHVlID0gdGV4dElucHV0UmVmLmdldEZvcm1hdHRlZFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aVRleHRmaWVsZEFwcGVhcmFuY2VEaXJlY3RpdmVGYWN0b3J5KHtcbiAgICBuYXRpdmVFbGVtZW50LFxufTogRWxlbWVudFJlZik6IHN0cmluZyB7XG4gICAgcmV0dXJuIG5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0dWlUZXh0ZmllbGRBcHBlYXJhbmNlJyk7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3R1aVRleHRmaWVsZEFwcGVhcmFuY2VdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFLFxuICAgICAgICAgICAgZGVwczogW0VsZW1lbnRSZWZdLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogdHVpVGV4dGZpZWxkQXBwZWFyYW5jZURpcmVjdGl2ZUZhY3RvcnksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQXBwZWFyYW5jZURpcmVjdGl2ZSB7fVxuIl19
267
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXJhbmdlLyIsInNvdXJjZXMiOlsiaW5wdXQtcmFuZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixTQUFTLEVBQ1QsSUFBSSxFQUNKLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxLQUFLLEVBQ0wsV0FBVyxFQUNYLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsS0FBSyxFQUNMLDJCQUEyQixFQUMzQixhQUFhLEVBRWIsY0FBYyxHQUdqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLDZCQUE2QixFQUM3Qix3QkFBd0IsRUFDeEIsZ0NBQWdDLEVBQ2hDLFdBQVcsRUFDWCxRQUFRLEVBQ1Isc0JBQXNCLEdBQ3pCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLHNCQUFzQixFQUFFLGdCQUFnQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDaEYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDOUUsT0FBTyxFQUFDLG9CQUFvQixFQUFFLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFJL0QsV0FBVztBQXlCWCxJQUFhLHNCQUFzQjtBQUpuQzs7O0dBR0c7QUFDSCxNQUFhLHNCQUNULFNBQVEsc0JBQXdDO0lB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QUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFFakIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN6QixXQUFBLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUVyQixXQUFBLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBRWhDLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUE7SUFFeEMsV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUNWLFdBQUEsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7R0EzRHhCLHNCQUFzQixDQTJPbEM7U0EzT1ksc0JBQXNCO0FBNk9uQyxNQUFNLFVBQVUsc0NBQXNDLENBQUMsRUFDbkQsYUFBYSxHQUNKO0lBQ1QsT0FBTyxhQUFhLENBQUMsWUFBWSxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDaEUsQ0FBQztBQVlELElBQWEsK0JBQStCLEdBQTVDLE1BQWEsK0JBQStCO0NBQUcsQ0FBQTtBQUFsQywrQkFBK0I7SUFWM0MsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLDBCQUEwQjtRQUNwQyxTQUFTLEVBQUU7WUFDUDtnQkFDSSxPQUFPLEVBQUUsd0JBQXdCO2dCQUNqQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7Z0JBQ2xCLFVBQVUsRUFBRSxzQ0FBc0M7YUFDckQ7U0FDSjtLQUNKLENBQUM7R0FDVywrQkFBK0IsQ0FBRztTQUFsQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIEVNUFRZX1FVRVJZLFxuICAgIGlzTmF0aXZlRm9jdXNlZCxcbiAgICBpc05hdGl2ZUZvY3VzZWRJbixcbiAgICByb3VuZCxcbiAgICBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgVFVJX0lTX01PQklMRSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlOYXRpdmVGb2N1c2FibGVFbGVtZW50LFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkLFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9URVhURklFTERfQVBQRUFSQU5DRSxcbiAgICBUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUdWlEZWNpbWFsVCxcbiAgICBUdWlTaXplTCxcbiAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0VHVpSW5wdXRTbGlkZXIsIHF1YW50dW1Bc3NlcnRpb259IGZyb20gJ0B0YWlnYS11aS9raXQvYWJzdHJhY3QnO1xuaW1wb3J0IHtUdWlJbnB1dE51bWJlckNvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XG5pbXBvcnQge1R1aU5ld1JhbmdlRGlyZWN0aXZlLCBUdWlSYW5nZUNvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3JhbmdlJztcbmltcG9ydCB7VFVJX0ZMT0FUSU5HX1BSRUNJU0lPTn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlLZXlTdGVwc30gZnJvbSAnQHRhaWdhLXVpL2tpdC90eXBlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbi8vIEBkeW5hbWljXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1yYW5nZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXJhbmdlLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lucHV0LXJhbmdlLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpSW5wdXRSYW5nZUNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICAvKipcbiAgICAgICAgICogVE9ETzogMy4wIGRlbGV0ZSBpdFxuICAgICAgICAgKiBEb250IGZvcmdldCB0byBjbGVhciBodG1sLXRhZ3NcbiAgICAgICAgICovXG4gICAgICAgICdbY2xhc3MuX3Nob3ctdGlja3MtbGFiZWxzXSc6ICchaXNOZXcnLFxuICAgIH0sXG59KVxuLyoqXG4gKiBgQWJzdHJhY3RUdWlJbnB1dFNsaWRlcmAgaW5jbHVkZXMgYWxsIGxlZ2FjeSBjb2RlIChpdCBjYW4gYmUgZGVsZXRlZCBpbiB2My4wKVxuICogVE9ETyByZXBsYWNlIGBleHRlbmRzIEFic3RyYWN0VHVpSW5wdXRTbGlkZXI8W251bWJlciwgbnVtYmVyXT5gIGJ5IGBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxbbnVtYmVyLCBudW1iZXJdPiBpbXBsZW1lbnRzIFR1aVdpdGhPcHRpb25hbE1pbk1heDxudW1iZXI+YFxuICovXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRSYW5nZUNvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnB1dFNsaWRlcjxbbnVtYmVyLCBudW1iZXJdPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZHJlbihUdWlJbnB1dE51bWJlckNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0TnVtYmVyUmVmczogUXVlcnlMaXN0PFR1aUlucHV0TnVtYmVyQ29tcG9uZW50PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZChUdWlSYW5nZUNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJhbmdlUmVmOiBUdWlSYW5nZUNvbXBvbmVudCB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbiA9IDA7XG5cbiAgICAvKiBUT0RPOiBtYWtlIGAxMDBgIGFzIGRlZmF1bHQgdmFsdWUgKGxpa2UgaW4gbmF0aXZlIHNsaWRlcnMpICovXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1heCA9IEluZmluaXR5O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AocXVhbnR1bUFzc2VydGlvbiwgJ1F1YW50dW0gbXVzdCBiZSBwb3NpdGl2ZScpXG4gICAgcXVhbnR1bSA9IDE7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc3RlcHMgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlZ21lbnRzID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBrZXlTdGVwczogVHVpS2V5U3RlcHMgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBsZWZ0VmFsdWVDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPj4gPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICByaWdodFZhbHVlQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+ID0gJyc7XG5cbiAgICBsYXN0QWN0aXZlU2lkZTogJ2xlZnQnIHwgJ3JpZ2h0JyA9ICdsZWZ0JztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX0lTX01PQklMRSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpc01vYmlsZTogYm9vbGVhbixcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UpXG4gICAgICAgIHJlYWRvbmx5IGFwcGVhcmFuY2U6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTmV3UmFuZ2VEaXJlY3RpdmUpXG4gICAgICAgIHJlYWRvbmx5IGlzTmV3OiBUdWlOZXdSYW5nZURpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbGVmdEZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dE51bWJlclJlZnMuZmlyc3Q/Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmlnaHRGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXROdW1iZXJSZWZzLmxhc3Q/Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBUdWlOYXRpdmVGb2N1c2FibGVFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5sZWZ0Rm9jdXNhYmxlRWxlbWVudCB8fCB0aGlzLnJpZ2h0Rm9jdXNhYmxlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGlzTmF0aXZlRm9jdXNlZEluKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBnZXQgc2hvd0xlZnRWYWx1ZUNvbnRlbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBCb29sZWFuKFxuICAgICAgICAgICAgKHRoaXMubWluTGFiZWwgfHwgdGhpcy5sZWZ0VmFsdWVDb250ZW50KSAmJlxuICAgICAgICAgICAgICAgICFpc05hdGl2ZUZvY3VzZWQodGhpcy5sZWZ0Rm9jdXNhYmxlRWxlbWVudCkgJiZcbiAgICAgICAgICAgICAgICAhKHRoaXMucmFuZ2VSZWY/LmZvY3VzZWQgJiYgdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ2xlZnQnKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgc2hvd1JpZ2h0VmFsdWVDb250ZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbihcbiAgICAgICAgICAgICh0aGlzLm1heExhYmVsIHx8IHRoaXMucmlnaHRWYWx1ZUNvbnRlbnQpICYmXG4gICAgICAgICAgICAgICAgIWlzTmF0aXZlRm9jdXNlZCh0aGlzLnJpZ2h0Rm9jdXNhYmxlRWxlbWVudCkgJiZcbiAgICAgICAgICAgICAgICAhKHRoaXMucmFuZ2VSZWY/LmZvY3VzZWQgJiYgdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ3JpZ2h0JyksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHByZWNpc2lvbigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkKHRoaXMucXVhbnR1bSkubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBkZWNpbWFsKCk6IFR1aURlY2ltYWxUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJlY2lzaW9uID8gJ25vdC16ZXJvJyA6ICduZXZlcic7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkU3RlcHMoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RlcHMgfHwgKHRoaXMubWF4IC0gdGhpcy5taW4pIC8gdGhpcy5xdWFudHVtO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZFNpemUoKTogVHVpU2l6ZUwge1xuICAgICAgICByZXR1cm4gdGhpcy5pc05ldyAmJiB0aGlzLmNvbnRyb2xsZXIuc2l6ZSAhPT0gJ3MnXG4gICAgICAgICAgICA/IHRoaXMuY29udHJvbGxlci5zaXplXG4gICAgICAgICAgICA6IHRoaXMuc2l6ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9sYWJlbC1vdXRzaWRlJylcbiAgICBnZXQgbGVnYWN5TGFiZWxPdXRzaWRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc05ldyA/IHRoaXMuY29udHJvbGxlci5sYWJlbE91dHNpZGUgOiB0aGlzLmNvbXB1dGVkU2l6ZSA9PT0gJ20nO1xuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG4gICAgfVxuXG4gICAgb25UZXh0SW5wdXRGb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4sIHJpZ2h0OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChmb2N1c2VkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbbGVmdFRleHRJbnB1dFJlZiwgcmlnaHRUZXh0SW5wdXRSZWZdID0gdGhpcy5pbnB1dE51bWJlclJlZnM7XG4gICAgICAgIGNvbnN0IGlucHV0UmVmID0gcmlnaHQgPyByaWdodFRleHRJbnB1dFJlZiA6IGxlZnRUZXh0SW5wdXRSZWY7XG4gICAgICAgIGNvbnN0IHZhbHVlSW5kZXggPSByaWdodCA/IDEgOiAwO1xuXG4gICAgICAgIGlmICghaW5wdXRSZWYubmF0aXZlVmFsdWUgfHwgaW5wdXRSZWYudmFsdWUgIT09IHRoaXMudmFsdWVbdmFsdWVJbmRleF0pIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVGV4dElucHV0VmFsdWUodGhpcy5zYWZlQ3VycmVudFZhbHVlW3ZhbHVlSW5kZXhdLCByaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGFuZ2VCeVN0ZXAoXG4gICAgICAgIGV2ZW50OiBFdmVudCB8IEtleWJvYXJkRXZlbnQsXG4gICAgICAgIFtsZWZ0Q29lZmZpY2llbnQsIHJpZ2h0Q29lZmZpY2llbnRdOiBbbnVtYmVyLCBudW1iZXJdLFxuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZWFkT25seSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMudmFsdWVHdWFyZChbXG4gICAgICAgICAgICB0aGlzLnZhbHVlWzBdICsgbGVmdENvZWZmaWNpZW50ICogdGhpcy5zdGVwLFxuICAgICAgICAgICAgdGhpcy52YWx1ZVsxXSArIHJpZ2h0Q29lZmZpY2llbnQgKiB0aGlzLnN0ZXAsXG4gICAgICAgIF0pO1xuICAgICAgICBjb25zdCBsZWZ0VmFsdWVDaGFuZ2VkID0gbmV3VmFsdWVbMF0gIT09IHRoaXMudmFsdWVbMF07XG4gICAgICAgIGNvbnN0IHJpZ2h0VmFsdWVDaGFuZ2VkID0gbmV3VmFsdWVbMV0gIT09IHRoaXMudmFsdWVbMV07XG5cbiAgICAgICAgaWYgKGxlZnRWYWx1ZUNoYW5nZWQgfHwgcmlnaHRWYWx1ZUNoYW5nZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2FmZWx5VXBkYXRlVmFsdWUobmV3VmFsdWUpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVUZXh0SW5wdXRWYWx1ZShcbiAgICAgICAgICAgICAgICBuZXdWYWx1ZVtyaWdodFZhbHVlQ2hhbmdlZCA/IDEgOiAwXSxcbiAgICAgICAgICAgICAgICByaWdodFZhbHVlQ2hhbmdlZCxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbklucHV0TGVmdCh2YWx1ZTogbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNhZmVseVVwZGF0ZVZhbHVlKFt2YWx1ZSA/PyB0aGlzLnNhZmVDdXJyZW50VmFsdWVbMF0sIHRoaXMudmFsdWVbMV1dKTtcbiAgICB9XG5cbiAgICBvbklucHV0UmlnaHQodmFsdWU6IG51bWJlciB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zYWZlbHlVcGRhdGVWYWx1ZShbdGhpcy52YWx1ZVswXSwgdmFsdWUgPz8gdGhpcy5zYWZlQ3VycmVudFZhbHVlWzFdXSk7XG4gICAgfVxuXG4gICAgb25SYW5nZVZhbHVlKHZhbHVlOiBbbnVtYmVyLCBudW1iZXJdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2FmZWx5VXBkYXRlVmFsdWUodmFsdWUpO1xuXG4gICAgICAgIGNvbnN0IHJpZ2h0VmFsdWVDaGFuZ2VkID0gdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ3JpZ2h0JztcblxuICAgICAgICB0aGlzLnVwZGF0ZVRleHRJbnB1dFZhbHVlKFxuICAgICAgICAgICAgdGhpcy52YWx1ZVtyaWdodFZhbHVlQ2hhbmdlZCA/IDEgOiAwXSxcbiAgICAgICAgICAgIHJpZ2h0VmFsdWVDaGFuZ2VkLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGZvY3VzVG9UZXh0SW5wdXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPVxuICAgICAgICAgICAgdGhpcy5sYXN0QWN0aXZlU2lkZSA9PT0gJ2xlZnQnXG4gICAgICAgICAgICAgICAgPyB0aGlzLmxlZnRGb2N1c2FibGVFbGVtZW50XG4gICAgICAgICAgICAgICAgOiB0aGlzLnJpZ2h0Rm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICBpZiAoIXRoaXMuaXNNb2JpbGUgJiYgZWxlbWVudCkge1xuICAgICAgICAgICAgZWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3RpdmVUaHVtYkNoYW5nZShhY3RpdmVUaHVtYjogJ3JpZ2h0JyB8ICdsZWZ0Jyk6IHZvaWQge1xuICAgICAgICB0aGlzLmxhc3RBY3RpdmVTaWRlID0gYWN0aXZlVGh1bWI7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgICAgIHJldHVybiBbMCwgMF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzYWZlbHlVcGRhdGVWYWx1ZSh2YWx1ZTogW251bWJlciwgbnVtYmVyXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWVHdWFyZCh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsdWVHdWFyZChbbGVmdFZhbHVlLCByaWdodFZhbHVlXTogW251bWJlciwgbnVtYmVyXSk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCBsZWZ0Q2FsaWJyYXRlZFZhbHVlID0gdGhpcy5jYWxpYnJhdGUobGVmdFZhbHVlKTtcbiAgICAgICAgY29uc3QgcmlnaHRDYWxpYnJhdGVkVmFsdWUgPSB0aGlzLmNhbGlicmF0ZShyaWdodFZhbHVlKTtcblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgTWF0aC5taW4obGVmdENhbGlicmF0ZWRWYWx1ZSwgdGhpcy52YWx1ZVsxXSksXG4gICAgICAgICAgICBNYXRoLm1heChyaWdodENhbGlicmF0ZWRWYWx1ZSwgdGhpcy52YWx1ZVswXSksXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxpYnJhdGUodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHJvdW5kZWRWYWx1ZSA9IHJvdW5kKFxuICAgICAgICAgICAgTWF0aC5yb3VuZCh2YWx1ZSAvIHRoaXMucXVhbnR1bSkgKiB0aGlzLnF1YW50dW0sXG4gICAgICAgICAgICBUVUlfRkxPQVRJTkdfUFJFQ0lTSU9OLFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBjbGFtcChyb3VuZGVkVmFsdWUsIHRoaXMubWluLCB0aGlzLm1heCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVUZXh0SW5wdXRWYWx1ZSh2YWx1ZTogbnVtYmVyLCByaWdodDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCBbbGVmdElucHV0UmVmLCByaWdodElucHV0UmVmXSA9IHRoaXMuaW5wdXROdW1iZXJSZWZzO1xuICAgICAgICBjb25zdCB0ZXh0SW5wdXRSZWYgPSByaWdodCA/IHJpZ2h0SW5wdXRSZWYgOiBsZWZ0SW5wdXRSZWY7XG5cbiAgICAgICAgaWYgKHRleHRJbnB1dFJlZikge1xuICAgICAgICAgICAgdGV4dElucHV0UmVmLm5hdGl2ZVZhbHVlID0gdGV4dElucHV0UmVmLmdldEZvcm1hdHRlZFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aVRleHRmaWVsZEFwcGVhcmFuY2VEaXJlY3RpdmVGYWN0b3J5KHtcbiAgICBuYXRpdmVFbGVtZW50LFxufTogRWxlbWVudFJlZik6IHN0cmluZyB7XG4gICAgcmV0dXJuIG5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0dWlUZXh0ZmllbGRBcHBlYXJhbmNlJyk7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3R1aVRleHRmaWVsZEFwcGVhcmFuY2VdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFLFxuICAgICAgICAgICAgZGVwczogW0VsZW1lbnRSZWZdLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogdHVpVGV4dGZpZWxkQXBwZWFyYW5jZURpcmVjdGl2ZUZhY3RvcnksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQXBwZWFyYW5jZURpcmVjdGl2ZSB7fVxuIl19
@@ -200,7 +200,7 @@ __decorate([
200
200
  TuiInputSliderComponent = TuiInputSliderComponent_1 = __decorate([
201
201
  Component({
202
202
  selector: 'tui-input-slider',
203
- template: "<tui-input-number\n [min]=\"min\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [prefix]=\"prefix\"\n [postfix]=\"postfix || (value | i18nPlural: pluralizeMap || pluralizeMapFallback)\"\n [tuiTextfieldCustomContent]=\"controller.customContent || deprecatedSecondary\"\n [tuiTextfieldSize]=\"computedSize\"\n [tuiTextfieldLabelOutside]=\"computedSize !== 'l'\"\n [readOnly]=\"readOnly\"\n [pseudoFocused]=\"computedFocused\"\n [pseudoHovered]=\"computedHovered\"\n [pseudoPressed]=\"computedPressed\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [ngModel]=\"value\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n (focusedChange)=\"onFocused($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (pressedChange)=\"onPressed($event)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"computedValueContent && !focused\"\n polymorpheus-outlet\n automation-id=\"tui-input-slider__value-content\"\n [content]=\"computedValueContent\"\n [context]=\"{$implicit: value}\"\n ></div>\n</tui-input-number>\n\n<!--TODO: remove in v3.0-->\n<ng-template #deprecatedSecondary>{{secondary}}</ng-template>\n\n<!--TODO: remove wrapper + ticks labels (leave only slider) in v3.0-->\n<div class=\"t-slider-wrapper\">\n <input\n tuiSlider\n type=\"range\"\n [tuiFocusable]=\"false\"\n [max]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"computedKeySteps\"\n [attr.disabled]=\"readOnly || disabled || null\"\n [ngModel]=\"value\"\n (keyStepsInput)=\"onSliderChange($event)\"\n (click)=\"focusTextInput()\"\n />\n\n <!--TODO delete ticks labels in v3.0-->\n <div\n *ngIf=\"segments && !isNew\"\n class=\"t-ticks-labels\"\n >\n <span\n *tuiRepeatTimes=\"let tickIndex of segments + 1\"\n automation-id=\"tui-slider__segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\">\n {{ getTickPrefix(tickIndex, segments, fromToText) }} {{\n tickIndex | tuiSliderTickLabel:segments:computedKeySteps |\n tuiFormatNumber}}\n <span *ngIf=\"segmentsPluralizeMap\">\n {{ tickIndex | tuiSliderTickLabel:segments:computedKeySteps\n | i18nPlural: segmentsPluralizeMap }}\n </span>\n </span>\n </span>\n </div>\n</div>\n",
203
+ template: "<tui-input-number\n [min]=\"min\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [prefix]=\"prefix\"\n [postfix]=\"postfix || (value | i18nPlural: pluralizeMap || pluralizeMapFallback)\"\n [tuiTextfieldCustomContent]=\"controller.customContent || deprecatedSecondary\"\n [tuiTextfieldSize]=\"computedSize\"\n [tuiTextfieldLabelOutside]=\"computedSize !== 'l'\"\n [readOnly]=\"readOnly\"\n [pseudoFocused]=\"computedFocused\"\n [pseudoHovered]=\"computedHovered\"\n [pseudoPressed]=\"computedPressed\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [ngModel]=\"value\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n (focusedChange)=\"onFocused($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (pressedChange)=\"onPressed($event)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"computedValueContent && !focused\"\n polymorpheus-outlet\n automation-id=\"tui-input-slider__value-content\"\n [content]=\"computedValueContent\"\n [context]=\"{$implicit: value}\"\n ></div>\n</tui-input-number>\n\n<!--TODO: remove in v3.0-->\n<ng-template #deprecatedSecondary>{{ secondary }}</ng-template>\n\n<!--TODO: remove wrapper + ticks labels (leave only slider) in v3.0-->\n<div class=\"t-slider-wrapper\">\n <input\n tuiSlider\n type=\"range\"\n [tuiFocusable]=\"false\"\n [max]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"computedKeySteps\"\n [attr.disabled]=\"readOnly || disabled || null\"\n [ngModel]=\"value\"\n (keyStepsInput)=\"onSliderChange($event)\"\n (click)=\"focusTextInput()\"\n />\n\n <!--TODO delete ticks labels in v3.0-->\n <div\n *ngIf=\"segments && !isNew\"\n class=\"t-ticks-labels\"\n >\n <span\n *tuiRepeatTimes=\"let tickIndex of segments + 1\"\n automation-id=\"tui-slider__segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\">\n {{ getTickPrefix(tickIndex, segments, fromToText) }}\n {{ tickIndex | tuiSliderTickLabel: segments:computedKeySteps | tuiFormatNumber }}\n <span *ngIf=\"segmentsPluralizeMap\">\n {{ tickIndex | tuiSliderTickLabel: segments:computedKeySteps | i18nPlural: segmentsPluralizeMap }}\n </span>\n </span>\n </span>\n </div>\n</div>\n",
204
204
  host: {
205
205
  /**
206
206
  * TODO delete it in v3.0
@@ -254,4 +254,4 @@ function legacyMinMaxLabel({ min, max, minLabel, maxLabel, }) {
254
254
  }
255
255
  };
256
256
  }
257
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1zbGlkZXIvIiwic291cmNlcyI6WyJpbnB1dC1zbGlkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxLQUFLLEVBQ0wsZUFBZSxFQUNmLEtBQUssRUFDTCxnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBQzNCLFNBQVMsRUFFVCxjQUFjLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxxQkFBcUIsRUFDckIsd0JBQXdCLEVBQ3hCLDZCQUE2QixFQUM3QixnQ0FBZ0MsRUFDaEMsV0FBVyxFQUNYLFFBQVEsRUFDUixzQkFBc0IsR0FDekIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLHdCQUF3QixHQUMzQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBR3ZELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFaEM7Ozs7R0FJRztBQUlILElBQWEsMEJBQTBCLEdB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QUFDLENBQUM7WUFDckQsd0JBQXdCO1lBQ3hCLDZCQUE2QjtTQUNoQzs7S0FDSixDQUFDO0lBQ0Y7OztPQUdHOztJQXdETSxXQUFBLFFBQVEsRUFBRSxDQUFBO0lBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtJQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDekIsV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtJQUV4QyxXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3pCLFdBQUEsUUFBUSxFQUFFLENBQUE7SUFDVixXQUFBLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0dBaEU5Qix1QkFBdUIsQ0FpTW5DO1NBak1ZLHVCQUF1QjtBQW1NcEMsU0FBUyxnQkFBZ0IsQ0FBQyxPQUFlO0lBQ3JDLE9BQU8sT0FBTyxHQUFHLENBQUMsQ0FBQztBQUN2QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxFQUN2QixHQUFHLEVBQ0gsR0FBRyxFQUNILFFBQVEsRUFDUixRQUFRLEdBQ2M7SUFHdEIsT0FBTyxDQUFDLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBaUMsRUFBRSxFQUFFO1FBQzFELFFBQVEsS0FBSyxFQUFFO1lBQ1gsS0FBSyxHQUFHO2dCQUNKLE9BQU8sUUFBUSxJQUFJLEtBQUssQ0FBQztZQUM3QixLQUFLLEdBQUc7Z0JBQ0osT0FBTyxRQUFRLElBQUksS0FBSyxDQUFDO1lBQzdCO2dCQUNJLE9BQU8sS0FBSyxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIGlzTmF0aXZlRm9jdXNlZCxcbiAgICByb3VuZCxcbiAgICBzZXROYXRpdmVGb2N1c2VkLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICB0dWlBc3NlcnQsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIGdldEZyYWN0aW9uUGFydFBhZGRlZCxcbiAgICBISU5UX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIsXG4gICAgVHVpRGVjaW1hbFQsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUlucHV0U2xpZGVyfSBmcm9tICdAdGFpZ2EtdWkva2l0L2Fic3RyYWN0JztcbmltcG9ydCB7VHVpSW5wdXROdW1iZXJDb21wb25lbnR9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1udW1iZXInO1xuaW1wb3J0IHtcbiAgICBUdWlTbGlkZXJDb21wb25lbnQsXG4gICAgdHVpU2xpZGVyT3B0aW9uc1Byb3ZpZGVyLFxufSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc2xpZGVyJztcbmltcG9ydCB7VFVJX0ZMT0FUSU5HX1BSRUNJU0lPTn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtUVUlfRlJPTV9UT19URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtUdWlLZXlTdGVwc30gZnJvbSAnQHRhaWdhLXVpL2tpdC90eXBlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIFR1cm4gb24gbmV3IGBJbnB1dFNsaWRlcmAncyB2ZXJzaW9uLlxuICogVGhlIG5ldyB2ZXJzaW9uIHdpbGwgYmVoYXZlIGFsbW9zdCB0aGUgc2FtZSBhcyBgSW5wdXRTbGlkZXJgIGZyb20gdGhlIG5leHQgbWFqb3IgcmVsZWFzZS5cbiAqIEBkZXByZWNhdGVkIFRPRE8gcmVtb3ZlIG1lIGluIHYzLjAgYW5kIG1ha2UgYElucHV0U2xpZGVyYCBhbHdheXMgXCJuZXdcIi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtc2xpZGVyW25ld10nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlOZXdJbnB1dFNsaWRlckRpcmVjdGl2ZSB7fVxuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtc2xpZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtc2xpZGVyLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lucHV0LXNsaWRlci5zdHlsZS5sZXNzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAvKipcbiAgICAgICAgICogVE9ETyBkZWxldGUgaXQgaW4gdjMuMFxuICAgICAgICAgKiBEb250IGZvcmdldCB0byBjbGVhciBodG1sLXRhZ3NcbiAgICAgICAgICovXG4gICAgICAgICdbY2xhc3MuX3Nob3ctdGlja3MtbGFiZWxzXSc6ICchaXNOZXcnLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0U2xpZGVyQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgdHVpU2xpZGVyT3B0aW9uc1Byb3ZpZGVyKHt0cmFja0NvbG9yOiAndHJhbnNwYXJlbnQnfSksXG4gICAgICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG4vKipcbiAqIFRPRE8gcmVwbGFjZSBgZXh0ZW5kcyBBYnN0cmFjdFR1aUlucHV0U2xpZGVyPG51bWJlcj5gIGJ5IGBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxudW1iZXI+IGltcGxlbWVudHMgVHVpV2l0aE9wdGlvbmFsTWluTWF4PG51bWJlcj5gXG4gKiBpbiB2My4wXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFNsaWRlckNvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnB1dFNsaWRlcjxudW1iZXI+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3JcbntcbiAgICBAVmlld0NoaWxkKFR1aUlucHV0TnVtYmVyQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXROdW1iZXJSZWY/OiBUdWlJbnB1dE51bWJlckNvbXBvbmVudDtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2xpZGVyQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBzbGlkZXJSZWY/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbiA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4ID0gSW5maW5pdHk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcChxdWFudHVtQXNzZXJ0aW9uLCAnUXVhbnR1bSBtdXN0IGJlIHBvc2l0aXZlJylcbiAgICBxdWFudHVtID0gMTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzdGVwcyA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2VnbWVudHMgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGtleVN0ZXBzOiBUdWlLZXlTdGVwcyB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHZhbHVlQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcHJlZml4ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcG9zdGZpeCA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgdXNlIGB0dWlUZXh0ZmllbGRDdXN0b21Db250ZW50YCBpbnN0ZWFkXG4gICAgICogVE9ETyBkZWxldGUgaW4gdjMuMFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZWNvbmRhcnkgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBJbmplY3QoVFVJX0ZST01fVE9fVEVYVFMpIHJlYWRvbmx5IGZyb21Ub1RleHRzJDogT2JzZXJ2YWJsZTxbc3RyaW5nLCBzdHJpbmddPixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlOZXdJbnB1dFNsaWRlckRpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaXNOZXc6IFR1aU5ld0lucHV0U2xpZGVyRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlucHV0TnVtYmVyUmVmPy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMuaW5wdXROdW1iZXJSZWYubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGlzTmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHx8XG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWQodGhpcy5zbGlkZXJSZWY/Lm5hdGl2ZUVsZW1lbnQgfHwgbnVsbClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRTdGVwcygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGVwcyB8fCAodGhpcy5tYXggLSB0aGlzLm1pbikgLyB0aGlzLnF1YW50dW07XG4gICAgfVxuXG4gICAgZ2V0IHByZWNpc2lvbigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkKHRoaXMucXVhbnR1bSkubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBkZWNpbWFsKCk6IFR1aURlY2ltYWxUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJlY2lzaW9uID8gJ25vdC16ZXJvJyA6ICduZXZlcic7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVE9ETyByZW1vdmUgb2xkIHByb3BlcnR5IGBzaXplYCBpbiB2My4wXG4gICAgICovXG4gICAgZ2V0IGNvbXB1dGVkU2l6ZSgpOiBUdWlTaXplTCB7XG4gICAgICAgIGlmICh0aGlzLmlzTmV3KSB7XG4gICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbGxlci5zaXplICE9PSAncycsXG4gICAgICAgICAgICAgICAgXCJTaXplICdzJyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgaW5wdXQuXCIsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLnNpemUgPT09ICdsJyA/ICdsJyA6ICdtJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnNpemU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHlcbiAgICAgKiBUT0RPIHJlcGxhY2UgYnkganVzdCBgdGhpcy52YWx1ZUNvbnRlbnRgIGluIHYzLjBcbiAgICAgKi9cbiAgICBnZXQgY29tcHV0ZWRWYWx1ZUNvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWluTGFiZWwgfHwgdGhpcy5tYXhMYWJlbFxuICAgICAgICAgICAgPyBsZWdhY3lNaW5NYXhMYWJlbCh0aGlzKVxuICAgICAgICAgICAgOiB0aGlzLnZhbHVlQ29udGVudDtcbiAgICB9XG5cbiAgICBmb2N1c1RleHRJbnB1dCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZm9jdXNhYmxlRWxlbWVudCA9IHRoaXMuaW5wdXROdW1iZXJSZWY/Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZUZvY3VzZWQoZm9jdXNhYmxlRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzYWZlbHlVcGRhdGVWYWx1ZSh2YWx1ZTogbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWVHdWFyZCh2YWx1ZSA/PyB0aGlzLnNhZmVDdXJyZW50VmFsdWUpKTtcbiAgICB9XG5cbiAgICBvblZlcnRpY2FsQXJyb3dLZXlEb3duKGNvZWZmaWNpZW50OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucmVhZE9ubHkgfHwgIXRoaXMuc3RlcCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlICsgY29lZmZpY2llbnQgKiB0aGlzLnN0ZXA7XG5cbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnNhZmVseVVwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlVGV4dElucHV0VmFsdWUodGhpcy52YWx1ZUd1YXJkKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgb25TbGlkZXJDaGFuZ2UobmV3VmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnNhZmVseVVwZGF0ZVZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgdGhpcy51cGRhdGVUZXh0SW5wdXRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCB7dmFsdWUsIHRleHRJbnB1dFZhbHVlLCBzYWZlQ3VycmVudFZhbHVlLCBpbnB1dE51bWJlclJlZn0gPSB0aGlzO1xuXG4gICAgICAgIGlmICghZm9jdXNlZCAmJiB0ZXh0SW5wdXRWYWx1ZSAhPT0gaW5wdXROdW1iZXJSZWY/LmdldEZvcm1hdHRlZFZhbHVlKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVUZXh0SW5wdXRWYWx1ZSh2YWx1ZSA/PyBzYWZlQ3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBvblByZXNzZWQocHJlc3NlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByZXNzZWQocHJlc3NlZCk7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHRleHRJbnB1dFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmlucHV0TnVtYmVyUmVmPy5uYXRpdmVWYWx1ZSB8fCAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmFsbGJhY2tWYWx1ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdmFsdWVHdWFyZCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qgcm91bmRlZFZhbHVlID0gcm91bmQoXG4gICAgICAgICAgICBNYXRoLnJvdW5kKHZhbHVlIC8gdGhpcy5xdWFudHVtKSAqIHRoaXMucXVhbnR1bSxcbiAgICAgICAgICAgIFRVSV9GTE9BVElOR19QUkVDSVNJT04sXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIGNsYW1wKHJvdW5kZWRWYWx1ZSwgdGhpcy5taW4sIHRoaXMubWF4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVRleHRJbnB1dFZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaW5wdXROdW1iZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXROdW1iZXJSZWYubmF0aXZlVmFsdWUgPVxuICAgICAgICAgICAgICAgIHRoaXMuaW5wdXROdW1iZXJSZWYuZ2V0Rm9ybWF0dGVkVmFsdWUodmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5mdW5jdGlvbiBxdWFudHVtQXNzZXJ0aW9uKHF1YW50dW06IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBxdWFudHVtID4gMDtcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBoZWxwZXIgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuXG4gKiBUT0RPIHJlbW92ZSBpbiB2My4wXG4gKi9cbmZ1bmN0aW9uIGxlZ2FjeU1pbk1heExhYmVsKHtcbiAgICBtaW4sXG4gICAgbWF4LFxuICAgIG1pbkxhYmVsLFxuICAgIG1heExhYmVsLFxufTogVHVpSW5wdXRTbGlkZXJDb21wb25lbnQpOiAoXG4gICAgY29udGV4dDogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxudW1iZXI+LFxuKSA9PiBzdHJpbmcgfCBudW1iZXIge1xuICAgIHJldHVybiAoeyRpbXBsaWNpdDogdmFsdWV9OiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4pID0+IHtcbiAgICAgICAgc3dpdGNoICh2YWx1ZSkge1xuICAgICAgICAgICAgY2FzZSBtaW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1pbkxhYmVsIHx8IHZhbHVlO1xuICAgICAgICAgICAgY2FzZSBtYXg6XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1heExhYmVsIHx8IHZhbHVlO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuIl19
257
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1zbGlkZXIvIiwic291cmNlcyI6WyJpbnB1dC1zbGlkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxLQUFLLEVBQ0wsZUFBZSxFQUNmLEtBQUssRUFDTCxnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBQzNCLFNBQVMsRUFFVCxjQUFjLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxxQkFBcUIsRUFDckIsd0JBQXdCLEVBQ3hCLDZCQUE2QixFQUM3QixnQ0FBZ0MsRUFDaEMsV0FBVyxFQUNYLFFBQVEsRUFDUixzQkFBc0IsR0FDekIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLHdCQUF3QixHQUMzQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBR3ZELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFaEM7Ozs7R0FJRztBQUlILElBQWEsMEJBQTBCLEdB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QUFDLENBQUM7WUFDckQsd0JBQXdCO1lBQ3hCLDZCQUE2QjtTQUNoQzs7S0FDSixDQUFDO0lBQ0Y7OztPQUdHOztJQXdETSxXQUFBLFFBQVEsRUFBRSxDQUFBO0lBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtJQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDekIsV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtJQUV4QyxXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3pCLFdBQUEsUUFBUSxFQUFFLENBQUE7SUFDVixXQUFBLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0dBaEU5Qix1QkFBdUIsQ0FpTW5DO1NBak1ZLHVCQUF1QjtBQW1NcEMsU0FBUyxnQkFBZ0IsQ0FBQyxPQUFlO0lBQ3JDLE9BQU8sT0FBTyxHQUFHLENBQUMsQ0FBQztBQUN2QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxFQUN2QixHQUFHLEVBQ0gsR0FBRyxFQUNILFFBQVEsRUFDUixRQUFRLEdBQ2M7SUFHdEIsT0FBTyxDQUFDLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBaUMsRUFBRSxFQUFFO1FBQzFELFFBQVEsS0FBSyxFQUFFO1lBQ1gsS0FBSyxHQUFHO2dCQUNKLE9BQU8sUUFBUSxJQUFJLEtBQUssQ0FBQztZQUM3QixLQUFLLEdBQUc7Z0JBQ0osT0FBTyxRQUFRLElBQUksS0FBSyxDQUFDO1lBQzdCO2dCQUNJLE9BQU8sS0FBSyxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIGlzTmF0aXZlRm9jdXNlZCxcbiAgICByb3VuZCxcbiAgICBzZXROYXRpdmVGb2N1c2VkLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICB0dWlBc3NlcnQsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIGdldEZyYWN0aW9uUGFydFBhZGRlZCxcbiAgICBISU5UX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIsXG4gICAgVHVpRGVjaW1hbFQsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUlucHV0U2xpZGVyfSBmcm9tICdAdGFpZ2EtdWkva2l0L2Fic3RyYWN0JztcbmltcG9ydCB7VHVpSW5wdXROdW1iZXJDb21wb25lbnR9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1udW1iZXInO1xuaW1wb3J0IHtcbiAgICBUdWlTbGlkZXJDb21wb25lbnQsXG4gICAgdHVpU2xpZGVyT3B0aW9uc1Byb3ZpZGVyLFxufSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc2xpZGVyJztcbmltcG9ydCB7VFVJX0ZMT0FUSU5HX1BSRUNJU0lPTn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtUVUlfRlJPTV9UT19URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtUdWlLZXlTdGVwc30gZnJvbSAnQHRhaWdhLXVpL2tpdC90eXBlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIFR1cm4gb24gbmV3IGBJbnB1dFNsaWRlcmAncyB2ZXJzaW9uLlxuICogVGhlIG5ldyB2ZXJzaW9uIHdpbGwgYmVoYXZlIGFsbW9zdCB0aGUgc2FtZSBhcyBgSW5wdXRTbGlkZXJgIGZyb20gdGhlIG5leHQgbWFqb3IgcmVsZWFzZS5cbiAqIEBkZXByZWNhdGVkIFRPRE8gcmVtb3ZlIG1lIGluIHYzLjAgYW5kIG1ha2UgYElucHV0U2xpZGVyYCBhbHdheXMgXCJuZXdcIi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtc2xpZGVyW25ld10nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlOZXdJbnB1dFNsaWRlckRpcmVjdGl2ZSB7fVxuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtc2xpZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtc2xpZGVyLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lucHV0LXNsaWRlci5zdHlsZS5sZXNzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAvKipcbiAgICAgICAgICogVE9ETyBkZWxldGUgaXQgaW4gdjMuMFxuICAgICAgICAgKiBEb250IGZvcmdldCB0byBjbGVhciBodG1sLXRhZ3NcbiAgICAgICAgICovXG4gICAgICAgICdbY2xhc3MuX3Nob3ctdGlja3MtbGFiZWxzXSc6ICchaXNOZXcnLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0U2xpZGVyQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgdHVpU2xpZGVyT3B0aW9uc1Byb3ZpZGVyKHt0cmFja0NvbG9yOiAndHJhbnNwYXJlbnQnfSksXG4gICAgICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgXSxcbn0pXG4vKipcbiAqIFRPRE8gcmVwbGFjZSBgZXh0ZW5kcyBBYnN0cmFjdFR1aUlucHV0U2xpZGVyPG51bWJlcj5gIGJ5IGBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxudW1iZXI+IGltcGxlbWVudHMgVHVpV2l0aE9wdGlvbmFsTWluTWF4PG51bWJlcj5gXG4gKiBpbiB2My4wXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFNsaWRlckNvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnB1dFNsaWRlcjxudW1iZXI+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3JcbntcbiAgICBAVmlld0NoaWxkKFR1aUlucHV0TnVtYmVyQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5wdXROdW1iZXJSZWY/OiBUdWlJbnB1dE51bWJlckNvbXBvbmVudDtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2xpZGVyQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBzbGlkZXJSZWY/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbiA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4ID0gSW5maW5pdHk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcChxdWFudHVtQXNzZXJ0aW9uLCAnUXVhbnR1bSBtdXN0IGJlIHBvc2l0aXZlJylcbiAgICBxdWFudHVtID0gMTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzdGVwcyA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2VnbWVudHMgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGtleVN0ZXBzOiBUdWlLZXlTdGVwcyB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHZhbHVlQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcHJlZml4ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcG9zdGZpeCA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgdXNlIGB0dWlUZXh0ZmllbGRDdXN0b21Db250ZW50YCBpbnN0ZWFkXG4gICAgICogVE9ETyBkZWxldGUgaW4gdjMuMFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZWNvbmRhcnkgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBJbmplY3QoVFVJX0ZST01fVE9fVEVYVFMpIHJlYWRvbmx5IGZyb21Ub1RleHRzJDogT2JzZXJ2YWJsZTxbc3RyaW5nLCBzdHJpbmddPixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlOZXdJbnB1dFNsaWRlckRpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaXNOZXc6IFR1aU5ld0lucHV0U2xpZGVyRGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoY29udHJvbCwgY2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlucHV0TnVtYmVyUmVmPy5uYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMuaW5wdXROdW1iZXJSZWYubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGlzTmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHx8XG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWQodGhpcy5zbGlkZXJSZWY/Lm5hdGl2ZUVsZW1lbnQgfHwgbnVsbClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRTdGVwcygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGVwcyB8fCAodGhpcy5tYXggLSB0aGlzLm1pbikgLyB0aGlzLnF1YW50dW07XG4gICAgfVxuXG4gICAgZ2V0IHByZWNpc2lvbigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkKHRoaXMucXVhbnR1bSkubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBkZWNpbWFsKCk6IFR1aURlY2ltYWxUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJlY2lzaW9uID8gJ25vdC16ZXJvJyA6ICduZXZlcic7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVE9ETyByZW1vdmUgb2xkIHByb3BlcnR5IGBzaXplYCBpbiB2My4wXG4gICAgICovXG4gICAgZ2V0IGNvbXB1dGVkU2l6ZSgpOiBUdWlTaXplTCB7XG4gICAgICAgIGlmICh0aGlzLmlzTmV3KSB7XG4gICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbGxlci5zaXplICE9PSAncycsXG4gICAgICAgICAgICAgICAgXCJTaXplICdzJyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgaW5wdXQuXCIsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLnNpemUgPT09ICdsJyA/ICdsJyA6ICdtJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnNpemU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHlcbiAgICAgKiBUT0RPIHJlcGxhY2UgYnkganVzdCBgdGhpcy52YWx1ZUNvbnRlbnRgIGluIHYzLjBcbiAgICAgKi9cbiAgICBnZXQgY29tcHV0ZWRWYWx1ZUNvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWluTGFiZWwgfHwgdGhpcy5tYXhMYWJlbFxuICAgICAgICAgICAgPyBsZWdhY3lNaW5NYXhMYWJlbCh0aGlzKVxuICAgICAgICAgICAgOiB0aGlzLnZhbHVlQ29udGVudDtcbiAgICB9XG5cbiAgICBmb2N1c1RleHRJbnB1dCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZm9jdXNhYmxlRWxlbWVudCA9IHRoaXMuaW5wdXROdW1iZXJSZWY/Lm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZUZvY3VzZWQoZm9jdXNhYmxlRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzYWZlbHlVcGRhdGVWYWx1ZSh2YWx1ZTogbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWVHdWFyZCh2YWx1ZSA/PyB0aGlzLnNhZmVDdXJyZW50VmFsdWUpKTtcbiAgICB9XG5cbiAgICBvblZlcnRpY2FsQXJyb3dLZXlEb3duKGNvZWZmaWNpZW50OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucmVhZE9ubHkgfHwgIXRoaXMuc3RlcCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlICsgY29lZmZpY2llbnQgKiB0aGlzLnN0ZXA7XG5cbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnNhZmVseVVwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlVGV4dElucHV0VmFsdWUodGhpcy52YWx1ZUd1YXJkKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgb25TbGlkZXJDaGFuZ2UobmV3VmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnNhZmVseVVwZGF0ZVZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgdGhpcy51cGRhdGVUZXh0SW5wdXRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCB7dmFsdWUsIHRleHRJbnB1dFZhbHVlLCBzYWZlQ3VycmVudFZhbHVlLCBpbnB1dE51bWJlclJlZn0gPSB0aGlzO1xuXG4gICAgICAgIGlmICghZm9jdXNlZCAmJiB0ZXh0SW5wdXRWYWx1ZSAhPT0gaW5wdXROdW1iZXJSZWY/LmdldEZvcm1hdHRlZFZhbHVlKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVUZXh0SW5wdXRWYWx1ZSh2YWx1ZSA/PyBzYWZlQ3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBvblByZXNzZWQocHJlc3NlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByZXNzZWQocHJlc3NlZCk7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHRleHRJbnB1dFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmlucHV0TnVtYmVyUmVmPy5uYXRpdmVWYWx1ZSB8fCAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmFsbGJhY2tWYWx1ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdmFsdWVHdWFyZCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qgcm91bmRlZFZhbHVlID0gcm91bmQoXG4gICAgICAgICAgICBNYXRoLnJvdW5kKHZhbHVlIC8gdGhpcy5xdWFudHVtKSAqIHRoaXMucXVhbnR1bSxcbiAgICAgICAgICAgIFRVSV9GTE9BVElOR19QUkVDSVNJT04sXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIGNsYW1wKHJvdW5kZWRWYWx1ZSwgdGhpcy5taW4sIHRoaXMubWF4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVRleHRJbnB1dFZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaW5wdXROdW1iZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXROdW1iZXJSZWYubmF0aXZlVmFsdWUgPVxuICAgICAgICAgICAgICAgIHRoaXMuaW5wdXROdW1iZXJSZWYuZ2V0Rm9ybWF0dGVkVmFsdWUodmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5mdW5jdGlvbiBxdWFudHVtQXNzZXJ0aW9uKHF1YW50dW06IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBxdWFudHVtID4gMDtcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBoZWxwZXIgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuXG4gKiBUT0RPIHJlbW92ZSBpbiB2My4wXG4gKi9cbmZ1bmN0aW9uIGxlZ2FjeU1pbk1heExhYmVsKHtcbiAgICBtaW4sXG4gICAgbWF4LFxuICAgIG1pbkxhYmVsLFxuICAgIG1heExhYmVsLFxufTogVHVpSW5wdXRTbGlkZXJDb21wb25lbnQpOiAoXG4gICAgY29udGV4dDogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxudW1iZXI+LFxuKSA9PiBzdHJpbmcgfCBudW1iZXIge1xuICAgIHJldHVybiAoeyRpbXBsaWNpdDogdmFsdWV9OiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4pID0+IHtcbiAgICAgICAgc3dpdGNoICh2YWx1ZSkge1xuICAgICAgICAgICAgY2FzZSBtaW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1pbkxhYmVsIHx8IHZhbHVlO1xuICAgICAgICAgICAgY2FzZSBtYXg6XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1heExhYmVsIHx8IHZhbHVlO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuIl19