@onereach/ui-components 4.11.0-beta.2941.0 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (686) hide show
  1. package/dist/bundled/v2/{OrDateTimePickerMonthSelect-2c1b5116.js → OrDateTimePickerMonthSelect-88a629fe.js} +8 -24
  2. package/dist/bundled/v2/{OrDateTimePickerTimeSelect-c52ee823.js → OrDateTimePickerTimeSelect-8851268e.js} +5 -15
  3. package/dist/bundled/v2/components/OrBottomSheetV3/OrBottomSheet.js +2 -2
  4. package/dist/bundled/v2/components/OrBottomSheetV3/index.js +1 -1
  5. package/dist/bundled/v2/components/OrButtonV3/OrButton.js +1 -1
  6. package/dist/bundled/v2/components/OrButtonV3/index.js +1 -1
  7. package/dist/bundled/v2/components/OrCardCollectionV3/OrCardCollection.js +2 -1
  8. package/dist/bundled/v2/components/OrCardCollectionV3/index.js +2 -1
  9. package/dist/bundled/v2/components/OrCheckboxGroupV3/OrCheckboxGroup.js +7 -9
  10. package/dist/bundled/v2/components/OrCheckboxGroupV3/OrCheckboxGroup.vue.d.ts +3 -3
  11. package/dist/bundled/v2/components/OrCheckboxGroupV3/index.js +4 -3
  12. package/dist/bundled/v2/components/OrCheckboxTreeV3/OrCheckboxTree.js +6 -8
  13. package/dist/bundled/v2/components/OrCheckboxTreeV3/OrCheckboxTree.vue.d.ts +2 -2
  14. package/dist/bundled/v2/components/OrCheckboxTreeV3/index.js +4 -3
  15. package/dist/bundled/v2/components/OrCheckboxV3/OrCheckbox.js +6 -10
  16. package/dist/bundled/v2/components/OrCheckboxV3/index.js +1 -2
  17. package/dist/bundled/v2/components/OrCode/OrCode.js +5 -3793
  18. package/dist/bundled/v2/components/OrCode/index.js +5 -3
  19. package/dist/bundled/v2/components/OrCode/lang.js +24 -3
  20. package/dist/bundled/v2/components/OrCode/theme.js +1 -1
  21. package/dist/bundled/v2/components/OrCodeV3/OrCode.js +356 -0
  22. package/dist/bundled/v2/components/OrCodeV3/OrCode.vue.d.ts +169 -0
  23. package/dist/bundled/v2/components/OrCodeV3/index.d.ts +2 -0
  24. package/dist/bundled/v2/components/OrCodeV3/index.js +54 -0
  25. package/dist/bundled/v2/components/OrCodeV3/props.d.ts +8 -0
  26. package/dist/bundled/v2/components/OrCodeV3/props.js +11 -0
  27. package/dist/bundled/v2/components/OrCodeV3/styles.d.ts +2 -0
  28. package/dist/bundled/v2/components/OrCodeV3/styles.js +16 -0
  29. package/dist/bundled/v2/components/OrColorPicker/OrColorPicker.js +1 -1
  30. package/dist/bundled/v2/components/OrColorPicker/index.js +1 -1
  31. package/dist/bundled/v2/components/OrConfirm/OrConfirm.js +1 -1
  32. package/dist/bundled/v2/components/OrConfirm/index.js +1 -1
  33. package/dist/bundled/v2/components/OrConfirmV3/OrConfirm.js +4 -3
  34. package/dist/bundled/v2/components/OrConfirmV3/index.js +2 -1
  35. package/dist/bundled/v2/components/OrDatePickerV3/OrDatePicker.js +8 -14
  36. package/dist/bundled/v2/components/OrDatePickerV3/OrDatePicker.vue.d.ts +4 -4
  37. package/dist/bundled/v2/components/OrDatePickerV3/index.js +4 -3
  38. package/dist/bundled/v2/components/OrDateTimePicker/OrDateTimePicker.js +1 -1
  39. package/dist/bundled/v2/components/OrDateTimePicker/index.js +1 -1
  40. package/dist/bundled/v2/components/OrDateTimePickerV3/OrDateTimePicker.js +9 -15
  41. package/dist/bundled/v2/components/OrDateTimePickerV3/OrDateTimePicker.vue.d.ts +4 -4
  42. package/dist/bundled/v2/components/OrDateTimePickerV3/index.js +5 -4
  43. package/dist/bundled/v2/components/OrExpansionPanelV3/OrExpansionPanel.js +1 -1
  44. package/dist/bundled/v2/components/OrIconButtonV3/OrIconButton.js +1 -1
  45. package/dist/bundled/v2/components/OrIconButtonV3/index.js +1 -1
  46. package/dist/bundled/v2/components/OrInlineInputV3/OrInlineInput.js +10 -18
  47. package/dist/bundled/v2/components/OrInlineInputV3/OrInlineInput.vue.d.ts +2 -2
  48. package/dist/bundled/v2/components/OrInlineInputV3/index.js +2 -1
  49. package/dist/bundled/v2/components/OrInlineTextEdit/OrInlineTextEdit.js +1 -1
  50. package/dist/bundled/v2/components/OrInlineTextEdit/index.js +1 -1
  51. package/dist/bundled/v2/components/OrInlineTextareaV3/OrInlineTextarea.js +9 -16
  52. package/dist/bundled/v2/components/OrInlineTextareaV3/OrInlineTextarea.vue.d.ts +2 -2
  53. package/dist/bundled/v2/components/OrInlineTextareaV3/index.js +2 -1
  54. package/dist/bundled/v2/components/OrInputV3/OrInput.js +6 -10
  55. package/dist/bundled/v2/components/OrInputV3/OrInput.vue.d.ts +2 -2
  56. package/dist/bundled/v2/components/OrInputV3/index.js +2 -1
  57. package/dist/bundled/v2/components/OrLoaderV3/OrLoader.js +1 -1
  58. package/dist/bundled/v2/components/OrLoaderV3/index.js +1 -1
  59. package/dist/bundled/v2/components/OrMenuV3/OrMenu.js +3 -3
  60. package/dist/bundled/v2/components/OrMenuV3/index.js +1 -1
  61. package/dist/bundled/v2/components/OrModal/OrModal.js +2 -2
  62. package/dist/bundled/v2/components/OrModal/index.js +1 -1
  63. package/dist/bundled/v2/components/OrModalV3/OrModal.js +4 -4
  64. package/dist/bundled/v2/components/OrModalV3/index.js +1 -1
  65. package/dist/bundled/v2/components/OrNotificationV3/OrNotification.js +1 -1
  66. package/dist/bundled/v2/components/OrNotificationV3/index.js +1 -1
  67. package/dist/bundled/v2/components/OrOverflowMenu/OrOverflowMenu.js +1 -1
  68. package/dist/bundled/v2/components/OrOverflowMenu/index.js +1 -1
  69. package/dist/bundled/v2/components/OrOverlayV3/OrOverlay.js +1 -1
  70. package/dist/bundled/v2/components/OrOverlayV3/index.js +1 -1
  71. package/dist/bundled/v2/components/OrPaginationV3/OrPagination.js +4 -8
  72. package/dist/bundled/v2/components/OrPaginationV3/OrPagination.vue.d.ts +2 -2
  73. package/dist/bundled/v2/components/OrPaginationV3/index.js +2 -1
  74. package/dist/bundled/v2/components/OrPassword/OrPassword.js +1 -1
  75. package/dist/bundled/v2/components/OrPassword/index.js +1 -1
  76. package/dist/bundled/v2/components/OrPopoverV3/OrPopover.js +2 -2
  77. package/dist/bundled/v2/components/OrPopoverV3/index.js +1 -1
  78. package/dist/bundled/v2/components/OrProgressV3/OrProgress.js +1 -1
  79. package/dist/bundled/v2/components/OrProgressV3/index.js +1 -1
  80. package/dist/bundled/v2/components/OrRadioGroupV3/OrRadioGroup.js +4 -8
  81. package/dist/bundled/v2/components/OrRadioGroupV3/OrRadioGroup.vue.d.ts +2 -2
  82. package/dist/bundled/v2/components/OrRadioGroupV3/index.js +1 -2
  83. package/dist/bundled/v2/components/OrRadioV3/OrRadio.js +6 -10
  84. package/dist/bundled/v2/components/OrRadioV3/OrRadio.vue.d.ts +2 -2
  85. package/dist/bundled/v2/components/OrRadioV3/index.js +1 -0
  86. package/dist/bundled/v2/components/OrSearchV3/OrSearch.js +2 -1
  87. package/dist/bundled/v2/components/OrSearchV3/index.js +2 -1
  88. package/dist/bundled/v2/components/OrSegmentedControlV3/OrSegmentedControl.js +3 -7
  89. package/dist/bundled/v2/components/OrSegmentedControlV3/OrSegmentedControl.vue.d.ts +2 -2
  90. package/dist/bundled/v2/components/OrSegmentedControlV3/index.js +1 -0
  91. package/dist/bundled/v2/components/OrSelect/OrSelect.js +1 -1
  92. package/dist/bundled/v2/components/OrSelect/index.js +1 -1
  93. package/dist/bundled/v2/components/OrSelectV3/OrSelect.js +5 -9
  94. package/dist/bundled/v2/components/OrSelectV3/OrSelect.vue.d.ts +2 -2
  95. package/dist/bundled/v2/components/OrSelectV3/index.js +3 -2
  96. package/dist/bundled/v2/components/OrSidebar/OrSidebar.js +1 -1
  97. package/dist/bundled/v2/components/OrSidebar/index.js +1 -1
  98. package/dist/bundled/v2/components/OrSidebarV3/OrSidebar.js +1 -1
  99. package/dist/bundled/v2/components/OrSidebarV3/index.js +1 -1
  100. package/dist/bundled/v2/components/OrSlider/OrSlider.js +1 -1
  101. package/dist/bundled/v2/components/OrSlider/index.js +1 -1
  102. package/dist/bundled/v2/components/OrSortHeaderV3/OrSortHeader.js +3 -7
  103. package/dist/bundled/v2/components/OrSortHeaderV3/OrSortHeader.vue.d.ts +2 -2
  104. package/dist/bundled/v2/components/OrSortHeaderV3/index.js +1 -0
  105. package/dist/bundled/v2/components/OrSwitchV3/OrSwitch.js +7 -11
  106. package/dist/bundled/v2/components/OrSwitchV3/OrSwitch.vue.d.ts +2 -2
  107. package/dist/bundled/v2/components/OrSwitchV3/index.js +2 -1
  108. package/dist/bundled/v2/components/OrTabsV3/OrTabs.js +4 -8
  109. package/dist/bundled/v2/components/OrTabsV3/OrTabs.vue.d.ts +2 -2
  110. package/dist/bundled/v2/components/OrTabsV3/index.js +2 -1
  111. package/dist/bundled/v2/components/OrTagInputV3/OrTagInput.js +7 -11
  112. package/dist/bundled/v2/components/OrTagInputV3/OrTagInput.vue.d.ts +2 -2
  113. package/dist/bundled/v2/components/OrTagInputV3/index.js +2 -1
  114. package/dist/bundled/v2/components/OrTagV3/OrTag.js +1 -1
  115. package/dist/bundled/v2/components/OrTagV3/index.js +1 -1
  116. package/dist/bundled/v2/components/OrTagsV3/OrTags.js +1 -1
  117. package/dist/bundled/v2/components/OrTagsV3/index.js +1 -1
  118. package/dist/bundled/v2/components/OrTextareaV3/OrTextarea.js +6 -10
  119. package/dist/bundled/v2/components/OrTextareaV3/OrTextarea.vue.d.ts +2 -2
  120. package/dist/bundled/v2/components/OrTextareaV3/index.js +1 -0
  121. package/dist/bundled/v2/components/OrTimePickerV3/OrTimePicker.js +7 -13
  122. package/dist/bundled/v2/components/OrTimePickerV3/OrTimePicker.vue.d.ts +4 -4
  123. package/dist/bundled/v2/components/OrTimePickerV3/index.js +4 -3
  124. package/dist/bundled/v2/components/OrToast/composable/index.js +1 -1
  125. package/dist/bundled/v2/components/OrToast/composable/useToast.js +1 -1
  126. package/dist/bundled/v2/components/OrToast/composable/useToastEventBus.js +1 -1
  127. package/dist/bundled/v2/components/OrToast/index.js +1 -1
  128. package/dist/bundled/v2/components/OrToastContainer/OrToastContainer.js +1 -1
  129. package/dist/bundled/v2/components/OrToastContainer/index.js +1 -1
  130. package/dist/bundled/v2/components/OrToastContainerV3/OrToastContainer.js +2 -2
  131. package/dist/bundled/v2/components/OrToastContainerV3/index.js +1 -1
  132. package/dist/bundled/v2/components/OrToastV3/OrToast.js +1 -1
  133. package/dist/bundled/v2/components/OrToastV3/composable/index.js +1 -1
  134. package/dist/bundled/v2/components/OrToastV3/composable/useToast.js +1 -1
  135. package/dist/bundled/v2/components/OrToastV3/composable/useToastEventBus.js +1 -1
  136. package/dist/bundled/v2/components/OrToastV3/index.js +1 -1
  137. package/dist/bundled/v2/components/OrTooltipV3/OrTooltip.js +2 -2
  138. package/dist/bundled/v2/components/OrTooltipV3/index.js +1 -1
  139. package/dist/bundled/v2/components/index.d.ts +1 -1
  140. package/dist/bundled/v2/components/index.js +17 -11
  141. package/dist/bundled/v2/hooks/index.d.ts +9 -8
  142. package/dist/bundled/v2/hooks/index.js +2 -1
  143. package/dist/bundled/v2/hooks/useOverflow.js +1 -1
  144. package/dist/bundled/v2/hooks/usePopoverState.d.ts +8 -7
  145. package/dist/bundled/v2/hooks/usePopoverState.js +6 -6
  146. package/dist/bundled/v2/hooks/useProxyModelValue.d.ts +8 -0
  147. package/dist/bundled/v2/hooks/useProxyModelValue.js +29 -0
  148. package/dist/bundled/v2/hooks/useResponsive/index.js +1 -1
  149. package/dist/bundled/v2/hooks/useResponsive/useResponsive.js +1 -1
  150. package/dist/bundled/v2/hooks/useTheme.d.ts +2 -1
  151. package/dist/bundled/v2/hooks/useTheme.js +173 -175
  152. package/dist/bundled/v2/{lang-0fb8f78b.js → index-11e9d6f2.js} +797 -575
  153. package/dist/bundled/v2/{index-cf2c3c27.js → index-451f3d87.js} +393 -253
  154. package/dist/bundled/v2/{index-c92e2839.js → index-760079e7.js} +1 -1
  155. package/dist/bundled/{v3/OrCode.vue_vue_type_script_lang-46846a36.js → v2/index-9c1d2908.js} +30 -316
  156. package/dist/bundled/v2/index.js +17 -14
  157. package/dist/bundled/v3/{OrBottomSheet.vue_vue_type_script_lang-214a0eea.js → OrBottomSheet.vue_vue_type_script_lang-ec375126.js} +3 -3
  158. package/dist/bundled/v3/{OrButton.vue_vue_type_script_lang-e8969bd3.js → OrButton.vue_vue_type_script_lang-7370e903.js} +1 -1
  159. package/dist/bundled/v3/{OrCardCollection.vue_vue_type_script_lang-3e7aa91a.js → OrCardCollection.vue_vue_type_script_lang-c7d9f452.js} +4 -4
  160. package/dist/bundled/v3/{OrCheckbox.vue_vue_type_script_lang-616a0cce.js → OrCheckbox.vue_vue_type_script_lang-a27167e0.js} +5 -8
  161. package/dist/bundled/v3/{OrCheckboxGroup.vue_vue_type_script_lang-6946b630.js → OrCheckboxGroup.vue_vue_type_script_lang-386971f8.js} +5 -8
  162. package/dist/bundled/v3/{OrCheckboxTree.vue_vue_type_script_lang-e2647349.js → OrCheckboxTree.vue_vue_type_script_lang-1d754ac1.js} +7 -10
  163. package/dist/bundled/v3/OrCode.vue_vue_type_script_lang-22c66c0d.js +220 -0
  164. package/dist/bundled/v3/OrCode.vue_vue_type_script_lang-ce5a4f02.js +237 -0
  165. package/dist/bundled/v3/{OrColorPicker.vue_vue_type_script_lang-2e1845d8.js → OrColorPicker.vue_vue_type_script_lang-7c9b353d.js} +1 -1
  166. package/dist/bundled/v3/{OrConfirm.vue_vue_type_script_lang-51f9e144.js → OrConfirm.vue_vue_type_script_lang-836e2a0f.js} +2 -2
  167. package/dist/bundled/v3/{OrConfirm.vue_vue_type_script_lang-93458f1f.js → OrConfirm.vue_vue_type_script_lang-88d3aeda.js} +6 -6
  168. package/dist/bundled/v3/{OrDatePicker.vue_vue_type_script_lang-0e648149.js → OrDatePicker.vue_vue_type_script_lang-80de9d3a.js} +8 -14
  169. package/dist/bundled/v3/{OrDateTimePicker.vue_vue_type_script_lang-69d65518.js → OrDateTimePicker.vue_vue_type_script_lang-300f009d.js} +9 -15
  170. package/dist/bundled/v3/{OrDateTimePicker.vue_vue_type_script_lang-882ae7ce.js → OrDateTimePicker.vue_vue_type_script_lang-b7857a99.js} +1 -1
  171. package/dist/bundled/v3/{OrDateTimePickerMonthSelect-8857f024.js → OrDateTimePickerMonthSelect-44038b6b.js} +11 -27
  172. package/dist/bundled/v3/{OrDateTimePickerPopoverHeader-ec90761f.js → OrDateTimePickerPopoverHeader-4959231c.js} +1 -1
  173. package/dist/bundled/v3/{OrDateTimePickerTimeSelect-683ab20d.js → OrDateTimePickerTimeSelect-b8cc72af.js} +6 -16
  174. package/dist/bundled/v3/{OrExpansionPanel.vue_vue_type_script_lang-ca9d5307.js → OrExpansionPanel.vue_vue_type_script_lang-6ea94b95.js} +2 -2
  175. package/dist/bundled/v3/{OrIconButton.vue_vue_type_script_lang-c3a78c23.js → OrIconButton.vue_vue_type_script_lang-41792494.js} +1 -1
  176. package/dist/bundled/v3/{OrInlineInput.vue_vue_type_script_lang-820cc7e9.js → OrInlineInput.vue_vue_type_script_lang-fec60585.js} +10 -18
  177. package/dist/bundled/v3/{OrInlineTextEdit.vue_vue_type_script_lang-588178e5.js → OrInlineTextEdit.vue_vue_type_script_lang-58bc1a00.js} +1 -1
  178. package/dist/bundled/v3/{OrInlineTextarea.vue_vue_type_script_lang-8e639991.js → OrInlineTextarea.vue_vue_type_script_lang-4265a2a2.js} +10 -17
  179. package/dist/bundled/v3/{OrInput.vue_vue_type_script_lang-66363c62.js → OrInput.vue_vue_type_script_lang-0b8a2b69.js} +6 -10
  180. package/dist/bundled/v3/{OrLoader.vue_vue_type_script_lang-f076f6b3.js → OrLoader.vue_vue_type_script_lang-a21dc976.js} +1 -1
  181. package/dist/bundled/v3/{OrMenu.vue_vue_type_script_lang-8fa5ef6c.js → OrMenu.vue_vue_type_script_lang-f8611f9d.js} +3 -3
  182. package/dist/bundled/v3/{OrModal.vue_vue_type_script_lang-153819d3.js → OrModal.vue_vue_type_script_lang-32c395a3.js} +2 -2
  183. package/dist/bundled/v3/{OrModal.vue_vue_type_script_lang-83469d51.js → OrModal.vue_vue_type_script_lang-e00165f1.js} +3 -3
  184. package/dist/bundled/v3/{OrNotification.vue_vue_type_script_lang-242a7186.js → OrNotification.vue_vue_type_script_lang-9d3dd0d9.js} +1 -1
  185. package/dist/bundled/v3/{OrOverflowMenu.vue_vue_type_script_lang-ba3b94e2.js → OrOverflowMenu.vue_vue_type_script_lang-e077c7fd.js} +1 -1
  186. package/dist/bundled/v3/{OrOverlay.vue_vue_type_script_lang-0fdf19ba.js → OrOverlay.vue_vue_type_script_lang-9036d75d.js} +1 -1
  187. package/dist/bundled/v3/{OrPagination.vue_vue_type_script_lang-193cf67a.js → OrPagination.vue_vue_type_script_lang-cf545aab.js} +6 -10
  188. package/dist/bundled/v3/{OrPassword.vue_vue_type_script_lang-fc9e7dc8.js → OrPassword.vue_vue_type_script_lang-0a87f331.js} +1 -1
  189. package/dist/bundled/v3/{OrPopover.vue_vue_type_script_lang-506ae7bb.js → OrPopover.vue_vue_type_script_lang-d15ec5cb.js} +4 -4
  190. package/dist/bundled/v3/{OrProgress.vue_vue_type_script_lang-6a2fef77.js → OrProgress.vue_vue_type_script_lang-2d5ead47.js} +1 -1
  191. package/dist/bundled/v3/{OrRadio.vue_vue_type_script_lang-e9ac87e8.js → OrRadio.vue_vue_type_script_lang-48c2bc6b.js} +5 -9
  192. package/dist/bundled/v3/{OrRadioGroup.vue_vue_type_script_lang-a82cb83b.js → OrRadioGroup.vue_vue_type_script_lang-d7f6f8ca.js} +5 -8
  193. package/dist/bundled/v3/{OrSearch.vue_vue_type_script_lang-18dc2df8.js → OrSearch.vue_vue_type_script_lang-3fa2209d.js} +1 -1
  194. package/dist/bundled/v3/{OrSegmentedControl.vue_vue_type_script_lang-ed0d9fe7.js → OrSegmentedControl.vue_vue_type_script_lang-3a7df112.js} +3 -7
  195. package/dist/bundled/v3/{OrSelect.vue_vue_type_script_lang-72c1db17.js → OrSelect.vue_vue_type_script_lang-b11ea2e9.js} +8 -12
  196. package/dist/bundled/v3/{OrSelect.vue_vue_type_script_lang-45cf8f8c.js → OrSelect.vue_vue_type_script_lang-b8b014f6.js} +1 -1
  197. package/dist/bundled/v3/{OrSidebar.vue_vue_type_script_lang-3d9676ea.js → OrSidebar.vue_vue_type_script_lang-55f0db3b.js} +2 -2
  198. package/dist/bundled/v3/{OrSidebar.vue_vue_type_script_lang-56608f4a.js → OrSidebar.vue_vue_type_script_lang-cac8e5b7.js} +1 -1
  199. package/dist/bundled/v3/{OrSlider.vue_vue_type_script_lang-2a698707.js → OrSlider.vue_vue_type_script_lang-9ae4141f.js} +1 -1
  200. package/dist/bundled/v3/{OrSortHeader.vue_vue_type_script_lang-424696e5.js → OrSortHeader.vue_vue_type_script_lang-a444d88b.js} +3 -7
  201. package/dist/bundled/v3/{OrSwitch.vue_vue_type_script_lang-5a6d0202.js → OrSwitch.vue_vue_type_script_lang-2014e70b.js} +6 -10
  202. package/dist/bundled/v3/{OrTabs.vue_vue_type_script_lang-2d08458d.js → OrTabs.vue_vue_type_script_lang-9072248f.js} +5 -9
  203. package/dist/bundled/v3/{OrTag.vue_vue_type_script_lang-c7065625.js → OrTag.vue_vue_type_script_lang-640a19c4.js} +1 -1
  204. package/dist/bundled/v3/{OrTagInput.vue_vue_type_script_lang-60f6d6de.js → OrTagInput.vue_vue_type_script_lang-67c8d12f.js} +8 -12
  205. package/dist/bundled/v3/{OrTags.vue_vue_type_script_lang-45bbc68e.js → OrTags.vue_vue_type_script_lang-18b7221b.js} +3 -3
  206. package/dist/bundled/v3/{OrTextarea.vue_vue_type_script_lang-0d1a7a48.js → OrTextarea.vue_vue_type_script_lang-44484741.js} +6 -10
  207. package/dist/bundled/v3/{OrTimePicker.vue_vue_type_script_lang-a300ab1b.js → OrTimePicker.vue_vue_type_script_lang-5c88aee4.js} +8 -14
  208. package/dist/bundled/v3/{OrTooltip.vue_vue_type_script_lang-227592d8.js → OrTooltip.vue_vue_type_script_lang-7f5d792c.js} +2 -2
  209. package/dist/bundled/v3/components/OrBottomSheetV3/OrBottomSheet.js +4 -4
  210. package/dist/bundled/v3/components/OrBottomSheetV3/index.js +3 -3
  211. package/dist/bundled/v3/components/OrButtonV3/OrButton.js +4 -4
  212. package/dist/bundled/v3/components/OrButtonV3/index.js +3 -3
  213. package/dist/bundled/v3/components/OrCardCollectionV3/OrCardCollection.js +14 -13
  214. package/dist/bundled/v3/components/OrCardCollectionV3/index.js +13 -12
  215. package/dist/bundled/v3/components/OrCheckboxGroupV3/OrCheckboxGroup.js +10 -9
  216. package/dist/bundled/v3/components/OrCheckboxGroupV3/OrCheckboxGroup.vue.d.ts +2 -2
  217. package/dist/bundled/v3/components/OrCheckboxGroupV3/index.js +9 -8
  218. package/dist/bundled/v3/components/OrCheckboxTreeV3/OrCheckboxTree.js +9 -8
  219. package/dist/bundled/v3/components/OrCheckboxTreeV3/OrCheckboxTree.vue.d.ts +1 -1
  220. package/dist/bundled/v3/components/OrCheckboxTreeV3/index.js +8 -7
  221. package/dist/bundled/v3/components/OrCheckboxV3/OrCheckbox.js +3 -4
  222. package/dist/bundled/v3/components/OrCheckboxV3/index.js +2 -3
  223. package/dist/bundled/v3/components/OrCode/OrCode.js +9 -7
  224. package/dist/bundled/v3/components/OrCode/index.js +7 -5
  225. package/dist/bundled/v3/components/OrCode/lang.js +24 -3
  226. package/dist/bundled/v3/components/OrCode/theme.js +1 -1
  227. package/dist/bundled/v3/components/OrCodeV3/OrCode.js +147 -0
  228. package/dist/bundled/v3/components/OrCodeV3/OrCode.vue.d.ts +119 -0
  229. package/dist/bundled/v3/components/OrCodeV3/index.d.ts +2 -0
  230. package/dist/bundled/v3/components/OrCodeV3/index.js +65 -0
  231. package/dist/bundled/v3/components/OrCodeV3/props.d.ts +8 -0
  232. package/dist/bundled/v3/components/OrCodeV3/props.js +11 -0
  233. package/dist/bundled/v3/components/OrCodeV3/styles.d.ts +2 -0
  234. package/dist/bundled/v3/components/OrCodeV3/styles.js +16 -0
  235. package/dist/bundled/v3/components/OrColorPicker/OrColorPicker.js +3 -3
  236. package/dist/bundled/v3/components/OrColorPicker/index.js +2 -2
  237. package/dist/bundled/v3/components/OrConfirm/OrConfirm.js +4 -4
  238. package/dist/bundled/v3/components/OrConfirm/index.js +3 -3
  239. package/dist/bundled/v3/components/OrConfirmV3/OrConfirm.js +12 -11
  240. package/dist/bundled/v3/components/OrConfirmV3/index.js +11 -10
  241. package/dist/bundled/v3/components/OrDatePickerV3/OrDatePicker.js +14 -13
  242. package/dist/bundled/v3/components/OrDatePickerV3/OrDatePicker.vue.d.ts +64 -2
  243. package/dist/bundled/v3/components/OrDatePickerV3/index.js +13 -12
  244. package/dist/bundled/v3/components/OrDateTimePicker/OrDateTimePicker.js +3 -3
  245. package/dist/bundled/v3/components/OrDateTimePicker/index.js +2 -2
  246. package/dist/bundled/v3/components/OrDateTimePickerV3/OrDateTimePicker.js +15 -14
  247. package/dist/bundled/v3/components/OrDateTimePickerV3/OrDateTimePicker.vue.d.ts +64 -2
  248. package/dist/bundled/v3/components/OrDateTimePickerV3/index.js +14 -13
  249. package/dist/bundled/v3/components/OrExpansionPanelV3/OrExpansionPanel.js +2 -2
  250. package/dist/bundled/v3/components/OrExpansionPanelV3/index.js +1 -1
  251. package/dist/bundled/v3/components/OrIconButtonV3/OrIconButton.js +7 -7
  252. package/dist/bundled/v3/components/OrIconButtonV3/index.js +6 -6
  253. package/dist/bundled/v3/components/OrInlineInputV3/OrInlineInput.js +9 -8
  254. package/dist/bundled/v3/components/OrInlineInputV3/OrInlineInput.vue.d.ts +2 -2
  255. package/dist/bundled/v3/components/OrInlineInputV3/index.js +8 -7
  256. package/dist/bundled/v3/components/OrInlineTextEdit/OrInlineTextEdit.js +3 -3
  257. package/dist/bundled/v3/components/OrInlineTextEdit/index.js +2 -2
  258. package/dist/bundled/v3/components/OrInlineTextareaV3/OrInlineTextarea.js +9 -8
  259. package/dist/bundled/v3/components/OrInlineTextareaV3/OrInlineTextarea.vue.d.ts +2 -2
  260. package/dist/bundled/v3/components/OrInlineTextareaV3/index.js +8 -7
  261. package/dist/bundled/v3/components/OrInputV3/OrInput.js +10 -9
  262. package/dist/bundled/v3/components/OrInputV3/OrInput.vue.d.ts +1 -1
  263. package/dist/bundled/v3/components/OrInputV3/index.js +9 -8
  264. package/dist/bundled/v3/components/OrLoaderV3/OrLoader.js +3 -3
  265. package/dist/bundled/v3/components/OrLoaderV3/index.js +2 -2
  266. package/dist/bundled/v3/components/OrMenuV3/OrMenu.js +6 -6
  267. package/dist/bundled/v3/components/OrMenuV3/index.js +5 -5
  268. package/dist/bundled/v3/components/OrModal/OrModal.js +3 -3
  269. package/dist/bundled/v3/components/OrModal/index.js +2 -2
  270. package/dist/bundled/v3/components/OrModalV3/OrModal.js +8 -8
  271. package/dist/bundled/v3/components/OrModalV3/index.js +7 -7
  272. package/dist/bundled/v3/components/OrNotificationV3/OrNotification.js +8 -8
  273. package/dist/bundled/v3/components/OrNotificationV3/index.js +7 -7
  274. package/dist/bundled/v3/components/OrOverflowMenu/OrOverflowMenu.js +3 -3
  275. package/dist/bundled/v3/components/OrOverflowMenu/index.js +2 -2
  276. package/dist/bundled/v3/components/OrOverlayV3/OrOverlay.js +3 -3
  277. package/dist/bundled/v3/components/OrOverlayV3/index.js +2 -2
  278. package/dist/bundled/v3/components/OrPaginationV3/OrPagination.js +10 -9
  279. package/dist/bundled/v3/components/OrPaginationV3/OrPagination.vue.d.ts +1 -1
  280. package/dist/bundled/v3/components/OrPaginationV3/index.js +9 -8
  281. package/dist/bundled/v3/components/OrPassword/OrPassword.js +3 -3
  282. package/dist/bundled/v3/components/OrPassword/index.js +2 -2
  283. package/dist/bundled/v3/components/OrPopoverV3/OrPopover.js +5 -5
  284. package/dist/bundled/v3/components/OrPopoverV3/index.js +4 -4
  285. package/dist/bundled/v3/components/OrProgressV3/OrProgress.js +3 -3
  286. package/dist/bundled/v3/components/OrProgressV3/index.js +2 -2
  287. package/dist/bundled/v3/components/OrRadioGroupV3/OrRadioGroup.js +4 -5
  288. package/dist/bundled/v3/components/OrRadioGroupV3/OrRadioGroup.vue.d.ts +1 -1
  289. package/dist/bundled/v3/components/OrRadioGroupV3/index.js +3 -4
  290. package/dist/bundled/v3/components/OrRadioV3/OrRadio.js +3 -2
  291. package/dist/bundled/v3/components/OrRadioV3/OrRadio.vue.d.ts +1 -1
  292. package/dist/bundled/v3/components/OrRadioV3/index.js +2 -1
  293. package/dist/bundled/v3/components/OrSearchV3/OrSearch.js +11 -10
  294. package/dist/bundled/v3/components/OrSearchV3/index.js +10 -9
  295. package/dist/bundled/v3/components/OrSegmentedControlV3/OrSegmentedControl.js +3 -2
  296. package/dist/bundled/v3/components/OrSegmentedControlV3/OrSegmentedControl.vue.d.ts +1 -1
  297. package/dist/bundled/v3/components/OrSegmentedControlV3/index.js +2 -1
  298. package/dist/bundled/v3/components/OrSelect/OrSelect.js +3 -3
  299. package/dist/bundled/v3/components/OrSelect/index.js +2 -2
  300. package/dist/bundled/v3/components/OrSelectV3/OrSelect.js +15 -14
  301. package/dist/bundled/v3/components/OrSelectV3/OrSelect.vue.d.ts +1 -1
  302. package/dist/bundled/v3/components/OrSelectV3/index.js +14 -13
  303. package/dist/bundled/v3/components/OrSidebar/OrSidebar.js +3 -3
  304. package/dist/bundled/v3/components/OrSidebar/index.js +2 -2
  305. package/dist/bundled/v3/components/OrSidebarV3/OrSidebar.js +8 -8
  306. package/dist/bundled/v3/components/OrSidebarV3/index.js +7 -7
  307. package/dist/bundled/v3/components/OrSlider/OrSlider.js +3 -3
  308. package/dist/bundled/v3/components/OrSlider/index.js +2 -2
  309. package/dist/bundled/v3/components/OrSortHeaderV3/OrSortHeader.js +3 -2
  310. package/dist/bundled/v3/components/OrSortHeaderV3/OrSortHeader.vue.d.ts +1 -1
  311. package/dist/bundled/v3/components/OrSortHeaderV3/index.js +2 -1
  312. package/dist/bundled/v3/components/OrSwitchV3/OrSwitch.js +5 -4
  313. package/dist/bundled/v3/components/OrSwitchV3/OrSwitch.vue.d.ts +1 -1
  314. package/dist/bundled/v3/components/OrSwitchV3/index.js +4 -3
  315. package/dist/bundled/v3/components/OrTabsV3/OrTabs.js +8 -7
  316. package/dist/bundled/v3/components/OrTabsV3/OrTabs.vue.d.ts +1 -1
  317. package/dist/bundled/v3/components/OrTabsV3/index.js +7 -6
  318. package/dist/bundled/v3/components/OrTagInputV3/OrTagInput.js +13 -12
  319. package/dist/bundled/v3/components/OrTagInputV3/OrTagInput.vue.d.ts +1 -1
  320. package/dist/bundled/v3/components/OrTagInputV3/index.js +12 -11
  321. package/dist/bundled/v3/components/OrTagV3/OrTag.js +8 -8
  322. package/dist/bundled/v3/components/OrTagV3/index.js +7 -7
  323. package/dist/bundled/v3/components/OrTagsV3/OrTags.js +11 -11
  324. package/dist/bundled/v3/components/OrTagsV3/index.js +10 -10
  325. package/dist/bundled/v3/components/OrTextareaV3/OrTextarea.js +3 -2
  326. package/dist/bundled/v3/components/OrTextareaV3/OrTextarea.vue.d.ts +1 -1
  327. package/dist/bundled/v3/components/OrTextareaV3/index.js +2 -1
  328. package/dist/bundled/v3/components/OrTimePickerV3/OrTimePicker.js +13 -12
  329. package/dist/bundled/v3/components/OrTimePickerV3/OrTimePicker.vue.d.ts +64 -2
  330. package/dist/bundled/v3/components/OrTimePickerV3/index.js +12 -11
  331. package/dist/bundled/v3/components/OrToast/composable/index.js +1 -1
  332. package/dist/bundled/v3/components/OrToast/composable/useToast.js +1 -1
  333. package/dist/bundled/v3/components/OrToast/composable/useToastEventBus.js +1 -1
  334. package/dist/bundled/v3/components/OrToast/index.js +2 -2
  335. package/dist/bundled/v3/components/OrToastContainer/OrToastContainer.js +3 -3
  336. package/dist/bundled/v3/components/OrToastContainer/index.js +2 -2
  337. package/dist/bundled/v3/components/OrToastContainerV3/OrToastContainer.js +9 -9
  338. package/dist/bundled/v3/components/OrToastContainerV3/index.js +8 -8
  339. package/dist/bundled/v3/components/OrToastV3/OrToast.js +7 -7
  340. package/dist/bundled/v3/components/OrToastV3/composable/index.js +1 -1
  341. package/dist/bundled/v3/components/OrToastV3/composable/useToast.js +1 -1
  342. package/dist/bundled/v3/components/OrToastV3/composable/useToastEventBus.js +1 -1
  343. package/dist/bundled/v3/components/OrToastV3/index.js +8 -8
  344. package/dist/bundled/v3/components/OrTooltipV3/OrTooltip.js +6 -6
  345. package/dist/bundled/v3/components/OrTooltipV3/index.js +5 -5
  346. package/dist/bundled/v3/components/index.d.ts +1 -1
  347. package/dist/bundled/v3/components/index.js +68 -61
  348. package/dist/bundled/v3/hooks/index.d.ts +9 -8
  349. package/dist/bundled/v3/hooks/index.js +2 -1
  350. package/dist/bundled/v3/hooks/useOverflow.js +1 -1
  351. package/dist/bundled/v3/hooks/usePopoverState.d.ts +8 -7
  352. package/dist/bundled/v3/hooks/usePopoverState.js +6 -6
  353. package/dist/bundled/v3/hooks/useProxyModelValue.d.ts +8 -0
  354. package/dist/bundled/v3/hooks/useProxyModelValue.js +29 -0
  355. package/dist/bundled/v3/hooks/useResponsive/index.js +1 -1
  356. package/dist/bundled/v3/hooks/useResponsive/useResponsive.js +1 -1
  357. package/dist/bundled/v3/hooks/useTheme.d.ts +2 -1
  358. package/dist/bundled/v3/hooks/useTheme.js +173 -175
  359. package/dist/bundled/v3/{lang-0fb8f78b.js → index-11e9d6f2.js} +797 -575
  360. package/dist/bundled/v3/{index-cf2c3c27.js → index-451f3d87.js} +393 -253
  361. package/dist/bundled/v3/index-9c1d2908.js +3740 -0
  362. package/dist/bundled/v3/{index-09d1cb24.js → index-e11e05e2.js} +1 -1
  363. package/dist/bundled/v3/index.js +72 -70
  364. package/dist/esm/v2/{OrBottomSheet-af25c131.js → OrBottomSheet-6bc632c4.js} +2 -2
  365. package/dist/esm/v2/{OrCardCollection-79b90811.js → OrCardCollection-779ba7ca.js} +4 -4
  366. package/dist/esm/v2/{OrCheckbox-41f2822d.js → OrCheckbox-43615f70.js} +7 -9
  367. package/dist/esm/v2/{OrCheckboxGroup-97cfcbda.js → OrCheckboxGroup-4e6dbdd3.js} +8 -8
  368. package/dist/esm/v2/{OrCheckboxTree-a7dc126c.js → OrCheckboxTree-ba023624.js} +14 -14
  369. package/dist/esm/v2/OrCode-26295220.js +351 -0
  370. package/dist/esm/v2/{OrConfirm-0b56c11f.js → OrConfirm-cda74328.js} +3 -3
  371. package/dist/esm/v2/{OrDatePicker-328189a2.js → OrDatePicker-a4f95898.js} +10 -13
  372. package/dist/esm/v2/{OrDateTimePicker-8bcc71c3.js → OrDateTimePicker-99d3445b.js} +1 -1
  373. package/dist/esm/v2/{OrDateTimePicker.vue_rollup-plugin-vue_script-399a44b5.js → OrDateTimePicker.vue_rollup-plugin-vue_script-729b254d.js} +13 -27
  374. package/dist/esm/v2/{OrDateTimePickerPopoverHeader-fa88e970.js → OrDateTimePickerPopoverHeader-5fa89936.js} +14 -27
  375. package/dist/esm/v2/{OrExpansionPanel-b8411db6.js → OrExpansionPanel-acfffe82.js} +2 -2
  376. package/dist/esm/v2/{OrIconButton-ab726d49.js → OrIconButton-2ab8fa02.js} +2 -2
  377. package/dist/esm/v2/{OrInlineInput-84a8398c.js → OrInlineInput-0c62b3a6.js} +10 -18
  378. package/dist/esm/v2/{OrInlineTextarea-f2ecbd39.js → OrInlineTextarea-c24708a7.js} +9 -16
  379. package/dist/esm/v2/{OrInput-2eeff16a.js → OrInput-dcb61699.js} +6 -10
  380. package/dist/esm/v2/{OrMenu-d03831b0.js → OrMenu-6b3de1c1.js} +3 -3
  381. package/dist/esm/v2/{OrModal-7b7c35e1.js → OrModal-abc3b1d9.js} +3 -3
  382. package/dist/esm/v2/{OrNotification-f44ef921.js → OrNotification-5b7028d7.js} +1 -1
  383. package/dist/esm/v2/{OrPagination-3756c1d1.js → OrPagination-4ece4568.js} +5 -9
  384. package/dist/esm/v2/{OrPopover-ef16a904.js → OrPopover-71380b24.js} +3 -3
  385. package/dist/esm/v2/{OrRadio-23810acd.js → OrRadio-b32dfbfe.js} +5 -9
  386. package/dist/esm/v2/{OrRadioGroup-0e1bf22c.js → OrRadioGroup-d1c2e460.js} +8 -8
  387. package/dist/esm/v2/{OrSearch-33e3b0e4.js → OrSearch-879c7656.js} +1 -1
  388. package/dist/esm/v2/{OrSegmentedControl-a1ea5b72.js → OrSegmentedControl-d4e32f80.js} +6 -7
  389. package/dist/esm/v2/{OrSelect-1ee299d9.js → OrSelect-01d61a9a.js} +8 -12
  390. package/dist/esm/v2/{OrSidebar-865f307e.js → OrSidebar-bd385865.js} +1 -1
  391. package/dist/esm/v2/{OrSidebarCollapseButton-b3a41f02.js → OrSidebarCollapseButton-49da331a.js} +1 -1
  392. package/dist/esm/v2/{OrSortHeader-8596b958.js → OrSortHeader-46a92f09.js} +6 -7
  393. package/dist/esm/v2/{OrSwitch-cb97f4d3.js → OrSwitch-e49ce2d8.js} +5 -9
  394. package/dist/esm/v2/{OrTabs-930e1c26.js → OrTabs-f9c88893.js} +7 -9
  395. package/dist/esm/v2/{OrTag-d16c9d12.js → OrTag-2b9e664b.js} +1 -1
  396. package/dist/esm/v2/{OrTagInput-63697869.js → OrTagInput-1548f007.js} +7 -11
  397. package/dist/esm/v2/{OrTags-9048733c.js → OrTags-25a70212.js} +2 -2
  398. package/dist/esm/v2/{OrTextarea-978fb518.js → OrTextarea-9221a04a.js} +5 -9
  399. package/dist/esm/v2/{OrTimePicker-a9c5547b.js → OrTimePicker-9c9a44bc.js} +11 -14
  400. package/dist/esm/v2/{OrTooltip-bf4c725c.js → OrTooltip-a32c182a.js} +3 -3
  401. package/dist/esm/v2/components/index.d.ts +1 -1
  402. package/dist/esm/v2/components/index.js +42 -43
  403. package/dist/esm/v2/components/or-bottom-sheet-v3/index.js +2 -2
  404. package/dist/esm/v2/components/or-card-collection-v3/index.js +10 -9
  405. package/dist/esm/v2/components/or-checkbox-group-v3/OrCheckboxGroup.vue.d.ts +3 -3
  406. package/dist/esm/v2/components/or-checkbox-group-v3/index.js +12 -11
  407. package/dist/esm/v2/components/or-checkbox-tree-v3/OrCheckboxTree.vue.d.ts +2 -2
  408. package/dist/esm/v2/components/or-checkbox-tree-v3/index.js +8 -7
  409. package/dist/esm/v2/components/or-checkbox-v3/index.js +3 -2
  410. package/dist/esm/v2/components/or-code-v3/OrCode.vue.d.ts +169 -0
  411. package/dist/esm/v2/components/or-code-v3/index.d.ts +2 -0
  412. package/dist/esm/v2/components/or-code-v3/index.js +37 -0
  413. package/dist/esm/v2/components/or-code-v3/props.d.ts +8 -0
  414. package/dist/esm/v2/components/or-code-v3/styles.d.ts +2 -0
  415. package/dist/esm/v2/components/or-confirm-v3/index.js +8 -7
  416. package/dist/esm/v2/components/or-date-picker-v3/OrDatePicker.vue.d.ts +4 -4
  417. package/dist/esm/v2/components/or-date-picker-v3/index.js +12 -11
  418. package/dist/esm/v2/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +4 -4
  419. package/dist/esm/v2/components/or-date-time-picker-v3/index.js +13 -12
  420. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-date-control/OrDateTimePickerDateControl.vue.d.ts +2 -2
  421. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/OrDateTimePickerDateSelect.vue.d.ts +2 -2
  422. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +2 -2
  423. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-time-control/OrDateTimePickerTimeControl.vue.d.ts +2 -2
  424. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +2 -2
  425. package/dist/esm/v2/components/or-expansion-panel-v3/index.js +2 -2
  426. package/dist/esm/v2/components/or-icon-button-v3/index.js +5 -5
  427. package/dist/esm/v2/components/or-inline-input-v3/OrInlineInput.vue.d.ts +2 -2
  428. package/dist/esm/v2/components/or-inline-input-v3/index.js +7 -6
  429. package/dist/esm/v2/components/or-inline-textarea-v3/OrInlineTextarea.vue.d.ts +2 -2
  430. package/dist/esm/v2/components/or-inline-textarea-v3/index.js +7 -6
  431. package/dist/esm/v2/components/or-input-v3/OrInput.vue.d.ts +2 -2
  432. package/dist/esm/v2/components/or-input-v3/index.js +7 -6
  433. package/dist/esm/v2/components/or-menu-v3/index.js +4 -4
  434. package/dist/esm/v2/components/or-modal-v3/index.js +6 -6
  435. package/dist/esm/v2/components/or-notification-v3/index.js +6 -6
  436. package/dist/esm/v2/components/or-pagination-v3/OrPagination.vue.d.ts +2 -2
  437. package/dist/esm/v2/components/or-pagination-v3/index.js +6 -5
  438. package/dist/esm/v2/components/or-popover-v3/index.js +3 -3
  439. package/dist/esm/v2/components/or-radio-group-v3/OrRadioGroup.vue.d.ts +2 -2
  440. package/dist/esm/v2/components/or-radio-group-v3/index.js +5 -4
  441. package/dist/esm/v2/components/or-radio-v3/OrRadio.vue.d.ts +2 -2
  442. package/dist/esm/v2/components/or-radio-v3/index.js +2 -1
  443. package/dist/esm/v2/components/or-search-v3/index.js +8 -7
  444. package/dist/esm/v2/components/or-segmented-control-v3/OrSegmentedControl.vue.d.ts +2 -2
  445. package/dist/esm/v2/components/or-segmented-control-v3/index.js +5 -1
  446. package/dist/esm/v2/components/or-select-v3/OrSelect.vue.d.ts +2 -2
  447. package/dist/esm/v2/components/or-select-v3/index.js +11 -10
  448. package/dist/esm/v2/components/or-sidebar-v3/index.js +7 -7
  449. package/dist/esm/v2/components/or-sidebar-v3/partials/index.js +6 -6
  450. package/dist/esm/v2/components/or-sidebar-v3/partials/or-sidebar-collapse-button/index.js +6 -6
  451. package/dist/esm/v2/components/or-sort-header-v3/OrSortHeader.vue.d.ts +2 -2
  452. package/dist/esm/v2/components/or-sort-header-v3/index.js +5 -1
  453. package/dist/esm/v2/components/or-switch-v3/OrSwitch.vue.d.ts +2 -2
  454. package/dist/esm/v2/components/or-switch-v3/index.js +2 -1
  455. package/dist/esm/v2/components/or-tabs-v3/OrTabs.vue.d.ts +2 -2
  456. package/dist/esm/v2/components/or-tabs-v3/index.js +8 -7
  457. package/dist/esm/v2/components/or-tag-input-v3/OrTagInput.vue.d.ts +2 -2
  458. package/dist/esm/v2/components/or-tag-input-v3/index.js +9 -8
  459. package/dist/esm/v2/components/or-tag-v3/index.js +6 -6
  460. package/dist/esm/v2/components/or-tags-v3/index.js +7 -7
  461. package/dist/esm/v2/components/or-textarea-v3/OrTextarea.vue.d.ts +2 -2
  462. package/dist/esm/v2/components/or-textarea-v3/index.js +2 -1
  463. package/dist/esm/v2/components/or-time-picker-v3/OrTimePicker.vue.d.ts +4 -4
  464. package/dist/esm/v2/components/or-time-picker-v3/index.js +13 -12
  465. package/dist/esm/v2/components/or-toast-v3/index.js +6 -6
  466. package/dist/esm/v2/components/or-toast-v3/or-toast-container-v3/index.js +6 -6
  467. package/dist/esm/v2/components/or-tooltip-v3/index.js +4 -4
  468. package/dist/esm/v2/hooks/index.d.ts +9 -8
  469. package/dist/esm/v2/hooks/index.js +2 -1
  470. package/dist/esm/v2/hooks/usePopoverState.d.ts +8 -7
  471. package/dist/esm/v2/hooks/useProxyModelValue.d.ts +8 -0
  472. package/dist/esm/v2/hooks/useTheme.d.ts +2 -1
  473. package/dist/esm/v2/index.js +40 -42
  474. package/dist/esm/v2/{types-6b40ad64.js → types-a74e1e20.js} +1 -1
  475. package/dist/esm/v2/{usePopoverState-8a95a300.js → usePopoverState-b92c698b.js} +6 -6
  476. package/dist/esm/v2/useProxyModelValue-940010d2.js +29 -0
  477. package/dist/esm/v3/{OrBottomSheet-f2f3aef9.js → OrBottomSheet-79db2626.js} +2 -2
  478. package/dist/esm/v3/{OrCardCollection-76f937d5.js → OrCardCollection-4516594a.js} +4 -4
  479. package/dist/esm/v3/{OrCheckbox-2194e473.js → OrCheckbox-bb06af0f.js} +5 -7
  480. package/dist/esm/v3/{OrCheckboxGroup-6c36527f.js → OrCheckboxGroup-9a8ab902.js} +8 -8
  481. package/dist/esm/v3/{OrCheckboxTree-1873a941.js → OrCheckboxTree-969bc928.js} +14 -14
  482. package/dist/esm/v3/OrCode-0c2310e5.js +325 -0
  483. package/dist/esm/v3/{OrConfirm-5509c440.js → OrConfirm-240cfe0a.js} +3 -3
  484. package/dist/esm/v3/{OrDatePicker-4c4fd5dc.js → OrDatePicker-f4470d79.js} +10 -13
  485. package/dist/esm/v3/{OrDateTimePicker-0a4d194e.js → OrDateTimePicker-546c15ec.js} +13 -27
  486. package/dist/esm/v3/{OrDateTimePickerPopoverHeader-bc8e0bcf.js → OrDateTimePickerPopoverHeader-96a38b4b.js} +14 -27
  487. package/dist/esm/v3/{OrExpansionPanel-df527763.js → OrExpansionPanel-af3a0d63.js} +2 -2
  488. package/dist/esm/v3/{OrIconButton-0aaadc68.js → OrIconButton-00f8f0c7.js} +2 -2
  489. package/dist/esm/v3/{OrInlineInput-a6c33dc0.js → OrInlineInput-4d47d731.js} +8 -16
  490. package/dist/esm/v3/{OrInlineTextarea-f060dab5.js → OrInlineTextarea-1415bed9.js} +7 -14
  491. package/dist/esm/v3/{OrInput-c653aedb.js → OrInput-f0e12c81.js} +4 -8
  492. package/dist/esm/v3/{OrMenu-9659b8eb.js → OrMenu-dbe1db1e.js} +3 -3
  493. package/dist/esm/v3/{OrModal-cabce172.js → OrModal-6a90ea79.js} +3 -3
  494. package/dist/esm/v3/{OrNotification-cbcb0b4a.js → OrNotification-117f2dcb.js} +1 -1
  495. package/dist/esm/v3/{OrPagination-38067570.js → OrPagination-858337d1.js} +5 -9
  496. package/dist/esm/v3/{OrPopover-337df396.js → OrPopover-94dc1203.js} +3 -3
  497. package/dist/esm/v3/{OrRadio-4f0026c9.js → OrRadio-7b722b16.js} +3 -7
  498. package/dist/esm/v3/{OrRadioGroup-d215409c.js → OrRadioGroup-58c0214c.js} +8 -8
  499. package/dist/esm/v3/{OrSearch-b945651d.js → OrSearch-051adc07.js} +1 -1
  500. package/dist/esm/v3/{OrSegmentedControl-359fbf3a.js → OrSegmentedControl-c8eb217d.js} +6 -7
  501. package/dist/esm/v3/{OrSelect-5a2c078d.js → OrSelect-b3885148.js} +8 -12
  502. package/dist/esm/v3/{OrSidebar-7f5795da.js → OrSidebar-47f9d02a.js} +1 -1
  503. package/dist/esm/v3/{OrSidebarCollapseButton-5fb7a6a1.js → OrSidebarCollapseButton-86dafbbc.js} +1 -1
  504. package/dist/esm/v3/{OrSortHeader-54d85a25.js → OrSortHeader-21a443f9.js} +6 -7
  505. package/dist/esm/v3/{OrSwitch-ed9868db.js → OrSwitch-a6efd081.js} +3 -7
  506. package/dist/esm/v3/{OrTabs-9e741419.js → OrTabs-52e49d84.js} +7 -9
  507. package/dist/esm/v3/{OrTag-fbeca419.js → OrTag-9adef1cd.js} +1 -1
  508. package/dist/esm/v3/{OrTagInput-6a6d1365.js → OrTagInput-63d0f5fb.js} +5 -9
  509. package/dist/esm/v3/{OrTags-1621cbb9.js → OrTags-d7a90658.js} +2 -2
  510. package/dist/esm/v3/{OrTextarea-1e19417a.js → OrTextarea-6202e867.js} +3 -7
  511. package/dist/esm/v3/{OrTimePicker-67f75e85.js → OrTimePicker-98c00a9b.js} +11 -14
  512. package/dist/esm/v3/{OrTooltip-3025564a.js → OrTooltip-d7d40e38.js} +3 -3
  513. package/dist/esm/v3/components/index.d.ts +1 -1
  514. package/dist/esm/v3/components/index.js +41 -42
  515. package/dist/esm/v3/components/or-bottom-sheet-v3/index.js +2 -2
  516. package/dist/esm/v3/components/or-card-collection-v3/index.js +10 -9
  517. package/dist/esm/v3/components/or-checkbox-group-v3/OrCheckboxGroup.vue.d.ts +2 -2
  518. package/dist/esm/v3/components/or-checkbox-group-v3/index.js +12 -11
  519. package/dist/esm/v3/components/or-checkbox-tree-v3/OrCheckboxTree.vue.d.ts +1 -1
  520. package/dist/esm/v3/components/or-checkbox-tree-v3/index.js +8 -7
  521. package/dist/esm/v3/components/or-checkbox-v3/index.js +3 -2
  522. package/dist/esm/v3/components/or-code-v3/OrCode.vue.d.ts +119 -0
  523. package/dist/esm/v3/components/or-code-v3/index.d.ts +2 -0
  524. package/dist/esm/v3/components/or-code-v3/index.js +35 -0
  525. package/dist/esm/v3/components/or-code-v3/props.d.ts +8 -0
  526. package/dist/esm/v3/components/or-code-v3/styles.d.ts +2 -0
  527. package/dist/esm/v3/components/or-confirm-v3/index.js +8 -7
  528. package/dist/esm/v3/components/or-date-picker-v3/OrDatePicker.vue.d.ts +64 -2
  529. package/dist/esm/v3/components/or-date-picker-v3/index.js +12 -11
  530. package/dist/esm/v3/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +64 -2
  531. package/dist/esm/v3/components/or-date-time-picker-v3/index.js +12 -11
  532. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-date-control/OrDateTimePickerDateControl.vue.d.ts +1 -1
  533. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/OrDateTimePickerDateSelect.vue.d.ts +1 -1
  534. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +1 -1
  535. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-time-control/OrDateTimePickerTimeControl.vue.d.ts +1 -1
  536. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +1 -1
  537. package/dist/esm/v3/components/or-expansion-panel-v3/index.js +2 -2
  538. package/dist/esm/v3/components/or-icon-button-v3/index.js +5 -5
  539. package/dist/esm/v3/components/or-inline-input-v3/OrInlineInput.vue.d.ts +2 -2
  540. package/dist/esm/v3/components/or-inline-input-v3/index.js +7 -6
  541. package/dist/esm/v3/components/or-inline-textarea-v3/OrInlineTextarea.vue.d.ts +2 -2
  542. package/dist/esm/v3/components/or-inline-textarea-v3/index.js +7 -6
  543. package/dist/esm/v3/components/or-input-v3/OrInput.vue.d.ts +1 -1
  544. package/dist/esm/v3/components/or-input-v3/index.js +7 -6
  545. package/dist/esm/v3/components/or-menu-v3/index.js +4 -4
  546. package/dist/esm/v3/components/or-modal-v3/index.js +6 -6
  547. package/dist/esm/v3/components/or-notification-v3/index.js +6 -6
  548. package/dist/esm/v3/components/or-pagination-v3/OrPagination.vue.d.ts +1 -1
  549. package/dist/esm/v3/components/or-pagination-v3/index.js +6 -5
  550. package/dist/esm/v3/components/or-popover-v3/index.js +3 -3
  551. package/dist/esm/v3/components/or-radio-group-v3/OrRadioGroup.vue.d.ts +1 -1
  552. package/dist/esm/v3/components/or-radio-group-v3/index.js +5 -4
  553. package/dist/esm/v3/components/or-radio-v3/OrRadio.vue.d.ts +1 -1
  554. package/dist/esm/v3/components/or-radio-v3/index.js +2 -1
  555. package/dist/esm/v3/components/or-search-v3/index.js +8 -7
  556. package/dist/esm/v3/components/or-segmented-control-v3/OrSegmentedControl.vue.d.ts +1 -1
  557. package/dist/esm/v3/components/or-segmented-control-v3/index.js +5 -1
  558. package/dist/esm/v3/components/or-select-v3/OrSelect.vue.d.ts +1 -1
  559. package/dist/esm/v3/components/or-select-v3/index.js +11 -10
  560. package/dist/esm/v3/components/or-sidebar-v3/index.js +7 -7
  561. package/dist/esm/v3/components/or-sidebar-v3/partials/index.js +6 -6
  562. package/dist/esm/v3/components/or-sidebar-v3/partials/or-sidebar-collapse-button/index.js +6 -6
  563. package/dist/esm/v3/components/or-sort-header-v3/OrSortHeader.vue.d.ts +1 -1
  564. package/dist/esm/v3/components/or-sort-header-v3/index.js +5 -1
  565. package/dist/esm/v3/components/or-switch-v3/OrSwitch.vue.d.ts +1 -1
  566. package/dist/esm/v3/components/or-switch-v3/index.js +2 -1
  567. package/dist/esm/v3/components/or-tabs-v3/OrTabs.vue.d.ts +1 -1
  568. package/dist/esm/v3/components/or-tabs-v3/index.js +8 -7
  569. package/dist/esm/v3/components/or-tag-input-v3/OrTagInput.vue.d.ts +1 -1
  570. package/dist/esm/v3/components/or-tag-input-v3/index.js +9 -8
  571. package/dist/esm/v3/components/or-tag-v3/index.js +6 -6
  572. package/dist/esm/v3/components/or-tags-v3/index.js +7 -7
  573. package/dist/esm/v3/components/or-textarea-v3/OrTextarea.vue.d.ts +1 -1
  574. package/dist/esm/v3/components/or-textarea-v3/index.js +2 -1
  575. package/dist/esm/v3/components/or-time-picker-v3/OrTimePicker.vue.d.ts +64 -2
  576. package/dist/esm/v3/components/or-time-picker-v3/index.js +13 -12
  577. package/dist/esm/v3/components/or-toast-v3/index.js +6 -6
  578. package/dist/esm/v3/components/or-toast-v3/or-toast-container-v3/index.js +6 -6
  579. package/dist/esm/v3/components/or-tooltip-v3/index.js +4 -4
  580. package/dist/esm/v3/hooks/index.d.ts +9 -8
  581. package/dist/esm/v3/hooks/index.js +2 -1
  582. package/dist/esm/v3/hooks/usePopoverState.d.ts +8 -7
  583. package/dist/esm/v3/hooks/useProxyModelValue.d.ts +8 -0
  584. package/dist/esm/v3/hooks/useTheme.d.ts +2 -1
  585. package/dist/esm/v3/index.js +39 -41
  586. package/dist/esm/v3/{types-53cb1e6c.js → types-c78924f3.js} +1 -1
  587. package/dist/esm/v3/{usePopoverState-8a95a300.js → usePopoverState-b92c698b.js} +6 -6
  588. package/dist/esm/v3/useProxyModelValue-940010d2.js +29 -0
  589. package/package.json +11 -15
  590. package/src/components/index.ts +1 -1
  591. package/src/components/or-bottom-sheet-v3/OrBottomSheet.vue +1 -1
  592. package/src/components/or-checkbox-group-v3/OrCheckboxGroup.vue +8 -7
  593. package/src/components/or-checkbox-tree-v3/OrCheckboxTree.vue +8 -7
  594. package/src/components/or-checkbox-v3/OrCheckbox.vue +4 -5
  595. package/src/components/or-code-v3/OrCode.vue +365 -0
  596. package/src/components/or-code-v3/index.ts +2 -0
  597. package/src/components/or-code-v3/props.ts +8 -0
  598. package/src/components/or-code-v3/styles.ts +23 -0
  599. package/src/components/or-confirm-v3/OrConfirm.vue +1 -1
  600. package/src/components/or-date-picker-v3/OrDatePicker.vue +5 -11
  601. package/src/components/or-date-time-picker-v3/OrDateTimePicker.vue +5 -11
  602. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-date-control/OrDateTimePickerDateControl.vue +3 -8
  603. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/OrDateTimePickerDateSelect.vue +4 -7
  604. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/styles.ts +1 -1
  605. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue +4 -7
  606. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-time-control/OrDateTimePickerTimeControl.vue +3 -8
  607. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue +4 -7
  608. package/src/components/or-expansion-panel-v3/OrExpansionPanel.vue +1 -1
  609. package/src/components/or-inline-input-v3/OrInlineInput.vue +7 -15
  610. package/src/components/or-inline-textarea-v3/OrInlineTextarea.vue +6 -14
  611. package/src/components/or-input-v3/OrInput.vue +3 -9
  612. package/src/components/or-menu-v3/OrMenu.vue +1 -1
  613. package/src/components/or-modal-v3/OrModal.vue +1 -1
  614. package/src/components/or-pagination-v3/OrPagination.vue +3 -9
  615. package/src/components/or-popover-v3/OrPopover.vue +1 -1
  616. package/src/components/or-radio-group-v3/OrRadioGroup.vue +5 -6
  617. package/src/components/or-radio-v3/OrRadio.vue +3 -9
  618. package/src/components/or-segmented-control-v3/OrSegmentedControl.vue +3 -8
  619. package/src/components/or-select-v3/OrSelect.vue +3 -9
  620. package/src/components/or-sort-header-v3/OrSortHeader.vue +3 -8
  621. package/src/components/or-switch-v3/OrSwitch.vue +3 -9
  622. package/src/components/or-tabs-v3/OrTabs.vue +3 -8
  623. package/src/components/or-tag-input-v3/OrTagInput.vue +3 -10
  624. package/src/components/or-textarea-v3/OrTextarea.vue +3 -9
  625. package/src/components/or-time-picker-v3/OrTimePicker.vue +5 -11
  626. package/src/components/or-tooltip-v3/OrTooltip.vue +1 -1
  627. package/src/hooks/index.ts +9 -8
  628. package/src/hooks/usePopoverState.ts +17 -16
  629. package/src/hooks/useProxyModelValue.ts +50 -0
  630. package/src/hooks/useTheme.ts +4 -2
  631. package/src/shims.d.ts +0 -1
  632. package/dist/bundled/v2/components/OrCarousel/OrCarousel.js +0 -2886
  633. package/dist/bundled/v2/components/OrCarousel/OrCarousel.vue.d.ts +0 -1132
  634. package/dist/bundled/v2/components/OrCarousel/constants.d.ts +0 -15
  635. package/dist/bundled/v2/components/OrCarousel/constants.js +0 -21
  636. package/dist/bundled/v2/components/OrCarousel/index.d.ts +0 -2
  637. package/dist/bundled/v2/components/OrCarousel/index.js +0 -22
  638. package/dist/bundled/v2/components/OrCarouselItem/OrCarouselItem.js +0 -41
  639. package/dist/bundled/v2/components/OrCarouselItem/OrCarouselItem.vue.d.ts +0 -2
  640. package/dist/bundled/v2/components/OrCarouselItem/index.d.ts +0 -1
  641. package/dist/bundled/v2/components/OrCarouselItem/index.js +0 -3
  642. package/dist/bundled/v2/components/OrHint/OrHint.stories.bundled.d.ts +0 -8
  643. package/dist/bundled/v3/OrCarousel.vue_vue_type_script_lang-75c50882.js +0 -2809
  644. package/dist/bundled/v3/OrCarouselItem.vue_vue_type_script_lang-42da2f4a.js +0 -7
  645. package/dist/bundled/v3/components/OrCarousel/OrCarousel.js +0 -66
  646. package/dist/bundled/v3/components/OrCarousel/OrCarousel.vue.d.ts +0 -582
  647. package/dist/bundled/v3/components/OrCarousel/constants.d.ts +0 -15
  648. package/dist/bundled/v3/components/OrCarousel/constants.js +0 -21
  649. package/dist/bundled/v3/components/OrCarousel/index.d.ts +0 -2
  650. package/dist/bundled/v3/components/OrCarousel/index.js +0 -24
  651. package/dist/bundled/v3/components/OrCarouselItem/OrCarouselItem.js +0 -14
  652. package/dist/bundled/v3/components/OrCarouselItem/OrCarouselItem.vue.d.ts +0 -2
  653. package/dist/bundled/v3/components/OrCarouselItem/index.d.ts +0 -1
  654. package/dist/bundled/v3/components/OrCarouselItem/index.js +0 -2
  655. package/dist/bundled/v3/components/OrHint/OrHint.stories.bundled.d.ts +0 -8
  656. package/dist/esm/v2/OrCarousel-b220cf82.js +0 -251
  657. package/dist/esm/v2/OrCarouselItem-c614bab9.js +0 -41
  658. package/dist/esm/v2/components/or-carousel/OrCarousel.vue.d.ts +0 -1132
  659. package/dist/esm/v2/components/or-carousel/constants.d.ts +0 -15
  660. package/dist/esm/v2/components/or-carousel/index.d.ts +0 -2
  661. package/dist/esm/v2/components/or-carousel/index.js +0 -19
  662. package/dist/esm/v2/components/or-carousel/or-carousel-item/OrCarouselItem.vue.d.ts +0 -2
  663. package/dist/esm/v2/components/or-carousel/or-carousel-item/index.d.ts +0 -1
  664. package/dist/esm/v2/components/or-carousel/or-carousel-item/index.js +0 -3
  665. package/dist/esm/v2/components/or-hint/OrHint.stories.bundled.d.ts +0 -8
  666. package/dist/esm/v3/OrCarousel-5cc74f26.js +0 -231
  667. package/dist/esm/v3/OrCarouselItem-8c7ccd0f.js +0 -18
  668. package/dist/esm/v3/components/or-carousel/OrCarousel.vue.d.ts +0 -582
  669. package/dist/esm/v3/components/or-carousel/constants.d.ts +0 -15
  670. package/dist/esm/v3/components/or-carousel/index.d.ts +0 -2
  671. package/dist/esm/v3/components/or-carousel/index.js +0 -18
  672. package/dist/esm/v3/components/or-carousel/or-carousel-item/OrCarouselItem.vue.d.ts +0 -2
  673. package/dist/esm/v3/components/or-carousel/or-carousel-item/index.d.ts +0 -1
  674. package/dist/esm/v3/components/or-carousel/or-carousel-item/index.js +0 -3
  675. package/dist/esm/v3/components/or-hint/OrHint.stories.bundled.d.ts +0 -8
  676. package/src/components/or-carousel/OrCarousel.stories.mdx +0 -34
  677. package/src/components/or-carousel/OrCarousel.stories.ts +0 -103
  678. package/src/components/or-carousel/OrCarousel.vue +0 -204
  679. package/src/components/or-carousel/constants.ts +0 -49
  680. package/src/components/or-carousel/index.ts +0 -2
  681. package/src/components/or-carousel/or-carousel-item/OrCarouselItem.vue +0 -12
  682. package/src/components/or-carousel/or-carousel-item/index.ts +0 -1
  683. package/src/components/or-hint/OrHint.stories.bundled.ts +0 -28
  684. package/dist/bundled/v2/{OrDateTimePickerPopoverHeader-28995b95.js → OrDateTimePickerPopoverHeader-52a99e6a.js} +0 -0
  685. package/dist/bundled/v3/{OrToastContainer.vue_vue_type_script_lang-d1a074fe.js → OrToastContainer.vue_vue_type_script_lang-7d44207e.js} +1 -1
  686. /package/dist/bundled/v3/{OrToastContainer.vue_vue_type_script_lang-c47d63be.js → OrToastContainer.vue_vue_type_script_lang-f9813bc6.js} +0 -0
@@ -1,5 +1,4 @@
1
- import { s as syntaxTree, E as EditorView, o as codePointSize, n as codePointAt, a as EditorSelection, q as CharCategory, P as Prec, Y as keymap, F as Facet, c as combineConfig, S as StateField, _ as showTooltip, $ as getTooltip, V as ViewPlugin, x as logException, j as StateEffect, a0 as MapMode, a1 as RangeValue, a2 as RangeSet, r as fromCodePoint, A as Annotation, d as Text, e as indentUnit, l as Decoration, D as Direction, W as WidgetType, a3 as Parser, a4 as NodeSet, a5 as NodeType, a6 as DefaultBufferLength, N as NodeProp, a7 as Tree, a8 as IterMode, a9 as styleTags, aa as tags$1, ab as parseMixed, ac as LanguageSupport, ad as LRLanguage, ae as indentNodeProp, af as continuedIndent, ag as foldNodeProp, ah as foldInside, ai as flatIndent, aj as delimitedIndent, ak as NodeWeakMap, al as Tag, am as Language, an as defineLanguageFacet, ao as languageDataProp, ap as LanguageDescription, aq as ParseContext } from './index-cf2c3c27.js';
2
- import { OrCodeLanguages } from './components/OrCode/constants.js';
1
+ import { s as syntaxTree, E as EditorView, q as codePointSize, p as codePointAt, b as EditorSelection, t as CharCategory, P as Prec, k as keymap, F as Facet, c as combineConfig, $ as getTooltip, V as ViewPlugin, a0 as logException, l as StateEffect, S as StateField, a1 as showTooltip, a2 as MapMode, a3 as RangeValue, a4 as RangeSet, u as fromCodePoint, A as Annotation, D as Direction, e as Text, f as indentUnit, o as Decoration, W as WidgetType, a5 as Parser, a6 as NodeSet, a7 as NodeType, a8 as DefaultBufferLength, N as NodeProp, a9 as Tree, aa as IterMode, ab as styleTags, _ as tags$1, ac as parseMixed, ad as LanguageSupport, ae as LRLanguage, af as indentNodeProp, ag as continuedIndent, ah as foldNodeProp, ai as foldInside, aj as NodeWeakMap, ak as flatIndent, al as delimitedIndent, am as sublanguageProp, an as defineLanguageFacet, ao as bracketMatchingHandle, ap as Tag, aq as Language, ar as languageDataProp, as as foldService, at as LanguageDescription, au as ParseContext } from './index-451f3d87.js';
3
2
 
4
3
  /**
5
4
  An instance of this is passed to completion source functions.
@@ -129,14 +128,15 @@ function ifNotIn(nodes, source) {
129
128
  };
130
129
  }
131
130
  class Option {
132
- constructor(completion, source, match) {
131
+ constructor(completion, source, match, score) {
133
132
  this.completion = completion;
134
133
  this.source = source;
135
134
  this.match = match;
135
+ this.score = score;
136
136
  }
137
137
  }
138
138
  function cur(state) {
139
- return state.selection.main.head;
139
+ return state.selection.main.from;
140
140
  }
141
141
  // Make sure the given regexp has a $ at its end and, if `start` is
142
142
  // true, a ^ at its start.
@@ -161,38 +161,27 @@ completion's text in the main selection range, and any other
161
161
  selection range that has the same text in front of it.
162
162
  */
163
163
  function insertCompletionText(state, text, from, to) {
164
+ let {
165
+ main
166
+ } = state.selection,
167
+ fromOff = from - main.from,
168
+ toOff = to - main.from;
164
169
  return Object.assign(Object.assign({}, state.changeByRange(range => {
165
- if (range == state.selection.main) return {
166
- changes: {
167
- from: from,
168
- to: to,
169
- insert: text
170
- },
171
- range: EditorSelection.cursor(from + text.length)
172
- };
173
- let len = to - from;
174
- if (!range.empty || len && state.sliceDoc(range.from - len, range.from) != state.sliceDoc(from, to)) return {
170
+ if (range != main && from != to && state.sliceDoc(range.from + fromOff, range.from + toOff) != state.sliceDoc(from, to)) return {
175
171
  range
176
172
  };
177
173
  return {
178
174
  changes: {
179
- from: range.from - len,
180
- to: range.from,
175
+ from: range.from + fromOff,
176
+ to: to == main.from ? range.to : range.from + toOff,
181
177
  insert: text
182
178
  },
183
- range: EditorSelection.cursor(range.from - len + text.length)
179
+ range: EditorSelection.cursor(range.from + fromOff + text.length)
184
180
  };
185
181
  })), {
186
182
  userEvent: "input.complete"
187
183
  });
188
184
  }
189
- function applyCompletion(view, option) {
190
- const apply = option.completion.apply || option.completion.label;
191
- let result = option.source;
192
- if (typeof apply == "string") view.dispatch(Object.assign(Object.assign({}, insertCompletionText(view.state, apply, result.from, result.to)), {
193
- annotations: pickedCompletion.of(option.completion)
194
- }));else apply(view, option.completion, result.from, result.to);
195
- }
196
185
  const SourceCache = /*@__PURE__*/new WeakMap();
197
186
  function asSource(source) {
198
187
  if (!Array.isArray(source)) return source;
@@ -200,6 +189,8 @@ function asSource(source) {
200
189
  if (!known) SourceCache.set(source, known = completeFromList(source));
201
190
  return known;
202
191
  }
192
+ const startCompletionEffect = /*@__PURE__*/StateEffect.define();
193
+ const closeCompletionEffect = /*@__PURE__*/StateEffect.define();
203
194
 
204
195
  // A pattern matcher for fuzzy completion matching. Create an instance
205
196
  // once for a pattern, and then use that to match any number of
@@ -233,7 +224,7 @@ class FuzzyMatcher {
233
224
  // The score is a number that is more negative the worse the match
234
225
  // is. See `Penalty` above.
235
226
  match(word) {
236
- if (this.pattern.length == 0) return [0];
227
+ if (this.pattern.length == 0) return [-100 /* Penalty.NotFull */];
237
228
  if (word.length < this.pattern.length) return null;
238
229
  let {
239
230
  chars,
@@ -335,6 +326,7 @@ const completionConfig = /*@__PURE__*/Facet.define({
335
326
  aboveCursor: false,
336
327
  icons: true,
337
328
  addToOptions: [],
329
+ positionInfo: defaultPositionInfo,
338
330
  compareCompletions: (a, b) => a.label.localeCompare(b.label),
339
331
  interactionDelay: 75
340
332
  }, {
@@ -350,6 +342,256 @@ const completionConfig = /*@__PURE__*/Facet.define({
350
342
  function joinClass(a, b) {
351
343
  return a ? b ? a + " " + b : a : b;
352
344
  }
345
+ function defaultPositionInfo(view, list, option, info, space) {
346
+ let rtl = view.textDirection == Direction.RTL,
347
+ left = rtl,
348
+ narrow = false;
349
+ let side = "top",
350
+ offset,
351
+ maxWidth;
352
+ let spaceLeft = list.left - space.left,
353
+ spaceRight = space.right - list.right;
354
+ let infoWidth = info.right - info.left,
355
+ infoHeight = info.bottom - info.top;
356
+ if (left && spaceLeft < Math.min(infoWidth, spaceRight)) left = false;else if (!left && spaceRight < Math.min(infoWidth, spaceLeft)) left = true;
357
+ if (infoWidth <= (left ? spaceLeft : spaceRight)) {
358
+ offset = Math.max(space.top, Math.min(option.top, space.bottom - infoHeight)) - list.top;
359
+ maxWidth = Math.min(400 /* Info.Width */, left ? spaceLeft : spaceRight);
360
+ } else {
361
+ narrow = true;
362
+ maxWidth = Math.min(400 /* Info.Width */, (rtl ? list.right : space.right - list.left) - 30 /* Info.Margin */);
363
+ let spaceBelow = space.bottom - list.bottom;
364
+ if (spaceBelow >= infoHeight || spaceBelow > list.top) {
365
+ // Below the completion
366
+ offset = option.bottom - list.top;
367
+ } else {
368
+ // Above it
369
+ side = "bottom";
370
+ offset = list.bottom - option.top;
371
+ }
372
+ }
373
+ return {
374
+ style: `${side}: ${offset}px; max-width: ${maxWidth}px`,
375
+ class: "cm-completionInfo-" + (narrow ? rtl ? "left-narrow" : "right-narrow" : left ? "left" : "right")
376
+ };
377
+ }
378
+
379
+ /**
380
+ Returns a command that moves the completion selection forward or
381
+ backward by the given amount.
382
+ */
383
+ function moveCompletionSelection(forward) {
384
+ let by = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "option";
385
+ return view => {
386
+ let cState = view.state.field(completionState, false);
387
+ if (!cState || !cState.open || cState.open.disabled || Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay) return false;
388
+ let step = 1,
389
+ tooltip;
390
+ if (by == "page" && (tooltip = getTooltip(view, cState.open.tooltip))) step = Math.max(2, Math.floor(tooltip.dom.offsetHeight / tooltip.dom.querySelector("li").offsetHeight) - 1);
391
+ let {
392
+ length
393
+ } = cState.open.options;
394
+ let selected = cState.open.selected > -1 ? cState.open.selected + step * (forward ? 1 : -1) : forward ? 0 : length - 1;
395
+ if (selected < 0) selected = by == "page" ? 0 : length - 1;else if (selected >= length) selected = by == "page" ? length - 1 : 0;
396
+ view.dispatch({
397
+ effects: setSelectedEffect.of(selected)
398
+ });
399
+ return true;
400
+ };
401
+ }
402
+ /**
403
+ Accept the current completion.
404
+ */
405
+ const acceptCompletion = view => {
406
+ let cState = view.state.field(completionState, false);
407
+ if (view.state.readOnly || !cState || !cState.open || cState.open.selected < 0 || Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay) return false;
408
+ if (!cState.open.disabled) return applyCompletion(view, cState.open.options[cState.open.selected]);
409
+ return true;
410
+ };
411
+ /**
412
+ Explicitly start autocompletion.
413
+ */
414
+ const startCompletion = view => {
415
+ let cState = view.state.field(completionState, false);
416
+ if (!cState) return false;
417
+ view.dispatch({
418
+ effects: startCompletionEffect.of(true)
419
+ });
420
+ return true;
421
+ };
422
+ /**
423
+ Close the currently active completion.
424
+ */
425
+ const closeCompletion = view => {
426
+ let cState = view.state.field(completionState, false);
427
+ if (!cState || !cState.active.some(a => a.state != 0 /* State.Inactive */)) return false;
428
+ view.dispatch({
429
+ effects: closeCompletionEffect.of(null)
430
+ });
431
+ return true;
432
+ };
433
+ class RunningQuery {
434
+ constructor(active, context) {
435
+ this.active = active;
436
+ this.context = context;
437
+ this.time = Date.now();
438
+ this.updates = [];
439
+ // Note that 'undefined' means 'not done yet', whereas 'null' means
440
+ // 'query returned null'.
441
+ this.done = undefined;
442
+ }
443
+ }
444
+ const DebounceTime = 50,
445
+ MaxUpdateCount = 50,
446
+ MinAbortTime = 1000;
447
+ const completionPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {
448
+ constructor(view) {
449
+ this.view = view;
450
+ this.debounceUpdate = -1;
451
+ this.running = [];
452
+ this.debounceAccept = -1;
453
+ this.composing = 0 /* CompositionState.None */;
454
+ for (let active of view.state.field(completionState).active) if (active.state == 1 /* State.Pending */) this.startQuery(active);
455
+ }
456
+ update(update) {
457
+ let cState = update.state.field(completionState);
458
+ if (!update.selectionSet && !update.docChanged && update.startState.field(completionState) == cState) return;
459
+ let doesReset = update.transactions.some(tr => {
460
+ return (tr.selection || tr.docChanged) && !getUserEvent(tr);
461
+ });
462
+ for (let i = 0; i < this.running.length; i++) {
463
+ let query = this.running[i];
464
+ if (doesReset || query.updates.length + update.transactions.length > MaxUpdateCount && Date.now() - query.time > MinAbortTime) {
465
+ for (let handler of query.context.abortListeners) {
466
+ try {
467
+ handler();
468
+ } catch (e) {
469
+ logException(this.view.state, e);
470
+ }
471
+ }
472
+ query.context.abortListeners = null;
473
+ this.running.splice(i--, 1);
474
+ } else {
475
+ query.updates.push(...update.transactions);
476
+ }
477
+ }
478
+ if (this.debounceUpdate > -1) clearTimeout(this.debounceUpdate);
479
+ this.debounceUpdate = cState.active.some(a => a.state == 1 /* State.Pending */ && !this.running.some(q => q.active.source == a.source)) ? setTimeout(() => this.startUpdate(), DebounceTime) : -1;
480
+ if (this.composing != 0 /* CompositionState.None */) for (let tr of update.transactions) {
481
+ if (getUserEvent(tr) == "input") this.composing = 2 /* CompositionState.Changed */;else if (this.composing == 2 /* CompositionState.Changed */ && tr.selection) this.composing = 3 /* CompositionState.ChangedAndMoved */;
482
+ }
483
+ }
484
+
485
+ startUpdate() {
486
+ this.debounceUpdate = -1;
487
+ let {
488
+ state
489
+ } = this.view,
490
+ cState = state.field(completionState);
491
+ for (let active of cState.active) {
492
+ if (active.state == 1 /* State.Pending */ && !this.running.some(r => r.active.source == active.source)) this.startQuery(active);
493
+ }
494
+ }
495
+ startQuery(active) {
496
+ let {
497
+ state
498
+ } = this.view,
499
+ pos = cur(state);
500
+ let context = new CompletionContext(state, pos, active.explicitPos == pos);
501
+ let pending = new RunningQuery(active, context);
502
+ this.running.push(pending);
503
+ Promise.resolve(active.source(context)).then(result => {
504
+ if (!pending.context.aborted) {
505
+ pending.done = result || null;
506
+ this.scheduleAccept();
507
+ }
508
+ }, err => {
509
+ this.view.dispatch({
510
+ effects: closeCompletionEffect.of(null)
511
+ });
512
+ logException(this.view.state, err);
513
+ });
514
+ }
515
+ scheduleAccept() {
516
+ if (this.running.every(q => q.done !== undefined)) this.accept();else if (this.debounceAccept < 0) this.debounceAccept = setTimeout(() => this.accept(), DebounceTime);
517
+ }
518
+ // For each finished query in this.running, try to create a result
519
+ // or, if appropriate, restart the query.
520
+ accept() {
521
+ var _a;
522
+ if (this.debounceAccept > -1) clearTimeout(this.debounceAccept);
523
+ this.debounceAccept = -1;
524
+ let updated = [];
525
+ let conf = this.view.state.facet(completionConfig);
526
+ for (let i = 0; i < this.running.length; i++) {
527
+ let query = this.running[i];
528
+ if (query.done === undefined) continue;
529
+ this.running.splice(i--, 1);
530
+ if (query.done) {
531
+ let active = new ActiveResult(query.active.source, query.active.explicitPos, query.done, query.done.from, (_a = query.done.to) !== null && _a !== void 0 ? _a : cur(query.updates.length ? query.updates[0].startState : this.view.state));
532
+ // Replay the transactions that happened since the start of
533
+ // the request and see if that preserves the result
534
+ for (let tr of query.updates) active = active.update(tr, conf);
535
+ if (active.hasResult()) {
536
+ updated.push(active);
537
+ continue;
538
+ }
539
+ }
540
+ let current = this.view.state.field(completionState).active.find(a => a.source == query.active.source);
541
+ if (current && current.state == 1 /* State.Pending */) {
542
+ if (query.done == null) {
543
+ // Explicitly failed. Should clear the pending status if it
544
+ // hasn't been re-set in the meantime.
545
+ let active = new ActiveSource(query.active.source, 0 /* State.Inactive */);
546
+ for (let tr of query.updates) active = active.update(tr, conf);
547
+ if (active.state != 1 /* State.Pending */) updated.push(active);
548
+ } else {
549
+ // Cleared by subsequent transactions. Restart.
550
+ this.startQuery(current);
551
+ }
552
+ }
553
+ }
554
+ if (updated.length) this.view.dispatch({
555
+ effects: setActiveEffect.of(updated)
556
+ });
557
+ }
558
+ }, {
559
+ eventHandlers: {
560
+ blur(event) {
561
+ let state = this.view.state.field(completionState, false);
562
+ if (state && state.tooltip && this.view.state.facet(completionConfig).closeOnBlur) {
563
+ let dialog = state.open && getTooltip(this.view, state.open.tooltip);
564
+ if (!dialog || !dialog.dom.contains(event.relatedTarget)) this.view.dispatch({
565
+ effects: closeCompletionEffect.of(null)
566
+ });
567
+ }
568
+ },
569
+ compositionstart() {
570
+ this.composing = 1 /* CompositionState.Started */;
571
+ },
572
+
573
+ compositionend() {
574
+ if (this.composing == 3 /* CompositionState.ChangedAndMoved */) {
575
+ // Safari fires compositionend events synchronously, possibly
576
+ // from inside an update, so dispatch asynchronously to avoid reentrancy
577
+ setTimeout(() => this.view.dispatch({
578
+ effects: startCompletionEffect.of(false)
579
+ }), 20);
580
+ }
581
+ this.composing = 0 /* CompositionState.None */;
582
+ }
583
+ }
584
+ });
585
+
586
+ function applyCompletion(view, option) {
587
+ const apply = option.completion.apply || option.completion.label;
588
+ let result = view.state.field(completionState).active.find(a => a.source == option.source);
589
+ if (!(result instanceof ActiveResult)) return false;
590
+ if (typeof apply == "string") view.dispatch(Object.assign(Object.assign({}, insertCompletionText(view.state, apply, result.from, result.to)), {
591
+ annotations: pickedCompletion.of(option.completion)
592
+ }));else apply(view, option.completion, result.from, result.to);
593
+ return true;
594
+ }
353
595
  function optionContent(config) {
354
596
  let content = config.addToOptions.slice();
355
597
  if (config.icons) content.push({
@@ -419,9 +661,9 @@ class CompletionTooltip {
419
661
  this.view = view;
420
662
  this.stateField = stateField;
421
663
  this.info = null;
422
- this.placeInfo = {
664
+ this.placeInfoReq = {
423
665
  read: () => this.measureInfo(),
424
- write: pos => this.positionInfo(pos),
666
+ write: pos => this.placeInfo(pos),
425
667
  key: this
426
668
  };
427
669
  this.space = null;
@@ -448,9 +690,15 @@ class CompletionTooltip {
448
690
  }
449
691
  }
450
692
  });
693
+ this.dom.addEventListener("focusout", e => {
694
+ let state = view.state.field(this.stateField, false);
695
+ if (state && state.tooltip && view.state.facet(completionConfig).closeOnBlur && e.relatedTarget != view.contentDOM) view.dispatch({
696
+ effects: closeCompletionEffect.of(null)
697
+ });
698
+ });
451
699
  this.list = this.dom.appendChild(this.createListBox(options, cState.id, this.range));
452
700
  this.list.addEventListener("scroll", () => {
453
- if (this.info) this.view.requestMeasure(this.placeInfo);
701
+ if (this.info) this.view.requestMeasure(this.placeInfoReq);
454
702
  });
455
703
  }
456
704
  mount() {
@@ -476,7 +724,7 @@ class CompletionTooltip {
476
724
  }
477
725
  positioned(space) {
478
726
  this.space = space;
479
- if (this.info) this.view.requestMeasure(this.placeInfo);
727
+ if (this.info) this.view.requestMeasure(this.placeInfoReq);
480
728
  }
481
729
  updateSel() {
482
730
  let cState = this.view.state.field(this.stateField),
@@ -486,7 +734,7 @@ class CompletionTooltip {
486
734
  this.list.remove();
487
735
  this.list = this.dom.appendChild(this.createListBox(open.options, cState.id, this.range));
488
736
  this.list.addEventListener("scroll", () => {
489
- if (this.info) this.view.requestMeasure(this.placeInfo);
737
+ if (this.info) this.view.requestMeasure(this.placeInfoReq);
490
738
  });
491
739
  }
492
740
  if (this.updateSelectedOption(open.selected)) {
@@ -517,12 +765,14 @@ class CompletionTooltip {
517
765
  dom.className = "cm-tooltip cm-completionInfo";
518
766
  dom.appendChild(content);
519
767
  this.dom.appendChild(dom);
520
- this.view.requestMeasure(this.placeInfo);
768
+ this.view.requestMeasure(this.placeInfoReq);
521
769
  }
522
770
  updateSelectedOption(selected) {
523
771
  let set = null;
524
772
  for (let opt = this.list.firstChild, i = this.range.from; opt; opt = opt.nextSibling, i++) {
525
- if (i == selected) {
773
+ if (opt.nodeName != "LI" || !opt.id) {
774
+ i--; // A section header
775
+ } else if (i == selected) {
526
776
  if (!opt.hasAttribute("aria-selected")) {
527
777
  opt.setAttribute("aria-selected", "true");
528
778
  set = opt;
@@ -551,44 +801,15 @@ class CompletionTooltip {
551
801
  };
552
802
  }
553
803
  if (selRect.top > Math.min(space.bottom, listRect.bottom) - 10 || selRect.bottom < Math.max(space.top, listRect.top) + 10) return null;
554
- let rtl = this.view.textDirection == Direction.RTL,
555
- left = rtl,
556
- narrow = false,
557
- maxWidth;
558
- let top = "",
559
- bottom = "";
560
- let spaceLeft = listRect.left - space.left,
561
- spaceRight = space.right - listRect.right;
562
- if (left && spaceLeft < Math.min(infoRect.width, spaceRight)) left = false;else if (!left && spaceRight < Math.min(infoRect.width, spaceLeft)) left = true;
563
- if (infoRect.width <= (left ? spaceLeft : spaceRight)) {
564
- top = Math.max(space.top, Math.min(selRect.top, space.bottom - infoRect.height)) - listRect.top + "px";
565
- maxWidth = Math.min(400 /* Info.Width */, left ? spaceLeft : spaceRight) + "px";
566
- } else {
567
- narrow = true;
568
- maxWidth = Math.min(400 /* Info.Width */, (rtl ? listRect.right : space.right - listRect.left) - 30 /* Info.Margin */) + "px";
569
- let spaceBelow = space.bottom - listRect.bottom;
570
- if (spaceBelow >= infoRect.height || spaceBelow > listRect.top)
571
- // Below the completion
572
- top = selRect.bottom - listRect.top + "px";else
573
- // Above it
574
- bottom = listRect.bottom - selRect.top + "px";
575
- }
576
- return {
577
- top,
578
- bottom,
579
- maxWidth,
580
- class: narrow ? rtl ? "left-narrow" : "right-narrow" : left ? "left" : "right"
581
- };
804
+ return this.view.state.facet(completionConfig).positionInfo(this.view, listRect, selRect, infoRect, space);
582
805
  }
583
- positionInfo(pos) {
806
+ placeInfo(pos) {
584
807
  if (this.info) {
585
808
  if (pos) {
586
- this.info.style.top = pos.top;
587
- this.info.style.bottom = pos.bottom;
588
- this.info.style.maxWidth = pos.maxWidth;
589
- this.info.className = "cm-tooltip cm-completionInfo cm-completionInfo-" + pos.class;
809
+ if (pos.style) this.info.style.cssText = pos.style;
810
+ this.info.className = "cm-tooltip cm-completionInfo " + (pos.class || "");
590
811
  } else {
591
- this.info.style.top = "-1e6px";
812
+ this.info.style.cssText = "top: -1e6px";
592
813
  }
593
814
  }
594
815
  }
@@ -598,11 +819,27 @@ class CompletionTooltip {
598
819
  ul.setAttribute("role", "listbox");
599
820
  ul.setAttribute("aria-expanded", "true");
600
821
  ul.setAttribute("aria-label", this.view.state.phrase("Completions"));
822
+ let curSection = null;
601
823
  for (let i = range.from; i < range.to; i++) {
602
824
  let {
603
- completion,
604
- match
605
- } = options[i];
825
+ completion,
826
+ match
827
+ } = options[i],
828
+ {
829
+ section
830
+ } = completion;
831
+ if (section) {
832
+ let name = typeof section == "string" ? section : section.name;
833
+ if (name != curSection && (i > range.from || range.from == 0)) {
834
+ curSection = name;
835
+ if (typeof section != "string" && section.header) {
836
+ ul.appendChild(section.header(section));
837
+ } else {
838
+ let header = ul.appendChild(document.createElement("completion-section"));
839
+ header.textContent = name;
840
+ }
841
+ }
842
+ }
606
843
  const li = ul.appendChild(document.createElement("li"));
607
844
  li.id = id + "-" + i;
608
845
  li.setAttribute("role", "option");
@@ -635,29 +872,59 @@ function score(option) {
635
872
  return (option.boost || 0) * 100 + (option.apply ? 10 : 0) + (option.info ? 5 : 0) + (option.type ? 1 : 0);
636
873
  }
637
874
  function sortOptions(active, state) {
638
- let options = [],
639
- i = 0;
875
+ let options = [];
876
+ let sections = null;
877
+ let addOption = option => {
878
+ options.push(option);
879
+ let {
880
+ section
881
+ } = option.completion;
882
+ if (section) {
883
+ if (!sections) sections = [];
884
+ let name = typeof section == "string" ? section : section.name;
885
+ if (!sections.some(s => s.name == name)) sections.push(typeof section == "string" ? {
886
+ name
887
+ } : section);
888
+ }
889
+ };
640
890
  for (let a of active) if (a.hasResult()) {
641
891
  if (a.result.filter === false) {
642
892
  let getMatch = a.result.getMatch;
643
893
  for (let option of a.result.options) {
644
- let match = [1e9 - i++];
894
+ let match = [1e9 - options.length];
645
895
  if (getMatch) for (let n of getMatch(option)) match.push(n);
646
- options.push(new Option(option, a, match));
896
+ addOption(new Option(option, a.source, match, match[0]));
647
897
  }
648
898
  } else {
649
899
  let matcher = new FuzzyMatcher(state.sliceDoc(a.from, a.to)),
650
900
  match;
651
901
  for (let option of a.result.options) if (match = matcher.match(option.label)) {
652
- if (option.boost != null) match[0] += option.boost;
653
- options.push(new Option(option, a, match));
902
+ addOption(new Option(option, a.source, match, match[0] + (option.boost || 0)));
654
903
  }
655
904
  }
656
905
  }
906
+ if (sections) {
907
+ let sectionOrder = Object.create(null),
908
+ pos = 0;
909
+ let cmp = (a, b) => {
910
+ var _a, _b;
911
+ return ((_a = a.rank) !== null && _a !== void 0 ? _a : 1e9) - ((_b = b.rank) !== null && _b !== void 0 ? _b : 1e9) || (a.name < b.name ? -1 : 1);
912
+ };
913
+ for (let s of sections.sort(cmp)) {
914
+ pos -= 1e5;
915
+ sectionOrder[s.name] = pos;
916
+ }
917
+ for (let option of options) {
918
+ let {
919
+ section
920
+ } = option.completion;
921
+ if (section) option.score += sectionOrder[typeof section == "string" ? section : section.name];
922
+ }
923
+ }
657
924
  let result = [],
658
925
  prev = null;
659
926
  let compare = state.facet(completionConfig).compareCompletions;
660
- for (let opt of options.sort((a, b) => b.match[0] - a.match[0] || compare(a.completion, b.completion))) {
927
+ for (let opt of options.sort((a, b) => b.score - a.score || compare(a.completion, b.completion))) {
661
928
  if (!prev || prev.label != opt.completion.label || prev.detail != opt.completion.detail || prev.type != null && opt.completion.type != null && prev.type != opt.completion.type || prev.apply != opt.completion.apply) result.push(opt);else if (score(opt.completion) > score(prev)) result[result.length - 1] = opt;
662
929
  prev = opt.completion;
663
930
  }
@@ -762,291 +1029,84 @@ function getUserEvent(tr) {
762
1029
  return tr.isUserEvent("input.type") ? "input" : tr.isUserEvent("delete.backward") ? "delete" : null;
763
1030
  }
764
1031
  class ActiveSource {
765
- constructor(source, state) {
766
- let explicitPos = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
767
- this.source = source;
768
- this.state = state;
769
- this.explicitPos = explicitPos;
770
- }
771
- hasResult() {
772
- return false;
773
- }
774
- update(tr, conf) {
775
- let event = getUserEvent(tr),
776
- value = this;
777
- if (event) value = value.handleUserEvent(tr, event, conf);else if (tr.docChanged) value = value.handleChange(tr);else if (tr.selection && value.state != 0 /* State.Inactive */) value = new ActiveSource(value.source, 0 /* State.Inactive */);
778
- for (let effect of tr.effects) {
779
- if (effect.is(startCompletionEffect)) value = new ActiveSource(value.source, 1 /* State.Pending */, effect.value ? cur(tr.state) : -1);else if (effect.is(closeCompletionEffect)) value = new ActiveSource(value.source, 0 /* State.Inactive */);else if (effect.is(setActiveEffect)) for (let active of effect.value) if (active.source == value.source) value = active;
780
- }
781
- return value;
782
- }
783
- handleUserEvent(tr, type, conf) {
784
- return type == "delete" || !conf.activateOnTyping ? this.map(tr.changes) : new ActiveSource(this.source, 1 /* State.Pending */);
785
- }
786
-
787
- handleChange(tr) {
788
- return tr.changes.touchesRange(cur(tr.startState)) ? new ActiveSource(this.source, 0 /* State.Inactive */) : this.map(tr.changes);
789
- }
790
- map(changes) {
791
- return changes.empty || this.explicitPos < 0 ? this : new ActiveSource(this.source, this.state, changes.mapPos(this.explicitPos));
792
- }
793
- }
794
- class ActiveResult extends ActiveSource {
795
- constructor(source, explicitPos, result, from, to) {
796
- super(source, 2 /* State.Result */, explicitPos);
797
- this.result = result;
798
- this.from = from;
799
- this.to = to;
800
- }
801
- hasResult() {
802
- return true;
803
- }
804
- handleUserEvent(tr, type, conf) {
805
- var _a;
806
- let from = tr.changes.mapPos(this.from),
807
- to = tr.changes.mapPos(this.to, 1);
808
- let pos = cur(tr.state);
809
- if ((this.explicitPos < 0 ? pos <= from : pos < this.from) || pos > to || type == "delete" && cur(tr.startState) == this.from) return new ActiveSource(this.source, type == "input" && conf.activateOnTyping ? 1 /* State.Pending */ : 0 /* State.Inactive */);
810
- let explicitPos = this.explicitPos < 0 ? -1 : tr.changes.mapPos(this.explicitPos),
811
- updated;
812
- if (checkValid(this.result.validFor, tr.state, from, to)) return new ActiveResult(this.source, explicitPos, this.result, from, to);
813
- if (this.result.update && (updated = this.result.update(this.result, from, to, new CompletionContext(tr.state, pos, explicitPos >= 0)))) return new ActiveResult(this.source, explicitPos, updated, updated.from, (_a = updated.to) !== null && _a !== void 0 ? _a : cur(tr.state));
814
- return new ActiveSource(this.source, 1 /* State.Pending */, explicitPos);
815
- }
816
- handleChange(tr) {
817
- return tr.changes.touchesRange(this.from, this.to) ? new ActiveSource(this.source, 0 /* State.Inactive */) : this.map(tr.changes);
818
- }
819
- map(mapping) {
820
- return mapping.empty ? this : new ActiveResult(this.source, this.explicitPos < 0 ? -1 : mapping.mapPos(this.explicitPos), this.result, mapping.mapPos(this.from), mapping.mapPos(this.to, 1));
821
- }
822
- }
823
- function checkValid(validFor, state, from, to) {
824
- if (!validFor) return false;
825
- let text = state.sliceDoc(from, to);
826
- return typeof validFor == "function" ? validFor(text, from, to, state) : ensureAnchor(validFor, true).test(text);
827
- }
828
- const startCompletionEffect = /*@__PURE__*/StateEffect.define();
829
- const closeCompletionEffect = /*@__PURE__*/StateEffect.define();
830
- const setActiveEffect = /*@__PURE__*/StateEffect.define({
831
- map(sources, mapping) {
832
- return sources.map(s => s.map(mapping));
833
- }
834
- });
835
- const setSelectedEffect = /*@__PURE__*/StateEffect.define();
836
- const completionState = /*@__PURE__*/StateField.define({
837
- create() {
838
- return CompletionState.start();
839
- },
840
- update(value, tr) {
841
- return value.update(tr);
842
- },
843
- provide: f => [showTooltip.from(f, val => val.tooltip), EditorView.contentAttributes.from(f, state => state.attrs)]
844
- });
845
-
846
- /**
847
- Returns a command that moves the completion selection forward or
848
- backward by the given amount.
849
- */
850
- function moveCompletionSelection(forward) {
851
- let by = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "option";
852
- return view => {
853
- let cState = view.state.field(completionState, false);
854
- if (!cState || !cState.open || cState.open.disabled || Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay) return false;
855
- let step = 1,
856
- tooltip;
857
- if (by == "page" && (tooltip = getTooltip(view, cState.open.tooltip))) step = Math.max(2, Math.floor(tooltip.dom.offsetHeight / tooltip.dom.querySelector("li").offsetHeight) - 1);
858
- let {
859
- length
860
- } = cState.open.options;
861
- let selected = cState.open.selected > -1 ? cState.open.selected + step * (forward ? 1 : -1) : forward ? 0 : length - 1;
862
- if (selected < 0) selected = by == "page" ? 0 : length - 1;else if (selected >= length) selected = by == "page" ? length - 1 : 0;
863
- view.dispatch({
864
- effects: setSelectedEffect.of(selected)
865
- });
866
- return true;
867
- };
868
- }
869
- /**
870
- Accept the current completion.
871
- */
872
- const acceptCompletion = view => {
873
- let cState = view.state.field(completionState, false);
874
- if (view.state.readOnly || !cState || !cState.open || cState.open.selected < 0 || Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay) return false;
875
- if (!cState.open.disabled) applyCompletion(view, cState.open.options[cState.open.selected]);
876
- return true;
877
- };
878
- /**
879
- Explicitly start autocompletion.
880
- */
881
- const startCompletion = view => {
882
- let cState = view.state.field(completionState, false);
883
- if (!cState) return false;
884
- view.dispatch({
885
- effects: startCompletionEffect.of(true)
886
- });
887
- return true;
888
- };
889
- /**
890
- Close the currently active completion.
891
- */
892
- const closeCompletion = view => {
893
- let cState = view.state.field(completionState, false);
894
- if (!cState || !cState.active.some(a => a.state != 0 /* State.Inactive */)) return false;
895
- view.dispatch({
896
- effects: closeCompletionEffect.of(null)
897
- });
898
- return true;
899
- };
900
- class RunningQuery {
901
- constructor(active, context) {
902
- this.active = active;
903
- this.context = context;
904
- this.time = Date.now();
905
- this.updates = [];
906
- // Note that 'undefined' means 'not done yet', whereas 'null' means
907
- // 'query returned null'.
908
- this.done = undefined;
909
- }
910
- }
911
- const DebounceTime = 50,
912
- MaxUpdateCount = 50,
913
- MinAbortTime = 1000;
914
- const completionPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {
915
- constructor(view) {
916
- this.view = view;
917
- this.debounceUpdate = -1;
918
- this.running = [];
919
- this.debounceAccept = -1;
920
- this.composing = 0 /* CompositionState.None */;
921
- for (let active of view.state.field(completionState).active) if (active.state == 1 /* State.Pending */) this.startQuery(active);
922
- }
923
- update(update) {
924
- let cState = update.state.field(completionState);
925
- if (!update.selectionSet && !update.docChanged && update.startState.field(completionState) == cState) return;
926
- let doesReset = update.transactions.some(tr => {
927
- return (tr.selection || tr.docChanged) && !getUserEvent(tr);
928
- });
929
- for (let i = 0; i < this.running.length; i++) {
930
- let query = this.running[i];
931
- if (doesReset || query.updates.length + update.transactions.length > MaxUpdateCount && Date.now() - query.time > MinAbortTime) {
932
- for (let handler of query.context.abortListeners) {
933
- try {
934
- handler();
935
- } catch (e) {
936
- logException(this.view.state, e);
937
- }
938
- }
939
- query.context.abortListeners = null;
940
- this.running.splice(i--, 1);
941
- } else {
942
- query.updates.push(...update.transactions);
943
- }
944
- }
945
- if (this.debounceUpdate > -1) clearTimeout(this.debounceUpdate);
946
- this.debounceUpdate = cState.active.some(a => a.state == 1 /* State.Pending */ && !this.running.some(q => q.active.source == a.source)) ? setTimeout(() => this.startUpdate(), DebounceTime) : -1;
947
- if (this.composing != 0 /* CompositionState.None */) for (let tr of update.transactions) {
948
- if (getUserEvent(tr) == "input") this.composing = 2 /* CompositionState.Changed */;else if (this.composing == 2 /* CompositionState.Changed */ && tr.selection) this.composing = 3 /* CompositionState.ChangedAndMoved */;
949
- }
950
- }
951
-
952
- startUpdate() {
953
- this.debounceUpdate = -1;
954
- let {
955
- state
956
- } = this.view,
957
- cState = state.field(completionState);
958
- for (let active of cState.active) {
959
- if (active.state == 1 /* State.Pending */ && !this.running.some(r => r.active.source == active.source)) this.startQuery(active);
960
- }
961
- }
962
- startQuery(active) {
963
- let {
964
- state
965
- } = this.view,
966
- pos = cur(state);
967
- let context = new CompletionContext(state, pos, active.explicitPos == pos);
968
- let pending = new RunningQuery(active, context);
969
- this.running.push(pending);
970
- Promise.resolve(active.source(context)).then(result => {
971
- if (!pending.context.aborted) {
972
- pending.done = result || null;
973
- this.scheduleAccept();
974
- }
975
- }, err => {
976
- this.view.dispatch({
977
- effects: closeCompletionEffect.of(null)
978
- });
979
- logException(this.view.state, err);
980
- });
1032
+ constructor(source, state) {
1033
+ let explicitPos = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
1034
+ this.source = source;
1035
+ this.state = state;
1036
+ this.explicitPos = explicitPos;
981
1037
  }
982
- scheduleAccept() {
983
- if (this.running.every(q => q.done !== undefined)) this.accept();else if (this.debounceAccept < 0) this.debounceAccept = setTimeout(() => this.accept(), DebounceTime);
1038
+ hasResult() {
1039
+ return false;
984
1040
  }
985
- // For each finished query in this.running, try to create a result
986
- // or, if appropriate, restart the query.
987
- accept() {
988
- var _a;
989
- if (this.debounceAccept > -1) clearTimeout(this.debounceAccept);
990
- this.debounceAccept = -1;
991
- let updated = [];
992
- let conf = this.view.state.facet(completionConfig);
993
- for (let i = 0; i < this.running.length; i++) {
994
- let query = this.running[i];
995
- if (query.done === undefined) continue;
996
- this.running.splice(i--, 1);
997
- if (query.done) {
998
- let active = new ActiveResult(query.active.source, query.active.explicitPos, query.done, query.done.from, (_a = query.done.to) !== null && _a !== void 0 ? _a : cur(query.updates.length ? query.updates[0].startState : this.view.state));
999
- // Replay the transactions that happened since the start of
1000
- // the request and see if that preserves the result
1001
- for (let tr of query.updates) active = active.update(tr, conf);
1002
- if (active.hasResult()) {
1003
- updated.push(active);
1004
- continue;
1005
- }
1006
- }
1007
- let current = this.view.state.field(completionState).active.find(a => a.source == query.active.source);
1008
- if (current && current.state == 1 /* State.Pending */) {
1009
- if (query.done == null) {
1010
- // Explicitly failed. Should clear the pending status if it
1011
- // hasn't been re-set in the meantime.
1012
- let active = new ActiveSource(query.active.source, 0 /* State.Inactive */);
1013
- for (let tr of query.updates) active = active.update(tr, conf);
1014
- if (active.state != 1 /* State.Pending */) updated.push(active);
1015
- } else {
1016
- // Cleared by subsequent transactions. Restart.
1017
- this.startQuery(current);
1018
- }
1019
- }
1041
+ update(tr, conf) {
1042
+ let event = getUserEvent(tr),
1043
+ value = this;
1044
+ if (event) value = value.handleUserEvent(tr, event, conf);else if (tr.docChanged) value = value.handleChange(tr);else if (tr.selection && value.state != 0 /* State.Inactive */) value = new ActiveSource(value.source, 0 /* State.Inactive */);
1045
+ for (let effect of tr.effects) {
1046
+ if (effect.is(startCompletionEffect)) value = new ActiveSource(value.source, 1 /* State.Pending */, effect.value ? cur(tr.state) : -1);else if (effect.is(closeCompletionEffect)) value = new ActiveSource(value.source, 0 /* State.Inactive */);else if (effect.is(setActiveEffect)) for (let active of effect.value) if (active.source == value.source) value = active;
1020
1047
  }
1021
- if (updated.length) this.view.dispatch({
1022
- effects: setActiveEffect.of(updated)
1023
- });
1048
+ return value;
1049
+ }
1050
+ handleUserEvent(tr, type, conf) {
1051
+ return type == "delete" || !conf.activateOnTyping ? this.map(tr.changes) : new ActiveSource(this.source, 1 /* State.Pending */);
1024
1052
  }
1025
- }, {
1026
- eventHandlers: {
1027
- blur() {
1028
- let state = this.view.state.field(completionState, false);
1029
- if (state && state.tooltip && this.view.state.facet(completionConfig).closeOnBlur) this.view.dispatch({
1030
- effects: closeCompletionEffect.of(null)
1031
- });
1032
- },
1033
- compositionstart() {
1034
- this.composing = 1 /* CompositionState.Started */;
1035
- },
1036
1053
 
1037
- compositionend() {
1038
- if (this.composing == 3 /* CompositionState.ChangedAndMoved */) {
1039
- // Safari fires compositionend events synchronously, possibly
1040
- // from inside an update, so dispatch asynchronously to avoid reentrancy
1041
- setTimeout(() => this.view.dispatch({
1042
- effects: startCompletionEffect.of(false)
1043
- }), 20);
1044
- }
1045
- this.composing = 0 /* CompositionState.None */;
1046
- }
1054
+ handleChange(tr) {
1055
+ return tr.changes.touchesRange(cur(tr.startState)) ? new ActiveSource(this.source, 0 /* State.Inactive */) : this.map(tr.changes);
1056
+ }
1057
+ map(changes) {
1058
+ return changes.empty || this.explicitPos < 0 ? this : new ActiveSource(this.source, this.state, changes.mapPos(this.explicitPos));
1059
+ }
1060
+ }
1061
+ class ActiveResult extends ActiveSource {
1062
+ constructor(source, explicitPos, result, from, to) {
1063
+ super(source, 2 /* State.Result */, explicitPos);
1064
+ this.result = result;
1065
+ this.from = from;
1066
+ this.to = to;
1067
+ }
1068
+ hasResult() {
1069
+ return true;
1070
+ }
1071
+ handleUserEvent(tr, type, conf) {
1072
+ var _a;
1073
+ let from = tr.changes.mapPos(this.from),
1074
+ to = tr.changes.mapPos(this.to, 1);
1075
+ let pos = cur(tr.state);
1076
+ if ((this.explicitPos < 0 ? pos <= from : pos < this.from) || pos > to || type == "delete" && cur(tr.startState) == this.from) return new ActiveSource(this.source, type == "input" && conf.activateOnTyping ? 1 /* State.Pending */ : 0 /* State.Inactive */);
1077
+ let explicitPos = this.explicitPos < 0 ? -1 : tr.changes.mapPos(this.explicitPos),
1078
+ updated;
1079
+ if (checkValid(this.result.validFor, tr.state, from, to)) return new ActiveResult(this.source, explicitPos, this.result, from, to);
1080
+ if (this.result.update && (updated = this.result.update(this.result, from, to, new CompletionContext(tr.state, pos, explicitPos >= 0)))) return new ActiveResult(this.source, explicitPos, updated, updated.from, (_a = updated.to) !== null && _a !== void 0 ? _a : cur(tr.state));
1081
+ return new ActiveSource(this.source, 1 /* State.Pending */, explicitPos);
1082
+ }
1083
+ handleChange(tr) {
1084
+ return tr.changes.touchesRange(this.from, this.to) ? new ActiveSource(this.source, 0 /* State.Inactive */) : this.map(tr.changes);
1085
+ }
1086
+ map(mapping) {
1087
+ return mapping.empty ? this : new ActiveResult(this.source, this.explicitPos < 0 ? -1 : mapping.mapPos(this.explicitPos), this.result, mapping.mapPos(this.from), mapping.mapPos(this.to, 1));
1088
+ }
1089
+ }
1090
+ function checkValid(validFor, state, from, to) {
1091
+ if (!validFor) return false;
1092
+ let text = state.sliceDoc(from, to);
1093
+ return typeof validFor == "function" ? validFor(text, from, to, state) : ensureAnchor(validFor, true).test(text);
1094
+ }
1095
+ const setActiveEffect = /*@__PURE__*/StateEffect.define({
1096
+ map(sources, mapping) {
1097
+ return sources.map(s => s.map(mapping));
1047
1098
  }
1048
1099
  });
1049
-
1100
+ const setSelectedEffect = /*@__PURE__*/StateEffect.define();
1101
+ const completionState = /*@__PURE__*/StateField.define({
1102
+ create() {
1103
+ return CompletionState.start();
1104
+ },
1105
+ update(value, tr) {
1106
+ return value.update(tr);
1107
+ },
1108
+ provide: f => [showTooltip.from(f, val => val.tooltip), EditorView.contentAttributes.from(f, state => state.attrs)]
1109
+ });
1050
1110
  const baseTheme = /*@__PURE__*/EditorView.baseTheme({
1051
1111
  ".cm-tooltip.cm-tooltip-autocomplete": {
1052
1112
  "& > ul": {
@@ -1061,12 +1121,20 @@ const baseTheme = /*@__PURE__*/EditorView.baseTheme({
1061
1121
  listStyle: "none",
1062
1122
  margin: 0,
1063
1123
  padding: 0,
1124
+ "& > li, & > completion-section": {
1125
+ padding: "1px 3px",
1126
+ lineHeight: 1.2
1127
+ },
1064
1128
  "& > li": {
1065
1129
  overflowX: "hidden",
1066
1130
  textOverflow: "ellipsis",
1067
- cursor: "pointer",
1068
- padding: "1px 3px",
1069
- lineHeight: 1.2
1131
+ cursor: "pointer"
1132
+ },
1133
+ "& > completion-section": {
1134
+ display: "list-item",
1135
+ borderBottom: "1px solid silver",
1136
+ paddingLeft: "0.5em",
1137
+ opacity: 0.7
1070
1138
  }
1071
1139
  }
1072
1140
  },
@@ -1385,7 +1453,7 @@ function snippet(template) {
1385
1453
  insert: Text.of(text)
1386
1454
  },
1387
1455
  scrollIntoView: true,
1388
- annotations: pickedCompletion.of(completion)
1456
+ annotations: completion ? pickedCompletion.of(completion) : undefined
1389
1457
  };
1390
1458
  if (ranges.length) spec.selection = fieldSelection(ranges, 0);
1391
1459
  if (ranges.length > 1) {
@@ -1495,11 +1563,6 @@ const closeBracketEffect = /*@__PURE__*/StateEffect.define({
1495
1563
  return mapped == null ? undefined : mapped;
1496
1564
  }
1497
1565
  });
1498
- const skipBracketEffect = /*@__PURE__*/StateEffect.define({
1499
- map(value, mapping) {
1500
- return mapping.mapPos(value);
1501
- }
1502
- });
1503
1566
  const closedBracket = /*@__PURE__*/new class extends RangeValue {}();
1504
1567
  closedBracket.startSide = 1;
1505
1568
  closedBracket.endSide = -1;
@@ -1514,13 +1577,9 @@ const bracketState = /*@__PURE__*/StateField.define({
1514
1577
  if (lineStart != tr.changes.mapPos(prevLineStart, -1)) value = RangeSet.empty;
1515
1578
  }
1516
1579
  value = value.map(tr.changes);
1517
- for (let effect of tr.effects) {
1518
- if (effect.is(closeBracketEffect)) value = value.update({
1519
- add: [closedBracket.range(effect.value, effect.value + 1)]
1520
- });else if (effect.is(skipBracketEffect)) value = value.update({
1521
- filter: from => from != effect.value
1522
- });
1523
- }
1580
+ for (let effect of tr.effects) if (effect.is(closeBracketEffect)) value = value.update({
1581
+ add: [closedBracket.range(effect.value, effect.value + 1)]
1582
+ });
1524
1583
  return value;
1525
1584
  }
1526
1585
  });
@@ -1666,19 +1725,22 @@ function handleOpen(state, open, close, closeBefore) {
1666
1725
  }
1667
1726
  function handleClose(state, _open, close) {
1668
1727
  let dont = null,
1669
- moved = state.selection.ranges.map(range => {
1670
- if (range.empty && nextChar(state.doc, range.head) == close) return EditorSelection.cursor(range.head + close.length);
1671
- return dont = range;
1728
+ changes = state.changeByRange(range => {
1729
+ if (range.empty && nextChar(state.doc, range.head) == close) return {
1730
+ changes: {
1731
+ from: range.head,
1732
+ to: range.head + close.length,
1733
+ insert: close
1734
+ },
1735
+ range: EditorSelection.cursor(range.head + close.length)
1736
+ };
1737
+ return dont = {
1738
+ range
1739
+ };
1672
1740
  });
1673
- return dont ? null : state.update({
1674
- selection: EditorSelection.create(moved, state.selection.mainIndex),
1741
+ return dont ? null : state.update(changes, {
1675
1742
  scrollIntoView: true,
1676
- effects: state.selection.ranges.map(_ref4 => {
1677
- let {
1678
- from
1679
- } = _ref4;
1680
- return skipBracketEffect.of(from);
1681
- })
1743
+ userEvent: "input.type"
1682
1744
  });
1683
1745
  }
1684
1746
  // Handles cases where the open and close token are the same, and
@@ -1702,7 +1764,7 @@ function handleSame(state, token, allowTriple, config) {
1702
1764
  next = nextChar(state.doc, pos),
1703
1765
  start;
1704
1766
  if (next == token) {
1705
- if (nodeStart$1(state, pos)) {
1767
+ if (nodeStart(state, pos)) {
1706
1768
  return {
1707
1769
  changes: {
1708
1770
  insert: token + token,
@@ -1713,12 +1775,17 @@ function handleSame(state, token, allowTriple, config) {
1713
1775
  };
1714
1776
  } else if (closedBracketAt(state, pos)) {
1715
1777
  let isTriple = allowTriple && state.sliceDoc(pos, pos + token.length * 3) == token + token + token;
1778
+ let content = isTriple ? token + token + token : token;
1716
1779
  return {
1717
- range: EditorSelection.cursor(pos + token.length * (isTriple ? 3 : 1)),
1718
- effects: skipBracketEffect.of(pos)
1780
+ changes: {
1781
+ from: pos,
1782
+ to: pos + content.length,
1783
+ insert: content
1784
+ },
1785
+ range: EditorSelection.cursor(pos + content.length)
1719
1786
  };
1720
1787
  }
1721
- } else if (allowTriple && state.sliceDoc(pos - 2 * token.length, pos) == token + token && (start = canStartStringAt(state, pos - 2 * token.length, stringPrefixes)) > -1 && nodeStart$1(state, start)) {
1788
+ } else if (allowTriple && state.sliceDoc(pos - 2 * token.length, pos) == token + token && (start = canStartStringAt(state, pos - 2 * token.length, stringPrefixes)) > -1 && nodeStart(state, start)) {
1722
1789
  return {
1723
1790
  changes: {
1724
1791
  insert: token + token + token + token,
@@ -1746,7 +1813,7 @@ function handleSame(state, token, allowTriple, config) {
1746
1813
  userEvent: "input.type"
1747
1814
  });
1748
1815
  }
1749
- function nodeStart$1(state, pos) {
1816
+ function nodeStart(state, pos) {
1750
1817
  let tree = syntaxTree(state).resolveInner(pos + 1);
1751
1818
  return tree.parent && tree.from == pos;
1752
1819
  }
@@ -2559,19 +2626,19 @@ class LocalTokenGroup {
2559
2626
  }
2560
2627
  token(input, stack) {
2561
2628
  let start = input.pos,
2562
- cur;
2629
+ skipped = 0;
2563
2630
  for (;;) {
2564
- cur = input.pos;
2565
2631
  readToken(this.data, input, stack, 0, this.data, this.precTable);
2566
2632
  if (input.token.value > -1) break;
2567
2633
  if (this.elseToken == null) return;
2568
2634
  if (input.next < 0) break;
2569
2635
  input.advance();
2570
- input.reset(cur + 1, input.token);
2636
+ input.reset(input.pos, input.token);
2637
+ skipped++;
2571
2638
  }
2572
- if (cur > start) {
2639
+ if (skipped) {
2573
2640
  input.reset(start, input.token);
2574
- input.acceptToken(this.elseToken, cur - start);
2641
+ input.acceptToken(this.elseToken, skipped);
2575
2642
  }
2576
2643
  }
2577
2644
  }
@@ -3453,7 +3520,7 @@ const scriptText = 54,
3453
3520
 
3454
3521
  /* Hand-written tokenizers for HTML. */
3455
3522
 
3456
- const selfClosers = {
3523
+ const selfClosers$1 = {
3457
3524
  area: true,
3458
3525
  base: true,
3459
3526
  br: true,
@@ -3644,7 +3711,7 @@ const tagStart = new ExternalTokenizer((input, stack) => {
3644
3711
  if (name == "script") return input.acceptToken(StartScriptTag);
3645
3712
  if (name == "style") return input.acceptToken(StartStyleTag);
3646
3713
  if (name == "textarea") return input.acceptToken(StartTextareaTag);
3647
- if (selfClosers.hasOwnProperty(name)) return input.acceptToken(StartSelfClosingTag);
3714
+ if (selfClosers$1.hasOwnProperty(name)) return input.acceptToken(StartSelfClosingTag);
3648
3715
  if (parent && closeOnOpen[parent] && closeOnOpen[parent][name]) input.acceptToken(missingCloseTag, -1);else input.acceptToken(StartTag);
3649
3716
  }
3650
3717
  }, {
@@ -3858,10 +3925,10 @@ function configureNesting() {
3858
3925
  }
3859
3926
 
3860
3927
  // This file was generated by lezer-generator. You probably shouldn't edit it.
3861
- const descendantOp = 94,
3928
+ const descendantOp = 95,
3862
3929
  Unit = 1,
3863
- callee = 95,
3864
- identifier$2 = 96,
3930
+ callee = 96,
3931
+ identifier$2 = 97,
3865
3932
  VariableName = 2;
3866
3933
 
3867
3934
  /* Hand-written tokenizers for CSS tokens that can't be
@@ -3927,6 +3994,7 @@ const cssHighlighting = styleTags({
3927
3994
  "from to selector": tags$1.keyword,
3928
3995
  NamespaceName: tags$1.namespace,
3929
3996
  KeyframeName: tags$1.labelName,
3997
+ KeyframeRangeName: tags$1.operatorKeyword,
3930
3998
  TagName: tags$1.tagName,
3931
3999
  ClassName: tags$1.className,
3932
4000
  PseudoClassName: tags$1.constant(tags$1.className),
@@ -3946,9 +4014,8 @@ const cssHighlighting = styleTags({
3946
4014
  BinOp: tags$1.arithmeticOperator,
3947
4015
  Important: tags$1.modifier,
3948
4016
  Comment: tags$1.blockComment,
3949
- ParenthesizedContent: tags$1.special(tags$1.name),
3950
4017
  ColorLiteral: tags$1.color,
3951
- StringLiteral: tags$1.string,
4018
+ "ParenthesizedContent StringLiteral": tags$1.string,
3952
4019
  ":": tags$1.punctuation,
3953
4020
  "PseudoOp #": tags$1.derefOperator,
3954
4021
  "; ,": tags$1.separator,
@@ -3985,46 +4052,54 @@ const spec_AtKeyword = {
3985
4052
  const spec_identifier$1 = {
3986
4053
  __proto__: null,
3987
4054
  not: 128,
3988
- only: 128,
3989
- from: 158,
3990
- to: 160
4055
+ only: 128
3991
4056
  };
3992
4057
  const parser$3 = LRParser.deserialize({
3993
4058
  version: 14,
3994
- states: "7WQYQ[OOO#_Q[OOOOQP'#Cd'#CdOOQP'#Cc'#CcO#fQ[O'#CfO$YQXO'#CaO$aQ[O'#ChO$lQ[O'#DPO$qQ[O'#DTOOQP'#Ed'#EdO$vQdO'#DeO%bQ[O'#DrO$vQdO'#DtO%sQ[O'#DvO&OQ[O'#DyO&TQ[O'#EPO&cQ[O'#EROOQS'#Ec'#EcOOQS'#ET'#ETQYQ[OOO&jQXO'#CdO'_QWO'#DaO'dQWO'#EjO'oQ[O'#EjQOQWOOOOQP'#Cg'#CgOOQP,59Q,59QO#fQ[O,59QO'yQ[O'#EWO(eQWO,58{O(mQ[O,59SO$lQ[O,59kO$qQ[O,59oO'yQ[O,59sO'yQ[O,59uO'yQ[O,59vO(xQ[O'#D`OOQS,58{,58{OOQP'#Ck'#CkOOQO'#C}'#C}OOQP,59S,59SO)PQWO,59SO)UQWO,59SOOQP'#DR'#DROOQP,59k,59kOOQO'#DV'#DVO)ZQ`O,59oOOQS'#Cp'#CpO$vQdO'#CqO)cQvO'#CsO*pQtO,5:POOQO'#Cx'#CxO)UQWO'#CwO+UQWO'#CyOOQS'#Eg'#EgOOQO'#Dh'#DhO+ZQ[O'#DoO+iQWO'#EkO&TQ[O'#DmO+wQWO'#DpOOQO'#El'#ElO(hQWO,5:^O+|QpO,5:`OOQS'#Dx'#DxO,UQWO,5:bO,ZQ[O,5:bOOQO'#D{'#D{O,cQWO,5:eO,hQWO,5:kO,pQWO,5:mOOQS-E8R-E8RO$vQdO,59{O,xQ[O'#EYO-VQWO,5;UO-VQWO,5;UOOQP1G.l1G.lO-|QXO,5:rOOQO-E8U-E8UOOQS1G.g1G.gOOQP1G.n1G.nO)PQWO1G.nO)UQWO1G.nOOQP1G/V1G/VO.ZQ`O1G/ZO.tQXO1G/_O/[QXO1G/aO/rQXO1G/bO0YQWO,59zO0_Q[O'#DOO0fQdO'#CoOOQP1G/Z1G/ZO$vQdO1G/ZO0mQpO,59]OOQS,59_,59_O$vQdO,59aO0uQWO1G/kOOQS,59c,59cO0zQ!bO,59eO1SQWO'#DhO1_QWO,5:TO1dQWO,5:ZO&TQ[O,5:VO&TQ[O'#EZO1lQWO,5;VO1wQWO,5:XO'yQ[O,5:[OOQS1G/x1G/xOOQS1G/z1G/zOOQS1G/|1G/|O2YQWO1G/|O2_QdO'#D|OOQS1G0P1G0POOQS1G0V1G0VOOQS1G0X1G0XO2mQtO1G/gOOQO,5:t,5:tO3TQ[O,5:tOOQO-E8W-E8WO3bQWO1G0pOOQP7+$Y7+$YOOQP7+$u7+$uO$vQdO7+$uOOQS1G/f1G/fO3mQXO'#EiO3tQWO,59jO3yQtO'#EUO4nQdO'#EfO4xQWO,59ZO4}QpO7+$uOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%V7+%VO5VQWO1G/PO$vQdO1G/oOOQO1G/u1G/uOOQO1G/q1G/qO5[QWO,5:uOOQO-E8X-E8XO5jQXO1G/vOOQS7+%h7+%hO5qQYO'#CsO(hQWO'#E[O5yQdO,5:hOOQS,5:h,5:hO6XQtO'#EXO$vQdO'#EXO7VQdO7+%ROOQO7+%R7+%ROOQO1G0`1G0`O7jQpO<<HaO7rQWO,5;TOOQP1G/U1G/UOOQS-E8S-E8SO$vQdO'#EVO7zQWO,5;QOOQT1G.u1G.uOOQP<<Ha<<HaOOQS7+$k7+$kO8SQdO7+%ZOOQO7+%b7+%bOOQS,5:v,5:vOOQS-E8Y-E8YOOQS1G0S1G0SO8ZQtO,5:sOOQS-E8V-E8VOOQO<<Hm<<HmOOQPAN={AN={O9XQdO,5:qOOQO-E8T-E8TOOQO<<Hu<<Hu",
3995
- stateData: "9i~O#UOSROS~OUXOXXO]UO^UOtVOxWO!Y`O!ZYO!gZO!i[O!k]O!n^O!t_O#SQO#XSO~OQeOUXOXXO]UO^UOtVOxWO!Y`O!ZYO!gZO!i[O!k]O!n^O!t_O#SdO#XSO~O#P#^P~P!ZO#SiO~O]nO^nOplOtoOxpO|qO!PsO#QrO#XkO~O!RtO~P#kO`zO#RwO#SvO~O#S{O~O#S}O~OQ!WOb!QOf!WOh!WOn!VO#R!TO#S!PO#[!RO~Ob!YO!b![O!e!]O#S!XO!R#_P~Oh!bOn!VO#S!aO~O#S!dO~Ob!YO!b![O!e!]O#S!XO~O!W#_P~P%bO]WX]!UX^WXpWXtWXxWX|WX!PWX!RWX#QWX#XWX~O]!iO~O!W!jO#P#^X!Q#^X~O#P#^X!Q#^X~P!ZOUXOXXO]UO^UOtVOxWO#SQO#XSO~OplO!RtO~O`!sO#RwO#SvO~O!Q#^P~P!ZOb!zO~Ob!{O~Ov!|Oz!}O~OP#PObgXjgX!WgX!bgX!egX#SgXagXQgXfgXhgXngXpgX!VgX#PgX#RgX#[gXvgX!QgX~Ob!YOj#QO!b![O!e!]O#S!XO!W#_P~Ob#TO~Ob!YO!b![O!e!]O#S#UO~Op#YO!`#XO!R#_X!W#_X~Ob#]O~Oj#QO!W#_O~O!W#`O~Oh#aOn!VO~O!R#bO~O!RtO!`#XO~O!RtO!W#eO~O!W!|X#P!|X!Q!|X~P!ZO!W!jO#P#^a!Q#^a~O]nO^nOtoOxpO|qO!PsO#QrO#XkO~Op!za!R!zaa!za~P-bOv#lOz#mO~O]nO^nOtoOxpO#XkO~Op{i|{i!P{i!R{i#Q{ia{i~P.cOp}i|}i!P}i!R}i#Q}ia}i~P.cOp!Oi|!Oi!P!Oi!R!Oi#Q!Oia!Oi~P.cO!Q#nO~Oa#]P~P'yOa#YP~P$vOa#uOj#QO~O!W#wO~Oh#xOo#xO~O]!^Xa![X!`![X~O]#yO~Oa#zO!`#XO~Op#YO!R#_a!W#_a~O!`#XOp!aa!R!aa!W!aaa!aa~O!W$PO~O!Q$TO!q$RO!r$RO#[$QO~Oj#QOp$VO!V$XO!W!Ti#P!Ti!Q!Ti~P$vO!W!|a#P!|a!Q!|a~P!ZO!W!jO#P#^i!Q#^i~Oa#]X~P#kOa$]O~Oj#QOQ!xXa!xXb!xXf!xXh!xXn!xXp!xX#R!xX#S!xX#[!xX~Op$_Oa#YX~P$vOa$aO~Oj#QOv$bO~Oa$cO~O!`#XOp!}a!R!}a!W!}a~Oa$eO~P-bOP#PO!RgX~O!Q$hO!q$RO!r$RO#[$QO~Oj#QOQ!{Xb!{Xf!{Xh!{Xn!{Xp!{X!V!{X!W!{X#P!{X#R!{X#S!{X#[!{X!Q!{X~Op$VO!V$kO!W!Tq#P!Tq!Q!Tq~P$vOj#QOv$lO~OplOa#]a~Op$_Oa#Ya~Oa$oO~P$vOj#QOQ!{ab!{af!{ah!{an!{ap!{a!V!{a!W!{a#P!{a#R!{a#S!{a#[!{a!Q!{a~Oa!yap!ya~P$vOo#[j!Pj~",
3996
- goto: ",`#aPPPPP#bP#k#zP#k$Z#kPP$aPPP$g$p$pP%SP$pP$p%j%|PPP&f&l#kP&rP#kP&xP#kP#k#kPPP'O'b'oPP#bPP'v'v(Q'vP'vP'v'vP#bP#bP#bP(T#bP(W(ZPP#bP#bP(^(m({)R)])c)m)sPPPPPP)y*SP*o*rP+h+k+q+z_aOPcgt!j#hkXOPcglqrst!j!z#]#hkROPcglqrst!j!z#]#hQjSR!mkQxUR!qnQ!qzQ#S!UR#k!sq!WY[!Q!i!{!}#Q#f#m#r#y$V$W$_$d$mp!WY[!Q!i!{!}#Q#f#m#r#y$V$W$_$d$mT$R#b$Sq!UY[!Q!i!{!}#Q#f#m#r#y$V$W$_$d$mp!WY[!Q!i!{!}#Q#f#m#r#y$V$W$_$d$mQ!b]R#a!cQyUR!rnQ!qyR#k!rQ|VR!toQ!OWR!upQuTQ!pmQ#^!_Q#d!fQ#e!gR$f$RSfPtQ!lgQ#g!jR$Y#hZePgt!j#ha!^Z_`!S!Y![#X#YR#V!YR!c]R!e^R#c!eQcOSgPtU!hcg#hR#h!jQ#r!{U$^#r$d$mQ$d#yR$m$_Q$`#rR$n$`QmTS!om$[R$[#oQ$W#fR$j$WQ!kfS#i!k#jR#j!lQ#Z!ZR#}#ZQ$S#bR$g$S_bOPcgt!j#h^TOPcgt!j#hQ!nlQ!vqQ!wrQ!xsQ#o!zR$O#]R#s!{Q!SYQ!`[Q#O!QQ#f!i[#q!{#r#y$_$d$mQ#t!}Q#v#QS$U#f$WQ$Z#mR$i$VR#p!zQhPR!ytQ!_ZQ!g`R#R!SU!ZZ`!SQ!f_Q#W!YQ#[![Q#{#XR#|#Y",
3997
- nodeNames: "⚠ Unit VariableName Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee CallLiteral CallTag ParenthesizedContent , PseudoClassName ArgList IdSelector # IdName ] AttributeSelector [ AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp } { Block Declaration PropertyName Important ; ImportStatement AtKeyword import KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList from to SupportsStatement supports AtRule Styles",
3998
- maxTerm: 108,
4059
+ states: "8`QYQ[OOO#_Q[OOOOQP'#Cd'#CdOOQP'#Cc'#CcO#fQ[O'#CfO$YQXO'#CaO$aQ[O'#ChO$lQ[O'#DPO$qQ[O'#DTOOQP'#Ee'#EeO$vQdO'#DeO%bQ[O'#DrO$vQdO'#DtO%sQ[O'#DvO&OQ[O'#DyO&WQ[O'#EPO&fQ[O'#EROOQS'#Ed'#EdOOQS'#ET'#ETQYQ[OOO&mQXO'#CdO'bQWO'#DaO'gQWO'#EkO'rQ[O'#EkQOQWOOOOQP'#Cg'#CgOOQP,59Q,59QO#fQ[O,59QO'|Q[O'#EWO(hQWO,58{O(pQ[O,59SO$lQ[O,59kO$qQ[O,59oO'|Q[O,59sO'|Q[O,59uO'|Q[O,59vO({Q[O'#D`OOQS,58{,58{OOQP'#Ck'#CkOOQO'#C}'#C}OOQP,59S,59SO)SQWO,59SO)XQWO,59SOOQP'#DR'#DROOQP,59k,59kOOQO'#DV'#DVO)^Q`O,59oOOQS'#Cp'#CpO$vQdO'#CqO)fQvO'#CsO*sQtO,5:POOQO'#Cx'#CxO)XQWO'#CwO+XQWO'#CyOOQS'#Eh'#EhOOQO'#Dh'#DhO+^Q[O'#DoO+lQWO'#ElO&WQ[O'#DmO+zQWO'#DpOOQO'#Em'#EmO(kQWO,5:^O,PQpO,5:`OOQS'#Dx'#DxO,XQWO,5:bO,^Q[O,5:bOOQO'#D{'#D{O,fQWO,5:eO,kQWO,5:kO,sQWO,5:mOOQS-E8R-E8RO$vQdO,59{O,{Q[O'#EYO-YQWO,5;VO-YQWO,5;VOOQP1G.l1G.lO.PQXO,5:rOOQO-E8U-E8UOOQS1G.g1G.gOOQP1G.n1G.nO)SQWO1G.nO)XQWO1G.nOOQP1G/V1G/VO.^Q`O1G/ZO.wQXO1G/_O/_QXO1G/aO/uQXO1G/bO0]QWO,59zO0bQ[O'#DOO0iQdO'#CoOOQP1G/Z1G/ZO$vQdO1G/ZO0pQpO,59]OOQS,59_,59_O$vQdO,59aO0xQWO1G/kOOQS,59c,59cO0}Q!bO,59eO1VQWO'#DhO1bQWO,5:TO1gQWO,5:ZO&WQ[O,5:VO&WQ[O'#EZO1oQWO,5;WO1zQWO,5:XO'|Q[O,5:[OOQS1G/x1G/xOOQS1G/z1G/zOOQS1G/|1G/|O2]QWO1G/|O2bQdO'#D|OOQS1G0P1G0POOQS1G0V1G0VOOQS1G0X1G0XO2mQtO1G/gOOQO,5:t,5:tO3TQ[O,5:tOOQO-E8W-E8WO3bQWO1G0qOOQP7+$Y7+$YOOQP7+$u7+$uO$vQdO7+$uOOQS1G/f1G/fO3mQXO'#EjO3tQWO,59jO3yQtO'#EUO4nQdO'#EgO4xQWO,59ZO4}QpO7+$uOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%V7+%VO5VQWO1G/PO$vQdO1G/oOOQO1G/u1G/uOOQO1G/q1G/qO5[QWO,5:uOOQO-E8X-E8XO5jQXO1G/vOOQS7+%h7+%hO5qQYO'#CsOOQO'#EO'#EOO5|Q`O'#D}OOQO'#D}'#D}O6XQWO'#E[O6aQdO,5:hOOQS,5:h,5:hO6lQtO'#EXO$vQdO'#EXO7jQdO7+%ROOQO7+%R7+%ROOQO1G0`1G0`O7}QpO<<HaO8VQWO,5;UOOQP1G/U1G/UOOQS-E8S-E8SO$vQdO'#EVO8_QWO,5;ROOQT1G.u1G.uOOQP<<Ha<<HaOOQS7+$k7+$kO8gQdO7+%ZOOQO7+%b7+%bOOQO,5:i,5:iO2eQdO'#E]O6XQWO,5:vOOQS,5:v,5:vOOQS-E8Y-E8YOOQS1G0S1G0SO8nQtO,5:sOOQS-E8V-E8VOOQO<<Hm<<HmOOQPAN={AN={O9lQdO,5:qOOQO-E8T-E8TOOQO<<Hu<<HuOOQO,5:w,5:wOOQO-E8Z-E8ZOOQS1G0b1G0b",
4060
+ stateData: ":O~O#VOSROS~OUXOXXO]UO^UOtVOxWO!Y`O!ZYO!gZO!i[O!k]O!n^O!t_O#TQO#YSO~OQeOUXOXXO]UO^UOtVOxWO!Y`O!ZYO!gZO!i[O!k]O!n^O!t_O#TdO#YSO~O#Q#_P~P!ZO#TiO~O]nO^nOplOtoOxpO|qO!PsO#RrO#YkO~O!RtO~P#kO`zO#SwO#TvO~O#T{O~O#T}O~OQ!WOb!QOf!WOh!WOn!VO#S!TO#T!PO#]!RO~Ob!YO!b![O!e!]O#T!XO!R#`P~Oh!bOn!VO#T!aO~Oh!dO#T!dO~Ob!YO!b![O!e!]O#T!XO~O!W#`P~P%bO]WX]!UX^WXpWXtWXxWX|WX!PWX!RWX#RWX#YWX~O]!iO~O!W!jO#Q#_X!Q#_X~O#Q#_X!Q#_X~P!ZOUXOXXO]UO^UOtVOxWO#TQO#YSO~OplO!RtO~O`!sO#SwO#TvO~O!Q#_P~P!ZOb!zO~Ob!{O~Ov!|Oz!}O~OP#PObgXjgX!WgX!bgX!egX#TgXagXQgXfgXhgXngXpgX!VgX#QgX#SgX#]gXvgX!QgX~Ob!YOj#QO!b![O!e!]O#T!XO!W#`P~Ob#TO~Ob!YO!b![O!e!]O#T#UO~Op#YO!`#XO!R#`X!W#`X~Ob#]O~Oj#QO!W#_O~O!W#`O~Oh#aOn!VO~O!R#bO~O!RtO!`#XO~O!RtO!W#eO~O!W!|X#Q!|X!Q!|X~P!ZO!W!jO#Q#_a!Q#_a~O]nO^nOtoOxpO|qO!PsO#RrO#YkO~Op!za!R!zaa!za~P-eOv#lOz#mO~O]nO^nOtoOxpO#YkO~Op{i|{i!P{i!R{i#R{ia{i~P.fOp}i|}i!P}i!R}i#R}ia}i~P.fOp!Oi|!Oi!P!Oi!R!Oi#R!Oia!Oi~P.fO!Q#nO~Oa#^P~P'|Oa#ZP~P$vOa#uOj#QO~O!W#wO~Oh#xOo#xO~O]!^Xa![X!`![X~O]#yO~Oa#zO!`#XO~Op#YO!R#`a!W#`a~O!`#XOp!aa!R!aa!W!aaa!aa~O!W$PO~O!Q$WO#T$RO#]$QO~Oj#QOp$YO!V$[O!W!Ti#Q!Ti!Q!Ti~P$vO!W!|a#Q!|a!Q!|a~P!ZO!W!jO#Q#_i!Q#_i~Oa#^X~P#kOa$`O~Oj#QOQ!xXa!xXb!xXf!xXh!xXn!xXp!xX#S!xX#T!xX#]!xX~Op$bOa#ZX~P$vOa$dO~Oj#QOv$eO~Oa$fO~O!`#XOp!}a!R!}a!W!}a~Oa$hO~P-eOP#POpgX!RgX~O#]$QOp!qX!R!qX~Op$jO!RtO~O!Q$nO#T$RO#]$QO~Oj#QOQ!{Xb!{Xf!{Xh!{Xn!{Xp!{X!V!{X!W!{X#Q!{X#S!{X#T!{X#]!{X!Q!{X~Op$YO!V$qO!W!Tq#Q!Tq!Q!Tq~P$vOj#QOv$rO~OplOa#^a~Op$bOa#Za~Oa$uO~P$vOj#QOQ!{ab!{af!{ah!{an!{ap!{a!V!{a!W!{a#Q!{a#S!{a#T!{a#]!{a!Q!{a~Oa!yap!ya~P$vO#VoR#]j!Pj~",
4061
+ goto: ",z#bPPPPP#cP#l#{P#l$[#lPP$bPPP$h$q$qP%TP$qP$q%o&RPPP&k&q#lP&wP#lP&}P#lP#l#lPPP'T'j'wPP#cPP(O(O(Y(OP(OP(O(OP#cP#cP#cP(]#cP(`(c(f(m#cP#cP(r)R)a)g)q)w*R*X*_PPPPPP*e*nP+Z+^P,S,V,],f_aOPcgt!j#hkXOPcglqrst!j!z#]#hkROPcglqrst!j!z#]#hQjSR!mkQxUR!qnQ!qzQ#S!UR#k!sq!WY[!Q!i!{!}#Q#f#m#r#y$Y$Z$b$g$sp!WY[!Q!i!{!}#Q#f#m#r#y$Y$Z$b$g$sU$T#b$V$jR$i$Sq!UY[!Q!i!{!}#Q#f#m#r#y$Y$Z$b$g$sp!WY[!Q!i!{!}#Q#f#m#r#y$Y$Z$b$g$sQ!b]R#a!cQyUR!rnQ!qyR#k!rQ|VR!toQ!OWR!upQuTQ!pmQ#^!_Q#d!fQ#e!gQ$l$UR$x$kSfPtQ!lgQ#g!jR$]#hZePgt!j#ha!^Z_`!S!Y![#X#YR#V!YR!c]R!e^R#c!eS$U#b$VR$v$jV$S#b$V$jQcOSgPtU!hcg#hR#h!jQ#r!{U$a#r$g$sQ$g#yR$s$bQ$c#rR$t$cQmTS!om$_R$_#oQ$Z#fR$p$ZQ!kfS#i!k#jR#j!lQ#Z!ZR#}#ZQ$V#bR$m$VQ$k$UR$w$k_bOPcgt!j#h^TOPcgt!j#hQ!nlQ!vqQ!wrQ!xsQ#o!zR$O#]R#s!{Q!SYQ!`[Q#O!QQ#f!i[#q!{#r#y$b$g$sQ#t!}Q#v#QS$X#f$ZQ$^#mR$o$YR#p!zQhPR!ytQ!_ZQ!g`R#R!SU!ZZ`!SQ!f_Q#W!YQ#[![Q#{#XR#|#Y",
4062
+ nodeNames: "⚠ Unit VariableName Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee CallLiteral CallTag ParenthesizedContent , PseudoClassName ArgList IdSelector # IdName ] AttributeSelector [ AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp } { Block Declaration PropertyName Important ; ImportStatement AtKeyword import KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports AtRule Styles",
4063
+ maxTerm: 109,
3999
4064
  nodeProps: [["openedBy", 17, "(", 48, "{"], ["closedBy", 18, ")", 49, "}"]],
4000
4065
  propSources: [cssHighlighting],
4001
4066
  skippedNodes: [0, 3],
4002
- repeatNodeCount: 8,
4003
- tokenData: "Lq~R!^OX$}X^%u^p$}pq%uqr)Xrs.Rst/utu6duv$}vw7^wx7oxy9^yz9oz{9t{|:_|}?Q}!O?c!O!P@Q!P!Q@i!Q![Cu![!]Dp!]!^El!^!_$}!_!`E}!`!aF`!a!b$}!b!cG[!c!}$}!}#OHt#O#P$}#P#QIV#Q#R6d#R#T$}#T#UIh#U#c$}#c#dJy#d#o$}#o#pK`#p#q6d#q#rKq#r#sLS#s#y$}#y#z%u#z$f$}$f$g%u$g#BY$}#BY#BZ%u#BZ$IS$}$IS$I_%u$I_$I|$}$I|$JO%u$JO$JT$}$JT$JU%u$JU$KV$}$KV$KW%u$KW&FU$}&FU&FV%u&FV;'S$};'S;=`Lk<%lO$}W%QSOy%^z;'S%^;'S;=`%o<%lO%^W%cSoWOy%^z;'S%^;'S;=`%o<%lO%^W%rP;=`<%l%^~%zh#U~OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^~'mh#U~oWOX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^^)[UOy%^z#]%^#]#^)n#^;'S%^;'S;=`%o<%lO%^^)sUoWOy%^z#a%^#a#b*V#b;'S%^;'S;=`%o<%lO%^^*[UoWOy%^z#d%^#d#e*n#e;'S%^;'S;=`%o<%lO%^^*sUoWOy%^z#c%^#c#d+V#d;'S%^;'S;=`%o<%lO%^^+[UoWOy%^z#f%^#f#g+n#g;'S%^;'S;=`%o<%lO%^^+sUoWOy%^z#h%^#h#i,V#i;'S%^;'S;=`%o<%lO%^^,[UoWOy%^z#T%^#T#U,n#U;'S%^;'S;=`%o<%lO%^^,sUoWOy%^z#b%^#b#c-V#c;'S%^;'S;=`%o<%lO%^^-[UoWOy%^z#h%^#h#i-n#i;'S%^;'S;=`%o<%lO%^^-uS!VUoWOy%^z;'S%^;'S;=`%o<%lO%^~.UWOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o<%lO.R~.sOh~~.vRO;'S.R;'S;=`/P;=`O.R~/SXOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o;=`<%l.R<%lO.R~/rP;=`<%l.R_/zYtPOy%^z!Q%^!Q![0j![!c%^!c!i0j!i#T%^#T#Z0j#Z;'S%^;'S;=`%o<%lO%^^0oYoWOy%^z!Q%^!Q![1_![!c%^!c!i1_!i#T%^#T#Z1_#Z;'S%^;'S;=`%o<%lO%^^1dYoWOy%^z!Q%^!Q![2S![!c%^!c!i2S!i#T%^#T#Z2S#Z;'S%^;'S;=`%o<%lO%^^2ZYfUoWOy%^z!Q%^!Q![2y![!c%^!c!i2y!i#T%^#T#Z2y#Z;'S%^;'S;=`%o<%lO%^^3QYfUoWOy%^z!Q%^!Q![3p![!c%^!c!i3p!i#T%^#T#Z3p#Z;'S%^;'S;=`%o<%lO%^^3uYoWOy%^z!Q%^!Q![4e![!c%^!c!i4e!i#T%^#T#Z4e#Z;'S%^;'S;=`%o<%lO%^^4lYfUoWOy%^z!Q%^!Q![5[![!c%^!c!i5[!i#T%^#T#Z5[#Z;'S%^;'S;=`%o<%lO%^^5aYoWOy%^z!Q%^!Q![6P![!c%^!c!i6P!i#T%^#T#Z6P#Z;'S%^;'S;=`%o<%lO%^^6WSfUoWOy%^z;'S%^;'S;=`%o<%lO%^Y6gUOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^Y7QSzQoWOy%^z;'S%^;'S;=`%o<%lO%^X7cSXPOy%^z;'S%^;'S;=`%o<%lO%^~7rWOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W<%lO7o~8_RO;'S7o;'S;=`8h;=`O7o~8kXOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W;=`<%l7o<%lO7o~9ZP;=`<%l7o_9cSbVOy%^z;'S%^;'S;=`%o<%lO%^~9tOa~_9{UUPjSOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^_:fWjS!PPOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^^;TUoWOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^^;nYoW#[UOy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^^<cYoWOy%^z{%^{|=R|}%^}!O=R!O!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^^=WUoWOy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^^=qUoW#[UOy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^^>[[oW#[UOy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^_?VSpVOy%^z;'S%^;'S;=`%o<%lO%^^?hWjSOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^_@VU#XPOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjSOy%^z{@}{;'S%^;'S;=`%o<%lO%^~ASUoWOy@}yzAfz{Bm{;'S@};'S;=`Co<%lO@}~AiTOzAfz{Ax{;'SAf;'S;=`Bg<%lOAf~A{VOzAfz{Ax{!PAf!P!QBb!Q;'SAf;'S;=`Bg<%lOAf~BgOR~~BjP;=`<%lAf~BrWoWOy@}yzAfz{Bm{!P@}!P!QC[!Q;'S@};'S;=`Co<%lO@}~CcSoWR~Oy%^z;'S%^;'S;=`%o<%lO%^~CrP;=`<%l@}^Cz[#[UOy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^XDuU]POy%^z![%^![!]EX!];'S%^;'S;=`%o<%lO%^XE`S^PoWOy%^z;'S%^;'S;=`%o<%lO%^_EqS!WVOy%^z;'S%^;'S;=`%o<%lO%^YFSSzQOy%^z;'S%^;'S;=`%o<%lO%^XFeU|POy%^z!`%^!`!aFw!a;'S%^;'S;=`%o<%lO%^XGOS|PoWOy%^z;'S%^;'S;=`%o<%lO%^XG_WOy%^z!c%^!c!}Gw!}#T%^#T#oGw#o;'S%^;'S;=`%o<%lO%^XHO[!YPoWOy%^z}%^}!OGw!O!Q%^!Q![Gw![!c%^!c!}Gw!}#T%^#T#oGw#o;'S%^;'S;=`%o<%lO%^XHySxPOy%^z;'S%^;'S;=`%o<%lO%^^I[SvUOy%^z;'S%^;'S;=`%o<%lO%^XIkUOy%^z#b%^#b#cI}#c;'S%^;'S;=`%o<%lO%^XJSUoWOy%^z#W%^#W#XJf#X;'S%^;'S;=`%o<%lO%^XJmS!`PoWOy%^z;'S%^;'S;=`%o<%lO%^XJ|UOy%^z#f%^#f#gJf#g;'S%^;'S;=`%o<%lO%^XKeS!RPOy%^z;'S%^;'S;=`%o<%lO%^_KvS!QVOy%^z;'S%^;'S;=`%o<%lO%^ZLXU!PPOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^WLnP;=`<%l$}",
4067
+ repeatNodeCount: 9,
4068
+ tokenData: "Lq~R!^OX$}X^%u^p$}pq%uqr)Xrs.Rst/utu6duv$}vw7^wx7oxy9^yz9oz{9t{|:_|}?Q}!O?c!O!P@Q!P!Q@i!Q![Cu![!]Dp!]!^El!^!_$}!_!`E}!`!aF`!a!b$}!b!cG[!c!}$}!}#OHt#O#P$}#P#QIV#Q#R6d#R#T$}#T#UIh#U#c$}#c#dJy#d#o$}#o#pK`#p#q6d#q#rKq#r#sLS#s#y$}#y#z%u#z$f$}$f$g%u$g#BY$}#BY#BZ%u#BZ$IS$}$IS$I_%u$I_$I|$}$I|$JO%u$JO$JT$}$JT$JU%u$JU$KV$}$KV$KW%u$KW&FU$}&FU&FV%u&FV;'S$};'S;=`Lk<%lO$}W%QSOy%^z;'S%^;'S;=`%o<%lO%^W%cSoWOy%^z;'S%^;'S;=`%o<%lO%^W%rP;=`<%l%^~%zh#V~OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^~'mh#V~oWOX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^^)[UOy%^z#]%^#]#^)n#^;'S%^;'S;=`%o<%lO%^^)sUoWOy%^z#a%^#a#b*V#b;'S%^;'S;=`%o<%lO%^^*[UoWOy%^z#d%^#d#e*n#e;'S%^;'S;=`%o<%lO%^^*sUoWOy%^z#c%^#c#d+V#d;'S%^;'S;=`%o<%lO%^^+[UoWOy%^z#f%^#f#g+n#g;'S%^;'S;=`%o<%lO%^^+sUoWOy%^z#h%^#h#i,V#i;'S%^;'S;=`%o<%lO%^^,[UoWOy%^z#T%^#T#U,n#U;'S%^;'S;=`%o<%lO%^^,sUoWOy%^z#b%^#b#c-V#c;'S%^;'S;=`%o<%lO%^^-[UoWOy%^z#h%^#h#i-n#i;'S%^;'S;=`%o<%lO%^^-uS!VUoWOy%^z;'S%^;'S;=`%o<%lO%^~.UWOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o<%lO.R~.sOh~~.vRO;'S.R;'S;=`/P;=`O.R~/SXOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o;=`<%l.R<%lO.R~/rP;=`<%l.R_/zYtPOy%^z!Q%^!Q![0j![!c%^!c!i0j!i#T%^#T#Z0j#Z;'S%^;'S;=`%o<%lO%^^0oYoWOy%^z!Q%^!Q![1_![!c%^!c!i1_!i#T%^#T#Z1_#Z;'S%^;'S;=`%o<%lO%^^1dYoWOy%^z!Q%^!Q![2S![!c%^!c!i2S!i#T%^#T#Z2S#Z;'S%^;'S;=`%o<%lO%^^2ZYfUoWOy%^z!Q%^!Q![2y![!c%^!c!i2y!i#T%^#T#Z2y#Z;'S%^;'S;=`%o<%lO%^^3QYfUoWOy%^z!Q%^!Q![3p![!c%^!c!i3p!i#T%^#T#Z3p#Z;'S%^;'S;=`%o<%lO%^^3uYoWOy%^z!Q%^!Q![4e![!c%^!c!i4e!i#T%^#T#Z4e#Z;'S%^;'S;=`%o<%lO%^^4lYfUoWOy%^z!Q%^!Q![5[![!c%^!c!i5[!i#T%^#T#Z5[#Z;'S%^;'S;=`%o<%lO%^^5aYoWOy%^z!Q%^!Q![6P![!c%^!c!i6P!i#T%^#T#Z6P#Z;'S%^;'S;=`%o<%lO%^^6WSfUoWOy%^z;'S%^;'S;=`%o<%lO%^Y6gUOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^Y7QSzQoWOy%^z;'S%^;'S;=`%o<%lO%^X7cSXPOy%^z;'S%^;'S;=`%o<%lO%^~7rWOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W<%lO7o~8_RO;'S7o;'S;=`8h;=`O7o~8kXOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W;=`<%l7o<%lO7o~9ZP;=`<%l7o_9cSbVOy%^z;'S%^;'S;=`%o<%lO%^~9tOa~_9{UUPjSOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^_:fWjS!PPOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^^;TUoWOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^^;nYoW#]UOy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^^<cYoWOy%^z{%^{|=R|}%^}!O=R!O!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^^=WUoWOy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^^=qUoW#]UOy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^^>[[oW#]UOy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^_?VSpVOy%^z;'S%^;'S;=`%o<%lO%^^?hWjSOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^_@VU#YPOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjSOy%^z{@}{;'S%^;'S;=`%o<%lO%^~ASUoWOy@}yzAfz{Bm{;'S@};'S;=`Co<%lO@}~AiTOzAfz{Ax{;'SAf;'S;=`Bg<%lOAf~A{VOzAfz{Ax{!PAf!P!QBb!Q;'SAf;'S;=`Bg<%lOAf~BgOR~~BjP;=`<%lAf~BrWoWOy@}yzAfz{Bm{!P@}!P!QC[!Q;'S@};'S;=`Co<%lO@}~CcSoWR~Oy%^z;'S%^;'S;=`%o<%lO%^~CrP;=`<%l@}^Cz[#]UOy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^XDuU]POy%^z![%^![!]EX!];'S%^;'S;=`%o<%lO%^XE`S^PoWOy%^z;'S%^;'S;=`%o<%lO%^_EqS!WVOy%^z;'S%^;'S;=`%o<%lO%^YFSSzQOy%^z;'S%^;'S;=`%o<%lO%^XFeU|POy%^z!`%^!`!aFw!a;'S%^;'S;=`%o<%lO%^XGOS|PoWOy%^z;'S%^;'S;=`%o<%lO%^XG_WOy%^z!c%^!c!}Gw!}#T%^#T#oGw#o;'S%^;'S;=`%o<%lO%^XHO[!YPoWOy%^z}%^}!OGw!O!Q%^!Q![Gw![!c%^!c!}Gw!}#T%^#T#oGw#o;'S%^;'S;=`%o<%lO%^XHySxPOy%^z;'S%^;'S;=`%o<%lO%^^I[SvUOy%^z;'S%^;'S;=`%o<%lO%^XIkUOy%^z#b%^#b#cI}#c;'S%^;'S;=`%o<%lO%^XJSUoWOy%^z#W%^#W#XJf#X;'S%^;'S;=`%o<%lO%^XJmS!`PoWOy%^z;'S%^;'S;=`%o<%lO%^XJ|UOy%^z#f%^#f#gJf#g;'S%^;'S;=`%o<%lO%^ZKeS!RROy%^z;'S%^;'S;=`%o<%lO%^_KvS!QVOy%^z;'S%^;'S;=`%o<%lO%^ZLXU!PPOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^WLnP;=`<%l$}",
4004
4069
  tokenizers: [descendant, unitToken, identifiers, 0, 1, 2, 3],
4005
4070
  topRules: {
4006
4071
  "StyleSheet": [0, 4],
4007
4072
  "Styles": [1, 84]
4008
4073
  },
4009
4074
  specialized: [{
4010
- term: 95,
4075
+ term: 96,
4011
4076
  get: value => spec_callee[value] || -1
4012
4077
  }, {
4013
4078
  term: 56,
4014
4079
  get: value => spec_AtKeyword[value] || -1
4015
4080
  }, {
4016
- term: 96,
4081
+ term: 97,
4017
4082
  get: value => spec_identifier$1[value] || -1
4018
4083
  }],
4019
- tokenPrec: 1123
4084
+ tokenPrec: 1142
4020
4085
  });
4021
4086
 
4022
4087
  let _properties = null;
4023
4088
  function properties() {
4024
4089
  if (!_properties && typeof document == "object" && document.body) {
4025
- let names = [];
4026
- for (let prop in document.body.style) {
4027
- if (!/[A-Z]|^-|^(item|length)$/.test(prop)) names.push(prop);
4090
+ let {
4091
+ style
4092
+ } = document.body,
4093
+ names = [],
4094
+ seen = new Set();
4095
+ for (let prop in style) if (prop != "cssText" && prop != "cssFloat") {
4096
+ if (typeof style[prop] == "string") {
4097
+ if (/[A-Z]/.test(prop)) prop = prop.replace(/[A-Z]/g, ch => "-" + ch.toLowerCase());
4098
+ if (!seen.has(prop)) {
4099
+ names.push(prop);
4100
+ seen.add(prop);
4101
+ }
4102
+ }
4028
4103
  }
4029
4104
  _properties = names.sort().map(name => ({
4030
4105
  type: "property",
@@ -4033,7 +4108,7 @@ function properties() {
4033
4108
  }
4034
4109
  return _properties || [];
4035
4110
  }
4036
- const pseudoClasses = /*@__PURE__*/["active", "after", "before", "checked", "default", "disabled", "empty", "enabled", "first-child", "first-letter", "first-line", "first-of-type", "focus", "hover", "in-range", "indeterminate", "invalid", "lang", "last-child", "last-of-type", "link", "not", "nth-child", "nth-last-child", "nth-last-of-type", "nth-of-type", "only-of-type", "only-child", "optional", "out-of-range", "placeholder", "read-only", "read-write", "required", "root", "selection", "target", "valid", "visited"].map(name => ({
4111
+ const pseudoClasses = /*@__PURE__*/["active", "after", "any-link", "autofill", "backdrop", "before", "checked", "cue", "default", "defined", "disabled", "empty", "enabled", "file-selector-button", "first", "first-child", "first-letter", "first-line", "first-of-type", "focus", "focus-visible", "focus-within", "fullscreen", "has", "host", "host-context", "hover", "in-range", "indeterminate", "invalid", "is", "lang", "last-child", "last-of-type", "left", "link", "marker", "modal", "not", "nth-child", "nth-last-child", "nth-last-of-type", "nth-of-type", "only-child", "only-of-type", "optional", "out-of-range", "part", "placeholder", "placeholder-shown", "read-only", "read-write", "required", "right", "root", "scope", "selection", "slotted", "target", "target-text", "valid", "visited", "where"].map(name => ({
4037
4112
  type: "class",
4038
4113
  label: name
4039
4114
  }));
@@ -4048,17 +4123,72 @@ const tags = /*@__PURE__*/["a", "abbr", "address", "article", "aside", "b", "bdi
4048
4123
  type: "type",
4049
4124
  label: name
4050
4125
  }));
4051
- const identifier$1 = /^[\w-]*/;
4126
+ const identifier$1 = /^(\w[\w-]*|-\w[\w-]*|)$/,
4127
+ variable = /^-(-[\w-]*)?$/;
4128
+ function isVarArg(node, doc) {
4129
+ var _a;
4130
+ if (node.name == "(" || node.type.isError) node = node.parent || node;
4131
+ if (node.name != "ArgList") return false;
4132
+ let callee = (_a = node.parent) === null || _a === void 0 ? void 0 : _a.firstChild;
4133
+ if ((callee === null || callee === void 0 ? void 0 : callee.name) != "Callee") return false;
4134
+ return doc.sliceString(callee.from, callee.to) == "var";
4135
+ }
4136
+ const VariablesByNode = /*@__PURE__*/new NodeWeakMap();
4137
+ const declSelector = ["Declaration"];
4138
+ function astTop(node) {
4139
+ for (let cur = node;;) {
4140
+ if (cur.type.isTop) return cur;
4141
+ if (!(cur = cur.parent)) return node;
4142
+ }
4143
+ }
4144
+ function variableNames(doc, node, isVariable) {
4145
+ if (node.to - node.from > 4096) {
4146
+ let known = VariablesByNode.get(node);
4147
+ if (known) return known;
4148
+ let result = [],
4149
+ seen = new Set(),
4150
+ cursor = node.cursor(IterMode.IncludeAnonymous);
4151
+ if (cursor.firstChild()) do {
4152
+ for (let option of variableNames(doc, cursor.node, isVariable)) if (!seen.has(option.label)) {
4153
+ seen.add(option.label);
4154
+ result.push(option);
4155
+ }
4156
+ } while (cursor.nextSibling());
4157
+ VariablesByNode.set(node, result);
4158
+ return result;
4159
+ } else {
4160
+ let result = [],
4161
+ seen = new Set();
4162
+ node.cursor().iterate(node => {
4163
+ var _a;
4164
+ if (isVariable(node) && node.matchContext(declSelector) && ((_a = node.node.nextSibling) === null || _a === void 0 ? void 0 : _a.name) == ":") {
4165
+ let name = doc.sliceString(node.from, node.to);
4166
+ if (!seen.has(name)) {
4167
+ seen.add(name);
4168
+ result.push({
4169
+ label: name,
4170
+ type: "variable"
4171
+ });
4172
+ }
4173
+ }
4174
+ });
4175
+ return result;
4176
+ }
4177
+ }
4052
4178
  /**
4053
- CSS property and value keyword completion source.
4179
+ Create a completion source for a CSS dialect, providing a
4180
+ predicate for determining what kind of syntax node can act as a
4181
+ completable variable. This is used by language modes like Sass and
4182
+ Less to reuse this package's completion logic.
4054
4183
  */
4055
- const cssCompletionSource = context => {
4184
+ const defineCSSCompletionSource = isVariable => context => {
4056
4185
  let {
4057
4186
  state,
4058
4187
  pos
4059
4188
  } = context,
4060
4189
  node = syntaxTree(state).resolveInner(pos, -1);
4061
- if (node.name == "PropertyName") return {
4190
+ let isDash = node.type.isError && node.from == node.to - 1 && state.doc.sliceString(node.from, node.to) == "-";
4191
+ if (node.name == "PropertyName" || (isDash || node.name == "TagName") && /^(Block|Styles)$/.test(node.resolve(node.to).name)) return {
4062
4192
  from: node.from,
4063
4193
  options: properties(),
4064
4194
  validFor: identifier$1
@@ -4073,6 +4203,11 @@ const cssCompletionSource = context => {
4073
4203
  options: pseudoClasses,
4074
4204
  validFor: identifier$1
4075
4205
  };
4206
+ if (isVariable(node) || (context.explicit || isDash) && isVarArg(node, state.doc)) return {
4207
+ from: isVariable(node) || isDash ? node.from : pos,
4208
+ options: variableNames(state.doc, astTop(node), isVariable),
4209
+ validFor: variable
4210
+ };
4076
4211
  if (node.name == "TagName") {
4077
4212
  for (let {
4078
4213
  parent
@@ -4100,13 +4235,17 @@ const cssCompletionSource = context => {
4100
4235
  options: values,
4101
4236
  validFor: identifier$1
4102
4237
  };
4103
- if (above.name == "Block") return {
4238
+ if (above.name == "Block" || above.name == "Styles") return {
4104
4239
  from: pos,
4105
4240
  options: properties(),
4106
4241
  validFor: identifier$1
4107
4242
  };
4108
4243
  return null;
4109
4244
  };
4245
+ /**
4246
+ CSS property, variable, and value keyword completion source.
4247
+ */
4248
+ const cssCompletionSource = /*@__PURE__*/defineCSSCompletionSource(n => n.name == "VariableName");
4110
4249
 
4111
4250
  /**
4112
4251
  A language provider based on the [Lezer CSS
@@ -4114,6 +4253,7 @@ parser](https://github.com/lezer-parser/css), extended with
4114
4253
  highlighting and indentation information.
4115
4254
  */
4116
4255
  const cssLanguage = /*@__PURE__*/LRLanguage.define({
4256
+ name: "css",
4117
4257
  parser: /*@__PURE__*/parser$3.configure({
4118
4258
  props: [/*@__PURE__*/indentNodeProp.add({
4119
4259
  Declaration: /*@__PURE__*/continuedIndent()
@@ -4307,23 +4447,23 @@ const spec_identifier = {
4307
4447
  module: 429,
4308
4448
  declare: 433,
4309
4449
  global: 437,
4310
- for: 458,
4311
- of: 467,
4312
- while: 470,
4313
- with: 474,
4314
- do: 478,
4315
- if: 482,
4316
- else: 484,
4317
- switch: 488,
4318
- case: 494,
4319
- try: 500,
4320
- catch: 504,
4321
- finally: 508,
4322
- return: 512,
4323
- throw: 516,
4324
- break: 520,
4325
- continue: 524,
4326
- debugger: 528
4450
+ for: 456,
4451
+ of: 465,
4452
+ while: 468,
4453
+ with: 472,
4454
+ do: 476,
4455
+ if: 480,
4456
+ else: 482,
4457
+ switch: 486,
4458
+ case: 492,
4459
+ try: 498,
4460
+ catch: 502,
4461
+ finally: 506,
4462
+ return: 510,
4463
+ throw: 514,
4464
+ break: 518,
4465
+ continue: 522,
4466
+ debugger: 526
4327
4467
  };
4328
4468
  const spec_word = {
4329
4469
  __proto__: null,
@@ -4347,26 +4487,26 @@ const spec_LessThan = {
4347
4487
  };
4348
4488
  const parser$2 = LRParser.deserialize({
4349
4489
  version: 14,
4350
- states: "$EnO`QUOOO%QQUOOO'TQWOOP(bOSOOO*pQ(CjO'#CfO*wOpO'#CgO+VO!bO'#CgO+eO07`O'#DZO-vQUO'#DaO.WQUO'#DlO%QQUO'#DvO0_QUO'#EOOOQ(CY'#EW'#EWO0uQSO'#ETOOQO'#I`'#I`O0}QSO'#GkOOQO'#Ei'#EiO1YQSO'#EhO1_QSO'#EhO3aQ(CjO'#JcO6QQ(CjO'#JdO6nQSO'#FWO6sQ#tO'#FoOOQ(CY'#F`'#F`O7OO&jO'#F`O7^Q,UO'#FvO8tQSO'#FuOOQ(CY'#Jd'#JdOOQ(CW'#Jc'#JcOOQQ'#J}'#J}O8yQSO'#IPO9OQ(C[O'#IQOOQQ'#JP'#JPOOQQ'#IU'#IUQ`QUOOO%QQUO'#DnO9WQUO'#DzO%QQUO'#D|O9_QSO'#GkO9dQ,UO'#ClO9rQSO'#EgO9}QSO'#ErO:SQ,UO'#F_O:qQSO'#GkO:vQSO'#GoO;RQSO'#GoO;aQSO'#GrO;aQSO'#GsO;aQSO'#GuO9_QSO'#GxO<QQSO'#G{O=cQSO'#CbO=sQSO'#HYO={QSO'#H`O={QSO'#HbO`QUO'#HdO={QSO'#HfO={QSO'#HiO>QQSO'#HoO>VQ(C]O'#HuO%QQUO'#HwO>bQ(C]O'#HyO>mQ(C]O'#H{O9OQ(C[O'#H}O>xQ(CjO'#CfO?zQWO'#DfQOQSOOO@bQSO'#EPO9dQ,UO'#EgO@mQSO'#EgO@xQ`O'#F_OOQQ'#Cd'#CdOOQ(CW'#Dk'#DkOOQ(CW'#Jg'#JgO%QQUO'#JgOBUQWO'#E`OOQ(CW'#E_'#E_OB`Q(C`O'#E`OBzQWO'#ESOOQO'#Jj'#JjOC`QWO'#ESOCmQWO'#E`ODTQWO'#EfODWQWO'#E`ODqQWO'#E`OAQQWO'#E`OBzQWO'#E`PEbO?MpO'#C`POOO)CDn)CDnOOOO'#IV'#IVOEmOpO,59ROOQ(CY,59R,59ROOOO'#IW'#IWOE{O!bO,59RO%QQUO'#D]OOOO'#IY'#IYOFZO07`O,59uOOQ(CY,59u,59uOFiQUO'#IZOF|QSO'#JeOIOQbO'#JeO+sQUO'#JeOIVQSO,59{OImQSO'#EiOIzQSO'#JrOJVQSO'#JqOJVQSO'#JqOJ_QSO,5;VOJdQSO'#JpOOQ(CY,5:W,5:WOJkQUO,5:WOLlQ(CjO,5:bOM]QSO,5:jOMbQSO'#JnON[Q(C[O'#JoO:vQSO'#JnONcQSO'#JnONkQSO,5;UONpQSO'#JnOOQ(CY'#Cf'#CfO%QQUO'#EOO! dQ`O,5:oOOQO'#Jk'#JkOOQO-E<^-E<^O9_QSO,5=VO! zQSO,5=VO!!PQUO,5;SO!$SQ,UO'#EdO!%gQSO,5;SO!'PQ,UO'#DpO!'WQUO'#DuO!'bQWO,5;]O!'jQWO,5;]O%QQUO,5;]OOQQ'#FO'#FOOOQQ'#FQ'#FQO%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^OOQQ'#FU'#FUO!'xQUO,5;oOOQ(CY,5;t,5;tOOQ(CY,5;u,5;uO!){QSO,5;uOOQ(CY,5;v,5;vO%QQUO'#IfO!*TQ(C[O,5<cO!$SQ,UO,5;^O!*rQ,UO,5;^O%QQUO,5;rO!*yQ#tO'#FeO!+vQ#tO'#JvO!+bQ#tO'#JvO!+}Q#tO'#JvOOQO'#Jv'#JvO!,cQ#tO,5;}OOOO,5<Z,5<ZO!,tQUO'#FqOOOO'#Ie'#IeO7OO&jO,5;zO!,{Q#tO'#FsOOQ(CY,5;z,5;zO!-lQ7[O'#CrOOQ(CY'#Cv'#CvO!.PQSO'#CvO!.UO07`O'#CzO!.rQ,UO,5<`O!.yQSO,5<bO!0`QMhO'#GQO!0mQSO'#GRO!0rQSO'#GRO!0wQMhO'#GVO!1vQWO'#GZO!2iQ7[O'#J^OOQ(CY'#J^'#J^O!2sQSO'#J]O!3RQSO'#J[O!3ZQSO'#CqOOQ(CY'#Ct'#CtOOQ(CY'#DO'#DOOOQ(CY'#DQ'#DQO0xQSO'#DSO!%lQ,UO'#FxO!%lQ,UO'#FzO!3cQSO'#F|O!3hQSO'#F}O!0rQSO'#GTO!%lQ,UO'#GYO!3mQSO'#EjO!4XQSO,5<aO`QUO,5>kOOQQ'#JX'#JXOOQQ,5>l,5>lOOQQ-E<S-E<SO!6WQ(CjO,5:YO!8tQ(CjO,5:fO%QQUO,5:fO!;_Q(CjO,5:hOOQ(CW'#Co'#CoO!<OQ,UO,5=VO!<^Q(C[O'#JYO8tQSO'#JYO!<oQ(C[O,59WO!<zQWO,59WO!=SQ,UO,59WO9dQ,UO,59WO!=_QSO,5;SO!=gQSO'#HXO!=xQSO'#KRO%QQUO,5;wO!>QQWO,5;yO!>VQSO,5=rO!>[QSO,5=rO!>aQSO,5=rO9OQ(C[O,5=rO!>oQSO'#EkO!?iQWO'#ElOOQ(CW'#Jp'#JpO!?pQ(C[O'#KOO9OQ(C[O,5=ZO;aQSO,5=aOOQO'#Cr'#CrO!?{QWO,5=^O!@TQ,UO,5=_O!@`QSO,5=aO!@eQ`O,5=dO>QQSO'#G}O9_QSO'#HPO!@mQSO'#HPO9dQ,UO'#HSO!@rQSO'#HSOOQQ,5=g,5=gO!@wQSO'#HTO!APQSO'#ClO!AUQSO,58|O!A`QSO,58|O!ChQUO,58|OOQQ,58|,58|O!CuQ(C[O,58|O%QQUO,58|O!DQQUO'#H[OOQQ'#H]'#H]OOQQ'#H^'#H^O`QUO,5=tO!DbQSO,5=tO`QUO,5=zO`QUO,5=|O!DgQSO,5>OO`QUO,5>QO!DlQSO,5>TO!DqQUO,5>ZOOQQ,5>a,5>aO%QQUO,5>aO9OQ(C[O,5>cOOQQ,5>e,5>eO!HxQSO,5>eOOQQ,5>g,5>gO!HxQSO,5>gOOQQ,5>i,5>iO!H}QWO'#DXO%QQUO'#JgO!IlQWO'#JgO!JZQWO'#DgO!JlQWO'#DgO!L}QUO'#DgO!MUQSO'#JfO!M^QSO,5:QO!McQSO'#EmO!MqQSO'#JsO!MyQSO,5;WO!NOQWO'#DgO!N]QWO'#EROOQ(CY,5:k,5:kO%QQUO,5:kO!NdQSO,5:kO>QQSO,5;RO!<zQWO,5;RO!=SQ,UO,5;RO9dQ,UO,5;RO!NlQSO,5@RO!NqQ!LQO,5:oO# wQ(C`O,5:zOBzQWO,5:nO#!cQWO,5:nO#!pQWO,5:zO##WQWO,5:zO##qQWO,5:zO#$bQWO,5:zOBzQWO,5:zO!<oQ(C[O,5:nOOQ(CW'#Ec'#EcOOQO,5:z,5:zO%QQUO,5:zO#%UQ(C[O,5:zO#%aQ(C[O,5:zO!<zQWO,5:nOOQO,5;Q,5;QO#%oQ(C[O,5:zPOOO'#IT'#ITP#&TO?MpO,58zPOOO,58z,58zOOOO-E<T-E<TOOQ(CY1G.m1G.mOOOO-E<U-E<UO#&`Q`O,59wOOOO-E<W-E<WOOQ(CY1G/a1G/aO#&eQbO,5>uO+sQUO,5>uOOQO,5>{,5>{O#&oQUO'#IZOOQO-E<X-E<XO#&|QSO,5@PO#'UQbO,5@PO#']QSO,5@]OOQ(CY1G/g1G/gO%QQUO,5@^O#'eQSO'#IaOOQO-E<_-E<_O#']QSO,5@]OOQ(CW1G0q1G0qOOQ(CY1G/r1G/rOOQ(CY1G0U1G0UO#'yQSO,5@YO:vQSO,5@YO#(RQSO,5@YO%QQUO,5@ZO#(aQ(C[O,5@ZO#(rQ(C[O,5@ZO#(yQSO'#IcO#'yQSO,5@YOOQ(CW1G0p1G0pO!'bQWO,5:qO!'mQWO,5:qOOQO,5:s,5:sO#)hQSO,5:sO#)pQ,UO1G2qO9_QSO1G2qOOQ(CY1G0n1G0nO#*OQ(CjO1G0nO#+TQ(ChO,5;OOOQ(CY'#GP'#GPO#+qQ(CjO'#J^O!!PQUO1G0nO#-yQ,UO'#JhO#.TQSO,5:[O#.YQbO'#JiO%QQUO'#JiO#.dQSO,5:aOOQ(CY'#DX'#DXOOQ(CY1G0w1G0wO%QQUO1G0wOOQ(CY1G1a1G1aO#.iQSO1G0wO#1QQ(CjO1G0xO#1XQ(CjO1G0xO#3rQ(CjO1G0xO#3yQ(CjO1G0xO#6TQ(CjO1G0xO#6kQ(CjO1G0xO#9eQ(CjO1G0xO#9lQ(CjO1G0xO#<VQ(CjO1G0xO#<^Q(CjO1G0xO#>UQ(CjO1G0xO#AUQ$IUO'#CfO#CSQ$IUO1G1ZO#EQQ$IUO'#JdO!*OQSO1G1aO#EeQ(CjO,5?QOOQ(CW-E<d-E<dO#FXQ(CjO1G0xOOQ(CY1G0x1G0xO#HdQ(CjO1G1^O#IWQ#tO,5<RO#I`Q#tO,5<SO#IhQ#tO'#FjO#JPQSO'#FiOOQO'#Jw'#JwOOQO'#Id'#IdO#JUQ#tO1G1iOOQ(CY1G1i1G1iOOOO1G1t1G1tO#JgQ$IUO'#JcO#JqQSO,5<]O!'xQUO,5<]OOOO-E<c-E<cOOQ(CY1G1f1G1fO#JvQWO'#JvOOQ(CY,5<_,5<_O#KOQWO,5<_OOQ(CY,59b,59bO!$SQ,UO'#C|OOOO'#IX'#IXO#KTO07`O,59fOOQ(CY,59f,59fO%QQUO1G1zO!3hQSO'#IhO#K`QSO,5<sOOQ(CY,5<p,5<pOOQO'#Gf'#GfO!%lQ,UO,5=POOQO'#Gh'#GhO!%lQ,UO,5=RO!$SQ,UO,5=TOOQO1G1|1G1|O#KnQ`O'#CoO#LRQ`O,5<lO#LYQSO'#JzO9_QSO'#JzO#LhQSO,5<nO!%lQ,UO,5<mO#LmQSO'#GSO#LxQSO,5<mO#L}Q`O'#GPO#M[Q`O'#J{O#MfQSO'#J{O!$SQ,UO'#J{O#MkQSO,5<qO#MpQWO'#G[O!1qQWO'#G[O#NRQSO'#G^O#NWQSO'#G`O!0rQSO'#GcO#N]Q(C[O'#IjO#NhQWO,5<uOOQ(CY,5<u,5<uO#NoQWO'#G[O#N}QWO'#G]O$ VQWO'#G]OOQ(CY,5=U,5=UO!%lQ,UO,5?wO!%lQ,UO,5?wO$ [QSO'#IkO$ gQSO,5?vO$ oQSO,59]O$!`Q,UO,59nOOQ(CY,59n,59nO$#RQ,UO,5<dO$#tQ,UO,5<fO?rQSO,5<hOOQ(CY,5<i,5<iO$$OQSO,5<oO$$TQ,UO,5<tO!!PQUO1G1{O$$eQSO1G1{OOQQ1G4V1G4VOOQ(CY1G/t1G/tO!){QSO1G/tO$&dQ(CjO1G0QOOQQ1G2q1G2qO!$SQ,UO1G2qO%QQUO1G2qO$'TQSO1G2qO$'`Q,UO'#EdOOQ(CW,5?t,5?tO$'jQ(C[O,5?tOOQQ1G.r1G.rO!<oQ(C[O1G.rO!<zQWO1G.rO!=SQ,UO1G.rO$'{QSO1G0nO$(QQSO'#CfO$(]QSO'#KSO$(eQSO,5=sO$(jQSO'#KSO$(oQSO'#KSO$(zQSO'#IsO$)YQSO,5@mO$)bQbO1G1cOOQ(CY1G1e1G1eO9_QSO1G3^O?rQSO1G3^O$)iQSO1G3^O$)nQSO1G3^OOQQ1G3^1G3^O:vQSO'#JqO:vQSO'#EmO%QQUO'#EmO:vQSO'#ImO$)sQ(C[O,5@jOOQQ1G2u1G2uO!@`QSO1G2{O!$SQ,UO1G2xO$*OQSO1G2xOOQQ1G2y1G2yO!$SQ,UO1G2yO$*TQSO1G2yO$*]QWO'#GwOOQQ1G2{1G2{O!1qQWO'#IoO!@eQ`O1G3OOOQQ1G3O1G3OOOQQ,5=i,5=iO$*eQ,UO,5=kO9_QSO,5=kO#NWQSO,5=nO8tQSO,5=nO!<zQWO,5=nO!=SQ,UO,5=nO9dQ,UO,5=nO$*sQSO'#KQO$+OQSO,5=oOOQQ1G.h1G.hO$+TQ(C[O1G.hO?rQSO1G.hO$+`QSO1G.hO9OQ(C[O1G.hO$+kQbO,5@oO$,OQSO,5@oO$,ZQUO,5=vO$,bQSO,5=vO:vQSO,5@oOOQQ1G3`1G3`O`QUO1G3`OOQQ1G3f1G3fOOQQ1G3h1G3hO={QSO1G3jO$,gQUO1G3lO$0hQUO'#HkOOQQ1G3o1G3oO$0uQSO'#HqO>QQSO'#HsOOQQ1G3u1G3uO$0}QUO1G3uO9OQ(C[O1G3{OOQQ1G3}1G3}OOQ(CW'#GW'#GWO9OQ(C[O1G4PO9OQ(C[O1G4RO$5RQSO,5@RO!'xQUO,5;XO:vQSO,5;XO>QQSO,5:RO!'xQUO,5:RO!<zQWO,5:RO$5WQ$IUO,5:ROOQO,5;X,5;XO$5bQWO'#I[O$5xQSO,5@QOOQ(CY1G/l1G/lO$6QQWO'#IbO$6[QSO,5@_OOQ(CW1G0r1G0rO!JlQWO,5:ROOQO'#I_'#I_O$6dQWO,5:mOOQ(CY,5:m,5:mO!NgQSO1G0VOOQ(CY1G0V1G0VO%QQUO1G0VOOQ(CY1G0m1G0mO>QQSO1G0mO!<zQWO1G0mO!=SQ,UO1G0mOOQ(CW1G5m1G5mO!<oQ(C[O1G0YOOQO1G0f1G0fO%QQUO1G0fO$6kQ(C[O1G0fO$6vQ(C[O1G0fO!<zQWO1G0YOBzQWO1G0YO$7UQ(C`O1G0fO$7pQWO1G0YOBzQWO1G0fO$7}QWO1G0fO$8eQWO1G0fO$9OQWO1G0fO$9oQ(C[O1G0fOOQO1G0Y1G0YO$:TQ(CjO1G0fPOOO-E<R-E<RPOOO1G.f1G.fOOOO1G/c1G/cO$:_Q`O,5<cO$:gQbO1G4aOOQO1G4g1G4gO%QQUO,5>uO$:qQSO1G5kO$:yQSO1G5wO$;RQbO1G5xO:vQSO,5>{O$;]QSO1G5tO$;]QSO1G5tO:vQSO1G5tO$;eQ(CjO1G5uO%QQUO1G5uO$;uQ(C[O1G5uO$<WQSO,5>}O:vQSO,5>}OOQO,5>},5>}O$<lQSO,5>}OOQO-E<a-E<aOOQO1G0]1G0]OOQO1G0_1G0_O!*OQSO1G0_OOQQ7+(]7+(]O!$SQ,UO7+(]O%QQUO7+(]O$<zQSO7+(]O$=VQ,UO7+(]O$=eQ(CjO,59nO$?mQ(CjO,5<dO$AxQ(CjO,5<fO$DTQ(CjO,5<tOOQ(CY7+&Y7+&YO$FfQ(CjO7+&YO$GYQ,UO'#I]O$GdQSO,5@SOOQ(CY1G/v1G/vO$GlQUO'#I^O$GyQSO,5@TO$HRQbO,5@TOOQ(CY1G/{1G/{O$H]QSO7+&cOOQ(CY7+&c7+&cO$HbQ$IUO,5:bO%QQUO7+&uO$HlQ$IUO,5:YO$HyQ$IUO,5:fO$ITQ$IUO,5:hOOQ(CY7+&{7+&{OOQO1G1m1G1mOOQO1G1n1G1nO$I_Q#tO,5<UO!'xQUO,5<TOOQO-E<b-E<bOOQ(CY7+'T7+'TOOOO7+'`7+'`OOOO1G1w1G1wO$IjQSO1G1wOOQ(CY1G1y1G1yO$IoQ`O,59hOOOO-E<V-E<VOOQ(CY1G/Q1G/QO$IvQ(CjO7+'fOOQ(CY,5?S,5?SO$JjQSO,5?SOOQ(CY1G2_1G2_P$JoQSO'#IhPOQ(CY-E<f-E<fO$KcQ,UO1G2kO$LUQ,UO1G2mO$L`Q`O1G2oOOQ(CY1G2W1G2WO$LgQSO'#IgO$LuQSO,5@fO$LuQSO,5@fO$L}QSO,5@fO$MYQSO,5@fOOQO1G2Y1G2YO$MhQ,UO1G2XO!%lQ,UO1G2XO$MxQMhO'#IiO$NYQSO,5@gO!$SQ,UO,5@gO$NbQ`O,5@gOOQ(CY1G2]1G2]OOQ(CW,5<v,5<vOOQ(CW,5<w,5<wO$NlQSO,5<wOBuQSO,5<wO!<zQWO,5<vOOQO'#G_'#G_O$NqQSO,5<xOOQ(CW,5<z,5<zO$NlQSO,5<}OOQO,5?U,5?UOOQO-E<h-E<hOOQ(CY1G2a1G2aO!1qQWO,5<vO$NyQSO,5<wO#NRQSO,5<xO!1qQWO,5<wO% UQ,UO1G5cO% `Q,UO1G5cOOQO,5?V,5?VOOQO-E<i-E<iOOQO1G.w1G.wO!>QQWO,59pO%QQUO,59pO% mQSO1G2SO!%lQ,UO1G2ZO% rQ(CjO7+'gOOQ(CY7+'g7+'gO!!PQUO7+'gOOQ(CY7+%`7+%`O%!fQ`O'#J|O!NgQSO7+(]O%!pQbO7+(]O$<}QSO7+(]O%!wQ(ChO'#CfO%#[Q(ChO,5<{O%#|QSO,5<{OOQ(CW1G5`1G5`OOQQ7+$^7+$^O!<oQ(C[O7+$^O!<zQWO7+$^O!!PQUO7+&YO%$RQSO'#IrO%$gQSO,5@nOOQO1G3_1G3_O9_QSO,5@nO%$gQSO,5@nO%$oQSO,5@nOOQO,5?_,5?_OOQO-E<q-E<qOOQ(CY7+&}7+&}O%$tQSO7+(xO9OQ(C[O7+(xO9_QSO7+(xO?rQSO7+(xO%$yQSO,5;XOOQ(CW,5?X,5?XOOQ(CW-E<k-E<kOOQQ7+(g7+(gO%%OQ(ChO7+(dO!$SQ,UO7+(dO%%YQ`O7+(eOOQQ7+(e7+(eO!$SQ,UO7+(eO%%aQSO'#KPO%%lQSO,5=cOOQO,5?Z,5?ZOOQO-E<m-E<mOOQQ7+(j7+(jO%&{QWO'#HQOOQQ1G3V1G3VO!$SQ,UO1G3VO%QQUO1G3VO%'SQSO1G3VO%'_Q,UO1G3VO9OQ(C[O1G3YO#NWQSO1G3YO8tQSO1G3YO!<zQWO1G3YO!=SQ,UO1G3YO%'mQSO'#IqO%'xQSO,5@lO%(QQWO,5@lOOQ(CW1G3Z1G3ZOOQQ7+$S7+$SO?rQSO7+$SO9OQ(C[O7+$SO%(]QSO7+$SO%QQUO1G6ZO%QQUO1G6[O%(bQUO1G3bO%(iQSO1G3bO%(nQUO1G3bO%(uQ(C[O1G6ZOOQQ7+(z7+(zO9OQ(C[O7+)UO`QUO7+)WOOQQ'#KV'#KVOOQQ'#It'#ItO%)PQUO,5>VOOQQ,5>V,5>VO%QQUO'#HlO%)^QSO'#HnOOQQ,5>],5>]O:vQSO,5>]OOQQ,5>_,5>_OOQQ7+)a7+)aOOQQ7+)g7+)gOOQQ7+)k7+)kOOQQ7+)m7+)mO%)cQWO1G5mO%)wQ$IUO1G0sO%*RQSO1G0sOOQO1G/m1G/mO%*^Q$IUO1G/mO>QQSO1G/mO!'xQUO'#DgOOQO,5>v,5>vOOQO-E<Y-E<YOOQO,5>|,5>|OOQO-E<`-E<`O!<zQWO1G/mOOQO-E<]-E<]OOQ(CY1G0X1G0XOOQ(CY7+%q7+%qO!NgQSO7+%qOOQ(CY7+&X7+&XO>QQSO7+&XO!<zQWO7+&XOOQO7+%t7+%tO$:TQ(CjO7+&QOOQO7+&Q7+&QO%QQUO7+&QO%*hQ(C[O7+&QO!<oQ(C[O7+%tO!<zQWO7+%tO%*sQ(C[O7+&QOBzQWO7+%tO%+RQ(C[O7+&QO%+gQ(C`O7+&QO%+qQWO7+%tOBzQWO7+&QO%,OQWO7+&QO%,fQWO7+&QO%-PQSO7++`O%-PQSO7++`O%-XQ(CjO7++aO%QQUO7++aOOQO1G4i1G4iO:vQSO1G4iO%-iQSO1G4iOOQO7+%y7+%yO!NgQSO<<KwO%!pQbO<<KwO%-wQSO<<KwOOQQ<<Kw<<KwO!$SQ,UO<<KwO%QQUO<<KwO%.PQSO<<KwO%.[Q(CjO1G2kO%0gQ(CjO1G2mO%2rQ(CjO1G2XO%5TQ,UO,5>wOOQO-E<Z-E<ZO%5_QbO,5>xO%QQUO,5>xOOQO-E<[-E<[O%5iQSO1G5oOOQ(CY<<I}<<I}O%5qQ$IUO1G0nO%7{Q$IUO1G0xO%8SQ$IUO1G0xO%:WQ$IUO1G0xO%:_Q$IUO1G0xO%<SQ$IUO1G0xO%<jQ$IUO1G0xO%>}Q$IUO1G0xO%?UQ$IUO1G0xO%AYQ$IUO1G0xO%AaQ$IUO1G0xO%CXQ$IUO1G0xO%ClQ(CjO<<JaO%DqQ$IUO1G0xO%FgQ$IUO'#J^O%HjQ$IUO1G1^O%HwQ$IUO1G0QO!'xQUO'#FlOOQO'#Jx'#JxOOQO1G1p1G1pO%IRQSO1G1oO%IWQ$IUO,5?QOOOO7+'c7+'cOOOO1G/S1G/SOOQ(CY1G4n1G4nO!%lQ,UO7+(ZO%IbQSO,5?RO9_QSO,5?ROOQO-E<e-E<eO%IpQSO1G6QO%IpQSO1G6QO%IxQSO1G6QO%JTQ,UO7+'sO%JeQ`O,5?TO%JoQSO,5?TO!$SQ,UO,5?TOOQO-E<g-E<gO%JtQ`O1G6RO%KOQSO1G6ROOQ(CW1G2c1G2cO$NlQSO1G2cOOQ(CW1G2b1G2bO%KWQSO1G2dO!$SQ,UO1G2dOOQ(CW1G2i1G2iO!<zQWO1G2bOBuQSO1G2cO%K]QSO1G2dO%KeQSO1G2cO!%lQ,UO7+*}OOQ(CY1G/[1G/[O%KpQSO1G/[OOQ(CY7+'n7+'nO%KuQ,UO7+'uO%LVQ(CjO<<KROOQ(CY<<KR<<KRO!$SQ,UO'#IlO%LyQSO,5@hO!$SQ,UO1G2gOOQQ<<Gx<<GxO!<oQ(C[O<<GxO%MRQ(CjO<<ItOOQ(CY<<It<<ItOOQO,5?^,5?^O%MuQSO,5?^O$(oQSO,5?^OOQO-E<p-E<pO%MzQSO1G6YO%MzQSO1G6YO9_QSO1G6YO?rQSO<<LdOOQQ<<Ld<<LdO%NSQSO<<LdO9OQ(C[O<<LdO%NXQSO1G0sOOQQ<<LO<<LOO%%OQ(ChO<<LOOOQQ<<LP<<LPO%%YQ`O<<LPO%N^QWO'#InO%NiQSO,5@kO!'xQUO,5@kOOQQ1G2}1G2}O%NqQ(C`O'#JgO& ]QUO'#JgO& dQWO'#E`O&!QQ(C[O'#E`OB`Q(C`O'#E`O(YQWO'#HROOQO'#Ip'#IpO9OQ(C[O'#IpO&!fQWO,5=lOOQQ,5=l,5=lO&#OQWO'#E`O& vQWO'#E`O&#VQWO'#E`O&#pQWO'#E`O& jQWO'#E`O&$aQWO'#HRO&$rQSO7+(qO&$wQSO7+(qOOQQ7+(q7+(qO!$SQ,UO7+(qO%QQUO7+(qO&%PQSO7+(qOOQQ7+(t7+(tO9OQ(C[O7+(tO#NWQSO7+(tO8tQSO7+(tO!<zQWO7+(tO&%[QSO,5?]OOQO-E<o-E<oOOQO'#HU'#HUO&%gQSO1G6WO9OQ(C[O<<GnOOQQ<<Gn<<GnO?rQSO<<GnO&%oQSO7++uO&%tQSO7++vOOQQ7+(|7+(|O&%yQSO7+(|O&&OQUO7+(|O&&VQSO7+(|O%QQUO7++uO%QQUO7++vOOQQ<<Lp<<LpOOQQ<<Lr<<LrOOQQ-E<r-E<rOOQQ1G3q1G3qO&&[QSO,5>WOOQQ,5>Y,5>YO&&aQSO1G3wO:vQSO7+&_O!'xQUO7+&_OOQO7+%X7+%XO&&fQ$IUO1G5xO>QQSO7+%XOOQ(CY<<I]<<I]OOQ(CY<<Is<<IsO>QQSO<<IsOOQO<<Il<<IlO$:TQ(CjO<<IlO%QQUO<<IlOOQO<<I`<<I`O!<oQ(C[O<<I`O&&pQ(C[O<<IlO!<zQWO<<I`O&&{Q(C[O<<IlOBzQWO<<I`O&'ZQ(C[O<<IlO&'oQ(C`O<<IlO&'yQWO<<I`OBzQWO<<IlO&(WQWO<<IlO&(nQSO<<NzO&(vQ(CjO<<N{OOQO7+*T7+*TO:vQSO7+*TOOQQANAcANAcO&)WQSOANAcO!$SQ,UOANAcO!NgQSOANAcO%!pQbOANAcO%QQUOANAcO&)`Q(CjO7+'sO&+qQ(CjO7+'uO&.SQbO1G4dO&.^Q$IUO7+&YO&.kQ$IUO,59nO&0nQ$IUO,5<dO&2qQ$IUO,5<fO&4tQ$IUO,5<tO&6jQ$IUO7+'fO&6wQ$IUO7+'gO&7UQSO,5<WOOQO7+'Z7+'ZO&7ZQ,UO<<KuOOQO1G4m1G4mO&7bQSO1G4mO&7mQSO1G4mO&7{QSO7++lO&7{QSO7++lO!$SQ,UO1G4oO&8TQ`O1G4oO&8_QSO7++mOOQ(CW7+'}7+'}O$NlQSO7+(OO&8gQ`O7+(OOOQ(CW7+'|7+'|O$NlQSO7+'}O&8nQSO7+(OO!$SQ,UO7+(OOBuQSO7+'}O&8sQ,UO<<NiOOQ(CY7+$v7+$vO&8}Q`O,5?WOOQO-E<j-E<jO&9XQ(ChO7+(ROOQQAN=dAN=dO9_QSO1G4xOOQO1G4x1G4xO&9iQSO1G4xO&9nQSO7++tO&9nQSO7++tO9OQ(C[OANBOO?rQSOANBOOOQQANBOANBOOOQQANAjANAjOOQQANAkANAkO&9vQSO,5?YOOQO-E<l-E<lO&:RQ$IUO1G6VO&:]Q(C[O,5=mO8tQSO,5=mO&<nQbO'#CfO&<xQWO,5:zO&=SQWO,5:zO&=aQWO,5:zO&=tQWO,5:zO!<zQWO,5=mOOQO,5?[,5?[OOQO-E<n-E<nOOQQ1G3W1G3WO& ]QUO,5<xO%NqQ(C`O,5=mO# wQ(C`O,5:zO(YQWO,5=mO&>[QWO,5=mO&>mQWO,5:zOOQQ<<L]<<L]O!$SQ,UO<<L]O&$rQSO<<L]O&?WQSO<<L]O%QQUO<<L]OOQQ<<L`<<L`O9OQ(C[O<<L`O#NWQSO<<L`O8tQSO<<L`O&?`QWO1G4wO&?kQSO7++rOOQQAN=YAN=YO9OQ(C[OAN=YOOQQ<= a<= aOOQQ<= b<= bOOQQ<<Lh<<LhO&?sQSO<<LhO&?xQUO<<LhO&@PQSO<= aO&@UQSO<= bOOQQ1G3r1G3rO>QQSO7+)cO&@ZQSO<<IyO&@fQ$IUO<<IyOOQO<<Hs<<HsOOQ(CYAN?_AN?_OOQOAN?WAN?WO$:TQ(CjOAN?WOOQOAN>zAN>zO%QQUOAN?WO!<oQ(C[OAN>zO&@pQ(C[OAN?WO!<zQWOAN>zO&@{Q(C[OAN?WOBzQWOAN>zO&AZQ(C[OAN?WO&AoQ(C`OAN?WO&AyQWOAN>zOBzQWOAN?WOOQO<<Mo<<MoOOQQG26}G26}O!$SQ,UOG26}O!NgQSOG26}O&BWQSOG26}O%!pQbOG26}O&B`Q$IUO<<JaO&BmQ$IUO1G2XO&DcQ$IUO1G2kO&FfQ$IUO1G2mO&HiQ$IUO<<KRO&HvQ$IUO<<ItOOQO1G1r1G1rO!%lQ,UOANAaOOQO7+*X7+*XO&ITQSO7+*XO&I`QSO<= WO&IhQ`O7+*ZOOQ(CW<<Kj<<KjO$NlQSO<<KjOOQ(CW<<Ki<<KiO&IrQ`O<<KjO$NlQSO<<KiOOQO7+*d7+*dO9_QSO7+*dO&IyQSO<= `OOQQG27jG27jO9OQ(C[OG27jO!'xQUO1G4tO&JRQSO7++qOOQO1G3X1G3XO9OQ(C[O1G3XO&:]Q(C[O1G3XO&JZQWO1G0fO&JeQWO1G0fO&JrQWO1G0fO8tQSO1G3XO!<zQWO1G3XO(YQWO1G3XO%NqQ(C`O1G3XO$7UQ(C`O1G0fO&KVQWO1G3XO&$rQSOANAwOOQQANAwANAwO!$SQ,UOANAwO&KhQSOANAwOOQQANAzANAzO9OQ(C[OANAzO#NWQSOANAzOOQO'#HV'#HVOOQO7+*c7+*cOOQQG22tG22tOOQQANBSANBSO&KpQSOANBSOOQQAND{AND{OOQQAND|AND|OOQQ<<L}<<L}O!'xQUOAN?eOOQOG24rG24rO$:TQ(CjOG24rOOQOG24fG24fO%QQUOG24rO!<oQ(C[OG24fO&KuQ(C[OG24rO!<zQWOG24fO&LQQ(C[OG24rOBzQWOG24fO&L`Q(C[OG24rO!NgQSOLD,iOOQQLD,iLD,iO!$SQ,UOLD,iO&LtQSOLD,iO&L|Q$IUO7+'sO&NrQ$IUO7+'uO'!hQ,UOG26{OOQO<<Ms<<MsOOQ(CWANAUANAUO$NlQSOANAUOOQ(CWANATANATOOQO<<NO<<NOOOQQLD-ULD-UO'!xQ$IUO7+*`OOQO7+(s7+(sO9OQ(C[O7+(sO'#SQWO7+&QO'#^QWO7+&QO&:]Q(C[O7+(sO8tQSO7+(sO!<zQWO7+(sO(YQWO7+(sOOQQG27cG27cO&$rQSOG27cO!$SQ,UOG27cOOQQG27fG27fO9OQ(C[OG27fOOQQG27nG27nO'#kQ$IUOG25POOQOLD*^LD*^O$:TQ(CjOLD*^OOQOLD*QLD*QO%QQUOLD*^O!<oQ(C[OLD*QO'#uQ(C[OLD*^O!<zQWOLD*QO'$QQ(C[OLD*^OOQQ!$(!T!$(!TO!NgQSO!$(!TO!$SQ,UO!$(!TO'$`Q(CjOG26{OOQ(CWG26pG26pOOQO<<L_<<L_O'&qQWO<<IlO9OQ(C[O<<L_O&:]Q(C[O<<L_O8tQSO<<L_O!<zQWO<<L_OOQQLD,}LD,}O&$rQSOLD,}OOQQLD-QLD-QOOQO!$'Mx!$'MxO$:TQ(CjO!$'MxOOQO!$'Ml!$'MlO%QQUO!$'MxO!<oQ(C[O!$'MlO'&{Q(C[O!$'MxOOQQ!)9Eo!)9EoO!NgQSO!)9EoOOQOANAyANAyO9OQ(C[OANAyO&:]Q(C[OANAyO8tQSOANAyOOQQ!$(!i!$(!iOOQO!)9Cd!)9CdO$:TQ(CjO!)9CdOOQO!)9CW!)9CWO%QQUO!)9CdOOQQ!.K;Z!.K;ZO''WQ$IUOG26{OOQOG27eG27eO9OQ(C[OG27eO&:]Q(C[OG27eOOQO!.K9O!.K9OO$:TQ(CjO!.K9OOOQOLD-PLD-PO9OQ(C[OLD-POOQO!4/.j!4/.jOOQO!$(!k!$(!kO!'xQUO'#DvO0uQSO'#ETO'(|QbO'#JcO!'xQUO'#DnO')TQUO'#DzO!'xQUO'#D|O')[QbO'#CfO'+rQbO'#CfO',SQUO,5;SO!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO,5;^O!'xQUO'#IfO'.VQSO,5<cO'._Q,UO,5;^O'/rQ,UO,5;^O!'xQUO,5;rO0xQSO'#DSO0xQSO'#DSO!$SQ,UO'#FxO'._Q,UO'#FxO!$SQ,UO'#FzO'._Q,UO'#FzO!$SQ,UO'#GYO'._Q,UO'#GYO!'xQUO,5:fO!'xQUO,5@^O',SQUO1G0nO'/yQ$IUO'#CfO!'xQUO1G1zO!$SQ,UO,5=PO'._Q,UO,5=PO!$SQ,UO,5=RO'._Q,UO,5=RO!$SQ,UO,5<mO'._Q,UO,5<mO',SQUO1G1{O!'xQUO7+&uO!$SQ,UO1G2XO'._Q,UO1G2XO!$SQ,UO1G2ZO'._Q,UO1G2ZO',SQUO7+'gO',SQUO7+&YO!$SQ,UOANAaO'._Q,UOANAaO'0TQSO'#EhO'0YQSO'#EhO'0bQSO'#FWO'0gQSO'#ErO'0lQSO'#JrO'0wQSO'#JpO'1SQSO,5;SO'1XQ,UO,5<`O'1`QSO'#GRO'1eQSO'#GRO'1jQSO,5<aO'1rQSO,5;SO'1zQ$IUO1G1ZO'2RQSO,5<mO'2WQSO,5<mO'2]QSO,5<oO'2bQSO,5<oO'2gQSO1G1{O'2lQSO1G0nO'2qQ,UO<<KuO'2xQ,UO<<KuO7^Q,UO'#FvO8tQSO'#FuO@mQSO'#EgO!'xQUO,5;oO!0rQSO'#GRO!0rQSO'#GRO!0rQSO'#GTO!0rQSO'#GTO!%lQ,UO7+(ZO!%lQ,UO7+(ZO$L`Q`O1G2oO$L`Q`O1G2oO!$SQ,UO,5=TO!$SQ,UO,5=T",
4351
- stateData: "'4R~O'mOS'nOSROS'oRQ~OPYOQYOV!TO^pOaxObwOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!XXO!csO!hZO!kYO!lYO!mYO!otO!quO!tvO!x]O#p}O$QzO$UfO%`{O%b!OO%d|O%e|O%h!PO%j!QO%m!RO%n!RO%p!SO%}!UO&T!VO&V!WO&X!XO&Z!YO&^!ZO&d![O&j!]O&l!^O&n!_O&p!`O&r!aO'tSO'vTO'yUO(RVO(`[O(miO~OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!cO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO't!bO'vTO'yUO(RVO(`[O(miO~O^!qOl!kO|!lO![!rO!]!pO!^!pO!x<XO!|!wO!}!vO#O!tO#P!uO#Q!sO#T!xO#U!xO'u!iO'vTO'yUO(U!jO(`!nO~O'o!yO~OPYXXYX^YXkYXyYXzYX|YX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX'kYX(RYX(aYX(hYX(iYX~O!a$zX~P(gO[!{O'v!}O'w!{O'x!}O~O[#OO'x!}O'y!}O'z#OO~Oq#QO!O#RO(S#RO(T#TO~OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!cO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO't<^O'vTO'yUO(RVO(`[O(miO~O!U#XO!V#UO!S(XP!S(eP~P+sO!W#aO~P`OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!cO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO'vTO'yUO(RVO(`[O(miO~O!U#gO!x]O#b#jO#c#gO't<_O!g(bP~P._O!h#lO't#kO~O!t#pO!x]O%`#qO~O#d#rO~O!a#sO#d#rO~OP$ZOX$bOk$OOy#wOz#xO|#yO!V$_O!e$QO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO#l$QO#m$QO#n$aO#o$QO#q$RO#s$TO#u$VO#v$WO(RVO(a$XO(h#zO(i#{O~O^(VX'k(VX'i(VX!g(VX!S(VX!X(VX%a(VX!a(VX~P1gO#X$cO#{$cOP(WXX(WXk(WXy(WXz(WX|(WX!V(WX!e(WX!h(WX!l(WX#g(WX#h(WX#i(WX#j(WX#k(WX#l(WX#m(WX#n(WX#o(WX#q(WX#s(WX#u(WX#v(WX(R(WX(a(WX(h(WX(i(WX!X(WX%a(WX~O^(WX!f(WX'k(WX'i(WX!S(WX!g(WXo(WX!a(WX~P3}O#X$cO~O$W$eO$Y$dO$a$jO~O!X$kO$UfO$d$lO$f$nO~Oi%QOk$rOl$qOm$qOs%ROu%SOw%TO|$yO!X$zO!c%YO!h$vO#c%ZO$Q%WO$m%UO$o%VO$r%XO't$pO'vTO'yUO'}%PO(R$sOd(OP~O!h%[O~O!a%^O~O^%_O'k%_O~O'u!iO~P%QO't%fO~O!h%[O't%fO'u!iO'}%PO~Ob%mO!h%[O't%fO~O#o$QO~Oy%rO!X%oO!h%qO%b%uO't%fO'u!iO'vTO'yUO](uP~O!t#pO~O|%wO!X%xO't%fO~O|%wO!X%xO%j%|O't%fO~O't%}O~O#p}O%b!OO%d|O%e|O%h!PO%j!QO%m!RO%n!RO~Oa&WOb&VO!t&TO%`&UO%r&SO~P;fOa&ZObwO!X&YO!tvO!x]O#p}O%`{O%d|O%e|O%h!PO%j!QO%m!RO%n!RO%p!SO~O_&^O#X&aO%b&[O'u!iO~P<eO!h&bO!q&fO~O!h#lO~O!XXO~O^%_O'j&nO'k%_O~O^%_O'j&qO'k%_O~O^%_O'j&sO'k%_O~O'iYX!SYXoYX!gYX&RYX!XYX%aYX!aYX~P(gO!['QO!]&yO!^&yO'u!iO'vTO'yUO~Ol&wO|&vO!U&zO(U&uO!W(YP!W(gP~P?fOg'TO!X'RO't%fO~Ob'YO!h%[O't%fO~Oy%rO!h%qO~Ol!kO|!lO!['_O!]'^O!^'^O!}'bO#O'aO#P'aO#Q'`O#T'dO#U'dO'u!iO'vTO'yUO(U!jO(`!nO~O!x<XO!|'cO~PAQO^%_O!a#sO!h%[O!l'jO#X'hO'k%_O'}%PO(a'fO~Ol!kO|!lO'vTO'yUO(U!jO(`!nO~O!]'^O!^'^O'u!iO~PBzO!['_O!]'^O!^'^O#T'dO#U'dO'u!iO~PBzO!XXO!['_O!]'^O!^'^O#Q'`O#T'dO#U'dO'u!iO~PBzO!['_O!]'^O!^'^O#O'aO#P'aO#Q'`O#T'dO#U'dO'u!iO~PBzO'p'nO'q'nO'r'pO~O[!{O'v'rO'w!{O'x'rO~O[#OO'x'rO'y'rO'z#OO~Oq#QO!O#RO(S#RO(T'vO~O!U'xO!S&}X!S'TX!V&}X!V'TX~P+sO!V'zO!S(XX~OP$ZOX$bOk$OOy#wOz#xO|#yO!V'zO!e$QO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO#l$QO#m$QO#n$aO#o$QO#q$RO#s$TO#u$VO#v$WO(RVO(a$XO(h#zO(i#{O~O!S(XX~PGUO!S(PO~O!S(dX!V(dX!a(dX!g(dX(a(dX~O#X(dX#d#]X!W(dX~PI[O#X(QO!S(fX!V(fX~O!V(RO!S(eX~O!S(UO~O#X$cO~PI[O!W(VO~P`Oy#wOz#xO|#yO!f#uO!h#vO(RVOP!jaX!jak!ja!V!ja!e!ja!l!ja#g!ja#h!ja#i!ja#j!ja#k!ja#l!ja#m!ja#n!ja#o!ja#q!ja#s!ja#u!ja#v!ja(a!ja(h!ja(i!ja~O^!ja'k!ja'i!ja!S!ja!g!jao!ja!X!ja%a!ja!a!ja~PJrO!g(WO~O|%wO!X%xO!x]O#b(ZO#c(YO't%fO~O!a#sO#X([O(a'fO!V(cX^(cX'k(cX~O!g(cX~PMvO!V(_O!g(bX~O!g(aO~O|%wO!X%xO#c(YO't%fO~Oy(bOz(cO!f#uO!h#vO!x!wa|!wa~O!t!wa%`!wa!X!wa#b!wa#c!wa't!wa~P! OO!t(gO~OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!XXO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO't!bO'vTO'yUO(RVO(`[O(miO~Oi%QOk$rOl$qOm$qOs%ROu%SOw<qO|$yO!X$zO!c={O!h$vO#c<wO$Q%WO$m<sO$o<uO$r%XO't(kO'vTO'yUO'}%PO(R$sO~O#d(mO~Oi%QOk$rOl$qOm$qOs%ROu%SOw%TO|$yO!X$zO!c%YO!h$vO#c%ZO$Q%WO$m%UO$o%VO$r%XO't(kO'vTO'yUO'}%PO(R$sO~Od([P~P!%lO!U(qO!g(]P~P%QO(U(sO(`[O~O|(uO!h#vO(U(sO(`[O~OP<WOQ<WOa=wOb!fOikOk<WOlkOmkOskOu<WOw<WO|WO!QkO!RkO!X!cO!c<ZO!hZO!k<WO!l<WO!m<WO!o<[O!q<]O!t!eO$Q!hO$UfO't)TO'vTO'yUO(RVO(`[O(m=uO~Oz)WO!h#vO~O!V$_O^$ka'k$ka'i$ka!g$ka!S$ka!X$ka%a$ka!a$ka~O#p)[O~P!$SOy)_O!a)^O!X$XX$T$XX$W$XX$Y$XX$a$XX~O!a)^O!X(jX$T(jX$W(jX$Y(jX$a(jX~Oy)_O~P!+bOy)_O!X(jX$T(jX$W(jX$Y(jX$a(jX~O!X)aO$T)eO$W)`O$Y)`O$a)fO~O!U)iO~P!'xO$W$eO$Y$dO$a)mO~Og$sXy$sX|$sX!f$sX(h$sX(i$sX~OdfXd$sXgfX!VfX#XfX~P!-WOl)oO~Oq)pO(S)qO(T)sO~Og)|Oy)uO|)vO(h)xO(i)zO~Od)tO~P!.aOd)}O~Oi%QOk$rOl$qOm$qOs%ROu%SOw<qO|$yO!X$zO!c={O!h$vO#c<wO$Q%WO$m<sO$o<uO$r%XO'vTO'yUO'}%PO(R$sO~O!U*RO't*OO!g(nP~P!/OO#d*TO~O!h*UO~O!U*ZO't*WO!S(oP~P!/OOk*gO|*_O![*eO!]*^O!^*^O!h*UO#T*fO%W*aO'u!iO(U!jO~O!W*dO~P!1UO!f#uOg(QXy(QX|(QX(h(QX(i(QX!V(QX#X(QX~Od(QX#y(QX~P!1}Og*jO#X*iOd(PX!V(PX~O!V*kOd(OX~O't%}Od(OP~O!h*rO~O't(kO~O|%wO!U#gO!X%xO!x]O#b#jO#c#gO't%fO!g(bP~O!a#sO#d*vO~OP$ZOX$bOk$OOy#wOz#xO|#yO!e$QO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO#l$QO#m$QO#n$aO#o$QO#q$RO#s$TO#u$VO#v$WO(RVO(a$XO(h#zO(i#{O~O^!ba!V!ba'k!ba'i!ba!S!ba!g!bao!ba!X!ba%a!ba!a!ba~P!4aOy#wOz#xO|#yO!f#uO!h#vO(RVOP!naX!nak!na!V!na!e!na!l!na#g!na#h!na#i!na#j!na#k!na#l!na#m!na#n!na#o!na#q!na#s!na#u!na#v!na(a!na(h!na(i!na~O^!na'k!na'i!na!S!na!g!nao!na!X!na%a!na!a!na~P!6zOy#wOz#xO|#yO!f#uO!h#vO(RVOP!paX!pak!pa!V!pa!e!pa!l!pa#g!pa#h!pa#i!pa#j!pa#k!pa#l!pa#m!pa#n!pa#o!pa#q!pa#s!pa#u!pa#v!pa(a!pa(h!pa(i!pa~O^!pa'k!pa'i!pa!S!pa!g!pao!pa!X!pa%a!pa!a!pa~P!9eOg+OO!X'RO%a*}O'}%PO~O!a+QO^'|X!X'|X'k'|X!V'|X~O^%_O!XXO'k%_O~O!h%[O'}%PO~O!h%[O't%fO'}%PO~O!a#sO#d(mO~O%b+^O't+YO'vTO'yUO!W(vP~O!V+_O](uX~O(U(sO~OX+cO~O]+dO~O!X%oO't%fO'u!iO](uP~O|%wO!U+hO!V(RO!X%xO't%fO!S(eP~Ol&}O|+jO!U+iO'vTO'yUO(U(sO~O!W(gP~P!?TO!V+kO^(rX'k(rX~O#X+oO'}%PO~Og+rO!X$zO'}%PO~O!X+tO~Oy+vO!XXO~O!t+{O~Ob,QO~O't#kO!W(tP~Ob%mO~O%b!OO't%}O~P<eOX,WO],VO~OPYOQYOaxObwOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!csO!hZO!kYO!lYO!mYO!otO!quO!tvO!x]O$UfO%`{O'vTO'yUO(RVO(`[O(miO~O!X!cO$Q!hO't!bO~P!AhO],VO^%_O'k%_O~O^,[O#p,^O%d,^O%e,^O~P%QO!h&bO~O&T,cO~O!X,eO~O&f,gO&h,hOP&caQ&caV&ca^&caa&cab&cai&cak&cal&cam&cas&cau&caw&ca|&ca!Q&ca!R&ca!X&ca!c&ca!h&ca!k&ca!l&ca!m&ca!o&ca!q&ca!t&ca!x&ca#p&ca$Q&ca$U&ca%`&ca%b&ca%d&ca%e&ca%h&ca%j&ca%m&ca%n&ca%p&ca%}&ca&T&ca&V&ca&X&ca&Z&ca&^&ca&d&ca&j&ca&l&ca&n&ca&p&ca&r&ca'i&ca't&ca'v&ca'y&ca(R&ca(`&ca(m&ca!W&ca&[&ca_&ca&a&ca~O't,mO~O!V{X!V!_X!W{X!W!_X!a{X!a!_X!h!_X#X{X'}!_X~O!a,rO#X,qO!V#aX!V(ZX!W#aX!W(ZX!a(ZX!h(ZX'}(ZX~O!a,tO!h%[O'}%PO!V!ZX!W!ZX~Ol!kO|!lO'vTO'yUO(U!jO~OP<WOQ<WOa=wOb!fOikOk<WOlkOmkOskOu<WOw<WO|WO!QkO!RkO!X!cO!c<ZO!hZO!k<WO!l<WO!m<WO!o<[O!q<]O!t!eO$Q!hO$UfO'vTO'yUO(RVO(`[O(m=uO~O't<|O~P!J}O!V,xO!W(YX~O!W,zO~O!a,rO#X,qO!V#aX!W#aX~O!V,{O!W(gX~O!W,}O~O!]-OO!^-OO'u!iO~P!JlO!W-RO~P'TOg-UO!X'RO~O!S-ZO~Ol!wa![!wa!]!wa!^!wa!|!wa!}!wa#O!wa#P!wa#Q!wa#T!wa#U!wa'u!wa'v!wa'y!wa(U!wa(`!wa~P! OO^%_O!a#sO!h%[O!l-`O#X-^O'k%_O'}%PO(a'fO~O!]-bO!^-bO'u!iO~PBzO![-dO!]-bO!^-bO#T-eO#U-eO'u!iO~PBzO![-dO!]-bO!^-bO#Q-fO#T-eO#U-eO'u!iO~PBzO![-dO!]-bO!^-bO#O-gO#P-gO#Q-fO#T-eO#U-eO'u!iO~PBzO![-dO!]-bO!^-bO!}-hO#O-gO#P-gO#Q-fO#T-eO#U-eO'u!iO~PBzO^%_O#X-^O'k%_O~O^%_O!a#sO#X-^O'k%_O~O^%_O!a#sO!l-`O#X-^O'k%_O(a'fO~O'p'nO'q'nO'r-mO~Oo-nO~O!S&}a!V&}a~P!4aO!U-rO!S&}X!V&}X~P%QO!V'zO!S(Xa~O!S(Xa~PGUO!V(RO!S(ea~O|%wO!U-vO!X%xO't%fO!S'TX!V'TX~O!V(_O!g(ba~O|%wO!X%xO#c-yO't%fO~O#X-{O!V(ca!g(ca^(ca'k(ca~O!a#sO~P#(aO|%wO!U.OO!X%xO!x]O#b.QO#c.OO't%fO!V'VX!g'VX~Oz.UO!h#vO~Og.XO!X'RO%a.WO'}%PO~O^#[i!V#[i'k#[i'i#[i!S#[i!g#[io#[i!X#[i%a#[i!a#[i~P!4aOg>ROy)uO|)vO(h)xO(i)zO~O#d#Wa^#Wa#X#Wa'k#Wa!V#Wa!g#Wa!X#Wa!S#Wa~P#*rO#d(QXP(QXX(QX^(QXk(QXz(QX!e(QX!h(QX!l(QX#g(QX#h(QX#i(QX#j(QX#k(QX#l(QX#m(QX#n(QX#o(QX#q(QX#s(QX#u(QX#v(QX'k(QX(R(QX(a(QX!g(QX!S(QX'i(QXo(QX!X(QX%a(QX!a(QX~P!1}O!V.bOd([X~P!.aOd.dO~O!V.eO!g(]X~P!4aO!g.hO~O!S.jO~OP$ZOy#wOz#xO|#yO!f#uO!h#vO!l$ZO(RVOX#fi^#fik#fi!V#fi!e#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'k#fi(a#fi(h#fi(i#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O#g#fi~P#.nO#g#|O~P#.nOP$ZOy#wOz#xO|#yO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O(RVOX#fi^#fi!V#fi!e#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'k#fi(a#fi(h#fi(i#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~Ok#fi~P#1`Ok$OO~P#1`OP$ZOk$OOy#wOz#xO|#yO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO(RVO^#fi!V#fi#q#fi#s#fi#u#fi#v#fi'k#fi(a#fi(h#fi(i#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~OX#fi!e#fi#l#fi#m#fi#n#fi#o#fi~P#4QOX$bO!e$QO#l$QO#m$QO#n$aO#o$QO~P#4QOP$ZOX$bOk$OOy#wOz#xO|#yO!e$QO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO#l$QO#m$QO#n$aO#o$QO#q$RO(RVO^#fi!V#fi#s#fi#u#fi#v#fi'k#fi(a#fi(i#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O(h#fi~P#7RO(h#zO~P#7ROP$ZOX$bOk$OOy#wOz#xO|#yO!e$QO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO#l$QO#m$QO#n$aO#o$QO#q$RO#s$TO(RVO(h#zO^#fi!V#fi#u#fi#v#fi'k#fi(a#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O(i#fi~P#9sO(i#{O~P#9sOP$ZOX$bOk$OOy#wOz#xO|#yO!e$QO!f#uO!h#vO!l$ZO#g#|O#h#}O#i#}O#j#}O#k$PO#l$QO#m$QO#n$aO#o$QO#q$RO#s$TO#u$VO(RVO(h#zO(i#{O~O^#fi!V#fi#v#fi'k#fi(a#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#<eOPYXXYXkYXyYXzYX|YX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(RYX(aYX(hYX(iYX!VYX!WYX~O#yYX~P#?OOP$ZOX<oOk<cOy#wOz#xO|#yO!e<eO!f#uO!h#vO!l$ZO#g<aO#h<bO#i<bO#j<bO#k<dO#l<eO#m<eO#n<nO#o<eO#q<fO#s<hO#u<jO#v<kO(RVO(a$XO(h#zO(i#{O~O#y.lO~P#A]OP(WXX(WXk(WXy(WXz(WX|(WX!e(WX!f(WX!h(WX!l(WX#g(WX#h(WX#i(WX#j(WX#k(WX#l(WX#m(WX#n(WX#q(WX#s(WX#u(WX#v(WX(R(WX(a(WX(h(WX(i(WX!V(WX~O#X<pO#{<pO#o(WX#y(WX!W(WX~P#CZO^'Ya!V'Ya'k'Ya'i'Ya!g'Ya!S'Yao'Ya!X'Ya%a'Ya!a'Ya~P!4aOP#fiX#fi^#fik#fiz#fi!V#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'k#fi(R#fi(a#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#*rO^#zi!V#zi'k#zi'i#zi!S#zi!g#zio#zi!X#zi%a#zi!a#zi~P!4aO$W.qO$Y.qO~O$W.rO$Y.rO~O!a)^O#X.sO!X$^X$T$^X$W$^X$Y$^X$a$^X~O!U.tO~O!X)aO$T.vO$W)`O$Y)`O$a.wO~O!V<lO!W(VX~P#A]O!W.xO~O!a)^O$a(jX~O$a.zO~Oq)pO(S)qO(T.}O~Ol/QO!S/RO'vTO'yUO~O!VcX!acX!gcX!g$sX(acX~P!-WO!g/XO~P#*rO!V/YO!a#sO(a'fO!g(nX~O!g/_O~O!U*RO't%fO!g(nP~O#d/aO~O!S$sX!V$sX!a$zX~P!-WO!V/bO!S(oX~P#*rO!a/dO~O!S/fO~Ok/jO!a#sO!h%[O'}%PO(a'fO~O't/lO~O!a+QO~O^%_O!V/pO'k%_O~O!W/rO~P!1UO!]/sO!^/sO'u!iO(U!jO~O|/uO(U!jO~O#T/vO~O't%}Od'_X!V'_X~O!V*kOd(Oa~Od/{O~Oy/|Oz/|O|/}Ogva(hva(iva!Vva#Xva~Odva#yva~P$ tOy)uO|)vOg$la(h$la(i$la!V$la#X$la~Od$la#y$la~P$!jOy)uO|)vOg$na(h$na(i$na!V$na#X$na~Od$na#y$na~P$#]O#d0PO~Od$|a!V$|a#X$|a#y$|a~P!.aO#d0SO~Oy#wOz#xO|#yO!f#uO!h#vO(RVOP!niX!nik!ni!V!ni!e!ni!l!ni#g!ni#h!ni#i!ni#j!ni#k!ni#l!ni#m!ni#n!ni#o!ni#q!ni#s!ni#u!ni#v!ni(a!ni(h!ni(i!ni~O^!ni'k!ni'i!ni!S!ni!g!nio!ni!X!ni%a!ni!a!ni~P$$jOg.XO!X'RO%a.WO~Oi0ZO't0YO~P!/RO!a+QO^'|a!X'|a'k'|a!V'|a~O#d0aO~OXYX!VcX!WcX~O!V0bO!W(vX~O!W0dO~OX0eO~O't+YO'vTO'yUO~O!X%oO't%fO]'gX!V'gX~O!V+_O](ua~O!g0jO~P!4aOX0mO~O]0nO~O!V+kO^(ra'k(ra~O#X0tO~Og0wO!X$zO~O(U(sO!W(sP~Og1QO!X0}O%a1PO'}%PO~OX1[O!V1YO!W(tX~O!W1]O~O]1_O^%_O'k%_O~O't#kO'vTO'yUO~O#X$cO#o1bO#{$cO&R1cO^(WX~P#CZO#X$cO#o1bO&R1cO~O^1dO~P%QO^1fO~O&[1jOP&YiQ&YiV&Yi^&Yia&Yib&Yii&Yik&Yil&Yim&Yis&Yiu&Yiw&Yi|&Yi!Q&Yi!R&Yi!X&Yi!c&Yi!h&Yi!k&Yi!l&Yi!m&Yi!o&Yi!q&Yi!t&Yi!x&Yi#p&Yi$Q&Yi$U&Yi%`&Yi%b&Yi%d&Yi%e&Yi%h&Yi%j&Yi%m&Yi%n&Yi%p&Yi%}&Yi&T&Yi&V&Yi&X&Yi&Z&Yi&^&Yi&d&Yi&j&Yi&l&Yi&n&Yi&p&Yi&r&Yi'i&Yi't&Yi'v&Yi'y&Yi(R&Yi(`&Yi(m&Yi!W&Yi_&Yi&a&Yi~O_1pO!W1nO&a1oO~P`O!XXO!h1rO~O&h,hOP&ciQ&ciV&ci^&cia&cib&cii&cik&cil&cim&cis&ciu&ciw&ci|&ci!Q&ci!R&ci!X&ci!c&ci!h&ci!k&ci!l&ci!m&ci!o&ci!q&ci!t&ci!x&ci#p&ci$Q&ci$U&ci%`&ci%b&ci%d&ci%e&ci%h&ci%j&ci%m&ci%n&ci%p&ci%}&ci&T&ci&V&ci&X&ci&Z&ci&^&ci&d&ci&j&ci&l&ci&n&ci&p&ci&r&ci'i&ci't&ci'v&ci'y&ci(R&ci(`&ci(m&ci!W&ci&[&ci_&ci&a&ci~O!S1xO~O!V!Za!W!Za~P#A]Ol!kO|!lO!U2OO(U!jO!V'OX!W'OX~P?fO!V,xO!W(Ya~O!V'UX!W'UX~P!?TO!V,{O!W(ga~O!W2VO~P'TO^%_O#X2`O'k%_O~O^%_O!a#sO#X2`O'k%_O~O^%_O!a#sO!h%[O!l2dO#X2`O'k%_O'}%PO(a'fO~O!]2eO!^2eO'u!iO~PBzO![2hO!]2eO!^2eO#T2iO#U2iO'u!iO~PBzO![2hO!]2eO!^2eO#Q2jO#T2iO#U2iO'u!iO~PBzO![2hO!]2eO!^2eO#O2kO#P2kO#Q2jO#T2iO#U2iO'u!iO~PBzO^%_O!a#sO!l2dO#X2`O'k%_O(a'fO~O^%_O'k%_O~P!4aO!V$_Oo$ka~O!S&}i!V&}i~P!4aO!V'zO!S(Xi~O!V(RO!S(ei~O!S(fi!V(fi~P!4aO!V(_O!g(bi~O!V(ci!g(ci^(ci'k(ci~P!4aO#X2oO!V(ci!g(ci^(ci'k(ci~O|%wO!X%xO!x]O#b2rO#c2qO't%fO~O|%wO!X%xO#c2qO't%fO~Og2yO!X'RO%a2xO~Og2yO!X'RO%a2xO'}%PO~O#dvaPvaXva^vakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva'kva(Rva(ava!gva!Sva'ivaova!Xva%ava!ava~P$ tO#d$laP$laX$la^$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la'k$la(R$la(a$la!g$la!S$la'i$lao$la!X$la%a$la!a$la~P$!jO#d$naP$naX$na^$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na'k$na(R$na(a$na!g$na!S$na'i$nao$na!X$na%a$na!a$na~P$#]O#d$|aP$|aX$|a^$|ak$|az$|a!V$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a'k$|a(R$|a(a$|a!g$|a!S$|a'i$|a#X$|ao$|a!X$|a%a$|a!a$|a~P#*rO^#[q!V#[q'k#[q'i#[q!S#[q!g#[qo#[q!X#[q%a#[q!a#[q~P!4aOd'PX!V'PX~P!%lO!V.bOd([a~O!U3RO!V'QX!g'QX~P%QO!V.eO!g(]a~O!V.eO!g(]a~P!4aO!S3UO~O#y!ja!W!ja~PJrO#y!ba!V!ba!W!ba~P#A]O#y!na!W!na~P!6zO#y!pa!W!pa~P!9eO!X3hO$UfO$_3iO~O!W3mO~Oo3nO~P#*rO^$hq!V$hq'k$hq'i$hq!S$hq!g$hqo$hq!X$hq%a$hq!a$hq~P!4aO!S3oO~Ol/QO'vTO'yUO~Oy)uO|)vO(i)zOg%Xi(h%Xi!V%Xi#X%Xi~Od%Xi#y%Xi~P$JzOy)uO|)vOg%Zi(h%Zi(i%Zi!V%Zi#X%Zi~Od%Zi#y%Zi~P$KmO(a$XO~P#*rO!U3rO't%fO!V'ZX!g'ZX~O!V/YO!g(na~O!V/YO!a#sO!g(na~O!V/YO!a#sO(a'fO!g(na~Od$ui!V$ui#X$ui#y$ui~P!.aO!U3zO't*WO!S']X!V']X~P!/OO!V/bO!S(oa~O!V/bO!S(oa~P#*rO!a#sO~O!a#sO#o4SO~Ok4VO!a#sO(a'fO~Od(Pi!V(Pi~P!.aO#X4YOd(Pi!V(Pi~P!.aO!g4]O~O^$iq!V$iq'k$iq'i$iq!S$iq!g$iqo$iq!X$iq%a$iq!a$iq~P!4aO!V4aO!X(pX~P#*rO!f#uO~P3}O^$sX!X$sX%UYX'k$sX!V$sX~P!-WO%U4cO^hXghXyhX|hX!XhX'khX(hhX(ihX!VhX~O%U4cO~O%b4jO't+YO'vTO'yUO!V'fX!W'fX~O!V0bO!W(va~OX4nO~O]4oO~O!S4sO~O^%_O'k%_O~P#*rO!X$zO~P#*rO!V4xO#X4zO!W(sX~O!W4{O~Ol!kO|4}O![5]O!]5RO!^5RO!x<XO!|5[O!}5ZO#O5YO#P5YO#Q5XO#T5WO#U!xO'u!iO'vTO'yUO(U!jO(`!nO~O!W5VO~P%%qOg5bO!X0}O%a5aO~Og5bO!X0}O%a5aO'}%PO~O't#kO!V'eX!W'eX~O!V1YO!W(ta~O'vTO'yUO(U5kO~O]5oO~O!g5rO~P%QO^5tO~O^5tO~P%QO#o5vO&R5wO~PMvO_1pO!W5{O&a1oO~P`O!a5}O~O!a6PO!V(Zi!W(Zi!a(Zi!h(Zi'}(Zi~O!V#ai!W#ai~P#A]O#X6QO!V#ai!W#ai~O!V!Zi!W!Zi~P#A]O^%_O#X6ZO'k%_O~O^%_O!a#sO#X6ZO'k%_O~O^%_O!a#sO!l6`O#X6ZO'k%_O(a'fO~O!h%[O'}%PO~P%+RO!]6aO!^6aO'u!iO~PBzO![6dO!]6aO!^6aO#T6eO#U6eO'u!iO~PBzO![6dO!]6aO!^6aO#Q6fO#T6eO#U6eO'u!iO~PBzO!V(_O!g(bq~O!V(cq!g(cq^(cq'k(cq~P!4aO|%wO!X%xO#c6jO't%fO~O!X'RO%a6mO~Og6pO!X'RO%a6mO~O#d%XiP%XiX%Xi^%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi'k%Xi(R%Xi(a%Xi!g%Xi!S%Xi'i%Xio%Xi!X%Xi%a%Xi!a%Xi~P$JzO#d%ZiP%ZiX%Zi^%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi'k%Zi(R%Zi(a%Zi!g%Zi!S%Zi'i%Zio%Zi!X%Zi%a%Zi!a%Zi~P$KmO#d$uiP$uiX$ui^$uik$uiz$ui!V$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui'k$ui(R$ui(a$ui!g$ui!S$ui'i$ui#X$uio$ui!X$ui%a$ui!a$ui~P#*rOd'Pa!V'Pa~P!.aO!V'Qa!g'Qa~P!4aO!V.eO!g(]i~O#y#[i!V#[i!W#[i~P#A]OP$ZOy#wOz#xO|#yO!f#uO!h#vO!l$ZO(RVOX#fik#fi!e#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(a#fi(h#fi(i#fi!V#fi!W#fi~O#g#fi~P%6OO#g<aO~P%6OOP$ZOy#wOz#xO|#yO!f#uO!h#vO!l$ZO#g<aO#h<bO#i<bO#j<bO(RVOX#fi!e#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(a#fi(h#fi(i#fi!V#fi!W#fi~Ok#fi~P%8ZOk<cO~P%8ZOP$ZOk<cOy#wOz#xO|#yO!f#uO!h#vO!l$ZO#g<aO#h<bO#i<bO#j<bO#k<dO(RVO#q#fi#s#fi#u#fi#v#fi#y#fi(a#fi(h#fi(i#fi!V#fi!W#fi~OX#fi!e#fi#l#fi#m#fi#n#fi#o#fi~P%:fOX<oO!e<eO#l<eO#m<eO#n<nO#o<eO~P%:fOP$ZOX<oOk<cOy#wOz#xO|#yO!e<eO!f#uO!h#vO!l$ZO#g<aO#h<bO#i<bO#j<bO#k<dO#l<eO#m<eO#n<nO#o<eO#q<fO(RVO#s#fi#u#fi#v#fi#y#fi(a#fi(i#fi!V#fi!W#fi~O(h#fi~P%=QO(h#zO~P%=QOP$ZOX<oOk<cOy#wOz#xO|#yO!e<eO!f#uO!h#vO!l$ZO#g<aO#h<bO#i<bO#j<bO#k<dO#l<eO#m<eO#n<nO#o<eO#q<fO#s<hO(RVO(h#zO#u#fi#v#fi#y#fi(a#fi!V#fi!W#fi~O(i#fi~P%?]O(i#{O~P%?]OP$ZOX<oOk<cOy#wOz#xO|#yO!e<eO!f#uO!h#vO!l$ZO#g<aO#h<bO#i<bO#j<bO#k<dO#l<eO#m<eO#n<nO#o<eO#q<fO#s<hO#u<jO(RVO(h#zO(i#{O~O#v#fi#y#fi(a#fi!V#fi!W#fi~P%AhO^#wy!V#wy'k#wy'i#wy!S#wy!g#wyo#wy!X#wy%a#wy!a#wy~P!4aOg>SOy)uO|)vO(h)xO(i)zO~OP#fiX#fik#fiz#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(R#fi(a#fi!V#fi!W#fi~P%D`O!f#uOP(QXX(QXg(QXk(QXy(QXz(QX|(QX!e(QX!h(QX!l(QX#g(QX#h(QX#i(QX#j(QX#k(QX#l(QX#m(QX#n(QX#o(QX#q(QX#s(QX#u(QX#v(QX#y(QX(R(QX(a(QX(h(QX(i(QX!V(QX!W(QX~O#y#zi!V#zi!W#zi~P#A]O#y!ni!W!ni~P$$jO!W6|O~O!V'Ya!W'Ya~P#A]O!a#sO(a'fO!V'Za!g'Za~O!V/YO!g(ni~O!V/YO!a#sO!g(ni~Od$uq!V$uq#X$uq#y$uq~P!.aO!S']a!V']a~P#*rO!a7TO~O!V/bO!S(oi~P#*rO!V/bO!S(oi~O!S7XO~O!a#sO#o7^O~Ok7_O!a#sO(a'fO~O!S7aO~Od$wq!V$wq#X$wq#y$wq~P!.aO^$iy!V$iy'k$iy'i$iy!S$iy!g$iyo$iy!X$iy%a$iy!a$iy~P!4aO!V4aO!X(pa~O^#[y!V#[y'k#[y'i#[y!S#[y!g#[yo#[y!X#[y%a#[y!a#[y~P!4aOX7fO~O!V0bO!W(vi~O]7lO~O!a6PO~O(U(sO!V'bX!W'bX~O!V4xO!W(sa~O!h%[O'}%PO^(ZX!a(ZX!l(ZX#X(ZX'k(ZX(a(ZX~O't7uO~P._O!x<XO!|7yO!}7xO#O7wO#P7wO#Q7vO#T'dO#U'dO~PBzO^%_O!a#sO!l'jO#X'hO'k%_O(a'fO~O!W7}O~P%%qOl!kO'vTO'yUO(U!jO(`!nO~O|8OO~P&!mO![8SO!]8RO!^8RO#Q7vO#T'dO#U'dO'u!iO~PBzO![8SO!]8RO!^8RO#O8TO#P8TO#Q7vO#T'dO#U'dO'u!iO~PBzO!]8RO!^8RO'u!iO(U!jO(`!nO~O!X0}O~O!X0}O%a8VO~Og8YO!X0}O%a8VO~OX8_O!V'ea!W'ea~O!V1YO!W(ti~O!g8cO~O!g8dO~O!g8eO~O!g8eO~P%QO^8gO~O!a8jO~O!g8kO~O!V(fi!W(fi~P#A]O^%_O#X8sO'k%_O~O^%_O!a#sO#X8sO'k%_O~O^%_O!a#sO!l8wO#X8sO'k%_O(a'fO~O!h%[O'}%PO~P&'ZO!]8xO!^8xO'u!iO~PBzO![8{O!]8xO!^8xO#T8|O#U8|O'u!iO~PBzO!V(_O!g(by~O!V(cy!g(cy^(cy'k(cy~P!4aO!X'RO%a9PO~O#d$uqP$uqX$uq^$uqk$uqz$uq!V$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq'k$uq(R$uq(a$uq!g$uq!S$uq'i$uq#X$uqo$uq!X$uq%a$uq!a$uq~P#*rO#d$wqP$wqX$wq^$wqk$wqz$wq!V$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq'k$wq(R$wq(a$wq!g$wq!S$wq'i$wq#X$wqo$wq!X$wq%a$wq!a$wq~P#*rO!V'Qi!g'Qi~P!4aO#y#[q!V#[q!W#[q~P#A]Oy/|Oz/|O|/}OPvaXvagvakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva#yva(Rva(ava(hva(iva!Vva!Wva~Oy)uO|)vOP$laX$lag$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la#y$la(R$la(a$la(h$la(i$la!V$la!W$la~Oy)uO|)vOP$naX$nag$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na#y$na(R$na(a$na(h$na(i$na!V$na!W$na~OP$|aX$|ak$|az$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a#y$|a(R$|a(a$|a!V$|a!W$|a~P%D`O#y$hq!V$hq!W$hq~P#A]O#y$iq!V$iq!W$iq~P#A]O!W9ZO~O#y9[O~P!.aO!a#sO!V'Zi!g'Zi~O!a#sO(a'fO!V'Zi!g'Zi~O!V/YO!g(nq~O!S']i!V']i~P#*rO!V/bO!S(oq~O!S9bO~P#*rO!S9bO~Od(Py!V(Py~P!.aO!V'`a!X'`a~P#*rO^%Tq!X%Tq'k%Tq!V%Tq~P#*rOX9gO~O!V0bO!W(vq~O#X9kO!V'ba!W'ba~O!V4xO!W(si~P#A]O^%_O!a+QO'k%_O~OPYXXYXkYXyYXzYX|YX!SYX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(RYX(aYX(hYX(iYX~O!a%RX#o%RX~P&:hO#T-eO#U-eO~PBzO#Q9pO#T-eO#U-eO~PBzO#O9qO#P9qO#Q9pO#T-eO#U-eO~PBzO!}9rO#O9qO#P9qO#Q9pO#T-eO#U-eO~PBzO!]9uO!^9uO'u!iO(U!jO(`!nO~O![9xO!]9uO!^9uO#Q9pO#T-eO#U-eO'u!iO~PBzO!X0}O%a9{O~O'vTO'yUO(U:QO~O!V1YO!W(tq~O!g:TO~O!g:TO~P%QO!g:VO~O!g:WO~O#X:YO!V#ay!W#ay~O!V#ay!W#ay~P#A]O^%_O#X:^O'k%_O~O^%_O!a#sO#X:^O'k%_O~O^%_O!a#sO!l:bO#X:^O'k%_O(a'fO~O!h%[O'}%PO~P&AZO!]:cO!^:cO'u!iO~PBzO!X'RO%a:gO~O#y#wy!V#wy!W#wy~P#A]OP$uiX$uik$uiz$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui#y$ui(R$ui(a$ui!V$ui!W$ui~P%D`Oy)uO|)vO(i)zOP%XiX%Xig%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi#y%Xi(R%Xi(a%Xi(h%Xi!V%Xi!W%Xi~Oy)uO|)vOP%ZiX%Zig%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi#y%Zi(R%Zi(a%Zi(h%Zi(i%Zi!V%Zi!W%Zi~O#y$iy!V$iy!W$iy~P#A]O#y#[y!V#[y!W#[y~P#A]O!a#sO!V'Zq!g'Zq~O!V/YO!g(ny~O!S']q!V']q~P#*rO!S:nO~P#*rO!V0bO!W(vy~O!V4xO!W(sq~O#T2iO#U2iO~PBzO#Q:uO#T2iO#U2iO~PBzO#O:vO#P:vO#Q:uO#T2iO#U2iO~PBzO!]:zO!^:zO'u!iO(U!jO(`!nO~O!X0}O%a:}O~O!g;QO~O^%_O#X;VO'k%_O~O^%_O!a#sO#X;VO'k%_O~O^%_O!a#sO!l;ZO#X;VO'k%_O(a'fO~O!X'RO%a;^O~OP$uqX$uqk$uqz$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq#y$uq(R$uq(a$uq!V$uq!W$uq~P%D`OP$wqX$wqk$wqz$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq#y$wq(R$wq(a$wq!V$wq!W$wq~P%D`Od%]!Z!V%]!Z#X%]!Z#y%]!Z~P!.aO!V'bq!W'bq~P#A]O#T6eO#U6eO~PBzO#Q;bO#T6eO#U6eO~PBzO!V#a!Z!W#a!Z~P#A]O^%_O#X;mO'k%_O~O^%_O!a#sO#X;mO'k%_O~O#d%]!ZP%]!ZX%]!Z^%]!Zk%]!Zz%]!Z!V%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z'k%]!Z(R%]!Z(a%]!Z!g%]!Z!S%]!Z'i%]!Z#X%]!Zo%]!Z!X%]!Z%a%]!Z!a%]!Z~P#*rO#T8|O#U8|O~PBzO^%_O#X;zO'k%_O~OP%]!ZX%]!Zk%]!Zz%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z#y%]!Z(R%]!Z(a%]!Z!V%]!Z!W%]!Z~P%D`Oo(VX~P1gO'u!iO~P!'xO!ScX!VcX#XcX~P&:hOPYXXYXkYXyYXzYX|YX!VYX!VcX!eYX!fYX!hYX!lYX#XYX#XcX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(RYX(aYX(hYX(iYX~O!acX!gYX!gcX(acX~P')iOP<WOQ<WOa=wOb!fOikOk<WOlkOmkOskOu<WOw<WO|WO!QkO!RkO!XXO!c<ZO!hZO!k<WO!l<WO!m<WO!o<[O!q<]O!t!eO$Q!hO$UfO't)TO'vTO'yUO(RVO(`[O(m=uO~O!V<lO!W$ka~Oi%QOk$rOl$qOm$qOs%ROu%SOw<rO|$yO!X$zO!c=|O!h$vO#c<xO$Q%WO$m<tO$o<vO$r%XO't(kO'vTO'yUO'}%PO(R$sO~O#p)[O~P'._O!WYX!WcX~P')iO#d<`O~O!a#sO#d<`O~O#X<pO~O#o<eO~O#X<zO!V(fX!W(fX~O#X<pO!V(dX!W(dX~O#d<{O~Od<}O~P!.aO#d=SO~O#d=TO~O!a#sO#d=UO~O!a#sO#d<{O~O#y=VO~P#A]O#d=WO~O#d=XO~O#d=YO~O#d=ZO~O#d=[O~O#d=]O~O#y=^O~P!.aO#y=_O~P!.aO$U~!f!|!}#P#Q#T#b#c#n(m$m$o$r%U%`%a%b%h%j%m%n%p%r~'oR$U(m#h!R'm'u#il#g#jky'n(U'n't$W$Y$W~",
4352
- goto: "$2w(zPPPP({P)OP)`P+j/pPPPP7RPP7hP=gAYPAmPAmPPPAmPC]PAmPAmPAmPCaPPCfPDPPH}PPPIRPPPPIRLUPPPL[NiPIRP!#SPPPP!%fIRPPPIRPIRP!'xIRP!+`!,b!,gP!-X!-]!-XPPPPP!0j!3SPP!3]!4kP!,bIRIR!8S!;`!@l!@l!DePPP!DlIRPPPPPPPPPPP!G{P!IbPPIR!JsPIRPIRIRIRIRPIR!LZPP# eP#$kP#$o#$y#$}#$}P# bP#%R#%RP#(XP#(]IRIR#(c#+hAmPAmPAmAmP#,rAmAm#.lAm#0yAm#2mAmAm#3Z#5V#5V#5Z#5c#5V#5kP#5VPAm#6gAm#7oAmAm7RPPP#8zPP#9d#9dP#9dP#9y#9dPP#:PP#9vP#9v#:c!3X#9v#:}#;T7O)O#;W)OP#;_#;_#;_P)OP)OP)OP)OPP)OP#;e#;hP#;h)OP#;lP#;oP)OP)OP)OP)OP)OP)O)OPP#;u#;{#<V#<]#<c#<i#<o#<}#=T#=Z#=e#=k#>g#>v#>|#?`#?f#?l#?z#@a#Aq#BP#BV#B]#Bc#Bi#Bs#By#CP#CZ#Cm#CsPPPPPPPPPP#CyPPPPPPP#Dm#I^P#J}#KU#K^PPPP$ h$$^$+P$+S$+V$-g$-j$-m$-tPP$-z$.O$.w$/w$/{$0aPP$0e$0k$0oP$0r$0v$0y$1o$2V$2[$2_$2b$2h$2k$2o$2sR!zRmpOXr!X#b%^&e&g&h&j,`,e1j1mU!pQ'R-QQ%dtQ%lwQ%szQ&]!TS&y!c,xQ'X!f^'^!m!r!s!t!u!v!wS*^$z*cQ+W%mQ+e%uQ,P&VQ-O'QQ-Y'YY-b'_'`'a'b'cQ/s*eQ1X,QW2e-d-f-g-hS5R0}5UU6a2h2j2kU8R5Y5Z5]S8x6d6fS9u8S8TQ:c8{Q:z9xR<y<[%SdOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&e&g&h&j&n&v'T'h'x'z(Q([(m(q(u)t*v+j,[,`,e-U-^-r-{.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o3R4}5b5t5v5w6Z8O8Y8g8s:^;V;m;zS#n]<X!r)V$Y$k&z)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xQ*n%TQ+]%oQ,R&YQ,Y&bQ.[<qQ0W+OQ0[+QQ0g+^Q1a,WQ2u.XQ4i0bQ5i1YQ6o2yQ6u<rQ7h4jR9S6p'QkOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=x#n!kQ!m!p!r!s!t!u!v!w!x&y'Q'R'^'_'`'a'b'c'd,x-O-Q-b-d-e-f-g-h0}2e2h2i2j2k5O5U5W5X5Y5Z5[6a6d6e6f7v7w7x7y8T8x8{8|9p9q9r:c:u:v;b$Y$qi#s#u$a$b$v$y%U%V%Z)p)y){)|*T*Z*i*j*}+Q+o+r.W.b/a/b/d0P0t0w1P2x3p3z4S4Y4a4c5a6m7T7^8V9P9[9{:g:};^<n<o<s<t<u<v<w<x=O=P=Q=R=S=T=W=X=Y=Z=^=_=u=}>O>R>SQ%vzQ&w!cS&}%x,{Q+]%oS/Q)v/SQ0O*rQ0g+^Q0l+dQ1`,VQ1a,WQ4i0bQ4r0nQ5l1[Q5m1_Q7h4jQ7k4oQ8b5oQ9j7lR:R8_pmOXr!T!X#b%^&[&e&g&h&j,`,e1j1mR,T&^&z`OPXYrstux!X!^!g!l#Q#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k%^%d%q&^&a&b&e&g&h&j&n&v'T'h'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=w=x[#ZWZ#U#X&z'xQ%gvQ%kwS%pz%u!U%y|}#e#g#j%[%w(R(Y(Z(_+h+i+k,^,r-v-y-}.O.Q1r2q2r6P6jQ&R!RQ'U!eQ'W!fQ(f#pS*Q$v*US+V%l%mQ+Z%oQ+z&TQ,O&VS-X'X'YQ.Z(gQ/^*RQ0`+WQ0f+^Q0h+_Q0k+cQ1S+{S1W,P,QQ2[-YQ3q/YQ4h0bQ4l0eQ4q0mQ5h1XQ7Q3rQ7g4jQ7j4nQ9f7fR:p9gv$xi#u%U%V%Z)y){*T*i*j.b/a0P3p4Y9[=u=}>O!d%iw!f!o%k%l%m&x'W'X'Y']'k*]+V+W,u-X-Y-a-c/k0`2T2[2c2g4U6_6c8v8z:a;YQ+P%gQ+p&OQ+s&PQ+}&VQ.Y(fQ1R+zU1V,O,P,QQ2z.ZQ5c1SS5g1W1XS7t4|5QQ8^5hU9s7z8P8QU:x9t9v9wQ;e:yQ;u;f!z=y#s$a$b$v$y)p)|*Z*}+Q+o+r.W/b/d0t0w1P2x3z4S4a4c5a6m7T7^8V9P9{:g:};^<s<u<w=O=Q=S=W=Y=^>R>Sg=z<n<o<t<v<x=P=R=T=X=Z=_W$}i%P*k=uS&O!O&[Q&P!PQ&Q!QR+n%|$Z$|i#s#u$a$b$v$y%U%V%Z)p)y){)|*T*Z*i*j*}+Q+o+r.W.b/a/b/d0P0t0w1P2x3p3z4S4Y4a4c5a6m7T7^8V9P9[9{:g:};^<n<o<s<t<u<v<w<x=O=P=Q=R=S=T=W=X=Y=Z=^=_=u=}>O>R>ST)q$s)rV*o%T<q<rU&}!c%x,{S(t#w#xQ+b%rS.S(b(cQ0x+tQ4Z/|R7p4x'QkOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=x$q$^c#W#c%b%c%e'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g*{+a,v-k-p-u-z.a.g.k.m.n.o/O0Q1y1|2^2n3Q3V3W3X3Y3Z3[3]3^3_3`3a3b3c3f3g3l4_4f6S6Y6h6s6t6y6z7r8m8q9T9X9Y:[:r;R;T;k;x<R<Y=lT#RV#S'RkOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xQ&{!cR2P,x#f!kQ!c!m!p!r!s!t!u!v!w!x&y'Q'R'^'_'`'a'b'c'd,x-O-Q-b-d-e-f-g-h2e2h2i2j2k5O5W5X5[6a6d6e6f7v7w7x7y8x8{8|9p9q9r:c:u:v;bS*]$z*cS/k*^*eQ/t*fQ0z+vQ4U/sQ4X/vS4|0}5US7z5R5]S8P5Y5ZS9t8R8SQ9v8TS:y9u9xR;f:zlpOXr!X#b%^&e&g&h&j,`,e1j1mQ&l![Q'l!tS(h#r<`Q+T%jQ+x&RQ+y&SQ-V'VQ-j'eS.`(m<{S0R*v=UQ0^+UQ0|+wQ1q,gQ1s,hQ1{,sQ2Y-WQ2]-[S4`0S=[Q4d0_S4g0a=]Q6R1}Q6V2ZQ6[2bQ7e4eQ8n6TQ8o6WQ8r6]Q:X8kQ:]8tQ;U:_Q;l;WR;y;n$l$]c#W#c%c%e'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g*{+a,v-k-p-u-z.a.g.k.n.o/O0Q1y1|2^2n3Q3V3W3X3Y3Z3[3]3^3_3`3a3b3c3f3g3l4_4f6S6Y6h6s6t6y6z7r8m8q9T9X9Y:[:r;R;T;k;x<R<Y=lS(e#m'[U*h${(l3eS*z%b.mQ2v0WQ6l2uQ9R6oR:h9S$l$[c#W#c%c%e'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g*{+a,v-k-p-u-z.a.g.k.n.o/O0Q1y1|2^2n3Q3V3W3X3Y3Z3[3]3^3_3`3a3b3c3f3g3l4_4f6S6Y6h6s6t6y6z7r8m8q9T9X9Y:[:r;R;T;k;x<R<Y=lS(d#m'[S(v#x$]S*y%b.mS.T(c(eQ.p)WQ0T*zR2s.U'QkOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xS#n]<XQ&g!VQ&h!WQ&j!YQ&k!ZR1i,cQ'S!eQ*|%gQ-T'US.V(f+PQ2W-SW2w.Y.Z0V0XQ6U2XU6k2t2v2zS9O6l6nS:f9Q9RS;[:e:hQ;p;]R;{;qV!qQ'R-Q!_^OQXZ_r!T!X!m#b#e%[%^&[&^&e&g&h&j'R(_,`,e-Q-}0}1j1m5O5UT#n]<X%^yOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&b&e&g&h&j&n&v'T'h'x'z(Q([(m(q(u)t*v+O+j,[,`,e-U-^-r-{.X.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o2y3R4}5b5t5v5w6Z6p8O8Y8g8s:^;V;m;zS(t#w#xS.S(b(c!s=c$Y$k&z)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xU!oQ'R-Q[']!m!s!t!u!v!wS'k!p!rY'm!x5O5W5X5[S-a'^'_W-c'`'a'b'cY-i'd7v7w7x7yS2c-b-dW2f-e9p9q9rU2g-f-g-hS5Q0}5US6_2e2hU6b2i:u:vS6c2j2kS7z5R5]S8Q5Y5ZS8v6a6dS8y6e;bQ8z6fS9t8R8SQ9w8TS:a8x8{Q:d8|S:y9u9xQ;Y:cR;f:zU!qQ'R-QT5S0}5UU'j!o5P5QS(^#f1gU-`']'m8QQ/]*QQ/i*]U2d-c-i9wQ3v/^S4P/j/tS6`2f2gQ7P3qS7[4V4XS8w6b6cQ9^7QQ9e7_S:b8y8zR;Z:dQ#tbU'i!o5P5QS(]#f1gQ*w%]Q+R%hQ+X%nW-_']'j'm8QQ-|(^Q/[*QQ/h*]Q/n*`Q0]+SQ1T+|W2a-`-c-i9wS3u/]/^S4O/i/tQ4R/mQ4T/oQ5e1UU6^2d2f2gQ7O3qQ7S3vS7W4P4XQ7]4WQ8[5fU8u6`6b6cS9]7P7QQ9a7XQ9c7[Q9n7sQ:O8]U:`8w8y8zQ:l9^Q:m9bQ:o9eQ:t9oQ;P:PS;X:b:dQ;`:nQ;c:wQ;o;ZQ;s;dQ<O;tQ<T<PQ=f=aQ=q=jR=r=k%^aOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&b&e&g&h&j&n&v'T'h'x'z(Q([(m(q(u)t*v+O+j,[,`,e-U-^-r-{.X.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o2y3R4}5b5t5v5w6Z6p8O8Y8g8s:^;V;m;zS#tx!g!r=`$Y$k&z)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xR=f=w%^bOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&b&e&g&h&j&n&v'T'h'x'z(Q([(m(q(u)t*v+O+j,[,`,e-U-^-r-{.X.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o2y3R4}5b5t5v5w6Z6p8O8Y8g8s:^;V;m;zQ%]j!d%hw!f!o%k%l%m&x'W'X'Y']'k*]+V+W,u-X-Y-a-c/k0`2T2[2c2g4U6_6c8v8z:a;YS%nx!gQ+S%iQ+|&VW1U+},O,P,QU5f1V1W1XS7s4|5QS8]5g5hW9o7t7z8P8QQ:P8^W:w9s9t9v9wS;d:x:yS;t;e;fQ<P;u!r=a$Y$k&z)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xQ=j=vR=k=w%QeOPXYrstu!X!^!l#Q#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&e&g&h&j&n&v'T'h'z(Q([(m(q(u)t*v+O+j,[,`,e-U-^-r-{.X.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o2y3R4}5b5t5v5w6Z6p8O8Y8g8s:^;V;m;zY#`WZ#U#X'x!U%y|}#e#g#j%[%w(R(Y(Z(_+h+i+k,^,r-v-y-}.O.Q1r2q2r6P6jQ,Z&b!p=b$Y$k)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xR=e&zS'O!c%xR2R,{%SdOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&e&g&h&j&n&v'T'h'x'z(Q([(m(q(u)t*v+j,[,`,e-U-^-r-{.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o3R4}5b5t5v5w6Z8O8Y8g8s:^;V;m;z!r)V$Y$k&z)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xQ,Y&bQ0W+OQ2u.XQ6o2yR9S6p!n$Sc#W%b'w'}(i(p)P)Q)R)S)X)]+a-k-p-u-z.a.g/O0Q2^2n3Q3c4_4f6Y6h6s8q:[;T;k;x<R<Y!T<g)U)g,v.m1y1|3V3_3`3a3b3f3l6S6t6y6z7r8m9T9X9Y:r;R=l!j$Uc#W%b'w'}(i(p)R)S)X)]+a-k-p-u-z.a.g/O0Q2^2n3Q3c4_4f6Y6h6s8q:[;T;k;x<R<Y!P<i)U)g,v.m1y1|3V3a3b3f3l6S6t6y6z7r8m9T9X9Y:r;R=l!f$Yc#W%b'w'}(i(p)X)]+a-k-p-u-z.a.g/O0Q2^2n3Q3c4_4f6Y6h6s8q:[;T;k;x<R<YQ3p/Wz=x)U)g,v.m1y1|3V3f3l6S6t6y6z7r8m9T9X9Y:r;R=lQ=}>PR>O>Q'QkOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xS$lh$mR3i.s'XgOPWXYZhrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k$m%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.s.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xT$hf$nQ$ffS)`$i)dR)l$nT$gf$nT)b$i)d'XhOPWXYZhrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$Y$_$c$k$m%^%d%q&^&a&b&e&g&h&j&n&v&z'T'h'x'z(Q([(m(q(u)i)t*v+O+j,[,`,e,q,t-U-^-r-{.X.e.l.s.t/}0S0a1Q1b1c1d1f1j1m1o2O2`2o2y3R3h4z4}5b5t5v5w6Q6Z6p8O8Y8g8s9k:Y:^;V;m;z<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=xT$lh$mQ$ohR)k$m%^jOPWXYZrstu!X!^!l#Q#U#X#b#l#r#v#y#|#}$O$P$Q$R$S$T$U$V$W$_$c%^%d%q&^&a&b&e&g&h&j&n&v'T'h'x'z(Q([(m(q(u)t*v+O+j,[,`,e-U-^-r-{.X.e.l/}0S0a1Q1b1c1d1f1j1m1o2`2o2y3R4}5b5t5v5w6Z6p8O8Y8g8s:^;V;m;z!s=v$Y$k&z)i,q,t.t2O3h4z6Q9k:Y<W<Z<[<]<`<a<b<c<d<e<f<g<h<i<j<k<l<p<y<z<{<}=U=V=[=]=x#alOPXZr!X!^!l#Q#b#l#y$k%^&^&a&b&e&g&h&j&n&v'T(u)i+O+j,[,`,e-U.X.t/}1Q1b1c1d1f1j1m1o2y3h4}5b5t5v5w6p8O8Y8gv${i#u%U%V%Z)y){*T*i*j.b/a0P3p4Y9[=u=}>O!z(l#s$a$b$v$y)p)|*Z*}+Q+o+r.W/b/d0t0w1P2x3z4S4a4c5a6m7T7^8V9P9{:g:};^<s<u<w=O=Q=S=W=Y=^>R>SQ*s%XQ/P)ug3e<n<o<t<v<x=P=R=T=X=Z=_v$wi#u%U%V%Z)y){*T*i*j.b/a0P3p4Y9[=u=}>OQ*V$xS*`$z*cQ*t%YQ/o*a!z=h#s$a$b$v$y)p)|*Z*}+Q+o+r.W/b/d0t0w1P2x3z4S4a4c5a6m7T7^8V9P9{:g:};^<s<u<w=O=Q=S=W=Y=^>R>Sf=i<n<o<t<v<x=P=R=T=X=Z=_Q=m=yQ=n=zQ=o={R=p=|v${i#u%U%V%Z)y){*T*i*j.b/a0P3p4Y9[=u=}>O!z(l#s$a$b$v$y)p)|*Z*}+Q+o+r.W/b/d0t0w1P2x3z4S4a4c5a6m7T7^8V9P9{:g:};^<s<u<w=O=Q=S=W=Y=^>R>Sg3e<n<o<t<v<x=P=R=T=X=Z=_lnOXr!X#b%^&e&g&h&j,`,e1j1mQ*Y$yQ,n&qQ,o&sR3y/b$Y$|i#s#u$a$b$v$y%U%V%Z)p)y){)|*T*Z*i*j*}+Q+o+r.W.b/a/b/d0P0t0w1P2x3p3z4S4Y4a4c5a6m7T7^8V9P9[9{:g:};^<n<o<s<t<u<v<w<x=O=P=Q=R=S=T=W=X=Y=Z=^=_=u=}>O>R>SQ+q&PQ0v+sQ4v0uR7o4wT*b$z*cS*b$z*cT5T0}5US/m*_4}T4W/u8OQ+R%hQ/n*`Q0]+SQ1T+|Q5e1UQ8[5fQ9n7sQ:O8]Q:t9oQ;P:PQ;c:wQ;s;dQ<O;tR<T<Pn)y$t(n*u/`/w/x3O3w4^6}7`:k=g=s=t!W=O(j)Z*P*X._.{/W/e0U0s0u2}3x3|4u4w6q6r7U7Y7b7d9`9d;_>P>Q]=P3d6x9U:i:j;|p){$t(n*u/U/`/w/x3O3w4^6}7`:k=g=s=t!Y=Q(j)Z*P*X._.{/W/e0U0s0u2{2}3x3|4u4w6q6r7U7Y7b7d9`9d;_>P>Q_=R3d6x9U9V:i:j;|pmOXr!T!X#b%^&[&e&g&h&j,`,e1j1mQ&X!SR,[&bpmOXr!T!X#b%^&[&e&g&h&j,`,e1j1mR&X!SQ+u&QR0r+nqmOXr!T!X#b%^&[&e&g&h&j,`,e1j1mQ1O+zS5`1R1SU8U5^5_5cS9z8W8XS:{9y9|Q;g:|R;v;hQ&`!TR,U&[R5l1[S%pz%uR0h+_Q&e!UR,`&fR,f&kT1k,e1mR,j&lQ,i&lR1t,jQ'o!yR-l'oQrOQ#bXT%ar#bQ!|TR'q!|Q#PUR's#PQ)r$sR.|)rQ#SVR'u#SQ#VWU'{#V'|-sQ'|#WR-s'}Q,y&{R2Q,yQ.c(nR3P.cQ.f(pS3S.f3TR3T.gQ-Q'RR2U-Qr_OXr!T!X#b%^&[&^&e&g&h&j,`,e1j1mU!mQ'R-QS#eZ%[Y#o_!m#e-}5OQ-}(_T5O0}5US#]W%wU(S#](T-tQ(T#^R-t(OQ,|'OR2S,|Q(`#hQ-w(XW.R(`-w2l6gQ2l-xR6g2mQ)d$iR.u)dQ$mhR)j$mQ$`cU)Y$`-o<mQ-o<YR<m)gQ/Z*QW3s/Z3t7R9_U3t/[/]/^S7R3u3vR9_7S#m)w$t(j(n)Z*P*X*p*q*u.].^._.{/U/V/W/`/e/w/x0U0s0u2{2|2}3O3d3w3x3|4^4u4w6q6r6v6w6x6}7U7Y7`7b7d9U9V9W9`9d:i:j:k;_;|=g=s=t>P>QQ/c*XU3{/c3}7VQ3}/eR7V3|Q*c$zR/q*cQ*l%OR/z*lQ4b0UR7c4bQ+l%zR0q+lQ4y0xS7q4y9lR9l7rQ+w&RR0{+wQ5U0}R7|5UQ1Z,RS5j1Z8`R8`5lQ0c+ZW4k0c4m7i9hQ4m0fQ7i4lR9h7jQ+`%pR0i+`Q1m,eR5z1mWqOXr#bQ&i!XQ*x%^Q,_&eQ,a&gQ,b&hQ,d&jQ1h,`S1k,e1mR5y1jQ%`oQ&m!]Q&p!_Q&r!`Q&t!aU'g!o5P5QQ+T%jQ+g%vQ+m%{Q,T&`Q,l&oY-]']'i'j'm8QQ-j'eQ/p*bQ0^+US1^,U,XQ1u,kQ1v,nQ1w,oQ2]-[[2_-_-`-c-i-k9wQ4d0_Q4p0lQ4t0sQ5d1TQ5n1`Q5x1iY6X2^2a2d2f2gQ6[2bQ7e4eQ7m4rQ7n4uQ7{5TQ8Z5eQ8a5mY8p6Y6^6`6b6cQ8r6]Q9i7kQ9m7sQ9}8[Q:S8bY:Z8q8u8w8y8zQ:]8tQ:q9jS:s9n9oQ;O:OW;S:[:`:b:dQ;U:_S;a:t:wQ;i;PU;j;T;X;ZQ;l;WS;r;c;dS;w;k;oQ;y;nS;};s;tQ<Q;xS<S<O<PQ<U<RR<V<TQ%jwQ'V!fQ'e!oU+U%k%l%mQ,s&xU-W'W'X'YS-[']'kQ/g*]S0_+V+WQ1},uS2Z-X-YS2b-a-cQ4Q/kQ4e0`Q6T2TQ6W2[S6]2c2gQ7Z4US8t6_6cS:_8v8zQ;W:aR;n;YS$ui=uR*m%PU%Oi%P=uR/y*kQ$tiS(j#s+QQ(n#uS)Z$a$bQ*P$vQ*X$yQ*p%UQ*q%VQ*u%ZQ.]<sQ.^<uQ._<wQ.{)pQ/U)yQ/V){Q/W)|Q/`*TQ/e*ZQ/w*iQ/x*jh0U*}.W1P2x5a6m8V9P9{:g:};^Q0s+oQ0u+rQ2{=OQ2|=QQ2}=SQ3O.bS3d<n<oQ3w/aQ3x/bQ3|/dQ4^0PQ4u0tQ4w0wQ6q=WQ6r=YQ6v<tQ6w<vQ6x<xQ6}3pQ7U3zQ7Y4SQ7`4YQ7b4aQ7d4cQ9U=TQ9V=PQ9W=RQ9`7TQ9d7^Q:i=XQ:j=ZQ:k9[Q;_=^Q;|=_Q=g=uQ=s=}Q=t>OQ>P>RR>Q>SloOXr!X#b%^&e&g&h&j,`,e1j1mQ!dPS#dZ#lQ&o!^U'Z!l4}8OQ't#QQ(w#yQ)h$kS,X&^&aQ,]&bQ,k&nQ,p&vQ-S'TQ.i(uQ.y)iQ0X+OQ0o+jQ1e,[Q2X-UQ2v.XQ3k.tQ4[/}Q5_1QQ5p1bQ5q1cQ5s1dQ5u1fQ5|1oQ6l2yQ6{3hQ8X5bQ8f5tQ8h5vQ8i5wQ9R6pQ9|8YR:U8g#UcOPXZr!X!^!l#b#l#y%^&^&a&b&e&g&h&j&n&v'T(u+O+j,[,`,e-U.X/}1Q1b1c1d1f1j1m1o2y4}5b5t5v5w6p8O8Y8gQ#WWQ#cYQ%bsQ%ctQ%euS'w#U'zQ'}#XQ(i#rQ(p#vQ(x#|Q(y#}Q(z$OQ({$PQ(|$QQ(}$RQ)O$SQ)P$TQ)Q$UQ)R$VQ)S$WQ)U$YQ)X$_Q)]$cW)g$k)i.t3hQ*{%dQ+a%qS,v&z2OQ-k'hS-p'x-rQ-u(QQ-z([Q.a(mQ.g(qQ.k<WQ.m<ZQ.n<[Q.o<]Q/O)tQ0Q*vQ1y,qQ1|,tQ2^-^Q2n-{Q3Q.eQ3V<`Q3W<aQ3X<bQ3Y<cQ3Z<dQ3[<eQ3]<fQ3^<gQ3_<hQ3`<iQ3a<jQ3b<kQ3c.lQ3f<pQ3g<yQ3l<lQ4_0SQ4f0aQ6S<zQ6Y2`Q6h2oQ6s3RQ6t<{Q6y<}Q6z=UQ7r4zQ8m6QQ8q6ZQ9T=VQ9X=[Q9Y=]Q:[8sQ:r9kQ;R:YQ;T:^Q;k;VQ;x;mQ<R;zQ<Y#QR=l=xR#YWR&|!cU!oQ'R-QS&x!c,x[']!m!s!t!u!v!wS'k!p!r^'m!x5O5W5X5Y5Z5[S,u&y'QS-a'^'_W-c'`'a'b'c[-i'd7v7w7x7y8TQ2T-OS2c-b-dW2f-e9p9q9rU2g-f-g-hS5P0}5US6_2e2hU6b2i:u:vS6c2j2kS8v6a6dS8y6e;bQ8z6fS:a8x8{Q:d8|R;Y:cR(o#uR(r#vQ!dQT-P'R-QQ#m]R'[<XT#iZ%[S#hZ%[U%z|},^U(X#e#g#jS-x(Y(ZQ.P(_Q0p+kQ2m-yU2p-}.O.QS6i2q2rR8}6j`#[W#U#X%w'x(R+h-vt#fZ|}#e#g#j%[(Y(Z(_+k-y-}.O.Q2q2r6jQ1g,^Q1z,rQ6O1rQ8l6PT=d&z+iT#_W%wS#^W%wS'y#U(RS(O#X+hS,w&z+iT-q'x-vT'P!c%xQ$ifR)n$nT)c$i)dR3j.sT*S$v*UR*[$yQ0V*}Q2t.WQ5^1PQ6n2xQ8W5aQ9Q6mQ9y8VQ:e9PQ:|9{Q;]:gQ;h:}R;q;^lpOXr!X#b%^&e&g&h&j,`,e1j1mQ&_!TR,T&[V%{|},^R0y+tR,S&YQ%tzR+f%uR+[%oT&c!U&fT&d!U&fT1l,e1m",
4353
- nodeNames: "⚠ ArithOp ArithOp LineComment BlockComment Script ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . ?. PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXStartTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody MethodDeclaration AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",
4354
- maxTerm: 363,
4490
+ states: "$6[O`QUOOO%QQUOOO'TQWOOP(bOSOOO*pQ(CjO'#CfO*wOpO'#CgO+VO!bO'#CgO+eO07`O'#DZO-vQUO'#DaO.WQUO'#DlO%QQUO'#DvO0[QUO'#EOOOQ(CY'#EW'#EWO0uQSO'#ETOOQO'#Ei'#EiOOQO'#Ib'#IbO0}QSO'#GkO1YQSO'#EhO1_QSO'#EhO3aQ(CjO'#JcO6QQ(CjO'#JdO6nQSO'#FWO6sQ#tO'#FoOOQ(CY'#F`'#F`O7OO&jO'#F`O7^Q,UO'#FvO8tQSO'#FuOOQ(CY'#Jd'#JdOOQ(CW'#Jc'#JcOOQQ'#KO'#KOO8yQSO'#IOO9OQ(C[O'#IPOOQQ'#JP'#JPOOQQ'#IT'#ITQ`QUOOO%QQUO'#DnO9WQUO'#DzO%QQUO'#D|O9_QSO'#GkO9dQ,UO'#ClO9rQSO'#EgO9}QSO'#ErO:SQ,UO'#F_O:qQSO'#GkO:vQSO'#GoO;RQSO'#GoO;aQSO'#GrO;aQSO'#GsO;aQSO'#GuO9_QSO'#GxO<QQSO'#G{O=cQSO'#CbO=sQSO'#HXO={QSO'#H_O={QSO'#HaO`QUO'#HcO={QSO'#HeO={QSO'#HhO>QQSO'#HnO>VQ(C]O'#HtO%QQUO'#HvO>bQ(C]O'#HxO>mQ(C]O'#HzO9OQ(C[O'#H|O>xQ(CjO'#CfO?zQWO'#DfQOQSOOO@bQSO'#EPO9dQ,UO'#EgO@mQSO'#EgO@xQ`O'#F_OOQQ'#Cd'#CdOOQ(CW'#Dk'#DkOOQ(CW'#Jg'#JgO%QQUO'#JgOOQO'#Jk'#JkOOQO'#I_'#I_OAxQWO'#E`OOQ(CW'#E_'#E_OBtQ(C`O'#E`OCOQWO'#ESOOQO'#Jj'#JjOCdQWO'#JkODqQWO'#ESOCOQWO'#E`PEOO?MpO'#C`POOO)CDn)CDnOOOO'#IU'#IUOEZOpO,59ROOQ(CY,59R,59ROOOO'#IV'#IVOEiO!bO,59RO%QQUO'#D]OOOO'#IX'#IXOEwO07`O,59uOOQ(CY,59u,59uOFVQUO'#IYOFjQSO'#JeOHlQbO'#JeO+sQUO'#JeOHsQSO,59{OIZQSO'#EiOIhQSO'#JsOIsQSO'#JrOIsQSO'#JrOI{QSO,5;VOJQQSO'#JqOOQ(CY,5:W,5:WOJXQUO,5:WOLYQ(CjO,5:bOLyQSO,5:jOMdQ(C[O'#JpOMkQSO'#JoO:vQSO'#JoONPQSO'#JoONXQSO,5;UON^QSO'#JoO!!fQbO'#JdOOQ(CY'#Cf'#CfO%QQUO'#EOO!#UQ`O,5:oOOQO'#Jl'#JlOOQO-E<`-E<`O9_QSO,5=VO!#lQSO,5=VO!#qQUO,5;SO!%tQ,UO'#EdO!'XQSO,5;SO!(qQ,UO'#DpO!(xQUO'#DuO!)SQWO,5;]O!)[QWO,5;]O%QQUO,5;]OOQQ'#FO'#FOOOQQ'#FQ'#FQO%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^O%QQUO,5;^OOQQ'#FU'#FUO!)jQUO,5;oOOQ(CY,5;t,5;tOOQ(CY,5;u,5;uO!+mQSO,5;uOOQ(CY,5;v,5;vO%QQUO'#IfO!+uQ(C[O,5<cO!%tQ,UO,5;^O!,dQ,UO,5;^O%QQUO,5;rO!,kQ#tO'#FeO!-hQ#tO'#JwO!-SQ#tO'#JwO!-oQ#tO'#JwOOQO'#Jw'#JwO!.TQ#tO,5;}OOOO,5<Z,5<ZO!.fQUO'#FqOOOO'#Ie'#IeO7OO&jO,5;zO!.mQ#tO'#FsOOQ(CY,5;z,5;zO!/^Q7[O'#CrOOQ(CY'#Cv'#CvO!/qQSO'#CvO!/vO07`O'#CzO!0dQ,UO,5<`O!0kQSO,5<bO!2QQMhO'#GQO!2_QSO'#GRO!2dQSO'#GRO!2iQMhO'#GVO!3hQWO'#GZO!4ZQ7[O'#J^OOQ(CY'#J^'#J^O!4eQSO'#J]O!4sQSO'#J[O!4{QSO'#CqOOQ(CY'#Ct'#CtOOQ(CY'#DO'#DOOOQ(CY'#DQ'#DQO0xQSO'#DSO!'^Q,UO'#FxO!'^Q,UO'#FzO!5TQSO'#F|O!5YQSO'#F}O!2dQSO'#GTO!'^Q,UO'#GYO!5_QSO'#EjO!5|QSO,5<aO`QUO,5>jOOQQ'#JX'#JXOOQQ,5>k,5>kOOQQ-E<R-E<RO!7{Q(CjO,5:YO!:iQ(CjO,5:fO%QQUO,5:fO!=SQ(CjO,5:hOOQ(CW'#Co'#CoO!=sQ,UO,5=VO!>RQ(C[O'#JYO8tQSO'#JYO!>dQ(C[O,59WO!>oQWO,59WO!>wQ,UO,59WO9dQ,UO,59WO!?SQSO,5;SO!?[QSO'#HWO!?mQSO'#KSO%QQUO,5;wO!?uQWO,5;yO!?zQSO,5=qO!@PQSO,5=qO!@UQSO,5=qO9OQ(C[O,5=qO!@dQSO'#EkO!A^QWO'#ElOOQ(CW'#Jq'#JqO!AeQ(C[O'#KPO9OQ(C[O,5=ZO;aQSO,5=aOOQO'#Cr'#CrO!ApQWO,5=^O!AxQ,UO,5=_O!BTQSO,5=aO!BYQ`O,5=dO>QQSO'#G}O9_QSO'#HPO!BbQSO'#HPO9dQ,UO'#HRO!BgQSO'#HROOQQ,5=g,5=gO!BlQSO'#HSO!BtQSO'#ClO!ByQSO,58|O!CTQSO,58|O!E]QUO,58|OOQQ,58|,58|O!EjQ(C[O,58|O%QQUO,58|O!EuQUO'#HZOOQQ'#H['#H[OOQQ'#H]'#H]O`QUO,5=sO!FVQSO,5=sO`QUO,5=yO`QUO,5={O!F[QSO,5=}O`QUO,5>PO!FaQSO,5>SO!FfQUO,5>YOOQQ,5>`,5>`O%QQUO,5>`O9OQ(C[O,5>bOOQQ,5>d,5>dO!JmQSO,5>dOOQQ,5>f,5>fO!JmQSO,5>fOOQQ,5>h,5>hO!JrQWO'#DXO%QQUO'#JgO!KaQWO'#JgO!LOQWO'#DgO!LaQWO'#DgO!NrQUO'#DgO!NyQSO'#JfO# RQSO,5:QO# WQSO'#EmO# fQSO'#JtO# nQSO,5;WO# sQWO'#DgO#!QQWO'#EROOQ(CY,5:k,5:kO%QQUO,5:kO#!XQSO,5:kO>QQSO,5;RO!>oQWO,5;RO!>wQ,UO,5;RO9dQ,UO,5;RO#!aQSO,5@RO#!fQ!LQO,5:oOOQO-E<]-E<]O##lQ(C`O,5:zOCOQWO,5:nO##vQWO,5:nOCOQWO,5:zO!>dQ(C[O,5:nOOQ(CW'#Ec'#EcOOQO,5:z,5:zO%QQUO,5:zO#$TQ(C[O,5:zO#$`Q(C[O,5:zO!>oQWO,5:nOOQO,5;Q,5;QO#$nQ(C[O,5:zPOOO'#IS'#ISP#%SO?MpO,58zPOOO,58z,58zOOOO-E<S-E<SOOQ(CY1G.m1G.mOOOO-E<T-E<TO#%_Q`O,59wOOOO-E<V-E<VOOQ(CY1G/a1G/aO#%dQbO,5>tO+sQUO,5>tOOQO,5>z,5>zO#%nQUO'#IYOOQO-E<W-E<WO#%{QSO,5@PO#&TQbO,5@PO#&[QSO,5@^OOQ(CY1G/g1G/gO%QQUO,5@_O#&dQSO'#I`OOQO-E<^-E<^O#&[QSO,5@^OOQ(CW1G0q1G0qOOQ(CY1G/r1G/rOOQ(CY1G0U1G0UO%QQUO,5@[O#&xQ(C[O,5@[O#'ZQ(C[O,5@[O#'bQSO,5@ZO:vQSO,5@ZO#'jQSO,5@ZO#'xQSO'#IcO#'bQSO,5@ZOOQ(CW1G0p1G0pO!)SQWO,5:qO!)_QWO,5:qOOQO,5:s,5:sO#(jQSO,5:sO#(rQ,UO1G2qO9_QSO1G2qOOQ(CY1G0n1G0nO#)QQ(CjO1G0nO#*VQ(ChO,5;OOOQ(CY'#GP'#GPO#*sQ(CjO'#J^O!#qQUO1G0nO#,{Q,UO'#JhO#-VQSO,5:[O#-[QbO'#JiO%QQUO'#JiO#-fQSO,5:aOOQ(CY'#DX'#DXOOQ(CY1G0w1G0wO%QQUO1G0wOOQ(CY1G1a1G1aO#-kQSO1G0wO#0SQ(CjO1G0xO#0ZQ(CjO1G0xO#2tQ(CjO1G0xO#2{Q(CjO1G0xO#5VQ(CjO1G0xO#5mQ(CjO1G0xO#8gQ(CjO1G0xO#8nQ(CjO1G0xO#;XQ(CjO1G0xO#;`Q(CjO1G0xO#=WQ(CjO1G0xO#@WQ$IUO'#CfO#BUQ$IUO1G1ZO#B]Q$IUO'#JdO!+pQSO1G1aO#BmQ(CjO,5?QOOQ(CW-E<d-E<dO#CaQ(CjO1G0xOOQ(CY1G0x1G0xO#ElQ(CjO1G1^O#F`Q#tO,5<RO#FhQ#tO,5<SO#FpQ#tO'#FjO#GXQSO'#FiOOQO'#Jx'#JxOOQO'#Id'#IdO#G^Q#tO1G1iOOQ(CY1G1i1G1iOOOO1G1t1G1tO#GoQ$IUO'#JcO#GyQSO,5<]O!)jQUO,5<]OOOO-E<c-E<cOOQ(CY1G1f1G1fO#HOQWO'#JwOOQ(CY,5<_,5<_O#HWQWO,5<_OOQ(CY,59b,59bO!%tQ,UO'#C|OOOO'#IW'#IWO#H]O07`O,59fOOQ(CY,59f,59fO%QQUO1G1zO!5YQSO'#IhO#HhQSO,5<sOOQ(CY,5<p,5<pOOQO'#Gf'#GfO!'^Q,UO,5=POOQO'#Gh'#GhO!'^Q,UO,5=RO!%tQ,UO,5=TOOQO1G1|1G1|O#HvQ`O'#CoO#IZQ`O,5<lO#IbQSO'#J{O9_QSO'#J{O#IpQSO,5<nO!'^Q,UO,5<mO#IuQSO'#GSO#JQQSO,5<mO#JVQ`O'#GPO#JdQ`O'#J|O#JnQSO'#J|O!%tQ,UO'#J|O#JsQSO,5<qO#JxQWO'#G[O!3cQWO'#G[O#KZQSO'#G^O#K`QSO'#G`O!2dQSO'#GcO#KeQ(C[O'#IjO#KpQWO,5<uOOQ(CY,5<u,5<uO#KwQWO'#G[O#LVQWO'#G]O#L_QWO'#G]OOQ(CY,5=U,5=UO!'^Q,UO,5?wO!'^Q,UO,5?wO#LdQSO'#IkO#LoQSO,5?vO#LwQSO,59]O#MhQ,UO,59nOOQ(CY,59n,59nO#NZQ,UO,5<dO#N|Q,UO,5<fO?rQSO,5<hOOQ(CY,5<i,5<iO$ WQSO,5<oO$ ]Q,UO,5<tO$ mQSO'#JoO!#qQUO1G1{O$ rQSO1G1{OOQQ1G4U1G4UOOQ(CY1G/t1G/tO!+mQSO1G/tO$#qQ(CjO1G0QOOQQ1G2q1G2qO!%tQ,UO1G2qO%QQUO1G2qO$$bQSO1G2qO$$mQ,UO'#EdOOQ(CW,5?t,5?tO$$wQ(C[O,5?tOOQQ1G.r1G.rO!>dQ(C[O1G.rO!>oQWO1G.rO!>wQ,UO1G.rO$%YQSO1G0nO$%_QSO'#CfO$%jQSO'#KTO$%rQSO,5=rO$%wQSO'#KTO$%|QSO'#KTO$&XQSO'#IsO$&gQSO,5@nO$&oQbO1G1cOOQ(CY1G1e1G1eO9_QSO1G3]O?rQSO1G3]O$&vQSO1G3]O$&{QSO1G3]OOQQ1G3]1G3]O:vQSO'#JrO:vQSO'#EmO%QQUO'#EmO:vQSO'#ImO$'QQ(C[O,5@kOOQQ1G2u1G2uO!BTQSO1G2{O!%tQ,UO1G2xO$']QSO1G2xOOQQ1G2y1G2yO!%tQ,UO1G2yO$'bQSO1G2yO$'jQWO'#GwOOQQ1G2{1G2{O!3cQWO'#IoO!BYQ`O1G3OOOQQ1G3O1G3OOOQQ,5=i,5=iO$'rQ,UO,5=kO9_QSO,5=kO#K`QSO,5=mO8tQSO,5=mO!>oQWO,5=mO!>wQ,UO,5=mO9dQ,UO,5=mO$(QQSO'#KRO$(]QSO,5=nOOQQ1G.h1G.hO$(bQ(C[O1G.hO?rQSO1G.hO$(mQSO1G.hO9OQ(C[O1G.hO$*rQbO,5@pO$+SQSO,5@pO$+_QUO,5=uO$+fQSO,5=uO:vQSO,5@pOOQQ1G3_1G3_O`QUO1G3_OOQQ1G3e1G3eOOQQ1G3g1G3gO={QSO1G3iO$+kQUO1G3kO$/lQUO'#HjOOQQ1G3n1G3nO$/yQSO'#HpO>QQSO'#HrOOQQ1G3t1G3tO$0RQUO1G3tO9OQ(C[O1G3zOOQQ1G3|1G3|OOQ(CW'#GW'#GWO9OQ(C[O1G4OO9OQ(C[O1G4QO$4VQSO,5@RO!)jQUO,5;XO:vQSO,5;XO>QQSO,5:RO!)jQUO,5:RO!>oQWO,5:RO$4[Q$IUO,5:ROOQO,5;X,5;XO$4fQWO'#IZO$4|QSO,5@QOOQ(CY1G/l1G/lO$5UQWO'#IaO$5`QSO,5@`OOQ(CW1G0r1G0rO!LaQWO,5:ROOQO'#I^'#I^O$5hQWO,5:mOOQ(CY,5:m,5:mO#![QSO1G0VOOQ(CY1G0V1G0VO%QQUO1G0VOOQ(CY1G0m1G0mO>QQSO1G0mO!>oQWO1G0mO!>wQ,UO1G0mOOQ(CW1G5m1G5mO!>dQ(C[O1G0YOOQO1G0f1G0fO%QQUO1G0fO$5oQ(C[O1G0fO$5zQ(C[O1G0fO!>oQWO1G0YOCOQWO1G0YO$6YQ(C[O1G0fOOQO1G0Y1G0YO$6nQ(CjO1G0fPOOO-E<Q-E<QPOOO1G.f1G.fOOOO1G/c1G/cO$6xQ`O,5<cO$7QQbO1G4`OOQO1G4f1G4fO%QQUO,5>tO$7[QSO1G5kO$7dQSO1G5xO$7lQbO1G5yO:vQSO,5>zO$7vQ(CjO1G5vO%QQUO1G5vO$8WQ(C[O1G5vO$8iQSO1G5uO$8iQSO1G5uO:vQSO1G5uO$8qQSO,5>}O:vQSO,5>}OOQO,5>},5>}O$9VQSO,5>}O$ mQSO,5>}OOQO-E<a-E<aOOQO1G0]1G0]OOQO1G0_1G0_O!+pQSO1G0_OOQQ7+(]7+(]O!%tQ,UO7+(]O%QQUO7+(]O$9eQSO7+(]O$9pQ,UO7+(]O$:OQ(CjO,59nO$<WQ(CjO,5<dO$>cQ(CjO,5<fO$@nQ(CjO,5<tOOQ(CY7+&Y7+&YO$CPQ(CjO7+&YO$CsQ,UO'#I[O$C}QSO,5@SOOQ(CY1G/v1G/vO$DVQUO'#I]O$DdQSO,5@TO$DlQbO,5@TOOQ(CY1G/{1G/{O$DvQSO7+&cOOQ(CY7+&c7+&cO$D{Q$IUO,5:bO%QQUO7+&uO$EVQ$IUO,5:YO$EdQ$IUO,5:fO$EnQ$IUO,5:hOOQ(CY7+&{7+&{OOQO1G1m1G1mOOQO1G1n1G1nO$ExQ#tO,5<UO!)jQUO,5<TOOQO-E<b-E<bOOQ(CY7+'T7+'TOOOO7+'`7+'`OOOO1G1w1G1wO$FTQSO1G1wOOQ(CY1G1y1G1yO$FYQ`O,59hOOOO-E<U-E<UOOQ(CY1G/Q1G/QO$FaQ(CjO7+'fOOQ(CY,5?S,5?SO$GTQSO,5?SOOQ(CY1G2_1G2_P$GYQSO'#IhPOQ(CY-E<f-E<fO$G|Q,UO1G2kO$HoQ,UO1G2mO$HyQ`O1G2oOOQ(CY1G2W1G2WO$IQQSO'#IgO$I`QSO,5@gO$I`QSO,5@gO$IhQSO,5@gO$IsQSO,5@gOOQO1G2Y1G2YO$JRQ,UO1G2XO!'^Q,UO1G2XO$JcQMhO'#IiO$JsQSO,5@hO!%tQ,UO,5@hO$J{Q`O,5@hOOQ(CY1G2]1G2]OOQ(CW,5<v,5<vOOQ(CW,5<w,5<wO$ mQSO,5<wOBoQSO,5<wO!>oQWO,5<vOOQO'#G_'#G_O$KVQSO,5<xOOQ(CW,5<z,5<zO$ mQSO,5<}OOQO,5?U,5?UOOQO-E<h-E<hOOQ(CY1G2a1G2aO!3cQWO,5<vO$K_QSO,5<wO#KZQSO,5<xO!3cQWO,5<wO$KjQ,UO1G5cO$KtQ,UO1G5cOOQO,5?V,5?VOOQO-E<i-E<iOOQO1G.w1G.wO!?uQWO,59pO%QQUO,59pO$LRQSO1G2SO!'^Q,UO1G2ZO$LWQ(CjO7+'gOOQ(CY7+'g7+'gO!#qQUO7+'gOOQ(CY7+%`7+%`O$LzQ`O'#J}O#![QSO7+(]O$MUQbO7+(]O$9hQSO7+(]O$M]Q(ChO'#CfO$MpQ(ChO,5<{O$NbQSO,5<{OOQ(CW1G5`1G5`OOQQ7+$^7+$^O!>dQ(C[O7+$^O!>oQWO7+$^O!#qQUO7+&YO$NgQSO'#IrO$N{QSO,5@oOOQO1G3^1G3^O9_QSO,5@oO$N{QSO,5@oO% TQSO,5@oOOQO,5?_,5?_OOQO-E<q-E<qOOQ(CY7+&}7+&}O% YQSO7+(wO9OQ(C[O7+(wO9_QSO7+(wO?rQSO7+(wO% _QSO,5;XOOQ(CW,5?X,5?XOOQ(CW-E<k-E<kOOQQ7+(g7+(gO% dQ(ChO7+(dO!%tQ,UO7+(dO% nQ`O7+(eOOQQ7+(e7+(eO!%tQ,UO7+(eO% uQSO'#KQO%!QQSO,5=cOOQO,5?Z,5?ZOOQO-E<m-E<mOOQQ7+(j7+(jO%#aQWO'#HQOOQQ1G3V1G3VO!%tQ,UO1G3VO%QQUO1G3VO%#hQSO1G3VO%#sQ,UO1G3VO9OQ(C[O1G3XO#K`QSO1G3XO8tQSO1G3XO!>oQWO1G3XO!>wQ,UO1G3XO%$RQSO'#IqO%$^QSO,5@mO%$fQWO,5@mOOQ(CW1G3Y1G3YOOQQ7+$S7+$SO?rQSO7+$SO9OQ(C[O7+$SO%$qQSO7+$SO%QQUO1G6[O%QQUO1G6]O%$vQUO1G3aO%$}QSO1G3aO%%SQUO1G3aO%%ZQ(C[O1G6[OOQQ7+(y7+(yO9OQ(C[O7+)TO`QUO7+)VOOQQ'#KW'#KWOOQQ'#It'#ItO%%eQUO,5>UOOQQ,5>U,5>UO%QQUO'#HkO%%rQSO'#HmOOQQ,5>[,5>[O:vQSO,5>[OOQQ,5>^,5>^OOQQ7+)`7+)`OOQQ7+)f7+)fOOQQ7+)j7+)jOOQQ7+)l7+)lO%%wQWO1G5mO%&]Q$IUO1G0sO%&gQSO1G0sOOQO1G/m1G/mO%&rQ$IUO1G/mO>QQSO1G/mO!)jQUO'#DgOOQO,5>u,5>uOOQO-E<X-E<XOOQO,5>{,5>{OOQO-E<_-E<_O!>oQWO1G/mOOQO-E<[-E<[OOQ(CY1G0X1G0XOOQ(CY7+%q7+%qO#![QSO7+%qOOQ(CY7+&X7+&XO>QQSO7+&XO!>oQWO7+&XOOQO7+%t7+%tO$6nQ(CjO7+&QOOQO7+&Q7+&QO%QQUO7+&QO%&|Q(C[O7+&QO!>dQ(C[O7+%tO!>oQWO7+%tO%'XQ(C[O7+&QO%'gQ(CjO7++bO%QQUO7++bO%'wQSO7++aO%'wQSO7++aOOQO1G4i1G4iO:vQSO1G4iO%(PQSO1G4iOOQO7+%y7+%yO#![QSO<<KwO$MUQbO<<KwO%(_QSO<<KwOOQQ<<Kw<<KwO!%tQ,UO<<KwO%QQUO<<KwO%(gQSO<<KwO%(rQ(CjO1G2kO%*}Q(CjO1G2mO%-YQ(CjO1G2XO%/kQ,UO,5>vOOQO-E<Y-E<YO%/uQbO,5>wO%QQUO,5>wOOQO-E<Z-E<ZO%0PQSO1G5oOOQ(CY<<I}<<I}O%0XQ$IUO1G0nO%2cQ$IUO1G0xO%2jQ$IUO1G0xO%4nQ$IUO1G0xO%4uQ$IUO1G0xO%6jQ$IUO1G0xO%7QQ$IUO1G0xO%9eQ$IUO1G0xO%9lQ$IUO1G0xO%;pQ$IUO1G0xO%;wQ$IUO1G0xO%=oQ$IUO1G0xO%>SQ(CjO<<JaO%?XQ$IUO1G0xO%@}Q$IUO'#J^O%CQQ$IUO1G1^O%C_Q$IUO1G0QO!)jQUO'#FlOOQO'#Jy'#JyOOQO1G1p1G1pO%CiQSO1G1oO%CnQ$IUO,5?QOOOO7+'c7+'cOOOO1G/S1G/SOOQ(CY1G4n1G4nO!'^Q,UO7+(ZO%CxQSO,5?RO9_QSO,5?ROOQO-E<e-E<eO%DWQSO1G6RO%DWQSO1G6RO%D`QSO1G6RO%DkQ,UO7+'sO%D{Q`O,5?TO%EVQSO,5?TO!%tQ,UO,5?TOOQO-E<g-E<gO%E[Q`O1G6SO%EfQSO1G6SOOQ(CW1G2c1G2cO$ mQSO1G2cOOQ(CW1G2b1G2bO%EnQSO1G2dO!%tQ,UO1G2dOOQ(CW1G2i1G2iO!>oQWO1G2bOBoQSO1G2cO%EsQSO1G2dO%E{QSO1G2cO!'^Q,UO7+*}OOQ(CY1G/[1G/[O%FWQSO1G/[OOQ(CY7+'n7+'nO%F]Q,UO7+'uO%FmQ(CjO<<KROOQ(CY<<KR<<KRO!%tQ,UO'#IlO%GaQSO,5@iO!%tQ,UO1G2gOOQQ<<Gx<<GxO!>dQ(C[O<<GxO%GiQ(CjO<<ItOOQ(CY<<It<<ItOOQO,5?^,5?^O%H]QSO,5?^O$%|QSO,5?^OOQO-E<p-E<pO%HbQSO1G6ZO%HbQSO1G6ZO9_QSO1G6ZO?rQSO<<LcOOQQ<<Lc<<LcO%HjQSO<<LcO9OQ(C[O<<LcO%HoQSO1G0sOOQQ<<LO<<LOO% dQ(ChO<<LOOOQQ<<LP<<LPO% nQ`O<<LPO%HtQWO'#InO%IPQSO,5@lO!)jQUO,5@lOOQQ1G2}1G2}O%IXQUO'#JgOOQO'#Ip'#IpO9OQ(C[O'#IpO%IcQWO,5=lOOQQ,5=l,5=lO%IjQWO'#E`O%JOQSO7+(qO%JTQSO7+(qOOQQ7+(q7+(qO!%tQ,UO7+(qO%QQUO7+(qO%J]QSO7+(qOOQQ7+(s7+(sO9OQ(C[O7+(sO#K`QSO7+(sO8tQSO7+(sO!>oQWO7+(sO%JhQSO,5?]OOQO-E<o-E<oOOQO'#HT'#HTO%JsQSO1G6XO9OQ(C[O<<GnOOQQ<<Gn<<GnO?rQSO<<GnO%J{QSO7++vO%KQQSO7++wOOQQ7+({7+({O%KVQSO7+({O%K[QUO7+({O%KcQSO7+({O%QQUO7++vO%QQUO7++wOOQQ<<Lo<<LoOOQQ<<Lq<<LqOOQQ-E<r-E<rOOQQ1G3p1G3pO%KhQSO,5>VOOQQ,5>X,5>XO%KmQSO1G3vO:vQSO7+&_O!)jQUO7+&_OOQO7+%X7+%XO%KrQ$IUO1G5yO>QQSO7+%XOOQ(CY<<I]<<I]OOQ(CY<<Is<<IsO>QQSO<<IsOOQO<<Il<<IlO$6nQ(CjO<<IlO%QQUO<<IlOOQO<<I`<<I`O!>dQ(C[O<<I`O%K|Q(C[O<<IlO%LXQ(CjO<<N|O%LiQSO<<N{OOQO7+*T7+*TO:vQSO7+*TOOQQANAcANAcO%LqQSOANAcO!%tQ,UOANAcO#![QSOANAcO$MUQbOANAcO%QQUOANAcO%LyQ(CjO7+'sO& [Q(CjO7+'uO&#mQbO1G4cO&#wQ$IUO7+&YO&$UQ$IUO,59nO&&XQ$IUO,5<dO&([Q$IUO,5<fO&*_Q$IUO,5<tO&,TQ$IUO7+'fO&,bQ$IUO7+'gO&,oQSO,5<WOOQO7+'Z7+'ZO&,tQ,UO<<KuOOQO1G4m1G4mO&,{QSO1G4mO&-WQSO1G4mO&-fQSO7++mO&-fQSO7++mO!%tQ,UO1G4oO&-nQ`O1G4oO&-xQSO7++nOOQ(CW7+'}7+'}O$ mQSO7+(OO&.QQ`O7+(OOOQ(CW7+'|7+'|O$ mQSO7+'}O&.XQSO7+(OO!%tQ,UO7+(OOBoQSO7+'}O&.^Q,UO<<NiOOQ(CY7+$v7+$vO&.hQ`O,5?WOOQO-E<j-E<jO&.rQ(ChO7+(ROOQQAN=dAN=dO9_QSO1G4xOOQO1G4x1G4xO&/SQSO1G4xO&/XQSO7++uO&/XQSO7++uO9OQ(C[OANA}O?rQSOANA}OOQQANA}ANA}OOQQANAjANAjOOQQANAkANAkO&/aQSO,5?YOOQO-E<l-E<lO&/lQ$IUO1G6WO&1|QbO'#CfOOQO,5?[,5?[OOQO-E<n-E<nOOQQ1G3W1G3WO%IXQUO,5<xOOQQ<<L]<<L]O!%tQ,UO<<L]O%JOQSO<<L]O&2WQSO<<L]O%QQUO<<L]OOQQ<<L_<<L_O9OQ(C[O<<L_O#K`QSO<<L_O8tQSO<<L_O&2`QWO1G4wO&2kQSO7++sOOQQAN=YAN=YO9OQ(C[OAN=YOOQQ<= b<= bOOQQ<= c<= cOOQQ<<Lg<<LgO&2sQSO<<LgO&2xQUO<<LgO&3PQSO<= bO&3UQSO<= cOOQQ1G3q1G3qO>QQSO7+)bO&3ZQSO<<IyO&3fQ$IUO<<IyOOQO<<Hs<<HsOOQ(CYAN?_AN?_OOQOAN?WAN?WO$6nQ(CjOAN?WOOQOAN>zAN>zO%QQUOAN?WOOQO<<Mo<<MoOOQQG26}G26}O!%tQ,UOG26}O#![QSOG26}O&3pQSOG26}O$MUQbOG26}O&3xQ$IUO<<JaO&4VQ$IUO1G2XO&5{Q$IUO1G2kO&8OQ$IUO1G2mO&:RQ$IUO<<KRO&:`Q$IUO<<ItOOQO1G1r1G1rO!'^Q,UOANAaOOQO7+*X7+*XO&:mQSO7+*XO&:xQSO<= XO&;QQ`O7+*ZOOQ(CW<<Kj<<KjO$ mQSO<<KjOOQ(CW<<Ki<<KiO&;[Q`O<<KjO$ mQSO<<KiOOQO7+*d7+*dO9_QSO7+*dO&;cQSO<= aOOQQG27iG27iO9OQ(C[OG27iO!)jQUO1G4tO&;kQSO7++rO%JOQSOANAwOOQQANAwANAwO!%tQ,UOANAwO&;sQSOANAwOOQQANAyANAyO9OQ(C[OANAyO#K`QSOANAyOOQO'#HU'#HUOOQO7+*c7+*cOOQQG22tG22tOOQQANBRANBRO&;{QSOANBROOQQAND|AND|OOQQAND}AND}OOQQ<<L|<<L|O!)jQUOAN?eOOQOG24rG24rO$6nQ(CjOG24rO#![QSOLD,iOOQQLD,iLD,iO!%tQ,UOLD,iO&<QQSOLD,iO&<YQ$IUO7+'sO&>OQ$IUO7+'uO&?tQ,UOG26{OOQO<<Ms<<MsOOQ(CWANAUANAUO$ mQSOANAUOOQ(CWANATANATOOQO<<NO<<NOOOQQLD-TLD-TO&@UQ$IUO7+*`OOQQG27cG27cO%JOQSOG27cO!%tQ,UOG27cOOQQG27eG27eO9OQ(C[OG27eOOQQG27mG27mO&@`Q$IUOG25POOQOLD*^LD*^OOQQ!$(!T!$(!TO#![QSO!$(!TO!%tQ,UO!$(!TO&@jQ(CjOG26{OOQ(CWG26pG26pOOQQLD,}LD,}O%JOQSOLD,}OOQQLD-PLD-POOQQ!)9Eo!)9EoO#![QSO!)9EoOOQQ!$(!i!$(!iOOQQ!.K;Z!.K;ZO&B{Q$IUOG26{O!)jQUO'#DvO0uQSO'#ETO&DqQbO'#JcO!)jQUO'#DnO&DxQUO'#DzO!)jQUO'#D|O&EPQbO'#CfO&GgQbO'#CfO&GwQUO,5;SO!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO,5;^O!)jQUO'#IfO&IzQSO,5<cO&JSQ,UO,5;^O&KgQ,UO,5;^O!)jQUO,5;rO0xQSO'#DSO0xQSO'#DSO!%tQ,UO'#FxO&JSQ,UO'#FxO!%tQ,UO'#FzO&JSQ,UO'#FzO!%tQ,UO'#GYO&JSQ,UO'#GYO!)jQUO,5:fO!)jQUO,5@_O&GwQUO1G0nO&KnQ$IUO'#CfO!)jQUO1G1zO!%tQ,UO,5=PO&JSQ,UO,5=PO!%tQ,UO,5=RO&JSQ,UO,5=RO!%tQ,UO,5<mO&JSQ,UO,5<mO&GwQUO1G1{O!)jQUO7+&uO!%tQ,UO1G2XO&JSQ,UO1G2XO!%tQ,UO1G2ZO&JSQ,UO1G2ZO&GwQUO7+'gO&GwQUO7+&YO!%tQ,UOANAaO&JSQ,UOANAaO&KxQSO'#EhO&K}QSO'#EhO&LVQSO'#FWO&L[QSO'#ErO&LaQSO'#JsO&LlQSO'#JqO&LwQSO,5;SO&L|Q,UO,5<`O&MTQSO'#GRO&MYQSO'#GRO&M_QSO,5<aO&MgQSO,5;SO&MoQ$IUO1G1ZO&MvQSO,5<mO&M{QSO,5<mO&NQQSO,5<oO&NVQSO,5<oO&N[QSO1G1{O&NaQSO1G0nO&NfQ,UO<<KuO&NmQ,UO<<KuO7^Q,UO'#FvO8tQSO'#FuO@mQSO'#EgO!)jQUO,5;oO!2dQSO'#GRO!2dQSO'#GRO!2dQSO'#GTO!2dQSO'#GTO!'^Q,UO7+(ZO!'^Q,UO7+(ZO$HyQ`O1G2oO$HyQ`O1G2oO!%tQ,UO,5=TO!%tQ,UO,5=T",
4491
+ stateData: "' v~O'mOS'nOSROS'oRQ~OPYOQYOV!TO^pOaxObwOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!XXO!csO!hZO!kYO!lYO!mYO!otO!quO!tvO!x]O#p}O$QzO$UfO%`{O%b!OO%d|O%e|O%h!PO%j!QO%m!RO%n!RO%p!SO%|!UO&S!VO&U!WO&W!XO&Y!YO&]!ZO&c![O&i!]O&k!^O&m!_O&o!`O&q!aO'tSO'vTO'yUO(RVO(a[O(niO~OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!cO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO't!bO'vTO'yUO(RVO(a[O(niO~O^!sOl!kO|!lO![!uO!]!rO!^!rO!x9mO!|!mO!}!mO#O!tO#P!mO#Q!mO#T!vO#U!vO'u!iO'vTO'yUO(U!jO(a!pO~O'o!wO~OPYXXYX^YXkYXyYXzYX|YX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX'kYX(RYX(bYX(iYX(jYX~O!a$zX~P(gO[!yO'v!{O'w!yO'x!{O~O[!|O'x!{O'y!{O'z!|O~Oq#OO!O#PO(S#PO(T#RO~OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!cO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO't9rO'vTO'yUO(RVO(a[O(niO~O!U#VO!V#SO!S(XP!S(fP~P+sO!W#_O~P`OPYOQYOa!gOb!fOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!cO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO'vTO'yUO(RVO(a[O(niO~Oi#iO!U#eO!x]O#b#hO#c#eO't9sO!g(cP~P._O!h#kO't#jO~O!t#oO!x]O%`#pO~O#d#qO~O!a#rO#d#qO~OP$YOX$aOk#}Oy#vOz#wO|#xO!V$^O!e$PO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO#l$PO#m$PO#n$`O#o$PO#q$QO#s$SO#u$UO#v$VO(RVO(b$WO(i#yO(j#zO~O^(VX'k(VX'i(VX!g(VX!S(VX!X(VX%a(VX!a(VX~P1gO#X$bO#{$bOP(WXX(WXk(WXy(WXz(WX|(WX!V(WX!e(WX!h(WX!l(WX#g(WX#h(WX#i(WX#j(WX#k(WX#l(WX#m(WX#n(WX#o(WX#q(WX#s(WX#u(WX#v(WX(R(WX(b(WX(i(WX(j(WX!X(WX%a(WX~O^(WX!f(WX'k(WX'i(WX!S(WX!g(WXo(WX!a(WX~P3}O#X$bO~O$W$dO$Y$cO$a$iO~O!X$jO$UfO$d$kO$f$mO~Oi%POk$qOl$pOm$pOs%QOu%ROw%SO|$xO!X$yO!c%XO!h$uO#c%YO$Q%VO$m%TO$o%UO$r%WO't$oO'vTO'yUO'}%OO(R$rOd(OP~O!h%ZO~O!a%]O~O^%^O'k%^O~O'u!iO~P%QO't%eO~O!h%ZO't%eO'u!iO'}%OO~Ob%lO!h%ZO't%eO~O#o$PO~Oy%qO!X%nO!h%pO%b%tO't%eO'u!iO'vTO'yUO](vP~O!t#oO~O|%vO!X%wO't%eO~O|%vO!X%wO%j%{O't%eO~O't%|O~O#p}O%b!OO%d|O%e|O%h!PO%j!QO%m!RO%n!RO~Oa&VOb&UO!t&SO%`&TO%r&RO~P;fOa&YObwO!X&XO!tvO!x]O#p}O%`{O%d|O%e|O%h!PO%j!QO%m!RO%n!RO%p!SO~O_&]O#X&`O%b&ZO'u!iO~P<eO!h&aO!q&eO~O!h#kO~O!XXO~O^%^O'j&mO'k%^O~O^%^O'j&pO'k%^O~O^%^O'j&rO'k%^O~O'iYX!SYXoYX!gYX&QYX!XYX%aYX!aYX~P(gO!['PO!]&xO!^&xO'u!iO'vTO'yUO~Ol&vO|&uO!U&yO(U&tO!W(YP!W(hP~P?fOg'SO!X'QO't%eO~Ob'XO!h%ZO't%eO~Oy%qO!h%pO~Ol!kO|!lO!x9mO!|!mO!}!mO#P!mO#Q!mO'u!iO'vTO'yUO(U!jO(a!pO~O!['_O!]'^O!^'^O#O!mO#T'`O#U'`O~PAQO^%^O!a#rO!h%ZO'k%^O'}%OO(b'bO~O!l'fO#X'dO~PB`Ol!kO|!lO'vTO'yUO(U!jO(a!pO~O!XXOl(_X|(_X![(_X!](_X!^(_X!x(_X!|(_X!}(_X#O(_X#P(_X#Q(_X#T(_X#U(_X'u(_X'v(_X'y(_X(U(_X(a(_X~O!]'^O!^'^O'u!iO~PCOO'p'jO'q'jO'r'lO~O[!yO'v'nO'w!yO'x'nO~O[!|O'x'nO'y'nO'z!|O~Oq#OO!O#PO(S#PO(T'rO~O!U'tO!S&|X!S'SX!V&|X!V'SX~P+sO!V'vO!S(XX~OP$YOX$aOk#}Oy#vOz#wO|#xO!V'vO!e$PO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO#l$PO#m$PO#n$`O#o$PO#q$QO#s$SO#u$UO#v$VO(RVO(b$WO(i#yO(j#zO~O!S(XX~PFrO!S'{O~O!S(eX!V(eX!a(eX!g(eX(b(eX~O#X(eX#d#]X!W(eX~PHxO#X'|O!S(gX!V(gX~O!V'}O!S(fX~O!S(QO~O#X$bO~PHxO!W(RO~P`Oy#vOz#wO|#xO!f#tO!h#uO(RVOP!jaX!jak!ja!V!ja!e!ja!l!ja#g!ja#h!ja#i!ja#j!ja#k!ja#l!ja#m!ja#n!ja#o!ja#q!ja#s!ja#u!ja#v!ja(b!ja(i!ja(j!ja~O^!ja'k!ja'i!ja!S!ja!g!jao!ja!X!ja%a!ja!a!ja~PJ`O!g(SO~O!a#rO#X(TO(b'bO!V(dX^(dX'k(dX~O!g(dX~PMOO|%vO!X%wO!x]O#b(YO#c(XO't%eO~O!V(ZO!g(cX~O!g(]O~O|%vO!X%wO#c(XO't%eO~OP(WXX(WXk(WXy(WXz(WX|(WX!V(WX!e(WX!f(WX!h(WX!l(WX#g(WX#h(WX#i(WX#j(WX#k(WX#l(WX#m(WX#n(WX#o(WX#q(WX#s(WX#u(WX#v(WX(R(WX(b(WX(i(WX(j(WX~O!a#rO!g(WX~PNlOy(^Oz(_O!f#tO!h#uO!x!wa|!wa~O!t!wa%`!wa!X!wa#b!wa#c!wa't!wa~P!!pO!t(cO~OPYOQYOa!gOb!fOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!XXO!csO!hZO!kYO!lYO!mYO!otO!quO!t!eO$Q!hO$UfO't!bO'vTO'yUO(RVO(a[O(niO~Oi%POk$qOl$pOm$pOs%QOu%ROw:VO|$xO!X$yO!c;aO!h$uO#c:]O$Q%VO$m:XO$o:ZO$r%WO't(gO'vTO'yUO'}%OO(R$rO~O#d(iO~Oi%POk$qOl$pOm$pOs%QOu%ROw%SO|$xO!X$yO!c%XO!h$uO#c%YO$Q%VO$m%TO$o%UO$r%WO't(gO'vTO'yUO'}%OO(R$rO~Od([P~P!'^O!U(mO!g(]P~P%QO(U(oO(a[O~O|(qO!h#uO(U(oO(a[O~OP9lOQ9lOa;]Ob!fOikOk9lOlkOmkOskOu9lOw9lO|WO!QkO!RkO!X!cO!c9oO!hZO!k9lO!l9lO!m9lO!o9pO!q9qO!t!eO$Q!hO$UfO't)PO'vTO'yUO(RVO(a[O(n;ZO~Oz)SO!h#uO~O!V$^O^$ka'k$ka'i$ka!g$ka!S$ka!X$ka%a$ka!a$ka~O#p)WO~P!%tOy)ZO!a)YO!X$XX$T$XX$W$XX$Y$XX$a$XX~O!a)YO!X(kX$T(kX$W(kX$Y(kX$a(kX~Oy)ZO~P!-SOy)ZO!X(kX$T(kX$W(kX$Y(kX$a(kX~O!X)]O$T)aO$W)[O$Y)[O$a)bO~O!U)eO~P!)jO$W$dO$Y$cO$a)iO~Og$sXy$sX|$sX!f$sX(i$sX(j$sX~OdfXd$sXgfX!VfX#XfX~P!.xOl)kO~Oq)lO(S)mO(T)oO~Og)xOy)qO|)rO(i)tO(j)vO~Od)pO~P!0ROd)yO~Oi%POk$qOl$pOm$pOs%QOu%ROw:VO|$xO!X$yO!c;aO!h$uO#c:]O$Q%VO$m:XO$o:ZO$r%WO'vTO'yUO'}%OO(R$rO~O!U)}O't)zO!g(oP~P!0pO#d*PO~O!h*QO~O!U*VO't*SO!S(pP~P!0pOk*cO|*ZO![*aO!]*YO!^*YO!h*QO#T*bO%W*]O'u!iO(U!jO~O!W*`O~P!2vO!f#tOg(QXy(QX|(QX(i(QX(j(QX!V(QX#X(QX~Od(QX#y(QX~P!3oOg*fO#X*eOd(PX!V(PX~O!V*gOd(OX~O't%|Od(OP~O!h*nO~O't(gO~Oi*rO|%vO!U#eO!X%wO!x]O#b#hO#c#eO't%eO!g(cP~O!a#rO#d*sO~OP$YOX$aOk#}Oy#vOz#wO|#xO!e$PO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO#l$PO#m$PO#n$`O#o$PO#q$QO#s$SO#u$UO#v$VO(RVO(b$WO(i#yO(j#zO~O^!ba!V!ba'k!ba'i!ba!S!ba!g!bao!ba!X!ba%a!ba!a!ba~P!6UOy#vOz#wO|#xO!f#tO!h#uO(RVOP!naX!nak!na!V!na!e!na!l!na#g!na#h!na#i!na#j!na#k!na#l!na#m!na#n!na#o!na#q!na#s!na#u!na#v!na(b!na(i!na(j!na~O^!na'k!na'i!na!S!na!g!nao!na!X!na%a!na!a!na~P!8oOy#vOz#wO|#xO!f#tO!h#uO(RVOP!paX!pak!pa!V!pa!e!pa!l!pa#g!pa#h!pa#i!pa#j!pa#k!pa#l!pa#m!pa#n!pa#o!pa#q!pa#s!pa#u!pa#v!pa(b!pa(i!pa(j!pa~O^!pa'k!pa'i!pa!S!pa!g!pao!pa!X!pa%a!pa!a!pa~P!;YOg*{O!X'QO%a*zO'}%OO~O!a*}O^'|X!X'|X'k'|X!V'|X~O^%^O!XXO'k%^O~O!h%ZO'}%OO~O!h%ZO't%eO'}%OO~O!a#rO#d(iO~O%b+ZO't+VO'vTO'yUO!W(wP~O!V+[O](vX~O(U(oO~OX+`O~O]+aO~O!X%nO't%eO'u!iO](vP~O|%vO!U+eO!V'}O!X%wO't%eO!S(fP~Ol&|O|+gO!U+fO'vTO'yUO(U(oO~O!W(hP~P!@xO!V+hO^(sX'k(sX~O#X+lO'}%OO~Og+oO!X$yO'}%OO~O!X+qO~Oy+sO!XXO~O!t+xO~Ob+}O~O't#jO!W(uP~Ob%lO~O%b!OO't%|O~P<eOX,TO],SO~OPYOQYOaxObwOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!csO!hZO!kYO!lYO!mYO!otO!quO!tvO!x]O$UfO%`{O'vTO'yUO(RVO(a[O(niO~O!X!cO$Q!hO't!bO~P!C]O],SO^%^O'k%^O~O^,XO#p,ZO%d,ZO%e,ZO~P%QO!h&aO~O&S,`O~O!X,bO~O&e,dO&g,eOP&baQ&baV&ba^&baa&bab&bai&bak&bal&bam&bas&bau&baw&ba|&ba!Q&ba!R&ba!X&ba!c&ba!h&ba!k&ba!l&ba!m&ba!o&ba!q&ba!t&ba!x&ba#p&ba$Q&ba$U&ba%`&ba%b&ba%d&ba%e&ba%h&ba%j&ba%m&ba%n&ba%p&ba%|&ba&S&ba&U&ba&W&ba&Y&ba&]&ba&c&ba&i&ba&k&ba&m&ba&o&ba&q&ba'i&ba't&ba'v&ba'y&ba(R&ba(a&ba(n&ba!W&ba&Z&ba_&ba&`&ba~O't,jO~O!V{X!V!_X!W{X!W!_X!a{X!a!_X!h!_X#X{X'}!_X~O!a,oO#X,nO!V#aX!V(ZX!W#aX!W(ZX!a(ZX!h(ZX'}(ZX~O!a,qO!h%ZO'}%OO!V!ZX!W!ZX~Ol!kO|!lO'vTO'yUO(U!jO~OP9lOQ9lOa;]Ob!fOikOk9lOlkOmkOskOu9lOw9lO|WO!QkO!RkO!X!cO!c9oO!hZO!k9lO!l9lO!m9lO!o9pO!q9qO!t!eO$Q!hO$UfO'vTO'yUO(RVO(a[O(n;ZO~O't:bO~P!LrO!V,uO!W(YX~O!W,wO~O!a,oO#X,nO!V#aX!W#aX~O!V,xO!W(hX~O!W,zO~O!],{O!^,{O'u!iO~P!LaO!W-OO~P'TOg-RO!X'QO~O!S-WO~Ol!wa![!wa!]!wa!^!wa!|!wa!}!wa#O!wa#P!wa#Q!wa#T!wa#U!wa'u!wa'v!wa'y!wa(U!wa(a!wa~P!!pO!l-]O#X-ZO~PB`O!]-_O!^-_O'u!iO~PCOO^%^O#X-ZO'k%^O~O^%^O!a#rO#X-ZO'k%^O~O^%^O!a#rO!l-]O#X-ZO'k%^O(b'bO~O'p'jO'q'jO'r-dO~Oo-eO~O!S&|a!V&|a~P!6UO!U-iO!S&|X!V&|X~P%QO!V'vO!S(Xa~O!S(Xa~PFrO!V'}O!S(fa~O|%vO!U-mO!X%wO't%eO!S'SX!V'SX~O#X-oO!V(da!g(da^(da'k(da~O!a#rO~P#&xO!V(ZO!g(ca~O|%vO!X%wO#c-sO't%eO~Oi-xO|%vO!U-uO!X%wO!x]O#b-wO#c-uO't%eO!V'VX!g'VX~Oz-|O!h#uO~Og.PO!X'QO%a.OO'}%OO~O^#[i!V#[i'k#[i'i#[i!S#[i!g#[io#[i!X#[i%a#[i!a#[i~P!6UOg;gOy)qO|)rO(i)tO(j)vO~O#d#Wa^#Wa#X#Wa'k#Wa!V#Wa!g#Wa!X#Wa!S#Wa~P#)tO#d(QXP(QXX(QX^(QXk(QXz(QX!e(QX!h(QX!l(QX#g(QX#h(QX#i(QX#j(QX#k(QX#l(QX#m(QX#n(QX#o(QX#q(QX#s(QX#u(QX#v(QX'k(QX(R(QX(b(QX!g(QX!S(QX'i(QXo(QX!X(QX%a(QX!a(QX~P!3oO!V.YOd([X~P!0ROd.[O~O!V.]O!g(]X~P!6UO!g.`O~O!S.bO~OP$YOy#vOz#wO|#xO!f#tO!h#uO!l$YO(RVOX#fi^#fik#fi!V#fi!e#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'k#fi(b#fi(i#fi(j#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O#g#fi~P#-pO#g#{O~P#-pOP$YOy#vOz#wO|#xO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O(RVOX#fi^#fi!V#fi!e#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'k#fi(b#fi(i#fi(j#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~Ok#fi~P#0bOk#}O~P#0bOP$YOk#}Oy#vOz#wO|#xO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO(RVO^#fi!V#fi#q#fi#s#fi#u#fi#v#fi'k#fi(b#fi(i#fi(j#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~OX#fi!e#fi#l#fi#m#fi#n#fi#o#fi~P#3SOX$aO!e$PO#l$PO#m$PO#n$`O#o$PO~P#3SOP$YOX$aOk#}Oy#vOz#wO|#xO!e$PO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO#l$PO#m$PO#n$`O#o$PO#q$QO(RVO^#fi!V#fi#s#fi#u#fi#v#fi'k#fi(b#fi(j#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O(i#fi~P#6TO(i#yO~P#6TOP$YOX$aOk#}Oy#vOz#wO|#xO!e$PO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO#l$PO#m$PO#n$`O#o$PO#q$QO#s$SO(RVO(i#yO^#fi!V#fi#u#fi#v#fi'k#fi(b#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O(j#fi~P#8uO(j#zO~P#8uOP$YOX$aOk#}Oy#vOz#wO|#xO!e$PO!f#tO!h#uO!l$YO#g#{O#h#|O#i#|O#j#|O#k$OO#l$PO#m$PO#n$`O#o$PO#q$QO#s$SO#u$UO(RVO(i#yO(j#zO~O^#fi!V#fi#v#fi'k#fi(b#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#;gOPYXXYXkYXyYXzYX|YX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(RYX(bYX(iYX(jYX!VYX!WYX~O#yYX~P#>QOP$YOX:TOk9wOy#vOz#wO|#xO!e9yO!f#tO!h#uO!l$YO#g9uO#h9vO#i9vO#j9vO#k9xO#l9yO#m9yO#n:SO#o9yO#q9zO#s9|O#u:OO#v:PO(RVO(b$WO(i#yO(j#zO~O#y.dO~P#@_O#X:UO#{:UO#y(WX!W(WX~PNlO^'Ya!V'Ya'k'Ya'i'Ya!g'Ya!S'Yao'Ya!X'Ya%a'Ya!a'Ya~P!6UOP#fiX#fi^#fik#fiz#fi!V#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'k#fi(R#fi(b#fi'i#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#)tO^#zi!V#zi'k#zi'i#zi!S#zi!g#zio#zi!X#zi%a#zi!a#zi~P!6UO$W.iO$Y.iO~O$W.jO$Y.jO~O!a)YO#X.kO!X$^X$T$^X$W$^X$Y$^X$a$^X~O!U.lO~O!X)]O$T.nO$W)[O$Y)[O$a.oO~O!V:QO!W(VX~P#@_O!W.pO~O!a)YO$a(kX~O$a.rO~Oq)lO(S)mO(T.uO~Ol.xO!S.yO'vTO'yUO~O!VcX!acX!gcX!g$sX(bcX~P!.xO!g/PO~P#)tO!V/QO!a#rO(b'bO!g(oX~O!g/VO~O!U)}O't%eO!g(oP~O#d/XO~O!S$sX!V$sX!a$zX~P!.xO!V/YO!S(pX~P#)tO!a/[O~O!S/^O~Ok/bO!a#rO!h%ZO'}%OO(b'bO~O't/dO~O!a*}O~O^%^O!V/hO'k%^O~O!W/jO~P!2vO!]/kO!^/kO'u!iO(U!jO~O|/mO(U!jO~O#T/nO~O't%|Od'_X!V'_X~O!V*gOd(Oa~Od/sO~Oy/tOz/tO|/uOgva(iva(jva!Vva#Xva~Odva#yva~P#L|Oy)qO|)rOg$la(i$la(j$la!V$la#X$la~Od$la#y$la~P#MrOy)qO|)rOg$na(i$na(j$na!V$na#X$na~Od$na#y$na~P#NeO#d/wO~Od$|a!V$|a#X$|a#y$|a~P!0RO!a#rO~O#d/zO~Oy#vOz#wO|#xO!f#tO!h#uO(RVOP!niX!nik!ni!V!ni!e!ni!l!ni#g!ni#h!ni#i!ni#j!ni#k!ni#l!ni#m!ni#n!ni#o!ni#q!ni#s!ni#u!ni#v!ni(b!ni(i!ni(j!ni~O^!ni'k!ni'i!ni!S!ni!g!nio!ni!X!ni%a!ni!a!ni~P$ wOg.PO!X'QO%a.OO~Oi0RO't0QO~P!0sO!a*}O^'|a!X'|a'k'|a!V'|a~O#d0XO~OXYX!VcX!WcX~O!V0YO!W(wX~O!W0[O~OX0]O~O't+VO'vTO'yUO~O!X%nO't%eO]'gX!V'gX~O!V+[O](va~O!g0bO~P!6UOX0eO~O]0fO~O!V+hO^(sa'k(sa~O#X0lO~Og0oO!X$yO~O(U(oO!W(tP~Og0xO!X0uO%a0wO'}%OO~OX1SO!V1QO!W(uX~O!W1TO~O]1VO^%^O'k%^O~O't#jO'vTO'yUO~O#X$bO#{$bOP(WXX(WXk(WXy(WXz(WX|(WX!V(WX!e(WX!h(WX!l(WX#g(WX#h(WX#i(WX#j(WX#k(WX#l(WX#m(WX#n(WX#q(WX#s(WX#u(WX#v(WX(R(WX(b(WX(i(WX(j(WX~O#o1YO&Q1ZO^(WX!f(WX~P$(xO#X$bO#o1YO&Q1ZO~O^1[O~P%QO^1^O~O&Z1bOP&XiQ&XiV&Xi^&Xia&Xib&Xii&Xik&Xil&Xim&Xis&Xiu&Xiw&Xi|&Xi!Q&Xi!R&Xi!X&Xi!c&Xi!h&Xi!k&Xi!l&Xi!m&Xi!o&Xi!q&Xi!t&Xi!x&Xi#p&Xi$Q&Xi$U&Xi%`&Xi%b&Xi%d&Xi%e&Xi%h&Xi%j&Xi%m&Xi%n&Xi%p&Xi%|&Xi&S&Xi&U&Xi&W&Xi&Y&Xi&]&Xi&c&Xi&i&Xi&k&Xi&m&Xi&o&Xi&q&Xi'i&Xi't&Xi'v&Xi'y&Xi(R&Xi(a&Xi(n&Xi!W&Xi_&Xi&`&Xi~O_1hO!W1fO&`1gO~P`O!XXO!h1jO~O&g,eOP&biQ&biV&bi^&bia&bib&bii&bik&bil&bim&bis&biu&biw&bi|&bi!Q&bi!R&bi!X&bi!c&bi!h&bi!k&bi!l&bi!m&bi!o&bi!q&bi!t&bi!x&bi#p&bi$Q&bi$U&bi%`&bi%b&bi%d&bi%e&bi%h&bi%j&bi%m&bi%n&bi%p&bi%|&bi&S&bi&U&bi&W&bi&Y&bi&]&bi&c&bi&i&bi&k&bi&m&bi&o&bi&q&bi'i&bi't&bi'v&bi'y&bi(R&bi(a&bi(n&bi!W&bi&Z&bi_&bi&`&bi~O!S1pO~O!V!Za!W!Za~P#@_Ol!kO|!lO!U1vO(U!jO!V&}X!W&}X~P?fO!V,uO!W(Ya~O!V'TX!W'TX~P!@xO!V,xO!W(ha~O!W1}O~P'TO^%^O#X2WO'k%^O~O^%^O!a#rO#X2WO'k%^O~O^%^O!a#rO!l2[O#X2WO'k%^O(b'bO~O^%^O'k%^O~P!6UO!V$^Oo$ka~O!S&|i!V&|i~P!6UO!V'vO!S(Xi~O!V'}O!S(fi~O!S(gi!V(gi~P!6UO!V(di!g(di^(di'k(di~P!6UO#X2^O!V(di!g(di^(di'k(di~O!V(ZO!g(ci~O|%vO!X%wO!x]O#b2cO#c2bO't%eO~O|%vO!X%wO#c2bO't%eO~Og2jO!X'QO%a2iO~Og2jO!X'QO%a2iO'}%OO~O#dvaPvaXva^vakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva'kva(Rva(bva!gva!Sva'ivaova!Xva%ava!ava~P#L|O#d$laP$laX$la^$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la'k$la(R$la(b$la!g$la!S$la'i$lao$la!X$la%a$la!a$la~P#MrO#d$naP$naX$na^$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na'k$na(R$na(b$na!g$na!S$na'i$nao$na!X$na%a$na!a$na~P#NeO#d$|aP$|aX$|a^$|ak$|az$|a!V$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a'k$|a(R$|a(b$|a!g$|a!S$|a'i$|a#X$|ao$|a!X$|a%a$|a!a$|a~P#)tO^#[q!V#[q'k#[q'i#[q!S#[q!g#[qo#[q!X#[q%a#[q!a#[q~P!6UOd'OX!V'OX~P!'^O!V.YOd([a~O!U2rO!V'PX!g'PX~P%QO!V.]O!g(]a~O!V.]O!g(]a~P!6UO!S2uO~O#y!ja!W!ja~PJ`O#y!ba!V!ba!W!ba~P#@_O#y!na!W!na~P!8oO#y!pa!W!pa~P!;YO!X3XO$UfO$_3YO~O!W3^O~Oo3_O~P#)tO^$hq!V$hq'k$hq'i$hq!S$hq!g$hqo$hq!X$hq%a$hq!a$hq~P!6UO!S3`O~Ol.xO'vTO'yUO~Oy)qO|)rO(j)vOg%Xi(i%Xi!V%Xi#X%Xi~Od%Xi#y%Xi~P$GeOy)qO|)rOg%Zi(i%Zi(j%Zi!V%Zi#X%Zi~Od%Zi#y%Zi~P$HWO(b$WO~P#)tO!U3cO't%eO!V'ZX!g'ZX~O!V/QO!g(oa~O!V/QO!a#rO!g(oa~O!V/QO!a#rO(b'bO!g(oa~Od$ui!V$ui#X$ui#y$ui~P!0RO!U3kO't*SO!S']X!V']X~P!0pO!V/YO!S(pa~O!V/YO!S(pa~P#)tO!a#rO#o3sO~Ok3vO!a#rO(b'bO~Od(Pi!V(Pi~P!0RO#X3yOd(Pi!V(Pi~P!0RO!g3|O~O^$iq!V$iq'k$iq'i$iq!S$iq!g$iqo$iq!X$iq%a$iq!a$iq~P!6UO!V4QO!X(qX~P#)tO!f#tO~P3}O^$sX!X$sX%UYX'k$sX!V$sX~P!.xO%U4SO^hXghXyhX|hX!XhX'khX(ihX(jhX!VhX~O%U4SO~O%b4ZO't+VO'vTO'yUO!V'fX!W'fX~O!V0YO!W(wa~OX4_O~O]4`O~O!S4dO~O^%^O'k%^O~P#)tO!X$yO~P#)tO!V4iO#X4kO!W(tX~O!W4lO~Ol!kO|4mO![!uO!]!rO!^!rO!x9mO!|!mO!}!mO#O!mO#P!mO#Q!mO#T4rO#U!vO'u!iO'vTO'yUO(U!jO(a!pO~O!W4qO~P%!VOg4wO!X0uO%a4vO~Og4wO!X0uO%a4vO'}%OO~O't#jO!V'eX!W'eX~O!V1QO!W(ua~O'vTO'yUO(U5QO~O]5UO~O!g5XO~P%QO^5ZO~O^5ZO~P%QO#o5]O&Q5^O~PMOO_1hO!W5bO&`1gO~P`O!a5dO~O!a5fO!V(Zi!W(Zi!a(Zi!h(Zi'}(Zi~O!V#ai!W#ai~P#@_O#X5gO!V#ai!W#ai~O!V!Zi!W!Zi~P#@_O^%^O#X5pO'k%^O~O^%^O!a#rO#X5pO'k%^O~O!V(dq!g(dq^(dq'k(dq~P!6UO!V(ZO!g(cq~O|%vO!X%wO#c5wO't%eO~O!X'QO%a5zO~Og5}O!X'QO%a5zO~O#d%XiP%XiX%Xi^%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi'k%Xi(R%Xi(b%Xi!g%Xi!S%Xi'i%Xio%Xi!X%Xi%a%Xi!a%Xi~P$GeO#d%ZiP%ZiX%Zi^%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi'k%Zi(R%Zi(b%Zi!g%Zi!S%Zi'i%Zio%Zi!X%Zi%a%Zi!a%Zi~P$HWO#d$uiP$uiX$ui^$uik$uiz$ui!V$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui'k$ui(R$ui(b$ui!g$ui!S$ui'i$ui#X$uio$ui!X$ui%a$ui!a$ui~P#)tOd'Oa!V'Oa~P!0RO!V'Pa!g'Pa~P!6UO!V.]O!g(]i~O#y#[i!V#[i!W#[i~P#@_OP$YOy#vOz#wO|#xO!f#tO!h#uO!l$YO(RVOX#fik#fi!e#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(b#fi(i#fi(j#fi!V#fi!W#fi~O#g#fi~P%0fO#g9uO~P%0fOP$YOy#vOz#wO|#xO!f#tO!h#uO!l$YO#g9uO#h9vO#i9vO#j9vO(RVOX#fi!e#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(b#fi(i#fi(j#fi!V#fi!W#fi~Ok#fi~P%2qOk9wO~P%2qOP$YOk9wOy#vOz#wO|#xO!f#tO!h#uO!l$YO#g9uO#h9vO#i9vO#j9vO#k9xO(RVO#q#fi#s#fi#u#fi#v#fi#y#fi(b#fi(i#fi(j#fi!V#fi!W#fi~OX#fi!e#fi#l#fi#m#fi#n#fi#o#fi~P%4|OX:TO!e9yO#l9yO#m9yO#n:SO#o9yO~P%4|OP$YOX:TOk9wOy#vOz#wO|#xO!e9yO!f#tO!h#uO!l$YO#g9uO#h9vO#i9vO#j9vO#k9xO#l9yO#m9yO#n:SO#o9yO#q9zO(RVO#s#fi#u#fi#v#fi#y#fi(b#fi(j#fi!V#fi!W#fi~O(i#fi~P%7hO(i#yO~P%7hOP$YOX:TOk9wOy#vOz#wO|#xO!e9yO!f#tO!h#uO!l$YO#g9uO#h9vO#i9vO#j9vO#k9xO#l9yO#m9yO#n:SO#o9yO#q9zO#s9|O(RVO(i#yO#u#fi#v#fi#y#fi(b#fi!V#fi!W#fi~O(j#fi~P%9sO(j#zO~P%9sOP$YOX:TOk9wOy#vOz#wO|#xO!e9yO!f#tO!h#uO!l$YO#g9uO#h9vO#i9vO#j9vO#k9xO#l9yO#m9yO#n:SO#o9yO#q9zO#s9|O#u:OO(RVO(i#yO(j#zO~O#v#fi#y#fi(b#fi!V#fi!W#fi~P%<OO^#wy!V#wy'k#wy'i#wy!S#wy!g#wyo#wy!X#wy%a#wy!a#wy~P!6UOg;hOy)qO|)rO(i)tO(j)vO~OP#fiX#fik#fiz#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(R#fi(b#fi!V#fi!W#fi~P%>vO!f#tOP(QXX(QXg(QXk(QXy(QXz(QX|(QX!e(QX!h(QX!l(QX#g(QX#h(QX#i(QX#j(QX#k(QX#l(QX#m(QX#n(QX#o(QX#q(QX#s(QX#u(QX#v(QX#y(QX(R(QX(b(QX(i(QX(j(QX!V(QX!W(QX~O#y#zi!V#zi!W#zi~P#@_O#y!ni!W!ni~P$ wO!W6ZO~O!V'Ya!W'Ya~P#@_O!a#rO(b'bO!V'Za!g'Za~O!V/QO!g(oi~O!V/QO!a#rO!g(oi~Od$uq!V$uq#X$uq#y$uq~P!0RO!S']a!V']a~P#)tO!a6bO~O!V/YO!S(pi~P#)tO!V/YO!S(pi~O!S6fO~O!a#rO#o6kO~Ok6lO!a#rO(b'bO~O!S6nO~Od$wq!V$wq#X$wq#y$wq~P!0RO^$iy!V$iy'k$iy'i$iy!S$iy!g$iyo$iy!X$iy%a$iy!a$iy~P!6UO!V4QO!X(qa~O^#[y!V#[y'k#[y'i#[y!S#[y!g#[yo#[y!X#[y%a#[y!a#[y~P!6UOX6sO~O!V0YO!W(wi~O]6yO~O!a5fO~O(U(oO!V'bX!W'bX~O!V4iO!W(ta~OikO't7QO~P._O!W7TO~P%!VOl!kO|7UO'vTO'yUO(U!jO(a!pO~O!X0uO~O!X0uO%a7WO~Og7ZO!X0uO%a7WO~OX7`O!V'ea!W'ea~O!V1QO!W(ui~O!g7dO~O!g7eO~O!g7fO~O!g7fO~P%QO^7hO~O!a7kO~O!g7lO~O!V(gi!W(gi~P#@_O^%^O#X7tO'k%^O~O!V(dy!g(dy^(dy'k(dy~P!6UO!V(ZO!g(cy~O!X'QO%a7wO~O#d$uqP$uqX$uq^$uqk$uqz$uq!V$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq'k$uq(R$uq(b$uq!g$uq!S$uq'i$uq#X$uqo$uq!X$uq%a$uq!a$uq~P#)tO#d$wqP$wqX$wq^$wqk$wqz$wq!V$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq'k$wq(R$wq(b$wq!g$wq!S$wq'i$wq#X$wqo$wq!X$wq%a$wq!a$wq~P#)tO!V'Pi!g'Pi~P!6UO#y#[q!V#[q!W#[q~P#@_Oy/tOz/tO|/uOPvaXvagvakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva#yva(Rva(bva(iva(jva!Vva!Wva~Oy)qO|)rOP$laX$lag$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la#y$la(R$la(b$la(i$la(j$la!V$la!W$la~Oy)qO|)rOP$naX$nag$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na#y$na(R$na(b$na(i$na(j$na!V$na!W$na~OP$|aX$|ak$|az$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a#y$|a(R$|a(b$|a!V$|a!W$|a~P%>vO#y$hq!V$hq!W$hq~P#@_O#y$iq!V$iq!W$iq~P#@_O!W8RO~O#y8SO~P!0RO!a#rO!V'Zi!g'Zi~O!a#rO(b'bO!V'Zi!g'Zi~O!V/QO!g(oq~O!S']i!V']i~P#)tO!V/YO!S(pq~O!S8YO~P#)tO!S8YO~Od(Py!V(Py~P!0RO!V'`a!X'`a~P#)tO^%Tq!X%Tq'k%Tq!V%Tq~P#)tOX8_O~O!V0YO!W(wq~O#X8cO!V'ba!W'ba~O!V4iO!W(ti~P#@_OPYXXYXkYXyYXzYX|YX!SYX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(RYX(bYX(iYX(jYX~O!a%RX#o%RX~P&/vO!X0uO%a8gO~O'vTO'yUO(U8lO~O!V1QO!W(uq~O!g8oO~O!g8oO~P%QO!g8qO~O!g8rO~O#X8tO!V#ay!W#ay~O!V#ay!W#ay~P#@_O!X'QO%a8yO~O#y#wy!V#wy!W#wy~P#@_OP$uiX$uik$uiz$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui#y$ui(R$ui(b$ui!V$ui!W$ui~P%>vOy)qO|)rO(j)vOP%XiX%Xig%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi#y%Xi(R%Xi(b%Xi(i%Xi!V%Xi!W%Xi~Oy)qO|)rOP%ZiX%Zig%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi#y%Zi(R%Zi(b%Zi(i%Zi(j%Zi!V%Zi!W%Zi~O#y$iy!V$iy!W$iy~P#@_O#y#[y!V#[y!W#[y~P#@_O!a#rO!V'Zq!g'Zq~O!V/QO!g(oy~O!S']q!V']q~P#)tO!S9QO~P#)tO!V0YO!W(wy~O!V4iO!W(tq~O!X0uO%a9XO~O!g9[O~O!X'QO%a9aO~OP$uqX$uqk$uqz$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq#y$uq(R$uq(b$uq!V$uq!W$uq~P%>vOP$wqX$wqk$wqz$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq#y$wq(R$wq(b$wq!V$wq!W$wq~P%>vOd%]!Z!V%]!Z#X%]!Z#y%]!Z~P!0RO!V'bq!W'bq~P#@_O!V#a!Z!W#a!Z~P#@_O#d%]!ZP%]!ZX%]!Z^%]!Zk%]!Zz%]!Z!V%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z'k%]!Z(R%]!Z(b%]!Z!g%]!Z!S%]!Z'i%]!Z#X%]!Zo%]!Z!X%]!Z%a%]!Z!a%]!Z~P#)tOP%]!ZX%]!Zk%]!Zz%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z#y%]!Z(R%]!Z(b%]!Z!V%]!Z!W%]!Z~P%>vOo(VX~P1gO'u!iO~P!)jO!ScX!VcX#XcX~P&/vOPYXXYXkYXyYXzYX|YX!VYX!VcX!eYX!fYX!hYX!lYX#XYX#XcX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(RYX(bYX(iYX(jYX~O!acX!gYX!gcX(bcX~P&E^OP9lOQ9lOa;]Ob!fOikOk9lOlkOmkOskOu9lOw9lO|WO!QkO!RkO!XXO!c9oO!hZO!k9lO!l9lO!m9lO!o9pO!q9qO!t!eO$Q!hO$UfO't)PO'vTO'yUO(RVO(a[O(n;ZO~O!V:QO!W$ka~Oi%POk$qOl$pOm$pOs%QOu%ROw:WO|$xO!X$yO!c;bO!h$uO#c:^O$Q%VO$m:YO$o:[O$r%WO't(gO'vTO'yUO'}%OO(R$rO~O#p)WO~P&JSO!WYX!WcX~P&E^O#d9tO~O!a#rO#d9tO~O#X:UO~O#o9yO~O#X:`O!V(gX!W(gX~O#X:UO!V(eX!W(eX~O#d:aO~Od:cO~P!0RO#d:hO~O#d:iO~O!a#rO#d:jO~O!a#rO#d:aO~O#y:kO~P#@_O#d:lO~O#d:mO~O#d:nO~O#d:oO~O#d:pO~O#d:qO~O#y:rO~P!0RO#y:sO~P!0RO$U~!f!|!}#P#Q#T#b#c#n(n$m$o$r%U%`%a%b%h%j%m%n%p%r~'oR$U(n#h!R'm'u#il#g#jky'n(U'n't$W$Y$W~",
4492
+ goto: "$%Z({PPPP(|P)PP)aP*p.rPPPP5SPP5iP;d>iP>|P>|PPP>|P@lP>|P>|P>|P@pPP@uPA`PFUPPPFYPPPPFYIXPPPI_JYPFYPLgPPPPNuFYPPPFYPFYP!#TFYP!&g!'i!'rP!(e!(i!(ePPPPP!+r!'iPP!,`!-YP!/|FYFY!0R!3Z!7n!7n!;cPPP!;jFYPPPPPPPPPPP!>uP!@WPPFY!AePFYPFYFYFYFYPFY!BwPP!E}P!IPP!IT!I_!Ic!IcP!EzP!Ig!IgP!LiP!LmFYFY!Ls# t>|P>|P>|>|P##O>|>|#$x>|#'V>|#(y>|>|#)g#+c#+c#+g#+o#+c#+wP#+cP>|#,a>|#-i>|>|5SPPP#.tPP#/^#/^P#/^P#/s#/^PP#/yP#/pP#/p#0]#/p#0w#0}5P)P#1Q)PP#1X#1X#1XP)PP)PP)PP)PPP)PP#1_#1bP#1b)PP#1fP#1iP)PP)PP)PP)PP)PP)P)PPP#1o#1u#2P#2V#2]#2c#2i#2w#2}#3T#3_#3e#3o#4O#4U#4u#5X#5_#5e#5s#6Y#7j#7x#8O#8U#8[#8b#8l#8r#8x#9S#9f#9lPPPPPPPPPP#9rPPPPPPP#:f#=mP#>|#?T#?]PPPP#Cg#F]#Lr#Lu#Lx#Mq#Mt#Mw#NO#NWPP#N^#Nb$ Z$!Z$!_$!sPP$!w$!}$#RP$#U$#Y$#]$$R$$i$$n$$q$$t$$z$$}$%R$%VR!xRmpOXr!X#`%]&d&f&g&i,],b1b1eY!rQ'Q,}0u4pQ%ctQ%kwQ%rzQ&[!TS&x!c,uQ'W!fS'^!o!uS*Y$y*_Q+T%lQ+b%tQ+|&UQ,{'PQ-V'XQ-_'_Q/k*aQ1P+}R:_9p$zdOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&d&f&g&i&m&u'S'd't'v'|(T(i(m(q)p*s+g,X,],b-R-Z-i-o.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2r4m4w5Z5]5^5p7U7Z7h7tS#m]9m!r)R$X$j&y)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^Q*j%SQ+Y%nQ,O&XQ,V&aQ.S:VQ0O*{Q0S*}Q0_+ZQ1X,TQ2f.PQ4Y0YQ5O1QQ5|2jQ6S:WQ6u4ZR7z5}&xkOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^t!kQ!o!r!u!v&x'P'Q'^'_'`,u,{,}-_0u4p4r$Y$pi#r#t$`$a$u$x%T%U%Y)l)u)w)x*P*V*e*f*z*}+l+o.O.Y/X/Y/[/w0l0o0w2i3a3k3s3y4Q4S4v5z6b6k7W7w8S8g8y9X9a:S:T:X:Y:Z:[:]:^:d:e:f:g:h:i:l:m:n:o:r:s;Z;c;d;g;hQ%uzQ&v!cS&|%w,xQ+Y%nS.x)r.zQ/v*nQ0_+ZQ0d+aQ1W,SQ1X,TQ4Y0YQ4c0fQ5R1SQ5S1VQ6u4ZQ6x4`Q7c5UQ8b6yR8m7`pmOXr!T!X#`%]&Z&d&f&g&i,],b1b1eR,Q&]&r^OPXYrstux!X!^!g!l#O#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j%]%c%p&]&`&a&d&f&g&i&m&u'S'd'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;];^[#XWZ#S#V&y'tQ%fvQ%jwS%oz%t!U%x|}#d#e#h%Z%v'}(X(Y(Z+e+f+h,Z,o-m-s-t-u-w1j2b2c5f5wQ&Q!RQ'T!eQ'V!fQ(b#oS)|$u*QS+S%k%lQ+W%nQ+w&SQ+{&US-U'W'XQ.R(cQ/U)}Q0W+TQ0^+ZQ0`+[Q0c+`Q0z+xS1O+|+}Q2S-VQ3b/QQ4X0YQ4]0]Q4b0eQ4}1PQ6_3cQ6t4ZQ6w4_Q8^6sR9S8_v$wi#t%T%U%Y)u)w*P*e*f.Y/X/w3a3y8S;Z;c;d!S%hw!f!q%j%k%l&w'V'W'X']'g*X+S+T,r-U-V-^/c0W1{2S2Z3uQ*|%fQ+m%}Q+p&OQ+z&UQ.Q(bQ0y+wU0}+{+|+}Q2k.RQ4x0zS4|1O1PQ7_4}!z;_#r$`$a$u$x)l)x*V*z*}+l+o.O/Y/[0l0o0w2i3k3s4Q4S4v5z6b6k7W7w8g8y9X9a:X:Z:]:d:f:h:l:n:r;g;hg;`:S:T:Y:[:^:e:g:i:m:o:sW$|i%O*g;ZS%}!O&ZQ&O!PQ&P!QR+k%{$Z${i#r#t$`$a$u$x%T%U%Y)l)u)w)x*P*V*e*f*z*}+l+o.O.Y/X/Y/[/w0l0o0w2i3a3k3s3y4Q4S4v5z6b6k7W7w8S8g8y9X9a:S:T:X:Y:Z:[:]:^:d:e:f:g:h:i:l:m:n:o:r:s;Z;c;d;g;hT)m$r)nV*k%S:V:WU&|!c%w,xS(p#v#wQ+_%qS-z(^(_Q0p+qQ3z/tR6}4i&xkOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^$i$]c#U#a%a%b%d's'y(e(l(t(u(v(w(x(y(z({(|(})O)Q)T)X)c*x+^,s-b-g-l-n.X._.c.e.f.g.v/x1q1t2U2]2q2v2w2x2y2z2{2|2}3O3P3Q3R3S3V3W3]4O4V5i5o5t6Q6R6W6X7P7n7r7{8P8Q8v9U9]9n;QT#PV#Q&ykOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^Q&z!cR1w,uv!kQ!c!o!r!u!v&x'P'Q'^'_'`,u,{,}-_0u4p4rS*X$y*_S/c*Y*aQ/l*bQ0r+sQ3u/kR3x/nlpOXr!X#`%]&d&f&g&i,],b1b1eQ&k![Q'h!tS(d#q9tQ+Q%iQ+u&QQ+v&RQ-S'UQ-a'aS.W(i:aS/y*s:jQ0U+RQ0t+tQ1i,dQ1k,eQ1s,pQ2Q-TQ2T-XS4P/z:pQ4T0VS4W0X:qQ5h1uQ5l2RQ5q2YQ6r4UQ7o5jQ7p5mQ7s5rR8s7l$d$[c#U#a%b%d's'y(e(l(t(u(v(w(x(y(z({(|(})O)Q)T)X)c*x+^,s-b-g-l-n.X._.c.f.g.v/x1q1t2U2]2q2v2w2x2y2z2{2|2}3O3P3Q3R3S3V3W3]4O4V5i5o5t6Q6R6W6X7P7n7r7{8P8Q8v9U9]9n;QS(a#l'ZU*d$z(h3US*w%a.eQ2g0OQ5y2fQ7y5|R8z7z$d$Zc#U#a%b%d's'y(e(l(t(u(v(w(x(y(z({(|(})O)Q)T)X)c*x+^,s-b-g-l-n.X._.c.f.g.v/x1q1t2U2]2q2v2w2x2y2z2{2|2}3O3P3Q3R3S3V3W3]4O4V5i5o5t6Q6R6W6X7P7n7r7{8P8Q8v9U9]9n;QS(`#l'ZS(r#w$[S*v%a.eS-{(_(aQ.h)SQ/{*wR2d-|&xkOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^S#m]9mQ&f!VQ&g!WQ&i!YQ&j!ZR1a,`Q'R!eQ*y%fQ-Q'TS-}(b*|Q2O-PW2h.Q.R/}0PQ5k2PU5x2e2g2kS7v5y5{S8x7x7yS9_8w8zQ9g9`R9j9hU!sQ'Q,}T4n0u4p!O_OXZ`r!T!X#`#d%Z%]&Z&]&d&f&g&i(Z,],b-t1b1e]!mQ!o'Q,}0u4pT#m]9m%UyOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&a&d&f&g&i&m&u'S'd't'v'|(T(i(m(q)p*s*{+g,X,],b-R-Z-i-o.P.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2j2r4m4w5Z5]5^5p5}7U7Z7h7tS(p#v#wS-z(^(_!s:w$X$j&y)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^Y!qQ'Q,}0u4pQ']!oS'g!r!uS'i!v4rS-^'^'_Q-`'`R2Z-_Q'f!qS(V#c1_S-]']'iQ/T)|Q/a*XQ2[-`Q3g/US3p/b/lQ6^3bS6i3v3xQ8U6_R8]6lQ#sbQ'e!qS(U#c1_S(W#i*rQ*t%[Q+O%gQ+U%mU-[']'f'iQ-p(VQ/S)|Q/`*XQ/f*[Q0T+PQ0{+yS2X-]-`Q2a-xS3f/T/US3o/a/lQ3r/eQ3t/gQ4z0|Q5s2[Q6]3bQ6a3gS6e3p3xQ6j3wQ7]4{S8T6^6_Q8X6fQ8Z6iQ8j7^Q9O8UQ9P8YQ9R8]Q9Z8kQ9c9QQ:z:uQ;V;OR;W;PV!sQ'Q,}%UaOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&a&d&f&g&i&m&u'S'd't'v'|(T(i(m(q)p*s*{+g,X,],b-R-Z-i-o.P.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2j2r4m4w5Z5]5^5p5}7U7Z7h7tS#sx!g!r:t$X$j&y)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^R:z;]%UbOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&a&d&f&g&i&m&u'S'd't'v'|(T(i(m(q)p*s*{+g,X,],b-R-Z-i-o.P.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2j2r4m4w5Z5]5^5p5}7U7Z7h7tQ%[j!S%gw!f!q%j%k%l&w'V'W'X']'g*X+S+T,r-U-V-^/c0W1{2S2Z3uS%mx!gQ+P%hQ+y&UW0|+z+{+|+}U4{0}1O1PS7^4|4}Q8k7_!r:u$X$j&y)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^Q;O;[R;P;]$xeOPXYrstu!X!^!l#O#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&d&f&g&i&m&u'S'd'v'|(T(i(m(q)p*s*{+g,X,],b-R-Z-i-o.P.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2j2r4m4w5Z5]5^5p5}7U7Z7h7tY#^WZ#S#V't!U%x|}#d#e#h%Z%v'}(X(Y(Z+e+f+h,Z,o-m-s-t-u-w1j2b2c5f5wQ,W&a!p:v$X$j)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^R:y&yS&}!c%wR1y,x$zdOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&d&f&g&i&m&u'S'd't'v'|(T(i(m(q)p*s+g,X,],b-R-Z-i-o.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2r4m4w5Z5]5^5p7U7Z7h7t!r)R$X$j&y)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^Q,V&aQ0O*{Q2f.PQ5|2jR7z5}!f$Rc#U%a's'y(e(l({(|(})O)T)X+^-b-g-l-n.X._.v/x2U2]2q3S4O4V5o5t6Q7r8v9n!T9{)Q)c,s.e1q1t2v3O3P3Q3R3V3]5i6R6W6X7P7n7{8P8Q9U9];Q!b$Tc#U%a's'y(e(l(})O)T)X+^-b-g-l-n.X._.v/x2U2]2q3S4O4V5o5t6Q7r8v9n!P9})Q)c,s.e1q1t2v3Q3R3V3]5i6R6W6X7P7n7{8P8Q9U9];Q!^$Xc#U%a's'y(e(l)T)X+^-b-g-l-n.X._.v/x2U2]2q3S4O4V5o5t6Q7r8v9nQ3a/Oz;^)Q)c,s.e1q1t2v3V3]5i6R6W6X7P7n7{8P8Q9U9];QQ;c;eR;d;f&xkOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^S$kh$lR3Y.k'PgOPWXYZhrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j$l%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.k.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^T$gf$mQ$efS)[$h)`R)h$mT$ff$mT)^$h)`'PhOPWXYZhrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$X$^$b$j$l%]%c%p&]&`&a&d&f&g&i&m&u&y'S'd't'v'|(T(i(m(q)e)p*s*{+g,X,],b,n,q-R-Z-i-o.P.].d.k.l/u/z0X0x1Y1Z1[1^1b1e1g1v2W2^2j2r3X4k4m4w5Z5]5^5g5p5}7U7Z7h7t8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^T$kh$lQ$nhR)g$l%UjOPWXYZrstu!X!^!l#O#S#V#`#k#q#u#x#{#|#}$O$P$Q$R$S$T$U$V$^$b%]%c%p&]&`&a&d&f&g&i&m&u'S'd't'v'|(T(i(m(q)p*s*{+g,X,],b-R-Z-i-o.P.].d/u/z0X0x1Y1Z1[1^1b1e1g2W2^2j2r4m4w5Z5]5^5p5}7U7Z7h7t!s;[$X$j&y)e,n,q.l1v3X4k5g8c8t9l9o9p9q9t9u9v9w9x9y9z9{9|9}:O:P:Q:U:_:`:a:c:j:k:p:q;^#alOPXZr!X!^!l#O#`#k#x$j%]&]&`&a&d&f&g&i&m&u'S(q)e*{+g,X,],b-R.P.l/u0x1Y1Z1[1^1b1e1g2j3X4m4w5Z5]5^5}7U7Z7hv$zi#t%T%U%Y)u)w*P*e*f.Y/X/w3a3y8S;Z;c;d!z(h#r$`$a$u$x)l)x*V*z*}+l+o.O/Y/[0l0o0w2i3k3s4Q4S4v5z6b6k7W7w8g8y9X9a:X:Z:]:d:f:h:l:n:r;g;hQ*o%WQ.w)qg3U:S:T:Y:[:^:e:g:i:m:o:sv$vi#t%T%U%Y)u)w*P*e*f.Y/X/w3a3y8S;Z;c;dQ*R$wS*[$y*_Q*p%XQ/g*]!z:|#r$`$a$u$x)l)x*V*z*}+l+o.O/Y/[0l0o0w2i3k3s4Q4S4v5z6b6k7W7w8g8y9X9a:X:Z:]:d:f:h:l:n:r;g;hf:}:S:T:Y:[:^:e:g:i:m:o:sQ;R;_Q;S;`Q;T;aR;U;bv$zi#t%T%U%Y)u)w*P*e*f.Y/X/w3a3y8S;Z;c;d!z(h#r$`$a$u$x)l)x*V*z*}+l+o.O/Y/[0l0o0w2i3k3s4Q4S4v5z6b6k7W7w8g8y9X9a:X:Z:]:d:f:h:l:n:r;g;hg3U:S:T:Y:[:^:e:g:i:m:o:slnOXr!X#`%]&d&f&g&i,],b1b1eQ*U$xQ,k&pQ,l&rR3j/Y$Y${i#r#t$`$a$u$x%T%U%Y)l)u)w)x*P*V*e*f*z*}+l+o.O.Y/X/Y/[/w0l0o0w2i3a3k3s3y4Q4S4v5z6b6k7W7w8S8g8y9X9a:S:T:X:Y:Z:[:]:^:d:e:f:g:h:i:l:m:n:o:r:s;Z;c;d;g;hQ+n&OQ0n+pQ4g0mR6|4hT*^$y*_S*^$y*_T4o0u4pS/e*Z4mT3w/m7UQ+O%gQ/f*[Q0T+PQ0{+yQ4z0|Q7]4{Q8j7^R9Z8kn)u$s(j*q/W/o/p2o3h3}6[6m8}:{;X;Y!W:d(f)V){*T.V.s/O/]/|0k0m2n3i3m4f4h6O6P6c6g6o6q8W8[9b;e;f]:e3T6V7|8{8|9kp)w$s(j*q.|/W/o/p2o3h3}6[6m8}:{;X;Y!Y:f(f)V){*T.V.s/O/]/|0k0m2l2n3i3m4f4h6O6P6c6g6o6q8W8[9b;e;f_:g3T6V7|7}8{8|9kpmOXr!T!X#`%]&Z&d&f&g&i,],b1b1eQ&W!SR,X&apmOXr!T!X#`%]&Z&d&f&g&i,],b1b1eR&W!SQ+r&PR0j+kqmOXr!T!X#`%]&Z&d&f&g&i,],b1b1eQ0v+wS4u0y0zU7V4s4t4xS8f7X7YS9V8e8hQ9d9WR9i9eQ&_!TR,R&ZR5R1SS%oz%tR0`+[Q&d!UR,]&eR,c&jT1c,b1eR,g&kQ,f&kR1l,gQ'k!wR-c'kQrOQ#`XT%`r#`Q!zTR'm!zQ!}UR'o!}Q)n$rR.t)nQ#QVR'q#QQ#TWU'w#T'x-jQ'x#UR-j'yQ,v&zR1x,vQ.Z(jR2p.ZQ.^(lS2s.^2tR2t._Q,}'QR1|,}Y!oQ'Q,}0u4pR'[!oS#ZW%vU(O#Z(P-kQ(P#[R-k'zQ,y&}R1z,yr`OXr!T!X#`%]&Z&]&d&f&g&i,],b1b1eS#dZ%ZU#n`#d-tR-t(ZQ([#fQ-q(WW-y([-q2_5uQ2_-rR5u2`Q)`$hR.m)`Q$lhR)f$lQ$_cU)U$_-f:RQ-f9nR:R)cQ/R)|W3d/R3e6`8VU3e/S/T/US6`3f3gR8V6a#m)s$s(f(j)V){*T*l*m*q.T.U.V.s.|.}/O/W/]/o/p/|0k0m2l2m2n2o3T3h3i3m3}4f4h6O6P6T6U6V6[6c6g6m6o6q7|7}8O8W8[8{8|8}9b9k:{;X;Y;e;fQ/Z*TU3l/Z3n6dQ3n/]R6d3mQ*_$yR/i*_Q*h$}R/r*hQ4R/|R6p4RQ+i%yR0i+iQ4j0pS7O4j8dR8d7PQ+t&QR0s+tQ4p0uR7S4pQ1R,OS5P1R7aR7a5RQ0Z+WW4[0Z4^6v8`Q4^0^Q6v4]R8`6wQ+]%oR0a+]Q1e,bR5a1eWqOXr#`Q&h!XQ*u%]Q,[&dQ,^&fQ,_&gQ,a&iQ1`,]S1c,b1eR5`1bQ%_oQ&l!]Q&o!_Q&q!`Q&s!aQ'c!qQ+Q%iQ+d%uQ+j%zQ,Q&_Q,i&nW-Y']'e'f'iQ-a'aQ/h*^Q0U+RS1U,R,UQ1m,hQ1n,kQ1o,lQ2T-XW2V-[-]-`-bQ4T0VQ4a0dQ4e0kQ4y0{Q5T1WQ5_1aU5n2U2X2[Q5q2YQ6r4UQ6z4cQ6{4fQ7R4oQ7[4zQ7b5SS7q5o5sQ7s5rQ8a6xQ8i7]Q8n7cQ8u7rQ9T8bQ9Y8jQ9^8vR9f9ZQ%iwQ'U!fQ'a!qU+R%j%k%lQ,p&wU-T'V'W'XS-X']'gQ/_*XS0V+S+TQ1u,rS2R-U-VQ2Y-^Q3q/cQ4U0WQ5j1{Q5m2SQ5r2ZR6h3uS$ti;ZR*i%OU$}i%O;ZR/q*gQ$siS(f#r*}Q(j#tS)V$`$aQ){$uQ*T$xQ*l%TQ*m%UQ*q%YQ.T:XQ.U:ZQ.V:]Q.s)lQ.|)uQ.})wQ/O)xQ/W*PQ/]*VQ/o*eQ/p*fh/|*z.O0w2i4v5z7W7w8g8y9X9aQ0k+lQ0m+oQ2l:dQ2m:fQ2n:hQ2o.YS3T:S:TQ3h/XQ3i/YQ3m/[Q3}/wQ4f0lQ4h0oQ6O:lQ6P:nQ6T:YQ6U:[Q6V:^Q6[3aQ6c3kQ6g3sQ6m3yQ6o4QQ6q4SQ7|:iQ7}:eQ8O:gQ8W6bQ8[6kQ8{:mQ8|:oQ8}8SQ9b:rQ9k:sQ:{;ZQ;X;cQ;Y;dQ;e;gR;f;hloOXr!X#`%]&d&f&g&i,],b1b1eQ!dPS#bZ#kQ&n!^U'Y!l4m7UQ'p#OQ(s#xQ)d$jS,U&]&`Q,Y&aQ,h&mQ,m&uQ-P'SQ.a(qQ.q)eQ0P*{Q0g+gQ1],XQ2P-RQ2g.PQ3[.lQ3{/uQ4t0xQ5V1YQ5W1ZQ5Y1[Q5[1^Q5c1gQ5y2jQ6Y3XQ7Y4wQ7g5ZQ7i5]Q7j5^Q7y5}Q8h7ZR8p7h#UcOPXZr!X!^!l#`#k#x%]&]&`&a&d&f&g&i&m&u'S(q*{+g,X,],b-R.P/u0x1Y1Z1[1^1b1e1g2j4m4w5Z5]5^5}7U7Z7hQ#UWQ#aYQ%asQ%btQ%duS's#S'vQ'y#VQ(e#qQ(l#uQ(t#{Q(u#|Q(v#}Q(w$OQ(x$PQ(y$QQ(z$RQ({$SQ(|$TQ(}$UQ)O$VQ)Q$XQ)T$^Q)X$bW)c$j)e.l3XQ*x%cQ+^%pS,s&y1vQ-b'dS-g't-iQ-l'|Q-n(TQ.X(iQ._(mQ.c9lQ.e9oQ.f9pQ.g9qQ.v)pQ/x*sQ1q,nQ1t,qQ2U-ZQ2]-oQ2q.]Q2v9tQ2w9uQ2x9vQ2y9wQ2z9xQ2{9yQ2|9zQ2}9{Q3O9|Q3P9}Q3Q:OQ3R:PQ3S.dQ3V:UQ3W:_Q3]:QQ4O/zQ4V0XQ5i:`Q5o2WQ5t2^Q6Q2rQ6R:aQ6W:cQ6X:jQ7P4kQ7n5gQ7r5pQ7{:kQ8P:pQ8Q:qQ8v7tQ9U8cQ9]8tQ9n#OR;Q;^R#WWR&{!cY!qQ'Q,}0u4pS&w!c,uQ']!oS'g!r!uS'i!v4rS,r&x'PS-^'^'_Q-`'`Q1{,{R2Z-_R(k#tR(n#uQ!dQT,|'Q,}]!nQ!o'Q,}0u4pQ#l]R'Z9mT#gZ%ZS#fZ%ZU%y|},ZU(W#d#e#hS-r(X(YQ-v(ZQ0h+hQ2`-sU2a-t-u-wS5v2b2cR7u5w`#YW#S#V%v't'}+e-mt#cZ|}#d#e#h%Z(X(Y(Z+h-s-t-u-w2b2c5wQ1_,ZQ1r,oQ5e1jQ7m5fT:x&y+fT#]W%vS#[W%vS'u#S'}S'z#V+eS,t&y+fT-h't-mT'O!c%wQ$hfR)j$mT)_$h)`R3Z.kT*O$u*QR*W$xQ/}*zQ2e.OQ4s0wQ5{2iQ7X4vQ7x5zQ8e7WQ8w7wQ9W8gQ9`8yQ9e9XR9h9alpOXr!X#`%]&d&f&g&i,],b1b1eQ&^!TR,Q&ZV%z|},ZR0q+qR,P&XQ%szR+c%tR+X%nT&b!U&eT&c!U&eT1d,b1e",
4493
+ nodeNames: "⚠ ArithOp ArithOp LineComment BlockComment Script ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . ?. PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXStartTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",
4494
+ maxTerm: 364,
4355
4495
  context: trackNewline,
4356
- nodeProps: [["group", -26, 6, 14, 16, 62, 199, 203, 206, 207, 209, 212, 215, 226, 228, 234, 236, 238, 240, 243, 249, 255, 257, 259, 261, 263, 265, 266, "Statement", -32, 10, 11, 25, 28, 29, 35, 45, 48, 49, 51, 56, 64, 72, 76, 78, 80, 81, 103, 104, 113, 114, 131, 134, 136, 137, 138, 139, 141, 142, 162, 163, 165, "Expression", -23, 24, 26, 30, 34, 36, 38, 166, 168, 170, 171, 173, 174, 175, 177, 178, 179, 181, 182, 183, 193, 195, 197, 198, "Type", -3, 84, 96, 102, "ClassItem"], ["openedBy", 31, "InterpolationStart", 50, "[", 54, "{", 69, "(", 143, "JSXStartTag", 155, "JSXStartTag JSXStartCloseTag"], ["closedBy", 33, "InterpolationEnd", 44, "]", 55, "}", 70, ")", 144, "JSXSelfCloseEndTag JSXEndTag", 160, "JSXEndTag"]],
4496
+ nodeProps: [["group", -26, 6, 14, 16, 62, 199, 203, 206, 207, 209, 212, 215, 225, 227, 233, 235, 237, 239, 242, 248, 254, 256, 258, 260, 262, 264, 265, "Statement", -32, 10, 11, 25, 28, 29, 35, 45, 48, 49, 51, 56, 64, 72, 76, 78, 80, 81, 103, 104, 113, 114, 131, 134, 136, 137, 138, 139, 141, 142, 162, 163, 165, "Expression", -23, 24, 26, 30, 34, 36, 38, 166, 168, 170, 171, 173, 174, 175, 177, 178, 179, 181, 182, 183, 193, 195, 197, 198, "Type", -3, 84, 96, 102, "ClassItem"], ["openedBy", 31, "InterpolationStart", 50, "[", 54, "{", 69, "(", 143, "JSXStartTag", 155, "JSXStartTag JSXStartCloseTag"], ["closedBy", 33, "InterpolationEnd", 44, "]", 55, "}", 70, ")", 144, "JSXSelfCloseEndTag JSXEndTag", 160, "JSXEndTag"]],
4357
4497
  propSources: [jsHighlight],
4358
- skippedNodes: [0, 3, 4, 269],
4359
- repeatNodeCount: 32,
4360
- tokenData: "$>y(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tu>PuvBavwDxwxGgxyMvyz! Qz{!![{|!%O|}!&]}!O!%O!O!P!'g!P!Q!1w!Q!R#0t!R![#3T![!]#@T!]!^#Aa!^!_#Bk!_!`#GS!`!a#In!a!b#N{!b!c$$z!c!}>P!}#O$&U#O#P$'`#P#Q$,w#Q#R$.R#R#S>P#S#T$/`#T#o$0j#o#p$4z#p#q$5p#q#r$7Q#r#s$8^#s$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$I|>P$I|$I}$<s$I}$JO$<s$JO$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(n%d_$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$d&j'z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU'z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$d&j'wpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU'wpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$d&j'wp'z!b'm(;dOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z(CS.ST'x#S$d&j'n(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$d&j'wp'z!b'n(;dOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`/x`$d&j!l$Ip'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S1V`#q$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S2d_#q$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2b3l_'v$(n$d&j'z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k*r4r_$d&j'z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k)`5vX$d&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q)`6jT$_#t$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#t6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y#t7bO$_#t#t7eP;=`<%l6y)`7kP;=`<%l5q*r7w]$_#t$d&j'z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}%W8uZ'z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p%W9oU$_#t'z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}%W:UP;=`<%l8p*r:[P;=`<%l4k#%|:hg$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}st%Ztu<Puw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}<P!}#O%Z#O#P&c#P#R%Z#R#S<P#S#T%Z#T#o<P#o#p*g#p$g%Z$g;'S<P;'S;=`=y<%lO<P#%|<[i$d&j(`!L^'wp'z!bOY%ZYZ&cZr%Zrs&}st%Ztu<Puw%Zwx(rx!Q%Z!Q![<P![!^%Z!^!_*g!_!c%Z!c!}<P!}#O%Z#O#P&c#P#R%Z#R#S<P#S#T%Z#T#o<P#o#p*g#p$g%Z$g;'S<P;'S;=`=y<%lO<P#%|=|P;=`<%l<P(CS>`k$d&j'wp'z!b(U!LY't&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P+d@`k$d&j'wp'z!b$W#tOY%ZYZ&cZr%Zrs&}st%Ztu@Tuw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![@T![!^%Z!^!_*g!_!c%Z!c!}@T!}#O%Z#O#P&c#P#R%Z#R#S@T#S#T%Z#T#o@T#o#p*g#p$g%Z$g;'S@T;'S;=`BT<%lO@T+dBWP;=`<%l@T(CSB^P;=`<%l>P%#SBl`$d&j'wp'z!b#i$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SCy_$d&j#{$Id'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%DfETa(i%<v$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sv%ZvwFYwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SFe`$d&j#u$Id'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2bGp_'y$)`$d&j'wpOYHoYZIuZrHorsIuswHowxKVx!^Ho!^!_LX!_#OHo#O#PIu#P#oHo#o#pLX#p;'SHo;'S;=`Mp<%lOHo*QHv_$d&j'wpOYHoYZIuZrHorsIuswHowxKVx!^Ho!^!_LX!_#OHo#O#PIu#P#oHo#o#pLX#p;'SHo;'S;=`Mp<%lOHo)`IzX$d&jOwIuwx6cx!^Iu!^!_Jg!_#oIu#o#pJg#p;'SIu;'S;=`KP<%lOIu#tJjTOwJgwx7]x;'SJg;'S;=`Jy<%lOJg#tJ|P;=`<%lJg)`KSP;=`<%lIu*QK`]$_#t$d&j'wpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r$fL^Z'wpOYLXYZJgZrLXrsJgswLXwxMPx#OLX#O#PJg#P;'SLX;'S;=`Mj<%lOLX$fMWU$_#t'wpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r$fMmP;=`<%lLX*QMsP;=`<%lHo(*QNR_!h(!b$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'l! ]_!gM|$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+h!!ib$d&j'wp'z!b'u#)d#j$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!#q{!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S!#|`$d&j'wp'z!b#g$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&-O!%Z`$d&j'wp'z!bk&%`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&C[!&h_!V&;l$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS!'rc$d&j'wp'z!by'<nOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!(}!P!Q%Z!Q![!+g![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'d!)Wa$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!*]!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'d!*h_!UMt$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!+rg$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!+g![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S!+g#S#X%Z#X#Y!-Z#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!-dg$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!.{|}%Z}!O!.{!O!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!/Uc$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!0lc$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS!2Sf$d&j'wp'z!b#h$IdOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}xz!3hz{#$s{!P!3h!P!Q#&Y!Q!^!3h!^!_!Mh!_!`#-x!`!a#/_!a!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(r!3sb$d&j'wp'z!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(Q!5U`$d&j'z!b!RSOY!4{YZ&cZw!4{wx!6Wx!P!4{!P!Q!=o!Q!^!4{!^!_!?g!_!}!4{!}#O!Bn#O#P!<w#P#o!4{#o#p!?g#p;'S!4{;'S;=`!Cw<%lO!4{&n!6_^$d&j!RSOY!6WYZ&cZ!P!6W!P!Q!7Z!Q!^!6W!^!_!8g!_!}!6W!}#O!;U#O#P!<w#P#o!6W#o#p!8g#p;'S!6W;'S;=`!=i<%lO!6W&n!7ba$d&j!RSO!^&c!_#Z&c#Z#[!7Z#[#]&c#]#^!7Z#^#a&c#a#b!7Z#b#g&c#g#h!7Z#h#i&c#i#j!7Z#j#m&c#m#n!7Z#n#o&c#p;'S&c;'S;=`&w<%lO&cS!8lX!RSOY!8gZ!P!8g!P!Q!9X!Q!}!8g!}#O!9p#O#P!:o#P;'S!8g;'S;=`!;O<%lO!8gS!9^U!RS#Z#[!9X#]#^!9X#a#b!9X#g#h!9X#i#j!9X#m#n!9XS!9sVOY!9pZ#O!9p#O#P!:Y#P#Q!8g#Q;'S!9p;'S;=`!:i<%lO!9pS!:]SOY!9pZ;'S!9p;'S;=`!:i<%lO!9pS!:lP;=`<%l!9pS!:rSOY!8gZ;'S!8g;'S;=`!;O<%lO!8gS!;RP;=`<%l!8g&n!;Z[$d&jOY!;UYZ&cZ!^!;U!^!_!9p!_#O!;U#O#P!<P#P#Q!6W#Q#o!;U#o#p!9p#p;'S!;U;'S;=`!<q<%lO!;U&n!<UX$d&jOY!;UYZ&cZ!^!;U!^!_!9p!_#o!;U#o#p!9p#p;'S!;U;'S;=`!<q<%lO!;U&n!<tP;=`<%l!;U&n!<|X$d&jOY!6WYZ&cZ!^!6W!^!_!8g!_#o!6W#o#p!8g#p;'S!6W;'S;=`!=i<%lO!6W&n!=lP;=`<%l!6W(Q!=xi$d&j'z!b!RSOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#Z&}#Z#[!=o#[#]&}#]#^!=o#^#a&}#a#b!=o#b#g&}#g#h!=o#h#i&}#i#j!=o#j#m&}#m#n!=o#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!f!?nZ'z!b!RSOY!?gZw!?gwx!8gx!P!?g!P!Q!@a!Q!}!?g!}#O!Ap#O#P!:o#P;'S!?g;'S;=`!Bh<%lO!?g!f!@hb'z!b!RSOY'}Zw'}x#O'}#P#Z'}#Z#[!@a#[#]'}#]#^!@a#^#a'}#a#b!@a#b#g'}#g#h!@a#h#i'}#i#j!@a#j#m'}#m#n!@a#n;'S'};'S;=`(f<%lO'}!f!AuX'z!bOY!ApZw!Apwx!9px#O!Ap#O#P!:Y#P#Q!?g#Q;'S!Ap;'S;=`!Bb<%lO!Ap!f!BeP;=`<%l!Ap!f!BkP;=`<%l!?g(Q!Bu^$d&j'z!bOY!BnYZ&cZw!Bnwx!;Ux!^!Bn!^!_!Ap!_#O!Bn#O#P!<P#P#Q!4{#Q#o!Bn#o#p!Ap#p;'S!Bn;'S;=`!Cq<%lO!Bn(Q!CtP;=`<%l!Bn(Q!CzP;=`<%l!4{'`!DW`$d&j'wp!RSOY!C}YZ&cZr!C}rs!6Ws!P!C}!P!Q!EY!Q!^!C}!^!_!GQ!_!}!C}!}#O!JX#O#P!<w#P#o!C}#o#p!GQ#p;'S!C};'S;=`!Kb<%lO!C}'`!Eci$d&j'wp!RSOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#Z(r#Z#[!EY#[#](r#]#^!EY#^#a(r#a#b!EY#b#g(r#g#h!EY#h#i(r#i#j!EY#j#m(r#m#n!EY#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rt!GXZ'wp!RSOY!GQZr!GQrs!8gs!P!GQ!P!Q!Gz!Q!}!GQ!}#O!IZ#O#P!:o#P;'S!GQ;'S;=`!JR<%lO!GQt!HRb'wp!RSOY)rZr)rs#O)r#P#Z)r#Z#[!Gz#[#])r#]#^!Gz#^#a)r#a#b!Gz#b#g)r#g#h!Gz#h#i)r#i#j!Gz#j#m)r#m#n!Gz#n;'S)r;'S;=`*Z<%lO)rt!I`X'wpOY!IZZr!IZrs!9ps#O!IZ#O#P!:Y#P#Q!GQ#Q;'S!IZ;'S;=`!I{<%lO!IZt!JOP;=`<%l!IZt!JUP;=`<%l!GQ'`!J`^$d&j'wpOY!JXYZ&cZr!JXrs!;Us!^!JX!^!_!IZ!_#O!JX#O#P!<P#P#Q!C}#Q#o!JX#o#p!IZ#p;'S!JX;'S;=`!K[<%lO!JX'`!K_P;=`<%l!JX'`!KeP;=`<%l!C}(r!Ksk$d&j'wp'z!b!RSOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#Z%Z#Z#[!Kh#[#]%Z#]#^!Kh#^#a%Z#a#b!Kh#b#g%Z#g#h!Kh#h#i%Z#i#j!Kh#j#m%Z#m#n!Kh#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#W!Mq]'wp'z!b!RSOY!MhZr!Mhrs!?gsw!Mhwx!GQx!P!Mh!P!Q!Nj!Q!}!Mh!}#O#!U#O#P!:o#P;'S!Mh;'S;=`##U<%lO!Mh#W!Nse'wp'z!b!RSOY*gZr*grs'}sw*gwx)rx#O*g#P#Z*g#Z#[!Nj#[#]*g#]#^!Nj#^#a*g#a#b!Nj#b#g*g#g#h!Nj#h#i*g#i#j!Nj#j#m*g#m#n!Nj#n;'S*g;'S;=`+Z<%lO*g#W#!]Z'wp'z!bOY#!UZr#!Urs!Apsw#!Uwx!IZx#O#!U#O#P!:Y#P#Q!Mh#Q;'S#!U;'S;=`##O<%lO#!U#W##RP;=`<%l#!U#W##XP;=`<%l!Mh(r##e`$d&j'wp'z!bOY##[YZ&cZr##[rs!Bnsw##[wx!JXx!^##[!^!_#!U!_#O##[#O#P!<P#P#Q!3h#Q#o##[#o#p#!U#p;'S##[;'S;=`#$g<%lO##[(r#$jP;=`<%l##[(r#$pP;=`<%l!3h(CS#%Qb$d&j'wp'z!b'o(;d!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(CS#&e_$d&j'wp'z!bR(;dOY#&YYZ&cZr#&Yrs#'dsw#&Ywx#*tx!^#&Y!^!_#,s!_#O#&Y#O#P#(f#P#o#&Y#o#p#,s#p;'S#&Y;'S;=`#-r<%lO#&Y(Bb#'m]$d&j'z!bR(;dOY#'dYZ&cZw#'dwx#(fx!^#'d!^!_#)w!_#O#'d#O#P#(f#P#o#'d#o#p#)w#p;'S#'d;'S;=`#*n<%lO#'d(AO#(mX$d&jR(;dOY#(fYZ&cZ!^#(f!^!_#)Y!_#o#(f#o#p#)Y#p;'S#(f;'S;=`#)q<%lO#(f(;d#)_SR(;dOY#)YZ;'S#)Y;'S;=`#)k<%lO#)Y(;d#)nP;=`<%l#)Y(AO#)tP;=`<%l#(f(<v#*OW'z!bR(;dOY#)wZw#)wwx#)Yx#O#)w#O#P#)Y#P;'S#)w;'S;=`#*h<%lO#)w(<v#*kP;=`<%l#)w(Bb#*qP;=`<%l#'d(Ap#*}]$d&j'wpR(;dOY#*tYZ&cZr#*trs#(fs!^#*t!^!_#+v!_#O#*t#O#P#(f#P#o#*t#o#p#+v#p;'S#*t;'S;=`#,m<%lO#*t(<U#+}W'wpR(;dOY#+vZr#+vrs#)Ys#O#+v#O#P#)Y#P;'S#+v;'S;=`#,g<%lO#+v(<U#,jP;=`<%l#+v(Ap#,pP;=`<%l#*t(=h#,|Y'wp'z!bR(;dOY#,sZr#,srs#)wsw#,swx#+vx#O#,s#O#P#)Y#P;'S#,s;'S;=`#-l<%lO#,s(=h#-oP;=`<%l#,s(CS#-uP;=`<%l#&Y%#W#.Vb$d&j#{$Id'wp'z!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h+h#/lb$T#t$d&j'wp'z!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h$/l#1Pp$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!+g!P!Q%Z!Q![#3T![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S#3T#S#U%Z#U#V#6_#V#X%Z#X#Y!-Z#Y#b%Z#b#c#5T#c#d#9g#d#l%Z#l#m#<i#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#3`k$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!+g!P!Q%Z!Q![#3T![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S#3T#S#X%Z#X#Y!-Z#Y#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#5`_$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#6hd$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#7v!R!S#7v!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#7v#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#8Rf$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#7v!R!S#7v!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#7v#S#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#9pc$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#:{!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#:{#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#;We$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#:{!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#:{#S#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#<rg$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#>fi$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#@b_!a$b$d&j#y%<f'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Al_^l$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS#Bz^'}!*v!e'.r'wp'z!b$U)d(mSOY*gZr*grs'}sw*gwx)rx!P*g!P!Q#Cv!Q!^*g!^!_#Dl!_!`#F^!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#DPX$f&j'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#DuZ#k$Id'wp'z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Eh!`#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#EqX#{$Id'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#FgX#l$Id'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g%Gh#G_a#X%?x$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a#Hd!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#W#Ho_#d$Ih$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#I}adBf#l$Id$a#|$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`#KS!`!a#L^!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#K__#l$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#Lia#k$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`!a#Mn!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#My`#k$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+h$ Wc(a$Ip$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P$!c!P!^%Z!^!_*g!_!a%Z!a!b$#m!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+`$!n_z'#p$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S$#x`$d&j#v$Id'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&^$%V_!x!Ln$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(@^$&a_|(8n$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$'eZ$d&jO!^$(W!^!_$(n!_#i$(W#i#j$(s#j#l$(W#l#m$*f#m#o$(W#o#p$(n#p;'S$(W;'S;=`$,q<%lO$(W(n$(_T[#S$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$(sO[#S(n$(x[$d&jO!Q&c!Q![$)n![!^&c!_!c&c!c!i$)n!i#T&c#T#Z$)n#Z#o&c#o#p$,U#p;'S&c;'S;=`&w<%lO&c(n$)sZ$d&jO!Q&c!Q![$*f![!^&c!_!c&c!c!i$*f!i#T&c#T#Z$*f#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$*kZ$d&jO!Q&c!Q![$+^![!^&c!_!c&c!c!i$+^!i#T&c#T#Z$+^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$+cZ$d&jO!Q&c!Q![$(W![!^&c!_!c&c!c!i$(W!i#T&c#T#Z$(W#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$,XR!Q![$,b!c!i$,b#T#Z$,b#S$,eS!Q![$,b!c!i$,b#T#Z$,b#q#r$(n(n$,tP;=`<%l$(W!'l$-S_!SM|$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S$.^`#s$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&,v$/k_$d&j'wp'z!b(R&%WOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS$0yk$d&j'wp'z!b(U!LY't&;d$Y#tOY%ZYZ&cZr%Zrs&}st%Ztu$0juw%Zwx(rx}%Z}!O$2n!O!Q%Z!Q![$0j![!^%Z!^!_*g!_!c%Z!c!}$0j!}#O%Z#O#P&c#P#R%Z#R#S$0j#S#T%Z#T#o$0j#o#p*g#p$g%Z$g;'S$0j;'S;=`$4t<%lO$0j+d$2yk$d&j'wp'z!b$Y#tOY%ZYZ&cZr%Zrs&}st%Ztu$2nuw%Zwx(rx}%Z}!O$2n!O!Q%Z!Q![$2n![!^%Z!^!_*g!_!c%Z!c!}$2n!}#O%Z#O#P&c#P#R%Z#R#S$2n#S#T%Z#T#o$2n#o#p*g#p$g%Z$g;'S$2n;'S;=`$4n<%lO$2n+d$4qP;=`<%l$2n(CS$4wP;=`<%l$0j!5p$5TX!X!3l'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g%Df$5{a(h%<v$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$#m#q;'S%Z;'S;=`+a<%lO%Z%#`$7__!W$I`o`$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(r$8i_!mS$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS$9y|$d&j'wp'z!b'm(;d(U!LY't&;d$W#tOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(CS$=Uk$d&j'wp'z!b'n(;d(U!LY't&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P",
4498
+ skippedNodes: [0, 3, 4, 268],
4499
+ repeatNodeCount: 33,
4500
+ tokenData: "$>y(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tu>PuvBavwDxwxGgxyMvyz! Qz{!![{|!%O|}!&]}!O!%O!O!P!'g!P!Q!1w!Q!R#0t!R![#3T![!]#@T!]!^#Aa!^!_#Bk!_!`#GS!`!a#In!a!b#N{!b!c$$z!c!}>P!}#O$&U#O#P$'`#P#Q$,w#Q#R$.R#R#S>P#S#T$/`#T#o$0j#o#p$4z#p#q$5p#q#r$7Q#r#s$8^#s$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$I|>P$I|$I}$<s$I}$JO$<s$JO$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(n%d_$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$d&j'z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU'z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$d&j'wpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU'wpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$d&j'wp'z!b'm(;dOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z(CS.ST'x#S$d&j'n(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$d&j'wp'z!b'n(;dOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`/x`$d&j!l$Ip'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S1V`#q$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S2d_#q$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2b3l_'v$(n$d&j'z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k*r4r_$d&j'z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k)`5vX$d&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q)`6jT$_#t$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#t6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y#t7bO$_#t#t7eP;=`<%l6y)`7kP;=`<%l5q*r7w]$_#t$d&j'z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}%W8uZ'z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p%W9oU$_#t'z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}%W:UP;=`<%l8p*r:[P;=`<%l4k#%|:hg$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}st%Ztu<Puw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}<P!}#O%Z#O#P&c#P#R%Z#R#S<P#S#T%Z#T#o<P#o#p*g#p$g%Z$g;'S<P;'S;=`=y<%lO<P#%|<[i$d&j(a!L^'wp'z!bOY%ZYZ&cZr%Zrs&}st%Ztu<Puw%Zwx(rx!Q%Z!Q![<P![!^%Z!^!_*g!_!c%Z!c!}<P!}#O%Z#O#P&c#P#R%Z#R#S<P#S#T%Z#T#o<P#o#p*g#p$g%Z$g;'S<P;'S;=`=y<%lO<P#%|=|P;=`<%l<P(CS>`k$d&j'wp'z!b(U!LY't&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P+d@`k$d&j'wp'z!b$W#tOY%ZYZ&cZr%Zrs&}st%Ztu@Tuw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![@T![!^%Z!^!_*g!_!c%Z!c!}@T!}#O%Z#O#P&c#P#R%Z#R#S@T#S#T%Z#T#o@T#o#p*g#p$g%Z$g;'S@T;'S;=`BT<%lO@T+dBWP;=`<%l@T(CSB^P;=`<%l>P%#SBl`$d&j'wp'z!b#i$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SCy_$d&j#{$Id'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%DfETa(j%<v$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sv%ZvwFYwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SFe`$d&j#u$Id'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2bGp_'y$)`$d&j'wpOYHoYZIuZrHorsIuswHowxKVx!^Ho!^!_LX!_#OHo#O#PIu#P#oHo#o#pLX#p;'SHo;'S;=`Mp<%lOHo*QHv_$d&j'wpOYHoYZIuZrHorsIuswHowxKVx!^Ho!^!_LX!_#OHo#O#PIu#P#oHo#o#pLX#p;'SHo;'S;=`Mp<%lOHo)`IzX$d&jOwIuwx6cx!^Iu!^!_Jg!_#oIu#o#pJg#p;'SIu;'S;=`KP<%lOIu#tJjTOwJgwx7]x;'SJg;'S;=`Jy<%lOJg#tJ|P;=`<%lJg)`KSP;=`<%lIu*QK`]$_#t$d&j'wpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r$fL^Z'wpOYLXYZJgZrLXrsJgswLXwxMPx#OLX#O#PJg#P;'SLX;'S;=`Mj<%lOLX$fMWU$_#t'wpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r$fMmP;=`<%lLX*QMsP;=`<%lHo(*QNR_!h(!b$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'l! ]_!gM|$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+h!!ib$d&j'wp'z!b'u#)d#j$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!#q{!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S!#|`$d&j'wp'z!b#g$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&-O!%Z`$d&j'wp'z!bk&%`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&C[!&h_!V&;l$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS!'rc$d&j'wp'z!by'<nOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!(}!P!Q%Z!Q![!+g![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'d!)Wa$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!*]!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'d!*h_!UMt$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!+rg$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!+g![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S!+g#S#X%Z#X#Y!-Z#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!-dg$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!.{|}%Z}!O!.{!O!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!/Uc$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!0lc$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS!2Sf$d&j'wp'z!b#h$IdOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}xz!3hz{#$s{!P!3h!P!Q#&Y!Q!^!3h!^!_!Mh!_!`#-x!`!a#/_!a!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(r!3sb$d&j'wp'z!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(Q!5U`$d&j'z!b!RSOY!4{YZ&cZw!4{wx!6Wx!P!4{!P!Q!=o!Q!^!4{!^!_!?g!_!}!4{!}#O!Bn#O#P!<w#P#o!4{#o#p!?g#p;'S!4{;'S;=`!Cw<%lO!4{&n!6_^$d&j!RSOY!6WYZ&cZ!P!6W!P!Q!7Z!Q!^!6W!^!_!8g!_!}!6W!}#O!;U#O#P!<w#P#o!6W#o#p!8g#p;'S!6W;'S;=`!=i<%lO!6W&n!7ba$d&j!RSO!^&c!_#Z&c#Z#[!7Z#[#]&c#]#^!7Z#^#a&c#a#b!7Z#b#g&c#g#h!7Z#h#i&c#i#j!7Z#j#m&c#m#n!7Z#n#o&c#p;'S&c;'S;=`&w<%lO&cS!8lX!RSOY!8gZ!P!8g!P!Q!9X!Q!}!8g!}#O!9p#O#P!:o#P;'S!8g;'S;=`!;O<%lO!8gS!9^U!RS#Z#[!9X#]#^!9X#a#b!9X#g#h!9X#i#j!9X#m#n!9XS!9sVOY!9pZ#O!9p#O#P!:Y#P#Q!8g#Q;'S!9p;'S;=`!:i<%lO!9pS!:]SOY!9pZ;'S!9p;'S;=`!:i<%lO!9pS!:lP;=`<%l!9pS!:rSOY!8gZ;'S!8g;'S;=`!;O<%lO!8gS!;RP;=`<%l!8g&n!;Z[$d&jOY!;UYZ&cZ!^!;U!^!_!9p!_#O!;U#O#P!<P#P#Q!6W#Q#o!;U#o#p!9p#p;'S!;U;'S;=`!<q<%lO!;U&n!<UX$d&jOY!;UYZ&cZ!^!;U!^!_!9p!_#o!;U#o#p!9p#p;'S!;U;'S;=`!<q<%lO!;U&n!<tP;=`<%l!;U&n!<|X$d&jOY!6WYZ&cZ!^!6W!^!_!8g!_#o!6W#o#p!8g#p;'S!6W;'S;=`!=i<%lO!6W&n!=lP;=`<%l!6W(Q!=xi$d&j'z!b!RSOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#Z&}#Z#[!=o#[#]&}#]#^!=o#^#a&}#a#b!=o#b#g&}#g#h!=o#h#i&}#i#j!=o#j#m&}#m#n!=o#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!f!?nZ'z!b!RSOY!?gZw!?gwx!8gx!P!?g!P!Q!@a!Q!}!?g!}#O!Ap#O#P!:o#P;'S!?g;'S;=`!Bh<%lO!?g!f!@hb'z!b!RSOY'}Zw'}x#O'}#P#Z'}#Z#[!@a#[#]'}#]#^!@a#^#a'}#a#b!@a#b#g'}#g#h!@a#h#i'}#i#j!@a#j#m'}#m#n!@a#n;'S'};'S;=`(f<%lO'}!f!AuX'z!bOY!ApZw!Apwx!9px#O!Ap#O#P!:Y#P#Q!?g#Q;'S!Ap;'S;=`!Bb<%lO!Ap!f!BeP;=`<%l!Ap!f!BkP;=`<%l!?g(Q!Bu^$d&j'z!bOY!BnYZ&cZw!Bnwx!;Ux!^!Bn!^!_!Ap!_#O!Bn#O#P!<P#P#Q!4{#Q#o!Bn#o#p!Ap#p;'S!Bn;'S;=`!Cq<%lO!Bn(Q!CtP;=`<%l!Bn(Q!CzP;=`<%l!4{'`!DW`$d&j'wp!RSOY!C}YZ&cZr!C}rs!6Ws!P!C}!P!Q!EY!Q!^!C}!^!_!GQ!_!}!C}!}#O!JX#O#P!<w#P#o!C}#o#p!GQ#p;'S!C};'S;=`!Kb<%lO!C}'`!Eci$d&j'wp!RSOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#Z(r#Z#[!EY#[#](r#]#^!EY#^#a(r#a#b!EY#b#g(r#g#h!EY#h#i(r#i#j!EY#j#m(r#m#n!EY#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rt!GXZ'wp!RSOY!GQZr!GQrs!8gs!P!GQ!P!Q!Gz!Q!}!GQ!}#O!IZ#O#P!:o#P;'S!GQ;'S;=`!JR<%lO!GQt!HRb'wp!RSOY)rZr)rs#O)r#P#Z)r#Z#[!Gz#[#])r#]#^!Gz#^#a)r#a#b!Gz#b#g)r#g#h!Gz#h#i)r#i#j!Gz#j#m)r#m#n!Gz#n;'S)r;'S;=`*Z<%lO)rt!I`X'wpOY!IZZr!IZrs!9ps#O!IZ#O#P!:Y#P#Q!GQ#Q;'S!IZ;'S;=`!I{<%lO!IZt!JOP;=`<%l!IZt!JUP;=`<%l!GQ'`!J`^$d&j'wpOY!JXYZ&cZr!JXrs!;Us!^!JX!^!_!IZ!_#O!JX#O#P!<P#P#Q!C}#Q#o!JX#o#p!IZ#p;'S!JX;'S;=`!K[<%lO!JX'`!K_P;=`<%l!JX'`!KeP;=`<%l!C}(r!Ksk$d&j'wp'z!b!RSOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#Z%Z#Z#[!Kh#[#]%Z#]#^!Kh#^#a%Z#a#b!Kh#b#g%Z#g#h!Kh#h#i%Z#i#j!Kh#j#m%Z#m#n!Kh#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#W!Mq]'wp'z!b!RSOY!MhZr!Mhrs!?gsw!Mhwx!GQx!P!Mh!P!Q!Nj!Q!}!Mh!}#O#!U#O#P!:o#P;'S!Mh;'S;=`##U<%lO!Mh#W!Nse'wp'z!b!RSOY*gZr*grs'}sw*gwx)rx#O*g#P#Z*g#Z#[!Nj#[#]*g#]#^!Nj#^#a*g#a#b!Nj#b#g*g#g#h!Nj#h#i*g#i#j!Nj#j#m*g#m#n!Nj#n;'S*g;'S;=`+Z<%lO*g#W#!]Z'wp'z!bOY#!UZr#!Urs!Apsw#!Uwx!IZx#O#!U#O#P!:Y#P#Q!Mh#Q;'S#!U;'S;=`##O<%lO#!U#W##RP;=`<%l#!U#W##XP;=`<%l!Mh(r##e`$d&j'wp'z!bOY##[YZ&cZr##[rs!Bnsw##[wx!JXx!^##[!^!_#!U!_#O##[#O#P!<P#P#Q!3h#Q#o##[#o#p#!U#p;'S##[;'S;=`#$g<%lO##[(r#$jP;=`<%l##[(r#$pP;=`<%l!3h(CS#%Qb$d&j'wp'z!b'o(;d!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(CS#&e_$d&j'wp'z!bR(;dOY#&YYZ&cZr#&Yrs#'dsw#&Ywx#*tx!^#&Y!^!_#,s!_#O#&Y#O#P#(f#P#o#&Y#o#p#,s#p;'S#&Y;'S;=`#-r<%lO#&Y(Bb#'m]$d&j'z!bR(;dOY#'dYZ&cZw#'dwx#(fx!^#'d!^!_#)w!_#O#'d#O#P#(f#P#o#'d#o#p#)w#p;'S#'d;'S;=`#*n<%lO#'d(AO#(mX$d&jR(;dOY#(fYZ&cZ!^#(f!^!_#)Y!_#o#(f#o#p#)Y#p;'S#(f;'S;=`#)q<%lO#(f(;d#)_SR(;dOY#)YZ;'S#)Y;'S;=`#)k<%lO#)Y(;d#)nP;=`<%l#)Y(AO#)tP;=`<%l#(f(<v#*OW'z!bR(;dOY#)wZw#)wwx#)Yx#O#)w#O#P#)Y#P;'S#)w;'S;=`#*h<%lO#)w(<v#*kP;=`<%l#)w(Bb#*qP;=`<%l#'d(Ap#*}]$d&j'wpR(;dOY#*tYZ&cZr#*trs#(fs!^#*t!^!_#+v!_#O#*t#O#P#(f#P#o#*t#o#p#+v#p;'S#*t;'S;=`#,m<%lO#*t(<U#+}W'wpR(;dOY#+vZr#+vrs#)Ys#O#+v#O#P#)Y#P;'S#+v;'S;=`#,g<%lO#+v(<U#,jP;=`<%l#+v(Ap#,pP;=`<%l#*t(=h#,|Y'wp'z!bR(;dOY#,sZr#,srs#)wsw#,swx#+vx#O#,s#O#P#)Y#P;'S#,s;'S;=`#-l<%lO#,s(=h#-oP;=`<%l#,s(CS#-uP;=`<%l#&Y%#W#.Vb$d&j#{$Id'wp'z!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h+h#/lb$T#t$d&j'wp'z!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h$/l#1Pp$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!+g!P!Q%Z!Q![#3T![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S#3T#S#U%Z#U#V#6_#V#X%Z#X#Y!-Z#Y#b%Z#b#c#5T#c#d#9g#d#l%Z#l#m#<i#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#3`k$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!+g!P!Q%Z!Q![#3T![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S#3T#S#X%Z#X#Y!-Z#Y#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#5`_$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#6hd$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#7v!R!S#7v!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#7v#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#8Rf$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#7v!R!S#7v!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#7v#S#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#9pc$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#:{!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#:{#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#;We$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#:{!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#:{#S#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#<rg$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#>fi$d&j'wp'z!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#@b_!a$b$d&j#y%<f'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Al_^l$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS#Bz^'}!*v!e'.r'wp'z!b$U)d(nSOY*gZr*grs'}sw*gwx)rx!P*g!P!Q#Cv!Q!^*g!^!_#Dl!_!`#F^!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#DPX$f&j'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#DuZ#k$Id'wp'z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Eh!`#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#EqX#{$Id'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#FgX#l$Id'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g%Gh#G_a#X%?x$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a#Hd!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#W#Ho_#d$Ih$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#I}adBf#l$Id$a#|$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`#KS!`!a#L^!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#K__#l$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#Lia#k$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`!a#Mn!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#My`#k$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+h$ Wc(b$Ip$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P$!c!P!^%Z!^!_*g!_!a%Z!a!b$#m!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+`$!n_z'#p$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S$#x`$d&j#v$Id'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&^$%V_!x!Ln$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(@^$&a_|(8n$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$'eZ$d&jO!^$(W!^!_$(n!_#i$(W#i#j$(s#j#l$(W#l#m$*f#m#o$(W#o#p$(n#p;'S$(W;'S;=`$,q<%lO$(W(n$(_T[#S$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$(sO[#S(n$(x[$d&jO!Q&c!Q![$)n![!^&c!_!c&c!c!i$)n!i#T&c#T#Z$)n#Z#o&c#o#p$,U#p;'S&c;'S;=`&w<%lO&c(n$)sZ$d&jO!Q&c!Q![$*f![!^&c!_!c&c!c!i$*f!i#T&c#T#Z$*f#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$*kZ$d&jO!Q&c!Q![$+^![!^&c!_!c&c!c!i$+^!i#T&c#T#Z$+^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$+cZ$d&jO!Q&c!Q![$(W![!^&c!_!c&c!c!i$(W!i#T&c#T#Z$(W#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$,XR!Q![$,b!c!i$,b#T#Z$,b#S$,eS!Q![$,b!c!i$,b#T#Z$,b#q#r$(n(n$,tP;=`<%l$(W!'l$-S_!SM|$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S$.^`#s$Id$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&,v$/k_$d&j'wp'z!b(R&%WOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS$0yk$d&j'wp'z!b(U!LY't&;d$Y#tOY%ZYZ&cZr%Zrs&}st%Ztu$0juw%Zwx(rx}%Z}!O$2n!O!Q%Z!Q![$0j![!^%Z!^!_*g!_!c%Z!c!}$0j!}#O%Z#O#P&c#P#R%Z#R#S$0j#S#T%Z#T#o$0j#o#p*g#p$g%Z$g;'S$0j;'S;=`$4t<%lO$0j+d$2yk$d&j'wp'z!b$Y#tOY%ZYZ&cZr%Zrs&}st%Ztu$2nuw%Zwx(rx}%Z}!O$2n!O!Q%Z!Q![$2n![!^%Z!^!_*g!_!c%Z!c!}$2n!}#O%Z#O#P&c#P#R%Z#R#S$2n#S#T%Z#T#o$2n#o#p*g#p$g%Z$g;'S$2n;'S;=`$4n<%lO$2n+d$4qP;=`<%l$2n(CS$4wP;=`<%l$0j!5p$5TX!X!3l'wp'z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g%Df$5{a(i%<v$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$#m#q;'S%Z;'S;=`+a<%lO%Z%#`$7__!W$I`o`$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(r$8i_!mS$d&j'wp'z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS$9y|$d&j'wp'z!b'm(;d(U!LY't&;d$W#tOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(CS$=Uk$d&j'wp'z!b'n(;d(U!LY't&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P",
4361
4501
  tokenizers: [noSemicolon, incdecToken, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, insertSemicolon, new LocalTokenGroup("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOq~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!O~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(T~~", 141, 326), new LocalTokenGroup("j~RQYZXz{^~^O'q~~aP!P!Qd~iO'r~~", 25, 308)],
4362
4502
  topRules: {
4363
4503
  "Script": [0, 5],
4364
- "SingleExpression": [1, 267],
4365
- "SingleClassItem": [2, 268]
4504
+ "SingleExpression": [1, 266],
4505
+ "SingleClassItem": [2, 267]
4366
4506
  },
4367
4507
  dialects: {
4368
- jsx: 13525,
4369
- ts: 13527
4508
+ jsx: 12686,
4509
+ ts: 12688
4370
4510
  },
4371
4511
  dynamicPrecedences: {
4372
4512
  "76": 1,
@@ -4384,7 +4524,7 @@ const parser$2 = LRParser.deserialize({
4384
4524
  term: 67,
4385
4525
  get: value => spec_LessThan[value] || -1
4386
4526
  }],
4387
- tokenPrec: 13551
4527
+ tokenPrec: 12712
4388
4528
  });
4389
4529
 
4390
4530
  /**
@@ -4489,7 +4629,7 @@ function getScope(doc, node) {
4489
4629
  return completions;
4490
4630
  }
4491
4631
  const Identifier = /^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/;
4492
- const dontComplete = ["TemplateString", "String", "RegExp", "LineComment", "BlockComment", "VariableDefinition", "TypeDefinition", "Label", "PropertyDefinition", "PropertyName", "PrivatePropertyDefinition", "PrivatePropertyName"];
4632
+ const dontComplete = ["TemplateString", "String", "RegExp", "LineComment", "BlockComment", "VariableDefinition", "TypeDefinition", "Label", "PropertyDefinition", "PropertyName", "PrivatePropertyDefinition", "PrivatePropertyName", ".", "?."];
4493
4633
  /**
4494
4634
  Completion source that looks up locally defined names in
4495
4635
  JavaScript code.
@@ -4497,7 +4637,7 @@ JavaScript code.
4497
4637
  function localCompletionSource(context) {
4498
4638
  let inner = syntaxTree(context.state).resolveInner(context.pos, -1);
4499
4639
  if (dontComplete.indexOf(inner.name) > -1) return null;
4500
- let isWord = inner.to - inner.from < 20 && Identifier.test(context.state.sliceDoc(inner.from, inner.to));
4640
+ let isWord = inner.name == "VariableName" || inner.to - inner.from < 20 && Identifier.test(context.state.sliceDoc(inner.from, inner.to));
4501
4641
  if (!isWord && !context.explicit) return null;
4502
4642
  let options = [];
4503
4643
  for (let pos = inner; pos; pos = pos.parent) {
@@ -4516,6 +4656,7 @@ parser](https://github.com/lezer-parser/javascript), extended with
4516
4656
  highlighting and indentation information.
4517
4657
  */
4518
4658
  const javascriptLanguage = /*@__PURE__*/LRLanguage.define({
4659
+ name: "javascript",
4519
4660
  parser: /*@__PURE__*/parser$2.configure({
4520
4661
  props: [/*@__PURE__*/indentNodeProp.add({
4521
4662
  IfStatement: /*@__PURE__*/continuedIndent({
@@ -4551,7 +4692,7 @@ const javascriptLanguage = /*@__PURE__*/LRLanguage.define({
4551
4692
  return context.column(context.node.from) + context.unit;
4552
4693
  }
4553
4694
  }), /*@__PURE__*/foldNodeProp.add({
4554
- "Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression": foldInside,
4695
+ "Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType": foldInside,
4555
4696
  BlockComment(tree) {
4556
4697
  return {
4557
4698
  from: tree.from + 2,
@@ -4575,24 +4716,37 @@ const javascriptLanguage = /*@__PURE__*/LRLanguage.define({
4575
4716
  wordChars: "$"
4576
4717
  }
4577
4718
  });
4719
+ const jsxSublanguage = {
4720
+ test: node => /^JSX/.test(node.name),
4721
+ facet: /*@__PURE__*/defineLanguageFacet({
4722
+ commentTokens: {
4723
+ block: {
4724
+ open: "{/*",
4725
+ close: "*/}"
4726
+ }
4727
+ }
4728
+ })
4729
+ };
4578
4730
  /**
4579
4731
  A language provider for TypeScript.
4580
4732
  */
4581
4733
  const typescriptLanguage = /*@__PURE__*/javascriptLanguage.configure({
4582
4734
  dialect: "ts"
4583
- });
4735
+ }, "typescript");
4584
4736
  /**
4585
4737
  Language provider for JSX.
4586
4738
  */
4587
4739
  const jsxLanguage = /*@__PURE__*/javascriptLanguage.configure({
4588
- dialect: "jsx"
4740
+ dialect: "jsx",
4741
+ props: [/*@__PURE__*/sublanguageProp.add(n => n.isTop ? [jsxSublanguage] : undefined)]
4589
4742
  });
4590
4743
  /**
4591
4744
  Language provider for JSX + TypeScript.
4592
4745
  */
4593
4746
  const tsxLanguage = /*@__PURE__*/javascriptLanguage.configure({
4594
- dialect: "jsx ts"
4595
- });
4747
+ dialect: "jsx ts",
4748
+ props: [/*@__PURE__*/sublanguageProp.add(n => n.isTop ? [jsxSublanguage] : undefined)]
4749
+ }, "typescript");
4596
4750
  const keywords = /*@__PURE__*/"break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(kw => ({
4597
4751
  label: kw,
4598
4752
  type: "keyword"
@@ -4610,11 +4764,22 @@ function javascript() {
4610
4764
  autocomplete: localCompletionSource
4611
4765
  }), config.jsx ? autoCloseTags$1 : []]);
4612
4766
  }
4767
+ function findOpenTag(node) {
4768
+ for (;;) {
4769
+ if (node.name == "JSXOpenTag" || node.name == "JSXSelfClosingTag" || node.name == "JSXFragmentTag") return node;
4770
+ if (node.name == "JSXEscape" || !node.parent) return null;
4771
+ node = node.parent;
4772
+ }
4773
+ }
4613
4774
  function elementName$1(doc, tree) {
4614
4775
  let max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : doc.length;
4615
- if (!tree) return "";
4616
- let name = tree.getChild("JSXIdentifier");
4617
- return name ? doc.sliceString(name.from, Math.min(name.to, max)) : "";
4776
+ for (let ch = tree === null || tree === void 0 ? void 0 : tree.firstChild; ch; ch = ch.nextSibling) {
4777
+ if (ch.name == "JSXIdentifier" || ch.name == "JSXBuiltin" || ch.name == "JSXNamespacedName" || ch.name == "JSXMemberExpression") return doc.sliceString(ch.from, Math.min(ch.to, max));
4778
+ }
4779
+ return "";
4780
+ }
4781
+ function isEndTag(node) {
4782
+ return node && (node.name == "JSXEndTag" || node.name == "JSXSelfCloseEndTag");
4618
4783
  }
4619
4784
  const android = typeof navigator == "object" && /*@__PURE__*/ /Android\b/.test(navigator.userAgent);
4620
4785
  /**
@@ -4627,33 +4792,25 @@ const autoCloseTags$1 = /*@__PURE__*/EditorView.inputHandler.of((view, from, to,
4627
4792
  state
4628
4793
  } = view;
4629
4794
  let changes = state.changeByRange(range => {
4630
- var _a, _b, _c;
4795
+ var _a;
4631
4796
  let {
4632
4797
  head
4633
4798
  } = range,
4634
4799
  around = syntaxTree(state).resolveInner(head, -1),
4635
4800
  name;
4636
4801
  if (around.name == "JSXStartTag") around = around.parent;
4637
- if (text == ">" && around.name == "JSXFragmentTag") {
4802
+ if (around.name == "JSXAttributeValue" && around.to > head) ;else if (text == ">" && around.name == "JSXFragmentTag") {
4638
4803
  return {
4639
4804
  range: EditorSelection.cursor(head + 1),
4640
4805
  changes: {
4641
4806
  from: head,
4642
- insert: `><>`
4643
- }
4644
- };
4645
- } else if (text == ">" && around.name == "JSXIdentifier") {
4646
- if (((_b = (_a = around.parent) === null || _a === void 0 ? void 0 : _a.lastChild) === null || _b === void 0 ? void 0 : _b.name) != "JSXEndTag" && (name = elementName$1(state.doc, around.parent, head))) return {
4647
- range: EditorSelection.cursor(head + 1),
4648
- changes: {
4649
- from: head,
4650
- insert: `></${name}>`
4807
+ insert: `></>`
4651
4808
  }
4652
4809
  };
4653
4810
  } else if (text == "/" && around.name == "JSXFragmentTag") {
4654
4811
  let empty = around.parent,
4655
4812
  base = empty === null || empty === void 0 ? void 0 : empty.parent;
4656
- if (empty.from == head - 1 && ((_c = base.lastChild) === null || _c === void 0 ? void 0 : _c.name) != "JSXEndTag" && (name = elementName$1(state.doc, base === null || base === void 0 ? void 0 : base.firstChild, head))) {
4813
+ if (empty.from == head - 1 && ((_a = base.lastChild) === null || _a === void 0 ? void 0 : _a.name) != "JSXEndTag" && (name = elementName$1(state.doc, base === null || base === void 0 ? void 0 : base.firstChild, head))) {
4657
4814
  let insert = `/${name}>`;
4658
4815
  return {
4659
4816
  range: EditorSelection.cursor(head + insert.length),
@@ -4663,6 +4820,15 @@ const autoCloseTags$1 = /*@__PURE__*/EditorView.inputHandler.of((view, from, to,
4663
4820
  }
4664
4821
  };
4665
4822
  }
4823
+ } else if (text == ">") {
4824
+ let openTag = findOpenTag(around);
4825
+ if (openTag && !isEndTag(openTag.lastChild) && state.sliceDoc(head, head + 2) != "</" && (name = elementName$1(state.doc, openTag, head))) return {
4826
+ range: EditorSelection.cursor(head + 1),
4827
+ changes: {
4828
+ from: head,
4829
+ insert: `></${name}>`
4830
+ }
4831
+ };
4666
4832
  }
4667
4833
  return {
4668
4834
  range
@@ -4694,9 +4860,7 @@ const Tags = {
4694
4860
  }
4695
4861
  },
4696
4862
  abbr: S,
4697
- acronym: S,
4698
4863
  address: S,
4699
- applet: S,
4700
4864
  area: {
4701
4865
  attrs: {
4702
4866
  alt: null,
@@ -4730,10 +4894,8 @@ const Tags = {
4730
4894
  target: Targets
4731
4895
  }
4732
4896
  },
4733
- basefont: S,
4734
4897
  bdi: S,
4735
4898
  bdo: S,
4736
- big: S,
4737
4899
  blockquote: {
4738
4900
  attrs: {
4739
4901
  cite: null
@@ -4817,7 +4979,6 @@ const Tags = {
4817
4979
  }
4818
4980
  },
4819
4981
  dfn: S,
4820
- dir: S,
4821
4982
  div: S,
4822
4983
  dl: S,
4823
4984
  dt: S,
@@ -4844,7 +5005,6 @@ const Tags = {
4844
5005
  },
4845
5006
  figcaption: S,
4846
5007
  figure: S,
4847
- font: S,
4848
5008
  footer: S,
4849
5009
  form: {
4850
5010
  attrs: {
@@ -4858,8 +5018,6 @@ const Tags = {
4858
5018
  target: Targets
4859
5019
  }
4860
5020
  },
4861
- frame: S,
4862
- frameset: S,
4863
5021
  h1: S,
4864
5022
  h2: S,
4865
5023
  h3: S,
@@ -5003,7 +5161,6 @@ const Tags = {
5003
5161
  }
5004
5162
  },
5005
5163
  nav: S,
5006
- noframes: S,
5007
5164
  noscript: S,
5008
5165
  object: {
5009
5166
  attrs: {
@@ -5068,7 +5225,6 @@ const Tags = {
5068
5225
  rp: S,
5069
5226
  rt: S,
5070
5227
  ruby: S,
5071
- s: S,
5072
5228
  samp: S,
5073
5229
  script: {
5074
5230
  attrs: {
@@ -5104,7 +5260,6 @@ const Tags = {
5104
5260
  }
5105
5261
  },
5106
5262
  span: S,
5107
- strike: S,
5108
5263
  strong: S,
5109
5264
  style: {
5110
5265
  attrs: {
@@ -5168,8 +5323,6 @@ const Tags = {
5168
5323
  srclang: null
5169
5324
  }
5170
5325
  },
5171
- tt: S,
5172
- u: S,
5173
5326
  ul: {
5174
5327
  children: ["li", "script", "template", "ul", "ol"]
5175
5328
  },
@@ -5214,7 +5367,6 @@ const GlobalAttrs = {
5214
5367
  tabindex: null,
5215
5368
  title: null,
5216
5369
  translate: ["yes", "no"],
5217
- onclick: null,
5218
5370
  rel: ["stylesheet", "alternate", "author", "bookmark", "help", "license", "next", "nofollow", "noreferrer", "prefetch", "prev", "search", "tag"],
5219
5371
  role: /*@__PURE__*/"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),
5220
5372
  "aria-activedescendant": null,
@@ -5252,6 +5404,8 @@ const GlobalAttrs = {
5252
5404
  "aria-valuenow": null,
5253
5405
  "aria-valuetext": null
5254
5406
  };
5407
+ const eventAttributes = /*@__PURE__*/("beforeunload copy cut dragstart dragover dragleave dragenter dragend " + "drag paste focus blur change click load mousedown mouseenter mouseleave " + "mouseup keydown keyup resize scroll unload").split(" ").map(n => "on" + n);
5408
+ for (let a of eventAttributes) GlobalAttrs[a] = null;
5255
5409
  class Schema {
5256
5410
  constructor(extraTags, extraAttrs) {
5257
5411
  this.tags = Object.assign(Object.assign({}, Tags), extraTags);
@@ -5342,7 +5496,8 @@ function completeStartTag(state, schema, tree, pos) {
5342
5496
  function completeAttrName(state, schema, tree, from, to) {
5343
5497
  let elt = findParentElement(tree),
5344
5498
  info = elt ? schema.tags[elementName(state.doc, elt)] : null;
5345
- let names = info && info.attrs ? Object.keys(info.attrs).concat(schema.globalAttrNames) : schema.globalAttrNames;
5499
+ let localAttrs = info && info.attrs ? Object.keys(info.attrs) : [];
5500
+ let names = info && info.globalAttrs === false ? localAttrs : localAttrs.length ? localAttrs.concat(schema.globalAttrNames) : schema.globalAttrNames;
5346
5501
  return {
5347
5502
  from,
5348
5503
  to,
@@ -5434,14 +5589,48 @@ function htmlCompletionSourceWith(config) {
5434
5589
  let schema = extraAttrs || extraTags ? new Schema(extraTags, extraAttrs) : Schema.default;
5435
5590
  return context => htmlCompletionFor(schema, context);
5436
5591
  }
5437
-
5592
+ const defaultNesting = [{
5593
+ tag: "script",
5594
+ attrs: attrs => attrs.type == "text/typescript" || attrs.lang == "ts",
5595
+ parser: typescriptLanguage.parser
5596
+ }, {
5597
+ tag: "script",
5598
+ attrs: attrs => attrs.type == "text/babel" || attrs.type == "text/jsx",
5599
+ parser: jsxLanguage.parser
5600
+ }, {
5601
+ tag: "script",
5602
+ attrs: attrs => attrs.type == "text/typescript-jsx",
5603
+ parser: tsxLanguage.parser
5604
+ }, {
5605
+ tag: "script",
5606
+ attrs(attrs) {
5607
+ return !attrs.type || /^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(attrs.type);
5608
+ },
5609
+ parser: javascriptLanguage.parser
5610
+ }, {
5611
+ tag: "style",
5612
+ attrs(attrs) {
5613
+ return (!attrs.lang || attrs.lang == "css") && (!attrs.type || /^(text\/)?(x-)?(stylesheet|css)$/i.test(attrs.type));
5614
+ },
5615
+ parser: cssLanguage.parser
5616
+ }];
5617
+ const defaultAttrs = /*@__PURE__*/[{
5618
+ name: "style",
5619
+ parser: /*@__PURE__*/cssLanguage.parser.configure({
5620
+ top: "Styles"
5621
+ })
5622
+ }].concat( /*@__PURE__*/eventAttributes.map(name => ({
5623
+ name,
5624
+ parser: javascriptLanguage.parser
5625
+ })));
5438
5626
  /**
5439
5627
  A language provider based on the [Lezer HTML
5440
5628
  parser](https://github.com/lezer-parser/html), extended with the
5441
5629
  JavaScript and CSS parsers to parse the content of `<script>` and
5442
5630
  `<style>` tags.
5443
5631
  */
5444
- const htmlLanguage = /*@__PURE__*/LRLanguage.define({
5632
+ const htmlPlain = /*@__PURE__*/LRLanguage.define({
5633
+ name: "html",
5445
5634
  parser: /*@__PURE__*/parser$4.configure({
5446
5635
  props: [/*@__PURE__*/indentNodeProp.add({
5447
5636
  Element(context) {
@@ -5474,20 +5663,9 @@ const htmlLanguage = /*@__PURE__*/LRLanguage.define({
5474
5663
  to: last.name == "CloseTag" ? last.from : node.to
5475
5664
  };
5476
5665
  }
5477
- })],
5478
- wrap: /*@__PURE__*/configureNesting([{
5479
- tag: "script",
5480
- attrs(attrs) {
5481
- return !attrs.type || /^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(attrs.type);
5482
- },
5483
- parser: javascriptLanguage.parser
5484
- }, {
5485
- tag: "style",
5486
- attrs(attrs) {
5487
- return (!attrs.lang || attrs.lang == "css") && (!attrs.type || /^(text\/)?(x-)?(stylesheet|css)$/i.test(attrs.type));
5488
- },
5489
- parser: cssLanguage.parser
5490
- }])
5666
+ }), /*@__PURE__*/bracketMatchingHandle.add({
5667
+ "OpenTag CloseTag": node => node.getChild("TagName")
5668
+ })]
5491
5669
  }),
5492
5670
  languageData: {
5493
5671
  commentTokens: {
@@ -5501,20 +5679,37 @@ const htmlLanguage = /*@__PURE__*/LRLanguage.define({
5501
5679
  }
5502
5680
  });
5503
5681
  /**
5682
+ A language provider based on the [Lezer HTML
5683
+ parser](https://github.com/lezer-parser/html), extended with the
5684
+ JavaScript and CSS parsers to parse the content of `<script>` and
5685
+ `<style>` tags.
5686
+ */
5687
+ const htmlLanguage = /*@__PURE__*/htmlPlain.configure({
5688
+ wrap: /*@__PURE__*/configureNesting(defaultNesting, defaultAttrs)
5689
+ });
5690
+ /**
5504
5691
  Language support for HTML, including
5505
5692
  [`htmlCompletion`](https://codemirror.net/6/docs/ref/#lang-html.htmlCompletion) and JavaScript and
5506
5693
  CSS support extensions.
5507
5694
  */
5508
5695
  function html() {
5509
5696
  let config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5510
- let lang = htmlLanguage;
5511
- if (config.matchClosingTags === false) lang = lang.configure({
5512
- dialect: "noMatch"
5513
- });
5697
+ let dialect = "",
5698
+ wrap;
5699
+ if (config.matchClosingTags === false) dialect = "noMatch";
5700
+ if (config.selfClosingTags === true) dialect = (dialect ? dialect + " " : "") + "selfClosing";
5701
+ if (config.nestedLanguages && config.nestedLanguages.length || config.nestedAttributes && config.nestedAttributes.length) wrap = configureNesting((config.nestedLanguages || []).concat(defaultNesting), (config.nestedAttributes || []).concat(defaultAttrs));
5702
+ let lang = wrap ? htmlPlain.configure({
5703
+ wrap,
5704
+ dialect
5705
+ }) : dialect ? htmlLanguage.configure({
5706
+ dialect
5707
+ }) : htmlLanguage;
5514
5708
  return new LanguageSupport(lang, [htmlLanguage.data.of({
5515
5709
  autocomplete: htmlCompletionSourceWith(config)
5516
5710
  }), config.autoCloseTags !== false ? autoCloseTags : [], javascript().support, css().support]);
5517
5711
  }
5712
+ const selfClosers = /*@__PURE__*/new Set( /*@__PURE__*/"area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" "));
5518
5713
  /**
5519
5714
  Extension that will automatically insert close tags when a `>` or
5520
5715
  `/` is typed.
@@ -5533,20 +5728,26 @@ const autoCloseTags = /*@__PURE__*/EditorView.inputHandler.of((view, from, to, t
5533
5728
  name;
5534
5729
  if (around.name == "TagName" || around.name == "StartTag") around = around.parent;
5535
5730
  if (text == ">" && around.name == "OpenTag") {
5536
- if (((_b = (_a = around.parent) === null || _a === void 0 ? void 0 : _a.lastChild) === null || _b === void 0 ? void 0 : _b.name) != "CloseTag" && (name = elementName(state.doc, around.parent, head))) return {
5537
- range: EditorSelection.cursor(head + 1),
5538
- changes: {
5539
- from: head,
5540
- insert: `></${name}>`
5541
- }
5542
- };
5731
+ if (((_b = (_a = around.parent) === null || _a === void 0 ? void 0 : _a.lastChild) === null || _b === void 0 ? void 0 : _b.name) != "CloseTag" && (name = elementName(state.doc, around.parent, head)) && !selfClosers.has(name)) {
5732
+ let hasRightBracket = view.state.doc.sliceString(head, head + 1) === ">";
5733
+ let insert = `${hasRightBracket ? "" : ">"}</${name}>`;
5734
+ return {
5735
+ range: EditorSelection.cursor(head + 1),
5736
+ changes: {
5737
+ from: head + (hasRightBracket ? 1 : 0),
5738
+ insert
5739
+ }
5740
+ };
5741
+ }
5543
5742
  } else if (text == "/" && around.name == "OpenTag") {
5544
5743
  let empty = around.parent,
5545
5744
  base = empty === null || empty === void 0 ? void 0 : empty.parent;
5546
- if (empty.from == head - 1 && ((_c = base.lastChild) === null || _c === void 0 ? void 0 : _c.name) != "CloseTag" && (name = elementName(state.doc, base, head))) {
5547
- let insert = `/${name}>`;
5745
+ if (empty.from == head - 1 && ((_c = base.lastChild) === null || _c === void 0 ? void 0 : _c.name) != "CloseTag" && (name = elementName(state.doc, base, head)) && !selfClosers.has(name)) {
5746
+ let hasRightBracket = view.state.doc.sliceString(head, head + 1) === ">";
5747
+ let insert = `/${name}${hasRightBracket ? "" : ">"}`;
5748
+ let pos = head + insert.length + (hasRightBracket ? 1 : 0);
5548
5749
  return {
5549
- range: EditorSelection.cursor(head + insert.length),
5750
+ range: EditorSelection.cursor(pos),
5550
5751
  changes: {
5551
5752
  from: head,
5552
5753
  insert
@@ -5601,6 +5802,7 @@ const parser$1 = LRParser.deserialize({
5601
5802
  A language provider that provides JSON parsing.
5602
5803
  */
5603
5804
  const jsonLanguage = /*@__PURE__*/LRLanguage.define({
5805
+ name: "json",
5604
5806
  parser: /*@__PURE__*/parser$1.configure({
5605
5807
  props: [/*@__PURE__*/indentNodeProp.add({
5606
5808
  Object: /*@__PURE__*/continuedIndent({
@@ -7477,26 +7679,55 @@ const Emoji = {
7477
7679
  };
7478
7680
 
7479
7681
  const data = /*@__PURE__*/defineLanguageFacet({
7480
- block: {
7481
- open: "<!--",
7482
- close: "-->"
7682
+ commentTokens: {
7683
+ block: {
7684
+ open: "<!--",
7685
+ close: "-->"
7686
+ }
7483
7687
  }
7484
7688
  });
7689
+ const headingProp = /*@__PURE__*/new NodeProp();
7485
7690
  const commonmark = /*@__PURE__*/parser.configure({
7486
7691
  props: [/*@__PURE__*/foldNodeProp.add(type => {
7487
- if (!type.is("Block") || type.is("Document")) return undefined;
7488
- return (tree, state) => ({
7692
+ return !type.is("Block") || type.is("Document") || isHeading(type) != null ? undefined : (tree, state) => ({
7489
7693
  from: state.doc.lineAt(tree.from).to,
7490
7694
  to: tree.to
7491
7695
  });
7492
- }), /*@__PURE__*/indentNodeProp.add({
7696
+ }), /*@__PURE__*/headingProp.add(isHeading), /*@__PURE__*/indentNodeProp.add({
7493
7697
  Document: () => null
7494
7698
  }), /*@__PURE__*/languageDataProp.add({
7495
7699
  Document: data
7496
7700
  })]
7497
7701
  });
7702
+ function isHeading(type) {
7703
+ let match = /^(?:ATX|Setext)Heading(\d)$/.exec(type.name);
7704
+ return match ? +match[1] : undefined;
7705
+ }
7706
+ function findSectionEnd(headerNode, level) {
7707
+ let last = headerNode;
7708
+ for (;;) {
7709
+ let next = last.nextSibling,
7710
+ heading;
7711
+ if (!next || (heading = isHeading(next.type)) != null && heading <= level) break;
7712
+ last = next;
7713
+ }
7714
+ return last.to;
7715
+ }
7716
+ const headerIndent = /*@__PURE__*/foldService.of((state, start, end) => {
7717
+ for (let node = syntaxTree(state).resolveInner(end, -1); node; node = node.parent) {
7718
+ if (node.from < start) break;
7719
+ let heading = node.type.prop(headingProp);
7720
+ if (heading == null) continue;
7721
+ let upto = findSectionEnd(node, heading);
7722
+ if (upto > end) return {
7723
+ from: end,
7724
+ to: upto
7725
+ };
7726
+ }
7727
+ return null;
7728
+ });
7498
7729
  function mkLang(parser) {
7499
- return new Language(data, parser);
7730
+ return new Language(data, parser, [headerIndent], "markdown");
7500
7731
  }
7501
7732
  /**
7502
7733
  Language support for strict CommonMark.
@@ -7520,9 +7751,6 @@ function getCodeParser(languages, defaultLanguage) {
7520
7751
  return defaultLanguage ? defaultLanguage.parser : null;
7521
7752
  };
7522
7753
  }
7523
- function nodeStart(node, doc) {
7524
- return doc.sliceString(node.from, node.from + 50);
7525
- }
7526
7754
  class Context {
7527
7755
  constructor(node, from, to, spaceBefore, spaceAfter, type, item) {
7528
7756
  this.node = node;
@@ -7533,41 +7761,46 @@ class Context {
7533
7761
  this.type = type;
7534
7762
  this.item = item;
7535
7763
  }
7536
- blank() {
7537
- let trailing = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
7538
- let result = this.spaceBefore;
7539
- if (this.node.name == "Blockquote") result += ">";else for (let i = this.to - this.from - result.length - this.spaceAfter.length; i > 0; i--) result += " ";
7540
- return result + (trailing ? this.spaceAfter : "");
7764
+ blank(maxWidth) {
7765
+ let trailing = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
7766
+ let result = this.spaceBefore + (this.node.name == "Blockquote" ? ">" : "");
7767
+ if (maxWidth != null) {
7768
+ while (result.length < maxWidth) result += " ";
7769
+ return result;
7770
+ } else {
7771
+ for (let i = this.to - this.from - result.length - this.spaceAfter.length; i > 0; i--) result += " ";
7772
+ return result + (trailing ? this.spaceAfter : "");
7773
+ }
7541
7774
  }
7542
7775
  marker(doc, add) {
7543
7776
  let number = this.node.name == "OrderedList" ? String(+itemNumber(this.item, doc)[2] + add) : "";
7544
7777
  return this.spaceBefore + number + this.type + this.spaceAfter;
7545
7778
  }
7546
7779
  }
7547
- function getContext(node, line, doc) {
7780
+ function getContext(node, doc) {
7548
7781
  let nodes = [];
7549
7782
  for (let cur = node; cur && cur.name != "Document"; cur = cur.parent) {
7550
- if (cur.name == "ListItem" || cur.name == "Blockquote") nodes.push(cur);
7783
+ if (cur.name == "ListItem" || cur.name == "Blockquote" || cur.name == "FencedCode") nodes.push(cur);
7551
7784
  }
7552
- let context = [],
7553
- pos = 0;
7785
+ let context = [];
7554
7786
  for (let i = nodes.length - 1; i >= 0; i--) {
7555
7787
  let node = nodes[i],
7556
- match,
7557
- start = pos;
7558
- if (node.name == "Blockquote" && (match = /^[ \t]*>( ?)/.exec(line.slice(pos)))) {
7559
- pos += match[0].length;
7560
- context.push(new Context(node, start, pos, "", match[1], ">", null));
7561
- } else if (node.name == "ListItem" && node.parent.name == "OrderedList" && (match = /^([ \t]*)\d+([.)])([ \t]*)/.exec(nodeStart(node, doc)))) {
7788
+ match;
7789
+ let line = doc.lineAt(node.from),
7790
+ startPos = node.from - line.from;
7791
+ if (node.name == "FencedCode") {
7792
+ context.push(new Context(node, startPos, startPos, "", "", "", null));
7793
+ } else if (node.name == "Blockquote" && (match = /^[ \t]*>( ?)/.exec(line.text.slice(startPos)))) {
7794
+ context.push(new Context(node, startPos, startPos + match[0].length, "", match[1], ">", null));
7795
+ } else if (node.name == "ListItem" && node.parent.name == "OrderedList" && (match = /^([ \t]*)\d+([.)])([ \t]*)/.exec(line.text.slice(startPos)))) {
7562
7796
  let after = match[3],
7563
7797
  len = match[0].length;
7564
7798
  if (after.length >= 4) {
7565
7799
  after = after.slice(0, after.length - 4);
7566
7800
  len -= 4;
7567
7801
  }
7568
- pos += len;
7569
- context.push(new Context(node.parent, start, pos, match[1], after, match[2], node));
7570
- } else if (node.name == "ListItem" && node.parent.name == "BulletList" && (match = /^([ \t]*)([-+*])([ \t]{1,4}\[[ xX]\])?([ \t]+)/.exec(nodeStart(node, doc)))) {
7802
+ context.push(new Context(node.parent, startPos, startPos + len, match[1], after, match[2], node));
7803
+ } else if (node.name == "ListItem" && node.parent.name == "BulletList" && (match = /^([ \t]*)([-+*])([ \t]{1,4}\[[ xX]\])?([ \t]+)/.exec(line.text.slice(startPos)))) {
7571
7804
  let after = match[4],
7572
7805
  len = match[0].length;
7573
7806
  if (after.length > 4) {
@@ -7576,8 +7809,7 @@ function getContext(node, line, doc) {
7576
7809
  }
7577
7810
  let type = match[2];
7578
7811
  if (match[3]) type += match[3].replace(/[xX]/, ' ');
7579
- pos += len;
7580
- context.push(new Context(node.parent, start, pos, match[1], after, type, node));
7812
+ context.push(new Context(node.parent, startPos, startPos + len, match[1], after, type, node));
7581
7813
  }
7582
7814
  }
7583
7815
  return context;
@@ -7633,7 +7865,7 @@ const insertNewlineContinueMarkup = _ref => {
7633
7865
  };
7634
7866
  let pos = range.from,
7635
7867
  line = doc.lineAt(pos);
7636
- let context = getContext(tree.resolveInner(pos, -1), line.text, doc);
7868
+ let context = getContext(tree.resolveInner(pos, -1), doc);
7637
7869
  while (context.length && context[context.length - 1].from > pos - line.from) context.pop();
7638
7870
  if (!context.length) return dont = {
7639
7871
  range
@@ -7671,7 +7903,9 @@ const insertNewlineContinueMarkup = _ref => {
7671
7903
  } else {
7672
7904
  // Move this line down
7673
7905
  let insert = "";
7674
- for (let i = 0, e = context.length - 2; i <= e; i++) insert += context[i].blank(i < e);
7906
+ for (let i = 0, e = context.length - 2; i <= e; i++) {
7907
+ insert += context[i].blank(i < e ? context[i + 1].from - insert.length : null, i < e);
7908
+ }
7675
7909
  insert += state.lineBreak;
7676
7910
  return {
7677
7911
  range: EditorSelection.cursor(pos + insert.length),
@@ -7702,14 +7936,17 @@ const insertNewlineContinueMarkup = _ref => {
7702
7936
  }
7703
7937
  let changes = [];
7704
7938
  if (inner.node.name == "OrderedList") renumberList(inner.item, doc, changes);
7705
- let insert = state.lineBreak;
7706
7939
  let continued = inner.item && inner.item.from < line.from;
7940
+ let insert = "";
7707
7941
  // If not dedented
7708
7942
  if (!continued || /^[\s\d.)\-+*>]*/.exec(line.text)[0].length >= inner.to) {
7709
- for (let i = 0, e = context.length - 1; i <= e; i++) insert += i == e && !continued ? context[i].marker(doc, 1) : context[i].blank();
7943
+ for (let i = 0, e = context.length - 1; i <= e; i++) {
7944
+ insert += i == e && !continued ? context[i].marker(doc, 1) : context[i].blank(i < e ? context[i + 1].from - insert.length : null);
7945
+ }
7710
7946
  }
7711
7947
  let from = pos;
7712
7948
  while (from > line.from && /\s/.test(line.text.charAt(from - line.from - 1))) from--;
7949
+ insert = state.lineBreak + insert;
7713
7950
  changes.push({
7714
7951
  from,
7715
7952
  to: pos,
@@ -7774,7 +8011,7 @@ const deleteMarkupBackward = _ref2 => {
7774
8011
  } = state;
7775
8012
  if (range.empty && markdownLanguage.isActiveAt(state, range.from)) {
7776
8013
  let line = doc.lineAt(pos);
7777
- let context = getContext(contextNodeForDelete(tree, pos), line.text, doc);
8014
+ let context = getContext(contextNodeForDelete(tree, pos), doc);
7778
8015
  if (context.length) {
7779
8016
  let inner = context[context.length - 1];
7780
8017
  let spaceEnd = inner.to - inner.spaceAfter.length + (inner.spaceAfter ? 1 : 0);
@@ -7786,7 +8023,11 @@ const deleteMarkupBackward = _ref2 => {
7786
8023
  to: pos
7787
8024
  }
7788
8025
  };
7789
- if (pos - line.from == spaceEnd) {
8026
+ if (pos - line.from == spaceEnd && (
8027
+ // Only apply this if we're on the line that has the
8028
+ // construct's syntax, or there's only indentation in the
8029
+ // target range
8030
+ !inner.item || line.from <= inner.item.from || !/\S/.test(line.text.slice(0, inner.to)))) {
7790
8031
  let start = line.from + inner.from;
7791
8032
  // Replace a list item marker with blank space
7792
8033
  if (inner.item && inner.node.from < inner.item.from && /\S/.test(line.text.slice(inner.from, inner.to))) return {
@@ -7794,7 +8035,7 @@ const deleteMarkupBackward = _ref2 => {
7794
8035
  changes: {
7795
8036
  from: start,
7796
8037
  to: line.from + inner.to,
7797
- insert: inner.blank()
8038
+ insert: inner.blank(inner.to - inner.from)
7798
8039
  }
7799
8040
  };
7800
8041
  // Delete one level of indentation
@@ -7868,23 +8109,4 @@ function markdown() {
7868
8109
  return new LanguageSupport(mkLang(parser.configure(extensions)), support);
7869
8110
  }
7870
8111
 
7871
- const JS = javascript({
7872
- typescript: false
7873
- });
7874
- const TS = javascript({
7875
- typescript: true
7876
- });
7877
- const CSS = css();
7878
- const HTML = html();
7879
- const JSON$1 = json();
7880
- const MD = markdown();
7881
- var languages = {
7882
- [OrCodeLanguages.JS]: JS,
7883
- [OrCodeLanguages.TS]: TS,
7884
- [OrCodeLanguages.CSS]: CSS,
7885
- [OrCodeLanguages.HTML]: HTML,
7886
- [OrCodeLanguages.JSON]: JSON$1,
7887
- [OrCodeLanguages.MD]: MD
7888
- };
7889
-
7890
- export { CSS as C, HTML as H, JS as J, MD as M, TS as T, autocompletion as a, closeBracketsKeymap as b, closeBrackets as c, completionKeymap as d, JSON$1 as e, languages as l };
8112
+ export { javascript as a, closeBrackets as b, css as c, autocompletion as d, closeBracketsKeymap as e, completionKeymap as f, html as h, json as j, markdown as m };