@jsenv/core 26.0.1 → 27.0.0-alpha.2

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 (465) hide show
  1. package/main.js +17 -24
  2. package/package.json +35 -71
  3. package/readme.md +30 -37
  4. package/src/build/build.js +737 -0
  5. package/src/build/build_urls_generator.js +64 -0
  6. package/src/build/inject_version_mappings.js +62 -0
  7. package/src/build/plugins/bundle_js_module/jsenv_plugin_bundle_js_module.js +225 -0
  8. package/src/build/plugins/minify_html/jsenv_plugin_minify_html.js +30 -0
  9. package/src/build/plugins/minify_js/jsenv_plugin_minify_js.js +47 -0
  10. package/src/dev/plugins/autoreload/babel_plugin_metadata_import_meta_hot.js +98 -0
  11. package/src/dev/plugins/autoreload/client/autoreload_preference.js +11 -0
  12. package/src/dev/plugins/autoreload/client/event_source_client.js +186 -0
  13. package/src/{internal/dev_server/event_source_client → dev/plugins/autoreload/client}/event_source_connection.js +21 -25
  14. package/src/dev/plugins/autoreload/client/import_meta_hot.js +80 -0
  15. package/src/dev/plugins/autoreload/client/reload.js +101 -0
  16. package/src/dev/plugins/autoreload/client/url_helpers.js +20 -0
  17. package/src/dev/plugins/autoreload/html_hot_dependencies.js +156 -0
  18. package/src/dev/plugins/autoreload/jsenv_plugin_autoreload.js +374 -0
  19. package/src/dev/plugins/autoreload/sse_service.js +149 -0
  20. package/src/dev/plugins/explorer/client/explorer.html +607 -0
  21. package/src/{internal → dev/plugins/explorer/client}/jsenv.png +0 -0
  22. package/src/dev/plugins/explorer/jsenv_plugin_explorer.js +74 -0
  23. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/animation/toolbar_animation.js +0 -0
  24. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/eventsource/eventsource.css +2 -2
  25. package/src/dev/plugins/toolbar/client/eventsource/toolbar_eventsource.js +57 -0
  26. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/execution/execution.css +0 -0
  27. package/src/dev/plugins/toolbar/client/execution/toolbar_execution.js +88 -0
  28. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/focus/focus.css +0 -0
  29. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/focus/toolbar_focus.js +0 -0
  30. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/jsenv_logo.svg +0 -0
  31. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/notification/toolbar_notification.js +0 -0
  32. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/responsive/overflow_menu.css +0 -0
  33. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/responsive/toolbar_responsive.js +0 -0
  34. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/settings/settings.css +0 -0
  35. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/settings/toolbar_settings.js +1 -0
  36. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/theme/jsenv_theme.css +1 -15
  37. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/theme/light_theme.css +0 -17
  38. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/theme/toolbar_theme.js +0 -0
  39. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar.html +40 -199
  40. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar_injector.js +8 -28
  41. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar_main.css +0 -24
  42. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar_main.js +10 -56
  43. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/tooltip/tooltip.css +1 -1
  44. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/tooltip/tooltip.js +0 -0
  45. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/animation.js +0 -0
  46. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/dom.js +0 -0
  47. package/src/{internal/browser_utils → dev/plugins/toolbar/client/util}/fetch_using_xhr.js +0 -0
  48. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/fetching.js +2 -4
  49. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/iframe_to_parent_href.js +0 -0
  50. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/jsenv_logger.js +0 -0
  51. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/preferences.js +0 -0
  52. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/responsive.js +0 -0
  53. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/util.js +0 -0
  54. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/variant/variant.js +0 -0
  55. package/src/dev/plugins/toolbar/jsenv_plugin_toolbar.js +62 -0
  56. package/src/dev/start_dev_server.js +105 -0
  57. package/src/execute/execute.js +132 -0
  58. package/src/execute/run.js +208 -0
  59. package/src/execute/runtimes/browsers/chromium.js +8 -0
  60. package/src/execute/runtimes/browsers/firefox.js +7 -0
  61. package/src/execute/runtimes/browsers/from_playwright.js +464 -0
  62. package/src/{browser_runtimes.js → execute/runtimes/browsers/webkit.js} +4 -18
  63. package/src/{internal/node_launcher/child_process_options.js → execute/runtimes/node/child_exec_options.js} +25 -36
  64. package/src/{internal/node_launcher/node_controllable_file.mjs → execute/runtimes/node/controllable_file.mjs} +1 -18
  65. package/src/{internal/node_launcher/node_controllable_process.js → execute/runtimes/node/controlled_process.js} +128 -150
  66. package/src/execute/runtimes/node/exec_options.js +44 -0
  67. package/src/{internal/node_launcher → execute/runtimes/node}/kill_process_tree.js +3 -1
  68. package/src/execute/runtimes/node/node_process.js +92 -0
  69. package/src/execute/runtimes/node/node_worker_thread.js +28 -0
  70. package/src/omega/core_plugins/babel/babel_helper/babel_helper_directory.js +29 -0
  71. package/src/{internal/compile_server/js → omega/core_plugins/babel/babel_helper}/babel_plugin_babel_helpers_as_jsenv_imports.js +15 -19
  72. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/.eslintrc.cjs +0 -0
  73. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/AsyncGenerator/AsyncGenerator.js +0 -0
  74. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/AwaitValue/AwaitValue.js +0 -0
  75. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/applyDecoratorDescriptor/applyDecoratorDescriptor.js +0 -0
  76. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/arrayLikeToArray/arrayLikeToArray.js +0 -0
  77. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/arrayWithHoles/arrayWithHoles.js +0 -0
  78. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/arrayWithoutHoles/arrayWithoutHoles.js +0 -0
  79. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/assertThisInitialized/assertThisInitialized.js +0 -0
  80. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/asyncGeneratorDelegate/asyncGeneratorDelegate.js +0 -0
  81. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/asyncIterator/asyncIterator.js +0 -0
  82. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/asyncToGenerator/asyncToGenerator.js +0 -0
  83. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/awaitAsyncGenerator/awaitAsyncGenerator.js +0 -0
  84. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classApplyDescriptorDestructureSet/classApplyDescriptorDestructureSet.js +0 -0
  85. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classApplyDescriptorGet/classApplyDescriptorGet.js +0 -0
  86. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classApplyDescriptorSet/classApplyDescriptorSet.js +0 -0
  87. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classCallCheck/classCallCheck.js +0 -0
  88. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classCheckPrivateStaticAccess/classCheckPrivateStaticAccess.js +0 -0
  89. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classCheckPrivateStaticFieldDescriptor/classCheckPrivateStaticFieldDescriptor.js +0 -0
  90. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classExtractFieldDescriptor/classExtractFieldDescriptor.js +0 -0
  91. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classNameTDZError/classNameTDZError.js +0 -0
  92. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldDestructureSet/classPrivateFieldDestructureSet.js +0 -0
  93. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldGet/classPrivateFieldGet.js +0 -0
  94. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldLooseBase/classPrivateFieldLooseBase.js +0 -0
  95. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldLooseKey/classPrivateFieldLooseKey.js +0 -0
  96. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldSet/classPrivateFieldSet.js +0 -0
  97. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateMethodGet/classPrivateMethodGet.js +0 -0
  98. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateMethodSet/classPrivateMethodSet.js +0 -0
  99. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateFieldSpecGet/classStaticPrivateFieldSpecGet.js +0 -0
  100. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateFieldSpecSet/classStaticPrivateFieldSpecSet.js +0 -0
  101. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateMethodGet/classStaticPrivateMethodGet.js +0 -0
  102. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateMethodSet/classStaticPrivateMethodSet.js +0 -0
  103. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/construct/construct.js +0 -0
  104. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createClass/createClass.js +0 -0
  105. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createForOfIteratorHelper/createForOfIteratorHelper.js +0 -0
  106. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createForOfIteratorHelperLoose/createForOfIteratorHelperLoose.js +0 -0
  107. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createRawReactElement/createRawReactElement.js +0 -0
  108. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createSuper/createSuper.js +0 -0
  109. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/decorate/decorate.js +0 -0
  110. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/defaults/defaults.js +0 -0
  111. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/defineEnumerableProperties/defineEnumerableProperties.js +0 -0
  112. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/defineProperty/defineProperty.js +0 -0
  113. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/extends/extends.js +0 -0
  114. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/get/get.js +0 -0
  115. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/getPrototypeOf/getPrototypeOf.js +0 -0
  116. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/inherits/inherits.js +0 -0
  117. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/inheritsLoose/inheritsLoose.js +0 -0
  118. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/initializerDefineProperty/initializerDefineProperty.js +0 -0
  119. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/initializerWarningHelper/initializerWarningHelper.js +0 -0
  120. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/instanceof/instanceof.js +0 -0
  121. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/interopRequireDefault/interopRequireDefault.js +0 -0
  122. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/interopRequireWildcard/interopRequireWildcard.js +0 -0
  123. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/isNativeFunction/isNativeFunction.js +0 -0
  124. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/isNativeReflectConstruct/isNativeReflectConstruct.js +0 -0
  125. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/iterableToArray/iterableToArray.js +0 -0
  126. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/iterableToArrayLimit/iterableToArrayLimit.js +0 -0
  127. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/iterableToArrayLimitLoose/iterableToArrayLimitLoose.js +0 -0
  128. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/jsx/jsx.js +0 -0
  129. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/maybeArrayLike/maybeArrayLike.js +0 -0
  130. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/newArrowCheck/newArrowCheck.js +0 -0
  131. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/nonIterableRest/nonIterableRest.js +0 -0
  132. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/nonIterableSpread/nonIterableSpread.js +0 -0
  133. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectDestructuringEmpty/objectDestructuringEmpty.js +0 -0
  134. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectSpread/objectSpread.js +0 -0
  135. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectSpread2/objectSpread2.js +0 -0
  136. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectWithoutProperties/objectWithoutProperties.js +0 -0
  137. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js +0 -0
  138. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/possibleConstructorReturn/possibleConstructorReturn.js +0 -0
  139. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/readOnlyError/readOnlyError.js +0 -0
  140. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/readme.md +0 -0
  141. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/set/set.js +0 -0
  142. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/setPrototypeOf/setPrototypeOf.js +0 -0
  143. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/skipFirstGeneratorNext/skipFirstGeneratorNext.js +0 -0
  144. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/slicedToArray/slicedToArray.js +0 -0
  145. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/slicedToArrayLoose/slicedToArrayLoose.js +0 -0
  146. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/superPropBase/superPropBase.js +0 -0
  147. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/taggedTemplateLiteral/taggedTemplateLiteral.js +0 -0
  148. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/taggedTemplateLiteralLoose/taggedTemplateLiteralLoose.js +0 -0
  149. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/tdz/tdz.js +0 -0
  150. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/temporalRef/temporalRef.js +0 -0
  151. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/temporalUndefined/temporalUndefined.js +0 -0
  152. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toArray/toArray.js +0 -0
  153. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toConsumableArray/toConsumableArray.js +0 -0
  154. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toPrimitive/toPrimitive.js +0 -0
  155. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toPropertyKey/toPropertyKey.js +0 -0
  156. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/typeof/typeof.js +0 -0
  157. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/unsupportedIterableToArray/unsupportedIterableToArray.js +0 -0
  158. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/wrapAsyncGenerator/wrapAsyncGenerator.js +0 -0
  159. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/wrapNativeSuper/wrapNativeSuper.js +0 -0
  160. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/wrapRegExp/wrapRegExp.js +0 -0
  161. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/writeOnlyError/writeOnlyError.js +0 -0
  162. package/src/omega/core_plugins/babel/global_this/babel_plugin_global_this_as_jsenv_import.js +35 -0
  163. package/{helpers/global-this/global-this.js → src/omega/core_plugins/babel/global_this/client/global_this.js} +0 -0
  164. package/src/omega/core_plugins/babel/helpers/babel_plugin_structure.js +187 -0
  165. package/src/{internal/features → omega/core_plugins/babel/helpers}/babel_plugins_compatibility.js +1 -24
  166. package/src/omega/core_plugins/babel/jsenv_plugin_babel.js +97 -0
  167. package/src/omega/core_plugins/babel/new_stylesheet/babel_plugin_new_stylesheet_as_jsenv_import.js +117 -0
  168. package/src/omega/core_plugins/babel/new_stylesheet/client/.eslintrc.cjs +24 -0
  169. package/{helpers/new_stylesheet → src/omega/core_plugins/babel/new_stylesheet/client}/new_stylesheet.js +0 -0
  170. package/src/omega/core_plugins/babel/regenerator_runtime/babel_plugin_regenerator_runtime_as_jsenv_import.js +34 -0
  171. package/{helpers/regenerator-runtime/regenerator-runtime.js → src/omega/core_plugins/babel/regenerator_runtime/client/regenerator_runtime.js} +0 -0
  172. package/src/omega/core_plugins/commonjs_globals/jsenv_plugin_commonjs_globals.js +169 -0
  173. package/src/omega/core_plugins/file_urls/jsenv_plugin_file_urls.js +67 -0
  174. package/src/omega/core_plugins/filesystem_magic/jsenv_plugin_filesystem_magic.js +58 -0
  175. package/src/{internal/browser_client → omega/core_plugins/html_supervisor/client}/error_in_document.js +10 -16
  176. package/src/{internal/browser_client → omega/core_plugins/html_supervisor/client}/error_in_notification.js +0 -0
  177. package/src/omega/core_plugins/html_supervisor/client/html_supervisor_installer.js +168 -0
  178. package/src/omega/core_plugins/html_supervisor/client/html_supervisor_setup.js +77 -0
  179. package/src/{internal/browser_client → omega/core_plugins/html_supervisor/client}/perf_browser.js +0 -0
  180. package/src/{internal/runtime_client → omega/core_plugins/html_supervisor/client}/uneval_exception.js +0 -0
  181. package/src/omega/core_plugins/html_supervisor/jsenv_plugin_html_supervisor.js +233 -0
  182. package/src/omega/core_plugins/import_assertions/helpers/babel_plugin_metadata_import_assertions.js +98 -0
  183. package/src/{internal/building/import_assertions → omega/core_plugins/import_assertions/helpers}/json_module.js +3 -2
  184. package/src/omega/core_plugins/import_assertions/helpers/text_module.js +6 -0
  185. package/src/omega/core_plugins/import_assertions/jsenv_plugin_import_assertions.js +211 -0
  186. package/src/omega/core_plugins/import_meta_scenarios/jsenv_plugin_import_meta_scenarios.js +80 -0
  187. package/src/omega/core_plugins/importmap/jsenv_plugin_importmap.js +212 -0
  188. package/src/omega/core_plugins/inline/client/inline_content.js +6 -0
  189. package/src/omega/core_plugins/inline/jsenv_plugin_data_urls.js +70 -0
  190. package/src/omega/core_plugins/inline/jsenv_plugin_inline.js +13 -0
  191. package/src/omega/core_plugins/inline/jsenv_plugin_inline_query_param.js +42 -0
  192. package/src/omega/core_plugins/inline/jsenv_plugin_js_and_css_inside_html.js +142 -0
  193. package/src/omega/core_plugins/inline/jsenv_plugin_new_inline_content.js +210 -0
  194. package/src/omega/core_plugins/leading_slash/jsenv_plugin_leading_slash.js +12 -0
  195. package/src/omega/core_plugins/node_esm_resolution/jsenv_plugin_node_esm_resolution.js +77 -0
  196. package/src/omega/core_plugins/url_resolution/jsenv_plugin_url_resolution.js +28 -0
  197. package/src/omega/core_plugins/url_version/jsenv_plugin_url_version.js +50 -0
  198. package/src/omega/core_plugins.js +39 -0
  199. package/src/omega/errors.js +168 -0
  200. package/src/omega/file_url_converter.js +63 -0
  201. package/src/omega/kitchen.js +777 -0
  202. package/src/omega/omega_server.js +129 -0
  203. package/src/omega/plugin_controller.js +240 -0
  204. package/src/omega/runtime_support/default_runtime_support.js +13 -0
  205. package/src/omega/runtime_support/features_compatibility.js +91 -0
  206. package/src/omega/runtime_support/runtime_support.js +20 -0
  207. package/src/omega/server/file_service.js +155 -0
  208. package/src/omega/server/user_agent.js +22 -0
  209. package/src/omega/url_graph/url_graph_load.js +68 -0
  210. package/src/omega/url_graph/url_graph_report.js +151 -0
  211. package/src/omega/url_graph/url_graph_sort.js +29 -0
  212. package/src/omega/url_graph/url_info_transformations.js +161 -0
  213. package/src/omega/url_graph.js +132 -0
  214. package/src/omega/url_mentions/css_url_mentions.js +63 -0
  215. package/src/omega/url_mentions/html_url_mentions.js +185 -0
  216. package/src/omega/url_mentions/js_module_url_mentions.js +91 -0
  217. package/src/omega/url_mentions/parse_url_mentions.js +37 -0
  218. package/src/omega/url_mentions/worker_classic_url_mentions.js +37 -0
  219. package/src/{internal/executing → test}/execute_plan.js +154 -211
  220. package/src/{execute_test_plan.js → test/execute_test_plan.js} +26 -81
  221. package/src/{internal/executing → test}/execution_colors.js +0 -0
  222. package/src/{internal/executing → test}/execution_steps.js +2 -8
  223. package/src/{internal/executing → test}/gc.js +0 -0
  224. package/src/test/logs_file_execution.js +223 -0
  225. package/dist/browser_client/asset-manifest.json +0 -4
  226. package/dist/browser_client/browser_client_fb33eaa4.js +0 -5320
  227. package/dist/browser_client/browser_client_fb33eaa4.js.map +0 -1089
  228. package/dist/build_manifest.js +0 -12
  229. package/dist/compile_proxy/asset-manifest.json +0 -4
  230. package/dist/compile_proxy/compile_proxy.html__inline__20_651d1e7b.js.map +0 -343
  231. package/dist/compile_proxy/compile_proxy_62f952c4.html +0 -2245
  232. package/dist/event_source_client/asset-manifest.json +0 -4
  233. package/dist/event_source_client/event_source_client_69f48287.js +0 -354
  234. package/dist/event_source_client/event_source_client_69f48287.js.map +0 -128
  235. package/dist/redirector/asset-manifest.json +0 -4
  236. package/dist/redirector/redirector.html__inline__12_171e07b4.js.map +0 -349
  237. package/dist/redirector/redirector_8117ec92.html +0 -2290
  238. package/dist/toolbar/asset-manifest.json +0 -13
  239. package/dist/toolbar/assets/compilation.css_7421bd55.map +0 -12
  240. package/dist/toolbar/assets/eventsource.css_c0c71e7b.map +0 -12
  241. package/dist/toolbar/assets/execution.css_f3377c10.map +0 -12
  242. package/dist/toolbar/assets/focus.css_896f3e45.map +0 -12
  243. package/dist/toolbar/assets/light_theme.css_5bff0336.map +0 -12
  244. package/dist/toolbar/assets/overflow_menu.css_9a0fc3d8.map +0 -12
  245. package/dist/toolbar/assets/settings.css_942b5a9e.map +0 -12
  246. package/dist/toolbar/assets/toolbar_main.css_b1c67dd7.map +0 -28
  247. package/dist/toolbar/assets/tooltip.css_a94a8bdd.map +0 -12
  248. package/dist/toolbar/toolbar_b0c9100c.html +0 -4976
  249. package/dist/toolbar/toolbar_main_f54c1bb0.js.map +0 -776
  250. package/dist/toolbar_injector/asset-manifest.json +0 -5
  251. package/dist/toolbar_injector/assets/jsenv_logo_192011c2.svg +0 -95
  252. package/dist/toolbar_injector/toolbar_injector_65b501eb.js +0 -976
  253. package/dist/toolbar_injector/toolbar_injector_65b501eb.js.map +0 -294
  254. package/helpers/import-meta/import-meta-url-commonjs.js +0 -9
  255. package/helpers/import-meta/import-meta-url-global.js +0 -54
  256. package/src/build_project.js +0 -336
  257. package/src/commonjs_to_js_module.js +0 -180
  258. package/src/dev_server.js +0 -302
  259. package/src/execute.js +0 -184
  260. package/src/import_using_child_process.js +0 -68
  261. package/src/internal/browser_client/browser_client.js +0 -220
  262. package/src/internal/browser_client/browser_client_factory.js +0 -144
  263. package/src/internal/browser_client/browser_error_stack_remap.js +0 -43
  264. package/src/internal/browser_client/browser_system.js +0 -216
  265. package/src/internal/browser_client/module_namespace_transfer.js +0 -90
  266. package/src/internal/browser_detection/browser_detection.js +0 -65
  267. package/src/internal/browser_detection/detect_android.js +0 -13
  268. package/src/internal/browser_detection/detect_chrome.js +0 -28
  269. package/src/internal/browser_detection/detect_edge.js +0 -13
  270. package/src/internal/browser_detection/detect_electron.js +0 -1
  271. package/src/internal/browser_detection/detect_firefox.js +0 -17
  272. package/src/internal/browser_detection/detect_internet_explorer.js +0 -14
  273. package/src/internal/browser_detection/detect_ios.js +0 -19
  274. package/src/internal/browser_detection/detect_opera.js +0 -27
  275. package/src/internal/browser_detection/detect_safari.js +0 -13
  276. package/src/internal/browser_detection/user_agent_data.js +0 -25
  277. package/src/internal/browser_detection/util.js +0 -13
  278. package/src/internal/browser_launcher/browser_runtime_profile.js +0 -81
  279. package/src/internal/browser_launcher/execute_html_file.js +0 -355
  280. package/src/internal/browser_launcher/from_playwright.js +0 -320
  281. package/src/internal/browser_launcher/page_errors_and_logs.js +0 -77
  282. package/src/internal/browser_utils/fetch_and_eval.js +0 -27
  283. package/src/internal/browser_utils/fetch_and_eval_using_script.js +0 -47
  284. package/src/internal/browser_utils/fetch_browser.js +0 -34
  285. package/src/internal/browser_utils/fetch_json.js +0 -7
  286. package/src/internal/building/build_logs.js +0 -134
  287. package/src/internal/building/build_stats.js +0 -100
  288. package/src/internal/building/build_url_generator.js +0 -153
  289. package/src/internal/building/build_using_rollup.js +0 -359
  290. package/src/internal/building/css/apply_post_css.js +0 -55
  291. package/src/internal/building/css/jsenv_parse_css.js +0 -260
  292. package/src/internal/building/css/move_css_urls.js +0 -44
  293. package/src/internal/building/css/parse_css_urls.js +0 -38
  294. package/src/internal/building/css/postcss_plugin_url_visitor.js +0 -245
  295. package/src/internal/building/css/replace_css_urls.js +0 -68
  296. package/src/internal/building/global_format/es_to_system.js +0 -34
  297. package/src/internal/building/html/html_node_mutations.js +0 -29
  298. package/src/internal/building/html/html_scan.js +0 -70
  299. package/src/internal/building/html/jsenv_parse_html.js +0 -813
  300. package/src/internal/building/html/minify_html.js +0 -7
  301. package/src/internal/building/import_assertions/css_module.js +0 -43
  302. package/src/internal/building/import_references.js +0 -80
  303. package/src/internal/building/importmap/jsenv_parse_importmap.js +0 -28
  304. package/src/internal/building/js/babel_plugin_inline_worker_imports.js +0 -96
  305. package/src/internal/building/js/jsenv_parse_js.js +0 -122
  306. package/src/internal/building/js/minify_js.js +0 -33
  307. package/src/internal/building/js/transform_worker.js +0 -55
  308. package/src/internal/building/json/jsenv_parse_json.js +0 -11
  309. package/src/internal/building/parse_ressource.js +0 -207
  310. package/src/internal/building/ressource_builder.js +0 -1098
  311. package/src/internal/building/ressource_builder_util.js +0 -194
  312. package/src/internal/building/rollup_plugin_jsenv.js +0 -1965
  313. package/src/internal/building/sort_pathnames.js +0 -10
  314. package/src/internal/building/sourcemap/sourcemap_loader.js +0 -70
  315. package/src/internal/building/svg/jsenv_parse_svg.js +0 -112
  316. package/src/internal/building/url_fetcher.js +0 -85
  317. package/src/internal/building/url_loader.js +0 -127
  318. package/src/internal/building/url_trace.js +0 -229
  319. package/src/internal/building/url_versioning/resolve_import_url_helper.js +0 -12
  320. package/src/internal/building/url_versioning/url_versioning.js +0 -65
  321. package/src/internal/building/webmanifest/jsenv_parse_webmanifest.js +0 -48
  322. package/src/internal/compile_server/commonjs/rollup_plugin_commonjs_named_exports.js +0 -187
  323. package/src/internal/compile_server/compile_file.js +0 -273
  324. package/src/internal/compile_server/compile_server.js +0 -519
  325. package/src/internal/compile_server/compiled_file_service.js +0 -264
  326. package/src/internal/compile_server/html/html_ast.js +0 -534
  327. package/src/internal/compile_server/html/html_source_file_service.js +0 -453
  328. package/src/internal/compile_server/html/jsenv_compile_html.js +0 -674
  329. package/src/internal/compile_server/importmap/jsenv_compile_importmap.js +0 -28
  330. package/src/internal/compile_server/js/ansi_to_html.js +0 -9
  331. package/src/internal/compile_server/js/babelHelper.js +0 -145
  332. package/src/internal/compile_server/js/babel_parse_error.js +0 -9
  333. package/src/internal/compile_server/js/babel_plugin_global_this_as_jsenv_import.js +0 -34
  334. package/src/internal/compile_server/js/babel_plugin_import_assertions.js +0 -121
  335. package/src/internal/compile_server/js/babel_plugin_import_metadata.js +0 -18
  336. package/src/internal/compile_server/js/babel_plugin_import_visitor.js +0 -84
  337. package/src/internal/compile_server/js/babel_plugin_new_stylesheet_as_jsenv_import.js +0 -113
  338. package/src/internal/compile_server/js/babel_plugin_proxy_external_imports.js +0 -31
  339. package/src/internal/compile_server/js/babel_plugin_regenerator_runtime_as_jsenv_import.js +0 -48
  340. package/src/internal/compile_server/js/babel_plugin_replace_expressions.js +0 -101
  341. package/src/internal/compile_server/js/babel_plugin_systemjs_prepend.js +0 -23
  342. package/src/internal/compile_server/js/babel_plugin_transform_import_meta.js +0 -134
  343. package/src/internal/compile_server/js/babel_plugins.js +0 -37
  344. package/src/internal/compile_server/js/generateBabelHelper.js +0 -36
  345. package/src/internal/compile_server/js/js_transformer.js +0 -195
  346. package/src/internal/compile_server/js/jsenv_compile_js.js +0 -62
  347. package/src/internal/compile_server/js/load_babel_plugin_map_from_file.js +0 -49
  348. package/src/internal/compile_server/jsenv_directory/comparison_utils.js +0 -27
  349. package/src/internal/compile_server/jsenv_directory/compilation_result.js +0 -243
  350. package/src/internal/compile_server/jsenv_directory/compilation_result_from_build.js +0 -184
  351. package/src/internal/compile_server/jsenv_directory/compile_asset.js +0 -24
  352. package/src/internal/compile_server/jsenv_directory/compile_context.js +0 -60
  353. package/src/internal/compile_server/jsenv_directory/compile_profile.js +0 -217
  354. package/src/internal/compile_server/jsenv_directory/file_lock_registry.js +0 -24
  355. package/src/internal/compile_server/jsenv_directory/file_lock_registry.test.js +0 -47
  356. package/src/internal/compile_server/jsenv_directory/fs_optimized_for_cache.js +0 -57
  357. package/src/internal/compile_server/jsenv_directory/jsenv_directory.js +0 -183
  358. package/src/internal/compile_server/jsenv_directory/reuse_or_create_compiled_file.js +0 -269
  359. package/src/internal/compile_server/jsenv_directory/update_compile_cache.js +0 -131
  360. package/src/internal/compile_server/jsenv_directory/validate_compile_cache.js +0 -264
  361. package/src/internal/compile_server/sse_service/sse_service.js +0 -369
  362. package/src/internal/coverage/babel_plugin_instrument.js +0 -90
  363. package/src/internal/coverage/coverage_reporter_html_directory.js +0 -37
  364. package/src/internal/coverage/coverage_reporter_json_file.js +0 -22
  365. package/src/internal/coverage/coverage_reporter_text_log.js +0 -20
  366. package/src/internal/coverage/empty_coverage_factory.js +0 -70
  367. package/src/internal/coverage/file_by_file_coverage.js +0 -28
  368. package/src/internal/coverage/istanbul_coverage_composition.js +0 -28
  369. package/src/internal/coverage/istanbul_coverage_map_from_coverage.js +0 -16
  370. package/src/internal/coverage/list_files_not_covered.js +0 -20
  371. package/src/internal/coverage/missing_coverage.js +0 -46
  372. package/src/internal/coverage/report_to_coverage.js +0 -198
  373. package/src/internal/coverage/v8_and_istanbul.js +0 -38
  374. package/src/internal/coverage/v8_coverage_composition.js +0 -23
  375. package/src/internal/coverage/v8_coverage_from_directory.js +0 -86
  376. package/src/internal/coverage/v8_coverage_to_istanbul.js +0 -100
  377. package/src/internal/data_url.js +0 -54
  378. package/src/internal/dev_server/event_source_client/event_source_client.js +0 -63
  379. package/src/internal/dev_server/event_source_client/file_changes.js +0 -82
  380. package/src/internal/dev_server/event_source_client/livereload_preference.js +0 -13
  381. package/src/internal/dev_server/exploring/exploring.css +0 -237
  382. package/src/internal/dev_server/exploring/exploring.html +0 -79
  383. package/src/internal/dev_server/exploring/exploring.js +0 -243
  384. package/src/internal/dev_server/exploring/fetch_exploring_json.js +0 -19
  385. package/src/internal/dev_server/toolbar/compilation/compilation.css +0 -23
  386. package/src/internal/dev_server/toolbar/compilation/toolbar_compilation.js +0 -202
  387. package/src/internal/dev_server/toolbar/eventsource/toolbar_eventsource.js +0 -83
  388. package/src/internal/dev_server/toolbar/execution/toolbar_execution.js +0 -91
  389. package/src/internal/error_stack_remap/install_error_stack_remapping.js +0 -142
  390. package/src/internal/error_stack_remap/remap_call_site.js +0 -315
  391. package/src/internal/error_stack_remap/remap_stack.js +0 -218
  392. package/src/internal/error_stack_remap/stringify_stack.js +0 -9
  393. package/src/internal/executing/launch_and_execute.js +0 -458
  394. package/src/internal/executing/logs_file_execution.js +0 -160
  395. package/src/internal/executing/logs_plan_summary.js +0 -144
  396. package/src/internal/features/browser_feature_detection/browser_feature_detect_dynamic_import.js +0 -20
  397. package/src/internal/features/browser_feature_detection/browser_feature_detect_import_assertions_css.js +0 -23
  398. package/src/internal/features/browser_feature_detection/browser_feature_detect_import_assertions_json.js +0 -25
  399. package/src/internal/features/browser_feature_detection/browser_feature_detect_importmap.js +0 -37
  400. package/src/internal/features/browser_feature_detection/browser_feature_detect_new_stylesheet.js +0 -9
  401. package/src/internal/features/browser_feature_detection/browser_feature_detect_top_level_await.js +0 -14
  402. package/src/internal/features/browser_feature_detection/browser_feature_detection.js +0 -89
  403. package/src/internal/features/browser_feature_detection/compile_proxy.html +0 -27
  404. package/src/internal/features/browser_feature_detection/execute_with_script_module.js +0 -24
  405. package/src/internal/features/features_compat_from_runtime.js +0 -38
  406. package/src/internal/features/features_compat_from_runtime_support.js +0 -31
  407. package/src/internal/features/features_compatibility.js +0 -37
  408. package/src/internal/features/node_feature_detection/feature_detect_dynamic_import.mjs +0 -5
  409. package/src/internal/features/node_feature_detection/feature_detect_top_level_await.mjs +0 -1
  410. package/src/internal/features/node_feature_detection/node_feature_detect_dynamic_import.js +0 -5
  411. package/src/internal/features/node_feature_detection/node_feature_detect_top_level_await.js +0 -16
  412. package/src/internal/features/node_feature_detection/node_feature_detection.js +0 -66
  413. package/src/internal/fetching.js +0 -28
  414. package/src/internal/import_resolution/default_extension.js +0 -40
  415. package/src/internal/import_resolution/import_resolver_importmap.js +0 -64
  416. package/src/internal/import_resolution/import_resolver_node.js +0 -254
  417. package/src/internal/import_resolution/importmap_default.js +0 -37
  418. package/src/internal/jsenv_builds.js +0 -19
  419. package/src/internal/jsenv_params_assertions.js +0 -12
  420. package/src/internal/jsenv_remote_directory.js +0 -156
  421. package/src/internal/logs/byte.js +0 -10
  422. package/src/internal/logs/byte_as_file_size.js +0 -9
  423. package/src/internal/logs/ms_as_duration.js +0 -12
  424. package/src/internal/memoize.js +0 -24
  425. package/src/internal/node_launcher/eval_source.js +0 -6
  426. package/src/internal/node_launcher/fetch_source.js +0 -8
  427. package/src/internal/node_launcher/node_error_stack_remap.js +0 -22
  428. package/src/internal/node_launcher/node_execution_dynamic_import.js +0 -75
  429. package/src/internal/node_launcher/node_execution_performance.js +0 -67
  430. package/src/internal/node_launcher/node_execution_systemjs.js +0 -125
  431. package/src/internal/node_launcher/node_runtime_report.js +0 -77
  432. package/src/internal/node_launcher/node_system.js +0 -192
  433. package/src/internal/node_launcher/perf_node.js +0 -13
  434. package/src/internal/node_launcher/process_options.js +0 -46
  435. package/src/internal/node_launcher/value_install.js +0 -14
  436. package/src/internal/origin_directory_converter.js +0 -62
  437. package/src/internal/promise_race.js +0 -19
  438. package/src/internal/redirector/redirector.html +0 -40
  439. package/src/internal/regexp_escape.js +0 -34
  440. package/src/internal/require.js +0 -3
  441. package/src/internal/response_validation.js +0 -130
  442. package/src/internal/runtime_client/module_registration.js +0 -207
  443. package/src/internal/runtime_client/s.js +0 -864
  444. package/src/internal/runtime_client/s.js.md +0 -1
  445. package/src/internal/runtime_support/jsenv_runtime_support.js +0 -15
  446. package/src/internal/runtime_support/runtime_support.js +0 -70
  447. package/src/internal/semantic_versioning/compare_versions.js +0 -28
  448. package/src/internal/semantic_versioning/highest_version.js +0 -11
  449. package/src/internal/semantic_versioning/is_above.js +0 -5
  450. package/src/internal/semantic_versioning/is_below.js +0 -5
  451. package/src/internal/semantic_versioning/is_equal.js +0 -3
  452. package/src/internal/semantic_versioning/lowest_version.js +0 -11
  453. package/src/internal/semantic_versioning/version_from_value.js +0 -42
  454. package/src/internal/sourcemap_utils.js +0 -112
  455. package/src/internal/template_string_escape.js +0 -20
  456. package/src/internal/url_conversion.js +0 -313
  457. package/src/internal/url_utils.js +0 -33
  458. package/src/internal/url_utils.test.js +0 -39
  459. package/src/internal/windows_file_path_utils.js +0 -16
  460. package/src/jsenv_file_urls.js +0 -35
  461. package/src/jsenv_service_worker_finalizer.js +0 -55
  462. package/src/json_to_js_module.js +0 -13
  463. package/src/node_runtime.js +0 -227
  464. package/src/require_using_child_process.js +0 -67
  465. package/src/text_to_js_module.js +0 -13
