@carto/kepler.gl 0.0.81 → 0.0.82

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 (1747) hide show
  1. package/dist/actions/action-wrapper.d.ts +115 -0
  2. package/dist/actions/action-wrapper.js +5 -5
  3. package/dist/actions/actions.d.ts +195 -0
  4. package/dist/actions/actions.js +20 -15
  5. package/dist/actions/identity-actions.d.ts +61 -0
  6. package/dist/actions/identity-actions.js +15 -10
  7. package/dist/actions/index.d.ts +9 -0
  8. package/dist/actions/index.js +1 -1
  9. package/dist/actions/map-state-actions.d.ts +69 -0
  10. package/dist/actions/map-state-actions.js +15 -12
  11. package/dist/actions/map-style-actions.d.ts +146 -0
  12. package/dist/actions/map-style-actions.js +53 -29
  13. package/dist/actions/provider-actions.d.ts +153 -0
  14. package/dist/actions/provider-actions.js +73 -42
  15. package/dist/actions/ui-state-actions.d.ts +300 -0
  16. package/dist/actions/ui-state-actions.js +135 -67
  17. package/dist/actions/vis-state-actions.d.ts +821 -0
  18. package/dist/actions/vis-state-actions.js +26 -111
  19. package/dist/cloud-providers/index.d.ts +2 -0
  20. package/dist/cloud-providers/index.js +2 -2
  21. package/dist/cloud-providers/provider.d.ts +176 -0
  22. package/dist/cloud-providers/provider.js +15 -16
  23. package/dist/components/bottom-widget.d.ts +47 -0
  24. package/dist/components/bottom-widget.js +10 -7
  25. package/dist/components/common/action-panel.d.ts +27 -0
  26. package/dist/components/common/action-panel.js +5 -7
  27. package/dist/components/common/animation-control/animation-control.d.ts +24 -0
  28. package/dist/components/common/animation-control/animation-control.js +7 -6
  29. package/dist/components/common/animation-control/animation-controller.d.ts +16 -0
  30. package/dist/components/common/animation-control/animation-controller.js +51 -31
  31. package/dist/components/common/animation-control/animation-speed-slider.d.ts +12 -0
  32. package/dist/components/common/animation-control/animation-speed-slider.js +6 -9
  33. package/dist/components/common/animation-control/floating-time-display.d.ts +9 -0
  34. package/dist/components/common/animation-control/floating-time-display.js +7 -4
  35. package/dist/components/common/animation-control/playback-controls.d.ts +72 -0
  36. package/dist/components/common/animation-control/playback-controls.js +4 -5
  37. package/dist/components/common/animation-control/speed-control.d.ts +13 -0
  38. package/dist/components/common/animation-control/speed-control.js +1 -1
  39. package/dist/components/common/checkbox.d.ts +35 -0
  40. package/dist/components/common/checkbox.js +10 -27
  41. package/dist/components/common/color-legend.d.ts +43 -0
  42. package/dist/components/common/color-legend.js +11 -23
  43. package/dist/components/common/data-table/button.d.ts +8 -0
  44. package/dist/components/common/data-table/button.js +2 -2
  45. package/dist/components/common/data-table/canvas.d.ts +2 -0
  46. package/dist/components/common/data-table/canvas.js +1 -1
  47. package/dist/components/common/data-table/cell-size.d.ts +36 -0
  48. package/dist/components/common/data-table/cell-size.js +1 -1
  49. package/dist/components/common/data-table/grid.d.ts +7 -0
  50. package/dist/components/common/data-table/grid.js +18 -11
  51. package/dist/components/common/data-table/index.d.ts +143 -0
  52. package/dist/components/common/data-table/index.js +44 -47
  53. package/dist/components/common/data-table/option-dropdown.d.ts +14 -0
  54. package/dist/components/common/data-table/option-dropdown.js +2 -2
  55. package/dist/components/common/dataset-label.d.ts +10 -0
  56. package/dist/components/common/dataset-label.js +3 -3
  57. package/dist/components/common/error-boundary.d.ts +16 -0
  58. package/dist/components/common/error-boundary.js +4 -6
  59. package/dist/components/common/field-selector.d.ts +47 -0
  60. package/dist/components/common/field-selector.js +14 -48
  61. package/dist/components/common/field-token.d.ts +45 -0
  62. package/dist/components/common/field-token.js +2 -2
  63. package/dist/components/common/file-uploader/file-drop.d.ts +54 -0
  64. package/dist/components/common/file-uploader/file-drop.js +22 -21
  65. package/dist/components/common/file-uploader/file-upload-progress.d.ts +8 -0
  66. package/dist/components/common/file-uploader/file-upload-progress.js +7 -8
  67. package/dist/components/common/file-uploader/file-upload.d.ts +27 -0
  68. package/dist/components/common/file-uploader/file-upload.js +12 -14
  69. package/dist/components/common/file-uploader/upload-button.d.ts +8 -0
  70. package/dist/components/common/file-uploader/upload-button.js +37 -61
  71. package/dist/components/common/histogram-plot.d.ts +3 -0
  72. package/dist/components/common/histogram-plot.js +10 -5
  73. package/dist/components/common/icons/add.d.ts +9 -0
  74. package/dist/components/common/icons/add.js +4 -10
  75. package/dist/components/common/icons/anchor_window.d.ts +11 -0
  76. package/dist/components/common/icons/anchor_window.js +1 -6
  77. package/dist/components/common/icons/arrow-down-alt.d.ts +9 -0
  78. package/dist/components/common/icons/arrow-down-alt.js +4 -10
  79. package/dist/components/common/icons/arrow-down-solid.d.ts +9 -0
  80. package/dist/components/common/icons/arrow-down-solid.js +58 -0
  81. package/dist/components/common/icons/arrow-down.d.ts +9 -0
  82. package/dist/components/common/icons/arrow-down.js +4 -10
  83. package/dist/components/common/icons/arrow-left.d.ts +9 -0
  84. package/dist/components/common/icons/arrow-left.js +4 -10
  85. package/dist/components/common/icons/arrow-right.d.ts +9 -0
  86. package/dist/components/common/icons/arrow-right.js +4 -10
  87. package/dist/components/common/icons/arrow-up-alt.d.ts +9 -0
  88. package/dist/components/common/icons/arrow-up-alt.js +4 -10
  89. package/dist/components/common/icons/arrow-up-solid.d.ts +9 -0
  90. package/dist/components/common/icons/arrow-up-solid.js +4 -10
  91. package/dist/components/common/icons/arrow-up.d.ts +9 -0
  92. package/dist/components/common/icons/arrow-up.js +4 -10
  93. package/dist/components/common/icons/base.d.ts +29 -0
  94. package/dist/components/common/icons/base.js +7 -19
  95. package/dist/components/common/icons/bug.d.ts +9 -0
  96. package/dist/components/common/icons/bug.js +4 -10
  97. package/dist/components/common/icons/cancel.d.ts +9 -0
  98. package/dist/components/common/icons/cancel.js +4 -10
  99. package/dist/components/common/icons/checkmark.d.ts +10 -0
  100. package/dist/components/common/icons/checkmark.js +4 -10
  101. package/dist/components/common/icons/chevron-right.js +5 -6
  102. package/dist/components/common/icons/clipboard.d.ts +9 -0
  103. package/dist/components/common/icons/clipboard.js +4 -10
  104. package/dist/components/common/icons/clock.d.ts +9 -0
  105. package/dist/components/common/icons/clock.js +4 -10
  106. package/dist/components/common/icons/close.d.ts +9 -0
  107. package/dist/components/common/icons/close.js +4 -10
  108. package/dist/components/common/icons/code-alt.d.ts +9 -0
  109. package/dist/components/common/icons/code-alt.js +4 -10
  110. package/dist/components/common/icons/copy.d.ts +9 -0
  111. package/dist/components/common/icons/copy.js +4 -10
  112. package/dist/components/common/icons/crosshairs.d.ts +9 -0
  113. package/dist/components/common/icons/crosshairs.js +4 -10
  114. package/dist/components/common/icons/cube-3d.d.ts +9 -0
  115. package/dist/components/common/icons/cube-3d.js +4 -10
  116. package/dist/components/common/icons/cursor-click.d.ts +9 -0
  117. package/dist/components/common/icons/cursor-click.js +4 -10
  118. package/dist/components/common/icons/data-table.d.ts +10 -0
  119. package/dist/components/common/icons/data-table.js +4 -10
  120. package/dist/components/common/icons/db.d.ts +10 -0
  121. package/dist/components/common/icons/db.js +4 -10
  122. package/dist/components/common/icons/delete.d.ts +9 -0
  123. package/dist/components/common/icons/delete.js +4 -9
  124. package/dist/components/common/icons/docs.d.ts +9 -0
  125. package/dist/components/common/icons/docs.js +4 -10
  126. package/dist/components/common/icons/drag-n-drop.d.ts +9 -0
  127. package/dist/components/common/icons/drag-n-drop.js +4 -10
  128. package/dist/components/common/icons/draw-polygon.d.ts +10 -0
  129. package/dist/components/common/icons/draw-polygon.js +4 -13
  130. package/dist/components/common/icons/email.d.ts +9 -0
  131. package/dist/components/common/icons/email.js +4 -10
  132. package/dist/components/common/icons/expand.d.ts +9 -0
  133. package/dist/components/common/icons/expand.js +4 -10
  134. package/dist/components/common/icons/eye-seen.d.ts +9 -0
  135. package/dist/components/common/icons/eye-seen.js +4 -10
  136. package/dist/components/common/icons/eye-unseen.d.ts +9 -0
  137. package/dist/components/common/icons/eye-unseen.js +4 -10
  138. package/dist/components/common/icons/file-type.d.ts +8 -0
  139. package/dist/components/common/icons/file-type.js +1 -1
  140. package/dist/components/common/icons/file.d.ts +9 -0
  141. package/dist/components/common/icons/file.js +4 -10
  142. package/dist/components/common/icons/files.d.ts +9 -0
  143. package/dist/components/common/icons/files.js +3 -9
  144. package/dist/components/common/icons/filter-funnel.d.ts +9 -0
  145. package/dist/components/common/icons/filter-funnel.js +4 -10
  146. package/dist/components/common/icons/free-window.d.ts +11 -0
  147. package/dist/components/common/icons/free-window.js +1 -6
  148. package/dist/components/common/icons/gear.d.ts +9 -0
  149. package/dist/components/common/icons/gear.js +4 -10
  150. package/dist/components/common/icons/hash.d.ts +9 -0
  151. package/dist/components/common/icons/hash.js +4 -10
  152. package/dist/components/common/icons/histogram.d.ts +9 -0
  153. package/dist/components/common/icons/histogram.js +3 -8
  154. package/dist/components/common/icons/index.d.ts +78 -0
  155. package/dist/components/common/icons/index.js +15 -1
  156. package/dist/components/common/icons/info.d.ts +12 -0
  157. package/dist/components/common/icons/info.js +4 -10
  158. package/dist/components/common/icons/layers.d.ts +9 -0
  159. package/dist/components/common/icons/layers.js +4 -10
  160. package/dist/components/common/icons/left-arrow.d.ts +9 -0
  161. package/dist/components/common/icons/left-arrow.js +4 -10
  162. package/dist/components/common/icons/legend.d.ts +9 -0
  163. package/dist/components/common/icons/legend.js +4 -10
  164. package/dist/components/common/icons/line-chart.d.ts +9 -0
  165. package/dist/components/common/icons/line-chart.js +4 -9
  166. package/dist/components/common/icons/login.d.ts +9 -0
  167. package/dist/components/common/icons/login.js +4 -9
  168. package/dist/components/common/icons/logout.d.ts +9 -0
  169. package/dist/components/common/icons/logout.js +4 -9
  170. package/dist/components/common/icons/map-icon.d.ts +11 -0
  171. package/dist/components/common/icons/map-icon.js +4 -11
  172. package/dist/components/common/icons/map.d.ts +11 -0
  173. package/dist/components/common/icons/map.js +4 -11
  174. package/dist/components/common/icons/messages.d.ts +9 -0
  175. package/dist/components/common/icons/messages.js +4 -10
  176. package/dist/components/common/icons/minus.d.ts +9 -0
  177. package/dist/components/common/icons/minus.js +4 -10
  178. package/dist/components/common/icons/order-by-dataset.d.ts +12 -0
  179. package/dist/components/common/icons/order-by-dataset.js +51 -0
  180. package/dist/components/common/icons/order-by-list.d.ts +12 -0
  181. package/dist/components/common/icons/order-by-list.js +43 -0
  182. package/dist/components/common/icons/pause.d.ts +9 -0
  183. package/dist/components/common/icons/pause.js +4 -10
  184. package/dist/components/common/icons/picture.d.ts +9 -0
  185. package/dist/components/common/icons/picture.js +3 -9
  186. package/dist/components/common/icons/pin.d.ts +9 -0
  187. package/dist/components/common/icons/pin.js +12 -14
  188. package/dist/components/common/icons/play.d.ts +9 -0
  189. package/dist/components/common/icons/play.js +4 -10
  190. package/dist/components/common/icons/polygon.d.ts +10 -0
  191. package/dist/components/common/icons/polygon.js +4 -13
  192. package/dist/components/common/icons/rectangle.d.ts +10 -0
  193. package/dist/components/common/icons/rectangle.js +4 -13
  194. package/dist/components/common/icons/reduce.d.ts +9 -0
  195. package/dist/components/common/icons/reduce.js +4 -10
  196. package/dist/components/common/icons/reset.d.ts +9 -0
  197. package/dist/components/common/icons/reset.js +4 -10
  198. package/dist/components/common/icons/rocket.d.ts +9 -0
  199. package/dist/components/common/icons/rocket.js +4 -10
  200. package/dist/components/common/icons/save.d.ts +9 -0
  201. package/dist/components/common/icons/save.js +4 -10
  202. package/dist/components/common/icons/save2.d.ts +9 -0
  203. package/dist/components/common/icons/save2.js +4 -10
  204. package/dist/components/common/icons/search.d.ts +9 -0
  205. package/dist/components/common/icons/search.js +4 -10
  206. package/dist/components/common/icons/settings.d.ts +9 -0
  207. package/dist/components/common/icons/settings.js +4 -10
  208. package/dist/components/common/icons/share.d.ts +9 -0
  209. package/dist/components/common/icons/share.js +4 -10
  210. package/dist/components/common/icons/split.d.ts +9 -0
  211. package/dist/components/common/icons/split.js +4 -10
  212. package/dist/components/common/icons/square-select.d.ts +9 -0
  213. package/dist/components/common/icons/square-select.js +4 -10
  214. package/dist/components/common/icons/swap-horizontal.js +5 -6
  215. package/dist/components/common/icons/table.d.ts +9 -0
  216. package/dist/components/common/icons/table.js +4 -9
  217. package/dist/components/common/icons/trash.d.ts +9 -0
  218. package/dist/components/common/icons/trash.js +4 -10
  219. package/dist/components/common/icons/upload.d.ts +9 -0
  220. package/dist/components/common/icons/upload.js +4 -11
  221. package/dist/components/common/icons/vert-dots.d.ts +9 -0
  222. package/dist/components/common/icons/vert-dots.js +4 -10
  223. package/dist/components/common/icons/vert-three-dots.d.ts +9 -0
  224. package/dist/components/common/icons/vert-three-dots.js +4 -10
  225. package/dist/components/common/icons/warning.d.ts +10 -0
  226. package/dist/components/common/icons/warning.js +4 -10
  227. package/dist/components/common/image-preview.d.ts +15 -0
  228. package/dist/components/common/image-preview.js +1 -2
  229. package/dist/components/common/info-helper.d.ts +11 -0
  230. package/dist/components/common/info-helper.js +1 -7
  231. package/dist/components/common/item-selector/accessor.d.ts +7 -0
  232. package/dist/components/common/item-selector/accessor.js +1 -1
  233. package/dist/components/common/item-selector/chickleted-input.d.ts +21 -0
  234. package/dist/components/common/item-selector/chickleted-input.js +4 -24
  235. package/dist/components/common/item-selector/dropdown-list.d.ts +68 -0
  236. package/dist/components/common/item-selector/dropdown-list.js +30 -40
  237. package/dist/components/common/item-selector/item-selector-submenu.js +8 -9
  238. package/dist/components/common/item-selector/item-selector.d.ts +91 -0
  239. package/dist/components/common/item-selector/item-selector.js +33 -66
  240. package/dist/components/common/item-selector/typeahead.d.ts +115 -0
  241. package/dist/components/common/item-selector/typeahead.js +47 -72
  242. package/dist/components/common/line-chart.d.ts +34 -0
  243. package/dist/components/common/line-chart.js +9 -10
  244. package/dist/components/common/loading-spinner.d.ts +9 -0
  245. package/dist/components/common/loading-spinner.js +2 -4
  246. package/dist/components/common/logo.d.ts +8 -0
  247. package/dist/components/common/logo.js +5 -14
  248. package/dist/components/common/map-layer-selector.d.ts +13 -0
  249. package/dist/components/common/map-layer-selector.js +1 -2
  250. package/dist/components/common/modal.d.ts +49 -0
  251. package/dist/components/common/modal.js +7 -21
  252. package/dist/components/common/portaled.d.ts +527 -0
  253. package/dist/components/common/portaled.js +29 -28
  254. package/dist/components/common/progress-bar.d.ts +12 -0
  255. package/dist/components/common/progress-bar.js +1 -2
  256. package/dist/components/common/range-brush.d.ts +19 -0
  257. package/dist/components/common/range-brush.js +29 -30
  258. package/dist/components/common/range-plot.d.ts +35 -0
  259. package/dist/components/common/range-plot.js +2 -15
  260. package/dist/components/common/range-slider.d.ts +32 -0
  261. package/dist/components/common/range-slider.js +31 -46
  262. package/dist/components/common/slider/mouse-event.d.ts +27 -0
  263. package/dist/components/common/slider/mouse-event.js +49 -44
  264. package/dist/components/common/slider/slider-bar-handle.d.ts +29 -0
  265. package/dist/components/common/slider/slider-bar-handle.js +7 -16
  266. package/dist/components/common/slider/slider-handle.d.ts +33 -0
  267. package/dist/components/common/slider/slider-handle.js +12 -19
  268. package/dist/components/common/slider/slider.d.ts +70 -0
  269. package/dist/components/common/slider/slider.js +42 -62
  270. package/dist/components/common/styled-components.d.ts +119 -0
  271. package/dist/components/common/styled-components.js +21 -11
  272. package/dist/components/common/switch.d.ts +16 -0
  273. package/dist/components/common/switch.js +1 -16
  274. package/dist/components/common/time-range-slider-time-title.d.ts +9 -0
  275. package/dist/components/common/time-range-slider-time-title.js +1 -1
  276. package/dist/components/common/time-range-slider.d.ts +32 -0
  277. package/dist/components/common/time-range-slider.js +4 -22
  278. package/dist/components/common/time-slider-marker.d.ts +21 -0
  279. package/dist/components/common/time-slider-marker.js +2 -2
  280. package/dist/components/common/tippy-tooltip.d.ts +4 -0
  281. package/dist/components/common/tippy-tooltip.js +115 -0
  282. package/dist/components/common/toolbar-item.d.ts +14 -0
  283. package/dist/components/common/toolbar-item.js +8 -6
  284. package/dist/components/common/toolbar.d.ts +5 -0
  285. package/dist/components/common/toolbar.js +1 -1
  286. package/dist/components/common/vertical-toolbar.d.ts +3 -0
  287. package/dist/components/common/vertical-toolbar.js +1 -1
  288. package/dist/components/container.d.ts +39 -0
  289. package/dist/components/container.js +38 -31
  290. package/dist/components/context.d.ts +7 -0
  291. package/dist/components/context.js +1 -1
  292. package/dist/components/editor/constants.d.ts +17 -0
  293. package/dist/components/editor/constants.js +1 -1
  294. package/dist/components/editor/editor.d.ts +29 -0
  295. package/dist/components/editor/editor.js +26 -42
  296. package/dist/components/editor/feature-action-panel.d.ts +27 -0
  297. package/dist/components/editor/feature-action-panel.js +13 -18
  298. package/dist/components/editor/feature-styles.d.ts +24 -0
  299. package/dist/components/editor/feature-styles.js +3 -3
  300. package/dist/components/editor/handle-style.d.ts +38 -0
  301. package/dist/components/editor/handle-style.js +3 -3
  302. package/dist/components/filters/components.d.ts +1 -0
  303. package/dist/components/filters/components.js +1 -1
  304. package/dist/components/filters/filter-panels/filter-panel-with-field-select.d.ts +10 -0
  305. package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +5 -8
  306. package/dist/components/filters/filter-panels/multi-select-filter-panel.d.ts +9 -0
  307. package/dist/components/filters/filter-panels/multi-select-filter-panel.js +3 -10
  308. package/dist/components/filters/filter-panels/new-filter-panel.d.ts +12 -0
  309. package/dist/components/filters/filter-panels/new-filter-panel.js +4 -10
  310. package/dist/components/filters/filter-panels/polygon-filter-panel.d.ts +9 -0
  311. package/dist/components/filters/filter-panels/polygon-filter-panel.js +6 -11
  312. package/dist/components/filters/filter-panels/range-filter-panel.d.ts +9 -0
  313. package/dist/components/filters/filter-panels/range-filter-panel.js +3 -10
  314. package/dist/components/filters/filter-panels/single-select-filter-panel.d.ts +9 -0
  315. package/dist/components/filters/filter-panels/single-select-filter-panel.js +3 -10
  316. package/dist/components/filters/filter-panels/time-range-filter-panel.d.ts +8 -0
  317. package/dist/components/filters/filter-panels/time-range-filter-panel.js +6 -9
  318. package/dist/components/filters/filter-panels/types.d.ts +36 -0
  319. package/dist/components/filters/filter-panels/types.js +6 -0
  320. package/dist/components/filters/index.d.ts +5 -0
  321. package/dist/components/filters/index.js +1 -1
  322. package/dist/components/filters/multi-select-filter.d.ts +3 -0
  323. package/dist/components/filters/multi-select-filter.js +1 -1
  324. package/dist/components/filters/polygon-filter.d.ts +4 -0
  325. package/dist/components/filters/polygon-filter.js +3 -4
  326. package/dist/components/filters/range-filter.d.ts +8 -0
  327. package/dist/components/filters/range-filter.js +2 -2
  328. package/dist/components/filters/single-select-filter.d.ts +3 -0
  329. package/dist/components/filters/single-select-filter.js +1 -1
  330. package/dist/components/filters/time-range-filter.d.ts +28 -0
  331. package/dist/components/filters/time-range-filter.js +1 -1
  332. package/dist/components/filters/time-widget.d.ts +14 -0
  333. package/dist/components/filters/time-widget.js +2 -3
  334. package/dist/components/filters/types.d.ts +53 -0
  335. package/dist/components/filters/types.js +6 -0
  336. package/dist/components/geocoder/geocoder.d.ts +33 -0
  337. package/dist/components/geocoder/geocoder.js +17 -17
  338. package/dist/components/geocoder-panel.d.ts +28 -0
  339. package/dist/components/geocoder-panel.js +24 -31
  340. package/dist/components/index.d.ts +165 -0
  341. package/dist/components/index.js +98 -15
  342. package/dist/components/injector.d.ts +25 -0
  343. package/dist/components/injector.js +4 -4
  344. package/dist/components/kepler-gl.d.ts +302 -0
  345. package/dist/components/kepler-gl.js +60 -43
  346. package/dist/components/map/coordinate-info.d.ts +7 -0
  347. package/dist/components/map/coordinate-info.js +1 -1
  348. package/dist/components/map/layer-hover-info.d.ts +13 -0
  349. package/dist/components/map/layer-hover-info.js +1 -2
  350. package/dist/components/map/layer-selector-panel.d.ts +22 -0
  351. package/dist/components/map/layer-selector-panel.js +2 -2
  352. package/dist/components/map/locale-panel.d.ts +16 -0
  353. package/dist/components/map/locale-panel.js +17 -13
  354. package/dist/components/map/map-control-panel.d.ts +14 -0
  355. package/dist/components/map/map-control-panel.js +20 -5
  356. package/dist/components/map/map-control-toolbar.d.ts +2 -0
  357. package/dist/components/map/map-control-toolbar.js +1 -1
  358. package/dist/components/map/map-control-tooltip.d.ts +7 -0
  359. package/dist/components/map/map-control-tooltip.js +3 -3
  360. package/dist/components/map/map-control.d.ts +44 -0
  361. package/dist/components/map/map-control.js +2 -2
  362. package/dist/components/map/map-draw-panel.d.ts +21 -0
  363. package/dist/components/map/map-draw-panel.js +19 -13
  364. package/dist/components/map/map-legend-panel.d.ts +23 -0
  365. package/dist/components/map/map-legend-panel.js +101 -56
  366. package/dist/components/map/map-legend.d.ts +55 -0
  367. package/dist/components/map/map-legend.js +20 -12
  368. package/dist/components/map/map-popover.d.ts +37 -0
  369. package/dist/components/map/map-popover.js +7 -4
  370. package/dist/components/map/split-map-button.d.ts +19 -0
  371. package/dist/components/map/split-map-button.js +18 -15
  372. package/dist/components/map/toggle-3d-button.d.ts +16 -0
  373. package/dist/components/map/toggle-3d-button.js +19 -15
  374. package/dist/components/map-container.d.ts +58 -0
  375. package/dist/components/map-container.js +60 -73
  376. package/dist/components/maps-layout.d.ts +10 -0
  377. package/dist/components/maps-layout.js +6 -5
  378. package/dist/components/modal-container.d.ts +65 -0
  379. package/dist/components/modal-container.js +29 -54
  380. package/dist/components/modals/add-map-style-modal.d.ts +17 -0
  381. package/dist/components/modals/add-map-style-modal.js +10 -18
  382. package/dist/components/modals/cloud-tile.d.ts +15 -0
  383. package/dist/components/modals/cloud-tile.js +1 -1
  384. package/dist/components/modals/data-table-modal.d.ts +29 -0
  385. package/dist/components/modals/data-table-modal.js +33 -29
  386. package/dist/components/modals/delete-data-modal.d.ts +10 -0
  387. package/dist/components/modals/delete-data-modal.js +1 -1
  388. package/dist/components/modals/error-display.d.ts +6 -0
  389. package/dist/components/modals/error-display.js +1 -1
  390. package/dist/components/modals/export-data-modal.d.ts +25 -0
  391. package/dist/components/modals/export-data-modal.js +12 -28
  392. package/dist/components/modals/export-image-modal.d.ts +18 -0
  393. package/dist/components/modals/export-image-modal.js +2 -2
  394. package/dist/components/modals/export-map-modal/components.d.ts +8 -0
  395. package/dist/components/modals/export-map-modal/components.js +1 -1
  396. package/dist/components/modals/export-map-modal/export-html-map.d.ts +12 -0
  397. package/dist/components/modals/export-map-modal/export-html-map.js +1 -2
  398. package/dist/components/modals/export-map-modal/export-json-map.d.ts +9 -0
  399. package/dist/components/modals/export-map-modal/export-json-map.js +20 -9
  400. package/dist/components/modals/export-map-modal/export-map-modal.d.ts +27 -0
  401. package/dist/components/modals/export-map-modal/export-map-modal.js +6 -18
  402. package/dist/components/modals/image-modal-container.d.ts +18 -0
  403. package/dist/components/modals/image-modal-container.js +5 -5
  404. package/dist/components/modals/load-data-modal.d.ts +33 -0
  405. package/dist/components/modals/load-data-modal.js +4 -4
  406. package/dist/components/modals/load-storage-map.d.ts +26 -0
  407. package/dist/components/modals/load-storage-map.js +10 -12
  408. package/dist/components/modals/loading-dialog.d.ts +7 -0
  409. package/dist/components/modals/loading-dialog.js +1 -1
  410. package/dist/components/modals/modal-dialog.d.ts +2 -0
  411. package/dist/components/modals/modal-dialog.js +1 -1
  412. package/dist/components/modals/modal-tabs.d.ts +27 -0
  413. package/dist/components/modals/modal-tabs.js +2 -2
  414. package/dist/components/modals/overwrite-map-modal.d.ts +16 -0
  415. package/dist/components/modals/overwrite-map-modal.js +1 -1
  416. package/dist/components/modals/provider-modal-container.d.ts +23 -0
  417. package/dist/components/modals/provider-modal-container.js +8 -13
  418. package/dist/components/modals/save-map-modal.d.ts +29 -0
  419. package/dist/components/modals/save-map-modal.js +5 -6
  420. package/dist/components/modals/share-map-modal.d.ts +30 -0
  421. package/dist/components/modals/share-map-modal.js +19 -22
  422. package/dist/components/modals/status-panel.d.ts +13 -0
  423. package/dist/components/modals/status-panel.js +1 -1
  424. package/dist/components/modals/storage-map-viewer.d.ts +21 -0
  425. package/dist/components/modals/storage-map-viewer.js +5 -12
  426. package/dist/components/notification-panel/notification-item.d.ts +66 -0
  427. package/dist/components/notification-panel/notification-item.js +7 -18
  428. package/dist/components/notification-panel.d.ts +61 -0
  429. package/dist/components/notification-panel.js +6 -13
  430. package/dist/components/performance.d.ts +4 -0
  431. package/dist/components/performance.js +2 -1
  432. package/dist/components/plot-container.d.ts +24 -0
  433. package/dist/components/plot-container.js +35 -40
  434. package/dist/components/side-panel/cloud-storage-dropdown.d.ts +6 -0
  435. package/dist/components/side-panel/cloud-storage-dropdown.js +1 -1
  436. package/dist/components/side-panel/common/dataset-info.d.ts +3 -0
  437. package/dist/components/side-panel/common/dataset-info.js +1 -1
  438. package/dist/components/side-panel/common/dataset-tag.d.ts +3 -0
  439. package/dist/components/side-panel/common/dataset-tag.js +37 -13
  440. package/dist/components/side-panel/common/dataset-title.d.ts +8 -0
  441. package/dist/components/side-panel/common/dataset-title.js +49 -19
  442. package/dist/components/side-panel/common/source-data-catalog.d.ts +9 -0
  443. package/dist/components/side-panel/common/source-data-catalog.js +5 -3
  444. package/dist/components/side-panel/common/source-data-selector.d.ts +8 -0
  445. package/dist/components/side-panel/common/source-data-selector.js +18 -13
  446. package/dist/components/side-panel/common/types.d.ts +58 -0
  447. package/dist/components/side-panel/common/types.js +6 -0
  448. package/dist/components/side-panel/custom-panel.d.ts +9 -0
  449. package/dist/components/side-panel/custom-panel.js +1 -1
  450. package/dist/components/side-panel/filter-manager.d.ts +20 -0
  451. package/dist/components/side-panel/filter-manager.js +7 -15
  452. package/dist/components/side-panel/filter-panel/filter-panel-header.d.ts +21 -0
  453. package/dist/components/side-panel/filter-panel/filter-panel-header.js +3 -6
  454. package/dist/components/side-panel/filter-panel/filter-panel.d.ts +23 -0
  455. package/dist/components/side-panel/filter-panel/filter-panel.js +15 -31
  456. package/dist/components/side-panel/interaction-manager.d.ts +14 -0
  457. package/dist/components/side-panel/interaction-manager.js +1 -1
  458. package/dist/components/side-panel/interaction-panel/brush-config.d.ts +15 -0
  459. package/dist/components/side-panel/interaction-panel/brush-config.js +1 -1
  460. package/dist/components/side-panel/interaction-panel/interaction-panel.d.ts +19 -0
  461. package/dist/components/side-panel/interaction-panel/interaction-panel.js +9 -17
  462. package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +28 -0
  463. package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +15 -21
  464. package/dist/components/side-panel/interaction-panel/tooltip-config.d.ts +38 -0
  465. package/dist/components/side-panel/interaction-panel/tooltip-config.js +7 -3
  466. package/dist/components/side-panel/layer-manager.d.ts +46 -0
  467. package/dist/components/side-panel/layer-manager.js +87 -192
  468. package/dist/components/side-panel/layer-panel/add-layer-button.d.ts +10 -0
  469. package/dist/components/side-panel/layer-panel/add-layer-button.js +147 -0
  470. package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.d.ts +8 -0
  471. package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +2 -2
  472. package/dist/components/side-panel/layer-panel/color-palette.d.ts +13 -0
  473. package/dist/components/side-panel/layer-panel/color-palette.js +7 -15
  474. package/dist/components/side-panel/layer-panel/color-range-selector.d.ts +129 -0
  475. package/dist/components/side-panel/layer-panel/color-range-selector.js +105 -142
  476. package/dist/components/side-panel/layer-panel/color-selector.d.ts +101 -0
  477. package/dist/components/side-panel/layer-panel/color-selector.js +16 -37
  478. package/dist/components/side-panel/layer-panel/column-selector.d.ts +22 -0
  479. package/dist/components/side-panel/layer-panel/column-selector.js +3 -3
  480. package/dist/components/side-panel/layer-panel/custom-markers-config-group.d.ts +6 -0
  481. package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +2 -2
  482. package/dist/components/side-panel/layer-panel/custom-palette.d.ts +38 -0
  483. package/dist/components/side-panel/layer-panel/custom-palette.js +55 -61
  484. package/dist/components/side-panel/layer-panel/custom-picker.d.ts +67 -0
  485. package/dist/components/side-panel/layer-panel/custom-picker.js +7 -16
  486. package/dist/components/side-panel/layer-panel/dataset-layer-group.d.ts +24 -0
  487. package/dist/components/side-panel/layer-panel/dataset-layer-group.js +81 -0
  488. package/dist/components/side-panel/layer-panel/dataset-layer-section.d.ts +25 -0
  489. package/dist/components/side-panel/layer-panel/dataset-layer-section.js +74 -0
  490. package/dist/components/side-panel/layer-panel/dataset-section.d.ts +26 -0
  491. package/dist/components/side-panel/layer-panel/dataset-section.js +91 -0
  492. package/dist/components/side-panel/layer-panel/dimension-scale-selector.d.ts +10 -0
  493. package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +1 -1
  494. package/dist/components/side-panel/layer-panel/hex-column-config.d.ts +62 -0
  495. package/dist/components/side-panel/layer-panel/hex-column-config.js +4 -5
  496. package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.d.ts +8 -0
  497. package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +1 -1
  498. package/dist/components/side-panel/layer-panel/layer-column-config.d.ts +20 -0
  499. package/dist/components/side-panel/layer-panel/layer-column-config.js +2 -13
  500. package/dist/components/side-panel/layer-panel/layer-config-group.d.ts +37 -0
  501. package/dist/components/side-panel/layer-panel/layer-config-group.js +11 -13
  502. package/dist/components/side-panel/layer-panel/layer-configurator.d.ts +415 -0
  503. package/dist/components/side-panel/layer-panel/layer-configurator.js +70 -63
  504. package/dist/components/side-panel/layer-panel/layer-list.d.ts +20 -0
  505. package/dist/components/side-panel/layer-panel/layer-list.js +168 -0
  506. package/dist/components/side-panel/layer-panel/layer-panel-header.d.ts +43 -0
  507. package/dist/components/side-panel/layer-panel/layer-panel-header.js +10 -24
  508. package/dist/components/side-panel/layer-panel/layer-panel.d.ts +40 -0
  509. package/dist/components/side-panel/layer-panel/layer-panel.js +19 -38
  510. package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.d.ts +17 -0
  511. package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +2 -2
  512. package/dist/components/side-panel/layer-panel/layer-type-list-item.d.ts +11 -0
  513. package/dist/components/side-panel/layer-panel/layer-type-list-item.js +1 -1
  514. package/dist/components/side-panel/layer-panel/layer-type-selector.d.ts +23 -0
  515. package/dist/components/side-panel/layer-panel/layer-type-selector.js +2 -8
  516. package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.d.ts +23 -0
  517. package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +3 -3
  518. package/dist/components/side-panel/layer-panel/panel-view-list-toggle.d.ts +36 -0
  519. package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +116 -0
  520. package/dist/components/side-panel/layer-panel/single-color-palette.d.ts +12 -0
  521. package/dist/components/side-panel/layer-panel/single-color-palette.js +27 -58
  522. package/dist/components/side-panel/layer-panel/text-label-panel.d.ts +18 -0
  523. package/dist/components/side-panel/layer-panel/text-label-panel.js +9 -16
  524. package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.d.ts +35 -0
  525. package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +22 -35
  526. package/dist/components/side-panel/layer-panel/vis-config-slider.d.ts +20 -0
  527. package/dist/components/side-panel/layer-panel/vis-config-slider.js +130 -34
  528. package/dist/components/side-panel/layer-panel/vis-config-switch.d.ts +16 -0
  529. package/dist/components/side-panel/layer-panel/vis-config-switch.js +1 -11
  530. package/dist/components/side-panel/map-manager.d.ts +21 -0
  531. package/dist/components/side-panel/map-manager.js +9 -17
  532. package/dist/components/side-panel/map-style-panel/map-layer-selector.d.ts +19 -0
  533. package/dist/components/side-panel/map-style-panel/map-layer-selector.js +1 -1
  534. package/dist/components/side-panel/map-style-panel/map-style-selector.d.ts +16 -0
  535. package/dist/components/side-panel/map-style-panel/map-style-selector.js +1 -1
  536. package/dist/components/side-panel/panel-dropdown.d.ts +18 -0
  537. package/dist/components/side-panel/panel-dropdown.js +5 -13
  538. package/dist/components/side-panel/panel-header-action.d.ts +20 -0
  539. package/dist/components/side-panel/panel-header-action.js +5 -18
  540. package/dist/components/side-panel/panel-header.d.ts +78 -0
  541. package/dist/components/side-panel/panel-header.js +17 -29
  542. package/dist/components/side-panel/panel-tab.d.ts +20 -0
  543. package/dist/components/side-panel/panel-tab.js +1 -1
  544. package/dist/components/side-panel/panel-title.d.ts +4 -0
  545. package/dist/components/side-panel/panel-title.js +7 -2
  546. package/dist/components/side-panel/panel-toggle.d.ts +14 -0
  547. package/dist/components/side-panel/panel-toggle.js +2 -9
  548. package/dist/components/side-panel/side-bar.d.ts +76 -0
  549. package/dist/components/side-panel/side-bar.js +6 -14
  550. package/dist/components/side-panel.d.ts +134 -0
  551. package/dist/components/side-panel.js +19 -17
  552. package/dist/components/types.d.ts +44 -0
  553. package/dist/components/types.js +6 -0
  554. package/dist/connect/keplergl-connect.d.ts +5 -0
  555. package/dist/connect/keplergl-connect.js +1 -1
  556. package/dist/connect/with-local-selector.d.ts +6 -0
  557. package/dist/connect/with-local-selector.js +10 -13
  558. package/dist/constants/action-types.d.ts +111 -0
  559. package/dist/constants/action-types.js +8 -3
  560. package/dist/constants/color-palette.d.ts +491 -0
  561. package/dist/constants/color-palette.js +1 -1
  562. package/dist/constants/color-ranges.d.ts +24 -0
  563. package/dist/constants/color-ranges.js +3 -1
  564. package/dist/constants/custom-color-ranges.d.ts +37 -0
  565. package/dist/constants/custom-color-ranges.js +1 -1
  566. package/dist/constants/default-settings.d.ts +773 -0
  567. package/dist/constants/default-settings.js +25 -13
  568. package/dist/constants/index.d.ts +9 -0
  569. package/dist/constants/index.js +1 -1
  570. package/dist/constants/keyevent.d.ts +2 -0
  571. package/dist/constants/keyevent.js +1 -1
  572. package/dist/constants/tooltip.d.ts +165 -0
  573. package/dist/constants/tooltip.js +1 -1
  574. package/dist/constants/user-feedbacks.d.ts +5 -0
  575. package/dist/constants/user-feedbacks.js +1 -1
  576. package/dist/constants/user-guides.d.ts +9 -0
  577. package/dist/constants/user-guides.js +1 -1
  578. package/dist/deckgl-layers/3d-building-layer/3d-building-layer.d.ts +13 -0
  579. package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +13 -6
  580. package/dist/deckgl-layers/3d-building-layer/3d-building-utils.d.ts +7 -0
  581. package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +1 -1
  582. package/dist/deckgl-layers/3d-building-layer/types.d.ts +37 -0
  583. package/dist/deckgl-layers/3d-building-layer/types.js +6 -0
  584. package/dist/deckgl-layers/cluster-layer/cluster-layer.js +4 -5
  585. package/dist/deckgl-layers/column-layer/enhanced-column-layer.d.ts +6 -0
  586. package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +9 -9
  587. package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.d.ts +13 -0
  588. package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +15 -14
  589. package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.d.ts +13 -0
  590. package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +15 -14
  591. package/dist/deckgl-layers/layer-utils/cluster-utils.js +4 -5
  592. package/dist/deckgl-layers/layer-utils/cpu-aggregator.d.ts +91 -0
  593. package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +9 -10
  594. package/dist/deckgl-layers/layer-utils/shader-utils.d.ts +1 -0
  595. package/dist/deckgl-layers/layer-utils/shader-utils.js +1 -1
  596. package/dist/deckgl-layers/line-layer/line-layer.d.ts +12 -0
  597. package/dist/deckgl-layers/line-layer/line-layer.js +17 -15
  598. package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.d.ts +8 -0
  599. package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +18 -12
  600. package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.d.ts +18 -0
  601. package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +14 -5
  602. package/dist/index.d.ts +11 -0
  603. package/dist/index.js +2 -2
  604. package/dist/layers/aggregation-layer.d.ts +70 -0
  605. package/dist/layers/aggregation-layer.js +34 -24
  606. package/dist/layers/arc-layer/arc-layer-icon.d.ts +16 -0
  607. package/dist/layers/arc-layer/arc-layer-icon.js +4 -5
  608. package/dist/layers/arc-layer/arc-layer.d.ts +143 -0
  609. package/dist/layers/arc-layer/arc-layer.js +21 -19
  610. package/dist/layers/base-layer.d.ts +436 -0
  611. package/dist/layers/base-layer.js +96 -80
  612. package/dist/layers/cluster-layer/cluster-layer-icon.d.ts +16 -0
  613. package/dist/layers/cluster-layer/cluster-layer-icon.js +4 -5
  614. package/dist/layers/cluster-layer/cluster-layer.d.ts +39 -0
  615. package/dist/layers/cluster-layer/cluster-layer.js +4 -5
  616. package/dist/layers/default-layer-icon.d.ts +14 -0
  617. package/dist/layers/default-layer-icon.js +4 -5
  618. package/dist/layers/geojson-layer/geojson-layer-icon.d.ts +15 -0
  619. package/dist/layers/geojson-layer/geojson-layer-icon.js +4 -5
  620. package/dist/layers/geojson-layer/geojson-layer.d.ts +227 -0
  621. package/dist/layers/geojson-layer/geojson-layer.js +25 -15
  622. package/dist/layers/geojson-layer/geojson-utils.d.ts +44 -0
  623. package/dist/layers/geojson-layer/geojson-utils.js +19 -6
  624. package/dist/layers/grid-layer/grid-layer-icon.d.ts +15 -0
  625. package/dist/layers/grid-layer/grid-layer-icon.js +4 -5
  626. package/dist/layers/grid-layer/grid-layer.d.ts +74 -0
  627. package/dist/layers/grid-layer/grid-layer.js +5 -5
  628. package/dist/layers/grid-layer/grid-utils.d.ts +24 -0
  629. package/dist/layers/grid-layer/grid-utils.js +7 -7
  630. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.d.ts +16 -0
  631. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +4 -5
  632. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.d.ts +170 -0
  633. package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +15 -8
  634. package/dist/layers/h3-hexagon-layer/h3-utils.d.ts +20 -0
  635. package/dist/layers/h3-hexagon-layer/h3-utils.js +2 -2
  636. package/dist/layers/heatmap-layer/heatmap-layer-icon.d.ts +15 -0
  637. package/dist/layers/heatmap-layer/heatmap-layer-icon.js +4 -5
  638. package/dist/layers/heatmap-layer/heatmap-layer.d.ts +144 -0
  639. package/dist/layers/heatmap-layer/heatmap-layer.js +26 -32
  640. package/dist/layers/hexagon-layer/hexagon-layer-icon.d.ts +15 -0
  641. package/dist/layers/hexagon-layer/hexagon-layer-icon.js +4 -5
  642. package/dist/layers/hexagon-layer/hexagon-layer.d.ts +78 -0
  643. package/dist/layers/hexagon-layer/hexagon-layer.js +5 -5
  644. package/dist/layers/hexagon-layer/hexagon-utils.d.ts +7 -0
  645. package/dist/layers/hexagon-layer/hexagon-utils.js +1 -1
  646. package/dist/layers/icon-layer/icon-info-modal.d.ts +3 -0
  647. package/dist/layers/icon-layer/icon-info-modal.js +3 -2
  648. package/dist/layers/icon-layer/icon-layer-icon.d.ts +15 -0
  649. package/dist/layers/icon-layer/icon-layer-icon.js +4 -5
  650. package/dist/layers/icon-layer/icon-layer.d.ts +119 -0
  651. package/dist/layers/icon-layer/icon-layer.js +24 -12
  652. package/dist/layers/index.d.ts +53 -0
  653. package/dist/layers/index.js +3 -3
  654. package/dist/layers/layer-factory.d.ts +150 -0
  655. package/dist/layers/layer-factory.js +54 -39
  656. package/dist/layers/layer-text-label.d.ts +7 -0
  657. package/dist/layers/layer-text-label.js +1 -3
  658. package/dist/layers/layer-update.d.ts +9 -0
  659. package/dist/layers/layer-update.js +1 -2
  660. package/dist/layers/line-layer/line-layer-icon.d.ts +15 -0
  661. package/dist/layers/line-layer/line-layer-icon.js +4 -5
  662. package/dist/layers/line-layer/line-layer.d.ts +136 -0
  663. package/dist/layers/line-layer/line-layer.js +28 -26
  664. package/dist/layers/mapbox-utils.d.ts +57 -0
  665. package/dist/layers/mapbox-utils.js +9 -14
  666. package/dist/layers/mapboxgl-layer.d.ts +87 -0
  667. package/dist/layers/mapboxgl-layer.js +19 -13
  668. package/dist/layers/point-layer/point-layer-icon.d.ts +15 -0
  669. package/dist/layers/point-layer/point-layer-icon.js +4 -5
  670. package/dist/layers/point-layer/point-layer.d.ts +272 -0
  671. package/dist/layers/point-layer/point-layer.js +31 -17
  672. package/dist/layers/s2-geometry-layer/s2-geometry-layer.d.ts +189 -0
  673. package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +15 -11
  674. package/dist/layers/s2-geometry-layer/s2-layer-icon.d.ts +15 -0
  675. package/dist/layers/s2-geometry-layer/s2-layer-icon.js +4 -5
  676. package/dist/layers/s2-geometry-layer/s2-utils.d.ts +7 -0
  677. package/dist/layers/s2-geometry-layer/s2-utils.js +7 -1
  678. package/dist/layers/scenegraph-layer/scenegraph-info-modal.d.ts +3 -0
  679. package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +1 -1
  680. package/dist/layers/scenegraph-layer/scenegraph-layer-icon.d.ts +15 -0
  681. package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +4 -5
  682. package/dist/layers/scenegraph-layer/scenegraph-layer.d.ts +80 -0
  683. package/dist/layers/scenegraph-layer/scenegraph-layer.js +9 -6
  684. package/dist/layers/trip-layer/trip-info-modal.d.ts +3 -0
  685. package/dist/layers/trip-layer/trip-info-modal.js +1 -1
  686. package/dist/layers/trip-layer/trip-layer-icon.d.ts +15 -0
  687. package/dist/layers/trip-layer/trip-layer-icon.js +4 -5
  688. package/dist/layers/trip-layer/trip-layer.d.ts +157 -0
  689. package/dist/layers/trip-layer/trip-layer.js +21 -13
  690. package/dist/layers/trip-layer/trip-utils.d.ts +31 -0
  691. package/dist/layers/trip-layer/trip-utils.js +13 -14
  692. package/dist/layers/types.d.ts +15 -0
  693. package/dist/layers/types.js +1 -1
  694. package/dist/localization/formatted-message.d.ts +12 -0
  695. package/dist/localization/formatted-message.js +6 -7
  696. package/dist/localization/index.d.ts +5 -0
  697. package/dist/localization/index.js +2 -2
  698. package/dist/localization/locales.d.ts +27 -0
  699. package/dist/localization/locales.js +1 -1
  700. package/dist/localization/messages.d.ts +4 -0
  701. package/dist/localization/messages.js +37 -0
  702. package/dist/localization/translations/ca.d.ts +438 -0
  703. package/dist/localization/translations/ca.js +466 -0
  704. package/dist/localization/translations/cn.d.ts +441 -0
  705. package/dist/localization/translations/cn.js +469 -0
  706. package/dist/localization/translations/en.d.ts +466 -0
  707. package/dist/localization/translations/en.js +494 -0
  708. package/dist/localization/translations/es.d.ts +438 -0
  709. package/dist/localization/translations/es.js +466 -0
  710. package/dist/localization/translations/fi.d.ts +410 -0
  711. package/dist/localization/translations/fi.js +438 -0
  712. package/dist/localization/translations/ja.d.ts +439 -0
  713. package/dist/localization/translations/ja.js +467 -0
  714. package/dist/localization/translations/pt.d.ts +410 -0
  715. package/dist/localization/translations/pt.js +438 -0
  716. package/dist/localization/translations/ru.d.ts +447 -0
  717. package/dist/localization/translations/ru.js +475 -0
  718. package/dist/middleware/index.d.ts +8 -0
  719. package/dist/middleware/index.js +3 -3
  720. package/dist/processors/data-processor.d.ts +242 -0
  721. package/dist/processors/data-processor.js +44 -43
  722. package/dist/processors/file-handler.d.ts +28 -0
  723. package/dist/processors/file-handler.js +18 -17
  724. package/dist/processors/index.d.ts +3 -0
  725. package/dist/processors/index.js +12 -1
  726. package/dist/processors/types.d.ts +21 -0
  727. package/dist/processors/types.js +6 -0
  728. package/dist/reducers/combined-updaters.d.ts +52 -0
  729. package/dist/reducers/combined-updaters.js +3 -7
  730. package/dist/reducers/composer-helpers.d.ts +21 -0
  731. package/dist/reducers/composer-helpers.js +7 -7
  732. package/dist/reducers/composers.d.ts +12 -0
  733. package/dist/reducers/composers.js +2 -2
  734. package/dist/reducers/core.d.ts +65 -0
  735. package/dist/reducers/core.js +2 -6
  736. package/dist/reducers/index.d.ts +19 -0
  737. package/dist/reducers/index.js +14 -2
  738. package/dist/reducers/map-state-updaters.d.ts +96 -0
  739. package/dist/reducers/map-state-updaters.js +4 -11
  740. package/dist/reducers/map-state.d.ts +4 -0
  741. package/dist/reducers/map-state.js +3 -3
  742. package/dist/reducers/map-style-updaters.d.ts +204 -0
  743. package/dist/reducers/map-style-updaters.js +23 -37
  744. package/dist/reducers/map-style.d.ts +16 -0
  745. package/dist/reducers/map-style.js +3 -3
  746. package/dist/reducers/provider-state-updaters.d.ts +41 -0
  747. package/dist/reducers/provider-state-updaters.js +27 -72
  748. package/dist/reducers/provider-state.d.ts +4 -0
  749. package/dist/reducers/provider-state.js +3 -3
  750. package/dist/reducers/root.d.ts +24 -0
  751. package/dist/reducers/root.js +4 -4
  752. package/dist/reducers/types.d.ts +16 -0
  753. package/dist/reducers/types.js +6 -0
  754. package/dist/reducers/ui-state-updaters.d.ts +434 -0
  755. package/dist/reducers/ui-state-updaters.js +27 -38
  756. package/dist/reducers/ui-state.d.ts +3 -0
  757. package/dist/reducers/ui-state.js +5 -4
  758. package/dist/reducers/vis-state-merger.d.ts +110 -0
  759. package/dist/reducers/vis-state-merger.js +47 -43
  760. package/dist/reducers/vis-state-selectors.d.ts +10 -0
  761. package/dist/reducers/vis-state-selectors.js +1 -1
  762. package/dist/reducers/vis-state-updaters.d.ts +645 -0
  763. package/dist/reducers/vis-state-updaters.js +72 -126
  764. package/dist/reducers/vis-state.d.ts +4 -0
  765. package/dist/reducers/vis-state.js +4 -4
  766. package/dist/schemas/dataset-schema.d.ts +17 -0
  767. package/dist/schemas/dataset-schema.js +9 -12
  768. package/dist/schemas/index.d.ts +8 -0
  769. package/dist/schemas/index.js +2 -2
  770. package/dist/schemas/map-state-schema.d.ts +23 -0
  771. package/dist/schemas/map-state-schema.js +1 -1
  772. package/dist/schemas/map-style-schema.d.ts +38 -0
  773. package/dist/schemas/map-style-schema.js +5 -7
  774. package/dist/schemas/schema-manager.d.ts +271 -0
  775. package/dist/schemas/schema-manager.js +7 -5
  776. package/dist/schemas/schema-utils.d.ts +11 -0
  777. package/dist/schemas/schema-utils.js +1 -1
  778. package/dist/schemas/schema.d.ts +37 -0
  779. package/dist/schemas/schema.js +4 -4
  780. package/dist/schemas/versions.d.ts +5 -0
  781. package/dist/schemas/versions.js +1 -1
  782. package/dist/schemas/vis-state-schema.d.ts +214 -0
  783. package/dist/schemas/vis-state-schema.js +57 -77
  784. package/dist/styles/base.d.ts +1530 -0
  785. package/dist/styles/base.js +8 -4
  786. package/dist/styles/index.d.ts +2 -0
  787. package/dist/styles/index.js +1 -1
  788. package/dist/styles/media-breakpoints.d.ts +13 -0
  789. package/dist/styles/media-breakpoints.js +26 -7
  790. package/dist/tasks/tasks.d.ts +15 -0
  791. package/dist/tasks/tasks.js +12 -12
  792. package/dist/templates/export-map-html.d.ts +9 -0
  793. package/dist/templates/export-map-html.js +1 -1
  794. package/dist/utils/aggregate-utils.d.ts +3 -0
  795. package/dist/utils/aggregate-utils.js +1 -1
  796. package/dist/utils/color-utils.d.ts +44 -0
  797. package/dist/utils/color-utils.js +24 -9
  798. package/dist/utils/custom-scales.js +1 -1
  799. package/dist/utils/data-scale-utils.d.ts +23 -0
  800. package/dist/utils/data-scale-utils.js +1 -6
  801. package/dist/utils/data-utils.d.ts +115 -0
  802. package/dist/utils/data-utils.js +18 -39
  803. package/dist/utils/dataset-utils.d.ts +38 -0
  804. package/dist/utils/dataset-utils.js +4 -5
  805. package/dist/utils/dom-to-image.d.ts +73 -0
  806. package/dist/utils/dom-to-image.js +5 -5
  807. package/dist/utils/dom-utils.d.ts +20 -0
  808. package/dist/utils/dom-utils.js +1 -1
  809. package/dist/utils/export-utils.d.ts +56 -0
  810. package/dist/utils/export-utils.js +31 -25
  811. package/dist/utils/filter-utils.d.ts +267 -0
  812. package/dist/utils/filter-utils.js +40 -95
  813. package/dist/utils/gl-utils.d.ts +1 -0
  814. package/dist/utils/gl-utils.js +1 -1
  815. package/dist/utils/gpu-filter-utils.d.ts +28 -0
  816. package/dist/utils/gpu-filter-utils.js +13 -20
  817. package/dist/utils/index.d.ts +22 -0
  818. package/dist/utils/index.js +136 -38
  819. package/dist/utils/interaction-utils.d.ts +36 -0
  820. package/dist/utils/interaction-utils.js +10 -17
  821. package/dist/utils/layer-utils.d.ts +54 -0
  822. package/dist/utils/layer-utils.js +2 -3
  823. package/dist/utils/locale-utils.d.ts +2 -0
  824. package/dist/utils/locale-utils.js +5 -5
  825. package/dist/utils/map-info-utils.d.ts +1 -0
  826. package/dist/utils/map-info-utils.js +1 -1
  827. package/dist/utils/map-style-utils/mapbox-gl-style-editor.d.ts +64 -0
  828. package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +18 -18
  829. package/dist/utils/map-style-utils/mapbox-utils.d.ts +3 -0
  830. package/dist/utils/map-style-utils/mapbox-utils.js +1 -1
  831. package/dist/utils/mapbox-utils.d.ts +7 -0
  832. package/dist/utils/mapbox-utils.js +1 -1
  833. package/dist/utils/notifications-utils.d.ts +54 -0
  834. package/dist/utils/notifications-utils.js +8 -8
  835. package/dist/utils/observe-dimensions.d.ts +15 -0
  836. package/dist/utils/observe-dimensions.js +8 -8
  837. package/dist/utils/projection-utils.d.ts +12 -0
  838. package/dist/utils/projection-utils.js +1 -1
  839. package/dist/utils/searcher-utils.d.ts +1 -0
  840. package/dist/utils/searcher-utils.js +1 -1
  841. package/dist/utils/split-map-utils.d.ts +29 -0
  842. package/dist/utils/split-map-utils.js +4 -4
  843. package/dist/utils/table-utils/data-container-interface.d.ts +115 -0
  844. package/dist/utils/table-utils/data-container-interface.js +6 -0
  845. package/dist/utils/table-utils/data-container-utils.d.ts +29 -0
  846. package/dist/utils/table-utils/data-container-utils.js +18 -7
  847. package/dist/utils/table-utils/data-row.d.ts +59 -0
  848. package/dist/utils/table-utils/data-row.js +61 -8
  849. package/dist/utils/table-utils/index.d.ts +1 -0
  850. package/dist/utils/table-utils/index.js +1 -1
  851. package/dist/utils/table-utils/indexed-data-container.d.ts +34 -0
  852. package/dist/utils/table-utils/indexed-data-container.js +18 -12
  853. package/dist/utils/table-utils/kepler-table.d.ts +168 -0
  854. package/dist/utils/table-utils/kepler-table.js +56 -22
  855. package/dist/utils/table-utils/row-data-container.d.ts +31 -0
  856. package/dist/utils/table-utils/row-data-container.js +11 -8
  857. package/dist/utils/utils.d.ts +98 -0
  858. package/dist/utils/utils.js +28 -4
  859. package/package.json +139 -60
  860. package/src/actions/action-wrapper.ts +183 -0
  861. package/src/actions/actions.ts +259 -0
  862. package/src/actions/identity-actions.ts +116 -0
  863. package/src/actions/map-state-actions.ts +116 -0
  864. package/src/actions/map-style-actions.ts +243 -0
  865. package/src/actions/provider-actions.ts +218 -0
  866. package/src/actions/ui-state-actions.ts +490 -0
  867. package/src/actions/vis-state-actions.ts +1279 -0
  868. package/src/cloud-providers/index.ts +22 -0
  869. package/src/cloud-providers/provider.ts +276 -0
  870. package/src/components/bottom-widget.tsx +277 -0
  871. package/src/components/common/action-panel.tsx +207 -0
  872. package/src/components/common/animation-control/animation-control.tsx +157 -0
  873. package/src/components/common/animation-control/animation-controller.ts +250 -0
  874. package/src/components/common/animation-control/animation-speed-slider.tsx +86 -0
  875. package/src/components/common/animation-control/floating-time-display.tsx +209 -0
  876. package/src/components/common/animation-control/playback-controls.tsx +316 -0
  877. package/src/components/common/animation-control/speed-control.tsx +71 -0
  878. package/src/components/common/checkbox.tsx +137 -0
  879. package/src/components/common/color-legend.tsx +203 -0
  880. package/src/components/common/data-table/button.tsx +54 -0
  881. package/src/components/common/data-table/cell-size.ts +185 -0
  882. package/src/components/common/data-table/grid.tsx +57 -0
  883. package/src/components/common/data-table/index.tsx +693 -0
  884. package/src/components/common/data-table/option-dropdown.tsx +122 -0
  885. package/src/components/common/dataset-label.tsx +48 -0
  886. package/src/components/common/error-boundary.tsx +47 -0
  887. package/src/components/common/field-selector.tsx +242 -0
  888. package/src/components/common/field-token.tsx +60 -0
  889. package/src/components/common/file-uploader/file-drop.tsx +209 -0
  890. package/src/components/common/file-uploader/file-upload-progress.tsx +123 -0
  891. package/src/components/common/file-uploader/file-upload.tsx +319 -0
  892. package/src/components/common/file-uploader/upload-button.tsx +89 -0
  893. package/src/components/common/histogram-plot.tsx +125 -0
  894. package/src/components/common/icons/add.tsx +37 -0
  895. package/src/components/common/icons/anchor_window.tsx +49 -0
  896. package/src/components/common/icons/arrow-down-alt.tsx +37 -0
  897. package/src/components/common/icons/arrow-down-solid.tsx +37 -0
  898. package/src/components/common/icons/arrow-down.tsx +40 -0
  899. package/src/components/common/icons/arrow-left.tsx +42 -0
  900. package/src/components/common/icons/arrow-right.tsx +40 -0
  901. package/src/components/common/icons/arrow-up-alt.tsx +40 -0
  902. package/src/components/common/icons/arrow-up-solid.tsx +37 -0
  903. package/src/components/common/icons/arrow-up.tsx +40 -0
  904. package/src/components/common/icons/base.tsx +95 -0
  905. package/src/components/common/icons/bug.tsx +40 -0
  906. package/src/components/common/icons/cancel.tsx +37 -0
  907. package/src/components/common/icons/checkmark.tsx +39 -0
  908. package/src/components/common/icons/chevron-right.js +2 -2
  909. package/src/components/common/icons/clipboard.tsx +40 -0
  910. package/src/components/common/icons/clock.tsx +38 -0
  911. package/src/components/common/icons/close.tsx +43 -0
  912. package/src/components/common/icons/code-alt.tsx +37 -0
  913. package/src/components/common/icons/copy.tsx +38 -0
  914. package/src/components/common/icons/crosshairs.tsx +37 -0
  915. package/src/components/common/icons/cube-3d.tsx +39 -0
  916. package/src/components/common/icons/cursor-click.tsx +43 -0
  917. package/src/components/common/icons/data-table.tsx +40 -0
  918. package/src/components/common/icons/db.tsx +40 -0
  919. package/src/components/common/icons/delete.tsx +39 -0
  920. package/src/components/common/icons/docs.tsx +40 -0
  921. package/src/components/common/icons/drag-n-drop.tsx +38 -0
  922. package/src/components/common/icons/draw-polygon.tsx +51 -0
  923. package/src/components/common/icons/email.tsx +39 -0
  924. package/src/components/common/icons/expand.tsx +39 -0
  925. package/src/components/common/icons/eye-seen.tsx +38 -0
  926. package/src/components/common/icons/eye-unseen.tsx +38 -0
  927. package/src/components/common/icons/file-type.tsx +71 -0
  928. package/src/components/common/icons/file.tsx +37 -0
  929. package/src/components/common/icons/files.tsx +37 -0
  930. package/src/components/common/icons/filter-funnel.tsx +37 -0
  931. package/src/components/common/icons/free-window.tsx +48 -0
  932. package/src/components/common/icons/gear.tsx +40 -0
  933. package/src/components/common/icons/hash.tsx +37 -0
  934. package/src/components/common/icons/histogram.tsx +42 -0
  935. package/src/components/common/icons/index.tsx +98 -0
  936. package/src/components/common/icons/info.tsx +48 -0
  937. package/src/components/common/icons/layers.tsx +37 -0
  938. package/src/components/common/icons/left-arrow.tsx +37 -0
  939. package/src/components/common/icons/legend.tsx +37 -0
  940. package/src/components/common/icons/line-chart.tsx +40 -0
  941. package/src/components/common/icons/login.tsx +41 -0
  942. package/src/components/common/icons/logout.tsx +38 -0
  943. package/src/components/common/icons/map-icon.tsx +62 -0
  944. package/src/components/common/icons/map.tsx +62 -0
  945. package/src/components/common/icons/messages.tsx +37 -0
  946. package/src/components/common/icons/minus.tsx +39 -0
  947. package/src/components/common/icons/order-by-dataset.tsx +49 -0
  948. package/src/components/common/icons/order-by-list.tsx +39 -0
  949. package/src/components/common/icons/pause.tsx +37 -0
  950. package/src/components/common/icons/picture.tsx +37 -0
  951. package/src/components/common/icons/pin.tsx +42 -0
  952. package/src/components/common/icons/play.tsx +37 -0
  953. package/src/components/common/icons/polygon.tsx +65 -0
  954. package/src/components/common/icons/rectangle.tsx +66 -0
  955. package/src/components/common/icons/reduce.tsx +42 -0
  956. package/src/components/common/icons/reset.tsx +37 -0
  957. package/src/components/common/icons/rocket.tsx +37 -0
  958. package/src/components/common/icons/save.tsx +38 -0
  959. package/src/components/common/icons/save2.tsx +42 -0
  960. package/src/components/common/icons/search.tsx +38 -0
  961. package/src/components/common/icons/settings.tsx +39 -0
  962. package/src/components/common/icons/share.tsx +37 -0
  963. package/src/components/common/icons/split.tsx +57 -0
  964. package/src/components/common/icons/square-select.tsx +38 -0
  965. package/src/components/common/icons/swap-horizontal.js +1 -1
  966. package/src/components/common/icons/table.tsx +41 -0
  967. package/src/components/common/icons/trash.tsx +45 -0
  968. package/src/components/common/icons/upload.tsx +37 -0
  969. package/src/components/common/icons/vert-dots.tsx +44 -0
  970. package/src/components/common/icons/vert-three-dots.tsx +39 -0
  971. package/src/components/common/icons/warning.tsx +40 -0
  972. package/src/components/common/image-preview.tsx +118 -0
  973. package/src/components/common/info-helper.tsx +91 -0
  974. package/src/components/common/item-selector/accessor.ts +45 -0
  975. package/src/components/common/item-selector/chickleted-input.tsx +153 -0
  976. package/src/components/common/item-selector/dropdown-list.tsx +269 -0
  977. package/src/components/common/item-selector/item-selector-submenu.js +2 -1
  978. package/src/components/common/item-selector/item-selector.d.ts +24 -27
  979. package/src/components/common/item-selector/item-selector.tsx +373 -0
  980. package/src/components/common/item-selector/typeahead.tsx +533 -0
  981. package/src/components/common/line-chart.tsx +170 -0
  982. package/src/components/common/loading-spinner.tsx +75 -0
  983. package/src/components/common/logo.tsx +88 -0
  984. package/src/components/common/map-layer-selector.tsx +64 -0
  985. package/src/components/common/modal.tsx +238 -0
  986. package/src/components/common/portaled.tsx +311 -0
  987. package/src/components/common/progress-bar.tsx +74 -0
  988. package/src/components/common/range-brush.tsx +276 -0
  989. package/src/components/common/range-plot.tsx +145 -0
  990. package/src/components/common/range-slider.tsx +320 -0
  991. package/src/components/common/slider/mouse-event.ts +122 -0
  992. package/src/components/common/slider/slider-bar-handle.tsx +106 -0
  993. package/src/components/common/slider/slider-handle.tsx +210 -0
  994. package/src/components/common/slider/slider.tsx +234 -0
  995. package/src/components/common/styled-components.tsx +714 -0
  996. package/src/components/common/switch.tsx +47 -0
  997. package/src/components/common/time-range-slider-time-title.tsx +87 -0
  998. package/src/components/common/time-range-slider.tsx +171 -0
  999. package/src/components/common/time-slider-marker.tsx +187 -0
  1000. package/src/components/common/tippy-tooltip.tsx +130 -0
  1001. package/src/components/common/toolbar-item.tsx +99 -0
  1002. package/src/components/common/toolbar.tsx +49 -0
  1003. package/src/components/common/vertical-toolbar.tsx +35 -0
  1004. package/src/components/container.d.ts +8 -0
  1005. package/src/components/container.tsx +189 -0
  1006. package/src/components/context.ts +32 -0
  1007. package/src/components/editor/editor.tsx +234 -0
  1008. package/src/components/editor/feature-action-panel.tsx +155 -0
  1009. package/src/components/editor/feature-styles.ts +76 -0
  1010. package/src/components/editor/handle-style.ts +89 -0
  1011. package/src/components/filters/filter-panels/filter-panel-with-field-select.tsx +118 -0
  1012. package/src/components/filters/filter-panels/multi-select-filter-panel.tsx +63 -0
  1013. package/src/components/filters/filter-panels/new-filter-panel.tsx +100 -0
  1014. package/src/components/filters/filter-panels/polygon-filter-panel.tsx +84 -0
  1015. package/src/components/filters/filter-panels/range-filter-panel.tsx +63 -0
  1016. package/src/components/filters/filter-panels/single-select-filter-panel.tsx +63 -0
  1017. package/src/components/filters/filter-panels/time-range-filter-panel.tsx +92 -0
  1018. package/src/components/filters/filter-panels/types.ts +40 -0
  1019. package/src/components/filters/multi-select-filter.tsx +37 -0
  1020. package/src/components/filters/polygon-filter.tsx +74 -0
  1021. package/src/components/filters/range-filter.tsx +44 -0
  1022. package/src/components/filters/single-select-filter.tsx +50 -0
  1023. package/src/components/filters/time-range-filter.tsx +76 -0
  1024. package/src/components/filters/time-widget.tsx +240 -0
  1025. package/src/components/filters/types.ts +78 -0
  1026. package/src/components/geocoder/geocoder.tsx +307 -0
  1027. package/src/components/geocoder-panel.tsx +199 -0
  1028. package/src/components/index.ts +269 -0
  1029. package/src/components/injector.d.ts +33 -0
  1030. package/src/components/injector.tsx +171 -0
  1031. package/src/components/kepler-gl.d.ts +1 -2
  1032. package/src/components/kepler-gl.tsx +585 -0
  1033. package/src/components/map/coordinate-info.tsx +58 -0
  1034. package/src/components/map/layer-hover-info.tsx +192 -0
  1035. package/src/components/map/layer-selector-panel.tsx +122 -0
  1036. package/src/components/map/locale-panel.tsx +110 -0
  1037. package/src/components/map/map-control-panel.tsx +142 -0
  1038. package/src/components/map/map-control-tooltip.tsx +45 -0
  1039. package/src/components/map/map-control.tsx +138 -0
  1040. package/src/components/map/map-draw-panel.tsx +145 -0
  1041. package/src/components/map/map-legend-panel.tsx +167 -0
  1042. package/src/components/map/map-legend.tsx +284 -0
  1043. package/src/components/map/map-popover.tsx +268 -0
  1044. package/src/components/map/split-map-button.tsx +98 -0
  1045. package/src/components/map/toggle-3d-button.tsx +90 -0
  1046. package/src/components/map-container.tsx +549 -0
  1047. package/src/components/maps-layout.tsx +45 -0
  1048. package/src/components/modal-container.tsx +555 -0
  1049. package/src/components/modals/add-map-style-modal.tsx +304 -0
  1050. package/src/components/modals/cloud-tile.tsx +181 -0
  1051. package/src/components/modals/data-table-modal.tsx +241 -0
  1052. package/src/components/modals/delete-data-modal.tsx +55 -0
  1053. package/src/components/modals/error-display.tsx +43 -0
  1054. package/src/components/modals/export-data-modal.tsx +201 -0
  1055. package/src/components/modals/export-image-modal.tsx +155 -0
  1056. package/src/components/modals/export-map-modal/export-html-map.tsx +164 -0
  1057. package/src/components/modals/export-map-modal/export-json-map.tsx +112 -0
  1058. package/src/components/modals/export-map-modal/export-map-modal.tsx +109 -0
  1059. package/src/components/modals/image-modal-container.tsx +86 -0
  1060. package/src/components/modals/load-data-modal.tsx +120 -0
  1061. package/src/components/modals/load-storage-map.tsx +414 -0
  1062. package/src/components/modals/loading-dialog.tsx +77 -0
  1063. package/src/components/modals/modal-tabs.tsx +137 -0
  1064. package/src/components/modals/overwrite-map-modal.tsx +113 -0
  1065. package/src/components/modals/provider-modal-container.tsx +62 -0
  1066. package/src/components/modals/save-map-modal.tsx +277 -0
  1067. package/src/components/modals/share-map-modal.tsx +217 -0
  1068. package/src/components/modals/status-panel.tsx +106 -0
  1069. package/src/components/modals/storage-map-viewer.tsx +190 -0
  1070. package/src/components/notification-panel/notification-item.tsx +143 -0
  1071. package/src/components/notification-panel.tsx +75 -0
  1072. package/src/components/performance.tsx +105 -0
  1073. package/src/components/plot-container.tsx +243 -0
  1074. package/src/components/side-panel/common/dataset-info.tsx +46 -0
  1075. package/src/components/side-panel/common/dataset-tag.tsx +86 -0
  1076. package/src/components/side-panel/common/dataset-title.tsx +187 -0
  1077. package/src/components/side-panel/common/source-data-catalog.tsx +67 -0
  1078. package/src/components/side-panel/common/source-data-selector.tsx +90 -0
  1079. package/src/components/side-panel/common/types.ts +76 -0
  1080. package/src/components/side-panel/filter-manager.tsx +120 -0
  1081. package/src/components/side-panel/filter-panel/filter-panel-header.tsx +96 -0
  1082. package/src/components/side-panel/filter-panel/filter-panel.tsx +125 -0
  1083. package/src/components/side-panel/interaction-manager.tsx +59 -0
  1084. package/src/components/side-panel/interaction-panel/brush-config.tsx +58 -0
  1085. package/src/components/side-panel/interaction-panel/interaction-panel.tsx +124 -0
  1086. package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.tsx +243 -0
  1087. package/src/components/side-panel/interaction-panel/tooltip-config.tsx +238 -0
  1088. package/src/components/side-panel/layer-manager.tsx +242 -0
  1089. package/src/components/side-panel/layer-panel/add-layer-button.tsx +208 -0
  1090. package/src/components/side-panel/layer-panel/color-dimension-scale-selector.tsx +33 -0
  1091. package/src/components/side-panel/layer-panel/color-palette.tsx +98 -0
  1092. package/src/components/side-panel/layer-panel/color-range-selector.tsx +388 -0
  1093. package/src/components/side-panel/layer-panel/color-selector.tsx +200 -0
  1094. package/src/components/side-panel/layer-panel/column-selector.tsx +102 -0
  1095. package/src/components/side-panel/layer-panel/custom-markers-config-group.tsx +30 -0
  1096. package/src/components/side-panel/layer-panel/custom-palette.tsx +301 -0
  1097. package/src/components/side-panel/layer-panel/custom-picker.tsx +99 -0
  1098. package/src/components/side-panel/layer-panel/dataset-layer-group.tsx +99 -0
  1099. package/src/components/side-panel/layer-panel/dataset-layer-section.tsx +100 -0
  1100. package/src/components/side-panel/layer-panel/dataset-section.tsx +125 -0
  1101. package/src/components/side-panel/layer-panel/dimension-scale-selector.tsx +64 -0
  1102. package/src/components/side-panel/layer-panel/hex-column-config.tsx +53 -0
  1103. package/src/components/side-panel/layer-panel/layer-column-config.tsx +115 -0
  1104. package/src/components/side-panel/layer-panel/layer-config-group.tsx +259 -0
  1105. package/src/components/side-panel/layer-panel/layer-configurator.tsx +1419 -0
  1106. package/src/components/side-panel/layer-panel/layer-list.tsx +193 -0
  1107. package/src/components/side-panel/layer-panel/layer-panel-header.tsx +273 -0
  1108. package/src/components/side-panel/layer-panel/layer-panel.tsx +197 -0
  1109. package/src/components/side-panel/layer-panel/layer-type-dropdown-list.tsx +118 -0
  1110. package/src/components/side-panel/layer-panel/layer-type-list-item.tsx +92 -0
  1111. package/src/components/side-panel/layer-panel/layer-type-selector.tsx +115 -0
  1112. package/src/components/side-panel/layer-panel/layer-visibility-by-zoom.tsx +123 -0
  1113. package/src/components/side-panel/layer-panel/panel-view-list-toggle.tsx +132 -0
  1114. package/src/components/side-panel/layer-panel/single-color-palette.tsx +94 -0
  1115. package/src/components/side-panel/layer-panel/text-label-panel.tsx +189 -0
  1116. package/src/components/side-panel/layer-panel/vis-config-by-field-selector.tsx +187 -0
  1117. package/src/components/side-panel/layer-panel/vis-config-slider.tsx +237 -0
  1118. package/src/components/side-panel/layer-panel/vis-config-switch.tsx +86 -0
  1119. package/src/components/side-panel/map-manager.tsx +123 -0
  1120. package/src/components/side-panel/map-style-panel/map-layer-selector.tsx +145 -0
  1121. package/src/components/side-panel/map-style-panel/map-style-selector.tsx +122 -0
  1122. package/src/components/side-panel/panel-dropdown.tsx +54 -0
  1123. package/src/components/side-panel/panel-header-action.tsx +114 -0
  1124. package/src/components/side-panel/panel-header.tsx +386 -0
  1125. package/src/components/side-panel/panel-tab.tsx +79 -0
  1126. package/src/components/side-panel/panel-title.tsx +35 -0
  1127. package/src/components/side-panel/panel-toggle.tsx +72 -0
  1128. package/src/components/side-panel/side-bar.tsx +141 -0
  1129. package/src/components/side-panel.tsx +261 -0
  1130. package/src/components/types.ts +41 -0
  1131. package/src/connect/keplergl-connect.ts +48 -0
  1132. package/src/connect/with-local-selector.tsx +70 -0
  1133. package/src/constants/action-types.ts +188 -0
  1134. package/src/constants/color-ranges.ts +87 -0
  1135. package/src/constants/default-settings.ts +1051 -0
  1136. package/src/deckgl-layers/3d-building-layer/3d-building-layer.ts +63 -0
  1137. package/src/deckgl-layers/3d-building-layer/3d-building-utils.ts +211 -0
  1138. package/src/deckgl-layers/3d-building-layer/types.ts +29 -0
  1139. package/src/deckgl-layers/column-layer/enhanced-column-layer.ts +63 -0
  1140. package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.ts +70 -0
  1141. package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.ts +70 -0
  1142. package/src/deckgl-layers/layer-utils/cluster-utils.ts +78 -0
  1143. package/src/deckgl-layers/layer-utils/cpu-aggregator.ts +671 -0
  1144. package/src/deckgl-layers/layer-utils/shader-utils.ts +41 -0
  1145. package/src/deckgl-layers/line-layer/line-layer.ts +126 -0
  1146. package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.ts +68 -0
  1147. package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.ts +102 -0
  1148. package/src/index.ts +52 -0
  1149. package/src/layers/aggregation-layer.ts +400 -0
  1150. package/src/layers/arc-layer/arc-layer-icon.tsx +67 -0
  1151. package/src/layers/arc-layer/arc-layer.ts +294 -0
  1152. package/src/layers/base-layer.ts +1744 -0
  1153. package/src/layers/cluster-layer/cluster-layer.ts +162 -0
  1154. package/src/layers/geojson-layer/geojson-layer-icon.tsx +68 -0
  1155. package/src/layers/geojson-layer/geojson-layer.ts +462 -0
  1156. package/src/layers/geojson-layer/geojson-utils.ts +200 -0
  1157. package/src/layers/grid-layer/grid-layer-icon.tsx +53 -0
  1158. package/src/layers/grid-layer/grid-layer.ts +154 -0
  1159. package/src/layers/grid-layer/grid-utils.ts +84 -0
  1160. package/src/layers/h3-hexagon-layer/h3-hexagon-layer.ts +340 -0
  1161. package/src/layers/h3-hexagon-layer/h3-utils.ts +67 -0
  1162. package/src/layers/heatmap-layer/heatmap-layer.ts +255 -0
  1163. package/src/layers/hexagon-layer/hexagon-layer.ts +157 -0
  1164. package/src/layers/hexagon-layer/hexagon-utils.ts +64 -0
  1165. package/src/layers/icon-layer/icon-info-modal.tsx +155 -0
  1166. package/src/layers/icon-layer/icon-layer.ts +396 -0
  1167. package/src/layers/index.ts +81 -0
  1168. package/src/layers/layer-factory.ts +707 -0
  1169. package/src/layers/layer-text-label.ts +62 -0
  1170. package/src/layers/layer-update.ts +70 -0
  1171. package/src/layers/line-layer/line-layer.ts +223 -0
  1172. package/src/layers/mapbox-utils.ts +204 -0
  1173. package/src/layers/mapboxgl-layer.ts +176 -0
  1174. package/src/layers/point-layer/point-layer.ts +507 -0
  1175. package/src/layers/s2-geometry-layer/s2-geometry-layer.ts +369 -0
  1176. package/src/layers/s2-geometry-layer/s2-utils.ts +42 -0
  1177. package/src/layers/scenegraph-layer/scenegraph-layer.ts +237 -0
  1178. package/src/layers/trip-layer/trip-layer.ts +356 -0
  1179. package/src/layers/trip-layer/trip-utils.ts +177 -0
  1180. package/src/localization/formatted-message.tsx +42 -0
  1181. package/src/localization/index.ts +29 -0
  1182. package/src/localization/locales.ts +53 -0
  1183. package/src/localization/messages.ts +40 -0
  1184. package/src/localization/translations/ca.ts +476 -0
  1185. package/src/localization/translations/cn.ts +477 -0
  1186. package/src/localization/translations/en.ts +504 -0
  1187. package/src/localization/translations/es.ts +477 -0
  1188. package/src/localization/translations/fi.ts +448 -0
  1189. package/src/localization/translations/ja.ts +477 -0
  1190. package/src/localization/translations/pt.ts +449 -0
  1191. package/src/localization/translations/ru.ts +488 -0
  1192. package/src/middleware/index.ts +35 -0
  1193. package/src/processors/data-processor.ts +723 -0
  1194. package/src/processors/file-handler.ts +250 -0
  1195. package/src/processors/index.ts +23 -0
  1196. package/src/processors/types.ts +22 -0
  1197. package/src/reducers/combined-updaters.ts +215 -0
  1198. package/src/reducers/composer-helpers.ts +75 -0
  1199. package/src/reducers/core.ts +111 -0
  1200. package/src/reducers/index.ts +116 -0
  1201. package/src/reducers/map-state-updaters.ts +271 -0
  1202. package/src/reducers/map-state.ts +47 -0
  1203. package/src/reducers/map-style-updaters.ts +638 -0
  1204. package/src/reducers/map-style.ts +53 -0
  1205. package/src/reducers/provider-state-updaters.ts +454 -0
  1206. package/src/reducers/provider-state.ts +53 -0
  1207. package/src/reducers/root.ts +230 -0
  1208. package/src/reducers/types.ts +18 -0
  1209. package/src/reducers/ui-state-updaters.ts +925 -0
  1210. package/src/reducers/ui-state.ts +75 -0
  1211. package/src/reducers/vis-state-merger.ts +625 -0
  1212. package/src/reducers/vis-state-selectors.ts +35 -0
  1213. package/src/reducers/vis-state-updaters.ts +2567 -0
  1214. package/src/reducers/vis-state.ts +157 -0
  1215. package/src/schemas/dataset-schema.ts +141 -0
  1216. package/src/schemas/index.ts +52 -0
  1217. package/src/schemas/schema-manager.ts +445 -0
  1218. package/src/schemas/schema.ts +122 -0
  1219. package/src/schemas/vis-state-schema.ts +761 -0
  1220. package/src/styles/base.ts +1642 -0
  1221. package/src/styles/media-breakpoints.ts +56 -0
  1222. package/src/tasks/tasks.ts +92 -0
  1223. package/src/typedefs/deckgl.d.ts +25 -0
  1224. package/src/utils/aggregate-utils.ts +71 -0
  1225. package/src/utils/color-utils.ts +135 -0
  1226. package/src/utils/data-scale-utils.ts +73 -0
  1227. package/src/utils/data-utils.ts +459 -0
  1228. package/src/utils/dataset-utils.ts +261 -0
  1229. package/src/utils/dom-to-image.ts +533 -0
  1230. package/src/utils/dom-utils.ts +354 -0
  1231. package/src/utils/export-utils.ts +265 -0
  1232. package/src/utils/filter-utils.ts +1181 -0
  1233. package/src/utils/gpu-filter-utils.ts +249 -0
  1234. package/src/utils/index.ts +72 -0
  1235. package/src/utils/interaction-utils.ts +212 -0
  1236. package/src/utils/layer-utils.ts +248 -0
  1237. package/src/utils/map-style-utils/mapbox-gl-style-editor.ts +227 -0
  1238. package/src/utils/notifications-utils.ts +89 -0
  1239. package/src/utils/observe-dimensions.ts +127 -0
  1240. package/src/utils/split-map-utils.ts +104 -0
  1241. package/src/utils/table-utils/data-container-interface.ts +140 -0
  1242. package/src/utils/table-utils/data-container-utils.ts +90 -0
  1243. package/src/utils/table-utils/data-row.ts +110 -0
  1244. package/src/utils/table-utils/indexed-data-container.ts +184 -0
  1245. package/src/utils/table-utils/kepler-table.ts +638 -0
  1246. package/src/utils/table-utils/row-data-container.ts +178 -0
  1247. package/src/utils/utils.ts +228 -0
  1248. package/actions.js +0 -21
  1249. package/cloud-providers.js +0 -21
  1250. package/components.js +0 -21
  1251. package/constants.js +0 -21
  1252. package/dist/components/common/icons/arrow-down-solid .js +0 -64
  1253. package/dist/localization/en.js +0 -494
  1254. package/layers.js +0 -21
  1255. package/localization.js +0 -21
  1256. package/middleware.js +0 -21
  1257. package/processors.js +0 -21
  1258. package/reducers.js +0 -21
  1259. package/schemas.js +0 -21
  1260. package/src/actions/action-wrapper.js +0 -183
  1261. package/src/actions/actions.d.ts +0 -104
  1262. package/src/actions/actions.js +0 -178
  1263. package/src/actions/identity-actions.d.ts +0 -53
  1264. package/src/actions/identity-actions.js +0 -83
  1265. package/src/actions/index.d.ts +0 -23
  1266. package/src/actions/map-state-actions.d.ts +0 -46
  1267. package/src/actions/map-state-actions.js +0 -90
  1268. package/src/actions/map-style-actions.d.ts +0 -116
  1269. package/src/actions/map-style-actions.js +0 -135
  1270. package/src/actions/provider-actions.d.ts +0 -203
  1271. package/src/actions/provider-actions.js +0 -94
  1272. package/src/actions/ui-state-actions.d.ts +0 -200
  1273. package/src/actions/ui-state-actions.js +0 -272
  1274. package/src/actions/vis-state-actions.d.ts +0 -502
  1275. package/src/actions/vis-state-actions.js +0 -919
  1276. package/src/cloud-providers/index.d.ts +0 -53
  1277. package/src/cloud-providers/index.js +0 -21
  1278. package/src/cloud-providers/provider.js +0 -233
  1279. package/src/components/bottom-widget.d.ts +0 -33
  1280. package/src/components/bottom-widget.js +0 -235
  1281. package/src/components/common/action-panel.d.ts +0 -24
  1282. package/src/components/common/action-panel.js +0 -177
  1283. package/src/components/common/animation-control/animation-control.js +0 -155
  1284. package/src/components/common/animation-control/animation-controller.js +0 -224
  1285. package/src/components/common/animation-control/animation-speed-slider.js +0 -79
  1286. package/src/components/common/animation-control/floating-time-display.js +0 -192
  1287. package/src/components/common/animation-control/playback-controls.js +0 -278
  1288. package/src/components/common/animation-control/speed-control.js +0 -71
  1289. package/src/components/common/checkbox.js +0 -128
  1290. package/src/components/common/color-legend.js +0 -198
  1291. package/src/components/common/data-table/button.js +0 -47
  1292. package/src/components/common/data-table/cell-size.js +0 -180
  1293. package/src/components/common/data-table/grid.js +0 -55
  1294. package/src/components/common/data-table/index.js +0 -620
  1295. package/src/components/common/data-table/option-dropdown.js +0 -110
  1296. package/src/components/common/dataset-label.js +0 -40
  1297. package/src/components/common/error-boundary.js +0 -43
  1298. package/src/components/common/field-selector.js +0 -233
  1299. package/src/components/common/field-token.js +0 -56
  1300. package/src/components/common/file-uploader/file-drop.d.ts +0 -19
  1301. package/src/components/common/file-uploader/file-drop.js +0 -196
  1302. package/src/components/common/file-uploader/file-upload-progress.d.ts +0 -11
  1303. package/src/components/common/file-uploader/file-upload-progress.js +0 -110
  1304. package/src/components/common/file-uploader/file-upload.d.ts +0 -22
  1305. package/src/components/common/file-uploader/file-upload.js +0 -301
  1306. package/src/components/common/file-uploader/upload-button.d.ts.wip +0 -11
  1307. package/src/components/common/file-uploader/upload-button.js +0 -83
  1308. package/src/components/common/histogram-plot.js +0 -102
  1309. package/src/components/common/icons/add.js +0 -43
  1310. package/src/components/common/icons/anchor_window.js +0 -53
  1311. package/src/components/common/icons/arrow-down-alt.js +0 -43
  1312. package/src/components/common/icons/arrow-down-solid .js +0 -43
  1313. package/src/components/common/icons/arrow-down.js +0 -46
  1314. package/src/components/common/icons/arrow-left.js +0 -48
  1315. package/src/components/common/icons/arrow-right.js +0 -46
  1316. package/src/components/common/icons/arrow-up-alt.js +0 -46
  1317. package/src/components/common/icons/arrow-up-solid.js +0 -43
  1318. package/src/components/common/icons/arrow-up.js +0 -46
  1319. package/src/components/common/icons/base.js +0 -90
  1320. package/src/components/common/icons/bug.js +0 -46
  1321. package/src/components/common/icons/cancel.js +0 -43
  1322. package/src/components/common/icons/checkmark.js +0 -45
  1323. package/src/components/common/icons/clipboard.js +0 -46
  1324. package/src/components/common/icons/clock.js +0 -44
  1325. package/src/components/common/icons/close.js +0 -49
  1326. package/src/components/common/icons/code-alt.js +0 -43
  1327. package/src/components/common/icons/copy.js +0 -44
  1328. package/src/components/common/icons/crosshairs.js +0 -43
  1329. package/src/components/common/icons/cube-3d.js +0 -45
  1330. package/src/components/common/icons/cursor-click.js +0 -49
  1331. package/src/components/common/icons/data-table.js +0 -45
  1332. package/src/components/common/icons/db.js +0 -45
  1333. package/src/components/common/icons/delete.js +0 -44
  1334. package/src/components/common/icons/docs.js +0 -46
  1335. package/src/components/common/icons/drag-n-drop.js +0 -44
  1336. package/src/components/common/icons/draw-polygon.js +0 -60
  1337. package/src/components/common/icons/email.js +0 -45
  1338. package/src/components/common/icons/expand.js +0 -45
  1339. package/src/components/common/icons/eye-seen.js +0 -44
  1340. package/src/components/common/icons/eye-unseen.js +0 -44
  1341. package/src/components/common/icons/file-type.js +0 -57
  1342. package/src/components/common/icons/file.js +0 -43
  1343. package/src/components/common/icons/files.js +0 -42
  1344. package/src/components/common/icons/filter-funnel.js +0 -43
  1345. package/src/components/common/icons/free-window.js +0 -53
  1346. package/src/components/common/icons/gear.js +0 -45
  1347. package/src/components/common/icons/hash.js +0 -43
  1348. package/src/components/common/icons/histogram.js +0 -47
  1349. package/src/components/common/icons/index.js +0 -96
  1350. package/src/components/common/icons/info.js +0 -54
  1351. package/src/components/common/icons/layers.js +0 -43
  1352. package/src/components/common/icons/left-arrow.js +0 -43
  1353. package/src/components/common/icons/legend.js +0 -43
  1354. package/src/components/common/icons/line-chart.js +0 -45
  1355. package/src/components/common/icons/login.js +0 -46
  1356. package/src/components/common/icons/logout.js +0 -43
  1357. package/src/components/common/icons/map-icon.js +0 -69
  1358. package/src/components/common/icons/map.js +0 -69
  1359. package/src/components/common/icons/messages.js +0 -43
  1360. package/src/components/common/icons/minus.js +0 -45
  1361. package/src/components/common/icons/pause.js +0 -43
  1362. package/src/components/common/icons/picture.js +0 -43
  1363. package/src/components/common/icons/pin.js +0 -43
  1364. package/src/components/common/icons/play.js +0 -43
  1365. package/src/components/common/icons/polygon.js +0 -74
  1366. package/src/components/common/icons/rectangle.js +0 -75
  1367. package/src/components/common/icons/reduce.js +0 -48
  1368. package/src/components/common/icons/reset.js +0 -43
  1369. package/src/components/common/icons/rocket.js +0 -43
  1370. package/src/components/common/icons/save.js +0 -44
  1371. package/src/components/common/icons/save2.js +0 -47
  1372. package/src/components/common/icons/search.js +0 -44
  1373. package/src/components/common/icons/settings.js +0 -45
  1374. package/src/components/common/icons/share.js +0 -43
  1375. package/src/components/common/icons/split.js +0 -63
  1376. package/src/components/common/icons/square-select.js +0 -44
  1377. package/src/components/common/icons/table.js +0 -46
  1378. package/src/components/common/icons/trash.js +0 -51
  1379. package/src/components/common/icons/upload.js +0 -44
  1380. package/src/components/common/icons/vert-dots.js +0 -50
  1381. package/src/components/common/icons/vert-three-dots.js +0 -45
  1382. package/src/components/common/icons/warning.js +0 -46
  1383. package/src/components/common/image-preview.js +0 -111
  1384. package/src/components/common/info-helper.js +0 -84
  1385. package/src/components/common/item-selector/accessor.js +0 -45
  1386. package/src/components/common/item-selector/chickleted-input.js +0 -143
  1387. package/src/components/common/item-selector/dropdown-list.js +0 -258
  1388. package/src/components/common/item-selector/item-selector.js +0 -360
  1389. package/src/components/common/item-selector/typeahead.js +0 -507
  1390. package/src/components/common/line-chart.js +0 -134
  1391. package/src/components/common/loading-spinner.js +0 -64
  1392. package/src/components/common/logo.js +0 -92
  1393. package/src/components/common/map-layer-selector.d.ts +0 -10
  1394. package/src/components/common/map-layer-selector.js +0 -54
  1395. package/src/components/common/modal.js +0 -233
  1396. package/src/components/common/portaled.js +0 -264
  1397. package/src/components/common/progress-bar.d.ts +0 -13
  1398. package/src/components/common/progress-bar.js +0 -49
  1399. package/src/components/common/range-brush.js +0 -256
  1400. package/src/components/common/range-plot.js +0 -139
  1401. package/src/components/common/range-slider.js +0 -299
  1402. package/src/components/common/slider/mouse-event.js +0 -97
  1403. package/src/components/common/slider/slider-bar-handle.js +0 -97
  1404. package/src/components/common/slider/slider-handle.js +0 -181
  1405. package/src/components/common/slider/slider.js +0 -213
  1406. package/src/components/common/styled-components.js +0 -657
  1407. package/src/components/common/switch.js +0 -50
  1408. package/src/components/common/time-range-slider-time-title.js +0 -76
  1409. package/src/components/common/time-range-slider.js +0 -163
  1410. package/src/components/common/time-slider-marker.js +0 -168
  1411. package/src/components/common/toolbar-item.d.ts +0 -14
  1412. package/src/components/common/toolbar-item.js +0 -83
  1413. package/src/components/common/toolbar.js +0 -45
  1414. package/src/components/common/vertical-toolbar.js +0 -35
  1415. package/src/components/container.js +0 -173
  1416. package/src/components/context.d.ts +0 -10
  1417. package/src/components/context.js +0 -32
  1418. package/src/components/editor/editor.js +0 -218
  1419. package/src/components/editor/feature-action-panel.js +0 -143
  1420. package/src/components/editor/feature-styles.js +0 -75
  1421. package/src/components/editor/handle-style.js +0 -89
  1422. package/src/components/filters/filter-panels/filter-panel-types.d.ts +0 -28
  1423. package/src/components/filters/filter-panels/filter-panel-with-field-select.js +0 -124
  1424. package/src/components/filters/filter-panels/multi-select-filter-panel.js +0 -75
  1425. package/src/components/filters/filter-panels/new-filter-panel.js +0 -99
  1426. package/src/components/filters/filter-panels/polygon-filter-panel.js +0 -96
  1427. package/src/components/filters/filter-panels/range-filter-panel.js +0 -75
  1428. package/src/components/filters/filter-panels/single-select-filter-panel.js +0 -75
  1429. package/src/components/filters/filter-panels/time-range-filter-panel.js +0 -95
  1430. package/src/components/filters/multi-select-filter.js +0 -36
  1431. package/src/components/filters/polygon-filter.d.ts +0 -13
  1432. package/src/components/filters/polygon-filter.js +0 -73
  1433. package/src/components/filters/range-filter.js +0 -43
  1434. package/src/components/filters/single-select-filter.js +0 -49
  1435. package/src/components/filters/time-range-filter.js +0 -68
  1436. package/src/components/filters/time-widget.js +0 -228
  1437. package/src/components/geocoder/geocoder.d.ts +0 -33
  1438. package/src/components/geocoder/geocoder.js +0 -272
  1439. package/src/components/geocoder-panel.js +0 -191
  1440. package/src/components/index.js +0 -254
  1441. package/src/components/injector.js +0 -161
  1442. package/src/components/kepler-gl.js +0 -518
  1443. package/src/components/map/coordinate-info.js +0 -53
  1444. package/src/components/map/layer-hover-info.d.ts +0 -12
  1445. package/src/components/map/layer-hover-info.js +0 -185
  1446. package/src/components/map/layer-selector-panel.d.ts +0 -16
  1447. package/src/components/map/layer-selector-panel.js +0 -106
  1448. package/src/components/map/locale-panel.d.ts +0 -12
  1449. package/src/components/map/locale-panel.js +0 -91
  1450. package/src/components/map/map-control-panel.d.ts +0 -11
  1451. package/src/components/map/map-control-panel.js +0 -98
  1452. package/src/components/map/map-control-tooltip.d.ts +0 -8
  1453. package/src/components/map/map-control-tooltip.js +0 -40
  1454. package/src/components/map/map-control.d.ts +0 -37
  1455. package/src/components/map/map-control.js +0 -100
  1456. package/src/components/map/map-draw-panel.d.ts +0 -16
  1457. package/src/components/map/map-draw-panel.js +0 -125
  1458. package/src/components/map/map-legend-panel.d.ts +0 -20
  1459. package/src/components/map/map-legend-panel.js +0 -100
  1460. package/src/components/map/map-legend.d.ts +0 -58
  1461. package/src/components/map/map-legend.js +0 -228
  1462. package/src/components/map/map-popover.d.ts +0 -28
  1463. package/src/components/map/map-popover.js +0 -250
  1464. package/src/components/map/split-map-button.d.ts +0 -19
  1465. package/src/components/map/split-map-button.js +0 -82
  1466. package/src/components/map/toggle-3d-button.d.ts +0 -16
  1467. package/src/components/map/toggle-3d-button.js +0 -75
  1468. package/src/components/map-container.d.ts +0 -18
  1469. package/src/components/map-container.js +0 -499
  1470. package/src/components/maps-layout.d.ts +0 -5
  1471. package/src/components/maps-layout.js +0 -40
  1472. package/src/components/modal-container.d.ts +0 -37
  1473. package/src/components/modal-container.js +0 -543
  1474. package/src/components/modals/add-map-style-modal.js +0 -298
  1475. package/src/components/modals/cloud-tile.js +0 -147
  1476. package/src/components/modals/data-table-modal.js +0 -217
  1477. package/src/components/modals/delete-data-modal.js +0 -48
  1478. package/src/components/modals/error-display.js +0 -39
  1479. package/src/components/modals/export-data-modal.js +0 -193
  1480. package/src/components/modals/export-image-modal.d.ts +0 -21
  1481. package/src/components/modals/export-image-modal.js +0 -144
  1482. package/src/components/modals/export-map-modal/export-html-map.d.ts +0 -21
  1483. package/src/components/modals/export-map-modal/export-html-map.js +0 -145
  1484. package/src/components/modals/export-map-modal/export-json-map.js +0 -100
  1485. package/src/components/modals/export-map-modal/export-map-modal.js +0 -114
  1486. package/src/components/modals/image-modal-container.d.ts +0 -13
  1487. package/src/components/modals/image-modal-container.js +0 -76
  1488. package/src/components/modals/load-data-modal.d.ts +0 -30
  1489. package/src/components/modals/load-data-modal.js +0 -94
  1490. package/src/components/modals/load-storage-map.js +0 -381
  1491. package/src/components/modals/loading-dialog.js +0 -69
  1492. package/src/components/modals/modal-tabs.js +0 -126
  1493. package/src/components/modals/overwrite-map-modal.d.ts +0 -18
  1494. package/src/components/modals/overwrite-map-modal.js +0 -97
  1495. package/src/components/modals/provider-modal-container.d.ts +0 -12
  1496. package/src/components/modals/provider-modal-container.js +0 -60
  1497. package/src/components/modals/save-map-modal.d.ts +0 -32
  1498. package/src/components/modals/save-map-modal.js +0 -244
  1499. package/src/components/modals/share-map-modal.js +0 -208
  1500. package/src/components/modals/status-panel.js +0 -95
  1501. package/src/components/modals/storage-map-viewer.js +0 -177
  1502. package/src/components/notification-panel/notification-item.js +0 -132
  1503. package/src/components/notification-panel.js +0 -72
  1504. package/src/components/performance.js +0 -103
  1505. package/src/components/plot-container.js +0 -228
  1506. package/src/components/side-panel/common/dataset-info.js +0 -45
  1507. package/src/components/side-panel/common/dataset-tag.js +0 -55
  1508. package/src/components/side-panel/common/dataset-title.js +0 -146
  1509. package/src/components/side-panel/common/source-data-catalog.js +0 -61
  1510. package/src/components/side-panel/common/source-data-selector.js +0 -79
  1511. package/src/components/side-panel/filter-manager.js +0 -105
  1512. package/src/components/side-panel/filter-panel/filter-panel-header.js +0 -83
  1513. package/src/components/side-panel/filter-panel/filter-panel.js +0 -126
  1514. package/src/components/side-panel/interaction-manager.js +0 -46
  1515. package/src/components/side-panel/interaction-panel/brush-config.js +0 -51
  1516. package/src/components/side-panel/interaction-panel/interaction-panel.js +0 -115
  1517. package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +0 -199
  1518. package/src/components/side-panel/interaction-panel/tooltip-config.js +0 -190
  1519. package/src/components/side-panel/layer-manager.js +0 -290
  1520. package/src/components/side-panel/layer-panel/color-dimension-scale-selector.js +0 -33
  1521. package/src/components/side-panel/layer-panel/color-palette.js +0 -90
  1522. package/src/components/side-panel/layer-panel/color-range-selector.js +0 -359
  1523. package/src/components/side-panel/layer-panel/color-selector.js +0 -196
  1524. package/src/components/side-panel/layer-panel/column-selector.js +0 -70
  1525. package/src/components/side-panel/layer-panel/custom-markers-config-group.js +0 -30
  1526. package/src/components/side-panel/layer-panel/custom-palette.js +0 -296
  1527. package/src/components/side-panel/layer-panel/custom-picker.js +0 -88
  1528. package/src/components/side-panel/layer-panel/dimension-scale-selector.js +0 -48
  1529. package/src/components/side-panel/layer-panel/hex-column-config.js +0 -45
  1530. package/src/components/side-panel/layer-panel/layer-column-config.js +0 -113
  1531. package/src/components/side-panel/layer-panel/layer-config-group.js +0 -237
  1532. package/src/components/side-panel/layer-panel/layer-configurator.js +0 -1412
  1533. package/src/components/side-panel/layer-panel/layer-panel-header.js +0 -236
  1534. package/src/components/side-panel/layer-panel/layer-panel.js +0 -171
  1535. package/src/components/side-panel/layer-panel/layer-type-dropdown-list.js +0 -105
  1536. package/src/components/side-panel/layer-panel/layer-type-list-item.js +0 -83
  1537. package/src/components/side-panel/layer-panel/layer-type-selector.js +0 -89
  1538. package/src/components/side-panel/layer-panel/layer-visibility-by-zoom.js +0 -123
  1539. package/src/components/side-panel/layer-panel/single-color-palette.js +0 -98
  1540. package/src/components/side-panel/layer-panel/text-label-panel.js +0 -179
  1541. package/src/components/side-panel/layer-panel/vis-config-by-field-selector.js +0 -163
  1542. package/src/components/side-panel/layer-panel/vis-config-slider.js +0 -82
  1543. package/src/components/side-panel/layer-panel/vis-config-switch.js +0 -87
  1544. package/src/components/side-panel/map-manager.js +0 -114
  1545. package/src/components/side-panel/map-style-panel/map-layer-selector.js +0 -128
  1546. package/src/components/side-panel/map-style-panel/map-style-selector.js +0 -111
  1547. package/src/components/side-panel/panel-dropdown.js +0 -53
  1548. package/src/components/side-panel/panel-header-action.js +0 -106
  1549. package/src/components/side-panel/panel-header.js +0 -321
  1550. package/src/components/side-panel/panel-tab.js +0 -62
  1551. package/src/components/side-panel/panel-title.js +0 -32
  1552. package/src/components/side-panel/panel-toggle.js +0 -70
  1553. package/src/components/side-panel/side-bar.js +0 -136
  1554. package/src/components/side-panel.d.ts +0 -33
  1555. package/src/components/side-panel.js +0 -253
  1556. package/src/connect/keplergl-connect.js +0 -47
  1557. package/src/connect/with-local-selector.d.ts +0 -11
  1558. package/src/connect/with-local-selector.js +0 -67
  1559. package/src/constants/action-types.d.ts +0 -135
  1560. package/src/constants/action-types.js +0 -184
  1561. package/src/constants/color-ranges.js +0 -72
  1562. package/src/constants/default-settings.js +0 -994
  1563. package/src/deckgl-layers/3d-building-layer/3d-building-layer.js +0 -56
  1564. package/src/deckgl-layers/3d-building-layer/3d-building-utils.js +0 -192
  1565. package/src/deckgl-layers/column-layer/enhanced-column-layer.js +0 -63
  1566. package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +0 -70
  1567. package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +0 -70
  1568. package/src/deckgl-layers/layer-utils/cluster-utils.js +0 -76
  1569. package/src/deckgl-layers/layer-utils/cpu-aggregator.js +0 -583
  1570. package/src/deckgl-layers/layer-utils/shader-utils.js +0 -41
  1571. package/src/deckgl-layers/line-layer/line-layer.js +0 -122
  1572. package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +0 -57
  1573. package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.js +0 -85
  1574. package/src/index.js +0 -52
  1575. package/src/layers/aggregation-layer.js +0 -356
  1576. package/src/layers/arc-layer/arc-layer-icon.js +0 -67
  1577. package/src/layers/arc-layer/arc-layer.js +0 -221
  1578. package/src/layers/base-layer.js +0 -1545
  1579. package/src/layers/cluster-layer/cluster-layer.js +0 -125
  1580. package/src/layers/geojson-layer/geojson-layer-icon.js +0 -68
  1581. package/src/layers/geojson-layer/geojson-layer.js +0 -344
  1582. package/src/layers/geojson-layer/geojson-utils.js +0 -179
  1583. package/src/layers/grid-layer/grid-layer-icon.js +0 -53
  1584. package/src/layers/grid-layer/grid-layer.js +0 -95
  1585. package/src/layers/grid-layer/grid-utils.js +0 -71
  1586. package/src/layers/h3-hexagon-layer/h3-hexagon-layer.js +0 -264
  1587. package/src/layers/h3-hexagon-layer/h3-utils.js +0 -65
  1588. package/src/layers/heatmap-layer/heatmap-layer.js +0 -226
  1589. package/src/layers/hexagon-layer/hexagon-layer.js +0 -95
  1590. package/src/layers/hexagon-layer/hexagon-utils.js +0 -63
  1591. package/src/layers/icon-layer/icon-info-modal.js +0 -155
  1592. package/src/layers/icon-layer/icon-layer.js +0 -324
  1593. package/src/layers/index.d.ts +0 -128
  1594. package/src/layers/index.js +0 -76
  1595. package/src/layers/layer-factory.d.ts +0 -149
  1596. package/src/layers/layer-factory.js +0 -487
  1597. package/src/layers/layer-text-label.js +0 -62
  1598. package/src/layers/layer-update.js +0 -71
  1599. package/src/layers/line-layer/line-layer.js +0 -161
  1600. package/src/layers/mapbox-utils.js +0 -195
  1601. package/src/layers/mapboxgl-layer.js +0 -154
  1602. package/src/layers/point-layer/point-layer.js +0 -412
  1603. package/src/layers/s2-geometry-layer/s2-geometry-layer.js +0 -265
  1604. package/src/layers/s2-geometry-layer/s2-utils.js +0 -36
  1605. package/src/layers/scenegraph-layer/scenegraph-layer.js +0 -182
  1606. package/src/layers/trip-layer/trip-layer.js +0 -295
  1607. package/src/layers/trip-layer/trip-utils.js +0 -169
  1608. package/src/localization/en.js +0 -504
  1609. package/src/localization/formatted-message.js +0 -33
  1610. package/src/localization/index.js +0 -32
  1611. package/src/localization/locales.js +0 -46
  1612. package/src/middleware/index.js +0 -34
  1613. package/src/processors/data-processor.d.ts +0 -57
  1614. package/src/processors/data-processor.js +0 -684
  1615. package/src/processors/file-handler.d.ts +0 -46
  1616. package/src/processors/file-handler.js +0 -220
  1617. package/src/processors/index.js +0 -22
  1618. package/src/reducers/combined-updaters.d.ts +0 -26
  1619. package/src/reducers/combined-updaters.js +0 -198
  1620. package/src/reducers/composer-helpers.d.ts +0 -32
  1621. package/src/reducers/composer-helpers.js +0 -70
  1622. package/src/reducers/core.d.ts +0 -25
  1623. package/src/reducers/core.js +0 -97
  1624. package/src/reducers/index.d.ts +0 -118
  1625. package/src/reducers/index.js +0 -53
  1626. package/src/reducers/map-state-updaters.d.ts +0 -64
  1627. package/src/reducers/map-state-updaters.js +0 -224
  1628. package/src/reducers/map-state.js +0 -47
  1629. package/src/reducers/map-style-updaters.d.ts +0 -76
  1630. package/src/reducers/map-style-updaters.js +0 -541
  1631. package/src/reducers/map-style.js +0 -53
  1632. package/src/reducers/provider-state-updaters.d.ts +0 -88
  1633. package/src/reducers/provider-state-updaters.js +0 -428
  1634. package/src/reducers/provider-state.js +0 -53
  1635. package/src/reducers/root.js +0 -230
  1636. package/src/reducers/types.d.ts +0 -10
  1637. package/src/reducers/ui-state-updaters.d.ts +0 -198
  1638. package/src/reducers/ui-state-updaters.js +0 -766
  1639. package/src/reducers/ui-state.js +0 -73
  1640. package/src/reducers/vis-state-merger.d.ts +0 -78
  1641. package/src/reducers/vis-state-merger.js +0 -557
  1642. package/src/reducers/vis-state-selectors.js +0 -35
  1643. package/src/reducers/vis-state-updaters.d.ts +0 -534
  1644. package/src/reducers/vis-state-updaters.js +0 -2137
  1645. package/src/reducers/vis-state.js +0 -155
  1646. package/src/schemas/dataset-schema.js +0 -141
  1647. package/src/schemas/index.d.ts +0 -24
  1648. package/src/schemas/index.js +0 -42
  1649. package/src/schemas/schema-manager.d.ts +0 -229
  1650. package/src/schemas/schema-manager.js +0 -228
  1651. package/src/schemas/schema.d.ts +0 -47
  1652. package/src/schemas/schema.js +0 -90
  1653. package/src/schemas/versions.d.ts +0 -23
  1654. package/src/schemas/vis-state-schema.js +0 -754
  1655. package/src/styles/base.js +0 -1620
  1656. package/src/styles/media-breakpoints.js +0 -47
  1657. package/src/tasks/tasks.js +0 -92
  1658. package/src/typedefs/README.md +0 -3
  1659. package/src/typedefs/deck.gl__core.d.ts +0 -64
  1660. package/src/typedefs/deck.gl__mesh-layers.d.ts +0 -33
  1661. package/src/utils/aggregate-utils.js +0 -71
  1662. package/src/utils/color-utils.js +0 -115
  1663. package/src/utils/data-scale-utils.d.ts +0 -26
  1664. package/src/utils/data-scale-utils.js +0 -61
  1665. package/src/utils/data-utils.d.ts +0 -46
  1666. package/src/utils/data-utils.js +0 -447
  1667. package/src/utils/dataset-utils.d.ts +0 -10
  1668. package/src/utils/dataset-utils.js +0 -255
  1669. package/src/utils/dom-to-image.js +0 -533
  1670. package/src/utils/dom-utils.js +0 -354
  1671. package/src/utils/export-utils.js +0 -247
  1672. package/src/utils/filter-utils.d.ts +0 -192
  1673. package/src/utils/filter-utils.js +0 -1114
  1674. package/src/utils/gpu-filter-utils.d.ts +0 -28
  1675. package/src/utils/gpu-filter-utils.js +0 -253
  1676. package/src/utils/index.d.ts +0 -5
  1677. package/src/utils/index.js +0 -57
  1678. package/src/utils/interaction-utils.d.ts +0 -36
  1679. package/src/utils/interaction-utils.js +0 -185
  1680. package/src/utils/layer-utils.d.ts +0 -78
  1681. package/src/utils/layer-utils.js +0 -206
  1682. package/src/utils/map-style-utils/mapbox-gl-style-editor.js +0 -201
  1683. package/src/utils/notifications-utils.js +0 -83
  1684. package/src/utils/observe-dimensions.d.ts +0 -18
  1685. package/src/utils/observe-dimensions.js +0 -115
  1686. package/src/utils/split-map-utils.js +0 -104
  1687. package/src/utils/table-utils/data-container-interface.d.ts +0 -140
  1688. package/src/utils/table-utils/data-container-utils.d.ts +0 -43
  1689. package/src/utils/table-utils/data-container-utils.js +0 -61
  1690. package/src/utils/table-utils/data-row.d.ts +0 -65
  1691. package/src/utils/table-utils/data-row.js +0 -54
  1692. package/src/utils/table-utils/index.d.ts +0 -1
  1693. package/src/utils/table-utils/indexed-data-container.d.ts +0 -26
  1694. package/src/utils/table-utils/indexed-data-container.js +0 -152
  1695. package/src/utils/table-utils/kepler-table.d.ts +0 -114
  1696. package/src/utils/table-utils/kepler-table.js +0 -508
  1697. package/src/utils/table-utils/row-data-container.d.ts +0 -30
  1698. package/src/utils/table-utils/row-data-container.js +0 -151
  1699. package/src/utils/utils.js +0 -202
  1700. package/styles.js +0 -21
  1701. /package/src/actions/{index.js → index.ts} +0 -0
  1702. /package/src/components/common/data-table/{canvas.js → canvas.tsx} +0 -0
  1703. /package/src/components/editor/{constants.js → constants.ts} +0 -0
  1704. /package/src/components/filters/{components.js → components.ts} +0 -0
  1705. /package/src/components/filters/{index.js → index.ts} +0 -0
  1706. /package/src/components/map/{map-control-toolbar.js → map-control-toolbar.tsx} +0 -0
  1707. /package/src/components/modals/export-map-modal/{components.js → components.tsx} +0 -0
  1708. /package/src/components/modals/{modal-dialog.js → modal-dialog.tsx} +0 -0
  1709. /package/src/components/side-panel/{cloud-storage-dropdown.js → cloud-storage-dropdown.tsx} +0 -0
  1710. /package/src/components/side-panel/{custom-panel.js → custom-panel.tsx} +0 -0
  1711. /package/src/components/side-panel/layer-panel/{layer-aggregation-resolution.js → layer-aggregation-resolution.tsx} +0 -0
  1712. /package/src/constants/{color-palette.js → color-palette.ts} +0 -0
  1713. /package/src/constants/{custom-color-ranges.js → custom-color-ranges.ts} +0 -0
  1714. /package/src/constants/{index.js → index.ts} +0 -0
  1715. /package/src/constants/{keyevent.js → keyevent.ts} +0 -0
  1716. /package/src/constants/{tooltip.js → tooltip.ts} +0 -0
  1717. /package/src/constants/{user-feedbacks.js → user-feedbacks.ts} +0 -0
  1718. /package/src/constants/{user-guides.js → user-guides.ts} +0 -0
  1719. /package/src/layers/cluster-layer/{cluster-layer-icon.js → cluster-layer-icon.tsx} +0 -0
  1720. /package/src/layers/{default-layer-icon.js → default-layer-icon.tsx} +0 -0
  1721. /package/src/layers/h3-hexagon-layer/{h3-hexagon-layer-icon.js → h3-hexagon-layer-icon.tsx} +0 -0
  1722. /package/src/layers/heatmap-layer/{heatmap-layer-icon.js → heatmap-layer-icon.tsx} +0 -0
  1723. /package/src/layers/hexagon-layer/{hexagon-layer-icon.js → hexagon-layer-icon.tsx} +0 -0
  1724. /package/src/layers/icon-layer/{icon-layer-icon.js → icon-layer-icon.tsx} +0 -0
  1725. /package/src/layers/line-layer/{line-layer-icon.js → line-layer-icon.tsx} +0 -0
  1726. /package/src/layers/point-layer/{point-layer-icon.js → point-layer-icon.tsx} +0 -0
  1727. /package/src/layers/s2-geometry-layer/{s2-layer-icon.js → s2-layer-icon.tsx} +0 -0
  1728. /package/src/layers/scenegraph-layer/{scenegraph-info-modal.js → scenegraph-info-modal.tsx} +0 -0
  1729. /package/src/layers/scenegraph-layer/{scenegraph-layer-icon.js → scenegraph-layer-icon.tsx} +0 -0
  1730. /package/src/layers/trip-layer/{trip-info-modal.js → trip-info-modal.tsx} +0 -0
  1731. /package/src/layers/trip-layer/{trip-layer-icon.js → trip-layer-icon.tsx} +0 -0
  1732. /package/src/layers/{types.js → types.ts} +0 -0
  1733. /package/src/reducers/{composers.js → composers.ts} +0 -0
  1734. /package/src/schemas/{map-state-schema.js → map-state-schema.ts} +0 -0
  1735. /package/src/schemas/{map-style-schema.js → map-style-schema.ts} +0 -0
  1736. /package/src/schemas/{schema-utils.js → schema-utils.ts} +0 -0
  1737. /package/src/schemas/{versions.js → versions.ts} +0 -0
  1738. /package/src/styles/{index.js → index.ts} +0 -0
  1739. /package/src/templates/{export-map-html.js → export-map-html.ts} +0 -0
  1740. /package/src/utils/{gl-utils.js → gl-utils.ts} +0 -0
  1741. /package/src/utils/{locale-utils.js → locale-utils.ts} +0 -0
  1742. /package/src/utils/{map-info-utils.js → map-info-utils.ts} +0 -0
  1743. /package/src/utils/map-style-utils/{mapbox-utils.js → mapbox-utils.ts} +0 -0
  1744. /package/src/utils/{mapbox-utils.js → mapbox-utils.ts} +0 -0
  1745. /package/src/utils/{projection-utils.js → projection-utils.ts} +0 -0
  1746. /package/src/utils/{searcher-utils.js → searcher-utils.ts} +0 -0
  1747. /package/src/utils/table-utils/{index.js → index.ts} +0 -0
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.layerConfigGroupLabelLabelMargin = exports.layerConfigGroupLabelLabelFontSize = exports.layerConfigGroupLabelBorderLeft = exports.layerConfigGroupColor = exports.labelHoverColor = exports.labelColorLT = exports.labelColor = exports.inputPlaceholderFontWeight = exports.inputPlaceholderColorLT = exports.inputPlaceholderColor = exports.inputPaddingTiny = exports.inputPaddingSmall = exports.inputPadding = exports.inputFontWeight = exports.inputFontSizeSmall = exports.inputFontSize = exports.inputColor = exports.inputBoxShadowActiveLT = exports.inputBoxShadowActive = exports.inputBoxShadow = exports.inputBoxHeightTiny = exports.inputBoxHeightSmall = exports.inputBoxHeight = exports.inputBorderRadius = exports.inputBorderHoverColorLT = exports.inputBorderHoverColor = exports.inputBorderColor = exports.inputBorderActiveColorLT = exports.inputBorderActiveColor = exports.inputBgdHover = exports.inputBgdActiveLT = exports.inputBgdActive = exports.inputBgd = exports.histogramFillOutRange = exports.histogramFillInRange = exports.geocoderWidth = exports.geocoderTop = exports.geocoderRight = exports.geocoderInputHeight = exports.fontWeight = exports.fontSize = exports.fontFamily = exports.floatingBtnColor = exports.floatingBtnBorderHover = exports.floatingBtnBorder = exports.floatingBtnBgdHover = exports.floatingBtnBgd = exports.floatingBtnActColor = exports.floatingBtnActBgd = exports.fieldTokenRightMargin = exports.errorColor = exports.dropdownWrapperZ = exports.dropdownWapperMargin = exports.dropdownSelectHeight = exports.dropdownListShadow = exports.dropdownListLineHeight = exports.dropdownListHighlightBgLT = exports.dropdownListHighlightBg = exports.dropdownListBorderTopLT = exports.dropdownListBorderTop = exports.dropdownListBgdLT = exports.dropdownListBgd = exports.dataTableTextColor = exports.ctaBtnColor = exports.ctaBtnBgdHover = exports.ctaBtnBgd = exports.ctaBtnActColor = exports.ctaBtnActBgd = exports.chickletBgdLT = exports.chickletBgd = exports.checkboxWidth = exports.checkboxMargin = exports.checkboxHeight = exports.checkboxBoxBgdChecked = exports.checkboxBoxBgd = exports.checkboxBorderRadius = exports.checkboxBorderColorLT = exports.checkboxBorderColor = exports.btnFontFamily = exports.breakPoints = exports.boxSizing = exports.boxShadow = exports.bottomWidgetPaddingTop = exports.bottomWidgetPaddingRight = exports.bottomWidgetPaddingLeft = exports.bottomWidgetPaddingBottom = exports.bottomWidgetBgd = exports.bottomPanelGap = exports.bottomInnerPdVert = exports.bottomInnerPdSide = exports.borderRadius = exports.borderColorLT = exports.borderColor = exports.axisFontSize = exports.axisFontColor = exports.activeColorLT = exports.activeColorHover = exports.activeColor = exports.actionPanelWidth = exports.actionPanelHeight = void 0;
8
- exports.secondaryInputBgdHover = exports.secondaryInputBgdActive = exports.secondaryInputBgd = exports.secondaryBtnColor = exports.secondaryBtnBorder = exports.secondaryBtnBgdHover = exports.secondaryBtnBgd = exports.secondaryBtnActColor = exports.secondaryBtnActBgd = exports.rangePlotMarginLarge = exports.rangePlotMargin = exports.rangePlotHLarge = exports.rangePlotH = exports.rangePlotContainerHLarge = exports.rangePlotContainerH = exports.rangeBrushBgd = exports.radioRadius = exports.radioButtonRadius = exports.radioButtonBgdColor = exports.radioBorderRadius = exports.radioBorderColor = exports.primaryBtnRadius = exports.primaryBtnFontSizeSmall = exports.primaryBtnFontSizeLarge = exports.primaryBtnFontSizeDefault = exports.primaryBtnColor = exports.primaryBtnBorder = exports.primaryBtnBgdHover = exports.primaryBtnBgd = exports.primaryBtnActColor = exports.primaryBtnActBgd = exports.panelToggleMarginRight = exports.panelToggleBottomPadding = exports.panelToggleBorderColor = exports.panelTabWidth = exports.panelTabColor = exports.panelHeaderIconHover = exports.panelHeaderIconActive = exports.panelHeaderIcon = exports.panelHeaderHeight = exports.panelHeaderBorderRadius = exports.panelContentBackground = exports.panelBoxShadow = exports.panelBorderRadius = exports.panelBorderLT = exports.panelBorderColor = exports.panelBorder = exports.panelBackgroundLT = exports.panelBackgroundHover = exports.panelBackground = exports.notificationPanelWidth = exports.notificationPanelItemWidth = exports.notificationPanelItemHeight = exports.notificationColors = exports.negativeBtnColor = exports.negativeBtnBorder = exports.negativeBtnBgdHover = exports.negativeBtnBgd = exports.negativeBtnActColor = exports.negativeBtnActBgd = exports.modalTitleZ = exports.modalTitleFontSizeSmaller = exports.modalTitleFontSize = exports.modalTitleColor = exports.modalScrollBar = exports.modalPortableLateralPadding = exports.modalPadding = exports.modalOverlayBgd = exports.modalOverLayZ = exports.modalLateralPadding = exports.modalImagePlaceHolder = exports.modalFooterZ = exports.modalFooterBgd = exports.modalDropdownBackground = exports.modalDialogColor = exports.modalDialogBgd = exports.modalContentZ = exports.modalButtonZ = exports.mapPanelHeaderBackgroundColor = exports.mapPanelBackgroundColor = exports.logoColor = exports.linkBtnColor = exports.linkBtnBorder = exports.linkBtnBgd = exports.linkBtnActColor = exports.linkBtnActBgdHover = exports.linkBtnActBgd = exports.lineHeight = exports.layerTypeIconSizeSM = exports.layerTypeIconSizeL = exports.layerTypeIconPdL = exports.layerPanelHeaderHeight = exports.layerConfiguratorPadding = exports.layerConfiguratorMargin = exports.layerConfiguratorBorderColor = exports.layerConfiguratorBorder = exports.layerConfigGroupPaddingLeft = exports.layerConfigGroupMarginBottom = exports.layerConfigGroupLabelPadding = exports.layerConfigGroupLabelMargin = void 0;
9
- exports.tooltipColor = exports.tooltipBoxShadow = exports.tooltipBg = exports.toolbarItemIconHover = exports.toolbarItemBorderRaddius = exports.toolbarItemBorderHover = exports.toolbarItemBgdHover = exports.titleTextColor = exports.titleColorLT = exports.timeTitleFontSize = exports.themeLT = exports.themeBS = exports.theme = exports.textTruncate = exports.textColorLT = exports.textColorHlLT = exports.textColorHl = exports.textColor = exports.switchWidth = exports.switchTrackBorderRadius = exports.switchTrackBgdActive = exports.switchTrackBgd = exports.switchLabelMargin = exports.switchHeight = exports.switchBtnWidth = exports.switchBtnHeight = exports.switchBtnBoxShadow = exports.switchBtnBorderRadius = exports.switchBtnBgdActive = exports.switchBtnBgd = exports.subtextColorLT = exports.subtextColorActive = exports.subtextColor = exports.styledConfigGroupHeaderBorder = exports.sliderMarginTopIsTime = exports.sliderMarginTop = exports.sliderMarginBottom = exports.sliderInputWidth = exports.sliderInputPadding = exports.sliderInputHeight = exports.sliderInputFontSize = exports.sliderInactiveBorderColor = exports.sliderHandleWidth = exports.sliderHandleTextColor = exports.sliderHandleShadow = exports.sliderHandleHoverColor = exports.sliderHandleHeight = exports.sliderHandleColor = exports.sliderHandleAfterContent = exports.sliderBorderRadius = exports.sliderBarRadius = exports.sliderBarHoverColor = exports.sliderBarHeight = exports.sliderBarColor = exports.sliderBarBgd = exports.sidepanelDividerMargin = exports.sidepanelDividerHeight = exports.sidepanelDividerBorder = exports.sidePanelTitleLineHeight = exports.sidePanelTitleFontsize = exports.sidePanelScrollBarWidth = exports.sidePanelScrollBarHeight = exports.sidePanelInnerPadding = exports.sidePanelHeaderBorder = exports.sidePanelHeaderBg = exports.sidePanelBorderColor = exports.sidePanelBorder = exports.sidePanelBg = exports.sideBarCloseBtnColor = exports.sideBarCloseBtnBgdHover = exports.sideBarCloseBtnBgd = exports.selectionBtnColor = exports.selectionBtnBorderColor = exports.selectionBtnBorderActColor = exports.selectionBtnBorder = exports.selectionBtnBgdHover = exports.selectionBtnBgd = exports.selectionBtnActColor = exports.selectionBtnActBgd = exports.selectFontWeightBold = exports.selectFontWeight = exports.selectFontSize = exports.selectColorPlaceHolderLT = exports.selectColorPlaceHolder = exports.selectColorLT = exports.selectColor = exports.selectBorderRadius = exports.selectBorderColorLT = exports.selectBorderColor = exports.selectBorder = exports.selectBackgroundLT = exports.selectBackgroundHoverLT = exports.selectBackgroundHover = exports.selectBackground = exports.selectActiveBorderColor = exports.secondarySwitchTrackBgd = exports.secondarySwitchBtnBgd = exports.secondaryInputColor = exports.secondaryInputBorderColor = exports.secondaryInputBorderActiveColor = void 0;
10
- exports.transitionSlow = exports.transitionFast = exports.transition = exports.tooltipFontSize = void 0;
8
+ exports.secondaryInputBgd = exports.secondaryBtnColor = exports.secondaryBtnBorder = exports.secondaryBtnBgdHover = exports.secondaryBtnBgd = exports.secondaryBtnActColor = exports.secondaryBtnActBgd = exports.rangePlotMarginLarge = exports.rangePlotMargin = exports.rangePlotHLarge = exports.rangePlotH = exports.rangePlotContainerHLarge = exports.rangePlotContainerH = exports.rangeBrushBgd = exports.radioRadius = exports.radioButtonRadius = exports.radioButtonBgdColor = exports.radioBorderRadius = exports.radioBorderColor = exports.primaryBtnRadius = exports.primaryBtnFontSizeSmall = exports.primaryBtnFontSizeLarge = exports.primaryBtnFontSizeDefault = exports.primaryBtnColor = exports.primaryBtnBorder = exports.primaryBtnBgdHover = exports.primaryBtnBgd = exports.primaryBtnActColor = exports.primaryBtnActBgd = exports.panelToggleMarginRight = exports.panelToggleBottomPadding = exports.panelToggleBorderColor = exports.panelTabWidth = exports.panelTabColor = exports.panelHeaderIconHover = exports.panelHeaderIconActive = exports.panelHeaderIcon = exports.panelHeaderHeight = exports.panelHeaderBorderRadius = exports.panelContentBackground = exports.panelBoxShadow = exports.panelBorderRadius = exports.panelBorderLT = exports.panelBorderColor = exports.panelBorder = exports.panelBackgroundLT = exports.panelBackgroundHover = exports.panelBackground = exports.notificationPanelWidth = exports.notificationPanelItemWidth = exports.notificationPanelItemHeight = exports.notificationColors = exports.negativeBtnColor = exports.negativeBtnBorder = exports.negativeBtnBgdHover = exports.negativeBtnBgd = exports.negativeBtnActColor = exports.negativeBtnActBgd = exports.modalTitleZ = exports.modalTitleFontSizeSmaller = exports.modalTitleFontSize = exports.modalTitleColor = exports.modalScrollBar = exports.modalPortableLateralPadding = exports.modalPadding = exports.modalOverlayBgd = exports.modalOverLayZ = exports.modalLateralPadding = exports.modalImagePlaceHolder = exports.modalFooterZ = exports.modalFooterBgd = exports.modalDropdownBackground = exports.modalDialogColor = exports.modalDialogBgd = exports.modalContentZ = exports.modalButtonZ = exports.mapPanelHeaderBackgroundColor = exports.mapPanelBackgroundColor = exports.logoColor = exports.linkBtnColor = exports.linkBtnBorder = exports.linkBtnBgd = exports.linkBtnActColor = exports.linkBtnActBgdHover = exports.linkBtnActBgd = exports.lineHeight = exports.layerTypeIconSizeSM = exports.layerTypeIconSizeL = exports.layerTypeIconPdL = exports.layerPanelToggleOptionColorActive = exports.layerPanelToggleOptionColor = exports.layerPanelHeaderHeight = exports.layerConfiguratorPadding = exports.layerConfiguratorMargin = exports.layerConfiguratorBorderColor = exports.layerConfiguratorBorder = exports.layerConfigGroupPaddingLeft = exports.layerConfigGroupMarginBottom = exports.layerConfigGroupLabelPadding = exports.layerConfigGroupLabelMargin = void 0;
9
+ exports.tooltipBg = exports.toolbarItemIconHover = exports.toolbarItemBorderRaddius = exports.toolbarItemBorderHover = exports.toolbarItemBgdHover = exports.titleTextColor = exports.titleColorLT = exports.timeTitleFontSize = exports.themeLT = exports.themeBS = exports.theme = exports.textTruncate = exports.textColorLT = exports.textColorHlLT = exports.textColorHl = exports.textColor = exports.switchWidth = exports.switchTrackBorderRadius = exports.switchTrackBgdActive = exports.switchTrackBgd = exports.switchLabelMargin = exports.switchHeight = exports.switchBtnWidth = exports.switchBtnHeight = exports.switchBtnBoxShadow = exports.switchBtnBorderRadius = exports.switchBtnBgdActive = exports.switchBtnBgd = exports.subtextColorLT = exports.subtextColorActive = exports.subtextColor = exports.styledConfigGroupHeaderBorder = exports.sliderMarginTopIsTime = exports.sliderMarginTop = exports.sliderMarginBottom = exports.sliderInputWidth = exports.sliderInputPadding = exports.sliderInputHeight = exports.sliderInputFontSize = exports.sliderInactiveBorderColor = exports.sliderHandleWidth = exports.sliderHandleTextColor = exports.sliderHandleShadow = exports.sliderHandleHoverColor = exports.sliderHandleHeight = exports.sliderHandleColor = exports.sliderHandleAfterContent = exports.sliderBorderRadius = exports.sliderBarRadius = exports.sliderBarHoverColor = exports.sliderBarHeight = exports.sliderBarColor = exports.sliderBarBgd = exports.sidepanelDividerMargin = exports.sidepanelDividerHeight = exports.sidepanelDividerBorder = exports.sidePanelTitleLineHeight = exports.sidePanelTitleFontsize = exports.sidePanelScrollBarWidth = exports.sidePanelScrollBarHeight = exports.sidePanelInnerPadding = exports.sidePanelHeaderBorder = exports.sidePanelHeaderBg = exports.sidePanelBorderColor = exports.sidePanelBorder = exports.sidePanelBg = exports.sideBarCloseBtnColor = exports.sideBarCloseBtnBgdHover = exports.sideBarCloseBtnBgd = exports.selectionBtnColor = exports.selectionBtnBorderColor = exports.selectionBtnBorderActColor = exports.selectionBtnBorder = exports.selectionBtnBgdHover = exports.selectionBtnBgd = exports.selectionBtnActColor = exports.selectionBtnActBgd = exports.selectFontWeightBold = exports.selectFontWeight = exports.selectFontSize = exports.selectColorPlaceHolderLT = exports.selectColorPlaceHolder = exports.selectColorLT = exports.selectColor = exports.selectBorderRadius = exports.selectBorderColorLT = exports.selectBorderColor = exports.selectBorder = exports.selectBackgroundLT = exports.selectBackgroundHoverLT = exports.selectBackgroundHover = exports.selectBackground = exports.selectActiveBorderColor = exports.secondarySwitchTrackBgd = exports.secondarySwitchBtnBgd = exports.secondaryInputColor = exports.secondaryInputBorderColor = exports.secondaryInputBorderActiveColor = exports.secondaryInputBgdHover = exports.secondaryInputBgdActive = void 0;
10
+ exports.transitionSlow = exports.transitionFast = exports.transition = exports.tooltipFontSize = exports.tooltipColor = exports.tooltipBoxShadow = void 0;
11
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
13
  var _styledComponents = require("styled-components");
@@ -264,6 +264,8 @@ var tooltipFontSize = exports.tooltipFontSize = '10px';
264
264
  var layerTypeIconSizeL = exports.layerTypeIconSizeL = 50;
265
265
  var layerTypeIconPdL = exports.layerTypeIconPdL = 12;
266
266
  var layerTypeIconSizeSM = exports.layerTypeIconSizeSM = 28;
267
+ var layerPanelToggleOptionColor = exports.layerPanelToggleOptionColor = '#6A7485';
268
+ var layerPanelToggleOptionColorActive = exports.layerPanelToggleOptionColorActive = '#F0F0F0';
267
269
 
268
270
  // Sidepanel divider
269
271
  var sidepanelDividerBorder = exports.sidepanelDividerBorder = '1px';
@@ -1024,6 +1026,8 @@ var theme = exports.theme = _objectSpread(_objectSpread({}, _defaultSettings.DIM
1024
1026
  layerTypeIconSizeL: layerTypeIconSizeL,
1025
1027
  layerTypeIconPdL: layerTypeIconPdL,
1026
1028
  layerTypeIconSizeSM: layerTypeIconSizeSM,
1029
+ layerPanelToggleOptionColor: layerPanelToggleOptionColor,
1030
+ layerPanelToggleOptionColorActive: layerPanelToggleOptionColorActive,
1027
1031
  // Text
1028
1032
  fontFamily: fontFamily,
1029
1033
  fontWeight: fontWeight,
@@ -1294,4 +1298,4 @@ var themeBS = exports.themeBS = _objectSpread(_objectSpread({}, theme), {}, {
1294
1298
  sliderHandleTextColor: '#FFFFFF',
1295
1299
  sliderBarColor: '#000000'
1296
1300
  });
1297
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3R5bGVkQ29tcG9uZW50cyIsInJlcXVpcmUiLCJfZGVmYXVsdFNldHRpbmdzIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX3RlbXBsYXRlT2JqZWN0NSIsIl90ZW1wbGF0ZU9iamVjdDYiLCJfdGVtcGxhdGVPYmplY3Q3IiwiX3RlbXBsYXRlT2JqZWN0OCIsIl90ZW1wbGF0ZU9iamVjdDkiLCJfdGVtcGxhdGVPYmplY3QxMCIsIl90ZW1wbGF0ZU9iamVjdDExIiwiX3RlbXBsYXRlT2JqZWN0MTIiLCJfdGVtcGxhdGVPYmplY3QxMyIsIl90ZW1wbGF0ZU9iamVjdDE0IiwiX3RlbXBsYXRlT2JqZWN0MTUiLCJfdGVtcGxhdGVPYmplY3QxNiIsIl90ZW1wbGF0ZU9iamVjdDE3IiwiX3RlbXBsYXRlT2JqZWN0MTgiLCJfdGVtcGxhdGVPYmplY3QxOSIsIl90ZW1wbGF0ZU9iamVjdDIwIiwiX3RlbXBsYXRlT2JqZWN0MjEiLCJfdGVtcGxhdGVPYmplY3QyMiIsIl90ZW1wbGF0ZU9iamVjdDIzIiwiX3RlbXBsYXRlT2JqZWN0MjQiLCJfdGVtcGxhdGVPYmplY3QyNSIsIl90ZW1wbGF0ZU9iamVjdDI2IiwiX3RlbXBsYXRlT2JqZWN0MjciLCJfdGVtcGxhdGVPYmplY3QyOCIsIl90ZW1wbGF0ZU9iamVjdDI5IiwiX3RlbXBsYXRlT2JqZWN0MzAiLCJfdGVtcGxhdGVPYmplY3QzMSIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwidHJhbnNpdGlvbiIsImV4cG9ydHMiLCJ0cmFuc2l0aW9uRmFzdCIsInRyYW5zaXRpb25TbG93IiwiYm94U2hhZG93IiwiYm94U2l6aW5nIiwiYm9yZGVyUmFkaXVzIiwiYm9yZGVyQ29sb3IiLCJib3JkZXJDb2xvckxUIiwiZm9udEZhbWlseSIsImZvbnRXZWlnaHQiLCJmb250U2l6ZSIsImxpbmVIZWlnaHQiLCJsYWJlbENvbG9yIiwibGFiZWxIb3ZlckNvbG9yIiwibGFiZWxDb2xvckxUIiwidGV4dENvbG9yIiwidGV4dENvbG9yTFQiLCJkYXRhVGFibGVUZXh0Q29sb3IiLCJ0aXRsZUNvbG9yTFQiLCJzdWJ0ZXh0Q29sb3IiLCJzdWJ0ZXh0Q29sb3JMVCIsInN1YnRleHRDb2xvckFjdGl2ZSIsInBhbmVsVG9nZ2xlQm9yZGVyQ29sb3IiLCJwYW5lbFRhYldpZHRoIiwidGl0bGVUZXh0Q29sb3IiLCJ0ZXh0Q29sb3JIbCIsInRleHRDb2xvckhsTFQiLCJhY3RpdmVDb2xvciIsImFjdGl2ZUNvbG9yTFQiLCJhY3RpdmVDb2xvckhvdmVyIiwiZXJyb3JDb2xvciIsImxvZ29Db2xvciIsImJ0bkZvbnRGYW1pbHkiLCJwcmltYXJ5QnRuQmdkIiwicHJpbWFyeUJ0bkFjdEJnZCIsInByaW1hcnlCdG5Db2xvciIsInByaW1hcnlCdG5BY3RDb2xvciIsInByaW1hcnlCdG5CZ2RIb3ZlciIsInByaW1hcnlCdG5SYWRpdXMiLCJwcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0IiwicHJpbWFyeUJ0bkZvbnRTaXplU21hbGwiLCJwcmltYXJ5QnRuRm9udFNpemVMYXJnZSIsInByaW1hcnlCdG5Cb3JkZXIiLCJzZWNvbmRhcnlCdG5CZ2QiLCJzZWNvbmRhcnlCdG5BY3RCZ2QiLCJzZWNvbmRhcnlCdG5Db2xvciIsInNlY29uZGFyeUJ0bkFjdENvbG9yIiwic2Vjb25kYXJ5QnRuQmdkSG92ZXIiLCJzZWNvbmRhcnlCdG5Cb3JkZXIiLCJjdGFCdG5CZ2QiLCJjdGFCdG5CZ2RIb3ZlciIsImN0YUJ0bkFjdEJnZCIsImN0YUJ0bkNvbG9yIiwiY3RhQnRuQWN0Q29sb3IiLCJsaW5rQnRuQmdkIiwibGlua0J0bkFjdEJnZCIsImxpbmtCdG5Db2xvciIsImxpbmtCdG5BY3RDb2xvciIsImxpbmtCdG5BY3RCZ2RIb3ZlciIsImxpbmtCdG5Cb3JkZXIiLCJuZWdhdGl2ZUJ0bkJnZCIsIm5lZ2F0aXZlQnRuQWN0QmdkIiwibmVnYXRpdmVCdG5CZ2RIb3ZlciIsIm5lZ2F0aXZlQnRuQm9yZGVyIiwibmVnYXRpdmVCdG5Db2xvciIsIm5lZ2F0aXZlQnRuQWN0Q29sb3IiLCJmbG9hdGluZ0J0bkJnZCIsImZsb2F0aW5nQnRuQWN0QmdkIiwiZmxvYXRpbmdCdG5CZ2RIb3ZlciIsImZsb2F0aW5nQnRuQm9yZGVyIiwiZmxvYXRpbmdCdG5Cb3JkZXJIb3ZlciIsImZsb2F0aW5nQnRuQ29sb3IiLCJmbG9hdGluZ0J0bkFjdENvbG9yIiwic2VsZWN0aW9uQnRuQmdkIiwic2VsZWN0aW9uQnRuQWN0QmdkIiwic2VsZWN0aW9uQnRuQ29sb3IiLCJzZWxlY3Rpb25CdG5BY3RDb2xvciIsInNlbGVjdGlvbkJ0bkJnZEhvdmVyIiwic2VsZWN0aW9uQnRuQm9yZGVyIiwic2VsZWN0aW9uQnRuQm9yZGVyQ29sb3IiLCJzZWxlY3Rpb25CdG5Cb3JkZXJBY3RDb2xvciIsImlucHV0Qm94SGVpZ2h0IiwiaW5wdXRCb3hIZWlnaHRTbWFsbCIsImlucHV0Qm94SGVpZ2h0VGlueSIsImlucHV0UGFkZGluZyIsImlucHV0UGFkZGluZ1NtYWxsIiwiaW5wdXRQYWRkaW5nVGlueSIsImlucHV0Rm9udFNpemUiLCJpbnB1dEZvbnRTaXplU21hbGwiLCJpbnB1dEZvbnRXZWlnaHQiLCJpbnB1dEJnZCIsImlucHV0QmdkSG92ZXIiLCJpbnB1dEJnZEFjdGl2ZSIsImlucHV0QmdkQWN0aXZlTFQiLCJpbnB1dEJvcmRlckNvbG9yIiwiaW5wdXRCb3JkZXJIb3ZlckNvbG9yIiwiaW5wdXRCb3JkZXJIb3ZlckNvbG9yTFQiLCJpbnB1dEJvcmRlckFjdGl2ZUNvbG9yIiwiaW5wdXRCb3JkZXJBY3RpdmVDb2xvckxUIiwiaW5wdXRDb2xvciIsImlucHV0Qm9yZGVyUmFkaXVzIiwiaW5wdXRQbGFjZWhvbGRlckNvbG9yIiwiaW5wdXRQbGFjZWhvbGRlckNvbG9yTFQiLCJpbnB1dFBsYWNlaG9sZGVyRm9udFdlaWdodCIsImlucHV0Qm94U2hhZG93IiwiaW5wdXRCb3hTaGFkb3dBY3RpdmUiLCJpbnB1dEJveFNoYWRvd0FjdGl2ZUxUIiwic2Vjb25kYXJ5SW5wdXRCZ2QiLCJzZWNvbmRhcnlJbnB1dEJnZEhvdmVyIiwic2Vjb25kYXJ5SW5wdXRCZ2RBY3RpdmUiLCJzZWNvbmRhcnlJbnB1dENvbG9yIiwic2Vjb25kYXJ5SW5wdXRCb3JkZXJDb2xvciIsInNlY29uZGFyeUlucHV0Qm9yZGVyQWN0aXZlQ29sb3IiLCJkcm9wZG93blNlbGVjdEhlaWdodCIsInNlbGVjdENvbG9yIiwic2VsZWN0Q29sb3JMVCIsInNlbGVjdEFjdGl2ZUJvcmRlckNvbG9yIiwic2VsZWN0Rm9udFNpemUiLCJzZWxlY3RGb250V2VpZ2h0Iiwic2VsZWN0Rm9udFdlaWdodEJvbGQiLCJzZWxlY3RDb2xvclBsYWNlSG9sZGVyIiwic2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUIiwic2VsZWN0QmFja2dyb3VuZCIsInNlbGVjdEJhY2tncm91bmRIb3ZlciIsInNlbGVjdEJhY2tncm91bmRMVCIsInNlbGVjdEJhY2tncm91bmRIb3ZlckxUIiwic2VsZWN0Qm9yZGVyQ29sb3IiLCJzZWxlY3RCb3JkZXJDb2xvckxUIiwic2VsZWN0Qm9yZGVyUmFkaXVzIiwic2VsZWN0Qm9yZGVyIiwicGFuZWxUYWJDb2xvciIsImRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnIiwiZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmdMVCIsImRyb3Bkb3duTGlzdFNoYWRvdyIsImRyb3Bkb3duTGlzdEJnZCIsInRvb2xiYXJJdGVtQmdkSG92ZXIiLCJ0b29sYmFySXRlbUljb25Ib3ZlciIsInRvb2xiYXJJdGVtQm9yZGVySG92ZXIiLCJ0b29sYmFySXRlbUJvcmRlclJhZGRpdXMiLCJkcm9wZG93bkxpc3RCZ2RMVCIsImRyb3Bkb3duTGlzdEJvcmRlclRvcCIsImRyb3Bkb3duTGlzdEJvcmRlclRvcExUIiwiZHJvcGRvd25MaXN0TGluZUhlaWdodCIsImRyb3Bkb3duV3JhcHBlcloiLCJkcm9wZG93bldhcHBlck1hcmdpbiIsInN3aXRjaFdpZHRoIiwic3dpdGNoSGVpZ2h0Iiwic3dpdGNoTGFiZWxNYXJnaW4iLCJzd2l0Y2hUcmFja0JnZCIsInN3aXRjaFRyYWNrQmdkQWN0aXZlIiwic3dpdGNoVHJhY2tCb3JkZXJSYWRpdXMiLCJzd2l0Y2hCdG5CZ2QiLCJzd2l0Y2hCdG5CZ2RBY3RpdmUiLCJzd2l0Y2hCdG5Cb3hTaGFkb3ciLCJzd2l0Y2hCdG5Cb3JkZXJSYWRpdXMiLCJzd2l0Y2hCdG5XaWR0aCIsInN3aXRjaEJ0bkhlaWdodCIsInNlY29uZGFyeVN3aXRjaFRyYWNrQmdkIiwic2Vjb25kYXJ5U3dpdGNoQnRuQmdkIiwiY2hlY2tib3hXaWR0aCIsImNoZWNrYm94SGVpZ2h0IiwiY2hlY2tib3hNYXJnaW4iLCJjaGVja2JveEJvcmRlckNvbG9yIiwiY2hlY2tib3hCb3JkZXJSYWRpdXMiLCJjaGVja2JveEJvcmRlckNvbG9yTFQiLCJjaGVja2JveEJveEJnZCIsImNoZWNrYm94Qm94QmdkQ2hlY2tlZCIsInJhZGlvUmFkaXVzIiwicmFkaW9Cb3JkZXJSYWRpdXMiLCJyYWRpb0JvcmRlckNvbG9yIiwicmFkaW9CdXR0b25SYWRpdXMiLCJyYWRpb0J1dHRvbkJnZENvbG9yIiwic2lkZVBhbmVsSGVhZGVyQmciLCJzaWRlUGFuZWxIZWFkZXJCb3JkZXIiLCJsYXllckNvbmZpZ0dyb3VwTWFyZ2luQm90dG9tIiwibGF5ZXJDb25maWdHcm91cFBhZGRpbmdMZWZ0Iiwic2lkZVBhbmVsSW5uZXJQYWRkaW5nIiwic2lkZVBhbmVsQm9yZGVyIiwic2lkZVBhbmVsQm9yZGVyQ29sb3IiLCJzaWRlUGFuZWxCZyIsInNpZGVQYW5lbFNjcm9sbEJhcldpZHRoIiwic2lkZVBhbmVsU2Nyb2xsQmFySGVpZ2h0Iiwic2lkZUJhckNsb3NlQnRuQmdkIiwic2lkZUJhckNsb3NlQnRuQ29sb3IiLCJzaWRlQmFyQ2xvc2VCdG5CZ2RIb3ZlciIsInNpZGVQYW5lbFRpdGxlRm9udHNpemUiLCJzaWRlUGFuZWxUaXRsZUxpbmVIZWlnaHQiLCJwYW5lbEJhY2tncm91bmQiLCJwYW5lbENvbnRlbnRCYWNrZ3JvdW5kIiwicGFuZWxCYWNrZ3JvdW5kSG92ZXIiLCJwYW5lbEhlYWRlckJvcmRlclJhZGl1cyIsImNoaWNrbGV0QmdkIiwiY2hpY2tsZXRCZ2RMVCIsInBhbmVsSGVhZGVySWNvbiIsInBhbmVsSGVhZGVySWNvbkFjdGl2ZSIsInBhbmVsSGVhZGVySWNvbkhvdmVyIiwicGFuZWxIZWFkZXJIZWlnaHQiLCJsYXllclBhbmVsSGVhZGVySGVpZ2h0IiwicGFuZWxCb3hTaGFkb3ciLCJwYW5lbEJvcmRlclJhZGl1cyIsInBhbmVsQmFja2dyb3VuZExUIiwicGFuZWxUb2dnbGVNYXJnaW5SaWdodCIsInBhbmVsVG9nZ2xlQm90dG9tUGFkZGluZyIsInBhbmVsQm9yZGVyQ29sb3IiLCJwYW5lbEJvcmRlciIsImNvbmNhdCIsInBhbmVsQm9yZGVyTFQiLCJtYXBQYW5lbEJhY2tncm91bmRDb2xvciIsIm1hcFBhbmVsSGVhZGVyQmFja2dyb3VuZENvbG9yIiwidG9vbHRpcEJnIiwidG9vbHRpcENvbG9yIiwidG9vbHRpcEJveFNoYWRvdyIsInRvb2x0aXBGb250U2l6ZSIsImxheWVyVHlwZUljb25TaXplTCIsImxheWVyVHlwZUljb25QZEwiLCJsYXllclR5cGVJY29uU2l6ZVNNIiwic2lkZXBhbmVsRGl2aWRlckJvcmRlciIsInNpZGVwYW5lbERpdmlkZXJNYXJnaW4iLCJzaWRlcGFuZWxEaXZpZGVySGVpZ2h0IiwiYm90dG9tSW5uZXJQZFNpZGUiLCJib3R0b21Jbm5lclBkVmVydCIsImJvdHRvbVBhbmVsR2FwIiwiYm90dG9tV2lkZ2V0UGFkZGluZ1RvcCIsImJvdHRvbVdpZGdldFBhZGRpbmdSaWdodCIsImJvdHRvbVdpZGdldFBhZGRpbmdCb3R0b20iLCJib3R0b21XaWRnZXRQYWRkaW5nTGVmdCIsImJvdHRvbVdpZGdldEJnZCIsIm1vZGFsVGl0bGVDb2xvciIsIm1vZGFsVGl0bGVGb250U2l6ZSIsIm1vZGFsVGl0bGVGb250U2l6ZVNtYWxsZXIiLCJtb2RhbEZvb3RlckJnZCIsIm1vZGFsSW1hZ2VQbGFjZUhvbGRlciIsIm1vZGFsUGFkZGluZyIsIm1vZGFsTGF0ZXJhbFBhZGRpbmciLCJtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmciLCJtb2RhbE92ZXJMYXlaIiwibW9kYWxPdmVybGF5QmdkIiwibW9kYWxDb250ZW50WiIsIm1vZGFsRm9vdGVyWiIsIm1vZGFsVGl0bGVaIiwibW9kYWxCdXR0b25aIiwibW9kYWxEcm9wZG93bkJhY2tncm91bmQiLCJtb2RhbERpYWxvZ0JnZCIsIm1vZGFsRGlhbG9nQ29sb3IiLCJzbGlkZXJCYXJDb2xvciIsInNsaWRlckJhckJnZCIsInNsaWRlckJhckhvdmVyQ29sb3IiLCJzbGlkZXJCYXJSYWRpdXMiLCJzbGlkZXJCYXJIZWlnaHQiLCJzbGlkZXJIYW5kbGVIZWlnaHQiLCJzbGlkZXJIYW5kbGVXaWR0aCIsInNsaWRlckhhbmRsZUNvbG9yIiwic2xpZGVySGFuZGxlVGV4dENvbG9yIiwic2xpZGVySW5hY3RpdmVCb3JkZXJDb2xvciIsInNsaWRlckJvcmRlclJhZGl1cyIsInNsaWRlckhhbmRsZUhvdmVyQ29sb3IiLCJzbGlkZXJIYW5kbGVBZnRlckNvbnRlbnQiLCJzbGlkZXJIYW5kbGVTaGFkb3ciLCJzbGlkZXJJbnB1dEhlaWdodCIsInNsaWRlcklucHV0V2lkdGgiLCJzbGlkZXJJbnB1dEZvbnRTaXplIiwic2xpZGVySW5wdXRQYWRkaW5nIiwic2xpZGVyTWFyZ2luVG9wSXNUaW1lIiwic2xpZGVyTWFyZ2luVG9wIiwic2xpZGVyTWFyZ2luQm90dG9tIiwiZ2VvY29kZXJXaWR0aCIsImdlb2NvZGVyVG9wIiwiZ2VvY29kZXJSaWdodCIsImdlb2NvZGVySW5wdXRIZWlnaHQiLCJyYW5nZUJydXNoQmdkIiwiaGlzdG9ncmFtRmlsbEluUmFuZ2UiLCJoaXN0b2dyYW1GaWxsT3V0UmFuZ2UiLCJheGlzRm9udFNpemUiLCJheGlzRm9udENvbG9yIiwidGltZVRpdGxlRm9udFNpemUiLCJyYW5nZVBsb3RNYXJnaW4iLCJ0b3AiLCJib3R0b20iLCJsZWZ0IiwicmlnaHQiLCJyYW5nZVBsb3RNYXJnaW5MYXJnZSIsInJhbmdlUGxvdEgiLCJyYW5nZVBsb3RDb250YWluZXJIIiwicmFuZ2VQbG90SExhcmdlIiwicmFuZ2VQbG90Q29udGFpbmVySExhcmdlIiwibm90aWZpY2F0aW9uQ29sb3JzIiwiaW5mbyIsImVycm9yIiwic3VjY2VzcyIsIndhcm5pbmciLCJub3RpZmljYXRpb25QYW5lbFdpZHRoIiwibm90aWZpY2F0aW9uUGFuZWxJdGVtV2lkdGgiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQiLCJoZWFkZXJSb3dIZWlnaHQiLCJyb3dIZWlnaHQiLCJoZWFkZXJQYWRkaW5nVG9wIiwiaGVhZGVyUGFkZGluZ0JvdHRvbSIsImNlbGxQYWRkaW5nU2lkZSIsImVkZ2VDZWxsUGFkZGluZ1NpZGUiLCJjZWxsRm9udFNpemUiLCJncmlkUGFkZGluZ1NpZGUiLCJoZWFkZXJDZWxsQmFja2dyb3VuZCIsImhlYWRlckNlbGxCb3JkZXJDb2xvciIsImhlYWRlckNlbGxJY29uQ29sb3IiLCJjZWxsQm9yZGVyQ29sb3IiLCJldmVuUm93QmFja2dyb3VuZCIsIm9kZFJvd0JhY2tncm91bmQiLCJvcHRpb25CdXR0b25Db2xvciIsInBpbm5lZEdyaWRCb3JkZXJDb2xvciIsInRpbWVEaXNwbGF5Qm9yZGVyUmFkaXVzIiwidGltZURpc3BsYXlIZWlnaHQiLCJ0aW1lRGlzcGxheU1pbldpZHRoIiwidGltZURpc3BsYXlPcGFjaXR5IiwidGltZURpc3BsYXlQYWRkaW5nIiwiZXhwb3J0SW50cmFTZWN0aW9uTWFyZ2luIiwicHJvZ3Jlc3NCYXJDb2xvciIsInByb2dyZXNzQmFyVHJhY2tDb2xvciIsImFjdGlvblBhbmVsV2lkdGgiLCJhY3Rpb25QYW5lbEhlaWdodCIsImZpZWxkVG9rZW5SaWdodE1hcmdpbiIsInRleHRUcnVuY2F0ZSIsIm1heFdpZHRoIiwib3ZlcmZsb3ciLCJ0ZXh0T3ZlcmZsb3ciLCJ3aGl0ZVNwYWNlIiwid29yZFdyYXAiLCJsYXllckNvbmZpZ0dyb3VwTGFiZWxCb3JkZXJMZWZ0IiwibGF5ZXJDb25maWdHcm91cExhYmVsTWFyZ2luIiwibGF5ZXJDb25maWdHcm91cExhYmVsUGFkZGluZyIsImxheWVyQ29uZmlnR3JvdXBDb2xvciIsImxheWVyQ29uZmlnR3JvdXBMYWJlbExhYmVsTWFyZ2luIiwibGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxGb250U2l6ZSIsInN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyQm9yZGVyIiwibGF5ZXJDb25maWd1cmF0b3JCb3JkZXIiLCJsYXllckNvbmZpZ3VyYXRvckJvcmRlckNvbG9yIiwibGF5ZXJDb25maWd1cmF0b3JNYXJnaW4iLCJsYXllckNvbmZpZ3VyYXRvclBhZGRpbmciLCJicmVha1BvaW50cyIsInBhbG0iLCJkZXNrIiwiaW5wdXQiLCJjc3MiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJhY3RpdmUiLCJpbmNsdWRlcyIsInNpemUiLCJkaXNhYmxlZCIsInR5cGUiLCJpbnB1dExUIiwic2Vjb25kYXJ5SW5wdXQiLCJjaGlja2xldGVkSW5wdXRDb250YWluZXIiLCJjaGlja2xldGVkSW5wdXQiLCJjaGlja2xldGVkSW5wdXRMVCIsInNlY29uZGFyeUNoaWNrbGV0ZWRJbnB1dCIsImlubGluZUlucHV0Iiwic3dpdGNoVHJhY2siLCJjaGVja2VkIiwic3dpdGNoQnV0dG9uIiwiaW5wdXRTd2l0Y2giLCJjaGVja2JveEJveCIsImNoZWNrYm94Q2hlY2siLCJpbnB1dENoZWNrYm94IiwiaW5wdXRSYWRpbyIsInNlY29uZGFyeVN3aXRjaCIsImRyb3Bkb3duU2Nyb2xsQmFyIiwiZHJvcGRvd25TY3JvbGxCYXJMVCIsImRyb3Bkb3duTGlzdEFuY2hvciIsImRyb3Bkb3duTGlzdEFuY2hvckxUIiwiZHJvcGRvd25MaXN0U2l6ZSIsImRyb3Bkb3duTGlzdEl0ZW0iLCJkcm9wZG93bkxpc3RJdGVtTFQiLCJkcm9wZG93bkxpc3RIZWFkZXIiLCJkcm9wZG93bkxpc3RTZWN0aW9uIiwiZHJvcGRvd25MaXN0IiwiZHJvcGRvd25MaXN0TFQiLCJzaWRlUGFuZWxTY3JvbGxCYXIiLCJwYW5lbERyb3Bkb3duU2Nyb2xsQmFyIiwic2Nyb2xsQmFyIiwibW9kYWxTY3JvbGxCYXIiLCJESU1FTlNJT05TIiwidGhlbWVMVCIsInRoZW1lQlMiLCJjdG5CdG5CZ2QiLCJjdG5CdG5CZ2RIb3ZlciIsImN0bkJ0bkNvbG9yIiwiY3RuQnRuQWN0Q29sb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3R5bGVzL2Jhc2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtjc3N9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7RElNRU5TSU9OU30gZnJvbSAnY29uc3RhbnRzL2RlZmF1bHQtc2V0dGluZ3MnO1xuXG5leHBvcnQgY29uc3QgdHJhbnNpdGlvbiA9ICdhbGwgLjRzIGVhc2UnO1xuZXhwb3J0IGNvbnN0IHRyYW5zaXRpb25GYXN0ID0gJ2FsbCAuMnMgZWFzZSc7XG5leHBvcnQgY29uc3QgdHJhbnNpdGlvblNsb3cgPSAnYWxsIC44cyBlYXNlJztcblxuZXhwb3J0IGNvbnN0IGJveFNoYWRvdyA9ICcwIDFweCAycHggMCByZ2JhKDAsMCwwLDAuMTApJztcbmV4cG9ydCBjb25zdCBib3hTaXppbmcgPSAnYm9yZGVyLWJveCc7XG5leHBvcnQgY29uc3QgYm9yZGVyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3QgYm9yZGVyQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgYm9yZGVyQ29sb3JMVCA9ICcjRjFGMUYxJztcblxuLy8gVEVYVFxuZXhwb3J0IGNvbnN0IGZvbnRGYW1pbHkgPSBgZmYtY2xhbi13ZWItcHJvLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWZgO1xuZXhwb3J0IGNvbnN0IGZvbnRXZWlnaHQgPSA0MDA7XG5leHBvcnQgY29uc3QgZm9udFNpemUgPSAnMC44NzVlbSc7XG5leHBvcnQgY29uc3QgbGluZUhlaWdodCA9IDEuNzE0Mjk7XG5leHBvcnQgY29uc3QgbGFiZWxDb2xvciA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBsYWJlbEhvdmVyQ29sb3IgPSAnI0M2QzZDNic7XG5leHBvcnQgY29uc3QgbGFiZWxDb2xvckxUID0gJyM2QTc0ODUnO1xuXG5leHBvcnQgY29uc3QgdGV4dENvbG9yID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHRleHRDb2xvckxUID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IGRhdGFUYWJsZVRleHRDb2xvciA9IHRleHRDb2xvckxUO1xuZXhwb3J0IGNvbnN0IHRpdGxlQ29sb3JMVCA9ICcjMjkzMjNDJztcblxuZXhwb3J0IGNvbnN0IHN1YnRleHRDb2xvciA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBzdWJ0ZXh0Q29sb3JMVCA9ICcjQTBBN0I0JztcbmV4cG9ydCBjb25zdCBzdWJ0ZXh0Q29sb3JBY3RpdmUgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgcGFuZWxUb2dnbGVCb3JkZXJDb2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBwYW5lbFRhYldpZHRoID0gJzMwcHgnO1xuXG5leHBvcnQgY29uc3QgdGl0bGVUZXh0Q29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgdGV4dENvbG9ySGwgPSAnI0YwRjBGMCc7XG5leHBvcnQgY29uc3QgdGV4dENvbG9ySGxMVCA9ICcjMDAwMDAwJztcbmV4cG9ydCBjb25zdCBhY3RpdmVDb2xvciA9ICcjMUZCQUQ2JztcbmV4cG9ydCBjb25zdCBhY3RpdmVDb2xvckxUID0gJyMyNDczQkQnO1xuZXhwb3J0IGNvbnN0IGFjdGl2ZUNvbG9ySG92ZXIgPSAnIzEwODE4OCc7XG5leHBvcnQgY29uc3QgZXJyb3JDb2xvciA9ICcjRjkwNDJDJztcbmV4cG9ydCBjb25zdCBsb2dvQ29sb3IgPSBhY3RpdmVDb2xvcjtcblxuLy8gQnV0dG9uXG5leHBvcnQgY29uc3QgYnRuRm9udEZhbWlseSA9IGZvbnRGYW1pbHk7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkJnZCA9ICcjMEY5NjY4JztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuQWN0QmdkID0gJyMxM0IxN0InO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Db2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuQWN0Q29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkJnZEhvdmVyID0gJyMxM0IxN0InO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5SYWRpdXMgPSAnMnB4JztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0ID0gJzExcHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Gb250U2l6ZVNtYWxsID0gJzEwcHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Gb250U2l6ZUxhcmdlID0gJzE0cHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Cb3JkZXIgPSAnMCc7XG5cbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlCdG5CZ2QgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5QnRuQWN0QmdkID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkNvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkFjdENvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkJnZEhvdmVyID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkJvcmRlciA9ICcwJztcblxuZXhwb3J0IGNvbnN0IGN0YUJ0bkJnZCA9ICcjMEY5NjY4JztcbmV4cG9ydCBjb25zdCBjdGFCdG5CZ2RIb3ZlciA9ICcjMTNCMTdCJztcbmV4cG9ydCBjb25zdCBjdGFCdG5BY3RCZ2QgPSAnIzEzQjE3Qic7XG5leHBvcnQgY29uc3QgY3RhQnRuQ29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgY3RhQnRuQWN0Q29sb3IgPSAnI0ZGRkZGRic7XG5cbmV4cG9ydCBjb25zdCBsaW5rQnRuQmdkID0gJ3RyYW5zcGFyZW50JztcbmV4cG9ydCBjb25zdCBsaW5rQnRuQWN0QmdkID0gbGlua0J0bkJnZDtcbmV4cG9ydCBjb25zdCBsaW5rQnRuQ29sb3IgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgbGlua0J0bkFjdENvbG9yID0gJyNGMUYxRjEnO1xuZXhwb3J0IGNvbnN0IGxpbmtCdG5BY3RCZ2RIb3ZlciA9IGxpbmtCdG5CZ2Q7XG5leHBvcnQgY29uc3QgbGlua0J0bkJvcmRlciA9ICcwJztcblxuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQmdkID0gZXJyb3JDb2xvcjtcbmV4cG9ydCBjb25zdCBuZWdhdGl2ZUJ0bkFjdEJnZCA9ICcjRkYxOTNFJztcbmV4cG9ydCBjb25zdCBuZWdhdGl2ZUJ0bkJnZEhvdmVyID0gJyNGRjE5M0UnO1xuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQm9yZGVyID0gJzAnO1xuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQ29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgbmVnYXRpdmVCdG5BY3RDb2xvciA9ICcjRkZGRkZGJztcblxuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQmdkID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQWN0QmdkID0gJyMzQTQ1NTInO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQmdkSG92ZXIgPSAnIzNBNDU1Mic7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5Cb3JkZXIgPSAnMCc7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5Cb3JkZXJIb3ZlciA9ICcwJztcbmV4cG9ydCBjb25zdCBmbG9hdGluZ0J0bkNvbG9yID0gc3VidGV4dENvbG9yO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQWN0Q29sb3IgPSBzdWJ0ZXh0Q29sb3JBY3RpdmU7XG5cbmV4cG9ydCBjb25zdCBzZWxlY3Rpb25CdG5CZ2QgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkFjdEJnZCA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQWN0Q29sb3IgPSAnIzBGOTY2OCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQmdkSG92ZXIgPSAnIzBGOTY2OCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQm9yZGVyID0gJzEnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkJvcmRlckNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yID0gJyMwRjk2NjgnO1xuXG4vLyBJbnB1dFxuZXhwb3J0IGNvbnN0IGlucHV0Qm94SGVpZ2h0ID0gJzM0cHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0Qm94SGVpZ2h0U21hbGwgPSAnMjRweCc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3hIZWlnaHRUaW55ID0gJzE4cHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0UGFkZGluZyA9ICc0cHggMTBweCc7XG5leHBvcnQgY29uc3QgaW5wdXRQYWRkaW5nU21hbGwgPSAnNHB4IDZweCc7XG5leHBvcnQgY29uc3QgaW5wdXRQYWRkaW5nVGlueSA9ICcycHggNHB4JztcbmV4cG9ydCBjb25zdCBpbnB1dEZvbnRTaXplID0gJzExcHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0Rm9udFNpemVTbWFsbCA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCBpbnB1dEZvbnRXZWlnaHQgPSA1MDA7XG5leHBvcnQgY29uc3QgaW5wdXRCZ2QgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3QgaW5wdXRCZ2RIb3ZlciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJnZEFjdGl2ZSA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJnZEFjdGl2ZUxUID0gJyNGRkZGRkYnO1xuXG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJDb2xvciA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJvcmRlckhvdmVyQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJIb3ZlckNvbG9yTFQgPSBzdWJ0ZXh0Q29sb3I7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJBY3RpdmVDb2xvciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJvcmRlckFjdGl2ZUNvbG9yTFQgPSB0ZXh0Q29sb3JMVDtcblxuZXhwb3J0IGNvbnN0IGlucHV0Q29sb3IgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJSYWRpdXMgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBpbnB1dFBsYWNlaG9sZGVyQ29sb3IgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgaW5wdXRQbGFjZWhvbGRlckNvbG9yTFQgPSBzdWJ0ZXh0Q29sb3JMVDtcbmV4cG9ydCBjb25zdCBpbnB1dFBsYWNlaG9sZGVyRm9udFdlaWdodCA9IDQwMDtcbmV4cG9ydCBjb25zdCBpbnB1dEJveFNoYWRvdyA9ICdub25lJztcbmV4cG9ydCBjb25zdCBpbnB1dEJveFNoYWRvd0FjdGl2ZSA9ICdub25lJztcbmV4cG9ydCBjb25zdCBpbnB1dEJveFNoYWRvd0FjdGl2ZUxUID0gJ25vbmUnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0QmdkID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0QmdkSG92ZXIgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5SW5wdXRCZ2RBY3RpdmUgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5SW5wdXRDb2xvciA9ICcjQTBBN0I0JztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0Qm9yZGVyQWN0aXZlQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25TZWxlY3RIZWlnaHQgPSAzMDtcblxuLy8gU2VsZWN0XG5leHBvcnQgY29uc3Qgc2VsZWN0Q29sb3IgPSBpbnB1dENvbG9yO1xuZXhwb3J0IGNvbnN0IHNlbGVjdENvbG9yTFQgPSB0aXRsZUNvbG9yTFQ7XG5cbmV4cG9ydCBjb25zdCBzZWxlY3RBY3RpdmVCb3JkZXJDb2xvciA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzZWxlY3RGb250U2l6ZSA9ICcxMXB4JztcbmV4cG9ydCBjb25zdCBzZWxlY3RGb250V2VpZ2h0ID0gJzQwMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Rm9udFdlaWdodEJvbGQgPSAnNTAwJztcblxuZXhwb3J0IGNvbnN0IHNlbGVjdENvbG9yUGxhY2VIb2xkZXIgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUID0gc2VsZWN0Q29sb3JMVDtcbmV4cG9ydCBjb25zdCBzZWxlY3RCYWNrZ3JvdW5kID0gaW5wdXRCZ2Q7XG5leHBvcnQgY29uc3Qgc2VsZWN0QmFja2dyb3VuZEhvdmVyID0gaW5wdXRCZ2RIb3ZlcjtcbmV4cG9ydCBjb25zdCBzZWxlY3RCYWNrZ3JvdW5kTFQgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3Qgc2VsZWN0QmFja2dyb3VuZEhvdmVyTFQgPSAnI0Y4RjhGOSc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Qm9yZGVyQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Qm9yZGVyQ29sb3JMVCA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzZWxlY3RCb3JkZXJSYWRpdXMgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBzZWxlY3RCb3JkZXIgPSAwO1xuZXhwb3J0IGNvbnN0IHBhbmVsVGFiQ29sb3IgPSBzdWJ0ZXh0Q29sb3I7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmcgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmdMVCA9ICcjRjhGOEY5JztcbmV4cG9ydCBjb25zdCBkcm9wZG93bkxpc3RTaGFkb3cgPSAnMCA2cHggMTJweCAwIHJnYmEoMCwwLDAsMC4xNiknO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEJnZCA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCB0b29sYmFySXRlbUJnZEhvdmVyID0gJyMzQTQ1NTInO1xuZXhwb3J0IGNvbnN0IHRvb2xiYXJJdGVtSWNvbkhvdmVyID0gdGV4dENvbG9ySGw7XG5leHBvcnQgY29uc3QgdG9vbGJhckl0ZW1Cb3JkZXJIb3ZlciA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgdG9vbGJhckl0ZW1Cb3JkZXJSYWRkaXVzID0gJzBweCc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0QmdkTFQgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0Qm9yZGVyVG9wID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEJvcmRlclRvcExUID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdExpbmVIZWlnaHQgPSAyMDtcbmV4cG9ydCBjb25zdCBkcm9wZG93bldyYXBwZXJaID0gMTAwO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duV2FwcGVyTWFyZ2luID0gNDtcblxuLy8gU3dpdGNoXG5leHBvcnQgY29uc3Qgc3dpdGNoV2lkdGggPSAyNDtcbmV4cG9ydCBjb25zdCBzd2l0Y2hIZWlnaHQgPSAxMjtcbmV4cG9ydCBjb25zdCBzd2l0Y2hMYWJlbE1hcmdpbiA9IDEyO1xuXG5leHBvcnQgY29uc3Qgc3dpdGNoVHJhY2tCZ2QgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3Qgc3dpdGNoVHJhY2tCZ2RBY3RpdmUgPSBhY3RpdmVDb2xvcjtcbmV4cG9ydCBjb25zdCBzd2l0Y2hUcmFja0JvcmRlclJhZGl1cyA9ICcxcHgnO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkJnZCA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBzd2l0Y2hCdG5CZ2RBY3RpdmUgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc3dpdGNoQnRuQm94U2hhZG93ID0gJzAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC40MCknO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkJvcmRlclJhZGl1cyA9ICcwJztcbmV4cG9ydCBjb25zdCBzd2l0Y2hCdG5XaWR0aCA9IDEyO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkhlaWdodCA9IDEyO1xuXG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2QgPSAnIzI0MjczMCc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5U3dpdGNoQnRuQmdkID0gJyMzQTQxNEMnO1xuXG4vLyBDaGVja2JveFxuZXhwb3J0IGNvbnN0IGNoZWNrYm94V2lkdGggPSAxNjtcbmV4cG9ydCBjb25zdCBjaGVja2JveEhlaWdodCA9IDE2O1xuZXhwb3J0IGNvbnN0IGNoZWNrYm94TWFyZ2luID0gMTI7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3JkZXJDb2xvciA9IHNlbGVjdEJvcmRlckNvbG9yO1xuZXhwb3J0IGNvbnN0IGNoZWNrYm94Qm9yZGVyUmFkaXVzID0gJzJweCc7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3JkZXJDb2xvckxUID0gc2VsZWN0Qm9yZGVyQ29sb3JMVDtcbmV4cG9ydCBjb25zdCBjaGVja2JveEJveEJnZCA9ICd3aGl0ZSc7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3hCZ2RDaGVja2VkID0gcHJpbWFyeUJ0bkJnZDtcblxuLy8gUmFkaW9cbmV4cG9ydCBjb25zdCByYWRpb1JhZGl1cyA9IDg7XG5leHBvcnQgY29uc3QgcmFkaW9Cb3JkZXJSYWRpdXMgPSAxMDA7XG5leHBvcnQgY29uc3QgcmFkaW9Cb3JkZXJDb2xvciA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgcmFkaW9CdXR0b25SYWRpdXMgPSA0O1xuZXhwb3J0IGNvbnN0IHJhZGlvQnV0dG9uQmdkQ29sb3IgPSBzd2l0Y2hCdG5CZ2RBY3RpdmU7XG5cbi8vIFNpZGUgUGFuZWxcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxIZWFkZXJCZyA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxIZWFkZXJCb3JkZXIgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBNYXJnaW5Cb3R0b20gPSAxMjtcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwUGFkZGluZ0xlZnQgPSAxODtcblxuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbElubmVyUGFkZGluZyA9IDE2O1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbEJvcmRlciA9IDA7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsQm9yZGVyQ29sb3IgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbEJnID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbFNjcm9sbEJhcldpZHRoID0gMTA7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsU2Nyb2xsQmFySGVpZ2h0ID0gMTA7XG5leHBvcnQgY29uc3Qgc2lkZUJhckNsb3NlQnRuQmdkID0gc2Vjb25kYXJ5QnRuQmdkO1xuZXhwb3J0IGNvbnN0IHNpZGVCYXJDbG9zZUJ0bkNvbG9yID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IHNpZGVCYXJDbG9zZUJ0bkJnZEhvdmVyID0gc2Vjb25kYXJ5QnRuQWN0QmdkO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbFRpdGxlRm9udHNpemUgPSAnMjBweCc7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsVGl0bGVMaW5lSGVpZ2h0ID0gJzEuNzE0MjknO1xuZXhwb3J0IGNvbnN0IHBhbmVsQmFja2dyb3VuZCA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBwYW5lbENvbnRlbnRCYWNrZ3JvdW5kID0gJyMyOTJFMzYnO1xuZXhwb3J0IGNvbnN0IHBhbmVsQmFja2dyb3VuZEhvdmVyID0gJyMzQTQ1NTInO1xuZXhwb3J0IGNvbnN0IHBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzID0gJzBweCc7XG5leHBvcnQgY29uc3QgY2hpY2tsZXRCZ2QgPSAnIzNBNDU1Mic7XG5leHBvcnQgY29uc3QgY2hpY2tsZXRCZ2RMVCA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBwYW5lbEhlYWRlckljb24gPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgcGFuZWxIZWFkZXJJY29uQWN0aXZlID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHBhbmVsSGVhZGVySWNvbkhvdmVyID0gdGV4dENvbG9ySGw7XG5leHBvcnQgY29uc3QgcGFuZWxIZWFkZXJIZWlnaHQgPSA0ODtcbmV4cG9ydCBjb25zdCBsYXllclBhbmVsSGVhZGVySGVpZ2h0ID0gNDg7XG5leHBvcnQgY29uc3QgcGFuZWxCb3hTaGFkb3cgPSAnMCA2cHggMTJweCAwIHJnYmEoMCwwLDAsMC4xNiknO1xuZXhwb3J0IGNvbnN0IHBhbmVsQm9yZGVyUmFkaXVzID0gJzJweCc7XG5leHBvcnQgY29uc3QgcGFuZWxCYWNrZ3JvdW5kTFQgPSAnI0Y4RjhGOSc7XG5leHBvcnQgY29uc3QgcGFuZWxUb2dnbGVNYXJnaW5SaWdodCA9IDEyO1xuZXhwb3J0IGNvbnN0IHBhbmVsVG9nZ2xlQm90dG9tUGFkZGluZyA9IDY7XG5cbmV4cG9ydCBjb25zdCBwYW5lbEJvcmRlckNvbG9yID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IHBhbmVsQm9yZGVyID0gYDFweCBzb2xpZCAke2JvcmRlckNvbG9yfWA7XG5leHBvcnQgY29uc3QgcGFuZWxCb3JkZXJMVCA9IGAxcHggc29saWQgJHtib3JkZXJDb2xvckxUfWA7XG5cbmV4cG9ydCBjb25zdCBtYXBQYW5lbEJhY2tncm91bmRDb2xvciA9ICcjMjQyNzMwJztcbmV4cG9ydCBjb25zdCBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvciA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCB0b29sdGlwQmcgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgdG9vbHRpcENvbG9yID0gdGV4dENvbG9ySGw7XG5leHBvcnQgY29uc3QgdG9vbHRpcEJveFNoYWRvdyA9IGJveFNoYWRvdztcbmV4cG9ydCBjb25zdCB0b29sdGlwRm9udFNpemUgPSAnMTBweCc7XG5cbmV4cG9ydCBjb25zdCBsYXllclR5cGVJY29uU2l6ZUwgPSA1MDtcbmV4cG9ydCBjb25zdCBsYXllclR5cGVJY29uUGRMID0gMTI7XG5leHBvcnQgY29uc3QgbGF5ZXJUeXBlSWNvblNpemVTTSA9IDI4O1xuXG4vLyBTaWRlcGFuZWwgZGl2aWRlclxuZXhwb3J0IGNvbnN0IHNpZGVwYW5lbERpdmlkZXJCb3JkZXIgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBzaWRlcGFuZWxEaXZpZGVyTWFyZ2luID0gMTI7XG5leHBvcnQgY29uc3Qgc2lkZXBhbmVsRGl2aWRlckhlaWdodCA9IDEyO1xuXG4vLyBCb3R0b20gUGFuZWxcbmV4cG9ydCBjb25zdCBib3R0b21Jbm5lclBkU2lkZSA9IDMyO1xuZXhwb3J0IGNvbnN0IGJvdHRvbUlubmVyUGRWZXJ0ID0gNjtcbmV4cG9ydCBjb25zdCBib3R0b21QYW5lbEdhcCA9IDIwO1xuZXhwb3J0IGNvbnN0IGJvdHRvbVdpZGdldFBhZGRpbmdUb3AgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRQYWRkaW5nUmlnaHQgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRQYWRkaW5nQm90dG9tID0gMzA7XG5leHBvcnQgY29uc3QgYm90dG9tV2lkZ2V0UGFkZGluZ0xlZnQgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRCZ2QgPSAnIzI5MzIzQyc7XG4vLyBNb2RhbFxuZXhwb3J0IGNvbnN0IG1vZGFsVGl0bGVDb2xvciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBtb2RhbFRpdGxlRm9udFNpemUgPSAnMjRweCc7XG5leHBvcnQgY29uc3QgbW9kYWxUaXRsZUZvbnRTaXplU21hbGxlciA9ICcxOHB4JztcbmV4cG9ydCBjb25zdCBtb2RhbEZvb3RlckJnZCA9ICcjRjhGOEY5JztcbmV4cG9ydCBjb25zdCBtb2RhbEltYWdlUGxhY2VIb2xkZXIgPSAnI0REREZFMyc7XG5leHBvcnQgY29uc3QgbW9kYWxQYWRkaW5nID0gJzEwcHggMCc7XG5leHBvcnQgY29uc3QgbW9kYWxMYXRlcmFsUGFkZGluZyA9ICc3MnB4JztcbmV4cG9ydCBjb25zdCBtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmcgPSAnMzZweCc7XG5cbmV4cG9ydCBjb25zdCBtb2RhbE92ZXJMYXlaID0gMTAwMTtcbmV4cG9ydCBjb25zdCBtb2RhbE92ZXJsYXlCZ2QgPSAncmdiYSgwLCAwLCAwLCAwLjUpJztcbmV4cG9ydCBjb25zdCBtb2RhbENvbnRlbnRaID0gMTAwMDI7XG5leHBvcnQgY29uc3QgbW9kYWxGb290ZXJaID0gMTAwMDE7XG5leHBvcnQgY29uc3QgbW9kYWxUaXRsZVogPSAxMDAwMztcbmV4cG9ydCBjb25zdCBtb2RhbEJ1dHRvblogPSAxMDAwNTtcbmV4cG9ydCBjb25zdCBtb2RhbERyb3Bkb3duQmFja2dyb3VuZCA9ICcjRkZGRkZGJztcblxuLy8gTW9kYWwgRGlhbG9nIChEYXJrKVxuZXhwb3J0IGNvbnN0IG1vZGFsRGlhbG9nQmdkID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IG1vZGFsRGlhbG9nQ29sb3IgPSB0ZXh0Q29sb3JIbDtcblxuLy8gU2xpZGVyXG5leHBvcnQgY29uc3Qgc2xpZGVyQmFyQ29sb3IgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3Qgc2xpZGVyQmFyQmdkID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckJhckhvdmVyQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2xpZGVyQmFyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3Qgc2xpZGVyQmFySGVpZ2h0ID0gNDtcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVIZWlnaHQgPSAxMjtcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVXaWR0aCA9IDEyO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZUNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZVRleHRDb2xvciA9IHNsaWRlckhhbmRsZUNvbG9yO1xuZXhwb3J0IGNvbnN0IHNsaWRlckluYWN0aXZlQm9yZGVyQ29sb3IgPSBzbGlkZXJIYW5kbGVDb2xvcjtcbmV4cG9ydCBjb25zdCBzbGlkZXJCb3JkZXJSYWRpdXMgPSAnMCc7XG5cbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVIb3ZlckNvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZUFmdGVyQ29udGVudCA9ICcnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZVNoYWRvdyA9ICcwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuNDApJztcbmV4cG9ydCBjb25zdCBzbGlkZXJJbnB1dEhlaWdodCA9IDI0O1xuZXhwb3J0IGNvbnN0IHNsaWRlcklucHV0V2lkdGggPSA1NjtcbmV4cG9ydCBjb25zdCBzbGlkZXJJbnB1dEZvbnRTaXplID0gJzEwcHgnO1xuZXhwb3J0IGNvbnN0IHNsaWRlcklucHV0UGFkZGluZyA9ICc0cHggNnB4JztcbmV4cG9ydCBjb25zdCBzbGlkZXJNYXJnaW5Ub3BJc1RpbWUgPSAtMTI7XG5leHBvcnQgY29uc3Qgc2xpZGVyTWFyZ2luVG9wID0gMTI7XG5leHBvcnQgY29uc3Qgc2xpZGVyTWFyZ2luQm90dG9tID0gMTI7XG5cbi8vIEdlb2NvZGVyXG5leHBvcnQgY29uc3QgZ2VvY29kZXJXaWR0aCA9IDM2MDtcbmV4cG9ydCBjb25zdCBnZW9jb2RlclRvcCA9IDIwO1xuZXhwb3J0IGNvbnN0IGdlb2NvZGVyUmlnaHQgPSAxMjtcbmV4cG9ydCBjb25zdCBnZW9jb2RlcklucHV0SGVpZ2h0ID0gMzY7XG5cbi8vIFBsb3RcbmV4cG9ydCBjb25zdCByYW5nZUJydXNoQmdkID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IGhpc3RvZ3JhbUZpbGxJblJhbmdlID0gYWN0aXZlQ29sb3I7XG5leHBvcnQgY29uc3QgaGlzdG9ncmFtRmlsbE91dFJhbmdlID0gc2xpZGVyQmFyQ29sb3I7XG5leHBvcnQgY29uc3QgYXhpc0ZvbnRTaXplID0gJzEwcHgnO1xuZXhwb3J0IGNvbnN0IGF4aXNGb250Q29sb3IgPSB0ZXh0Q29sb3I7XG5leHBvcnQgY29uc3QgdGltZVRpdGxlRm9udFNpemUgPSAnMTBweCc7XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90TWFyZ2luID0ge3RvcDogMTIsIGJvdHRvbTogMCwgbGVmdDogMCwgcmlnaHQ6IDB9O1xuZXhwb3J0IGNvbnN0IHJhbmdlUGxvdE1hcmdpbkxhcmdlID0ge3RvcDogMTgsIGJvdHRvbTogMCwgbGVmdDogMCwgcmlnaHQ6IDB9O1xuZXhwb3J0IGNvbnN0IHJhbmdlUGxvdEggPSA2MjtcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RDb250YWluZXJIID0gNzg7XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90SExhcmdlID0gMTAyO1xuZXhwb3J0IGNvbnN0IHJhbmdlUGxvdENvbnRhaW5lckhMYXJnZSA9IDEyMDtcblxuLy8gTm90aWZpY2F0aW9uXG5leHBvcnQgY29uc3Qgbm90aWZpY2F0aW9uQ29sb3JzID0ge1xuICBpbmZvOiAnIzI3NmVmMScsXG4gIGVycm9yOiAnI2YyNTEzOCcsXG4gIHN1Y2Nlc3M6ICcjNDdiMjc1JyxcbiAgd2FybmluZzogJyNmZmMwNDMnXG59O1xuXG5leHBvcnQgY29uc3Qgbm90aWZpY2F0aW9uUGFuZWxXaWR0aCA9IDI0MDtcbmV4cG9ydCBjb25zdCBub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCA9IG5vdGlmaWNhdGlvblBhbmVsV2lkdGggLSA2MDtcbmV4cG9ydCBjb25zdCBub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQgPSA2MDtcblxuLy8gRGF0YSBUYWJsZVxuY29uc3QgaGVhZGVyUm93SGVpZ2h0ID0gNzA7XG5jb25zdCByb3dIZWlnaHQgPSAzMjtcbmNvbnN0IGhlYWRlclBhZGRpbmdUb3AgPSA2O1xuY29uc3QgaGVhZGVyUGFkZGluZ0JvdHRvbSA9IDg7XG5jb25zdCBjZWxsUGFkZGluZ1NpZGUgPSAxMDtcbmNvbnN0IGVkZ2VDZWxsUGFkZGluZ1NpZGUgPSAxMDtcbmNvbnN0IGNlbGxGb250U2l6ZSA9IDEwO1xuY29uc3QgZ3JpZFBhZGRpbmdTaWRlID0gMjQ7XG5jb25zdCBoZWFkZXJDZWxsQmFja2dyb3VuZCA9ICcjRkZGRkZGJztcbmNvbnN0IGhlYWRlckNlbGxCb3JkZXJDb2xvciA9ICcjRTBFMEUwJztcbmNvbnN0IGhlYWRlckNlbGxJY29uQ29sb3IgPSAnIzY2NjY2Nic7XG5jb25zdCBjZWxsQm9yZGVyQ29sb3IgPSAnI0UwRTBFMCc7XG5jb25zdCBldmVuUm93QmFja2dyb3VuZCA9ICcjRkZGRkZGJztcbmNvbnN0IG9kZFJvd0JhY2tncm91bmQgPSAnI0Y3RjdGNyc7XG5jb25zdCBvcHRpb25CdXR0b25Db2xvciA9ICcjNkE3NDg1JztcbmNvbnN0IHBpbm5lZEdyaWRCb3JkZXJDb2xvciA9ICcjRTBFMEUwJztcblxuLy8gRmxvYXRpbmcgVGltZSBkaXNwbGF5XG5jb25zdCB0aW1lRGlzcGxheUJvcmRlclJhZGl1cyA9IDMyO1xuY29uc3QgdGltZURpc3BsYXlIZWlnaHQgPSA2NDtcbmNvbnN0IHRpbWVEaXNwbGF5TWluV2lkdGggPSAxNzY7XG5jb25zdCB0aW1lRGlzcGxheU9wYWNpdHkgPSAwLjg7XG5jb25zdCB0aW1lRGlzcGxheVBhZGRpbmcgPSAnMCAyNHB4JztcblxuLy8gRXhwb3J0IG1hcCBtb2RhbFxuY29uc3QgZXhwb3J0SW50cmFTZWN0aW9uTWFyZ2luID0gJzgnO1xuXG4vLyBwcm9ncmVzcyBiYXJcbmNvbnN0IHByb2dyZXNzQmFyQ29sb3IgPSBwcmltYXJ5QnRuQmdkO1xuY29uc3QgcHJvZ3Jlc3NCYXJUcmFja0NvbG9yID0gJyNFOEU4RTgnO1xuLy8gQWN0aW9uIFBhbmVsXG5leHBvcnQgY29uc3QgYWN0aW9uUGFuZWxXaWR0aCA9IDExMDtcbmV4cG9ydCBjb25zdCBhY3Rpb25QYW5lbEhlaWdodCA9IDMyO1xuXG4vLyBTdHlsZWQgVG9rZW5cbmV4cG9ydCBjb25zdCBmaWVsZFRva2VuUmlnaHRNYXJnaW4gPSA0O1xuXG5leHBvcnQgY29uc3QgdGV4dFRydW5jYXRlID0ge1xuICBtYXhXaWR0aDogJzEwMCUnLFxuICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gIHRleHRPdmVyZmxvdzogJ2VsbGlwc2lzJyxcbiAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXG4gIHdvcmRXcmFwOiAnbm9ybWFsJ1xufTtcblxuLy8gbGF5ZXJDb25maWdHcm91cExhYmVsXG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cExhYmVsQm9yZGVyTGVmdCA9ICcycHgnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBMYWJlbE1hcmdpbiA9ICctMTJweCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cExhYmVsUGFkZGluZyA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwQ29sb3IgPSAndHJhbnNwYXJlbnQnO1xuXG4vLyBsYXllckNvbmZpZ0dyb3VwTGFiZWwgbGFiZWxcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwTGFiZWxMYWJlbE1hcmdpbiA9ICcwJztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwTGFiZWxMYWJlbEZvbnRTaXplID0gJzEycHgnO1xuXG4vLyBzdHlsZWRDb25maWdHcm91cEhlYWRlclxuZXhwb3J0IGNvbnN0IHN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyQm9yZGVyID0gJzJweCc7XG5cbi8vIGxheWVyQ29uZmlndXJhdG9yXG5cbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ3VyYXRvckJvcmRlciA9ICcwJztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ3VyYXRvckJvcmRlckNvbG9yID0gJyc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWd1cmF0b3JNYXJnaW4gPSAnMTJweCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWd1cmF0b3JQYWRkaW5nID0gJzEycHggMCA4cHggMCc7XG4vLyBUaGlzIGJyZWFrcG9pbnRzIGFyZSB1c2VkIGZvciByZXNwb25zaXZlIGRlc2lnblxuZXhwb3J0IGNvbnN0IGJyZWFrUG9pbnRzID0ge1xuICBwYWxtOiA1ODgsXG4gIGRlc2s6IDc2OFxufTtcblxuLy8gdGhlbWUgaXMgcGFzc2VkIHRvIGtlcGxlci5nbCB3aGVuIGl0J3MgbW91bnRlZCxcbi8vIGl0IGlzIHVzZWQgYnkgc3R5bGVkLWNvbXBvbmVudHMgdG8gcGFzcyBhbG9uZyB0b1xuLy8gYWxsIGNoaWxkIGNvbXBvbmVudHNcblxuY29uc3QgaW5wdXQgPSBjc3NgXG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0UGxhY2Vob2xkZXJDb2xvcn07XG4gICAgZm9udC13ZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRQbGFjZWhvbGRlckZvbnRXZWlnaHR9O1xuICB9XG5cbiAgLyogRGlzYWJsZSBBcnJvd3Mgb24gTnVtYmVyIElucHV0cyAqL1xuICA6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCZ2R9O1xuICBib3JkZXI6IDFweCBzb2xpZFxuICAgICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmFjdGl2ZVxuICAgICAgICA/IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3JcbiAgICAgICAgOiBwcm9wcy5lcnJvclxuICAgICAgICA/IHByb3BzLnRoZW1lLmVycm9yQ29sb3JcbiAgICAgICAgOiBwcm9wcy50aGVtZS5pbnB1dEJnZH07XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY2FyZXQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvcn07XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Q29sb3J9O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6ICR7cHJvcHMgPT5cbiAgICBbJ3NtYWxsJywgJ3RpbnknXS5pbmNsdWRlcyhwcm9wcy5zaXplKVxuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dEZvbnRTaXplU21hbGxcbiAgICAgIDogcHJvcHMudGhlbWUuaW5wdXRGb250U2l6ZX07XG4gIGZvbnQtd2VpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Rm9udFdlaWdodH07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmZvbnRGYW1pbHl9O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5zaXplID09PSAnc21hbGwnXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0U21hbGxcbiAgICAgIDogcHJvcHMuc2l6ZSA9PT0gJ3RpbnknXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0VGlueVxuICAgICAgOiBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodH07XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgb3V0bGluZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNpemUgPT09ICdzbWFsbCdcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRQYWRkaW5nU21hbGxcbiAgICAgIDogcHJvcHMuc2l6ZSA9PT0gJ3RpbnknXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0UGFkZGluZ1RpbnlcbiAgICAgIDogcHJvcHMudGhlbWUuaW5wdXRQYWRkaW5nfTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudHJhbnNpdGlvbn07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgcG9pbnRlci1ldmVudHM6ICR7cHJvcHMgPT4gKHByb3BzLmRpc2FibGVkID8gJ25vbmUnIDogJ2FsbCcpfTtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMuZGlzYWJsZWQgPyAwLjUgOiAxKX07XG4gIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3hTaGFkb3d9O1xuXG4gIDpob3ZlciB7XG4gICAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy50eXBlID09PSAnbnVtYmVyJyB8fCBwcm9wcy50eXBlID09PSAndGV4dCcgPyAndGV4dCcgOiAncG9pbnRlcicpfTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+XG4gICAgICBwcm9wcy5hY3RpdmUgPyBwcm9wcy50aGVtZS5pbnB1dEJnZEFjdGl2ZSA6IHByb3BzLnRoZW1lLmlucHV0QmdkSG92ZXJ9O1xuICAgIGJvcmRlci1jb2xvcjogJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuYWN0aXZlID8gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvciA6IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVySG92ZXJDb2xvcn07XG4gIH1cblxuICA6YWN0aXZlLFxuICA6Zm9jdXMsXG4gICYuZm9jdXMsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkQWN0aXZlfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvcn07XG4gICAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJveFNoYWRvd0FjdGl2ZX07XG4gIH1cbmA7XG5cbmNvbnN0IGlucHV0TFQgPSBjc3NgXG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0UGxhY2Vob2xkZXJDb2xvckxUfTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG4gICR7aW5wdXR9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3RCYWNrZ3JvdW5kTFR9O1xuICBib3JkZXI6IDFweCBzb2xpZFxuICAke3Byb3BzID0+XG4gICAgcHJvcHMuYWN0aXZlXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdEFjdGl2ZUJvcmRlckNvbG9yXG4gICAgICA6IHByb3BzLmVycm9yXG4gICAgICA/IHByb3BzLnRoZW1lLmVycm9yQ29sb3JcbiAgICAgIDogcHJvcHMudGhlbWUuc2VsZWN0Qm9yZGVyQ29sb3JMVH07XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yTFR9O1xuICBjYXJldC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yTFR9O1xuXG4gIDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJnZEFjdGl2ZUxUfTtcbiAgICBjdXJzb3I6ICR7cHJvcHMgPT4gKFsnbnVtYmVyJywgJ3RleHQnXS5pbmNsdWRlcyhwcm9wcy50eXBlKSA/ICd0ZXh0JyA6ICdwb2ludGVyJyl9O1xuICAgIGJvcmRlci1jb2xvcjogJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuYWN0aXZlID8gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvckxUIDogcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJIb3ZlckNvbG9yTFR9O1xuICB9XG5cbiAgOmFjdGl2ZSxcbiAgOmZvY3VzLFxuICAmLmZvY3VzLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJnZEFjdGl2ZUxUfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvckxUfTtcbiAgICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm94U2hhZG93QWN0aXZlTFR9O1xuICB9XG5gO1xuXG5jb25zdCBzZWNvbmRhcnlJbnB1dCA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dH1cbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRDb2xvcn07XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRCZ2R9O1xuICBib3JkZXI6IDFweCBzb2xpZFxuICAgICR7cHJvcHMgPT4gKHByb3BzLmVycm9yID8gcHJvcHMudGhlbWUuZXJyb3JDb2xvciA6IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0Qm9yZGVyQ29sb3IpfTtcblxuICA6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0QmdkSG92ZXJ9O1xuICAgIGJvcmRlci1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dEJnZEhvdmVyfTtcbiAgfVxuXG4gIDphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0QmdkQWN0aXZlfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcn07XG4gIH1cbmA7XG5cbmNvbnN0IGNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lciA9IGNzc2BcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGhlaWdodDogYXV0bztcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICBwYWRkaW5nOiAwcHggN3B4IDBweCA0cHg7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgLmNoaWNrbGV0ZWQtaW5wdXRfX3BsYWNlaG9sZGVyIHtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBtYXJnaW46IDRweDtcbiAgfVxuYDtcblxuY29uc3QgY2hpY2tsZXRlZElucHV0ID0gY3NzYFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0fSAke3Byb3BzID0+IHByb3BzLnRoZW1lLmNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lcn07XG5gO1xuXG5jb25zdCBjaGlja2xldGVkSW5wdXRMVCA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dExUfSAke3Byb3BzID0+IHByb3BzLnRoZW1lLmNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lcn07XG5gO1xuXG5jb25zdCBzZWNvbmRhcnlDaGlja2xldGVkSW5wdXQgPSBjc3NgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXR9ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hpY2tsZXRlZElucHV0Q29udGFpbmVyfTtcbmA7XG5cbmNvbnN0IGlubGluZUlucHV0ID0gY3NzYFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0fSBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gIDpob3ZlciB7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGN1cnNvcjogdGV4dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICB9XG5cbiAgOmFjdGl2ZSxcbiAgLmFjdGl2ZSxcbiAgOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3J9O1xuICB9XG5gO1xuXG5jb25zdCBzd2l0Y2hUcmFjayA9IGNzc2BcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PlxuICAgIHByb3BzLmNoZWNrZWQgPyBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja0JnZEFjdGl2ZSA6IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkfTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6ICR7cHJvcHMgPT4gLXByb3BzLnRoZW1lLnN3aXRjaExhYmVsTWFyZ2lufXB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFdpZHRofXB4O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0fXB4O1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQm9yZGVyUmFkaXVzfTtcbmA7XG5cbmNvbnN0IHN3aXRjaEJ1dHRvbiA9IGNzc2BcbiAgdHJhbnNpdGlvbjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50cmFuc2l0aW9ufTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICR7cHJvcHMgPT4gKHByb3BzLnRoZW1lLnN3aXRjaEhlaWdodCAtIHByb3BzLnRoZW1lLnN3aXRjaEJ0bkhlaWdodCkgLyAyfXB4O1xuICBsZWZ0OiAke3Byb3BzID0+XG4gICAgKHByb3BzLmNoZWNrZWRcbiAgICAgID8gcHJvcHMudGhlbWUuc3dpdGNoV2lkdGggLyAyXG4gICAgICA6IChwcm9wcy50aGVtZS5zd2l0Y2hIZWlnaHQgLSBwcm9wcy50aGVtZS5zd2l0Y2hCdG5IZWlnaHQpIC8gMikgLVxuICAgIHByb3BzLnRoZW1lLnN3aXRjaExhYmVsTWFyZ2lufXB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hCdG5IZWlnaHR9cHg7XG4gIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ0bldpZHRofXB4O1xuICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+XG4gICAgcHJvcHMuY2hlY2tlZCA/IHByb3BzLnRoZW1lLnN3aXRjaEJ0bkJnZEFjdGl2ZSA6IHByb3BzLnRoZW1lLnN3aXRjaEJ0bkJnZH07XG4gIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoQnRuQm94U2hhZG93fTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hCdG5Cb3JkZXJSYWRpdXN9O1xuYDtcblxuY29uc3QgaW5wdXRTd2l0Y2ggPSBjc3NgXG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEhlaWdodH1weDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFdpZHRofXB4O1xuXG4gIDpiZWZvcmUge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoVHJhY2t9O1xuICB9XG5cbiAgOmFmdGVyIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ1dHRvbn07XG4gIH1cbmA7XG5cbi8vIFRoaXMgaXMgYSBsaWdodCB2ZXJzaW9uIGNoZWNrYm94XG5jb25zdCBjaGVja2JveEJveCA9IGNzc2BcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGVja2JveFdpZHRofXB4O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hIZWlnaHR9cHg7XG4gIGJhY2tncm91bmQ6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuY2hlY2tib3hCb3hCZ2RDaGVja2VkIDogcHJvcHMudGhlbWUuY2hlY2tib3hCb3hCZ2R9O1xuICBib3JkZXI6IDFweCBzb2xpZFxuICAgICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmNoZWNrZWQgPyBwcm9wcy50aGVtZS5jaGVja2JveEJveEJnZENoZWNrZWQgOiBwcm9wcy50aGVtZS5jaGVja2JveEJvcmRlckNvbG9yfTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBjb250ZW50OiAnJztcbmA7XG5cbmNvbnN0IGNoZWNrYm94Q2hlY2sgPSBjc3NgXG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHdoaXRlO1xuICB0b3A6IDRweDtcbiAgbGVmdDogM3B4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy5jaGVja2VkID8gMSA6IDApfTtcbiAgY29udGVudDogJyc7XG5gO1xuXG5jb25zdCBpbnB1dENoZWNrYm94ID0gY3NzYFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICBtYXJnaW4tbGVmdDogLSR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoTGFiZWxNYXJnaW59cHg7XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGVja2JveEJveH07XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hDaGVja307XG4gIH1cbmA7XG5cbmNvbnN0IGlucHV0UmFkaW8gPSBjc3NgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRDaGVja2JveH1cbiAgcGFkZGluZy1sZWZ0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvUmFkaXVzICogMiArIDh9cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaW5lLWhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAqIDJ9cHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIDpiZWZvcmUge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hCb3h9XG4gICAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9SYWRpdXMgKiAyfXB4O1xuICAgIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAqIDJ9cHg7XG4gICAgYm9yZGVyLXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0JvcmRlclJhZGl1c31weDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9Cb3JkZXJDb2xvcn07XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgIHRvcDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAtIHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzfXB4O1xuICAgIGxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9SYWRpdXMgLSBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1c31weDtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1cyAqIDJ9cHg7XG4gICAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzICogMn1weDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzICogMn1weDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvbkJnZENvbG9yfTtcbiAgfVxuYDtcblxuY29uc3Qgc2Vjb25kYXJ5U3dpdGNoID0gY3NzYFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0U3dpdGNofVxuXG4gIDpiZWZvcmUge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoVHJhY2t9IGJhY2tncm91bmQ6ICR7cHJvcHMgPT5cbiAgcHJvcHMuY2hlY2tlZCA/IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2R9O1xuICB9XG5cbiAgOmFmdGVyIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ1dHRvbn1cbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+XG4gICAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc2Vjb25kYXJ5U3dpdGNoQnRuQmdkfTtcbiAgfVxuYDtcblxuY29uc3QgZHJvcGRvd25TY3JvbGxCYXIgPSBjc3NgXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogMTBweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RCZ2R9O1xuICB9XG5cbiAgOnZlcnRpY2FsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IGRyb3Bkb3duU2Nyb2xsQmFyTFQgPSBjc3NgXG4gICR7ZHJvcGRvd25TY3JvbGxCYXJ9IDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZExUfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QmdkTFR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3JMVH07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RCZ2RMVH07XG4gIH1cblxuICA6dmVydGljYWw6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGxMVH07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RBbmNob3IgPSBjc3NgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yfTtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XG4gIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3RGb250U2l6ZX07XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdExpbmVIZWlnaHR9cHg7XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RBbmNob3JMVCA9IGNzc2BcbiAgJHtkcm9wZG93bkxpc3RBbmNob3J9XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yTFR9O1xuYDtcblxuY29uc3QgZHJvcGRvd25MaXN0U2l6ZSA9IGNzc2BcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBwYWRkaW5nOiAzcHggOXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBoZWlnaHQ6IDMycHg7XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RJdGVtID0gY3NzYFxuICAke2Ryb3Bkb3duTGlzdFNpemV9ICYuaG92ZXIsXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnfTtcblxuICAgIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgZHJvcGRvd25MaXN0SXRlbUxUID0gY3NzYFxuICAke2Ryb3Bkb3duTGlzdFNpemV9XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckxUfTtcblxuICAmLmhvdmVyLFxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGxMVH07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RIaWdobGlnaHRCZ0xUfTtcblxuICAgIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JMVH07XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RIZWFkZXIgPSBjc3NgXG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgcGFkZGluZzogNXB4IDlweDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RTZWN0aW9uID0gY3NzYFxuICBwYWRkaW5nOiAwIDAgNHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3QgPSBjc3NgXG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDI4MHB4O1xuICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdFNoYWRvd307XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICAubGlzdF9fc2VjdGlvbiB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RTZWN0aW9ufTtcbiAgfVxuICAubGlzdF9faGVhZGVyIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEhlYWRlcn07XG4gIH1cblxuICAubGlzdF9faXRlbSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtfTtcbiAgICAke2Ryb3Bkb3duTGlzdEl0ZW19O1xuICB9XG5cbiAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3J9O1xuICB9XG5cbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93blNjcm9sbEJhcn07XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RMVCA9IGNzc2BcbiAgJHtkcm9wZG93bkxpc3R9IC5saXN0X19pdGVtIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEl0ZW1MVH07XG4gIH1cblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvckxUfTtcbiAgfVxuXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25TY3JvbGxCYXJMVH07XG5gO1xuY29uc3Qgc2lkZVBhbmVsU2Nyb2xsQmFyID0gY3NzYFxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsU2Nyb2xsQmFySGVpZ2h0fXB4O1xuICAgIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbFNjcm9sbEJhcldpZHRofXB4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsQmd9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlUGFuZWxCZ307XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsQmd9O1xuXG4gICAgOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBwYW5lbERyb3Bkb3duU2Nyb2xsQmFyID0gY3NzYFxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH07XG4gICAgOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBzY3JvbGxCYXIgPSBjc3NgXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogMTBweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmR9XG5cbiAgICA6dmVydGljYWw6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgOmhvcml6b250YWw6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgbW9kYWxTY3JvbGxCYXIgPSBjc3NgXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICB9XG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2s6aG9yaXpvbnRhbCB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gIH1cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yTFR9O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkIHdoaXRlO1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzk2OWRhOTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6dmVydGljYWwge1xuICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG9yaXpvbnRhbCB7XG4gICAgYm9yZGVyLXJhZGl1czogOXB4O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgdGhlbWUgPSB7XG4gIC4uLkRJTUVOU0lPTlMsXG4gIC8vIHRlbXBsYXRlc1xuICBpbnB1dCxcbiAgaW5wdXRMVCxcbiAgaW5saW5lSW5wdXQsXG4gIGNoaWNrbGV0ZWRJbnB1dCxcbiAgY2hpY2tsZXRlZElucHV0TFQsXG4gIGNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lcixcbiAgc2Vjb25kYXJ5Q2hpY2tsZXRlZElucHV0LFxuXG4gIGJvcmRlckNvbG9yLFxuICBib3JkZXJDb2xvckxULFxuXG4gIHNlY29uZGFyeUlucHV0LFxuICBkcm9wZG93blNjcm9sbEJhcixcbiAgZHJvcGRvd25TY3JvbGxCYXJMVCxcbiAgZHJvcGRvd25MaXN0LFxuICBkcm9wZG93bkxpc3RMVCxcbiAgZHJvcGRvd25MaXN0SXRlbSxcbiAgZHJvcGRvd25MaXN0SXRlbUxULFxuICBkcm9wZG93bkxpc3RBbmNob3IsXG4gIGRyb3Bkb3duTGlzdEFuY2hvckxULFxuICBkcm9wZG93bkxpc3RIZWFkZXIsXG4gIGRyb3Bkb3duTGlzdFNlY3Rpb24sXG4gIGRyb3Bkb3duTGlzdFNoYWRvdyxcbiAgZHJvcGRvd25XcmFwcGVyWixcbiAgZHJvcGRvd25XYXBwZXJNYXJnaW4sXG4gIG1vZGFsU2Nyb2xsQmFyLFxuICBzY3JvbGxCYXIsXG4gIHNpZGVQYW5lbFNjcm9sbEJhcixcbiAgaW5wdXRTd2l0Y2gsXG4gIHNlY29uZGFyeVN3aXRjaCxcbiAgc3dpdGNoVHJhY2ssXG4gIHN3aXRjaEJ1dHRvbixcbiAgaW5wdXRDaGVja2JveCxcbiAgaW5wdXRSYWRpbyxcbiAgY2hlY2tib3hCb3gsXG4gIGNoZWNrYm94Q2hlY2ssXG5cbiAgLy8gVHJhbnNpdGlvbnNcbiAgdHJhbnNpdGlvbixcbiAgdHJhbnNpdGlvbkZhc3QsXG4gIHRyYW5zaXRpb25TbG93LFxuXG4gIC8vIHN0eWxlc1xuICBhY3RpdmVDb2xvcixcbiAgYWN0aXZlQ29sb3JIb3ZlcixcbiAgYm9yZGVyUmFkaXVzLFxuICBib3hTaGFkb3csXG4gIGVycm9yQ29sb3IsXG4gIGRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnLFxuICBkcm9wZG93bkxpc3RIaWdobGlnaHRCZ0xULFxuICBkcm9wZG93bkxpc3RCZ2QsXG4gIHRvb2xiYXJJdGVtQmdkSG92ZXIsXG4gIHRvb2xiYXJJdGVtQm9yZGVySG92ZXIsXG4gIHRvb2xiYXJJdGVtSWNvbkhvdmVyLFxuICB0b29sYmFySXRlbUJvcmRlclJhZGRpdXMsXG4gIGRyb3Bkb3duTGlzdEJnZExULFxuICBkcm9wZG93bkxpc3RCb3JkZXJUb3AsXG4gIGRyb3Bkb3duTGlzdEJvcmRlclRvcExULFxuICBkcm9wZG93bkxpc3RMaW5lSGVpZ2h0LFxuXG4gIGxhYmVsQ29sb3IsXG4gIGxhYmVsQ29sb3JMVCxcbiAgbGFiZWxIb3ZlckNvbG9yLFxuICBtYXBQYW5lbEJhY2tncm91bmRDb2xvcixcbiAgbWFwUGFuZWxIZWFkZXJCYWNrZ3JvdW5kQ29sb3IsXG5cbiAgLy8gU2VsZWN0XG4gIHNlbGVjdEFjdGl2ZUJvcmRlckNvbG9yLFxuICBzZWxlY3RCYWNrZ3JvdW5kLFxuICBzZWxlY3RCYWNrZ3JvdW5kTFQsXG4gIHNlbGVjdEJhY2tncm91bmRIb3ZlcixcbiAgc2VsZWN0QmFja2dyb3VuZEhvdmVyTFQsXG4gIHNlbGVjdEJvcmRlcixcbiAgc2VsZWN0Qm9yZGVyQ29sb3IsXG4gIHNlbGVjdEJvcmRlclJhZGl1cyxcbiAgc2VsZWN0Qm9yZGVyQ29sb3JMVCxcbiAgc2VsZWN0Q29sb3IsXG4gIHNlbGVjdENvbG9yUGxhY2VIb2xkZXIsXG4gIHNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCxcbiAgc2VsZWN0Rm9udFNpemUsXG4gIHNlbGVjdEZvbnRXZWlnaHQsXG4gIHNlbGVjdENvbG9yTFQsXG4gIHNlbGVjdEZvbnRXZWlnaHRCb2xkLFxuICBwYW5lbFRhYkNvbG9yLFxuXG4gIC8vIElucHV0XG4gIGlucHV0QmdkLFxuICBpbnB1dEJnZEhvdmVyLFxuICBpbnB1dEJnZEFjdGl2ZSxcbiAgaW5wdXRCZ2RBY3RpdmVMVCxcbiAgaW5wdXRCb3hIZWlnaHQsXG4gIGlucHV0Qm94SGVpZ2h0U21hbGwsXG4gIGlucHV0Qm94SGVpZ2h0VGlueSxcbiAgaW5wdXRCb3JkZXJDb2xvcixcbiAgaW5wdXRCb3JkZXJBY3RpdmVDb2xvcixcbiAgaW5wdXRCb3JkZXJIb3ZlckNvbG9yLFxuICBpbnB1dEJvcmRlclJhZGl1cyxcbiAgaW5wdXRDb2xvcixcbiAgaW5wdXRQYWRkaW5nLFxuICBpbnB1dFBhZGRpbmdTbWFsbCxcbiAgaW5wdXRQYWRkaW5nVGlueSxcbiAgaW5wdXRGb250U2l6ZSxcbiAgaW5wdXRGb250U2l6ZVNtYWxsLFxuICBpbnB1dEZvbnRXZWlnaHQsXG4gIGlucHV0UGxhY2Vob2xkZXJDb2xvcixcbiAgaW5wdXRQbGFjZWhvbGRlckNvbG9yTFQsXG4gIGlucHV0UGxhY2Vob2xkZXJGb250V2VpZ2h0LFxuICBpbnB1dEJveFNoYWRvdyxcbiAgaW5wdXRCb3hTaGFkb3dBY3RpdmUsXG4gIGlucHV0Qm94U2hhZG93QWN0aXZlTFQsXG4gIHNlY29uZGFyeUlucHV0QmdkLFxuICBzZWNvbmRhcnlJbnB1dEJnZEhvdmVyLFxuICBzZWNvbmRhcnlJbnB1dEJnZEFjdGl2ZSxcbiAgc2Vjb25kYXJ5SW5wdXRDb2xvcixcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJDb2xvcixcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcixcbiAgZHJvcGRvd25TZWxlY3RIZWlnaHQsXG5cbiAgLy8gU3dpdGNoXG4gIHN3aXRjaFdpZHRoLFxuICBzd2l0Y2hIZWlnaHQsXG4gIHN3aXRjaFRyYWNrQmdkLFxuICBzd2l0Y2hUcmFja0JnZEFjdGl2ZSxcbiAgc3dpdGNoVHJhY2tCb3JkZXJSYWRpdXMsXG4gIHN3aXRjaEJ0bkJnZCxcbiAgc3dpdGNoQnRuQmdkQWN0aXZlLFxuICBzd2l0Y2hCdG5Cb3hTaGFkb3csXG4gIHN3aXRjaEJ0bkJvcmRlclJhZGl1cyxcbiAgc3dpdGNoQnRuV2lkdGgsXG4gIHN3aXRjaEJ0bkhlaWdodCxcbiAgc3dpdGNoTGFiZWxNYXJnaW4sXG5cbiAgc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2QsXG4gIHNlY29uZGFyeVN3aXRjaEJ0bkJnZCxcblxuICAvLyBDaGVja2JveFxuICBjaGVja2JveFdpZHRoLFxuICBjaGVja2JveEhlaWdodCxcbiAgY2hlY2tib3hNYXJnaW4sXG4gIGNoZWNrYm94Qm9yZGVyQ29sb3IsXG4gIGNoZWNrYm94Qm9yZGVyUmFkaXVzLFxuICBjaGVja2JveEJvcmRlckNvbG9yTFQsXG4gIGNoZWNrYm94Qm94QmdkLFxuICBjaGVja2JveEJveEJnZENoZWNrZWQsXG5cbiAgLy8gUmFkaW9cbiAgcmFkaW9SYWRpdXMsXG4gIHJhZGlvQm9yZGVyUmFkaXVzLFxuICByYWRpb0JvcmRlckNvbG9yLFxuICByYWRpb0J1dHRvblJhZGl1cyxcbiAgcmFkaW9CdXR0b25CZ2RDb2xvcixcblxuICAvLyBCdXR0b25cbiAgYnRuRm9udEZhbWlseSxcbiAgcHJpbWFyeUJ0bkJnZCxcbiAgcHJpbWFyeUJ0bkFjdEJnZCxcbiAgcHJpbWFyeUJ0bkNvbG9yLFxuICBwcmltYXJ5QnRuQWN0Q29sb3IsXG4gIHByaW1hcnlCdG5CZ2RIb3ZlcixcbiAgcHJpbWFyeUJ0blJhZGl1cyxcbiAgcHJpbWFyeUJ0bkZvbnRTaXplRGVmYXVsdCxcbiAgcHJpbWFyeUJ0bkZvbnRTaXplU21hbGwsXG4gIHByaW1hcnlCdG5Gb250U2l6ZUxhcmdlLFxuICBwcmltYXJ5QnRuQm9yZGVyLFxuXG4gIHNlY29uZGFyeUJ0bkJnZCxcbiAgc2Vjb25kYXJ5QnRuQWN0QmdkLFxuICBzZWNvbmRhcnlCdG5CZ2RIb3ZlcixcbiAgc2Vjb25kYXJ5QnRuQ29sb3IsXG4gIHNlY29uZGFyeUJ0bkFjdENvbG9yLFxuICBzZWNvbmRhcnlCdG5Cb3JkZXIsXG5cbiAgbmVnYXRpdmVCdG5CZ2QsXG4gIG5lZ2F0aXZlQnRuQWN0QmdkLFxuICBuZWdhdGl2ZUJ0bkJnZEhvdmVyLFxuICBuZWdhdGl2ZUJ0bkJvcmRlcixcbiAgbmVnYXRpdmVCdG5Db2xvcixcbiAgbmVnYXRpdmVCdG5BY3RDb2xvcixcblxuICBsaW5rQnRuQmdkLFxuICBsaW5rQnRuQWN0QmdkLFxuICBsaW5rQnRuQ29sb3IsXG4gIGxpbmtCdG5BY3RDb2xvcixcbiAgbGlua0J0bkFjdEJnZEhvdmVyLFxuICBsaW5rQnRuQm9yZGVyLFxuXG4gIGZsb2F0aW5nQnRuQmdkLFxuICBmbG9hdGluZ0J0bkFjdEJnZCxcbiAgZmxvYXRpbmdCdG5CZ2RIb3ZlcixcbiAgZmxvYXRpbmdCdG5Cb3JkZXIsXG4gIGZsb2F0aW5nQnRuQm9yZGVySG92ZXIsXG4gIGZsb2F0aW5nQnRuQ29sb3IsXG4gIGZsb2F0aW5nQnRuQWN0Q29sb3IsXG5cbiAgY3RhQnRuQmdkLFxuICBjdGFCdG5CZ2RIb3ZlcixcbiAgY3RhQnRuQWN0QmdkLFxuICBjdGFCdG5Db2xvcixcbiAgY3RhQnRuQWN0Q29sb3IsXG5cbiAgc2VsZWN0aW9uQnRuQmdkLFxuICBzZWxlY3Rpb25CdG5BY3RCZ2QsXG4gIHNlbGVjdGlvbkJ0bkNvbG9yLFxuICBzZWxlY3Rpb25CdG5BY3RDb2xvcixcbiAgc2VsZWN0aW9uQnRuQmdkSG92ZXIsXG4gIHNlbGVjdGlvbkJ0bkJvcmRlcixcbiAgc2VsZWN0aW9uQnRuQm9yZGVyQ29sb3IsXG4gIHNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yLFxuXG4gIC8vIE1vZGFsXG4gIG1vZGFsVGl0bGVDb2xvcixcbiAgbW9kYWxUaXRsZUZvbnRTaXplLFxuICBtb2RhbFRpdGxlRm9udFNpemVTbWFsbGVyLFxuICBtb2RhbEZvb3RlckJnZCxcbiAgbW9kYWxJbWFnZVBsYWNlSG9sZGVyLFxuICBtb2RhbFBhZGRpbmcsXG5cbiAgbW9kYWxEaWFsb2dCZ2QsXG4gIG1vZGFsRGlhbG9nQ29sb3IsXG5cbiAgbW9kYWxMYXRlcmFsUGFkZGluZyxcbiAgbW9kYWxQb3J0YWJsZUxhdGVyYWxQYWRkaW5nLFxuICBtb2RhbE92ZXJMYXlaLFxuICBtb2RhbE92ZXJsYXlCZ2QsXG4gIG1vZGFsQ29udGVudFosXG4gIG1vZGFsRm9vdGVyWixcbiAgbW9kYWxUaXRsZVosXG4gIG1vZGFsQnV0dG9uWixcbiAgbW9kYWxEcm9wZG93bkJhY2tncm91bmQsXG5cbiAgLy8gU2lkZSBQYW5lbFxuICBzaWRlUGFuZWxCZyxcbiAgc2lkZVBhbmVsSW5uZXJQYWRkaW5nLFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2QsXG4gIHNpZGVCYXJDbG9zZUJ0bkNvbG9yLFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2RIb3ZlcixcbiAgc2lkZVBhbmVsSGVhZGVyQmcsXG4gIHNpZGVQYW5lbEhlYWRlckJvcmRlcixcbiAgc2lkZVBhbmVsU2Nyb2xsQmFyV2lkdGgsXG4gIHNpZGVQYW5lbFNjcm9sbEJhckhlaWdodCxcbiAgc2lkZVBhbmVsVGl0bGVGb250c2l6ZSxcbiAgc2lkZVBhbmVsVGl0bGVMaW5lSGVpZ2h0LFxuICBwYW5lbEhlYWRlckJvcmRlclJhZGl1cyxcbiAgc2lkZVBhbmVsQm9yZGVyLFxuICBzaWRlUGFuZWxCb3JkZXJDb2xvcixcblxuICBsYXllckNvbmZpZ0dyb3VwTGFiZWxMYWJlbEZvbnRTaXplLFxuICBsYXllckNvbmZpZ0dyb3VwTWFyZ2luQm90dG9tLFxuICBsYXllckNvbmZpZ0dyb3VwUGFkZGluZ0xlZnQsXG5cbiAgLy8gU2lkZSBQYW5lbCBQYW5lbFxuICBjaGlja2xldEJnZCxcbiAgY2hpY2tsZXRCZ2RMVCxcbiAgcGFuZWxCYWNrZ3JvdW5kLFxuICBwYW5lbENvbnRlbnRCYWNrZ3JvdW5kLFxuICBwYW5lbEJhY2tncm91bmRIb3ZlcixcbiAgcGFuZWxCYWNrZ3JvdW5kTFQsXG4gIHBhbmVsVG9nZ2xlTWFyZ2luUmlnaHQsXG4gIHBhbmVsVG9nZ2xlQm90dG9tUGFkZGluZyxcbiAgcGFuZWxCb3hTaGFkb3csXG4gIHBhbmVsQm9yZGVyUmFkaXVzLFxuICBwYW5lbEJvcmRlcixcbiAgcGFuZWxCb3JkZXJDb2xvcixcbiAgcGFuZWxCb3JkZXJMVCxcbiAgcGFuZWxIZWFkZXJJY29uLFxuICBwYW5lbEhlYWRlckljb25BY3RpdmUsXG4gIHBhbmVsSGVhZGVySWNvbkhvdmVyLFxuICBwYW5lbEhlYWRlckhlaWdodCxcbiAgbGF5ZXJQYW5lbEhlYWRlckhlaWdodCxcbiAgcGFuZWxEcm9wZG93blNjcm9sbEJhcixcblxuICBsYXllclR5cGVJY29uU2l6ZUwsXG4gIGxheWVyVHlwZUljb25QZEwsXG4gIGxheWVyVHlwZUljb25TaXplU00sXG5cbiAgLy8gVGV4dFxuICBmb250RmFtaWx5LFxuICBmb250V2VpZ2h0LFxuICBmb250U2l6ZSxcbiAgbGluZUhlaWdodCxcbiAgdGV4dENvbG9yLFxuICB0ZXh0Q29sb3JMVCxcbiAgZGF0YVRhYmxlVGV4dENvbG9yLFxuICB0ZXh0Q29sb3JIbCxcbiAgdGl0bGVUZXh0Q29sb3IsXG4gIHN1YnRleHRDb2xvcixcbiAgc3VidGV4dENvbG9yTFQsXG4gIHN1YnRleHRDb2xvckFjdGl2ZSxcbiAgcGFuZWxUb2dnbGVCb3JkZXJDb2xvcixcbiAgcGFuZWxUYWJXaWR0aCxcbiAgdGV4dFRydW5jYXRlLFxuICB0aXRsZUNvbG9yTFQsXG4gIHRvb2x0aXBCZyxcbiAgdG9vbHRpcENvbG9yLFxuICB0b29sdGlwQm94U2hhZG93LFxuICB0b29sdGlwRm9udFNpemUsXG4gIGxvZ29Db2xvcixcblxuICAvLyBTaWRlcGFuZWwgZGl2aWRlclxuICBzaWRlcGFuZWxEaXZpZGVyQm9yZGVyLFxuICBzaWRlcGFuZWxEaXZpZGVyTWFyZ2luLFxuICBzaWRlcGFuZWxEaXZpZGVySGVpZ2h0LFxuXG4gIC8vIEJvdHRvbSBQYW5lbFxuICBib3R0b21Jbm5lclBkU2lkZSxcbiAgYm90dG9tSW5uZXJQZFZlcnQsXG4gIGJvdHRvbVBhbmVsR2FwLFxuICBib3R0b21XaWRnZXRQYWRkaW5nVG9wLFxuICBib3R0b21XaWRnZXRQYWRkaW5nUmlnaHQsXG4gIGJvdHRvbVdpZGdldFBhZGRpbmdCb3R0b20sXG4gIGJvdHRvbVdpZGdldFBhZGRpbmdMZWZ0LFxuICBib3R0b21XaWRnZXRCZ2QsXG5cbiAgLy8gU2xpZGVyXG4gIHNsaWRlckJhckNvbG9yLFxuICBzbGlkZXJCYXJCZ2QsXG4gIHNsaWRlckJhckhvdmVyQ29sb3IsXG4gIHNsaWRlckJhclJhZGl1cyxcbiAgc2xpZGVyQmFySGVpZ2h0LFxuICBzbGlkZXJIYW5kbGVIZWlnaHQsXG4gIHNsaWRlckhhbmRsZVdpZHRoLFxuICBzbGlkZXJIYW5kbGVDb2xvcixcbiAgc2xpZGVySGFuZGxlVGV4dENvbG9yLFxuICBzbGlkZXJJbmFjdGl2ZUJvcmRlckNvbG9yLFxuICBzbGlkZXJCb3JkZXJSYWRpdXMsXG4gIHNsaWRlckhhbmRsZUhvdmVyQ29sb3IsXG4gIHNsaWRlckhhbmRsZUFmdGVyQ29udGVudCxcbiAgc2xpZGVySGFuZGxlU2hhZG93LFxuICBzbGlkZXJJbnB1dEhlaWdodCxcbiAgc2xpZGVySW5wdXRXaWR0aCxcbiAgc2xpZGVyTWFyZ2luVG9wSXNUaW1lLFxuICBzbGlkZXJNYXJnaW5Ub3AsXG4gIHNsaWRlck1hcmdpbkJvdHRvbSxcblxuICAvLyBHZW9jb2RlclxuICBnZW9jb2RlcldpZHRoLFxuICBnZW9jb2RlclRvcCxcbiAgZ2VvY29kZXJSaWdodCxcbiAgZ2VvY29kZXJJbnB1dEhlaWdodCxcblxuICAvLyBQbG90XG4gIHJhbmdlQnJ1c2hCZ2QsXG4gIGhpc3RvZ3JhbUZpbGxJblJhbmdlLFxuICBoaXN0b2dyYW1GaWxsT3V0UmFuZ2UsXG4gIGF4aXNGb250U2l6ZSxcbiAgYXhpc0ZvbnRDb2xvcixcbiAgdGltZVRpdGxlRm9udFNpemUsXG4gIHJhbmdlUGxvdE1hcmdpbixcbiAgcmFuZ2VQbG90TWFyZ2luTGFyZ2UsXG4gIHJhbmdlUGxvdEgsXG4gIHJhbmdlUGxvdEhMYXJnZSxcbiAgcmFuZ2VQbG90Q29udGFpbmVySCxcbiAgcmFuZ2VQbG90Q29udGFpbmVySExhcmdlLFxuXG4gIC8vIE5vdGlmaWNhdGlvbnNcbiAgbm90aWZpY2F0aW9uQ29sb3JzLFxuICBub3RpZmljYXRpb25QYW5lbFdpZHRoLFxuICBub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCxcbiAgbm90aWZpY2F0aW9uUGFuZWxJdGVtSGVpZ2h0LFxuXG4gIC8vIERhdGEgVGFibGVcbiAgaGVhZGVyUm93SGVpZ2h0LFxuICByb3dIZWlnaHQsXG4gIGhlYWRlclBhZGRpbmdUb3AsXG4gIGhlYWRlclBhZGRpbmdCb3R0b20sXG4gIGNlbGxQYWRkaW5nU2lkZSxcbiAgZWRnZUNlbGxQYWRkaW5nU2lkZSxcbiAgY2VsbEZvbnRTaXplLFxuICBncmlkUGFkZGluZ1NpZGUsXG4gIG9wdGlvbkJ1dHRvbkNvbG9yLFxuICBoZWFkZXJDZWxsQmFja2dyb3VuZCxcbiAgaGVhZGVyQ2VsbEJvcmRlckNvbG9yLFxuICBoZWFkZXJDZWxsSWNvbkNvbG9yLFxuICBjZWxsQm9yZGVyQ29sb3IsXG4gIGV2ZW5Sb3dCYWNrZ3JvdW5kLFxuICBvZGRSb3dCYWNrZ3JvdW5kLFxuICBwaW5uZWRHcmlkQm9yZGVyQ29sb3IsXG4gIC8vIHRpbWUgZGlzcGxheVxuICB0aW1lRGlzcGxheUJvcmRlclJhZGl1cyxcbiAgdGltZURpc3BsYXlIZWlnaHQsXG4gIHRpbWVEaXNwbGF5TWluV2lkdGgsXG4gIHRpbWVEaXNwbGF5T3BhY2l0eSxcbiAgdGltZURpc3BsYXlQYWRkaW5nLFxuXG4gIC8vIGV4cG9ydCBtYXBcbiAgZXhwb3J0SW50cmFTZWN0aW9uTWFyZ2luLFxuXG4gIC8vIEFjdGlvbiBQYW5lbFxuICBhY3Rpb25QYW5lbFdpZHRoLFxuICBhY3Rpb25QYW5lbEhlaWdodCxcblxuICAvLyBCcmVha3BvaW50c1xuICBicmVha1BvaW50cyxcblxuICAvLyBwcm9ncmVzc2JhclxuICBwcm9ncmVzc0JhckNvbG9yLFxuICBwcm9ncmVzc0JhclRyYWNrQ29sb3IsXG5cbiAgLy8gbGF5ZXJDb25maWdHcm91cExhYmVsXG4gIGxheWVyQ29uZmlnR3JvdXBMYWJlbEJvcmRlckxlZnQsXG4gIGxheWVyQ29uZmlnR3JvdXBMYWJlbE1hcmdpbixcbiAgbGF5ZXJDb25maWdHcm91cExhYmVsUGFkZGluZyxcbiAgbGF5ZXJDb25maWdHcm91cENvbG9yLFxuXG4gIC8vIGxheWVyQ29uZmlnR3JvdXBMYWJlbCBsYWJlbFxuICBsYXllckNvbmZpZ0dyb3VwTGFiZWxMYWJlbE1hcmdpbixcblxuICAvLyBTdHlsZWRDb25maWdHcm91cEhlYWRlclxuICBzdHlsZWRDb25maWdHcm91cEhlYWRlckJvcmRlcixcblxuICAvLyBsYXllckNvbmZpZ3VyYXRvclxuICBsYXllckNvbmZpZ3VyYXRvckJvcmRlcixcbiAgbGF5ZXJDb25maWd1cmF0b3JCb3JkZXJDb2xvcixcbiAgbGF5ZXJDb25maWd1cmF0b3JNYXJnaW4sXG4gIGxheWVyQ29uZmlndXJhdG9yUGFkZGluZyxcblxuICAvLyBTdHlsZWQgdG9rZW5cbiAgZmllbGRUb2tlblJpZ2h0TWFyZ2luXG59O1xuXG5leHBvcnQgY29uc3QgdGhlbWVMVCA9IHtcbiAgLi4udGhlbWUsXG4gIC8vIHRlbXBsYXRlXG4gIGFjdGl2ZUNvbG9yOiBhY3RpdmVDb2xvckxULFxuICBpbnB1dDogaW5wdXRMVCxcbiAgdGV4dENvbG9yOiB0ZXh0Q29sb3JMVCxcbiAgc2lkZVBhbmVsQmc6ICcjRkZGRkZGJyxcbiAgc2VsZWN0Q29sb3I6IHNlbGVjdENvbG9yTFQsXG4gIHRpdGxlVGV4dENvbG9yOiAnIzAwMDAwMCcsXG4gIHNpZGVQYW5lbEhlYWRlckJnOiAnI0Y3RjdGNycsXG4gIHN1YnRleHRDb2xvckFjdGl2ZTogYWN0aXZlQ29sb3JMVCxcbiAgdG9vbHRpcEJnOiAnIzE4NjlCNScsXG4gIHRvb2x0aXBDb2xvcjogJyNGRkZGRkYnLFxuICBkcm9wZG93bkxpc3RCZ2Q6ICcjRkZGRkZGJyxcbiAgdG9vbGJhckl0ZW1CZ2RIb3ZlcjogJyNGN0Y3RjcnLFxuICB0ZXh0Q29sb3JIbDogYWN0aXZlQ29sb3JMVCxcblxuICBpbnB1dEJnZDogJyNGN0Y3RjcnLFxuICBpbnB1dEJnZEhvdmVyOiAnI0ZGRkZGRicsXG4gIGlucHV0QmdkQWN0aXZlOiAnI0ZGRkZGRicsXG4gIGlucHV0QmdkQWN0aXZlTFQ6ICcjRkZGRkZGJyxcbiAgZHJvcGRvd25MaXN0SGlnaGxpZ2h0Qmc6ICcjRjBGMEYwJyxcbiAgdG9vbGJhckl0ZW1JY29uSG92ZXI6IGFjdGl2ZUNvbG9yTFQsXG4gIHBhbmVsQmFja2dyb3VuZDogJyNGN0Y3RjcnLFxuICBwYW5lbENvbnRlbnRCYWNrZ3JvdW5kOiAnI0Y3RjdGNycsXG4gIGJvdHRvbVdpZGdldEJnZDogJyNGN0Y3RjcnLFxuICBwYW5lbEJhY2tncm91bmRIb3ZlcjogJyNGN0Y3RjcnLFxuICBwYW5lbEJvcmRlckNvbG9yOiAnI0QzRDhFMCcsXG4gIHBhbmVsSGVhZGVySWNvbkFjdGl2ZTogJyMwMDAwMDAnLFxuICBwYW5lbEhlYWRlckljb25Ib3ZlcjogJyMwMDAwMDAnLFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2Q6ICcjRjdGN0Y3JyxcbiAgc2lkZUJhckNsb3NlQnRuQ29sb3I6IHRleHRDb2xvckxULFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2RIb3ZlcjogJyNGN0Y3RjcnLFxuXG4gIHNlY29uZGFyeUlucHV0QmdkOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeUlucHV0QmdkQWN0aXZlOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeUlucHV0QmdkSG92ZXI6ICcjRkZGRkZGJyxcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcjogJyMwMDAwMDAnLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yOiAnbm9uZScsXG4gIHNlY29uZGFyeUlucHV0Q29sb3I6ICcjNTQ1NDU0JyxcblxuICBjaGlja2xldEJnZDogJyNGN0Y3RjcnLFxuICBtYXBQYW5lbEJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxuICBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvcjogJyNGN0Y3RjcnLFxuXG4gIHNsaWRlckJhckNvbG9yOiAnI0EwQTdCNCcsXG4gIHNsaWRlckJhckJnZDogJyNEM0Q4RTAnLFxuICBzbGlkZXJIYW5kbGVDb2xvcjogJyNGN0Y3RjcnLFxuICBzbGlkZXJJbmFjdGl2ZUJvcmRlckNvbG9yOiAnI0Y3RjdGNycsXG4gIHNsaWRlckhhbmRsZVRleHRDb2xvcjogJyNGN0Y3RjcnLFxuICBzbGlkZXJIYW5kbGVIb3ZlckNvbG9yOiAnI0Y3RjdGNycsXG5cbiAgc3VidGV4dENvbG9yOiBzdWJ0ZXh0Q29sb3JMVCxcbiAgc3dpdGNoQnRuQmdkOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeVN3aXRjaEJ0bkJnZDogJyNGN0Y3RjcnLFxuICBzZWNvbmRhcnlTd2l0Y2hUcmFja0JnZDogJyNEM0Q4RTAnLFxuICBzd2l0Y2hCdG5CZ2RBY3RpdmU6ICcjRjdGN0Y3JyxcbiAgc3dpdGNoVHJhY2tCZ2Q6ICcjRDNEOEUwJyxcbiAgc3dpdGNoVHJhY2tCZ2RBY3RpdmU6IGFjdGl2ZUNvbG9yTFQsXG5cbiAgLy8gYnV0dG9uIHN3aXRjaCBiYWNrZ3JvdW5kIGFuZCBob3ZlciBjb2xvclxuICBwcmltYXJ5QnRuQmdkOiBwcmltYXJ5QnRuQWN0QmdkLFxuICBwcmltYXJ5QnRuQWN0QmdkOiBwcmltYXJ5QnRuQmdkLFxuICBwcmltYXJ5QnRuQmdkSG92ZXI6IHByaW1hcnlCdG5CZ2QsXG5cbiAgc2Vjb25kYXJ5QnRuQmdkOiBzZWNvbmRhcnlCdG5BY3RCZ2QsXG4gIHNlY29uZGFyeUJ0bkFjdEJnZDogc2Vjb25kYXJ5QnRuQmdkLFxuICBzZWNvbmRhcnlCdG5CZ2RIb3Zlcjogc2Vjb25kYXJ5QnRuQmdkLFxuXG4gIGZsb2F0aW5nQnRuQmdkOiAnI0Y3RjdGNycsXG4gIGZsb2F0aW5nQnRuQWN0QmdkOiAnI0Y3RjdGNycsXG4gIGZsb2F0aW5nQnRuQmdkSG92ZXI6ICcjRjdGN0Y3JyxcbiAgZmxvYXRpbmdCdG5Db2xvcjogc3VidGV4dENvbG9yLFxuICBmbG9hdGluZ0J0bkFjdENvbG9yOiBhY3RpdmVDb2xvckxULFxuXG4gIGxpbmtCdG5BY3RDb2xvcjogdGV4dENvbG9yTFQsXG5cbiAgcmFuZ2VCcnVzaEJnZDogJyNEM0Q4RTAnLFxuICBoaXN0b2dyYW1GaWxsSW5SYW5nZTogYWN0aXZlQ29sb3JMVCxcbiAgaGlzdG9ncmFtRmlsbE91dFJhbmdlOiAnI0EwQTdCNCcsXG4gIGF4aXNGb250Q29sb3I6IHRleHRDb2xvckxUXG59O1xuXG5leHBvcnQgY29uc3QgdGhlbWVCUyA9IHtcbiAgLi4udGhlbWUsXG4gIGFjdGl2ZUNvbG9yOiAnI0UyRTJFMicsXG4gIGRyb3Bkb3duTGlzdEJnZDogJyNGRkZGRkYnLFxuICB0b29sYmFySXRlbUJnZEhvdmVyOiAnI0Y3RjdGNycsXG4gIGRyb3Bkb3duTGlzdEJvcmRlclRvcDogJ25vbmUnLFxuICBkcm9wZG93bkxpc3RIaWdobGlnaHRCZzogJyNGNkY2RjYnLFxuICB0b29sYmFySXRlbUljb25Ib3ZlcjogJyMwMDAwMDAnLFxuICBpbnB1dEJnZDogJyNFMkUyRTInLFxuICBpbnB1dEJnZEFjdGl2ZTogJyNFMkUyRTInLFxuICBpbnB1dEJnZEhvdmVyOiAnaW5oZXJpdCcsXG4gIGlucHV0Qm9yZGVyQWN0aXZlQ29sb3I6ICcjMDAwMDAwJyxcbiAgaW5wdXRDb2xvcjogJyMwMDAwMDAnLFxuICBjaGlja2xldEJnZDogJyNFMkUyRTInLFxuICBwYW5lbEJhY2tncm91bmQ6ICcjRkZGRkZGJyxcbiAgcGFuZWxCYWNrZ3JvdW5kSG92ZXI6ICcjRUVFRUVFJyxcbiAgcGFuZWxDb250ZW50QmFja2dyb3VuZDogJyNGRkZGRkYnLFxuICBib3R0b21XaWRnZXRCZ2Q6ICcjRjdGN0Y3JyxcbiAgcGFuZWxIZWFkZXJJY29uQWN0aXZlOiAnIzAwMDAwMCcsXG4gIHBhbmVsSGVhZGVySWNvbkhvdmVyOiAnIzAwMDAwMCcsXG4gIHBhbmVsQm9yZGVyQ29sb3I6ICcjRTJFMkUyJyxcbiAgcHJpbWFyeUJ0bkJnZDogJyNFMkUyRTInLFxuICBwcmltYXJ5QnRuQmdkSG92ZXI6ICcjMzMzMzMzJyxcbiAgcHJpbWFyeUJ0bkNvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUJ0bkFjdEJnZDogJyNFRUVFRUUnLFxuICBzZWNvbmRhcnlCdG5BY3RDb2xvcjogJyMwMDAwMDAnLFxuICBzZWNvbmRhcnlCdG5CZ2Q6ICcjRTJFMkUyJyxcbiAgc2Vjb25kYXJ5QnRuQmdkSG92ZXI6ICcjQ0JDQkNCJyxcbiAgY3RuQnRuQmdkOiAnI0UyRTJFMicsXG4gIGN0bkJ0bkJnZEhvdmVyOiAnMzMzMzMzJyxcbiAgY3RuQnRuQ29sb3I6ICcjMDAwMDAwJyxcbiAgY3RuQnRuQWN0Q29sb3I6ICcjMDAwMDAwJyxcblxuICBzaWRlQmFyQ2xvc2VCdG5CZ2Q6ICcjRTJFMkUyJyxcbiAgc2lkZUJhckNsb3NlQnRuQ29sb3I6ICcjMDAwMDAwJyxcbiAgc2lkZUJhckNsb3NlQnRuQmdkSG92ZXI6ICcjRkZGRkZGJyxcblxuICBmbG9hdGluZ0J0bkJnZDogJyNGRkZGRkYnLFxuICBmbG9hdGluZ0J0bkFjdEJnZDogJyNFRUVFRUUnLFxuICBmbG9hdGluZ0J0bkJnZEhvdmVyOiAnI0VFRUVFRScsXG4gIGZsb2F0aW5nQnRuQ29sb3I6ICcjNzU3NTc1JyxcbiAgZmxvYXRpbmdCdG5BY3RDb2xvcjogJyMwMDAwMDAnLFxuXG4gIHNlY29uZGFyeUJ0bkNvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUlucHV0QmdkOiAnI0Y2RjZGNicsXG4gIHNlY29uZGFyeUlucHV0QmdkQWN0aXZlOiAnI0Y2RjZGNicsXG4gIHNlY29uZGFyeUlucHV0QmdkSG92ZXI6ICcjRjZGNkY2JyxcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcjogJyMwMDAwMDAnLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yOiAnbm9uZScsXG4gIHNlY29uZGFyeUlucHV0Q29sb3I6ICcjNTQ1NDU0JyxcbiAgc2lkZVBhbmVsQmc6ICcjRjZGNkY2JyxcbiAgc2lkZVBhbmVsSGVhZGVyQmc6ICcjRkZGRkZGJyxcbiAgc3VidGV4dENvbG9yOiAnI0FGQUZBRicsXG4gIHBhbmVsVGFiQ29sb3I6ICcjQUZBRkFGJyxcbiAgc3VidGV4dENvbG9yQWN0aXZlOiAnIzAwMDAwMCcsXG4gIHRleHRDb2xvcjogJyMwMDAwMDAnLFxuICB0ZXh0Q29sb3JIbDogJyM1NDU0NTQnLFxuICBtYXBQYW5lbEJhY2tncm91bmRDb2xvcjogJyNGNkY2RjYnLFxuICBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxuICB0aXRsZVRleHRDb2xvcjogJyMwMDAwMDAnLFxuICBzd2l0Y2hCdG5CZ2RBY3RpdmU6ICcjMDAwMDAwJyxcbiAgc3dpdGNoQnRuQmdkOiAnI0ZGRkZGRicsXG4gIHN3aXRjaFRyYWNrQmdkQWN0aXZlOiAnI0UyRTJFMicsXG4gIHNlY29uZGFyeVN3aXRjaFRyYWNrQmdkOiAnI0UyRTJFMicsXG4gIHN3aXRjaFRyYWNrQmdkOiAnI0UyRTJFMicsXG4gIHNlY29uZGFyeVN3aXRjaEJ0bkJnZDogJyNGRkZGRkYnLFxuICBoaXN0b2dyYW1GaWxsSW5SYW5nZTogJyMwMDAwMDAnLFxuICBoaXN0b2dyYW1GaWxsT3V0UmFuZ2U6ICcjRTJFMkUyJyxcbiAgcmFuZ2VCcnVzaEJnZDogJyNFMkUyRTInLFxuICBzbGlkZXJCYXJCZ2Q6ICcjRTJFMkUyJyxcbiAgc2xpZGVySGFuZGxlQ29sb3I6ICcjRkZGRkZGJyxcbiAgc2xpZGVySW5hY3RpdmVCb3JkZXJDb2xvcjogJyNGRkZGRkYnLFxuICBzbGlkZXJIYW5kbGVUZXh0Q29sb3I6ICcjRkZGRkZGJyxcbiAgc2xpZGVyQmFyQ29sb3I6ICcjMDAwMDAwJ1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBb0JBLElBQUFBLGlCQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxnQkFBQSxHQUFBRCxPQUFBO0FBQXNELElBQUFFLGVBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFBQUMsaUJBQUEsRUFyQnREO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUEsU0FBQUMs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
1301
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3R5bGVkQ29tcG9uZW50cyIsInJlcXVpcmUiLCJfZGVmYXVsdFNldHRpbmdzIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX3RlbXBsYXRlT2JqZWN0NSIsIl90ZW1wbGF0ZU9iamVjdDYiLCJfdGVtcGxhdGVPYmplY3Q3IiwiX3RlbXBsYXRlT2JqZWN0OCIsIl90ZW1wbGF0ZU9iamVjdDkiLCJfdGVtcGxhdGVPYmplY3QxMCIsIl90ZW1wbGF0ZU9iamVjdDExIiwiX3RlbXBsYXRlT2JqZWN0MTIiLCJfdGVtcGxhdGVPYmplY3QxMyIsIl90ZW1wbGF0ZU9iamVjdDE0IiwiX3RlbXBsYXRlT2JqZWN0MTUiLCJfdGVtcGxhdGVPYmplY3QxNiIsIl90ZW1wbGF0ZU9iamVjdDE3IiwiX3RlbXBsYXRlT2JqZWN0MTgiLCJfdGVtcGxhdGVPYmplY3QxOSIsIl90ZW1wbGF0ZU9iamVjdDIwIiwiX3RlbXBsYXRlT2JqZWN0MjEiLCJfdGVtcGxhdGVPYmplY3QyMiIsIl90ZW1wbGF0ZU9iamVjdDIzIiwiX3RlbXBsYXRlT2JqZWN0MjQiLCJfdGVtcGxhdGVPYmplY3QyNSIsIl90ZW1wbGF0ZU9iamVjdDI2IiwiX3RlbXBsYXRlT2JqZWN0MjciLCJfdGVtcGxhdGVPYmplY3QyOCIsIl90ZW1wbGF0ZU9iamVjdDI5IiwiX3RlbXBsYXRlT2JqZWN0MzAiLCJfdGVtcGxhdGVPYmplY3QzMSIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwidHJhbnNpdGlvbiIsImV4cG9ydHMiLCJ0cmFuc2l0aW9uRmFzdCIsInRyYW5zaXRpb25TbG93IiwiYm94U2hhZG93IiwiYm94U2l6aW5nIiwiYm9yZGVyUmFkaXVzIiwiYm9yZGVyQ29sb3IiLCJib3JkZXJDb2xvckxUIiwiZm9udEZhbWlseSIsImZvbnRXZWlnaHQiLCJmb250U2l6ZSIsImxpbmVIZWlnaHQiLCJsYWJlbENvbG9yIiwibGFiZWxIb3ZlckNvbG9yIiwibGFiZWxDb2xvckxUIiwidGV4dENvbG9yIiwidGV4dENvbG9yTFQiLCJkYXRhVGFibGVUZXh0Q29sb3IiLCJ0aXRsZUNvbG9yTFQiLCJzdWJ0ZXh0Q29sb3IiLCJzdWJ0ZXh0Q29sb3JMVCIsInN1YnRleHRDb2xvckFjdGl2ZSIsInBhbmVsVG9nZ2xlQm9yZGVyQ29sb3IiLCJwYW5lbFRhYldpZHRoIiwidGl0bGVUZXh0Q29sb3IiLCJ0ZXh0Q29sb3JIbCIsInRleHRDb2xvckhsTFQiLCJhY3RpdmVDb2xvciIsImFjdGl2ZUNvbG9yTFQiLCJhY3RpdmVDb2xvckhvdmVyIiwiZXJyb3JDb2xvciIsImxvZ29Db2xvciIsImJ0bkZvbnRGYW1pbHkiLCJwcmltYXJ5QnRuQmdkIiwicHJpbWFyeUJ0bkFjdEJnZCIsInByaW1hcnlCdG5Db2xvciIsInByaW1hcnlCdG5BY3RDb2xvciIsInByaW1hcnlCdG5CZ2RIb3ZlciIsInByaW1hcnlCdG5SYWRpdXMiLCJwcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0IiwicHJpbWFyeUJ0bkZvbnRTaXplU21hbGwiLCJwcmltYXJ5QnRuRm9udFNpemVMYXJnZSIsInByaW1hcnlCdG5Cb3JkZXIiLCJzZWNvbmRhcnlCdG5CZ2QiLCJzZWNvbmRhcnlCdG5BY3RCZ2QiLCJzZWNvbmRhcnlCdG5Db2xvciIsInNlY29uZGFyeUJ0bkFjdENvbG9yIiwic2Vjb25kYXJ5QnRuQmdkSG92ZXIiLCJzZWNvbmRhcnlCdG5Cb3JkZXIiLCJjdGFCdG5CZ2QiLCJjdGFCdG5CZ2RIb3ZlciIsImN0YUJ0bkFjdEJnZCIsImN0YUJ0bkNvbG9yIiwiY3RhQnRuQWN0Q29sb3IiLCJsaW5rQnRuQmdkIiwibGlua0J0bkFjdEJnZCIsImxpbmtCdG5Db2xvciIsImxpbmtCdG5BY3RDb2xvciIsImxpbmtCdG5BY3RCZ2RIb3ZlciIsImxpbmtCdG5Cb3JkZXIiLCJuZWdhdGl2ZUJ0bkJnZCIsIm5lZ2F0aXZlQnRuQWN0QmdkIiwibmVnYXRpdmVCdG5CZ2RIb3ZlciIsIm5lZ2F0aXZlQnRuQm9yZGVyIiwibmVnYXRpdmVCdG5Db2xvciIsIm5lZ2F0aXZlQnRuQWN0Q29sb3IiLCJmbG9hdGluZ0J0bkJnZCIsImZsb2F0aW5nQnRuQWN0QmdkIiwiZmxvYXRpbmdCdG5CZ2RIb3ZlciIsImZsb2F0aW5nQnRuQm9yZGVyIiwiZmxvYXRpbmdCdG5Cb3JkZXJIb3ZlciIsImZsb2F0aW5nQnRuQ29sb3IiLCJmbG9hdGluZ0J0bkFjdENvbG9yIiwic2VsZWN0aW9uQnRuQmdkIiwic2VsZWN0aW9uQnRuQWN0QmdkIiwic2VsZWN0aW9uQnRuQ29sb3IiLCJzZWxlY3Rpb25CdG5BY3RDb2xvciIsInNlbGVjdGlvbkJ0bkJnZEhvdmVyIiwic2VsZWN0aW9uQnRuQm9yZGVyIiwic2VsZWN0aW9uQnRuQm9yZGVyQ29sb3IiLCJzZWxlY3Rpb25CdG5Cb3JkZXJBY3RDb2xvciIsImlucHV0Qm94SGVpZ2h0IiwiaW5wdXRCb3hIZWlnaHRTbWFsbCIsImlucHV0Qm94SGVpZ2h0VGlueSIsImlucHV0UGFkZGluZyIsImlucHV0UGFkZGluZ1NtYWxsIiwiaW5wdXRQYWRkaW5nVGlueSIsImlucHV0Rm9udFNpemUiLCJpbnB1dEZvbnRTaXplU21hbGwiLCJpbnB1dEZvbnRXZWlnaHQiLCJpbnB1dEJnZCIsImlucHV0QmdkSG92ZXIiLCJpbnB1dEJnZEFjdGl2ZSIsImlucHV0QmdkQWN0aXZlTFQiLCJpbnB1dEJvcmRlckNvbG9yIiwiaW5wdXRCb3JkZXJIb3ZlckNvbG9yIiwiaW5wdXRCb3JkZXJIb3ZlckNvbG9yTFQiLCJpbnB1dEJvcmRlckFjdGl2ZUNvbG9yIiwiaW5wdXRCb3JkZXJBY3RpdmVDb2xvckxUIiwiaW5wdXRDb2xvciIsImlucHV0Qm9yZGVyUmFkaXVzIiwiaW5wdXRQbGFjZWhvbGRlckNvbG9yIiwiaW5wdXRQbGFjZWhvbGRlckNvbG9yTFQiLCJpbnB1dFBsYWNlaG9sZGVyRm9udFdlaWdodCIsImlucHV0Qm94U2hhZG93IiwiaW5wdXRCb3hTaGFkb3dBY3RpdmUiLCJpbnB1dEJveFNoYWRvd0FjdGl2ZUxUIiwic2Vjb25kYXJ5SW5wdXRCZ2QiLCJzZWNvbmRhcnlJbnB1dEJnZEhvdmVyIiwic2Vjb25kYXJ5SW5wdXRCZ2RBY3RpdmUiLCJzZWNvbmRhcnlJbnB1dENvbG9yIiwic2Vjb25kYXJ5SW5wdXRCb3JkZXJDb2xvciIsInNlY29uZGFyeUlucHV0Qm9yZGVyQWN0aXZlQ29sb3IiLCJkcm9wZG93blNlbGVjdEhlaWdodCIsInNlbGVjdENvbG9yIiwic2VsZWN0Q29sb3JMVCIsInNlbGVjdEFjdGl2ZUJvcmRlckNvbG9yIiwic2VsZWN0Rm9udFNpemUiLCJzZWxlY3RGb250V2VpZ2h0Iiwic2VsZWN0Rm9udFdlaWdodEJvbGQiLCJzZWxlY3RDb2xvclBsYWNlSG9sZGVyIiwic2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUIiwic2VsZWN0QmFja2dyb3VuZCIsInNlbGVjdEJhY2tncm91bmRIb3ZlciIsInNlbGVjdEJhY2tncm91bmRMVCIsInNlbGVjdEJhY2tncm91bmRIb3ZlckxUIiwic2VsZWN0Qm9yZGVyQ29sb3IiLCJzZWxlY3RCb3JkZXJDb2xvckxUIiwic2VsZWN0Qm9yZGVyUmFkaXVzIiwic2VsZWN0Qm9yZGVyIiwicGFuZWxUYWJDb2xvciIsImRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnIiwiZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmdMVCIsImRyb3Bkb3duTGlzdFNoYWRvdyIsImRyb3Bkb3duTGlzdEJnZCIsInRvb2xiYXJJdGVtQmdkSG92ZXIiLCJ0b29sYmFySXRlbUljb25Ib3ZlciIsInRvb2xiYXJJdGVtQm9yZGVySG92ZXIiLCJ0b29sYmFySXRlbUJvcmRlclJhZGRpdXMiLCJkcm9wZG93bkxpc3RCZ2RMVCIsImRyb3Bkb3duTGlzdEJvcmRlclRvcCIsImRyb3Bkb3duTGlzdEJvcmRlclRvcExUIiwiZHJvcGRvd25MaXN0TGluZUhlaWdodCIsImRyb3Bkb3duV3JhcHBlcloiLCJkcm9wZG93bldhcHBlck1hcmdpbiIsInN3aXRjaFdpZHRoIiwic3dpdGNoSGVpZ2h0Iiwic3dpdGNoTGFiZWxNYXJnaW4iLCJzd2l0Y2hUcmFja0JnZCIsInN3aXRjaFRyYWNrQmdkQWN0aXZlIiwic3dpdGNoVHJhY2tCb3JkZXJSYWRpdXMiLCJzd2l0Y2hCdG5CZ2QiLCJzd2l0Y2hCdG5CZ2RBY3RpdmUiLCJzd2l0Y2hCdG5Cb3hTaGFkb3ciLCJzd2l0Y2hCdG5Cb3JkZXJSYWRpdXMiLCJzd2l0Y2hCdG5XaWR0aCIsInN3aXRjaEJ0bkhlaWdodCIsInNlY29uZGFyeVN3aXRjaFRyYWNrQmdkIiwic2Vjb25kYXJ5U3dpdGNoQnRuQmdkIiwiY2hlY2tib3hXaWR0aCIsImNoZWNrYm94SGVpZ2h0IiwiY2hlY2tib3hNYXJnaW4iLCJjaGVja2JveEJvcmRlckNvbG9yIiwiY2hlY2tib3hCb3JkZXJSYWRpdXMiLCJjaGVja2JveEJvcmRlckNvbG9yTFQiLCJjaGVja2JveEJveEJnZCIsImNoZWNrYm94Qm94QmdkQ2hlY2tlZCIsInJhZGlvUmFkaXVzIiwicmFkaW9Cb3JkZXJSYWRpdXMiLCJyYWRpb0JvcmRlckNvbG9yIiwicmFkaW9CdXR0b25SYWRpdXMiLCJyYWRpb0J1dHRvbkJnZENvbG9yIiwic2lkZVBhbmVsSGVhZGVyQmciLCJzaWRlUGFuZWxIZWFkZXJCb3JkZXIiLCJsYXllckNvbmZpZ0dyb3VwTWFyZ2luQm90dG9tIiwibGF5ZXJDb25maWdHcm91cFBhZGRpbmdMZWZ0Iiwic2lkZVBhbmVsSW5uZXJQYWRkaW5nIiwic2lkZVBhbmVsQm9yZGVyIiwic2lkZVBhbmVsQm9yZGVyQ29sb3IiLCJzaWRlUGFuZWxCZyIsInNpZGVQYW5lbFNjcm9sbEJhcldpZHRoIiwic2lkZVBhbmVsU2Nyb2xsQmFySGVpZ2h0Iiwic2lkZUJhckNsb3NlQnRuQmdkIiwic2lkZUJhckNsb3NlQnRuQ29sb3IiLCJzaWRlQmFyQ2xvc2VCdG5CZ2RIb3ZlciIsInNpZGVQYW5lbFRpdGxlRm9udHNpemUiLCJzaWRlUGFuZWxUaXRsZUxpbmVIZWlnaHQiLCJwYW5lbEJhY2tncm91bmQiLCJwYW5lbENvbnRlbnRCYWNrZ3JvdW5kIiwicGFuZWxCYWNrZ3JvdW5kSG92ZXIiLCJwYW5lbEhlYWRlckJvcmRlclJhZGl1cyIsImNoaWNrbGV0QmdkIiwiY2hpY2tsZXRCZ2RMVCIsInBhbmVsSGVhZGVySWNvbiIsInBhbmVsSGVhZGVySWNvbkFjdGl2ZSIsInBhbmVsSGVhZGVySWNvbkhvdmVyIiwicGFuZWxIZWFkZXJIZWlnaHQiLCJsYXllclBhbmVsSGVhZGVySGVpZ2h0IiwicGFuZWxCb3hTaGFkb3ciLCJwYW5lbEJvcmRlclJhZGl1cyIsInBhbmVsQmFja2dyb3VuZExUIiwicGFuZWxUb2dnbGVNYXJnaW5SaWdodCIsInBhbmVsVG9nZ2xlQm90dG9tUGFkZGluZyIsInBhbmVsQm9yZGVyQ29sb3IiLCJwYW5lbEJvcmRlciIsImNvbmNhdCIsInBhbmVsQm9yZGVyTFQiLCJtYXBQYW5lbEJhY2tncm91bmRDb2xvciIsIm1hcFBhbmVsSGVhZGVyQmFja2dyb3VuZENvbG9yIiwidG9vbHRpcEJnIiwidG9vbHRpcENvbG9yIiwidG9vbHRpcEJveFNoYWRvdyIsInRvb2x0aXBGb250U2l6ZSIsImxheWVyVHlwZUljb25TaXplTCIsImxheWVyVHlwZUljb25QZEwiLCJsYXllclR5cGVJY29uU2l6ZVNNIiwibGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yIiwibGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yQWN0aXZlIiwic2lkZXBhbmVsRGl2aWRlckJvcmRlciIsInNpZGVwYW5lbERpdmlkZXJNYXJnaW4iLCJzaWRlcGFuZWxEaXZpZGVySGVpZ2h0IiwiYm90dG9tSW5uZXJQZFNpZGUiLCJib3R0b21Jbm5lclBkVmVydCIsImJvdHRvbVBhbmVsR2FwIiwiYm90dG9tV2lkZ2V0UGFkZGluZ1RvcCIsImJvdHRvbVdpZGdldFBhZGRpbmdSaWdodCIsImJvdHRvbVdpZGdldFBhZGRpbmdCb3R0b20iLCJib3R0b21XaWRnZXRQYWRkaW5nTGVmdCIsImJvdHRvbVdpZGdldEJnZCIsIm1vZGFsVGl0bGVDb2xvciIsIm1vZGFsVGl0bGVGb250U2l6ZSIsIm1vZGFsVGl0bGVGb250U2l6ZVNtYWxsZXIiLCJtb2RhbEZvb3RlckJnZCIsIm1vZGFsSW1hZ2VQbGFjZUhvbGRlciIsIm1vZGFsUGFkZGluZyIsIm1vZGFsTGF0ZXJhbFBhZGRpbmciLCJtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmciLCJtb2RhbE92ZXJMYXlaIiwibW9kYWxPdmVybGF5QmdkIiwibW9kYWxDb250ZW50WiIsIm1vZGFsRm9vdGVyWiIsIm1vZGFsVGl0bGVaIiwibW9kYWxCdXR0b25aIiwibW9kYWxEcm9wZG93bkJhY2tncm91bmQiLCJtb2RhbERpYWxvZ0JnZCIsIm1vZGFsRGlhbG9nQ29sb3IiLCJzbGlkZXJCYXJDb2xvciIsInNsaWRlckJhckJnZCIsInNsaWRlckJhckhvdmVyQ29sb3IiLCJzbGlkZXJCYXJSYWRpdXMiLCJzbGlkZXJCYXJIZWlnaHQiLCJzbGlkZXJIYW5kbGVIZWlnaHQiLCJzbGlkZXJIYW5kbGVXaWR0aCIsInNsaWRlckhhbmRsZUNvbG9yIiwic2xpZGVySGFuZGxlVGV4dENvbG9yIiwic2xpZGVySW5hY3RpdmVCb3JkZXJDb2xvciIsInNsaWRlckJvcmRlclJhZGl1cyIsInNsaWRlckhhbmRsZUhvdmVyQ29sb3IiLCJzbGlkZXJIYW5kbGVBZnRlckNvbnRlbnQiLCJzbGlkZXJIYW5kbGVTaGFkb3ciLCJzbGlkZXJJbnB1dEhlaWdodCIsInNsaWRlcklucHV0V2lkdGgiLCJzbGlkZXJJbnB1dEZvbnRTaXplIiwic2xpZGVySW5wdXRQYWRkaW5nIiwic2xpZGVyTWFyZ2luVG9wSXNUaW1lIiwic2xpZGVyTWFyZ2luVG9wIiwic2xpZGVyTWFyZ2luQm90dG9tIiwiZ2VvY29kZXJXaWR0aCIsImdlb2NvZGVyVG9wIiwiZ2VvY29kZXJSaWdodCIsImdlb2NvZGVySW5wdXRIZWlnaHQiLCJyYW5nZUJydXNoQmdkIiwiaGlzdG9ncmFtRmlsbEluUmFuZ2UiLCJoaXN0b2dyYW1GaWxsT3V0UmFuZ2UiLCJheGlzRm9udFNpemUiLCJheGlzRm9udENvbG9yIiwidGltZVRpdGxlRm9udFNpemUiLCJyYW5nZVBsb3RNYXJnaW4iLCJ0b3AiLCJib3R0b20iLCJsZWZ0IiwicmlnaHQiLCJyYW5nZVBsb3RNYXJnaW5MYXJnZSIsInJhbmdlUGxvdEgiLCJyYW5nZVBsb3RDb250YWluZXJIIiwicmFuZ2VQbG90SExhcmdlIiwicmFuZ2VQbG90Q29udGFpbmVySExhcmdlIiwibm90aWZpY2F0aW9uQ29sb3JzIiwiaW5mbyIsImVycm9yIiwic3VjY2VzcyIsIndhcm5pbmciLCJub3RpZmljYXRpb25QYW5lbFdpZHRoIiwibm90aWZpY2F0aW9uUGFuZWxJdGVtV2lkdGgiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQiLCJoZWFkZXJSb3dIZWlnaHQiLCJyb3dIZWlnaHQiLCJoZWFkZXJQYWRkaW5nVG9wIiwiaGVhZGVyUGFkZGluZ0JvdHRvbSIsImNlbGxQYWRkaW5nU2lkZSIsImVkZ2VDZWxsUGFkZGluZ1NpZGUiLCJjZWxsRm9udFNpemUiLCJncmlkUGFkZGluZ1NpZGUiLCJoZWFkZXJDZWxsQmFja2dyb3VuZCIsImhlYWRlckNlbGxCb3JkZXJDb2xvciIsImhlYWRlckNlbGxJY29uQ29sb3IiLCJjZWxsQm9yZGVyQ29sb3IiLCJldmVuUm93QmFja2dyb3VuZCIsIm9kZFJvd0JhY2tncm91bmQiLCJvcHRpb25CdXR0b25Db2xvciIsInBpbm5lZEdyaWRCb3JkZXJDb2xvciIsInRpbWVEaXNwbGF5Qm9yZGVyUmFkaXVzIiwidGltZURpc3BsYXlIZWlnaHQiLCJ0aW1lRGlzcGxheU1pbldpZHRoIiwidGltZURpc3BsYXlPcGFjaXR5IiwidGltZURpc3BsYXlQYWRkaW5nIiwiZXhwb3J0SW50cmFTZWN0aW9uTWFyZ2luIiwicHJvZ3Jlc3NCYXJDb2xvciIsInByb2dyZXNzQmFyVHJhY2tDb2xvciIsImFjdGlvblBhbmVsV2lkdGgiLCJhY3Rpb25QYW5lbEhlaWdodCIsImZpZWxkVG9rZW5SaWdodE1hcmdpbiIsInRleHRUcnVuY2F0ZSIsIm1heFdpZHRoIiwib3ZlcmZsb3ciLCJ0ZXh0T3ZlcmZsb3ciLCJ3aGl0ZVNwYWNlIiwid29yZFdyYXAiLCJsYXllckNvbmZpZ0dyb3VwTGFiZWxCb3JkZXJMZWZ0IiwibGF5ZXJDb25maWdHcm91cExhYmVsTWFyZ2luIiwibGF5ZXJDb25maWdHcm91cExhYmVsUGFkZGluZyIsImxheWVyQ29uZmlnR3JvdXBDb2xvciIsImxheWVyQ29uZmlnR3JvdXBMYWJlbExhYmVsTWFyZ2luIiwibGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxGb250U2l6ZSIsInN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyQm9yZGVyIiwibGF5ZXJDb25maWd1cmF0b3JCb3JkZXIiLCJsYXllckNvbmZpZ3VyYXRvckJvcmRlckNvbG9yIiwibGF5ZXJDb25maWd1cmF0b3JNYXJnaW4iLCJsYXllckNvbmZpZ3VyYXRvclBhZGRpbmciLCJicmVha1BvaW50cyIsInBhbG0iLCJkZXNrIiwiaW5wdXQiLCJjc3MiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJhY3RpdmUiLCJpbmNsdWRlcyIsInNpemUiLCJkaXNhYmxlZCIsInR5cGUiLCJpbnB1dExUIiwic2Vjb25kYXJ5SW5wdXQiLCJjaGlja2xldGVkSW5wdXRDb250YWluZXIiLCJjaGlja2xldGVkSW5wdXQiLCJjaGlja2xldGVkSW5wdXRMVCIsInNlY29uZGFyeUNoaWNrbGV0ZWRJbnB1dCIsImlubGluZUlucHV0Iiwic3dpdGNoVHJhY2siLCJjaGVja2VkIiwic3dpdGNoQnV0dG9uIiwiaW5wdXRTd2l0Y2giLCJjaGVja2JveEJveCIsImNoZWNrYm94Q2hlY2siLCJpbnB1dENoZWNrYm94IiwiaW5wdXRSYWRpbyIsInNlY29uZGFyeVN3aXRjaCIsImRyb3Bkb3duU2Nyb2xsQmFyIiwiZHJvcGRvd25TY3JvbGxCYXJMVCIsImRyb3Bkb3duTGlzdEFuY2hvciIsImRyb3Bkb3duTGlzdEFuY2hvckxUIiwiZHJvcGRvd25MaXN0U2l6ZSIsImRyb3Bkb3duTGlzdEl0ZW0iLCJkcm9wZG93bkxpc3RJdGVtTFQiLCJkcm9wZG93bkxpc3RIZWFkZXIiLCJkcm9wZG93bkxpc3RTZWN0aW9uIiwiZHJvcGRvd25MaXN0IiwiZHJvcGRvd25MaXN0TFQiLCJzaWRlUGFuZWxTY3JvbGxCYXIiLCJwYW5lbERyb3Bkb3duU2Nyb2xsQmFyIiwic2Nyb2xsQmFyIiwibW9kYWxTY3JvbGxCYXIiLCJESU1FTlNJT05TIiwidGhlbWVMVCIsInRoZW1lQlMiLCJjdG5CdG5CZ2QiLCJjdG5CdG5CZ2RIb3ZlciIsImN0bkJ0bkNvbG9yIiwiY3RuQnRuQWN0Q29sb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3R5bGVzL2Jhc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtjc3N9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7RElNRU5TSU9OU30gZnJvbSAnY29uc3RhbnRzL2RlZmF1bHQtc2V0dGluZ3MnO1xuXG50eXBlIElucHV0UHJvcHMgPSB7XG4gIGFjdGl2ZTogYm9vbGVhbjtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIGVycm9yOiBzdHJpbmc7XG4gIHNpemU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufTtcblxudHlwZSBTZWNvbmRhcnlJbnB1dFByb3BzID0ge1xuICBlcnJvcjogc3RyaW5nO1xufTtcblxudHlwZSBTd2l0Y2hhYmxlUHJvcHMgPSB7XG4gIGNoZWNrZWQ6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNpdGlvbiA9ICdhbGwgLjRzIGVhc2UnO1xuZXhwb3J0IGNvbnN0IHRyYW5zaXRpb25GYXN0ID0gJ2FsbCAuMnMgZWFzZSc7XG5leHBvcnQgY29uc3QgdHJhbnNpdGlvblNsb3cgPSAnYWxsIC44cyBlYXNlJztcblxuZXhwb3J0IGNvbnN0IGJveFNoYWRvdyA9ICcwIDFweCAycHggMCByZ2JhKDAsMCwwLDAuMTApJztcbmV4cG9ydCBjb25zdCBib3hTaXppbmcgPSAnYm9yZGVyLWJveCc7XG5leHBvcnQgY29uc3QgYm9yZGVyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3QgYm9yZGVyQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgYm9yZGVyQ29sb3JMVCA9ICcjRjFGMUYxJztcblxuLy8gVEVYVFxuZXhwb3J0IGNvbnN0IGZvbnRGYW1pbHkgPSBgZmYtY2xhbi13ZWItcHJvLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWZgO1xuZXhwb3J0IGNvbnN0IGZvbnRXZWlnaHQgPSA0MDA7XG5leHBvcnQgY29uc3QgZm9udFNpemUgPSAnMC44NzVlbSc7XG5leHBvcnQgY29uc3QgbGluZUhlaWdodCA9IDEuNzE0Mjk7XG5leHBvcnQgY29uc3QgbGFiZWxDb2xvciA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBsYWJlbEhvdmVyQ29sb3IgPSAnI0M2QzZDNic7XG5leHBvcnQgY29uc3QgbGFiZWxDb2xvckxUID0gJyM2QTc0ODUnO1xuXG5leHBvcnQgY29uc3QgdGV4dENvbG9yID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHRleHRDb2xvckxUID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IGRhdGFUYWJsZVRleHRDb2xvciA9IHRleHRDb2xvckxUO1xuZXhwb3J0IGNvbnN0IHRpdGxlQ29sb3JMVCA9ICcjMjkzMjNDJztcblxuZXhwb3J0IGNvbnN0IHN1YnRleHRDb2xvciA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBzdWJ0ZXh0Q29sb3JMVCA9ICcjQTBBN0I0JztcbmV4cG9ydCBjb25zdCBzdWJ0ZXh0Q29sb3JBY3RpdmUgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgcGFuZWxUb2dnbGVCb3JkZXJDb2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBwYW5lbFRhYldpZHRoID0gJzMwcHgnO1xuXG5leHBvcnQgY29uc3QgdGl0bGVUZXh0Q29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgdGV4dENvbG9ySGwgPSAnI0YwRjBGMCc7XG5leHBvcnQgY29uc3QgdGV4dENvbG9ySGxMVCA9ICcjMDAwMDAwJztcbmV4cG9ydCBjb25zdCBhY3RpdmVDb2xvciA9ICcjMUZCQUQ2JztcbmV4cG9ydCBjb25zdCBhY3RpdmVDb2xvckxUID0gJyMyNDczQkQnO1xuZXhwb3J0IGNvbnN0IGFjdGl2ZUNvbG9ySG92ZXIgPSAnIzEwODE4OCc7XG5leHBvcnQgY29uc3QgZXJyb3JDb2xvciA9ICcjRjkwNDJDJztcbmV4cG9ydCBjb25zdCBsb2dvQ29sb3IgPSBhY3RpdmVDb2xvcjtcblxuLy8gQnV0dG9uXG5leHBvcnQgY29uc3QgYnRuRm9udEZhbWlseSA9IGZvbnRGYW1pbHk7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkJnZCA9ICcjMEY5NjY4JztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuQWN0QmdkID0gJyMxM0IxN0InO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Db2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuQWN0Q29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkJnZEhvdmVyID0gJyMxM0IxN0InO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5SYWRpdXMgPSAnMnB4JztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0ID0gJzExcHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Gb250U2l6ZVNtYWxsID0gJzEwcHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Gb250U2l6ZUxhcmdlID0gJzE0cHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Cb3JkZXIgPSAnMCc7XG5cbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlCdG5CZ2QgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5QnRuQWN0QmdkID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkNvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkFjdENvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkJnZEhvdmVyID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkJvcmRlciA9ICcwJztcblxuZXhwb3J0IGNvbnN0IGN0YUJ0bkJnZCA9ICcjMEY5NjY4JztcbmV4cG9ydCBjb25zdCBjdGFCdG5CZ2RIb3ZlciA9ICcjMTNCMTdCJztcbmV4cG9ydCBjb25zdCBjdGFCdG5BY3RCZ2QgPSAnIzEzQjE3Qic7XG5leHBvcnQgY29uc3QgY3RhQnRuQ29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgY3RhQnRuQWN0Q29sb3IgPSAnI0ZGRkZGRic7XG5cbmV4cG9ydCBjb25zdCBsaW5rQnRuQmdkID0gJ3RyYW5zcGFyZW50JztcbmV4cG9ydCBjb25zdCBsaW5rQnRuQWN0QmdkID0gbGlua0J0bkJnZDtcbmV4cG9ydCBjb25zdCBsaW5rQnRuQ29sb3IgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgbGlua0J0bkFjdENvbG9yID0gJyNGMUYxRjEnO1xuZXhwb3J0IGNvbnN0IGxpbmtCdG5BY3RCZ2RIb3ZlciA9IGxpbmtCdG5CZ2Q7XG5leHBvcnQgY29uc3QgbGlua0J0bkJvcmRlciA9ICcwJztcblxuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQmdkID0gZXJyb3JDb2xvcjtcbmV4cG9ydCBjb25zdCBuZWdhdGl2ZUJ0bkFjdEJnZCA9ICcjRkYxOTNFJztcbmV4cG9ydCBjb25zdCBuZWdhdGl2ZUJ0bkJnZEhvdmVyID0gJyNGRjE5M0UnO1xuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQm9yZGVyID0gJzAnO1xuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQ29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgbmVnYXRpdmVCdG5BY3RDb2xvciA9ICcjRkZGRkZGJztcblxuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQmdkID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQWN0QmdkID0gJyMzQTQ1NTInO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQmdkSG92ZXIgPSAnIzNBNDU1Mic7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5Cb3JkZXIgPSAnMCc7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5Cb3JkZXJIb3ZlciA9ICcwJztcbmV4cG9ydCBjb25zdCBmbG9hdGluZ0J0bkNvbG9yID0gc3VidGV4dENvbG9yO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQWN0Q29sb3IgPSBzdWJ0ZXh0Q29sb3JBY3RpdmU7XG5cbmV4cG9ydCBjb25zdCBzZWxlY3Rpb25CdG5CZ2QgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkFjdEJnZCA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQWN0Q29sb3IgPSAnIzBGOTY2OCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQmdkSG92ZXIgPSAnIzBGOTY2OCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQm9yZGVyID0gJzEnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkJvcmRlckNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yID0gJyMwRjk2NjgnO1xuXG4vLyBJbnB1dFxuZXhwb3J0IGNvbnN0IGlucHV0Qm94SGVpZ2h0ID0gJzM0cHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0Qm94SGVpZ2h0U21hbGwgPSAnMjRweCc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3hIZWlnaHRUaW55ID0gJzE4cHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0UGFkZGluZyA9ICc0cHggMTBweCc7XG5leHBvcnQgY29uc3QgaW5wdXRQYWRkaW5nU21hbGwgPSAnNHB4IDZweCc7XG5leHBvcnQgY29uc3QgaW5wdXRQYWRkaW5nVGlueSA9ICcycHggNHB4JztcbmV4cG9ydCBjb25zdCBpbnB1dEZvbnRTaXplID0gJzExcHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0Rm9udFNpemVTbWFsbCA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCBpbnB1dEZvbnRXZWlnaHQgPSA1MDA7XG5leHBvcnQgY29uc3QgaW5wdXRCZ2QgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3QgaW5wdXRCZ2RIb3ZlciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJnZEFjdGl2ZSA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJnZEFjdGl2ZUxUID0gJyNGRkZGRkYnO1xuXG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJDb2xvciA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJvcmRlckhvdmVyQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJIb3ZlckNvbG9yTFQgPSBzdWJ0ZXh0Q29sb3I7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJBY3RpdmVDb2xvciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBpbnB1dEJvcmRlckFjdGl2ZUNvbG9yTFQgPSB0ZXh0Q29sb3JMVDtcblxuZXhwb3J0IGNvbnN0IGlucHV0Q29sb3IgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJSYWRpdXMgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBpbnB1dFBsYWNlaG9sZGVyQ29sb3IgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgaW5wdXRQbGFjZWhvbGRlckNvbG9yTFQgPSBzdWJ0ZXh0Q29sb3JMVDtcbmV4cG9ydCBjb25zdCBpbnB1dFBsYWNlaG9sZGVyRm9udFdlaWdodCA9IDQwMDtcbmV4cG9ydCBjb25zdCBpbnB1dEJveFNoYWRvdyA9ICdub25lJztcbmV4cG9ydCBjb25zdCBpbnB1dEJveFNoYWRvd0FjdGl2ZSA9ICdub25lJztcbmV4cG9ydCBjb25zdCBpbnB1dEJveFNoYWRvd0FjdGl2ZUxUID0gJ25vbmUnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0QmdkID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0QmdkSG92ZXIgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5SW5wdXRCZ2RBY3RpdmUgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5SW5wdXRDb2xvciA9ICcjQTBBN0I0JztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0Qm9yZGVyQWN0aXZlQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25TZWxlY3RIZWlnaHQgPSAzMDtcblxuLy8gU2VsZWN0XG5leHBvcnQgY29uc3Qgc2VsZWN0Q29sb3IgPSBpbnB1dENvbG9yO1xuZXhwb3J0IGNvbnN0IHNlbGVjdENvbG9yTFQgPSB0aXRsZUNvbG9yTFQ7XG5cbmV4cG9ydCBjb25zdCBzZWxlY3RBY3RpdmVCb3JkZXJDb2xvciA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzZWxlY3RGb250U2l6ZSA9ICcxMXB4JztcbmV4cG9ydCBjb25zdCBzZWxlY3RGb250V2VpZ2h0ID0gJzQwMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Rm9udFdlaWdodEJvbGQgPSAnNTAwJztcblxuZXhwb3J0IGNvbnN0IHNlbGVjdENvbG9yUGxhY2VIb2xkZXIgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUID0gc2VsZWN0Q29sb3JMVDtcbmV4cG9ydCBjb25zdCBzZWxlY3RCYWNrZ3JvdW5kID0gaW5wdXRCZ2Q7XG5leHBvcnQgY29uc3Qgc2VsZWN0QmFja2dyb3VuZEhvdmVyID0gaW5wdXRCZ2RIb3ZlcjtcbmV4cG9ydCBjb25zdCBzZWxlY3RCYWNrZ3JvdW5kTFQgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3Qgc2VsZWN0QmFja2dyb3VuZEhvdmVyTFQgPSAnI0Y4RjhGOSc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Qm9yZGVyQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Qm9yZGVyQ29sb3JMVCA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzZWxlY3RCb3JkZXJSYWRpdXMgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBzZWxlY3RCb3JkZXIgPSAwO1xuZXhwb3J0IGNvbnN0IHBhbmVsVGFiQ29sb3IgPSBzdWJ0ZXh0Q29sb3I7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmcgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmdMVCA9ICcjRjhGOEY5JztcbmV4cG9ydCBjb25zdCBkcm9wZG93bkxpc3RTaGFkb3cgPSAnMCA2cHggMTJweCAwIHJnYmEoMCwwLDAsMC4xNiknO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEJnZCA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCB0b29sYmFySXRlbUJnZEhvdmVyID0gJyMzQTQ1NTInO1xuZXhwb3J0IGNvbnN0IHRvb2xiYXJJdGVtSWNvbkhvdmVyID0gdGV4dENvbG9ySGw7XG5leHBvcnQgY29uc3QgdG9vbGJhckl0ZW1Cb3JkZXJIb3ZlciA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgdG9vbGJhckl0ZW1Cb3JkZXJSYWRkaXVzID0gJzBweCc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0QmdkTFQgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0Qm9yZGVyVG9wID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEJvcmRlclRvcExUID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdExpbmVIZWlnaHQgPSAyMDtcbmV4cG9ydCBjb25zdCBkcm9wZG93bldyYXBwZXJaID0gMTAwO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duV2FwcGVyTWFyZ2luID0gNDtcblxuLy8gU3dpdGNoXG5leHBvcnQgY29uc3Qgc3dpdGNoV2lkdGggPSAyNDtcbmV4cG9ydCBjb25zdCBzd2l0Y2hIZWlnaHQgPSAxMjtcbmV4cG9ydCBjb25zdCBzd2l0Y2hMYWJlbE1hcmdpbiA9IDEyO1xuXG5leHBvcnQgY29uc3Qgc3dpdGNoVHJhY2tCZ2QgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3Qgc3dpdGNoVHJhY2tCZ2RBY3RpdmUgPSBhY3RpdmVDb2xvcjtcbmV4cG9ydCBjb25zdCBzd2l0Y2hUcmFja0JvcmRlclJhZGl1cyA9ICcxcHgnO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkJnZCA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBzd2l0Y2hCdG5CZ2RBY3RpdmUgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc3dpdGNoQnRuQm94U2hhZG93ID0gJzAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC40MCknO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkJvcmRlclJhZGl1cyA9ICcwJztcbmV4cG9ydCBjb25zdCBzd2l0Y2hCdG5XaWR0aCA9IDEyO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkhlaWdodCA9IDEyO1xuXG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2QgPSAnIzI0MjczMCc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5U3dpdGNoQnRuQmdkID0gJyMzQTQxNEMnO1xuXG4vLyBDaGVja2JveFxuZXhwb3J0IGNvbnN0IGNoZWNrYm94V2lkdGggPSAxNjtcbmV4cG9ydCBjb25zdCBjaGVja2JveEhlaWdodCA9IDE2O1xuZXhwb3J0IGNvbnN0IGNoZWNrYm94TWFyZ2luID0gMTI7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3JkZXJDb2xvciA9IHNlbGVjdEJvcmRlckNvbG9yO1xuZXhwb3J0IGNvbnN0IGNoZWNrYm94Qm9yZGVyUmFkaXVzID0gJzJweCc7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3JkZXJDb2xvckxUID0gc2VsZWN0Qm9yZGVyQ29sb3JMVDtcbmV4cG9ydCBjb25zdCBjaGVja2JveEJveEJnZCA9ICd3aGl0ZSc7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3hCZ2RDaGVja2VkID0gcHJpbWFyeUJ0bkJnZDtcblxuLy8gUmFkaW9cbmV4cG9ydCBjb25zdCByYWRpb1JhZGl1cyA9IDg7XG5leHBvcnQgY29uc3QgcmFkaW9Cb3JkZXJSYWRpdXMgPSAxMDA7XG5leHBvcnQgY29uc3QgcmFkaW9Cb3JkZXJDb2xvciA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgcmFkaW9CdXR0b25SYWRpdXMgPSA0O1xuZXhwb3J0IGNvbnN0IHJhZGlvQnV0dG9uQmdkQ29sb3IgPSBzd2l0Y2hCdG5CZ2RBY3RpdmU7XG5cbi8vIFNpZGUgUGFuZWxcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxIZWFkZXJCZyA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxIZWFkZXJCb3JkZXIgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBNYXJnaW5Cb3R0b20gPSAxMjtcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwUGFkZGluZ0xlZnQgPSAxODtcblxuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbElubmVyUGFkZGluZyA9IDE2O1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbEJvcmRlciA9IDA7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsQm9yZGVyQ29sb3IgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbEJnID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbFNjcm9sbEJhcldpZHRoID0gMTA7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsU2Nyb2xsQmFySGVpZ2h0ID0gMTA7XG5leHBvcnQgY29uc3Qgc2lkZUJhckNsb3NlQnRuQmdkID0gc2Vjb25kYXJ5QnRuQmdkO1xuZXhwb3J0IGNvbnN0IHNpZGVCYXJDbG9zZUJ0bkNvbG9yID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IHNpZGVCYXJDbG9zZUJ0bkJnZEhvdmVyID0gc2Vjb25kYXJ5QnRuQWN0QmdkO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbFRpdGxlRm9udHNpemUgPSAnMjBweCc7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsVGl0bGVMaW5lSGVpZ2h0ID0gJzEuNzE0MjknO1xuZXhwb3J0IGNvbnN0IHBhbmVsQmFja2dyb3VuZCA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBwYW5lbENvbnRlbnRCYWNrZ3JvdW5kID0gJyMyOTJFMzYnO1xuZXhwb3J0IGNvbnN0IHBhbmVsQmFja2dyb3VuZEhvdmVyID0gJyMzQTQ1NTInO1xuZXhwb3J0IGNvbnN0IHBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzID0gJzBweCc7XG5leHBvcnQgY29uc3QgY2hpY2tsZXRCZ2QgPSAnIzNBNDU1Mic7XG5leHBvcnQgY29uc3QgY2hpY2tsZXRCZ2RMVCA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBwYW5lbEhlYWRlckljb24gPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgcGFuZWxIZWFkZXJJY29uQWN0aXZlID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHBhbmVsSGVhZGVySWNvbkhvdmVyID0gdGV4dENvbG9ySGw7XG5leHBvcnQgY29uc3QgcGFuZWxIZWFkZXJIZWlnaHQgPSA0ODtcbmV4cG9ydCBjb25zdCBsYXllclBhbmVsSGVhZGVySGVpZ2h0ID0gNDg7XG5leHBvcnQgY29uc3QgcGFuZWxCb3hTaGFkb3cgPSAnMCA2cHggMTJweCAwIHJnYmEoMCwwLDAsMC4xNiknO1xuZXhwb3J0IGNvbnN0IHBhbmVsQm9yZGVyUmFkaXVzID0gJzJweCc7XG5leHBvcnQgY29uc3QgcGFuZWxCYWNrZ3JvdW5kTFQgPSAnI0Y4RjhGOSc7XG5leHBvcnQgY29uc3QgcGFuZWxUb2dnbGVNYXJnaW5SaWdodCA9IDEyO1xuZXhwb3J0IGNvbnN0IHBhbmVsVG9nZ2xlQm90dG9tUGFkZGluZyA9IDY7XG5cbmV4cG9ydCBjb25zdCBwYW5lbEJvcmRlckNvbG9yID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IHBhbmVsQm9yZGVyID0gYDFweCBzb2xpZCAke2JvcmRlckNvbG9yfWA7XG5leHBvcnQgY29uc3QgcGFuZWxCb3JkZXJMVCA9IGAxcHggc29saWQgJHtib3JkZXJDb2xvckxUfWA7XG5cbmV4cG9ydCBjb25zdCBtYXBQYW5lbEJhY2tncm91bmRDb2xvciA9ICcjMjQyNzMwJztcbmV4cG9ydCBjb25zdCBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvciA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCB0b29sdGlwQmcgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgdG9vbHRpcENvbG9yID0gdGV4dENvbG9ySGw7XG5leHBvcnQgY29uc3QgdG9vbHRpcEJveFNoYWRvdyA9IGJveFNoYWRvdztcbmV4cG9ydCBjb25zdCB0b29sdGlwRm9udFNpemUgPSAnMTBweCc7XG5cbmV4cG9ydCBjb25zdCBsYXllclR5cGVJY29uU2l6ZUwgPSA1MDtcbmV4cG9ydCBjb25zdCBsYXllclR5cGVJY29uUGRMID0gMTI7XG5leHBvcnQgY29uc3QgbGF5ZXJUeXBlSWNvblNpemVTTSA9IDI4O1xuXG5leHBvcnQgY29uc3QgbGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IGxheWVyUGFuZWxUb2dnbGVPcHRpb25Db2xvckFjdGl2ZSA9ICcjRjBGMEYwJztcblxuLy8gU2lkZXBhbmVsIGRpdmlkZXJcbmV4cG9ydCBjb25zdCBzaWRlcGFuZWxEaXZpZGVyQm9yZGVyID0gJzFweCc7XG5leHBvcnQgY29uc3Qgc2lkZXBhbmVsRGl2aWRlck1hcmdpbiA9IDEyO1xuZXhwb3J0IGNvbnN0IHNpZGVwYW5lbERpdmlkZXJIZWlnaHQgPSAxMjtcblxuLy8gQm90dG9tIFBhbmVsXG5leHBvcnQgY29uc3QgYm90dG9tSW5uZXJQZFNpZGUgPSAzMjtcbmV4cG9ydCBjb25zdCBib3R0b21Jbm5lclBkVmVydCA9IDY7XG5leHBvcnQgY29uc3QgYm90dG9tUGFuZWxHYXAgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRQYWRkaW5nVG9wID0gMjA7XG5leHBvcnQgY29uc3QgYm90dG9tV2lkZ2V0UGFkZGluZ1JpZ2h0ID0gMjA7XG5leHBvcnQgY29uc3QgYm90dG9tV2lkZ2V0UGFkZGluZ0JvdHRvbSA9IDMwO1xuZXhwb3J0IGNvbnN0IGJvdHRvbVdpZGdldFBhZGRpbmdMZWZ0ID0gMjA7XG5leHBvcnQgY29uc3QgYm90dG9tV2lkZ2V0QmdkID0gJyMyOTMyM0MnO1xuLy8gTW9kYWxcbmV4cG9ydCBjb25zdCBtb2RhbFRpdGxlQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgbW9kYWxUaXRsZUZvbnRTaXplID0gJzI0cHgnO1xuZXhwb3J0IGNvbnN0IG1vZGFsVGl0bGVGb250U2l6ZVNtYWxsZXIgPSAnMThweCc7XG5leHBvcnQgY29uc3QgbW9kYWxGb290ZXJCZ2QgPSAnI0Y4RjhGOSc7XG5leHBvcnQgY29uc3QgbW9kYWxJbWFnZVBsYWNlSG9sZGVyID0gJyNERERGRTMnO1xuZXhwb3J0IGNvbnN0IG1vZGFsUGFkZGluZyA9ICcxMHB4IDAnO1xuZXhwb3J0IGNvbnN0IG1vZGFsTGF0ZXJhbFBhZGRpbmcgPSAnNzJweCc7XG5leHBvcnQgY29uc3QgbW9kYWxQb3J0YWJsZUxhdGVyYWxQYWRkaW5nID0gJzM2cHgnO1xuXG5leHBvcnQgY29uc3QgbW9kYWxPdmVyTGF5WiA9IDEwMDE7XG5leHBvcnQgY29uc3QgbW9kYWxPdmVybGF5QmdkID0gJ3JnYmEoMCwgMCwgMCwgMC41KSc7XG5leHBvcnQgY29uc3QgbW9kYWxDb250ZW50WiA9IDEwMDAyO1xuZXhwb3J0IGNvbnN0IG1vZGFsRm9vdGVyWiA9IDEwMDAxO1xuZXhwb3J0IGNvbnN0IG1vZGFsVGl0bGVaID0gMTAwMDM7XG5leHBvcnQgY29uc3QgbW9kYWxCdXR0b25aID0gMTAwMDU7XG5leHBvcnQgY29uc3QgbW9kYWxEcm9wZG93bkJhY2tncm91bmQgPSAnI0ZGRkZGRic7XG5cbi8vIE1vZGFsIERpYWxvZyAoRGFyaylcbmV4cG9ydCBjb25zdCBtb2RhbERpYWxvZ0JnZCA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBtb2RhbERpYWxvZ0NvbG9yID0gdGV4dENvbG9ySGw7XG5cbi8vIFNsaWRlclxuZXhwb3J0IGNvbnN0IHNsaWRlckJhckNvbG9yID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckJhckJnZCA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBzbGlkZXJCYXJIb3ZlckNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckJhclJhZGl1cyA9ICcxcHgnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckJhckhlaWdodCA9IDQ7XG5leHBvcnQgY29uc3Qgc2xpZGVySGFuZGxlSGVpZ2h0ID0gMTI7XG5leHBvcnQgY29uc3Qgc2xpZGVySGFuZGxlV2lkdGggPSAxMjtcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVDb2xvciA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVUZXh0Q29sb3IgPSBzbGlkZXJIYW5kbGVDb2xvcjtcbmV4cG9ydCBjb25zdCBzbGlkZXJJbmFjdGl2ZUJvcmRlckNvbG9yID0gc2xpZGVySGFuZGxlQ29sb3I7XG5leHBvcnQgY29uc3Qgc2xpZGVyQm9yZGVyUmFkaXVzID0gJzAnO1xuXG5leHBvcnQgY29uc3Qgc2xpZGVySGFuZGxlSG92ZXJDb2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVBZnRlckNvbnRlbnQgPSAnJztcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVTaGFkb3cgPSAnMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjQwKSc7XG5leHBvcnQgY29uc3Qgc2xpZGVySW5wdXRIZWlnaHQgPSAyNDtcbmV4cG9ydCBjb25zdCBzbGlkZXJJbnB1dFdpZHRoID0gNTY7XG5leHBvcnQgY29uc3Qgc2xpZGVySW5wdXRGb250U2l6ZSA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCBzbGlkZXJJbnB1dFBhZGRpbmcgPSAnNHB4IDZweCc7XG5leHBvcnQgY29uc3Qgc2xpZGVyTWFyZ2luVG9wSXNUaW1lID0gLTEyO1xuZXhwb3J0IGNvbnN0IHNsaWRlck1hcmdpblRvcCA9IDEyO1xuZXhwb3J0IGNvbnN0IHNsaWRlck1hcmdpbkJvdHRvbSA9IDEyO1xuXG4vLyBHZW9jb2RlclxuZXhwb3J0IGNvbnN0IGdlb2NvZGVyV2lkdGggPSAzNjA7XG5leHBvcnQgY29uc3QgZ2VvY29kZXJUb3AgPSAyMDtcbmV4cG9ydCBjb25zdCBnZW9jb2RlclJpZ2h0ID0gMTI7XG5leHBvcnQgY29uc3QgZ2VvY29kZXJJbnB1dEhlaWdodCA9IDM2O1xuXG4vLyBQbG90XG5leHBvcnQgY29uc3QgcmFuZ2VCcnVzaEJnZCA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBoaXN0b2dyYW1GaWxsSW5SYW5nZSA9IGFjdGl2ZUNvbG9yO1xuZXhwb3J0IGNvbnN0IGhpc3RvZ3JhbUZpbGxPdXRSYW5nZSA9IHNsaWRlckJhckNvbG9yO1xuZXhwb3J0IGNvbnN0IGF4aXNGb250U2l6ZSA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCBheGlzRm9udENvbG9yID0gdGV4dENvbG9yO1xuZXhwb3J0IGNvbnN0IHRpbWVUaXRsZUZvbnRTaXplID0gJzEwcHgnO1xuZXhwb3J0IGNvbnN0IHJhbmdlUGxvdE1hcmdpbiA9IHt0b3A6IDEyLCBib3R0b206IDAsIGxlZnQ6IDAsIHJpZ2h0OiAwfTtcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RNYXJnaW5MYXJnZSA9IHt0b3A6IDE4LCBib3R0b206IDAsIGxlZnQ6IDAsIHJpZ2h0OiAwfTtcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RIID0gNjI7XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90Q29udGFpbmVySCA9IDc4O1xuZXhwb3J0IGNvbnN0IHJhbmdlUGxvdEhMYXJnZSA9IDEwMjtcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RDb250YWluZXJITGFyZ2UgPSAxMjA7XG5cbi8vIE5vdGlmaWNhdGlvblxuZXhwb3J0IGNvbnN0IG5vdGlmaWNhdGlvbkNvbG9ycyA9IHtcbiAgaW5mbzogJyMyNzZlZjEnLFxuICBlcnJvcjogJyNmMjUxMzgnLFxuICBzdWNjZXNzOiAnIzQ3YjI3NScsXG4gIHdhcm5pbmc6ICcjZmZjMDQzJ1xufTtcblxuZXhwb3J0IGNvbnN0IG5vdGlmaWNhdGlvblBhbmVsV2lkdGggPSAyNDA7XG5leHBvcnQgY29uc3Qgbm90aWZpY2F0aW9uUGFuZWxJdGVtV2lkdGggPSBub3RpZmljYXRpb25QYW5lbFdpZHRoIC0gNjA7XG5leHBvcnQgY29uc3Qgbm90aWZpY2F0aW9uUGFuZWxJdGVtSGVpZ2h0ID0gNjA7XG5cbi8vIERhdGEgVGFibGVcbmNvbnN0IGhlYWRlclJvd0hlaWdodCA9IDcwO1xuY29uc3Qgcm93SGVpZ2h0ID0gMzI7XG5jb25zdCBoZWFkZXJQYWRkaW5nVG9wID0gNjtcbmNvbnN0IGhlYWRlclBhZGRpbmdCb3R0b20gPSA4O1xuY29uc3QgY2VsbFBhZGRpbmdTaWRlID0gMTA7XG5jb25zdCBlZGdlQ2VsbFBhZGRpbmdTaWRlID0gMTA7XG5jb25zdCBjZWxsRm9udFNpemUgPSAxMDtcbmNvbnN0IGdyaWRQYWRkaW5nU2lkZSA9IDI0O1xuY29uc3QgaGVhZGVyQ2VsbEJhY2tncm91bmQgPSAnI0ZGRkZGRic7XG5jb25zdCBoZWFkZXJDZWxsQm9yZGVyQ29sb3IgPSAnI0UwRTBFMCc7XG5jb25zdCBoZWFkZXJDZWxsSWNvbkNvbG9yID0gJyM2NjY2NjYnO1xuY29uc3QgY2VsbEJvcmRlckNvbG9yID0gJyNFMEUwRTAnO1xuY29uc3QgZXZlblJvd0JhY2tncm91bmQgPSAnI0ZGRkZGRic7XG5jb25zdCBvZGRSb3dCYWNrZ3JvdW5kID0gJyNGN0Y3RjcnO1xuY29uc3Qgb3B0aW9uQnV0dG9uQ29sb3IgPSAnIzZBNzQ4NSc7XG5jb25zdCBwaW5uZWRHcmlkQm9yZGVyQ29sb3IgPSAnI0UwRTBFMCc7XG5cbi8vIEZsb2F0aW5nIFRpbWUgZGlzcGxheVxuY29uc3QgdGltZURpc3BsYXlCb3JkZXJSYWRpdXMgPSAzMjtcbmNvbnN0IHRpbWVEaXNwbGF5SGVpZ2h0ID0gNjQ7XG5jb25zdCB0aW1lRGlzcGxheU1pbldpZHRoID0gMTc2O1xuY29uc3QgdGltZURpc3BsYXlPcGFjaXR5ID0gMC44O1xuY29uc3QgdGltZURpc3BsYXlQYWRkaW5nID0gJzAgMjRweCc7XG5cbi8vIEV4cG9ydCBtYXAgbW9kYWxcbmNvbnN0IGV4cG9ydEludHJhU2VjdGlvbk1hcmdpbiA9ICc4JztcblxuLy8gcHJvZ3Jlc3MgYmFyXG5jb25zdCBwcm9ncmVzc0JhckNvbG9yID0gcHJpbWFyeUJ0bkJnZDtcbmNvbnN0IHByb2dyZXNzQmFyVHJhY2tDb2xvciA9ICcjRThFOEU4Jztcbi8vIEFjdGlvbiBQYW5lbFxuZXhwb3J0IGNvbnN0IGFjdGlvblBhbmVsV2lkdGggPSAxMTA7XG5leHBvcnQgY29uc3QgYWN0aW9uUGFuZWxIZWlnaHQgPSAzMjtcblxuLy8gU3R5bGVkIFRva2VuXG5leHBvcnQgY29uc3QgZmllbGRUb2tlblJpZ2h0TWFyZ2luID0gNDtcblxuZXhwb3J0IGNvbnN0IHRleHRUcnVuY2F0ZSA9IHtcbiAgbWF4V2lkdGg6ICcxMDAlJyxcbiAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICB0ZXh0T3ZlcmZsb3c6ICdlbGxpcHNpcycsXG4gIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICB3b3JkV3JhcDogJ25vcm1hbCdcbn07XG5cbi8vIGxheWVyQ29uZmlnR3JvdXBMYWJlbFxuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBMYWJlbEJvcmRlckxlZnQgPSAnMnB4JztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwTGFiZWxNYXJnaW4gPSAnLTEycHgnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBMYWJlbFBhZGRpbmcgPSAnMTBweCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cENvbG9yID0gJ3RyYW5zcGFyZW50JztcblxuLy8gbGF5ZXJDb25maWdHcm91cExhYmVsIGxhYmVsXG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxNYXJnaW4gPSAnMCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxGb250U2l6ZSA9ICcxMnB4JztcblxuLy8gc3R5bGVkQ29uZmlnR3JvdXBIZWFkZXJcbmV4cG9ydCBjb25zdCBzdHlsZWRDb25maWdHcm91cEhlYWRlckJvcmRlciA9ICcycHgnO1xuXG4vLyBsYXllckNvbmZpZ3VyYXRvclxuXG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWd1cmF0b3JCb3JkZXIgPSAnMCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWd1cmF0b3JCb3JkZXJDb2xvciA9ICcnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlndXJhdG9yTWFyZ2luID0gJzEycHgnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlndXJhdG9yUGFkZGluZyA9ICcxMnB4IDAgOHB4IDAnO1xuLy8gVGhpcyBicmVha3BvaW50cyBhcmUgdXNlZCBmb3IgcmVzcG9uc2l2ZSBkZXNpZ25cbmV4cG9ydCBjb25zdCBicmVha1BvaW50cyA9IHtcbiAgcGFsbTogNTg4LFxuICBkZXNrOiA3Njhcbn07XG5cbi8vIHRoZW1lIGlzIHBhc3NlZCB0byBrZXBsZXIuZ2wgd2hlbiBpdCdzIG1vdW50ZWQsXG4vLyBpdCBpcyB1c2VkIGJ5IHN0eWxlZC1jb21wb25lbnRzIHRvIHBhc3MgYWxvbmcgdG9cbi8vIGFsbCBjaGlsZCBjb21wb25lbnRzXG5cbmNvbnN0IGlucHV0ID0gY3NzPElucHV0UHJvcHM+YFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dFBsYWNlaG9sZGVyQ29sb3J9O1xuICAgIGZvbnQtd2VpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0UGxhY2Vob2xkZXJGb250V2VpZ2h0fTtcbiAgfVxuXG4gIC8qIERpc2FibGUgQXJyb3dzIG9uIE51bWJlciBJbnB1dHMgKi9cbiAgOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICA6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkfTtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5hY3RpdmVcbiAgICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yXG4gICAgICAgIDogcHJvcHMuZXJyb3JcbiAgICAgICAgPyBwcm9wcy50aGVtZS5lcnJvckNvbG9yXG4gICAgICAgIDogcHJvcHMudGhlbWUuaW5wdXRCZ2R9O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGNhcmV0LWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3J9O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dENvbG9yfTtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAke3Byb3BzID0+XG4gICAgWydzbWFsbCcsICd0aW55J10uaW5jbHVkZXMocHJvcHMuc2l6ZSlcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRGb250U2l6ZVNtYWxsXG4gICAgICA6IHByb3BzLnRoZW1lLmlucHV0Rm9udFNpemV9O1xuICBmb250LXdlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEZvbnRXZWlnaHR9O1xuICBmb250LWZhbWlseTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5mb250RmFtaWx5fTtcbiAgaGVpZ2h0OiAke3Byb3BzID0+XG4gICAgcHJvcHMuc2l6ZSA9PT0gJ3NtYWxsJ1xuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodFNtYWxsXG4gICAgICA6IHByb3BzLnNpemUgPT09ICd0aW55J1xuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodFRpbnlcbiAgICAgIDogcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHR9O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG91dGxpbmU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5zaXplID09PSAnc21hbGwnXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0UGFkZGluZ1NtYWxsXG4gICAgICA6IHByb3BzLnNpemUgPT09ICd0aW55J1xuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dFBhZGRpbmdUaW55XG4gICAgICA6IHByb3BzLnRoZW1lLmlucHV0UGFkZGluZ307XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0cmFuc2l0aW9uOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRyYW5zaXRpb259O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHBvaW50ZXItZXZlbnRzOiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/ICdub25lJyA6ICdhbGwnKX07XG4gIG9wYWNpdHk6ICR7cHJvcHMgPT4gKHByb3BzLmRpc2FibGVkID8gMC41IDogMSl9O1xuICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm94U2hhZG93fTtcblxuICA6aG92ZXIge1xuICAgIGN1cnNvcjogJHtwcm9wcyA9PiAocHJvcHMudHlwZSA9PT0gJ251bWJlcicgfHwgcHJvcHMudHlwZSA9PT0gJ3RleHQnID8gJ3RleHQnIDogJ3BvaW50ZXInKX07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuYWN0aXZlID8gcHJvcHMudGhlbWUuaW5wdXRCZ2RBY3RpdmUgOiBwcm9wcy50aGVtZS5pbnB1dEJnZEhvdmVyfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3IgOiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckhvdmVyQ29sb3J9O1xuICB9XG5cbiAgOmFjdGl2ZSxcbiAgOmZvY3VzLFxuICAmLmZvY3VzLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJnZEFjdGl2ZX07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3J9O1xuICAgIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3hTaGFkb3dBY3RpdmV9O1xuICB9XG5gO1xuXG5jb25zdCBpbnB1dExUID0gY3NzYFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dFBsYWNlaG9sZGVyQ29sb3JMVH07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuICAke2lucHV0fVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0QmFja2dyb3VuZExUfTtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgJHtwcm9wcyA9PlxuICAgIHByb3BzLmFjdGl2ZVxuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RBY3RpdmVCb3JkZXJDb2xvclxuICAgICAgOiBwcm9wcy5lcnJvclxuICAgICAgPyBwcm9wcy50aGVtZS5lcnJvckNvbG9yXG4gICAgICA6IHByb3BzLnRoZW1lLnNlbGVjdEJvcmRlckNvbG9yTFR9O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3RDb2xvckxUfTtcbiAgY2FyZXQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvckxUfTtcblxuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCZ2RBY3RpdmVMVH07XG4gICAgY3Vyc29yOiAke3Byb3BzID0+IChbJ251bWJlcicsICd0ZXh0J10uaW5jbHVkZXMocHJvcHMudHlwZSkgPyAndGV4dCcgOiAncG9pbnRlcicpfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3JMVCA6IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVySG92ZXJDb2xvckxUfTtcbiAgfVxuXG4gIDphY3RpdmUsXG4gIDpmb2N1cyxcbiAgJi5mb2N1cyxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCZ2RBY3RpdmVMVH07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3JMVH07XG4gICAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJveFNoYWRvd0FjdGl2ZUxUfTtcbiAgfVxuYDtcblxuY29uc3Qgc2Vjb25kYXJ5SW5wdXQgPSBjc3M8U2Vjb25kYXJ5SW5wdXRQcm9wcz5gXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXR9XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0Q29sb3J9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0QmdkfTtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+IChwcm9wcy5lcnJvciA/IHByb3BzLnRoZW1lLmVycm9yQ29sb3IgOiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yKX07XG5cbiAgOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dEJnZEhvdmVyfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRCZ2RIb3Zlcn07XG4gIH1cblxuICA6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dEJnZEFjdGl2ZX07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0Qm9yZGVyQWN0aXZlQ29sb3J9O1xuICB9XG5gO1xuXG5jb25zdCBjaGlja2xldGVkSW5wdXRDb250YWluZXIgPSBjc3NgXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBoZWlnaHQ6IGF1dG87XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgcGFkZGluZzogMHB4IDdweCAwcHggNHB4O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gIC5jaGlja2xldGVkLWlucHV0X19wbGFjZWhvbGRlciB7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgbWFyZ2luOiA0cHg7XG4gIH1cbmA7XG5cbmNvbnN0IGNoaWNrbGV0ZWRJbnB1dCA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dH0gJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGlja2xldGVkSW5wdXRDb250YWluZXJ9O1xuYDtcblxuY29uc3QgY2hpY2tsZXRlZElucHV0TFQgPSBjc3NgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRMVH0gJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGlja2xldGVkSW5wdXRDb250YWluZXJ9O1xuYDtcblxuY29uc3Qgc2Vjb25kYXJ5Q2hpY2tsZXRlZElucHV0ID0gY3NzYFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0fSAke3Byb3BzID0+IHByb3BzLnRoZW1lLmNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lcn07XG5gO1xuXG5jb25zdCBpbmxpbmVJbnB1dCA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dH0gY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yfTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsZXR0ZXItc3BhY2luZzogMC40M3B4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICA6aG92ZXIge1xuICAgIGhlaWdodDogMjRweDtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgfVxuXG4gIDphY3RpdmUsXG4gIC5hY3RpdmUsXG4gIDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yfTtcbiAgfVxuYDtcblxuY29uc3Qgc3dpdGNoVHJhY2sgPSBjc3M8U3dpdGNoYWJsZVByb3BzPmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PlxuICAgIHByb3BzLmNoZWNrZWQgPyBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja0JnZEFjdGl2ZSA6IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkfTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6ICR7cHJvcHMgPT4gLXByb3BzLnRoZW1lLnN3aXRjaExhYmVsTWFyZ2lufXB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFdpZHRofXB4O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0fXB4O1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQm9yZGVyUmFkaXVzfTtcbmA7XG5cbmNvbnN0IHN3aXRjaEJ1dHRvbiA9IGNzczxTd2l0Y2hhYmxlUHJvcHM+YFxuICB0cmFuc2l0aW9uOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRyYW5zaXRpb259O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJHtwcm9wcyA9PiAocHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0IC0gcHJvcHMudGhlbWUuc3dpdGNoQnRuSGVpZ2h0KSAvIDJ9cHg7XG4gIGxlZnQ6ICR7cHJvcHMgPT5cbiAgICAocHJvcHMuY2hlY2tlZFxuICAgICAgPyBwcm9wcy50aGVtZS5zd2l0Y2hXaWR0aCAvIDJcbiAgICAgIDogKHByb3BzLnRoZW1lLnN3aXRjaEhlaWdodCAtIHByb3BzLnRoZW1lLnN3aXRjaEJ0bkhlaWdodCkgLyAyKSAtXG4gICAgcHJvcHMudGhlbWUuc3dpdGNoTGFiZWxNYXJnaW59cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ0bkhlaWdodH1weDtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoQnRuV2lkdGh9cHg7XG4gIGJhY2tncm91bmQ6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkfTtcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hCdG5Cb3hTaGFkb3d9O1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ0bkJvcmRlclJhZGl1c307XG5gO1xuXG5jb25zdCBpbnB1dFN3aXRjaCA9IGNzc2BcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0fXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoV2lkdGh9cHg7XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja307XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoQnV0dG9ufTtcbiAgfVxuYDtcblxuLy8gVGhpcyBpcyBhIGxpZ2h0IHZlcnNpb24gY2hlY2tib3hcbmNvbnN0IGNoZWNrYm94Qm94ID0gY3NzPFN3aXRjaGFibGVQcm9wcz5gXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hXaWR0aH1weDtcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmNoZWNrYm94SGVpZ2h0fXB4O1xuICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+XG4gICAgcHJvcHMuY2hlY2tlZCA/IHByb3BzLnRoZW1lLmNoZWNrYm94Qm94QmdkQ2hlY2tlZCA6IHByb3BzLnRoZW1lLmNoZWNrYm94Qm94QmdkfTtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuY2hlY2tib3hCb3hCZ2RDaGVja2VkIDogcHJvcHMudGhlbWUuY2hlY2tib3hCb3JkZXJDb2xvcn07XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29udGVudDogJyc7XG5gO1xuXG5jb25zdCBjaGVja2JveENoZWNrID0gY3NzPFN3aXRjaGFibGVQcm9wcz5gXG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHdoaXRlO1xuICB0b3A6IDRweDtcbiAgbGVmdDogM3B4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy5jaGVja2VkID8gMSA6IDApfTtcbiAgY29udGVudDogJyc7XG5gO1xuXG5jb25zdCBpbnB1dENoZWNrYm94ID0gY3NzYFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICBtYXJnaW4tbGVmdDogLSR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoTGFiZWxNYXJnaW59cHg7XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGVja2JveEJveH07XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hDaGVja307XG4gIH1cbmA7XG5cbmNvbnN0IGlucHV0UmFkaW8gPSBjc3NgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRDaGVja2JveH1cbiAgcGFkZGluZy1sZWZ0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvUmFkaXVzICogMiArIDh9cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaW5lLWhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAqIDJ9cHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIDpiZWZvcmUge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hCb3h9XG4gICAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9SYWRpdXMgKiAyfXB4O1xuICAgIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAqIDJ9cHg7XG4gICAgYm9yZGVyLXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0JvcmRlclJhZGl1c31weDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkfTtcbiAgICBib3JkZXItY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9Cb3JkZXJDb2xvcn07XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgIHRvcDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAtIHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzfXB4O1xuICAgIGxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9SYWRpdXMgLSBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1c31weDtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1cyAqIDJ9cHg7XG4gICAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzICogMn1weDtcbiAgICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzICogMn1weDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvbkJnZENvbG9yfTtcbiAgfVxuYDtcblxuY29uc3Qgc2Vjb25kYXJ5U3dpdGNoID0gY3NzPFN3aXRjaGFibGVQcm9wcz5gXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRTd2l0Y2h9XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja30gYmFja2dyb3VuZDogJHtwcm9wcyA9PlxuICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuc3dpdGNoVHJhY2tCZ2RBY3RpdmUgOiBwcm9wcy50aGVtZS5zZWNvbmRhcnlTd2l0Y2hUcmFja0JnZH07XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoQnV0dG9ufVxuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmNoZWNrZWQgPyBwcm9wcy50aGVtZS5zd2l0Y2hCdG5CZ2RBY3RpdmUgOiBwcm9wcy50aGVtZS5zZWNvbmRhcnlTd2l0Y2hCdG5CZ2R9O1xuICB9XG5gO1xuXG5jb25zdCBkcm9wZG93blNjcm9sbEJhciA9IGNzc2BcbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QmdkfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QmdkfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZH07XG4gIH1cblxuICA6dmVydGljYWw6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuYDtcblxuY29uc3QgZHJvcGRvd25TY3JvbGxCYXJMVCA9IGNzc2BcbiAgJHtkcm9wZG93blNjcm9sbEJhcn0gOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QmdkTFR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RCZ2RMVH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvckxUfTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZExUfTtcbiAgfVxuXG4gIDp2ZXJ0aWNhbDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbExUfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdEFuY2hvciA9IGNzc2BcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3J9O1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdEZvbnRTaXplfTtcbiAgbGluZS1oZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0TGluZUhlaWdodH1weDtcbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdEFuY2hvckxUID0gY3NzYFxuICAke2Ryb3Bkb3duTGlzdEFuY2hvcn1cbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JMVH07XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RTaXplID0gY3NzYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDExcHg7XG4gIHBhZGRpbmc6IDNweCA5cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGhlaWdodDogMzJweDtcbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdEl0ZW0gPSBjc3NgXG4gICR7ZHJvcGRvd25MaXN0U2l6ZX0gJi5ob3ZlcixcbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SGlnaGxpZ2h0Qmd9O1xuXG4gICAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RJdGVtTFQgPSBjc3NgXG4gICR7ZHJvcGRvd25MaXN0U2l6ZX1cbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yTFR9O1xuXG4gICYuaG92ZXIsXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbExUfTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnTFR9O1xuXG4gICAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3RDb2xvckxUfTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdEhlYWRlciA9IGNzc2BcbiAgZm9udC1zaXplOiAxMXB4O1xuICBwYWRkaW5nOiA1cHggOXB4O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdFNlY3Rpb24gPSBjc3NgXG4gIHBhZGRpbmc6IDAgMCA0cHggMDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdCA9IGNzc2BcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMjgwcHg7XG4gIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0U2hhZG93fTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuXG4gIC5saXN0X19zZWN0aW9uIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdFNlY3Rpb259O1xuICB9XG4gIC5saXN0X19oZWFkZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SGVhZGVyfTtcbiAgfVxuXG4gIC5saXN0X19pdGVtIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEl0ZW19O1xuICAgICR7ZHJvcGRvd25MaXN0SXRlbX07XG4gIH1cblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvcn07XG4gIH1cblxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duU2Nyb2xsQmFyfTtcbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdExUID0gY3NzYFxuICAke2Ryb3Bkb3duTGlzdH0gLmxpc3RfX2l0ZW0ge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbUxUfTtcbiAgfVxuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yTFR9O1xuICB9XG5cbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93blNjcm9sbEJhckxUfTtcbmA7XG5jb25zdCBzaWRlUGFuZWxTY3JvbGxCYXIgPSBjc3NgXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlUGFuZWxTY3JvbGxCYXJIZWlnaHR9cHg7XG4gICAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsU2Nyb2xsQmFyV2lkdGh9cHg7XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlUGFuZWxCZ307XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbEJnfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlUGFuZWxCZ307XG5cbiAgICA6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IHBhbmVsRHJvcGRvd25TY3JvbGxCYXIgPSBjc3NgXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogMTBweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgICA6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IHNjcm9sbEJhciA9IGNzc2BcbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZH1cblxuICAgIDp2ZXJ0aWNhbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICA6aG9yaXpvbnRhbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBtb2RhbFNjcm9sbEJhciA9IGNzc2BcbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjazpob3Jpem9udGFsIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgfVxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3JMVH07XG4gICAgYm9yZGVyOiA0cHggc29saWQgd2hpdGU7XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjOTY5ZGE5O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjp2ZXJ0aWNhbCB7XG4gICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3Jpem9udGFsIHtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgYm9yZGVyOiA0cHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCB0aGVtZSA9IHtcbiAgLi4uRElNRU5TSU9OUyxcbiAgLy8gdGVtcGxhdGVzXG4gIGlucHV0LFxuICBpbnB1dExULFxuICBpbmxpbmVJbnB1dCxcbiAgY2hpY2tsZXRlZElucHV0LFxuICBjaGlja2xldGVkSW5wdXRMVCxcbiAgY2hpY2tsZXRlZElucHV0Q29udGFpbmVyLFxuICBzZWNvbmRhcnlDaGlja2xldGVkSW5wdXQsXG5cbiAgYm9yZGVyQ29sb3IsXG4gIGJvcmRlckNvbG9yTFQsXG5cbiAgc2Vjb25kYXJ5SW5wdXQsXG4gIGRyb3Bkb3duU2Nyb2xsQmFyLFxuICBkcm9wZG93blNjcm9sbEJhckxULFxuICBkcm9wZG93bkxpc3QsXG4gIGRyb3Bkb3duTGlzdExULFxuICBkcm9wZG93bkxpc3RJdGVtLFxuICBkcm9wZG93bkxpc3RJdGVtTFQsXG4gIGRyb3Bkb3duTGlzdEFuY2hvcixcbiAgZHJvcGRvd25MaXN0QW5jaG9yTFQsXG4gIGRyb3Bkb3duTGlzdEhlYWRlcixcbiAgZHJvcGRvd25MaXN0U2VjdGlvbixcbiAgZHJvcGRvd25MaXN0U2hhZG93LFxuICBkcm9wZG93bldyYXBwZXJaLFxuICBkcm9wZG93bldhcHBlck1hcmdpbixcbiAgbW9kYWxTY3JvbGxCYXIsXG4gIHNjcm9sbEJhcixcbiAgc2lkZVBhbmVsU2Nyb2xsQmFyLFxuICBpbnB1dFN3aXRjaCxcbiAgc2Vjb25kYXJ5U3dpdGNoLFxuICBzd2l0Y2hUcmFjayxcbiAgc3dpdGNoQnV0dG9uLFxuICBpbnB1dENoZWNrYm94LFxuICBpbnB1dFJhZGlvLFxuICBjaGVja2JveEJveCxcbiAgY2hlY2tib3hDaGVjayxcblxuICAvLyBUcmFuc2l0aW9uc1xuICB0cmFuc2l0aW9uLFxuICB0cmFuc2l0aW9uRmFzdCxcbiAgdHJhbnNpdGlvblNsb3csXG5cbiAgLy8gc3R5bGVzXG4gIGFjdGl2ZUNvbG9yLFxuICBhY3RpdmVDb2xvckhvdmVyLFxuICBib3JkZXJSYWRpdXMsXG4gIGJveFNoYWRvdyxcbiAgZXJyb3JDb2xvcixcbiAgZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmcsXG4gIGRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnTFQsXG4gIGRyb3Bkb3duTGlzdEJnZCxcbiAgdG9vbGJhckl0ZW1CZ2RIb3ZlcixcbiAgdG9vbGJhckl0ZW1Cb3JkZXJIb3ZlcixcbiAgdG9vbGJhckl0ZW1JY29uSG92ZXIsXG4gIHRvb2xiYXJJdGVtQm9yZGVyUmFkZGl1cyxcbiAgZHJvcGRvd25MaXN0QmdkTFQsXG4gIGRyb3Bkb3duTGlzdEJvcmRlclRvcCxcbiAgZHJvcGRvd25MaXN0Qm9yZGVyVG9wTFQsXG4gIGRyb3Bkb3duTGlzdExpbmVIZWlnaHQsXG5cbiAgbGFiZWxDb2xvcixcbiAgbGFiZWxDb2xvckxULFxuICBsYWJlbEhvdmVyQ29sb3IsXG4gIG1hcFBhbmVsQmFja2dyb3VuZENvbG9yLFxuICBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvcixcblxuICAvLyBTZWxlY3RcbiAgc2VsZWN0QWN0aXZlQm9yZGVyQ29sb3IsXG4gIHNlbGVjdEJhY2tncm91bmQsXG4gIHNlbGVjdEJhY2tncm91bmRMVCxcbiAgc2VsZWN0QmFja2dyb3VuZEhvdmVyLFxuICBzZWxlY3RCYWNrZ3JvdW5kSG92ZXJMVCxcbiAgc2VsZWN0Qm9yZGVyLFxuICBzZWxlY3RCb3JkZXJDb2xvcixcbiAgc2VsZWN0Qm9yZGVyUmFkaXVzLFxuICBzZWxlY3RCb3JkZXJDb2xvckxULFxuICBzZWxlY3RDb2xvcixcbiAgc2VsZWN0Q29sb3JQbGFjZUhvbGRlcixcbiAgc2VsZWN0Q29sb3JQbGFjZUhvbGRlckxULFxuICBzZWxlY3RGb250U2l6ZSxcbiAgc2VsZWN0Rm9udFdlaWdodCxcbiAgc2VsZWN0Q29sb3JMVCxcbiAgc2VsZWN0Rm9udFdlaWdodEJvbGQsXG4gIHBhbmVsVGFiQ29sb3IsXG5cbiAgLy8gSW5wdXRcbiAgaW5wdXRCZ2QsXG4gIGlucHV0QmdkSG92ZXIsXG4gIGlucHV0QmdkQWN0aXZlLFxuICBpbnB1dEJnZEFjdGl2ZUxULFxuICBpbnB1dEJveEhlaWdodCxcbiAgaW5wdXRCb3hIZWlnaHRTbWFsbCxcbiAgaW5wdXRCb3hIZWlnaHRUaW55LFxuICBpbnB1dEJvcmRlckNvbG9yLFxuICBpbnB1dEJvcmRlckFjdGl2ZUNvbG9yLFxuICBpbnB1dEJvcmRlckhvdmVyQ29sb3IsXG4gIGlucHV0Qm9yZGVyUmFkaXVzLFxuICBpbnB1dENvbG9yLFxuICBpbnB1dFBhZGRpbmcsXG4gIGlucHV0UGFkZGluZ1NtYWxsLFxuICBpbnB1dFBhZGRpbmdUaW55LFxuICBpbnB1dEZvbnRTaXplLFxuICBpbnB1dEZvbnRTaXplU21hbGwsXG4gIGlucHV0Rm9udFdlaWdodCxcbiAgaW5wdXRQbGFjZWhvbGRlckNvbG9yLFxuICBpbnB1dFBsYWNlaG9sZGVyQ29sb3JMVCxcbiAgaW5wdXRQbGFjZWhvbGRlckZvbnRXZWlnaHQsXG4gIGlucHV0Qm94U2hhZG93LFxuICBpbnB1dEJveFNoYWRvd0FjdGl2ZSxcbiAgaW5wdXRCb3hTaGFkb3dBY3RpdmVMVCxcbiAgc2Vjb25kYXJ5SW5wdXRCZ2QsXG4gIHNlY29uZGFyeUlucHV0QmdkSG92ZXIsXG4gIHNlY29uZGFyeUlucHV0QmdkQWN0aXZlLFxuICBzZWNvbmRhcnlJbnB1dENvbG9yLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckFjdGl2ZUNvbG9yLFxuICBkcm9wZG93blNlbGVjdEhlaWdodCxcblxuICAvLyBTd2l0Y2hcbiAgc3dpdGNoV2lkdGgsXG4gIHN3aXRjaEhlaWdodCxcbiAgc3dpdGNoVHJhY2tCZ2QsXG4gIHN3aXRjaFRyYWNrQmdkQWN0aXZlLFxuICBzd2l0Y2hUcmFja0JvcmRlclJhZGl1cyxcbiAgc3dpdGNoQnRuQmdkLFxuICBzd2l0Y2hCdG5CZ2RBY3RpdmUsXG4gIHN3aXRjaEJ0bkJveFNoYWRvdyxcbiAgc3dpdGNoQnRuQm9yZGVyUmFkaXVzLFxuICBzd2l0Y2hCdG5XaWR0aCxcbiAgc3dpdGNoQnRuSGVpZ2h0LFxuICBzd2l0Y2hMYWJlbE1hcmdpbixcblxuICBzZWNvbmRhcnlTd2l0Y2hUcmFja0JnZCxcbiAgc2Vjb25kYXJ5U3dpdGNoQnRuQmdkLFxuXG4gIC8vIENoZWNrYm94XG4gIGNoZWNrYm94V2lkdGgsXG4gIGNoZWNrYm94SGVpZ2h0LFxuICBjaGVja2JveE1hcmdpbixcbiAgY2hlY2tib3hCb3JkZXJDb2xvcixcbiAgY2hlY2tib3hCb3JkZXJSYWRpdXMsXG4gIGNoZWNrYm94Qm9yZGVyQ29sb3JMVCxcbiAgY2hlY2tib3hCb3hCZ2QsXG4gIGNoZWNrYm94Qm94QmdkQ2hlY2tlZCxcblxuICAvLyBSYWRpb1xuICByYWRpb1JhZGl1cyxcbiAgcmFkaW9Cb3JkZXJSYWRpdXMsXG4gIHJhZGlvQm9yZGVyQ29sb3IsXG4gIHJhZGlvQnV0dG9uUmFkaXVzLFxuICByYWRpb0J1dHRvbkJnZENvbG9yLFxuXG4gIC8vIEJ1dHRvblxuICBidG5Gb250RmFtaWx5LFxuICBwcmltYXJ5QnRuQmdkLFxuICBwcmltYXJ5QnRuQWN0QmdkLFxuICBwcmltYXJ5QnRuQ29sb3IsXG4gIHByaW1hcnlCdG5BY3RDb2xvcixcbiAgcHJpbWFyeUJ0bkJnZEhvdmVyLFxuICBwcmltYXJ5QnRuUmFkaXVzLFxuICBwcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0LFxuICBwcmltYXJ5QnRuRm9udFNpemVTbWFsbCxcbiAgcHJpbWFyeUJ0bkZvbnRTaXplTGFyZ2UsXG4gIHByaW1hcnlCdG5Cb3JkZXIsXG5cbiAgc2Vjb25kYXJ5QnRuQmdkLFxuICBzZWNvbmRhcnlCdG5BY3RCZ2QsXG4gIHNlY29uZGFyeUJ0bkJnZEhvdmVyLFxuICBzZWNvbmRhcnlCdG5Db2xvcixcbiAgc2Vjb25kYXJ5QnRuQWN0Q29sb3IsXG4gIHNlY29uZGFyeUJ0bkJvcmRlcixcblxuICBuZWdhdGl2ZUJ0bkJnZCxcbiAgbmVnYXRpdmVCdG5BY3RCZ2QsXG4gIG5lZ2F0aXZlQnRuQmdkSG92ZXIsXG4gIG5lZ2F0aXZlQnRuQm9yZGVyLFxuICBuZWdhdGl2ZUJ0bkNvbG9yLFxuICBuZWdhdGl2ZUJ0bkFjdENvbG9yLFxuXG4gIGxpbmtCdG5CZ2QsXG4gIGxpbmtCdG5BY3RCZ2QsXG4gIGxpbmtCdG5Db2xvcixcbiAgbGlua0J0bkFjdENvbG9yLFxuICBsaW5rQnRuQWN0QmdkSG92ZXIsXG4gIGxpbmtCdG5Cb3JkZXIsXG5cbiAgZmxvYXRpbmdCdG5CZ2QsXG4gIGZsb2F0aW5nQnRuQWN0QmdkLFxuICBmbG9hdGluZ0J0bkJnZEhvdmVyLFxuICBmbG9hdGluZ0J0bkJvcmRlcixcbiAgZmxvYXRpbmdCdG5Cb3JkZXJIb3ZlcixcbiAgZmxvYXRpbmdCdG5Db2xvcixcbiAgZmxvYXRpbmdCdG5BY3RDb2xvcixcblxuICBjdGFCdG5CZ2QsXG4gIGN0YUJ0bkJnZEhvdmVyLFxuICBjdGFCdG5BY3RCZ2QsXG4gIGN0YUJ0bkNvbG9yLFxuICBjdGFCdG5BY3RDb2xvcixcblxuICBzZWxlY3Rpb25CdG5CZ2QsXG4gIHNlbGVjdGlvbkJ0bkFjdEJnZCxcbiAgc2VsZWN0aW9uQnRuQ29sb3IsXG4gIHNlbGVjdGlvbkJ0bkFjdENvbG9yLFxuICBzZWxlY3Rpb25CdG5CZ2RIb3ZlcixcbiAgc2VsZWN0aW9uQnRuQm9yZGVyLFxuICBzZWxlY3Rpb25CdG5Cb3JkZXJDb2xvcixcbiAgc2VsZWN0aW9uQnRuQm9yZGVyQWN0Q29sb3IsXG5cbiAgLy8gTW9kYWxcbiAgbW9kYWxUaXRsZUNvbG9yLFxuICBtb2RhbFRpdGxlRm9udFNpemUsXG4gIG1vZGFsVGl0bGVGb250U2l6ZVNtYWxsZXIsXG4gIG1vZGFsRm9vdGVyQmdkLFxuICBtb2RhbEltYWdlUGxhY2VIb2xkZXIsXG4gIG1vZGFsUGFkZGluZyxcblxuICBtb2RhbERpYWxvZ0JnZCxcbiAgbW9kYWxEaWFsb2dDb2xvcixcblxuICBtb2RhbExhdGVyYWxQYWRkaW5nLFxuICBtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmcsXG4gIG1vZGFsT3ZlckxheVosXG4gIG1vZGFsT3ZlcmxheUJnZCxcbiAgbW9kYWxDb250ZW50WixcbiAgbW9kYWxGb290ZXJaLFxuICBtb2RhbFRpdGxlWixcbiAgbW9kYWxCdXR0b25aLFxuICBtb2RhbERyb3Bkb3duQmFja2dyb3VuZCxcblxuICAvLyBTaWRlIFBhbmVsXG4gIHNpZGVQYW5lbEJnLFxuICBzaWRlUGFuZWxJbm5lclBhZGRpbmcsXG4gIHNpZGVCYXJDbG9zZUJ0bkJnZCxcbiAgc2lkZUJhckNsb3NlQnRuQ29sb3IsXG4gIHNpZGVCYXJDbG9zZUJ0bkJnZEhvdmVyLFxuICBzaWRlUGFuZWxIZWFkZXJCZyxcbiAgc2lkZVBhbmVsSGVhZGVyQm9yZGVyLFxuICBzaWRlUGFuZWxTY3JvbGxCYXJXaWR0aCxcbiAgc2lkZVBhbmVsU2Nyb2xsQmFySGVpZ2h0LFxuICBzaWRlUGFuZWxUaXRsZUZvbnRzaXplLFxuICBzaWRlUGFuZWxUaXRsZUxpbmVIZWlnaHQsXG4gIHBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzLFxuICBzaWRlUGFuZWxCb3JkZXIsXG4gIHNpZGVQYW5lbEJvcmRlckNvbG9yLFxuXG4gIGxheWVyQ29uZmlnR3JvdXBMYWJlbExhYmVsRm9udFNpemUsXG4gIGxheWVyQ29uZmlnR3JvdXBNYXJnaW5Cb3R0b20sXG4gIGxheWVyQ29uZmlnR3JvdXBQYWRkaW5nTGVmdCxcblxuICAvLyBTaWRlIFBhbmVsIFBhbmVsXG4gIGNoaWNrbGV0QmdkLFxuICBjaGlja2xldEJnZExULFxuICBwYW5lbEJhY2tncm91bmQsXG4gIHBhbmVsQ29udGVudEJhY2tncm91bmQsXG4gIHBhbmVsQmFja2dyb3VuZEhvdmVyLFxuICBwYW5lbEJhY2tncm91bmRMVCxcbiAgcGFuZWxUb2dnbGVNYXJnaW5SaWdodCxcbiAgcGFuZWxUb2dnbGVCb3R0b21QYWRkaW5nLFxuICBwYW5lbEJveFNoYWRvdyxcbiAgcGFuZWxCb3JkZXJSYWRpdXMsXG4gIHBhbmVsQm9yZGVyLFxuICBwYW5lbEJvcmRlckNvbG9yLFxuICBwYW5lbEJvcmRlckxULFxuICBwYW5lbEhlYWRlckljb24sXG4gIHBhbmVsSGVhZGVySWNvbkFjdGl2ZSxcbiAgcGFuZWxIZWFkZXJJY29uSG92ZXIsXG4gIHBhbmVsSGVhZGVySGVpZ2h0LFxuICBsYXllclBhbmVsSGVhZGVySGVpZ2h0LFxuICBwYW5lbERyb3Bkb3duU2Nyb2xsQmFyLFxuXG4gIGxheWVyVHlwZUljb25TaXplTCxcbiAgbGF5ZXJUeXBlSWNvblBkTCxcbiAgbGF5ZXJUeXBlSWNvblNpemVTTSxcblxuICBsYXllclBhbmVsVG9nZ2xlT3B0aW9uQ29sb3IsXG4gIGxheWVyUGFuZWxUb2dnbGVPcHRpb25Db2xvckFjdGl2ZSxcblxuICAvLyBUZXh0XG4gIGZvbnRGYW1pbHksXG4gIGZvbnRXZWlnaHQsXG4gIGZvbnRTaXplLFxuICBsaW5lSGVpZ2h0LFxuICB0ZXh0Q29sb3IsXG4gIHRleHRDb2xvckxULFxuICBkYXRhVGFibGVUZXh0Q29sb3IsXG4gIHRleHRDb2xvckhsLFxuICB0aXRsZVRleHRDb2xvcixcbiAgc3VidGV4dENvbG9yLFxuICBzdWJ0ZXh0Q29sb3JMVCxcbiAgc3VidGV4dENvbG9yQWN0aXZlLFxuICBwYW5lbFRvZ2dsZUJvcmRlckNvbG9yLFxuICBwYW5lbFRhYldpZHRoLFxuICB0ZXh0VHJ1bmNhdGUsXG4gIHRpdGxlQ29sb3JMVCxcbiAgdG9vbHRpcEJnLFxuICB0b29sdGlwQ29sb3IsXG4gIHRvb2x0aXBCb3hTaGFkb3csXG4gIHRvb2x0aXBGb250U2l6ZSxcbiAgbG9nb0NvbG9yLFxuXG4gIC8vIFNpZGVwYW5lbCBkaXZpZGVyXG4gIHNpZGVwYW5lbERpdmlkZXJCb3JkZXIsXG4gIHNpZGVwYW5lbERpdmlkZXJNYXJnaW4sXG4gIHNpZGVwYW5lbERpdmlkZXJIZWlnaHQsXG5cbiAgLy8gQm90dG9tIFBhbmVsXG4gIGJvdHRvbUlubmVyUGRTaWRlLFxuICBib3R0b21Jbm5lclBkVmVydCxcbiAgYm90dG9tUGFuZWxHYXAsXG4gIGJvdHRvbVdpZGdldFBhZGRpbmdUb3AsXG4gIGJvdHRvbVdpZGdldFBhZGRpbmdSaWdodCxcbiAgYm90dG9tV2lkZ2V0UGFkZGluZ0JvdHRvbSxcbiAgYm90dG9tV2lkZ2V0UGFkZGluZ0xlZnQsXG4gIGJvdHRvbVdpZGdldEJnZCxcblxuICAvLyBTbGlkZXJcbiAgc2xpZGVyQmFyQ29sb3IsXG4gIHNsaWRlckJhckJnZCxcbiAgc2xpZGVyQmFySG92ZXJDb2xvcixcbiAgc2xpZGVyQmFyUmFkaXVzLFxuICBzbGlkZXJCYXJIZWlnaHQsXG4gIHNsaWRlckhhbmRsZUhlaWdodCxcbiAgc2xpZGVySGFuZGxlV2lkdGgsXG4gIHNsaWRlckhhbmRsZUNvbG9yLFxuICBzbGlkZXJIYW5kbGVUZXh0Q29sb3IsXG4gIHNsaWRlckluYWN0aXZlQm9yZGVyQ29sb3IsXG4gIHNsaWRlckJvcmRlclJhZGl1cyxcbiAgc2xpZGVySGFuZGxlSG92ZXJDb2xvcixcbiAgc2xpZGVySGFuZGxlQWZ0ZXJDb250ZW50LFxuICBzbGlkZXJIYW5kbGVTaGFkb3csXG4gIHNsaWRlcklucHV0SGVpZ2h0LFxuICBzbGlkZXJJbnB1dFdpZHRoLFxuICBzbGlkZXJNYXJnaW5Ub3BJc1RpbWUsXG4gIHNsaWRlck1hcmdpblRvcCxcbiAgc2xpZGVyTWFyZ2luQm90dG9tLFxuXG4gIC8vIEdlb2NvZGVyXG4gIGdlb2NvZGVyV2lkdGgsXG4gIGdlb2NvZGVyVG9wLFxuICBnZW9jb2RlclJpZ2h0LFxuICBnZW9jb2RlcklucHV0SGVpZ2h0LFxuXG4gIC8vIFBsb3RcbiAgcmFuZ2VCcnVzaEJnZCxcbiAgaGlzdG9ncmFtRmlsbEluUmFuZ2UsXG4gIGhpc3RvZ3JhbUZpbGxPdXRSYW5nZSxcbiAgYXhpc0ZvbnRTaXplLFxuICBheGlzRm9udENvbG9yLFxuICB0aW1lVGl0bGVGb250U2l6ZSxcbiAgcmFuZ2VQbG90TWFyZ2luLFxuICByYW5nZVBsb3RNYXJnaW5MYXJnZSxcbiAgcmFuZ2VQbG90SCxcbiAgcmFuZ2VQbG90SExhcmdlLFxuICByYW5nZVBsb3RDb250YWluZXJILFxuICByYW5nZVBsb3RDb250YWluZXJITGFyZ2UsXG5cbiAgLy8gTm90aWZpY2F0aW9uc1xuICBub3RpZmljYXRpb25Db2xvcnMsXG4gIG5vdGlmaWNhdGlvblBhbmVsV2lkdGgsXG4gIG5vdGlmaWNhdGlvblBhbmVsSXRlbVdpZHRoLFxuICBub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQsXG5cbiAgLy8gRGF0YSBUYWJsZVxuICBoZWFkZXJSb3dIZWlnaHQsXG4gIHJvd0hlaWdodCxcbiAgaGVhZGVyUGFkZGluZ1RvcCxcbiAgaGVhZGVyUGFkZGluZ0JvdHRvbSxcbiAgY2VsbFBhZGRpbmdTaWRlLFxuICBlZGdlQ2VsbFBhZGRpbmdTaWRlLFxuICBjZWxsRm9udFNpemUsXG4gIGdyaWRQYWRkaW5nU2lkZSxcbiAgb3B0aW9uQnV0dG9uQ29sb3IsXG4gIGhlYWRlckNlbGxCYWNrZ3JvdW5kLFxuICBoZWFkZXJDZWxsQm9yZGVyQ29sb3IsXG4gIGhlYWRlckNlbGxJY29uQ29sb3IsXG4gIGNlbGxCb3JkZXJDb2xvcixcbiAgZXZlblJvd0JhY2tncm91bmQsXG4gIG9kZFJvd0JhY2tncm91bmQsXG4gIHBpbm5lZEdyaWRCb3JkZXJDb2xvcixcbiAgLy8gdGltZSBkaXNwbGF5XG4gIHRpbWVEaXNwbGF5Qm9yZGVyUmFkaXVzLFxuICB0aW1lRGlzcGxheUhlaWdodCxcbiAgdGltZURpc3BsYXlNaW5XaWR0aCxcbiAgdGltZURpc3BsYXlPcGFjaXR5LFxuICB0aW1lRGlzcGxheVBhZGRpbmcsXG5cbiAgLy8gZXhwb3J0IG1hcFxuICBleHBvcnRJbnRyYVNlY3Rpb25NYXJnaW4sXG5cbiAgLy8gQWN0aW9uIFBhbmVsXG4gIGFjdGlvblBhbmVsV2lkdGgsXG4gIGFjdGlvblBhbmVsSGVpZ2h0LFxuXG4gIC8vIEJyZWFrcG9pbnRzXG4gIGJyZWFrUG9pbnRzLFxuXG4gIC8vIHByb2dyZXNzYmFyXG4gIHByb2dyZXNzQmFyQ29sb3IsXG4gIHByb2dyZXNzQmFyVHJhY2tDb2xvcixcblxuICAvLyBsYXllckNvbmZpZ0dyb3VwTGFiZWxcbiAgbGF5ZXJDb25maWdHcm91cExhYmVsQm9yZGVyTGVmdCxcbiAgbGF5ZXJDb25maWdHcm91cExhYmVsTWFyZ2luLFxuICBsYXllckNvbmZpZ0dyb3VwTGFiZWxQYWRkaW5nLFxuICBsYXllckNvbmZpZ0dyb3VwQ29sb3IsXG5cbiAgLy8gbGF5ZXJDb25maWdHcm91cExhYmVsIGxhYmVsXG4gIGxheWVyQ29uZmlnR3JvdXBMYWJlbExhYmVsTWFyZ2luLFxuXG4gIC8vIFN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyXG4gIHN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyQm9yZGVyLFxuXG4gIC8vIGxheWVyQ29uZmlndXJhdG9yXG4gIGxheWVyQ29uZmlndXJhdG9yQm9yZGVyLFxuICBsYXllckNvbmZpZ3VyYXRvckJvcmRlckNvbG9yLFxuICBsYXllckNvbmZpZ3VyYXRvck1hcmdpbixcbiAgbGF5ZXJDb25maWd1cmF0b3JQYWRkaW5nLFxuXG4gIC8vIFN0eWxlZCB0b2tlblxuICBmaWVsZFRva2VuUmlnaHRNYXJnaW5cbn07XG5cbmV4cG9ydCBjb25zdCB0aGVtZUxUID0ge1xuICAuLi50aGVtZSxcbiAgLy8gdGVtcGxhdGVcbiAgYWN0aXZlQ29sb3I6IGFjdGl2ZUNvbG9yTFQsXG4gIGlucHV0OiBpbnB1dExULFxuICB0ZXh0Q29sb3I6IHRleHRDb2xvckxULFxuICBzaWRlUGFuZWxCZzogJyNGRkZGRkYnLFxuICBzZWxlY3RDb2xvcjogc2VsZWN0Q29sb3JMVCxcbiAgdGl0bGVUZXh0Q29sb3I6ICcjMDAwMDAwJyxcbiAgc2lkZVBhbmVsSGVhZGVyQmc6ICcjRjdGN0Y3JyxcbiAgc3VidGV4dENvbG9yQWN0aXZlOiBhY3RpdmVDb2xvckxULFxuICB0b29sdGlwQmc6ICcjMTg2OUI1JyxcbiAgdG9vbHRpcENvbG9yOiAnI0ZGRkZGRicsXG4gIGRyb3Bkb3duTGlzdEJnZDogJyNGRkZGRkYnLFxuICB0b29sYmFySXRlbUJnZEhvdmVyOiAnI0Y3RjdGNycsXG4gIHRleHRDb2xvckhsOiBhY3RpdmVDb2xvckxULFxuXG4gIGlucHV0QmdkOiAnI0Y3RjdGNycsXG4gIGlucHV0QmdkSG92ZXI6ICcjRkZGRkZGJyxcbiAgaW5wdXRCZ2RBY3RpdmU6ICcjRkZGRkZGJyxcbiAgaW5wdXRCZ2RBY3RpdmVMVDogJyNGRkZGRkYnLFxuICBkcm9wZG93bkxpc3RIaWdobGlnaHRCZzogJyNGMEYwRjAnLFxuICB0b29sYmFySXRlbUljb25Ib3ZlcjogYWN0aXZlQ29sb3JMVCxcbiAgcGFuZWxCYWNrZ3JvdW5kOiAnI0Y3RjdGNycsXG4gIHBhbmVsQ29udGVudEJhY2tncm91bmQ6ICcjRjdGN0Y3JyxcbiAgYm90dG9tV2lkZ2V0QmdkOiAnI0Y3RjdGNycsXG4gIHBhbmVsQmFja2dyb3VuZEhvdmVyOiAnI0Y3RjdGNycsXG4gIHBhbmVsQm9yZGVyQ29sb3I6ICcjRDNEOEUwJyxcbiAgcGFuZWxIZWFkZXJJY29uQWN0aXZlOiAnIzAwMDAwMCcsXG4gIHBhbmVsSGVhZGVySWNvbkhvdmVyOiAnIzAwMDAwMCcsXG4gIHNpZGVCYXJDbG9zZUJ0bkJnZDogJyNGN0Y3RjcnLFxuICBzaWRlQmFyQ2xvc2VCdG5Db2xvcjogdGV4dENvbG9yTFQsXG4gIHNpZGVCYXJDbG9zZUJ0bkJnZEhvdmVyOiAnI0Y3RjdGNycsXG5cbiAgc2Vjb25kYXJ5SW5wdXRCZ2Q6ICcjRjdGN0Y3JyxcbiAgc2Vjb25kYXJ5SW5wdXRCZ2RBY3RpdmU6ICcjRjdGN0Y3JyxcbiAgc2Vjb25kYXJ5SW5wdXRCZ2RIb3ZlcjogJyNGRkZGRkYnLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckFjdGl2ZUNvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUlucHV0Qm9yZGVyQ29sb3I6ICdub25lJyxcbiAgc2Vjb25kYXJ5SW5wdXRDb2xvcjogJyM1NDU0NTQnLFxuXG4gIGNoaWNrbGV0QmdkOiAnI0Y3RjdGNycsXG4gIG1hcFBhbmVsQmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXG4gIG1hcFBhbmVsSGVhZGVyQmFja2dyb3VuZENvbG9yOiAnI0Y3RjdGNycsXG5cbiAgc2xpZGVyQmFyQ29sb3I6ICcjQTBBN0I0JyxcbiAgc2xpZGVyQmFyQmdkOiAnI0QzRDhFMCcsXG4gIHNsaWRlckhhbmRsZUNvbG9yOiAnI0Y3RjdGNycsXG4gIHNsaWRlckluYWN0aXZlQm9yZGVyQ29sb3I6ICcjRjdGN0Y3JyxcbiAgc2xpZGVySGFuZGxlVGV4dENvbG9yOiAnI0Y3RjdGNycsXG4gIHNsaWRlckhhbmRsZUhvdmVyQ29sb3I6ICcjRjdGN0Y3JyxcblxuICBzdWJ0ZXh0Q29sb3I6IHN1YnRleHRDb2xvckxULFxuICBzd2l0Y2hCdG5CZ2Q6ICcjRjdGN0Y3JyxcbiAgc2Vjb25kYXJ5U3dpdGNoQnRuQmdkOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeVN3aXRjaFRyYWNrQmdkOiAnI0QzRDhFMCcsXG4gIHN3aXRjaEJ0bkJnZEFjdGl2ZTogJyNGN0Y3RjcnLFxuICBzd2l0Y2hUcmFja0JnZDogJyNEM0Q4RTAnLFxuICBzd2l0Y2hUcmFja0JnZEFjdGl2ZTogYWN0aXZlQ29sb3JMVCxcblxuICAvLyBidXR0b24gc3dpdGNoIGJhY2tncm91bmQgYW5kIGhvdmVyIGNvbG9yXG4gIHByaW1hcnlCdG5CZ2Q6IHByaW1hcnlCdG5BY3RCZ2QsXG4gIHByaW1hcnlCdG5BY3RCZ2Q6IHByaW1hcnlCdG5CZ2QsXG4gIHByaW1hcnlCdG5CZ2RIb3ZlcjogcHJpbWFyeUJ0bkJnZCxcblxuICBzZWNvbmRhcnlCdG5CZ2Q6IHNlY29uZGFyeUJ0bkFjdEJnZCxcbiAgc2Vjb25kYXJ5QnRuQWN0QmdkOiBzZWNvbmRhcnlCdG5CZ2QsXG4gIHNlY29uZGFyeUJ0bkJnZEhvdmVyOiBzZWNvbmRhcnlCdG5CZ2QsXG5cbiAgZmxvYXRpbmdCdG5CZ2Q6ICcjRjdGN0Y3JyxcbiAgZmxvYXRpbmdCdG5BY3RCZ2Q6ICcjRjdGN0Y3JyxcbiAgZmxvYXRpbmdCdG5CZ2RIb3ZlcjogJyNGN0Y3RjcnLFxuICBmbG9hdGluZ0J0bkNvbG9yOiBzdWJ0ZXh0Q29sb3IsXG4gIGZsb2F0aW5nQnRuQWN0Q29sb3I6IGFjdGl2ZUNvbG9yTFQsXG5cbiAgbGlua0J0bkFjdENvbG9yOiB0ZXh0Q29sb3JMVCxcblxuICByYW5nZUJydXNoQmdkOiAnI0QzRDhFMCcsXG4gIGhpc3RvZ3JhbUZpbGxJblJhbmdlOiBhY3RpdmVDb2xvckxULFxuICBoaXN0b2dyYW1GaWxsT3V0UmFuZ2U6ICcjQTBBN0I0JyxcbiAgYXhpc0ZvbnRDb2xvcjogdGV4dENvbG9yTFRcbn07XG5cbmV4cG9ydCBjb25zdCB0aGVtZUJTID0ge1xuICAuLi50aGVtZSxcbiAgYWN0aXZlQ29sb3I6ICcjRTJFMkUyJyxcbiAgZHJvcGRvd25MaXN0QmdkOiAnI0ZGRkZGRicsXG4gIHRvb2xiYXJJdGVtQmdkSG92ZXI6ICcjRjdGN0Y3JyxcbiAgZHJvcGRvd25MaXN0Qm9yZGVyVG9wOiAnbm9uZScsXG4gIGRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnOiAnI0Y2RjZGNicsXG4gIHRvb2xiYXJJdGVtSWNvbkhvdmVyOiAnIzAwMDAwMCcsXG4gIGlucHV0QmdkOiAnI0UyRTJFMicsXG4gIGlucHV0QmdkQWN0aXZlOiAnI0UyRTJFMicsXG4gIGlucHV0QmdkSG92ZXI6ICdpbmhlcml0JyxcbiAgaW5wdXRCb3JkZXJBY3RpdmVDb2xvcjogJyMwMDAwMDAnLFxuICBpbnB1dENvbG9yOiAnIzAwMDAwMCcsXG4gIGNoaWNrbGV0QmdkOiAnI0UyRTJFMicsXG4gIHBhbmVsQmFja2dyb3VuZDogJyNGRkZGRkYnLFxuICBwYW5lbEJhY2tncm91bmRIb3ZlcjogJyNFRUVFRUUnLFxuICBwYW5lbENvbnRlbnRCYWNrZ3JvdW5kOiAnI0ZGRkZGRicsXG4gIGJvdHRvbVdpZGdldEJnZDogJyNGN0Y3RjcnLFxuICBwYW5lbEhlYWRlckljb25BY3RpdmU6ICcjMDAwMDAwJyxcbiAgcGFuZWxIZWFkZXJJY29uSG92ZXI6ICcjMDAwMDAwJyxcbiAgcGFuZWxCb3JkZXJDb2xvcjogJyNFMkUyRTInLFxuICBwcmltYXJ5QnRuQmdkOiAnI0UyRTJFMicsXG4gIHByaW1hcnlCdG5CZ2RIb3ZlcjogJyMzMzMzMzMnLFxuICBwcmltYXJ5QnRuQ29sb3I6ICcjMDAwMDAwJyxcbiAgc2Vjb25kYXJ5QnRuQWN0QmdkOiAnI0VFRUVFRScsXG4gIHNlY29uZGFyeUJ0bkFjdENvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUJ0bkJnZDogJyNFMkUyRTInLFxuICBzZWNvbmRhcnlCdG5CZ2RIb3ZlcjogJyNDQkNCQ0InLFxuICBjdG5CdG5CZ2Q6ICcjRTJFMkUyJyxcbiAgY3RuQnRuQmdkSG92ZXI6ICczMzMzMzMnLFxuICBjdG5CdG5Db2xvcjogJyMwMDAwMDAnLFxuICBjdG5CdG5BY3RDb2xvcjogJyMwMDAwMDAnLFxuXG4gIHNpZGVCYXJDbG9zZUJ0bkJnZDogJyNFMkUyRTInLFxuICBzaWRlQmFyQ2xvc2VCdG5Db2xvcjogJyMwMDAwMDAnLFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2RIb3ZlcjogJyNGRkZGRkYnLFxuXG4gIGZsb2F0aW5nQnRuQmdkOiAnI0ZGRkZGRicsXG4gIGZsb2F0aW5nQnRuQWN0QmdkOiAnI0VFRUVFRScsXG4gIGZsb2F0aW5nQnRuQmdkSG92ZXI6ICcjRUVFRUVFJyxcbiAgZmxvYXRpbmdCdG5Db2xvcjogJyM3NTc1NzUnLFxuICBmbG9hdGluZ0J0bkFjdENvbG9yOiAnIzAwMDAwMCcsXG5cbiAgc2Vjb25kYXJ5QnRuQ29sb3I6ICcjMDAwMDAwJyxcbiAgc2Vjb25kYXJ5SW5wdXRCZ2Q6ICcjRjZGNkY2JyxcbiAgc2Vjb25kYXJ5SW5wdXRCZ2RBY3RpdmU6ICcjRjZGNkY2JyxcbiAgc2Vjb25kYXJ5SW5wdXRCZ2RIb3ZlcjogJyNGNkY2RjYnLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckFjdGl2ZUNvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUlucHV0Qm9yZGVyQ29sb3I6ICdub25lJyxcbiAgc2Vjb25kYXJ5SW5wdXRDb2xvcjogJyM1NDU0NTQnLFxuICBzaWRlUGFuZWxCZzogJyNGNkY2RjYnLFxuICBzaWRlUGFuZWxIZWFkZXJCZzogJyNGRkZGRkYnLFxuICBzdWJ0ZXh0Q29sb3I6ICcjQUZBRkFGJyxcbiAgcGFuZWxUYWJDb2xvcjogJyNBRkFGQUYnLFxuICBzdWJ0ZXh0Q29sb3JBY3RpdmU6ICcjMDAwMDAwJyxcbiAgdGV4dENvbG9yOiAnIzAwMDAwMCcsXG4gIHRleHRDb2xvckhsOiAnIzU0NTQ1NCcsXG4gIG1hcFBhbmVsQmFja2dyb3VuZENvbG9yOiAnI0Y2RjZGNicsXG4gIG1hcFBhbmVsSGVhZGVyQmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXG4gIHRpdGxlVGV4dENvbG9yOiAnIzAwMDAwMCcsXG4gIHN3aXRjaEJ0bkJnZEFjdGl2ZTogJyMwMDAwMDAnLFxuICBzd2l0Y2hCdG5CZ2Q6ICcjRkZGRkZGJyxcbiAgc3dpdGNoVHJhY2tCZ2RBY3RpdmU6ICcjRTJFMkUyJyxcbiAgc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2Q6ICcjRTJFMkUyJyxcbiAgc3dpdGNoVHJhY2tCZ2Q6ICcjRTJFMkUyJyxcbiAgc2Vjb25kYXJ5U3dpdGNoQnRuQmdkOiAnI0ZGRkZGRicsXG4gIGhpc3RvZ3JhbUZpbGxJblJhbmdlOiAnIzAwMDAwMCcsXG4gIGhpc3RvZ3JhbUZpbGxPdXRSYW5nZTogJyNFMkUyRTInLFxuICByYW5nZUJydXNoQmdkOiAnI0UyRTJFMicsXG4gIHNsaWRlckJhckJnZDogJyNFMkUyRTInLFxuICBzbGlkZXJIYW5kbGVDb2xvcjogJyNGRkZGRkYnLFxuICBzbGlkZXJJbmFjdGl2ZUJvcmRlckNvbG9yOiAnI0ZGRkZGRicsXG4gIHNsaWRlckhhbmRsZVRleHRDb2xvcjogJyNGRkZGRkYnLFxu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