@@ -1,776 +0,0 @@
1
- {
2
- "version": 3,
3
- "file": "toolbar_main.js",
4
- "sources": [
5
- "../../helpers/babel/arrayLikeToArray/arrayLikeToArray.js",
6
- "../../helpers/babel/arrayWithoutHoles/arrayWithoutHoles.js",
7
- "../../helpers/babel/iterableToArray/iterableToArray.js",
8
- "../../helpers/babel/unsupportedIterableToArray/unsupportedIterableToArray.js",
9
- "../../helpers/babel/nonIterableSpread/nonIterableSpread.js",
10
- "../../helpers/babel/toConsumableArray/toConsumableArray.js",
11
- "../../helpers/babel/typeof/typeof.js",
12
- "../../node_modules/@jsenv/filesystem/src/urlIsInsideOf.js",
13
- "../../node_modules/@jsenv/filesystem/src/internal/getCommonPathname.js",
14
- "../../node_modules/@jsenv/filesystem/src/internal/pathnameToParentPathname.js",
15
- "../../node_modules/@jsenv/filesystem/src/urlToRelativeUrl.js",
16
- "../../helpers/babel/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js",
17
- "../../helpers/babel/objectWithoutProperties/objectWithoutProperties.js",
18
- "../../src/internal/dev_server/toolbar/util/dom.js",
19
- "../../src/internal/dev_server/toolbar/util/animation.js",
20
- "../../src/internal/dev_server/toolbar/focus/toolbar_focus.js",
21
- "../../src/internal/dev_server/toolbar/util/iframe_to_parent_href.js",
22
- "../../src/internal/dev_server/toolbar/util/preferences.js",
23
- "../../src/internal/dev_server/toolbar/tooltip/tooltip.js",
24
- "../../src/internal/dev_server/toolbar/variant/variant.js",
25
- "../../src/internal/dev_server/toolbar/settings/toolbar_settings.js",
26
- "../../helpers/babel/defineProperty/defineProperty.js",
27
- "../../helpers/babel/objectSpread2/objectSpread2.js",
28
- "../../src/internal/dev_server/toolbar/notification/toolbar_notification.js",
29
- "../../src/internal/dev_server/toolbar/theme/toolbar_theme.js",
30
- "../../src/internal/dev_server/toolbar/animation/toolbar_animation.js",
31
- "../../src/internal/dev_server/toolbar/util/responsive.js",
32
- "../../src/internal/dev_server/toolbar/execution/toolbar_execution.js",
33
- "../../src/internal/browser_utils/fetch_using_xhr.js",
34
- "../../src/internal/browser_utils/fetch_browser.js",
35
- "../../src/internal/browser_utils/fetch_json.js",
36
- "../../src/internal/browser_detection/user_agent_data.js",
37
- "../../src/internal/browser_detection/util.js",
38
- "../../src/internal/browser_detection/detect_android.js",
39
- "../../src/internal/browser_detection/detect_internet_explorer.js",
40
- "../../src/internal/browser_detection/detect_opera.js",
41
- "../../src/internal/browser_detection/detect_edge.js",
42
- "../../src/internal/browser_detection/detect_firefox.js",
43
- "../../src/internal/browser_detection/detect_chrome.js",
44
- "../../src/internal/browser_detection/detect_safari.js",
45
- "../../src/internal/browser_detection/detect_electron.js",
46
- "../../src/internal/browser_detection/detect_ios.js",
47
- "../../src/internal/browser_detection/browser_detection.js",
48
- "../../src/internal/features/browser_feature_detection/execute_with_script_module.js",
49
- "../../src/internal/features/browser_feature_detection/browser_feature_detect_importmap.js",
50
- "../../src/internal/features/browser_feature_detection/browser_feature_detect_dynamic_import.js",
51
- "../../src/internal/features/browser_feature_detection/browser_feature_detect_top_level_await.js",
52
- "../../src/internal/features/browser_feature_detection/browser_feature_detect_import_assertions_json.js",
53
- "../../src/internal/features/browser_feature_detection/browser_feature_detect_import_assertions_css.js",
54
- "../../src/internal/features/browser_feature_detection/browser_feature_detect_new_stylesheet.js",
55
- "../../src/internal/features/browser_feature_detection/browser_feature_detection.js",
56
- "../../src/internal/dev_server/toolbar/compilation/toolbar_compilation.js",
57
- "../../src/internal/dev_server/toolbar/eventsource/toolbar_eventsource.js",
58
- "../../src/internal/dev_server/toolbar/responsive/toolbar_responsive.js",
59
- "../../src/internal/dev_server/toolbar/toolbar_main.js"
60
- ],
61
- "sourcesContent": [
62
- "/* eslint-disable no-eq-null, eqeqeq */\nexport default function arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length\n var arr2 = new Array(len)\n for (var i = 0; i < len; i++) arr2[i] = arr[i]\n return arr2\n}\n",
63
- "import arrayLikeToArray from \"../arrayLikeToArray/arrayLikeToArray.js\"\n\n// eslint-disable-next-line consistent-return\nexport default (arr) => {\n if (Array.isArray(arr)) return arrayLikeToArray(arr)\n}\n",
64
- "export default function _iterableToArray(iter) {\n if (\n (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null) ||\n iter[\"@@iterator\"] != null\n )\n return Array.from(iter)\n}\n",
65
- "/* eslint-disable consistent-return */\nimport arrayLikeToArray from \"../arrayLikeToArray/arrayLikeToArray.js\"\n\nexport default function unsupportedIterableToArray(o, minLen) {\n if (!o) return\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen)\n var n = Object.prototype.toString.call(o).slice(8, -1)\n if (n === \"Object\" && o.constructor) n = o.constructor.name\n if (n === \"Map\" || n === \"Set\") return Array.from(o)\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))\n return arrayLikeToArray(o, minLen)\n}\n",
66
- "export default () => {\n throw new TypeError(\n \"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\",\n )\n}\n",
67
- "import arrayWithoutHoles from \"../arrayWithoutHoles/arrayWithoutHoles.js\"\nimport iterableToArray from \"../iterableToArray/iterableToArray.js\"\nimport unsupportedIterableToArray from \"../unsupportedIterableToArray/unsupportedIterableToArray.js\"\nimport nonIterableSpread from \"../nonIterableSpread/nonIterableSpread.js\"\n\nexport default (arr) =>\n arrayWithoutHoles(arr) ||\n iterableToArray(arr) ||\n unsupportedIterableToArray(arr) ||\n nonIterableSpread()\n",
68
- "const nativeTypeOf = (obj) => typeof obj\n\nconst customTypeOf = (obj) => {\n return obj &&\n typeof Symbol === \"function\" &&\n obj.constructor === Symbol &&\n obj !== Symbol.prototype\n ? \"symbol\"\n : typeof obj\n}\n\nexport default typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\"\n ? nativeTypeOf\n : customTypeOf\n",
69
- "export const urlIsInsideOf = (url, otherUrl) => {\n const urlObject = new URL(url)\n const otherUrlObject = new URL(otherUrl)\n\n if (urlObject.origin !== otherUrlObject.origin) {\n return false\n }\n\n const urlPathname = urlObject.pathname\n const otherUrlPathname = otherUrlObject.pathname\n if (urlPathname === otherUrlPathname) {\n return false\n }\n\n const isInside = urlPathname.startsWith(otherUrlPathname)\n return isInside\n}\n",
70
- "export const getCommonPathname = (pathname, otherPathname) => {\n const firstDifferentCharacterIndex = findFirstDifferentCharacterIndex(\n pathname,\n otherPathname,\n )\n\n // pathname and otherpathname are exactly the same\n if (firstDifferentCharacterIndex === -1) {\n return pathname\n }\n\n const commonString = pathname.slice(0, firstDifferentCharacterIndex + 1)\n\n // the first different char is at firstDifferentCharacterIndex\n if (pathname.charAt(firstDifferentCharacterIndex) === \"/\") {\n return commonString\n }\n\n if (otherPathname.charAt(firstDifferentCharacterIndex) === \"/\") {\n return commonString\n }\n\n const firstDifferentSlashIndex = commonString.lastIndexOf(\"/\")\n return pathname.slice(0, firstDifferentSlashIndex + 1)\n}\n\nconst findFirstDifferentCharacterIndex = (string, otherString) => {\n const maxCommonLength = Math.min(string.length, otherString.length)\n let i = 0\n while (i < maxCommonLength) {\n const char = string.charAt(i)\n const otherChar = otherString.charAt(i)\n if (char !== otherChar) {\n return i\n }\n i++\n }\n if (string.length === otherString.length) {\n return -1\n }\n // they differ at maxCommonLength\n return maxCommonLength\n}\n",
71
- "export const pathnameToParentPathname = (pathname) => {\n const slashLastIndex = pathname.lastIndexOf(\"/\")\n if (slashLastIndex === -1) {\n return \"/\"\n }\n\n return pathname.slice(0, slashLastIndex + 1)\n}\n",
72
- "import { getCommonPathname } from \"./internal/getCommonPathname.js\"\nimport { pathnameToParentPathname } from \"./internal/pathnameToParentPathname.js\"\n\nexport const urlToRelativeUrl = (url, baseUrl) => {\n const urlObject = new URL(url)\n const baseUrlObject = new URL(baseUrl)\n\n if (urlObject.protocol !== baseUrlObject.protocol) {\n const urlAsString = String(url)\n return urlAsString\n }\n\n if (\n urlObject.username !== baseUrlObject.username ||\n urlObject.password !== baseUrlObject.password ||\n urlObject.host !== baseUrlObject.host\n ) {\n const afterUrlScheme = String(url).slice(urlObject.protocol.length)\n return afterUrlScheme\n }\n\n const { pathname, hash, search } = urlObject\n if (pathname === \"/\") {\n const baseUrlRessourceWithoutLeadingSlash = baseUrlObject.pathname.slice(1)\n return baseUrlRessourceWithoutLeadingSlash\n }\n\n const basePathname = baseUrlObject.pathname\n const commonPathname = getCommonPathname(pathname, basePathname)\n if (!commonPathname) {\n const urlAsString = String(url)\n return urlAsString\n }\n\n const specificPathname = pathname.slice(commonPathname.length)\n const baseSpecificPathname = basePathname.slice(commonPathname.length)\n if (baseSpecificPathname.includes(\"/\")) {\n const baseSpecificParentPathname =\n pathnameToParentPathname(baseSpecificPathname)\n const relativeDirectoriesNotation = baseSpecificParentPathname.replace(\n /.*?\\//g,\n \"../\",\n )\n const relativeUrl = `${relativeDirectoriesNotation}${specificPathname}${search}${hash}`\n return relativeUrl\n }\n\n const relativeUrl = `${specificPathname}${search}${hash}`\n return relativeUrl\n}\n",
73
- "export default (source, excluded) => {\n if (source === null) return {}\n var target = {}\n var sourceKeys = Object.keys(source)\n var key\n var i\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i]\n if (excluded.indexOf(key) >= 0) continue\n target[key] = source[key]\n }\n return target\n}\n",
74
- "import objectWithoutPropertiesLoose from \"../objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js\"\n\nexport default (source, excluded) => {\n if (source === null) return {}\n\n var target = objectWithoutPropertiesLoose(source, excluded)\n var key\n var i\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source)\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i]\n if (excluded.indexOf(key) >= 0) continue\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue\n target[key] = source[key]\n }\n }\n return target\n}\n",
75
- "export const updateIframeOverflowOnParentWindow = () => {\n if (!window.parent) {\n // can happen while parent iframe reloads\n return\n }\n\n const aTooltipIsOpened =\n document.querySelector(\"[data-tooltip-visible]\") ||\n document.querySelector(\"[data-tooltip-auto-visible]\")\n const settingsAreOpened = document.querySelector(\"#settings[data-active]\")\n\n if (aTooltipIsOpened || settingsAreOpened) {\n enableIframeOverflowOnParentWindow()\n } else {\n disableIframeOverflowOnParentWindow()\n }\n}\n\nlet iframeOverflowEnabled = false\nconst enableIframeOverflowOnParentWindow = () => {\n if (iframeOverflowEnabled) return\n iframeOverflowEnabled = true\n\n const iframe = getToolbarIframe()\n const transitionDuration = iframe.style.transitionDuration\n setStyles(iframe, { \"height\": \"100%\", \"transition-duration\": \"0ms\" })\n if (transitionDuration) {\n setTimeout(() => {\n setStyles(iframe, { \"transition-duration\": transitionDuration })\n })\n }\n}\n\nconst disableIframeOverflowOnParentWindow = () => {\n if (!iframeOverflowEnabled) return\n iframeOverflowEnabled = false\n\n const iframe = getToolbarIframe()\n const transitionDuration = iframe.style.transitionDuration\n setStyles(iframe, { \"height\": \"40px\", \"transition-duration\": \"0ms\" })\n if (transitionDuration) {\n setTimeout(() => {\n setStyles(iframe, { \"transition-duration\": transitionDuration })\n })\n }\n}\n\nexport const getToolbarIframe = () => {\n const iframes = Array.from(window.parent.document.querySelectorAll(\"iframe\"))\n return iframes.find((iframe) => iframe.contentWindow === window)\n}\n\nexport const forceHideElement = (element) => {\n element.setAttribute(\"data-force-hide\", \"\")\n}\n\nexport const removeForceHideElement = (element) => {\n element.removeAttribute(\"data-force-hide\")\n}\n\nexport const setStyles = (element, styles) => {\n const elementStyle = element.style\n const restoreStyles = Object.keys(styles).map((styleName) => {\n let restore\n if (styleName in elementStyle) {\n const currentStyle = elementStyle[styleName]\n restore = () => {\n elementStyle[styleName] = currentStyle\n }\n } else {\n restore = () => {\n delete elementStyle[styleName]\n }\n }\n\n elementStyle[styleName] = styles[styleName]\n\n return restore\n })\n return () => {\n restoreStyles.forEach((restore) => restore())\n }\n}\n\nexport const setAttributes = (element, attributes) => {\n Object.keys(attributes).forEach((name) => {\n element.setAttribute(name, attributes[name])\n })\n}\n\nexport const getDocumentScroll = () => {\n return {\n x: document.documentElement.scrollLeft,\n y: document.documentElement.scrollTop,\n }\n}\n\nexport const toolbarSectionIsActive = (element) => {\n return element.hasAttribute(\"data-active\")\n}\n\nexport const activateToolbarSection = (element) => {\n element.setAttribute(\"data-active\", \"\")\n}\n\nexport const deactivateToolbarSection = (element) => {\n element.removeAttribute(\"data-active\")\n}\n",
76
- "import { setStyles } from \"./dom.js\"\n\nconst animateFallback = () => {\n return Promise.resolve()\n}\n\nconst animateNative = (node, keyframes, { signal, ...options } = {}) => {\n const animation = node.animate(keyframes, options)\n if (signal) {\n signal.addEventListener(\"abort\", () => {\n animation.cancel()\n })\n }\n return new Promise((resolve) => {\n animation.onfinish = resolve\n })\n}\n\nexport const canUseAnimation = () =>\n typeof HTMLElement.prototype.animate === \"function\"\n\nexport const animateElement = canUseAnimation()\n ? animateNative\n : animateFallback\n\nexport const fadeIn = (node, options) =>\n animateElement(\n node,\n [\n {\n opacity: 0,\n },\n {\n opacity: 1,\n },\n ],\n options,\n )\n\nexport const fadeOut = (node, options) =>\n animateElement(\n node,\n [\n {\n opacity: 1,\n },\n {\n opacity: 0,\n },\n ],\n options,\n )\n\nexport const move = (fromNode, toNode, options) => {\n const fromComputedStyle = window.getComputedStyle(fromNode)\n const toComputedStyle = window.getComputedStyle(toNode)\n // get positions of input in toolbar and aElement\n const fromPosition = fromNode.getBoundingClientRect()\n const toPosition = toNode.getBoundingClientRect()\n\n // we'll do the animation in a div preventing overflow and pointer events\n const div = document.createElement(\"div\")\n div.style.position = \"absolute\"\n div.style.left = 0\n div.style.top = 0\n div.style.width = `${document.documentElement.scrollWidth}px`\n div.style.height = `${document.documentElement.scrollHeight}px`\n div.style.overflow = \"hidden\"\n div.style.pointerEvents = \"none\"\n\n const documentScroll = {\n left: window.pageXOffset || document.documentElement.scrollLeft,\n top: window.pageYOffset || document.documentElement.scrollTop,\n }\n\n // clone node and style it\n const copy = fromNode.cloneNode(true)\n copy.style.position = \"absolute\"\n copy.style.left = `${documentScroll.left + fromPosition.left}px`\n copy.style.top = `${documentScroll.top + fromPosition.top}px`\n copy.style.maxWidth = `${fromPosition.right - fromPosition.left}px`\n copy.style.overflow = toComputedStyle.overflow\n copy.style.textOverflow = toComputedStyle.textOverflow\n div.appendChild(copy)\n document.body.appendChild(div)\n\n const left =\n toPosition.left -\n fromPosition.left -\n (parseInt(fromComputedStyle.paddingLeft) || 0)\n const top =\n toPosition.top -\n fromPosition.top -\n (parseInt(fromComputedStyle.paddingTop) || 0)\n // define final position of new element and the duration\n const translate = `translate(${left}px, ${top}px)`\n\n // animate new element\n return animateElement(\n copy,\n [\n {\n transform: \"translate(0px, 0px)\",\n backgroundColor: fromComputedStyle.backgroundColor,\n color: fromComputedStyle.color,\n fontSize: fromComputedStyle.fontSize,\n height: `${fromPosition.bottom - fromPosition.top}px`,\n width: \"100%\",\n },\n {\n offset: 0.9,\n backgroundColor: fromComputedStyle.backgroundColor,\n color: fromComputedStyle.color,\n },\n {\n transform: translate,\n backgroundColor: toComputedStyle.backgroundColor,\n color: toComputedStyle.color,\n fontSize: toComputedStyle.fontSize,\n height: `${toPosition.bottom - toPosition.top}px`,\n width: toComputedStyle.width,\n },\n ],\n options,\n ).then(() => {\n div.parentNode.removeChild(div)\n })\n}\n\n// the whole point of this toolbar animation wass to flight a visual imperfection when it's done by css transition.\n// This imperfection is a white line sometimes flickering at the bottom of the page.\n// It got fixed by removing the usage of calc(100vh - 40px)\n// It was hapenning in chrome, safari but not inside Firefox\n// I assume it's because Firefox does not read parent element min-height while\n// chrome use it to compute min-height: 100%\nexport const createToolbarAnimation = () => {\n const collapsedState = {\n \"#page\": { paddingBottom: 0 },\n \"footer\": { height: 0 },\n \"#toolbar\": { visibility: \"hidden\" },\n }\n const expandedState = {\n \"#page\": { paddingBottom: \"40px\" },\n \"footer\": { height: \"40px\" },\n \"#toolbar\": { visibility: \"visible\" },\n }\n const expandTransition = transit(collapsedState, expandedState, {\n duration: 300,\n })\n\n const expand = () => {\n expandTransition.play()\n }\n\n const collapse = () => {\n expandTransition.reverse()\n }\n\n return { expand, collapse }\n}\n\nexport const transit = (\n fromState,\n toState,\n { commitStyles = true, fill = \"both\", duration = 300 } = {},\n) => {\n const steps = []\n Object.keys(fromState).forEach((selector) => {\n const fromStyles = {}\n const toStyles = {}\n const element = document.querySelector(selector)\n\n const keyframes = []\n const fromProperties = fromState[selector]\n const toProperties = toState[selector]\n Object.keys(fromProperties).forEach((propertyName) => {\n const from = fromProperties[propertyName]\n const to = toProperties[propertyName]\n fromStyles[propertyName] = from\n toStyles[propertyName] = to\n })\n keyframes.push(fromStyles, toStyles)\n\n let animation\n if (canUseAnimation()) {\n const effect = new KeyframeEffect(element, keyframes, { fill, duration })\n animation = new Animation(effect)\n } else {\n animation = {\n playbackRate: 1,\n play: () => {\n animation.onfinish()\n },\n reverse: () => {\n animation.playbackRate = -1\n animation.onfinish()\n },\n finish: () => {},\n onfinish: () => {},\n }\n }\n\n steps.push({\n element,\n animation,\n fromStyles,\n toStyles,\n })\n })\n\n const play = async () => {\n await Promise.all(\n steps.map(({ animation, element, toStyles }) => {\n return new Promise((resolve) => {\n animation.onfinish = () => {\n if (commitStyles) {\n setStyles(element, toStyles)\n }\n resolve()\n }\n if (animation.playbackRate === -1) {\n animation.reverse()\n } else {\n animation.play()\n }\n })\n }),\n )\n }\n\n const reverse = async () => {\n await Promise.all(\n steps.map(({ animation, element, fromStyles }) => {\n return new Promise((resolve) => {\n animation.onfinish = () => {\n if (commitStyles) {\n setStyles(element, fromStyles)\n }\n resolve()\n }\n animation.reverse()\n })\n }),\n )\n }\n\n const finish = async () => {\n steps.forEach(({ animation }) => {\n animation.finish()\n })\n }\n\n return { play, reverse, finish }\n}\n\nexport const startJavaScriptAnimation = ({\n duration = 300,\n timingFunction = (t) => t,\n onProgress = () => {},\n onCancel = () => {},\n onComplete = () => {},\n}) => {\n if (isNaN(duration)) {\n // console.warn(`duration must be a number, received ${duration}`)\n return () => {}\n }\n duration = parseInt(duration, 10)\n const startMs = performance.now()\n let currentRequestAnimationFrameId\n let done = false\n let rawProgress = 0\n let progress = 0\n const handler = () => {\n currentRequestAnimationFrameId = null\n const nowMs = performance.now()\n rawProgress = Math.min((nowMs - startMs) / duration, 1)\n progress = timingFunction(rawProgress)\n done = rawProgress === 1\n onProgress({\n done,\n rawProgress,\n progress,\n })\n if (done) {\n onComplete()\n } else {\n currentRequestAnimationFrameId = window.requestAnimationFrame(handler)\n }\n }\n handler()\n const stop = () => {\n if (currentRequestAnimationFrameId) {\n window.cancelAnimationFrame(currentRequestAnimationFrameId)\n currentRequestAnimationFrameId = null\n }\n if (!done) {\n done = true\n onCancel({\n rawProgress,\n progress,\n })\n }\n }\n return stop\n}\n",
77
- "// handle data-last-interaction attr on html (focusring)\nwindow.addEventListener(\"mousedown\", (mousedownEvent) => {\n if (mousedownEvent.defaultPrevented) {\n return\n }\n document.documentElement.setAttribute(\"data-last-interaction\", \"mouse\")\n})\nwindow.addEventListener(\"touchstart\", (touchstartEvent) => {\n if (touchstartEvent.defaultPrevented) {\n return\n }\n document.documentElement.setAttribute(\"data-last-interaction\", \"mouse\")\n})\nwindow.addEventListener(\"keydown\", (keydownEvent) => {\n if (keydownEvent.defaultPrevented) {\n return\n }\n document.documentElement.setAttribute(\"data-last-interaction\", \"keyboard\")\n})\n",
78
- "export const setLinkHrefForParentWindow = (a, href) => {\n a.href = href\n a.onclick = (e) => {\n if (e.ctrlKey || e.metaKey) {\n return\n }\n e.preventDefault()\n window.parent.location.href = href\n }\n}\n",
79
- "export const createPreference = (name) => {\n return {\n has: () => localStorage.hasOwnProperty(name),\n get: () =>\n localStorage.hasOwnProperty(name)\n ? JSON.parse(localStorage.getItem(name))\n : undefined,\n set: (value) => localStorage.setItem(name, JSON.stringify(value)),\n }\n}\n",
80
- "import { updateIframeOverflowOnParentWindow } from \"../util/dom.js\"\n\nexport const toggleTooltip = (element) => {\n if (element.hasAttribute(\"data-tooltip-visible\")) {\n hideTooltip(element)\n } else {\n showTooltip(element)\n }\n}\n\nexport const hideTooltip = (element) => {\n element.removeAttribute(\"data-tooltip-visible\")\n element.removeAttribute(\"data-tooltip-auto-visible\")\n updateIframeOverflowOnParentWindow()\n}\n\nexport const showTooltip = (element) => {\n element.setAttribute(\"data-tooltip-visible\", \"\")\n updateIframeOverflowOnParentWindow()\n}\n\nexport const autoShowTooltip = (element) => {\n element.setAttribute(\"data-tooltip-auto-visible\", \"\")\n updateIframeOverflowOnParentWindow()\n}\n\nexport const removeAutoShowTooltip = (element) => {\n element.removeAttribute(\"data-tooltip-auto-visible\")\n updateIframeOverflowOnParentWindow()\n}\n\nexport const hideAllTooltip = () => {\n const elementsWithTooltip = Array.from(\n document.querySelectorAll(\"[data-tooltip-visible]\"),\n )\n elementsWithTooltip.forEach((elementWithTooltip) => {\n hideTooltip(elementWithTooltip)\n })\n}\n",
81
- "export const enableVariant = (rootNode, variables) => {\n const nodesNotMatching = Array.from(\n rootNode.querySelectorAll(`[${attributeIndicatingACondition}]`),\n )\n nodesNotMatching.forEach((nodeNotMatching) => {\n const conditionAttributeValue = nodeNotMatching.getAttribute(\n attributeIndicatingACondition,\n )\n const matches = testCondition(conditionAttributeValue, variables)\n if (matches) {\n renameAttribute(\n nodeNotMatching,\n attributeIndicatingACondition,\n attributeIndicatingAMatch,\n )\n }\n })\n\n const nodesMatching = Array.from(\n rootNode.querySelectorAll(`[${attributeIndicatingAMatch}]`),\n )\n nodesMatching.forEach((nodeMatching) => {\n const conditionAttributeValue = nodeMatching.getAttribute(\n attributeIndicatingAMatch,\n )\n const matches = testCondition(conditionAttributeValue, variables)\n if (!matches) {\n renameAttribute(\n nodeMatching,\n attributeIndicatingAMatch,\n attributeIndicatingACondition,\n )\n }\n })\n}\n\nconst testCondition = (conditionAttributeValue, variables) => {\n const condition = parseCondition(conditionAttributeValue)\n return Object.keys(variables).some((key) => {\n if (condition.key !== key) {\n return false\n }\n // the condition do not specify a value, any value is ok\n if (condition.value === undefined) {\n return true\n }\n if (condition.value === variables[key]) {\n return true\n }\n return false\n })\n}\n\nconst parseCondition = (conditionAttributeValue) => {\n const colonIndex = conditionAttributeValue.indexOf(\":\")\n if (colonIndex === -1) {\n return {\n key: conditionAttributeValue,\n value: undefined,\n }\n }\n return {\n key: conditionAttributeValue.slice(0, colonIndex),\n value: conditionAttributeValue.slice(colonIndex + 1),\n }\n}\n\nconst attributeIndicatingACondition = `data-when`\nconst attributeIndicatingAMatch = `data-when-active`\n\nconst renameAttribute = (node, name, newName) => {\n node.setAttribute(newName, node.getAttribute(name))\n node.removeAttribute(name)\n}\n",
82
- "import {\n toolbarSectionIsActive,\n deactivateToolbarSection,\n activateToolbarSection,\n updateIframeOverflowOnParentWindow,\n} from \"../util/dom.js\"\nimport { enableVariant } from \"../variant/variant.js\"\n\nexport const renderToolbarSettings = () => {\n document.querySelector(\"#settings-button\").onclick = toggleSettings\n document.querySelector(\"#button-close-settings\").onclick = toggleSettings\n}\n\nconst toggleSettings = () => {\n if (settingsAreVisible()) {\n hideSettings()\n } else {\n showSettings()\n }\n}\n\nexport const enableWarningStyle = () => {\n enableVariant(document.querySelector(\"#settings-button\"), {\n has_warning: \"yes\",\n })\n}\n\nexport const disableWarningStyle = () => {\n enableVariant(document.querySelector(\"#settings-button\"), {\n has_warning: \"no\",\n })\n}\n\nexport const settingsAreVisible = () => {\n return toolbarSectionIsActive(document.querySelector(`#settings`))\n}\n\nexport const hideSettings = () => {\n deactivateToolbarSection(document.querySelector(`#settings`))\n updateIframeOverflowOnParentWindow()\n}\n\nexport const showSettings = () => {\n activateToolbarSection(document.querySelector(`#settings`))\n updateIframeOverflowOnParentWindow()\n}\n",
83
- "export default (obj, key, value) => {\n // Shortcircuit the slow defineProperty path when possible.\n // We are trying to avoid issues where setters defined on the\n // prototype cause side effects under the fast path of simple\n // assignment. By checking for existence of the property with\n // the in operator, we can optimize most of this overhead away.\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true,\n })\n } else {\n obj[key] = value\n }\n return obj\n}\n",
84
- "import defineProperty from \"../defineProperty/defineProperty.js\"\n\n// This function is different to \"Reflect.ownKeys\". The enumerableOnly\n// filters on symbol properties only. Returned string properties are always\n// enumerable. It is good to use in objectSpread.\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(\n target,\n key,\n Object.getOwnPropertyDescriptor(source, key)\n );\n });\n }\n }\n return target;\n}",
85
- "import { createPreference } from \"../util/preferences.js\"\nimport { enableVariant } from \"../variant/variant.js\"\n\nconst notificationAvailable = typeof window.Notification === \"function\"\nconst notificationPreference = createPreference(\"notification\")\n\nconst arrayOfOpenedNotifications = []\nexport const renderToolbarNotification = () => {\n if (!notificationAvailable) {\n applyNotificationNotAvailableEffects()\n return\n }\n updatePermission()\n}\n\nconst updatePermission = () => {\n const notifPermission = Notification.permission\n if (notifPermission === \"default\") {\n applyNotificationDefaultEffects()\n return\n }\n if (notifPermission === \"denied\") {\n applyNotificationDeniedEffects()\n return\n }\n if (notifPermission === \"granted\") {\n applyNotificationGrantedEffects()\n return\n }\n}\n\nconst notifCheckbox = document.querySelector(\"#toggle-notifs\")\n\nconst applyNotificationNotAvailableEffects = () => {\n const notifSetting = document.querySelector(\".settings-notification\")\n notifSetting.setAttribute(\"data-disabled\", \"true\")\n notifSetting.setAttribute(\n \"title\",\n `Notification not available in the browser`,\n )\n notifCheckbox.disabled = true\n}\nconst applyNotificationDefaultEffects = () => {\n applyNotificationNOTGrantedEffects()\n const notifSetting = document.querySelector(\".settings-notification\")\n notifSetting.removeAttribute(\"data-disabled\")\n notifSetting.removeAttribute(\"title\")\n}\nconst applyNotificationDeniedEffects = () => {\n applyNotificationNOTGrantedEffects()\n const notifSetting = document.querySelector(\".settings-notification\")\n notifSetting.setAttribute(\"data-disabled\", \"true\")\n notifSetting.setAttribute(\"title\", `Notification denied`)\n}\nconst applyNotificationGrantedEffects = () => {\n enableVariant(document.querySelector(\".notification-text\"), {\n notif_granted: \"yes\",\n })\n notifCheckbox.disabled = false\n notifCheckbox.checked = getNotificationPreference()\n notifCheckbox.onchange = () => {\n setNotificationPreference(notifCheckbox.checked)\n if (!notifCheckbox.checked) {\n // slice because arrayOfOpenedNotifications can be mutated while looping\n arrayOfOpenedNotifications.slice().forEach((notification) => {\n notification.close()\n })\n }\n }\n}\nconst applyNotificationNOTGrantedEffects = () => {\n enableVariant(document.querySelector(\".notification-text\"), {\n notif_granted: \"no\",\n })\n notifCheckbox.disabled = true\n notifCheckbox.checked = false\n document.querySelector(\"a.request_notification_permission\").onclick = () => {\n requestPermission().then(() => {\n setNotificationPreference(true)\n updatePermission()\n })\n }\n}\n\nexport const notifyExecutionResult = (\n executedFileRelativeUrl,\n execution,\n previousExecution,\n) => {\n const notificationEnabled = getNotificationPreference()\n if (!notificationEnabled) return\n\n const notificationOptions = {\n lang: \"en\",\n icon: getFaviconHref(),\n clickToFocus: true,\n clickToClose: true,\n }\n\n if (execution.status === \"errored\") {\n if (previousExecution) {\n if (previousExecution.status === \"completed\") {\n notify(\"Broken\", {\n ...notificationOptions,\n body: `${executedFileRelativeUrl} execution now failing.`,\n })\n } else {\n notify(\"Still failing\", {\n ...notificationOptions,\n body: `${executedFileRelativeUrl} execution still failing.`,\n })\n }\n } else {\n notify(\"Failing\", {\n ...notificationOptions,\n body: `${executedFileRelativeUrl} execution failed.`,\n })\n }\n } else if (previousExecution && previousExecution.status === \"errored\") {\n notify(\"Fixed\", {\n ...notificationOptions,\n body: `${executedFileRelativeUrl} execution fixed.`,\n })\n }\n}\n\nconst getNotificationPreference = () =>\n notificationPreference.has() ? notificationPreference.get() : true\n\nconst setNotificationPreference = (value) => notificationPreference.set(value)\n\nconst getFaviconHref = () => {\n const link = document.querySelector('link[rel=\"icon\"]')\n return link ? link.href : undefined\n}\n\nlet permission = \"default\"\n\nconst notify = notificationAvailable\n ? async (\n title,\n { clickToFocus = false, clickToClose = false, ...options } = {},\n ) => {\n if (permission !== \"granted\") {\n return null\n }\n\n const notification = new Notification(title, options)\n arrayOfOpenedNotifications.push(notification)\n notification.onclick = () => {\n // but if the user navigated inbetween\n // focusing window will show something else\n // in that case it could be great to do something\n // maybe like showing a message saying this execution\n // is no longer visible\n // we could also navigauate to this file execution but\n // there is no guarantee re-executing the file would give same output\n // and it would also trigger an other notification\n if (clickToFocus) window.focus()\n if (clickToClose) notification.close()\n }\n notification.onclose = () => {\n const index = arrayOfOpenedNotifications.indexOf(notification)\n if (index > -1) {\n arrayOfOpenedNotifications.splice(index, 1)\n }\n }\n return notification\n }\n : () => {}\n\nlet requestPromise\nconst requestPermission = notificationAvailable\n ? async () => {\n if (requestPromise) return requestPromise\n requestPromise = Notification.requestPermission()\n permission = await requestPromise\n requestPromise = undefined\n return permission\n }\n : () => Promise.resolve(\"default\")\n",
86
- "import { createPreference } from \"../util/preferences.js\"\n\nconst DARK_THEME = \"dark\"\nconst LIGHT_THEME = \"light\"\nconst themePreference = createPreference(\"theme\")\n\nexport const renderToolbarTheme = () => {\n const theme = getThemePreference()\n const checkbox = document.querySelector(\"#checkbox-dark-theme\")\n checkbox.checked = theme === DARK_THEME\n setTheme(theme)\n checkbox.onchange = () => {\n if (checkbox.checked) {\n setThemePreference(DARK_THEME)\n setTheme(DARK_THEME)\n } else {\n setThemePreference(LIGHT_THEME)\n setTheme(LIGHT_THEME)\n }\n }\n}\n\nconst getThemePreference = () => {\n return themePreference.has() ? themePreference.get() : DARK_THEME\n}\n\nconst setThemePreference = (value) => {\n themePreference.set(value)\n setTheme(value)\n}\n\nconst setTheme = (theme) => {\n document.querySelector(\"html\").setAttribute(\"data-theme\", theme)\n}\n",
87
- "import { createPreference } from \"../util/preferences.js\"\n\nconst animationPreference = createPreference(\"animation\")\n\nexport const renderToolbarAnimation = () => {\n const animCheckbox = document.querySelector(\"#toggle-anims\")\n animCheckbox.checked = getAnimationPreference()\n animCheckbox.onchange = () => {\n setAnimationPreference(animCheckbox.checked)\n onPreferenceChange(animCheckbox.checked)\n }\n onPreferenceChange()\n\n // enable toolbar transition only after first render\n setTimeout(() => {\n document.querySelector(\"#toolbar\").setAttribute(\"data-animate\", \"\")\n })\n}\n\nconst onPreferenceChange = (value = getAnimationPreference()) => {\n if (value) {\n enableAnimation()\n } else {\n disableAnimation()\n }\n}\n\nconst getAnimationPreference = () =>\n animationPreference.has() ? animationPreference.get() : true\n\nconst setAnimationPreference = (value) => animationPreference.set(value)\n\nconst enableAnimation = () => {\n document.documentElement.removeAttribute(\"data-animation-disabled\")\n}\n\nconst disableAnimation = () => {\n document.documentElement.setAttribute(\"data-animation-disabled\", \"\")\n}\n",
88
- "export const createHorizontalBreakpoint = (breakpointValue) => {\n return createBreakpoint(windowWidthMeasure, breakpointValue)\n}\n\nconst createMeasure = ({ compute, register }) => {\n let currentValue = compute()\n\n const get = () => compute()\n\n const changed = createSignal()\n\n let unregister = () => {}\n if (register) {\n unregister = register(() => {\n const value = compute()\n if (value !== currentValue) {\n const previousValue = value\n currentValue = value\n changed.notify(value, previousValue)\n }\n })\n }\n\n return { get, changed, unregister }\n}\n\nconst createSignal = () => {\n const callbackArray = []\n\n const listen = (callback) => {\n callbackArray.push(callback)\n return () => {\n const index = callbackArray.indexOf(callback)\n if (index > -1) {\n callbackArray.splice(index, 1)\n }\n }\n }\n\n const notify = (...args) => {\n callbackArray.slice().forEach((callback) => {\n callback(...args)\n })\n }\n\n return { listen, notify }\n}\n\nconst windowWidthMeasure = createMeasure({\n name: \"window-width\",\n compute: () => window.innerWidth,\n register: (onchange) => {\n window.addEventListener(\"resize\", onchange)\n window.addEventListener(\"orientationchange\", onchange)\n return () => {\n window.removeEventListener(\"resize\", onchange)\n window.removeEventListener(\"orientationchange\", onchange)\n }\n },\n})\n\nconst createBreakpoint = (measure, breakpointValue) => {\n const getBreakpointState = () => {\n const value = measure.get()\n\n if (value < breakpointValue) {\n return \"below\"\n }\n if (value > breakpointValue) {\n return \"above\"\n }\n return \"equals\"\n }\n\n let currentBreakpointState = getBreakpointState()\n\n const isAbove = () => {\n return measure.get() > breakpointValue\n }\n\n const isBelow = () => {\n return measure.get() < breakpointValue\n }\n\n const breakpointChanged = createSignal()\n\n measure.changed.listen(() => {\n const breakpointState = getBreakpointState()\n if (breakpointState !== currentBreakpointState) {\n const breakpointStatePrevious = currentBreakpointState\n currentBreakpointState = breakpointState\n breakpointChanged.notify(breakpointState, breakpointStatePrevious)\n }\n })\n\n return {\n isAbove,\n isBelow,\n changed: breakpointChanged,\n }\n}\n\n// const windowScrollTop = createMeasure({\n// name: \"window-scroll-top\",\n// compute: () => window.scrollTop,\n// register: (onchange) => {\n// window.addEventListener(\"scroll\", onchange)\n// return () => {\n// window.removeEventListener(\"scroll\", onchange)\n// }\n// },\n// })\n",
89
- "import { removeForceHideElement, activateToolbarSection } from \"../util/dom.js\"\nimport { enableVariant } from \"../variant/variant.js\"\nimport { createHorizontalBreakpoint } from \"../util/responsive.js\"\nimport { toggleTooltip } from \"../tooltip/tooltip.js\"\nimport { notifyExecutionResult } from \"../notification/toolbar_notification.js\"\n\nconst WINDOW_MEDIUM_WIDTH = 570\n\nexport const renderExecutionInToolbar = ({ executedFileRelativeUrl }) => {\n // reset file execution indicator ui\n applyExecutionIndicator()\n removeForceHideElement(document.querySelector(\"#execution-indicator\"))\n\n // apply responsive design on fileInput if needed + add listener on resize screen\n const input = document.querySelector(\"#file-input\")\n const fileWidthBreakpoint = createHorizontalBreakpoint(WINDOW_MEDIUM_WIDTH)\n const handleFileWidthBreakpoint = () => {\n resizeInput(input, fileWidthBreakpoint)\n }\n handleFileWidthBreakpoint()\n fileWidthBreakpoint.changed.listen(handleFileWidthBreakpoint)\n input.value = executedFileRelativeUrl\n resizeInput(input, fileWidthBreakpoint)\n\n activateToolbarSection(document.querySelector(\"#file\"))\n removeForceHideElement(document.querySelector(\"#file\"))\n\n window.parent.__jsenv__.executionResultPromise.then(\n ({ status, startTime, endTime }) => {\n const execution = { status, startTime, endTime }\n applyExecutionIndicator(execution)\n\n const executionStorageKey = executedFileRelativeUrl\n const previousExecution = sessionStorage.hasOwnProperty(\n executionStorageKey,\n )\n ? JSON.parse(sessionStorage.getItem(executionStorageKey))\n : undefined\n notifyExecutionResult(\n executedFileRelativeUrl,\n execution,\n previousExecution,\n )\n\n sessionStorage.setItem(executedFileRelativeUrl, JSON.stringify(execution))\n },\n )\n}\n\nconst applyExecutionIndicator = ({\n status = \"running\",\n startTime,\n endTime,\n} = {}) => {\n const executionIndicator = document.querySelector(\"#execution-indicator\")\n enableVariant(executionIndicator, { execution: status })\n const variantNode = executionIndicator.querySelector(\"[data-when-active]\")\n\n variantNode.querySelector(\"button\").onclick = () =>\n toggleTooltip(executionIndicator)\n variantNode.querySelector(\".tooltip\").textContent = computeText({\n status,\n startTime,\n endTime,\n })\n}\n\nconst computeText = ({ status, startTime, endTime }) => {\n if (status === \"completed\") {\n return `Execution completed in ${endTime - startTime}ms`\n }\n\n if (status === \"errored\") {\n return `Execution failed in ${endTime - startTime}ms`\n }\n\n if (status === \"running\") {\n return \"Executing...\"\n }\n\n return \"\"\n}\n\nconst resizeInput = (input, fileWidthBreakpoint) => {\n const size = fileWidthBreakpoint.isBelow() ? 20 : 40\n if (input.value.length > size) {\n input.style.width = `${size}ch`\n } else {\n input.style.width = `${input.value.length}ch`\n }\n}\n",
90
- "export const fetchUsingXHR = async (\n url,\n {\n signal,\n method = \"GET\",\n credentials = \"same-origin\",\n headers = {},\n body = null,\n } = {},\n) => {\n const headersPromise = createPromiseAndHooks()\n const bodyPromise = createPromiseAndHooks()\n\n const xhr = new XMLHttpRequest()\n\n const failure = (error) => {\n // if it was already resolved, we must reject the body promise\n if (headersPromise.settled) {\n bodyPromise.reject(error)\n } else {\n headersPromise.reject(error)\n }\n }\n\n const cleanup = () => {\n xhr.ontimeout = null\n xhr.onerror = null\n xhr.onload = null\n xhr.onreadystatechange = null\n }\n\n xhr.ontimeout = () => {\n cleanup()\n failure(new Error(`xhr request timeout on ${url}.`))\n }\n\n xhr.onerror = (error) => {\n cleanup()\n // unfortunately with have no clue why it fails\n // might be cors for instance\n failure(createRequestError(error, { url }))\n }\n\n xhr.onload = () => {\n cleanup()\n bodyPromise.resolve()\n }\n\n signal.addEventListener(\"abort\", () => {\n xhr.abort()\n const abortError = new Error(\"aborted\")\n abortError.name = \"AbortError\"\n failure(abortError)\n })\n\n xhr.onreadystatechange = () => {\n // https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest/readyState\n const { readyState } = xhr\n\n if (readyState === 2) {\n headersPromise.resolve()\n } else if (readyState === 4) {\n cleanup()\n bodyPromise.resolve()\n }\n }\n\n xhr.open(method, url, true)\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key])\n })\n xhr.withCredentials = computeWithCredentials({ credentials, url })\n if (\"responseType\" in xhr && hasBlob) {\n xhr.responseType = \"blob\"\n }\n xhr.send(body)\n\n await headersPromise\n\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseURL\n const responseUrl =\n \"responseURL\" in xhr ? xhr.responseURL : headers[\"x-request-url\"]\n let responseStatus = xhr.status\n const responseStatusText = xhr.statusText\n const responseHeaders = getHeadersFromXHR(xhr)\n\n const readBody = async () => {\n await bodyPromise\n\n const { status } = xhr\n // in Chrome on file:/// URLs, status is 0\n if (status === 0) {\n responseStatus = 200\n }\n\n const body = \"response\" in xhr ? xhr.response : xhr.responseText\n\n return {\n responseBody: body,\n responseBodyType: detectBodyType(body),\n }\n }\n\n const text = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return blobToText(responseBody)\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as text\")\n }\n if (responseBodyType === \"dataView\") {\n return arrayBufferToText(responseBody.buffer)\n }\n if (responseBodyType === \"arrayBuffer\") {\n return arrayBufferToText(responseBody)\n }\n // if (responseBodyType === \"text\" || responseBodyType === 'searchParams') {\n // return body\n // }\n return String(responseBody)\n }\n\n const json = async () => {\n const responseText = await text()\n return JSON.parse(responseText)\n }\n\n const blob = async () => {\n if (!hasBlob) {\n throw new Error(`blob not supported`)\n }\n\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return responseBody\n }\n if (responseBodyType === \"dataView\") {\n return new Blob([cloneBuffer(responseBody.buffer)])\n }\n if (responseBodyType === \"arrayBuffer\") {\n return new Blob([cloneBuffer(responseBody)])\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as blob\")\n }\n return new Blob([String(responseBody)])\n }\n\n const arrayBuffer = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"arrayBuffer\") {\n return cloneBuffer(responseBody)\n }\n const responseBlob = await blob()\n return blobToArrayBuffer(responseBlob)\n }\n\n const formData = async () => {\n if (!hasFormData) {\n throw new Error(`formData not supported`)\n }\n const responseText = await text()\n return textToFormData(responseText)\n }\n\n return {\n url: responseUrl,\n status: responseStatus,\n statusText: responseStatusText,\n headers: responseHeaders,\n text,\n json,\n blob,\n arrayBuffer,\n formData,\n }\n}\n\nconst canUseBlob = () => {\n if (typeof window.FileReader !== \"function\") return false\n\n if (typeof window.Blob !== \"function\") return false\n\n try {\n // eslint-disable-next-line no-new\n new Blob()\n return true\n } catch (e) {\n return false\n }\n}\n\nconst hasBlob = canUseBlob()\n\nconst hasFormData = typeof window.FormData === \"function\"\n\nconst hasArrayBuffer = typeof window.ArrayBuffer === \"function\"\n\nconst hasSearchParams = typeof window.URLSearchParams === \"function\"\n\nconst createRequestError = (error, { url }) => {\n return new Error(\n `error during xhr request on ${url}.\n--- error stack ---\n${error.stack}`,\n )\n}\n\nconst createPromiseAndHooks = () => {\n let resolve\n let reject\n const promise = new Promise((res, rej) => {\n resolve = (value) => {\n promise.settled = true\n res(value)\n }\n reject = (value) => {\n promise.settled = true\n rej(value)\n }\n })\n promise.resolve = resolve\n promise.reject = reject\n return promise\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\nconst computeWithCredentials = ({ credentials, url }) => {\n if (credentials === \"same-origin\") {\n return originSameAsGlobalOrigin(url)\n }\n return credentials === \"include\"\n}\n\nconst originSameAsGlobalOrigin = (url) => {\n // if we cannot read globalOrigin from window.location.origin, let's consider it's ok\n if (typeof window !== \"object\") return true\n if (typeof window.location !== \"object\") return true\n const globalOrigin = window.location.origin\n if (globalOrigin === \"null\") return true\n return hrefToOrigin(url) === globalOrigin\n}\n\nconst detectBodyType = (body) => {\n if (!body) {\n return \"\"\n }\n if (typeof body === \"string\") {\n return \"text\"\n }\n if (hasBlob && Blob.prototype.isPrototypeOf(body)) {\n return \"blob\"\n }\n if (hasFormData && FormData.prototype.isPrototypeOf(body)) {\n return \"formData\"\n }\n if (hasArrayBuffer) {\n if (hasBlob && isDataView(body)) {\n return `dataView`\n }\n if (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body)) {\n return `arrayBuffer`\n }\n }\n if (hasSearchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n return \"searchParams\"\n }\n return \"\"\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders#Example\nconst getHeadersFromXHR = (xhr) => {\n const headerMap = {}\n\n const headersString = xhr.getAllResponseHeaders()\n if (headersString === \"\") return headerMap\n\n const lines = headersString.trim().split(/[\\r\\n]+/)\n lines.forEach((line) => {\n const parts = line.split(\": \")\n const name = parts.shift()\n const value = parts.join(\": \")\n headerMap[name.toLowerCase()] = value\n })\n\n return headerMap\n}\n\nconst hrefToOrigin = (href) => {\n const scheme = hrefToScheme(href)\n\n if (scheme === \"file\") {\n return \"file://\"\n }\n\n if (scheme === \"http\" || scheme === \"https\") {\n const secondProtocolSlashIndex = scheme.length + \"://\".length\n const pathnameSlashIndex = href.indexOf(\"/\", secondProtocolSlashIndex)\n\n if (pathnameSlashIndex === -1) return href\n return href.slice(0, pathnameSlashIndex)\n }\n\n return href.slice(0, scheme.length + 1)\n}\n\nconst hrefToScheme = (href) => {\n const colonIndex = href.indexOf(\":\")\n if (colonIndex === -1) return \"\"\n return href.slice(0, colonIndex)\n}\n\nconst isDataView = (obj) => {\n return obj && DataView.prototype.isPrototypeOf(obj)\n}\n\nconst isArrayBufferView =\n ArrayBuffer.isView ||\n (() => {\n const viewClasses = [\n \"[object Int8Array]\",\n \"[object Uint8Array]\",\n \"[object Uint8ClampedArray]\",\n \"[object Int16Array]\",\n \"[object Uint16Array]\",\n \"[object Int32Array]\",\n \"[object Uint32Array]\",\n \"[object Float32Array]\",\n \"[object Float64Array]\",\n ]\n\n return (value) => {\n return (\n value && viewClasses.includes(Object.prototype.toString.call(value))\n )\n }\n })()\n\nconst textToFormData = (text) => {\n const form = new FormData()\n text\n .trim()\n .split(\"&\")\n .forEach(function (bytes) {\n if (bytes) {\n const split = bytes.split(\"=\")\n const name = split.shift().replace(/\\+/g, \" \")\n const value = split.join(\"=\").replace(/\\+/g, \" \")\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n}\n\nconst blobToArrayBuffer = async (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n}\n\nconst blobToText = (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n}\n\nconst arrayBufferToText = (arrayBuffer) => {\n const view = new Uint8Array(arrayBuffer)\n const chars = new Array(view.length)\n let i = 0\n while (i < view.length) {\n chars[i] = String.fromCharCode(view[i])\n\n i++\n }\n return chars.join(\"\")\n}\n\nconst fileReaderReady = (reader) => {\n return new Promise(function (resolve, reject) {\n reader.onload = function () {\n resolve(reader.result)\n }\n reader.onerror = function () {\n reject(reader.error)\n }\n })\n}\n\nconst cloneBuffer = (buffer) => {\n if (buffer.slice) {\n return buffer.slice(0)\n }\n const view = new Uint8Array(buffer.byteLength)\n view.set(new Uint8Array(buffer))\n return view.buffer\n}\n",
91
- "import { fetchUsingXHR } from \"./fetch_using_xhr.js\"\n\nconst fetchNative = async (url, { mode = \"cors\", ...options } = {}) => {\n const response = await window.fetch(url, {\n mode,\n ...options,\n })\n\n return {\n url: response.url,\n status: response.status,\n statusText: \"\",\n headers: responseToHeaders(response),\n text: () => response.text(),\n json: () => response.json(),\n blob: () => response.blob(),\n arrayBuffer: () => response.arrayBuffer(),\n formData: () => response.formData(),\n }\n}\n\nconst responseToHeaders = (response) => {\n const headers = {}\n response.headers.forEach((value, name) => {\n headers[name] = value\n })\n return headers\n}\n\nexport const fetchUrl =\n typeof window.fetch === \"function\" &&\n typeof window.AbortController === \"function\"\n ? fetchNative\n : fetchUsingXHR\n",
92
- "import { fetchUrl } from \"./fetch_browser.js\"\n\nexport const fetchJson = async (url, options = {}) => {\n const response = await fetchUrl(url, options)\n const object = await response.json()\n return object\n}\n",
93
- "/*\n * Prefer window.navigator.userAgentData before resorting to\n * window.navigator.userAgent because of\n * https://blog.chromium.org/2021/09/user-agent-reduction-origin-trial-and-dates.html\n */\n\nexport const detectFromUserAgentData = () => {\n const { userAgentData } = window.navigator\n if (!userAgentData) {\n return null\n }\n const { brands } = userAgentData\n let i = 0\n while (i < brands.length) {\n const { brand, version } = brands[i]\n i++\n if (brand === \"chromium\" || brand === \"Google Chrome\") {\n return {\n name: \"chrome\",\n version,\n }\n }\n }\n return null\n}\n",
94
- "export const firstMatch = (regexp, string) => {\n const match = string.match(regexp)\n return match && match.length > 0 ? match[1] || undefined : undefined\n}\n\nexport const secondMatch = (regexp, string) => {\n const match = string.match(regexp)\n return match && match.length > 1 ? match[2] || undefined : undefined\n}\n\nexport const userAgentToVersion = (userAgent) => {\n return firstMatch(/version\\/(\\d+(\\.?_?\\d+)+)/i, userAgent) || undefined\n}\n",
95
- "import { firstMatch } from \"./util.js\"\n\nexport const detectAndroid = () => navigatorToBrowser(window.navigator)\n\nconst navigatorToBrowser = ({ userAgent, appVersion }) => {\n if (/(android)/i.test(userAgent)) {\n return {\n name: \"android\",\n version: firstMatch(/Android (\\d+(\\.?_?\\d+)+)/i, appVersion),\n }\n }\n return null\n}\n",
96
- "import { firstMatch } from \"./util.js\"\n\nexport const detectInternetExplorer = () =>\n userAgentToBrowser(window.navigator.userAgent)\n\nconst userAgentToBrowser = (userAgent) => {\n if (/msie|trident/i.test(userAgent)) {\n return {\n name: \"ie\",\n version: firstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i, userAgent),\n }\n }\n return null\n}\n",
97
- "import { firstMatch, userAgentToVersion } from \"./util.js\"\n\nexport const detectOpera = () => userAgentToBrowser(window.navigator.userAgent)\n\nconst userAgentToBrowser = (userAgent) => {\n // opera below 13\n if (/opera/i.test(userAgent)) {\n return {\n name: \"opera\",\n version:\n userAgentToVersion(userAgent) ||\n firstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i, userAgent),\n }\n }\n\n // opera above 13\n if (/opr\\/|opios/i.test(userAgent)) {\n return {\n name: \"opera\",\n version:\n firstMatch(/(?:opr|opios)[\\s/](\\S+)/i, userAgent) ||\n userAgentToVersion(userAgent),\n }\n }\n\n return null\n}\n",
98
- "import { secondMatch } from \"./util.js\"\n\nexport const detectEdge = () => userAgentToBrowser(window.navigator.userAgent)\n\nconst userAgentToBrowser = (userAgent) => {\n if (/edg([ea]|ios)/i.test(userAgent)) {\n return {\n name: \"edge\",\n version: secondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i, userAgent),\n }\n }\n return null\n}\n",
99
- "import { firstMatch } from \"./util.js\"\n\nexport const detectFirefox = () =>\n userAgentToBrowser(window.navigator.userAgent)\n\nconst userAgentToBrowser = (userAgent) => {\n if (/firefox|iceweasel|fxios/i.test(userAgent)) {\n return {\n name: \"firefox\",\n version: firstMatch(\n /(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,\n userAgent,\n ),\n }\n }\n return null\n}\n",
100
- "import { userAgentToVersion, firstMatch } from \"./util.js\"\n\nexport const detectChrome = () => {\n return userAgentToBrowser(window.navigator.userAgent)\n}\n\nconst userAgentToBrowser = (userAgent) => {\n if (/chromium/i.test(userAgent)) {\n return {\n name: \"chrome\",\n version:\n firstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i, userAgent) ||\n userAgentToVersion(userAgent),\n }\n }\n\n if (/chrome|crios|crmo/i.test(userAgent)) {\n return {\n name: \"chrome\",\n version: firstMatch(\n /(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,\n userAgent,\n ),\n }\n }\n\n return null\n}\n",
101
- "import { userAgentToVersion } from \"./util.js\"\n\nexport const detectSafari = () => userAgentToBrowser(window.navigator.userAgent)\n\nconst userAgentToBrowser = (userAgent) => {\n if (/safari|applewebkit/i.test(userAgent)) {\n return {\n name: \"safari\",\n version: userAgentToVersion(userAgent),\n }\n }\n return null\n}\n",
102
- "export const detectElectron = () => null // TODO\n",
103
- "import { firstMatch } from \"./util.js\"\n\nexport const detectIOS = () => navigatorToBrowser(window.navigator)\n\nconst navigatorToBrowser = ({ userAgent, appVersion }) => {\n if (/iPhone;/.test(userAgent)) {\n return {\n name: \"ios\",\n version: firstMatch(/OS (\\d+(\\.?_?\\d+)+)/i, appVersion),\n }\n }\n if (/iPad;/.test(userAgent)) {\n return {\n name: \"ios\",\n version: firstMatch(/OS (\\d+(\\.?_?\\d+)+)/i, appVersion),\n }\n }\n return null\n}\n",
104
- "// https://github.com/Ahmdrza/detect-browser/blob/26254f85cf92795655a983bfd759d85f3de850c6/detect-browser.js#L1\n// https://github.com/lancedikson/bowser/blob/master/src/parser-browsers.js#L1\n\nimport { detectFromUserAgentData } from \"./user_agent_data.js\"\nimport { detectAndroid } from \"./detect_android.js\"\nimport { detectInternetExplorer } from \"./detect_internet_explorer.js\"\nimport { detectOpera } from \"./detect_opera.js\"\nimport { detectEdge } from \"./detect_edge.js\"\nimport { detectFirefox } from \"./detect_firefox.js\"\nimport { detectChrome } from \"./detect_chrome.js\"\nimport { detectSafari } from \"./detect_safari.js\"\nimport { detectElectron } from \"./detect_electron.js\"\nimport { detectIOS } from \"./detect_ios.js\"\n\nconst detectorCompose = (detectors) => () => {\n let i = 0\n while (i < detectors.length) {\n const detector = detectors[i]\n i++\n const result = detector()\n if (result) {\n return result\n }\n }\n return null\n}\n\nconst detector = detectorCompose([\n detectFromUserAgentData, // keep this first\n detectOpera,\n detectInternetExplorer,\n detectEdge,\n detectFirefox,\n detectChrome,\n detectSafari,\n detectElectron,\n detectIOS,\n detectAndroid,\n])\n\nexport const detectBrowser = () => {\n const { name = \"other\", version = \"unknown\" } = detector() || {}\n return {\n name: normalizeName(name),\n version: normalizeVersion(version),\n }\n}\n\nconst normalizeName = (name) => {\n return name.toLowerCase()\n}\n\nconst normalizeVersion = (version) => {\n if (version.indexOf(\".\") > -1) {\n const parts = version.split(\".\")\n // remove extraneous .\n return parts.slice(0, 3).join(\".\")\n }\n if (version.indexOf(\"_\") > -1) {\n const parts = version.split(\"_\")\n // remove extraneous _\n return parts.slice(0, 3).join(\"_\")\n }\n return version\n}\n",
105
- "export const executeWithScriptModuleInjection = (code) => {\n const scriptModule = document.createElement(\"script\")\n scriptModule.type = \"module\"\n\n const loadPromise = new Promise((resolve, reject) => {\n scriptModule.onload = () => {\n document.body.removeChild(scriptModule)\n resolve()\n }\n scriptModule.onerror = () => {\n document.body.removeChild(scriptModule)\n reject()\n }\n document.body.appendChild(scriptModule)\n })\n\n scriptModule.src = asBase64Url(code)\n\n return loadPromise\n}\n\nexport const asBase64Url = (text, mimeType = \"application/javascript\") => {\n return `data:${mimeType};base64,${window.btoa(text)}`\n}\n",
106
- "import {\n asBase64Url,\n executeWithScriptModuleInjection,\n} from \"./execute_with_script_module.js\"\n\nexport const supportsImportmap = async ({ remote = true } = {}) => {\n const specifier = asBase64Url(`export default false`)\n const importMap = {\n imports: {\n [specifier]: asBase64Url(`export default true`),\n },\n }\n const importmapScript = document.createElement(\"script\")\n const importmapString = JSON.stringify(importMap, null, \" \")\n importmapScript.type = \"importmap\"\n if (remote) {\n importmapScript.src = `data:application/json;base64,${window.btoa(\n importmapString,\n )}`\n } else {\n importmapScript.textContent = importmapString\n }\n document.body.appendChild(importmapScript)\n\n try {\n await executeWithScriptModuleInjection(\n `import supported from \"${specifier}\"; window.__jsenv_runtime_test_importmap__ = supported`,\n )\n document.body.removeChild(importmapScript)\n const supported = window.__jsenv_runtime_test_importmap__\n delete window.__jsenv_runtime_test_importmap__\n return supported\n } catch (e) {\n document.body.removeChild(importmapScript)\n return false\n }\n}\n",
107
- "import {\n asBase64Url,\n executeWithScriptModuleInjection,\n} from \"./execute_with_script_module.js\"\n\nexport const supportsDynamicImport = async () => {\n const moduleSource = asBase64Url(`export default 42`)\n try {\n await executeWithScriptModuleInjection(\n `window.__jsenv_runtime_test_dynamic_import__ = import(${JSON.stringify(\n moduleSource,\n )})`,\n )\n const namespace = await window.__jsenv_runtime_test_dynamic_import__\n delete window.__jsenv_runtime_test_dynamic_import__\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n",
108
- "import { executeWithScriptModuleInjection } from \"./execute_with_script_module.js\"\n\nexport const supportsTopLevelAwait = async () => {\n try {\n await executeWithScriptModuleInjection(\n `window.__jsenv_runtime_test_top_level_await__ = await Promise.resolve(42)`,\n )\n const supported = window.__jsenv_runtime_test_top_level_await__ === 42\n delete window.__jsenv_runtime_test_top_level_await__\n return supported\n } catch (e) {\n return false\n }\n}\n",
109
- "import {\n asBase64Url,\n executeWithScriptModuleInjection,\n} from \"./execute_with_script_module.js\"\n\nexport const supportsJsonImportAssertions = async () => {\n const jsonBase64Url = asBase64Url(\"42\", \"application/json\")\n const moduleSource = asBase64Url(\n `import data from \"${jsonBase64Url}\" assert { type: \"json\" }\n export default data`,\n )\n try {\n await executeWithScriptModuleInjection(\n `window.__jsenv_runtime_test_json_import_assertion__ = import(${JSON.stringify(\n moduleSource,\n )})`,\n )\n const namespace = await window.__jsenv_runtime_test_json_import_assertion__\n const supported = namespace.default === 42\n delete window.__jsenv_runtime_test_json_import_assertion__\n return supported\n } catch (e) {\n return false\n }\n}\n",
110
- "import {\n asBase64Url,\n executeWithScriptModuleInjection,\n} from \"./execute_with_script_module.js\"\n\nexport const supportsCssImportAssertions = async () => {\n const cssBase64Url = asBase64Url(\"p { color: red; }\", \"text/css\")\n const moduleSource = asBase64Url(\n `import css from \"${cssBase64Url}\" assert { type: \"css\" }\n export default css`,\n )\n try {\n await executeWithScriptModuleInjection(\n `window.__jsenv_runtime_test_css_import_assertion__ = import(${JSON.stringify(\n moduleSource,\n )})`,\n )\n const namespace = await window.__jsenv_runtime_test_css_import_assertion__\n return namespace.default instanceof CSSStyleSheet\n } catch (e) {\n return false\n }\n}\n",
111
- "export const supportsNewStylesheet = () => {\n try {\n // eslint-disable-next-line no-new\n new CSSStyleSheet()\n return true\n } catch (e) {\n return false\n }\n}\n",
112
- "import { fetchJson } from \"../../browser_utils/fetch_json.js\"\nimport { detectBrowser } from \"../../browser_detection/browser_detection.js\"\n\nimport { supportsImportmap } from \"./browser_feature_detect_importmap.js\"\nimport { supportsDynamicImport } from \"./browser_feature_detect_dynamic_import.js\"\nimport { supportsTopLevelAwait } from \"./browser_feature_detect_top_level_await.js\"\nimport { supportsJsonImportAssertions } from \"./browser_feature_detect_import_assertions_json.js\"\nimport { supportsCssImportAssertions } from \"./browser_feature_detect_import_assertions_css.js\"\nimport { supportsNewStylesheet } from \"./browser_feature_detect_new_stylesheet.js\"\n\nexport const scanBrowserRuntimeFeatures = async ({\n coverageHandledFromOutside = false,\n forceCompilation = false,\n forceSource = false,\n} = {}) => {\n const jsenvCompileProfileUrl = \"/__jsenv_compile_profile__\"\n const {\n jsenvDirectoryRelativeUrl,\n inlineImportMapIntoHTML,\n availableCompileIds,\n } = await fetchJson(jsenvCompileProfileUrl)\n const { name, version } = detectBrowser()\n const featuresReport = await detectSupportedFeatures({\n coverageHandledFromOutside,\n inlineImportMapIntoHTML,\n })\n const runtimeReport = {\n env: { browser: true },\n name,\n version,\n featuresReport,\n forceSource,\n forceCompilation,\n }\n const { compileProfile, compileId } = await fetchJson(\n jsenvCompileProfileUrl,\n {\n method: \"POST\",\n headers: {\n \"content-type\": \"application/json\",\n },\n body: JSON.stringify(runtimeReport),\n },\n )\n return {\n jsenvDirectoryRelativeUrl,\n inlineImportMapIntoHTML,\n availableCompileIds,\n runtimeReport,\n compileProfile,\n compileId,\n }\n}\n\nconst detectSupportedFeatures = async ({\n coverageHandledFromOutside,\n inlineImportMapIntoHTML,\n}) => {\n const featuresReport = {}\n featuresReport[\"import_http\"] = true\n featuresReport[\"coverage_js\"] = coverageHandledFromOutside\n // new CSSStyleSheet\n featuresReport[\"new_stylesheet\"] = supportsNewStylesheet()\n // importmap\n // start testing importmap support first and not in paralell\n // so that there is not module script loaded beore importmap is injected\n // it would log an error in chrome console and return undefined\n featuresReport.importmap = await supportsImportmap({\n // chrome supports inline but not remote importmap\n // https://github.com/WICG/import-maps/issues/235\n // at this stage we won't know if the html file will use\n // an importmap or not and if that importmap is inline or specified with an src\n // so we should test if browser support local and remote importmap.\n // But there exploring server can inline importmap by transforming html\n // and in that case we can test only the local importmap support\n // so we test importmap support and the remote one\n remote: !inlineImportMapIntoHTML,\n })\n // dynamic import\n featuresReport[\"import_dynamic\"] = await supportsDynamicImport()\n // top level await\n featuresReport[\"top_level_await\"] = await supportsTopLevelAwait()\n // import assertions\n featuresReport[\"import_assertion_type_json\"] =\n await supportsJsonImportAssertions()\n featuresReport[\"import_assertion_type_css\"] =\n await supportsCssImportAssertions()\n return featuresReport\n}\n",
113
- "import { scanBrowserRuntimeFeatures } from \"@jsenv/core/src/internal/features/browser_feature_detection/browser_feature_detection.js\"\n\nimport { setLinkHrefForParentWindow } from \"../util/iframe_to_parent_href.js\"\nimport { removeForceHideElement } from \"../util/dom.js\"\nimport { enableVariant } from \"../variant/variant.js\"\nimport {\n enableWarningStyle,\n disableWarningStyle,\n} from \"../settings/toolbar_settings.js\"\n\nexport const renderCompilationInToolbar = ({ compileGroup }) => {\n const browserSupportRootNode = document.querySelector(\"#browser_support\")\n const filesCompilationRootNode = document.querySelector(\"#files_compilation\")\n\n removeForceHideElement(browserSupportRootNode)\n removeForceHideElement(filesCompilationRootNode)\n\n scanBrowserRuntimeFeatures().then(\n ({\n jsenvDirectoryRelativeUrl,\n inlineImportMapIntoHTML,\n compileProfile,\n compileId,\n runtimeReport,\n }) => {\n const browserSupport = compileId\n ? \"no\"\n : inlineImportMapIntoHTML\n ? \"partial\"\n : \"full\"\n enableVariant(browserSupportRootNode, {\n browserSupport,\n })\n if (browserSupport === \"no\") {\n browserSupportRootNode.querySelector(\n `a.browser_support_read_more_link`,\n ).onclick = () => {\n // eslint-disable-next-line no-alert\n window.alert(\n `Source files needs to be compiled to be executable in this browser because: ${listWhatIsMissing(\n {\n compileProfile,\n },\n )}`,\n )\n }\n } else if (browserSupport === \"partial\") {\n browserSupportRootNode.querySelector(\n `a.browser_support_read_more_link`,\n ).onclick = () => {\n // eslint-disable-next-line no-alert\n window.alert(\n `Source files (except html) can be executed directly in this browser because: ${listWhatIsSupported(\n {\n inlineImportMapIntoHTML,\n },\n )}`,\n )\n }\n } else if (browserSupport === \"full\") {\n browserSupportRootNode.querySelector(\n `a.browser_support_read_more_link`,\n ).onclick = () => {\n // eslint-disable-next-line no-alert\n window.alert(\n `Source files can be executed directly in this browser because: ${listWhatIsSupported(\n {\n inlineImportMapIntoHTML,\n },\n )}`,\n )\n }\n }\n\n const actualCompileId = compileGroup.compileId\n const expectedCompiledId = compileId\n const shouldSwitchCompileId =\n expectedCompiledId &&\n actualCompileId &&\n actualCompileId !== expectedCompiledId\n const shouldCompile = !actualCompileId && browserSupport === \"no\"\n const filesCompilation = shouldSwitchCompileId\n ? \"mismatch\"\n : actualCompileId\n ? \"yes\"\n : inlineImportMapIntoHTML\n ? \"html_only\"\n : \"no\"\n const hasWarning = shouldCompile || shouldSwitchCompileId\n\n enableVariant(filesCompilationRootNode, {\n filesCompilation,\n compilation_link: shouldSwitchCompileId\n ? \"mismatch\"\n : actualCompileId\n ? \"source\"\n : expectedCompiledId\n ? \"compiled\"\n : \"force\",\n })\n if (filesCompilation === \"yes\") {\n document.querySelector(\n \".files_compilation_text\",\n ).innerHTML = `Files shown are compiled for ${runtimeReport.name}@${runtimeReport.version}`\n }\n setLinkHrefForParentWindow(\n filesCompilationRootNode.querySelector(\"a.link_to_source_files\"),\n `/${compileGroup.fileRelativeUrl}`,\n )\n setLinkHrefForParentWindow(\n filesCompilationRootNode.querySelector(\"a.link_to_compiled_files\"),\n `/${jsenvDirectoryRelativeUrl}${expectedCompiledId}/${compileGroup.fileRelativeUrl}`,\n )\n setLinkHrefForParentWindow(\n filesCompilationRootNode.querySelector(\n \"a.link_to_compilation_forced_files\",\n ),\n `/${jsenvDirectoryRelativeUrl}force/${compileGroup.fileRelativeUrl}`,\n )\n setLinkHrefForParentWindow(\n filesCompilationRootNode.querySelector(\"a.link_to_appropriate_files\"),\n `/${jsenvDirectoryRelativeUrl}${expectedCompiledId}/${compileGroup.fileRelativeUrl}`,\n )\n\n if (hasWarning) {\n enableWarningStyle()\n document\n .querySelector(\".files_compilation_text\")\n .setAttribute(\"data-warning\", \"\")\n document\n .querySelector(\".browser_support_text\")\n .setAttribute(\"data-warning\", \"\")\n document\n .querySelector(\"#settings-button\")\n .setAttribute(\"data-warning\", \"\")\n } else {\n disableWarningStyle()\n document\n .querySelector(\".files_compilation_text\")\n .removeAttribute(\"data-warning\")\n document\n .querySelector(\".browser_support_text\")\n .removeAttribute(\"data-warning\")\n document\n .querySelector(\"#settings-button\")\n .removeAttribute(\"data-warning\")\n }\n },\n )\n}\n\nconst listWhatIsSupported = ({ inlineImportMapIntoHTML }) => {\n const parts = []\n if (inlineImportMapIntoHTML) {\n parts.push(`importmaps are supported (only when inlined in html files)`)\n } else {\n parts.push(`importmaps are supported`)\n }\n parts.push(`dynamic imports are supported`)\n parts.push(`top level await is supported`)\n parts.push(`all features are natively supported`)\n return `\n- ${parts.join(`\n- `)}`\n}\n\nconst listWhatIsMissing = ({ compileProfile }) => {\n const parts = []\n const { missingFeatures } = compileProfile\n if (missingFeatures.importmap) {\n parts.push(`importmaps are not supported`)\n }\n if (missingFeatures.dynamicImport) {\n parts.push(`dynamic imports are not supported`)\n }\n if (missingFeatures.topLevelAwait) {\n parts.push(`top level await is not supported`)\n }\n const missingFeatureNames = Object.keys(missingFeatures).filter((name) => {\n return (\n name !== \"importmap\" &&\n name !== \"dynamicImport\" &&\n name !== \"topLevelAwait\" &&\n name !== \"custom_compiler_patterns\"\n )\n })\n const missingFeatureCount = missingFeatureNames.length\n if (missingFeatureCount > 0) {\n parts.push(\n `${missingFeatureCount} features are missing: ${missingFeatureNames}`,\n )\n }\n const { custom_compiler_patterns } = missingFeatures\n if (custom_compiler_patterns) {\n parts.push(\n `${custom_compiler_patterns.length} custom compilers enabled: ${custom_compiler_patterns}`,\n )\n }\n return `\n- ${parts.join(`\n- `)}`\n}\n",
114
- "import { removeForceHideElement } from \"../util/dom.js\"\nimport { enableVariant } from \"../variant/variant.js\"\nimport {\n toggleTooltip,\n removeAutoShowTooltip,\n autoShowTooltip,\n} from \"../tooltip/tooltip.js\"\n\nlet livereloadingAvailableOnServer = false\nconst parentEventSourceClient = window.parent.__jsenv_event_source_client__\n\nexport const initToolbarEventSource = ({ livereloading }) => {\n removeForceHideElement(document.querySelector(\"#eventsource-indicator\"))\n livereloadingAvailableOnServer = livereloading\n if (!livereloadingAvailableOnServer) {\n disableLivereloadSetting()\n }\n parentEventSourceClient.setConnectionStatusChangeCallback(() => {\n updateEventSourceIndicator()\n })\n const livereloadCheckbox = document.querySelector(\"#toggle-livereload\")\n livereloadCheckbox.checked = parentEventSourceClient.isLivereloadEnabled()\n livereloadCheckbox.onchange = () => {\n parentEventSourceClient.setLivereloadPreference(livereloadCheckbox.checked)\n updateEventSourceIndicator()\n }\n updateEventSourceIndicator()\n}\n\nconst updateEventSourceIndicator = () => {\n const eventSourceIndicator = document.querySelector(\"#eventsource-indicator\")\n const fileChanges = parentEventSourceClient.getFileChanges()\n const changeCount = Object.keys(fileChanges).length\n const eventSourceConnectionState =\n parentEventSourceClient.getConnectionStatus()\n enableVariant(eventSourceIndicator, {\n eventsource: eventSourceConnectionState,\n livereload: parentEventSourceClient.isLivereloadEnabled() ? \"on\" : \"off\",\n changes: changeCount > 0 ? \"yes\" : \"no\",\n })\n\n const variantNode = document.querySelector(\n \"#eventsource-indicator > [data-when-active]\",\n )\n variantNode.querySelector(\"button\").onclick = () => {\n toggleTooltip(eventSourceIndicator)\n }\n\n if (eventSourceConnectionState === \"connecting\") {\n variantNode.querySelector(\"a\").onclick = () => {\n parentEventSourceClient.disconnect()\n }\n } else if (eventSourceConnectionState === \"connected\") {\n removeAutoShowTooltip(eventSourceIndicator)\n if (changeCount) {\n const changeLink = variantNode.querySelector(\".eventsource-changes-link\")\n changeLink.innerHTML = changeCount\n changeLink.onclick = () => {\n console.log(JSON.stringify(fileChanges, null, \" \"), fileChanges)\n // eslint-disable-next-line no-alert\n window.parent.alert(JSON.stringify(fileChanges, null, \" \"))\n }\n variantNode.querySelector(\".eventsource-reload-link\").onclick = () => {\n parentEventSourceClient.reloadIfNeeded()\n }\n }\n } else if (eventSourceConnectionState === \"disconnected\") {\n autoShowTooltip(eventSourceIndicator)\n variantNode.querySelector(\"a\").onclick = () => {\n parentEventSourceClient.connect()\n }\n }\n}\n\nconst disableLivereloadSetting = () => {\n document\n .querySelector(\".settings-livereload\")\n .setAttribute(\"data-disabled\", \"true\")\n document\n .querySelector(\".settings-livereload\")\n .setAttribute(\"title\", `Livereload not available: disabled by server`)\n document.querySelector(\"#toggle-livereload\").disabled = true\n}\n",
115
- "import {\n forceHideElement,\n removeForceHideElement,\n deactivateToolbarSection,\n} from \"../util/dom.js\"\nimport { createHorizontalBreakpoint } from \"../util/responsive.js\"\nimport { hideTooltip } from \"../tooltip/tooltip.js\"\n\nconst WINDOW_SMALL_WIDTH = 420\n\nexport const makeToolbarResponsive = () => {\n // apply responsive design on toolbar icons if needed + add listener on resize screen\n // ideally we should listen breakpoint once, for now restore toolbar\n const overflowMenuBreakpoint = createHorizontalBreakpoint(WINDOW_SMALL_WIDTH)\n const handleOverflowMenuBreakpoint = () => {\n responsiveToolbar(overflowMenuBreakpoint)\n }\n handleOverflowMenuBreakpoint()\n overflowMenuBreakpoint.changed.listen(handleOverflowMenuBreakpoint)\n\n // overflow menu\n document.querySelector(\"#overflow-menu-button\").onclick = () =>\n toggleOverflowMenu()\n}\n\nconst responsiveToolbar = (overflowMenuBreakpoint) => {\n // close all tooltips in case opened\n hideTooltip(document.querySelector(\"#eventsource-indicator\"))\n hideTooltip(document.querySelector(\"#execution-indicator\"))\n // close settings box in case opened\n deactivateToolbarSection(document.querySelector(\"#settings\"))\n\n if (overflowMenuBreakpoint.isBelow()) {\n enableOverflow()\n } else {\n disableOverflow()\n }\n}\n\nlet moves = []\n\nconst enableOverflow = () => {\n // move elements from toolbar to overflow menu\n const responsiveToolbarElements = document.querySelectorAll(\n \"[data-responsive-toolbar-element]\",\n )\n const overflowMenu = document.querySelector(\"#overflow-menu\")\n\n // keep a placeholder element to know where to move them back\n moves = Array.from(responsiveToolbarElements).map((element) => {\n const placeholder = document.createElement(\"div\")\n placeholder.style.display = \"none\"\n placeholder.setAttribute(\"data-placeholder\", \"\")\n element.parentNode.replaceChild(placeholder, element)\n overflowMenu.appendChild(element)\n return { element, placeholder }\n })\n\n document\n .querySelector(\"#toolbar\")\n .setAttribute(\"data-overflow-menu-enabled\", \"\")\n removeForceHideElement(document.querySelector(\"#overflow-menu-button\"))\n}\n\nconst disableOverflow = () => {\n // close overflow menu in case it's open & unselect toggleOverflowMenu button in case it's selected\n hideOverflowMenu()\n deactivateToolbarSection(document.querySelector(\"#overflow-menu\"))\n moves.forEach(({ element, placeholder }) => {\n placeholder.parentNode.replaceChild(element, placeholder)\n })\n moves = []\n\n document\n .querySelector(\"#toolbar\")\n .removeAttribute(\"data-overflow-menu-enabled\")\n forceHideElement(document.querySelector(\"#overflow-menu-button\"))\n}\n\nconst toggleOverflowMenu = () => {\n if (overflowMenuIsVisible()) {\n hideOverflowMenu()\n } else {\n showOverflowMenu()\n }\n}\n\nconst overflowMenuIsVisible = () => {\n const toolbar = document.querySelector(\"#toolbar\")\n return toolbar.hasAttribute(\"data-overflow-menu-visible\")\n}\n\nconst showOverflowMenu = () => {\n const toolbar = document.querySelector(\"#toolbar\")\n document.querySelector(\"#overflow-menu\").setAttribute(\"data-animate\", \"\")\n toolbar.setAttribute(\"data-overflow-menu-visible\", \"\")\n}\n\nconst hideOverflowMenu = () => {\n const toolbar = document.querySelector(\"#toolbar\")\n toolbar.removeAttribute(\"data-overflow-menu-visible\")\n document.querySelector(\"#overflow-menu\").removeAttribute(\"data-animate\")\n}\n",
116
- "import { urlIsInsideOf } from \"@jsenv/filesystem/src/urlIsInsideOf.js\"\nimport { urlToRelativeUrl } from \"@jsenv/filesystem/src/urlToRelativeUrl.js\"\n\nimport { startJavaScriptAnimation } from \"../toolbar/util/animation.js\"\nimport \"./focus/toolbar_focus.js\"\nimport { setLinkHrefForParentWindow } from \"./util/iframe_to_parent_href.js\"\nimport {\n getToolbarIframe,\n deactivateToolbarSection,\n setStyles,\n} from \"./util/dom.js\"\nimport { createPreference } from \"./util/preferences.js\"\nimport { hideTooltip, hideAllTooltip } from \"./tooltip/tooltip.js\"\nimport {\n renderToolbarSettings,\n hideSettings,\n} from \"./settings/toolbar_settings.js\"\nimport { renderToolbarNotification } from \"./notification/toolbar_notification.js\"\nimport { renderToolbarTheme } from \"./theme/toolbar_theme.js\"\nimport { renderToolbarAnimation } from \"./animation/toolbar_animation.js\"\nimport { renderExecutionInToolbar } from \"./execution/toolbar_execution.js\"\nimport { renderCompilationInToolbar } from \"./compilation/toolbar_compilation.js\"\nimport { initToolbarEventSource } from \"./eventsource/toolbar_eventsource.js\"\nimport { makeToolbarResponsive } from \"./responsive/toolbar_responsive.js\"\n\nconst toolbarVisibilityPreference = createPreference(\"toolbar\")\n\nconst renderToolbar = async ({ exploringJSON }) => {\n const executedFileCompiledUrl = window.parent.location.href\n const compileServerOrigin = window.parent.location.origin\n // this should not block the whole toolbar rendering + interactivity\n const { jsenvDirectoryRelativeUrl, livereloading } = exploringJSON\n const compileGroup = getCompileGroup({\n executedFileCompiledUrl,\n jsenvDirectoryRelativeUrl,\n compileServerOrigin,\n })\n const executedFileRelativeUrl = compileGroup.fileRelativeUrl\n\n const toolbarOverlay = document.querySelector(\"#toolbar-overlay\")\n toolbarOverlay.onclick = () => {\n hideAllTooltip()\n hideSettings()\n }\n\n const toolbarVisible = toolbarVisibilityPreference.has()\n ? toolbarVisibilityPreference.get()\n : true\n\n if (toolbarVisible) {\n showToolbar({ animate: false })\n } else {\n hideToolbar({ animate: false })\n }\n\n setLinkHrefForParentWindow(\n document.querySelector(\".toolbar-icon-wrapper\"),\n \"/\",\n )\n\n renderToolbarNotification()\n makeToolbarResponsive()\n renderToolbarSettings()\n renderToolbarAnimation()\n renderToolbarTheme()\n renderExecutionInToolbar({ executedFileRelativeUrl })\n renderCompilationInToolbar({ compileGroup })\n // this might become active but we need to detect this somehow\n deactivateToolbarSection(document.querySelector(\"#file-list-link\"))\n initToolbarEventSource({\n executedFileRelativeUrl,\n livereloading,\n })\n\n // if user click enter or space quickly while closing toolbar\n // it will cancel the closing\n // that's why I used toggleToolbar and not hideToolbar\n document.querySelector(\"#button-close-toolbar\").onclick = () =>\n toogleToolbar()\n}\n\nconst toogleToolbar = () => {\n if (toolbarIsVisible()) {\n hideToolbar()\n } else {\n showToolbar()\n }\n}\n\nconst toolbarIsVisible = () =>\n document.documentElement.hasAttribute(\"data-toolbar-visible\")\n\nlet hideToolbar = () => {\n // toolbar hidden by default, nothing to do to hide it by default\n sendEventToParent(\"toolbar-visibility-change\", false)\n}\n\n// (by the way it might be cool to have the toolbar auto show when)\n// it has something to say (being disconnected from livereload server)\nconst showToolbar = ({ animate = true } = {}) => {\n toolbarVisibilityPreference.set(true)\n if (animate) {\n document.documentElement.setAttribute(\"data-toolbar-animation\", \"\")\n } else {\n document.documentElement.removeAttribute(\"data-toolbar-animation\")\n }\n document.documentElement.setAttribute(\"data-toolbar-visible\", \"\")\n\n sendEventToParent(\"toolbar-visibility-change\", true)\n\n const toolbarIframe = getToolbarIframe()\n const toolbarIframeParent = toolbarIframe.parentNode\n const parentWindow = window.parent\n const parentDocumentElement =\n parentWindow.document.compatMode === \"CSS1Compat\"\n ? parentWindow.document.documentElement\n : parentWindow.document.body\n\n const scrollYMax =\n parentDocumentElement.scrollHeight - parentWindow.innerHeight\n const scrollY = parentDocumentElement.scrollTop\n const scrollYRemaining = scrollYMax - scrollY\n\n setStyles(toolbarIframeParent, {\n \"transition-property\": \"padding-bottom\",\n \"transition-duration\": \"300ms\",\n })\n // maybe we should use js animation here because we would not conflict with css\n const restoreToolbarIframeParentStyles = setStyles(toolbarIframeParent, {\n \"scroll-padding-bottom\": \"40px\", // same here we should add 40px\n \"padding-bottom\": \"40px\", // if there is already one we should add 40px\n })\n const restoreToolbarIframeStyles = setStyles(toolbarIframe, {\n height: \"40px\",\n visibility: \"visible\",\n })\n\n if (scrollYRemaining < 40 && scrollYMax > 0) {\n const scrollEnd = scrollY + 40\n startJavaScriptAnimation({\n duration: 300,\n onProgress: ({ progress }) => {\n const value = scrollY + (scrollEnd - scrollY) * progress\n parentDocumentElement.scrollTop = value\n },\n })\n }\n\n hideToolbar = () => {\n restoreToolbarIframeParentStyles()\n restoreToolbarIframeStyles()\n\n hideTooltip(document.querySelector(\"#eventsource-indicator\"))\n hideTooltip(document.querySelector(\"#execution-indicator\"))\n toolbarVisibilityPreference.set(false)\n if (animate) {\n document.documentElement.setAttribute(\"data-toolbar-animation\", \"\")\n } else {\n document.documentElement.removeAttribute(\"data-toolbar-animation\")\n }\n document.documentElement.removeAttribute(\"data-toolbar-visible\")\n sendEventToParent(\"toolbar-visibility-change\", false)\n }\n}\n\nconst getCompileGroup = ({\n executedFileCompiledUrl,\n jsenvDirectoryRelativeUrl,\n compileServerOrigin,\n}) => {\n const jsenvDirectoryServerUrl = new URL(\n jsenvDirectoryRelativeUrl,\n compileServerOrigin,\n ).href\n if (urlIsInsideOf(executedFileCompiledUrl, jsenvDirectoryServerUrl)) {\n const afterCompileDirectory = urlToRelativeUrl(\n executedFileCompiledUrl,\n jsenvDirectoryServerUrl,\n )\n const slashIndex = afterCompileDirectory.indexOf(\"/\")\n const fileRelativeUrl = afterCompileDirectory.slice(slashIndex + 1)\n return {\n fileRelativeUrl,\n compileId: afterCompileDirectory.slice(0, slashIndex),\n }\n }\n return {\n fileRelativeUrl: new URL(executedFileCompiledUrl).pathname.slice(1),\n compileId: null,\n }\n}\n\nconst addExternalCommandCallback = (command, callback) => {\n const messageEventCallback = (messageEvent) => {\n const { data } = messageEvent\n if (typeof data !== \"object\") {\n return\n }\n const { __jsenv__ } = data\n if (!__jsenv__) {\n return\n }\n\n if (__jsenv__.command !== command) {\n return\n }\n\n callback(...__jsenv__.args)\n }\n\n window.addEventListener(\"message\", messageEventCallback)\n return () => {\n window.removeEventListener(\"message\", messageEventCallback)\n }\n}\n\nconst sendEventToParent = (name, data) => {\n window.parent.postMessage(\n {\n __jsenv__: {\n event: name,\n data,\n },\n },\n \"*\",\n )\n}\n\nwindow.toolbar = {\n show: showToolbar,\n hide: () => hideToolbar(),\n}\n\naddExternalCommandCallback(\"renderToolbar\", (data) => {\n renderToolbar(data)\n})\naddExternalCommandCallback(\"showToolbar\", () => {\n showToolbar()\n})\naddExternalCommandCallback(\"hideToolbar\", () => {\n hideToolbar()\n})\nsendEventToParent(\"toolbar_ready\")\n"
117
- ],
118
- "names": [
119
- "arrayLikeToArray",
120
- "arr",
121
- "len",
122
- "length",
123
- "arr2",
124
- "Array",
125
- "i",
126
- "isArray",
127
- "_iterableToArray",
128
- "iter",
129
- "Symbol",
130
- "iterator",
131
- "from",
132
- "unsupportedIterableToArray",
133
- "o",
134
- "minLen",
135
- "n",
136
- "Object",
137
- "prototype",
138
- "toString",
139
- "call",
140
- "slice",
141
- "constructor",
142
- "name",
143
- "test",
144
- "TypeError",
145
- "arrayWithoutHoles",
146
- "iterableToArray",
147
- "nonIterableSpread",
148
- "nativeTypeOf",
149
- "obj",
150
- "customTypeOf",
151
- "urlIsInsideOf",
152
- "url",
153
- "otherUrl",
154
- "urlObject",
155
- "URL",
156
- "otherUrlObject",
157
- "origin",
158
- "urlPathname",
159
- "pathname",
160
- "otherUrlPathname",
161
- "isInside",
162
- "startsWith",
163
- "getCommonPathname",
164
- "otherPathname",
165
- "firstDifferentCharacterIndex",
166
- "findFirstDifferentCharacterIndex",
167
- "commonString",
168
- "charAt",
169
- "firstDifferentSlashIndex",
170
- "lastIndexOf",
171
- "string",
172
- "otherString",
173
- "maxCommonLength",
174
- "Math",
175
- "min",
176
- "char",
177
- "otherChar",
178
- "pathnameToParentPathname",
179
- "slashLastIndex",
180
- "urlToRelativeUrl",
181
- "baseUrl",
182
- "baseUrlObject",
183
- "protocol",
184
- "urlAsString",
185
- "String",
186
- "username",
187
- "password",
188
- "host",
189
- "afterUrlScheme",
190
- "hash",
191
- "search",
192
- "baseUrlRessourceWithoutLeadingSlash",
193
- "basePathname",
194
- "commonPathname",
195
- "specificPathname",
196
- "baseSpecificPathname",
197
- "includes",
198
- "baseSpecificParentPathname",
199
- "relativeDirectoriesNotation",
200
- "replace",
201
- "relativeUrl",
202
- "source",
203
- "excluded",
204
- "target",
205
- "sourceKeys",
206
- "keys",
207
- "key",
208
- "indexOf",
209
- "objectWithoutPropertiesLoose",
210
- "getOwnPropertySymbols",
211
- "sourceSymbolKeys",
212
- "propertyIsEnumerable",
213
- "updateIframeOverflowOnParentWindow",
214
- "window",
215
- "parent",
216
- "aTooltipIsOpened",
217
- "document",
218
- "querySelector",
219
- "settingsAreOpened",
220
- "enableIframeOverflowOnParentWindow",
221
- "disableIframeOverflowOnParentWindow",
222
- "iframeOverflowEnabled",
223
- "iframe",
224
- "getToolbarIframe",
225
- "transitionDuration",
226
- "style",
227
- "setStyles",
228
- "setTimeout",
229
- "iframes",
230
- "querySelectorAll",
231
- "find",
232
- "contentWindow",
233
- "forceHideElement",
234
- "element",
235
- "setAttribute",
236
- "removeForceHideElement",
237
- "removeAttribute",
238
- "styles",
239
- "elementStyle",
240
- "restoreStyles",
241
- "map",
242
- "styleName",
243
- "restore",
244
- "currentStyle",
245
- "forEach",
246
- "toolbarSectionIsActive",
247
- "hasAttribute",
248
- "activateToolbarSection",
249
- "deactivateToolbarSection",
250
- "startJavaScriptAnimation",
251
- "duration",
252
- "timingFunction",
253
- "t",
254
- "onProgress",
255
- "onCancel",
256
- "onComplete",
257
- "isNaN",
258
- "parseInt",
259
- "startMs",
260
- "performance",
261
- "now",
262
- "currentRequestAnimationFrameId",
263
- "done",
264
- "rawProgress",
265
- "progress",
266
- "handler",
267
- "nowMs",
268
- "requestAnimationFrame",
269
- "stop",
270
- "cancelAnimationFrame",
271
- "addEventListener",
272
- "mousedownEvent",
273
- "defaultPrevented",
274
- "documentElement",
275
- "touchstartEvent",
276
- "keydownEvent",
277
- "setLinkHrefForParentWindow",
278
- "a",
279
- "href",
280
- "onclick",
281
- "e",
282
- "ctrlKey",
283
- "metaKey",
284
- "preventDefault",
285
- "location",
286
- "createPreference",
287
- "has",
288
- "localStorage",
289
- "hasOwnProperty",
290
- "get",
291
- "JSON",
292
- "parse",
293
- "getItem",
294
- "undefined",
295
- "set",
296
- "value",
297
- "setItem",
298
- "stringify",
299
- "toggleTooltip",
300
- "hideTooltip",
301
- "showTooltip",
302
- "autoShowTooltip",
303
- "removeAutoShowTooltip",
304
- "hideAllTooltip",
305
- "elementsWithTooltip",
306
- "elementWithTooltip",
307
- "enableVariant",
308
- "rootNode",
309
- "variables",
310
- "nodesNotMatching",
311
- "attributeIndicatingACondition",
312
- "nodeNotMatching",
313
- "conditionAttributeValue",
314
- "getAttribute",
315
- "matches",
316
- "testCondition",
317
- "renameAttribute",
318
- "attributeIndicatingAMatch",
319
- "nodesMatching",
320
- "nodeMatching",
321
- "condition",
322
- "parseCondition",
323
- "some",
324
- "colonIndex",
325
- "node",
326
- "newName",
327
- "renderToolbarSettings",
328
- "toggleSettings",
329
- "settingsAreVisible",
330
- "hideSettings",
331
- "showSettings",
332
- "enableWarningStyle",
333
- "has_warning",
334
- "disableWarningStyle",
335
- "defineProperty",
336
- "enumerable",
337
- "configurable",
338
- "writable",
339
- "ownKeys",
340
- "object",
341
- "enumerableOnly",
342
- "symbols",
343
- "filter",
344
- "sym",
345
- "getOwnPropertyDescriptor",
346
- "push",
347
- "apply",
348
- "_objectSpread2",
349
- "arguments",
350
- "getOwnPropertyDescriptors",
351
- "defineProperties",
352
- "_async",
353
- "f",
354
- "args",
355
- "Promise",
356
- "resolve",
357
- "reject",
358
- "_await",
359
- "then",
360
- "direct",
361
- "notificationAvailable",
362
- "Notification",
363
- "notificationPreference",
364
- "arrayOfOpenedNotifications",
365
- "renderToolbarNotification",
366
- "applyNotificationNotAvailableEffects",
367
- "updatePermission",
368
- "notifPermission",
369
- "permission",
370
- "applyNotificationDefaultEffects",
371
- "applyNotificationDeniedEffects",
372
- "applyNotificationGrantedEffects",
373
- "notifCheckbox",
374
- "notifSetting",
375
- "disabled",
376
- "applyNotificationNOTGrantedEffects",
377
- "notif_granted",
378
- "checked",
379
- "getNotificationPreference",
380
- "onchange",
381
- "setNotificationPreference",
382
- "notification",
383
- "close",
384
- "requestPermission",
385
- "notifyExecutionResult",
386
- "executedFileRelativeUrl",
387
- "execution",
388
- "previousExecution",
389
- "notificationEnabled",
390
- "notificationOptions",
391
- "lang",
392
- "icon",
393
- "getFaviconHref",
394
- "clickToFocus",
395
- "clickToClose",
396
- "status",
397
- "notify",
398
- "body",
399
- "link",
400
- "title",
401
- "options",
402
- "focus",
403
- "onclose",
404
- "index",
405
- "splice",
406
- "requestPromise",
407
- "DARK_THEME",
408
- "LIGHT_THEME",
409
- "themePreference",
410
- "renderToolbarTheme",
411
- "theme",
412
- "getThemePreference",
413
- "checkbox",
414
- "setTheme",
415
- "setThemePreference",
416
- "animationPreference",
417
- "renderToolbarAnimation",
418
- "animCheckbox",
419
- "getAnimationPreference",
420
- "setAnimationPreference",
421
- "onPreferenceChange",
422
- "enableAnimation",
423
- "disableAnimation",
424
- "createHorizontalBreakpoint",
425
- "breakpointValue",
426
- "createBreakpoint",
427
- "windowWidthMeasure",
428
- "createMeasure",
429
- "compute",
430
- "register",
431
- "currentValue",
432
- "changed",
433
- "createSignal",
434
- "unregister",
435
- "previousValue",
436
- "callbackArray",
437
- "listen",
438
- "callback",
439
- "innerWidth",
440
- "removeEventListener",
441
- "measure",
442
- "getBreakpointState",
443
- "currentBreakpointState",
444
- "isAbove",
445
- "isBelow",
446
- "breakpointChanged",
447
- "breakpointState",
448
- "breakpointStatePrevious",
449
- "WINDOW_MEDIUM_WIDTH",
450
- "renderExecutionInToolbar",
451
- "applyExecutionIndicator",
452
- "input",
453
- "fileWidthBreakpoint",
454
- "handleFileWidthBreakpoint",
455
- "resizeInput",
456
- "__jsenv__",
457
- "executionResultPromise",
458
- "startTime",
459
- "endTime",
460
- "executionStorageKey",
461
- "sessionStorage",
462
- "executionIndicator",
463
- "variantNode",
464
- "textContent",
465
- "computeText",
466
- "size",
467
- "width",
468
- "result",
469
- "fetchUsingXHR",
470
- "signal",
471
- "method",
472
- "credentials",
473
- "headers",
474
- "headersPromise",
475
- "createPromiseAndHooks",
476
- "bodyPromise",
477
- "xhr",
478
- "XMLHttpRequest",
479
- "failure",
480
- "error",
481
- "settled",
482
- "cleanup",
483
- "ontimeout",
484
- "onerror",
485
- "onload",
486
- "onreadystatechange",
487
- "Error",
488
- "createRequestError",
489
- "abort",
490
- "abortError",
491
- "readyState",
492
- "open",
493
- "setRequestHeader",
494
- "withCredentials",
495
- "computeWithCredentials",
496
- "hasBlob",
497
- "responseType",
498
- "send",
499
- "responseUrl",
500
- "responseURL",
501
- "responseStatus",
502
- "responseStatusText",
503
- "statusText",
504
- "responseHeaders",
505
- "getHeadersFromXHR",
506
- "readBody",
507
- "response",
508
- "responseText",
509
- "responseBody",
510
- "responseBodyType",
511
- "detectBodyType",
512
- "text",
513
- "blobToText",
514
- "arrayBufferToText",
515
- "buffer",
516
- "json",
517
- "blob",
518
- "Blob",
519
- "cloneBuffer",
520
- "arrayBuffer",
521
- "blobToArrayBuffer",
522
- "formData",
523
- "hasFormData",
524
- "textToFormData",
525
- "canUseBlob",
526
- "FileReader",
527
- "FormData",
528
- "hasArrayBuffer",
529
- "ArrayBuffer",
530
- "hasSearchParams",
531
- "URLSearchParams",
532
- "stack",
533
- "promise",
534
- "res",
535
- "rej",
536
- "originSameAsGlobalOrigin",
537
- "_typeof",
538
- "globalOrigin",
539
- "hrefToOrigin",
540
- "isPrototypeOf",
541
- "isDataView",
542
- "isArrayBufferView",
543
- "headerMap",
544
- "headersString",
545
- "getAllResponseHeaders",
546
- "lines",
547
- "trim",
548
- "split",
549
- "line",
550
- "parts",
551
- "shift",
552
- "join",
553
- "toLowerCase",
554
- "scheme",
555
- "hrefToScheme",
556
- "secondProtocolSlashIndex",
557
- "pathnameSlashIndex",
558
- "DataView",
559
- "isView",
560
- "viewClasses",
561
- "form",
562
- "bytes",
563
- "append",
564
- "decodeURIComponent",
565
- "reader",
566
- "fileReaderReady",
567
- "readAsArrayBuffer",
568
- "readAsText",
569
- "view",
570
- "Uint8Array",
571
- "chars",
572
- "fromCharCode",
573
- "byteLength",
574
- "fetchNative",
575
- "mode",
576
- "fetch",
577
- "responseToHeaders",
578
- "fetchUrl",
579
- "AbortController",
580
- "fetchJson",
581
- "detectFromUserAgentData",
582
- "userAgentData",
583
- "navigator",
584
- "brands",
585
- "brand",
586
- "version",
587
- "firstMatch",
588
- "regexp",
589
- "match",
590
- "secondMatch",
591
- "userAgentToVersion",
592
- "userAgent",
593
- "detectAndroid",
594
- "navigatorToBrowser",
595
- "appVersion",
596
- "detectInternetExplorer",
597
- "userAgentToBrowser",
598
- "detectOpera",
599
- "detectEdge",
600
- "detectFirefox",
601
- "detectChrome",
602
- "detectSafari",
603
- "detectElectron",
604
- "detectIOS",
605
- "detectorCompose",
606
- "detectors",
607
- "detector",
608
- "detectBrowser",
609
- "normalizeName",
610
- "normalizeVersion",
611
- "executeWithScriptModuleInjection",
612
- "code",
613
- "scriptModule",
614
- "createElement",
615
- "type",
616
- "loadPromise",
617
- "removeChild",
618
- "appendChild",
619
- "src",
620
- "asBase64Url",
621
- "mimeType",
622
- "btoa",
623
- "recover",
624
- "supportsImportmap",
625
- "remote",
626
- "specifier",
627
- "importMap",
628
- "imports",
629
- "importmapScript",
630
- "importmapString",
631
- "supported",
632
- "__jsenv_runtime_test_importmap__",
633
- "supportsDynamicImport",
634
- "moduleSource",
635
- "__jsenv_runtime_test_dynamic_import__",
636
- "namespace",
637
- "default",
638
- "supportsTopLevelAwait",
639
- "__jsenv_runtime_test_top_level_await__",
640
- "supportsJsonImportAssertions",
641
- "jsonBase64Url",
642
- "__jsenv_runtime_test_json_import_assertion__",
643
- "supportsCssImportAssertions",
644
- "cssBase64Url",
645
- "__jsenv_runtime_test_css_import_assertion__",
646
- "CSSStyleSheet",
647
- "supportsNewStylesheet",
648
- "scanBrowserRuntimeFeatures",
649
- "coverageHandledFromOutside",
650
- "forceCompilation",
651
- "forceSource",
652
- "jsenvCompileProfileUrl",
653
- "jsenvDirectoryRelativeUrl",
654
- "inlineImportMapIntoHTML",
655
- "availableCompileIds",
656
- "detectSupportedFeatures",
657
- "featuresReport",
658
- "runtimeReport",
659
- "env",
660
- "browser",
661
- "compileProfile",
662
- "compileId",
663
- "importmap",
664
- "renderCompilationInToolbar",
665
- "compileGroup",
666
- "browserSupportRootNode",
667
- "filesCompilationRootNode",
668
- "browserSupport",
669
- "alert",
670
- "listWhatIsMissing",
671
- "listWhatIsSupported",
672
- "actualCompileId",
673
- "expectedCompiledId",
674
- "shouldSwitchCompileId",
675
- "shouldCompile",
676
- "filesCompilation",
677
- "hasWarning",
678
- "compilation_link",
679
- "innerHTML",
680
- "fileRelativeUrl",
681
- "missingFeatures",
682
- "dynamicImport",
683
- "topLevelAwait",
684
- "missingFeatureNames",
685
- "missingFeatureCount",
686
- "custom_compiler_patterns",
687
- "livereloadingAvailableOnServer",
688
- "parentEventSourceClient",
689
- "__jsenv_event_source_client__",
690
- "initToolbarEventSource",
691
- "livereloading",
692
- "disableLivereloadSetting",
693
- "setConnectionStatusChangeCallback",
694
- "updateEventSourceIndicator",
695
- "livereloadCheckbox",
696
- "isLivereloadEnabled",
697
- "setLivereloadPreference",
698
- "eventSourceIndicator",
699
- "fileChanges",
700
- "getFileChanges",
701
- "changeCount",
702
- "eventSourceConnectionState",
703
- "getConnectionStatus",
704
- "eventsource",
705
- "livereload",
706
- "changes",
707
- "disconnect",
708
- "changeLink",
709
- "console",
710
- "log",
711
- "reloadIfNeeded",
712
- "connect",
713
- "WINDOW_SMALL_WIDTH",
714
- "makeToolbarResponsive",
715
- "overflowMenuBreakpoint",
716
- "handleOverflowMenuBreakpoint",
717
- "responsiveToolbar",
718
- "toggleOverflowMenu",
719
- "enableOverflow",
720
- "disableOverflow",
721
- "moves",
722
- "responsiveToolbarElements",
723
- "overflowMenu",
724
- "placeholder",
725
- "display",
726
- "parentNode",
727
- "replaceChild",
728
- "hideOverflowMenu",
729
- "overflowMenuIsVisible",
730
- "showOverflowMenu",
731
- "toolbar",
732
- "toolbarVisibilityPreference",
733
- "renderToolbar",
734
- "exploringJSON",
735
- "executedFileCompiledUrl",
736
- "compileServerOrigin",
737
- "getCompileGroup",
738
- "toolbarOverlay",
739
- "toolbarVisible",
740
- "showToolbar",
741
- "animate",
742
- "hideToolbar",
743
- "toogleToolbar",
744
- "toolbarIsVisible",
745
- "sendEventToParent",
746
- "toolbarIframe",
747
- "toolbarIframeParent",
748
- "parentWindow",
749
- "parentDocumentElement",
750
- "compatMode",
751
- "scrollYMax",
752
- "scrollHeight",
753
- "innerHeight",
754
- "scrollY",
755
- "scrollTop",
756
- "scrollYRemaining",
757
- "restoreToolbarIframeParentStyles",
758
- "restoreToolbarIframeStyles",
759
- "height",
760
- "visibility",
761
- "scrollEnd",
762
- "jsenvDirectoryServerUrl",
763
- "afterCompileDirectory",
764
- "slashIndex",
765
- "addExternalCommandCallback",
766
- "command",
767
- "messageEventCallback",
768
- "messageEvent",
769
- "data",
770
- "postMessage",
771
- "event",
772
- "show",
773
- "hide"
774
- ],
775
- "mappings": ";;;;;AAAA;AACe,eAASA,gBAAT,CAA0BC,GAA1B,EAA+BC,GAA/B,EAAoC;YAC7CA,GAAG,IAAI,IAAPA,IAAeA,GAAG,GAAGD,GAAG,CAACE,QAAQD,GAAG,GAAGD,GAAG,CAACE,MAAVD;YACjCE,IAAI,GAAG,IAAIC,KAAJ,CAAUH,GAAV;;aACN,IAAII,CAAC,GAAG,GAAGA,CAAC,GAAGJ,KAAKI,CAAC;AAAIF,UAAAA,IAAI,CAACE,CAAD,CAAJF,GAAUH,GAAG,CAACK,CAAD,CAAbF;;;eACvBA;;;8BCFM,UAACH,GAAD,EAAS;YAClBI,KAAK,CAACE,OAANF,CAAcJ,GAAdI,GAAoB,OAAOL,gBAAgB,CAACC,GAAD,CAAvB;AAD1B;;ACHe,eAASO,gBAAT,CAA0BC,IAA1B,EAAgC;YAE1C,OAAOC,MAAP,KAAkB,WAAlB,IAAiCD,IAAI,CAACC,MAAM,CAACC,QAAR,CAAJF,IAAyB,IAA1D,IACDA,IAAI,CAAC,YAAD,CAAJA,IAAsB,MAEtB,OAAOJ,KAAK,CAACO,IAANP,CAAWI,IAAXJ,CAAP;;ACLJ;;;AAGe,eAASQ,0BAAT,CAAoCC,CAApC,EAAuCC,MAAvC,EAA+C;YACxD,CAACD,GAAG;YACJ,OAAOA,CAAP,KAAa,UAAU,OAAOd,gBAAgB,CAACc,CAAD,EAAIC,MAAJ,CAAvB;YACvBC,CAAC,GAAGC,MAAM,CAACC,SAAPD,CAAiBE,QAAjBF,CAA0BG,IAA1BH,CAA+BH,CAA/BG,EAAkCI,KAAlCJ,CAAwC,CAAxCA,EAA2C,CAAC,CAA5CA;YACJD,CAAC,KAAK,QAANA,IAAkBF,CAAC,CAACQ,aAAaN,CAAC,GAAGF,CAAC,CAACQ,WAAFR,CAAcS,IAAlBP;YACjCA,CAAC,KAAK,KAANA,IAAeA,CAAC,KAAK,OAAO,OAAOX,KAAK,CAACO,IAANP,CAAWS,CAAXT,CAAP;YAC5BW,CAAC,KAAK,WAANA,IAAqB,2CAA2CQ,IAA3C,CAAgDR,CAAhD,GACvB,OAAOhB,gBAAgB,CAACc,CAAD,EAAIC,MAAJ,CAAvB;;;8BCVW,YAAM;cACb,IAAIU,SAAJ,CACJ,uIADI;AADR;;+BCKe,UAACxB,GAAD;eACbyB,iBAAiB,CAACzB,GAAD,CAAjByB,IACAC,gBAAe,CAAC1B,GAAD,CADfyB,IAEAb,0BAA0B,CAACZ,GAAD,CAF1ByB,IAGAE,iBAAiB;AAJnB;;ACLA,UAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,GAAD;eAAS,OAAOA;AAArC,OAAA;;AAEA,UAAMC,YAAY,GAAG,SAAfA,YAAe,CAACD,GAAD,EAAS;eACrBA,GAAG,IACR,OAAOpB,MAAP,KAAkB,UADboB,IAELA,GAAG,CAACR,WAAJQ,KAAoBpB,MAFfoB,IAGLA,GAAG,KAAKpB,MAAM,CAACQ,SAHVY,GAIH,QAJGA,GAKH,OAAOA;AANb,OAAA;;oBASe,OAAOpB,MAAP,KAAkB,UAAlB,IAAgC,OAAOA,MAAM,CAACC,QAAd,KAA2B,QAA3D,GACXkB,YADW,GAEXE;;ACbG,UAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,GAAD,EAAMC,QAAN,EAAmB;YACxCC,SAAS,GAAG,IAAIC,GAAJ,CAAQH,GAAR;YACZI,cAAc,GAAG,IAAID,GAAJ,CAAQF,QAAR;;YAEnBC,SAAS,CAACG,MAAVH,KAAqBE,cAAc,CAACC,QAAQ;iBACvC;;;YAGHC,WAAW,GAAGJ,SAAS,CAACK;YACxBC,gBAAgB,GAAGJ,cAAc,CAACG;;YACpCD,WAAW,KAAKE,kBAAkB;iBAC7B;;;YAGHC,QAAQ,GAAGH,WAAW,CAACI,UAAZJ,CAAuBE,gBAAvBF;eACVG;AAfF,OAAA;;ACAA,UAAME,iBAAiB,GAAG,SAApBA,iBAAoB,CAACJ,QAAD,EAAWK,aAAX,EAA6B;YACtDC,4BAA4B,GAAGC,gCAAgC,CACnEP,QADmE,EAEnEK,aAFmE,EADT;;YAOxDC,4BAA4B,KAAK,CAAC,GAAG;iBAChCN;;;YAGHQ,YAAY,GAAGR,QAAQ,CAACnB,KAATmB,CAAe,CAAfA,EAAkBM,4BAA4B,GAAG,CAAjDN,EAXuC;;YAcxDA,QAAQ,CAACS,MAATT,CAAgBM,4BAAhBN,MAAkD,KAAK;iBAClDQ;;;YAGLH,aAAa,CAACI,MAAdJ,CAAqBC,4BAArBD,MAAuD,KAAK;iBACvDG;;;YAGHE,wBAAwB,GAAGF,YAAY,CAACG,WAAbH,CAAyB,GAAzBA;eAC1BR,QAAQ,CAACnB,KAATmB,CAAe,CAAfA,EAAkBU,wBAAwB,GAAG,CAA7CV;AAvBF,OAAA;;AA0BP,UAAMO,gCAAgC,GAAG,SAAnCA,gCAAmC,CAACK,MAAD,EAASC,WAAT,EAAyB;YAC1DC,eAAe,GAAGC,IAAI,CAACC,GAALD,CAASH,MAAM,CAACjD,MAAhBoD,EAAwBF,WAAW,CAAClD,MAApCoD;YACpBjD,CAAC,GAAG;;eACDA,CAAC,GAAGgD,iBAAiB;cACpBG,IAAI,GAAGL,MAAM,CAACH,MAAPG,CAAc9C,CAAd8C;cACPM,SAAS,GAAGL,WAAW,CAACJ,MAAZI,CAAmB/C,CAAnB+C;;cACdI,IAAI,KAAKC,WAAW;mBACfpD;;;AAETA,UAAAA,CAAC;;;YAEC8C,MAAM,CAACjD,MAAPiD,KAAkBC,WAAW,CAAClD,QAAQ;iBACjC,CAAC;AAZsD,SAAA;;;eAezDmD;AAfT,OAAA;;AC1BO,UAAMK,wBAAwB,GAAG,SAA3BA,wBAA2B,CAACnB,QAAD,EAAc;YAC9CoB,cAAc,GAAGpB,QAAQ,CAACW,WAATX,CAAqB,GAArBA;;YACnBoB,cAAc,KAAK,CAAC,GAAG;iBAClB;;;eAGFpB,QAAQ,CAACnB,KAATmB,CAAe,CAAfA,EAAkBoB,cAAc,GAAG,CAAnCpB;AANF,OAAA;;ACGA,UAAMqB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC5B,GAAD,EAAM6B,OAAN,EAAkB;YAC1C3B,SAAS,GAAG,IAAIC,GAAJ,CAAQH,GAAR;YACZ8B,aAAa,GAAG,IAAI3B,GAAJ,CAAQ0B,OAAR;;YAElB3B,SAAS,CAAC6B,QAAV7B,KAAuB4B,aAAa,CAACC,UAAU;cAC3CC,WAAW,GAAGC,MAAM,CAACjC,GAAD;iBACnBgC;;;YAIP9B,SAAS,CAACgC,QAAVhC,KAAuB4B,aAAa,CAACI,QAArChC,IACAA,SAAS,CAACiC,QAAVjC,KAAuB4B,aAAa,CAACK,QADrCjC,IAEAA,SAAS,CAACkC,IAAVlC,KAAmB4B,aAAa,CAACM,MACjC;cACMC,cAAc,GAAGJ,MAAM,CAACjC,GAAD,CAANiC,CAAY7C,KAAZ6C,CAAkB/B,SAAS,CAAC6B,QAAV7B,CAAmBhC,MAArC+D;iBAChBI;;;YAGD9B,QAAR,GAAmCL,SAAnC,CAAQK;YAAU+B,IAAlB,GAAmCpC,SAAnC,CAAkBoC;YAAMC,MAAxB,GAAmCrC,SAAnC,CAAwBqC;;YACpBhC,QAAQ,KAAK,KAAK;cACdiC,mCAAmC,GAAGV,aAAa,CAACvB,QAAduB,CAAuB1C,KAAvB0C,CAA6B,CAA7BA;iBACrCU;;;YAGHC,YAAY,GAAGX,aAAa,CAACvB;YAC7BmC,cAAc,GAAG/B,iBAAiB,CAACJ,QAAD,EAAWkC,YAAX;;YACpC,CAACC,gBAAgB;cACbV,YAAW,GAAGC,MAAM,CAACjC,GAAD;;iBACnBgC;;;YAGHW,gBAAgB,GAAGpC,QAAQ,CAACnB,KAATmB,CAAemC,cAAc,CAACxE,MAA9BqC;YACnBqC,oBAAoB,GAAGH,YAAY,CAACrD,KAAbqD,CAAmBC,cAAc,CAACxE,MAAlCuE;;YACzBG,oBAAoB,CAACC,QAArBD,CAA8B,GAA9BA,GAAoC;cAChCE,0BAA0B,GAC9BpB,wBAAwB,CAACkB,oBAAD;cACpBG,2BAA2B,GAAGD,0BAA0B,CAACE,OAA3BF,CAClC,QADkCA,EAElC,KAFkCA;;cAI9BG,YAAW,aAAMF,oCAA8BJ,yBAAmBJ,eAASD;;iBAC1EW;;;YAGHA,WAAW,aAAMN,yBAAmBJ,eAASD;eAC5CW;AA7CF,OAAA;;yCCHQ,UAACC,MAAD,EAASC,QAAT,EAAsB;YAC/BD,MAAM,KAAK,MAAM,OAAO,EAAP;YACjBE,MAAM,GAAG;YACTC,UAAU,GAAGrE,MAAM,CAACsE,IAAPtE,CAAYkE,MAAZlE;YACbuE;YACAlF;;aACCA,CAAC,GAAG,GAAGA,CAAC,GAAGgF,UAAU,CAACnF,QAAQG,CAAC,IAAI;AACtCkF,UAAAA,GAAG,GAAGF,UAAU,CAAChF,CAAD,CAAhBkF;cACIJ,QAAQ,CAACK,OAATL,CAAiBI,GAAjBJ,KAAyB,GAAG;AAChCC,UAAAA,MAAM,CAACG,GAAD,CAANH,GAAcF,MAAM,CAACK,GAAD,CAApBH;;;eAEKA;AAXT;;qCCEe,UAACF,MAAD,EAASC,QAAT,EAAsB;YAC/BD,MAAM,KAAK,MAAM,OAAO,EAAP;YAEjBE,MAAM,GAAGK,4BAA4B,CAACP,MAAD,EAASC,QAAT;YACrCI;YACAlF;;YACAW,MAAM,CAAC0E,uBAAuB;cAC5BC,gBAAgB,GAAG3E,MAAM,CAAC0E,qBAAP1E,CAA6BkE,MAA7BlE;;eAClBX,CAAC,GAAG,GAAGA,CAAC,GAAGsF,gBAAgB,CAACzF,QAAQG,CAAC,IAAI;AAC5CkF,YAAAA,GAAG,GAAGI,gBAAgB,CAACtF,CAAD,CAAtBkF;gBACIJ,QAAQ,CAACK,OAATL,CAAiBI,GAAjBJ,KAAyB,GAAG;gBAC5B,CAACnE,MAAM,CAACC,SAAPD,CAAiB4E,oBAAjB5E,CAAsCG,IAAtCH,CAA2CkE,MAA3ClE,EAAmDuE,GAAnDvE,GAAyD;AAC9DoE,YAAAA,MAAM,CAACG,GAAD,CAANH,GAAcF,MAAM,CAACK,GAAD,CAApBH;;;;eAGGA;AAfT;;ACFO,UAAMS,kCAAkC,GAAG,SAArCA,kCAAqC,GAAM;YAClD,CAACC,MAAM,CAACC,QAAQ;;;;;YAKdC,gBAAgB,GACpBC,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA,KACAA,QAAQ,CAACC,aAATD,CAAuB,6BAAvBA;YACIE,iBAAiB,GAAGF,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA;;YAEtBD,gBAAgB,IAAIG,mBAAmB;AACzCC,UAAAA,kCAAkC;AADpC,eAEO;AACLC,UAAAA,mCAAmC;;AAdhC,OAAA;;AAkBP,UAAIC,qBAAqB,GAAG,KAA5B;;AACA,UAAMF,kCAAkC,GAAG,SAArCA,kCAAqC,GAAM;YAC3CE,uBAAuB;AAC3BA,QAAAA,qBAAqB,GAAG,IAAxBA;YAEMC,MAAM,GAAGC,gBAAgB;YACzBC,kBAAkB,GAAGF,MAAM,CAACG,KAAPH,CAAaE;AACxCE,QAAAA,SAAS,CAACJ,MAAD,EAAS;oBAAY,MAAZ;iCAA2C;AAA3C,SAAT,CAATI;;YACIF,oBAAoB;AACtBG,UAAAA,UAAU,CAAC,YAAM;AACfD,YAAAA,SAAS,CAACJ,MAAD,EAAS;qCAAyBE;AAAzB,aAAT,CAATE;AADQ,WAAA,CAAVC;;AARJ,OAAA;;AAcA,UAAMP,mCAAmC,GAAG,SAAtCA,mCAAsC,GAAM;YAC5C,CAACC,uBAAuB;AAC5BA,QAAAA,qBAAqB,GAAG,KAAxBA;YAEMC,MAAM,GAAGC,gBAAgB;YACzBC,kBAAkB,GAAGF,MAAM,CAACG,KAAPH,CAAaE;AACxCE,QAAAA,SAAS,CAACJ,MAAD,EAAS;oBAAY,MAAZ;iCAA2C;AAA3C,SAAT,CAATI;;YACIF,oBAAoB;AACtBG,UAAAA,UAAU,CAAC,YAAM;AACfD,YAAAA,SAAS,CAACJ,MAAD,EAAS;qCAAyBE;AAAzB,aAAT,CAATE;AADQ,WAAA,CAAVC;;AARJ,OAAA;;AAcO,UAAMJ,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;YAC9BK,OAAO,GAAGzG,KAAK,CAACO,IAANP,CAAW0F,MAAM,CAACC,MAAPD,CAAcG,QAAdH,CAAuBgB,gBAAvBhB,CAAwC,QAAxCA,CAAX1F;eACTyG,OAAO,CAACE,IAARF,CAAa,UAACN,MAAD;iBAAYA,MAAM,CAACS,aAAPT,KAAyBT;AAAlD,SAAAe;AAFF,OAAA;;AAKA,UAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,OAAD,EAAa;AAC3CA,QAAAA,OAAO,CAACC,YAARD,CAAqB,iBAArBA,EAAwC,EAAxCA;AADK,OAAA;;AAIA,UAAME,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACF,OAAD,EAAa;AACjDA,QAAAA,OAAO,CAACG,eAARH,CAAwB,iBAAxBA;AADK,OAAA;;AAIA,UAAMP,SAAS,GAAG,SAAZA,SAAY,CAACO,OAAD,EAAUI,MAAV,EAAqB;YACtCC,YAAY,GAAGL,OAAO,CAACR;YACvBc,aAAa,GAAGxG,MAAM,CAACsE,IAAPtE,CAAYsG,MAAZtG,EAAoByG,GAApBzG,CAAwB,UAAC0G,SAAD,EAAe;cACvDC;;cACAD,SAAS,IAAIH,cAAc;gBACvBK,YAAY,GAAGL,YAAY,CAACG,SAAD;;AACjCC,YAAAA,OAAO,GAAG,gBAAA,GAAM;AACdJ,cAAAA,YAAY,CAACG,SAAD,CAAZH,GAA0BK,YAA1BL;AADF,aAAAI;AAFF,iBAKO;AACLA,YAAAA,OAAO,GAAG,gBAAA,GAAM;qBACPJ,YAAY,CAACG,SAAD;AADrB,aAAAC;;;AAKFJ,UAAAA,YAAY,CAACG,SAAD,CAAZH,GAA0BD,MAAM,CAACI,SAAD,CAAhCH;iBAEOI;AAfa,SAAA3G;eAiBf,YAAM;AACXwG,UAAAA,aAAa,CAACK,OAAdL,CAAsB,UAACG,OAAD;mBAAaA,OAAO;AAA1C,WAAAH;AADF;AAnBK,OAAA;;AAqCA,UAAMM,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACZ,OAAD,EAAa;eAC1CA,OAAO,CAACa,YAARb,CAAqB,aAArBA;AADF,OAAA;;AAIA,UAAMc,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACd,OAAD,EAAa;AACjDA,QAAAA,OAAO,CAACC,YAARD,CAAqB,aAArBA,EAAoC,EAApCA;AADK,OAAA;;AAIA,UAAMe,wBAAwB,GAAG,SAA3BA,wBAA2B,CAACf,OAAD,EAAa;AACnDA,QAAAA,OAAO,CAACG,eAARH,CAAwB,aAAxBA;AADK,OAAA;;ACsJA,UAAMgB,wBAAwB,GAAG,SAA3BA,wBAA2B,MAAA,EAMlC;mCALJC;YAAAA,QAKI,+BALO;yCACXC;YAAAA,cAII,qCAJa,UAACC,CAAD;iBAAOA;AAIpB;qCAHJC;YAAAA,UAGI,iCAHS,YAAM,CAGf;mCAFJC;YAAAA,QAEI,+BAFO,YAAM,CAEb;qCADJC;YAAAA,UACI,iCADS,YAAM,CACf;;YACAC,KAAK,CAACN,QAAD,GAAY;;iBAEZ,YAAM,CAAb;;;AAEFA,QAAAA,QAAQ,GAAGO,QAAQ,CAACP,QAAD,EAAW,EAAX,CAAnBA;YACMQ,OAAO,GAAGC,WAAW,CAACC,GAAZD;YACZE;YACAC,IAAI,GAAG;YACPC,WAAW,GAAG;YACdC,QAAQ,GAAG;;YACTC,OAAO,GAAG,SAAVA,OAAU,GAAM;AACpBJ,UAAAA,8BAA8B,GAAG,IAAjCA;cACMK,KAAK,GAAGP,WAAW,CAACC,GAAZD;AACdI,UAAAA,WAAW,GAAG1F,IAAI,CAACC,GAALD,CAAS,CAAC6F,KAAK,GAAGR,OAAT,IAAoBR,QAA7B7E,EAAuC,CAAvCA,CAAd0F;AACAC,UAAAA,QAAQ,GAAGb,cAAc,CAACY,WAAD,CAAzBC;AACAF,UAAAA,IAAI,GAAGC,WAAW,KAAK,CAAvBD;AACAT,UAAAA,UAAU,CAAC;AACTS,YAAAA,IAAI,EAAJA,IADS;AAETC,YAAAA,WAAW,EAAXA,WAFS;AAGTC,YAAAA,QAAQ,EAARA;AAHS,WAAD,CAAVX;;cAKIS,MAAM;AACRP,YAAAA,UAAU;AADZ,iBAEO;AACLM,YAAAA,8BAA8B,GAAGhD,MAAM,CAACsD,qBAAPtD,CAA6BoD,OAA7BpD,CAAjCgD;;AAdJ;;AAiBAI,QAAAA,OAAO;;YACDG,IAAI,GAAG,SAAPA,IAAO,GAAM;cACbP,gCAAgC;AAClChD,YAAAA,MAAM,CAACwD,oBAAPxD,CAA4BgD,8BAA5BhD;AACAgD,YAAAA,8BAA8B,GAAG,IAAjCA;;;cAEE,CAACC,MAAM;AACTA,YAAAA,IAAI,GAAG,IAAPA;AACAR,YAAAA,QAAQ,CAAC;AACPS,cAAAA,WAAW,EAAXA,WADO;AAEPC,cAAAA,QAAQ,EAARA;AAFO,aAAD,CAARV;;AAPJ;;eAaOc;AAhDF,OAAA,EC/PP;;;AACAvD,MAAAA,MAAM,CAACyD,gBAAPzD,CAAwB,WAAxBA,EAAqC,UAAC0D,cAAD,EAAoB;YACnDA,cAAc,CAACC,kBAAkB;;;;AAGrCxD,QAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,uBAAtCA,EAA+D,OAA/DA;AAJF,OAAAH;AAMAA,MAAAA,MAAM,CAACyD,gBAAPzD,CAAwB,YAAxBA,EAAsC,UAAC6D,eAAD,EAAqB;YACrDA,eAAe,CAACF,kBAAkB;;;;AAGtCxD,QAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,uBAAtCA,EAA+D,OAA/DA;AAJF,OAAAH;AAMAA,MAAAA,MAAM,CAACyD,gBAAPzD,CAAwB,SAAxBA,EAAmC,UAAC8D,YAAD,EAAkB;YAC/CA,YAAY,CAACH,kBAAkB;;;;AAGnCxD,QAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,uBAAtCA,EAA+D,UAA/DA;AAJF,OAAAH;;ACbO,UAAM+D,0BAA0B,GAAG,SAA7BA,0BAA6B,CAACC,CAAD,EAAIC,IAAJ,EAAa;AACrDD,QAAAA,CAAC,CAACC,IAAFD,GAASC,IAATD;;AACAA,QAAAA,CAAC,CAACE,OAAFF,GAAY,UAACG,CAAD,EAAO;cACbA,CAAC,CAACC,OAAFD,IAAaA,CAAC,CAACE,SAAS;;;;AAG5BF,UAAAA,CAAC,CAACG,cAAFH;AACAnE,UAAAA,MAAM,CAACC,MAAPD,CAAcuE,QAAdvE,CAAuBiE,IAAvBjE,GAA8BiE,IAA9BjE;AALF,SAAAgE;AAFK,OAAA;;ACAA,UAAMQ,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAChJ,IAAD,EAAU;eACjC;AACLiJ,UAAAA,GAAG,EAAE,YAAA;mBAAMC,YAAY,CAACC,cAAbD,CAA4BlJ,IAA5BkJ;AADN,WAAA;AAELE,UAAAA,GAAG,EAAE,YAAA;mBACHF,YAAY,CAACC,cAAbD,CAA4BlJ,IAA5BkJ,IACIG,IAAI,CAACC,KAALD,CAAWH,YAAY,CAACK,OAAbL,CAAqBlJ,IAArBkJ,CAAXG,CADJH,GAEIM;AALD,WAAA;AAMLC,UAAAA,GAAG,EAAE,YAAA,CAACC,KAAD;mBAAWR,YAAY,CAACS,OAAbT,CAAqBlJ,IAArBkJ,EAA2BG,IAAI,CAACO,SAALP,CAAeK,KAAfL,CAA3BH;;AANX;AADF,OAAA;;ACEA,UAAMW,aAAa,GAAG,SAAhBA,aAAgB,CAACjE,OAAD,EAAa;YACpCA,OAAO,CAACa,YAARb,CAAqB,sBAArBA,GAA8C;AAChDkE,UAAAA,WAAW,CAAClE,OAAD,CAAXkE;AADF,eAEO;AACLC,UAAAA,WAAW,CAACnE,OAAD,CAAXmE;;AAJG,OAAA;;AAQA,UAAMD,WAAW,GAAG,SAAdA,WAAc,CAAClE,OAAD,EAAa;AACtCA,QAAAA,OAAO,CAACG,eAARH,CAAwB,sBAAxBA;AACAA,QAAAA,OAAO,CAACG,eAARH,CAAwB,2BAAxBA;AACArB,QAAAA,kCAAkC;AAH7B,OAAA;;AAMA,UAAMwF,WAAW,GAAG,SAAdA,WAAc,CAACnE,OAAD,EAAa;AACtCA,QAAAA,OAAO,CAACC,YAARD,CAAqB,sBAArBA,EAA6C,EAA7CA;AACArB,QAAAA,kCAAkC;AAF7B,OAAA;;AAKA,UAAMyF,eAAe,GAAG,SAAlBA,eAAkB,CAACpE,OAAD,EAAa;AAC1CA,QAAAA,OAAO,CAACC,YAARD,CAAqB,2BAArBA,EAAkD,EAAlDA;AACArB,QAAAA,kCAAkC;AAF7B,OAAA;;AAKA,UAAM0F,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACrE,OAAD,EAAa;AAChDA,QAAAA,OAAO,CAACG,eAARH,CAAwB,2BAAxBA;AACArB,QAAAA,kCAAkC;AAF7B,OAAA;;AAKA,UAAM2F,cAAc,GAAG,SAAjBA,cAAiB,GAAM;YAC5BC,mBAAmB,GAAGrL,KAAK,CAACO,IAANP,CAC1B6F,QAAQ,CAACa,gBAATb,CAA0B,wBAA1BA,CAD0B7F;AAG5BqL,QAAAA,mBAAmB,CAAC5D,OAApB4D,CAA4B,UAACC,kBAAD,EAAwB;AAClDN,UAAAA,WAAW,CAACM,kBAAD,CAAXN;AADF,SAAAK;AAJK,OAAA;;AC/BA,UAAME,aAAa,GAAG,SAAhBA,aAAgB,CAACC,QAAD,EAAWC,SAAX,EAAyB;YAC9CC,gBAAgB,GAAG1L,KAAK,CAACO,IAANP,CACvBwL,QAAQ,CAAC9E,gBAAT8E,YAA8BG,mCAA9BH,CADuBxL;AAGzB0L,QAAAA,gBAAgB,CAACjE,OAAjBiE,CAAyB,UAACE,eAAD,EAAqB;cACtCC,uBAAuB,GAAGD,eAAe,CAACE,YAAhBF,CAC9BD,6BAD8BC;cAG1BG,OAAO,GAAGC,aAAa,CAACH,uBAAD,EAA0BJ,SAA1B;;cACzBM,SAAS;AACXE,YAAAA,eAAe,CACbL,eADa,EAEbD,6BAFa,EAGbO,yBAHa,CAAfD;;AANJ,SAAAP;YAcMS,aAAa,GAAGnM,KAAK,CAACO,IAANP,CACpBwL,QAAQ,CAAC9E,gBAAT8E,YAA8BU,+BAA9BV,CADoBxL;AAGtBmM,QAAAA,aAAa,CAAC1E,OAAd0E,CAAsB,UAACC,YAAD,EAAkB;cAChCP,uBAAuB,GAAGO,YAAY,CAACN,YAAbM,CAC9BF,yBAD8BE;cAG1BL,OAAO,GAAGC,aAAa,CAACH,uBAAD,EAA0BJ,SAA1B;;cACzB,CAACM,SAAS;AACZE,YAAAA,eAAe,CACbG,YADa,EAEbF,yBAFa,EAGbP,6BAHa,CAAfM;;AANJ,SAAAE;AArBK,OAAA;;AAoCP,UAAMH,aAAa,GAAG,SAAhBA,aAAgB,CAACH,uBAAD,EAA0BJ,SAA1B,EAAwC;YACtDY,SAAS,GAAGC,cAAc,CAACT,uBAAD;eACzBjL,MAAM,CAACsE,IAAPtE,CAAY6K,SAAZ7K,EAAuB2L,IAAvB3L,CAA4B,UAACuE,GAAD,EAAS;cACtCkH,SAAS,CAAClH,GAAVkH,KAAkBlH,KAAK;mBAClB;AAFiC,WAAA;;;cAKtCkH,SAAS,CAACzB,KAAVyB,KAAoB3B,WAAW;mBAC1B;;;cAEL2B,SAAS,CAACzB,KAAVyB,KAAoBZ,SAAS,CAACtG,GAAD,GAAO;mBAC/B;;;iBAEF;AAXF,SAAAvE;AAFT,OAAA;;AAiBA,UAAM0L,cAAc,GAAG,SAAjBA,cAAiB,CAACT,uBAAD,EAA6B;YAC5CW,UAAU,GAAGX,uBAAuB,CAACzG,OAAxByG,CAAgC,GAAhCA;;YACfW,UAAU,KAAK,CAAC,GAAG;iBACd;AACLrH,YAAAA,GAAG,EAAE0G,uBADA;AAELjB,YAAAA,KAAK,EAAEF;AAFF;;;eAKF;AACLvF,UAAAA,GAAG,EAAE0G,uBAAuB,CAAC7K,KAAxB6K,CAA8B,CAA9BA,EAAiCW,UAAjCX,CADA;AAELjB,UAAAA,KAAK,EAAEiB,uBAAuB,CAAC7K,KAAxB6K,CAA8BW,UAAU,GAAG,CAA3CX;AAFF;AART,OAAA;;AAcA,UAAMF,6BAA6B,cAAnC;AACA,UAAMO,yBAAyB,qBAA/B;;AAEA,UAAMD,eAAe,GAAG,SAAlBA,eAAkB,CAACQ,IAAD,EAAOvL,IAAP,EAAawL,OAAb,EAAyB;AAC/CD,QAAAA,IAAI,CAAC1F,YAAL0F,CAAkBC,OAAlBD,EAA2BA,IAAI,CAACX,YAALW,CAAkBvL,IAAlBuL,CAA3BA;AACAA,QAAAA,IAAI,CAACxF,eAALwF,CAAqBvL,IAArBuL;AAFF,OAAA;;AC9DO,UAAME,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;AACzC9G,QAAAA,QAAQ,CAACC,aAATD,CAAuB,kBAAvBA,EAA2C+D,OAA3C/D,GAAqD+G,cAArD/G;AACAA,QAAAA,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA,EAAiD+D,OAAjD/D,GAA2D+G,cAA3D/G;AAFK,OAAA;;AAKP,UAAM+G,cAAc,GAAG,SAAjBA,cAAiB,GAAM;YACvBC,kBAAkB,IAAI;AACxBC,UAAAA,YAAY;AADd,eAEO;AACLC,UAAAA,YAAY;;AAJhB,OAAA;;AAQO,UAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,GAAM;AACtCzB,QAAAA,aAAa,CAAC1F,QAAQ,CAACC,aAATD,CAAuB,kBAAvBA,CAAD,EAA6C;AACxDoH,UAAAA,WAAW,EAAE;AAD2C,SAA7C,CAAb1B;AADK,OAAA;;AAMA,UAAM2B,mBAAmB,GAAG,SAAtBA,mBAAsB,GAAM;AACvC3B,QAAAA,aAAa,CAAC1F,QAAQ,CAACC,aAATD,CAAuB,kBAAvBA,CAAD,EAA6C;AACxDoH,UAAAA,WAAW,EAAE;AAD2C,SAA7C,CAAb1B;AADK,OAAA;;AAMA,UAAMsB,kBAAkB,GAAG,SAArBA,kBAAqB,GAAM;eAC/BnF,sBAAsB,CAAC7B,QAAQ,CAACC,aAATD,YAAAA,CAAD;AADxB,OAAA;;AAIA,UAAMiH,YAAY,GAAG,SAAfA,YAAe,GAAM;AAChCjF,QAAAA,wBAAwB,CAAChC,QAAQ,CAACC,aAATD,YAAAA,CAAD,CAAxBgC;AACApC,QAAAA,kCAAkC;AAF7B,OAAA;;AAKA,UAAMsH,YAAY,GAAG,SAAfA,YAAe,GAAM;AAChCnF,QAAAA,sBAAsB,CAAC/B,QAAQ,CAACC,aAATD,YAAAA,CAAD,CAAtB+B;AACAnC,QAAAA,kCAAkC;AAF7B,OAAA;;4BC1CQ,UAAChE,GAAD,EAAM0D,GAAN,EAAWyF,KAAX,EAAqB;;;;;;YAM9BzF,GAAG,IAAI1D,KAAK;AACdb,UAAAA,MAAM,CAACuM,cAAPvM,CAAsBa,GAAtBb,EAA2BuE,GAA3BvE,EAAgC;AAC9BgK,YAAAA,KAAK,EAALA,KAD8B;AAE9BwC,YAAAA,UAAU,EAAE,IAFkB;AAG9BC,YAAAA,YAAY,EAAE,IAHgB;AAI9BC,YAAAA,QAAQ,EAAE;AAJoB,WAAhC1M;AADF,eAOO;AACLa,UAAAA,GAAG,CAAC0D,GAAD,CAAH1D,GAAWmJ,KAAXnJ;;;eAEKA;AAhBT,SCGA;AACA;;;AAEA,eAAS8L,OAAT,CAAiBC,MAAjB,EAAyBC,cAAzB,EAAyC;YACnCvI,IAAI,GAAGtE,MAAM,CAACsE,IAAPtE,CAAY4M,MAAZ5M;;YACPA,MAAM,CAAC0E,uBAAuB;cAC5BoI,OAAO,GAAG9M,MAAM,CAAC0E,qBAAP1E,CAA6B4M,MAA7B5M;;cACV6M,gBAAgB;AAClBC,YAAAA,OAAO,GAAGA,OAAO,CAACC,MAARD,CAAe,UAAUE,GAAV,EAAe;qBAC/BhN,MAAM,CAACiN,wBAAPjN,CAAgC4M,MAAhC5M,EAAwCgN,GAAxChN,EAA6CwM;AAD5C,aAAAM,CAAVA;;;AAIFxI,UAAAA,IAAI,CAAC4I,IAAL5I,CAAU6I,KAAV7I,CAAgBA,IAAhBA,EAAsBwI,OAAtBxI;;;eAEKA;;;AAGM,eAAS8I,cAAT,CAAwBhJ,MAAxB,EAAgC;aACxC,IAAI/E,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;cACrC6E,MAAM,GAAGmJ,SAAS,CAAChO,CAAD,CAATgO,IAAgB,IAAhBA,GAAuBA,SAAS,CAAChO,CAAD,CAAhCgO,GAAsC;;cAC/ChO,CAAC,GAAG,GAAG;AACTsN,YAAAA,OAAO,CAAC3M,MAAM,CAACkE,MAAD,CAAP,EAAiB,IAAjB,CAAPyI,CAA8B9F,OAA9B8F,CAAsC,UAAUpI,GAAV,EAAe;AACnDgI,cAAAA,eAAc,CAACnI,MAAD,EAASG,GAAT,EAAcL,MAAM,CAACK,GAAD,CAApB,CAAdgI;AADF,aAAAI;AADF,iBAIO,IAAI3M,MAAM,CAACsN,yBAAX,EAAsC;AAC3CtN,YAAAA,MAAM,CAACuN,gBAAPvN,CAAwBoE,MAAxBpE,EAAgCA,MAAM,CAACsN,yBAAPtN,CAAiCkE,MAAjClE,CAAhCA;AADK,WAAA,MAEA;AACL2M,YAAAA,OAAO,CAAC3M,MAAM,CAACkE,MAAD,CAAP,CAAPyI,CAAwB9F,OAAxB8F,CAAgC,UAAUpI,GAAV,EAAe;AAC7CvE,cAAAA,MAAM,CAACuM,cAAPvM,CACEoE,MADFpE,EAEEuE,GAFFvE,EAGEA,MAAM,CAACiN,wBAAPjN,CAAgCkE,MAAhClE,EAAwCuE,GAAxCvE,CAHFA;AADF,aAAA2M;;;;eASGvI;;;;;AC+BF,eAASoJ,QAAT,CAAgBC,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAaM,eAASG,QAAT,CAAgB9D,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAxFlC,UAAMiE,qBAAqB,GAAG,OAAOnJ,MAAM,CAACoJ,YAAd,KAA+B,UAA7D;AACA,UAAMC,sBAAsB,GAAG7E,gBAAgB,CAAC,cAAD,CAA/C;AAEA,UAAM8E,0BAA0B,GAAG,EAAnC;;AACO,UAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,GAAM;YACzC,CAACJ,uBAAuB;AAC1BK,UAAAA,oCAAoC;;;;AAGtCC,QAAAA,gBAAgB;AALX,OAAA;;AAQP,UAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;YACvBC,eAAe,GAAGN,YAAY,CAACO;;YACjCD,eAAe,KAAK,WAAW;AACjCE,UAAAA,+BAA+B;;;;YAG7BF,eAAe,KAAK,UAAU;AAChCG,UAAAA,8BAA8B;;;;YAG5BH,eAAe,KAAK,WAAW;AACjCI,UAAAA,+BAA+B;;;AAXnC,OAAA;;AAgBA,UAAMC,aAAa,GAAG5J,QAAQ,CAACC,aAATD,CAAuB,gBAAvBA,CAAtB;;AAEA,UAAMqJ,oCAAoC,GAAG,SAAvCA,oCAAuC,GAAM;YAC3CQ,YAAY,GAAG7J,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA;AACrB6J,QAAAA,YAAY,CAAC3I,YAAb2I,CAA0B,eAA1BA,EAA2C,MAA3CA;AACAA,QAAAA,YAAY,CAAC3I,YAAb2I,CACE,OADFA,6CAAAA;AAIAD,QAAAA,aAAa,CAACE,QAAdF,GAAyB,IAAzBA;AAPF,OAAA;;AASA,UAAMH,+BAA+B,GAAG,SAAlCA,+BAAkC,GAAM;AAC5CM,QAAAA,kCAAkC;YAC5BF,YAAY,GAAG7J,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA;AACrB6J,QAAAA,YAAY,CAACzI,eAAbyI,CAA6B,eAA7BA;AACAA,QAAAA,YAAY,CAACzI,eAAbyI,CAA6B,OAA7BA;AAJF,OAAA;;AAMA,UAAMH,8BAA8B,GAAG,SAAjCA,8BAAiC,GAAM;AAC3CK,QAAAA,kCAAkC;YAC5BF,YAAY,GAAG7J,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA;AACrB6J,QAAAA,YAAY,CAAC3I,YAAb2I,CAA0B,eAA1BA,EAA2C,MAA3CA;AACAA,QAAAA,YAAY,CAAC3I,YAAb2I,CAA0B,OAA1BA,uBAAAA;AAJF,OAAA;;AAMA,UAAMF,+BAA+B,GAAG,SAAlCA,+BAAkC,GAAM;AAC5CjE,QAAAA,aAAa,CAAC1F,QAAQ,CAACC,aAATD,CAAuB,oBAAvBA,CAAD,EAA+C;AAC1DgK,UAAAA,aAAa,EAAE;AAD2C,SAA/C,CAAbtE;AAGAkE,QAAAA,aAAa,CAACE,QAAdF,GAAyB,KAAzBA;AACAA,QAAAA,aAAa,CAACK,OAAdL,GAAwBM,yBAAyB,EAAjDN;;AACAA,QAAAA,aAAa,CAACO,QAAdP,GAAyB,YAAM;AAC7BQ,UAAAA,yBAAyB,CAACR,aAAa,CAACK,OAAf,CAAzBG;;cACI,CAACR,aAAa,CAACK,SAAS;;AAE1Bd,YAAAA,0BAA0B,CAAChO,KAA3BgO,GAAmCvH,OAAnCuH,CAA2C,UAACkB,YAAD,EAAkB;AAC3DA,cAAAA,YAAY,CAACC,KAAbD;AADF,aAAAlB;;AAJJ,SAAAS;AANF,OAAA;;AAgBA,UAAMG,kCAAkC,GAAG,SAArCA,kCAAqC,GAAM;AAC/CrE,QAAAA,aAAa,CAAC1F,QAAQ,CAACC,aAATD,CAAuB,oBAAvBA,CAAD,EAA+C;AAC1DgK,UAAAA,aAAa,EAAE;AAD2C,SAA/C,CAAbtE;AAGAkE,QAAAA,aAAa,CAACE,QAAdF,GAAyB,IAAzBA;AACAA,QAAAA,aAAa,CAACK,OAAdL,GAAwB,KAAxBA;;AACA5J,QAAAA,QAAQ,CAACC,aAATD,CAAuB,mCAAvBA,EAA4D+D,OAA5D/D,GAAsE,YAAM;AAC1EuK,UAAAA,iBAAiB,GAAGzB,IAApByB,CAAyB,YAAM;AAC7BH,YAAAA,yBAAyB,CAAC,IAAD,CAAzBA;AACAd,YAAAA,gBAAgB;AAFlB,WAAAiB;AADF,SAAAvK;AANF,OAAA;;AAcO,UAAMwK,qBAAqB,GAAG,SAAxBA,qBAAwB,CACnCC,uBADmC,EAEnCC,SAFmC,EAGnCC,iBAHmC,EAIhC;YACGC,mBAAmB,GAAGV,yBAAyB;YACjD,CAACU,qBAAqB;YAEpBC,mBAAmB,GAAG;AAC1BC,UAAAA,IAAI,EAAE,IADoB;AAE1BC,UAAAA,IAAI,EAAEC,cAAc,EAFM;AAG1BC,UAAAA,YAAY,EAAE,IAHY;AAI1BC,UAAAA,YAAY,EAAE;AAJY;;YAOxBR,SAAS,CAACS,MAAVT,KAAqB,WAAW;cAC9BC,mBAAmB;gBACjBA,iBAAiB,CAACQ,MAAlBR,KAA6B,aAAa;AAC5CS,cAAAA,MAAM,CAAC,QAAD,oCACDP;AACHQ,gBAAAA,IAAI,YAAKZ;gBAFL,CAANW;AADF,mBAKO;AACLA,cAAAA,MAAM,CAAC,eAAD,oCACDP;AACHQ,gBAAAA,IAAI,YAAKZ;gBAFL,CAANW;;AAPJ,iBAYO;AACLA,YAAAA,MAAM,CAAC,SAAD,oCACDP;AACHQ,cAAAA,IAAI,YAAKZ;cAFL,CAANW;;AAdJ,eAmBO,IAAIT,iBAAiB,IAAIA,iBAAiB,CAACQ,MAAlBR,KAA6B,SAAtD,EAAiE;AACtES,UAAAA,MAAM,CAAC,OAAD,oCACDP;AACHQ,YAAAA,IAAI,YAAKZ;YAFL,CAANW;;AAnCG,OAAA;;AA0CP,UAAMlB,yBAAyB,GAAG,SAA5BA,yBAA4B;eAChChB,sBAAsB,CAAC5E,GAAvB4E,KAA+BA,sBAAsB,CAACzE,GAAvByE,EAA/BA,GAA8D;AADhE,OAAA;;AAGA,UAAMkB,yBAAyB,GAAG,SAA5BA,yBAA4B,CAACrF,KAAD;eAAWmE,sBAAsB,CAACpE,GAAvBoE,CAA2BnE,KAA3BmE;AAA7C,OAAA;;AAEA,UAAM8B,cAAc,GAAG,SAAjBA,cAAiB,GAAM;YACrBM,IAAI,GAAGtL,QAAQ,CAACC,aAATD,CAAuB,kBAAvBA;eACNsL,IAAI,GAAGA,IAAI,CAACxH,IAAR,GAAee;AAF5B,OAAA;;AAKA,UAAI2E,UAAU,GAAG,SAAjB;AAEA,UAAM4B,MAAM,GAAGpC,qBAAqB,sBAE9BuC,OAEG;uFAD0D;;qCAA3DN;YAAAA,YACC,kCADc;qCAAOC;YAAAA,YACrB,kCADoC;YAAUM,OAC9C;;YACChC,UAAU,KAAK,WAAW;iBACrB;;;YAGHa,YAAY,GAAG,IAAIpB,YAAJ,CAAiBsC,KAAjB,EAAwBC,OAAxB;AACrBrC,QAAAA,0BAA0B,CAAClB,IAA3BkB,CAAgCkB,YAAhClB;;AACAkB,QAAAA,YAAY,CAACtG,OAAbsG,GAAuB,YAAM;;;;;;;;;cASvBY,cAAcpL,MAAM,CAAC4L,KAAP5L;cACdqL,cAAcb,YAAY,CAACC,KAAbD;AAVpB,SAAAA;;AAYAA,QAAAA,YAAY,CAACqB,OAAbrB,GAAuB,YAAM;cACrBsB,KAAK,GAAGxC,0BAA0B,CAAC5J,OAA3B4J,CAAmCkB,YAAnClB;;cACVwC,KAAK,GAAG,CAAC,GAAG;AACdxC,YAAAA,0BAA0B,CAACyC,MAA3BzC,CAAkCwC,KAAlCxC,EAAyC,CAAzCA;;AAHJ,SAAAkB;;eAMOA;AA7BuB,QAAA,GA+BhC,YAAM,CA/BV,CAAA;AAiCA,UAAIwB,cAAJ;AACA,UAAMtB,iBAAiB,GAAGvB,qBAAqB,wBAC/B;YACN6C,gBAAgB,OAAOA,cAAP;AACpBA,QAAAA,cAAc,GAAG5C,YAAY,CAACsB,iBAAbtB,EAAjB4C;wBACmBA;AAAnBrC,UAAAA,UAAU,kBAAVA;AACAqC,UAAAA,cAAc,GAAGhH,SAAjBgH;iBACOrC;;AANkC,QAAA,GAQ3C;eAAMd,OAAO,CAACC,OAARD,CAAgB,SAAhBA;AARV,OAAA;AC1KA,UAAMoD,UAAU,GAAG,MAAnB;AACA,UAAMC,WAAW,GAAG,OAApB;AACA,UAAMC,eAAe,GAAG3H,gBAAgB,CAAC,OAAD,CAAxC;;AAEO,UAAM4H,kBAAkB,GAAG,SAArBA,kBAAqB,GAAM;YAChCC,KAAK,GAAGC,kBAAkB;YAC1BC,QAAQ,GAAGpM,QAAQ,CAACC,aAATD,CAAuB,sBAAvBA;AACjBoM,QAAAA,QAAQ,CAACnC,OAATmC,GAAmBF,KAAK,KAAKJ,UAA7BM;AACAC,QAAAA,QAAQ,CAACH,KAAD,CAARG;;AACAD,QAAAA,QAAQ,CAACjC,QAATiC,GAAoB,YAAM;cACpBA,QAAQ,CAACnC,SAAS;AACpBqC,YAAAA,kBAAkB,CAACR,UAAD,CAAlBQ;AACAD,YAAAA,QAAQ,CAACP,UAAD,CAARO;AAFF,iBAGO;AACLC,YAAAA,kBAAkB,CAACP,WAAD,CAAlBO;AACAD,YAAAA,QAAQ,CAACN,WAAD,CAARM;;AANJ,SAAAD;AALK,OAAA;;AAgBP,UAAMD,kBAAkB,GAAG,SAArBA,kBAAqB,GAAM;eACxBH,eAAe,CAAC1H,GAAhB0H,KAAwBA,eAAe,CAACvH,GAAhBuH,EAAxBA,GAAgDF;AADzD,OAAA;;AAIA,UAAMQ,kBAAkB,GAAG,SAArBA,kBAAqB,CAACvH,KAAD,EAAW;AACpCiH,QAAAA,eAAe,CAAClH,GAAhBkH,CAAoBjH,KAApBiH;AACAK,QAAAA,QAAQ,CAACtH,KAAD,CAARsH;AAFF,OAAA;;AAKA,UAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACH,KAAD,EAAW;AAC1BlM,QAAAA,QAAQ,CAACC,aAATD,CAAuB,MAAvBA,EAA+BkB,YAA/BlB,CAA4C,YAA5CA,EAA0DkM,KAA1DlM;AADF,OAAA;;AC7BA,UAAMuM,mBAAmB,GAAGlI,gBAAgB,CAAC,WAAD,CAA5C;;AAEO,UAAMmI,sBAAsB,GAAG,SAAzBA,sBAAyB,GAAM;YACpCC,YAAY,GAAGzM,QAAQ,CAACC,aAATD,CAAuB,eAAvBA;AACrByM,QAAAA,YAAY,CAACxC,OAAbwC,GAAuBC,sBAAsB,EAA7CD;;AACAA,QAAAA,YAAY,CAACtC,QAAbsC,GAAwB,YAAM;AAC5BE,UAAAA,sBAAsB,CAACF,YAAY,CAACxC,OAAd,CAAtB0C;AACAC,UAAAA,kBAAkB,CAACH,YAAY,CAACxC,OAAd,CAAlB2C;AAFF,SAAAH;;AAIAG,QAAAA,kBAAkB,GAPwB;;AAU1CjM,QAAAA,UAAU,CAAC,YAAM;AACfX,UAAAA,QAAQ,CAACC,aAATD,CAAuB,UAAvBA,EAAmCkB,YAAnClB,CAAgD,cAAhDA,EAAgE,EAAhEA;AADQ,SAAA,CAAVW;AAVK,OAAA;;AAeP,UAAMiM,kBAAkB,GAAG,SAArBA,kBAAqB,GAAsC;YAArC7H,KAAqC,uEAA7B2H,sBAAsB;;YACpD3H,OAAO;AACT8H,UAAAA,eAAe;AADjB,eAEO;AACLC,UAAAA,gBAAgB;;AAJpB,OAAA;;AAQA,UAAMJ,sBAAsB,GAAG,SAAzBA,sBAAyB;eAC7BH,mBAAmB,CAACjI,GAApBiI,KAA4BA,mBAAmB,CAAC9H,GAApB8H,EAA5BA,GAAwD;AAD1D,OAAA;;AAGA,UAAMI,sBAAsB,GAAG,SAAzBA,sBAAyB,CAAC5H,KAAD;eAAWwH,mBAAmB,CAACzH,GAApByH,CAAwBxH,KAAxBwH;AAA1C,OAAA;;AAEA,UAAMM,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5B7M,QAAAA,QAAQ,CAACyD,eAATzD,CAAyBoB,eAAzBpB,CAAyC,yBAAzCA;AADF,OAAA;;AAIA,UAAM8M,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;AAC7B9M,QAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,yBAAtCA,EAAiE,EAAjEA;AADF,OAAA;;ACpCO,UAAM+M,0BAA0B,GAAG,SAA7BA,0BAA6B,CAACC,eAAD,EAAqB;eACtDC,gBAAgB,CAACC,kBAAD,EAAqBF,eAArB;AADlB,OAAA;;AAIP,UAAMG,aAAa,GAAG,SAAhBA,aAAgB,KAAA,EAA2B;YAAxBC,OAAwB,QAAxBA;YAASC,QAAe,QAAfA;YAC5BC,YAAY,GAAGF,OAAO;;YAEpB3I,GAAG,GAAG,SAANA,GAAM;iBAAM2I,OAAO;AAAzB;;YAEMG,OAAO,GAAGC,YAAY;;YAExBC,UAAU,GAAG,mBAAA,GAAM,CAAvB;;YACIJ,UAAU;AACZI,UAAAA,UAAU,GAAGJ,QAAQ,CAAC,YAAM;gBACpBtI,KAAK,GAAGqI,OAAO;;gBACjBrI,KAAK,KAAKuI,cAAc;kBACpBI,aAAa,GAAG3I;AACtBuI,cAAAA,YAAY,GAAGvI,KAAfuI;AACAC,cAAAA,OAAO,CAACnC,MAARmC,CAAexI,KAAfwI,EAAsBG,aAAtBH;;AALiB,WAAA,CAArBE;;;eAUK;AAAEhJ,UAAAA,GAAG,EAAHA,GAAF;AAAO8I,UAAAA,OAAO,EAAPA,OAAP;AAAgBE,UAAAA,UAAU,EAAVA;AAAhB;AAnBT,OAAA;;AAsBA,UAAMD,YAAY,GAAG,SAAfA,YAAe,GAAM;YACnBG,aAAa,GAAG;;YAEhBC,MAAM,GAAG,SAATA,MAAS,CAACC,QAAD,EAAc;AAC3BF,UAAAA,aAAa,CAAC1F,IAAd0F,CAAmBE,QAAnBF;iBACO,YAAM;gBACLhC,KAAK,GAAGgC,aAAa,CAACpO,OAAdoO,CAAsBE,QAAtBF;;gBACVhC,KAAK,GAAG,CAAC,GAAG;AACdgC,cAAAA,aAAa,CAAC/B,MAAd+B,CAAqBhC,KAArBgC,EAA4B,CAA5BA;;AAHJ;AAFF;;YAUMvC,MAAM,GAAG,SAATA,MAAS,GAAa;4CAAT3C,IAAS;AAATA,YAAAA,IAAS,KAAA,CAATA,kBAAAA;;;AACjBkF,UAAAA,aAAa,CAACxS,KAAdwS,GAAsB/L,OAAtB+L,CAA8B,UAACE,QAAD,EAAc;AAC1CA,YAAAA,QAAQ,MAARA,OAAAA,EAAYpF,IAAZoF;AADF,WAAAF;AADF;;eAMO;AAAEC,UAAAA,MAAM,EAANA,MAAF;AAAUxC,UAAAA,MAAM,EAANA;AAAV;AAnBT,OAAA;;AAsBA,UAAM8B,kBAAkB,GAAGC,aAAa,CAAC;AACvC9R,QAAAA,IAAI,EAAE,cADiC;AAEvC+R,QAAAA,OAAO,EAAE,gBAAA;iBAAMvN,MAAM,CAACiO;AAFiB,SAAA;AAGvCT,QAAAA,QAAQ,EAAE,iBAAA,CAAClD,QAAD,EAAc;AACtBtK,UAAAA,MAAM,CAACyD,gBAAPzD,CAAwB,QAAxBA,EAAkCsK,QAAlCtK;AACAA,UAAAA,MAAM,CAACyD,gBAAPzD,CAAwB,mBAAxBA,EAA6CsK,QAA7CtK;iBACO,YAAM;AACXA,YAAAA,MAAM,CAACkO,mBAAPlO,CAA2B,QAA3BA,EAAqCsK,QAArCtK;AACAA,YAAAA,MAAM,CAACkO,mBAAPlO,CAA2B,mBAA3BA,EAAgDsK,QAAhDtK;AAFF;;AANqC,OAAD,CAAxC;;AAaA,UAAMoN,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACe,OAAD,EAAUhB,eAAV,EAA8B;YAC/CiB,kBAAkB,GAAG,SAArBA,kBAAqB,GAAM;cACzBlJ,KAAK,GAAGiJ,OAAO,CAACvJ,GAARuJ;;cAEVjJ,KAAK,GAAGiI,iBAAiB;mBACpB;;;cAELjI,KAAK,GAAGiI,iBAAiB;mBACpB;;;iBAEF;AATT;;YAYIkB,sBAAsB,GAAGD,kBAAkB;;YAEzCE,OAAO,GAAG,SAAVA,OAAU,GAAM;iBACbH,OAAO,CAACvJ,GAARuJ,KAAgBhB;AADzB;;YAIMoB,OAAO,GAAG,SAAVA,OAAU,GAAM;iBACbJ,OAAO,CAACvJ,GAARuJ,KAAgBhB;AADzB;;YAIMqB,iBAAiB,GAAGb,YAAY;AAEtCQ,QAAAA,OAAO,CAACT,OAARS,CAAgBJ,MAAhBI,CAAuB,YAAM;cACrBM,eAAe,GAAGL,kBAAkB;;cACtCK,eAAe,KAAKJ,wBAAwB;gBACxCK,uBAAuB,GAAGL;AAChCA,YAAAA,sBAAsB,GAAGI,eAAzBJ;AACAG,YAAAA,iBAAiB,CAACjD,MAAlBiD,CAAyBC,eAAzBD,EAA0CE,uBAA1CF;;AALJ,SAAAL;eASO;AACLG,UAAAA,OAAO,EAAPA,OADK;AAELC,UAAAA,OAAO,EAAPA,OAFK;AAGLb,UAAAA,OAAO,EAAEc;AAHJ;AAlCT,OAAA;AA0CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACzGA,UAAMG,mBAAmB,GAAG,GAA5B;;AAEO,UAAMC,wBAAwB,GAAG,SAA3BA,wBAA2B,KAAA,EAAiC;YAA9BhE,uBAA8B,QAA9BA,wBAA8B;;AAEvEiE,QAAAA,uBAAuB;AACvBvN,QAAAA,sBAAsB,CAACnB,QAAQ,CAACC,aAATD,CAAuB,sBAAvBA,CAAD,CAAtBmB,CAHuE;;YAMjEwN,KAAK,GAAG3O,QAAQ,CAACC,aAATD,CAAuB,aAAvBA;YACR4O,mBAAmB,GAAG7B,0BAA0B,CAACyB,mBAAD;;YAChDK,yBAAyB,GAAG,SAA5BA,yBAA4B,GAAM;AACtCC,UAAAA,WAAW,CAACH,KAAD,EAAQC,mBAAR,CAAXE;AADF;;AAGAD,QAAAA,yBAAyB;AACzBD,QAAAA,mBAAmB,CAACrB,OAApBqB,CAA4BhB,MAA5BgB,CAAmCC,yBAAnCD;AACAD,QAAAA,KAAK,CAAC5J,KAAN4J,GAAclE,uBAAdkE;AACAG,QAAAA,WAAW,CAACH,KAAD,EAAQC,mBAAR,CAAXE;AAEA/M,QAAAA,sBAAsB,CAAC/B,QAAQ,CAACC,aAATD,CAAuB,OAAvBA,CAAD,CAAtB+B;AACAZ,QAAAA,sBAAsB,CAACnB,QAAQ,CAACC,aAATD,CAAuB,OAAvBA,CAAD,CAAtBmB;;AAEAtB,QAAAA,MAAM,CAACC,MAAPD,CAAckP,SAAdlP,CAAwBmP,sBAAxBnP,CAA+CiJ,IAA/CjJ,CACE,eAAA,EAAoC;cAAjCsL,MAAiC,SAAjCA;cAAQ8D,SAAyB,SAAzBA;cAAWC,OAAc,SAAdA;cACdxE,SAAS,GAAG;AAAES,YAAAA,MAAM,EAANA,MAAF;AAAU8D,YAAAA,SAAS,EAATA,SAAV;AAAqBC,YAAAA,OAAO,EAAPA;AAArB;AAClBR,UAAAA,uBAAuB,CAAChE,SAAD,CAAvBgE;cAEMS,mBAAmB,GAAG1E;cACtBE,iBAAiB,GAAGyE,cAAc,CAAC5K,cAAf4K,CACxBD,mBADwBC,IAGtB1K,IAAI,CAACC,KAALD,CAAW0K,cAAc,CAACxK,OAAfwK,CAAuBD,mBAAvBC,CAAX1K,CAHsB0K,GAItBvK;AACJ2F,UAAAA,qBAAqB,CACnBC,uBADmB,EAEnBC,SAFmB,EAGnBC,iBAHmB,CAArBH;AAMA4E,UAAAA,cAAc,CAACpK,OAAfoK,CAAuB3E,uBAAvB2E,EAAgD1K,IAAI,CAACO,SAALP,CAAegG,SAAfhG,CAAhD0K;AAjBJ,SAAAvP;AAnBK,OAAA;;AAyCP,UAAM6O,uBAAuB,GAAG,SAA1BA,uBAA0B,GAIrB;wFAAP;iCAHFvD;YAAAA,MAGS,6BAHA;YACT8D,SAES,SAFTA;YACAC,OACS,SADTA;;YAEMG,kBAAkB,GAAGrP,QAAQ,CAACC,aAATD,CAAuB,sBAAvBA;AAC3B0F,QAAAA,aAAa,CAAC2J,kBAAD,EAAqB;AAAE3E,UAAAA,SAAS,EAAES;AAAb,SAArB,CAAbzF;YACM4J,WAAW,GAAGD,kBAAkB,CAACpP,aAAnBoP,CAAiC,oBAAjCA;;AAEpBC,QAAAA,WAAW,CAACrP,aAAZqP,CAA0B,QAA1BA,EAAoCvL,OAApCuL,GAA8C;iBAC5CpK,aAAa,CAACmK,kBAAD;AADf,SAAAC;;AAEAA,QAAAA,WAAW,CAACrP,aAAZqP,CAA0B,UAA1BA,EAAsCC,WAAtCD,GAAoDE,WAAW,CAAC;AAC9DrE,UAAAA,MAAM,EAANA,MAD8D;AAE9D8D,UAAAA,SAAS,EAATA,SAF8D;AAG9DC,UAAAA,OAAO,EAAPA;AAH8D,SAAD,CAA/DI;AAXF,OAAA;;AAkBA,UAAME,WAAW,GAAG,SAAdA,WAAc,MAAA,EAAoC;YAAjCrE,MAAiC,SAAjCA;YAAQ8D,SAAyB,SAAzBA;YAAWC,OAAc,SAAdA;;YACpC/D,MAAM,KAAK,aAAa;kDACO+D,OAAO,GAAGD;;;YAGzC9D,MAAM,KAAK,WAAW;+CACM+D,OAAO,GAAGD;;;YAGtC9D,MAAM,KAAK,WAAW;iBACjB;;;eAGF;AAbT,OAAA;;AAgBA,UAAM2D,WAAW,GAAG,SAAdA,WAAc,CAACH,KAAD,EAAQC,mBAAR,EAAgC;YAC5Ca,IAAI,GAAGb,mBAAmB,CAACR,OAApBQ,KAAgC,EAAhCA,GAAqC;;YAC9CD,KAAK,CAAC5J,KAAN4J,CAAY1U,MAAZ0U,GAAqBc,MAAM;AAC7Bd,UAAAA,KAAK,CAAClO,KAANkO,CAAYe,KAAZf,aAAuBc,WAAvBd;AADF,eAEO;AACLA,UAAAA,KAAK,CAAClO,KAANkO,CAAYe,KAAZf,aAAuBA,KAAK,CAAC5J,KAAN4J,CAAY1U,aAAnC0U;;AALJ,OAAA;;ACCO,uBAAA,CAAgB5J,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AArB3B,uBAAA,CAAgByD,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAwcM,sBAAA,CAAe2C,IAAf,EAAqBvC,IAArB,EAA2BC,MAA3B,EAAmC;YACrCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAACuC,IAAI,EAAL,CAAP,GAAkBA,IAAI;;;YAE9B;cACCsE,MAAM,GAAGjH,OAAO,CAACC,OAARD,CAAgB2C,IAAI,EAApB3C;iBACNI,IAAI,GAAG6G,MAAM,CAAC7G,IAAP6G,CAAY7G,IAAZ6G,CAAH,GAAuBA;AAFnC,UAGE,OAAO3L,CAAP,EAAU;iBACJ0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;;;AAvhBF,UAAMkH,aAAa,sBACxB7T,KAQG;uFADC;YALF8T,MAMC,QANDA;+BACAC;YAAAA,MAKC,4BALQ;oCACTC;YAAAA,WAIC,iCAJa;gCACdC;YAAAA,OAGC,6BAHS;6BACV3E;YAAAA,IAEC,0BAFM;;YAGH4E,cAAc,GAAGC,qBAAqB;YACtCC,WAAW,GAAGD,qBAAqB;YAEnCE,GAAG,GAAG,IAAIC,cAAJ;;YAENC,OAAO,GAAG,SAAVA,OAAU,CAACC,KAAD,EAAW;;cAErBN,cAAc,CAACO,SAAS;AAC1BL,YAAAA,WAAW,CAACvH,MAAZuH,CAAmBI,KAAnBJ;AADF,iBAEO;AACLF,YAAAA,cAAc,CAACrH,MAAfqH,CAAsBM,KAAtBN;;AALJ;;YASMQ,OAAO,GAAG,SAAVA,OAAU,GAAM;AACpBL,UAAAA,GAAG,CAACM,SAAJN,GAAgB,IAAhBA;AACAA,UAAAA,GAAG,CAACO,OAAJP,GAAc,IAAdA;AACAA,UAAAA,GAAG,CAACQ,MAAJR,GAAa,IAAbA;AACAA,UAAAA,GAAG,CAACS,kBAAJT,GAAyB,IAAzBA;AAJF;;AAOAA,QAAAA,GAAG,CAACM,SAAJN,GAAgB,YAAM;AACpBK,UAAAA,OAAO;AACPH,UAAAA,OAAO,CAAC,IAAIQ,KAAJ,kCAAoC/U,SAApC,CAAD,CAAPuU;AAFF,SAAAF;;AAKAA,QAAAA,GAAG,CAACO,OAAJP,GAAc,UAACG,KAAD,EAAW;AACvBE,UAAAA,OAAO,GADgB;;;AAIvBH,UAAAA,OAAO,CAACS,kBAAkB,CAACR,KAAD,EAAQ;AAAExU,YAAAA,GAAG,EAAHA;AAAF,WAAR,CAAnB,CAAPuU;AAJF,SAAAF;;AAOAA,QAAAA,GAAG,CAACQ,MAAJR,GAAa,YAAM;AACjBK,UAAAA,OAAO;AACPN,UAAAA,WAAW,CAACxH,OAAZwH;AAFF,SAAAC;;AAKAP,QAAAA,MAAM,CAACvM,gBAAPuM,CAAwB,OAAxBA,EAAiC,YAAM;AACrCO,UAAAA,GAAG,CAACY,KAAJZ;cACMa,UAAU,GAAG,IAAIH,KAAJ,CAAU,SAAV;AACnBG,UAAAA,UAAU,CAAC5V,IAAX4V,GAAkB,YAAlBA;AACAX,UAAAA,OAAO,CAACW,UAAD,CAAPX;AAJF,SAAAT;;AAOAO,QAAAA,GAAG,CAACS,kBAAJT,GAAyB,YAAM;;cAErBc,UAAR,GAAuBd,GAAvB,CAAQc;;cAEJA,UAAU,KAAK,GAAG;AACpBjB,YAAAA,cAAc,CAACtH,OAAfsH;AADF,iBAEO,IAAIiB,UAAU,KAAK,CAAnB,EAAsB;AAC3BT,YAAAA,OAAO;AACPN,YAAAA,WAAW,CAACxH,OAAZwH;;AARJ,SAAAC;;AAYAA,QAAAA,GAAG,CAACe,IAAJf,CAASN,MAATM,EAAiBrU,GAAjBqU,EAAsB,IAAtBA;AACArV,QAAAA,MAAM,CAACsE,IAAPtE,CAAYiV,OAAZjV,EAAqB6G,OAArB7G,CAA6B,UAACuE,GAAD,EAAS;AACpC8Q,UAAAA,GAAG,CAACgB,gBAAJhB,CAAqB9Q,GAArB8Q,EAA0BJ,OAAO,CAAC1Q,GAAD,CAAjC8Q;AADF,SAAArV;AAGAqV,QAAAA,GAAG,CAACiB,eAAJjB,GAAsBkB,sBAAsB,CAAC;AAAEvB,UAAAA,WAAW,EAAXA,WAAF;AAAehU,UAAAA,GAAG,EAAHA;AAAf,SAAD,CAA5CqU;;YACI,kBAAkBA,GAAlB,IAAyBmB,SAAS;AACpCnB,UAAAA,GAAG,CAACoB,YAAJpB,GAAmB,MAAnBA;;;AAEFA,QAAAA,GAAG,CAACqB,IAAJrB,CAAS/E,IAAT+E;wBAEMH;;cAGAyB,WAAW,GACf,iBAAiBtB,GAAjB,GAAuBA,GAAG,CAACuB,WAA3B,GAAyC3B,OAAO,CAAC,eAAD;cAC9C4B,cAAc,GAAGxB,GAAG,CAACjF;cACnB0G,kBAAkB,GAAGzB,GAAG,CAAC0B;cACzBC,eAAe,GAAGC,iBAAiB,CAAC5B,GAAD;;cAEnC6B,QAAQ,YAARA,WAAuB;4BACrB9B;kBAEEhF,MAAR,GAAmBiF,GAAnB,CAAQjF;;kBAEJA,MAAM,KAAK,GAAG;AAChByG,gBAAAA,cAAc,GAAG,GAAjBA;;;kBAGIvG,IAAI,GAAG,cAAc+E,GAAd,GAAoBA,GAAG,CAAC8B,QAAxB,GAAmC9B,GAAG,CAAC+B;qBAE7C;AACLC,gBAAAA,YAAY,EAAE/G,IADT;AAELgH,gBAAAA,gBAAgB,EAAEC,cAAc,CAACjH,IAAD;AAF3B;;AAXT;;cAiBMkH,IAAI,YAAJA,OAAmB;2BAC0BN;kBAAzCG,YADe,SACfA;kBAAcC,gBADC,SACDA;;kBAElBA,gBAAgB,KAAK,QAAQ;uBACxBG,UAAU,CAACJ,YAAD;;;kBAEfC,gBAAgB,KAAK,YAAY;sBAC7B,IAAIvB,KAAJ,CAAU,sCAAV;;;qBAEJuB,gBAAgB,KAAK,UAArBA,GACKI,iBAAiB,CAACL,YAAY,CAACM,MAAd,CADtBL,GAGAA,gBAAgB,KAAK,aAArBA,GACKI,iBAAiB,CAACL,YAAD,CADtBC,GAMGrU,MAAM,CAACoU,YAAD;;AAlBf;;cAqBMO,IAAI,YAAJA,OAAmB;2BACIJ,MACpB7N,IAAI,CAACC;AAFd;;cAKMiO,IAAI,wBAAe;gBACnB,CAACrB,SAAS;oBACN,IAAIT,KAAJ,qBAAA;;;2BAGyCmB;kBAAzCG,YALe,SAKfA;kBAAcC,gBALC,SAKDA;;kBAElBA,gBAAgB,KAAK,QAAQ;uBACxBD;;;kBAELC,gBAAgB,KAAK,YAAY;uBAC5B,IAAIQ,IAAJ,CAAS,CAACC,WAAW,CAACV,YAAY,CAACM,MAAd,CAAZ,CAAT;;;kBAELL,gBAAgB,KAAK,eAAe;uBAC/B,IAAIQ,IAAJ,CAAS,CAACC,WAAW,CAACV,YAAD,CAAZ,CAAT;;;kBAELC,gBAAgB,KAAK,YAAY;sBAC7B,IAAIvB,KAAJ,CAAU,sCAAV;;;qBAED,IAAI+B,IAAJ,CAAS,CAAC7U,MAAM,CAACoU,YAAD,CAAP,CAAT;;AAnBC;;cAsBJW,WAAW,YAAXA,cAA0B;2BACmBd;kBAAzCG,YADsB,SACtBA;kBAAcC,gBADQ,SACRA;qBAElBA,gBAAgB,KAAK,aAArBA,GACKS,WAAW,CAACV,YAAD,CADhBC,WAGuBO,MACpBI;;AAPT;;cAUMC,QAAQ,wBAAe;gBACvB,CAACC,aAAa;oBACV,IAAIpC,KAAJ,yBAAA;;;2BAEmByB,MACpBY;AALK;;iBAQP;AACLpX,YAAAA,GAAG,EAAE2V,WADA;AAELvG,YAAAA,MAAM,EAAEyG,cAFH;AAGLE,YAAAA,UAAU,EAAED,kBAHP;AAIL7B,YAAAA,OAAO,EAAE+B,eAJJ;AAKLQ,YAAAA,IAAI,EAAJA,IALK;AAMLI,YAAAA,IAAI,EAAJA,IANK;AAOLC,YAAAA,IAAI,EAAJA,IAPK;AAQLG,YAAAA,WAAW,EAAXA,WARK;AASLE,YAAAA,QAAQ,EAARA;AATK;;AAzKiB,QAAnB;;AAsLP,UAAMG,UAAU,GAAG,SAAbA,UAAa,GAAM;YACnB,OAAOvT,MAAM,CAACwT,UAAd,KAA6B,YAAY,OAAO,KAAP;YAEzC,OAAOxT,MAAM,CAACgT,IAAd,KAAuB,YAAY,OAAO,KAAP;;YAEnC;;cAEEA;iBACG;AAHT,UAIE,OAAO7O,CAAP,EAAU;iBACH;;AAVX,OAAA;;AAcA,UAAMuN,OAAO,GAAG6B,UAAU,EAA1B;AAEA,UAAMF,WAAW,GAAG,OAAOrT,MAAM,CAACyT,QAAd,KAA2B,UAA/C;AAEA,UAAMC,cAAc,GAAG,OAAO1T,MAAM,CAAC2T,WAAd,KAA8B,UAArD;AAEA,UAAMC,eAAe,GAAG,OAAO5T,MAAM,CAAC6T,eAAd,KAAkC,UAA1D;;AAEA,UAAM3C,kBAAkB,GAAG,SAArBA,kBAAqB,CAACR,KAAD,OAAA,EAAoB;YAAVxU,GAAU,SAAVA;eAC5B,IAAI+U,KAAJ,uCAC0B/U,wCAEjCwU,KAAK,CAACoD,MAHC;AADT,OAAA;;AAQA,UAAMzD,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;YAC9BvH;YACAC;YACEgL,OAAO,GAAG,IAAIlL,OAAJ,CAAY,UAACmL,GAAD,EAAMC,GAAN,EAAc;AACxCnL,UAAAA,OAAO,GAAG,gBAAA,CAAC5D,KAAD,EAAW;AACnB6O,YAAAA,OAAO,CAACpD,OAARoD,GAAkB,IAAlBA;AACAC,YAAAA,GAAG,CAAC9O,KAAD,CAAH8O;AAFF,WAAAlL;;AAIAC,UAAAA,MAAM,GAAG,eAAA,CAAC7D,KAAD,EAAW;AAClB6O,YAAAA,OAAO,CAACpD,OAARoD,GAAkB,IAAlBA;AACAE,YAAAA,GAAG,CAAC/O,KAAD,CAAH+O;AAFF,WAAAlL;AALc,SAAA;AAUhBgL,QAAAA,OAAO,CAACjL,OAARiL,GAAkBjL,OAAlBiL;AACAA,QAAAA,OAAO,CAAChL,MAARgL,GAAiBhL,MAAjBgL;eACOA;AAfT,OAAA;;;AAmBA,UAAMtC,sBAAsB,GAAG,SAAzBA,sBAAyB,MAAA,EAA0B;YAAvBvB,WAAuB,SAAvBA;YAAahU,GAAU,SAAVA;;YACzCgU,WAAW,KAAK,eAAe;iBAC1BgE,wBAAwB,CAAChY,GAAD;;;eAE1BgU,WAAW,KAAK;AAJzB,OAAA;;AAOA,UAAMgE,wBAAwB,GAAG,SAA3BA,wBAA2B,CAAChY,GAAD,EAAS;;YAEpC,QAAO8D,+CAAAA,OAAP,MAAkB,UAAU,OAAO,IAAP;YAC5BmU,QAAOnU,MAAM,CAACuE,SAAd,KAA2B,UAAU,OAAO,IAAP;YACnC6P,YAAY,GAAGpU,MAAM,CAACuE,QAAPvE,CAAgBzD;YACjC6X,YAAY,KAAK,QAAQ,OAAO,IAAP;eACtBC,YAAY,CAACnY,GAAD,CAAZmY,KAAsBD;AAN/B,OAAA;;AASA,UAAM3B,cAAc,GAAG,SAAjBA,cAAiB,CAACjH,IAAD,EAAU;YAC3B,CAACA,MAAM;iBACF;;;YAEL,OAAOA,IAAP,KAAgB,UAAU;iBACrB;;;YAELkG,OAAO,IAAIsB,IAAI,CAAC7X,SAAL6X,CAAesB,aAAftB,CAA6BxH,IAA7BwH,GAAoC;iBAC1C;;;YAELK,WAAW,IAAII,QAAQ,CAACtY,SAATsY,CAAmBa,aAAnBb,CAAiCjI,IAAjCiI,GAAwC;iBAClD;;;YAELC,gBAAgB;cACdhC,OAAO,IAAI6C,UAAU,CAAC/I,IAAD,GAAQ;;;;cAG7BmI,WAAW,CAACxY,SAAZwY,CAAsBW,aAAtBX,CAAoCnI,IAApCmI,KAA6Ca,iBAAiB,CAAChJ,IAAD,GAAQ;;;;;YAIxEoI,eAAe,IAAIC,eAAe,CAAC1Y,SAAhB0Y,CAA0BS,aAA1BT,CAAwCrI,IAAxCqI,GAA+C;iBAC7D;;;eAEF;AAxBT,OAAA;;;AA4BA,UAAM1B,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC5B,GAAD,EAAS;YAC3BkE,SAAS,GAAG;YAEZC,aAAa,GAAGnE,GAAG,CAACoE,qBAAJpE;YAClBmE,aAAa,KAAK,IAAI,OAAOD,SAAP;YAEpBG,KAAK,GAAGF,aAAa,CAACG,IAAdH,GAAqBI,KAArBJ,CAA2B,SAA3BA;AACdE,QAAAA,KAAK,CAAC7S,OAAN6S,CAAc,UAACG,IAAD,EAAU;cAChBC,KAAK,GAAGD,IAAI,CAACD,KAALC,CAAW,IAAXA;cACRvZ,IAAI,GAAGwZ,KAAK,CAACC,KAAND;cACP9P,KAAK,GAAG8P,KAAK,CAACE,IAANF,CAAW,IAAXA;AACdP,UAAAA,SAAS,CAACjZ,IAAI,CAAC2Z,WAAL3Z,EAAD,CAATiZ,GAAgCvP,KAAhCuP;AAJF,SAAAG;eAOOH;AAdT,OAAA;;AAiBA,UAAMJ,YAAY,GAAG,SAAfA,YAAe,CAACpQ,IAAD,EAAU;YACvBmR,MAAM,GAAGC,YAAY,CAACpR,IAAD;;YAEvBmR,MAAM,KAAK,QAAQ;iBACd;;;YAGLA,MAAM,KAAK,MAAXA,IAAqBA,MAAM,KAAK,SAAS;cACrCE,wBAAwB,GAAGF,MAAM,CAAChb,MAAPgb,GAAgB,MAAMhb;cACjDmb,kBAAkB,GAAGtR,IAAI,CAACvE,OAALuE,CAAa,GAAbA,EAAkBqR,wBAAlBrR;cAEvBsR,kBAAkB,KAAK,CAAC,GAAG,OAAOtR,IAAP;iBACxBA,IAAI,CAAC3I,KAAL2I,CAAW,CAAXA,EAAcsR,kBAAdtR;;;eAGFA,IAAI,CAAC3I,KAAL2I,CAAW,CAAXA,EAAcmR,MAAM,CAAChb,MAAPgb,GAAgB,CAA9BnR;AAfT,OAAA;;AAkBA,UAAMoR,YAAY,GAAG,SAAfA,YAAe,CAACpR,IAAD,EAAU;YACvB6C,UAAU,GAAG7C,IAAI,CAACvE,OAALuE,CAAa,GAAbA;YACf6C,UAAU,KAAK,CAAC,GAAG,OAAO,EAAP;eAChB7C,IAAI,CAAC3I,KAAL2I,CAAW,CAAXA,EAAc6C,UAAd7C;AAHT,OAAA;;AAMA,UAAMsQ,UAAU,GAAG,SAAbA,UAAa,CAACxY,GAAD,EAAS;eACnBA,GAAG,IAAIyZ,QAAQ,CAACra,SAATqa,CAAmBlB,aAAnBkB,CAAiCzZ,GAAjCyZ;AADhB,OAAA;;AAIA,UAAMhB,iBAAiB,GACrBb,WAAW,CAAC8B,MAAZ9B,IACC,YAAM;YACC+B,WAAW,GAAG,CAClB,oBADkB,EAElB,qBAFkB,EAGlB,4BAHkB,EAIlB,qBAJkB,EAKlB,sBALkB,EAMlB,qBANkB,EAOlB,sBAPkB,EAQlB,uBARkB,EASlB,uBATkB;eAYb,UAACxQ,KAAD,EAAW;iBAEdA,KAAK,IAAIwQ,WAAW,CAAC3W,QAAZ2W,CAAqBxa,MAAM,CAACC,SAAPD,CAAiBE,QAAjBF,CAA0BG,IAA1BH,CAA+BgK,KAA/BhK,CAArBwa;AAFb;AAbF,OAAC,EAFH;;AAsBA,UAAMpC,cAAc,GAAG,SAAjBA,cAAiB,CAACZ,IAAD,EAAU;YACzBiD,IAAI,GAAG,IAAIlC,QAAJ;AACbf,QAAAA,IAAI,CACDmC,IADHnC,GAEGoC,KAFHpC,CAES,GAFTA,EAGG3Q,OAHH2Q,CAGW,UAAUkD,KAAV,EAAiB;cACpBA,OAAO;gBACHd,KAAK,GAAGc,KAAK,CAACd,KAANc,CAAY,GAAZA;gBACRpa,IAAI,GAAGsZ,KAAK,CAACG,KAANH,GAAc5V,OAAd4V,CAAsB,KAAtBA,EAA6B,GAA7BA;gBACP5P,KAAK,GAAG4P,KAAK,CAACI,IAANJ,CAAW,GAAXA,EAAgB5V,OAAhB4V,CAAwB,KAAxBA,EAA+B,GAA/BA;AACda,YAAAA,IAAI,CAACE,MAALF,CAAYG,kBAAkB,CAACta,IAAD,CAA9Bma,EAAsCG,kBAAkB,CAAC5Q,KAAD,CAAxDyQ;;AARN,SAAAjD;eAWOiD;AAbT,OAAA;;AAgBA,UAAMxC,iBAAiB,sBAAUJ,MAAS;YAClCgD,MAAM,GAAG,IAAIvC,UAAJ;YACTO,OAAO,GAAGiC,eAAe,CAACD,MAAD;AAC/BA,QAAAA,MAAM,CAACE,iBAAPF,CAAyBhD,IAAzBgD;eACOhC;AAJc,QAAvB;;AAOA,UAAMpB,UAAU,GAAG,SAAbA,UAAa,CAACI,IAAD,EAAU;YACrBgD,MAAM,GAAG,IAAIvC,UAAJ;YACTO,OAAO,GAAGiC,eAAe,CAACD,MAAD;AAC/BA,QAAAA,MAAM,CAACG,UAAPH,CAAkBhD,IAAlBgD;eACOhC;AAJT,OAAA;;AAOA,UAAMnB,iBAAiB,GAAG,SAApBA,iBAAoB,CAACM,WAAD,EAAiB;YACnCiD,IAAI,GAAG,IAAIC,UAAJ,CAAelD,WAAf;YACPmD,KAAK,GAAG,IAAI/b,KAAJ,CAAU6b,IAAI,CAAC/b,MAAf;YACVG,CAAC,GAAG;;eACDA,CAAC,GAAG4b,IAAI,CAAC/b,QAAQ;AACtBic,UAAAA,KAAK,CAAC9b,CAAD,CAAL8b,GAAWlY,MAAM,CAACmY,YAAPnY,CAAoBgY,IAAI,CAAC5b,CAAD,CAAxB4D,CAAXkY;AAEA9b,UAAAA,CAAC;;;eAEI8b,KAAK,CAACnB,IAANmB,CAAW,EAAXA;AATT,OAAA;;AAYA,UAAML,eAAe,GAAG,SAAlBA,eAAkB,CAACD,MAAD,EAAY;eAC3B,IAAIlN,OAAJ,CAAY,UAAUC,OAAV,EAAmBC,MAAnB,EAA2B;AAC5CgN,UAAAA,MAAM,CAAChF,MAAPgF,GAAgB,YAAY;AAC1BjN,YAAAA,OAAO,CAACiN,MAAM,CAACjG,MAAR,CAAPhH;AADF,WAAAiN;;AAGAA,UAAAA,MAAM,CAACjF,OAAPiF,GAAiB,YAAY;AAC3BhN,YAAAA,MAAM,CAACgN,MAAM,CAACrF,KAAR,CAAN3H;AADF,WAAAgN;AAJK,SAAA;AADT,OAAA;;AAWA,UAAM9C,WAAW,GAAG,SAAdA,WAAc,CAACJ,MAAD,EAAY;YAC1BA,MAAM,CAACvX,OAAO;iBACTuX,MAAM,CAACvX,KAAPuX,CAAa,CAAbA;;;YAEHsD,IAAI,GAAG,IAAIC,UAAJ,CAAevD,MAAM,CAAC0D,UAAtB;AACbJ,QAAAA,IAAI,CAAClR,GAALkR,CAAS,IAAIC,UAAJ,CAAevD,MAAf,CAATsD;eACOA,IAAI,CAACtD;AANd,OAAA;;;;ACvTO,eAAS7J,QAAT,CAAgB9D,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AArB3B,eAASwD,QAAT,CAAgBC,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AArED,UAAM2N,WAAW,sBAAUta,KAA4C;uFAAP;;6BAA9Bua;YAAAA,IAAqC,0BAA9B;YAAW9K,OAAmB;;wBAC9C3L,MAAM,CAAC0W,KAAP1W,CAAa9D,GAAb8D;AACrByW,UAAAA,IAAI,EAAJA;WACG9K,QAFkB3L,aAAjBqS;iBAKC;AACLnW,YAAAA,GAAG,EAAEmW,QAAQ,CAACnW,GADT;AAELoP,YAAAA,MAAM,EAAE+G,QAAQ,CAAC/G,MAFZ;AAGL2G,YAAAA,UAAU,EAAE,EAHP;AAIL9B,YAAAA,OAAO,EAAEwG,iBAAiB,CAACtE,QAAD,CAJrB;AAKLK,YAAAA,IAAI,EAAE,aAAA;qBAAML,QAAQ,CAACK,IAATL;AALP,aAAA;AAMLS,YAAAA,IAAI,EAAE,aAAA;qBAAMT,QAAQ,CAACS,IAATT;AANP,aAAA;AAOLU,YAAAA,IAAI,EAAE,aAAA;qBAAMV,QAAQ,CAACU,IAATV;AAPP,aAAA;AAQLa,YAAAA,WAAW,EAAE,oBAAA;qBAAMb,QAAQ,CAACa,WAATb;AARd,aAAA;AASLe,YAAAA,QAAQ,EAAE,iBAAA;qBAAMf,QAAQ,CAACe,QAATf;;AATX;;AANQ,QAAjB;;AAmBA,UAAMsE,iBAAiB,GAAG,SAApBA,iBAAoB,CAACtE,QAAD,EAAc;YAChClC,OAAO,GAAG;AAChBkC,QAAAA,QAAQ,CAAClC,OAATkC,CAAiBtQ,OAAjBsQ,CAAyB,UAACnN,KAAD,EAAQ1J,IAAR,EAAiB;AACxC2U,UAAAA,OAAO,CAAC3U,IAAD,CAAP2U,GAAgBjL,KAAhBiL;AADF,SAAAkC;eAGOlC;AALT,OAAA;;AAQO,UAAMyG,QAAQ,GACnB,OAAO5W,MAAM,CAAC0W,KAAd,KAAwB,UAAxB,IACA,OAAO1W,MAAM,CAAC6W,eAAd,KAAkC,UADlC,GAEIL,WAFJ,GAGIzG,aAJC;;ACuDA,uBAAA,CAAgB7K,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AArB3B,uBAAA,CAAgByD,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AArEM,UAAMiO,SAAS,sBAAU5a,KAAsB;YAAjByP,OAAiB,uEAAP;wBACtBiL,QAAQ,CAAC1a,GAAD,EAAMyP,OAAN,aAAzB0G;0BACeA,QAAQ,CAACS,IAATT;;AAFD,QAAf;ACFP;;;;;;;AAMO,UAAM0E,uBAAuB,GAAG,SAA1BA,uBAA0B,GAAM;YACnCC,aAAR,GAA0BhX,MAAM,CAACiX,SAAPjX,CAAlBgX;;YACJ,CAACA,eAAe;iBACX;;;YAEDE,MAAR,GAAmBF,aAAnB,CAAQE;YACJ3c,CAAC,GAAG;;eACDA,CAAC,GAAG2c,MAAM,CAAC9c,QAAQ;0BACG8c,MAAM,CAAC3c,CAAD;cAAzB4c,KAAR,aAAQA;cAAOC,OAAf,aAAeA;AACf7c,UAAAA,CAAC;;cACG4c,KAAK,KAAK,UAAVA,IAAwBA,KAAK,KAAK,iBAAiB;mBAC9C;AACL3b,cAAAA,IAAI,EAAE,QADD;AAEL4b,cAAAA,OAAO,EAAPA;AAFK;;;;eAMJ;AAjBF,OAAA;;ACNA,UAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,MAAD,EAASja,MAAT,EAAoB;YACtCka,KAAK,GAAGla,MAAM,CAACka,KAAPla,CAAaia,MAAbja;eACPka,KAAK,IAAIA,KAAK,CAACnd,MAANmd,GAAe,CAAxBA,GAA4BA,KAAK,CAAC,CAAD,CAALA,IAAYvS,SAAxCuS,GAAoDvS;AAFtD,OAAA;;AAKA,UAAMwS,WAAW,GAAG,SAAdA,WAAc,CAACF,MAAD,EAASja,MAAT,EAAoB;YACvCka,KAAK,GAAGla,MAAM,CAACka,KAAPla,CAAaia,MAAbja;eACPka,KAAK,IAAIA,KAAK,CAACnd,MAANmd,GAAe,CAAxBA,GAA4BA,KAAK,CAAC,CAAD,CAALA,IAAYvS,SAAxCuS,GAAoDvS;AAFtD,OAAA;;AAKA,UAAMyS,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,SAAD,EAAe;eACxCL,UAAU,CAAC,4BAAD,EAA+BK,SAA/B,CAAVL,IAAuDrS;AADzD,OAAA;;ACRA,UAAM2S,aAAa,GAAG,SAAhBA,aAAgB;eAAMC,oBAAkB,CAAC5X,MAAM,CAACiX,SAAR;AAA9C,OAAA;;AAEP,UAAMW,oBAAkB,GAAG,SAArBA,kBAAqB,KAAA,EAA+B;YAA5BF,SAA4B,QAA5BA;YAAWG,UAAiB,QAAjBA;;YACnC,aAAapc,IAAb,CAAkBic,SAAlB,GAA8B;iBACzB;AACLlc,YAAAA,IAAI,EAAE,SADD;AAEL4b,YAAAA,OAAO,EAAEC,UAAU,CAAC,2BAAD,EAA8BQ,UAA9B;AAFd;;;eAKF;AAPT,OAAA;;ACFO,UAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB;eACpCC,oBAAkB,CAAC/X,MAAM,CAACiX,SAAPjX,CAAiB0X,SAAlB;AADb,OAAA;;AAGP,UAAMK,oBAAkB,GAAG,SAArBA,kBAAqB,CAACL,SAAD,EAAe;YACpC,gBAAgBjc,IAAhB,CAAqBic,SAArB,GAAiC;iBAC5B;AACLlc,YAAAA,IAAI,EAAE,IADD;AAEL4b,YAAAA,OAAO,EAAEC,UAAU,CAAC,gCAAD,EAAmCK,SAAnC;AAFd;;;eAKF;AAPT,OAAA;;ACHO,UAAMM,WAAW,GAAG,SAAdA,WAAc;eAAMD,oBAAkB,CAAC/X,MAAM,CAACiX,SAAPjX,CAAiB0X,SAAlB;AAA5C,OAAA;;AAEP,UAAMK,oBAAkB,GAAG,SAArBA,kBAAqB,CAACL,SAAD,EAAe;;YAEpC,SAASjc,IAAT,CAAcic,SAAd,GAA0B;iBACrB;AACLlc,YAAAA,IAAI,EAAE,OADD;AAEL4b,YAAAA,OAAO,EACLK,kBAAkB,CAACC,SAAD,CAAlBD,IACAJ,UAAU,CAAC,iCAAD,EAAoCK,SAApC;AAJP;AAH+B,SAAA;;;YAYpC,eAAejc,IAAf,CAAoBic,SAApB,GAAgC;iBAC3B;AACLlc,YAAAA,IAAI,EAAE,OADD;AAEL4b,YAAAA,OAAO,EACLC,UAAU,CAAC,0BAAD,EAA6BK,SAA7B,CAAVL,IACAI,kBAAkB,CAACC,SAAD;AAJf;;;eAQF;AArBT,OAAA;;ACFO,UAAMO,UAAU,GAAG,SAAbA,UAAa;eAAMF,oBAAkB,CAAC/X,MAAM,CAACiX,SAAPjX,CAAiB0X,SAAlB;AAA3C,OAAA;;AAEP,UAAMK,oBAAkB,GAAG,SAArBA,kBAAqB,CAACL,SAAD,EAAe;YACpC,iBAAiBjc,IAAjB,CAAsBic,SAAtB,GAAkC;iBAC7B;AACLlc,YAAAA,IAAI,EAAE,MADD;AAEL4b,YAAAA,OAAO,EAAEI,WAAW,CAAC,kCAAD,EAAqCE,SAArC;AAFf;;;eAKF;AAPT,OAAA;;ACFO,UAAMQ,aAAa,GAAG,SAAhBA,aAAgB;eAC3BH,oBAAkB,CAAC/X,MAAM,CAACiX,SAAPjX,CAAiB0X,SAAlB;AADb,OAAA;;AAGP,UAAMK,oBAAkB,GAAG,SAArBA,kBAAqB,CAACL,SAAD,EAAe;YACpC,2BAA2Bjc,IAA3B,CAAgCic,SAAhC,GAA4C;iBACvC;AACLlc,YAAAA,IAAI,EAAE,SADD;AAEL4b,YAAAA,OAAO,EAAEC,UAAU,CACjB,mDADiB,EAEjBK,SAFiB;AAFd;;;eAQF;AAVT,OAAA;;ACHO,UAAMS,YAAY,GAAG,SAAfA,YAAe,GAAM;eACzBJ,oBAAkB,CAAC/X,MAAM,CAACiX,SAAPjX,CAAiB0X,SAAlB;AADpB,OAAA;;AAIP,UAAMK,oBAAkB,GAAG,SAArBA,kBAAqB,CAACL,SAAD,EAAe;YACpC,YAAYjc,IAAZ,CAAiBic,SAAjB,GAA6B;iBACxB;AACLlc,YAAAA,IAAI,EAAE,QADD;AAEL4b,YAAAA,OAAO,EACLC,UAAU,CAAC,oCAAD,EAAuCK,SAAvC,CAAVL,IACAI,kBAAkB,CAACC,SAAD;AAJf;;;YAQL,qBAAqBjc,IAArB,CAA0Bic,SAA1B,GAAsC;iBACjC;AACLlc,YAAAA,IAAI,EAAE,QADD;AAEL4b,YAAAA,OAAO,EAAEC,UAAU,CACjB,0CADiB,EAEjBK,SAFiB;AAFd;;;eASF;AApBT,OAAA;;ACJO,UAAMU,YAAY,GAAG,SAAfA,YAAe;eAAML,kBAAkB,CAAC/X,MAAM,CAACiX,SAAPjX,CAAiB0X,SAAlB;AAA7C,OAAA;;AAEP,UAAMK,kBAAkB,GAAG,SAArBA,kBAAqB,CAACL,SAAD,EAAe;YACpC,sBAAsBjc,IAAtB,CAA2Bic,SAA3B,GAAuC;iBAClC;AACLlc,YAAAA,IAAI,EAAE,QADD;AAEL4b,YAAAA,OAAO,EAAEK,kBAAkB,CAACC,SAAD;AAFtB;;;eAKF;AAPT,OAAA;;ACJO,UAAMW,cAAc,GAAG,SAAjBA,cAAiB;eAAM;AAA7B,OAAA;;;ACEA,UAAMC,SAAS,GAAG,SAAZA,SAAY;eAAMV,kBAAkB,CAAC5X,MAAM,CAACiX,SAAR;AAA1C,OAAA;;AAEP,UAAMW,kBAAkB,GAAG,SAArBA,kBAAqB,KAAA,EAA+B;YAA5BF,SAA4B,QAA5BA;YAAWG,UAAiB,QAAjBA;;YACnC,UAAUpc,IAAV,CAAeic,SAAf,GAA2B;iBACtB;AACLlc,YAAAA,IAAI,EAAE,KADD;AAEL4b,YAAAA,OAAO,EAAEC,UAAU,CAAC,sBAAD,EAAyBQ,UAAzB;AAFd;;;YAKL,QAAQpc,IAAR,CAAaic,SAAb,GAAyB;iBACpB;AACLlc,YAAAA,IAAI,EAAE,KADD;AAEL4b,YAAAA,OAAO,EAAEC,UAAU,CAAC,sBAAD,EAAyBQ,UAAzB;AAFd;;;eAKF;AAbT,OAAA,ECJA;;;AAcA,UAAMU,eAAe,GAAG,SAAlBA,eAAkB,CAACC,SAAD;eAAe,YAAM;cACvCje,CAAC,GAAG;;iBACDA,CAAC,GAAGie,SAAS,CAACpe,QAAQ;gBACrBqe,SAAQ,GAAGD,SAAS,CAACje,CAAD;AAC1BA,YAAAA,CAAC;;gBACKuV,MAAM,GAAG2I,SAAQ;;gBACnB3I,QAAQ;qBACHA;;;;iBAGJ;AAVe;AAAxB,OAAA;;AAaA,UAAM2I,QAAQ,GAAGF,eAAe,CAAC,CAC/BxB,uBAD+B;AAE/BiB,MAAAA,WAF+B,EAG/BF,sBAH+B,EAI/BG,UAJ+B,EAK/BC,aAL+B,EAM/BC,YAN+B,EAO/BC,YAP+B,EAQ/BC,cAR+B,EAS/BC,SAT+B,EAU/BX,aAV+B,CAAD,CAAhC;;AAaO,UAAMe,aAAa,GAAG,SAAhBA,aAAgB,GAAM;mBACeD,QAAQ,MAAM;6BAAtDjd;YAAAA,IAAR,0BAAe;gCAAS4b;YAAAA,OAAxB,6BAAkC;;eAC3B;AACL5b,UAAAA,IAAI,EAAEmd,aAAa,CAACnd,IAAD,CADd;AAEL4b,UAAAA,OAAO,EAAEwB,gBAAgB,CAACxB,OAAD;AAFpB;AAFF,OAAA;;AAQP,UAAMuB,aAAa,GAAG,SAAhBA,aAAgB,CAACnd,IAAD,EAAU;eACvBA,IAAI,CAAC2Z,WAAL3Z;AADT,OAAA;;AAIA,UAAMod,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACxB,OAAD,EAAa;YAChCA,OAAO,CAAC1X,OAAR0X,CAAgB,GAAhBA,IAAuB,CAAC,GAAG;cACvBpC,KAAK,GAAGoC,OAAO,CAACtC,KAARsC,CAAc,GAAdA,EADe;;iBAGtBpC,KAAK,CAAC1Z,KAAN0Z,CAAY,CAAZA,EAAe,CAAfA,EAAkBE,IAAlBF,CAAuB,GAAvBA;;;YAELoC,OAAO,CAAC1X,OAAR0X,CAAgB,GAAhBA,IAAuB,CAAC,GAAG;cACvBpC,MAAK,GAAGoC,OAAO,CAACtC,KAARsC,CAAc,GAAdA,EADe;;;iBAGtBpC,MAAK,CAAC1Z,KAAN0Z,CAAY,CAAZA,EAAe,CAAfA,EAAkBE,IAAlBF,CAAuB,GAAvBA;;;eAEFoC;AAXT,OAAA;;ACpDO,UAAMyB,gCAAgC,GAAG,SAAnCA,gCAAmC,CAACC,IAAD,EAAU;YAClDC,YAAY,GAAG5Y,QAAQ,CAAC6Y,aAAT7Y,CAAuB,QAAvBA;AACrB4Y,QAAAA,YAAY,CAACE,IAAbF,GAAoB,QAApBA;YAEMG,WAAW,GAAG,IAAIrQ,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;AACnDgQ,UAAAA,YAAY,CAAChI,MAAbgI,GAAsB,YAAM;AAC1B5Y,YAAAA,QAAQ,CAACqL,IAATrL,CAAcgZ,WAAdhZ,CAA0B4Y,YAA1B5Y;AACA2I,YAAAA,OAAO;AAFT,WAAAiQ;;AAIAA,UAAAA,YAAY,CAACjI,OAAbiI,GAAuB,YAAM;AAC3B5Y,YAAAA,QAAQ,CAACqL,IAATrL,CAAcgZ,WAAdhZ,CAA0B4Y,YAA1B5Y;AACA4I,YAAAA,MAAM;AAFR,WAAAgQ;;AAIA5Y,UAAAA,QAAQ,CAACqL,IAATrL,CAAciZ,WAAdjZ,CAA0B4Y,YAA1B5Y;AATkB,SAAA;AAYpB4Y,QAAAA,YAAY,CAACM,GAAbN,GAAmBO,WAAW,CAACR,IAAD,CAA9BC;eAEOG;AAlBF,OAAA;;AAqBA,UAAMI,WAAW,GAAG,SAAdA,WAAc,CAAC5G,IAAD,EAA+C;YAAxC6G,QAAwC,uEAA7B;8BAC5BA,6BAAmBvZ,MAAM,CAACwZ,IAAPxZ,CAAY0S,IAAZ1S;AAD7B,OAAA;;AC+DA,uBAAA,CAAgBkF,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAud3B,uBAAA,CAAgBsG,IAAhB,EAAsBiO,OAAtB,EAA+B;YACjC;cACC3J,MAAM,GAAGtE,IAAI;AADlB,UAEE,OAAMrH,CAAN,EAAS;iBACHsV,OAAO,CAACtV,CAAD;;;YAEX2L,MAAM,IAAIA,MAAM,CAAC7G,MAAM;iBACnB6G,MAAM,CAAC7G,IAAP6G,CAAY,KAAK,CAAjBA,EAAoB2J,OAApB3J;;;eAEDA;;;AArfD,uBAAA,CAAgBnH,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAlEM,UAAM6Q,iBAAiB,wBAAqC;uFAAP;+BAAlBC;YAAAA,MAAyB,4BAAhB;;YAC3CC,SAAS,GAAGN,WAAW,uBAAA;YACvBO,SAAS,GAAG;AAChBC,UAAAA,OAAO,sBACJF,WAAYN,WAAW,sBAAA;AAFV;YAKZS,eAAe,GAAG5Z,QAAQ,CAAC6Y,aAAT7Y,CAAuB,QAAvBA;YAClB6Z,eAAe,GAAGnV,IAAI,CAACO,SAALP,CAAegV,SAAfhV,EAA0B,IAA1BA,EAAgC,IAAhCA;AACxBkV,QAAAA,eAAe,CAACd,IAAhBc,GAAuB,WAAvBA;;YACIJ,QAAQ;AACVI,UAAAA,eAAe,CAACV,GAAhBU,0CAAsD/Z,MAAM,CAACwZ,IAAPxZ,CACpDga,eADoDha,EAAtD+Z;AADF,eAIO;AACLA,UAAAA,eAAe,CAACrK,WAAhBqK,GAA8BC,eAA9BD;;;AAEF5Z,QAAAA,QAAQ,CAACqL,IAATrL,CAAciZ,WAAdjZ,CAA0B4Z,eAA1B5Z;oCAEI;0BACI0Y,gCAAgC,mCACVe,qEADU;AAGtCzZ,YAAAA,QAAQ,CAACqL,IAATrL,CAAcgZ,WAAdhZ,CAA0B4Z,eAA1B5Z;gBACM8Z,SAAS,GAAGja,MAAM,CAACka;mBAClBla,MAAM,CAACka;mBACPD;;AA1BwD,uBA2BrD;AACV9Z,UAAAA,QAAQ,CAACqL,IAATrL,CAAcgZ,WAAdhZ,CAA0B4Z,eAA1B5Z;iBACO;AA7BwD;AAArC,QAAvB;;AC+EA,uBAAA,CAAgB+E,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAud3B,uBAAA,CAAgBsG,IAAhB,EAAsBiO,OAAtB,EAA+B;YACjC;cACC3J,MAAM,GAAGtE,IAAI;AADlB,UAEE,OAAMrH,CAAN,EAAS;iBACHsV,OAAO,CAACtV,CAAD;;;YAEX2L,MAAM,IAAIA,MAAM,CAAC7G,MAAM;iBACnB6G,MAAM,CAAC7G,IAAP6G,CAAY,KAAK,CAAjBA,EAAoB2J,OAApB3J;;;eAEDA;;;AArfD,uBAAA,CAAgBnH,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAlEM,UAAMsR,qBAAqB,wBAAe;YACzCC,YAAY,GAAGd,WAAW,oBAAA;oCAC5B;0BACIT,gCAAgC,iEACqBhU,IAAI,CAACO,SAALP,CACvDuV,YADuDvV,OADrB;4BAKd7E,MAAM,CAACqa,iDAAzBC;qBACCta,MAAM,CAACqa;qBACPC,SAAS,CAACC,OAAVD,KAAsB;;;AAVgB,uBAWnC;iBACH;AAZsC;AAAf,QAA3B;;AC+EA,uBAAA,CAAgBpV,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAud3B,uBAAA,CAAgBsG,IAAhB,EAAsBiO,OAAtB,EAA+B;YACjC;cACC3J,MAAM,GAAGtE,IAAI;AADlB,UAEE,OAAMrH,CAAN,EAAS;iBACHsV,OAAO,CAACtV,CAAD;;;YAEX2L,MAAM,IAAIA,MAAM,CAAC7G,MAAM;iBACnB6G,MAAM,CAAC7G,IAAP6G,CAAY,KAAK,CAAjBA,EAAoB2J,OAApB3J;;;eAEDA;;;AAzjBD,UAAM0K,qBAAqB,YAArBA,wBAAoC;6CAC3C;0BACI3B,gCAAgC,4EAAA;gBAGhCoB,SAAS,GAAGja,MAAM,CAACya,sCAAPza,KAAkD;mBAC7DA,MAAM,CAACya;mBACPR;;AAPsC,uBAQnC;iBACH;AATsC;AAA1C,OAAA;;ACkFA,uBAAA,CAAgB/U,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAud3B,uBAAA,CAAgBsG,IAAhB,EAAsBiO,OAAtB,EAA+B;YACjC;cACC3J,MAAM,GAAGtE,IAAI;AADlB,UAEE,OAAMrH,CAAN,EAAS;iBACHsV,OAAO,CAACtV,CAAD;;;YAEX2L,MAAM,IAAIA,MAAM,CAAC7G,MAAM;iBACnB6G,MAAM,CAAC7G,IAAP6G,CAAY,KAAK,CAAjBA,EAAoB2J,OAApB3J;;;eAEDA;;;AArfD,uBAAA,CAAgBnH,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAlEM,UAAM6R,4BAA4B,wBAAe;YAChDC,aAAa,GAAGrB,WAAW,CAAC,IAAD,EAAO,kBAAP;YAC3Bc,YAAY,GAAGd,WAAW,8BACTqB,qEADS;oCAI5B;0BACI9B,gCAAgC,wEAC4BhU,IAAI,CAACO,SAALP,CAC9DuV,YAD8DvV,OAD5B;4BAKd7E,MAAM,CAAC4a,wDAAzBN;kBACAL,SAAS,GAAGK,SAAS,CAACC,OAAVD,KAAsB;qBACjCta,MAAM,CAAC4a;qBACPX;;;AAf6C,uBAgB1C;iBACH;AAjB6C;AAAf,QAAlC;;AC+EA,uBAAA,CAAgB/U,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAud3B,qBAAA,CAAgBsG,IAAhB,EAAsBiO,OAAtB,EAA+B;YACjC;cACC3J,MAAM,GAAGtE,IAAI;AADlB,UAEE,OAAMrH,CAAN,EAAS;iBACHsV,OAAO,CAACtV,CAAD;;;YAEX2L,MAAM,IAAIA,MAAM,CAAC7G,MAAM;iBACnB6G,MAAM,CAAC7G,IAAP6G,CAAY,KAAK,CAAjBA,EAAoB2J,OAApB3J;;;eAEDA;;;AArfD,uBAAA,CAAgBnH,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAlEM,UAAMgS,2BAA2B,wBAAe;YAC/CC,YAAY,GAAGxB,WAAW,CAAC,mBAAD,EAAsB,UAAtB;YAC1Bc,YAAY,GAAGd,WAAW,6BACVwB,kEADU;kCAI5B;0BACIjC,gCAAgC,uEAC2BhU,IAAI,CAACO,SAALP,CAC7DuV,YAD6DvV,OAD3B;4BAKd7E,MAAM,CAAC+a,uDAAzBT;qBACCA,SAAS,CAACC,OAAVD,YAA6BU;;;AAbe,uBAczC;iBACH;AAf4C;AAAf,QAAjC;;ACLA,UAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;YACrC;;cAEED;iBACG;AAHT,UAIE,OAAO7W,CAAP,EAAU;iBACH;;AANJ,OAAA;;ACoFA,uBAAA,CAAgBe,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AArB3B,uBAAA,CAAgByD,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AAwcM,oBAAA,CAAe2C,IAAf,EAAqBvC,IAArB,EAA2BC,MAA3B,EAAmC;YACrCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAACuC,IAAI,EAAL,CAAP,GAAkBA,IAAI;;;YAE9B;cACCsE,MAAM,GAAGjH,OAAO,CAACC,OAARD,CAAgB2C,IAAI,EAApB3C;iBACNI,IAAI,GAAG6G,MAAM,CAAC7G,IAAP6G,CAAY7G,IAAZ6G,CAAH,GAAuBA;AAFnC,UAGE,OAAO3L,CAAP,EAAU;iBACJ0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;;;AA7gBF,UAAMqS,0BAA0B,wBAI5B;uFAAP;yCAHFC;YAAAA,0BAGS,sCAHoB;yCAC7BC;YAAAA,gBAES,sCAFU;oCACnBC;YAAAA,WACS,iCADK;;YAERC,sBAAsB,GAAG;wBAKrBxE,SAAS,CAACwE,sBAAD;cAHjBC,yBAHO,SAGPA;cACAC,uBAJO,SAIPA;cACAC,mBALO,SAKPA;;+BAEwB/C,aAAa;cAA/Bld,IAAR,kBAAQA;cAAM4b,OAAd,kBAAcA;;0BACesE,uBAAuB,CAAC;AACnDP,YAAAA,0BAA0B,EAA1BA,0BADmD;AAEnDK,YAAAA,uBAAuB,EAAvBA;AAFmD,WAAD,aAA9CG;gBAIAC,aAAa,GAAG;AACpBC,cAAAA,GAAG,EAAE;AAAEC,gBAAAA,OAAO,EAAE;AAAX,eADe;AAEpBtgB,cAAAA,IAAI,EAAJA,IAFoB;AAGpB4b,cAAAA,OAAO,EAAPA,OAHoB;AAIpBuE,cAAAA,cAAc,EAAdA,cAJoB;AAKpBN,cAAAA,WAAW,EAAXA,WALoB;AAMpBD,cAAAA,gBAAgB,EAAhBA;AANoB;4BAQsBtE,SAAS,CACnDwE,sBADmD,EAEnD;AACErL,cAAAA,MAAM,EAAE,MADV;AAEEE,cAAAA,OAAO,EAAE;gCACS;AADT,eAFX;AAKE3E,cAAAA,IAAI,EAAE3G,IAAI,CAACO,SAALP,CAAe+W,aAAf/W;AALR,aAFmD;kBAA7CkX,cApBC,SAoBDA;kBAAgBC,SApBf,SAoBeA;qBAUjB;AACLT,gBAAAA,yBAAyB,EAAzBA,yBADK;AAELC,gBAAAA,uBAAuB,EAAvBA,uBAFK;AAGLC,gBAAAA,mBAAmB,EAAnBA,mBAHK;AAILG,gBAAAA,aAAa,EAAbA,aAJK;AAKLG,gBAAAA,cAAc,EAAdA,cALK;AAMLC,gBAAAA,SAAS,EAATA;AANK;;;;AAlC8B,QAAhC;;AA4CP,UAAMN,uBAAuB,6BAGvB;YAFJP,0BAEI,SAFJA;YACAK,uBACI,SADJA;YAEMG,cAAc,GAAG;AACvBA,QAAAA,cAAc,CAAC,aAAD,CAAdA,GAAgC,IAAhCA;AACAA,QAAAA,cAAc,CAAC,aAAD,CAAdA,GAAgCR,0BAAhCQ,CAHI;;AAKJA,QAAAA,cAAc,CAAC,gBAAD,CAAdA,GAAmCV,qBAAqB,EAAxDU,CALI;;;;;wBAU6BjC,iBAAiB,CAAC;;;;;;;;;AASjDC,UAAAA,MAAM,EAAE,CAAC6B;AATwC,SAAD;AAAlDG,UAAAA,cAAc,CAACM,SAAfN,qBAAAA;;uBAYyCxB;AAAzCwB,YAAAA,cAAc,CAAC,gBAAD,CAAdA,wBAAAA;;yBAE0CnB;AAA1CmB,cAAAA,cAAc,CAAC,iBAAD,CAAdA,wBAAAA;;2BAGQjB;AADRiB,gBAAAA,cAAc,CAAC,4BAAD,CAAdA,wBAAAA;6BAGQd;AADRc,kBAAAA,cAAc,CAAC,2BAAD,CAAdA,wBAAAA;yBAEOA;;;;;;AAjCoB,QAA7B;;AC5CO,UAAMO,0BAA0B,GAAG,SAA7BA,0BAA6B,KAAA,EAAsB;YAAnBC,YAAmB,QAAnBA;YACrCC,sBAAsB,GAAGjc,QAAQ,CAACC,aAATD,CAAuB,kBAAvBA;YACzBkc,wBAAwB,GAAGlc,QAAQ,CAACC,aAATD,CAAuB,oBAAvBA;AAEjCmB,QAAAA,sBAAsB,CAAC8a,sBAAD,CAAtB9a;AACAA,QAAAA,sBAAsB,CAAC+a,wBAAD,CAAtB/a;AAEA4Z,QAAAA,0BAA0B,GAAGjS,IAA7BiS,CACE,eAAA,EAMM;cALJK,yBAKI,SALJA;cACAC,uBAII,SAJJA;cACAO,cAGI,SAHJA;cACAC,SAEI,SAFJA;cACAJ,aACI,SADJA;cAEMU,cAAc,GAAGN,SAAS,GAC5B,IAD4B,GAE5BR,uBAAuB,GACvB,SADuB,GAEvB;AACJ3V,UAAAA,aAAa,CAACuW,sBAAD,EAAyB;AACpCE,YAAAA,cAAc,EAAdA;AADoC,WAAzB,CAAbzW;;cAGIyW,cAAc,KAAK,MAAM;AAC3BF,YAAAA,sBAAsB,CAAChc,aAAvBgc,mCAAAA,EAEElY,OAFFkY,GAEY,YAAM;;AAEhBpc,cAAAA,MAAM,CAACuc,KAAPvc,uFACiFwc,iBAAiB,CAC9F;AACET,gBAAAA,cAAc,EAAdA;AADF,eAD8F,EADlG/b;AAJF,aAAAoc;AADF,iBAaO,IAAIE,cAAc,KAAK,SAAvB,EAAkC;AACvCF,YAAAA,sBAAsB,CAAChc,aAAvBgc,mCAAAA,EAEElY,OAFFkY,GAEY,YAAM;;AAEhBpc,cAAAA,MAAM,CAACuc,KAAPvc,wFACkFyc,mBAAmB,CACjG;AACEjB,gBAAAA,uBAAuB,EAAvBA;AADF,eADiG,EADrGxb;AAJF,aAAAoc;AADK,WAAA,MAaA,IAAIE,cAAc,KAAK,MAAvB,EAA+B;AACpCF,YAAAA,sBAAsB,CAAChc,aAAvBgc,mCAAAA,EAEElY,OAFFkY,GAEY,YAAM;;AAEhBpc,cAAAA,MAAM,CAACuc,KAAPvc,0EACoEyc,mBAAmB,CACnF;AACEjB,gBAAAA,uBAAuB,EAAvBA;AADF,eADmF,EADvFxb;AAJF,aAAAoc;;;cAcIM,eAAe,GAAGP,YAAY,CAACH;cAC/BW,kBAAkB,GAAGX;cACrBY,qBAAqB,GACzBD,kBAAkB,IAClBD,eADAC,IAEAD,eAAe,KAAKC;cAChBE,aAAa,GAAG,CAACH,eAAD,IAAoBJ,cAAc,KAAK;cACvDQ,gBAAgB,GAAGF,qBAAqB,GAC1C,UAD0C,GAE1CF,eAAe,GACf,KADe,GAEflB,uBAAuB,GACvB,WADuB,GAEvB;cACEuB,UAAU,GAAGF,aAAa,IAAID;AAEpC/W,UAAAA,aAAa,CAACwW,wBAAD,EAA2B;AACtCS,YAAAA,gBAAgB,EAAhBA,gBADsC;AAEtCE,YAAAA,gBAAgB,EAAEJ,qBAAqB,GACnC,UADmC,GAEnCF,eAAe,GACf,QADe,GAEfC,kBAAkB,GAClB,UADkB,GAElB;AARkC,WAA3B,CAAb9W;;cAUIiX,gBAAgB,KAAK,OAAO;AAC9B3c,YAAAA,QAAQ,CAACC,aAATD,CACE,yBADFA,EAEE8c,SAFF9c,0CAE8Cyb,aAAa,CAACpgB,kBAAQogB,aAAa,CAACxE,QAFlFjX;;;AAIF4D,UAAAA,0BAA0B,CACxBsY,wBAAwB,CAACjc,aAAzBic,CAAuC,wBAAvCA,CADwB,aAEpBF,YAAY,CAACe,gBAFO,CAA1BnZ;AAIAA,UAAAA,0BAA0B,CACxBsY,wBAAwB,CAACjc,aAAzBic,CAAuC,0BAAvCA,CADwB,aAEpBd,kCAA4BoB,gCAAsBR,YAAY,CAACe,gBAF3C,CAA1BnZ;AAIAA,UAAAA,0BAA0B,CACxBsY,wBAAwB,CAACjc,aAAzBic,CACE,oCADFA,CADwB,aAIpBd,4CAAkCY,YAAY,CAACe,gBAJ3B,CAA1BnZ;AAMAA,UAAAA,0BAA0B,CACxBsY,wBAAwB,CAACjc,aAAzBic,CAAuC,6BAAvCA,CADwB,aAEpBd,kCAA4BoB,gCAAsBR,YAAY,CAACe,gBAF3C,CAA1BnZ;;cAKIgZ,YAAY;AACdzV,YAAAA,kBAAkB;AAClBnH,YAAAA,QAAQ,CACLC,aADHD,CACiB,yBADjBA,EAEGkB,YAFHlB,CAEgB,cAFhBA,EAEgC,EAFhCA;AAGAA,YAAAA,QAAQ,CACLC,aADHD,CACiB,uBADjBA,EAEGkB,YAFHlB,CAEgB,cAFhBA,EAEgC,EAFhCA;AAGAA,YAAAA,QAAQ,CACLC,aADHD,CACiB,kBADjBA,EAEGkB,YAFHlB,CAEgB,cAFhBA,EAEgC,EAFhCA;AARF,iBAWO;AACLqH,YAAAA,mBAAmB;AACnBrH,YAAAA,QAAQ,CACLC,aADHD,CACiB,yBADjBA,EAEGoB,eAFHpB,CAEmB,cAFnBA;AAGAA,YAAAA,QAAQ,CACLC,aADHD,CACiB,uBADjBA,EAEGoB,eAFHpB,CAEmB,cAFnBA;AAGAA,YAAAA,QAAQ,CACLC,aADHD,CACiB,kBADjBA,EAEGoB,eAFHpB,CAEmB,cAFnBA;;AA9HN,SAAA+a;AAPK,OAAA;;AA6IP,UAAMuB,mBAAmB,GAAG,SAAtBA,mBAAsB,MAAA,EAAiC;YAA9BjB,uBAA8B,SAA9BA;YACvBxG,KAAK,GAAG;;YACVwG,yBAAyB;AAC3BxG,UAAAA,KAAK,CAAC5M,IAAN4M,6DAAAA;AADF,eAEO;AACLA,UAAAA,KAAK,CAAC5M,IAAN4M,2BAAAA;;;AAEFA,QAAAA,KAAK,CAAC5M,IAAN4M,gCAAAA;AACAA,QAAAA,KAAK,CAAC5M,IAAN4M,+BAAAA;AACAA,QAAAA,KAAK,CAAC5M,IAAN4M,sCAAAA;6BAEEA,KAAK,CAACE,IAANF,OAAAA;AAXJ,OAAA;;AAeA,UAAMwH,iBAAiB,GAAG,SAApBA,iBAAoB,MAAA,EAAwB;YAArBT,cAAqB,SAArBA;YACrB/G,KAAK,GAAG;YACNmI,eAAR,GAA4BpB,cAA5B,CAAQoB;;YACJA,eAAe,CAAClB,WAAW;AAC7BjH,UAAAA,KAAK,CAAC5M,IAAN4M,+BAAAA;;;YAEEmI,eAAe,CAACC,eAAe;AACjCpI,UAAAA,KAAK,CAAC5M,IAAN4M,oCAAAA;;;YAEEmI,eAAe,CAACE,eAAe;AACjCrI,UAAAA,KAAK,CAAC5M,IAAN4M,mCAAAA;;;YAEIsI,mBAAmB,GAAGpiB,MAAM,CAACsE,IAAPtE,CAAYiiB,eAAZjiB,EAA6B+M,MAA7B/M,CAAoC,UAACM,IAAD,EAAU;iBAEtEA,IAAI,KAAK,WAATA,IACAA,IAAI,KAAK,eADTA,IAEAA,IAAI,KAAK,eAFTA,IAGAA,IAAI,KAAK;AALe,SAAAN;YAQtBqiB,mBAAmB,GAAGD,mBAAmB,CAACljB;;YAC5CmjB,mBAAmB,GAAG,GAAG;AAC3BvI,UAAAA,KAAK,CAAC5M,IAAN4M,WACKuI,uDAA6CD,oBADlDtI;;;YAIMwI,wBAAR,GAAqCL,eAArC,CAAQK;;YACJA,0BAA0B;AAC5BxI,UAAAA,KAAK,CAAC5M,IAAN4M,WACKwI,wBAAwB,CAACpjB,8CAAoCojB,yBADlExI;;;6BAKAA,KAAK,CAACE,IAANF,OAAAA;AAjCJ,OAAA;;AC9JA,UAAIyI,8BAA8B,GAAG,KAArC;AACA,UAAMC,uBAAuB,GAAG1d,MAAM,CAACC,MAAPD,CAAc2d,6BAA9C;;AAEO,UAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,KAAA,EAAuB;YAApBC,aAAoB,QAApBA;AACvCvc,QAAAA,sBAAsB,CAACnB,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA,CAAD,CAAtBmB;AACAmc,QAAAA,8BAA8B,GAAGI,aAAjCJ;;YACI,CAACA,gCAAgC;AACnCK,UAAAA,wBAAwB;;;AAE1BJ,QAAAA,uBAAuB,CAACK,iCAAxBL,CAA0D,YAAM;AAC9DM,UAAAA,0BAA0B;AAD5B,SAAAN;YAGMO,kBAAkB,GAAG9d,QAAQ,CAACC,aAATD,CAAuB,oBAAvBA;AAC3B8d,QAAAA,kBAAkB,CAAC7T,OAAnB6T,GAA6BP,uBAAuB,CAACQ,mBAAxBR,EAA7BO;;AACAA,QAAAA,kBAAkB,CAAC3T,QAAnB2T,GAA8B,YAAM;AAClCP,UAAAA,uBAAuB,CAACS,uBAAxBT,CAAgDO,kBAAkB,CAAC7T,OAAnEsT;AACAM,UAAAA,0BAA0B;AAF5B,SAAAC;;AAIAD,QAAAA,0BAA0B;AAfrB,OAAA;;AAkBP,UAAMA,0BAA0B,GAAG,SAA7BA,0BAA6B,GAAM;YACjCI,oBAAoB,GAAGje,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA;YACvBke,WAAW,GAAGX,uBAAuB,CAACY,cAAxBZ;YACda,WAAW,GAAGrjB,MAAM,CAACsE,IAAPtE,CAAYmjB,WAAZnjB,EAAyBd;YACvCokB,0BAA0B,GAC9Bd,uBAAuB,CAACe,mBAAxBf;AACF7X,QAAAA,aAAa,CAACuY,oBAAD,EAAuB;AAClCM,UAAAA,WAAW,EAAEF,0BADqB;AAElCG,UAAAA,UAAU,EAAEjB,uBAAuB,CAACQ,mBAAxBR,KAAgD,IAAhDA,GAAuD,KAFjC;AAGlCkB,UAAAA,OAAO,EAAEL,WAAW,GAAG,CAAdA,GAAkB,KAAlBA,GAA0B;AAHD,SAAvB,CAAb1Y;YAMM4J,WAAW,GAAGtP,QAAQ,CAACC,aAATD,CAClB,6CADkBA;;AAGpBsP,QAAAA,WAAW,CAACrP,aAAZqP,CAA0B,QAA1BA,EAAoCvL,OAApCuL,GAA8C,YAAM;AAClDpK,UAAAA,aAAa,CAAC+Y,oBAAD,CAAb/Y;AADF,SAAAoK;;YAII+O,0BAA0B,KAAK,cAAc;AAC/C/O,UAAAA,WAAW,CAACrP,aAAZqP,CAA0B,GAA1BA,EAA+BvL,OAA/BuL,GAAyC,YAAM;AAC7CiO,YAAAA,uBAAuB,CAACmB,UAAxBnB;AADF,WAAAjO;AADF,eAIO,IAAI+O,0BAA0B,KAAK,WAAnC,EAAgD;AACrD/Y,UAAAA,qBAAqB,CAAC2Y,oBAAD,CAArB3Y;;cACI8Y,aAAa;gBACTO,UAAU,GAAGrP,WAAW,CAACrP,aAAZqP,CAA0B,2BAA1BA;AACnBqP,YAAAA,UAAU,CAAC7B,SAAX6B,GAAuBP,WAAvBO;;AACAA,YAAAA,UAAU,CAAC5a,OAAX4a,GAAqB,YAAM;AACzBC,cAAAA,OAAO,CAACC,GAARD,CAAYla,IAAI,CAACO,SAALP,CAAewZ,WAAfxZ,EAA4B,IAA5BA,EAAkC,IAAlCA,CAAZka,EAAqDV,WAArDU,EADyB;;AAGzB/e,cAAAA,MAAM,CAACC,MAAPD,CAAcuc,KAAdvc,CAAoB6E,IAAI,CAACO,SAALP,CAAewZ,WAAfxZ,EAA4B,IAA5BA,EAAkC,IAAlCA,CAApB7E;AAHF,aAAA8e;;AAKArP,YAAAA,WAAW,CAACrP,aAAZqP,CAA0B,0BAA1BA,EAAsDvL,OAAtDuL,GAAgE,YAAM;AACpEiO,cAAAA,uBAAuB,CAACuB,cAAxBvB;AADF,aAAAjO;;AAVG,SAAA,MAcA,IAAI+O,0BAA0B,KAAK,cAAnC,EAAmD;AACxDhZ,UAAAA,eAAe,CAAC4Y,oBAAD,CAAf5Y;;AACAiK,UAAAA,WAAW,CAACrP,aAAZqP,CAA0B,GAA1BA,EAA+BvL,OAA/BuL,GAAyC,YAAM;AAC7CiO,YAAAA,uBAAuB,CAACwB,OAAxBxB;AADF,WAAAjO;;AAvCJ,OAAA;;AA6CA,UAAMqO,wBAAwB,GAAG,SAA3BA,wBAA2B,GAAM;AACrC3d,QAAAA,QAAQ,CACLC,aADHD,CACiB,sBADjBA,EAEGkB,YAFHlB,CAEgB,eAFhBA,EAEiC,MAFjCA;AAGAA,QAAAA,QAAQ,CACLC,aADHD,CACiB,sBADjBA,EAEGkB,YAFHlB,CAEgB,OAFhBA,gDAAAA;AAGAA,QAAAA,QAAQ,CAACC,aAATD,CAAuB,oBAAvBA,EAA6C8J,QAA7C9J,GAAwD,IAAxDA;AAPF,OAAA;;AClEA,UAAMgf,kBAAkB,GAAG,GAA3B;;AAEO,UAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;;;YAGnCC,sBAAsB,GAAGnS,0BAA0B,CAACiS,kBAAD;;YACnDG,4BAA4B,GAAG,SAA/BA,4BAA+B,GAAM;AACzCC,UAAAA,iBAAiB,CAACF,sBAAD,CAAjBE;AADF;;AAGAD,QAAAA,4BAA4B;AAC5BD,QAAAA,sBAAsB,CAAC3R,OAAvB2R,CAA+BtR,MAA/BsR,CAAsCC,4BAAtCD,EARyC;;AAWzClf,QAAAA,QAAQ,CAACC,aAATD,CAAuB,uBAAvBA,EAAgD+D,OAAhD/D,GAA0D;iBACxDqf,kBAAkB;AADpB,SAAArf;AAXK,OAAA;;AAeP,UAAMof,iBAAiB,GAAG,SAApBA,iBAAoB,CAACF,sBAAD,EAA4B;;AAEpD/Z,QAAAA,WAAW,CAACnF,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA,CAAD,CAAXmF;AACAA,QAAAA,WAAW,CAACnF,QAAQ,CAACC,aAATD,CAAuB,sBAAvBA,CAAD,CAAXmF,CAHoD;;AAKpDnD,QAAAA,wBAAwB,CAAChC,QAAQ,CAACC,aAATD,CAAuB,WAAvBA,CAAD,CAAxBgC;;YAEIkd,sBAAsB,CAAC9Q,OAAvB8Q,IAAkC;AACpCI,UAAAA,cAAc;AADhB,eAEO;AACLC,UAAAA,eAAe;;AAVnB,OAAA;;AAcA,UAAIC,KAAK,GAAG,EAAZ;;AAEA,UAAMF,cAAc,GAAG,SAAjBA,cAAiB,GAAM;;YAErBG,yBAAyB,GAAGzf,QAAQ,CAACa,gBAATb,CAChC,mCADgCA;YAG5B0f,YAAY,GAAG1f,QAAQ,CAACC,aAATD,CAAuB,gBAAvBA,EALM;;AAQ3Bwf,QAAAA,KAAK,GAAGrlB,KAAK,CAACO,IAANP,CAAWslB,yBAAXtlB,EAAsCqH,GAAtCrH,CAA0C,UAAC8G,OAAD,EAAa;cACvD0e,WAAW,GAAG3f,QAAQ,CAAC6Y,aAAT7Y,CAAuB,KAAvBA;AACpB2f,UAAAA,WAAW,CAAClf,KAAZkf,CAAkBC,OAAlBD,GAA4B,MAA5BA;AACAA,UAAAA,WAAW,CAACze,YAAZye,CAAyB,kBAAzBA,EAA6C,EAA7CA;AACA1e,UAAAA,OAAO,CAAC4e,UAAR5e,CAAmB6e,YAAnB7e,CAAgC0e,WAAhC1e,EAA6CA,OAA7CA;AACAye,UAAAA,YAAY,CAACzG,WAAbyG,CAAyBze,OAAzBye;iBACO;AAAEze,YAAAA,OAAO,EAAPA,OAAF;AAAW0e,YAAAA,WAAW,EAAXA;AAAX;AAND,SAAAxlB,CAARqlB;AASAxf,QAAAA,QAAQ,CACLC,aADHD,CACiB,UADjBA,EAEGkB,YAFHlB,CAEgB,4BAFhBA,EAE8C,EAF9CA;AAGAmB,QAAAA,sBAAsB,CAACnB,QAAQ,CAACC,aAATD,CAAuB,uBAAvBA,CAAD,CAAtBmB;AApBF,OAAA;;AAuBA,UAAMoe,eAAe,GAAG,SAAlBA,eAAkB,GAAM;;AAE5BQ,QAAAA,gBAAgB;AAChB/d,QAAAA,wBAAwB,CAAChC,QAAQ,CAACC,aAATD,CAAuB,gBAAvBA,CAAD,CAAxBgC;AACAwd,QAAAA,KAAK,CAAC5d,OAAN4d,CAAc,cAAA,EAA8B;cAA3Bve,OAA2B,QAA3BA;cAAS0e,WAAkB,QAAlBA;AACxBA,UAAAA,WAAW,CAACE,UAAZF,CAAuBG,YAAvBH,CAAoC1e,OAApC0e,EAA6CA,WAA7CA;AADF,SAAAH;AAGAA,QAAAA,KAAK,GAAG,EAARA;AAEAxf,QAAAA,QAAQ,CACLC,aADHD,CACiB,UADjBA,EAEGoB,eAFHpB,CAEmB,4BAFnBA;AAGAgB,QAAAA,gBAAgB,CAAChB,QAAQ,CAACC,aAATD,CAAuB,uBAAvBA,CAAD,CAAhBgB;AAZF,OAAA;;AAeA,UAAMqe,kBAAkB,GAAG,SAArBA,kBAAqB,GAAM;YAC3BW,qBAAqB,IAAI;AAC3BD,UAAAA,gBAAgB;AADlB,eAEO;AACLE,UAAAA,gBAAgB;;AAJpB,OAAA;;AAQA,UAAMD,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;YAC5BE,OAAO,GAAGlgB,QAAQ,CAACC,aAATD,CAAuB,UAAvBA;eACTkgB,OAAO,CAACpe,YAARoe,CAAqB,4BAArBA;AAFT,OAAA;;AAKA,UAAMD,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;YACvBC,OAAO,GAAGlgB,QAAQ,CAACC,aAATD,CAAuB,UAAvBA;AAChBA,QAAAA,QAAQ,CAACC,aAATD,CAAuB,gBAAvBA,EAAyCkB,YAAzClB,CAAsD,cAAtDA,EAAsE,EAAtEA;AACAkgB,QAAAA,OAAO,CAAChf,YAARgf,CAAqB,4BAArBA,EAAmD,EAAnDA;AAHF,OAAA;;AAMA,UAAMH,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;YACvBG,OAAO,GAAGlgB,QAAQ,CAACC,aAATD,CAAuB,UAAvBA;AAChBkgB,QAAAA,OAAO,CAAC9e,eAAR8e,CAAwB,4BAAxBA;AACAlgB,QAAAA,QAAQ,CAACC,aAATD,CAAuB,gBAAvBA,EAAyCoB,eAAzCpB,CAAyD,cAAzDA;AAHF,OAAA;;ACdO,eAAS6I,MAAT,CAAgB9D,KAAhB,EAAuB+D,IAAvB,EAA6BC,MAA7B,EAAqC;YACvCA,QAAQ;iBACJD,IAAI,GAAGA,IAAI,CAAC/D,KAAD,CAAP,GAAiBA;;;YAEzB,CAACA,KAAD,IAAU,CAACA,KAAK,CAAC+D,MAAM;AAC1B/D,UAAAA,KAAK,GAAG2D,OAAO,CAACC,OAARD,CAAgB3D,KAAhB2D,CAAR3D;;;eAEM+D,IAAI,GAAG/D,KAAK,CAAC+D,IAAN/D,CAAW+D,IAAX/D,CAAH,GAAsBA;;;AAlElC,UAAMob,2BAA2B,GAAG9b,gBAAgB,CAAC,SAAD,CAApD;;AA6CO,eAASkE,MAAT,CAAgBC,CAAhB,EAAmB;eAClB,YAAW;eACZ,IAAIC,IAAI,GAAG,EAAX,EAAerO,CAAC,GAAG,GAAGA,CAAC,GAAGgO,SAAS,CAACnO,QAAQG,CAAC,IAAI;AACrDqO,YAAAA,IAAI,CAACrO,CAAD,CAAJqO,GAAUL,SAAS,CAAChO,CAAD,CAAnBqO;;;cAEG;mBACIC,OAAO,CAACC,OAARD,CAAgBF,CAAC,CAACN,KAAFM,CAAQ,IAARA,EAAcC,IAAdD,CAAhBE;AADR,YAEE,OAAM1E,CAAN,EAAS;mBACH0E,OAAO,CAACE,MAARF,CAAe1E,CAAf0E;;AAPT;;;AA5CD,UAAM0X,aAAa,0BAAgC;YAApBC,aAAoB,QAApBA;YACvBC,uBAAuB,GAAGzgB,MAAM,CAACC,MAAPD,CAAcuE,QAAdvE,CAAuBiE;YACjDyc,mBAAmB,GAAG1gB,MAAM,CAACC,MAAPD,CAAcuE,QAAdvE,CAAuBzD,OAFF;;YAIzCgf,yBAAR,GAAqDiF,aAArD,CAAQjF;YAA2BsC,aAAnC,GAAqD2C,aAArD,CAAmC3C;YAC7B1B,YAAY,GAAGwE,eAAe,CAAC;AACnCF,UAAAA,uBAAuB,EAAvBA,uBADmC;AAEnClF,UAAAA,yBAAyB,EAAzBA,yBAFmC;AAGnCmF,UAAAA,mBAAmB,EAAnBA;AAHmC,SAAD;YAK9B9V,uBAAuB,GAAGuR,YAAY,CAACe;YAEvC0D,cAAc,GAAGzgB,QAAQ,CAACC,aAATD,CAAuB,kBAAvBA;;AACvBygB,QAAAA,cAAc,CAAC1c,OAAf0c,GAAyB,YAAM;AAC7Blb,UAAAA,cAAc;AACd0B,UAAAA,YAAY;AAFd,SAAAwZ;;YAKMC,cAAc,GAAGP,2BAA2B,CAAC7b,GAA5B6b,KACnBA,2BAA2B,CAAC1b,GAA5B0b,EADmBA,GAEnB;;YAEAO,gBAAgB;AAClBC,UAAAA,WAAW,CAAC;AAAEC,YAAAA,OAAO,EAAE;AAAX,WAAD,CAAXD;AADF,eAEO;AACLE,UAAAA,WAAW,CAAC;AAAED,YAAAA,OAAO,EAAE;AAAX,WAAD,CAAXC;;;AAGFjd,QAAAA,0BAA0B,CACxB5D,QAAQ,CAACC,aAATD,CAAuB,uBAAvBA,CADwB,EAExB,GAFwB,CAA1B4D;AAKAwF,QAAAA,yBAAyB;AACzB6V,QAAAA,qBAAqB;AACrBnY,QAAAA,qBAAqB;AACrB0F,QAAAA,sBAAsB;AACtBP,QAAAA,kBAAkB;AAClBwC,QAAAA,wBAAwB,CAAC;AAAEhE,UAAAA,uBAAuB,EAAvBA;AAAF,SAAD,CAAxBgE;AACAsN,QAAAA,0BAA0B,CAAC;AAAEC,UAAAA,YAAY,EAAZA;AAAF,SAAD,CAA1BD,CAvCiD;;AAyCjD/Z,QAAAA,wBAAwB,CAAChC,QAAQ,CAACC,aAATD,CAAuB,iBAAvBA,CAAD,CAAxBgC;AACAyb,QAAAA,sBAAsB,CAAC;AACrBhT,UAAAA,uBAAuB,EAAvBA,uBADqB;AAErBiT,UAAAA,aAAa,EAAbA;AAFqB,SAAD,CAAtBD,CA1CiD;;;;AAkDjDzd,QAAAA,QAAQ,CAACC,aAATD,CAAuB,uBAAvBA,EAAgD+D,OAAhD/D,GAA0D;iBACxD8gB,aAAa;AADf,SAAA9gB;;;AAlDiB,QAAnB;;AAsDA,UAAM8gB,aAAa,GAAG,SAAhBA,aAAgB,GAAM;YACtBC,gBAAgB,IAAI;AACtBF,UAAAA,WAAW;AADb,eAEO;AACLF,UAAAA,WAAW;;AAJf,OAAA;;AAQA,UAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB;eACvB/gB,QAAQ,CAACyD,eAATzD,CAAyB8B,YAAzB9B,CAAsC,sBAAtCA;AADF,OAAA;;AAGA,UAAI6gB,WAAW,GAAG,oBAAA,GAAM;;AAEtBG,QAAAA,iBAAiB,CAAC,2BAAD,EAA8B,KAA9B,CAAjBA;AAFF,OAAA;AAMA;;;AACA,UAAML,WAAW,GAAG,SAAdA,WAAc,GAA6B;wFAAP;kCAAnBC;YAAAA,OAA0B,8BAAhB;;AAC/BT,QAAAA,2BAA2B,CAACrb,GAA5Bqb,CAAgC,IAAhCA;;YACIS,SAAS;AACX5gB,UAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,wBAAtCA,EAAgE,EAAhEA;AADF,eAEO;AACLA,UAAAA,QAAQ,CAACyD,eAATzD,CAAyBoB,eAAzBpB,CAAyC,wBAAzCA;;;AAEFA,QAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,sBAAtCA,EAA8D,EAA9DA;AAEAghB,QAAAA,iBAAiB,CAAC,2BAAD,EAA8B,IAA9B,CAAjBA;YAEMC,aAAa,GAAG1gB,gBAAgB;YAChC2gB,mBAAmB,GAAGD,aAAa,CAACpB;YACpCsB,YAAY,GAAGthB,MAAM,CAACC;YACtBshB,qBAAqB,GACzBD,YAAY,CAACnhB,QAAbmhB,CAAsBE,UAAtBF,KAAqC,YAArCA,GACIA,YAAY,CAACnhB,QAAbmhB,CAAsB1d,eAD1B0d,GAEIA,YAAY,CAACnhB,QAAbmhB,CAAsB9V;YAEtBiW,UAAU,GACdF,qBAAqB,CAACG,YAAtBH,GAAqCD,YAAY,CAACK;YAC9CC,OAAO,GAAGL,qBAAqB,CAACM;YAChCC,gBAAgB,GAAGL,UAAU,GAAGG;AAEtC/gB,QAAAA,SAAS,CAACwgB,mBAAD,EAAsB;iCACN,gBADM;iCAEN;AAFM,SAAtB,CAATxgB,CAxB+C;;YA6BzCkhB,gCAAgC,GAAGlhB,SAAS,CAACwgB,mBAAD,EAAsB;mCAC7C,MAD6C;;4BAEpD,MAFoD;;AAAA,SAAtB;YAI5CW,0BAA0B,GAAGnhB,SAAS,CAACugB,aAAD,EAAgB;AAC1Da,UAAAA,MAAM,EAAE,MADkD;AAE1DC,UAAAA,UAAU,EAAE;AAF8C,SAAhB;;YAKxCJ,gBAAgB,GAAG,EAAnBA,IAAyBL,UAAU,GAAG,GAAG;cACrCU,SAAS,GAAGP,OAAO,GAAG;AAC5Bxf,UAAAA,wBAAwB,CAAC;AACvBC,YAAAA,QAAQ,EAAE,GADa;AAEvBG,YAAAA,UAAU,EAAE,mBAAA,MAAA,EAAkB;kBAAfW,QAAe,SAAfA;kBACP+B,KAAK,GAAG0c,OAAO,GAAG,CAACO,SAAS,GAAGP,OAAb,IAAwBze;AAChDoe,cAAAA,qBAAqB,CAACM,SAAtBN,GAAkCrc,KAAlCqc;;AAJqB,WAAD,CAAxBnf;;;AASF4e,QAAAA,WAAW,GAAG,oBAAA,GAAM;AAClBe,UAAAA,gCAAgC;AAChCC,UAAAA,0BAA0B;AAE1B1c,UAAAA,WAAW,CAACnF,QAAQ,CAACC,aAATD,CAAuB,wBAAvBA,CAAD,CAAXmF;AACAA,UAAAA,WAAW,CAACnF,QAAQ,CAACC,aAATD,CAAuB,sBAAvBA,CAAD,CAAXmF;AACAgb,UAAAA,2BAA2B,CAACrb,GAA5Bqb,CAAgC,KAAhCA;;cACIS,SAAS;AACX5gB,YAAAA,QAAQ,CAACyD,eAATzD,CAAyBkB,YAAzBlB,CAAsC,wBAAtCA,EAAgE,EAAhEA;AADF,iBAEO;AACLA,YAAAA,QAAQ,CAACyD,eAATzD,CAAyBoB,eAAzBpB,CAAyC,wBAAzCA;;;AAEFA,UAAAA,QAAQ,CAACyD,eAATzD,CAAyBoB,eAAzBpB,CAAyC,sBAAzCA;AACAghB,UAAAA,iBAAiB,CAAC,2BAAD,EAA8B,KAA9B,CAAjBA;AAbF,SAAAH;AAjDF,OAAA;;AAkEA,UAAML,eAAe,GAAG,SAAlBA,eAAkB,MAAA,EAIlB;YAHJF,uBAGI,SAHJA;YACAlF,yBAEI,SAFJA;YACAmF,mBACI,SADJA;YAEM0B,uBAAuB,GAAG,IAAI/lB,GAAJ,CAC9Bkf,yBAD8B,EAE9BmF,mBAF8B,EAG9Bzc;;YACEhI,aAAa,CAACwkB,uBAAD,EAA0B2B,uBAA1B,GAAoD;cAC7DC,qBAAqB,GAAGvkB,gBAAgB,CAC5C2iB,uBAD4C,EAE5C2B,uBAF4C;cAIxCE,UAAU,GAAGD,qBAAqB,CAAC3iB,OAAtB2iB,CAA8B,GAA9BA;cACbnF,eAAe,GAAGmF,qBAAqB,CAAC/mB,KAAtB+mB,CAA4BC,UAAU,GAAG,CAAzCD;iBACjB;AACLnF,YAAAA,eAAe,EAAfA,eADK;AAELlB,YAAAA,SAAS,EAAEqG,qBAAqB,CAAC/mB,KAAtB+mB,CAA4B,CAA5BA,EAA+BC,UAA/BD;AAFN;;;eAKF;AACLnF,UAAAA,eAAe,EAAE,IAAI7gB,GAAJ,CAAQokB,uBAAR,EAAiChkB,QAAjC,CAA0CnB,KAA1C,CAAgD,CAAhD,CADZ;AAEL0gB,UAAAA,SAAS,EAAE;AAFN;AArBT,OAAA;;AA2BA,UAAMuG,0BAA0B,GAAG,SAA7BA,0BAA6B,CAACC,OAAD,EAAUxU,QAAV,EAAuB;YAClDyU,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,YAAD,EAAkB;cACrCC,IAAR,GAAiBD,YAAjB,CAAQC;;cACJxO,QAAOwO,KAAP,KAAgB,UAAU;;;;cAGtBzT,SAAR,GAAsByT,IAAtB,CAAQzT;;cACJ,CAACA,WAAW;;;;cAIZA,SAAS,CAACsT,OAAVtT,KAAsBsT,SAAS;;;;AAInCxU,UAAAA,QAAQ,MAARA,OAAAA,qBAAYkB,SAAS,CAACtG,KAAtBoF;AAdF;;AAiBAhO,QAAAA,MAAM,CAACyD,gBAAPzD,CAAwB,SAAxBA,EAAmCyiB,oBAAnCziB;eACO,YAAM;AACXA,UAAAA,MAAM,CAACkO,mBAAPlO,CAA2B,SAA3BA,EAAsCyiB,oBAAtCziB;AADF;AAnBF,OAAA;;AAwBA,UAAMmhB,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC3lB,IAAD,EAAOmnB,IAAP,EAAgB;AACxC3iB,QAAAA,MAAM,CAACC,MAAPD,CAAc4iB,WAAd5iB,CACE;AACEkP,UAAAA,SAAS,EAAE;AACT2T,YAAAA,KAAK,EAAErnB,IADE;AAETmnB,YAAAA,IAAI,EAAJA;AAFS;AADb,SADF3iB,EAOE,GAPFA;AADF,OAAA;;AAYAA,MAAAA,MAAM,CAACqgB,OAAPrgB,GAAiB;AACf8iB,QAAAA,IAAI,EAAEhC,WADS;AAEfiC,QAAAA,IAAI,EAAE,aAAA;iBAAM/B,WAAW;;AAFR,OAAjBhhB;AAKAuiB,MAAAA,0BAA0B,CAAC,eAAD,EAAkB,UAACI,IAAD,EAAU;AACpDpC,QAAAA,aAAa,CAACoC,IAAD,CAAbpC;AADwB,OAAA,CAA1BgC;AAGAA,MAAAA,0BAA0B,CAAC,aAAD,EAAgB,YAAM;AAC9CzB,QAAAA,WAAW;AADa,OAAA,CAA1ByB;AAGAA,MAAAA,0BAA0B,CAAC,aAAD,EAAgB,YAAM;AAC9CvB,QAAAA,WAAW;AADa,OAAA,CAA1BuB;AAGApB,MAAAA,iBAAiB,CAAC,eAAD,CAAjBA;;;"
776
- }